From fa0afb24e35ce19c2a1a660be317f9c2bfff51c0 Mon Sep 17 00:00:00 2001 From: TizenOpenSource Date: Thu, 28 Dec 2023 15:00:17 +0900 Subject: [PATCH] Imported Upstream version 3.10 --- .tarball-version | 2 +- AUTHORS | 2 +- ChangeLog | 532 + ChangeLog-2008 | 2 +- GNUmakefile | 4 +- INSTALL | 296 +- Makefile.am | 2 +- Makefile.in | 181 +- NEWS | 22 +- README | 2 +- TODO | 6 + aclocal.m4 | 308 +- bootstrap | 1524 +- build-aux/announce-gen | 180 +- build-aux/compile | 3 +- build-aux/config.guess | 56 +- build-aux/config.rpath | 2 +- build-aux/config.sub | 60 +- build-aux/depcomp | 7 +- build-aux/do-release-commit-and-tag | 6 +- build-aux/gendocs.sh | 52 +- build-aux/git-version-gen | 13 +- build-aux/gitlog-to-changelog | 4 +- build-aux/gnu-web-doc-update | 13 +- build-aux/gnupload | 6 +- build-aux/mdate-sh | 2 +- build-aux/missing | 2 +- build-aux/test-driver | 2 +- build-aux/texinfo.tex | 2160 +- build-aux/update-copyright | 8 +- build-aux/useless-if-before-free | 6 +- build-aux/vc-list-files | 2 +- cfg.mk | 10 +- configure | 29853 ++++++++++--------- configure.ac | 9 +- doc/Makefile.am | 2 +- doc/Makefile.in | 191 +- doc/diffutils.info | 2827 +- doc/diffutils.texi | 2 +- doc/fdl.texi | 3 +- doc/stamp-vti | 8 +- doc/version.texi | 8 +- exgettext | 2 +- gnulib-tests/Makefile.in | 1582 +- gnulib-tests/_Noreturn.h | 9 +- gnulib-tests/accept.c | 2 +- gnulib-tests/alloca.c | 35 - gnulib-tests/altstack-util.h | 2 +- gnulib-tests/arg-nonnull.h | 2 +- gnulib-tests/arpa_inet.in.h | 7 +- {lib => gnulib-tests}/asnprintf.c | 2 +- gnulib-tests/atoll.c | 4 +- gnulib-tests/bind.c | 2 +- gnulib-tests/c++defs.h | 8 +- gnulib-tests/c-strcasestr.c | 76 + gnulib-tests/c-strcasestr.h | 36 + gnulib-tests/connect.c | 2 +- gnulib-tests/dtotimespec.c | 4 +- gnulib-tests/fdopen.c | 2 +- {lib => gnulib-tests}/float+.h | 2 +- {lib => gnulib-tests}/float.c | 2 +- {lib => gnulib-tests}/float.in.h | 2 +- gnulib-tests/fpucw.h | 2 +- gnulib-tests/ftruncate.c | 4 +- gnulib-tests/getcwd-lgpl.c | 2 +- gnulib-tests/glthread/thread.c | 10 +- gnulib-tests/glthread/thread.h | 9 +- gnulib-tests/gnulib.mk | 622 +- gnulib-tests/hash-pjw.c | 2 +- gnulib-tests/hash-pjw.h | 7 +- gnulib-tests/inet_pton.c | 2 +- gnulib-tests/init.sh | 71 +- gnulib-tests/ioctl.c | 2 +- {lib => gnulib-tests}/itold.c | 2 +- gnulib-tests/listen.c | 2 +- gnulib-tests/locale.c | 4 +- gnulib-tests/macros.h | 4 +- gnulib-tests/mmap-anon-util.h | 2 +- gnulib-tests/nan.h | 85 + gnulib-tests/nanosleep.c | 98 +- gnulib-tests/nap.h | 13 +- gnulib-tests/netinet_in.in.h | 2 +- gnulib-tests/perror.c | 2 +- gnulib-tests/pipe.c | 2 +- {lib => gnulib-tests}/printf-args.c | 125 +- {lib => gnulib-tests}/printf-args.h | 61 +- {lib => gnulib-tests}/printf-parse.c | 499 +- {lib => gnulib-tests}/printf-parse.h | 10 +- gnulib-tests/pselect.c | 118 + gnulib-tests/pthread-thread.c | 4 +- gnulib-tests/pthread.in.h | 47 +- gnulib-tests/pthread_sigmask.c | 2 +- gnulib-tests/putenv.c | 4 +- gnulib-tests/same-inode.h | 2 +- gnulib-tests/sched.in.h | 14 +- gnulib-tests/select.c | 9 +- gnulib-tests/setsockopt.c | 2 +- gnulib-tests/sig-handler.h | 51 - gnulib-tests/sigaction.c | 204 - gnulib-tests/signature.h | 6 +- {lib => gnulib-tests}/size_max.h | 7 +- gnulib-tests/sleep.c | 6 +- gnulib-tests/snprintf.c | 2 +- gnulib-tests/socket.c | 2 +- gnulib-tests/sockets.c | 4 +- gnulib-tests/sockets.h | 7 +- gnulib-tests/str-two-way.h | 452 + gnulib-tests/strerror_r.c | 50 +- gnulib-tests/symlink.c | 8 +- gnulib-tests/sys_ioctl.in.h | 9 +- gnulib-tests/sys_select.in.h | 36 +- gnulib-tests/sys_socket.c | 2 +- gnulib-tests/sys_socket.in.h | 8 +- gnulib-tests/sys_uio.in.h | 2 +- gnulib-tests/test-accept.c | 4 +- gnulib-tests/{test-stdalign.c => test-alignasof.c} | 42 +- gnulib-tests/test-alloca-opt.c | 4 +- gnulib-tests/test-areadlink.c | 7 +- gnulib-tests/test-areadlink.h | 4 +- gnulib-tests/test-argmatch.c | 36 +- gnulib-tests/test-arpa_inet.c | 4 +- gnulib-tests/test-assert.c | 71 + gnulib-tests/test-binary-io.c | 4 +- gnulib-tests/test-binary-io.sh | 2 +- gnulib-tests/test-bind.c | 4 +- gnulib-tests/test-bitrotate.c | 4 +- gnulib-tests/test-btowc.c | 32 +- gnulib-tests/test-btowc1.sh | 2 +- gnulib-tests/test-btowc2.sh | 2 +- gnulib-tests/test-btowc3.sh | 9 + gnulib-tests/test-c-ctype.c | 4 +- gnulib-tests/test-c-stack.c | 4 +- gnulib-tests/test-c-stack.sh | 2 +- gnulib-tests/test-c-stack2.sh | 2 +- gnulib-tests/test-c-strcase.sh | 4 +- gnulib-tests/test-c-strcasecmp.c | 4 +- gnulib-tests/test-c-strcasestr.c | 272 + gnulib-tests/test-c-strncasecmp.c | 4 +- gnulib-tests/test-calloc-gnu.c | 6 +- gnulib-tests/test-cloexec.c | 4 +- gnulib-tests/test-close.c | 4 +- gnulib-tests/test-connect.c | 4 +- gnulib-tests/test-ctype.c | 4 +- gnulib-tests/test-dirname.c | 5 +- gnulib-tests/test-dup2.c | 10 +- gnulib-tests/test-dynarray.c | 2 +- gnulib-tests/test-environ.c | 4 +- gnulib-tests/test-errno.c | 4 +- gnulib-tests/test-error.c | 88 + gnulib-tests/test-error.sh | 36 + gnulib-tests/test-exclude.c | 5 +- gnulib-tests/test-exclude1.sh | 4 +- gnulib-tests/test-exclude2.sh | 4 +- gnulib-tests/test-exclude3.sh | 4 +- gnulib-tests/test-exclude4.sh | 4 +- gnulib-tests/test-exclude5.sh | 4 +- gnulib-tests/test-exclude6.sh | 4 +- gnulib-tests/test-exclude7.sh | 4 +- gnulib-tests/test-exclude8.sh | 4 +- gnulib-tests/test-fcntl-h.c | 4 +- gnulib-tests/test-fcntl.c | 11 +- gnulib-tests/test-fdopen.c | 11 +- gnulib-tests/test-fgetc.c | 6 +- gnulib-tests/test-filenamecat.c | 7 +- gnulib-tests/test-float.c | 74 +- gnulib-tests/test-fnmatch-h.c | 4 +- gnulib-tests/test-fnmatch.c | 32 +- gnulib-tests/test-fopen-gnu.c | 4 +- gnulib-tests/test-fopen.c | 4 +- gnulib-tests/test-fopen.h | 9 +- gnulib-tests/test-fputc.c | 6 +- gnulib-tests/test-fread.c | 6 +- gnulib-tests/test-free.c | 4 +- gnulib-tests/test-freopen.c | 4 +- gnulib-tests/test-fstat.c | 4 +- gnulib-tests/test-ftruncate.c | 4 +- gnulib-tests/test-fwrite.c | 6 +- gnulib-tests/test-getcwd-lgpl.c | 4 +- gnulib-tests/test-getdtablesize.c | 9 +- gnulib-tests/test-getopt-gnu.c | 4 +- gnulib-tests/test-getopt-main.h | 4 +- gnulib-tests/test-getopt-posix.c | 4 +- gnulib-tests/test-getopt.h | 5 +- gnulib-tests/test-getopt_long.h | 4 +- gnulib-tests/test-getprogname.c | 7 +- gnulib-tests/test-getrandom.c | 4 +- gnulib-tests/test-gettimeofday.c | 53 +- gnulib-tests/test-hard-locale.c | 23 +- gnulib-tests/test-hash.c | 5 +- gnulib-tests/test-iconv-h.c | 4 +- gnulib-tests/test-iconv.c | 4 +- gnulib-tests/test-ignore-value.c | 4 +- gnulib-tests/test-inet_pton.c | 4 +- gnulib-tests/test-init.sh | 6 +- gnulib-tests/test-intprops.c | 21 +- gnulib-tests/test-inttostr.c | 4 +- gnulib-tests/test-inttypes.c | 6 +- gnulib-tests/test-ioctl.c | 4 +- gnulib-tests/test-isblank.c | 4 +- gnulib-tests/test-iswblank.c | 4 +- gnulib-tests/test-iswdigit.c | 4 +- gnulib-tests/test-iswdigit.sh | 8 +- gnulib-tests/test-iswxdigit.c | 4 +- gnulib-tests/test-iswxdigit.sh | 8 +- gnulib-tests/test-langinfo.c | 4 +- gnulib-tests/test-largefile.c | 51 + gnulib-tests/test-limits-h.c | 60 +- gnulib-tests/test-listen.c | 9 +- gnulib-tests/test-localcharset.c | 4 +- gnulib-tests/test-locale.c | 8 +- gnulib-tests/test-localeconv.c | 4 +- gnulib-tests/test-lstat.c | 5 +- gnulib-tests/test-lstat.h | 4 +- gnulib-tests/test-malloc-gnu.c | 4 +- gnulib-tests/test-malloca.c | 4 +- gnulib-tests/test-mbrtowc-w32.c | 4 +- gnulib-tests/test-mbrtowc.c | 70 +- gnulib-tests/test-mbrtowc1.sh | 2 +- gnulib-tests/test-mbrtowc2.sh | 2 +- gnulib-tests/test-mbrtowc3.sh | 2 +- gnulib-tests/test-mbrtowc4.sh | 2 +- gnulib-tests/test-mbrtowc5.sh | 7 +- gnulib-tests/test-mbscasecmp.c | 4 +- gnulib-tests/test-mbscasecmp.sh | 2 +- gnulib-tests/test-mbsinit.c | 4 +- gnulib-tests/test-mbsinit.sh | 2 +- gnulib-tests/test-mbsrtowcs.c | 79 +- gnulib-tests/test-mbsrtowcs1.sh | 2 +- gnulib-tests/test-mbsrtowcs2.sh | 2 +- gnulib-tests/test-mbsrtowcs3.sh | 2 +- gnulib-tests/test-mbsrtowcs4.sh | 2 +- gnulib-tests/test-mbsrtowcs5.sh | 9 + gnulib-tests/test-mbsstr1.c | 4 +- gnulib-tests/test-mbsstr2.c | 4 +- gnulib-tests/test-mbsstr2.sh | 2 +- gnulib-tests/test-mbsstr3.c | 4 +- gnulib-tests/test-mbsstr3.sh | 2 +- gnulib-tests/test-memchr.c | 4 +- gnulib-tests/test-mkdir.c | 5 +- gnulib-tests/test-mkdir.h | 4 +- gnulib-tests/test-nanosleep.c | 15 +- gnulib-tests/test-netinet_in.c | 4 +- gnulib-tests/test-nl_langinfo-mt.c | 4 +- gnulib-tests/test-nl_langinfo.sh | 17 - .../{test-nl_langinfo.c => test-nl_langinfo1.c} | 4 +- gnulib-tests/test-nl_langinfo1.sh | 17 + gnulib-tests/test-nl_langinfo2.c | 136 + gnulib-tests/test-nl_langinfo2.sh | 12 + gnulib-tests/test-nstrftime.c | 4 +- gnulib-tests/test-nullptr.c | 69 + gnulib-tests/test-open.c | 5 +- gnulib-tests/test-open.h | 9 +- gnulib-tests/test-pathmax.c | 4 +- gnulib-tests/test-perror.c | 4 +- gnulib-tests/test-perror.sh | 2 +- gnulib-tests/test-perror2.c | 9 +- gnulib-tests/test-pipe.c | 5 +- gnulib-tests/test-pselect.c | 49 + gnulib-tests/test-pthread-thread.c | 4 +- gnulib-tests/test-pthread.c | 6 +- gnulib-tests/test-pthread_sigmask1.c | 15 +- gnulib-tests/test-pthread_sigmask2.c | 4 +- gnulib-tests/test-quotearg-simple.c | 7 +- gnulib-tests/test-quotearg.h | 4 +- gnulib-tests/test-raise.c | 4 +- gnulib-tests/test-rawmemchr.c | 4 +- gnulib-tests/test-readlink.c | 5 +- gnulib-tests/test-readlink.h | 4 +- gnulib-tests/test-realloc-gnu.c | 4 +- gnulib-tests/test-reallocarray.c | 4 +- gnulib-tests/test-regex.c | 40 +- gnulib-tests/test-sched.c | 6 +- gnulib-tests/test-select-fd.c | 4 +- gnulib-tests/test-select-in.sh | 2 +- gnulib-tests/test-select-out.sh | 2 +- gnulib-tests/test-select-stdin.c | 4 +- gnulib-tests/test-select.c | 5 +- gnulib-tests/test-select.h | 11 +- gnulib-tests/test-setenv.c | 4 +- gnulib-tests/test-setlocale_null-mt-all.c | 6 +- gnulib-tests/test-setlocale_null-mt-one.c | 4 +- gnulib-tests/test-setlocale_null.c | 6 +- gnulib-tests/test-setsockopt.c | 4 +- gnulib-tests/test-sh-quote.c | 4 +- gnulib-tests/test-sigaction.c | 122 - gnulib-tests/test-signal-h.c | 4 +- gnulib-tests/test-sigprocmask.c | 9 +- gnulib-tests/test-sigsegv-catch-segv1.c | 6 +- gnulib-tests/test-sigsegv-catch-segv2.c | 2 +- gnulib-tests/test-sigsegv-catch-stackoverflow1.c | 18 +- gnulib-tests/test-sigsegv-catch-stackoverflow2.c | 20 +- gnulib-tests/test-sleep.c | 4 +- gnulib-tests/test-snprintf.c | 4 +- gnulib-tests/test-sockets.c | 4 +- gnulib-tests/test-stat-time.c | 4 +- gnulib-tests/test-stat.c | 5 +- gnulib-tests/test-stat.h | 4 +- gnulib-tests/test-stdbool.c | 53 +- lib/xasprintf.c => gnulib-tests/test-stdckdint.c | 30 +- gnulib-tests/test-stddef.c | 81 +- gnulib-tests/test-stdint.c | 9 +- gnulib-tests/test-stdio.c | 40 +- gnulib-tests/test-stdlib.c | 21 +- gnulib-tests/test-strerror.c | 4 +- gnulib-tests/test-strerror_r.c | 4 +- gnulib-tests/test-striconv.c | 4 +- gnulib-tests/test-string.c | 8 +- gnulib-tests/test-strings.c | 4 +- gnulib-tests/test-strnlen.c | 4 +- gnulib-tests/test-strtoimax.c | 4 +- gnulib-tests/test-strtoll.c | 66 +- gnulib-tests/test-symlink.c | 5 +- gnulib-tests/test-symlink.h | 4 +- gnulib-tests/test-sys_ioctl.c | 4 +- gnulib-tests/test-sys_random.c | 4 +- gnulib-tests/test-sys_select.c | 24 +- gnulib-tests/test-sys_socket.c | 8 +- gnulib-tests/test-sys_stat.c | 280 +- gnulib-tests/test-sys_time.c | 4 +- gnulib-tests/test-sys_types.c | 4 +- gnulib-tests/test-sys_uio.c | 4 +- gnulib-tests/test-sys_wait.c | 4 +- gnulib-tests/test-sys_wait.h | 8 +- gnulib-tests/test-thread_create.c | 4 +- gnulib-tests/test-thread_self.c | 4 +- gnulib-tests/test-time-h.c | 43 + gnulib-tests/test-time.c | 42 +- gnulib-tests/test-timespec.c | 5 +- gnulib-tests/test-trim.c | 158 + gnulib-tests/test-trim1.sh | 5 + gnulib-tests/test-trim2.sh | 15 + gnulib-tests/test-trim3.sh | 15 + gnulib-tests/test-unistd.c | 8 +- gnulib-tests/test-unsetenv.c | 7 +- gnulib-tests/test-update-copyright.sh | 16 +- gnulib-tests/test-vasnprintf.c | 4 +- gnulib-tests/test-vasprintf.c | 103 - gnulib-tests/test-vc-list-files-cvs.sh | 6 +- gnulib-tests/test-vc-list-files-git.sh | 13 +- gnulib-tests/test-verify-try.c | 4 +- gnulib-tests/test-verify.c | 4 +- gnulib-tests/test-version-etc.c | 6 +- gnulib-tests/test-version-etc.sh | 4 +- gnulib-tests/test-wchar.c | 8 +- gnulib-tests/test-wcrtomb-w32.c | 4 +- gnulib-tests/test-wcrtomb.c | 4 +- gnulib-tests/test-wcrtomb.sh | 8 +- gnulib-tests/test-wctype-h.c | 8 +- gnulib-tests/test-wcwidth.c | 4 +- gnulib-tests/test-xalloc-die.c | 6 +- gnulib-tests/test-xalloc-die.sh | 4 +- gnulib-tests/test-xstdopen.c | 4 +- gnulib-tests/test-xstrtoimax.sh | 2 +- gnulib-tests/test-xstrtol.c | 4 +- gnulib-tests/test-xstrtol.sh | 2 +- gnulib-tests/test-xvasprintf.c | 135 - gnulib-tests/test-year2038.c | 39 + lib/asprintf.c => gnulib-tests/time.c | 36 +- gnulib-tests/timespec-add.c | 9 +- gnulib-tests/timespec-sub.c | 9 +- gnulib-tests/unistr/test-u8-mbtoucr.c | 4 +- gnulib-tests/unistr/test-u8-uctomb.c | 4 +- gnulib-tests/uniwidth/test-uc_width.c | 4 +- gnulib-tests/uniwidth/test-uc_width2.c | 4 +- gnulib-tests/uniwidth/test-uc_width2.sh | 418 +- {lib => gnulib-tests}/vasnprintf.c | 2011 +- {lib => gnulib-tests}/vasnprintf.h | 7 +- gnulib-tests/w32sock.h | 2 +- gnulib-tests/warn-on-use.h | 8 +- gnulib-tests/wctob.c | 4 +- gnulib-tests/wctomb-impl.h | 2 +- gnulib-tests/wctomb.c | 2 +- gnulib-tests/windows-thread.c | 2 +- gnulib-tests/windows-thread.h | 7 +- gnulib-tests/windows-tls.c | 2 +- gnulib-tests/windows-tls.h | 2 +- {lib => gnulib-tests}/xsize.c | 2 +- {lib => gnulib-tests}/xsize.h | 10 +- gnulib-tests/xstrtol-error.c | 4 +- gnulib-tests/xstrtol-error.h | 18 +- gnulib-tests/zerosize-ptr.h | 4 +- lib/Makefile.am | 6 +- lib/Makefile.in | 5505 +++- lib/_Noreturn.h | 9 +- lib/alloca.in.h | 2 +- lib/allocator.c | 2 +- lib/allocator.h | 2 +- lib/anytostr.c | 2 +- lib/areadlink.c | 2 +- lib/areadlink.h | 16 +- lib/arg-nonnull.h | 2 +- lib/argmatch.c | 34 +- lib/argmatch.h | 37 +- gnulib-tests/sig-handler.c => lib/assert.in.h | 18 +- lib/assure.h | 2 +- lib/attribute.h | 27 +- lib/basename-lgpl.c | 3 +- lib/basename-lgpl.h | 7 +- lib/basename.c | 4 +- lib/binary-io.c | 2 +- lib/binary-io.h | 12 +- lib/bitrotate.c | 2 +- lib/bitrotate.h | 10 +- lib/btowc.c | 10 +- lib/c++defs.h | 8 +- lib/c-ctype.c | 2 +- lib/c-ctype.h | 8 +- lib/c-stack.c | 13 +- lib/c-stack.h | 17 +- lib/c-strcase.h | 7 +- lib/c-strcasecmp.c | 2 +- lib/c-strcaseeq.h | 2 +- lib/c-strncasecmp.c | 2 +- lib/calloc.c | 2 +- lib/careadlinkat.c | 10 +- lib/careadlinkat.h | 7 +- lib/cdefs.h | 131 +- lib/cloexec.c | 2 +- lib/cloexec.h | 4 +- lib/close.c | 2 +- lib/cmpbuf.c | 5 +- lib/cmpbuf.h | 2 +- lib/config.hin | 1324 +- lib/ctype.in.h | 7 +- lib/diffseq.h | 15 +- lib/dirname-lgpl.c | 2 +- lib/dirname.c | 4 +- lib/dirname.h | 22 +- lib/dup2.c | 2 +- lib/dynarray.h | 2 +- lib/errno.in.h | 2 +- lib/error.c | 4 +- lib/error.h | 66 - lib/error.in.h | 123 + lib/exclude.c | 38 +- lib/exclude.h | 18 +- lib/exitfail.c | 2 +- lib/exitfail.h | 2 +- lib/fcntl.c | 2 +- lib/fcntl.in.h | 11 +- lib/fd-hook.c | 2 +- lib/fd-hook.h | 2 +- lib/file-type.c | 4 +- lib/file-type.h | 9 +- lib/filename.h | 2 +- lib/filenamecat-lgpl.c | 2 +- lib/filenamecat.c | 4 +- lib/filenamecat.h | 16 +- lib/flexmember.h | 7 +- lib/fnmatch.c | 7 +- lib/fnmatch.in.h | 7 +- lib/fnmatch_loop.c | 6 +- lib/fopen.c | 7 +- lib/free.c | 2 +- lib/freopen.c | 4 +- lib/fstat.c | 2 +- lib/getdtablesize.c | 2 +- lib/getopt-cdefs.in.h | 2 +- lib/getopt-core.h | 2 +- lib/getopt-ext.h | 2 +- lib/getopt-pfx-core.h | 4 +- lib/getopt-pfx-ext.h | 2 +- lib/getopt.c | 6 +- lib/getopt.in.h | 2 +- lib/getopt1.c | 2 +- lib/getopt_int.h | 2 +- lib/getpagesize.c | 2 +- lib/getprogname.c | 10 +- lib/getprogname.h | 20 +- lib/getrandom.c | 3 +- lib/gettext.h | 15 +- lib/gettime.c | 10 +- lib/gettimeofday.c | 16 +- lib/glthread/lock.c | 2 +- lib/glthread/lock.h | 10 +- lib/glthread/threadlib.c | 2 +- lib/gnulib.mk | 1157 +- lib/hard-locale.c | 16 +- lib/hard-locale.h | 8 +- lib/hash.c | 2 +- lib/hash.h | 29 +- lib/ialloc.c | 4 +- lib/ialloc.h | 39 +- lib/iconv.c | 2 +- lib/iconv.in.h | 7 +- lib/iconv_close.c | 2 +- lib/iconv_open-aix.gperf | 2 +- lib/iconv_open-hpux.gperf | 2 +- lib/iconv_open-irix.gperf | 2 +- lib/iconv_open-osf.gperf | 2 +- lib/iconv_open-solaris.gperf | 2 +- lib/iconv_open-zos.gperf | 2 +- lib/iconv_open.c | 2 +- lib/idx.h | 22 +- lib/ignore-value.h | 2 +- lib/imaxtostr.c | 2 +- lib/intprops-internal.h | 392 + lib/intprops.h | 359 +- lib/inttostr.c | 2 +- lib/inttostr.h | 7 +- lib/inttypes.in.h | 41 +- lib/isblank.c | 2 +- lib/iswblank.c | 2 +- lib/iswdigit.c | 2 +- lib/iswxdigit.c | 2 +- lib/langinfo.in.h | 9 +- lib/lc-charset-dispatch.c | 2 +- lib/lc-charset-dispatch.h | 2 +- lib/libc-config.h | 26 +- lib/limits.in.h | 36 +- lib/localcharset.c | 2 +- lib/localcharset.h | 2 +- lib/locale.in.h | 31 +- lib/localeconv.c | 47 +- lib/lstat.c | 2 +- lib/malloc.c | 2 +- lib/malloc/dynarray-skeleton.c | 2 +- lib/malloc/dynarray.h | 3 +- lib/malloc/dynarray_at_failure.c | 5 +- lib/malloc/dynarray_emplace_enlarge.c | 6 +- lib/malloc/dynarray_finalize.c | 2 +- lib/malloc/dynarray_resize.c | 6 +- lib/malloc/dynarray_resize_clear.c | 2 +- lib/malloca.c | 27 +- lib/malloca.h | 26 +- lib/mbchar.c | 2 +- lib/mbchar.h | 11 +- lib/mbiter.c | 2 +- lib/mbiter.h | 11 +- lib/mbrtowc-impl-utf8.h | 2 +- lib/mbrtowc-impl.h | 2 +- lib/mbrtowc.c | 5 +- lib/mbscasecmp.c | 4 +- lib/mbsinit.c | 5 +- lib/mbslen.c | 4 +- lib/mbsrtowcs-impl.h | 2 +- lib/mbsrtowcs-state.c | 2 +- lib/mbsrtowcs.c | 2 +- lib/mbsstr.c | 5 +- lib/mbtowc-impl.h | 2 +- lib/mbtowc-lock.c | 2 +- lib/mbtowc-lock.h | 2 +- lib/mbtowc.c | 2 +- lib/mbuiter.c | 4 +- lib/mbuiter.h | 13 +- lib/memchr.c | 2 +- lib/memchr.valgrind | 2 +- lib/mempcpy.c | 2 +- lib/minmax.h | 7 +- lib/mkdir.c | 4 +- lib/mkstemp.c | 2 +- lib/mktime-internal.h | 2 +- lib/mktime.c | 41 +- lib/msvc-inval.c | 2 +- lib/msvc-inval.h | 7 +- lib/msvc-nothrow.c | 2 +- lib/msvc-nothrow.h | 7 +- lib/nl_langinfo-lock.c | 2 +- lib/nl_langinfo.c | 4 +- lib/nstrftime.c | 81 +- lib/offtostr.c | 2 +- lib/open.c | 2 +- lib/pathmax.h | 7 +- lib/prepargs.c | 91 - lib/prepargs.h | 3 - lib/progname.c | 4 +- lib/progname.h | 4 +- lib/propername.c | 5 +- lib/propername.h | 4 +- lib/quote.h | 4 +- lib/quotearg.c | 6 +- lib/quotearg.h | 19 +- lib/raise.c | 2 +- lib/rawmemchr.c | 76 +- lib/rawmemchr.valgrind | 2 +- lib/readlink.c | 6 +- lib/realloc.c | 2 +- lib/reallocarray.c | 7 +- lib/regcomp.c | 831 +- lib/regex.c | 3 +- lib/regex.h | 52 +- lib/regex_internal.c | 64 +- lib/regex_internal.h | 58 +- lib/regexec.c | 97 +- lib/setenv.c | 2 +- lib/setlocale-lock.c | 2 +- lib/setlocale_null.c | 6 +- lib/setlocale_null.h | 2 +- lib/sh-quote.c | 4 +- lib/sh-quote.h | 19 +- lib/signal.in.h | 21 +- {gnulib-tests => lib}/sigprocmask.c | 2 +- lib/sigsegv.c | 122 +- lib/sigsegv.in.h | 6 +- lib/stackvma.c | 310 +- lib/stackvma.h | 2 +- lib/stat-macros.h | 4 +- lib/stat-time.c | 2 +- lib/stat-time.h | 56 +- lib/stat-w32.c | 5 +- lib/stat-w32.h | 2 +- lib/stat.c | 4 +- lib/stdalign.in.h | 127 - lib/stdarg.in.h | 7 +- lib/stdbool.in.h | 132 - lib/stdckdint.in.h | 35 + lib/stddef.in.h | 54 +- lib/stdint.in.h | 2 +- lib/stdio-read.c | 168 + lib/stdio-write.c | 206 + lib/stdio.in.h | 281 +- lib/stdlib.in.h | 432 +- lib/stdopen.c | 2 +- lib/stdopen.h | 4 +- lib/stpcpy.c | 49 + lib/str-kmp.h | 4 +- lib/strcasecmp.c | 2 +- lib/streq.h | 2 +- lib/strerror-override.c | 2 +- lib/strerror-override.h | 7 +- lib/strerror.c | 5 +- lib/strftime.h | 4 +- lib/striconv.c | 2 +- lib/striconv.h | 15 +- lib/string.in.h | 312 +- lib/strings.in.h | 7 +- lib/stripslash.c | 2 +- lib/strncasecmp.c | 2 +- lib/strnlen.c | 2 +- lib/strnlen1.c | 2 +- lib/strnlen1.h | 7 +- lib/strptime.c | 6 +- lib/strtoimax.c | 10 +- lib/strtol.c | 18 +- lib/strtoll.c | 4 +- lib/sys_random.in.h | 15 +- lib/sys_stat.in.h | 126 +- lib/sys_time.in.h | 14 +- lib/sys_types.in.h | 9 +- lib/sys_wait.in.h | 7 +- lib/system-quote.c | 7 +- lib/system-quote.h | 19 +- lib/tempname.c | 177 +- lib/tempname.h | 4 +- lib/time-internal.h | 4 +- lib/time.in.h | 67 +- lib/time_r.c | 2 +- lib/time_rz.c | 5 +- lib/timegm.c | 2 +- lib/timespec.c | 4 +- lib/timespec.h | 19 +- lib/trim.c | 54 +- lib/trim.h | 15 +- lib/tzset.c | 4 +- lib/uinttostr.c | 2 +- lib/umaxtostr.c | 2 +- lib/unictype/bitmap.h | 48 + lib/unistd.c | 2 +- lib/unistd.in.h | 132 +- lib/unistr.in.h | 14 +- lib/unistr/u8-mbtoucr.c | 2 +- lib/unistr/u8-uctomb-aux.c | 2 +- lib/unistr/u8-uctomb.c | 2 +- lib/unitypes.in.h | 2 +- lib/uniwidth.in.h | 2 +- lib/uniwidth/cjk.h | 2 +- lib/uniwidth/width.c | 439 +- lib/uniwidth/width0.h | 486 + lib/uniwidth/width2.h | 541 + lib/unlocked-io.h | 9 +- lib/unsetenv.c | 2 +- lib/vasprintf.c | 50 - lib/verify.h | 102 +- lib/version-etc-fsf.c | 4 +- lib/version-etc.c | 6 +- lib/version-etc.h | 18 +- lib/warn-on-use.h | 8 +- lib/wchar.in.h | 244 +- lib/wcrtomb.c | 2 +- lib/wctype-h.c | 2 +- lib/wctype.in.h | 11 +- lib/wcwidth.c | 2 +- lib/windows-initguard.h | 2 +- lib/windows-mutex.c | 2 +- lib/windows-mutex.h | 2 +- lib/windows-once.c | 2 +- lib/windows-once.h | 2 +- lib/windows-recmutex.c | 2 +- lib/windows-recmutex.h | 2 +- lib/windows-rwlock.c | 2 +- lib/windows-rwlock.h | 2 +- lib/wmemchr-impl.h | 2 +- lib/wmemchr.c | 2 +- lib/wmempcpy.c | 2 +- lib/xalloc-die.c | 4 +- lib/xalloc-oversized.h | 2 +- lib/xalloc.h | 33 +- lib/xfreopen.c | 2 +- lib/xfreopen.h | 4 +- lib/xmalloc.c | 38 +- lib/xmalloca.c | 4 +- lib/xmalloca.h | 14 +- lib/xreadlink.c | 4 +- lib/xreadlink.h | 17 +- lib/xstdopen.c | 4 +- lib/xstdopen.h | 4 +- lib/xstriconv.c | 4 +- lib/xstriconv.h | 17 +- lib/xstrtoimax.c | 5 +- lib/xstrtol.c | 36 +- lib/xstrtol.h | 7 +- lib/xstrtoul.c | 4 +- lib/xvasprintf.c | 110 - lib/xvasprintf.h | 46 - m4/00gnulib.m4 | 2 +- m4/__inline.m4 | 2 +- m4/absolute-header.m4 | 2 +- m4/alloca.m4 | 12 +- m4/arpa_inet_h.m4 | 2 +- m4/asm-underscore.m4 | 2 +- m4/assert_h.m4 | 73 + m4/atoll.m4 | 2 +- m4/btowc.m4 | 59 +- m4/builtin-expect.m4 | 2 +- m4/c-bool.m4 | 51 + m4/c-stack.m4 | 13 +- m4/calloc.m4 | 29 +- m4/clock_time.m4 | 20 +- m4/close.m4 | 6 +- m4/codeset.m4 | 2 +- m4/config-h.m4 | 2 +- m4/ctype_h.m4 | 2 +- m4/double-slash-root.m4 | 2 +- m4/dup2.m4 | 2 +- m4/eealloc.m4 | 2 +- m4/environ.m4 | 2 +- m4/errno_h.m4 | 12 +- m4/error.m4 | 17 +- m4/error_h.m4 | 125 + m4/exponentd.m4 | 6 +- m4/extensions.m4 | 13 +- m4/extern-inline.m4 | 32 +- m4/fclose.m4 | 98 + m4/fcntl-o.m4 | 2 +- m4/fcntl.m4 | 2 +- m4/fcntl_h.m4 | 2 +- m4/fdopen.m4 | 2 +- m4/fflush.m4 | 100 + m4/filenamecat.m4 | 6 +- m4/flexmember.m4 | 2 +- m4/float_h.m4 | 22 +- m4/fnmatch.m4 | 12 +- m4/fnmatch_h.m4 | 17 +- m4/fopen.m4 | 24 +- m4/fpieee.m4 | 2 +- m4/free.m4 | 2 +- m4/freopen.m4 | 2 +- m4/fstat.m4 | 2 +- m4/ftruncate.m4 | 9 +- m4/getcwd.m4 | 6 +- m4/getdtablesize.m4 | 2 +- m4/getopt.m4 | 12 +- m4/getpagesize.m4 | 2 +- m4/getprogname.m4 | 23 +- m4/getrandom.m4 | 24 +- m4/gettime.m4 | 61 +- m4/gettimeofday.m4 | 2 +- m4/gnu-make.m4 | 2 +- m4/gnulib-common.m4 | 886 +- m4/gnulib-comp.m4 | 893 +- m4/host-cpu-c-abi.m4 | 7 +- m4/iconv.m4 | 26 +- m4/iconv_h.m4 | 18 +- m4/iconv_open.m4 | 2 +- m4/include_next.m4 | 8 +- m4/inet_pton.m4 | 2 +- m4/inline.m4 | 2 +- m4/intl-thread-locale.m4 | 219 + m4/intmax_t.m4 | 2 +- m4/inttostr.m4 | 2 +- m4/inttypes.m4 | 10 +- m4/inttypes_h.m4 | 2 +- m4/ioctl.m4 | 2 +- m4/isblank.m4 | 2 +- m4/iswblank.m4 | 12 +- m4/iswdigit.m4 | 2 +- m4/iswxdigit.m4 | 2 +- m4/langinfo_h.m4 | 2 +- m4/largefile.m4 | 327 +- m4/lib-ld.m4 | 6 +- m4/lib-link.m4 | 8 +- m4/lib-prefix.m4 | 6 +- m4/libsigsegv.m4 | 2 +- m4/libunistring-base.m4 | 63 +- m4/limits-h.m4 | 30 +- m4/localcharset.m4 | 2 +- m4/locale-fr.m4 | 8 +- m4/locale-ja.m4 | 6 +- m4/locale-tr.m4 | 6 +- m4/locale-zh.m4 | 6 +- m4/locale_h.m4 | 2 +- m4/localeconv.m4 | 41 +- m4/lock.m4 | 2 +- m4/lstat.m4 | 7 +- m4/malloc.m4 | 15 +- m4/malloca.m4 | 2 +- m4/manywarnings.m4 | 38 +- m4/mbchar.m4 | 2 +- m4/mbiter.m4 | 2 +- m4/mbrtowc.m4 | 23 +- m4/mbsinit.m4 | 2 +- m4/mbslen.m4 | 2 +- m4/mbsrtowcs.m4 | 11 +- m4/mbstate_t.m4 | 2 +- m4/mbtowc.m4 | 9 +- m4/memchr.m4 | 2 +- m4/mempcpy.m4 | 9 +- m4/minmax.m4 | 2 +- m4/mkdir.m4 | 8 +- m4/mkstemp.m4 | 20 +- m4/mktime.m4 | 31 +- m4/mmap-anon.m4 | 2 +- m4/mode_t.m4 | 2 +- m4/msvc-inval.m4 | 2 +- m4/msvc-nothrow.m4 | 2 +- m4/multiarch.m4 | 2 +- m4/musl.m4 | 8 +- m4/nanosleep.m4 | 49 +- m4/netinet_in_h.m4 | 10 +- m4/nl_langinfo.m4 | 11 +- m4/nocrash.m4 | 2 +- m4/nstrftime.m4 | 2 +- m4/nullptr.m4 | 62 + m4/off_t.m4 | 2 +- m4/open-cloexec.m4 | 2 +- m4/open-slash.m4 | 2 +- m4/open.m4 | 2 +- m4/pathmax.m4 | 2 +- m4/perl.m4 | 53 + m4/perror.m4 | 25 +- m4/pipe.m4 | 2 +- m4/printf.m4 | 584 +- m4/pselect.m4 | 75 + m4/pthread-thread.m4 | 2 +- m4/pthread_h.m4 | 2 +- m4/pthread_rwlock_rdlock.m4 | 36 +- m4/pthread_sigmask.m4 | 24 +- m4/putenv.m4 | 20 +- m4/quote.m4 | 2 +- m4/quotearg.m4 | 2 +- m4/raise.m4 | 2 +- m4/rawmemchr.m4 | 2 +- m4/readlink.m4 | 10 +- m4/realloc.m4 | 14 +- m4/reallocarray.m4 | 9 +- m4/regex.m4 | 6 +- m4/sched_h.m4 | 2 +- m4/select.m4 | 13 +- m4/setenv.m4 | 18 +- m4/setlocale_null.m4 | 37 +- m4/sigaction.m4 | 40 - m4/sigaltstack.m4 | 2 +- m4/signal_h.m4 | 2 +- m4/signalblocking.m4 | 2 +- m4/sigsegv.m4 | 20 + m4/size_max.m4 | 2 +- m4/sleep.m4 | 6 +- m4/snprintf.m4 | 2 +- m4/socketlib.m4 | 2 +- m4/sockets.m4 | 2 +- m4/socklen.m4 | 2 +- m4/sockpfaf.m4 | 2 +- m4/ssize_t.m4 | 2 +- m4/stack-direction.m4 | 32 +- m4/stat-time.m4 | 2 +- m4/stat.m4 | 6 +- m4/stdalign.m4 | 169 +- m4/stdarg.m4 | 10 +- m4/stdbool.m4 | 122 - m4/stddef_h.m4 | 40 +- m4/stdint.m4 | 10 +- m4/stdint_h.m4 | 2 +- m4/stdio_h.m4 | 67 +- m4/stdlib_h.m4 | 78 +- m4/stpcpy.m4 | 28 + m4/strcase.m4 | 2 +- m4/strerror.m4 | 34 +- m4/strerror_r.m4 | 25 +- m4/string_h.m4 | 13 +- m4/strings_h.m4 | 2 +- m4/strnlen.m4 | 2 +- m4/strptime.m4 | 2 +- m4/strtoimax.m4 | 2 +- m4/strtoll.m4 | 21 +- m4/symlink.m4 | 6 +- m4/sys_ioctl_h.m4 | 2 +- m4/sys_random_h.m4 | 2 +- m4/sys_select_h.m4 | 2 +- m4/sys_socket_h.m4 | 9 +- m4/sys_stat_h.m4 | 8 +- m4/sys_time_h.m4 | 2 +- m4/sys_types_h.m4 | 2 +- m4/sys_uio_h.m4 | 2 +- m4/sys_wait_h.m4 | 2 +- m4/tempname.m4 | 2 +- m4/thread.m4 | 6 +- m4/threadlib.m4 | 93 +- m4/time.m4 | 48 + m4/time_h.m4 | 15 +- m4/time_r.m4 | 2 +- m4/time_rz.m4 | 2 +- m4/timegm.m4 | 9 +- m4/timespec.m4 | 2 +- m4/tm_gmtoff.m4 | 2 +- m4/tzset.m4 | 2 +- m4/unistd_h.m4 | 196 +- m4/unlocked-io.m4 | 2 +- m4/vasnprintf.m4 | 136 +- m4/vasprintf.m4 | 46 - m4/version-etc.m4 | 6 +- m4/visibility.m4 | 2 +- m4/warn-on-use.m4 | 23 +- m4/warnings.m4 | 2 +- m4/wchar_h.m4 | 11 +- m4/wchar_t.m4 | 2 +- m4/wcrtomb.m4 | 2 +- m4/wctob.m4 | 2 +- m4/wctomb.m4 | 2 +- m4/wctype_h.m4 | 2 +- m4/wcwidth.m4 | 22 +- m4/wint_t.m4 | 2 +- m4/wmemchr.m4 | 2 +- m4/wmempcpy.m4 | 9 +- m4/xalloc.m4 | 2 +- m4/xsize.m4 | 2 +- m4/xstrtol.m4 | 2 +- m4/xvasprintf.m4 | 8 - m4/year2038.m4 | 112 - m4/zzgnulib.m4 | 2 +- maint.mk | 81 +- man/Makefile.am | 2 +- man/Makefile.in | 184 +- man/cmp.1 | 8 +- man/cmp.x | 4 +- man/diff.1 | 10 +- man/diff.x | 6 +- man/diff3.1 | 8 +- man/diff3.x | 4 +- man/help2man | 2 +- man/sdiff.1 | 8 +- man/sdiff.x | 4 +- po/LINGUAS | 2 + po/Makevars | 3 +- po/POTFILES.in | 2 +- po/bg.po | 415 +- po/ca.po | 415 +- po/cs.po | 415 +- po/da.po | 415 +- po/de.po | 415 +- po/diffutils.pot | 417 +- po/el.gmo | Bin 42072 -> 42953 bytes po/el.po | 548 +- po/eo.gmo | Bin 33036 -> 34051 bytes po/eo.po | 448 +- po/es.gmo | Bin 35739 -> 36766 bytes po/es.po | 657 +- po/fi.po | 415 +- po/fr.po | 415 +- po/ga.po | 415 +- po/gl.po | 423 +- po/he.po | 415 +- po/hr.gmo | Bin 35584 -> 35574 bytes po/hr.po | 519 +- po/hu.gmo | Bin 36044 -> 37088 bytes po/hu.po | 461 +- po/id.gmo | Bin 29121 -> 33980 bytes po/id.po | 1027 +- po/it.po | 415 +- po/ja.po | 415 +- po/ka.gmo | Bin 0 -> 44891 bytes po/ka.po | 1435 + po/ko.gmo | Bin 0 -> 35758 bytes po/ko.po | 1439 + po/lv.po | 415 +- po/ms.gmo | Bin 27300 -> 33924 bytes po/ms.po | 614 +- po/nb.po | 415 +- po/nl.po | 415 +- po/pl.po | 415 +- po/pt.po | 423 +- po/pt_BR.po | 423 +- po/ro.gmo | Bin 6490 -> 37888 bytes po/ro.po | 1513 +- po/ru.po | 419 +- po/sr.po | 419 +- po/sv.gmo | Bin 34038 -> 34038 bytes po/sv.po | 425 +- po/tr.po | 415 +- po/uk.po | 415 +- po/vi.po | 415 +- po/zh_CN.gmo | Bin 34572 -> 34198 bytes po/zh_CN.po | 937 +- po/zh_TW.gmo | Bin 32725 -> 33672 bytes po/zh_TW.po | 452 +- src/Makefile.am | 11 +- src/Makefile.in | 211 +- src/analyze.c | 17 +- src/cmp.c | 58 +- src/context.c | 33 +- src/die.h | 3 +- src/diff.c | 206 +- src/diff.h | 56 +- src/diff3.c | 173 +- src/dir.c | 19 +- src/ed.c | 4 +- src/ifdef.c | 20 +- src/io.c | 48 +- src/normal.c | 2 +- src/sdiff.c | 78 +- src/side.c | 16 +- src/system.h | 50 +- src/util.c | 382 +- tests/Makefile.am | 5 +- tests/Makefile.in | 223 +- tests/cmp | 2 +- tests/colors | 7 +- tests/envvar-check | 2 +- tests/help-version | 2 +- tests/ifdef | 37 + tests/init.cfg | 18 +- tests/init.sh | 19 +- tests/large-subopt | 4 +- tests/timezone | 14 + tests/y2038-vs-32bit | 13 + 1034 files changed, 56949 insertions(+), 38398 deletions(-) rename {lib => gnulib-tests}/asnprintf.c (94%) create mode 100644 gnulib-tests/c-strcasestr.c create mode 100644 gnulib-tests/c-strcasestr.h rename {lib => gnulib-tests}/float+.h (98%) rename {lib => gnulib-tests}/float.c (95%) rename {lib => gnulib-tests}/float.in.h (99%) rename {lib => gnulib-tests}/itold.c (94%) create mode 100644 gnulib-tests/nan.h rename {lib => gnulib-tests}/printf-args.c (60%) rename {lib => gnulib-tests}/printf-args.h (61%) rename {lib => gnulib-tests}/printf-parse.c (54%) rename {lib => gnulib-tests}/printf-parse.h (92%) create mode 100644 gnulib-tests/pselect.c delete mode 100644 gnulib-tests/sig-handler.h delete mode 100644 gnulib-tests/sigaction.c rename {lib => gnulib-tests}/size_max.h (86%) create mode 100644 gnulib-tests/str-two-way.h rename gnulib-tests/{test-stdalign.c => test-alignasof.c} (71%) create mode 100644 gnulib-tests/test-assert.c create mode 100755 gnulib-tests/test-btowc3.sh create mode 100644 gnulib-tests/test-c-strcasestr.c create mode 100644 gnulib-tests/test-error.c create mode 100755 gnulib-tests/test-error.sh create mode 100644 gnulib-tests/test-largefile.c create mode 100755 gnulib-tests/test-mbsrtowcs5.sh delete mode 100755 gnulib-tests/test-nl_langinfo.sh rename gnulib-tests/{test-nl_langinfo.c => test-nl_langinfo1.c} (98%) create mode 100755 gnulib-tests/test-nl_langinfo1.sh create mode 100644 gnulib-tests/test-nl_langinfo2.c create mode 100755 gnulib-tests/test-nl_langinfo2.sh create mode 100644 gnulib-tests/test-nullptr.c create mode 100644 gnulib-tests/test-pselect.c delete mode 100644 gnulib-tests/test-sigaction.c rename lib/xasprintf.c => gnulib-tests/test-stdckdint.c (50%) create mode 100644 gnulib-tests/test-time-h.c create mode 100644 gnulib-tests/test-trim.c create mode 100755 gnulib-tests/test-trim1.sh create mode 100755 gnulib-tests/test-trim2.sh create mode 100755 gnulib-tests/test-trim3.sh delete mode 100644 gnulib-tests/test-vasprintf.c delete mode 100644 gnulib-tests/test-xvasprintf.c create mode 100644 gnulib-tests/test-year2038.c rename lib/asprintf.c => gnulib-tests/time.c (63%) rename {lib => gnulib-tests}/vasnprintf.c (77%) rename {lib => gnulib-tests}/vasnprintf.h (93%) rename {lib => gnulib-tests}/xsize.c (93%) rename {lib => gnulib-tests}/xsize.h (95%) rename gnulib-tests/sig-handler.c => lib/assert.in.h (63%) delete mode 100644 lib/error.h create mode 100644 lib/error.in.h create mode 100644 lib/intprops-internal.h delete mode 100644 lib/prepargs.c delete mode 100644 lib/prepargs.h rename {gnulib-tests => lib}/sigprocmask.c (99%) delete mode 100644 lib/stdalign.in.h delete mode 100644 lib/stdbool.in.h create mode 100644 lib/stdckdint.in.h create mode 100644 lib/stdio-read.c create mode 100644 lib/stdio-write.c create mode 100644 lib/stpcpy.c create mode 100644 lib/unictype/bitmap.h create mode 100644 lib/uniwidth/width0.h create mode 100644 lib/uniwidth/width2.h delete mode 100644 lib/vasprintf.c delete mode 100644 lib/xvasprintf.c delete mode 100644 lib/xvasprintf.h create mode 100644 m4/assert_h.m4 create mode 100644 m4/c-bool.m4 create mode 100644 m4/error_h.m4 create mode 100644 m4/fclose.m4 create mode 100644 m4/fflush.m4 create mode 100644 m4/intl-thread-locale.m4 create mode 100644 m4/nullptr.m4 create mode 100644 m4/perl.m4 create mode 100644 m4/pselect.m4 delete mode 100644 m4/sigaction.m4 create mode 100644 m4/sigsegv.m4 delete mode 100644 m4/stdbool.m4 create mode 100644 m4/stpcpy.m4 create mode 100644 m4/time.m4 delete mode 100644 m4/vasprintf.m4 delete mode 100644 m4/xvasprintf.m4 delete mode 100644 m4/year2038.m4 create mode 100644 po/ka.gmo create mode 100644 po/ka.po create mode 100644 po/ko.gmo create mode 100644 po/ko.po create mode 100755 tests/ifdef create mode 100755 tests/timezone create mode 100755 tests/y2038-vs-32bit diff --git a/.tarball-version b/.tarball-version index cc1923a..c8cfe39 100644 --- a/.tarball-version +++ b/.tarball-version @@ -1 +1 @@ -3.8 +3.10 diff --git a/AUTHORS b/AUTHORS index c1d2ea0..da8bb12 100644 --- a/AUTHORS +++ b/AUTHORS @@ -33,7 +33,7 @@ Patrick D'Cruze Eli Zaretskii -Copyright (C) 2001, 2006, 2009-2013, 2015-2021 Free Software Foundation, Inc. +Copyright (C) 2001, 2006, 2009-2013, 2015-2023 Free Software Foundation, Inc. This file is part of GNU diffutils. diff --git a/ChangeLog b/ChangeLog index 53b731a..9669e29 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,537 @@ +2023-05-21 Jim Meyering + + version 3.10 + * NEWS: Record release date. + +2023-05-21 Jim Meyering + + build: skip the sole perl-requiring test when there is no usable perl + * tests/init.cfg (require_perl_): New function, from coreutils. + * tests/large-subopt: Use it. + Reported by Bruno Haible in + https://lists.gnu.org/r/diffutils-devel/2023-05/msg00003.html + +2023-05-20 Jim Meyering + + build: fix a new syntax-check failure + * src/diff.h (robust_output_style): Put DIFF_INLINE and + the function name on the same line, so that syntax-check's + naive parsing can spot this function. + * cfg.mk (_gl_TS_extern): Add DIFF_INLINE. + + build: modernize bootstrap prerequsite tools + Following Pádraig Brady's example from coreutils, ... + * bootstrap.conf: Add an explicit requirement on m4. + Add an explicit requirement on texi2pdf which is often packaged + separately to makeinfo and induces a failure far down the + distribution phase if not present. + Replace the rsync dependency with wget, + which gnulib changed to in 2018. + Also, add an xz requirement and a version for autopoint. + +2023-05-19 Paul Eggert + + build: update gnulib submodule to latest + * src/analyze.c (OFFSET_MAX): New macro, needed for + latest gnulib. + + diff: avoid a macro in diff.h + * src/diff.h (FILE_BUFFER): Remove. + * src/io.c (file_buffer): New static function. All uses of + FILE_BUFFER replaced. + + sdiff: avoid some macros in sdiff.c + * src/sdiff.c (PROGRAM_NAME, SDIFF_BUFSIZE): + Now constants, not macros. + + diff3: avoid macros in diff3.c + * src/diff3.c (PROGRAM_NAME, FILE0, FILE1, FILE2, FILE3, FO, FC) + (RANGE_START, RANGE_END): Now constants, not macros. + + cmp: avoid macros in cmp.c + * src/cmp.c (PROGRAM_NAME): Now a constant, not a macro. + (hard_locale_LC_MESSAGES): Now a function, not a macro. + All uses changed. + + diff: avoid macros in diff.c + * src/diff.c (PROGRAM_NAME, NONEXISTENT, UNOPENED): + Now constants, not macros. + (errno_encode, errno_decode): Now functions, rather than + macros ERRNO_ENCODE and ERRNO_DECODE. All uses changed. + + diff: use function for robust_output_style + * bootstrap.conf (gnulib_modules): Add extern-inline. + * src/diff.h: Use _GL_INLINE_HEADER_BEGIN and _GL_INLINE_HEADER_END. + (DIFF_INLINE): New macro. + (robust_output_style): Now an inline function, not a macro + ROBUST_OUTPUT_STYLE. All uses changed. + + cmp: don’t give up if fstat fails + * src/cmp.c (main, cmp): If fstat fails, simply record the failure + and move on, instead of exiting. Modify other uses of the struct + stat to do something reasonable if the status is missing. + + diff3: don’t give up if fstat fails + * src/diff3.c (read_diff): Work even if fstat fails, + e.g., due to EOVERFLOW. + + diff3: fix race condition involving directories + This fixes a TOC-TOU race with "diff3 A B C" when one + of its arguments is a directory. + * src/diff.c (no_directory): New static var. + (NO_DIRECTORY_OPTION): New constant. + (longopts): Add ---no-directory. + (main): Support it. + (compare_files): If ---no-directory is given, do not treat + directories specially. + * src/diff3.c (main): Do not check whether an argument is + a directory. + (read_diff): Pass ---no-directory to diff, so that it checks. + +2023-05-13 Jim Meyering + + maint: suppress new test's doubled-word syntax-check failure + * cfg.mk (exclude_file_name_regexp--sc_prohibit_doubled_word): + Exempt the new test's use of "in in". + +2023-05-13 Paul Eggert + + build: update gnulib submodule to latest + +2023-05-13 Carlo Marcelo Arenas Belón (tiny change) + + gnulib: fix Y2038 bug (again) + AC_SYS_LARGEFILE meaning has changed, need AC_SYS_YEAR2038 as well + + * NEWS: mention this + * tests: add test + * bootstrap.conf: add year2038 + +2023-02-24 Paul Eggert + + maint: add 'diff --git' TODO + * TODO: Suggest better compatibility with 'git diff -p'. + From a suggestion by Linus Torvalds + . + +2023-02-10 Paul Eggert + + maint: update .gitignore + .gitignore: Update for some recent changes, and simplify. + + diff: fix bug where -D does not work + Problem reported by Robert Webb (bug#61193). + * NEWS: Mention this. + * src/diff.c (main): Omit stray ‘sizeof’. + * tests/ifdef: New test. + * tests/Makefile.am (TESTS): Add it. + +2023-02-07 Paul Eggert + + build: update gnulib submodule to latest + +2023-02-05 Paul Eggert + + diff: use C23 bool + * bootstrap.conf (gnulib_modules): Add stdbool. + * src/die.h, src/system.h: Do not include . + + diff: prefer nullptr to NULL + * bootstrap.conf (gnulib_modules): Add c-nullptr. + * src/cmp.c (main): + * src/context.c (pr_context_hunk, pr_unidiff_hunk) + (mark_ignorable, find_function): + * src/diff.c (longopts, main, specify_value, specify_style) + (specify_colors_style, compare_files): + * src/diff3.c (main, process_diff): + * src/dir.c (find_dir_file_pathname): + * src/ifdef.c (scan_char_literal): + * src/sdiff.c (main): + * src/util.c (process_signals, install_signal_handlers) + (color_ext_list, color_indicator, indicator_name) + (parse_diff_color): + Prefer C23-style nullptr to NULL, as nullptr is a bit better. + + doc: update README-hacking + * README-hacking: Update for current bootstrap. + + maint: sync bootstrap from Gnulib + bootstrap: sync from Gnulib + + build: update gnulib submodule to latest + * lib/sh-quote.c.diff: Remove, as Gnulib now has this. + + build: add libraries + * src/Makefile.am (LDADD, sdiff_LDADD): Add Gnulib libraries that + in theory would be needed on unusual platforms. In practice, + these are typicall empty or are duplicates of other library + arguments and so are redundant. + +2023-02-04 Jim Meyering + + doc: update HACKING + * HACKING: Update from grep's HACKING. + +2023-02-04 Jim Meyering + + maint: prefer https: to git: + The idea is to defend against some adversary-in-the-middle attacks. + Also prefer git.savannah.gnu.org over its shorter alias, git.sv.gnu.org + to avoid a warning e.g., from git clone. + Also, drop any final ".git" suffix on the resulting URIs. + Inspired by Paul Eggert's nearly identical changes to coreutils. + +2023-01-16 Jim Meyering + + tests: accommodate newer GNU make's SIGPIPE-ignore + * tests/colors: Allow an exit code of not just 141 (SIGPIPE), + but also "error": 2. + Reported by Tomasz Kłoczko in http://bugs.gnu.org/59905. + +2023-01-15 Jim Meyering + + maint: post-release administrivia + * NEWS: Add header line for next release. + * .prev-version: Record previous version. + * cfg.mk (old_NEWS_hash): Auto-update. + + version 3.9 + * NEWS: Record release date. + + build: update gnulib to latest + +2023-01-05 Jim Meyering + + tests: avoid large-subopt XPASS on systems without perl + * tests/large-subopt: Use $PERL, rather than hard-coding "perl". + * bootstrap.conf (gnulib_modules): Add "perl" to the list. + Reported by Bruno Haible in + https://lists.gnu.org/r/diffutils-devel/2023-01/msg00000.html + +2023-01-05 Bruno Haible + + tests: avoid a test failure when using Solaris 11.4's old grep + * tests/colors (nanosecond_zeros): Use a dumbed-down grep '\.' + in place of "grep -F ." to accommodate Solaris 11.4's old versions + of grep in the default PATH. Reported here: + https://lists.gnu.org/r/diffutils-devel/2023-01/msg00001.html + +2023-01-01 Jim Meyering + + build: update gnulib to latest + + maint: update copyright dates + +2022-12-31 Paul Eggert + + build: simplify GCC 12 false alarm workaround + * src/util.c (print_message_queue): Pacify GCC in a + more-straightforward way. + + maint: fix assumption typo + Fix a typo I introduced in my August 2021 signal handling fixes. + Problem reported by Sam James (Bug#60457). + * src/util.c (xsigismember): Don’t assume sigismember cannot return 0. + +2022-12-30 Jim Meyering + + build: update gnulib to latest + + build: temp?-disable -Wanalyzer-use-of-uninitialized-value + * src/util.c (print_message_queue): This function triggers false + positive warnings from GCC12, so add pragmas to ignore that new warning + in this one function. Required when using either of these: + - gcc version 12.2.1 20221121 + - gcc version 13.0.0 20221229 (experimental) + +2022-12-11 Jim Meyering + + build: update gnulib to latest + +2022-11-12 Jim Meyering + + build: update gnulib to latest + +2022-02-14 Paul Eggert + + doc: mark up SEE ALSO (Bug#53976) + +2022-01-24 Jim Meyering + + tests: fix false-failure on systems without valgrind + * tests/init.cfg (require_valgrind_): Use exit status of subshell, + not that of the "local" declaration. + +2022-01-14 Paul Eggert + + build: update gnulib submodule to latest + +2022-01-03 Jim Meyering + + maint: avoid new syntax-check failure + * cfg.mk (local-checks-to-skip): Add sc_indent, to skip it. + Otherwise, "make syntax-check" would fail. + + maint: make update-copyright + + build: update gnulib to latest; also bootstrap and init.sh + +2021-10-30 Paul Eggert + + maint: modernize README-{hacking,prereq} + +2021-10-16 Paul Eggert + + doc: copy fdl.texi into git + This pacifies this notice from ./bootstrap: “Notice from module + fdl: Don't use this module! Instead, copy the referenced license + file into your version control repository.” + * bootstrap.conf (gnulib_modules): Remove fdl. + * doc/fdl.texi: New file, taken from Gnulib. + + maint: direct dependency on time_rz now + Now that diff calls tzalloc, it depends directly on time_rz. + * bootstrap.conf (gnulib_modules): Add time_rz. + + build: update gnulib submodule to latest + +2021-10-15 Paul Eggert + + diff: fix timezone bug on Solaris + Problem reported by Vladimir Marek (bug#51228). + * NEWS: Mention this. + * src/context.c (print_context_label): Pass localtz to nstrftime, + instead of always passing 0. + * src/diff.c (main) [!HAVE_TM_GMTOFF]: + Initialize localtz if time_format uses %z. + * src/diff.h (localtz): New decl. + * tests/Makefile.am (TESTS): Add timezone. + * tests/timezone: New test. + +2021-08-31 Paul Eggert + + diff3: port better to MS-Windows + * src/diff3.c (enum diff_type): Prefix constants like ADD with + "DIFF_" to avoid collisions with unwise system headers. + +2021-08-30 Paul Eggert + + maint: port better to non-POSIX + Problem privately reported by Gisle Vanem for MS-Windows. + * src/util.c (sig, install_signal_handlers): + Don’t assume SIGTSTP, SIGALRM, SIGQUIT. + (is_tstp_index): New function, for use in SIGTSTP avoidance. + + maint: prefer attribute.h attributes + Prefer the macros used in attribute.h, and _Noreturn, + to the by-hand use of __attribute__, as this is more portable. + * bootstrap.conf (gnulib_modules): Add attribute. + * src/system.h: Include attribute.h. All uses of + attributes changed to use the attribute.h macros. + Plus, use _Noreturn. + (FALLTHROUGH): Remove; attribute.h now defines this. + + build: update gnulib submodule to latest + + diff: avoid double translation + * src/analyze.c (briefly_report): Do not translate here, + as ‘message’ translates its format. + + diff: use variable arg list for messages + This simplifies the code by using varargs. + * bootstrap.conf (gnulib_modules): Add flexmember. + (XGETTEXT_OPTIONS): Do not flag message5. + * src/util.c: Include flexmember.h, stdarg.h. + (struct msg): New members msgid, argbytes. args is now + FLEXIBLE_ARRAY_MEMBER, and does not contain msgid. + All uses changed. + (message): Now varargs. Detect number of args by counting '%'s. + Use FLEXSIZEOF, to avoid problems on systems with buggy + allocators. Avoid redundant ‘*p = 0’ when *p is already zero + after stpcpy. + (message5): Remove; all callers changed to use ‘message’. + (print_message_queue): Abort if too many args were passed; + this cannot happen with current diffutils. + +2021-08-29 Paul Eggert + + diff: port better to MS-Windows + Problem reported by Gisle Vanem (Bug#36488#30). + * src/util.c (xsigaction) [SA_NOCLDSTOP]: Remove; no longer needed. + (install_signal_handlers): If the first call to sigaction or + signal fails, do not exit; just skip the signal and continue, + in case the runtime does not support the signal even though the + corresponding SIG* macro is defined. + +2021-08-28 Paul Eggert + + diff: cleanup signal handling just before exit + This should fix an unlikely signal handling bug with colored + output, and should also fix a Debian FTBFS (Fails To Build From + Source) on powerpc64le-linux. See Bug#34519 and Frédéric + Bonnard’s report in: + https://bugs.debian.org/922552#19 + * bootstrap.conf (gnulib_modules): Add raise, sigprocmask. + * src/diff.c (main): Call cleanup_signal_handlers before exiting. + Don’t bother calling ‘exit’; no longer needed nowadays. + * src/util.c (sigprocmask, siginterrupt) [!SA_NOCLDSTOP]: + Define to 0 instead of empty, since the results are now used. + (sigset_t) [!SA_NOCLDSTOP]: Remove; we now rely on Gnulib. + (xsigaction) [SA_NOCLDSTOP]: New function. + (xsigaddset, xsigismember, xsignal, xsigprocmask): New functions. + (some_signals_caught): New static var. + (process_signals): Omit a conditional branch. + Don’t bother loading interrupt_signal if stop_signal_count is nonzero. + (process_signals, install_signal_handlers): + Check for failures from sigprocmask etc. + (sig, nsig): Now at top level, since multiple functions need them. + (install_signal_handlers): No need for caught_sig array; + just use caught_signals. However, set some_signals_caught. + (cleanup_signal_handlers): New function. + +2021-08-22 Paul Eggert + + diff: add integer overflow checking + * src/diff.c (option_list, main): Check for integer overflow + in some unlikely and hard-to-test cases. + + maint: refactor integer overflow checking + Rely on more-modern Gnulib capabilities instead of doing + integer overflow checking by hand, in some cases. + * lib/cmpbuf.c (buffer_lcm): + * src/io.c (slurp, find_identical_ends): + Use INT_ADD_WRAPV and INT_MULTIPLY_WRAPV rather than checking + overflow by hand. + * src/diff3.c (process_diff): + * src/dir.c (dir_read): + * src/io.c (find_identical_ends, read_files): + Use xnmalloc rather than checking overflow by hand. + (read_files): Rely on xcalloc to do overflow checking. + + diff: avoid sprintf %s + sprintf fails if the result contains more than INT_MAX bytes, + so rework the code to avoid usage of sprintf %s where the + string might be longer than that. + * bootstrap.conf (gnulib_modules): Remove xvasprintf. + * src/diff.c (specify_style): + * src/util.c (begin_output): + Rewrite to avoid sprintf %s. + * src/util.c: Do not include xvasprintf.h. + (concat): Remove, as it uses sprintf %s. All uses rewritten. + + diff: use mempcpy + * bootstrap.conf (gnulib_modules): Add mempcpy, stpcpy. + * src/ifdef.c (do_printf_spec): + * src/sdiff.c (expand_name, lf_snarf, temporary_file): + * src/util.c (message5): + Prefer mempcpy to memcpy plus manual size-updating. + Prefer stpcpy to mempcpy plus manual size-spec. + + sdiff: fix unlikely memory leak + * src/sdiff.c (temporary_file): Fix memory leak when mkstemp fails. + Don’t assume temporary file name length fits in ‘int’. + + diff3: simplify process_diff + * src/diff3.c (process_diff): Remove LAST_BLOCK arg, since callers + no longer needed it. All callers changed. This removes an + unnecessary initialization of bptr to NULL. + + maint: modernize IF_LINT for GCC 11.2.1 + * src/cmp.c (cmp): + * src/dir.c (find_dir_file_pathname): + * src/sdiff.c (edit): + Mention which GCC bug this IF_LINT works around. + * src/diff3.c (process_diff): + Always initialize to NULL, to avoid problems on mostly-theoretical + hosts where accessing uninitialized variables traps. The next + patch will have a better fix for this. + * src/ifdef.c (do_printf_spec): + No need for IF_LINT in GCC 11.2.1. + + maint: lint → GCC_LINT + ‘lint’ is for traditional lint and perhaps some other tools; + ‘GCC_LINT’ is targeted more for what we do. + Gnulib accepts either, but we might as well be more accurate. + * configure.ac (GCC_LINT): Define this instead of ‘lint’. + All uses changed. + + diff: remove printint + * src/system.h (printint): Remove. All uses removed. This type + was only for porting to pre-C89 hosts, and is no longer needed. + + diff: remove INT_MAX limit on -F/-p searches + * src/context.c (find_function): Don’t limit function-line + searches to INT_MAX bytes, removing a FIXME. + + maint: .gitignore updates + * .gitignore: Remove lib/unused-parameter.h. Add all of m4, since + no files there need to be committed; this lets us remove + m4/.gitignore and m4/gnulib-cache.m4. Add *.orig, *.patch, .Tpo, + /*.diff, lib/*/ (which lets us remove /lib/sys/), lib/ctype.h, + lib/errno.h, lib/float.h, lib/fnmatch.h, lib/getopt-cdefs.h, + lib/getopt.h, lib/limits.h, lib/sigsegv.h, lib/stdalign.h, + lib/stdarg.h, lib/stdbool.h, lib/stddef.h, lib/stdint.h, + lib/stdopen.[ch], vc-dwim-log-*. Add slashes to autom4te.cache, + build-aux. Remove redundant initial slashes from patterns that + also have internal slashes. Remove plain ABOUT-NLS, since + /ABOUT-NLS suffices. Sort using LC_ALL=C. + + maint: omit unused function if not debugging + * src/util.c (debug_script): Compile only if DEBUG. + + maint: remove prepargs + * lib/Makefile.am (noinst_HEADERS): Remove prepargs.h. + (libdiffutils_a_SOURCES): Remove prepargs.c. + * lib/prepargs.c, lib/prepargs.h: Remove. Hasn’t been + needed for many years. + * src/diff.c: Do not include prepargs.h. + + maint: zalloc → xzalloc + * src/util.c (zalloc): Remove. All uses replaced + by xzalloc, which means the same thing. + +2021-08-22 Paul Eggert + + diff3: suppress -fanalyzer alarms + * src/diff3.c: Add pragma to suppress -Wanalyzer-null-dereference + alarms. + + * src/diff.h (find_dir_file_pathname): Add malloc-related + attributes, to pacify gcc -Wsuggest-attribute=malloc. + +2021-08-22 Paul Eggert + + maint: remove January workaround for Gnulib issue + * configure.ac: Don’t add -Wno-analyzer-null-argument, since + the issue is now fixed in Gnulib. + + build: update gnulib submodule to latest + +2021-08-01 Paul Eggert + + maint: remove stray init.cfg + * init.cfg: Remove. I guess this file was a stray, since it was a + copy of tests/init.cfg when it was checked in, and it hasn’t been + maintained since. + + tests: port to valgrind 3.16.0 + GCC 11.2 + * tests/init.cfg (stderr_fileno_): Reject valgrind if it reports a + "Serious error" on a trival use of ‘diff’. Without this patch, on + RHEL 8.4 when I compile diffutils with a GCC 11.2.0 that I built + myself, ‘valgrind diff’ spits out messages like WARNING: Serious + error when reading debug info / When reading debug info from diff: + Ignoring non-Dwarf2/3/4 block in .debug_info’ and this causes the + strip-trailing-cr test to fail. I guess valgrind complains + because the valgrind version 3.16.0 that came with RHEL 8.4 cannot + grok the debug entries generated by GCC 11.2.0. + 2021-08-01 Jim Meyering + maint: post-release administrivia + * NEWS: Add header line for next release. + * .prev-version: Record previous version. + * cfg.mk (old_NEWS_hash): Auto-update. + version 3.8 * NEWS: Record release date. diff --git a/ChangeLog-2008 b/ChangeLog-2008 index bde0ffe..8ae2a44 100644 --- a/ChangeLog-2008 +++ b/ChangeLog-2008 @@ -4265,7 +4265,7 @@ Thu Nov 3 16:30:24 1988 Randall Smith (randy at gluteus.ai.mit.edu) ----- - Copyright (C) 1988-1994, 1997-2002, 2004, 2006, 2009-2013, 2015-2021 + Copyright (C) 1988-1994, 1997-2002, 2004, 2006, 2009-2013, 2015-2023 Free Software Foundation, Inc. Copying and distribution of this file, with or without diff --git a/GNUmakefile b/GNUmakefile index 0c99d58..07b331f 100644 --- a/GNUmakefile +++ b/GNUmakefile @@ -5,7 +5,7 @@ # It is necessary if you want to build targets usually of interest # only to the maintainer. -# Copyright (C) 2001, 2003, 2006-2021 Free Software Foundation, Inc. +# Copyright (C) 2001, 2003, 2006-2023 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -26,7 +26,7 @@ _gl-Makefile := $(wildcard [M]akefile) ifneq ($(_gl-Makefile),) # Make tar archive easier to reproduce. -export TAR_OPTIONS = --owner=0 --group=0 --numeric-owner +export TAR_OPTIONS = --owner=0 --group=0 --numeric-owner --sort=name # Allow the user to add to this in the Makefile. ALL_RECURSIVE_TARGETS = diff --git a/INSTALL b/INSTALL index e82fd21..6e3904a 100644 --- a/INSTALL +++ b/INSTALL @@ -1,8 +1,8 @@ Installation Instructions ************************* - Copyright (C) 1994-1996, 1999-2002, 2004-2017, 2020-2021 Free -Software Foundation, Inc. + Copyright © 1994–1996, 1999–2002, 2004–2017, 2020–2023 Free Software +Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright @@ -12,94 +12,94 @@ without warranty of any kind. Basic Installation ================== - Briefly, the shell command './configure && make && make install' + Briefly, the shell command ‘./configure && make && make install’ should configure, build, and install this package. The following -more-detailed instructions are generic; see the 'README' file for +more-detailed instructions are generic; see the ‘README’ file for instructions specific to this package. Some packages provide this -'INSTALL' file but do not implement all of the features documented +‘INSTALL’ file but do not implement all of the features documented below. The lack of an optional feature in a given package is not necessarily a bug. More recommendations for GNU packages can be found in *note Makefile Conventions: (standards)Makefile Conventions. - The 'configure' shell script attempts to guess correct values for + The ‘configure’ shell script attempts to guess correct values for various system-dependent variables used during compilation. It uses -those values to create a 'Makefile' in each directory of the package. -It may also create one or more '.h' files containing system-dependent -definitions. Finally, it creates a shell script 'config.status' that +those values to create a ‘Makefile’ in each directory of the package. +It may also create one or more ‘.h’ files containing system-dependent +definitions. Finally, it creates a shell script ‘config.status’ that you can run in the future to recreate the current configuration, and a -file 'config.log' containing compiler output (useful mainly for -debugging 'configure'). +file ‘config.log’ containing compiler output (useful mainly for +debugging ‘configure’). - It can also use an optional file (typically called 'config.cache' and -enabled with '--cache-file=config.cache' or simply '-C') that saves the + It can also use an optional file (typically called ‘config.cache’ and +enabled with ‘--cache-file=config.cache’ or simply ‘-C’) that saves the results of its tests to speed up reconfiguring. Caching is disabled by default to prevent problems with accidental use of stale cache files. If you need to do unusual things to compile the package, please try -to figure out how 'configure' could check whether to do them, and mail -diffs or instructions to the address given in the 'README' so they can +to figure out how ‘configure’ could check whether to do them, and mail +diffs or instructions to the address given in the ‘README’ so they can be considered for the next release. If you are using the cache, and at -some point 'config.cache' contains results you don't want to keep, you +some point ‘config.cache’ contains results you don’t want to keep, you may remove or edit it. - The file 'configure.ac' (or 'configure.in') is used to create -'configure' by a program called 'autoconf'. You need 'configure.ac' if -you want to change it or regenerate 'configure' using a newer version of -'autoconf'. + The file ‘configure.ac’ (or ‘configure.in’) is used to create +‘configure’ by a program called ‘autoconf’. You need ‘configure.ac’ if +you want to change it or regenerate ‘configure’ using a newer version of +‘autoconf’. The simplest way to compile this package is: - 1. 'cd' to the directory containing the package's source code and type - './configure' to configure the package for your system. + 1. ‘cd’ to the directory containing the package’s source code and type + ‘./configure’ to configure the package for your system. - Running 'configure' might take a while. While running, it prints + Running ‘configure’ might take a while. While running, it prints some messages telling which features it is checking for. - 2. Type 'make' to compile the package. + 2. Type ‘make’ to compile the package. - 3. Optionally, type 'make check' to run any self-tests that come with + 3. Optionally, type ‘make check’ to run any self-tests that come with the package, generally using the just-built uninstalled binaries. - 4. Type 'make install' to install the programs and any data files and + 4. Type ‘make install’ to install the programs and any data files and documentation. When installing into a prefix owned by root, it is recommended that the package be configured and built as a regular - user, and only the 'make install' phase executed with root + user, and only the ‘make install’ phase executed with root privileges. - 5. Optionally, type 'make installcheck' to repeat any self-tests, but + 5. Optionally, type ‘make installcheck’ to repeat any self-tests, but this time using the binaries in their final installed location. This target does not install anything. Running this target as a - regular user, particularly if the prior 'make install' required + regular user, particularly if the prior ‘make install’ required root privileges, verifies that the installation completed correctly. 6. You can remove the program binaries and object files from the - source code directory by typing 'make clean'. To also remove the - files that 'configure' created (so you can compile the package for - a different kind of computer), type 'make distclean'. There is - also a 'make maintainer-clean' target, but that is intended mainly - for the package's developers. If you use it, you may have to get + source code directory by typing ‘make clean’. To also remove the + files that ‘configure’ created (so you can compile the package for + a different kind of computer), type ‘make distclean’. There is + also a ‘make maintainer-clean’ target, but that is intended mainly + for the package’s developers. If you use it, you may have to get all sorts of other programs in order to regenerate files that came with the distribution. - 7. Often, you can also type 'make uninstall' to remove the installed + 7. Often, you can also type ‘make uninstall’ to remove the installed files again. In practice, not all packages have tested that uninstallation works correctly, even though it is required by the GNU Coding Standards. - 8. Some packages, particularly those that use Automake, provide 'make - distcheck', which can by used by developers to test that all other - targets like 'make install' and 'make uninstall' work correctly. + 8. Some packages, particularly those that use Automake, provide ‘make + distcheck’, which can by used by developers to test that all other + targets like ‘make install’ and ‘make uninstall’ work correctly. This target is generally not run by end users. Compilers and Options ===================== Some systems require unusual options for compilation or linking that -the 'configure' script does not know about. Run './configure --help' +the ‘configure’ script does not know about. Run ‘./configure --help’ for details on some of the pertinent environment variables. - You can give 'configure' initial values for configuration parameters + You can give ‘configure’ initial values for configuration parameters by setting variables in the command line or in the environment. Here is an example: @@ -112,21 +112,21 @@ Compiling For Multiple Architectures You can compile the package for more than one kind of computer at the same time, by placing the object files for each architecture in their -own directory. To do this, you can use GNU 'make'. 'cd' to the +own directory. To do this, you can use GNU ‘make’. ‘cd’ to the directory where you want the object files and executables to go and run -the 'configure' script. 'configure' automatically checks for the source -code in the directory that 'configure' is in and in '..'. This is known -as a "VPATH" build. +the ‘configure’ script. ‘configure’ automatically checks for the source +code in the directory that ‘configure’ is in and in ‘..’. This is known +as a “VPATH” build. - With a non-GNU 'make', it is safer to compile the package for one + With a non-GNU ‘make’, it is safer to compile the package for one architecture at a time in the source code directory. After you have -installed the package for one architecture, use 'make distclean' before +installed the package for one architecture, use ‘make distclean’ before reconfiguring for another architecture. On MacOS X 10.5 and later systems, you can create libraries and -executables that work on multiple system types--known as "fat" or -"universal" binaries--by specifying multiple '-arch' options to the -compiler but only a single '-arch' option to the preprocessor. Like +executables that work on multiple system types—known as “fat” or +“universal” binaries—by specifying multiple ‘-arch’ options to the +compiler but only a single ‘-arch’ option to the preprocessor. Like this: ./configure CC="gcc -arch i386 -arch x86_64 -arch ppc -arch ppc64" \ @@ -135,43 +135,43 @@ this: This is not guaranteed to produce working output in all cases, you may have to build one architecture at a time and combine the results -using the 'lipo' tool if you have problems. +using the ‘lipo’ tool if you have problems. Installation Names ================== - By default, 'make install' installs the package's commands under -'/usr/local/bin', include files under '/usr/local/include', etc. You -can specify an installation prefix other than '/usr/local' by giving -'configure' the option '--prefix=PREFIX', where PREFIX must be an + By default, ‘make install’ installs the package’s commands under +‘/usr/local/bin’, include files under ‘/usr/local/include’, etc. You +can specify an installation prefix other than ‘/usr/local’ by giving +‘configure’ the option ‘--prefix=PREFIX’, where PREFIX must be an absolute file name. You can specify separate installation prefixes for architecture-specific files and architecture-independent files. If you -pass the option '--exec-prefix=PREFIX' to 'configure', the package uses +pass the option ‘--exec-prefix=PREFIX’ to ‘configure’, the package uses PREFIX as the prefix for installing programs and libraries. Documentation and other data files still use the regular prefix. In addition, if you use an unusual directory layout you can give -options like '--bindir=DIR' to specify different values for particular -kinds of files. Run 'configure --help' for a list of the directories +options like ‘--bindir=DIR’ to specify different values for particular +kinds of files. Run ‘configure --help’ for a list of the directories you can set and what kinds of files go in them. In general, the default -for these options is expressed in terms of '${prefix}', so that -specifying just '--prefix' will affect all of the other directory +for these options is expressed in terms of ‘${prefix}’, so that +specifying just ‘--prefix’ will affect all of the other directory specifications that were not explicitly provided. The most portable way to affect installation locations is to pass the -correct locations to 'configure'; however, many packages provide one or +correct locations to ‘configure’; however, many packages provide one or both of the following shortcuts of passing variable assignments to the -'make install' command line to change installation locations without +‘make install’ command line to change installation locations without having to reconfigure or recompile. The first method involves providing an override variable for each -affected directory. For example, 'make install -prefix=/alternate/directory' will choose an alternate location for all +affected directory. For example, ‘make install +prefix=/alternate/directory’ will choose an alternate location for all directory configuration variables that were expressed in terms of -'${prefix}'. Any directories that were specified during 'configure', -but not in terms of '${prefix}', must each be overridden at install time +‘${prefix}’. Any directories that were specified during ‘configure’, +but not in terms of ‘${prefix}’, must each be overridden at install time for the entire installation to be relocated. The approach of makefile variable overrides for each directory variable is required by the GNU Coding Standards, and ideally causes no recompilation. However, some @@ -179,40 +179,40 @@ platforms have known limitations with the semantics of shared libraries that end up requiring recompilation when using this method, particularly noticeable in packages that use GNU Libtool. - The second method involves providing the 'DESTDIR' variable. For -example, 'make install DESTDIR=/alternate/directory' will prepend -'/alternate/directory' before all installation names. The approach of -'DESTDIR' overrides is not required by the GNU Coding Standards, and + The second method involves providing the ‘DESTDIR’ variable. For +example, ‘make install DESTDIR=/alternate/directory’ will prepend +‘/alternate/directory’ before all installation names. The approach of +‘DESTDIR’ overrides is not required by the GNU Coding Standards, and does not work on platforms that have drive letters. On the other hand, it does better at avoiding recompilation issues, and works well even -when some directory options were not specified in terms of '${prefix}' -at 'configure' time. +when some directory options were not specified in terms of ‘${prefix}’ +at ‘configure’ time. Optional Features ================= If the package supports it, you can cause programs to be installed -with an extra prefix or suffix on their names by giving 'configure' the -option '--program-prefix=PREFIX' or '--program-suffix=SUFFIX'. - - Some packages pay attention to '--enable-FEATURE' options to -'configure', where FEATURE indicates an optional part of the package. -They may also pay attention to '--with-PACKAGE' options, where PACKAGE -is something like 'gnu-as' or 'x' (for the X Window System). The -'README' should mention any '--enable-' and '--with-' options that the +with an extra prefix or suffix on their names by giving ‘configure’ the +option ‘--program-prefix=PREFIX’ or ‘--program-suffix=SUFFIX’. + + Some packages pay attention to ‘--enable-FEATURE’ options to +‘configure’, where FEATURE indicates an optional part of the package. +They may also pay attention to ‘--with-PACKAGE’ options, where PACKAGE +is something like ‘gnu-as’ or ‘x’ (for the X Window System). The +‘README’ should mention any ‘--enable-’ and ‘--with-’ options that the package recognizes. - For packages that use the X Window System, 'configure' can usually -find the X include and library files automatically, but if it doesn't, -you can use the 'configure' options '--x-includes=DIR' and -'--x-libraries=DIR' to specify their locations. + For packages that use the X Window System, ‘configure’ can usually +find the X include and library files automatically, but if it doesn’t, +you can use the ‘configure’ options ‘--x-includes=DIR’ and +‘--x-libraries=DIR’ to specify their locations. Some packages offer the ability to configure how verbose the -execution of 'make' will be. For these packages, running './configure ---enable-silent-rules' sets the default to minimal output, which can be -overridden with 'make V=1'; while running './configure ---disable-silent-rules' sets the default to verbose, which can be -overridden with 'make V=0'. +execution of ‘make’ will be. For these packages, running ‘./configure +--enable-silent-rules’ sets the default to minimal output, which can be +overridden with ‘make V=1’; while running ‘./configure +--disable-silent-rules’ sets the default to verbose, which can be +overridden with ‘make V=0’. Particular systems ================== @@ -223,43 +223,43 @@ order to use an ANSI C compiler: ./configure CC="cc -Ae -D_XOPEN_SOURCE=500" -and if that doesn't work, install pre-built binaries of GCC for HP-UX. +and if that doesn’t work, install pre-built binaries of GCC for HP-UX. - HP-UX 'make' updates targets which have the same timestamps as their + HP-UX ‘make’ updates targets which have the same timestamps as their prerequisites, which makes it generally unusable when shipped generated -files such as 'configure' are involved. Use GNU 'make' instead. +files such as ‘configure’ are involved. Use GNU ‘make’ instead. On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot -parse its '' header file. The option '-nodtk' can be used as a +parse its ‘’ header file. The option ‘-nodtk’ can be used as a workaround. If GNU CC is not installed, it is therefore recommended to try ./configure CC="cc" -and if that doesn't work, try +and if that doesn’t work, try ./configure CC="cc -nodtk" - On Solaris, don't put '/usr/ucb' early in your 'PATH'. This + On Solaris, don’t put ‘/usr/ucb’ early in your ‘PATH’. This directory contains several dysfunctional programs; working variants of -these programs are available in '/usr/bin'. So, if you need '/usr/ucb' -in your 'PATH', put it _after_ '/usr/bin'. +these programs are available in ‘/usr/bin’. So, if you need ‘/usr/ucb’ +in your ‘PATH’, put it _after_ ‘/usr/bin’. - On Haiku, software installed for all users goes in '/boot/common', -not '/usr/local'. It is recommended to use the following options: + On Haiku, software installed for all users goes in ‘/boot/common’, +not ‘/usr/local’. It is recommended to use the following options: ./configure --prefix=/boot/common Specifying the System Type ========================== - There may be some features 'configure' cannot figure out + There may be some features ‘configure’ cannot figure out automatically, but needs to determine by the type of machine the package will run on. Usually, assuming the package is built to be run on the -_same_ architectures, 'configure' can figure that out, but if it prints +_same_ architectures, ‘configure’ can figure that out, but if it prints a message saying it cannot guess the machine type, give it the -'--build=TYPE' option. TYPE can either be a short name for the system -type, such as 'sun4', or a canonical name which has the form: +‘--build=TYPE’ option. TYPE can either be a short name for the system +type, such as ‘sun4’, or a canonical name which has the form: CPU-COMPANY-SYSTEM @@ -268,101 +268,101 @@ where SYSTEM can have one of these forms: OS KERNEL-OS - See the file 'config.sub' for the possible values of each field. If -'config.sub' isn't included in this package, then this package doesn't + See the file ‘config.sub’ for the possible values of each field. If +‘config.sub’ isn’t included in this package, then this package doesn’t need to know the machine type. If you are _building_ compiler tools for cross-compiling, you should -use the option '--target=TYPE' to select the type of system they will +use the option ‘--target=TYPE’ to select the type of system they will produce code for. If you want to _use_ a cross compiler, that generates code for a platform different from the build platform, you should specify the -"host" platform (i.e., that on which the generated programs will -eventually be run) with '--host=TYPE'. +“host” platform (i.e., that on which the generated programs will +eventually be run) with ‘--host=TYPE’. Sharing Defaults ================ - If you want to set default values for 'configure' scripts to share, -you can create a site shell script called 'config.site' that gives -default values for variables like 'CC', 'cache_file', and 'prefix'. -'configure' looks for 'PREFIX/share/config.site' if it exists, then -'PREFIX/etc/config.site' if it exists. Or, you can set the -'CONFIG_SITE' environment variable to the location of the site script. -A warning: not all 'configure' scripts look for a site script. + If you want to set default values for ‘configure’ scripts to share, +you can create a site shell script called ‘config.site’ that gives +default values for variables like ‘CC’, ‘cache_file’, and ‘prefix’. +‘configure’ looks for ‘PREFIX/share/config.site’ if it exists, then +‘PREFIX/etc/config.site’ if it exists. Or, you can set the +‘CONFIG_SITE’ environment variable to the location of the site script. +A warning: not all ‘configure’ scripts look for a site script. Defining Variables ================== Variables not defined in a site shell script can be set in the -environment passed to 'configure'. However, some packages may run +environment passed to ‘configure’. However, some packages may run configure again during the build, and the customized values of these variables may be lost. In order to avoid this problem, you should set -them in the 'configure' command line, using 'VAR=value'. For example: +them in the ‘configure’ command line, using ‘VAR=value’. For example: ./configure CC=/usr/local2/bin/gcc -causes the specified 'gcc' to be used as the C compiler (unless it is +causes the specified ‘gcc’ to be used as the C compiler (unless it is overridden in the site shell script). -Unfortunately, this technique does not work for 'CONFIG_SHELL' due to an +Unfortunately, this technique does not work for ‘CONFIG_SHELL’ due to an Autoconf limitation. Until the limitation is lifted, you can use this workaround: CONFIG_SHELL=/bin/bash ./configure CONFIG_SHELL=/bin/bash -'configure' Invocation +‘configure’ Invocation ====================== - 'configure' recognizes the following options to control how it + ‘configure’ recognizes the following options to control how it operates. -'--help' -'-h' - Print a summary of all of the options to 'configure', and exit. +‘--help’ +‘-h’ + Print a summary of all of the options to ‘configure’, and exit. -'--help=short' -'--help=recursive' - Print a summary of the options unique to this package's - 'configure', and exit. The 'short' variant lists options used only - in the top level, while the 'recursive' variant lists options also +‘--help=short’ +‘--help=recursive’ + Print a summary of the options unique to this package’s + ‘configure’, and exit. The ‘short’ variant lists options used only + in the top level, while the ‘recursive’ variant lists options also present in any nested packages. -'--version' -'-V' - Print the version of Autoconf used to generate the 'configure' +‘--version’ +‘-V’ + Print the version of Autoconf used to generate the ‘configure’ script, and exit. -'--cache-file=FILE' +‘--cache-file=FILE’ Enable the cache: use and save the results of the tests in FILE, - traditionally 'config.cache'. FILE defaults to '/dev/null' to + traditionally ‘config.cache’. FILE defaults to ‘/dev/null’ to disable caching. -'--config-cache' -'-C' - Alias for '--cache-file=config.cache'. +‘--config-cache’ +‘-C’ + Alias for ‘--cache-file=config.cache’. -'--quiet' -'--silent' -'-q' +‘--quiet’ +‘--silent’ +‘-q’ Do not print messages saying which checks are being made. To - suppress all normal output, redirect it to '/dev/null' (any error + suppress all normal output, redirect it to ‘/dev/null’ (any error messages will still be shown). -'--srcdir=DIR' - Look for the package's source code in directory DIR. Usually - 'configure' can determine that directory automatically. +‘--srcdir=DIR’ + Look for the package’s source code in directory DIR. Usually + ‘configure’ can determine that directory automatically. -'--prefix=DIR' +‘--prefix=DIR’ Use DIR as the installation prefix. *note Installation Names:: for more details, including other options available for fine-tuning the installation locations. -'--no-create' -'-n' +‘--no-create’ +‘-n’ Run the configure checks, but stop before creating any output files. -'configure' also accepts some other, not widely useful, options. Run -'configure --help' for more details. +‘configure’ also accepts some other, not widely useful, options. Run +‘configure --help’ for more details. diff --git a/Makefile.am b/Makefile.am index 8e96ebe..c47bc83 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,6 +1,6 @@ # Main Automakefile for GNU diffutils. -# Copyright (C) 2001-2002, 2004, 2006, 2009-2013, 2015-2021 Free Software +# Copyright (C) 2001-2002, 2004, 2006, 2009-2013, 2015-2023 Free Software # Foundation, Inc. # This program is free software: you can redistribute it and/or modify diff --git a/Makefile.in b/Makefile.in index 1a08785..bfb885b 100644 --- a/Makefile.in +++ b/Makefile.in @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.16d from Makefile.am. +# Makefile.in generated by automake 1.16i from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2021 Free Software Foundation, Inc. +# Copyright (C) 1994-2023 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -16,7 +16,7 @@ # Main Automakefile for GNU diffutils. -# Copyright (C) 2001-2002, 2004, 2006, 2009-2013, 2015-2021 Free Software +# Copyright (C) 2001-2002, 2004, 2006, 2009-2013, 2015-2023 Free Software # Foundation, Inc. # This program is free software: you can redistribute it and/or modify @@ -87,6 +87,8 @@ am__make_running_with_option = \ test $$has_opt = yes am__make_dryrun = (target_option=n; $(am__make_running_with_option)) am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +am__rm_f = rm -f $(am__rm_f_notfound) +am__rm_rf = rm -rf $(am__rm_f_notfound) pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ @@ -111,19 +113,22 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/__inline.m4 \ $(top_srcdir)/m4/absolute-header.m4 $(top_srcdir)/m4/alloca.m4 \ $(top_srcdir)/m4/arpa_inet_h.m4 \ - $(top_srcdir)/m4/asm-underscore.m4 $(top_srcdir)/m4/atoll.m4 \ + $(top_srcdir)/m4/asm-underscore.m4 \ + $(top_srcdir)/m4/assert_h.m4 $(top_srcdir)/m4/atoll.m4 \ $(top_srcdir)/m4/btowc.m4 $(top_srcdir)/m4/builtin-expect.m4 \ - $(top_srcdir)/m4/c-stack.m4 $(top_srcdir)/m4/calloc.m4 \ - $(top_srcdir)/m4/clock_time.m4 $(top_srcdir)/m4/close.m4 \ - $(top_srcdir)/m4/codeset.m4 $(top_srcdir)/m4/config-h.m4 \ - $(top_srcdir)/m4/ctype_h.m4 \ + $(top_srcdir)/m4/c-bool.m4 $(top_srcdir)/m4/c-stack.m4 \ + $(top_srcdir)/m4/calloc.m4 $(top_srcdir)/m4/clock_time.m4 \ + $(top_srcdir)/m4/close.m4 $(top_srcdir)/m4/codeset.m4 \ + $(top_srcdir)/m4/config-h.m4 $(top_srcdir)/m4/ctype_h.m4 \ $(top_srcdir)/m4/double-slash-root.m4 $(top_srcdir)/m4/dup2.m4 \ $(top_srcdir)/m4/eealloc.m4 $(top_srcdir)/m4/environ.m4 \ $(top_srcdir)/m4/errno_h.m4 $(top_srcdir)/m4/error.m4 \ - $(top_srcdir)/m4/exponentd.m4 $(top_srcdir)/m4/extensions.m4 \ - $(top_srcdir)/m4/extern-inline.m4 $(top_srcdir)/m4/fcntl-o.m4 \ - $(top_srcdir)/m4/fcntl.m4 $(top_srcdir)/m4/fcntl_h.m4 \ - $(top_srcdir)/m4/fdopen.m4 $(top_srcdir)/m4/filenamecat.m4 \ + $(top_srcdir)/m4/error_h.m4 $(top_srcdir)/m4/exponentd.m4 \ + $(top_srcdir)/m4/extensions.m4 \ + $(top_srcdir)/m4/extern-inline.m4 $(top_srcdir)/m4/fclose.m4 \ + $(top_srcdir)/m4/fcntl-o.m4 $(top_srcdir)/m4/fcntl.m4 \ + $(top_srcdir)/m4/fcntl_h.m4 $(top_srcdir)/m4/fdopen.m4 \ + $(top_srcdir)/m4/fflush.m4 $(top_srcdir)/m4/filenamecat.m4 \ $(top_srcdir)/m4/flexmember.m4 $(top_srcdir)/m4/float_h.m4 \ $(top_srcdir)/m4/fnmatch.m4 $(top_srcdir)/m4/fnmatch_h.m4 \ $(top_srcdir)/m4/fopen.m4 $(top_srcdir)/m4/fpieee.m4 \ @@ -139,15 +144,16 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/host-cpu-c-abi.m4 $(top_srcdir)/m4/iconv.m4 \ $(top_srcdir)/m4/iconv_h.m4 $(top_srcdir)/m4/iconv_open.m4 \ $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inet_pton.m4 \ - $(top_srcdir)/m4/inline.m4 $(top_srcdir)/m4/intlmacosx.m4 \ - $(top_srcdir)/m4/intmax_t.m4 $(top_srcdir)/m4/inttostr.m4 \ - $(top_srcdir)/m4/inttypes.m4 $(top_srcdir)/m4/inttypes_h.m4 \ - $(top_srcdir)/m4/ioctl.m4 $(top_srcdir)/m4/isblank.m4 \ - $(top_srcdir)/m4/iswblank.m4 $(top_srcdir)/m4/iswdigit.m4 \ - $(top_srcdir)/m4/iswxdigit.m4 $(top_srcdir)/m4/langinfo_h.m4 \ - $(top_srcdir)/m4/largefile.m4 $(top_srcdir)/m4/lib-ld.m4 \ - $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ - $(top_srcdir)/m4/libsigsegv.m4 \ + $(top_srcdir)/m4/inline.m4 \ + $(top_srcdir)/m4/intl-thread-locale.m4 \ + $(top_srcdir)/m4/intlmacosx.m4 $(top_srcdir)/m4/intmax_t.m4 \ + $(top_srcdir)/m4/inttostr.m4 $(top_srcdir)/m4/inttypes.m4 \ + $(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/ioctl.m4 \ + $(top_srcdir)/m4/isblank.m4 $(top_srcdir)/m4/iswblank.m4 \ + $(top_srcdir)/m4/iswdigit.m4 $(top_srcdir)/m4/iswxdigit.m4 \ + $(top_srcdir)/m4/langinfo_h.m4 $(top_srcdir)/m4/largefile.m4 \ + $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ + $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libsigsegv.m4 \ $(top_srcdir)/m4/libunistring-base.m4 \ $(top_srcdir)/m4/limits-h.m4 $(top_srcdir)/m4/localcharset.m4 \ $(top_srcdir)/m4/locale-fr.m4 $(top_srcdir)/m4/locale-ja.m4 \ @@ -169,11 +175,13 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/netinet_in_h.m4 \ $(top_srcdir)/m4/nl_langinfo.m4 $(top_srcdir)/m4/nls.m4 \ $(top_srcdir)/m4/nocrash.m4 $(top_srcdir)/m4/nstrftime.m4 \ - $(top_srcdir)/m4/off_t.m4 $(top_srcdir)/m4/open-cloexec.m4 \ + $(top_srcdir)/m4/nullptr.m4 $(top_srcdir)/m4/off_t.m4 \ + $(top_srcdir)/m4/open-cloexec.m4 \ $(top_srcdir)/m4/open-slash.m4 $(top_srcdir)/m4/open.m4 \ - $(top_srcdir)/m4/pathmax.m4 $(top_srcdir)/m4/perror.m4 \ - $(top_srcdir)/m4/pipe.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/printf.m4 $(top_srcdir)/m4/progtest.m4 \ + $(top_srcdir)/m4/pathmax.m4 $(top_srcdir)/m4/perl.m4 \ + $(top_srcdir)/m4/perror.m4 $(top_srcdir)/m4/pipe.m4 \ + $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/printf.m4 \ + $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/pselect.m4 \ $(top_srcdir)/m4/pthread-thread.m4 \ $(top_srcdir)/m4/pthread_h.m4 \ $(top_srcdir)/m4/pthread_rwlock_rdlock.m4 \ @@ -184,9 +192,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/reallocarray.m4 $(top_srcdir)/m4/regex.m4 \ $(top_srcdir)/m4/sched_h.m4 $(top_srcdir)/m4/select.m4 \ $(top_srcdir)/m4/setenv.m4 $(top_srcdir)/m4/setlocale_null.m4 \ - $(top_srcdir)/m4/sigaction.m4 $(top_srcdir)/m4/sigaltstack.m4 \ - $(top_srcdir)/m4/signal_h.m4 \ - $(top_srcdir)/m4/signalblocking.m4 \ + $(top_srcdir)/m4/sigaltstack.m4 $(top_srcdir)/m4/signal_h.m4 \ + $(top_srcdir)/m4/signalblocking.m4 $(top_srcdir)/m4/sigsegv.m4 \ $(top_srcdir)/m4/size_max.m4 $(top_srcdir)/m4/sleep.m4 \ $(top_srcdir)/m4/snprintf.m4 $(top_srcdir)/m4/socketlib.m4 \ $(top_srcdir)/m4/sockets.m4 $(top_srcdir)/m4/socklen.m4 \ @@ -194,9 +201,9 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/stack-direction.m4 \ $(top_srcdir)/m4/stat-time.m4 $(top_srcdir)/m4/stat.m4 \ $(top_srcdir)/m4/stdalign.m4 $(top_srcdir)/m4/stdarg.m4 \ - $(top_srcdir)/m4/stdbool.m4 $(top_srcdir)/m4/stddef_h.m4 \ - $(top_srcdir)/m4/stdint.m4 $(top_srcdir)/m4/stdint_h.m4 \ - $(top_srcdir)/m4/stdio_h.m4 $(top_srcdir)/m4/stdlib_h.m4 \ + $(top_srcdir)/m4/stddef_h.m4 $(top_srcdir)/m4/stdint.m4 \ + $(top_srcdir)/m4/stdint_h.m4 $(top_srcdir)/m4/stdio_h.m4 \ + $(top_srcdir)/m4/stdlib_h.m4 $(top_srcdir)/m4/stpcpy.m4 \ $(top_srcdir)/m4/strcase.m4 $(top_srcdir)/m4/strerror.m4 \ $(top_srcdir)/m4/strerror_r.m4 $(top_srcdir)/m4/string_h.m4 \ $(top_srcdir)/m4/strings_h.m4 $(top_srcdir)/m4/strnlen.m4 \ @@ -210,12 +217,12 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/sys_types_h.m4 $(top_srcdir)/m4/sys_uio_h.m4 \ $(top_srcdir)/m4/sys_wait_h.m4 $(top_srcdir)/m4/tempname.m4 \ $(top_srcdir)/m4/thread.m4 $(top_srcdir)/m4/threadlib.m4 \ - $(top_srcdir)/m4/time_h.m4 $(top_srcdir)/m4/time_r.m4 \ - $(top_srcdir)/m4/time_rz.m4 $(top_srcdir)/m4/timegm.m4 \ - $(top_srcdir)/m4/timespec.m4 $(top_srcdir)/m4/tm_gmtoff.m4 \ - $(top_srcdir)/m4/tzset.m4 $(top_srcdir)/m4/unistd_h.m4 \ - $(top_srcdir)/m4/unlocked-io.m4 $(top_srcdir)/m4/vasnprintf.m4 \ - $(top_srcdir)/m4/vasprintf.m4 $(top_srcdir)/m4/version-etc.m4 \ + $(top_srcdir)/m4/time.m4 $(top_srcdir)/m4/time_h.m4 \ + $(top_srcdir)/m4/time_r.m4 $(top_srcdir)/m4/time_rz.m4 \ + $(top_srcdir)/m4/timegm.m4 $(top_srcdir)/m4/timespec.m4 \ + $(top_srcdir)/m4/tm_gmtoff.m4 $(top_srcdir)/m4/tzset.m4 \ + $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/unlocked-io.m4 \ + $(top_srcdir)/m4/vasnprintf.m4 $(top_srcdir)/m4/version-etc.m4 \ $(top_srcdir)/m4/visibility.m4 $(top_srcdir)/m4/warn-on-use.m4 \ $(top_srcdir)/m4/warnings.m4 $(top_srcdir)/m4/wchar_h.m4 \ $(top_srcdir)/m4/wchar_t.m4 $(top_srcdir)/m4/wcrtomb.m4 \ @@ -224,7 +231,6 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/wint_t.m4 $(top_srcdir)/m4/wmemchr.m4 \ $(top_srcdir)/m4/wmempcpy.m4 $(top_srcdir)/m4/xalloc.m4 \ $(top_srcdir)/m4/xsize.m4 $(top_srcdir)/m4/xstrtol.m4 \ - $(top_srcdir)/m4/xvasprintf.m4 $(top_srcdir)/m4/year2038.m4 \ $(top_srcdir)/m4/zzgnulib.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) @@ -344,7 +350,9 @@ AM_DISTCHECK_DVI_TARGET = dvi distuninstallcheck_listfiles = find . -type f -print am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \ | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$' -distcleancheck_listfiles = find . -type f -print +distcleancheck_listfiles = \ + find . \( -type f -a \! \ + \( -name .nfs* -o -name .smb* -o -name .__afs* \) \) -print ACLOCAL = @ACLOCAL@ ALLOCA = @ALLOCA@ ALLOCA_H = @ALLOCA_H@ @@ -353,6 +361,7 @@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APPLE_UNIVERSAL_BUILD = @APPLE_UNIVERSAL_BUILD@ AR = @AR@ ARFLAGS = @ARFLAGS@ +ASSERT_H = @ASSERT_H@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ @@ -366,6 +375,7 @@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CFLAG_VISIBILITY = @CFLAG_VISIBILITY@ +CLOCK_TIME_LIB = @CLOCK_TIME_LIB@ CONFIG_INCLUDE = @CONFIG_INCLUDE@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ @@ -377,7 +387,6 @@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ -EGREP = @EGREP@ EMULTIHOP_HIDDEN = @EMULTIHOP_HIDDEN@ EMULTIHOP_VALUE = @EMULTIHOP_VALUE@ ENOLINK_HIDDEN = @ENOLINK_HIDDEN@ @@ -385,14 +394,17 @@ ENOLINK_VALUE = @ENOLINK_VALUE@ EOVERFLOW_HIDDEN = @EOVERFLOW_HIDDEN@ EOVERFLOW_VALUE = @EOVERFLOW_VALUE@ ERRNO_H = @ERRNO_H@ +ERROR_H = @ERROR_H@ ETAGS = @ETAGS@ EXEEXT = @EXEEXT@ FLOAT_H = @FLOAT_H@ FNMATCH_H = @FNMATCH_H@ GETOPT_CDEFS_H = @GETOPT_CDEFS_H@ GETOPT_H = @GETOPT_H@ +GETRANDOM_LIB = @GETRANDOM_LIB@ GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ GL_CFLAG_ALLOW_WARNINGS = @GL_CFLAG_ALLOW_WARNINGS@ +GL_CFLAG_GNULIB_WARNINGS = @GL_CFLAG_GNULIB_WARNINGS@ GL_CXXFLAG_ALLOW_WARNINGS = @GL_CXXFLAG_ALLOW_WARNINGS@ GL_GNULIB_ACCEPT = @GL_GNULIB_ACCEPT@ GL_GNULIB_ACCEPT4 = @GL_GNULIB_ACCEPT4@ @@ -401,9 +413,11 @@ GL_GNULIB_ALIGNED_ALLOC = @GL_GNULIB_ALIGNED_ALLOC@ GL_GNULIB_ATOLL = @GL_GNULIB_ATOLL@ GL_GNULIB_BIND = @GL_GNULIB_BIND@ GL_GNULIB_BTOWC = @GL_GNULIB_BTOWC@ +GL_GNULIB_CALLOC_GNU = @GL_GNULIB_CALLOC_GNU@ GL_GNULIB_CALLOC_POSIX = @GL_GNULIB_CALLOC_POSIX@ GL_GNULIB_CANONICALIZE_FILE_NAME = @GL_GNULIB_CANONICALIZE_FILE_NAME@ GL_GNULIB_CHDIR = @GL_GNULIB_CHDIR@ +GL_GNULIB_CHMOD = @GL_GNULIB_CHMOD@ GL_GNULIB_CHOWN = @GL_GNULIB_CHOWN@ GL_GNULIB_CLOSE = @GL_GNULIB_CLOSE@ GL_GNULIB_CONNECT = @GL_GNULIB_CONNECT@ @@ -441,6 +455,7 @@ GL_GNULIB_FGETC = @GL_GNULIB_FGETC@ GL_GNULIB_FGETS = @GL_GNULIB_FGETS@ GL_GNULIB_FNMATCH = @GL_GNULIB_FNMATCH@ GL_GNULIB_FOPEN = @GL_GNULIB_FOPEN@ +GL_GNULIB_FOPEN_GNU = @GL_GNULIB_FOPEN_GNU@ GL_GNULIB_FPRINTF = @GL_GNULIB_FPRINTF@ GL_GNULIB_FPRINTF_POSIX = @GL_GNULIB_FPRINTF_POSIX@ GL_GNULIB_FPURGE = @GL_GNULIB_FPURGE@ @@ -476,7 +491,9 @@ GL_GNULIB_GETLOGIN_R = @GL_GNULIB_GETLOGIN_R@ GL_GNULIB_GETOPT_POSIX = @GL_GNULIB_GETOPT_POSIX@ GL_GNULIB_GETPAGESIZE = @GL_GNULIB_GETPAGESIZE@ GL_GNULIB_GETPASS = @GL_GNULIB_GETPASS@ +GL_GNULIB_GETPASS_GNU = @GL_GNULIB_GETPASS_GNU@ GL_GNULIB_GETPEERNAME = @GL_GNULIB_GETPEERNAME@ +GL_GNULIB_GETPROGNAME = @GL_GNULIB_GETPROGNAME@ GL_GNULIB_GETRANDOM = @GL_GNULIB_GETRANDOM@ GL_GNULIB_GETSOCKNAME = @GL_GNULIB_GETSOCKNAME@ GL_GNULIB_GETSOCKOPT = @GL_GNULIB_GETSOCKOPT@ @@ -508,6 +525,7 @@ GL_GNULIB_LOCALENAME = @GL_GNULIB_LOCALENAME@ GL_GNULIB_LOCALTIME = @GL_GNULIB_LOCALTIME@ GL_GNULIB_LSEEK = @GL_GNULIB_LSEEK@ GL_GNULIB_LSTAT = @GL_GNULIB_LSTAT@ +GL_GNULIB_MALLOC_GNU = @GL_GNULIB_MALLOC_GNU@ GL_GNULIB_MALLOC_POSIX = @GL_GNULIB_MALLOC_POSIX@ GL_GNULIB_MBRLEN = @GL_GNULIB_MBRLEN@ GL_GNULIB_MBRTOWC = @GL_GNULIB_MBRTOWC@ @@ -528,6 +546,7 @@ GL_GNULIB_MBSSEP = @GL_GNULIB_MBSSEP@ GL_GNULIB_MBSSPN = @GL_GNULIB_MBSSPN@ GL_GNULIB_MBSSTR = @GL_GNULIB_MBSSTR@ GL_GNULIB_MBSTOK_R = @GL_GNULIB_MBSTOK_R@ +GL_GNULIB_MBSTOWCS = @GL_GNULIB_MBSTOWCS@ GL_GNULIB_MBTOWC = @GL_GNULIB_MBTOWC@ GL_GNULIB_MDA_ACCESS = @GL_GNULIB_MDA_ACCESS@ GL_GNULIB_MDA_CHDIR = @GL_GNULIB_MDA_CHDIR@ @@ -574,6 +593,7 @@ GL_GNULIB_MEMCHR = @GL_GNULIB_MEMCHR@ GL_GNULIB_MEMMEM = @GL_GNULIB_MEMMEM@ GL_GNULIB_MEMPCPY = @GL_GNULIB_MEMPCPY@ GL_GNULIB_MEMRCHR = @GL_GNULIB_MEMRCHR@ +GL_GNULIB_MEMSET_EXPLICIT = @GL_GNULIB_MEMSET_EXPLICIT@ GL_GNULIB_MKDIR = @GL_GNULIB_MKDIR@ GL_GNULIB_MKDIRAT = @GL_GNULIB_MKDIRAT@ GL_GNULIB_MKDTEMP = @GL_GNULIB_MKDTEMP@ @@ -630,6 +650,7 @@ GL_GNULIB_READ = @GL_GNULIB_READ@ GL_GNULIB_READLINK = @GL_GNULIB_READLINK@ GL_GNULIB_READLINKAT = @GL_GNULIB_READLINKAT@ GL_GNULIB_REALLOCARRAY = @GL_GNULIB_REALLOCARRAY@ +GL_GNULIB_REALLOC_GNU = @GL_GNULIB_REALLOC_GNU@ GL_GNULIB_REALLOC_POSIX = @GL_GNULIB_REALLOC_POSIX@ GL_GNULIB_REALPATH = @GL_GNULIB_REALPATH@ GL_GNULIB_RECV = @GL_GNULIB_RECV@ @@ -693,8 +714,10 @@ GL_GNULIB_STRVERSCMP = @GL_GNULIB_STRVERSCMP@ GL_GNULIB_SYMLINK = @GL_GNULIB_SYMLINK@ GL_GNULIB_SYMLINKAT = @GL_GNULIB_SYMLINKAT@ GL_GNULIB_SYSTEM_POSIX = @GL_GNULIB_SYSTEM_POSIX@ +GL_GNULIB_TIME = @GL_GNULIB_TIME@ GL_GNULIB_TIMEGM = @GL_GNULIB_TIMEGM@ GL_GNULIB_TIMESPEC_GET = @GL_GNULIB_TIMESPEC_GET@ +GL_GNULIB_TIMESPEC_GETRES = @GL_GNULIB_TIMESPEC_GETRES@ GL_GNULIB_TIME_R = @GL_GNULIB_TIME_R@ GL_GNULIB_TIME_RZ = @GL_GNULIB_TIME_RZ@ GL_GNULIB_TMPFILE = @GL_GNULIB_TMPFILE@ @@ -768,6 +791,7 @@ GNULIBHEADERS_OVERRIDE_WINT_T = @GNULIBHEADERS_OVERRIDE_WINT_T@ GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@ GNULIB_WARN_CFLAGS = @GNULIB_WARN_CFLAGS@ GREP = @GREP@ +HARD_LOCALE_LIB = @HARD_LOCALE_LIB@ HAVE_ACCEPT4 = @HAVE_ACCEPT4@ HAVE_ALIGNED_ALLOC = @HAVE_ALIGNED_ALLOC@ HAVE_ALLOCA_H = @HAVE_ALLOCA_H@ @@ -798,6 +822,7 @@ HAVE_DECL_GETLOGIN = @HAVE_DECL_GETLOGIN@ HAVE_DECL_GETLOGIN_R = @HAVE_DECL_GETLOGIN_R@ HAVE_DECL_GETPAGESIZE = @HAVE_DECL_GETPAGESIZE@ HAVE_DECL_GETUSERSHELL = @HAVE_DECL_GETUSERSHELL@ +HAVE_DECL_GETW = @HAVE_DECL_GETW@ HAVE_DECL_IMAXABS = @HAVE_DECL_IMAXABS@ HAVE_DECL_IMAXDIV = @HAVE_DECL_IMAXDIV@ HAVE_DECL_INET_NTOP = @HAVE_DECL_INET_NTOP@ @@ -807,6 +832,8 @@ HAVE_DECL_LOCALTIME_R = @HAVE_DECL_LOCALTIME_R@ HAVE_DECL_MEMMEM = @HAVE_DECL_MEMMEM@ HAVE_DECL_MEMRCHR = @HAVE_DECL_MEMRCHR@ HAVE_DECL_OBSTACK_PRINTF = @HAVE_DECL_OBSTACK_PRINTF@ +HAVE_DECL_PROGRAM_INVOCATION_NAME = @HAVE_DECL_PROGRAM_INVOCATION_NAME@ +HAVE_DECL_PUTW = @HAVE_DECL_PUTW@ HAVE_DECL_SETENV = @HAVE_DECL_SETENV@ HAVE_DECL_SETHOSTNAME = @HAVE_DECL_SETHOSTNAME@ HAVE_DECL_SETSTATE = @HAVE_DECL_SETSTATE@ @@ -830,6 +857,9 @@ HAVE_DECL_WCWIDTH = @HAVE_DECL_WCWIDTH@ HAVE_DPRINTF = @HAVE_DPRINTF@ HAVE_DUP3 = @HAVE_DUP3@ HAVE_DUPLOCALE = @HAVE_DUPLOCALE@ +HAVE_ERROR = @HAVE_ERROR@ +HAVE_ERROR_AT_LINE = @HAVE_ERROR_AT_LINE@ +HAVE_ERROR_H = @HAVE_ERROR_H@ HAVE_EUIDACCESS = @HAVE_EUIDACCESS@ HAVE_EXECVPE = @HAVE_EXECVPE@ HAVE_EXPLICIT_BZERO = @HAVE_EXPLICIT_BZERO@ @@ -860,12 +890,15 @@ HAVE_GETLOGIN = @HAVE_GETLOGIN@ HAVE_GETOPT_H = @HAVE_GETOPT_H@ HAVE_GETPAGESIZE = @HAVE_GETPAGESIZE@ HAVE_GETPASS = @HAVE_GETPASS@ +HAVE_GETPROGNAME = @HAVE_GETPROGNAME@ HAVE_GETRANDOM = @HAVE_GETRANDOM@ HAVE_GETSUBOPT = @HAVE_GETSUBOPT@ HAVE_GETTIMEOFDAY = @HAVE_GETTIMEOFDAY@ HAVE_GETUMASK = @HAVE_GETUMASK@ HAVE_GRANTPT = @HAVE_GRANTPT@ HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@ +HAVE_IMAXABS = @HAVE_IMAXABS@ +HAVE_IMAXDIV = @HAVE_IMAXDIV@ HAVE_IMAXDIV_T = @HAVE_IMAXDIV_T@ HAVE_INITSTATE = @HAVE_INITSTATE@ HAVE_INTTYPES_H = @HAVE_INTTYPES_H@ @@ -893,6 +926,7 @@ HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@ HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@ HAVE_MBTOWC = @HAVE_MBTOWC@ HAVE_MEMPCPY = @HAVE_MEMPCPY@ +HAVE_MEMSET_EXPLICIT = @HAVE_MEMSET_EXPLICIT@ HAVE_MKDIRAT = @HAVE_MKDIRAT@ HAVE_MKDTEMP = @HAVE_MKDTEMP@ HAVE_MKFIFO = @HAVE_MKFIFO@ @@ -1050,9 +1084,11 @@ HAVE_SYS_TYPES_H = @HAVE_SYS_TYPES_H@ HAVE_SYS_UIO_H = @HAVE_SYS_UIO_H@ HAVE_TIMEGM = @HAVE_TIMEGM@ HAVE_TIMESPEC_GET = @HAVE_TIMESPEC_GET@ +HAVE_TIMESPEC_GETRES = @HAVE_TIMESPEC_GETRES@ HAVE_TIMEZONE_T = @HAVE_TIMEZONE_T@ HAVE_TYPE_VOLATILE_SIG_ATOMIC_T = @HAVE_TYPE_VOLATILE_SIG_ATOMIC_T@ HAVE_UNISTD_H = @HAVE_UNISTD_H@ +HAVE_UNISTRING_WOE32DLL_H = @HAVE_UNISTRING_WOE32DLL_H@ HAVE_UNLINKAT = @HAVE_UNLINKAT@ HAVE_UNLOCKPT = @HAVE_UNLOCKPT@ HAVE_USLEEP = @HAVE_USLEEP@ @@ -1102,7 +1138,6 @@ HAVE_WMEMPCPY = @HAVE_WMEMPCPY@ HAVE_WMEMSET = @HAVE_WMEMSET@ HAVE_WS2TCPIP_H = @HAVE_WS2TCPIP_H@ HAVE_XLOCALE_H = @HAVE_XLOCALE_H@ -HAVE__BOOL = @HAVE__BOOL@ HAVE__EXIT = @HAVE__EXIT@ HELP2MAN = @HELP2MAN@ HOST_CPU = @HOST_CPU@ @@ -1168,15 +1203,20 @@ LTLIBOBJS = @LTLIBOBJS@ LTLIBSIGSEGV = @LTLIBSIGSEGV@ LTLIBTHREAD = @LTLIBTHREAD@ MAKEINFO = @MAKEINFO@ +MBRTOWC_LIB = @MBRTOWC_LIB@ MKDIR_P = @MKDIR_P@ MSGFMT = @MSGFMT@ MSGFMT_015 = @MSGFMT_015@ MSGMERGE = @MSGMERGE@ +NANOSLEEP_LIB = @NANOSLEEP_LIB@ NETINET_IN_H = @NETINET_IN_H@ NEXT_ARPA_INET_H = @NEXT_ARPA_INET_H@ +NEXT_ASSERT_H = @NEXT_ASSERT_H@ NEXT_AS_FIRST_DIRECTIVE_ARPA_INET_H = @NEXT_AS_FIRST_DIRECTIVE_ARPA_INET_H@ +NEXT_AS_FIRST_DIRECTIVE_ASSERT_H = @NEXT_AS_FIRST_DIRECTIVE_ASSERT_H@ NEXT_AS_FIRST_DIRECTIVE_CTYPE_H = @NEXT_AS_FIRST_DIRECTIVE_CTYPE_H@ NEXT_AS_FIRST_DIRECTIVE_ERRNO_H = @NEXT_AS_FIRST_DIRECTIVE_ERRNO_H@ +NEXT_AS_FIRST_DIRECTIVE_ERROR_H = @NEXT_AS_FIRST_DIRECTIVE_ERROR_H@ NEXT_AS_FIRST_DIRECTIVE_FCNTL_H = @NEXT_AS_FIRST_DIRECTIVE_FCNTL_H@ NEXT_AS_FIRST_DIRECTIVE_FLOAT_H = @NEXT_AS_FIRST_DIRECTIVE_FLOAT_H@ NEXT_AS_FIRST_DIRECTIVE_FNMATCH_H = @NEXT_AS_FIRST_DIRECTIVE_FNMATCH_H@ @@ -1212,6 +1252,7 @@ NEXT_AS_FIRST_DIRECTIVE_WCHAR_H = @NEXT_AS_FIRST_DIRECTIVE_WCHAR_H@ NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H = @NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H@ NEXT_CTYPE_H = @NEXT_CTYPE_H@ NEXT_ERRNO_H = @NEXT_ERRNO_H@ +NEXT_ERROR_H = @NEXT_ERROR_H@ NEXT_FCNTL_H = @NEXT_FCNTL_H@ NEXT_FLOAT_H = @NEXT_FLOAT_H@ NEXT_FNMATCH_H = @NEXT_FNMATCH_H@ @@ -1254,27 +1295,35 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ POSUB = @POSUB@ PRAGMA_COLUMNS = @PRAGMA_COLUMNS@ PRAGMA_SYSTEM_HEADER = @PRAGMA_SYSTEM_HEADER@ PRIPTR_PREFIX = @PRIPTR_PREFIX@ PR_PROGRAM = @PR_PROGRAM@ PTHREAD_H_DEFINES_STRUCT_TIMESPEC = @PTHREAD_H_DEFINES_STRUCT_TIMESPEC@ +PTHREAD_SIGMASK_LIB = @PTHREAD_SIGMASK_LIB@ PTRDIFF_T_SUFFIX = @PTRDIFF_T_SUFFIX@ RANLIB = @RANLIB@ REPLACE_ACCESS = @REPLACE_ACCESS@ REPLACE_ALIGNED_ALLOC = @REPLACE_ALIGNED_ALLOC@ REPLACE_BTOWC = @REPLACE_BTOWC@ -REPLACE_CALLOC = @REPLACE_CALLOC@ +REPLACE_CALLOC_FOR_CALLOC_GNU = @REPLACE_CALLOC_FOR_CALLOC_GNU@ +REPLACE_CALLOC_FOR_CALLOC_POSIX = @REPLACE_CALLOC_FOR_CALLOC_POSIX@ REPLACE_CANONICALIZE_FILE_NAME = @REPLACE_CANONICALIZE_FILE_NAME@ +REPLACE_CHMOD = @REPLACE_CHMOD@ REPLACE_CHOWN = @REPLACE_CHOWN@ REPLACE_CLOSE = @REPLACE_CLOSE@ +REPLACE_COPY_FILE_RANGE = @REPLACE_COPY_FILE_RANGE@ REPLACE_CREAT = @REPLACE_CREAT@ REPLACE_CTIME = @REPLACE_CTIME@ REPLACE_DPRINTF = @REPLACE_DPRINTF@ REPLACE_DUP = @REPLACE_DUP@ REPLACE_DUP2 = @REPLACE_DUP2@ +REPLACE_DUP3 = @REPLACE_DUP3@ REPLACE_DUPLOCALE = @REPLACE_DUPLOCALE@ +REPLACE_ERROR = @REPLACE_ERROR@ +REPLACE_ERROR_AT_LINE = @REPLACE_ERROR_AT_LINE@ REPLACE_EXECL = @REPLACE_EXECL@ REPLACE_EXECLE = @REPLACE_EXECLE@ REPLACE_EXECLP = @REPLACE_EXECLP@ @@ -1287,11 +1336,13 @@ REPLACE_FCHMODAT = @REPLACE_FCHMODAT@ REPLACE_FCHOWNAT = @REPLACE_FCHOWNAT@ REPLACE_FCLOSE = @REPLACE_FCLOSE@ REPLACE_FCNTL = @REPLACE_FCNTL@ +REPLACE_FDATASYNC = @REPLACE_FDATASYNC@ REPLACE_FDOPEN = @REPLACE_FDOPEN@ REPLACE_FFLUSH = @REPLACE_FFLUSH@ REPLACE_FFSLL = @REPLACE_FFSLL@ REPLACE_FNMATCH = @REPLACE_FNMATCH@ REPLACE_FOPEN = @REPLACE_FOPEN@ +REPLACE_FOPEN_FOR_FOPEN_GNU = @REPLACE_FOPEN_FOR_FOPEN_GNU@ REPLACE_FPRINTF = @REPLACE_FPRINTF@ REPLACE_FPURGE = @REPLACE_FPURGE@ REPLACE_FREE = @REPLACE_FREE@ @@ -1309,17 +1360,24 @@ REPLACE_GETCWD = @REPLACE_GETCWD@ REPLACE_GETDELIM = @REPLACE_GETDELIM@ REPLACE_GETDOMAINNAME = @REPLACE_GETDOMAINNAME@ REPLACE_GETDTABLESIZE = @REPLACE_GETDTABLESIZE@ +REPLACE_GETENTROPY = @REPLACE_GETENTROPY@ REPLACE_GETGROUPS = @REPLACE_GETGROUPS@ REPLACE_GETLINE = @REPLACE_GETLINE@ +REPLACE_GETLOADAVG = @REPLACE_GETLOADAVG@ REPLACE_GETLOGIN_R = @REPLACE_GETLOGIN_R@ REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@ REPLACE_GETPASS = @REPLACE_GETPASS@ +REPLACE_GETPASS_FOR_GETPASS_GNU = @REPLACE_GETPASS_FOR_GETPASS_GNU@ +REPLACE_GETPROGNAME = @REPLACE_GETPROGNAME@ REPLACE_GETRANDOM = @REPLACE_GETRANDOM@ +REPLACE_GETSUBOPT = @REPLACE_GETSUBOPT@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@ REPLACE_GMTIME = @REPLACE_GMTIME@ REPLACE_ICONV = @REPLACE_ICONV@ REPLACE_ICONV_OPEN = @REPLACE_ICONV_OPEN@ REPLACE_ICONV_UTF = @REPLACE_ICONV_UTF@ +REPLACE_IMAXABS = @REPLACE_IMAXABS@ +REPLACE_IMAXDIV = @REPLACE_IMAXDIV@ REPLACE_INET_NTOP = @REPLACE_INET_NTOP@ REPLACE_INET_PTON = @REPLACE_INET_PTON@ REPLACE_INITSTATE = @REPLACE_INITSTATE@ @@ -1338,21 +1396,27 @@ REPLACE_LOCALTIME = @REPLACE_LOCALTIME@ REPLACE_LOCALTIME_R = @REPLACE_LOCALTIME_R@ REPLACE_LSEEK = @REPLACE_LSEEK@ REPLACE_LSTAT = @REPLACE_LSTAT@ -REPLACE_MALLOC = @REPLACE_MALLOC@ +REPLACE_MALLOC_FOR_MALLOC_GNU = @REPLACE_MALLOC_FOR_MALLOC_GNU@ +REPLACE_MALLOC_FOR_MALLOC_POSIX = @REPLACE_MALLOC_FOR_MALLOC_POSIX@ REPLACE_MBRLEN = @REPLACE_MBRLEN@ REPLACE_MBRTOWC = @REPLACE_MBRTOWC@ REPLACE_MBSINIT = @REPLACE_MBSINIT@ REPLACE_MBSNRTOWCS = @REPLACE_MBSNRTOWCS@ REPLACE_MBSRTOWCS = @REPLACE_MBSRTOWCS@ REPLACE_MBSTATE_T = @REPLACE_MBSTATE_T@ +REPLACE_MBSTOWCS = @REPLACE_MBSTOWCS@ REPLACE_MBTOWC = @REPLACE_MBTOWC@ +REPLACE_MB_CUR_MAX = @REPLACE_MB_CUR_MAX@ REPLACE_MEMCHR = @REPLACE_MEMCHR@ REPLACE_MEMMEM = @REPLACE_MEMMEM@ +REPLACE_MEMPCPY = @REPLACE_MEMPCPY@ REPLACE_MKDIR = @REPLACE_MKDIR@ REPLACE_MKFIFO = @REPLACE_MKFIFO@ REPLACE_MKFIFOAT = @REPLACE_MKFIFOAT@ REPLACE_MKNOD = @REPLACE_MKNOD@ REPLACE_MKNODAT = @REPLACE_MKNODAT@ +REPLACE_MKOSTEMP = @REPLACE_MKOSTEMP@ +REPLACE_MKOSTEMPS = @REPLACE_MKOSTEMPS@ REPLACE_MKSTEMP = @REPLACE_MKSTEMP@ REPLACE_MKTIME = @REPLACE_MKTIME@ REPLACE_NANOSLEEP = @REPLACE_NANOSLEEP@ @@ -1363,8 +1427,10 @@ REPLACE_OBSTACK_PRINTF = @REPLACE_OBSTACK_PRINTF@ REPLACE_OPEN = @REPLACE_OPEN@ REPLACE_OPENAT = @REPLACE_OPENAT@ REPLACE_PERROR = @REPLACE_PERROR@ +REPLACE_PIPE2 = @REPLACE_PIPE2@ REPLACE_POPEN = @REPLACE_POPEN@ REPLACE_POSIX_MEMALIGN = @REPLACE_POSIX_MEMALIGN@ +REPLACE_POSIX_OPENPT = @REPLACE_POSIX_OPENPT@ REPLACE_PREAD = @REPLACE_PREAD@ REPLACE_PRINTF = @REPLACE_PRINTF@ REPLACE_PSELECT = @REPLACE_PSELECT@ @@ -1431,8 +1497,9 @@ REPLACE_RANDOM_R = @REPLACE_RANDOM_R@ REPLACE_READ = @REPLACE_READ@ REPLACE_READLINK = @REPLACE_READLINK@ REPLACE_READLINKAT = @REPLACE_READLINKAT@ -REPLACE_REALLOC = @REPLACE_REALLOC@ REPLACE_REALLOCARRAY = @REPLACE_REALLOCARRAY@ +REPLACE_REALLOC_FOR_REALLOC_GNU = @REPLACE_REALLOC_FOR_REALLOC_GNU@ +REPLACE_REALLOC_FOR_REALLOC_POSIX = @REPLACE_REALLOC_FOR_REALLOC_POSIX@ REPLACE_REALPATH = @REPLACE_REALPATH@ REPLACE_REMOVE = @REPLACE_REMOVE@ REPLACE_RENAME = @REPLACE_RENAME@ @@ -1441,6 +1508,7 @@ REPLACE_RMDIR = @REPLACE_RMDIR@ REPLACE_SCHED_YIELD = @REPLACE_SCHED_YIELD@ REPLACE_SELECT = @REPLACE_SELECT@ REPLACE_SETENV = @REPLACE_SETENV@ +REPLACE_SETHOSTNAME = @REPLACE_SETHOSTNAME@ REPLACE_SETLOCALE = @REPLACE_SETLOCALE@ REPLACE_SETSTATE = @REPLACE_SETSTATE@ REPLACE_SLEEP = @REPLACE_SLEEP@ @@ -1449,6 +1517,7 @@ REPLACE_SPRINTF = @REPLACE_SPRINTF@ REPLACE_STAT = @REPLACE_STAT@ REPLACE_STDIO_READ_FUNCS = @REPLACE_STDIO_READ_FUNCS@ REPLACE_STDIO_WRITE_FUNCS = @REPLACE_STDIO_WRITE_FUNCS@ +REPLACE_STPCPY = @REPLACE_STPCPY@ REPLACE_STPNCPY = @REPLACE_STPNCPY@ REPLACE_STRCASESTR = @REPLACE_STRCASESTR@ REPLACE_STRCHRNUL = @REPLACE_STRCHRNUL@ @@ -1475,7 +1544,9 @@ REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@ REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@ REPLACE_SYMLINK = @REPLACE_SYMLINK@ REPLACE_SYMLINKAT = @REPLACE_SYMLINKAT@ +REPLACE_TIME = @REPLACE_TIME@ REPLACE_TIMEGM = @REPLACE_TIMEGM@ +REPLACE_TIMESPEC_GET = @REPLACE_TIMESPEC_GET@ REPLACE_TMPFILE = @REPLACE_TMPFILE@ REPLACE_TOWLOWER = @REPLACE_TOWLOWER@ REPLACE_TRUNCATE = @REPLACE_TRUNCATE@ @@ -1493,25 +1564,33 @@ REPLACE_VPRINTF = @REPLACE_VPRINTF@ REPLACE_VSNPRINTF = @REPLACE_VSNPRINTF@ REPLACE_VSPRINTF = @REPLACE_VSPRINTF@ REPLACE_WCRTOMB = @REPLACE_WCRTOMB@ +REPLACE_WCSCMP = @REPLACE_WCSCMP@ REPLACE_WCSFTIME = @REPLACE_WCSFTIME@ +REPLACE_WCSNCMP = @REPLACE_WCSNCMP@ REPLACE_WCSNRTOMBS = @REPLACE_WCSNRTOMBS@ REPLACE_WCSRTOMBS = @REPLACE_WCSRTOMBS@ +REPLACE_WCSSTR = @REPLACE_WCSSTR@ REPLACE_WCSTOK = @REPLACE_WCSTOK@ REPLACE_WCSWIDTH = @REPLACE_WCSWIDTH@ REPLACE_WCTOB = @REPLACE_WCTOB@ REPLACE_WCTOMB = @REPLACE_WCTOMB@ REPLACE_WCWIDTH = @REPLACE_WCWIDTH@ +REPLACE_WMEMCMP = @REPLACE_WMEMCMP@ +REPLACE_WMEMPCPY = @REPLACE_WMEMPCPY@ REPLACE_WRITE = @REPLACE_WRITE@ +REPLACE__EXIT = @REPLACE__EXIT@ +SCHED_YIELD_LIB = @SCHED_YIELD_LIB@ SED = @SED@ +SELECT_LIB = @SELECT_LIB@ +SETLOCALE_NULL_LIB = @SETLOCALE_NULL_LIB@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SIGSEGV_H = @SIGSEGV_H@ SIG_ATOMIC_T_SUFFIX = @SIG_ATOMIC_T_SUFFIX@ SIZE_T_SUFFIX = @SIZE_T_SUFFIX@ SRC_VERSION_C = @SRC_VERSION_C@ -STDALIGN_H = @STDALIGN_H@ STDARG_H = @STDARG_H@ -STDBOOL_H = @STDBOOL_H@ +STDCKDINT_H = @STDCKDINT_H@ STDDEF_H = @STDDEF_H@ STDINT_H = @STDINT_H@ STRIP = @STRIP@ @@ -1549,8 +1628,10 @@ ac_ct_CC = @ac_ct_CC@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ +am__rm_f_notfound = @am__rm_f_notfound@ am__tar = @am__tar@ am__untar = @am__untar@ +am__xargs_n = @am__xargs_n@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ @@ -1563,8 +1644,10 @@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ +gl_LIBOBJDEPS = @gl_LIBOBJDEPS@ gl_LIBOBJS = @gl_LIBOBJS@ gl_LTLIBOBJS = @gl_LTLIBOBJS@ +gltests_LIBOBJDEPS = @gltests_LIBOBJDEPS@ gltests_LIBOBJS = @gltests_LIBOBJS@ gltests_LTLIBOBJS = @gltests_LTLIBOBJS@ gltests_WITNESS = @gltests_WITNESS@ @@ -1750,7 +1833,7 @@ distdir: $(BUILT_SOURCES) distdir-am: $(DISTFILES) $(am__remove_distdir) - test -d "$(distdir)" || mkdir "$(distdir)" + $(AM_V_at)$(MKDIR_P) "$(distdir)" @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ @@ -1974,8 +2057,8 @@ mostlyclean-generic: clean-generic: distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + -$(am__rm_f) $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || $(am__rm_f) $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" diff --git a/NEWS b/NEWS index 96cc5f6..a0c36e0 100644 --- a/NEWS +++ b/NEWS @@ -1,5 +1,25 @@ GNU diffutils NEWS -*- outline -*- +* Noteworthy changes in release 3.10 (2023-05-21) [stable] + +** Bug fixes + + cmp/diff can again work with file dates past Y2K38 + [bug introduced in 3.9] + + diff -D no longer fails to output #ifndef lines. + [bug#61193 introduced in 3.9] + + +* Noteworthy changes in release 3.9 (2023-01-15) [stable] + +** Bug fixes + + diff -c and -u no longer output incorrect timezones in headers + on platforms like Solaris where struct tm lacks tm_gmtoff. + [bug#51228 introduced in 3.4] + + * Noteworthy changes in release 3.8 (2021-08-01) [stable] ** Incompatible changes @@ -442,7 +462,7 @@ User-visible changes in version 2.0: -Copyright (C) 1993-1994, 1998, 2001-2002, 2004, 2006, 2009-2013, 2015-2021 Free +Copyright (C) 1993-1994, 1998, 2001-2002, 2004, 2006, 2009-2013, 2015-2023 Free Software Foundation, Inc. This file is part of GNU Diffutils. diff --git a/README b/README index 57d080e..03afb2e 100644 --- a/README +++ b/README @@ -51,7 +51,7 @@ Please report bugs to . ----- -Copyright (C) 1992, 1998, 2001-2002, 2004, 2009-2013, 2015-2021 Free Software +Copyright (C) 1992, 1998, 2001-2002, 2004, 2009-2013, 2015-2023 Free Software Foundation, Inc. This file is part of GNU Diffutils. diff --git a/TODO b/TODO index 5132de8..25fc22b 100644 --- a/TODO +++ b/TODO @@ -1,3 +1,9 @@ +Add --git option to generate output compatible with 'git diff -p'. +This would behave like 'diff -p', except that it would also generate +the extended headers 'old mode', 'new mode', 'deleted file mode', and +'new file mode', and it would quote file names with unusual characters. +GNU patch already parses this format. + Add --include option (opposite of --exclude). Look into sdiff improvement here: diff --git a/aclocal.m4 b/aclocal.m4 index 5da573b..10d3ce7 100644 --- a/aclocal.m4 +++ b/aclocal.m4 @@ -1,6 +1,6 @@ -# generated automatically by aclocal 1.16d -*- Autoconf -*- +# generated automatically by aclocal 1.16i -*- Autoconf -*- -# Copyright (C) 1996-2021 Free Software Foundation, Inc. +# Copyright (C) 1996-2023 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -14,13 +14,13 @@ m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])]) m4_ifndef([AC_AUTOCONF_VERSION], [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl -m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.71],, -[m4_warning([this file was generated for autoconf 2.71. +m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.72c.20-9c018],, +[m4_warning([this file was generated for autoconf 2.72c.20-9c018. You have another version of autoconf. It may work, but is not guaranteed to. If you have problems, you may need to regenerate the build system entirely. To do so, use the procedure documented by the package, typically 'autoreconf'.])]) -# Copyright (C) 2002-2021 Free Software Foundation, Inc. +# Copyright (C) 2002-2023 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -35,7 +35,7 @@ AC_DEFUN([AM_AUTOMAKE_VERSION], [am__api_version='1.16' dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to dnl require some minimum version. Point them to the right macro. -m4_if([$1], [1.16d], [], +m4_if([$1], [1.16i], [], [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl ]) @@ -51,14 +51,14 @@ m4_define([_AM_AUTOCONF_VERSION], []) # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced. # This function is AC_REQUIREd by AM_INIT_AUTOMAKE. AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], -[AM_AUTOMAKE_VERSION([1.16d])dnl +[AM_AUTOMAKE_VERSION([1.16i])dnl m4_ifndef([AC_AUTOCONF_VERSION], [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))]) # AM_AUX_DIR_EXPAND -*- Autoconf -*- -# Copyright (C) 2001-2021 Free Software Foundation, Inc. +# Copyright (C) 2001-2023 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -108,9 +108,46 @@ AC_DEFUN([AM_AUX_DIR_EXPAND], am_aux_dir=`cd "$ac_aux_dir" && pwd` ]) +# AM_COND_IF -*- Autoconf -*- + +# Copyright (C) 2008-2023 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# _AM_COND_IF +# _AM_COND_ELSE +# _AM_COND_ENDIF +# -------------- +# These macros are only used for tracing. +m4_define([_AM_COND_IF]) +m4_define([_AM_COND_ELSE]) +m4_define([_AM_COND_ENDIF]) + +# AM_COND_IF(COND, [IF-TRUE], [IF-FALSE]) +# --------------------------------------- +# If the shell condition COND is true, execute IF-TRUE, otherwise execute +# IF-FALSE. Allow automake to learn about conditional instantiating macros +# (the AC_CONFIG_FOOS). +AC_DEFUN([AM_COND_IF], +[m4_ifndef([_AM_COND_VALUE_$1], + [m4_fatal([$0: no such condition "$1"])])dnl +_AM_COND_IF([$1])dnl +if test -z "$$1_TRUE"; then : + m4_n([$2])[]dnl +m4_ifval([$3], +[_AM_COND_ELSE([$1])dnl +else + $3 +])dnl +_AM_COND_ENDIF([$1])dnl +fi[]dnl +]) + # AM_CONDITIONAL -*- Autoconf -*- -# Copyright (C) 1997-2021 Free Software Foundation, Inc. +# Copyright (C) 1997-2023 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -141,7 +178,7 @@ AC_CONFIG_COMMANDS_PRE( Usually this means the macro was only invoked conditionally.]]) fi])]) -# Copyright (C) 1999-2021 Free Software Foundation, Inc. +# Copyright (C) 1999-2023 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -332,7 +369,7 @@ _AM_SUBST_NOTMAKE([am__nodep])dnl # Generate code to set up dependency tracking. -*- Autoconf -*- -# Copyright (C) 1999-2021 Free Software Foundation, Inc. +# Copyright (C) 1999-2023 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -400,7 +437,7 @@ AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS], # Do all the work for Automake. -*- Autoconf -*- -# Copyright (C) 1996-2021 Free Software Foundation, Inc. +# Copyright (C) 1996-2023 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -428,6 +465,10 @@ m4_defn([AC_PROG_CC]) # release and drop the old call support. AC_DEFUN([AM_INIT_AUTOMAKE], [AC_PREREQ([2.65])dnl +m4_ifdef([_$0_ALREADY_INIT], + [m4_fatal([$0 expanded multiple times +]m4_defn([_$0_ALREADY_INIT]))], + [m4_define([_$0_ALREADY_INIT], m4_expansion_stack)])dnl dnl Autoconf wants to disallow AM_ names. We explicitly allow dnl the ones we care about. m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl @@ -530,7 +571,7 @@ if test -z "$CSCOPE"; then fi AC_SUBST([CSCOPE]) -AC_REQUIRE([AM_SILENT_RULES])dnl +AC_REQUIRE([_AM_SILENT_RULES])dnl dnl The testsuite driver may need to know about EXEEXT, so add the dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This dnl macro is hooked onto _AC_COMPILER_EXEEXT early, see below. @@ -538,47 +579,9 @@ AC_CONFIG_COMMANDS_PRE(dnl [m4_provide_if([_AM_COMPILER_EXEEXT], [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl -# POSIX will say in a future version that running "rm -f" with no argument -# is OK; and we want to be able to make that assumption in our Makefile -# recipes. So use an aggressive probe to check that the usage we want is -# actually supported "in the wild" to an acceptable degree. -# See automake bug#10828. -# To make any issue more visible, cause the running configure to be aborted -# by default if the 'rm' program in use doesn't match our expectations; the -# user can still override this though. -if rm -f && rm -fr && rm -rf; then : OK; else - cat >&2 <<'END' -Oops! - -Your 'rm' program seems unable to run without file operands specified -on the command line, even when the '-f' option is present. This is contrary -to the behaviour of most rm programs out there, and not conforming with -the upcoming POSIX standard: - -Please tell bug-automake@gnu.org about your system, including the value -of your $PATH and any error possibly output before this message. This -can help us improve future automake versions. +AC_REQUIRE([_AM_PROG_RM_F]) +AC_REQUIRE([_AM_PROG_XARGS_N]) -END - if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then - echo 'Configuration will proceed anyway, since you have set the' >&2 - echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2 - echo >&2 - else - cat >&2 <<'END' -Aborting the configuration process, to ensure you take notice of the issue. - -You can download and install GNU coreutils to get an 'rm' implementation -that behaves properly: . - -If you want to complete the configuration process using your problematic -'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM -to "yes", and re-run configure. - -END - AC_MSG_ERROR([Your 'rm' program is bad, sorry.]) - fi -fi dnl The trailing newline in this macro's definition is deliberate, for dnl backward compatibility and to allow trailing 'dnl'-style comments dnl after the AM_INIT_AUTOMAKE invocation. See automake bug#16841. @@ -611,7 +614,7 @@ for _am_header in $config_headers :; do done echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count]) -# Copyright (C) 2001-2021 Free Software Foundation, Inc. +# Copyright (C) 2001-2023 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -632,7 +635,7 @@ if test x"${install_sh+set}" != xset; then fi AC_SUBST([install_sh])]) -# Copyright (C) 2003-2021 Free Software Foundation, Inc. +# Copyright (C) 2003-2023 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -653,7 +656,7 @@ AC_SUBST([am__leading_dot])]) # Check to see how 'make' treats includes. -*- Autoconf -*- -# Copyright (C) 2001-2021 Free Software Foundation, Inc. +# Copyright (C) 2001-2023 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -696,7 +699,7 @@ AC_SUBST([am__quote])]) # Fake the existence of programs that GNU maintainers use. -*- Autoconf -*- -# Copyright (C) 1997-2021 Free Software Foundation, Inc. +# Copyright (C) 1997-2023 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -730,7 +733,7 @@ fi # Helper functions for option handling. -*- Autoconf -*- -# Copyright (C) 2001-2021 Free Software Foundation, Inc. +# Copyright (C) 2001-2023 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -759,7 +762,7 @@ AC_DEFUN([_AM_SET_OPTIONS], AC_DEFUN([_AM_IF_OPTION], [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])]) -# Copyright (C) 1999-2021 Free Software Foundation, Inc. +# Copyright (C) 1999-2023 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -806,7 +809,23 @@ AC_LANG_POP([C])]) # For backward compatibility. AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])]) -# Copyright (C) 2001-2021 Free Software Foundation, Inc. +# Copyright (C) 2022-2023 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# _AM_PROG_RM_F +# --------------- +# Check whether 'rm -f' without any arguments works. +# https://bugs.gnu.org/10828 +AC_DEFUN([_AM_PROG_RM_F], +[am__rm_f_notfound= +AS_IF([(rm -f && rm -fr && rm -rf) 2>/dev/null], [], [am__rm_f_notfound='""']) +AC_SUBST(am__rm_f_notfound) +]) + +# Copyright (C) 2001-2023 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -825,16 +844,60 @@ AC_DEFUN([AM_RUN_LOG], # Check to make sure that the build environment is sane. -*- Autoconf -*- -# Copyright (C) 1996-2021 Free Software Foundation, Inc. +# Copyright (C) 1996-2023 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. +# _AM_SLEEP_FRACTIONAL_SECONDS +# ---------------------------- +AC_DEFUN([_AM_SLEEP_FRACTIONAL_SECONDS], [dnl +AC_CACHE_CHECK([whether sleep supports fractional seconds], am_cv_sleep_fractional_seconds, [dnl +AS_IF([sleep 0.001 2>/dev/null], [am_cv_sleep_fractional_seconds=true], [am_cv_sleep_fractional_seconds=false]) +])]) + +# _AM_FILESYSTEM_TIMESTAMP_RESOLUTION +# ----------------------------------- +# Determine the filesystem timestamp resolution. Modern systems are nanosecond +# capable, but historical systems could be millisecond, second, or even 2-second +# resolution. +AC_DEFUN([_AM_FILESYSTEM_TIMESTAMP_RESOLUTION], [dnl +AC_REQUIRE([_AM_SLEEP_FRACTIONAL_SECONDS]) +AC_CACHE_CHECK([the filesystem timestamp resolution], am_cv_filesystem_timestamp_resolution, [dnl +# Use names that lexically sort older-first when the timestamps are equal. +rm -f conftest.file.a conftest.file.b +: > conftest.file.a +AS_IF([$am_cv_sleep_fractional_seconds], [dnl + am_try_sleep=0.1 am_try_loops=20 +], [dnl + am_try_sleep=1 am_try_loops=2 +]) +am_try=0 +while :; do + AS_VAR_ARITH([am_try], [$am_try + 1]) + echo "timestamp $am_try" > conftest.file.b + set X `ls -t conftest.file.a conftest.file.b` + if test "$[2]" = conftest.file.b || test $am_try -eq $am_try_loops; then + break + fi + sleep $am_try_sleep +done +rm -f conftest.file.a conftest.file.b +am_cv_filesystem_timestamp_resolution=$am_try +AS_IF([$am_cv_sleep_fractional_seconds], [dnl + AS_VAR_ARITH([am_cv_filesystem_timestamp_resolution], [$am_try / 10]) + AS_VAR_ARITH([am_fraction], [$am_try % 10]) + AS_VAR_APPEND([am_cv_filesystem_timestamp_resolution], [.$am_fraction]) +]) +])]) + # AM_SANITY_CHECK # --------------- AC_DEFUN([AM_SANITY_CHECK], -[AC_MSG_CHECKING([whether build environment is sane]) +[AC_REQUIRE([_AM_FILESYSTEM_TIMESTAMP_RESOLUTION]) +rm -f conftest.file +AC_CACHE_CHECK([whether build environment is sane], am_cv_build_env_is_sane, [dnl # Reject unsafe characters in $srcdir or the absolute working directory # name. Accept space and tab only in the latter. am_lf=' @@ -876,24 +939,23 @@ if ( break fi # Just in case. - sleep 1 + sleep $am_cv_filesystem_timestamp_resolution am_has_slept=yes done test "$[2]" = conftest.file ) then - # Ok. - : + am_cv_build_env_is_sane=yes else AC_MSG_ERROR([newly created file is older than distributed files! Check your system clock]) fi -AC_MSG_RESULT([yes]) +]) # If we didn't sleep, we still need to ensure time stamps of config.status and # generated files are strictly newer. am_sleep_pid= -if grep 'slept: no' conftest.file >/dev/null 2>&1; then - ( sleep 1 ) & +if ! test -e conftest.file || grep 'slept: no' conftest.file >/dev/null 2>&1; then + ( sleep $am_cv_filesystem_timestamp_resolution ) & am_sleep_pid=$! fi AC_CONFIG_COMMANDS_PRE( @@ -906,18 +968,18 @@ AC_CONFIG_COMMANDS_PRE( rm -f conftest.file ]) -# Copyright (C) 2009-2021 Free Software Foundation, Inc. +# Copyright (C) 2009-2023 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# AM_SILENT_RULES([DEFAULT]) -# -------------------------- -# Enable less verbose build rules; with the default set to DEFAULT -# ("yes" being less verbose, "no" or empty being verbose). -AC_DEFUN([AM_SILENT_RULES], -[AC_ARG_ENABLE([silent-rules], [dnl +# _AM_SILENT_RULES +# ---------------- +# Enable less verbose build rules support. +AC_DEFUN([_AM_SILENT_RULES], +[AM_DEFAULT_VERBOSITY=1 +AC_ARG_ENABLE([silent-rules], [dnl AS_HELP_STRING( [--enable-silent-rules], [less verbose build output (undo: "make V=1")]) @@ -925,11 +987,6 @@ AS_HELP_STRING( [--disable-silent-rules], [verbose build output (undo: "make V=0")])dnl ]) -case $enable_silent_rules in @%:@ ((( - yes) AM_DEFAULT_VERBOSITY=0;; - no) AM_DEFAULT_VERBOSITY=1;; - *) AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1]);; -esac dnl dnl A few 'make' implementations (e.g., NonStop OS and NextStep) dnl do not support nested variable expansions. @@ -948,14 +1005,6 @@ am__doit: else am_cv_make_support_nested_variables=no fi]) -if test $am_cv_make_support_nested_variables = yes; then - dnl Using '$V' instead of '$(V)' breaks IRIX make. - AM_V='$(V)' - AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' -else - AM_V=$AM_DEFAULT_VERBOSITY - AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY -fi AC_SUBST([AM_V])dnl AM_SUBST_NOTMAKE([AM_V])dnl AC_SUBST([AM_DEFAULT_V])dnl @@ -964,9 +1013,33 @@ AC_SUBST([AM_DEFAULT_VERBOSITY])dnl AM_BACKSLASH='\' AC_SUBST([AM_BACKSLASH])dnl _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl +dnl Delay evaluation of AM_DEFAULT_VERBOSITY to the end to allow multiple calls +dnl to AM_SILENT_RULES to change the default value. +AC_CONFIG_COMMANDS_PRE([dnl +case $enable_silent_rules in @%:@ ((( + yes) AM_DEFAULT_VERBOSITY=0;; + no) AM_DEFAULT_VERBOSITY=1;; +esac +if test $am_cv_make_support_nested_variables = yes; then + dnl Using '$V' instead of '$(V)' breaks IRIX make. + AM_V='$(V)' + AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' +else + AM_V=$AM_DEFAULT_VERBOSITY + AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY +fi +])dnl ]) -# Copyright (C) 2001-2021 Free Software Foundation, Inc. +# AM_SILENT_RULES([DEFAULT]) +# -------------------------- +# Set the default verbosity level to DEFAULT ("yes" being less verbose, "no" or +# empty being verbose). +AC_DEFUN([AM_SILENT_RULES], +[AC_REQUIRE([_AM_SILENT_RULES]) +AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1])]) + +# Copyright (C) 2001-2023 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -994,7 +1067,7 @@ fi INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" AC_SUBST([INSTALL_STRIP_PROGRAM])]) -# Copyright (C) 2006-2021 Free Software Foundation, Inc. +# Copyright (C) 2006-2023 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1013,7 +1086,7 @@ AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)]) # Check how to create a tarball. -*- Autoconf -*- -# Copyright (C) 2004-2021 Free Software Foundation, Inc. +# Copyright (C) 2004-2023 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1059,15 +1132,19 @@ m4_if([$1], [v7], am_uid=`id -u || echo unknown` am_gid=`id -g || echo unknown` AC_MSG_CHECKING([whether UID '$am_uid' is supported by ustar format]) - if test $am_uid -le $am_max_uid; then - AC_MSG_RESULT([yes]) + if test x$am_uid = xunknown; then + AC_MSG_WARN([ancient id detected; assuming current UID is ok, but dist-ustar might not work]) + elif test $am_uid -le $am_max_uid; then + AC_MSG_RESULT([yes]) else - AC_MSG_RESULT([no]) - _am_tools=none + AC_MSG_RESULT([no]) + _am_tools=none fi AC_MSG_CHECKING([whether GID '$am_gid' is supported by ustar format]) - if test $am_gid -le $am_max_gid; then - AC_MSG_RESULT([yes]) + if test x$gm_gid = xunknown; then + AC_MSG_WARN([ancient id detected; assuming current GID is ok, but dist-ustar might not work]) + elif test $am_gid -le $am_max_gid; then + AC_MSG_RESULT([yes]) else AC_MSG_RESULT([no]) _am_tools=none @@ -1144,15 +1221,37 @@ AC_SUBST([am__tar]) AC_SUBST([am__untar]) ]) # _AM_PROG_TAR +# Copyright (C) 2022-2023 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# _AM_PROG_XARGS_N +# ---------------- +# Check whether 'xargs -n' works. It should work everywhere, so the fallback +# is not optimized at all as we never expect to use it. +AC_DEFUN([_AM_PROG_XARGS_N], +[AC_CACHE_CHECK([xargs -n works], am_cv_xargs_n_works, [dnl +AS_IF([test "`echo 1 2 3 | xargs -n2 echo`" = "1 2 +3"], [am_cv_xargs_n_works=yes], [am_cv_xargs_n_works=no])]) +AS_IF([test "$am_cv_xargs_n_works" = yes], [am__xargs_n='xargs -n'], [dnl + am__xargs_n='am__xargs_n () { shift; sed "s/ /\\n/g" | while read am__xargs_n_arg; do "$@" "$am__xargs_n_arg"; done; }' +])dnl +AC_SUBST(am__xargs_n) +]) + m4_include([m4/00gnulib.m4]) m4_include([m4/__inline.m4]) m4_include([m4/absolute-header.m4]) m4_include([m4/alloca.m4]) m4_include([m4/arpa_inet_h.m4]) m4_include([m4/asm-underscore.m4]) +m4_include([m4/assert_h.m4]) m4_include([m4/atoll.m4]) m4_include([m4/btowc.m4]) m4_include([m4/builtin-expect.m4]) +m4_include([m4/c-bool.m4]) m4_include([m4/c-stack.m4]) m4_include([m4/calloc.m4]) m4_include([m4/clock_time.m4]) @@ -1166,13 +1265,16 @@ m4_include([m4/eealloc.m4]) m4_include([m4/environ.m4]) m4_include([m4/errno_h.m4]) m4_include([m4/error.m4]) +m4_include([m4/error_h.m4]) m4_include([m4/exponentd.m4]) m4_include([m4/extensions.m4]) m4_include([m4/extern-inline.m4]) +m4_include([m4/fclose.m4]) m4_include([m4/fcntl-o.m4]) m4_include([m4/fcntl.m4]) m4_include([m4/fcntl_h.m4]) m4_include([m4/fdopen.m4]) +m4_include([m4/fflush.m4]) m4_include([m4/filenamecat.m4]) m4_include([m4/flexmember.m4]) m4_include([m4/float_h.m4]) @@ -1203,6 +1305,7 @@ m4_include([m4/iconv_open.m4]) m4_include([m4/include_next.m4]) m4_include([m4/inet_pton.m4]) m4_include([m4/inline.m4]) +m4_include([m4/intl-thread-locale.m4]) m4_include([m4/intlmacosx.m4]) m4_include([m4/intmax_t.m4]) m4_include([m4/inttostr.m4]) @@ -1259,16 +1362,19 @@ m4_include([m4/nl_langinfo.m4]) m4_include([m4/nls.m4]) m4_include([m4/nocrash.m4]) m4_include([m4/nstrftime.m4]) +m4_include([m4/nullptr.m4]) m4_include([m4/off_t.m4]) m4_include([m4/open-cloexec.m4]) m4_include([m4/open-slash.m4]) m4_include([m4/open.m4]) m4_include([m4/pathmax.m4]) +m4_include([m4/perl.m4]) m4_include([m4/perror.m4]) m4_include([m4/pipe.m4]) m4_include([m4/po.m4]) m4_include([m4/printf.m4]) m4_include([m4/progtest.m4]) +m4_include([m4/pselect.m4]) m4_include([m4/pthread-thread.m4]) m4_include([m4/pthread_h.m4]) m4_include([m4/pthread_rwlock_rdlock.m4]) @@ -1286,10 +1392,10 @@ m4_include([m4/sched_h.m4]) m4_include([m4/select.m4]) m4_include([m4/setenv.m4]) m4_include([m4/setlocale_null.m4]) -m4_include([m4/sigaction.m4]) m4_include([m4/sigaltstack.m4]) m4_include([m4/signal_h.m4]) m4_include([m4/signalblocking.m4]) +m4_include([m4/sigsegv.m4]) m4_include([m4/size_max.m4]) m4_include([m4/sleep.m4]) m4_include([m4/snprintf.m4]) @@ -1303,12 +1409,12 @@ m4_include([m4/stat-time.m4]) m4_include([m4/stat.m4]) m4_include([m4/stdalign.m4]) m4_include([m4/stdarg.m4]) -m4_include([m4/stdbool.m4]) m4_include([m4/stddef_h.m4]) m4_include([m4/stdint.m4]) m4_include([m4/stdint_h.m4]) m4_include([m4/stdio_h.m4]) m4_include([m4/stdlib_h.m4]) +m4_include([m4/stpcpy.m4]) m4_include([m4/strcase.m4]) m4_include([m4/strerror.m4]) m4_include([m4/strerror_r.m4]) @@ -1331,6 +1437,7 @@ m4_include([m4/sys_wait_h.m4]) m4_include([m4/tempname.m4]) m4_include([m4/thread.m4]) m4_include([m4/threadlib.m4]) +m4_include([m4/time.m4]) m4_include([m4/time_h.m4]) m4_include([m4/time_r.m4]) m4_include([m4/time_rz.m4]) @@ -1341,7 +1448,6 @@ m4_include([m4/tzset.m4]) m4_include([m4/unistd_h.m4]) m4_include([m4/unlocked-io.m4]) m4_include([m4/vasnprintf.m4]) -m4_include([m4/vasprintf.m4]) m4_include([m4/version-etc.m4]) m4_include([m4/visibility.m4]) m4_include([m4/warn-on-use.m4]) @@ -1359,6 +1465,4 @@ m4_include([m4/wmempcpy.m4]) m4_include([m4/xalloc.m4]) m4_include([m4/xsize.m4]) m4_include([m4/xstrtol.m4]) -m4_include([m4/xvasprintf.m4]) -m4_include([m4/year2038.m4]) m4_include([m4/zzgnulib.m4]) diff --git a/bootstrap b/bootstrap index 7523f65..c6c4901 100755 --- a/bootstrap +++ b/bootstrap @@ -1,34 +1,67 @@ #! /bin/sh -# Print a version string. -scriptversion=2020-11-18.17; # UTC +# DO NOT EDIT! GENERATED AUTOMATICALLY! # Bootstrap this package from checked-out sources. -# Copyright (C) 2003-2021 Free Software Foundation, Inc. +scriptversion=2022-12-27.07; # UTC +# Copyright (C) 2003-2023 Free Software Foundation, Inc. +# # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. - +# # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +# Originally written by Paul Eggert. The canonical version of this +# script is maintained as top/bootstrap in gnulib. However, to be +# useful to your package, you should place a copy of it under version +# control in the top-level directory of your package. The intent is +# that all customization can be done with a bootstrap.conf file also +# maintained in your version control; gnulib comes with a template +# build-aux/bootstrap.conf to get you started. +# Please report bugs or propose patches to bug-gnulib@gnu.org. + +me="$0" +medir=`dirname "$me"` + +# Read the function library and the configuration. + +# A library of shell functions for autopull.sh, autogen.sh, and bootstrap. + +scriptlibversion=2023-01-06.19; # UTC + +# Copyright (C) 2003-2023 Free Software Foundation, Inc. +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# # You should have received a copy of the GNU General Public License # along with this program. If not, see . # Originally written by Paul Eggert. The canonical version of this -# script is maintained as build-aux/bootstrap in gnulib, however, to -# be useful to your project, you should place a copy of it under -# version control in the top-level directory of your project. The +# script is maintained as top/bootstrap-funclib.sh in gnulib. However, +# to be useful to your package, you should place a copy of it under +# version control in the top-level directory of your package. The # intent is that all customization can be done with a bootstrap.conf # file also maintained in your version control; gnulib comes with a # template build-aux/bootstrap.conf to get you started. -# Please report bugs or propose patches to bug-gnulib@gnu.org. - nl=' ' @@ -36,84 +69,17 @@ nl=' LC_ALL=C export LC_ALL -# Ensure that CDPATH is not set. Otherwise, the output from cd -# would cause trouble in at least one use below. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH - -local_gl_dir=gl - # Honor $PERL, but work even if there is none. PERL="${PERL-perl}" -me=$0 - -default_gnulib_url=git://git.sv.gnu.org/gnulib - -usage() { - cat </dev/null) +if test -z "$package"; then + package=$(sed -n "$extract_package_name" configure.ac) \ + || die 'cannot find package name in configure.ac' +fi gnulib_name=lib$package build_aux=build-aux @@ -238,15 +210,13 @@ COPYRIGHT_HOLDER='Free Software Foundation, Inc.' MSGID_BUGS_ADDRESS=bug-$package@gnu.org # Files we don't want to import. +# XXX Not used. excluded_files= # File that should exist in the top directory of a checked out hierarchy, # but not in a distribution tarball. checkout_only_file=README-hacking -# Whether to use copies instead of symlinks. -copy=false - # Set this to '.cvsignore .gitignore' in bootstrap.conf if you want # those files to be generated in directories like lib/, m4/, and po/. # Or set it to 'auto' to make this script select which to use based @@ -257,8 +227,13 @@ vc_ignore=auto # default. bootstrap_sync=false -# Use git to update gnulib sources -use_git=true +# Override the default configuration, if necessary. +# Make sure that bootstrap.conf is sourced from the current directory +# if we were invoked as "sh bootstrap". +conffile=`dirname "$me"`/bootstrap.conf +test -r "$conffile" && . "$conffile" + +# ------------------------- Build-time prerequisites ------------------------- check_exists() { if test "$1" = "--verbose"; then @@ -275,151 +250,6 @@ check_exists() { test $? -lt 126 } -# find_tool ENVVAR NAMES... -# ------------------------- -# Search for a required program. Use the value of ENVVAR, if set, -# otherwise find the first of the NAMES that can be run. -# If found, set ENVVAR to the program name, die otherwise. -# -# FIXME: code duplication, see also gnu-web-doc-update. -find_tool () -{ - find_tool_envvar=$1 - shift - find_tool_names=$@ - eval "find_tool_res=\$$find_tool_envvar" - if test x"$find_tool_res" = x; then - for i; do - if check_exists $i; then - find_tool_res=$i - break - fi - done - fi - if test x"$find_tool_res" = x; then - warn_ "one of these is required: $find_tool_names;" - die "alternatively set $find_tool_envvar to a compatible tool" - fi - eval "$find_tool_envvar=\$find_tool_res" - eval "export $find_tool_envvar" -} - -# Override the default configuration, if necessary. -# Make sure that bootstrap.conf is sourced from the current directory -# if we were invoked as "sh bootstrap". -case "$0" in - */*) test -r "$0.conf" && . "$0.conf" ;; - *) test -r "$0.conf" && . ./"$0.conf" ;; -esac - -if test "$vc_ignore" = auto; then - vc_ignore= - test -d .git && vc_ignore=.gitignore - test -d CVS && vc_ignore="$vc_ignore .cvsignore" -fi - -if test x"$gnulib_modules$gnulib_files$gnulib_extra_files" = x; then - use_gnulib=false -else - use_gnulib=true -fi - -# Translate configuration into internal form. - -# Parse options. - -for option -do - case $option in - --help) - usage - exit;; - --gnulib-srcdir=*) - GNULIB_SRCDIR=${option#--gnulib-srcdir=};; - --skip-po) - SKIP_PO=t;; - --force) - checkout_only_file=;; - --copy) - copy=true;; - --bootstrap-sync) - bootstrap_sync=true;; - --no-bootstrap-sync) - bootstrap_sync=false;; - --no-git) - use_git=false;; - *) - bootstrap_option_hook $option || die "$option: unknown option";; - esac -done - -$use_git || test -d "$GNULIB_SRCDIR" \ - || die "Error: --no-git requires --gnulib-srcdir" - -if test -n "$checkout_only_file" && test ! -r "$checkout_only_file"; then - die "Bootstrapping from a non-checked-out distribution is risky." -fi - -# Strip blank and comment lines to leave significant entries. -gitignore_entries() { - sed '/^#/d; /^$/d' "$@" -} - -# If $STR is not already on a line by itself in $FILE, insert it at the start. -# Entries are inserted at the start of the ignore list to ensure existing -# entries starting with ! are not overridden. Such entries support -# whitelisting exceptions after a more generic blacklist pattern. -insert_if_absent() { - file=$1 - str=$2 - test -f $file || touch $file - test -r $file || die "Error: failed to read ignore file: $file" - duplicate_entries=$(gitignore_entries $file | sort | uniq -d) - if [ "$duplicate_entries" ] ; then - die "Error: Duplicate entries in $file: " $duplicate_entries - fi - linesold=$(gitignore_entries $file | wc -l) - linesnew=$( { echo "$str"; cat $file; } | gitignore_entries | sort -u | wc -l) - if [ $linesold != $linesnew ] ; then - { echo "$str" | cat - $file > $file.bak && mv $file.bak $file; } \ - || die "insert_if_absent $file $str: failed" - fi -} - -# Adjust $PATTERN for $VC_IGNORE_FILE and insert it with -# insert_if_absent. -insert_vc_ignore() { - vc_ignore_file="$1" - pattern="$2" - case $vc_ignore_file in - *.gitignore) - # A .gitignore entry that does not start with '/' applies - # recursively to subdirectories, so prepend '/' to every - # .gitignore entry. - pattern=$(echo "$pattern" | sed s,^,/,);; - esac - insert_if_absent "$vc_ignore_file" "$pattern" -} - -# Die if there is no AC_CONFIG_AUX_DIR($build_aux) line in configure.ac. -found_aux_dir=no -grep '^[ ]*AC_CONFIG_AUX_DIR(\['"$build_aux"'\])' configure.ac \ - >/dev/null && found_aux_dir=yes -grep '^[ ]*AC_CONFIG_AUX_DIR('"$build_aux"')' configure.ac \ - >/dev/null && found_aux_dir=yes -test $found_aux_dir = yes \ - || die "configure.ac lacks 'AC_CONFIG_AUX_DIR([$build_aux])'; add it" - -# If $build_aux doesn't exist, create it now, otherwise some bits -# below will malfunction. If creating it, also mark it as ignored. -if test ! -d $build_aux; then - mkdir $build_aux - for dot_ig in x $vc_ignore; do - test $dot_ig = x && continue - insert_vc_ignore $dot_ig $build_aux - done -fi - # Note this deviates from the version comparison in automake # in that it treats 1.5 < 1.5.0, and treats 1.4.4a < 1.4-p3a # but this should suffice as we won't be specifying old @@ -447,7 +277,7 @@ sort_ver() { # sort -V is not generally available elif [ "$p2" -gt "$p1" ] 2>/dev/null; then # numeric comparison echo "$1 $2" else # numeric, then lexicographic comparison - lp=$(printf "$p1\n$p2\n" | LANG=C sort -n | tail -n1) + lp=$(printf "%s\n%s\n" "$p1" "$p2" | LANG=C sort -n | tail -n1) if [ "$lp" = "$p2" ]; then echo "$1 $2" else @@ -494,9 +324,9 @@ check_versions() { if test "$app" = libtool; then app=libtoolize fi - # Exempt git if --no-git is in effect. + # Exempt git if git is not needed. if test "$app" = git; then - $use_git || continue + $check_git || continue fi # Honor $APP variables ($TAR, $AUTOCONF, etc.) appvar=$(echo $app | LC_ALL=C tr '[a-z]-' '[A-Z]_') @@ -569,83 +399,89 @@ print_versions() { # can't depend on column -t } -# Find sha1sum, named gsha1sum on MacPorts, shasum on Mac OS X 10.6. -# Also find the compatible sha1 utility on the BSDs -if test x"$SKIP_PO" = x; then - find_tool SHA1SUM sha1sum gsha1sum shasum sha1 -fi - -use_libtool=0 -# We'd like to use grep -E, to see if any of LT_INIT, -# AC_PROG_LIBTOOL, AM_PROG_LIBTOOL is used in configure.ac, -# but that's not portable enough (e.g., for Solaris). -grep '^[ ]*A[CM]_PROG_LIBTOOL' configure.ac >/dev/null \ - && use_libtool=1 -grep '^[ ]*LT_INIT' configure.ac >/dev/null \ - && use_libtool=1 -if test $use_libtool = 1; then - find_tool LIBTOOLIZE glibtoolize libtoolize -fi +# check_build_prerequisites check_git +check_build_prerequisites() +{ + check_git="$1" -# gnulib-tool requires at least automake and autoconf. -# If either is not listed, add it (with minimum version) as a prerequisite. -case $buildreq in - *automake*) ;; - *) buildreq="automake 1.9 -$buildreq" ;; -esac -case $buildreq in - *autoconf*) ;; - *) buildreq="autoconf 2.59 + # gnulib-tool requires at least automake and autoconf. + # If either is not listed, add it (with minimum version) as a prerequisite. + case $buildreq in + *automake*) ;; + *) buildreq="automake 1.9 $buildreq" ;; -esac - -# When we can deduce that gnulib-tool will require patch, -# and when patch is not already listed as a prerequisite, add it, too. -if test -d "$local_gl_dir" \ - && ! find "$local_gl_dir" -name '*.diff' -exec false {} +; then + esac case $buildreq in - *patch*) ;; - *) buildreq="patch - + *autoconf*) ;; + *) buildreq="autoconf 2.59 $buildreq" ;; esac -fi -if ! printf "$buildreq" | check_versions; then - echo >&2 - if test -f README-prereq; then - die "See README-prereq for how to get the prerequisite programs" - else - die "Please install the prerequisite programs" + # When we can deduce that gnulib-tool will require patch, + # and when patch is not already listed as a prerequisite, add it, too. + if test -d "$local_gl_dir" \ + && ! find "$local_gl_dir" -name '*.diff' -exec false {} +; then + case $buildreq in + *patch*) ;; + *) buildreq="patch - +$buildreq" ;; + esac fi -fi -# Warn the user if autom4te appears to be broken; this causes known -# issues with at least gettext 0.18.3. -probe=$(echo 'm4_quote([hi])' | autom4te -l M4sugar -t 'm4_quote:$%' -) -if test "x$probe" != xhi; then - warn_ "WARNING: your autom4te wrapper eats stdin;" - warn_ "if bootstrap fails, consider upgrading your autotools" -fi + if ! printf '%s' "$buildreq" | check_versions; then + echo >&2 + if test -f README-prereq; then + die "See README-prereq for how to get the prerequisite programs" + else + die "Please install the prerequisite programs" + fi + fi -echo "$0: Bootstrapping from checked-out $package sources..." + # Warn the user if autom4te appears to be broken; this causes known + # issues with at least gettext 0.18.3. + probe=$(echo 'm4_quote([hi])' | autom4te -l M4sugar -t 'm4_quote:$%' -) + if test "x$probe" != xhi; then + warn_ "WARNING: your autom4te wrapper eats stdin;" + warn_ "if bootstrap fails, consider upgrading your autotools" + fi +} -# See if we can use gnulib's git-merge-changelog merge driver. -if $use_git && test -d .git && check_exists git; then - if git config merge.merge-changelog.driver >/dev/null ; then - : - elif check_exists git-merge-changelog; then - echo "$0: initializing git-merge-changelog driver" - git config merge.merge-changelog.name 'GNU-style ChangeLog merge driver' - git config merge.merge-changelog.driver 'git-merge-changelog %O %A %B' - else - echo "$0: consider installing git-merge-changelog from gnulib" +# find_tool ENVVAR NAMES... +# ------------------------- +# Search for a required program. Use the value of ENVVAR, if set, +# otherwise find the first of the NAMES that can be run. +# If found, set ENVVAR to the program name, die otherwise. +# +# FIXME: code duplication, see also gnu-web-doc-update. +find_tool () +{ + find_tool_envvar=$1 + shift + find_tool_names=$@ + eval "find_tool_res=\$$find_tool_envvar" + if test x"$find_tool_res" = x; then + for i; do + if check_exists $i; then + find_tool_res=$i + break + fi + done fi -fi + if test x"$find_tool_res" = x; then + warn_ "one of these is required: $find_tool_names;" + die "alternatively set $find_tool_envvar to a compatible tool" + fi + eval "$find_tool_envvar=\$find_tool_res" + eval "export $find_tool_envvar" +} +# --------------------- Preparing GNULIB_SRCDIR for use. --------------------- +# This is part of autopull.sh, but bootstrap needs it too, for self-upgrading. cleanup_gnulib() { status=$? + # XXX It's a bad idea to erase the submodule directory if it contains local + # modifications. rm -fr "$gnulib_path" exit $status } @@ -654,47 +490,28 @@ git_modules_config () { test -f .gitmodules && git config --file .gitmodules "$@" } -if $use_gnulib; then - if $use_git; then +prepare_GNULIB_SRCDIR () +{ + if test -n "$GNULIB_SRCDIR"; then + # Use GNULIB_SRCDIR directly. + # We already checked that $GNULIB_SRCDIR references a directory. + # Verify that it contains a gnulib checkout. + test -f "$GNULIB_SRCDIR/gnulib-tool" \ + || die "Error: --gnulib-srcdir or \$GNULIB_SRCDIR is specified, but does not contain gnulib-tool" + elif $use_git; then gnulib_path=$(git_modules_config submodule.gnulib.path) test -z "$gnulib_path" && gnulib_path=gnulib - fi - - # Get gnulib files. Populate $GNULIB_SRCDIR, possibly updating a - # submodule, for use in the rest of the script. - - case ${GNULIB_SRCDIR--} in - -) - # Note that $use_git is necessarily true in this case. - if git_modules_config submodule.gnulib.url >/dev/null; then - echo "$0: getting gnulib files..." - git submodule init -- "$gnulib_path" || exit $? - git submodule update -- "$gnulib_path" || exit $? - elif [ ! -d "$gnulib_path" ]; then - echo "$0: getting gnulib files..." - - trap cleanup_gnulib 1 2 13 15 - - shallow= - if test -z "$GNULIB_REVISION"; then - git clone -h 2>&1 | grep -- --depth > /dev/null && shallow='--depth 2' - fi - git clone $shallow ${GNULIB_URL:-$default_gnulib_url} "$gnulib_path" \ - || cleanup_gnulib + # Get gnulib files. Populate $gnulib_path, possibly updating a + # submodule, for use in the rest of the script. - trap - 1 2 13 15 - fi - GNULIB_SRCDIR=$gnulib_path - ;; - *) - # Use GNULIB_SRCDIR directly or as a reference. - if $use_git && test -d "$GNULIB_SRCDIR"/.git && \ - git_modules_config submodule.gnulib.url >/dev/null; then + if test -n "$GNULIB_REFDIR" && test -d "$GNULIB_REFDIR"/.git \ + && git_modules_config submodule.gnulib.url >/dev/null; then + # Use GNULIB_REFDIR as a reference. echo "$0: getting gnulib files..." if git submodule -h|grep -- --reference > /dev/null; then # Prefer the one-liner available in git 1.6.4 or newer. - git submodule update --init --reference "$GNULIB_SRCDIR" \ + git submodule update --init --reference "$GNULIB_REFDIR" \ "$gnulib_path" || exit $? else # This fallback allows at least git 1.5.5. @@ -704,18 +521,63 @@ if $use_gnulib; then else # Older git can't clone into an empty directory. rmdir "$gnulib_path" 2>/dev/null - git clone --reference "$GNULIB_SRCDIR" \ + git clone --reference "$GNULIB_REFDIR" \ "$(git_modules_config submodule.gnulib.url)" "$gnulib_path" \ && git submodule init -- "$gnulib_path" \ && git submodule update -- "$gnulib_path" \ || exit $? fi fi - GNULIB_SRCDIR=$gnulib_path + else + # GNULIB_REFDIR is not set or not usable. Ignore it. + if git_modules_config submodule.gnulib.url >/dev/null; then + echo "$0: getting gnulib files..." + git submodule init -- "$gnulib_path" || exit $? + git submodule update -- "$gnulib_path" || exit $? + + elif [ ! -d "$gnulib_path" ]; then + echo "$0: getting gnulib files..." + + trap cleanup_gnulib HUP INT PIPE TERM + + shallow= + if test -z "$GNULIB_REVISION"; then + if git clone -h 2>&1 | grep -- --depth > /dev/null; then + shallow='--depth 2' + fi + git clone $shallow ${GNULIB_URL:-$default_gnulib_url} "$gnulib_path" \ + || cleanup_gnulib + else + if git fetch -h 2>&1 | grep -- --depth > /dev/null; then + shallow='--depth 2' + fi + mkdir -p "$gnulib_path" + # Only want a shallow checkout of $GNULIB_REVISION, but git does not + # support cloning by commit hash. So attempt a shallow fetch by commit + # hash to minimize the amount of data downloaded and changes needed to + # be processed, which can drastically reduce download and processing + # time for checkout. If the fetch by commit fails, a shallow fetch can + # not be performed because we do not know what the depth of the commit + # is without fetching all commits. So fallback to fetching all commits. + git -C "$gnulib_path" init + git -C "$gnulib_path" remote add origin \ + ${GNULIB_URL:-$default_gnulib_url} + git -C "$gnulib_path" fetch $shallow origin "$GNULIB_REVISION" \ + || git -C "$gnulib_path" fetch origin \ + || cleanup_gnulib + git -C "$gnulib_path" reset --hard FETCH_HEAD + fi + + trap - HUP INT PIPE TERM + fi fi - ;; - esac + GNULIB_SRCDIR=$gnulib_path + # Verify that the submodule contains a gnulib checkout. + test -f "$gnulib_path/gnulib-tool" \ + || die "Error: $gnulib_path is supposed to contain a gnulib checkout, but does not contain gnulib-tool" + fi + # XXX Should this be done if $use_git is false? if test -d "$GNULIB_SRCDIR"/.git && test -n "$GNULIB_REVISION" \ && ! git_modules_config submodule.gnulib.url >/dev/null; then (cd "$GNULIB_SRCDIR" && git checkout "$GNULIB_REVISION") || cleanup_gnulib @@ -723,26 +585,242 @@ if $use_gnulib; then # $GNULIB_SRCDIR now points to the version of gnulib to use, and # we no longer need to use git or $gnulib_path below here. +} - if $bootstrap_sync; then - cmp -s "$0" "$GNULIB_SRCDIR/build-aux/bootstrap" || { - echo "$0: updating bootstrap and restarting..." - case $(sh -c 'echo "$1"' -- a) in - a) ignored=--;; - *) ignored=ignored;; - esac - exec sh -c \ - 'cp "$1" "$2" && shift && exec "${CONFIG_SHELL-/bin/sh}" "$@"' \ - $ignored "$GNULIB_SRCDIR/build-aux/bootstrap" \ - "$0" "$@" --no-bootstrap-sync +# -------- Upgrading bootstrap to the version found in GNULIB_SRCDIR. -------- + +upgrade_bootstrap () +{ + if test -f "$medir"/bootstrap-funclib.sh; then + update_lib=true + { cmp -s "$medir"/bootstrap "$GNULIB_SRCDIR/top/bootstrap" \ + && cmp -s "$medir"/bootstrap-funclib.sh "$GNULIB_SRCDIR/top/bootstrap-funclib.sh" \ + && cmp -s "$medir"/autopull.sh "$GNULIB_SRCDIR/top/autopull.sh" \ + && cmp -s "$medir"/autogen.sh "$GNULIB_SRCDIR/top/autogen.sh"; \ } - fi + else + update_lib=false + cmp -s "$medir"/bootstrap "$GNULIB_SRCDIR/build-aux/bootstrap" + fi || { + if $update_lib; then + echo "$0: updating bootstrap & companions and restarting..." + else + echo "$0: updating bootstrap and restarting..." + fi + case $(sh -c 'echo "$1"' -- a) in + a) ignored=--;; + *) ignored=ignored;; + esac + exec sh -c \ + '{ if '$update_lib' && test -f "$1"; then cp "$1" "$3"; else cp "$2" "$3"; fi; } && { if '$update_lib' && test -f "$4"; then cp "$4" "$5"; else rm -f "$5"; fi; } && { if '$update_lib' && test -f "$6"; then cp "$6" "$7"; else rm -f "$7"; fi; } && { if '$update_lib' && test -f "$8"; then cp "$8" "$9"; else rm -f "$9"; fi; } && shift && shift && shift && shift && shift && shift && shift && shift && shift && exec "${CONFIG_SHELL-/bin/sh}" "$@"' \ + $ignored \ + "$GNULIB_SRCDIR/top/bootstrap" "$GNULIB_SRCDIR/build-aux/bootstrap" "$medir/bootstrap" \ + "$GNULIB_SRCDIR/top/bootstrap-funclib.sh" "$medir/bootstrap-funclib.sh" \ + "$GNULIB_SRCDIR/top/autopull.sh" "$medir/autopull.sh" \ + "$GNULIB_SRCDIR/top/autogen.sh" "$medir/autogen.sh" \ + "$0" "$@" --no-bootstrap-sync + } +} + +# ---------------------------------------------------------------------------- - gnulib_tool=$GNULIB_SRCDIR/gnulib-tool - <$gnulib_tool || exit $? +if test x"$gnulib_modules$gnulib_files$gnulib_extra_files" = x; then + use_gnulib=false +else + use_gnulib=true fi -# Get translations. +# -------- Fetch auxiliary files from the network. -------------------------- + +autopull_usage() { + cat </dev/null 2>&1 && unset CDPATH + + # Parse options. + + # Use git to update gnulib sources + use_git=true + + for option + do + case $option in + --help) + autopull_usage + return;; + --version) + set -e + echo "autopull.sh $scriptlibversion" + echo "$copyright" + return 0 + ;; + --skip-po) + SKIP_PO=t;; + --force) + checkout_only_file=;; + --bootstrap-sync) + bootstrap_sync=true;; + --no-bootstrap-sync) + bootstrap_sync=false;; + --no-git) + use_git=false;; + *) + bootstrap_option_hook $option || die "$option: unknown option";; + esac + done + + $use_git || test -n "$GNULIB_SRCDIR" \ + || die "Error: --no-git requires \$GNULIB_SRCDIR environment variable or --gnulib-srcdir option" + test -z "$GNULIB_SRCDIR" || test -d "$GNULIB_SRCDIR" \ + || die "Error: \$GNULIB_SRCDIR environment variable or --gnulib-srcdir option is specified, but does not denote a directory" + + if test -n "$checkout_only_file" && test ! -r "$checkout_only_file"; then + die "Running this script from a non-checked-out distribution is risky." + fi + + check_build_prerequisites $use_git + + if $use_gnulib || $bootstrap_sync; then + prepare_GNULIB_SRCDIR + if $bootstrap_sync; then + upgrade_bootstrap + fi + fi + + # Find sha1sum, named gsha1sum on MacPorts, shasum on Mac OS X 10.6. + # Also find the compatible sha1 utility on the BSDs + if test x"$SKIP_PO" = x; then + find_tool SHA1SUM sha1sum gsha1sum shasum sha1 + fi + + # See if we can use gnulib's git-merge-changelog merge driver. + if $use_git && test -d .git && check_exists git; then + if git config merge.merge-changelog.driver >/dev/null ; then + : + elif check_exists git-merge-changelog; then + echo "$0: initializing git-merge-changelog driver" + git config merge.merge-changelog.name 'GNU-style ChangeLog merge driver' + git config merge.merge-changelog.driver 'git-merge-changelog %O %A %B' + else + echo "$0: consider installing git-merge-changelog from gnulib" + fi + fi + + case $SKIP_PO in + '') + if test -d po; then + update_po_files po $package || return + fi + + if test -d runtime-po; then + update_po_files runtime-po $package-runtime || return + fi;; + esac + + # --------------------------------------------------------------------------- + + bootstrap_post_pull_hook \ + || die "bootstrap_post_pull_hook failed" + + # Don't proceed if there are uninitialized submodules. In particular, + # autogen.sh will remove dangling links, which might be links into + # uninitialized submodules. + # But it's OK if the 'gnulib' submodule is uninitialized, as long as + # GNULIB_SRCDIR is set. + if $use_git; then + # Uninitialized submodules are listed with an initial dash. + uninitialized=`git submodule | grep '^-' | awk '{ print $2 }'` + if test -n "$GNULIB_SRCDIR"; then + uninitialized=`echo "$uninitialized" | grep -v '^gnulib$'` + fi + if test -n "$uninitialized"; then + die "Some git submodules are not initialized: "`echo "$uninitialized" | tr '\n' ',' | sed -e 's|,$|.|'`" Either use option '--no-git', or run 'git submodule update --init' and bootstrap again." + fi + fi + + if test -f "$medir"/autogen.sh; then + echo "$0: done. Now you can run '$medir/autogen.sh'." + fi +} + +# ----------------------------- Get translations. ----------------------------- download_po_files() { subdir=$1 @@ -787,16 +865,98 @@ update_po_files() { done } -case $SKIP_PO in -'') - if test -d po; then - update_po_files po $package || exit +# -------- Generate files automatically from existing sources. -------------- + +autogen_usage() { + cat < /dev/null 2>&1 + elif test -d .svn; then + svn log -r HEAD "$file" > /dev/null 2>&1 + elif test -d CVS; then + grep -F "/${file##*/}/" "$parent/CVS/Entries" 2>/dev/null | + grep '^/[^/]*/[0-9]' > /dev/null + else + warn_ "no version control for $file?" + false fi +} + +# Strip blank and comment lines to leave significant entries. +gitignore_entries() { + sed '/^#/d; /^$/d' "$@" +} - if test -d runtime-po; then - update_po_files runtime-po $package-runtime || exit - fi;; -esac +# If $STR is not already on a line by itself in $FILE, insert it at the start. +# Entries are inserted at the start of the ignore list to ensure existing +# entries starting with ! are not overridden. Such entries support +# whitelisting exceptions after a more generic blacklist pattern. +insert_if_absent() { + file=$1 + str=$2 + test -f $file || touch $file + test -r $file || die "Error: failed to read ignore file: $file" + duplicate_entries=$(gitignore_entries $file | sort | uniq -d) + if [ "$duplicate_entries" ] ; then + die "Error: Duplicate entries in $file: " $duplicate_entries + fi + linesold=$(gitignore_entries $file | wc -l) + linesnew=$( { echo "$str"; cat $file; } | gitignore_entries | sort -u | wc -l) + if [ $linesold != $linesnew ] ; then + { echo "$str" | cat - $file > $file.bak && mv $file.bak $file; } \ + || die "insert_if_absent $file $str: failed" + fi +} + +# Adjust $PATTERN for $VC_IGNORE_FILE and insert it with +# insert_if_absent. +insert_vc_ignore() { + vc_ignore_file="$1" + pattern="$2" + case $vc_ignore_file in + *.gitignore) + # A .gitignore entry that does not start with '/' applies + # recursively to subdirectories, so prepend '/' to every + # .gitignore entry. + pattern=$(echo "$pattern" | sed s,^,/,);; + esac + insert_if_absent "$vc_ignore_file" "$pattern" +} symlink_to_dir() { @@ -867,218 +1027,486 @@ symlink_to_dir() } } -version_controlled_file() { - parent=$1 - file=$2 - if test -d .git; then - git rm -n "$file" > /dev/null 2>&1 - elif test -d .svn; then - svn log -r HEAD "$file" > /dev/null 2>&1 - elif test -d CVS; then - grep -F "/${file##*/}/" "$parent/CVS/Entries" 2>/dev/null | - grep '^/[^/]*/[0-9]' > /dev/null - else - warn_ "no version control for $file?" - false +# Regenerate all autogeneratable files that are omitted from the +# version control repository. In particular, regenerate all +# aclocal.m4, config.h.in, Makefile.in, configure files with new +# versions of autoconf or automake. +autogen() +{ + # Ensure that CDPATH is not set. Otherwise, the output from cd + # would cause trouble in at least one use below. + (unset CDPATH) >/dev/null 2>&1 && unset CDPATH + + # Environment variables that may be set by the user. + : "${AUTOPOINT=autopoint}" + : "${AUTORECONF=autoreconf}" + + if test "$vc_ignore" = auto; then + vc_ignore= + test -d .git && vc_ignore=.gitignore + test -d CVS && vc_ignore="$vc_ignore .cvsignore" fi -} -# NOTE: we have to be careful to run both autopoint and libtoolize -# before gnulib-tool, since gnulib-tool is likely to provide newer -# versions of files "installed" by these two programs. -# Then, *after* gnulib-tool (see below), we have to be careful to -# run autoreconf in such a way that it does not run either of these -# two just-pre-run programs. -# Import from gettext. -with_gettext=yes -grep '^[ ]*AM_GNU_GETTEXT_VERSION(' configure.ac >/dev/null || \ - with_gettext=no + # Parse options. + + # Whether to use copies instead of symlinks. + copy=false + + for option + do + case $option in + --help) + autogen_usage + return;; + --version) + set -e + echo "autogen.sh $scriptlibversion" + echo "$copyright" + return 0 + ;; + --force) + checkout_only_file=;; + --copy) + copy=true;; + *) + bootstrap_option_hook $option || die "$option: unknown option";; + esac + done -if test $with_gettext = yes || test $use_libtool = 1; then + test -z "$GNULIB_SRCDIR" || test -d "$GNULIB_SRCDIR" \ + || die "Error: \$GNULIB_SRCDIR environment variable or --gnulib-srcdir option is specified, but does not denote a directory" - tempbase=.bootstrap$$ - trap "rm -f $tempbase.0 $tempbase.1" 1 2 13 15 + if test -n "$checkout_only_file" && test ! -r "$checkout_only_file"; then + die "Running this script from a non-checked-out distribution is risky." + fi - > $tempbase.0 > $tempbase.1 && - find . ! -type d -print | sort > $tempbase.0 || exit + if $use_gnulib; then + if test -z "$GNULIB_SRCDIR"; then + gnulib_path=$(test -f .gitmodules && git config --file .gitmodules submodule.gnulib.path) + test -z "$gnulib_path" && gnulib_path=gnulib + GNULIB_SRCDIR=$gnulib_path + fi + fi - if test $with_gettext = yes; then - # Released autopoint has the tendency to install macros that have been - # obsoleted in current gnulib, so run this before gnulib-tool. - echo "$0: $AUTOPOINT --force" - $AUTOPOINT --force || exit + # Die if there is no AC_CONFIG_AUX_DIR($build_aux) line in configure.ac. + found_aux_dir=no + grep '^[ ]*AC_CONFIG_AUX_DIR(\['"$build_aux"'])' configure.ac \ + >/dev/null && found_aux_dir=yes + grep '^[ ]*AC_CONFIG_AUX_DIR('"$build_aux"')' configure.ac \ + >/dev/null && found_aux_dir=yes + test $found_aux_dir = yes \ + || die "configure.ac lacks 'AC_CONFIG_AUX_DIR([$build_aux])'; add it" + + # If $build_aux doesn't exist, create it now, otherwise some bits + # below will malfunction. If creating it, also mark it as ignored. + if test ! -d $build_aux; then + mkdir $build_aux + for dot_ig in x $vc_ignore; do + test $dot_ig = x && continue + insert_vc_ignore $dot_ig $build_aux + done fi - # Autoreconf runs aclocal before libtoolize, which causes spurious - # warnings if the initial aclocal is confused by the libtoolized - # (or worse out-of-date) macro directory. - # libtoolize 1.9b added the --install option; but we support back - # to libtoolize 1.5.22, where the install action was default. + check_build_prerequisites false + + use_libtool=0 + # We'd like to use grep -E, to see if any of LT_INIT, + # AC_PROG_LIBTOOL, AM_PROG_LIBTOOL is used in configure.ac, + # but that's not portable enough (e.g., for Solaris). + grep '^[ ]*A[CM]_PROG_LIBTOOL' configure.ac >/dev/null \ + && use_libtool=1 + grep '^[ ]*LT_INIT' configure.ac >/dev/null \ + && use_libtool=1 if test $use_libtool = 1; then - install= - case $($LIBTOOLIZE --help) in - *--install*) install=--install ;; - esac - echo "running: $LIBTOOLIZE $install --copy" - $LIBTOOLIZE $install --copy + find_tool LIBTOOLIZE glibtoolize libtoolize fi - find . ! -type d -print | sort >$tempbase.1 - old_IFS=$IFS - IFS=$nl - for file in $(comm -13 $tempbase.0 $tempbase.1); do - IFS=$old_IFS - parent=${file%/*} - version_controlled_file "$parent" "$file" || { - for dot_ig in x $vc_ignore; do - test $dot_ig = x && continue - ig=$parent/$dot_ig - insert_vc_ignore "$ig" "${file##*/}" - done - } - done - IFS=$old_IFS + if $use_gnulib; then + gnulib_tool=$GNULIB_SRCDIR/gnulib-tool + <$gnulib_tool || return + fi - rm -f $tempbase.0 $tempbase.1 - trap - 1 2 13 15 -fi + # NOTE: we have to be careful to run both autopoint and libtoolize + # before gnulib-tool, since gnulib-tool is likely to provide newer + # versions of files "installed" by these two programs. + # Then, *after* gnulib-tool (see below), we have to be careful to + # run autoreconf in such a way that it does not run either of these + # two just-pre-run programs. -# Import from gnulib. - -if $use_gnulib; then - gnulib_tool_options="\ - --no-changelog\ - --aux-dir=$build_aux\ - --doc-base=$doc_base\ - --lib=$gnulib_name\ - --m4-base=$m4_base/\ - --source-base=$source_base/\ - --tests-base=$tests_base\ - --local-dir=$local_gl_dir\ - $gnulib_tool_option_extras\ - " - if test $use_libtool = 1; then - case "$gnulib_tool_options " in - *' --libtool '*) ;; - *) gnulib_tool_options="$gnulib_tool_options --libtool" ;; - esac - fi - echo "$0: $gnulib_tool $gnulib_tool_options --import ..." - $gnulib_tool $gnulib_tool_options --import $gnulib_modules \ - || die "gnulib-tool failed" + # Import from gettext. + with_gettext=yes + grep '^[ ]*AM_GNU_GETTEXT_VERSION(' configure.ac >/dev/null || \ + with_gettext=no - for file in $gnulib_files; do - symlink_to_dir "$GNULIB_SRCDIR" $file \ - || die "failed to symlink $file" - done -fi + if test $with_gettext = yes || test $use_libtool = 1; then -bootstrap_post_import_hook \ - || die "bootstrap_post_import_hook failed" + tempbase=.bootstrap$$ + trap "rm -f $tempbase.0 $tempbase.1" HUP INT PIPE TERM -# Don't proceed if there are uninitialized submodules. In particular, -# the next step will remove dangling links, which might be links into -# uninitialized submodules. -# -# Uninitialized submodules are listed with an initial dash. -if $use_git && git submodule | grep '^-' >/dev/null; then - die "some git submodules are not initialized. " \ - "Run 'git submodule update --init' and bootstrap again." -fi + > $tempbase.0 > $tempbase.1 && + find . ! -type d -print | sort > $tempbase.0 || return -# Remove any dangling symlink matching "*.m4" or "*.[ch]" in some -# gnulib-populated directories. Such .m4 files would cause aclocal to fail. -# The following requires GNU find 4.2.3 or newer. Considering the usual -# portability constraints of this script, that may seem a very demanding -# requirement, but it should be ok. Ignore any failure, which is fine, -# since this is only a convenience to help developers avoid the relatively -# unusual case in which a symlinked-to .m4 file is git-removed from gnulib -# between successive runs of this script. -find "$m4_base" "$source_base" \ - -depth \( -name '*.m4' -o -name '*.[ch]' \) \ - -type l -xtype l -delete > /dev/null 2>&1 - -# Invoke autoreconf with --force --install to ensure upgrades of tools -# such as ylwrap. -AUTORECONFFLAGS="--verbose --install --force -I $m4_base $ACLOCAL_FLAGS" - -# Some systems (RHEL 5) are using ancient autotools, for which the -# --no-recursive option had not been invented. Detect that lack and -# omit the option when it's not supported. FIXME in 2017: remove this -# hack when RHEL 5 autotools are updated, or when they become irrelevant. -case $($AUTORECONF --help) in - *--no-recursive*) AUTORECONFFLAGS="$AUTORECONFFLAGS --no-recursive";; -esac - -# Tell autoreconf not to invoke autopoint or libtoolize; they were run above. -echo "running: AUTOPOINT=true LIBTOOLIZE=true $AUTORECONF $AUTORECONFFLAGS" -AUTOPOINT=true LIBTOOLIZE=true $AUTORECONF $AUTORECONFFLAGS \ - || die "autoreconf failed" - -# Get some extra files from gnulib, overriding existing files. -for file in $gnulib_extra_files; do - case $file in - */INSTALL) dst=INSTALL;; - build-aux/*) dst=$build_aux/${file#build-aux/};; - *) dst=$file;; - esac - symlink_to_dir "$GNULIB_SRCDIR" $file $dst \ - || die "failed to symlink $file" -done + if test $with_gettext = yes; then + # Released autopoint has the tendency to install macros that have been + # obsoleted in current gnulib, so run this before gnulib-tool. + echo "$0: $AUTOPOINT --force" + $AUTOPOINT --force || return + fi -if test $with_gettext = yes; then - # Create gettext configuration. - echo "$0: Creating po/Makevars from po/Makevars.template ..." - rm -f po/Makevars - sed ' - /^EXTRA_LOCALE_CATEGORIES *=/s/=.*/= '"$EXTRA_LOCALE_CATEGORIES"'/ - /^COPYRIGHT_HOLDER *=/s/=.*/= '"$COPYRIGHT_HOLDER"'/ - /^MSGID_BUGS_ADDRESS *=/s|=.*|= '"$MSGID_BUGS_ADDRESS"'| - /^XGETTEXT_OPTIONS *=/{ - s/$/ \\/ - a\ - '"$XGETTEXT_OPTIONS"' $${end_of_xgettext_options+} - } - ' po/Makevars.template >po/Makevars \ - || die 'cannot generate po/Makevars' - - # If the 'gettext' module is in use, grab the latest Makefile.in.in. - # If only the 'gettext-h' module is in use, assume autopoint already - # put the correct version of this file into place. - case $gnulib_modules in - *gettext-h*) ;; - *gettext*) - cp $GNULIB_SRCDIR/build-aux/po/Makefile.in.in po/Makefile.in.in \ - || die "cannot create po/Makefile.in.in" - ;; + # Autoreconf runs aclocal before libtoolize, which causes spurious + # warnings if the initial aclocal is confused by the libtoolized + # (or worse out-of-date) macro directory. + # libtoolize 1.9b added the --install option; but we support back + # to libtoolize 1.5.22, where the install action was default. + if test $use_libtool = 1; then + install= + case $($LIBTOOLIZE --help) in + *--install*) install=--install ;; + esac + echo "running: $LIBTOOLIZE $install --copy" + $LIBTOOLIZE $install --copy + fi + + find . ! -type d -print | sort >$tempbase.1 + old_IFS=$IFS + IFS=$nl + for file in $(comm -13 $tempbase.0 $tempbase.1); do + IFS=$old_IFS + parent=${file%/*} + version_controlled_file "$parent" "$file" || { + for dot_ig in x $vc_ignore; do + test $dot_ig = x && continue + ig=$parent/$dot_ig + insert_vc_ignore "$ig" "${file##*/}" + done + } + done + IFS=$old_IFS + + rm -f $tempbase.0 $tempbase.1 + trap - HUP INT PIPE TERM + fi + + # Import from gnulib. + + if $use_gnulib; then + gnulib_tool_options="\ + --no-changelog\ + --aux-dir=$build_aux\ + --doc-base=$doc_base\ + --lib=$gnulib_name\ + --m4-base=$m4_base/\ + --source-base=$source_base/\ + --tests-base=$tests_base\ + --local-dir=$local_gl_dir\ + $gnulib_tool_option_extras\ + " + if test $use_libtool = 1; then + case "$gnulib_tool_options " in + *' --libtool '*) ;; + *) gnulib_tool_options="$gnulib_tool_options --libtool" ;; + esac + fi + echo "$0: $gnulib_tool $gnulib_tool_options --import ..." + $gnulib_tool $gnulib_tool_options --import $gnulib_modules \ + || die "gnulib-tool failed" + + for file in $gnulib_files; do + symlink_to_dir "$GNULIB_SRCDIR" $file \ + || die "failed to symlink $file" + done + fi + + bootstrap_post_import_hook \ + || die "bootstrap_post_import_hook failed" + + # Remove any dangling symlink matching "*.m4" or "*.[ch]" in some + # gnulib-populated directories. Such .m4 files would cause aclocal to fail. + # The following requires GNU find 4.2.3 or newer. Considering the usual + # portability constraints of this script, that may seem a very demanding + # requirement, but it should be ok. Ignore any failure, which is fine, + # since this is only a convenience to help developers avoid the relatively + # unusual case in which a symlinked-to .m4 file is git-removed from gnulib + # between successive runs of this script. + find "$m4_base" "$source_base" \ + -depth \( -name '*.m4' -o -name '*.[ch]' \) \ + -type l -xtype l -delete > /dev/null 2>&1 + + # Invoke autoreconf with --force --install to ensure upgrades of tools + # such as ylwrap. + AUTORECONFFLAGS="--verbose --install --force -I $m4_base $ACLOCAL_FLAGS" + + # Some systems (RHEL 5) are using ancient autotools, for which the + # --no-recursive option had not been invented. Detect that lack and + # omit the option when it's not supported. FIXME in 2017: remove this + # hack when RHEL 5 autotools are updated, or when they become irrelevant. + case $($AUTORECONF --help) in + *--no-recursive*) AUTORECONFFLAGS="$AUTORECONFFLAGS --no-recursive";; esac - if test -d runtime-po; then - # Similarly for runtime-po/Makevars, but not quite the same. - rm -f runtime-po/Makevars + # Tell autoreconf not to invoke autopoint or libtoolize; they were run above. + echo "running: AUTOPOINT=true LIBTOOLIZE=true $AUTORECONF $AUTORECONFFLAGS" + AUTOPOINT=true LIBTOOLIZE=true $AUTORECONF $AUTORECONFFLAGS \ + || die "autoreconf failed" + + # Get some extra files from gnulib, overriding existing files. + for file in $gnulib_extra_files; do + case $file in + */INSTALL) dst=INSTALL;; + build-aux/*) dst=$build_aux/${file#build-aux/};; + *) dst=$file;; + esac + symlink_to_dir "$GNULIB_SRCDIR" $file $dst \ + || die "failed to symlink $file" + done + + if test $with_gettext = yes; then + # Create gettext configuration. + echo "$0: Creating po/Makevars from po/Makevars.template ..." + rm -f po/Makevars sed ' - /^DOMAIN *=.*/s/=.*/= '"$package"'-runtime/ - /^subdir *=.*/s/=.*/= runtime-po/ - /^MSGID_BUGS_ADDRESS *=/s/=.*/= bug-'"$package"'@gnu.org/ + /^EXTRA_LOCALE_CATEGORIES *=/s/=.*/= '"$EXTRA_LOCALE_CATEGORIES"'/ + /^COPYRIGHT_HOLDER *=/s/=.*/= '"$COPYRIGHT_HOLDER"'/ + /^MSGID_BUGS_ADDRESS *=/s|=.*|= '"$MSGID_BUGS_ADDRESS"'| /^XGETTEXT_OPTIONS *=/{ s/$/ \\/ a\ - '"$XGETTEXT_OPTIONS_RUNTIME"' $${end_of_xgettext_options+} + '"$XGETTEXT_OPTIONS"' $${end_of_xgettext_options+} } - ' po/Makevars.template >runtime-po/Makevars \ - || die 'cannot generate runtime-po/Makevars' + ' po/Makevars.template >po/Makevars \ + || die 'cannot generate po/Makevars' + + # If the 'gettext' module is in use, grab the latest Makefile.in.in. + # If only the 'gettext-h' module is in use, assume autopoint already + # put the correct version of this file into place. + case $gnulib_modules in + *gettext-h*) ;; + *gettext*) + cp $GNULIB_SRCDIR/build-aux/po/Makefile.in.in po/Makefile.in.in \ + || die "cannot create po/Makefile.in.in" + ;; + esac + + if test -d runtime-po; then + # Similarly for runtime-po/Makevars, but not quite the same. + rm -f runtime-po/Makevars + sed ' + /^DOMAIN *=.*/s/=.*/= '"$package"'-runtime/ + /^subdir *=.*/s/=.*/= runtime-po/ + /^MSGID_BUGS_ADDRESS *=/s/=.*/= bug-'"$package"'@gnu.org/ + /^XGETTEXT_OPTIONS *=/{ + s/$/ \\/ + a\ + '"$XGETTEXT_OPTIONS_RUNTIME"' $${end_of_xgettext_options+} + } + ' po/Makevars.template >runtime-po/Makevars \ + || die 'cannot generate runtime-po/Makevars' - # Copy identical files from po to runtime-po. - (cd po && cp -p Makefile.in.in *-quot *.header *.sed *.sin ../runtime-po) + # Copy identical files from po to runtime-po. + (cd po && cp -p Makefile.in.in *-quot *.header *.sed *.sin ../runtime-po) + fi fi + + bootstrap_epilogue + + echo "$0: done. Now you can run './configure'." +} + +# ---------------------------------------------------------------------------- + +# Local Variables: +# eval: (add-hook 'before-save-hook 'time-stamp) +# time-stamp-start: "scriptlibversion=" +# time-stamp-format: "%:y-%02m-%02d.%02H" +# time-stamp-time-zone: "UTC0" +# time-stamp-end: "; # UTC" +# End: + +usage() { + cat < 1} qw (alpha beta stable); my @archive_suffixes = qw (tar.gz tar.bz2 tar.lz tar.lzma tar.xz); -my %digest_classes = - ( - 'md5' => (eval { require Digest::MD5; } and 'Digest::MD5'), - 'sha1' => ((eval { require Digest::SHA; } and 'Digest::SHA') - or (eval { require Digest::SHA1; } and 'Digest::SHA1')) - ); my $srcdir = '.'; sub usage ($) @@ -96,7 +90,11 @@ The following are optional: VERSION is the result of running git describe in the gnulib source directory. required if gnulib is in TOOL_LIST. - --no-print-checksums do not emit MD5 or SHA1 checksums + --gpg-key-email=EMAIL The email address of the key used to + sign the tarballs + --gpg-keyring-url=URL URL pointing to keyring containing the key used + to sign the tarballs + --no-print-checksums do not emit SHA1 or SHA256 checksums --archive-suffix=SUF add SUF to the list of archive suffixes --mail-headers=HEADERS a space-separated list of mail headers, e.g., To: x\@example.com Cc: y-announce\@example.com,... @@ -163,31 +161,37 @@ sub print_locations ($\@\%@) =item C. +Print the SHA1 and SHA256 signature section for each C<@file>. =cut +# This digest function omits the "=" padding that is required by cksum, +# so add the 0..2 bytes of padding required for each of Digest's algorithms. +sub digest_file_base64_wrap ($$) +{ + my ($file, $alg) = @_; + my $h = digest_file_base64($file, $alg); + $alg =~ tr{-}{}d; + my %pad = (MD5 => 2, SHA1 => 1, SHA256 => 1, SHA384 => 0, SHA512 => 2); + return $h . '=' x $pad{$alg}; +} + sub print_checksums (@) { my (@file) = @_; - print "Here are the MD5 and SHA1 checksums:\n"; + print "Here are the SHA1 and SHA256 checksums:\n"; print "\n"; - foreach my $meth (qw (md5 sha1)) + use Digest::file qw(digest_file_hex digest_file_base64); + + foreach my $f (@file) { - my $class = $digest_classes{$meth} or next; - foreach my $f (@file) - { - open IN, '<', $f - or die "$ME: $f: cannot open for reading: $!\n"; - binmode IN; - my $dig = $class->new->addfile(*IN)->hexdigest; - close IN; - print "$dig $f\n"; - } + print ' ', digest_file_hex ($f, "SHA-1"), " $f\n"; + print ' ', digest_file_base64_wrap ($f, "SHA-256"), " $f\n"; } - print "\n"; + print "\nVerify the base64 SHA256 checksum with cksum -a sha256 --check\n"; + print "from coreutils-9.2 or OpenBSD's cksum since 2007.\n\n"; } =item C \$prev_version, 'current-version=s' => \$curr_version, 'gpg-key-id=s' => \$gpg_key_id, + 'gpg-key-email=s' => \$gpg_key_email, + 'gpg-keyring-url=s' => \$gpg_keyring_url, 'url-directory=s' => \@url_dir_list, 'news=s' => \@news_file, 'srcdir=s' => \$srcdir, @@ -448,11 +488,15 @@ sub get_tool_versions ($$) my @tool_list = split ',', $bootstrap_tools if $bootstrap_tools; - grep (/^gnulib$/, @tool_list) ^ defined $gnulib_version + grep (/^gnulib$/, @tool_list) && ! defined $gnulib_version and (warn "when specifying gnulib as a tool, you must also specify\n" . "--gnulib-version=V, where V is the result of running git describe\n" . "in the gnulib source directory.\n"), $fail = 1; + ! grep (/^gnulib$/, @tool_list) && defined $gnulib_version + and (warn "with --gnulib-version=V you must use --bootstrap-tools=...\n" + . "including gnulib in that list"), $fail = 1; + !$release_type || exists $valid_release_types{$release_type} or (warn "'$release_type': invalid release type\n"), $fail = 1; @@ -492,16 +536,54 @@ sub get_tool_versions ($$) ${headers}Subject: $my_distdir released [$release_type] <\#secure method=pgpmime mode=sign> +This is to announce $package_name-$curr_version, a $release_type release. FIXME: put comments here EOF + my $v0 = $prev_version; + my $v1 = $curr_version; + + (my $first_name = `git config --global user.name|cut -d' ' -f1`) + =~ m{\S} or die "no name? set user.name in ~/.gitconfig\n"; + + chomp (my $n_ci = `git rev-list "v$v0..v$v1" | wc -l`); + chomp (my $n_p = `git shortlog "v$v0..v$v1" | grep -c '^[^ ]'`); + + my $prev_release_date = `git log --pretty=%ct -1 "v$v0"`; + my $this_release_date = `git log --pretty=%ct -1 "v$v1"`; + my $n_seconds = $this_release_date - $prev_release_date; + my $time_since_prev = readable_interval $n_seconds; + my $names = `git shortlog "v$v0..v$v1"|perl -lne '/^(\\w.*):/ and print " ".\$1'`; + + print <. # # This program is free software; you can redistribute it and/or modify @@ -256,6 +256,7 @@ EOF exit $? ;; cl | *[/\\]cl | cl.exe | *[/\\]cl.exe | \ + clang-cl | *[/\\]clang-cl | clang-cl.exe | *[/\\]clang-cl.exe | \ icl | *[/\\]icl | icl.exe | *[/\\]icl.exe ) func_cl_wrapper "$@" # Doesn't return... ;; diff --git a/build-aux/config.guess b/build-aux/config.guess index e81d3ae..69188da 100755 --- a/build-aux/config.guess +++ b/build-aux/config.guess @@ -1,14 +1,14 @@ #! /bin/sh # Attempt to guess a canonical system name. -# Copyright 1992-2021 Free Software Foundation, Inc. +# Copyright 1992-2023 Free Software Foundation, Inc. # shellcheck disable=SC2006,SC2268 # see below for rationale -timestamp='2021-06-03' +timestamp='2023-01-01' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or +# the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but @@ -60,7 +60,7 @@ version="\ GNU config.guess ($timestamp) Originally written by Per Bothner. -Copyright 1992-2021 Free Software Foundation, Inc. +Copyright 1992-2023 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." @@ -437,7 +437,7 @@ case $UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION in # This test works for both compilers. if test "$CC_FOR_BUILD" != no_compiler_found; then if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ - (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ + (CCOPTS="" $CC_FOR_BUILD -m64 -E - 2>/dev/null) | \ grep IS_64BIT_ARCH >/dev/null then SUN_ARCH=x86_64 @@ -929,6 +929,9 @@ EOF i*:PW*:*) GUESS=$UNAME_MACHINE-pc-pw32 ;; + *:SerenityOS:*:*) + GUESS=$UNAME_MACHINE-pc-serenity + ;; *:Interix*:*) case $UNAME_MACHINE in x86) @@ -963,6 +966,12 @@ EOF GNU_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'` GUESS=$UNAME_MACHINE-unknown-$GNU_SYS$GNU_REL-$LIBC ;; + x86_64:[Mm]anagarm:*:*|i?86:[Mm]anagarm:*:*) + GUESS="$UNAME_MACHINE-pc-managarm-mlibc" + ;; + *:[Mm]anagarm:*:*) + GUESS="$UNAME_MACHINE-unknown-managarm-mlibc" + ;; *:Minix:*:*) GUESS=$UNAME_MACHINE-unknown-minix ;; @@ -1033,7 +1042,7 @@ EOF k1om:Linux:*:*) GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; - loongarch32:Linux:*:* | loongarch64:Linux:*:* | loongarchx32:Linux:*:*) + loongarch32:Linux:*:* | loongarch64:Linux:*:*) GUESS=$UNAME_MACHINE-unknown-linux-$LIBC ;; m32r*:Linux:*:*) @@ -1148,16 +1157,27 @@ EOF ;; x86_64:Linux:*:*) set_cc_for_build + CPU=$UNAME_MACHINE LIBCABI=$LIBC if test "$CC_FOR_BUILD" != no_compiler_found; then - if (echo '#ifdef __ILP32__'; echo IS_X32; echo '#endif') | \ - (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ - grep IS_X32 >/dev/null - then - LIBCABI=${LIBC}x32 - fi + ABI=64 + sed 's/^ //' << EOF > "$dummy.c" + #ifdef __i386__ + ABI=x86 + #else + #ifdef __ILP32__ + ABI=x32 + #endif + #endif +EOF + cc_set_abi=`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^ABI' | sed 's, ,,g'` + eval "$cc_set_abi" + case $ABI in + x86) CPU=i686 ;; + x32) LIBCABI=${LIBC}x32 ;; + esac fi - GUESS=$UNAME_MACHINE-pc-linux-$LIBCABI + GUESS=$CPU-pc-linux-$LIBCABI ;; xtensa*:Linux:*:*) GUESS=$UNAME_MACHINE-unknown-linux-$LIBC @@ -1364,8 +1384,11 @@ EOF BePC:Haiku:*:*) # Haiku running on Intel PC compatible. GUESS=i586-pc-haiku ;; - x86_64:Haiku:*:*) - GUESS=x86_64-unknown-haiku + ppc:Haiku:*:*) # Haiku running on Apple PowerPC + GUESS=powerpc-apple-haiku + ;; + *:Haiku:*:*) # Haiku modern gcc (not bound by BeOS compat) + GUESS=$UNAME_MACHINE-unknown-haiku ;; SX-4:SUPER-UX:*:*) GUESS=sx4-nec-superux$UNAME_RELEASE @@ -1522,6 +1545,9 @@ EOF i*86:rdos:*:*) GUESS=$UNAME_MACHINE-pc-rdos ;; + i*86:Fiwix:*:*) + GUESS=$UNAME_MACHINE-pc-fiwix + ;; *:AROS:*:*) GUESS=$UNAME_MACHINE-unknown-aros ;; diff --git a/build-aux/config.rpath b/build-aux/config.rpath index 4b7dc49..1e2595f 100755 --- a/build-aux/config.rpath +++ b/build-aux/config.rpath @@ -2,7 +2,7 @@ # Output a system dependent set of variables, describing how to set the # run time search path of shared libraries in an executable. # -# Copyright 1996-2021 Free Software Foundation, Inc. +# Copyright 1996-2023 Free Software Foundation, Inc. # Taken from GNU libtool, 2001 # Originally by Gordon Matzigkeit , 1996 # diff --git a/build-aux/config.sub b/build-aux/config.sub index d80c5d7..de4259e 100755 --- a/build-aux/config.sub +++ b/build-aux/config.sub @@ -1,14 +1,14 @@ #! /bin/sh # Configuration validation subroutine script. -# Copyright 1992-2021 Free Software Foundation, Inc. +# Copyright 1992-2023 Free Software Foundation, Inc. # shellcheck disable=SC2006,SC2268 # see below for rationale -timestamp='2021-07-03' +timestamp='2023-01-21' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or +# the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but @@ -76,7 +76,7 @@ Report bugs and patches to ." version="\ GNU config.sub ($timestamp) -Copyright 1992-2021 Free Software Foundation, Inc. +Copyright 1992-2023 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." @@ -121,9 +121,11 @@ esac # Split fields of configuration type # shellcheck disable=SC2162 +saved_IFS=$IFS IFS="-" read field1 field2 field3 field4 <&2 exit 1 @@ -1755,16 +1778,27 @@ esac # As a final step for OS-related things, validate the OS-kernel combination # (given a valid OS), if there is a kernel. case $kernel-$os in - linux-gnu* | linux-dietlibc* | linux-android* | linux-newlib* | linux-musl* | linux-uclibc* ) + linux-gnu* | linux-dietlibc* | linux-android* | linux-newlib* \ + | linux-musl* | linux-relibc* | linux-uclibc* | linux-mlibc* ) ;; uclinux-uclibc* ) ;; - -dietlibc* | -newlib* | -musl* | -uclibc* ) + managarm-mlibc* | managarm-kernel* ) + ;; + -dietlibc* | -newlib* | -musl* | -relibc* | -uclibc* | -mlibc* ) # These are just libc implementations, not actual OSes, and thus # require a kernel. echo "Invalid configuration \`$1': libc \`$os' needs explicit kernel." 1>&2 exit 1 ;; + -kernel* ) + echo "Invalid configuration \`$1': \`$os' needs explicit kernel." 1>&2 + exit 1 + ;; + *-kernel* ) + echo "Invalid configuration \`$1': \`$kernel' does not support \`$os'." 1>&2 + exit 1 + ;; kfreebsd*-gnu* | kopensolaris*-gnu*) ;; vxworks-simlinux | vxworks-simwindows | vxworks-spe) diff --git a/build-aux/depcomp b/build-aux/depcomp index 715e343..ce5c2f7 100755 --- a/build-aux/depcomp +++ b/build-aux/depcomp @@ -1,9 +1,9 @@ #! /bin/sh # depcomp - compile a program generating dependencies as side-effects -scriptversion=2018-03-07.03; # UTC +scriptversion=2022-09-18.14; # UTC -# Copyright (C) 1999-2021 Free Software Foundation, Inc. +# Copyright (C) 1999-2023 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -113,7 +113,6 @@ nl=' # These definitions help. upper=ABCDEFGHIJKLMNOPQRSTUVWXYZ lower=abcdefghijklmnopqrstuvwxyz -digits=0123456789 alpha=${upper}${lower} if test -z "$depmode" || test -z "$source" || test -z "$object"; then @@ -198,7 +197,7 @@ gcc3) ;; gcc) -## Note that this doesn't just cater to obsosete pre-3.x GCC compilers. +## Note that this doesn't just cater to obsolete pre-3.x GCC compilers. ## but also to in-use compilers like IMB xlc/xlC and the HP C compiler. ## (see the conditional assignment to $gccflag above). ## There are various ways to get dependency output from gcc. Here's diff --git a/build-aux/do-release-commit-and-tag b/build-aux/do-release-commit-and-tag index 5605f42..3402bae 100755 --- a/build-aux/do-release-commit-and-tag +++ b/build-aux/do-release-commit-and-tag @@ -7,7 +7,7 @@ VERSION=2018-03-07.03 # UTC # Note: this is a bash script (could be zsh or dash) -# Copyright (C) 2009-2021 Free Software Foundation, Inc. +# Copyright (C) 2009-2023 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -125,7 +125,7 @@ prev_ver=$(cat .prev-version) \ || die 'failed to determine previous version number from .prev-version' # Verify that $ver is sensible (> .prev-version). -case $(printf "$prev_ver\n$ver\n"|sort -V -u|tr '\n' ':') in +case $(printf "%s\n%s\n" "$prev_ver" "$ver"|sort -V -u|tr '\n' ':') in "$prev_ver:$ver:") ;; *) die "invalid version: $ver (<= $prev_ver)";; esac @@ -165,7 +165,7 @@ perl -MPOSIX -ni -e 'my $today = strftime "%F", localtime time;' \ -e 'print $.==3 ? "$pfx $ver ($today) [$type]\n" : $_' \ NEWS || die 'failed to update NEWS' -printf "version $ver\n\n* NEWS: Record release date.\n" \ +printf "version %s\n\n* NEWS: Record release date.\n" "$ver" \ | git commit -F - -a || die 'git commit failed' git tag -s -m "$pkg $ver" v$ver HEAD || die 'git tag failed' diff --git a/build-aux/gendocs.sh b/build-aux/gendocs.sh index 1241ee3..1ad5cf4 100755 --- a/build-aux/gendocs.sh +++ b/build-aux/gendocs.sh @@ -2,13 +2,13 @@ # gendocs.sh -- generate a GNU manual in many formats. This script is # mentioned in maintain.texi. See the help message below for usage details. -scriptversion=2021-07-19.18 +scriptversion=2023-01-21.00 -# Copyright 2003-2021 Free Software Foundation, Inc. +# Copyright 2003-2023 Free Software Foundation, Inc. # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or +# the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, @@ -40,22 +40,22 @@ srcdir=`pwd` scripturl="https://git.savannah.gnu.org/cgit/gnulib.git/plain/build-aux/gendocs.sh" templateurl="https://git.savannah.gnu.org/cgit/gnulib.git/plain/doc/gendocs_template" -: ${SETLANG="env LANG= LC_MESSAGES= LC_ALL= LANGUAGE="} -: ${MAKEINFO="makeinfo"} -: ${TEXI2DVI="texi2dvi"} -: ${DOCBOOK2HTML="docbook2html"} -: ${DOCBOOK2PDF="docbook2pdf"} -: ${DOCBOOK2TXT="docbook2txt"} -: ${GENDOCS_TEMPLATE_DIR="."} -: ${PERL='perl'} -: ${TEXI2HTML="texi2html"} +: "${SETLANG="env LANG= LC_TIME= LC_MESSAGES= LC_ALL= LANGUAGE="}" +: "${MAKEINFO="makeinfo"}" +: "${TEXI2DVI="texi2dvi"}" +: "${DOCBOOK2HTML="docbook2html"}" +: "${DOCBOOK2PDF="docbook2pdf"}" +: "${DOCBOOK2TXT="docbook2txt"}" +: "${GENDOCS_TEMPLATE_DIR="."}" +: "${PERL="perl"}" +: "${TEXI2HTML="texi2html"}" unset CDPATH unset use_texi2html MANUAL_TITLE= PACKAGE= EMAIL=webmasters@gnu.org # please override with --email -commonarg= # passed to all makeinfo/texi2html invcations. +commonarg= # passed to all makeinfo/texi2html invocations. dirargs= # passed to all tools (-I dir). dirs= # -I directories. htmlarg="--css-ref=https://www.gnu.org/software/gnulib/manual.css -c TOP_NODE_UP_URL=/manual" @@ -73,7 +73,7 @@ texarg="-t @finalout" version="gendocs.sh $scriptversion -Copyright 2021 Free Software Foundation, Inc. +Copyright 2023 Free Software Foundation, Inc. There is NO warranty. You may redistribute this software under the terms of the GNU General Public License. For more information about these matters, see the files named COPYING." @@ -304,7 +304,7 @@ fi # end info # if $generate_tex; then cmd="$SETLANG $TEXI2DVI $dirargs $texarg \"$srcfile\"" - printf "\nGenerating dvi... ($cmd)\n" + printf "\nGenerating dvi... (%s)\n" "$cmd" eval "$cmd" # compress/finish dvi: gzip -f -9 $PACKAGE.dvi @@ -313,7 +313,7 @@ if $generate_tex; then ls -l "$outdir/$PACKAGE.dvi.gz" cmd="$SETLANG $TEXI2DVI --pdf $dirargs $texarg \"$srcfile\"" - printf "\nGenerating pdf... ($cmd)\n" + printf "\nGenerating pdf... (%s)\n" "$cmd" eval "$cmd" pdf_size=`calcsize $PACKAGE.pdf` mv $PACKAGE.pdf "$outdir/" @@ -324,7 +324,7 @@ fi # end tex (dvi + pdf) if $generate_ascii; then opt="-o $PACKAGE.txt --no-split --no-headers $commonarg" cmd="$SETLANG $MAKEINFO $opt \"$srcfile\"" - printf "\nGenerating ascii... ($cmd)\n" + printf "\nGenerating ascii... (%s)\n" "$cmd" eval "$cmd" ascii_size=`calcsize $PACKAGE.txt` gzip -f -9 -c $PACKAGE.txt >"$outdir/$PACKAGE.txt.gz" @@ -341,7 +341,7 @@ html_split() { opt="--split=$1 --node-files $commonarg $htmlarg" cmd="$SETLANG $TEXI2HTML --output $PACKAGE.html $opt \"$srcfile\"" - printf "\nGenerating html by $1... ($cmd)\n" + printf "\nGenerating html by %s... (%s)\n" "$1" "$cmd" eval "$cmd" split_html_dir=$PACKAGE.html ( @@ -359,7 +359,7 @@ html_split() if test -z "$use_texi2html"; then opt="--no-split --html -o $PACKAGE.html $commonarg $htmlarg" cmd="$SETLANG $MAKEINFO $opt \"$srcfile\"" - printf "\nGenerating monolithic html... ($cmd)\n" + printf "\nGenerating monolithic html... (%s)\n" "$cmd" rm -rf $PACKAGE.html # in case a directory is left over eval "$cmd" html_mono_size=`calcsize $PACKAGE.html` @@ -380,7 +380,7 @@ if test -z "$use_texi2html"; then # opt="--html -o $PACKAGE.html $split_arg $commonarg $htmlarg" cmd="$SETLANG $MAKEINFO $opt \"$srcfile\"" - printf "\nGenerating html by $split... ($cmd)\n" + printf "\nGenerating html by %s... (%s)\n" "$split" "$cmd" eval "$cmd" split_html_dir=$PACKAGE.html copy_images $split_html_dir/ $split_html_dir/*.html @@ -398,7 +398,7 @@ if test -z "$use_texi2html"; then else # use texi2html: opt="--output $PACKAGE.html $commonarg $htmlarg" cmd="$SETLANG $TEXI2HTML $opt \"$srcfile\"" - printf "\nGenerating monolithic html with texi2html... ($cmd)\n" + printf "\nGenerating monolithic html with texi2html... (%s)\n" "$cmd" rm -rf $PACKAGE.html # in case a directory is left over eval "$cmd" html_mono_size=`calcsize $PACKAGE.html` @@ -428,7 +428,7 @@ texi_tgz_size=`calcsize "$outdir/$PACKAGE.texi.tar.gz"` if test -n "$docbook"; then opt="-o - --docbook $commonarg" cmd="$SETLANG $MAKEINFO $opt \"$srcfile\" >${srcdir}/$PACKAGE-db.xml" - printf "\nGenerating docbook XML... ($cmd)\n" + printf "\nGenerating docbook XML... (%s)\n" "$cmd" eval "$cmd" docbook_xml_size=`calcsize $PACKAGE-db.xml` gzip -f -9 -c $PACKAGE-db.xml >"$outdir/$PACKAGE-db.xml.gz" @@ -438,7 +438,7 @@ if test -n "$docbook"; then split_html_db_dir=html_node_db opt="$commonarg -o $split_html_db_dir" cmd="$DOCBOOK2HTML $opt \"${outdir}/$PACKAGE-db.xml\"" - printf "\nGenerating docbook HTML... ($cmd)\n" + printf "\nGenerating docbook HTML... (%s)\n" "$cmd" eval "$cmd" ( cd ${split_html_db_dir} || exit 1 @@ -451,20 +451,20 @@ if test -n "$docbook"; then rmdir ${split_html_db_dir} cmd="$DOCBOOK2TXT \"${outdir}/$PACKAGE-db.xml\"" - printf "\nGenerating docbook ASCII... ($cmd)\n" + printf "\nGenerating docbook ASCII... (%s)\n" "$cmd" eval "$cmd" docbook_ascii_size=`calcsize $PACKAGE-db.txt` mv $PACKAGE-db.txt "$outdir/" cmd="$DOCBOOK2PDF \"${outdir}/$PACKAGE-db.xml\"" - printf "\nGenerating docbook PDF... ($cmd)\n" + printf "\nGenerating docbook PDF... (%s)\n" "$cmd" eval "$cmd" docbook_pdf_size=`calcsize $PACKAGE-db.pdf` mv $PACKAGE-db.pdf "$outdir/" fi # -printf "\nMaking index.html for $PACKAGE...\n" +printf "\nMaking index.html for %s...\n" "$PACKAGE" if test -z "$use_texi2html"; then CONDS="/%%IF *HTML_SECTION%%/,/%%ENDIF *HTML_SECTION%%/d;\ /%%IF *HTML_CHAPTER%%/,/%%ENDIF *HTML_CHAPTER%%/d" diff --git a/build-aux/git-version-gen b/build-aux/git-version-gen index da525aa..a72057b 100755 --- a/build-aux/git-version-gen +++ b/build-aux/git-version-gen @@ -1,12 +1,12 @@ #!/bin/sh # Print a version string. -scriptversion=2019-10-13.15; # UTC +scriptversion=2022-07-09.08; # UTC -# Copyright (C) 2007-2021 Free Software Foundation, Inc. +# Copyright (C) 2007-2023 Free Software Foundation, Inc. # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or +# the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, @@ -65,9 +65,10 @@ scriptversion=2019-10-13.15; # UTC # EXTRA_DIST = $(top_srcdir)/.version # BUILT_SOURCES = $(top_srcdir)/.version # $(top_srcdir)/.version: -# echo $(VERSION) > $@-t && mv $@-t $@ +# echo '$(VERSION)' > $@-t +# mv $@-t $@ # dist-hook: -# echo $(VERSION) > $(distdir)/.tarball-version +# echo '$(VERSION)' > $(distdir)/.tarball-version me=$0 @@ -93,7 +94,7 @@ Options: --help display this help and exit --version output version information and exit -Running without arguments will suffice in most cases." +Send patches and bug reports to ." prefix=v fallback= diff --git a/build-aux/gitlog-to-changelog b/build-aux/gitlog-to-changelog index 9ff15f6..4678bad 100755 --- a/build-aux/gitlog-to-changelog +++ b/build-aux/gitlog-to-changelog @@ -3,7 +3,7 @@ # Convert git log output to ChangeLog format. -# Copyright (C) 2008-2021 Free Software Foundation, Inc. +# Copyright (C) 2008-2023 Free Software Foundation, Inc. # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -35,7 +35,7 @@ eval 'exec perl -wSx "$0" "$@"' if 0; -my $VERSION = '2021-02-24 23:42'; # UTC +my $VERSION = '2022-01-27 18:49'; # UTC # The definition above must lie within the first 8 lines in order # for the Emacs time-stamp write hook (at end) to update it. # If you change this file with Emacs, please let the write hook diff --git a/build-aux/gnu-web-doc-update b/build-aux/gnu-web-doc-update index cc553f9..a804031 100755 --- a/build-aux/gnu-web-doc-update +++ b/build-aux/gnu-web-doc-update @@ -2,9 +2,9 @@ # Run this after each non-alpha release, to update the web documentation at # https://www.gnu.org/software/$pkg/manual/ -VERSION=2021-01-09.09; # UTC +VERSION=2023-03-23.02; # UTC -# Copyright (C) 2009-2021 Free Software Foundation, Inc. +# Copyright (C) 2009-2023 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -153,8 +153,8 @@ cleanup() $GIT branch -d $tmp_branch exit $__st } -trap cleanup 0 -trap 'exit $?' 1 2 13 15 +trap cleanup EXIT +trap 'exit $?' HUP INT PIPE TERM # We must build using sources for which --version reports the # just-released version number, not some string like 7.6.18-20761. @@ -175,10 +175,13 @@ set +e tmp=$(mktemp -d web-doc-update.XXXXXX) || exit 1 ( cd $tmp \ - && $CVS -d $cvs_user@cvs.sv.gnu.org:/webcvs/$pkg co $pkg ) + && $CVS -d $cvs_user@cvs.savannah.gnu.org:/webcvs/$pkg co $pkg ) $RSYNC -avP "$builddir"/doc/manual/ $tmp/$pkg/manual ( + cd $tmp/$pkg + test -d manual/CVS || $dryrun $CVS add -ko manual + cd $tmp/$pkg/manual # Add all the files. This is simpler than trying to add only the diff --git a/build-aux/gnupload b/build-aux/gnupload index e7822ae..3e8f102 100755 --- a/build-aux/gnupload +++ b/build-aux/gnupload @@ -1,9 +1,9 @@ #!/bin/sh # Sign files and upload them. -scriptversion=2021-04-11.09; # UTC +scriptversion=2022-01-27.18; # UTC -# Copyright (C) 2004-2021 Free Software Foundation, Inc. +# Copyright (C) 2004-2023 Free Software Foundation, Inc. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -398,7 +398,7 @@ upload () for f in $files $base.directive.asc do echo put $f - done | $dbg sftp -b - puszcza.gnu.org.ua:/incoming/$destdir_topdir + done | $dbg sftp -b - download.gnu.org.ua:/incoming/$destdir_topdir ;; /*) dest_host=`echo "$dest" | sed 's,:.*,,'` diff --git a/build-aux/mdate-sh b/build-aux/mdate-sh index e6d572d..6947add 100755 --- a/build-aux/mdate-sh +++ b/build-aux/mdate-sh @@ -3,7 +3,7 @@ scriptversion=2018-03-07.03; # UTC -# Copyright (C) 1995-2021 Free Software Foundation, Inc. +# Copyright (C) 1995-2023 Free Software Foundation, Inc. # written by Ulrich Drepper , June 1995 # # This program is free software; you can redistribute it and/or modify diff --git a/build-aux/missing b/build-aux/missing index 1fe1611..9181a21 100755 --- a/build-aux/missing +++ b/build-aux/missing @@ -3,7 +3,7 @@ scriptversion=2018-03-07.03; # UTC -# Copyright (C) 1996-2021 Free Software Foundation, Inc. +# Copyright (C) 1996-2023 Free Software Foundation, Inc. # Originally written by Fran,cois Pinard , 1996. # This program is free software; you can redistribute it and/or modify diff --git a/build-aux/test-driver b/build-aux/test-driver index be73b80..720c084 100755 --- a/build-aux/test-driver +++ b/build-aux/test-driver @@ -3,7 +3,7 @@ scriptversion=2018-03-07.03; # UTC -# Copyright (C) 2011-2021 Free Software Foundation, Inc. +# Copyright (C) 2011-2023 Free Software Foundation, Inc. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff --git a/build-aux/texinfo.tex b/build-aux/texinfo.tex index e48383d..a32c841 100644 --- a/build-aux/texinfo.tex +++ b/build-aux/texinfo.tex @@ -3,9 +3,9 @@ % Load plain if necessary, i.e., if running under initex. \expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi % -\def\texinfoversion{2021-04-25.21} +\def\texinfoversion{2023-03-27.21} % -% Copyright 1985, 1986, 1988, 1990-2021 Free Software Foundation, Inc. +% Copyright 1985, 1986, 1988, 1990-2023 Free Software Foundation, Inc. % % This texinfo.tex file is free software: you can redistribute it and/or % modify it under the terms of the GNU General Public License as @@ -58,12 +58,6 @@ \message{Loading texinfo [version \texinfoversion]:} -% If in a .fmt file, print the version number -% and turn on active characters that we couldn't do earlier because -% they might have appeared in the input file name. -\everyjob{\message{[Texinfo version \texinfoversion]}% - \catcode`+=\active \catcode`\_=\active} - % LaTeX's \typeout. This ensures that the messages it is used for % are identical in format to the corresponding ones from latex/pdflatex. \def\typeout{\immediate\write17}% @@ -241,9 +235,6 @@ % \def\finalout{\overfullrule=0pt } -\newdimen\outerhsize \newdimen\outervsize % set by the paper size routines -\newdimen\topandbottommargin \topandbottommargin=.75in - % Output a mark which sets \thischapter, \thissection and \thiscolor. % We dump everything together because we only have one kind of mark. % This works because we only use \botmark / \topmark, not \firstmark. @@ -317,16 +308,8 @@ \newbox\footlinebox % When outputting the double column layout for indices, an output routine -% is run several times, which hides the original value of \topmark. This -% can lead to a page heading being output and duplicating the chapter heading -% of the index. Hence, save the contents of \topmark at the beginning of -% the output routine. The saved contents are valid until we actually -% \shipout a page. -% -% (We used to run a short output routine to actually set \topmark and -% \firstmark to the right values, but if this was called with an empty page -% containing whatsits for writing index entries, the whatsits would be thrown -% away and the index auxiliary file would remain empty.) +% is run several times, hiding the original value of \topmark. Hence, save +% \topmark at the beginning. % \newtoks\savedtopmark \newif\iftopmarksaved @@ -351,15 +334,9 @@ % \checkchapterpage % - % Retrieve the information for the headings from the marks in the page, - % and call Plain TeX's \makeheadline and \makefootline, which use the - % values in \headline and \footline. - % - % Common context changes for both heading and footing. - % Do this outside of the \shipout so @code etc. will be expanded in - % the headline as they should be, not taken literally (outputting ''code). + % Make the heading and footing. \makeheadline and \makefootline + % use the contents of \headline and \footline. \def\commonheadfootline{\let\hsize=\txipagewidth \texinfochars} - % \ifodd\pageno \getoddheadingmarks \else \getevenheadingmarks \fi \global\setbox\headlinebox = \vbox{\commonheadfootline \makeheadline}% \ifodd\pageno \getoddfootingmarks \else \getevenfootingmarks \fi @@ -547,7 +524,7 @@ % ... but they get defined via ``\envdef\foo{...}'': \long\def\envdef#1#2{\def#1{\startenvironment#1#2}} -\def\envparseargdef#1#2{\parseargdef#1{\startenvironment#1#2}} +\long\def\envparseargdef#1#2{\parseargdef#1{\startenvironment#1#2}} % Check whether we're in the right environment: \def\checkenv#1{% @@ -608,6 +585,9 @@ % @/ allows a line break. \let\/=\allowbreak +% @- allows explicit insertion of hyphenation points +\def\-{\discretionary{\normaldash}{}{}}% + % @. is an end-of-sentence period. \def\.{.\spacefactor=\endofsentencespacefactor\space} @@ -617,21 +597,6 @@ % @? is an end-of-sentence query. \def\?{?\spacefactor=\endofsentencespacefactor\space} -% @frenchspacing on|off says whether to put extra space after punctuation. -% -\def\onword{on} -\def\offword{off} -% -\parseargdef\frenchspacing{% - \def\temp{#1}% - \ifx\temp\onword \plainfrenchspacing - \else\ifx\temp\offword \plainnonfrenchspacing - \else - \errhelp = \EMsimple - \errmessage{Unknown @frenchspacing option `\temp', must be on|off}% - \fi\fi -} - % @w prevents a word break. Without the \leavevmode, @w at the % beginning of a paragraph, when TeX is still in vertical mode, would % produce a whole line of output instead of starting the paragraph. @@ -725,32 +690,22 @@ where each line of input produces a line of output.} \dimen2 = \ht\strutbox \advance\dimen2 by \dp\strutbox \ifdim\dimen0 > \dimen2 + % This is similar to the 'needspace' module in LaTeX. + % The first penalty allows a break if the end of the page is + % not too far away. Following penalties and skips are discarded. + % Otherwise, require at least \dimen0 of vertical space. % - % Do a \strut just to make the height of this box be normal, so the - % normal leading is inserted relative to the preceding line. - % And a page break here is fine. - \vtop to #1\mil{\strut\vfil}% - % - % TeX does not even consider page breaks if a penalty added to the - % main vertical list is 10000 or more. But in order to see if the - % empty box we just added fits on the page, we must make it consider - % page breaks. On the other hand, we don't want to actually break the - % page after the empty box. So we use a penalty of 9999. - % - % There is an extremely small chance that TeX will actually break the - % page at this \penalty, if there are no other feasible breakpoints in - % sight. (If the user is using lots of big @group commands, which - % almost-but-not-quite fill up a page, TeX will have a hard time doing - % good page breaking, for example.) However, I could not construct an - % example where a page broke at this \penalty; if it happens in a real - % document, then we can reconsider our strategy. + % (We used to use a \vtop to reserve space, but this had spacing issues + % when followed by a section heading, as it was not a "discardable item". + % This also has the benefit of providing glue before the page break if + % there isn't enough space.) + \vskip0pt plus \dimen0 + \penalty-100 + \vskip0pt plus -\dimen0 + \vskip \dimen0 \penalty9999 - % - % Back up by the size of the box, whether we did a page break or not. - \kern -#1\mil - % - % Do not allow a page break right after this kern. - \nobreak + \vskip -\dimen0 + \penalty0\relax % this hides the above glue from \safewhatsit and \dobreak \fi } @@ -1147,27 +1102,33 @@ where each line of input produces a line of output.} % Output page labels information. % See PDF reference v.1.7 p.594, section 8.3.1. +% Page label ranges must be increasing. \ifpdf \def\pagelabels{% \def\title{0 << /P (T-) /S /D >>}% - \edef\roman{\the\romancount << /S /r >>}% - \edef\arabic{\the\arabiccount << /S /D >>}% - % - % Page label ranges must be increasing. Remove any duplicates. - % (There is a slight chance of this being wrong if e.g. there is - % a @contents but no @titlepage, etc.) % - \ifnum\romancount=0 \def\roman{}\fi - \ifnum\arabiccount=0 \def\title{}% - \else - \ifnum\romancount=\arabiccount \def\roman{}\fi - \fi - % - \ifnum\romancount<\arabiccount - \pdfcatalog{/PageLabels << /Nums [\title \roman \arabic ] >> }\relax + % support @contents at very end of document + \ifnum\contentsendcount=\pagecount + \ifnum\arabiccount<\romancount + \pdfcatalog{/PageLabels << /Nums + [\title + \the\arabiccount << /S /D >> + \the\romancount << /S /r >> + ] >> }\relax + \fi + % no contents in document + \else\ifnum\contentsendcount=0 + \pdfcatalog{/PageLabels << /Nums + [\title + \the\arabiccount << /S /D >> + ] >> }\relax \else - \pdfcatalog{/PageLabels << /Nums [\title \arabic \roman ] >> }\relax - \fi + \pdfcatalog{/PageLabels << /Nums + [\title + \the\romancount << /S /r >> + \the\contentsendcount << /S /D >> + ] >> }\relax + \fi\fi } \else \let\pagelabels\relax @@ -1176,6 +1137,8 @@ where each line of input produces a line of output.} \newcount\pagecount \pagecount=0 \newcount\romancount \romancount=0 \newcount\arabiccount \arabiccount=0 +\newcount\contentsendcount \contentsendcount=0 + \ifpdf \let\ptxadvancepageno\advancepageno \def\advancepageno{% @@ -1239,13 +1202,17 @@ output) for that.)} % % Set color, and create a mark which defines \thiscolor accordingly, % so that \makeheadline knows which color to restore. + \def\curcolor{0 0 0}% \def\setcolor#1{% - \xdef\currentcolordefs{\gdef\noexpand\thiscolor{#1}}% - \domark - \pdfsetcolor{#1}% + \ifx#1\curcolor\else + \xdef\currentcolordefs{\gdef\noexpand\thiscolor{#1}}% + \domark + \pdfsetcolor{#1}% + \xdef\curcolor{#1}% + \fi } % - \def\maincolor{\rgbBlack} + \let\maincolor\rgbBlack \pdfsetcolor{\maincolor} \edef\thiscolor{\maincolor} \def\currentcolordefs{} @@ -1401,7 +1368,7 @@ output) for that.)} % % by default, use black for everything. \def\urlcolor{\rgbBlack} - \def\linkcolor{\rgbBlack} + \let\linkcolor\rgbBlack \def\endlink{\setcolor{\maincolor}\pdfendlink} % % Adding outlines to PDF; macros for calculating structure of outlines @@ -1579,9 +1546,10 @@ output) for that.)} \next} \def\makelink{\addtokens{\toksB}% {\noexpand\pdflink{\the\toksC}}\toksC={}\global\countA=0} - \def\pdflink#1{% + \def\pdflink#1{\pdflinkpage{#1}{#1}}% + \def\pdflinkpage#1#2{% \startlink attr{/Border [0 0 0]} goto name{\pdfmkpgn{#1}} - \setcolor{\linkcolor}#1\endlink} + \setcolor{\linkcolor}#2\endlink} \def\done{\edef\st{\global\noexpand\toksA={\the\toksB}}\st} \else % non-pdf mode @@ -1828,10 +1796,11 @@ output) for that.)} \next} \def\makelink{\addtokens{\toksB}% {\noexpand\pdflink{\the\toksC}}\toksC={}\global\countA=0} - \def\pdflink#1{% + \def\pdflink#1{\pdflinkpage{#1}{#1}}% + \def\pdflinkpage#1#2{% \special{pdf:bann << /Border [0 0 0] /Type /Annot /Subtype /Link /A << /S /GoTo /D (#1) >> >>}% - \setcolor{\linkcolor}#1\endlink} + \setcolor{\linkcolor}#2\endlink} \def\done{\edef\st{\global\noexpand\toksA={\the\toksB}}\st} % % @@ -2176,6 +2145,11 @@ end \pdffontattr#1{/ToUnicode \the\pdflastobj\space 0 R}% }% \fi\fi +% +% This is what gets called when #5 of \setfont is empty. +\let\cmap\gobble +% +% (end of cmaps) % Set the font macro #1 to the font named \fontprefix#2. @@ -2191,11 +2165,10 @@ end \def\setfont#1#2#3#4#5{% \font#1=\fontprefix#2#3 scaled #4 \csname cmap#5\endcsname#1% + \ifx#2\ttshape\hyphenchar#1=-1 \fi + \ifx#2\ttbshape\hyphenchar#1=-1 \fi + \ifx#2\ttslshape\hyphenchar#1=-1 \fi } -% This is what gets called when #5 of \setfont is empty. -\let\cmap\gobble -% -% (end of cmaps) % Use cm as the default font prefix. % To specify the font prefix, you must define \fontprefix @@ -2558,7 +2531,7 @@ end \def\it{\fam=\itfam \setfontstyle{it}} \def\sl{\fam=\slfam \setfontstyle{sl}} \def\bf{\fam=\bffam \setfontstyle{bf}}\def\bfstylename{bf} -\def\tt{\fam=\ttfam \setfontstyle{tt}}\def\ttstylename{tt} +\def\tt{\fam=\ttfam \setfontstyle{tt}} % Texinfo sort of supports the sans serif font style, which plain TeX does not. % So we set up a \sf. @@ -2586,34 +2559,30 @@ end \scriptfont\sffam=\sevensf } -% -% The font-changing commands (all called \...fonts) redefine the meanings -% of \STYLEfont, instead of just \STYLE. We do this because \STYLE needs -% to also set the current \fam for math mode. Our \STYLE (e.g., \rm) -% commands hardwire \STYLEfont to set the current font. -% -% The fonts used for \ifont are for "math italics" (\itfont is for italics -% in regular text). \syfont is also used in math mode only. -% -% Each font-changing command also sets the names \lsize (one size lower) -% and \lllsize (three sizes lower). These relative commands are used -% in, e.g., the LaTeX logo and acronyms. -% -% This all needs generalizing, badly. + +% \defineassignfonts{SIZE} - +% Define sequence \assignfontsSIZE, which switches between font sizes +% by redefining the meanings of \STYLEfont. (Just \STYLE additionally sets +% the current \fam for math mode.) % +\def\defineassignfonts#1{% + \expandafter\edef\csname assignfonts#1\endcsname{% + \let\noexpand\rmfont\csname #1rm\endcsname + \let\noexpand\itfont\csname #1it\endcsname + \let\noexpand\slfont\csname #1sl\endcsname + \let\noexpand\bffont\csname #1bf\endcsname + \let\noexpand\ttfont\csname #1tt\endcsname + \let\noexpand\smallcaps\csname #1sc\endcsname + \let\noexpand\sffont \csname #1sf\endcsname + \let\noexpand\ifont \csname #1i\endcsname + \let\noexpand\syfont \csname #1sy\endcsname + \let\noexpand\ttslfont\csname #1ttsl\endcsname + } +} \def\assignfonts#1{% - \expandafter\let\expandafter\rmfont\csname #1rm\endcsname - \expandafter\let\expandafter\itfont\csname #1it\endcsname - \expandafter\let\expandafter\slfont\csname #1sl\endcsname - \expandafter\let\expandafter\bffont\csname #1bf\endcsname - \expandafter\let\expandafter\ttfont\csname #1tt\endcsname - \expandafter\let\expandafter\smallcaps\csname #1sc\endcsname - \expandafter\let\expandafter\sffont \csname #1sf\endcsname - \expandafter\let\expandafter\ifont \csname #1i\endcsname - \expandafter\let\expandafter\syfont \csname #1sy\endcsname - \expandafter\let\expandafter\ttslfont\csname #1ttsl\endcsname + \csname assignfonts#1\endcsname } \newif\ifrmisbold @@ -2637,12 +2606,21 @@ end \csname\curfontstyle\endcsname }% +% Define the font-changing commands (all called \...fonts). +% Each font-changing command also sets the names \lsize (one size lower) +% and \lllsize (three sizes lower). These relative commands are used +% in, e.g., the LaTeX logo and acronyms. +% +% Note: The fonts used for \ifont are for "math italics" (\itfont is for +% italics in regular text). \syfont is also used in math mode only. +% \def\definefontsetatsize#1#2#3#4#5{% + \defineassignfonts{#1}% \expandafter\def\csname #1fonts\endcsname{% \def\curfontsize{#1}% \def\lsize{#2}\def\lllsize{#3}% \csname rmisbold#5\endcsname - \assignfonts{#1}% + \csname assignfonts#1\endcsname \resetmathfonts \setleading{#4}% }} @@ -2687,9 +2665,22 @@ end % Check if we are currently using a typewriter font. Since all the % Computer Modern typewriter fonts have zero interword stretch (and % shrink), and it is reasonable to expect all typewriter fonts to have -% this property, we can check that font parameter. -% -\def\ifmonospace{\ifdim\fontdimen3\font=0pt } +% this property, we can check that font parameter. #1 is what to +% print if we are indeed using \tt; #2 is what to print otherwise. +\def\ifusingtt#1#2{\ifdim \fontdimen3\font=0pt #1\else #2\fi} + +% Same as above, but check for italic font. Actually this also catches +% non-italic slanted fonts since it is impossible to distinguish them from +% italic fonts. But since this is only used by $ and it uses \sl anyway +% this is not a problem. +\def\ifusingit#1#2{\ifdim \fontdimen1\font>0pt #1\else #2\fi} + + +% Check if internal flag is clear, i.e. has not been @set. +\def\ifflagclear#1#2#3{% + \expandafter\ifx\csname SET#1\endcsname\relax + #2\else#3\fi +} { \catcode`\'=\active @@ -2698,41 +2689,33 @@ end \gdef\setcodequotes{\let`\codequoteleft \let'\codequoteright} \gdef\setregularquotes{\let`\lq \let'\rq} } +\setregularquotes -% Allow an option to not use regular directed right quote/apostrophe -% (char 0x27), but instead the undirected quote from cmtt (char 0x0d). -% The undirected quote is ugly, so don't make it the default, but it -% works for pasting with more pdf viewers (at least evince), the -% lilypond developers report. xpdf does work with the regular 0x27. +% output for ' in @code +% in tt font hex 0D (undirected) or 27 (curly right quote) % \def\codequoteright{% - \ifmonospace - \expandafter\ifx\csname SETtxicodequoteundirected\endcsname\relax - \expandafter\ifx\csname SETcodequoteundirected\endcsname\relax - '% - \else \char'15 \fi - \else \char'15 \fi - \else - '% - \fi + \ifusingtt + {\ifflagclear{txicodequoteundirected}% + {\ifflagclear{codequoteundirected}% + {'}% + {\char"0D }}% + {\char"0D }}% + {'}% } -% -% and a similar option for the left quote char vs. a grave accent. -% Modern fonts display ASCII 0x60 as a grave accent, so some people like -% the code environments to do likewise. + +% output for ` in @code +% in tt font hex 12 (grave accent) or 60 (curly left quote) +% \relax disables Spanish ligatures ?` and !` of \tt font. % \def\codequoteleft{% - \ifmonospace - \expandafter\ifx\csname SETtxicodequotebacktick\endcsname\relax - \expandafter\ifx\csname SETcodequotebacktick\endcsname\relax - % [Knuth] pp. 380,381,391 - % \relax disables Spanish ligatures ?` and !` of \tt font. - \relax`% - \else \char'22 \fi - \else \char'22 \fi - \else - \relax`% - \fi + \ifusingtt + {\ifflagclear{txicodequotebacktick}% + {\ifflagclear{codequotebacktick}% + {\relax`}% + {\char"12 }}% + {\char"12 }}% + {\relax`}% } % Commands to set the quote options. @@ -2750,7 +2733,7 @@ end \errmessage{Unknown @codequoteundirected value `\temp', must be on|off}% \fi\fi } -% + \parseargdef\codequotebacktick{% \def\temp{#1}% \ifx\temp\onword @@ -2765,6 +2748,11 @@ end \fi\fi } +% Turn them on by default +\let\SETtxicodequoteundirected = t +\let\SETtxicodequotebacktick = t + + % [Knuth] pp. 380,381,391, disable Spanish ligatures ?` and !` of \tt font. \def\noligaturesquoteleft{\relax\lq} @@ -2779,15 +2767,16 @@ end \def\dosmartslant#1#2{% \ifusingtt {{\ttsl #2}\let\next=\relax}% - {\def\next{{#1#2}\futurelet\next\smartitaliccorrection}}% + {\def\next{{#1#2}\smartitaliccorrection}}% \next } \def\smartslanted{\dosmartslant\sl} \def\smartitalic{\dosmartslant\it} -% Output an italic correction unless \next (presumed to be the following -% character) is such as not to need one. -\def\smartitaliccorrection{% +% Output an italic correction unless the following character is such as +% not to need one. +\def\smartitaliccorrection{\futurelet\next\smartitaliccorrectionx} +\def\smartitaliccorrectionx{% \ifx\next,% \else\ifx\next-% \else\ifx\next.% @@ -2798,27 +2787,41 @@ end \aftersmartic } -% Unconditional use \ttsl, and no ic. @var is set to this for defuns. -\def\ttslanted#1{{\ttsl #1}} - -% @cite is like \smartslanted except unconditionally use \sl. We never want -% ttsl for book titles, do we? -\def\cite#1{{\sl #1}\futurelet\next\smartitaliccorrection} +% @cite unconditionally uses \sl with \smartitaliccorrection. +\def\cite#1{{\sl #1}\smartitaliccorrection} +% @var unconditionally uses \sl. This gives consistency for +% parameter names whether they are in @def, @table @code or a +% regular paragraph. +% To get ttsl font for @var when used in code context, @set txicodevaristt. +% The \null is to reset \spacefactor. \def\aftersmartic{} \def\var#1{% \let\saveaftersmartic = \aftersmartic \def\aftersmartic{\null\let\aftersmartic=\saveaftersmartic}% - \smartslanted{#1}% + % + \ifflagclear{txicodevaristt}% + {\def\varnext{{{\sl #1}}\smartitaliccorrection}}% + {\def\varnext{\smartslanted{#1}}}% + \varnext } +% To be removed after next release +\def\SETtxicodevaristt{}% @set txicodevaristt + \let\i=\smartitalic \let\slanted=\smartslanted \let\dfn=\smartslanted \let\emph=\smartitalic -% Explicit font changes: @r, @sc, undocumented @ii. -\def\r#1{{\rm #1}} % roman font +% @r for roman font, used for code comment +\def\r#1{{% + \usenormaldash % get --, --- ligatures even if in @code + \defcharsdefault % in case on def line + \rm #1}} +{\catcode`-=\active \gdef\usenormaldash{\let-\normaldash}} + +% @sc, undocumented @ii. \def\sc#1{{\smallcaps#1}} % smallcaps font \def\ii#1{{\it #1}} % italic font @@ -2829,12 +2832,8 @@ end % @sansserif, explicit sans. \def\sansserif#1{{\sf #1}} -% We can't just use \exhyphenpenalty, because that only has effect at -% the end of a paragraph. Restore normal hyphenation at the end of the -% group within which \nohyphenation is presumably called. -% -\def\nohyphenation{\hyphenchar\font = -1 \aftergroup\restorehyphenation} -\def\restorehyphenation{\hyphenchar\font = `- } +\newif\iffrenchspacing +\frenchspacingfalse % Set sfcode to normal for the chars that usually have another value. % Can't use plain's \frenchspacing because it uses the `\x notation, and @@ -2842,21 +2841,45 @@ end % \catcode`@=11 \def\plainfrenchspacing{% - \sfcode`\.=\@m \sfcode`\?=\@m \sfcode`\!=\@m - \sfcode`\:=\@m \sfcode`\;=\@m \sfcode`\,=\@m - \def\endofsentencespacefactor{1000}% for @. and friends + \iffrenchspacing\else + \frenchspacingtrue + \sfcode`\.=\@m \sfcode`\?=\@m \sfcode`\!=\@m + \sfcode`\:=\@m \sfcode`\;=\@m \sfcode`\,=\@m + \def\endofsentencespacefactor{1000}% for @. and friends + \fi } \def\plainnonfrenchspacing{% - \sfcode`\.3000\sfcode`\?3000\sfcode`\!3000 - \sfcode`\:2000\sfcode`\;1500\sfcode`\,1250 - \def\endofsentencespacefactor{3000}% for @. and friends + \iffrenchspacing + \frenchspacingfalse + \sfcode`\.3000\sfcode`\?3000\sfcode`\!3000 + \sfcode`\:2000\sfcode`\;1500\sfcode`\,1250 + \def\endofsentencespacefactor{3000}% for @. and friends + \fi } \catcode`@=\other \def\endofsentencespacefactor{3000}% default +% @frenchspacing on|off says whether to put extra space after punctuation. +% +\def\onword{on} +\def\offword{off} +% +\let\frenchspacingsetting\plainnonfrenchspacing % used in output routine +\parseargdef\frenchspacing{% + \def\temp{#1}% + \ifx\temp\onword \let\frenchspacingsetting\plainfrenchspacing + \else\ifx\temp\offword \let\frenchspacingsetting\plainnonfrenchspacing + \else + \errhelp = \EMsimple + \errmessage{Unknown @frenchspacing option `\temp', must be on|off}% + \fi\fi + \frenchspacingsetting +} + + % @t, explicit typewriter. \def\t#1{% - {\tt \plainfrenchspacing #1}% + {\tt \defcharsdefault \plainfrenchspacing #1}% \null } @@ -2877,27 +2900,29 @@ end % Switch to typewriter. \tt % - % But `\ ' produces the large typewriter interword space. + % `\ ' produces the large typewriter interword space. \def\ {{\spaceskip = 0pt{} }}% % - % Turn off hyphenation. - \nohyphenation - % \plainfrenchspacing #1% }% \null % reset spacefactor to 1000 } -% We *must* turn on hyphenation at `-' and `_' in @code. -% (But see \codedashfinish below.) +% This is for LuaTeX: It is not sufficient to disable hyphenation at +% explicit dashes by setting `\hyphenchar` to -1. +\def\dashnobreak{% + \normaldash + \penalty 10000 } + +% We must turn on hyphenation at `-' and `_' in @code. % Otherwise, it is too hard to avoid overfull hboxes % in the Emacs manual, the Library manual, etc. +% We explicitly allow hyphenation at these characters +% using \discretionary. % -% Unfortunately, TeX uses one parameter (\hyphenchar) to control -% both hyphenation at - and hyphenation within words. -% We must therefore turn them both off (\tclose does that) -% and arrange explicitly to hyphenate at a dash. -- rms. +% Hyphenation at - and hyphenation within words was turned off +% by default for the tt fonts using the \hyphenchar parameter of TeX. { \catcode`\-=\active \catcode`\_=\active \catcode`\'=\active \catcode`\`=\active @@ -2910,13 +2935,9 @@ end \let-\codedash \let_\codeunder \else - \let-\normaldash + \let-\dashnobreak \let_\realunder \fi - % Given -foo (with a single dash), we do not want to allow a break - % after the hyphen. - \global\let\codedashprev=\codedash - % \codex } % @@ -2926,21 +2947,30 @@ end % % Now, output a discretionary to allow a line break, unless % (a) the next character is a -, or - % (b) the preceding character is a -. + % (b) the preceding character is a -, or + % (c) we are at the start of the string. + % In both cases (b) and (c), \codedashnobreak should be set to \codedash. + % % E.g., given --posix, we do not want to allow a break after either -. % Given --foo-bar, we do want to allow a break between the - and the b. \ifx\next\codedash \else - \ifx\codedashprev\codedash + \ifx\codedashnobreak\codedash \else \discretionary{}{}{}\fi \fi % we need the space after the = for the case when \next itself is a % space token; it would get swallowed otherwise. As in @code{- a}. - \global\let\codedashprev= \next + \global\let\codedashnobreak= \next } } \def\normaldash{-} % -\def\codex #1{\tclose{#1}\endgroup} +\def\codex #1{\tclose{% + % Given -foo (with a single dash), we do not want to allow a break + % after the -. \codedashnobreak is set to the first character in + % @code. + \futurelet\codedashnobreak\relax + #1% +}\endgroup} \def\codeunder{% % this is all so @math{@code{var_name}+1} can work. In math mode, _ @@ -3171,16 +3201,8 @@ end % Default is `distinct'. \kbdinputstyle distinct -% @kbd is like @code, except that if the argument is just one @key command, -% then @kbd has no effect. -\def\kbd#1{{\def\look{#1}\expandafter\kbdsub\look??\par}} - -\def\xkey{\key} -\def\kbdsub#1#2#3\par{% - \def\one{#1}\def\three{#3}\def\threex{??}% - \ifx\one\xkey\ifx\threex\three \key{#2}% - \else{\tclose{\kbdfont\setcodequotes\look}}\fi - \else{\tclose{\kbdfont\setcodequotes\look}}\fi +\def\kbd#1{% + \tclose{\kbdfont\setcodequotes#1}% } % definition of @key that produces a lozenge. Doesn't adjust to text size. @@ -3193,14 +3215,9 @@ end % \kern-0.4pt\hrule}% % \kern-.06em\raise0.4pt\hbox{\angleright}}}} -% definition of @key with no lozenge. If the current font is already -% monospace, don't change it; that way, we respect @kbdinputstyle. But -% if it isn't monospace, then use \tt. +% definition of @key with no lozenge. % -\def\key#1{{\setregularquotes - \nohyphenation - \ifmonospace\else\tt\fi - #1}\null} +\def\key#1{{\setregularquotes \tt #1}\null} % @clicksequence{File @click{} Open ...} \def\clicksequence#1{\begingroup #1\endgroup} @@ -3403,8 +3420,8 @@ $$% \let\atchar=\@ % @{ @} @lbracechar{} @rbracechar{} all generate brace characters. -\def\lbracechar{{\ifmonospace\char123\else\ensuremath\lbrace\fi}} -\def\rbracechar{{\ifmonospace\char125\else\ensuremath\rbrace\fi}} +\def\lbracechar{{\ifusingtt{\char123}{\ensuremath\lbrace}}} +\def\rbracechar{{\ifusingtt{\char125}{\ensuremath\rbrace}}} \let\{=\lbracechar \let\}=\rbracechar @@ -3458,8 +3475,13 @@ $$% % Revert to plain's \scriptsize, which is 7pt. \count255=\the\fam $\fam\count255 \scriptstyle A$% \else - % For 11pt, we can use our lllsize. - \switchtolllsize A% + \ifx\curfontsize\smallword + % For footnotes and indices + \count255=\the\fam $\fam\count255 \scriptstyle A$% + \else + % For 11pt, we can use our lllsize. + \switchtolllsize A% + \fi \fi }% \vss @@ -3467,6 +3489,7 @@ $$% \kern-.15em \TeX } +\def\smallword{small} % Some math mode symbols. Define \ensuremath to switch into math mode % unless we are already there. Expansion tricks may not be needed here, @@ -3545,7 +3568,7 @@ $$% % @pounds{} is a sterling sign, which Knuth put in the CM italic font. % -\def\pounds{\ifmonospace{\ecfont\char"BF}\else{\it\$}\fi} +\def\pounds{{\ifusingtt{\ecfont\char"BF}{\it\$}}} % @euro{} comes from a separate font, depending on the current style. % We use the free feym* fonts from the eurosym package by Henrik @@ -3614,6 +3637,9 @@ $$% \def\quotedblbase{{\ecfont \char"12}} \def\quotesinglbase{{\ecfont \char"0D}} % +\def\L{{\ecfont \char"8A}} % L with stroke +\def\l{{\ecfont \char"AA}} % l with stroke +% % This positioning is not perfect (see the ogonek LaTeX package), but % we have the precomposed glyphs for the most common cases. We put the % tests to use those glyphs in the single \ogonek macro so we have fewer @@ -3656,18 +3682,17 @@ $$% % hopefully nobody will notice/care. \edef\ecsize{\csname\curfontsize ecsize\endcsname}% \edef\nominalsize{\csname\curfontsize nominalsize\endcsname}% - \ifmonospace - % typewriter: - \font\thisecfont = #1ctt\ecsize \space at \nominalsize - \else - \ifx\curfontstyle\bfstylename - % bold: - \font\thisecfont = #1cb\ifusingit{i}{x}\ecsize \space at \nominalsize - \else - % regular: - \font\thisecfont = #1c\ifusingit{ti}{rm}\ecsize \space at \nominalsize - \fi - \fi + \ifusingtt + % typewriter: + {\font\thisecfont = #1ctt\ecsize \space at \nominalsize}% + % else + {\ifx\curfontstyle\bfstylename + % bold: + \font\thisecfont = #1cb\ifusingit{i}{x}\ecsize \space at \nominalsize + \else + % regular: + \font\thisecfont = #1c\ifusingit{ti}{rm}\ecsize \space at \nominalsize + \fi}% \thisecfont } @@ -3683,7 +3708,10 @@ $$% % @textdegree - the normal degrees sign. % -\def\textdegree{$^\circ$} +\def\textdegree{% + \ifmmode ^\circ + \else {\tcfont \char 176}% + \fi} % Laurent Siebenmann reports \Orb undefined with: % Textures 1.7.7 (preloaded format=plain 93.10.14) (68K) 16 APR 2004 02:38 @@ -3700,11 +3728,11 @@ $$% % only change font for tt for correct kerning and to avoid using % \ecfont unless necessary. \def\quotedblleft{% - \ifmonospace{\ecfont\char"10}\else{\char"5C}\fi + \ifusingtt{{\ecfont\char"10}}{{\char"5C}}% } \def\quotedblright{% - \ifmonospace{\ecfont\char"11}\else{\char`\"}\fi + \ifusingtt{{\ecfont\char"11}}{{\char`\"}}% } @@ -3729,13 +3757,14 @@ $$% want the contents after the title page.}}% \parseargdef\shorttitlepage{% - \begingroup \hbox{}\vskip 1.5in \chaprm \centerline{#1}% - \endgroup\page\hbox{}\page} + {\headingsoff \begingroup \hbox{}\vskip 1.5in \chaprm \centerline{#1}% + \endgroup\page\hbox{}\page}\pageone} \envdef\titlepage{% % Open one extra group, as we want to close it in the middle of \Etitlepage. \begingroup \parindent=0pt \textfonts + \headingsoff % Leave some space at the very top of the page. \vglue\titlepagetopglue % No rule at page bottom unless we print one at the top with @title. @@ -3763,11 +3792,9 @@ $$% % If we use the new definition of \page, we always get a blank page % after the title page, which we certainly don't want. \oldpage + \pageone \endgroup % - % Need this before the \...aftertitlepage checks so that if they are - % in effect the toc pages will come out with page numbers. - \HEADINGSon } \def\finishtitlepage{% @@ -3834,15 +3861,16 @@ $$% \newtoks\oddfootline % footline on odd pages % Now make \makeheadline and \makefootline in Plain TeX use those variables -\headline={{\textfonts\rm +\headline={{\textfonts\rm\frenchspacingsetting \ifchapterpage \ifodd\pageno\the\oddchapheadline\else\the\evenchapheadline\fi \else \ifodd\pageno\the\oddheadline\else\the\evenheadline\fi \fi}} -\footline={{\textfonts\rm \ifodd\pageno \the\oddfootline - \else \the\evenfootline \fi}\HEADINGShook} +\footline={{\textfonts\rm\frenchspacingsetting + \ifodd\pageno \the\oddfootline \else \the\evenfootline \fi}% + \HEADINGShook} \let\HEADINGShook=\relax % Commands to set those variables. @@ -3935,46 +3963,37 @@ $$% } \def\HEADINGSoff{{\globaldefs=1 \headingsoff}} % global setting -\HEADINGSoff % it's the default -% When we turn headings on, set the page number to 1. +% Set the page number to 1. \def\pageone{ \global\pageno=1 \global\arabiccount = \pagecount } +\let\contentsalignmacro = \chappager + +% \def\HEADINGSon{\HEADINGSdouble} % defined by \CHAPPAGon + % For double-sided printing, put current file name in lower left corner, % chapter name on inside top of right hand pages, document % title on inside top of left hand pages, and page numbers on outside top % edge of all pages. -\def\HEADINGSdouble{% -\pageone -\HEADINGSdoublex -} -\let\contentsalignmacro = \chappager - -% For single-sided printing, chapter title goes across top left of page, -% page number on top right. -\def\HEADINGSsingle{% -\pageone -\HEADINGSsinglex -} -\def\HEADINGSon{\HEADINGSdouble} - -\def\HEADINGSafter{\let\HEADINGShook=\HEADINGSdoublex} +\def\HEADINGSafter{\let\HEADINGShook=\HEADINGSdouble} \let\HEADINGSdoubleafter=\HEADINGSafter -\def\HEADINGSdoublex{% +\def\HEADINGSdouble{% \global\evenfootline={\hfil} \global\oddfootline={\hfil} \global\evenheadline={\line{\folio\hfil\thistitle}} \global\oddheadline={\line{\thischapter\hfil\folio}} -\global\evenchapheadline={\line{\folio\hfil}} +\global\evenchapheadline={\line{\folio\hfil\thistitle}} \global\oddchapheadline={\line{\hfil\folio}} \global\let\contentsalignmacro = \chapoddpage } -\def\HEADINGSsingleafter{\let\HEADINGShook=\HEADINGSsinglex} -\def\HEADINGSsinglex{% +% For single-sided printing, chapter title goes across top left of page, +% page number on top right. +\def\HEADINGSsingleafter{\let\HEADINGShook=\HEADINGSsingle} +\def\HEADINGSsingle{% \global\evenfootline={\hfil} \global\oddfootline={\hfil} \global\evenheadline={\line{\thischapter\hfil\folio}} @@ -3986,7 +4005,6 @@ $$% % for @setchapternewpage off \def\HEADINGSsinglechapoff{% -\pageone \global\evenfootline={\hfil} \global\oddfootline={\hfil} \global\evenheadline={\line{\thischapter\hfil\folio}} @@ -4356,8 +4374,7 @@ $$% % undo it ourselves. \def\headitemfont{\b}% for people to use in the template row; not changeable \def\headitem{% - \checkenv\multitable - \crcr + \crcr % must appear first \gdef\headitemcrhook{\nobreak}% attempt to avoid page break after headings \global\everytab={\bf}% can't use \headitemfont since the parsing differs \the\everytab % for the first item @@ -4419,7 +4436,7 @@ $$% % Find the correct column width \hsize=\expandafter\csname col\the\colcount\endcsname % - \rightskip=0pt + \advance\rightskip by -1\rightskip % Zero leaving only any stretch \ifnum\colcount=1 \advance\hsize by\leftskip % Add indent of surrounding text \else @@ -4442,7 +4459,7 @@ $$% \message{conditionals,} -% @iftex, @ifnotdocbook, @ifnothtml, @ifnotinfo, @ifnotplaintext, +% @iftex, @ifnotdocbook, @ifnothtml, @ifnotinfo, @ifnotlatex, @ifnotplaintext, % @ifnotxml always succeed. They currently do nothing; we don't % attempt to check whether the conditionals are properly nested. But we % have to remember that they are conditionals, so that @end doesn't @@ -4456,6 +4473,7 @@ $$% \makecond{ifnotdocbook} \makecond{ifnothtml} \makecond{ifnotinfo} +\makecond{ifnotlatex} \makecond{ifnotplaintext} \makecond{ifnotxml} @@ -4468,10 +4486,12 @@ $$% \def\ifdocbook{\doignore{ifdocbook}} \def\ifhtml{\doignore{ifhtml}} \def\ifinfo{\doignore{ifinfo}} +\def\iflatex{\doignore{iflatex}} \def\ifnottex{\doignore{ifnottex}} \def\ifplaintext{\doignore{ifplaintext}} \def\ifxml{\doignore{ifxml}} \def\ignore{\doignore{ignore}} +\def\latex{\doignore{latex}} \def\menu{\doignore{menu}} \def\xml{\doignore{xml}} @@ -4710,13 +4730,11 @@ $$% % except not \outer, so it can be used within macros and \if's. \edef\newwrite{\makecsname{ptexnewwrite}} -% \newindex {foo} defines an index named IX. +% \newindex {IX} defines an index named IX. % It automatically defines \IXindex such that % \IXindex ...rest of line... puts an entry in the index IX. % It also defines \IXindfile to be the number of the output channel for % the file that accumulates this index. The file's extension is IX. -% The name of an index should be no more than 2 characters long -% for the sake of vms. % \def\newindex#1{% \expandafter\chardef\csname#1indfile\endcsname=0 @@ -4779,21 +4797,6 @@ $$% \def\docodeindexxxx #1{\docind{\indexname}{#1}} -% Used for the aux, toc and index files to prevent expansion of Texinfo -% commands. -% -\def\atdummies{% - \definedummyletter\@% - \definedummyletter\ % - \definedummyletter\{% - \definedummyletter\}% - \definedummyletter\&% - % - % Do the redefinitions. - \definedummies - \otherbackslash -} - % \definedummyword defines \#1 as \string\#1\space, thus effectively % preventing its expansion. This is used only for control words, % not control letters, because the \space would be incorrect for @@ -4809,110 +4812,91 @@ $$% % \def\definedummyword #1{\def#1{\string#1\space}}% \def\definedummyletter#1{\def#1{\string#1}}% -\let\definedummyaccent\definedummyletter -% Called from \atdummies to prevent the expansion of commands. +% Used for the aux, toc and index files to prevent expansion of Texinfo +% commands. Most of the commands are controlled through the +% \ifdummies conditional. % -\def\definedummies{% +\def\atdummies{% + \dummiestrue % - \let\commondummyword\definedummyword - \let\commondummyletter\definedummyletter - \let\commondummyaccent\definedummyaccent - \commondummiesnofonts + \definedummyletter\@% + \definedummyletter\ % + \definedummyletter\{% + \definedummyletter\}% + \definedummyletter\&% % \definedummyletter\_% \definedummyletter\-% % - % Non-English letters. - \definedummyword\AA - \definedummyword\AE - \definedummyword\DH - \definedummyword\L - \definedummyword\O - \definedummyword\OE - \definedummyword\TH - \definedummyword\aa - \definedummyword\ae - \definedummyword\dh - \definedummyword\exclamdown - \definedummyword\l - \definedummyword\o - \definedummyword\oe - \definedummyword\ordf - \definedummyword\ordm - \definedummyword\questiondown - \definedummyword\ss - \definedummyword\th - % - % Although these internal commands shouldn't show up, sometimes they do. - \definedummyword\bf - \definedummyword\gtr - \definedummyword\hat - \definedummyword\less - \definedummyword\sf - \definedummyword\sl - \definedummyword\tclose - \definedummyword\tt - % - \definedummyword\LaTeX - \definedummyword\TeX - % - % Assorted special characters. - \definedummyword\ampchar - \definedummyword\atchar - \definedummyword\arrow - \definedummyword\backslashchar - \definedummyword\bullet - \definedummyword\comma - \definedummyword\copyright - \definedummyword\registeredsymbol - \definedummyword\dots - \definedummyword\enddots - \definedummyword\entrybreak - \definedummyword\equiv - \definedummyword\error - \definedummyword\euro - \definedummyword\expansion - \definedummyword\geq - \definedummyword\guillemetleft - \definedummyword\guillemetright - \definedummyword\guilsinglleft - \definedummyword\guilsinglright - \definedummyword\lbracechar - \definedummyword\leq - \definedummyword\mathopsup - \definedummyword\minus - \definedummyword\ogonek - \definedummyword\pounds - \definedummyword\point - \definedummyword\print - \definedummyword\quotedblbase - \definedummyword\quotedblleft - \definedummyword\quotedblright - \definedummyword\quoteleft - \definedummyword\quoteright - \definedummyword\quotesinglbase - \definedummyword\rbracechar - \definedummyword\result - \definedummyword\sub - \definedummyword\sup - \definedummyword\textdegree - % \definedummyword\subentry % % We want to disable all macros so that they are not expanded by \write. + \let\commondummyword\definedummyword \macrolist \let\value\dummyvalue % - \normalturnoffactive -} - -% \commondummiesnofonts: common to \definedummies and \indexnofonts. -% Define \commondummyletter, \commondummyaccent and \commondummyword before -% using. Used for accents, font commands, and various control letters. -% -\def\commondummiesnofonts{% - % Control letters and accents. + \turnoffactive +} + +\newif\ifdummies +\newif\ifindexnofonts + +\def\commondummyletter#1{% + \expandafter\let\csname\string#1:impl\endcsname#1% + \edef#1{% + \noexpand\ifindexnofonts + % empty expansion + \noexpand\else + \noexpand\ifdummies\string#1% + \noexpand\else + \noexpand\jumptwofi % dispose of the \fi + \expandafter\noexpand\csname\string#1:impl\endcsname + \noexpand\fi + \noexpand\fi}% +} + +\def\commondummyaccent#1{% + \expandafter\let\csname\string#1:impl\endcsname#1% + \edef#1{% + \noexpand\ifindexnofonts + \noexpand\expandafter % dispose of \else ... \fi + \noexpand\asis + \noexpand\else + \noexpand\ifdummies\string#1% + \noexpand\else + \noexpand\jumptwofi % dispose of the \fi + \expandafter\noexpand\csname\string#1:impl\endcsname + \noexpand\fi + \noexpand\fi}% +} + +% Like \commondummyaccent but add a \space at the end of the dummy expansion +% #2 is the expansion used for \indexnofonts. #2 is always followed by +% \asis to remove a pair of following braces. +\def\commondummyword#1#2{% + \expandafter\let\csname\string#1:impl\endcsname#1% + \expandafter\def\csname\string#1:ixnf\endcsname{#2\asis}% + \edef#1{% + \noexpand\ifindexnofonts + \noexpand\expandafter % dispose of \else ... \fi + \expandafter\noexpand\csname\string#1:ixnf\endcsname + \noexpand\else + \noexpand\ifdummies\string#1\space + \noexpand\else + \noexpand\jumptwofi % dispose of the \fi \fi + \expandafter\noexpand\csname\string#1:impl\endcsname + \noexpand\fi + \noexpand\fi}% +} +\def\jumptwofi#1\fi\fi{\fi\fi#1} + +% For \atdummies and \indexnofonts. \atdummies sets +% \dummiestrue and \indexnofonts sets \indexnofontstrue. +\def\definedummies{ + % @-sign is always an escape character when reading auxiliary files + \escapechar = `\@ + % \commondummyletter\!% \commondummyaccent\"% \commondummyaccent\'% @@ -4926,58 +4910,123 @@ $$% \commondummyaccent\^% \commondummyaccent\`% \commondummyaccent\~% - \commondummyword\u - \commondummyword\v - \commondummyword\H - \commondummyword\dotaccent - \commondummyword\ogonek - \commondummyword\ringaccent - \commondummyword\tieaccent - \commondummyword\ubaraccent - \commondummyword\udotaccent - \commondummyword\dotless + % + % Control letters and accents. + \commondummyword\u {}% + \commondummyword\v {}% + \commondummyword\H {}% + \commondummyword\dotaccent {}% + \commondummyword\ogonek {}% + \commondummyword\ringaccent {}% + \commondummyword\tieaccent {}% + \commondummyword\ubaraccent {}% + \commondummyword\udotaccent {}% + \commondummyword\dotless {}% % % Texinfo font commands. - \commondummyword\b - \commondummyword\i - \commondummyword\r - \commondummyword\sansserif - \commondummyword\sc - \commondummyword\slanted - \commondummyword\t + \commondummyword\b {}% + \commondummyword\i {}% + \commondummyword\r {}% + \commondummyword\sansserif {}% + \commondummyword\sc {}% + \commondummyword\slanted {}% + \commondummyword\t {}% % % Commands that take arguments. - \commondummyword\abbr - \commondummyword\acronym - \commondummyword\anchor - \commondummyword\cite - \commondummyword\code - \commondummyword\command - \commondummyword\dfn - \commondummyword\dmn - \commondummyword\email - \commondummyword\emph - \commondummyword\env - \commondummyword\file - \commondummyword\image - \commondummyword\indicateurl - \commondummyword\inforef - \commondummyword\kbd - \commondummyword\key - \commondummyword\math - \commondummyword\option - \commondummyword\pxref - \commondummyword\ref - \commondummyword\samp - \commondummyword\strong - \commondummyword\tie - \commondummyword\U - \commondummyword\uref - \commondummyword\url - \commondummyword\var - \commondummyword\verb - \commondummyword\w - \commondummyword\xref + \commondummyword\abbr {}% + \commondummyword\acronym {}% + \commondummyword\anchor {}% + \commondummyword\cite {}% + \commondummyword\code {}% + \commondummyword\command {}% + \commondummyword\dfn {}% + \commondummyword\dmn {}% + \commondummyword\email {}% + \commondummyword\emph {}% + \commondummyword\env {}% + \commondummyword\file {}% + \commondummyword\image {}% + \commondummyword\indicateurl{}% + \commondummyword\inforef {}% + \commondummyword\kbd {}% + \commondummyword\key {}% + \commondummyword\math {}% + \commondummyword\option {}% + \commondummyword\pxref {}% + \commondummyword\ref {}% + \commondummyword\samp {}% + \commondummyword\strong {}% + \commondummyword\tie {}% + \commondummyword\U {}% + \commondummyword\uref {}% + \commondummyword\url {}% + \commondummyword\var {}% + \commondummyword\verb {}% + \commondummyword\w {}% + \commondummyword\xref {}% + % + \commondummyword\AA {AA}% + \commondummyword\AE {AE}% + \commondummyword\DH {DZZ}% + \commondummyword\L {L}% + \commondummyword\O {O}% + \commondummyword\OE {OE}% + \commondummyword\TH {TH}% + \commondummyword\aa {aa}% + \commondummyword\ae {ae}% + \commondummyword\dh {dzz}% + \commondummyword\exclamdown {!}% + \commondummyword\l {l}% + \commondummyword\o {o}% + \commondummyword\oe {oe}% + \commondummyword\ordf {a}% + \commondummyword\ordm {o}% + \commondummyword\questiondown {?}% + \commondummyword\ss {ss}% + \commondummyword\th {th}% + % + \commondummyword\LaTeX {LaTeX}% + \commondummyword\TeX {TeX}% + % + % Assorted special characters. + \commondummyword\ampchar {\normalamp}% + \commondummyword\atchar {\@}% + \commondummyword\arrow {->}% + \commondummyword\backslashchar {\realbackslash}% + \commondummyword\bullet {bullet}% + \commondummyword\comma {,}% + \commondummyword\copyright {copyright}% + \commondummyword\dots {...}% + \commondummyword\enddots {...}% + \commondummyword\entrybreak {}% + \commondummyword\equiv {===}% + \commondummyword\error {error}% + \commondummyword\euro {euro}% + \commondummyword\expansion {==>}% + \commondummyword\geq {>=}% + \commondummyword\guillemetleft {<<}% + \commondummyword\guillemetright {>>}% + \commondummyword\guilsinglleft {<}% + \commondummyword\guilsinglright {>}% + \commondummyword\lbracechar {\{}% + \commondummyword\leq {<=}% + \commondummyword\mathopsup {sup}% + \commondummyword\minus {-}% + \commondummyword\pounds {pounds}% + \commondummyword\point {.}% + \commondummyword\print {-|}% + \commondummyword\quotedblbase {"}% + \commondummyword\quotedblleft {"}% + \commondummyword\quotedblright {"}% + \commondummyword\quoteleft {`}% + \commondummyword\quoteright {'}% + \commondummyword\quotesinglbase {,}% + \commondummyword\rbracechar {\}}% + \commondummyword\registeredsymbol {R}% + \commondummyword\result {=>}% + \commondummyword\sub {}% + \commondummyword\sup {}% + \commondummyword\textdegree {o}% } \let\indexlbrace\relax @@ -4995,25 +5044,24 @@ $$% \catcode`\-=13 \catcode`\`=13 \gdef\indexnonalnumdisappear{% - \expandafter\ifx\csname SETtxiindexlquoteignore\endcsname\relax\else + \ifflagclear{txiindexlquoteignore}{}{% % @set txiindexlquoteignore makes us ignore left quotes in the sort term. % (Introduced for FSFS 2nd ed.) \let`=\empty - \fi + }% % - \expandafter\ifx\csname SETtxiindexbackslashignore\endcsname\relax\else + \ifflagclear{txiindexbackslashignore}{}{% \backslashdisappear - \fi - % - \expandafter\ifx\csname SETtxiindexhyphenignore\endcsname\relax\else + }% + \ifflagclear{txiindexhyphenignore}{}{% \def-{}% - \fi - \expandafter\ifx\csname SETtxiindexlessthanignore\endcsname\relax\else + }% + \ifflagclear{txiindexlessthanignore}{}{% \def<{}% - \fi - \expandafter\ifx\csname SETtxiindexatsignignore\endcsname\relax\else + }% + \ifflagclear{txiindexatsignignore}{}{% \def\@{}% - \fi + }% } \gdef\indexnonalnumreappear{% @@ -5029,18 +5077,7 @@ $$% % would be for a given command (usually its argument). % \def\indexnofonts{% - % Accent commands should become @asis. - \def\commondummyaccent##1{\let##1\asis}% - % We can just ignore other control letters. - \def\commondummyletter##1{\let##1\empty}% - % All control words become @asis by default; overrides below. - \let\commondummyword\commondummyaccent - \commondummiesnofonts - % - % Don't no-op \tt, since it isn't a user-level command - % and is used in the definitions of the active chars like <, >, |, etc. - % Likewise with the other plain tex font commands. - %\let\tt=\asis + \indexnofontstrue % \def\ { }% \def\@{@}% @@ -5052,84 +5089,19 @@ $$% \let\lbracechar\{% \let\rbracechar\}% % - % Non-English letters. - \def\AA{AA}% - \def\AE{AE}% - \def\DH{DZZ}% - \def\L{L}% - \def\OE{OE}% - \def\O{O}% - \def\TH{TH}% - \def\aa{aa}% - \def\ae{ae}% - \def\dh{dzz}% - \def\exclamdown{!}% - \def\l{l}% - \def\oe{oe}% - \def\ordf{a}% - \def\ordm{o}% - \def\o{o}% - \def\questiondown{?}% - \def\ss{ss}% - \def\th{th}% - % - \let\do\indexnofontsdef - % - \do\LaTeX{LaTeX}% - \do\TeX{TeX}% - % - % Assorted special characters. - \do\atchar{@}% - \do\arrow{->}% - \do\bullet{bullet}% - \do\comma{,}% - \do\copyright{copyright}% - \do\dots{...}% - \do\enddots{...}% - \do\equiv{==}% - \do\error{error}% - \do\euro{euro}% - \do\expansion{==>}% - \do\geq{>=}% - \do\guillemetleft{<<}% - \do\guillemetright{>>}% - \do\guilsinglleft{<}% - \do\guilsinglright{>}% - \do\leq{<=}% - \do\lbracechar{\{}% - \do\minus{-}% - \do\point{.}% - \do\pounds{pounds}% - \do\print{-|}% - \do\quotedblbase{"}% - \do\quotedblleft{"}% - \do\quotedblright{"}% - \do\quoteleft{`}% - \do\quoteright{'}% - \do\quotesinglbase{,}% - \do\rbracechar{\}}% - \do\registeredsymbol{R}% - \do\result{=>}% - \do\textdegree{o}% % % We need to get rid of all macros, leaving only the arguments (if present). % Of course this is not nearly correct, but it is the best we can do for now. - % makeinfo does not expand macros in the argument to @deffn, which ends up - % writing an index entry, and texindex isn't prepared for an index sort entry - % that starts with \. % % Since macro invocations are followed by braces, we can just redefine them % to take a single TeX argument. The case of a macro invocation that % goes to end-of-line is not handled. % + \def\commondummyword##1{\let##1\asis}% \macrolist \let\value\indexnofontsvalue } -% Give the control sequence a definition that removes the {} that follows -% its use, e.g. @AA{} -> AA -\def\indexnofontsdef#1#2{\def#1##1{#2}}% - @@ -5260,7 +5232,10 @@ $$% \xdef\trimmed{\segment}% \xdef\trimmed{\expandafter\eatspaces\expandafter{\trimmed}}% \xdef\indexsortkey{\trimmed}% - \ifx\indexsortkey\empty\xdef\indexsortkey{ }\fi + \ifx\indexsortkey\empty + \message{Empty index sort key near line \the\inputlineno}% + \xdef\indexsortkey{ }% + \fi }\fi % % Append to \fullindexsortkey. @@ -5305,9 +5280,7 @@ $$% % \atdummies % - \expandafter\ifx\csname SETtxiindexescapeisbackslash\endcsname\relax\else - \escapeisbackslash - \fi + \ifflagclear{txiindexescapeisbackslash}{}{\escapeisbackslash}% % % For texindex which always views { and } as separators. \def\{{\lbracechar{}}% @@ -5491,9 +5464,9 @@ $$% % old index files using \ as the escape character. Reading this would % at best lead to typesetting garbage, at worst a TeX syntax error. \def\printindexzz#1#2\finish{% - \expandafter\ifx\csname SETtxiindexescapeisbackslash\endcsname\relax + \ifflagclear{txiindexescapeisbackslash}{% \uccode`\~=`\\ \uppercase{\if\noexpand~}\noexpand#1 - \expandafter\ifx\csname SETtxiskipindexfileswithbackslash\endcsname\relax + \ifflagclear{txiskipindexfileswithbackslash}{% \errmessage{% ERROR: A sorted index file in an obsolete format was skipped. To fix this problem, please upgrade your version of 'texi2dvi' @@ -5509,15 +5482,15 @@ this, Texinfo will try to use index files in the old format. If you continue to have problems, deleting the index files and starting again might help (with 'rm \jobname.?? \jobname.??s')% }% - \else + }{% (Skipped sorted index file in obsolete format) - \fi + }% \else \begindoublecolumns \input \jobname.\indexname s \enddoublecolumns \fi - \else + }{% \begindoublecolumns \catcode`\\=0\relax % @@ -5527,7 +5500,7 @@ might help (with 'rm \jobname.?? \jobname.??s')% \catcode`\@=0\relax \input \jobname.\indexname s \enddoublecolumns - \fi + }% } % These macros are used by the sorted index file itself. @@ -5602,6 +5575,11 @@ might help (with 'rm \jobname.?? \jobname.??s')% \newdimen\entryrightmargin \entryrightmargin=0pt +% for PDF output, whether to make the text of the entry a link to the page +% number. set for @contents and @shortcontents where there is only one +% page number. +\newif\iflinkentrytext + % \entry typesets a paragraph consisting of the text (#1), dot leaders, and % then page number (#2) flushed to the right margin. It is used for index % and table of contents entries. The paragraph is indented by \leftskip. @@ -5628,7 +5606,7 @@ might help (with 'rm \jobname.?? \jobname.??s')% } \def\entrybreak{\unskip\space\ignorespaces}% \def\doentry{% - % Save the text of the entry + % Save the text of the entry in \boxA \global\setbox\boxA=\hbox\bgroup \bgroup % Instead of the swallowed brace. \noindent @@ -5638,12 +5616,21 @@ might help (with 'rm \jobname.?? \jobname.??s')% % with catcodes occurring. } {\catcode`\@=11 +% #1 is the page number \gdef\finishentry#1{% - \egroup % end box A + \egroup % end \boxA \dimen@ = \wd\boxA % Length of text of entry + % add any leaders and page number to \boxA. \global\setbox\boxA=\hbox\bgroup - \unhbox\boxA - % #1 is the page number. + \ifpdforxetex + \iflinkentrytext + \pdflinkpage{#1}{\unhbox\boxA}% + \else + \unhbox\boxA + \fi + \else + \unhbox\boxA + \fi % % Get the width of the page numbers, and only use % leaders if they are present. @@ -5662,6 +5649,8 @@ might help (with 'rm \jobname.?? \jobname.??s')% \fi \fi \egroup % end \boxA + % + % now output \ifdim\wd\boxB = 0pt \noindent\unhbox\boxA\par \nobreak @@ -5963,7 +5952,7 @@ might help (with 'rm \jobname.?? \jobname.??s')% % Chapters, sections, etc. % Let's start with @part. -\outer\parseargdef\part{\partzzz{#1}} +\parseargdef\part{\partzzz{#1}} \def\partzzz#1{% \chapoddpage \null @@ -6361,7 +6350,7 @@ might help (with 'rm \jobname.?? \jobname.??s')% \fi } -\parseargdef\setchapternewpage{\csname CHAPPAG#1\endcsname} +\parseargdef\setchapternewpage{\csname CHAPPAG#1\endcsname\HEADINGSon} \def\CHAPPAGoff{% \global\let\contentsalignmacro = \chappager @@ -6378,7 +6367,7 @@ might help (with 'rm \jobname.?? \jobname.??s')% \global\let\pchapsepmacro=\chapoddpage \global\def\HEADINGSon{\HEADINGSdouble}} -\CHAPPAGon +\setchapternewpage on % \chapmacro - Chapter opening. % @@ -6391,6 +6380,16 @@ might help (with 'rm \jobname.?? \jobname.??s')% \def\Yappendixkeyword{Yappendix} \def\Yomitfromtockeyword{Yomitfromtoc} % +% +% Definitions for @thischapter. These can be overridden in translation +% files. +\def\thischapterAppendix{% + \putwordAppendix{} \thischapternum: \thischaptername} + +\def\thischapterChapter{% + \putwordChapter{} \thischapternum: \thischaptername} +% +% \def\chapmacro#1#2#3{% \expandafter\ifx\thisenv\titlepage\else \checkenv{}% chapters, etc., should not start inside an environment. @@ -6413,22 +6412,14 @@ might help (with 'rm \jobname.?? \jobname.??s')% \xdef\currentchapterdefs{% \gdef\noexpand\thischaptername{\the\toks0}% \gdef\noexpand\thischapternum{\appendixletter}% - % \noexpand\putwordAppendix avoids expanding indigestible - % commands in some of the translations. - \gdef\noexpand\thischapter{\noexpand\putwordAppendix{} - \noexpand\thischapternum: - \noexpand\thischaptername}% + \let\noexpand\thischapter\noexpand\thischapterAppendix }% \else \toks0={#1}% \xdef\currentchapterdefs{% \gdef\noexpand\thischaptername{\the\toks0}% \gdef\noexpand\thischapternum{\the\chapno}% - % \noexpand\putwordChapter avoids expanding indigestible - % commands in some of the translations. - \gdef\noexpand\thischapter{\noexpand\putwordChapter{} - \noexpand\thischapternum: - \noexpand\thischaptername}% + \let\noexpand\thischapter\noexpand\thischapterChapter }% \fi\fi\fi % @@ -6514,6 +6505,12 @@ might help (with 'rm \jobname.?? \jobname.??s')% \def\subsubsecheadingskip{\subsecheadingskip} \def\subsubsecheadingbreak{\subsecheadingbreak} +% Definition for @thissection. This can be overridden in translation +% files. +\def\thissectionDef{% + \putwordSection{} \thissectionnum: \thissectionname} +% + % Print any size, any type, section title. % @@ -6555,11 +6552,7 @@ might help (with 'rm \jobname.?? \jobname.??s')% \xdef\currentsectiondefs{% \gdef\noexpand\thissectionname{\the\toks0}% \gdef\noexpand\thissectionnum{#4}% - % \noexpand\putwordSection avoids expanding indigestible - % commands in some of the translations. - \gdef\noexpand\thissection{\noexpand\putwordSection{} - \noexpand\thissectionnum: - \noexpand\thissectionname}% + \let\noexpand\thissection\noexpand\thissectionDef }% \fi \else @@ -6568,11 +6561,7 @@ might help (with 'rm \jobname.?? \jobname.??s')% \xdef\currentsectiondefs{% \gdef\noexpand\thissectionname{\the\toks0}% \gdef\noexpand\thissectionnum{#4}% - % \noexpand\putwordSection avoids expanding indigestible - % commands in some of the translations. - \gdef\noexpand\thissection{\noexpand\putwordSection{} - \noexpand\thissectionnum: - \noexpand\thissectionname}% + \let\noexpand\thissection\noexpand\thissectionDef }% \fi \fi\fi\fi @@ -6758,8 +6747,14 @@ might help (with 'rm \jobname.?? \jobname.??s')% \def\thistitle{}% no title in double-sided headings % Record where the Roman numerals started. \ifnum\romancount=0 \global\romancount=\pagecount \fi + \linkentrytexttrue } +% \raggedbottom in plain.tex hardcodes \topskip so override it +\catcode`\@=11 +\def\raggedbottom{\advance\topskip by 0pt plus60pt \r@ggedbottomtrue} +\catcode`\@=\other + % redefined for the two-volume lispref. We always output on % \jobname.toc even if this is redefined. % @@ -6822,12 +6817,8 @@ might help (with 'rm \jobname.?? \jobname.??s')% % Get ready to use Arabic numerals again \def\contentsendroman{% \lastnegativepageno = \pageno - \global\pageno = \savepageno - % - % If \romancount > \arabiccount, the contents are at the end of the - % document. Otherwise, advance where the Arabic numerals start for - % the page numbers. - \ifnum\romancount>\arabiccount\else\global\arabiccount=\pagecount\fi + \global\pageno=1 + \contentsendcount = \pagecount } % Typeset the label for a chapter or appendix for the short contents. @@ -6880,7 +6871,7 @@ might help (with 'rm \jobname.?? \jobname.??s')% % Chapters, in the short toc. % See comments in \dochapentry re vbox and related settings. \def\shortchapentry#1#2#3#4{% - \tocentry{\shortchaplabel{#2}\labelspace #1}{\doshortpageno\bgroup#4\egroup}% + \tocentry{\shortchaplabel{#2}\labelspace #1}{#4}% } % Appendices, in the main contents. @@ -6895,7 +6886,7 @@ might help (with 'rm \jobname.?? \jobname.??s')% % Unnumbered chapters. \def\unnchapentry#1#2#3#4{\dochapentry{#1}{#4}} -\def\shortunnchapentry#1#2#3#4{\tocentry{#1}{\doshortpageno\bgroup#4\egroup}} +\def\shortunnchapentry#1#2#3#4{\tocentry{#1}{#4}} % Sections. \def\numsecentry#1#2#3#4{\dosecentry{#2\labelspace#1}{#4}} @@ -6927,24 +6918,24 @@ might help (with 'rm \jobname.?? \jobname.??s')% % Move the page numbers slightly to the right \advance\entryrightmargin by -0.05em \chapentryfonts - \tocentry{#1}{\dopageno\bgroup#2\egroup}% + \tocentry{#1}{#2}% \endgroup \nobreak\vskip .25\baselineskip plus.1\baselineskip } \def\dosecentry#1#2{\begingroup \secentryfonts \leftskip=\tocindent - \tocentry{#1}{\dopageno\bgroup#2\egroup}% + \tocentry{#1}{#2}% \endgroup} \def\dosubsecentry#1#2{\begingroup \subsecentryfonts \leftskip=2\tocindent - \tocentry{#1}{\dopageno\bgroup#2\egroup}% + \tocentry{#1}{#2}% \endgroup} \def\dosubsubsecentry#1#2{\begingroup \subsubsecentryfonts \leftskip=3\tocindent - \tocentry{#1}{\dopageno\bgroup#2\egroup}% + \tocentry{#1}{#2}% \endgroup} % We use the same \entry macro as for the index entries. @@ -6953,9 +6944,6 @@ might help (with 'rm \jobname.?? \jobname.??s')% % Space between chapter (or whatever) number and the title. \def\labelspace{\hskip1em \relax} -\def\dopageno#1{{\rm #1}} -\def\doshortpageno#1{{\rm #1}} - \def\chapentryfonts{\secfonts \rm} \def\secentryfonts{\textfonts} \def\subsecentryfonts{\textfonts} @@ -7100,19 +7088,25 @@ might help (with 'rm \jobname.?? \jobname.??s')% \newdimen\cartouter\newdimen\cartinner \newskip\normbskip\newskip\normpskip\newskip\normlskip - -\envdef\cartouche{% +\envparseargdef\cartouche{% \cartouchefontdefs \ifhmode\par\fi % can't be in the midst of a paragraph. \startsavinginserts \lskip=\leftskip \rskip=\rightskip \leftskip=0pt\rightskip=0pt % we want these *outside*. + % + % Set paragraph width for text inside cartouche. There are + % left and right margins of 3pt each plus two vrules 0.4pt each. \cartinner=\hsize \advance\cartinner by-\lskip \advance\cartinner by-\rskip + \advance\cartinner by -6.8pt + % + % For drawing top and bottom of cartouche. Each corner char + % adds 6pt and we take off the width of a rule to line up with the + % right boundary perfectly. \cartouter=\hsize - \advance\cartouter by 18.4pt % allow for 3pt kerns on either - % side, and for 6pt waste from - % each corner char, and rule thickness + \advance\cartouter by 11.6pt + % \normbskip=\baselineskip \normpskip=\parskip \normlskip=\lineskip % % If this cartouche directly follows a sectioning command, we need the @@ -7120,20 +7114,23 @@ might help (with 'rm \jobname.?? \jobname.??s')% % collide with the section heading. \ifnum\lastpenalty>10000 \vskip\parskip \penalty\lastpenalty \fi % - \setbox\groupbox=\vbox\bgroup + \setbox\groupbox=\vtop\bgroup \baselineskip=0pt\parskip=0pt\lineskip=0pt \carttop \hbox\bgroup - \hskip\lskip - \vrule\kern3pt - \vbox\bgroup - \kern3pt - \hsize=\cartinner - \baselineskip=\normbskip - \lineskip=\normlskip - \parskip=\normpskip - \vskip -\parskip - \comment % For explanation, see the end of def\group. + \hskip\lskip + \vrule\kern3pt + \vbox\bgroup + \hsize=\cartinner + \baselineskip=\normbskip + \lineskip=\normlskip + \parskip=\normpskip + \def\arg{#1}% + \ifx\arg\empty\else + \centerV{\hfil \bf #1 \hfil}% + \fi + \kern3pt + \vskip -\parskip } \def\Ecartouche{% \ifhmode\par\fi @@ -7287,22 +7284,6 @@ might help (with 'rm \jobname.?? \jobname.??s')% } \let\Eraggedright\par -\envdef\raggedleft{% - \parindent=0pt \leftskip0pt plus2em - \spaceskip.3333em \xspaceskip.5em \parfillskip=0pt - \hbadness=10000 % Last line will usually be underfull, so turn off - % badness reporting. -} -\let\Eraggedleft\par - -\envdef\raggedcenter{% - \parindent=0pt \rightskip0pt plus1em \leftskip0pt plus1em - \spaceskip.3333em \xspaceskip.5em \parfillskip=0pt - \hbadness=10000 % Last line will usually be underfull, so turn off - % badness reporting. -} -\let\Eraggedcenter\par - % @quotation does normal linebreaking (hence we can't use \nonfillstart) % and narrows the margins. We keep \parskip nonzero in general, since @@ -7400,8 +7381,9 @@ might help (with 'rm \jobname.?? \jobname.??s')% \endgroup % \def\setupverb{% - \tt % easiest (and conventionally used) font for verbatim + \tt \def\par{\leavevmode\endgraf}% + \parindent = 0pt \setcodequotes \tabeightspaces % Respect line breaks, @@ -7525,9 +7507,11 @@ might help (with 'rm \jobname.?? \jobname.??s')% % file; b) letting users define the frontmatter in as flexible order as % possible is desirable. % -\def\copying{\checkenv{}\begingroup\scanargctxt\docopying} -\def\docopying#1@end copying{\endgroup\def\copyingtext{#1}} -% +\def\copying{\checkenv{}\begingroup\macrobodyctxt\docopying} +{\catcode`\ =\other +\gdef\docopying#1@end copying{\endgroup\def\copyingtext{#1}} +} + \def\insertcopying{% \begingroup \parindent = 0pt % paragraph indentation looks wrong on title page @@ -7575,31 +7559,19 @@ might help (with 'rm \jobname.?? \jobname.??s')% \exdentamount=\defbodyindent } -\def\dodefunx#1{% - % First, check whether we are in the right environment: - \checkenv#1% - % - % As above, allow line break if we have multiple x headers in a row. - % It's not a great place, though. - \ifnum\lastpenalty=10002 \penalty3000 \else \defunpenalty=10002 \fi - % - % And now, it's time to reuse the body of the original defun: - \expandafter\gobbledefun#1% -} -\def\gobbledefun#1\startdefun{} - -% \printdefunline \deffnheader{text} +% Called as \printdefunline \deffooheader{text} % \def\printdefunline#1#2{% \begingroup - % call \deffnheader: + \plainfrenchspacing + % call \deffooheader: #1#2 \endheader % common ending: \interlinepenalty = 10000 \advance\rightskip by 0pt plus 1fil\relax \endgraf \nobreak\vskip -\parskip - \penalty\defunpenalty % signal to \startdefun and \dodefunx + \penalty\defunpenalty % signal to \startdefun and \deffoox % Some of the @defun-type tags do not enable magic parentheses, % rendering the following check redundant. But we don't optimize. \checkparencounts @@ -7608,29 +7580,51 @@ might help (with 'rm \jobname.?? \jobname.??s')% \def\Edefun{\endgraf\medbreak} -% \makedefun{deffn} creates \deffn, \deffnx and \Edeffn; -% the only thing remaining is to define \deffnheader. +% @defblock, @defline do not automatically create index entries +\envdef\defblock{% + \startdefun +} +\let\Edefblock\Edefun + +\def\defline{% + \doingtypefnfalse + \parseargusing\activeparens{\printdefunline\deflineheader}% +} +\def\deflineheader#1 #2 #3\endheader{% + \printdefname{#1}{}{#2}\magicamp\defunargs{#3\unskip}% +} +\def\deftypeline{% + \doingtypefntrue + \parseargusing\activeparens{\printdefunline\deflineheader}% +} + +% \makedefun{deffoo} (\deffooheader parameters) { (\deffooheader expansion) } % +% Define \deffoo, \deffoox \Edeffoo and \deffooheader. \def\makedefun#1{% \expandafter\let\csname E#1\endcsname = \Edefun \edef\temp{\noexpand\domakedefun \makecsname{#1}\makecsname{#1x}\makecsname{#1header}}% \temp } - -% \domakedefun \deffn \deffnx \deffnheader { (defn. of \deffnheader) } -% -% Define \deffn and \deffnx, without parameters. -% \deffnheader has to be defined explicitly. -% \def\domakedefun#1#2#3{% \envdef#1{% \startdefun \doingtypefnfalse % distinguish typed functions from all else \parseargusing\activeparens{\printdefunline#3}% }% - \def#2{\dodefunx#1}% - \def#3% + \def#2{% + % First, check whether we are in the right environment: + \checkenv#1% + % + % As in \startdefun, allow line break if we have multiple x headers + % in a row. It's not a great place, though. + \ifnum\lastpenalty=10002 \penalty3000 \else \defunpenalty=10002 \fi + % + \doingtypefnfalse % distinguish typed functions from all else + \parseargusing\activeparens{\printdefunline#3}% + }% + \def#3% definition of \deffooheader follows } \newif\ifdoingtypefn % doing typed function? @@ -7655,74 +7649,51 @@ might help (with 'rm \jobname.?? \jobname.??s')% \fi\fi } -% \dosubind {index}{topic}{subtopic} -% -% If SUBTOPIC is present, precede it with a space, and call \doind. -% (At some time during the 20th century, this made a two-level entry in an -% index such as the operation index. Nobody seemed to notice the change in -% behaviour though.) -\def\dosubind#1#2#3{% - \def\thirdarg{#3}% - \ifx\thirdarg\empty - \doind{#1}{#2}% - \else - \doind{#1}{#2\space#3}% - \fi -} - % Untyped functions: % @deffn category name args -\makedefun{deffn}{\deffngeneral{}} - -% @deffn category class name args -\makedefun{defop}#1 {\defopon{#1\ \putwordon}} - -% \defopon {category on}class name args -\def\defopon#1#2 {\deffngeneral{\putwordon\ \code{#2}}{#1\ \code{#2}} } +\makedefun{deffn}#1 #2 #3\endheader{% + \doind{fn}{\code{#2}}% + \printdefname{#1}{}{#2}\magicamp\defunargs{#3\unskip}% +} -% \deffngeneral {subind}category name args -% -\def\deffngeneral#1#2 #3 #4\endheader{% - \dosubind{fn}{\code{#3}}{#1}% - \defname{#2}{}{#3}\magicamp\defunargs{#4\unskip}% +% @defop category class name args +\makedefun{defop}#1 {\defopheaderx{#1\ \putwordon}} +\def\defopheaderx#1#2 #3 #4\endheader{% + \doind{fn}{\code{#3}\space\putwordon\ \code{#2}}% + \printdefname{#1\ \code{#2}}{}{#3}\magicamp\defunargs{#4\unskip}% } % Typed functions: % @deftypefn category type name args -\makedefun{deftypefn}{\deftypefngeneral{}} +\makedefun{deftypefn}#1 #2 #3 #4\endheader{% + \doind{fn}{\code{#3}}% + \doingtypefntrue + \printdefname{#1}{#2}{#3}\defunargs{#4\unskip}% +} % @deftypeop category class type name args -\makedefun{deftypeop}#1 {\deftypeopon{#1\ \putwordon}} - -% \deftypeopon {category on}class type name args -\def\deftypeopon#1#2 {\deftypefngeneral{\putwordon\ \code{#2}}{#1\ \code{#2}} } - -% \deftypefngeneral {subind}category type name args -% -\def\deftypefngeneral#1#2 #3 #4 #5\endheader{% - \dosubind{fn}{\code{#4}}{#1}% +\makedefun{deftypeop}#1 {\deftypeopheaderx{#1\ \putwordon}} +\def\deftypeopheaderx#1#2 #3 #4 #5\endheader{% + \doind{fn}{\code{#4}\space\putwordon\ \code{#1\ \code{#2}}}% \doingtypefntrue - \defname{#2}{#3}{#4}\defunargs{#5\unskip}% + \printdefname{#1\ \code{#2}}{#3}{#4}\defunargs{#5\unskip}% } % Typed variables: % @deftypevr category type var args -\makedefun{deftypevr}{\deftypecvgeneral{}} +\makedefun{deftypevr}#1 #2 #3 #4\endheader{% + \doind{vr}{\code{#3}}% + \printdefname{#1}{#2}{#3}\defunargs{#4\unskip}% +} % @deftypecv category class type var args -\makedefun{deftypecv}#1 {\deftypecvof{#1\ \putwordof}} - -% \deftypecvof {category of}class type var args -\def\deftypecvof#1#2 {\deftypecvgeneral{\putwordof\ \code{#2}}{#1\ \code{#2}} } - -% \deftypecvgeneral {subind}category type var args -% -\def\deftypecvgeneral#1#2 #3 #4 #5\endheader{% - \dosubind{vr}{\code{#4}}{#1}% - \defname{#2}{#3}{#4}\defunargs{#5\unskip}% +\makedefun{deftypecv}#1 {\deftypecvheaderx{#1\ \putwordof}} +\def\deftypecvheaderx#1#2 #3 #4 #5\endheader{% + \doind{vr}{\code{#4}\space\putwordof\ \code{#2}}% + \printdefname{#1\ \code{#2}}{#3}{#4}\defunargs{#5\unskip}% } % Untyped variables: @@ -7731,17 +7702,15 @@ might help (with 'rm \jobname.?? \jobname.??s')% \makedefun{defvr}#1 {\deftypevrheader{#1} {} } % @defcv category class var args -\makedefun{defcv}#1 {\defcvof{#1\ \putwordof}} - -% \defcvof {category of}class var args -\def\defcvof#1#2 {\deftypecvof{#1}#2 {} } +\makedefun{defcv}#1 {\defcvheaderx{#1\ \putwordof}} +\def\defcvheaderx#1#2 {\deftypecvheaderx{#1}#2 {} } % Types: % @deftp category name args \makedefun{deftp}#1 #2 #3\endheader{% \doind{tp}{\code{#2}}% - \defname{#1}{}{#2}\defunargs{#3\unskip}% + \printdefname{#1}{}{#2}\defunargs{#3\unskip}% } % Remaining @defun-like shortcuts: @@ -7752,19 +7721,19 @@ might help (with 'rm \jobname.?? \jobname.??s')% \makedefun{defvar}{\defvrheader{\putwordDefvar} } \makedefun{defopt}{\defvrheader{\putwordDefopt} } \makedefun{deftypevar}{\deftypevrheader{\putwordDefvar} } -\makedefun{defmethod}{\defopon\putwordMethodon} -\makedefun{deftypemethod}{\deftypeopon\putwordMethodon} -\makedefun{defivar}{\defcvof\putwordInstanceVariableof} -\makedefun{deftypeivar}{\deftypecvof\putwordInstanceVariableof} +\makedefun{defmethod}{\defopheaderx\putwordMethodon} +\makedefun{deftypemethod}{\deftypeopheaderx\putwordMethodon} +\makedefun{defivar}{\defcvheaderx\putwordInstanceVariableof} +\makedefun{deftypeivar}{\deftypecvheaderx\putwordInstanceVariableof} -% \defname, which formats the name of the @def (not the args). +% \printdefname, which formats the name of the @def (not the args). % #1 is the category, such as "Function". % #2 is the return type, if any. % #3 is the function name. % % We are followed by (but not passed) the arguments, if any. % -\def\defname#1#2#3{% +\def\printdefname#1#2#3{% \par % Get the values of \leftskip and \rightskip as they were outside the @def... \advance\leftskip by -\defbodyindent @@ -7774,9 +7743,7 @@ might help (with 'rm \jobname.?? \jobname.??s')% \rettypeownlinefalse \ifdoingtypefn % doing a typed function specifically? % then check user option for putting return type on its own line: - \expandafter\ifx\csname SETtxideftypefnnl\endcsname\relax \else - \rettypeownlinetrue - \fi + \ifflagclear{txideftypefnnl}{}{\rettypeownlinetrue}% \fi % % How we'll format the category name. Putting it in brackets helps @@ -7841,30 +7808,22 @@ might help (with 'rm \jobname.?? \jobname.??s')% \fi % no return type #3% output function name }% - {\rm\enskip}% hskip 0.5 em of \rmfont + \ifflagclear{txidefnamenospace}{% + {\rm\enskip}% hskip 0.5 em of \rmfont + }{}% % \boldbrax % arguments will be output next, if any. } -% Print arguments in slanted roman (not ttsl), inconsistently with using -% tt for the name. This is because literal text is sometimes needed in -% the argument list (groff manual), and ttsl and tt are not very -% distinguishable. Prevent hyphenation at `-' chars. -% +% Print arguments. Use slanted for @def*, typewriter for @deftype*. \def\defunargs#1{% - % use sl by default (not ttsl), - % tt for the names. - \df \sl \hyphenchar\font=0 - % - % On the other hand, if an argument has two dashes (for instance), we - % want a way to get ttsl. We used to recommend @var for that, so - % leave the code in, but it's strange for @var to lead to typewriter. - % Nowadays we recommend @code, since the difference between a ttsl hyphen - % and a tt hyphen is pretty tiny. @code also disables ?` !`. - \def\var##1{{\setregularquotes\ttslanted{##1}}}% - #1% - \sl\hyphenchar\font=45 + \bgroup + \df \ifdoingtypefn \tt \else \sl \fi + \ifflagclear{txicodevaristt}{}% + {\def\var##1{{\setregularquotes \ttsl ##1}}}% + #1% + \egroup } % We want ()&[] to print specially on the defun line. @@ -7883,9 +7842,12 @@ might help (with 'rm \jobname.?? \jobname.??s')% % so TeX would otherwise complain about undefined control sequence. { \activeparens - \global\let(=\lparen \global\let)=\rparen - \global\let[=\lbrack \global\let]=\rbrack - \global\let& = \& + \gdef\defcharsdefault{% + \let(=\lparen \let)=\rparen + \let[=\lbrack \let]=\rbrack + \let& = \&% + } + \globaldefs=1 \defcharsdefault \gdef\boldbrax{\let(=\opnr\let)=\clnr\let[=\lbrb\let]=\rbrb} \gdef\magicamp{\let&=\amprm} @@ -7896,7 +7858,7 @@ might help (with 'rm \jobname.?? \jobname.??s')% % If we encounter &foo, then turn on ()-hacking afterwards \newif\ifampseen -\def\amprm#1 {\ampseentrue{\bf\ }} +\def\amprm#1 {\ampseentrue{\rm\ }} \def\parenfont{% \ifampseen @@ -8069,24 +8031,17 @@ might help (with 'rm \jobname.?? \jobname.??s')% \catcode`\_=\other \catcode`\|=\other \catcode`\~=\other - \passthroughcharstrue -} - -\def\scanargctxt{% used for copying and captions, not macros. - \scanctxt \catcode`\@=\other - \catcode`\\=\other \catcode`\^^M=\other + \catcode`\\=\active + \passthroughcharstrue } -\def\macrobodyctxt{% used for @macro definitions +\def\macrobodyctxt{% used for @macro definitions and @copying \scanctxt \catcode`\ =\other - \catcode`\@=\other \catcode`\{=\other \catcode`\}=\other - \catcode`\^^M=\other - \usembodybackslash } % Used when scanning braced macro arguments. Note, however, that catcode @@ -8095,14 +8050,10 @@ might help (with 'rm \jobname.?? \jobname.??s')% \def\macroargctxt{% \scanctxt \catcode`\ =\active - \catcode`\@=\other - \catcode`\^^M=\other - \catcode`\\=\active } \def\macrolineargctxt{% used for whole-line arguments without braces \scanctxt - \catcode`\@=\other \catcode`\{=\other \catcode`\}=\other } @@ -8146,7 +8097,7 @@ might help (with 'rm \jobname.?? \jobname.??s')% \global\expandafter\let\csname ismacro.\the\macname\endcsname=1% \addtomacrolist{\the\macname}% \fi - \begingroup \macrobodyctxt + \begingroup \macrobodyctxt \usembodybackslash \ifrecursive \expandafter\parsermacbody \else \expandafter\parsemacbody \fi} @@ -8231,12 +8182,12 @@ might help (with 'rm \jobname.?? \jobname.??s')% % % We are in \macrobodyctxt, and the \xdef causes backslashshes in the macro % body to be transformed. -% Set \macrobody to the body of the macro, and call \defmacro. +% Set \macrobody to the body of the macro, and call \macrodef. % {\catcode`\ =\other\long\gdef\parsemacbody#1@end macro{% -\xdef\macrobody{\eatcr{#1}}\endgroup\defmacro}}% +\xdef\macrobody{\eatcr{#1}}\endgroup\macrodef}}% {\catcode`\ =\other\long\gdef\parsermacbody#1@end rmacro{% -\xdef\macrobody{\eatcr{#1}}\endgroup\defmacro}}% +\xdef\macrobody{\eatcr{#1}}\endgroup\macrodef}}% % Make @ a letter, so that we can make private-to-Texinfo macro names. \edef\texiatcatcode{\the\catcode`\@} @@ -8455,35 +8406,36 @@ might help (with 'rm \jobname.?? \jobname.??s')% % \xdef is used so that macro definitions will survive the file % they're defined in: @include reads the file inside a group. % -\def\defmacro{% +\def\macrodef{% \let\hash=##% convert placeholders to macro parameter chars \ifnum\paramno=1 - \def\xeatspaces##1{##1}% - % This removes the pair of braces around the argument. We don't - % use \eatspaces, because this can cause ends of lines to be lost - % when the argument to \eatspaces is read, leading to line-based - % commands like "@itemize" not being read correctly. + \long\def\xeatspaces##1{##1}% + % We don't use \xeatspaces for single-argument macros, because we + % want to keep ends of lines. This definition removes \xeatspaces + % when \macrobody is expanded below. \else - \let\xeatspaces\relax % suppress expansion + \def\xeatspaces{\string\xeatspaces}% + % This expands \xeatspaces as a sequence of character tokens, which + % stops \scantokens inserting an extra space after the control sequence. \fi \ifcase\paramno % 0 \expandafter\xdef\csname\the\macname\endcsname{% - \bgroup + \begingroup \noexpand\spaceisspace \noexpand\endlineisspace \noexpand\expandafter % skip any whitespace after the macro name. \expandafter\noexpand\csname\the\macname @@@\endcsname}% \expandafter\xdef\csname\the\macname @@@\endcsname{% - \egroup + \endgroup \noexpand\scanmacro{\macrobody}}% \or % 1 \expandafter\xdef\csname\the\macname\endcsname{% - \bgroup + \begingroup \noexpand\braceorline \expandafter\noexpand\csname\the\macname @@@\endcsname}% \expandafter\xdef\csname\the\macname @@@\endcsname##1{% - \egroup + \endgroup \noexpand\scanmacro{\macrobody}% }% \else % at most 9 @@ -8494,7 +8446,7 @@ might help (with 'rm \jobname.?? \jobname.??s')% % @MACNAME@@@ removes braces surrounding the argument list. % @MACNAME@@@@ scans the macro body with arguments substituted. \expandafter\xdef\csname\the\macname\endcsname{% - \bgroup + \begingroup \noexpand\expandafter % This \expandafter skip any spaces after the \noexpand\macroargctxt % macro before we change the catcode of space. \noexpand\expandafter @@ -8508,7 +8460,7 @@ might help (with 'rm \jobname.?? \jobname.??s')% \expandafter\xdef \expandafter\expandafter \csname\the\macname @@@@\endcsname\paramlist{% - \egroup\noexpand\scanmacro{\macrobody}}% + \endgroup\noexpand\scanmacro{\macrobody}}% \else % 10 or more: \expandafter\xdef\csname\the\macname\endcsname{% \noexpand\getargvals@{\the\macname}{\argl}% @@ -8630,6 +8582,75 @@ might help (with 'rm \jobname.?? \jobname.??s')% \fi \macnamexxx} +% @linemacro + +\parseargdef\linemacro{% + \getargs{#1}% now \macname is the macname and \argl the arglist + \ifx\argl\empty + \paramno=0 + \let\hash\relax + \def\paramlist{\hash 1\endlinemacro}% + \else + \expandafter\linegetparamlist\argl;% + \fi + \begingroup \macrobodyctxt \usembodybackslash + \parselinemacrobody +} + +% Build up \paramlist which will be used as the parameter text for the macro. +% At the end it will be like "#1 #2 #3\endlinemacro". +\def\linegetparamlist#1;{% + \paramno=0\def\paramlist{}% + \let\hash\relax + \linegetparamlistxxx#1,;,% +} +\def\linegetparamlistxxx#1,{% + \if#1;\let\next=\linegetparamlistxxxx + \else \let\next=\linegetparamlistxxx + \advance\paramno by 1 + \expandafter\edef\csname macarg.\eatspaces{#1}\endcsname + {\hash\the\paramno}% + \edef\paramlist{\paramlist\hash\the\paramno\space}% + \fi\next} +\def\linegetparamlistxxxx{% + \expandafter\fixparamlist\paramlist\fixparamlist +} +% Replace final space token +\def\fixparamlist#1 \fixparamlist{% + \def\paramlist{#1\endlinemacro}% +} + +% Read the body of the macro, replacing backslash-surrounded variables +% +{\catcode`\ =\other\long\gdef\parselinemacrobody#1@end linemacro{% +\xdef\macrobody{#1}% +\endgroup +\linemacrodef +}} + +% Make the definition +\def\linemacrodef{% + \let\hash=##% + \expandafter\xdef\csname\the\macname\endcsname{% + \bgroup + \noexpand\parsearg + \expandafter\noexpand\csname\the\macname @@\endcsname + } + \expandafter\xdef\csname\the\macname @@\endcsname##1{% + \egroup + \expandafter\noexpand + \csname\the\macname @@@\endcsname##1\noexpand\endlinemacro + } + \expandafter\expandafter + \expandafter\xdef + \expandafter\expandafter\csname\the\macname @@@\endcsname\paramlist{% + \newlinechar=13 % split \macrobody into lines + \noexpand\scantokens{\macrobody}% + } +} + + + % @alias. % We need some trickery to remove the optional spaces around the equal % sign. Make them active and then expand them all to nothing. @@ -8681,9 +8702,11 @@ might help (with 'rm \jobname.?? \jobname.??s')% } \def\wordTop{Top} -% Until the next @node or @bye command, divert output to a box that is not -% output. -\def\ignorenode{\setbox\dummybox\vbox\bgroup\def\node{\egroup\node}% +% Until the next @node, @part or @bye command, divert output to a box that +% is not output. +\def\ignorenode{\setbox\dummybox\vbox\bgroup +\def\part{\egroup\part}% +\def\node{\egroup\node}% \ignorenodebye } @@ -8948,12 +8971,11 @@ might help (with 'rm \jobname.?? \jobname.??s')% % output the `[mynode]' via the macro below so it can be overridden. \xrefprintnodename\printedrefname % - \expandafter\ifx\csname SETtxiomitxrefpg\endcsname\relax - % But we always want a comma and a space: - ,\space - % + \ifflagclear{txiomitxrefpg}{% + % We always want a comma + ,% % output the `page 3'. - \turnoffactive \putwordpage\tie\refx{#1-pg}% + \turnoffactive \putpageref{#1}% % Add a , if xref followed by a space \if\space\noexpand\tokenafterxref ,% \else\ifx\ \tokenafterxref ,% @TAB @@ -8963,12 +8985,16 @@ might help (with 'rm \jobname.?? \jobname.??s')% \tokenafterxref ,% @NL \else\ifx\tie\tokenafterxref ,% @tie \fi\fi\fi\fi\fi\fi - \fi + }{}% \fi\fi \fi \endlink \endgroup} +% can be overridden in translation files +\def\putpageref#1{% + \space\putwordpage\tie\refx{#1-pg}} + % Output a cross-manual xref to #1. Used just above (twice). % % Only include the text "Section ``foo'' in" if the foo is neither @@ -9380,6 +9406,12 @@ might help (with 'rm \jobname.?? \jobname.??s')% \imagexxx #1,,,,,\finish \fi } + +% Approximate height of a line in the standard text font. +\newdimen\capheight +\setbox0=\vbox{\tenrm H} +\capheight=\ht0 + % % Arguments to @image: % #1 is (mandatory) image filename; we tack on .eps extension. @@ -9392,32 +9424,30 @@ might help (with 'rm \jobname.?? \jobname.??s')% \catcode`\^^M = 5 % in case we're inside an example \normalturnoffactive % allow _ et al. in names \makevalueexpandable - % If the image is by itself, center it. \ifvmode \imagevmodetrue - \else \ifx\centersub\centerV - % for @center @image, we need a vbox so we can have our vertical space - \imagevmodetrue - \vbox\bgroup % vbox has better behavior than vtop herev - \fi\fi - % - \ifimagevmode - \nobreak\medskip + \medskip % Usually we'll have text after the image which will insert % \parskip glue, so insert it here too to equalize the space % above and below. - \nobreak\vskip\parskip - \nobreak + \vskip\parskip + % + % Place image in a \vtop for a top page margin that is (close to) correct, + % as \topskip glue is relative to the first baseline. + \vtop\bgroup \kern -\capheight \vskip-\parskip \fi % - % Leave vertical mode so that indentation from an enclosing - % environment such as @quotation is respected. - % However, if we're at the top level, we don't want the - % normal paragraph indentation. - % On the other hand, if we are in the case of @center @image, we don't - % want to start a paragraph, which will create a hsize-width box and - % eradicate the centering. - \ifx\centersub\centerV \else \imageindent \fi + \ifx\centersub\centerV + % For @center @image, enter vertical mode and add vertical space + % Enter an extra \parskip because @center doesn't add space itself. + \vbox\bgroup\vskip\parskip\medskip\vskip\parskip + \else + % Enter horizontal mode so that indentation from an enclosing + % environment such as @quotation is respected. + % However, if we're at the top level, we don't want the + % normal paragraph indentation. + \imageindent + \fi % % Output the image. \ifpdf @@ -9439,9 +9469,13 @@ might help (with 'rm \jobname.?? \jobname.??s')% \fi % \ifimagevmode + \egroup \medskip % space after a standalone image \fi - \ifx\centersub\centerV \egroup \fi + \ifx\centersub\centerV % @center @image + \medskip + \egroup % close \vbox + \fi \endgroup} @@ -9608,8 +9642,8 @@ might help (with 'rm \jobname.?? \jobname.??s')% % \def\caption{\docaption\thiscaption} \def\shortcaption{\docaption\thisshortcaption} -\def\docaption{\checkenv\float \bgroup\scanargctxt\defcaption} -\def\defcaption#1#2{\egroup \def#1{#2}} +\def\docaption{\checkenv\float \bgroup\scanctxt\docaptionz} +\def\docaptionz#1#2{\egroup \def#1{#2}} % The parameter is the control sequence identifying the counter we are % going to use. Create it if it doesn't exist and assign it to \floatno. @@ -9898,12 +9932,10 @@ directory should work if nowhere else does.} % For native Unicode handling (XeTeX and LuaTeX) \nativeunicodechardefs \else - % For treating UTF-8 as byte sequences (TeX, eTeX and pdfTeX) + % For treating UTF-8 as byte sequences (TeX, eTeX and pdfTeX). + % Since we already invoke \utfeightchardefs at the top level, + % making non-ascii chars active is sufficient. \setnonasciicharscatcode\active - % since we already invoked \utfeightchardefs at the top level - % (below), do not re-invoke it, otherwise our check for duplicated - % definitions gets triggered. Making non-ascii chars active is - % sufficient. \fi % \else @@ -9928,7 +9960,6 @@ directory should work if nowhere else does.} \fi } -% emacs-page % A message to be logged when using a character that isn't available % the default font encoding (OT1). % @@ -9937,12 +9968,6 @@ directory should work if nowhere else does.} % Take account of \c (plain) vs. \, (Texinfo) difference. \def\cedilla#1{\ifx\c\ptexc\c{#1}\else\,{#1}\fi} -% First, make active non-ASCII characters in order for them to be -% correctly categorized when TeX reads the replacement text of -% macros containing the character definitions. -\setnonasciicharscatcode\active -% - \def\gdefchar#1#2{% \gdef#1{% \ifpassthroughchars @@ -9952,8 +9977,14 @@ directory should work if nowhere else does.} \fi }} +\begingroup + +% Make non-ASCII characters active for defining the character definition +% macros. +\setnonasciicharscatcode\active + % Latin1 (ISO-8859-1) character definitions. -\def\latonechardefs{% +\gdef\latonechardefs{% \gdefchar^^a0{\tie} \gdefchar^^a1{\exclamdown} \gdefchar^^a2{{\tcfont \char162}} % cent @@ -10058,7 +10089,7 @@ directory should work if nowhere else does.} } % Latin9 (ISO-8859-15) encoding character definitions. -\def\latninechardefs{% +\gdef\latninechardefs{% % Encoding is almost identical to Latin1. \latonechardefs % @@ -10073,7 +10104,7 @@ directory should work if nowhere else does.} } % Latin2 (ISO-8859-2) character definitions. -\def\lattwochardefs{% +\gdef\lattwochardefs{% \gdefchar^^a0{\tie} \gdefchar^^a1{\ogonek{A}} \gdefchar^^a2{\u{}} @@ -10091,7 +10122,7 @@ directory should work if nowhere else does.} \gdefchar^^ae{\v Z} \gdefchar^^af{\dotaccent Z} % - \gdefchar^^b0{\textdegree{}} + \gdefchar^^b0{\textdegree} \gdefchar^^b1{\ogonek{a}} \gdefchar^^b2{\ogonek{ }} \gdefchar^^b3{\l} @@ -10177,6 +10208,8 @@ directory should work if nowhere else does.} \gdefchar^^ff{\dotaccent{}} } +\endgroup % active chars + % UTF-8 character definitions. % % This code to support UTF-8 is based on LaTeX's utf8.def, with some @@ -10328,9 +10361,9 @@ directory should work if nowhere else does.} % Given the value in \countUTFz as a Unicode code point, set \UTFviiiTmp % to the corresponding UTF-8 sequence. \gdef\parseXMLCharref{% - \ifnum\countUTFz < "A0\relax + \ifnum\countUTFz < "20\relax \errhelp = \EMsimple - \errmessage{Cannot define Unicode char value < 00A0}% + \errmessage{Cannot define Unicode char value < 0020}% \else\ifnum\countUTFz < "800\relax \parseUTFviiiA,% \parseUTFviiiB C\UTFviiiTwoOctetsName.,% @@ -10400,6 +10433,103 @@ directory should work if nowhere else does.} % least make most of the characters not bomb out. % \def\unicodechardefs{% + \DeclareUnicodeCharacter{0020}{ } % space + \DeclareUnicodeCharacter{0021}{\char"21 }% % space to terminate number + \DeclareUnicodeCharacter{0022}{\char"22 }% + \DeclareUnicodeCharacter{0023}{\char"23 }% + \DeclareUnicodeCharacter{0024}{\char"24 }% + \DeclareUnicodeCharacter{0025}{\char"25 }% + \DeclareUnicodeCharacter{0026}{\char"26 }% + \DeclareUnicodeCharacter{0027}{\char"27 }% + \DeclareUnicodeCharacter{0028}{\char"28 }% + \DeclareUnicodeCharacter{0029}{\char"29 }% + \DeclareUnicodeCharacter{002A}{\char"2A }% + \DeclareUnicodeCharacter{002B}{\char"2B }% + \DeclareUnicodeCharacter{002C}{\char"2C }% + \DeclareUnicodeCharacter{002D}{\char"2D }% + \DeclareUnicodeCharacter{002E}{\char"2E }% + \DeclareUnicodeCharacter{002F}{\char"2F }% + \DeclareUnicodeCharacter{0030}{0}% + \DeclareUnicodeCharacter{0031}{1}% + \DeclareUnicodeCharacter{0032}{2}% + \DeclareUnicodeCharacter{0033}{3}% + \DeclareUnicodeCharacter{0034}{4}% + \DeclareUnicodeCharacter{0035}{5}% + \DeclareUnicodeCharacter{0036}{6}% + \DeclareUnicodeCharacter{0037}{7}% + \DeclareUnicodeCharacter{0038}{8}% + \DeclareUnicodeCharacter{0039}{9}% + \DeclareUnicodeCharacter{003A}{\char"3A }% + \DeclareUnicodeCharacter{003B}{\char"3B }% + \DeclareUnicodeCharacter{003C}{\char"3C }% + \DeclareUnicodeCharacter{003D}{\char"3D }% + \DeclareUnicodeCharacter{003E}{\char"3E }% + \DeclareUnicodeCharacter{003F}{\char"3F }% + \DeclareUnicodeCharacter{0040}{\char"40 }% + \DeclareUnicodeCharacter{0041}{A}% + \DeclareUnicodeCharacter{0042}{B}% + \DeclareUnicodeCharacter{0043}{C}% + \DeclareUnicodeCharacter{0044}{D}% + \DeclareUnicodeCharacter{0045}{E}% + \DeclareUnicodeCharacter{0046}{F}% + \DeclareUnicodeCharacter{0047}{G}% + \DeclareUnicodeCharacter{0048}{H}% + \DeclareUnicodeCharacter{0049}{I}% + \DeclareUnicodeCharacter{004A}{J}% + \DeclareUnicodeCharacter{004B}{K}% + \DeclareUnicodeCharacter{004C}{L}% + \DeclareUnicodeCharacter{004D}{M}% + \DeclareUnicodeCharacter{004E}{N}% + \DeclareUnicodeCharacter{004F}{O}% + \DeclareUnicodeCharacter{0050}{P}% + \DeclareUnicodeCharacter{0051}{Q}% + \DeclareUnicodeCharacter{0052}{R}% + \DeclareUnicodeCharacter{0053}{S}% + \DeclareUnicodeCharacter{0054}{T}% + \DeclareUnicodeCharacter{0055}{U}% + \DeclareUnicodeCharacter{0056}{V}% + \DeclareUnicodeCharacter{0057}{W}% + \DeclareUnicodeCharacter{0058}{X}% + \DeclareUnicodeCharacter{0059}{Y}% + \DeclareUnicodeCharacter{005A}{Z}% + \DeclareUnicodeCharacter{005B}{\char"5B }% + \DeclareUnicodeCharacter{005C}{\char"5C }% + \DeclareUnicodeCharacter{005D}{\char"5D }% + \DeclareUnicodeCharacter{005E}{\char"5E }% + \DeclareUnicodeCharacter{005F}{\char"5F }% + \DeclareUnicodeCharacter{0060}{\char"60 }% + \DeclareUnicodeCharacter{0061}{a}% + \DeclareUnicodeCharacter{0062}{b}% + \DeclareUnicodeCharacter{0063}{c}% + \DeclareUnicodeCharacter{0064}{d}% + \DeclareUnicodeCharacter{0065}{e}% + \DeclareUnicodeCharacter{0066}{f}% + \DeclareUnicodeCharacter{0067}{g}% + \DeclareUnicodeCharacter{0068}{h}% + \DeclareUnicodeCharacter{0069}{i}% + \DeclareUnicodeCharacter{006A}{j}% + \DeclareUnicodeCharacter{006B}{k}% + \DeclareUnicodeCharacter{006C}{l}% + \DeclareUnicodeCharacter{006D}{m}% + \DeclareUnicodeCharacter{006E}{n}% + \DeclareUnicodeCharacter{006F}{o}% + \DeclareUnicodeCharacter{0070}{p}% + \DeclareUnicodeCharacter{0071}{q}% + \DeclareUnicodeCharacter{0072}{r}% + \DeclareUnicodeCharacter{0073}{s}% + \DeclareUnicodeCharacter{0074}{t}% + \DeclareUnicodeCharacter{0075}{u}% + \DeclareUnicodeCharacter{0076}{v}% + \DeclareUnicodeCharacter{0077}{w}% + \DeclareUnicodeCharacter{0078}{x}% + \DeclareUnicodeCharacter{0079}{y}% + \DeclareUnicodeCharacter{007A}{z}% + \DeclareUnicodeCharacter{007B}{\char"7B }% + \DeclareUnicodeCharacter{007C}{\char"7C }% + \DeclareUnicodeCharacter{007D}{\char"7D }% + \DeclareUnicodeCharacter{007E}{\char"7E }% + % \DeclareUnicodeCharacter{007F}{} % DEL + % \DeclareUnicodeCharacter{00A0}{\tie}% \DeclareUnicodeCharacter{00A1}{\exclamdown}% \DeclareUnicodeCharacter{00A2}{{\tcfont \char162}}% 0242=cent @@ -10417,7 +10547,7 @@ directory should work if nowhere else does.} \DeclareUnicodeCharacter{00AE}{\registeredsymbol{}}% \DeclareUnicodeCharacter{00AF}{\={ }}% % - \DeclareUnicodeCharacter{00B0}{\ringaccent{ }}% + \DeclareUnicodeCharacter{00B0}{\textdegree}% \DeclareUnicodeCharacter{00B1}{\ensuremath\pm}% \DeclareUnicodeCharacter{00B2}{$^2$}% \DeclareUnicodeCharacter{00B3}{$^3$}% @@ -10899,6 +11029,9 @@ directory should work if nowhere else does.} \DeclareUnicodeCharacter{1EF8}{\~Y}% \DeclareUnicodeCharacter{1EF9}{\~y}% % + % Exotic spaces + \DeclareUnicodeCharacter{2007}{\hphantom{0}}% + % % Punctuation \DeclareUnicodeCharacter{2013}{--}% \DeclareUnicodeCharacter{2014}{---}% @@ -10918,7 +11051,7 @@ directory should work if nowhere else does.} % \DeclareUnicodeCharacter{20AC}{\euro{}}% % - \DeclareUnicodeCharacter{2192}{\expansion{}}% + \DeclareUnicodeCharacter{2192}{\arrow}% \DeclareUnicodeCharacter{21D2}{\result{}}% % % Mathematical symbols @@ -11081,24 +11214,26 @@ directory should work if nowhere else does.} % provide a definition macro to replace/pass-through a Unicode character % \def\DeclareUnicodeCharacterNative#1#2{% - \catcode"#1=\active - \def\dodeclareunicodecharacternative##1##2##3{% + \ifnum"#1>"7F % only make non-ASCII chars active + \catcode"#1=\active + \def\dodeclareunicodecharacternative##1##2##3{% + \begingroup + \uccode`\~="##2\relax + \uppercase{\gdef~}{% + \ifpassthroughchars + ##1% + \else + ##3% + \fi + } + \endgroup + } \begingroup - \uccode`\~="##2\relax - \uppercase{\gdef~}{% - \ifpassthroughchars - ##1% - \else - ##3% - \fi - } + \uccode`\.="#1\relax + \uppercase{\def\UTFNativeTmp{.}}% + \expandafter\dodeclareunicodecharacternative\UTFNativeTmp{#1}{#2}% \endgroup - } - \begingroup - \uccode`\.="#1\relax - \uppercase{\def\UTFNativeTmp{.}}% - \expandafter\dodeclareunicodecharacternative\UTFNativeTmp{#1}{#2}% - \endgroup + \fi } % Native Unicode handling (XeTeX and LuaTeX) character replacing definition. @@ -11127,14 +11262,14 @@ directory should work if nowhere else does.} \relax } -% Define all Unicode characters we know about. This makes UTF-8 the default -% input encoding and allows @U to work. +% Define all Unicode characters we know about \iftxinativeunicodecapable \nativeunicodechardefsatu \else \utfeightchardefs \fi + \message{formatting,} \newdimen\defaultparindent \defaultparindent = 15pt @@ -11181,13 +11316,9 @@ directory should work if nowhere else does.} % \vsize = #1\relax \advance\vsize by \topskip - \outervsize = \vsize - \advance\outervsize by 2\topandbottommargin \txipageheight = \vsize % \hsize = #2\relax - \outerhsize = \hsize - \advance\outerhsize by 0.5in \txipagewidth = \hsize % \normaloffset = #4\relax @@ -11244,23 +11375,6 @@ directory should work if nowhere else does.} \defbodyindent = .5cm }} -% Use @smallerbook to reset parameters for 6x9 trim size. -% (Just testing, parameters still in flux.) -\def\smallerbook{{\globaldefs = 1 - \parskip = 1.5pt plus 1pt - \textleading = 12pt - % - \internalpagesizes{7.4in}{4.8in}% - {-.2in}{-.4in}% - {0pt}{14pt}% - {9in}{6in}% - % - \lispnarrowing = 0.25in - \tolerance = 700 - \contentsrightmargin = 0pt - \defbodyindent = .4cm -}} - % Use @afourpaper to print on European A4 paper. \def\afourpaper{{\globaldefs = 1 \parskip = 3pt plus 2pt minus 1pt @@ -11294,7 +11408,7 @@ directory should work if nowhere else does.} \textleading = 12.5pt % \internalpagesizes{160mm}{120mm}% - {\voffset}{\hoffset}% + {\voffset}{-11.4mm}% {\bindingoffset}{8pt}% {210mm}{148mm}% % @@ -11373,9 +11487,138 @@ directory should work if nowhere else does.} \hfuzz = 1pt +\message{microtype,} + +% protrusion, from Thanh's protcode.tex. +\def\mtsetprotcode#1{% + \rpcode#1`\!=200 \rpcode#1`\,=700 \rpcode#1`\-=700 \rpcode#1`\.=700 + \rpcode#1`\;=500 \rpcode#1`\:=500 \rpcode#1`\?=200 + \rpcode#1`\'=700 + \rpcode#1 34=500 % '' + \rpcode#1 123=300 % -- + \rpcode#1 124=200 % --- + \rpcode#1`\)=50 \rpcode#1`\A=50 \rpcode#1`\F=50 \rpcode#1`\K=50 + \rpcode#1`\L=50 \rpcode#1`\T=50 \rpcode#1`\V=50 \rpcode#1`\W=50 + \rpcode#1`\X=50 \rpcode#1`\Y=50 \rpcode#1`\k=50 \rpcode#1`\r=50 + \rpcode#1`\t=50 \rpcode#1`\v=50 \rpcode#1`\w=50 \rpcode#1`\x=50 + \rpcode#1`\y=50 + % + \lpcode#1`\`=700 + \lpcode#1 92=500 % `` + \lpcode#1`\(=50 \lpcode#1`\A=50 \lpcode#1`\J=50 \lpcode#1`\T=50 + \lpcode#1`\V=50 \lpcode#1`\W=50 \lpcode#1`\X=50 \lpcode#1`\Y=50 + \lpcode#1`\v=50 \lpcode#1`\w=50 \lpcode#1`\x=50 \lpcode#1`\y=0 + % + \mtadjustprotcode#1\relax +} + +\newcount\countC +\def\mtadjustprotcode#1{% + \countC=0 + \loop + \ifcase\lpcode#1\countC\else + \mtadjustcp\lpcode#1\countC + \fi + \ifcase\rpcode#1\countC\else + \mtadjustcp\rpcode#1\countC + \fi + \advance\countC 1 + \ifnum\countC < 256 \repeat +} + +\newcount\countB +\def\mtadjustcp#1#2#3{% + \setbox\boxA=\hbox{% + \ifx#2\font\else#2\fi + \char#3}% + \countB=\wd\boxA + \multiply\countB #1#2#3\relax + \divide\countB \fontdimen6 #2\relax + #1#2#3=\countB\relax +} + +\ifx\XeTeXrevision\thisisundefined + \ifx\luatexversion\thisisundefined + \ifpdf % pdfTeX + \mtsetprotcode\textrm + \def\mtfontexpand#1{\pdffontexpand#1 20 20 1 autoexpand\relax} + \else % TeX + \def\mtfontexpand#1{} + \fi + \else % LuaTeX + \mtsetprotcode\textrm + \def\mtfontexpand#1{\expandglyphsinfont#1 20 20 1\relax} + \fi +\else % XeTeX + \mtsetprotcode\textrm + \def\mtfontexpand#1{} +\fi + + +\newif\ifmicrotype + +\def\microtypeON{% + \microtypetrue + % + \ifx\XeTeXrevision\thisisundefined + \ifx\luatexversion\thisisundefined + \ifpdf % pdfTeX + \pdfadjustspacing=2 + \pdfprotrudechars=2 + \fi + \else % LuaTeX + \adjustspacing=2 + \protrudechars=2 + \fi + \else % XeTeX + \XeTeXprotrudechars=2 + \fi + % + \mtfontexpand\textrm + \mtfontexpand\textsl + \mtfontexpand\textbf +} + +\def\microtypeOFF{% + \microtypefalse + % + \ifx\XeTeXrevision\thisisundefined + \ifx\luatexversion\thisisundefined + \ifpdf % pdfTeX + \pdfadjustspacing=0 + \pdfprotrudechars=0 + \fi + \else % LuaTeX + \adjustspacing=0 + \protrudechars=0 + \fi + \else % XeTeX + \XeTeXprotrudechars=0 + \fi +} + +\microtypeOFF + +\parseargdef\microtype{% + \def\txiarg{#1}% + \ifx\txiarg\onword + \microtypeON + \else\ifx\txiarg\offword + \microtypeOFF + \else + \errhelp = \EMsimple + \errmessage{Unknown @microtype option `\txiarg', must be on|off}% + \fi\fi +} + + \message{and turning on texinfo input format.} +% Make UTF-8 the default encoding. +\documentencodingzzz{UTF-8} + \def^^L{\par} % remove \outer, so ^L can appear in an @comment +\catcode`\^^K = 10 % treat vertical tab as whitespace % DEL is a comment character, in case @c does not suffice. \catcode`\^^? = 14 @@ -11391,23 +11634,6 @@ directory should work if nowhere else does.} \catcode`\|=\other \def\normalverticalbar{|} \catcode`\~=\other \def\normaltilde{~} -% This macro is used to make a character print one way in \tt -% (where it can probably be output as-is), and another way in other fonts, -% where something hairier probably needs to be done. -% -% #1 is what to print if we are indeed using \tt; #2 is what to print -% otherwise. Since all the Computer Modern typewriter fonts have zero -% interword stretch (and shrink), and it is reasonable to expect all -% typewriter fonts to have this, we can check that font parameter. -% -\def\ifusingtt#1#2{\ifdim \fontdimen3\font=0pt #1\else #2\fi} - -% Same as above, but check for italic font. Actually this also catches -% non-italic slanted fonts since it is impossible to distinguish them from -% italic fonts. But since this is only used by $ and it uses \sl anyway -% this is not a problem. -\def\ifusingit#1#2{\ifdim \fontdimen1\font>0pt #1\else #2\fi} - % Set catcodes for Texinfo file % Active characters for printing the wanted glyph. @@ -11453,23 +11679,32 @@ directory should work if nowhere else does.} % Used sometimes to turn off (effectively) the active characters even after % parsing them. \def\turnoffactive{% - \normalturnoffactive + \passthroughcharstrue + \let-=\normaldash + \let"=\normaldoublequote + \let$=\normaldollar %$ font-lock fix + \let+=\normalplus + \let<=\normalless + \let>=\normalgreater + \let^=\normalcaret + \let_=\normalunderscore + \let|=\normalverticalbar + \let~=\normaltilde \otherbackslash + \setregularquotes + \unsepspaces } -\catcode`\@=0 +% If a .fmt file is being used, characters that might appear in a file +% name cannot be active until we have parsed the command line. +% So turn them off again, and have \loadconf turn them back on. +\catcode`+=\other \catcode`\_=\other + % \backslashcurfont outputs one backslash character in current font, % as in \char`\\. \global\chardef\backslashcurfont=`\\ -% \realbackslash is an actual character `\' with catcode other. -{\catcode`\\=\other @gdef@realbackslash{\}} - -% In Texinfo, backslash is an active character; it prints the backslash -% in fixed width font. -\catcode`\\=\active % @ for escape char from now on. - % Print a typewriter backslash. For math mode, we can't simply use % \backslashcurfont: the story here is that in math mode, the \char % of \backslashcurfont ends up printing the roman \ from the math symbol @@ -11479,109 +11714,120 @@ directory should work if nowhere else does.} % ignored family value; char position "5C). We can't use " for the % usual hex value because it has already been made active. -@def@ttbackslash{{@tt @ifmmode @mathchar29020 @else @backslashcurfont @fi}} -@let@backslashchar = @ttbackslash % @backslashchar{} is for user documents. - -% \otherbackslash defines an active \ to be a literal `\' character with -% catcode other. -@gdef@otherbackslash{@let\=@realbackslash} - -% Same as @turnoffactive except outputs \ as {\tt\char`\\} instead of -% the literal character `\'. -% -{@catcode`- = @active - @gdef@normalturnoffactive{% - @passthroughcharstrue - @let-=@normaldash - @let"=@normaldoublequote - @let$=@normaldollar %$ font-lock fix - @let+=@normalplus - @let<=@normalless - @let>=@normalgreater - @let^=@normalcaret - @let_=@normalunderscore - @let|=@normalverticalbar - @let~=@normaltilde - @let\=@ttbackslash - @setregularquotes - @unsepspaces - } -} +\def\ttbackslash{{\tt \ifmmode \mathchar29020 \else \backslashcurfont \fi}} +\let\backslashchar = \ttbackslash % \backslashchar{} is for user documents. -% If a .fmt file is being used, characters that might appear in a file -% name cannot be active until we have parsed the command line. -% So turn them off again, and have @fixbackslash turn them back on. -@catcode`+=@other @catcode`@_=@other - -% \enablebackslashhack - allow file to begin `\input texinfo' -% -% If a .fmt file is being used, we don't want the `\input texinfo' to show up. -% That is what \eatinput is for; after that, the `\' should revert to printing -% a backslash. -% If the file did not have a `\input texinfo', then it is turned off after -% the first line; otherwise the first `\' in the file would cause an error. -% This is used on the very last line of this file, texinfo.tex. -% We also use @c to call @fixbackslash, in case ends of lines are hidden. -{ -@catcode`@^=7 -@catcode`@^^M=13@gdef@enablebackslashhack{% - @global@let\ = @eatinput% - @catcode`@^^M=13% - @def@c{@fixbackslash@c}% - % Definition for the newline at the end of this file. - @def ^^M{@let^^M@secondlinenl}% - % Definition for a newline in the main Texinfo file. - @gdef @secondlinenl{@fixbackslash}% +% These are made active for url-breaking, so need +% active definitions as the normal characters. +\def\normaldot{.} +\def\normalquest{?} +\def\normalslash{/} + +% \newlinesloadsconf - call \loadconf as soon as possible in the +% file, e.g. at the first newline. +% +{\catcode`\^=7 +\catcode`\^^M=13 +\gdef\newlineloadsconf{% + \catcode`\^^M=13 % + \newlineloadsconfzz% +} +\gdef\newlineloadsconfzz#1^^M{% + \def\c{\loadconf\c}% + % Definition for the first newline read in the file + \def ^^M{\loadconf}% % In case the first line has a whole-line command on it - @let@originalparsearg@parsearg - @def@parsearg{@fixbackslash@originalparsearg} + \let\originalparsearg\parsearg% + \def\parsearg{\loadconf\originalparsearg}% }} -{@catcode`@^=7 @catcode`@^^M=13% -@gdef@eatinput input texinfo#1^^M{@fixbackslash}} % Emergency active definition of newline, in case an active newline token % appears by mistake. -{@catcode`@^=7 @catcode13=13% -@gdef@enableemergencynewline{% - @gdef^^M{% - @par% - %@par% +{\catcode`\^=7 \catcode13=13% +\gdef\enableemergencynewline{% + \gdef^^M{% + \par% + %\par% }}} -@gdef@fixbackslash{% - @ifx\@eatinput @let\ = @ttbackslash @fi - @catcode13=5 % regular end of line - @enableemergencynewline - @let@c=@comment - @let@parsearg@originalparsearg +% \loadconf gets called at the beginning of every Texinfo file. +% If texinfo.cnf is present on the system, read it. Useful for site-wide +% @afourpaper, etc. Not opening texinfo.cnf directly in texinfo.tex +% makes it possible to make a format file for Texinfo. +% +\gdef\loadconf{% + \relax % Terminate the filename if running as "tex '&texinfo' FILE.texi". + % + % Turn off the definitions that trigger \loadconf + \everyjobreset + \catcode13=5 % regular end of line + \enableemergencynewline + \let\c=\comment + \let\parsearg\originalparsearg + % % Also turn back on active characters that might appear in the input % file name, in case not using a pre-dumped format. - @catcode`+=@active - @catcode`@_=@active - % - % If texinfo.cnf is present on the system, read it. - % Useful for site-wide @afourpaper, etc. This macro, @fixbackslash, gets - % called at the beginning of every Texinfo file. Not opening texinfo.cnf - % directly in this file, texinfo.tex, makes it possible to make a format - % file for Texinfo. + \catcode`+=\active + \catcode`\_=\active % - @openin 1 texinfo.cnf - @ifeof 1 @else @input texinfo.cnf @fi - @closein 1 + \openin 1 texinfo.cnf + \ifeof 1 \else \input texinfo.cnf \fi + \closein 1 } +% Redefine some control sequences to be controlled by the \ifdummies +% and \ifindexnofonts switches. Do this at the end so that the control +% sequences are all defined. +\definedummies + + + + +\catcode`\@=0 + +% \realbackslash is an actual character `\' with catcode other. +{\catcode`\\=\other @gdef@realbackslash{\}} + +% In Texinfo, backslash is an active character; it prints the backslash +% in fixed width font. +\catcode`\\=\active % @ for escape char from now on. + +@let\ = @ttbackslash + +% If in a .fmt file, print the version number. +% \eatinput stops the `\input texinfo' from showing up. +% After that, `\' should revert to printing a backslash. +% Turn on active characters that we couldn't do earlier because +% they might have appeared in the input file name. +% +@everyjob{@message{[Texinfo version @texinfoversion]}% + @global@let\ = @eatinput + @catcode`+=@active @catcode`@_=@active} + +{@catcode`@^=7 @catcode`@^^M=13% +@gdef@eatinput input texinfo#1^^M{@loadconf}} + +@def@everyjobreset{@ifx\@eatinput @let\ = @ttbackslash @fi} + +% \otherbackslash defines an active \ to be a literal `\' character with +% catcode other. +@gdef@otherbackslash{@let\=@realbackslash} + +% Same as @turnoffactive except outputs \ as {\tt\char`\\} instead of +% the literal character `\'. +% +{@catcode`- = @active + @gdef@normalturnoffactive{% + @turnoffactive + @let\=@ttbackslash + } +} % Say @foo, not \foo, in error messages. @escapechar = `@@ -% These (along with & and #) are made active for url-breaking, so need -% active definitions as the normal characters. -@def@normaldot{.} -@def@normalquest{?} -@def@normalslash{/} - % These look ok in all fonts, so just make them not special. % @hashchar{} gets its own user-level command, because of #line. @catcode`@& = @other @def@normalamp{&} @@ -11596,17 +11842,11 @@ directory should work if nowhere else does.} @c Do this last of all since we use ` in the previous @catcode assignments. @catcode`@'=@active @catcode`@`=@active -@setregularquotes @c Local variables: -@c eval: (add-hook 'before-save-hook 'time-stamp) -@c page-delimiter: "^\\\\message\\|emacs-page" -@c time-stamp-start: "def\\\\texinfoversion{" -@c time-stamp-format: "%:y-%02m-%02d.%02H" -@c time-stamp-end: "}" +@c eval: (add-hook 'before-save-hook 'time-stamp nil t) +@c time-stamp-pattern: "texinfoversion{%Y-%02m-%02d.%02H}" +@c page-delimiter: "^\\\\message" @c End: -@c vim:sw=2: - -@enablebackslashhack - +@newlineloadsconf diff --git a/build-aux/update-copyright b/build-aux/update-copyright index fae3a5f..99196fc 100755 --- a/build-aux/update-copyright +++ b/build-aux/update-copyright @@ -3,11 +3,11 @@ # Update an FSF copyright year list to include the current year. -# Copyright (C) 2009-2021 Free Software Foundation, Inc. +# Copyright (C) 2009-2023 Free Software Foundation, Inc. # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3, or (at your option) +# the Free Software Foundation, either version 3, or (at your option) # any later version. # # This program is distributed in the hope that it will be useful, @@ -137,7 +137,7 @@ eval 'exec perl -wSx -0777 -pi "$0" "$@"' if 0; -my $VERSION = '2020-04-04.15:07'; # UTC +my $VERSION = '2023-01-11.04:24'; # UTC # The definition above must lie within the first 8 lines in order # for the Emacs time-stamp write hook (at end) to update it. # If you change this file with Emacs, please let the write hook @@ -280,7 +280,7 @@ if (defined $stmt_re) } # Replace the old copyright statement. - s/$stmt_re/$stmt_wrapped/; + s/$stmt_re/$stmt_wrapped/g; } } else diff --git a/build-aux/useless-if-before-free b/build-aux/useless-if-before-free index 5bbbc44..f4908ba 100755 --- a/build-aux/useless-if-before-free +++ b/build-aux/useless-if-before-free @@ -4,7 +4,7 @@ # Detect instances of "if (p) free (p);". # Likewise "if (p != 0)", "if (0 != p)", or with NULL; and with braces. -# Copyright (C) 2008-2021 Free Software Foundation, Inc. +# Copyright (C) 2008-2023 Free Software Foundation, Inc. # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -36,13 +36,13 @@ eval 'exec perl -wSx "$0" "$@"' if 0; -my $VERSION = '2021-04-11 10:11'; # UTC +my $VERSION = '2022-01-27 18:51'; # UTC # The definition above must lie within the first 8 lines in order # for the Emacs time-stamp write hook (at end) to update it. # If you change this file with Emacs, please let the write hook # do its job. Otherwise, update this string manually. -my $copyright_year = '2021'; +my $copyright_year = '2022'; use strict; use warnings; diff --git a/build-aux/vc-list-files b/build-aux/vc-list-files index cf168ea..5ed2b14 100755 --- a/build-aux/vc-list-files +++ b/build-aux/vc-list-files @@ -4,7 +4,7 @@ # Print a version string. scriptversion=2018-03-07.03; # UTC -# Copyright (C) 2006-2021 Free Software Foundation, Inc. +# Copyright (C) 2006-2023 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff --git a/cfg.mk b/cfg.mk index 970af0a..b58175e 100644 --- a/cfg.mk +++ b/cfg.mk @@ -1,5 +1,5 @@ # Customize maint.mk -*- makefile -*- -# Copyright (C) 2003-2013, 2015-2021 Free Software Foundation, Inc. +# Copyright (C) 2003-2013, 2015-2023 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -24,7 +24,8 @@ manual_title = Comparing and Merging Files # Tests not to run as part of "make distcheck". local-checks-to-skip = \ sc_error_message_period \ - sc_error_message_uppercase + sc_error_message_uppercase \ + sc_indent # Tools used to bootstrap this package, used for "announcement". bootstrap-tools = autoconf,automake,gnulib @@ -35,7 +36,7 @@ announcement_Cc_ = $(translation_project_), $(PACKAGE)-devel@gnu.org # Now that we have better tests, make this the default. export VERBOSE = yes -old_NEWS_hash = 883954bcb25c48755004736540de39e7 +old_NEWS_hash = cf070086af56e7394cc5a0c862d0cd11 # Tell maint.mk's syntax-check rules that diff gets config.h directly or # via diff.h or system.h. @@ -70,6 +71,7 @@ config-save: cp lib/config.h config.status $(_cf_state_dir)/latest exclude_file_name_regexp--sc_space_tab = ^gl/lib/.*\.c\.diff$$ +exclude_file_name_regexp--sc_prohibit_doubled_word = ^tests/y2038-vs-32bit$$ # Tell gnulib's tight_scope rule that we mark externs with XTERN -export _gl_TS_extern = extern|XTERN +export _gl_TS_extern = extern|XTERN|DIFF_INLINE diff --git a/configure b/configure index ee2c39a..5cddf21 100755 --- a/configure +++ b/configure @@ -1,11 +1,11 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.71 for GNU diffutils 3.8. +# Generated by GNU Autoconf 2.72c.20-9c018 for GNU diffutils 3.10. # # Report bugs to . # # -# Copyright (C) 1992-1996, 1998-2017, 2020-2021 Free Software Foundation, +# Copyright (C) 1992-1996, 1998-2017, 2020-2023 Free Software Foundation, # Inc. # # @@ -17,7 +17,6 @@ # Be more Bourne compatible DUALCASE=1; export DUALCASE # for MKS sh -as_nop=: if test ${ZSH_VERSION+y} && (emulate sh) >/dev/null 2>&1 then : emulate sh @@ -26,12 +25,13 @@ then : # is contrary to our usage. Disable this feature. alias -g '${1+"$@"}'='"$@"' setopt NO_GLOB_SUBST -else $as_nop - case `(set -o) 2>/dev/null` in #( +else case e in #( + e) case `(set -o) 2>/dev/null` in #( *posix*) : set -o posix ;; #( *) : ;; +esac ;; esac fi @@ -103,7 +103,7 @@ IFS=$as_save_IFS ;; esac -# We did not find ourselves, most probably we were run as `sh COMMAND' +# We did not find ourselves, most probably we were run as 'sh COMMAND' # in which case we are not to be found in the path. if test "x$as_myself" = x; then as_myself=$0 @@ -133,15 +133,14 @@ case $- in # (((( esac exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"} # Admittedly, this is quite paranoid, since all the known shells bail -# out after a failed `exec'. +# out after a failed 'exec'. printf "%s\n" "$0: could not re-execute with $CONFIG_SHELL" >&2 exit 255 fi # We don't want this to propagate to other subprocesses. { _as_can_reexec=; unset _as_can_reexec;} if test "x$CONFIG_SHELL" = x; then - as_bourne_compatible="as_nop=: -if test \${ZSH_VERSION+y} && (emulate sh) >/dev/null 2>&1 + as_bourne_compatible="if test \${ZSH_VERSION+y} && (emulate sh) >/dev/null 2>&1 then : emulate sh NULLCMD=: @@ -149,12 +148,13 @@ then : # is contrary to our usage. Disable this feature. alias -g '\${1+\"\$@\"}'='\"\$@\"' setopt NO_GLOB_SUBST -else \$as_nop - case \`(set -o) 2>/dev/null\` in #( +else case e in #( + e) case \`(set -o) 2>/dev/null\` in #( *posix*) : set -o posix ;; #( *) : ;; +esac ;; esac fi " @@ -172,8 +172,9 @@ as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; } if ( set x; as_fn_ret_success y && test x = \"\$1\" ) then : -else \$as_nop - exitcode=1; echo positional parameters were not saved. +else case e in #( + e) exitcode=1; echo positional parameters were not saved. ;; +esac fi test x\$exitcode = x0 || exit 1 blah=\$(echo \$(echo blah)) @@ -187,14 +188,15 @@ test \$(( 1 + 1 )) = 2 || exit 1" if (eval "$as_required") 2>/dev/null then : as_have_required=yes -else $as_nop - as_have_required=no +else case e in #( + e) as_have_required=no ;; +esac fi if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null then : -else $as_nop - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +else case e in #( + e) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR as_found=false for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH do @@ -227,12 +229,13 @@ IFS=$as_save_IFS if $as_found then : -else $as_nop - if { test -f "$SHELL" || test -f "$SHELL.exe"; } && +else case e in #( + e) if { test -f "$SHELL" || test -f "$SHELL.exe"; } && as_run=a "$SHELL" -c "$as_bourne_compatible""$as_required" 2>/dev/null then : CONFIG_SHELL=$SHELL as_have_required=yes -fi +fi ;; +esac fi @@ -254,7 +257,7 @@ case $- in # (((( esac exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"} # Admittedly, this is quite paranoid, since all the known shells bail -# out after a failed `exec'. +# out after a failed 'exec'. printf "%s\n" "$0: could not re-execute with $CONFIG_SHELL" >&2 exit 255 fi @@ -274,7 +277,8 @@ $0: a modern shell, or manually run the script under such a $0: shell if you do have one." fi exit 1 -fi +fi ;; +esac fi fi SHELL=${CONFIG_SHELL-/bin/sh} @@ -313,14 +317,6 @@ as_fn_exit () as_fn_set_status $1 exit $1 } # as_fn_exit -# as_fn_nop -# --------- -# Do nothing but, unlike ":", preserve the value of $?. -as_fn_nop () -{ - return $? -} -as_nop=as_fn_nop # as_fn_mkdir_p # ------------- @@ -389,11 +385,12 @@ then : { eval $1+=\$2 }' -else $as_nop - as_fn_append () +else case e in #( + e) as_fn_append () { eval $1=\$$1\$2 - } + } ;; +esac fi # as_fn_append # as_fn_arith ARG... @@ -407,21 +404,14 @@ then : { as_val=$(( $* )) }' -else $as_nop - as_fn_arith () +else case e in #( + e) as_fn_arith () { as_val=`expr "$@" || test $? -eq 1` - } + } ;; +esac fi # as_fn_arith -# as_fn_nop -# --------- -# Do nothing but, unlike ":", preserve the value of $?. -as_fn_nop () -{ - return $? -} -as_nop=as_fn_nop # as_fn_error STATUS ERROR [LINENO LOG_FD] # ---------------------------------------- @@ -495,6 +485,8 @@ as_cr_alnum=$as_cr_Letters$as_cr_digits /[$]LINENO/= ' <$as_myself | sed ' + t clear + :clear s/[$]LINENO.*/&-/ t lineno b @@ -543,7 +535,6 @@ esac as_echo='printf %s\n' as_echo_n='printf %s' - rm -f conf$$ conf$$.exe conf$$.file if test -d conf$$.dir; then rm -f conf$$.dir/conf$$.file @@ -555,9 +546,9 @@ if (echo >conf$$.file) 2>/dev/null; then if ln -s conf$$.file conf$$ 2>/dev/null; then as_ln_s='ln -s' # ... but there are two gotchas: - # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. - # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. - # In both cases, we have to default to `cp -pR'. + # 1) On MSYS, both 'ln -s file dir' and 'ln file dir' fail. + # 2) DJGPP < 2.04 has no symlinks; 'ln -s' creates a wrapper executable. + # In both cases, we have to default to 'cp -pR'. ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || as_ln_s='cp -pR' elif ln conf$$.file conf$$ 2>/dev/null; then @@ -582,10 +573,12 @@ as_test_x='test -x' as_executable_p=as_fn_executable_p # Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" +as_sed_cpp="y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g" +as_tr_cpp="eval sed '$as_sed_cpp'" # deprecated # Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" +as_sed_sh="y%*+%pp%;s%[^_$as_cr_alnum]%_%g" +as_tr_sh="eval sed '$as_sed_sh'" # deprecated test -n "$DJDIR" || exec 7<&0 /dev/null && - as_fn_error $? "invalid feature name: \`$ac_useropt'" + as_fn_error $? "invalid feature name: '$ac_useropt'" ac_useropt_orig=$ac_useropt ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in @@ -2110,7 +2380,7 @@ do ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - as_fn_error $? "invalid feature name: \`$ac_useropt'" + as_fn_error $? "invalid feature name: '$ac_useropt'" ac_useropt_orig=$ac_useropt ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in @@ -2323,7 +2593,7 @@ do ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - as_fn_error $? "invalid package name: \`$ac_useropt'" + as_fn_error $? "invalid package name: '$ac_useropt'" ac_useropt_orig=$ac_useropt ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in @@ -2339,7 +2609,7 @@ do ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - as_fn_error $? "invalid package name: \`$ac_useropt'" + as_fn_error $? "invalid package name: '$ac_useropt'" ac_useropt_orig=$ac_useropt ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in @@ -2369,8 +2639,8 @@ do | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) x_libraries=$ac_optarg ;; - -*) as_fn_error $? "unrecognized option: \`$ac_option' -Try \`$0 --help' for more information" + -*) as_fn_error $? "unrecognized option: '$ac_option' +Try '$0 --help' for more information" ;; *=*) @@ -2378,7 +2648,7 @@ Try \`$0 --help' for more information" # Reject names that are not valid shell variable names. case $ac_envvar in #( '' | [0-9]* | *[!_$as_cr_alnum]* ) - as_fn_error $? "invalid variable name: \`$ac_envvar'" ;; + as_fn_error $? "invalid variable name: '$ac_envvar'" ;; esac eval $ac_envvar=\$ac_optarg export $ac_envvar ;; @@ -2428,7 +2698,7 @@ do as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val" done -# There might be people who depend on the old broken behavior: `$host' +# There might be people who depend on the old broken behavior: '$host' # used to hold the argument of --host etc. # FIXME: To remove some day. build=$build_alias @@ -2496,7 +2766,7 @@ if test ! -r "$srcdir/$ac_unique_file"; then test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .." as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir" fi -ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work" +ac_msg="sources are in $srcdir, but 'cd $srcdir' does not work" ac_abs_confdir=`( cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg" pwd)` @@ -2524,7 +2794,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures GNU diffutils 3.8 to adapt to many kinds of systems. +'configure' configures GNU diffutils 3.10 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -2538,11 +2808,11 @@ Configuration: --help=short display options specific to this package --help=recursive display the short help of all the included packages -V, --version display version information and exit - -q, --quiet, --silent do not print \`checking ...' messages + -q, --quiet, --silent do not print 'checking ...' messages --cache-file=FILE cache test results in FILE [disabled] - -C, --config-cache alias for \`--cache-file=config.cache' + -C, --config-cache alias for '--cache-file=config.cache' -n, --no-create do not create output files - --srcdir=DIR find the sources in DIR [configure dir or \`..'] + --srcdir=DIR find the sources in DIR [configure dir or '..'] Installation directories: --prefix=PREFIX install architecture-independent files in PREFIX @@ -2550,10 +2820,10 @@ Installation directories: --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX [PREFIX] -By default, \`make install' will install all the files in -\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify -an installation prefix other than \`$ac_default_prefix' using \`--prefix', -for instance \`--prefix=\$HOME'. +By default, 'make install' will install all the files in +'$ac_default_prefix/bin', '$ac_default_prefix/lib' etc. You can specify +an installation prefix other than '$ac_default_prefix' using '--prefix', +for instance '--prefix=\$HOME'. For better control, use the options below. @@ -2595,7 +2865,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of GNU diffutils 3.8:";; + short | recursive ) echo "Configuration of GNU diffutils 3.10:";; esac cat <<\_ACEOF @@ -2610,7 +2880,6 @@ Optional Features: --disable-dependency-tracking speeds up one-time build --disable-largefile omit support for large files - --disable-year2038 omit support for timestamps past the year 2038 --enable-threads={isoc|posix|isoc+posix|windows} specify multithreading API --disable-threads build without multithread safety @@ -2619,21 +2888,22 @@ Optional Features: --disable-rpath do not hardcode runtime library paths --enable-gcc-warnings turn on lots of GCC warnings (for developers) --disable-nls do not use Native Language Support + --disable-year2038 don't support timestamps after 2038 Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) + --with-libsigsegv use the GNU libsigsegv library, when present, + instead of the gnulib module 'sigsegv' --with-gnu-ld assume the C compiler uses GNU ld [default=no] + --with-libsigsegv-prefix[=DIR] search for libsigsegv in DIR/include and DIR/lib + --without-libsigsegv-prefix don't search for libsigsegv in includedir and libdir --with-libiconv-prefix[=DIR] search for libiconv in DIR/include and DIR/lib --without-libiconv-prefix don't search for libiconv in includedir and libdir --without-included-regex don't compile regex; this is the default on systems with recent-enough versions of the GNU C Library (use with caution on other systems). - --with-libsigsegv use the GNU libsigsegv library, when present, - instead of the gnulib module 'sigsegv' - --with-libsigsegv-prefix[=DIR] search for libsigsegv in DIR/include and DIR/lib - --without-libsigsegv-prefix don't search for libsigsegv in includedir and libdir --with-packager String identifying the packager of this software --with-packager-version Packager-specific version information --with-packager-bug-reports @@ -2651,7 +2921,7 @@ Some influential environment variables: you have headers in a nonstandard directory CPP C preprocessor -Use these variables to override the choices made by `configure' or to help +Use these variables to override the choices made by 'configure' or to help it to find libraries and programs with nonstandard names/locations. Report bugs to . @@ -2720,10 +2990,10 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -GNU diffutils configure 3.8 -generated by GNU Autoconf 2.71 +GNU diffutils configure 3.10 +generated by GNU Autoconf 2.72c.20-9c018 -Copyright (C) 2021 Free Software Foundation, Inc. +Copyright (C) 2023 Free Software Foundation, Inc. This configure script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it. _ACEOF @@ -2762,11 +3032,12 @@ printf "%s\n" "$ac_try_echo"; } >&5 } && test -s conftest.$ac_objext then : ac_retval=0 -else $as_nop - printf "%s\n" "$as_me: failed program was:" >&5 +else case e in #( + e) printf "%s\n" "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - ac_retval=1 + ac_retval=1 ;; +esac fi eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno as_fn_set_status $ac_retval @@ -2785,8 +3056,8 @@ printf %s "checking for $2... " >&6; } if eval test \${$3+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $4 #include <$2> @@ -2794,10 +3065,12 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : eval "$3=yes" -else $as_nop - eval "$3=no" +else case e in #( + e) eval "$3=no" ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi eval ac_res=\$$3 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 @@ -2833,11 +3106,12 @@ printf "%s\n" "$ac_try_echo"; } >&5 } then : ac_retval=0 -else $as_nop - printf "%s\n" "$as_me: failed program was:" >&5 +else case e in #( + e) printf "%s\n" "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - ac_retval=1 + ac_retval=1 ;; +esac fi eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno as_fn_set_status $ac_retval @@ -2856,8 +3130,8 @@ printf %s "checking for $2... " >&6; } if eval test \${$3+y} then : printf %s "(cached) " >&6 -else $as_nop - eval "$3=no" +else case e in #( + e) eval "$3=no" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $4 @@ -2887,12 +3161,14 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : -else $as_nop - eval "$3=yes" +else case e in #( + e) eval "$3=yes" ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi eval ac_res=\$$3 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 @@ -2932,11 +3208,12 @@ printf "%s\n" "$ac_try_echo"; } >&5 } then : ac_retval=0 -else $as_nop - printf "%s\n" "$as_me: failed program was:" >&5 +else case e in #( + e) printf "%s\n" "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - ac_retval=1 + ac_retval=1 ;; +esac fi # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would @@ -2978,12 +3255,13 @@ printf "%s\n" "$ac_try_echo"; } >&5 test $ac_status = 0; }; } then : ac_retval=0 -else $as_nop - printf "%s\n" "$as_me: program exited with status $ac_status" >&5 +else case e in #( + e) printf "%s\n" "$as_me: program exited with status $ac_status" >&5 printf "%s\n" "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - ac_retval=$ac_status + ac_retval=$ac_status ;; +esac fi rm -rf conftest.dSYM conftest_ipa8_conftest.oo eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno @@ -3002,15 +3280,15 @@ printf %s "checking for $2... " >&6; } if eval test \${$3+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Define $2 to an innocuous variant, in case declares $2. For example, HP-UX 11i declares gettimeofday. */ #define $2 innocuous_$2 /* System header to define __stub macros and hopefully few prototypes, - which can conflict with char $2 (); below. */ + which can conflict with char $2 (void); below. */ #include #undef $2 @@ -3021,7 +3299,7 @@ else $as_nop #ifdef __cplusplus extern "C" #endif -char $2 (); +char $2 (void); /* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */ @@ -3040,11 +3318,13 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : eval "$3=yes" -else $as_nop - eval "$3=no" +else case e in #( + e) eval "$3=no" ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ - conftest$ac_exeext conftest.$ac_ext + conftest$ac_exeext conftest.$ac_ext ;; +esac fi eval ac_res=\$$3 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 @@ -3053,6 +3333,65 @@ printf "%s\n" "$ac_res" >&6; } } # ac_fn_c_check_func +# ac_fn_check_decl LINENO SYMBOL VAR INCLUDES EXTRA-OPTIONS FLAG-VAR +# ------------------------------------------------------------------ +# Tests whether SYMBOL is declared in INCLUDES, setting cache variable VAR +# accordingly. Pass EXTRA-OPTIONS to the compiler, using FLAG-VAR. +ac_fn_check_decl () +{ + ac_save_ac_compile="$ac_compile" + if test -n "$ac_compile_for_check_decl"; then + ac_compile="$ac_compile_for_check_decl" + fi + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + as_decl_name=`echo $2|sed 's/ *(.*//'` + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $as_decl_name is declared" >&5 +printf %s "checking whether $as_decl_name is declared... " >&6; } +if eval test \${$3+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) as_decl_use=`echo $2|sed -e 's/(/((/' -e 's/)/) 0&/' -e 's/,/) 0& (/g'` + eval ac_save_FLAGS=\$$6 + as_fn_append $6 " $5" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$4 +int +main (void) +{ +#ifndef $as_decl_name +#ifdef __cplusplus + (void) $as_decl_use; +#else + (void) $as_decl_name; +#endif +#endif + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO" +then : + eval "$3=yes" +else case e in #( + e) eval "$3=no" ;; +esac +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext + eval $6=\$ac_save_FLAGS + ;; +esac +fi +eval ac_res=\$$3 + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +printf "%s\n" "$ac_res" >&6; } + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + ac_compile="$ac_save_ac_compile" + +} # ac_fn_check_decl + # ac_fn_c_compute_int LINENO EXPR VAR INCLUDES # -------------------------------------------- # Tries to find the compile-time value of EXPR in a program that includes @@ -3098,18 +3437,19 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : ac_hi=$ac_mid; break -else $as_nop - as_fn_arith $ac_mid + 1 && ac_lo=$as_val +else case e in #( + e) as_fn_arith $ac_mid + 1 && ac_lo=$as_val if test $ac_lo -le $ac_mid; then ac_lo= ac_hi= break fi - as_fn_arith 2 '*' $ac_mid + 1 && ac_mid=$as_val + as_fn_arith 2 '*' $ac_mid + 1 && ac_mid=$as_val ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext done -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $4 int @@ -3144,20 +3484,23 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : ac_lo=$ac_mid; break -else $as_nop - as_fn_arith '(' $ac_mid ')' - 1 && ac_hi=$as_val +else case e in #( + e) as_fn_arith '(' $ac_mid ')' - 1 && ac_hi=$as_val if test $ac_mid -le $ac_hi; then ac_lo= ac_hi= break fi - as_fn_arith 2 '*' $ac_mid && ac_mid=$as_val + as_fn_arith 2 '*' $ac_mid && ac_mid=$as_val ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext done -else $as_nop - ac_lo= ac_hi= +else case e in #( + e) ac_lo= ac_hi= ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext # Binary search between lo and hi bounds. @@ -3180,8 +3523,9 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : ac_hi=$ac_mid -else $as_nop - as_fn_arith '(' $ac_mid ')' + 1 && ac_lo=$as_val +else case e in #( + e) as_fn_arith '(' $ac_mid ')' + 1 && ac_lo=$as_val ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext done @@ -3229,8 +3573,9 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : echo >>conftest.val; read $3 &5 -printf %s "checking whether $as_decl_name is declared... " >&6; } -if eval test \${$3+y} -then : - printf %s "(cached) " >&6 -else $as_nop - as_decl_use=`echo $2|sed -e 's/(/((/' -e 's/)/) 0&/' -e 's/,/) 0& (/g'` - eval ac_save_FLAGS=\$$6 - as_fn_append $6 " $5" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$4 -int -main (void) -{ -#ifndef $as_decl_name -#ifdef __cplusplus - (void) $as_decl_use; -#else - (void) $as_decl_name; -#endif -#endif - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - eval "$3=yes" -else $as_nop - eval "$3=no" -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - eval $6=\$ac_save_FLAGS - -fi -eval ac_res=\$$3 - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -printf "%s\n" "$ac_res" >&6; } - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - ac_compile="$ac_save_ac_compile" - -} # ac_fn_check_decl - # ac_fn_c_check_member LINENO AGGR MEMBER VAR INCLUDES # ---------------------------------------------------- # Tries to find if the field MEMBER exists in type AGGR, after including @@ -3311,8 +3599,8 @@ printf %s "checking for $2.$3... " >&6; } if eval test \${$4+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $5 int @@ -3328,8 +3616,8 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : eval "$4=yes" -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $5 int @@ -3345,12 +3633,15 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : eval "$4=yes" -else $as_nop - eval "$4=no" +else case e in #( + e) eval "$4=no" ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi eval ac_res=\$$4 { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 @@ -3382,8 +3673,8 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by GNU diffutils $as_me 3.8, which was -generated by GNU Autoconf 2.71. Invocation command line was +It was created by GNU diffutils $as_me 3.10, which was +generated by GNU Autoconf 2.72c.20-9c018. Invocation command line was $ $0$ac_configure_args_raw @@ -3629,10 +3920,10 @@ esac printf "%s\n" "$as_me: loading site script $ac_site_file" >&6;} sed 's/^/| /' "$ac_site_file" >&5 . "$ac_site_file" \ - || { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} + || { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 +printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error $? "failed to load site script $ac_site_file -See \`config.log' for more details" "$LINENO" 5; } +See 'config.log' for more details" "$LINENO" 5; } fi done @@ -3668,9 +3959,7 @@ struct stat; /* Most of the following tests are stolen from RCS 5.7 src/conf.sh. */ struct buf { int x; }; struct buf * (*rcsopen) (struct buf *, struct stat *, int); -static char *e (p, i) - char **p; - int i; +static char *e (char **p, int i) { return p[i]; } @@ -3684,6 +3973,21 @@ static char *f (char * (*g) (char **, int), char **p, ...) return s; } +/* C89 style stringification. */ +#define noexpand_stringify(a) #a +const char *stringified = noexpand_stringify(arbitrary+token=sequence); + +/* C89 style token pasting. Exercises some of the corner cases that + e.g. old MSVC gets wrong, but not very hard. */ +#define noexpand_concat(a,b) a##b +#define expand_concat(a,b) noexpand_concat(a,b) +extern int vA; +extern int vbee; +#define aye A +#define bee B +int *pvA = &expand_concat(v,aye); +int *pvbee = &noexpand_concat(v,bee); + /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has function prototypes and stuff, but not \xHH hex character constants. These do not provoke an error unfortunately, instead are silently treated @@ -3721,6 +4025,7 @@ extern int puts (const char *); extern int printf (const char *, ...); extern int dprintf (int, const char *, ...); extern void *malloc (size_t); +extern void free (void *); // Check varargs macros. These examples are taken from C99 6.10.3.5. // dprintf is used instead of fprintf to avoid needing to declare @@ -3836,6 +4141,8 @@ ac_c_conftest_c99_main=' ia->datasize = 10; for (int i = 0; i < ia->datasize; ++i) ia->data[i] = i * 1.234; + // Work around memory leak warnings. + free (ia); // Check named initializers. struct named_init ni = { @@ -3973,12 +4280,12 @@ as_fn_append ac_header_c_list " unistd.h unistd_h HAVE_UNISTD_H" as_fn_append ac_header_c_list " wchar.h wchar_h HAVE_WCHAR_H" as_fn_append ac_header_c_list " minix/config.h minix_config_h HAVE_MINIX_CONFIG_H" as_fn_append ac_func_c_list " btowc HAVE_BTOWC" -as_fn_append ac_func_c_list " readlinkat HAVE_READLINKAT" +as_fn_append ac_func_c_list " mbrtowc HAVE_MBRTOWC" as_fn_append ac_func_c_list " _set_invalid_parameter_handler HAVE__SET_INVALID_PARAMETER_HANDLER" as_fn_append ac_header_c_list " sys/socket.h sys_socket_h HAVE_SYS_SOCKET_H" +as_fn_append ac_header_c_list " error.h error_h HAVE_ERROR_H" as_fn_append ac_func_c_list " fcntl HAVE_FCNTL" as_fn_append ac_func_c_list " symlink HAVE_SYMLINK" -as_fn_append ac_func_c_list " mempcpy HAVE_MEMPCPY" as_fn_append ac_header_c_list " fnmatch.h fnmatch_h HAVE_FNMATCH_H" as_fn_append ac_func_c_list " fnmatch HAVE_FNMATCH" as_fn_append ac_func_c_list " mbsrtowcs HAVE_MBSRTOWCS" @@ -3987,11 +4294,9 @@ as_fn_append ac_func_c_list " getdtablesize HAVE_GETDTABLESIZE" gl_getopt_required=GNU as_fn_append ac_header_c_list " getopt.h getopt_h HAVE_GETOPT_H" as_fn_append ac_header_c_list " sys/cdefs.h sys_cdefs_h HAVE_SYS_CDEFS_H" -as_fn_append ac_func_c_list " getprogname HAVE_GETPROGNAME" as_fn_append ac_func_c_list " getexecname HAVE_GETEXECNAME" -as_fn_append ac_func_c_list " getrandom HAVE_GETRANDOM" -as_fn_append ac_func_c_list " gettimeofday HAVE_GETTIMEOFDAY" as_fn_append ac_header_c_list " sys/time.h sys_time_h HAVE_SYS_TIME_H" +as_fn_append ac_func_c_list " gettimeofday HAVE_GETTIMEOFDAY" as_fn_append ac_header_c_list " threads.h threads_h HAVE_THREADS_H" as_fn_append ac_header_c_list " iconv.h iconv_h HAVE_ICONV_H" as_fn_append ac_header_c_list " limits.h limits_h HAVE_LIMITS_H" @@ -3999,17 +4304,14 @@ as_fn_append ac_func_c_list " isblank HAVE_ISBLANK" as_fn_append ac_func_c_list " iswcntrl HAVE_ISWCNTRL" as_fn_append ac_header_c_list " crtdefs.h crtdefs_h HAVE_CRTDEFS_H" as_fn_append ac_header_c_list " wctype.h wctype_h HAVE_WCTYPE_H" -as_fn_append ac_func_c_list " iswblank HAVE_ISWBLANK" as_fn_append ac_header_c_list " langinfo.h langinfo_h HAVE_LANGINFO_H" as_fn_append ac_header_c_list " xlocale.h xlocale_h HAVE_XLOCALE_H" as_fn_append ac_func_c_list " lstat HAVE_LSTAT" as_fn_append ac_func_c_list " mbsinit HAVE_MBSINIT" -as_fn_append ac_func_c_list " mbrtowc HAVE_MBRTOWC" as_fn_append ac_func_c_list " mbslen HAVE_MBSLEN" as_fn_append ac_header_c_list " sys/mman.h sys_mman_h HAVE_SYS_MMAN_H" as_fn_append ac_func_c_list " mprotect HAVE_MPROTECT" as_fn_append ac_func_c_list " mkstemp HAVE_MKSTEMP" -as_fn_append ac_func_c_list " nl_langinfo HAVE_NL_LANGINFO" as_fn_append ac_header_c_list " sys/param.h sys_param_h HAVE_SYS_PARAM_H" as_fn_append ac_func_c_list " readlink HAVE_READLINK" as_fn_append ac_header_c_list " malloc.h malloc_h HAVE_MALLOC_H" @@ -4018,38 +4320,33 @@ as_fn_append ac_func_c_list " setenv HAVE_SETENV" as_fn_append ac_func_c_list " sigaltstack HAVE_SIGALTSTACK" as_fn_append ac_func_c_list " setrlimit HAVE_SETRLIMIT" as_fn_append ac_func_c_list " getrlimit HAVE_GETRLIMIT" -as_fn_append ac_func_c_list " strerror_r HAVE_STRERROR_R" +as_fn_append ac_header_c_list " stdbool.h stdbool_h HAVE_STDBOOL_H" +as_fn_append ac_header_c_list " stdckdint.h stdckdint_h HAVE_STDCKDINT_H" as_fn_append ac_func_c_list " __xpg_strerror_r HAVE___XPG_STRERROR_R" as_fn_append ac_func_c_list " strptime HAVE_STRPTIME" as_fn_append ac_func_c_list " strtoimax HAVE_STRTOIMAX" as_fn_append ac_header_c_list " sys/random.h sys_random_h HAVE_SYS_RANDOM_H" as_fn_append ac_header_c_list " sys/wait.h sys_wait_h HAVE_SYS_WAIT_H" as_fn_append ac_func_c_list " localtime_r HAVE_LOCALTIME_R" -as_fn_append ac_func_c_list " timegm HAVE_TIMEGM" -as_fn_append ac_func_c_list " vasnprintf HAVE_VASNPRINTF" as_fn_append ac_header_c_list " features.h features_h HAVE_FEATURES_H" -as_fn_append ac_func_c_list " snprintf HAVE_SNPRINTF" as_fn_append ac_func_c_list " wcrtomb HAVE_WCRTOMB" as_fn_append ac_func_c_list " wcwidth HAVE_WCWIDTH" -as_fn_append ac_func_c_list " wmempcpy HAVE_WMEMPCPY" as_fn_append ac_header_c_list " arpa/inet.h arpa_inet_h HAVE_ARPA_INET_H" -as_fn_append ac_func_c_list " ftruncate HAVE_FTRUNCATE" -as_fn_append ac_func_c_list " duplocale HAVE_DUPLOCALE" as_fn_append ac_header_c_list " netdb.h netdb_h HAVE_NETDB_H" as_fn_append ac_header_c_list " netinet/in.h netinet_in_h HAVE_NETINET_IN_H" -as_fn_append ac_func_c_list " newlocale HAVE_NEWLOCALE" -as_fn_append ac_header_c_list " sys/select.h sys_select_h HAVE_SYS_SELECT_H" as_fn_append ac_func_c_list " pipe HAVE_PIPE" +as_fn_append ac_header_c_list " sys/select.h sys_select_h HAVE_SYS_SELECT_H" +as_fn_append ac_func_c_list " pselect HAVE_PSELECT" as_fn_append ac_header_c_list " pthread.h pthread_h HAVE_PTHREAD_H" as_fn_append ac_func_c_list " pthread_sigmask HAVE_PTHREAD_SIGMASK" -as_fn_append ac_func_c_list " sigaction HAVE_SIGACTION" -as_fn_append ac_func_c_list " siginterrupt HAVE_SIGINTERRUPT" as_fn_append ac_func_c_list " sleep HAVE_SLEEP" -as_fn_append ac_func_c_list " catgets HAVE_CATGETS" +as_fn_append ac_func_c_list " snprintf HAVE_SNPRINTF" as_fn_append ac_header_c_list " sys/ioctl.h sys_ioctl_h HAVE_SYS_IOCTL_H" as_fn_append ac_func_c_list " shutdown HAVE_SHUTDOWN" as_fn_append ac_header_c_list " sys/uio.h sys_uio_h HAVE_SYS_UIO_H" +as_fn_append ac_func_c_list " vasnprintf HAVE_VASNPRINTF" as_fn_append ac_func_c_list " wctob HAVE_WCTOB" +as_fn_append ac_func_c_list " sigaction HAVE_SIGACTION" as_fn_append ac_func_c_list " sigprocmask HAVE_SIGPROCMASK" as_fn_append ac_func_c_list " strcasecoll HAVE_STRCASECOLL" as_fn_append ac_func_c_list " stricoll HAVE_STRICOLL" @@ -4136,8 +4433,9 @@ IFS=$as_save_IFS if $as_found then : -else $as_nop - as_fn_error $? "cannot find required auxiliary files:$ac_missing_aux_files" "$LINENO" 5 +else case e in #( + e) as_fn_error $? "cannot find required auxiliary files:$ac_missing_aux_files" "$LINENO" 5 ;; +esac fi @@ -4165,12 +4463,12 @@ for ac_var in $ac_precious_vars; do eval ac_new_val=\$ac_env_${ac_var}_value case $ac_old_set,$ac_new_set in set,) - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 -printf "%s\n" "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: '$ac_var' was set to '$ac_old_val' in the previous run" >&5 +printf "%s\n" "$as_me: error: '$ac_var' was set to '$ac_old_val' in the previous run" >&2;} ac_cache_corrupted=: ;; ,set) - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5 -printf "%s\n" "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: '$ac_var' was not set in the previous run" >&5 +printf "%s\n" "$as_me: error: '$ac_var' was not set in the previous run" >&2;} ac_cache_corrupted=: ;; ,);; *) @@ -4179,18 +4477,18 @@ printf "%s\n" "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} ac_old_val_w=`echo x $ac_old_val` ac_new_val_w=`echo x $ac_new_val` if test "$ac_old_val_w" != "$ac_new_val_w"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5 -printf "%s\n" "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: '$ac_var' has changed since the previous run:" >&5 +printf "%s\n" "$as_me: error: '$ac_var' has changed since the previous run:" >&2;} ac_cache_corrupted=: else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5 -printf "%s\n" "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in '$ac_var' since the previous run:" >&5 +printf "%s\n" "$as_me: warning: ignoring whitespace changes in '$ac_var' since the previous run:" >&2;} eval $ac_var=\$ac_old_val fi - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5 -printf "%s\n" "$as_me: former value: \`$ac_old_val'" >&2;} - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5 -printf "%s\n" "$as_me: current value: \`$ac_new_val'" >&2;} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: former value: '$ac_old_val'" >&5 +printf "%s\n" "$as_me: former value: '$ac_old_val'" >&2;} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: current value: '$ac_new_val'" >&5 +printf "%s\n" "$as_me: current value: '$ac_new_val'" >&2;} fi;; esac # Pass precious variables to config.status. @@ -4206,11 +4504,11 @@ printf "%s\n" "$as_me: current value: \`$ac_new_val'" >&2;} fi done if $ac_cache_corrupted; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 +printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5 printf "%s\n" "$as_me: error: changes in the environment can compromise the build" >&2;} - as_fn_error $? "run \`${MAKE-make} distclean' and/or \`rm $cache_file' + as_fn_error $? "run '${MAKE-make} distclean' and/or 'rm $cache_file' and start over" "$LINENO" 5 fi ## -------------------- ## @@ -4253,8 +4551,8 @@ if test -z "$INSTALL"; then if test ${ac_cv_path_install+y} then : printf %s "(cached) " >&6 -else $as_nop - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +else case e in #( + e) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS @@ -4308,7 +4606,8 @@ esac IFS=$as_save_IFS rm -rf conftest.one conftest.two conftest.dir - + ;; +esac fi if test ${ac_cv_path_install+y}; then INSTALL=$ac_cv_path_install @@ -4331,9 +4630,76 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether sleep supports fractional seconds" >&5 +printf %s "checking whether sleep supports fractional seconds... " >&6; } +if test ${am_cv_sleep_fractional_seconds+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) if sleep 0.001 2>/dev/null +then : + am_cv_sleep_fractional_seconds=true +else case e in #( + e) am_cv_sleep_fractional_seconds=false ;; +esac +fi + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_sleep_fractional_seconds" >&5 +printf "%s\n" "$am_cv_sleep_fractional_seconds" >&6; } + +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking the filesystem timestamp resolution" >&5 +printf %s "checking the filesystem timestamp resolution... " >&6; } +if test ${am_cv_filesystem_timestamp_resolution+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) # Use names that lexically sort older-first when the timestamps are equal. +rm -f conftest.file.a conftest.file.b +: > conftest.file.a +if $am_cv_sleep_fractional_seconds +then : + am_try_sleep=0.1 am_try_loops=20 + +else case e in #( + e) am_try_sleep=1 am_try_loops=2 + ;; +esac +fi +am_try=0 +while :; do + as_fn_arith $am_try + 1 && am_try=$as_val + echo "timestamp $am_try" > conftest.file.b + set X `ls -t conftest.file.a conftest.file.b` + if test "$2" = conftest.file.b || test $am_try -eq $am_try_loops; then + break + fi + sleep $am_try_sleep +done +rm -f conftest.file.a conftest.file.b +am_cv_filesystem_timestamp_resolution=$am_try +if $am_cv_sleep_fractional_seconds +then : + as_fn_arith $am_try / 10 && am_cv_filesystem_timestamp_resolution=$as_val + as_fn_arith $am_try % 10 && am_fraction=$as_val + as_fn_append am_cv_filesystem_timestamp_resolution .$am_fraction + +fi + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_filesystem_timestamp_resolution" >&5 +printf "%s\n" "$am_cv_filesystem_timestamp_resolution" >&6; } + +rm -f conftest.file { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5 printf %s "checking whether build environment is sane... " >&6; } -# Reject unsafe characters in $srcdir or the absolute working directory +if test ${am_cv_build_env_is_sane+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) # Reject unsafe characters in $srcdir or the absolute working directory # name. Accept space and tab only in the latter. am_lf=' ' @@ -4374,25 +4740,27 @@ if ( break fi # Just in case. - sleep 1 + sleep $am_cv_filesystem_timestamp_resolution am_has_slept=yes done test "$2" = conftest.file ) then - # Ok. - : + am_cv_build_env_is_sane=yes else as_fn_error $? "newly created file is older than distributed files! Check your system clock" "$LINENO" 5 fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_build_env_is_sane" >&5 +printf "%s\n" "$am_cv_build_env_is_sane" >&6; } # If we didn't sleep, we still need to ensure time stamps of config.status and # generated files are strictly newer. am_sleep_pid= -if grep 'slept: no' conftest.file >/dev/null 2>&1; then - ( sleep 1 ) & +if ! test -e conftest.file || grep 'slept: no' conftest.file >/dev/null 2>&1; then + ( sleep $am_cv_filesystem_timestamp_resolution ) & am_sleep_pid=$! fi @@ -4404,7 +4772,7 @@ test "$program_prefix" != NONE && test "$program_suffix" != NONE && program_transform_name="s&\$&$program_suffix&;$program_transform_name" # Double any \ or $. -# By default was `s,x,x', remove it if useless. +# By default was 's,x,x', remove it if useless. ac_script='s/[\\$]/&&/g;s/;s,x,x,$//' program_transform_name=`printf "%s\n" "$program_transform_name" | sed "$ac_script"` @@ -4447,8 +4815,8 @@ printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_STRIP+y} then : printf %s "(cached) " >&6 -else $as_nop - if test -n "$STRIP"; then +else case e in #( + e) if test -n "$STRIP"; then ac_cv_prog_STRIP="$STRIP" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR @@ -4470,7 +4838,8 @@ done done IFS=$as_save_IFS -fi +fi ;; +esac fi STRIP=$ac_cv_prog_STRIP if test -n "$STRIP"; then @@ -4492,8 +4861,8 @@ printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_ac_ct_STRIP+y} then : printf %s "(cached) " >&6 -else $as_nop - if test -n "$ac_ct_STRIP"; then +else case e in #( + e) if test -n "$ac_ct_STRIP"; then ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR @@ -4515,7 +4884,8 @@ done done IFS=$as_save_IFS -fi +fi ;; +esac fi ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP if test -n "$ac_ct_STRIP"; then @@ -4551,8 +4921,8 @@ if test -z "$MKDIR_P"; then if test ${ac_cv_path_mkdir+y} then : printf %s "(cached) " >&6 -else $as_nop - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +else case e in #( + e) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin do IFS=$as_save_IFS @@ -4575,18 +4945,17 @@ do done done IFS=$as_save_IFS - + ;; +esac fi test -d ./--version && rmdir ./--version if test ${ac_cv_path_mkdir+y}; then MKDIR_P="$ac_cv_path_mkdir -p" else - # As a last resort, use the slow shell script. Don't cache a - # value for MKDIR_P within a source directory, because that will - # break other packages using the cache if that directory is - # removed, or if the value is a relative name. - MKDIR_P="$ac_install_sh -d" + # As a last resort, use plain mkdir -p, + # in the hope it doesn't have the bugs of ancient mkdir. + MKDIR_P='mkdir -p' fi fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5 @@ -4601,8 +4970,8 @@ printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_AWK+y} then : printf %s "(cached) " >&6 -else $as_nop - if test -n "$AWK"; then +else case e in #( + e) if test -n "$AWK"; then ac_cv_prog_AWK="$AWK" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR @@ -4624,7 +4993,8 @@ done done IFS=$as_save_IFS -fi +fi ;; +esac fi AWK=$ac_cv_prog_AWK if test -n "$AWK"; then @@ -4646,8 +5016,8 @@ ac_make=`printf "%s\n" "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` if eval test \${ac_cv_prog_make_${ac_make}_set+y} then : printf %s "(cached) " >&6 -else $as_nop - cat >conftest.make <<\_ACEOF +else case e in #( + e) cat >conftest.make <<\_ACEOF SHELL = /bin/sh all: @echo '@@@%%%=$(MAKE)=@@@%%%' @@ -4659,7 +5029,8 @@ case `${MAKE-make} -f conftest.make 2>/dev/null` in *) eval ac_cv_prog_make_${ac_make}_set=no;; esac -rm -f conftest.make +rm -f conftest.make ;; +esac fi if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 @@ -4680,25 +5051,21 @@ else fi rmdir .tst 2>/dev/null +AM_DEFAULT_VERBOSITY=1 # Check whether --enable-silent-rules was given. if test ${enable_silent_rules+y} then : enableval=$enable_silent_rules; fi -case $enable_silent_rules in # ((( - yes) AM_DEFAULT_VERBOSITY=0;; - no) AM_DEFAULT_VERBOSITY=1;; - *) AM_DEFAULT_VERBOSITY=1;; -esac am_make=${MAKE-make} { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5 printf %s "checking whether $am_make supports nested variables... " >&6; } if test ${am_cv_make_support_nested_variables+y} then : printf %s "(cached) " >&6 -else $as_nop - if printf "%s\n" 'TRUE=$(BAR$(V)) +else case e in #( + e) if printf "%s\n" 'TRUE=$(BAR$(V)) BAR0=false BAR1=true V=1 @@ -4708,19 +5075,50 @@ am__doit: am_cv_make_support_nested_variables=yes else am_cv_make_support_nested_variables=no -fi +fi ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5 printf "%s\n" "$am_cv_make_support_nested_variables" >&6; } -if test $am_cv_make_support_nested_variables = yes; then - AM_V='$(V)' - AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' -else - AM_V=$AM_DEFAULT_VERBOSITY - AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY -fi AM_BACKSLASH='\' +am__rm_f_notfound= +if (rm -f && rm -fr && rm -rf) 2>/dev/null +then : + +else case e in #( + e) am__rm_f_notfound='""' ;; +esac +fi + + +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking xargs -n works" >&5 +printf %s "checking xargs -n works... " >&6; } +if test ${am_cv_xargs_n_works+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) if test "`echo 1 2 3 | xargs -n2 echo`" = "1 2 +3" +then : + am_cv_xargs_n_works=yes +else case e in #( + e) am_cv_xargs_n_works=no ;; +esac +fi ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_xargs_n_works" >&5 +printf "%s\n" "$am_cv_xargs_n_works" >&6; } +if test "$am_cv_xargs_n_works" = yes +then : + am__xargs_n='xargs -n' +else case e in #( + e) am__xargs_n='am__xargs_n () { shift; sed "s/ /\\n/g" | while read am__xargs_n_arg; do "" "$am__xargs_n_arg"; done; }' + ;; +esac +fi + if test "`cd $srcdir && pwd`" != "`pwd`"; then # Use -I$(srcdir) only when $(srcdir) != ., so that make's output # is not polluted with repeated "-I." @@ -4743,7 +5141,7 @@ fi # Define the identity of the package. PACKAGE='diffutils' - VERSION='3.8' + VERSION='3.10' printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h @@ -4804,89 +5202,12 @@ fi -# POSIX will say in a future version that running "rm -f" with no argument -# is OK; and we want to be able to make that assumption in our Makefile -# recipes. So use an aggressive probe to check that the usage we want is -# actually supported "in the wild" to an acceptable degree. -# See automake bug#10828. -# To make any issue more visible, cause the running configure to be aborted -# by default if the 'rm' program in use doesn't match our expectations; the -# user can still override this though. -if rm -f && rm -fr && rm -rf; then : OK; else - cat >&2 <<'END' -Oops! - -Your 'rm' program seems unable to run without file operands specified -on the command line, even when the '-f' option is present. This is contrary -to the behaviour of most rm programs out there, and not conforming with -the upcoming POSIX standard: -Please tell bug-automake@gnu.org about your system, including the value -of your $PATH and any error possibly output before this message. This -can help us improve future automake versions. - -END - if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then - echo 'Configuration will proceed anyway, since you have set the' >&2 - echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2 - echo >&2 - else - cat >&2 <<'END' -Aborting the configuration process, to ensure you take notice of the issue. -You can download and install GNU coreutils to get an 'rm' implementation -that behaves properly: . -If you want to complete the configuration process using your problematic -'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM -to "yes", and re-run configure. -END - as_fn_error $? "Your 'rm' program is bad, sorry." "$LINENO" 5 - fi -fi -# Check whether --enable-silent-rules was given. -if test ${enable_silent_rules+y} -then : - enableval=$enable_silent_rules; -fi - -case $enable_silent_rules in # ((( - yes) AM_DEFAULT_VERBOSITY=0;; - no) AM_DEFAULT_VERBOSITY=1;; - *) AM_DEFAULT_VERBOSITY=0;; -esac -am_make=${MAKE-make} -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5 -printf %s "checking whether $am_make supports nested variables... " >&6; } -if test ${am_cv_make_support_nested_variables+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if printf "%s\n" 'TRUE=$(BAR$(V)) -BAR0=false -BAR1=true -V=1 -am__doit: - @$(TRUE) -.PHONY: am__doit' | $am_make -f - >/dev/null 2>&1; then - am_cv_make_support_nested_variables=yes -else - am_cv_make_support_nested_variables=no -fi -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5 -printf "%s\n" "$am_cv_make_support_nested_variables" >&6; } -if test $am_cv_make_support_nested_variables = yes; then - AM_V='$(V)' - AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' -else - AM_V=$AM_DEFAULT_VERBOSITY - AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY -fi -AM_BACKSLASH='\' - # make --enable-silent-rules the default. +AM_DEFAULT_VERBOSITY=0 # make --enable-silent-rules the default. ac_config_headers="$ac_config_headers lib/config.h:lib/config.hin" @@ -4900,8 +5221,8 @@ printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_AWK+y} then : printf %s "(cached) " >&6 -else $as_nop - if test -n "$AWK"; then +else case e in #( + e) if test -n "$AWK"; then ac_cv_prog_AWK="$AWK" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR @@ -4923,7 +5244,8 @@ done done IFS=$as_save_IFS -fi +fi ;; +esac fi AWK=$ac_cv_prog_AWK if test -n "$AWK"; then @@ -4960,8 +5282,8 @@ printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_CC+y} then : printf %s "(cached) " >&6 -else $as_nop - if test -n "$CC"; then +else case e in #( + e) if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR @@ -4983,7 +5305,8 @@ done done IFS=$as_save_IFS -fi +fi ;; +esac fi CC=$ac_cv_prog_CC if test -n "$CC"; then @@ -5005,8 +5328,8 @@ printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_ac_ct_CC+y} then : printf %s "(cached) " >&6 -else $as_nop - if test -n "$ac_ct_CC"; then +else case e in #( + e) if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR @@ -5028,7 +5351,8 @@ done done IFS=$as_save_IFS -fi +fi ;; +esac fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then @@ -5063,8 +5387,8 @@ printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_CC+y} then : printf %s "(cached) " >&6 -else $as_nop - if test -n "$CC"; then +else case e in #( + e) if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR @@ -5086,7 +5410,8 @@ done done IFS=$as_save_IFS -fi +fi ;; +esac fi CC=$ac_cv_prog_CC if test -n "$CC"; then @@ -5108,8 +5433,8 @@ printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_CC+y} then : printf %s "(cached) " >&6 -else $as_nop - if test -n "$CC"; then +else case e in #( + e) if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else ac_prog_rejected=no @@ -5148,7 +5473,8 @@ if test $ac_prog_rejected = yes; then ac_cv_prog_CC="$as_dir$ac_word${1+' '}$@" fi fi -fi +fi ;; +esac fi CC=$ac_cv_prog_CC if test -n "$CC"; then @@ -5172,8 +5498,8 @@ printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_CC+y} then : printf %s "(cached) " >&6 -else $as_nop - if test -n "$CC"; then +else case e in #( + e) if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR @@ -5195,7 +5521,8 @@ done done IFS=$as_save_IFS -fi +fi ;; +esac fi CC=$ac_cv_prog_CC if test -n "$CC"; then @@ -5221,8 +5548,8 @@ printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_ac_ct_CC+y} then : printf %s "(cached) " >&6 -else $as_nop - if test -n "$ac_ct_CC"; then +else case e in #( + e) if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR @@ -5244,7 +5571,8 @@ done done IFS=$as_save_IFS -fi +fi ;; +esac fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then @@ -5282,8 +5610,8 @@ printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_CC+y} then : printf %s "(cached) " >&6 -else $as_nop - if test -n "$CC"; then +else case e in #( + e) if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR @@ -5305,7 +5633,8 @@ done done IFS=$as_save_IFS -fi +fi ;; +esac fi CC=$ac_cv_prog_CC if test -n "$CC"; then @@ -5327,8 +5656,8 @@ printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_ac_ct_CC+y} then : printf %s "(cached) " >&6 -else $as_nop - if test -n "$ac_ct_CC"; then +else case e in #( + e) if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR @@ -5350,7 +5679,8 @@ done done IFS=$as_save_IFS -fi +fi ;; +esac fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then @@ -5379,10 +5709,10 @@ fi fi -test -z "$CC" && { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} +test -z "$CC" && { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 +printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error $? "no acceptable C compiler found in \$PATH -See \`config.log' for more details" "$LINENO" 5; } +See 'config.log' for more details" "$LINENO" 5; } # Provide some information about the compiler. printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 @@ -5454,8 +5784,8 @@ printf "%s\n" "$ac_try_echo"; } >&5 printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } then : - # Autoconf-2.13 could set the ac_cv_exeext variable to `no'. -# So ignore a value of `no', otherwise this would lead to `EXEEXT = no' + # Autoconf-2.13 could set the ac_cv_exeext variable to 'no'. +# So ignore a value of 'no', otherwise this would lead to 'EXEEXT = no' # in a Makefile. We should not override ac_cv_exeext if it was cached, # so that the user can short-circuit this test for compilers unknown to # Autoconf. @@ -5475,7 +5805,7 @@ do ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` fi # We set ac_cv_exeext here because the later test for it is not - # safe: cross compilers may not add the suffix if given an `-o' + # safe: cross compilers may not add the suffix if given an '-o' # argument, so we may need to know it at that point already. # Even if this section looks crufty: it has the advantage of # actually working. @@ -5486,8 +5816,9 @@ do done test "$ac_cv_exeext" = no && ac_cv_exeext= -else $as_nop - ac_file='' +else case e in #( + e) ac_file='' ;; +esac fi if test -z "$ac_file" then : @@ -5496,13 +5827,14 @@ printf "%s\n" "no" >&6; } printf "%s\n" "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -{ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} +{ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 +printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error 77 "C compiler cannot create executables -See \`config.log' for more details" "$LINENO" 5; } -else $as_nop - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } +See 'config.log' for more details" "$LINENO" 5; } +else case e in #( + e) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +printf "%s\n" "yes" >&6; } ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5 printf %s "checking for C compiler default output file name... " >&6; } @@ -5526,10 +5858,10 @@ printf "%s\n" "$ac_try_echo"; } >&5 printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } then : - # If both `conftest.exe' and `conftest' are `present' (well, observable) -# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will -# work properly (i.e., refer to `conftest.exe'), while it won't with -# `rm'. + # If both 'conftest.exe' and 'conftest' are 'present' (well, observable) +# catch 'conftest.exe'. For instance with Cygwin, 'ls conftest' will +# work properly (i.e., refer to 'conftest.exe'), while it won't with +# 'rm'. for ac_file in conftest.exe conftest conftest.*; do test -f "$ac_file" || continue case $ac_file in @@ -5539,11 +5871,12 @@ for ac_file in conftest.exe conftest conftest.*; do * ) break;; esac done -else $as_nop - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} +else case e in #( + e) { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 +printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error $? "cannot compute suffix of executables: cannot compile and link -See \`config.log' for more details" "$LINENO" 5; } +See 'config.log' for more details" "$LINENO" 5; } ;; +esac fi rm -f conftest conftest$ac_cv_exeext { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5 @@ -5598,26 +5931,27 @@ printf "%s\n" "$ac_try_echo"; } >&5 if test "$cross_compiling" = maybe; then cross_compiling=yes else - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 +printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error 77 "cannot run C compiled programs. -If you meant to cross compile, use \`--host'. -See \`config.log' for more details" "$LINENO" 5; } +If you meant to cross compile, use '--host'. +See 'config.log' for more details" "$LINENO" 5; } fi fi fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5 printf "%s\n" "$cross_compiling" >&6; } -rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out +rm -f conftest.$ac_ext conftest$ac_cv_exeext \ + conftest.o conftest.obj conftest.out ac_clean_files=$ac_clean_files_save { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5 printf %s "checking for suffix of object files... " >&6; } if test ${ac_cv_objext+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -5649,16 +5983,18 @@ then : break;; esac done -else $as_nop - printf "%s\n" "$as_me: failed program was:" >&5 +else case e in #( + e) printf "%s\n" "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -{ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} +{ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 +printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error $? "cannot compute suffix of object files: cannot compile -See \`config.log' for more details" "$LINENO" 5; } +See 'config.log' for more details" "$LINENO" 5; } ;; +esac fi -rm -f conftest.$ac_cv_objext conftest.$ac_ext +rm -f conftest.$ac_cv_objext conftest.$ac_ext ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5 printf "%s\n" "$ac_cv_objext" >&6; } @@ -5669,8 +6005,8 @@ printf %s "checking whether the compiler supports GNU C... " >&6; } if test ${ac_cv_c_compiler_gnu+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -5687,12 +6023,14 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : ac_compiler_gnu=yes -else $as_nop - ac_compiler_gnu=no +else case e in #( + e) ac_compiler_gnu=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ac_cv_c_compiler_gnu=$ac_compiler_gnu - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5 printf "%s\n" "$ac_cv_c_compiler_gnu" >&6; } @@ -5710,8 +6048,8 @@ printf %s "checking whether $CC accepts -g... " >&6; } if test ${ac_cv_prog_cc_g+y} then : printf %s "(cached) " >&6 -else $as_nop - ac_save_c_werror_flag=$ac_c_werror_flag +else case e in #( + e) ac_save_c_werror_flag=$ac_c_werror_flag ac_c_werror_flag=yes ac_cv_prog_cc_g=no CFLAGS="-g" @@ -5729,8 +6067,8 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : ac_cv_prog_cc_g=yes -else $as_nop - CFLAGS="" +else case e in #( + e) CFLAGS="" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -5745,8 +6083,8 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : -else $as_nop - ac_c_werror_flag=$ac_save_c_werror_flag +else case e in #( + e) ac_c_werror_flag=$ac_save_c_werror_flag CFLAGS="-g" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -5763,12 +6101,15 @@ if ac_fn_c_try_compile "$LINENO" then : ac_cv_prog_cc_g=yes fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - ac_c_werror_flag=$ac_save_c_werror_flag + ac_c_werror_flag=$ac_save_c_werror_flag ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 printf "%s\n" "$ac_cv_prog_cc_g" >&6; } @@ -5795,8 +6136,8 @@ printf %s "checking for $CC option to enable C11 features... " >&6; } if test ${ac_cv_prog_cc_c11+y} then : printf %s "(cached) " >&6 -else $as_nop - ac_cv_prog_cc_c11=no +else case e in #( + e) ac_cv_prog_cc_c11=no ac_save_CC=$CC cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -5813,25 +6154,28 @@ rm -f core conftest.err conftest.$ac_objext conftest.beam test "x$ac_cv_prog_cc_c11" != "xno" && break done rm -f conftest.$ac_ext -CC=$ac_save_CC +CC=$ac_save_CC ;; +esac fi if test "x$ac_cv_prog_cc_c11" = xno then : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 printf "%s\n" "unsupported" >&6; } -else $as_nop - if test "x$ac_cv_prog_cc_c11" = x +else case e in #( + e) if test "x$ac_cv_prog_cc_c11" = x then : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 printf "%s\n" "none needed" >&6; } -else $as_nop - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c11" >&5 +else case e in #( + e) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c11" >&5 printf "%s\n" "$ac_cv_prog_cc_c11" >&6; } - CC="$CC $ac_cv_prog_cc_c11" + CC="$CC $ac_cv_prog_cc_c11" ;; +esac fi ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c11 - ac_prog_cc_stdc=c11 + ac_prog_cc_stdc=c11 ;; +esac fi fi if test x$ac_prog_cc_stdc = xno @@ -5841,8 +6185,8 @@ printf %s "checking for $CC option to enable C99 features... " >&6; } if test ${ac_cv_prog_cc_c99+y} then : printf %s "(cached) " >&6 -else $as_nop - ac_cv_prog_cc_c99=no +else case e in #( + e) ac_cv_prog_cc_c99=no ac_save_CC=$CC cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -5859,25 +6203,28 @@ rm -f core conftest.err conftest.$ac_objext conftest.beam test "x$ac_cv_prog_cc_c99" != "xno" && break done rm -f conftest.$ac_ext -CC=$ac_save_CC +CC=$ac_save_CC ;; +esac fi if test "x$ac_cv_prog_cc_c99" = xno then : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 printf "%s\n" "unsupported" >&6; } -else $as_nop - if test "x$ac_cv_prog_cc_c99" = x +else case e in #( + e) if test "x$ac_cv_prog_cc_c99" = x then : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 printf "%s\n" "none needed" >&6; } -else $as_nop - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c99" >&5 +else case e in #( + e) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c99" >&5 printf "%s\n" "$ac_cv_prog_cc_c99" >&6; } - CC="$CC $ac_cv_prog_cc_c99" + CC="$CC $ac_cv_prog_cc_c99" ;; +esac fi ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c99 - ac_prog_cc_stdc=c99 + ac_prog_cc_stdc=c99 ;; +esac fi fi if test x$ac_prog_cc_stdc = xno @@ -5887,8 +6234,8 @@ printf %s "checking for $CC option to enable C89 features... " >&6; } if test ${ac_cv_prog_cc_c89+y} then : printf %s "(cached) " >&6 -else $as_nop - ac_cv_prog_cc_c89=no +else case e in #( + e) ac_cv_prog_cc_c89=no ac_save_CC=$CC cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -5905,25 +6252,28 @@ rm -f core conftest.err conftest.$ac_objext conftest.beam test "x$ac_cv_prog_cc_c89" != "xno" && break done rm -f conftest.$ac_ext -CC=$ac_save_CC +CC=$ac_save_CC ;; +esac fi if test "x$ac_cv_prog_cc_c89" = xno then : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 printf "%s\n" "unsupported" >&6; } -else $as_nop - if test "x$ac_cv_prog_cc_c89" = x +else case e in #( + e) if test "x$ac_cv_prog_cc_c89" = x then : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 printf "%s\n" "none needed" >&6; } -else $as_nop - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 +else case e in #( + e) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 printf "%s\n" "$ac_cv_prog_cc_c89" >&6; } - CC="$CC $ac_cv_prog_cc_c89" + CC="$CC $ac_cv_prog_cc_c89" ;; +esac fi ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c89 - ac_prog_cc_stdc=c89 + ac_prog_cc_stdc=c89 ;; +esac fi fi @@ -5944,8 +6294,8 @@ printf %s "checking whether $CC understands -c and -o together... " >&6; } if test ${am_cv_prog_cc_c_o+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -5975,7 +6325,8 @@ _ACEOF fi done rm -f core conftest* - unset am_i + unset am_i ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5 printf "%s\n" "$am_cv_prog_cc_c_o" >&6; } @@ -6000,8 +6351,8 @@ printf %s "checking whether the compiler is clang... " >&6; } if test ${gl_cv_compiler_clang+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifdef __clang__ @@ -6020,11 +6371,13 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_compiler_clang=no -else $as_nop - gl_cv_compiler_clang=yes +else case e in #( + e) gl_cv_compiler_clang=yes ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_compiler_clang" >&5 printf "%s\n" "$gl_cv_compiler_clang" >&6; } @@ -6035,8 +6388,8 @@ printf %s "checking for compiler option needed when checking for declarations... if test ${gl_cv_compiler_check_decl_option+y} then : printf %s "(cached) " >&6 -else $as_nop - if test $gl_cv_compiler_clang = yes; then +else case e in #( + e) if test $gl_cv_compiler_clang = yes; then save_ac_compile="$ac_compile" ac_compile="$ac_compile -Werror=implicit-function-declaration" cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -6053,15 +6406,17 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_compiler_check_decl_option='-Werror=implicit-function-declaration' -else $as_nop - gl_cv_compiler_check_decl_option=none +else case e in #( + e) gl_cv_compiler_check_decl_option=none ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ac_compile="$save_ac_compile" else gl_cv_compiler_check_decl_option=none fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_compiler_check_decl_option" >&5 printf "%s\n" "$gl_cv_compiler_check_decl_option" >&6; } @@ -6143,8 +6498,8 @@ printf %s "checking dependency style of $depcc... " >&6; } if test ${am_cv_CC_dependencies_compiler_type+y} then : printf %s "(cached) " >&6 -else $as_nop - if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then +else case e in #( + e) if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then # We make a subdir and do the tests there. Otherwise we can end up # making bogus files that we don't know about and never remove. For # instance it was reported that on HP-UX the gcc test will end up @@ -6248,7 +6603,8 @@ else $as_nop else am_cv_CC_dependencies_compiler_type=none fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5 printf "%s\n" "$am_cv_CC_dependencies_compiler_type" >&6; } @@ -6277,8 +6633,8 @@ printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_RANLIB+y} then : printf %s "(cached) " >&6 -else $as_nop - if test -n "$RANLIB"; then +else case e in #( + e) if test -n "$RANLIB"; then ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR @@ -6300,7 +6656,8 @@ done done IFS=$as_save_IFS -fi +fi ;; +esac fi RANLIB=$ac_cv_prog_RANLIB if test -n "$RANLIB"; then @@ -6322,8 +6679,8 @@ printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_ac_ct_RANLIB+y} then : printf %s "(cached) " >&6 -else $as_nop - if test -n "$ac_ct_RANLIB"; then +else case e in #( + e) if test -n "$ac_ct_RANLIB"; then ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR @@ -6345,7 +6702,8 @@ done done IFS=$as_save_IFS -fi +fi ;; +esac fi ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB if test -n "$ac_ct_RANLIB"; then @@ -6412,8 +6770,8 @@ printf %s "checking whether it is safe to define __EXTENSIONS__... " >&6; } if test ${ac_cv_safe_to_define___extensions__+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ # define __EXTENSIONS__ 1 @@ -6429,10 +6787,12 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : ac_cv_safe_to_define___extensions__=yes -else $as_nop - ac_cv_safe_to_define___extensions__=no +else case e in #( + e) ac_cv_safe_to_define___extensions__=no ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_safe_to_define___extensions__" >&5 printf "%s\n" "$ac_cv_safe_to_define___extensions__" >&6; } @@ -6442,8 +6802,8 @@ printf %s "checking whether _XOPEN_SOURCE should be defined... " >&6; } if test ${ac_cv_should_define__xopen_source+y} then : printf %s "(cached) " >&6 -else $as_nop - ac_cv_should_define__xopen_source=no +else case e in #( + e) ac_cv_should_define__xopen_source=no if test $ac_cv_header_wchar_h = yes then : cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -6462,8 +6822,8 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #define _XOPEN_SOURCE 500 @@ -6481,10 +6841,12 @@ if ac_fn_c_try_compile "$LINENO" then : ac_cv_should_define__xopen_source=yes fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext -fi +fi ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_should_define__xopen_source" >&5 printf "%s\n" "$ac_cv_should_define__xopen_source" >&6; } @@ -6509,6 +6871,8 @@ printf "%s\n" "$ac_cv_should_define__xopen_source" >&6; } printf "%s\n" "#define __STDC_WANT_IEC_60559_DFP_EXT__ 1" >>confdefs.h + printf "%s\n" "#define __STDC_WANT_IEC_60559_EXT__ 1" >>confdefs.h + printf "%s\n" "#define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1" >>confdefs.h printf "%s\n" "#define __STDC_WANT_IEC_60559_TYPES_EXT__ 1" >>confdefs.h @@ -6528,8 +6892,9 @@ then : printf "%s\n" "#define _POSIX_1_SOURCE 2" >>confdefs.h -else $as_nop - MINIX= +else case e in #( + e) MINIX= ;; +esac fi if test $ac_cv_safe_to_define___extensions__ = yes then : @@ -6553,15 +6918,16 @@ printf %s "checking build system type... " >&6; } if test ${ac_cv_build+y} then : printf %s "(cached) " >&6 -else $as_nop - ac_build_alias=$build_alias +else case e in #( + e) ac_build_alias=$build_alias test "x$ac_build_alias" = x && ac_build_alias=`$SHELL "${ac_aux_dir}config.guess"` test "x$ac_build_alias" = x && as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5 ac_cv_build=`$SHELL "${ac_aux_dir}config.sub" $ac_build_alias` || as_fn_error $? "$SHELL ${ac_aux_dir}config.sub $ac_build_alias failed" "$LINENO" 5 - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5 printf "%s\n" "$ac_cv_build" >&6; } @@ -6588,14 +6954,15 @@ printf %s "checking host system type... " >&6; } if test ${ac_cv_host+y} then : printf %s "(cached) " >&6 -else $as_nop - if test "x$host_alias" = x; then +else case e in #( + e) if test "x$host_alias" = x; then ac_cv_host=$ac_cv_build else ac_cv_host=`$SHELL "${ac_aux_dir}config.sub" $host_alias` || as_fn_error $? "$SHELL ${ac_aux_dir}config.sub $host_alias failed" "$LINENO" 5 fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5 printf "%s\n" "$ac_cv_host" >&6; } @@ -6644,8 +7011,8 @@ if test -z "$CPP"; then if test ${ac_cv_prog_CPP+y} then : printf %s "(cached) " >&6 -else $as_nop - # Double quotes because $CC needs to be expanded +else case e in #( + e) # Double quotes because $CC needs to be expanded for CPP in "$CC -E" "$CC -E -traditional-cpp" cpp /lib/cpp do ac_preproc_ok=false @@ -6663,9 +7030,10 @@ _ACEOF if ac_fn_c_try_cpp "$LINENO" then : -else $as_nop - # Broken: fails on valid input. -continue +else case e in #( + e) # Broken: fails on valid input. +continue ;; +esac fi rm -f conftest.err conftest.i conftest.$ac_ext @@ -6679,15 +7047,16 @@ if ac_fn_c_try_cpp "$LINENO" then : # Broken: success on invalid input. continue -else $as_nop - # Passes both tests. +else case e in #( + e) # Passes both tests. ac_preproc_ok=: -break +break ;; +esac fi rm -f conftest.err conftest.i conftest.$ac_ext done -# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. +# Because of 'break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.i conftest.err conftest.$ac_ext if $ac_preproc_ok then : @@ -6696,7 +7065,8 @@ fi done ac_cv_prog_CPP=$CPP - + ;; +esac fi CPP=$ac_cv_prog_CPP else @@ -6719,9 +7089,10 @@ _ACEOF if ac_fn_c_try_cpp "$LINENO" then : -else $as_nop - # Broken: fails on valid input. -continue +else case e in #( + e) # Broken: fails on valid input. +continue ;; +esac fi rm -f conftest.err conftest.i conftest.$ac_ext @@ -6735,24 +7106,26 @@ if ac_fn_c_try_cpp "$LINENO" then : # Broken: success on invalid input. continue -else $as_nop - # Passes both tests. +else case e in #( + e) # Passes both tests. ac_preproc_ok=: -break +break ;; +esac fi rm -f conftest.err conftest.i conftest.$ac_ext done -# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. +# Because of 'break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.i conftest.err conftest.$ac_ext if $ac_preproc_ok then : -else $as_nop - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} +else case e in #( + e) { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 +printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error $? "C preprocessor \"$CPP\" fails sanity check -See \`config.log' for more details" "$LINENO" 5; } +See 'config.log' for more details" "$LINENO" 5; } ;; +esac fi ac_ext=c @@ -6762,14 +7135,14 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $ ac_compiler_gnu=$ac_cv_c_compiler_gnu -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5 -printf %s "checking for grep that handles long lines and -e... " >&6; } -if test ${ac_cv_path_GREP+y} +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for egrep -e" >&5 +printf %s "checking for egrep -e... " >&6; } +if test ${ac_cv_path_EGREP_TRADITIONAL+y} then : printf %s "(cached) " >&6 -else $as_nop - if test -z "$GREP"; then - ac_path_GREP_found=false +else case e in #( + e) if test -z "$EGREP_TRADITIONAL"; then + ac_path_EGREP_TRADITIONAL_found=false # Loop through the user's path and test for each of PROGNAME-LIST as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin @@ -6783,13 +7156,14 @@ do for ac_prog in grep ggrep do for ac_exec_ext in '' $ac_executable_extensions; do - ac_path_GREP="$as_dir$ac_prog$ac_exec_ext" - as_fn_executable_p "$ac_path_GREP" || continue -# Check for GNU ac_path_GREP and select it if it is found. - # Check for GNU $ac_path_GREP -case `"$ac_path_GREP" --version 2>&1` in + ac_path_EGREP_TRADITIONAL="$as_dir$ac_prog$ac_exec_ext" + as_fn_executable_p "$ac_path_EGREP_TRADITIONAL" || continue +# Check for GNU ac_path_EGREP_TRADITIONAL and select it if it is found. + # Check for GNU $ac_path_EGREP_TRADITIONAL +case `"$ac_path_EGREP_TRADITIONAL" --version 2>&1` in #( *GNU*) - ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;; + ac_cv_path_EGREP_TRADITIONAL="$ac_path_EGREP_TRADITIONAL" ac_path_EGREP_TRADITIONAL_found=:;; +#( *) ac_count=0 printf %s 0123456789 >"conftest.in" @@ -6798,14 +7172,14 @@ case `"$ac_path_GREP" --version 2>&1` in cat "conftest.in" "conftest.in" >"conftest.tmp" mv "conftest.tmp" "conftest.in" cp "conftest.in" "conftest.nl" - printf "%s\n" 'GREP' >> "conftest.nl" - "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break + printf "%s\n" 'EGREP_TRADITIONAL' >> "conftest.nl" + "$ac_path_EGREP_TRADITIONAL" -E 'EGR(EP|AC)_TRADITIONAL$' < "conftest.nl" >"conftest.out" 2>/dev/null || break diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break as_fn_arith $ac_count + 1 && ac_count=$as_val - if test $ac_count -gt ${ac_path_GREP_max-0}; then + if test $ac_count -gt ${ac_path_EGREP_TRADITIONAL_max-0}; then # Best one so far, save it but keep looking for a better one - ac_cv_path_GREP="$ac_path_GREP" - ac_path_GREP_max=$ac_count + ac_cv_path_EGREP_TRADITIONAL="$ac_path_EGREP_TRADITIONAL" + ac_path_EGREP_TRADITIONAL_max=$ac_count fi # 10*(2^10) chars as input seems more than enough test $ac_count -gt 10 && break @@ -6813,35 +7187,24 @@ case `"$ac_path_GREP" --version 2>&1` in rm -f conftest.in conftest.tmp conftest.nl conftest.out;; esac - $ac_path_GREP_found && break 3 + $ac_path_EGREP_TRADITIONAL_found && break 3 done done done IFS=$as_save_IFS - if test -z "$ac_cv_path_GREP"; then - as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 + if test -z "$ac_cv_path_EGREP_TRADITIONAL"; then + : fi else - ac_cv_path_GREP=$GREP -fi - + ac_cv_path_EGREP_TRADITIONAL=$EGREP_TRADITIONAL fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5 -printf "%s\n" "$ac_cv_path_GREP" >&6; } - GREP="$ac_cv_path_GREP" - -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5 -printf %s "checking for egrep... " >&6; } -if test ${ac_cv_path_EGREP+y} + if test "$ac_cv_path_EGREP_TRADITIONAL" then : - printf %s "(cached) " >&6 -else $as_nop - if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 - then ac_cv_path_EGREP="$GREP -E" - else - if test -z "$EGREP"; then - ac_path_EGREP_found=false + ac_cv_path_EGREP_TRADITIONAL="$ac_cv_path_EGREP_TRADITIONAL -E" +else case e in #( + e) if test -z "$EGREP_TRADITIONAL"; then + ac_path_EGREP_TRADITIONAL_found=false # Loop through the user's path and test for each of PROGNAME-LIST as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin @@ -6855,13 +7218,14 @@ do for ac_prog in egrep do for ac_exec_ext in '' $ac_executable_extensions; do - ac_path_EGREP="$as_dir$ac_prog$ac_exec_ext" - as_fn_executable_p "$ac_path_EGREP" || continue -# Check for GNU ac_path_EGREP and select it if it is found. - # Check for GNU $ac_path_EGREP -case `"$ac_path_EGREP" --version 2>&1` in + ac_path_EGREP_TRADITIONAL="$as_dir$ac_prog$ac_exec_ext" + as_fn_executable_p "$ac_path_EGREP_TRADITIONAL" || continue +# Check for GNU ac_path_EGREP_TRADITIONAL and select it if it is found. + # Check for GNU $ac_path_EGREP_TRADITIONAL +case `"$ac_path_EGREP_TRADITIONAL" --version 2>&1` in #( *GNU*) - ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;; + ac_cv_path_EGREP_TRADITIONAL="$ac_path_EGREP_TRADITIONAL" ac_path_EGREP_TRADITIONAL_found=:;; +#( *) ac_count=0 printf %s 0123456789 >"conftest.in" @@ -6870,14 +7234,14 @@ case `"$ac_path_EGREP" --version 2>&1` in cat "conftest.in" "conftest.in" >"conftest.tmp" mv "conftest.tmp" "conftest.in" cp "conftest.in" "conftest.nl" - printf "%s\n" 'EGREP' >> "conftest.nl" - "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break + printf "%s\n" 'EGREP_TRADITIONAL' >> "conftest.nl" + "$ac_path_EGREP_TRADITIONAL" 'EGR(EP|AC)_TRADITIONAL$' < "conftest.nl" >"conftest.out" 2>/dev/null || break diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break as_fn_arith $ac_count + 1 && ac_count=$as_val - if test $ac_count -gt ${ac_path_EGREP_max-0}; then + if test $ac_count -gt ${ac_path_EGREP_TRADITIONAL_max-0}; then # Best one so far, save it but keep looking for a better one - ac_cv_path_EGREP="$ac_path_EGREP" - ac_path_EGREP_max=$ac_count + ac_cv_path_EGREP_TRADITIONAL="$ac_path_EGREP_TRADITIONAL" + ac_path_EGREP_TRADITIONAL_max=$ac_count fi # 10*(2^10) chars as input seems more than enough test $ac_count -gt 10 && break @@ -6885,24 +7249,25 @@ case `"$ac_path_EGREP" --version 2>&1` in rm -f conftest.in conftest.tmp conftest.nl conftest.out;; esac - $ac_path_EGREP_found && break 3 + $ac_path_EGREP_TRADITIONAL_found && break 3 done done done IFS=$as_save_IFS - if test -z "$ac_cv_path_EGREP"; then + if test -z "$ac_cv_path_EGREP_TRADITIONAL"; then as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 fi else - ac_cv_path_EGREP=$EGREP + ac_cv_path_EGREP_TRADITIONAL=$EGREP_TRADITIONAL fi - - fi + ;; +esac +fi ;; +esac fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5 -printf "%s\n" "$ac_cv_path_EGREP" >&6; } - EGREP="$ac_cv_path_EGREP" - +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP_TRADITIONAL" >&5 +printf "%s\n" "$ac_cv_path_EGREP_TRADITIONAL" >&6; } + EGREP_TRADITIONAL=$ac_cv_path_EGREP_TRADITIONAL @@ -6912,8 +7277,8 @@ printf %s "checking for Minix Amsterdam compiler... " >&6; } if test ${gl_cv_c_amsterdam_compiler+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -6923,15 +7288,17 @@ Amsterdam _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "Amsterdam" >/dev/null 2>&1 + $EGREP_TRADITIONAL "Amsterdam" >/dev/null 2>&1 then : gl_cv_c_amsterdam_compiler=yes -else $as_nop - gl_cv_c_amsterdam_compiler=no +else case e in #( + e) gl_cv_c_amsterdam_compiler=no ;; +esac fi rm -rf conftest* - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_c_amsterdam_compiler" >&5 printf "%s\n" "$gl_cv_c_amsterdam_compiler" >&6; } @@ -6955,8 +7322,8 @@ printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_AR+y} then : printf %s "(cached) " >&6 -else $as_nop - if test -n "$AR"; then +else case e in #( + e) if test -n "$AR"; then ac_cv_prog_AR="$AR" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR @@ -6978,7 +7345,8 @@ done done IFS=$as_save_IFS -fi +fi ;; +esac fi AR=$ac_cv_prog_AR if test -n "$AR"; then @@ -7000,8 +7368,8 @@ printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_ac_ct_AR+y} then : printf %s "(cached) " >&6 -else $as_nop - if test -n "$ac_ct_AR"; then +else case e in #( + e) if test -n "$ac_ct_AR"; then ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR @@ -7023,7 +7391,8 @@ done done IFS=$as_save_IFS -fi +fi ;; +esac fi ac_ct_AR=$ac_cv_prog_ac_ct_AR if test -n "$ac_ct_AR"; then @@ -7067,8 +7436,8 @@ printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_RANLIB+y} then : printf %s "(cached) " >&6 -else $as_nop - if test -n "$RANLIB"; then +else case e in #( + e) if test -n "$RANLIB"; then ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR @@ -7090,7 +7459,8 @@ done done IFS=$as_save_IFS -fi +fi ;; +esac fi RANLIB=$ac_cv_prog_RANLIB if test -n "$RANLIB"; then @@ -7112,8 +7482,8 @@ printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_prog_ac_ct_RANLIB+y} then : printf %s "(cached) " >&6 -else $as_nop - if test -n "$ac_ct_RANLIB"; then +else case e in #( + e) if test -n "$ac_ct_RANLIB"; then ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR @@ -7135,7 +7505,8 @@ done done IFS=$as_save_IFS -fi +fi ;; +esac fi ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB if test -n "$ac_ct_RANLIB"; then @@ -7199,98 +7570,23 @@ if test ${enable_largefile+y} then : enableval=$enable_largefile; fi - -if test "$enable_largefile" != no +if test "$enable_largefile,$enable_year2038" != no,no then : - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for special C compiler options needed for large files" >&5 -printf %s "checking for special C compiler options needed for large files... " >&6; } -if test ${ac_cv_sys_largefile_CC+y} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC option to enable large file support" >&5 +printf %s "checking for $CC option to enable large file support... " >&6; } +if test ${ac_cv_sys_largefile_opts+y} then : printf %s "(cached) " >&6 -else $as_nop - ac_cv_sys_largefile_CC=no - if test "$GCC" != yes; then - ac_save_CC=$CC - while :; do - # IRIX 6.2 and later do not support large files by default, - # so use the C compiler's -n32 option if that helps. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - /* Check that off_t can represent 2**63 - 1 correctly. - We can't simply define LARGE_OFF_T to be 9223372036854775807, - since some C++ compilers masquerading as C compilers - incorrectly reject 9223372036854775807. */ -#define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31)) - int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 - && LARGE_OFF_T % 2147483647 == 1) - ? 1 : -1]; -int -main (void) -{ - - ; - return 0; -} -_ACEOF - if ac_fn_c_try_compile "$LINENO" +else case e in #( + e) ac_save_CC="$CC" + ac_opt_found=no + for ac_opt in "none needed" "-D_FILE_OFFSET_BITS=64" "-D_LARGE_FILES=1" "-n32"; do + if test x"$ac_opt" != x"none needed" then : - break + CC="$ac_save_CC $ac_opt" fi -rm -f core conftest.err conftest.$ac_objext conftest.beam - CC="$CC -n32" - if ac_fn_c_try_compile "$LINENO" -then : - ac_cv_sys_largefile_CC=' -n32'; break -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam - break - done - CC=$ac_save_CC - rm -f conftest.$ac_ext - fi -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_largefile_CC" >&5 -printf "%s\n" "$ac_cv_sys_largefile_CC" >&6; } - if test "$ac_cv_sys_largefile_CC" != no; then - CC=$CC$ac_cv_sys_largefile_CC - fi - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for _FILE_OFFSET_BITS value needed for large files" >&5 -printf %s "checking for _FILE_OFFSET_BITS value needed for large files... " >&6; } -if test ${ac_cv_sys_file_offset_bits+y} -then : - printf %s "(cached) " >&6 -else $as_nop - while :; do - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - /* Check that off_t can represent 2**63 - 1 correctly. - We can't simply define LARGE_OFF_T to be 9223372036854775807, - since some C++ compilers masquerading as C compilers - incorrectly reject 9223372036854775807. */ -#define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31)) - int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 - && LARGE_OFF_T % 2147483647 == 1) - ? 1 : -1]; -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - ac_cv_sys_file_offset_bits=no; break -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#undef _FILE_OFFSET_BITS -#define _FILE_OFFSET_BITS 64 #include /* Check that off_t can represent 2**63 - 1 correctly. We can't simply define LARGE_OFF_T to be 9223372036854775807, @@ -7310,228 +7606,131 @@ main (void) _ACEOF if ac_fn_c_try_compile "$LINENO" then : - ac_cv_sys_file_offset_bits=64; break + ac_cv_sys_largefile_opts="$ac_opt" + ac_opt_found=yes fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - ac_cv_sys_file_offset_bits=unknown - break -done -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_file_offset_bits" >&5 -printf "%s\n" "$ac_cv_sys_file_offset_bits" >&6; } -case $ac_cv_sys_file_offset_bits in #( - no | unknown) ;; - *) -printf "%s\n" "#define _FILE_OFFSET_BITS $ac_cv_sys_file_offset_bits" >>confdefs.h -;; -esac -rm -rf conftest* - case $ac_cv_sys_file_offset_bits in #( - unknown) : - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for _LARGE_FILES value needed for large files" >&5 -printf %s "checking for _LARGE_FILES value needed for large files... " >&6; } -if test ${ac_cv_sys_large_files+y} -then : - printf %s "(cached) " >&6 -else $as_nop - while :; do - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - /* Check that off_t can represent 2**63 - 1 correctly. - We can't simply define LARGE_OFF_T to be 9223372036854775807, - since some C++ compilers masquerading as C compilers - incorrectly reject 9223372036854775807. */ -#define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31)) - int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 - && LARGE_OFF_T % 2147483647 == 1) - ? 1 : -1]; -int -main (void) -{ + test $ac_opt_found = no || break + done + CC="$ac_save_CC" - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - ac_cv_sys_large_files=no; break -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#undef _LARGE_FILES -#define _LARGE_FILES 1 -#include - /* Check that off_t can represent 2**63 - 1 correctly. - We can't simply define LARGE_OFF_T to be 9223372036854775807, - since some C++ compilers masquerading as C compilers - incorrectly reject 9223372036854775807. */ -#define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31)) - int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 - && LARGE_OFF_T % 2147483647 == 1) - ? 1 : -1]; -int -main (void) -{ - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - ac_cv_sys_large_files=1; break -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - ac_cv_sys_large_files=unknown - break -done -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_large_files" >&5 -printf "%s\n" "$ac_cv_sys_large_files" >&6; } -case $ac_cv_sys_large_files in #( - no | unknown) ;; - *) -printf "%s\n" "#define _LARGE_FILES $ac_cv_sys_large_files" >>confdefs.h -;; + if test $ac_opt_found != yes; then + case $host_os in #( + mingw*) : + ac_cv_sys_largefile_opts="supported through gnulib" + ac_opt_found=yes + ;; #( + *) : + ;; esac -rm -rf conftest* ;; #( - 64) : + fi - # Check whether --enable-year2038 was given. -if test ${enable_year2038+y} -then : - enableval=$enable_year2038; + test $ac_opt_found = yes || ac_cv_sys_largefile_opts="support not detected" ;; +esac fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_largefile_opts" >&5 +printf "%s\n" "$ac_cv_sys_largefile_opts" >&6; } - if test "$enable_year2038" != no -then : +ac_have_largefile=yes +case $ac_cv_sys_largefile_opts in #( + "none needed") : + ;; #( + "supported through gnulib") : + ;; #( + "support not detected") : + ac_have_largefile=no ;; #( + "-D_FILE_OFFSET_BITS=64") : - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for 64-bit time_t" >&5 -printf %s "checking for 64-bit time_t... " >&6; } -if test ${gl_cv_type_time_t_64+y} -then : - printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ +printf "%s\n" "#define _FILE_OFFSET_BITS 64" >>confdefs.h + ;; #( + "-D_LARGE_FILES=1") : - #include - /* Check that time_t can represent 2**63 - 1 correctly. - We can't simply define LARGE_TIME_T to be 9223372036854775807, - since some C++ compilers masquerading as C compilers - incorrectly reject 9223372036854775807. */ - #define LARGE_TIME_T (((time_t) 1 << 31 << 31) - 1 + ((time_t) 1 << 31 << 31)) - int verify_time_t_range[(LARGE_TIME_T % 2147483629 == 721 - && LARGE_TIME_T % 2147483647 == 1) - ? 1 : -1]; +printf "%s\n" "#define _LARGE_FILES 1" >>confdefs.h + ;; #( + "-n32") : + CC="$CC -n32" ;; #( + *) : + as_fn_error $? "internal error: bad value for \$ac_cv_sys_largefile_opts" "$LINENO" 5 ;; +esac -_ACEOF -if ac_fn_c_try_compile "$LINENO" +if test "$enable_year2038" != no then : - gl_cv_type_time_t_64=yes -else $as_nop - gl_cv_type_time_t_64=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_type_time_t_64" >&5 -printf "%s\n" "$gl_cv_type_time_t_64" >&6; } - if test "$gl_cv_type_time_t_64" = no; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for 64-bit time_t with _TIME_BITS=64" >&5 -printf %s "checking for 64-bit time_t with _TIME_BITS=64... " >&6; } -if test ${gl_cv_type_time_t_bits_macro+y} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC option for timestamps after 2038" >&5 +printf %s "checking for $CC option for timestamps after 2038... " >&6; } +if test ${ac_cv_sys_year2038_opts+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) ac_save_CPPFLAGS="$CPPFLAGS" + ac_opt_found=no + for ac_opt in "none needed" "-D_TIME_BITS=64" "-D__MINGW_USE_VC2005_COMPAT" "-U_USE_32_BIT_TIME_T -D__MINGW_USE_VC2005_COMPAT"; do + if test x"$ac_opt" != x"none needed" +then : + CPPFLAGS="$ac_save_CPPFLAGS $ac_opt" +fi + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#define _TIME_BITS 64 - #define _FILE_OFFSET_BITS 64 #include - /* Check that time_t can represent 2**63 - 1 correctly. - We can't simply define LARGE_TIME_T to be 9223372036854775807, - since some C++ compilers masquerading as C compilers - incorrectly reject 9223372036854775807. */ - #define LARGE_TIME_T (((time_t) 1 << 31 << 31) - 1 + ((time_t) 1 << 31 << 31)) - int verify_time_t_range[(LARGE_TIME_T % 2147483629 == 721 - && LARGE_TIME_T % 2147483647 == 1) + /* Check that time_t can represent 2**32 - 1 correctly. */ + #define LARGE_TIME_T \\ + ((time_t) (((time_t) 1 << 30) - 1 + 3 * ((time_t) 1 << 30))) + int verify_time_t_range[(LARGE_TIME_T / 65537 == 65535 + && LARGE_TIME_T % 65537 == 0) ? 1 : -1]; -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - gl_cv_type_time_t_bits_macro=yes -else $as_nop - gl_cv_type_time_t_bits_macro=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_type_time_t_bits_macro" >&5 -printf "%s\n" "$gl_cv_type_time_t_bits_macro" >&6; } - if test "$gl_cv_type_time_t_bits_macro" = yes; then - -printf "%s\n" "#define _TIME_BITS 64" >>confdefs.h - - -printf "%s\n" "#define _FILE_OFFSET_BITS 64" >>confdefs.h - - gl_cv_type_time_t_64=yes - fi - fi - if test $gl_cv_type_time_t_64 = no; then - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#ifdef _USE_32BIT_TIME_T - int ok; - #else - error fail - #endif +int +main (void) +{ + ; + return 0; +} _ACEOF if ac_fn_c_try_compile "$LINENO" then : - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "This package requires a 64-bit 'time_t' type. Remove _USE_32BIT_TIME_T from the compiler flags. -See \`config.log' for more details" "$LINENO" 5; } -else $as_nop - # If not cross-compiling and says we should check, - # and 'touch' works with a large timestamp, then evidently 64-bit time_t - # is desired and supported, so fail and ask the builder to fix the - # problem. Otherwise, just warn the builder. - - if test "$gl_warned_about_64_bit_time_t" != yes; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: This package requires a 64-bit 'time_t' type if there is any way to access timestamps outside the year range 1901-2038 on your platform. Perhaps you should configure with 'CPPFLAGS=\"-m64\" LDFLAGS=\"-m64\"'?" >&5 -printf "%s\n" "$as_me: WARNING: This package requires a 64-bit 'time_t' type if there is any way to access timestamps outside the year range 1901-2038 on your platform. Perhaps you should configure with 'CPPFLAGS=\"-m64\" LDFLAGS=\"-m64\"'?" >&2;} - gl_warned_about_64_bit_time_t=yes - fi - + ac_cv_sys_year2038_opts="$ac_opt" + ac_opt_found=yes fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - fi -fi - ;; #( - *) : - ;; + test $ac_opt_found = no || break + done + CPPFLAGS="$ac_save_CPPFLAGS" + test $ac_opt_found = yes || ac_cv_sys_year2038_opts="support not detected" ;; esac fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_year2038_opts" >&5 +printf "%s\n" "$ac_cv_sys_year2038_opts" >&6; } +ac_have_year2038=yes +case $ac_cv_sys_year2038_opts in #( + "none needed") : + ;; #( + "support not detected") : + ac_have_year2038=no ;; #( + "-D_TIME_BITS=64") : - - case "$host_os" in - mingw*) +printf "%s\n" "#define _TIME_BITS 64" >>confdefs.h + ;; #( + "-D__MINGW_USE_VC2005_COMPAT") : printf "%s\n" "#define __MINGW_USE_VC2005_COMPAT 1" >>confdefs.h + ;; #( + "-U_USE_32_BIT_TIME_T"*) : + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 +printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} +as_fn_error $? "the 'time_t' type is currently forced to be 32-bit. It +will stop working after mid-January 2038. Remove +_USE_32BIT_TIME_T from the compiler flags. +See 'config.log' for more details" "$LINENO" 5; } ;; #( + *) : + as_fn_error $? "internal error: bad value for \$ac_cv_sys_year2038_opts" "$LINENO" 5 ;; +esac - ;; - esac +fi +fi @@ -7542,8 +7741,8 @@ printf "%s\n" "#define __MINGW_USE_VC2005_COMPAT 1" >>confdefs.h if test ${enable_threads+y} then : enableval=$enable_threads; gl_use_threads=$enableval -else $as_nop - if test -n "$gl_use_threads_default"; then +else case e in #( + e) if test -n "$gl_use_threads_default"; then gl_use_threads="$gl_use_threads_default" else case "$host_os" in @@ -7564,7 +7763,8 @@ else $as_nop *) gl_use_threads=yes ;; esac fi - + ;; +esac fi if test "$gl_use_threads" = yes \ @@ -7598,16 +7798,44 @@ fi fi +if test "$enable_year2038,$ac_have_year2038,$cross_compiling" = yes,no,no +then : + # If we're not cross compiling and 'touch' works with a large + # timestamp, then we can presume the system supports wider time_t + # *somehow* and we just weren't able to detect it. One common + # case that we deliberately *don't* probe for is a system that + # supports both 32- and 64-bit ABIs but only the 64-bit ABI offers + # wide time_t. (It would be inappropriate for us to override an + # intentional use of -m32.) Error out, demanding use of + # --disable-year2038 if this is intentional. + if TZ=UTC0 touch -t 210602070628.15 conftest.time 2>/dev/null +then : + case `TZ=UTC0 LC_ALL=C ls -l conftest.time 2>/dev/null` in #( + *'Feb 7 2106'* | *'Feb 7 17:10'*) : + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 +printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} +as_fn_error $? "this system appears to support timestamps after +mid-January 2038, but no mechanism for enabling wide +'time_t' was detected. Did you mean to build a 64-bit +binary? (E.g., 'CC=\"${CC} -m64\"'.) To proceed with +32-bit time_t, configure with '--disable-year2038'. +See 'config.log' for more details" "$LINENO" 5; } ;; #( + *) : + ;; +esac +fi +fi # Pre-early section. - # Code from module absolute-header: # Code from module accept: # Code from module accept-tests: + # Code from module alignasof: + # Code from module alignasof-tests: # Code from module alloca: # Code from module alloca-opt: # Code from module alloca-opt-tests: @@ -7619,6 +7847,8 @@ fi # Code from module argmatch-tests: # Code from module arpa_inet: # Code from module arpa_inet-tests: + # Code from module assert-h: + # Code from module assert-h-tests: # Code from module assure: # Code from module atoll: # Code from module attribute: @@ -7639,6 +7869,8 @@ fi # Code from module c-strcase: # Code from module c-strcase-tests: # Code from module c-strcaseeq: + # Code from module c-strcasestr: + # Code from module c-strcasestr-tests: # Code from module c99: # Code from module calloc-gnu: # Code from module calloc-gnu-tests: @@ -7663,13 +7895,13 @@ fi # Code from module dtotimespec: # Code from module dup2: # Code from module dup2-tests: - # Code from module dynarray: - # Code from module dynarray-tests: # Code from module environ: # Code from module environ-tests: # Code from module errno: # Code from module errno-tests: # Code from module error: + # Code from module error-h: + # Code from module error-tests: # Code from module exclude: # Code from module exclude-tests: # Code from module exitfail: @@ -7680,7 +7912,6 @@ fi # Code from module fcntl-h-tests: # Code from module fcntl-tests: # Code from module fd-hook: - # Code from module fdl: # Code from module fdopen: # Code from module fdopen-tests: # Code from module fgetc-tests: @@ -7715,6 +7946,7 @@ fi # Code from module ftruncate: # Code from module ftruncate-tests: # Code from module fwrite-tests: + # Code from module gen-header: # Code from module gendocs: # Code from module getcwd-lgpl: # Code from module getcwd-lgpl-tests: @@ -7735,6 +7967,8 @@ fi # Code from module gettimeofday-tests: # Code from module git-version-gen: # Code from module gitlog-to-changelog: + # Code from module glibc-internal/dynarray: + # Code from module glibc-internal/dynarray-tests: # Code from module gnu-make: # Code from module gnu-web-doc-update: # Code from module gnumakefile: @@ -7781,7 +8015,7 @@ fi # Code from module langinfo-tests: # Code from module largefile: - + # Code from module largefile-tests: # Code from module libc-config: # Code from module limits-h: # Code from module limits-h-tests: @@ -7839,16 +8073,21 @@ fi # Code from module nocrash: # Code from module nstrftime: # Code from module nstrftime-tests: + # Code from module nullptr: + # Code from module nullptr-tests: # Code from module open: # Code from module open-tests: # Code from module pathmax: # Code from module pathmax-tests: + # Code from module perl: # Code from module perror: # Code from module perror-tests: # Code from module pipe-posix: # Code from module pipe-posix-tests: # Code from module progname: # Code from module propername: + # Code from module pselect: + # Code from module pselect-tests: # Code from module pthread-h: @@ -7911,8 +8150,6 @@ fi # Code from module setsockopt-tests: # Code from module sh-quote: # Code from module sh-quote-tests: - # Code from module sigaction: - # Code from module sigaction-tests: # Code from module signal: # Code from module signal-h: # Code from module signal-h-tests: @@ -7941,8 +8178,6 @@ fi # Code from module stat-time: # Code from module stat-time-tests: # Code from module std-gnu11: - # Code from module stdalign: - # Code from module stdalign-tests: # Code from module stdarg: @@ -7950,15 +8185,23 @@ fi # Code from module stdarg-tests: # Code from module stdbool: # Code from module stdbool-tests: + # Code from module stdckdint: + # Code from module stdckdint-tests: # Code from module stddef: # Code from module stddef-tests: # Code from module stdint: # Code from module stdint-tests: # Code from module stdio: + + + printf "%s\n" "#define __USE_MINGW_ANSI_STDIO 1" >>confdefs.h + + # Code from module stdio-tests: # Code from module stdlib: # Code from module stdlib-tests: # Code from module stdopen: + # Code from module stpcpy: # Code from module strcase: # Code from module streq: # Code from module strerror: @@ -8011,6 +8254,8 @@ fi # Code from module time: + # Code from module time-h: + # Code from module time-h-tests: # Code from module time-tests: # Code from module time_r: # Code from module time_rz: @@ -8020,6 +8265,7 @@ fi # Code from module timespec-sub: # Code from module timespec-tests: # Code from module trim: + # Code from module trim-tests: # Code from module tzset: # Code from module unistd: # Code from module unistd-tests: @@ -8039,10 +8285,9 @@ fi # Code from module update-copyright: # Code from module update-copyright-tests: # Code from module useless-if-before-free: + # Code from module vararrays: # Code from module vasnprintf: # Code from module vasnprintf-tests: - # Code from module vasprintf: - # Code from module vasprintf-tests: # Code from module vc-list-files: # Code from module vc-list-files-tests: # Code from module verify: @@ -8085,8 +8330,12 @@ fi # Code from module xstrtol: # Code from module xstrtol-error: # Code from module xstrtol-tests: - # Code from module xvasprintf: - # Code from module xvasprintf-tests: + # Code from module year2038: + + # Code from module year2038-tests: + + + @@ -8106,8 +8355,9 @@ printf "%s\n" "$as_me: WARNING: invalid argument supplied to --enable-cross-gues enableval=conservative fi gl_cross_guesses="$enableval" -else $as_nop - gl_cross_guesses=conservative +else case e in #( + e) gl_cross_guesses=conservative ;; +esac fi if test $gl_cross_guesses = risky; then @@ -8125,10 +8375,11 @@ ac_fn_c_check_type "$LINENO" "size_t" "ac_cv_type_size_t" "$ac_includes_default" if test "x$ac_cv_type_size_t" = xyes then : -else $as_nop - +else case e in #( + e) printf "%s\n" "#define size_t unsigned int" >>confdefs.h - + ;; +esac fi # The Ultrix 4.2 mips builtin alloca declared by alloca.h only works @@ -8138,8 +8389,8 @@ printf %s "checking for working alloca.h... " >&6; } if test ${ac_cv_working_alloca_h+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int @@ -8154,11 +8405,13 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : ac_cv_working_alloca_h=yes -else $as_nop - ac_cv_working_alloca_h=no +else case e in #( + e) ac_cv_working_alloca_h=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ - conftest$ac_exeext conftest.$ac_ext + conftest$ac_exeext conftest.$ac_ext ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_working_alloca_h" >&5 printf "%s\n" "$ac_cv_working_alloca_h" >&6; } @@ -8173,10 +8426,10 @@ printf %s "checking for alloca... " >&6; } if test ${ac_cv_func_alloca_works+y} then : printf %s "(cached) " >&6 -else $as_nop - if test $ac_cv_working_alloca_h = yes; then - ac_cv_func_alloca_works=yes -else +else case e in #( + e) ac_cv_func_alloca_works=$ac_cv_working_alloca_h +if test "$ac_cv_func_alloca_works" != yes +then : cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -8207,15 +8460,14 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : ac_cv_func_alloca_works=yes -else $as_nop - ac_cv_func_alloca_works=no fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext +fi ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_alloca_works" >&5 printf "%s\n" "$ac_cv_func_alloca_works" >&6; } -fi if test $ac_cv_func_alloca_works = yes; then @@ -8241,12 +8493,12 @@ printf %s "checking stack direction for C alloca... " >&6; } if test ${ac_cv_c_stack_direction+y} then : printf %s "(cached) " >&6 -else $as_nop - if test "$cross_compiling" = yes +else case e in #( + e) if test "$cross_compiling" = yes then : ac_cv_c_stack_direction=0 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $ac_includes_default int @@ -8269,13 +8521,16 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : ac_cv_c_stack_direction=1 -else $as_nop - ac_cv_c_stack_direction=-1 +else case e in #( + e) ac_cv_c_stack_direction=-1 ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_stack_direction" >&5 printf "%s\n" "$ac_cv_c_stack_direction" >&6; } @@ -8285,6 +8540,131 @@ printf "%s\n" "#define STACK_DIRECTION $ac_cv_c_stack_direction" >>confdefs.h fi + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the preprocessor supports include_next" >&5 +printf %s "checking whether the preprocessor supports include_next... " >&6; } +if test ${gl_cv_have_include_next+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) rm -rf conftestd1a conftestd1b conftestd2 + mkdir conftestd1a conftestd1b conftestd2 + cat < conftestd1a/conftest.h +#define DEFINED_IN_CONFTESTD1 +#include_next +#ifdef DEFINED_IN_CONFTESTD2 +int foo; +#else +#error "include_next doesn't work" +#endif +EOF + cat < conftestd1b/conftest.h +#define DEFINED_IN_CONFTESTD1 +#include +#include_next +#ifdef DEFINED_IN_CONFTESTD2 +int foo; +#else +#error "include_next doesn't work" +#endif +EOF + cat < conftestd2/conftest.h +#ifndef DEFINED_IN_CONFTESTD1 +#error "include_next test doesn't work" +#endif +#define DEFINED_IN_CONFTESTD2 +EOF + gl_save_CPPFLAGS="$CPPFLAGS" + CPPFLAGS="$gl_save_CPPFLAGS -Iconftestd1b -Iconftestd2" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +_ACEOF +if ac_fn_c_try_compile "$LINENO" +then : + gl_cv_have_include_next=yes +else case e in #( + e) CPPFLAGS="$gl_save_CPPFLAGS -Iconftestd1a -Iconftestd2" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +_ACEOF +if ac_fn_c_try_compile "$LINENO" +then : + gl_cv_have_include_next=buggy +else case e in #( + e) gl_cv_have_include_next=no ;; +esac +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext + ;; +esac +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext + CPPFLAGS="$gl_save_CPPFLAGS" + rm -rf conftestd1a conftestd1b conftestd2 + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_have_include_next" >&5 +printf "%s\n" "$gl_cv_have_include_next" >&6; } + PRAGMA_SYSTEM_HEADER= + if test $gl_cv_have_include_next = yes; then + INCLUDE_NEXT=include_next + INCLUDE_NEXT_AS_FIRST_DIRECTIVE=include_next + if test -n "$GCC"; then + PRAGMA_SYSTEM_HEADER='#pragma GCC system_header' + fi + else + if test $gl_cv_have_include_next = buggy; then + INCLUDE_NEXT=include + INCLUDE_NEXT_AS_FIRST_DIRECTIVE=include_next + else + INCLUDE_NEXT=include + INCLUDE_NEXT_AS_FIRST_DIRECTIVE=include + fi + fi + + + + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether source code line length is unlimited" >&5 +printf %s "checking whether source code line length is unlimited... " >&6; } +if test ${gl_cv_source_line_length_unlimited+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#ifdef __TANDEM +choke me +#endif + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP_TRADITIONAL "choke me" >/dev/null 2>&1 +then : + gl_cv_source_line_length_unlimited=no +else case e in #( + e) gl_cv_source_line_length_unlimited=yes ;; +esac +fi +rm -rf conftest* + + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_source_line_length_unlimited" >&5 +printf "%s\n" "$gl_cv_source_line_length_unlimited" >&6; } + if test $gl_cv_source_line_length_unlimited = no; then + PRAGMA_COLUMNS="#pragma COLUMNS 10000" + else + PRAGMA_COLUMNS= + fi + + + HAVE_BTOWC=1; HAVE_MBSINIT=1; HAVE_MBRTOWC=1; @@ -8341,7 +8721,12 @@ fi REPLACE_WCWIDTH=0; REPLACE_WCSWIDTH=0; REPLACE_WCSFTIME=0; + REPLACE_WCSCMP=0; + REPLACE_WCSNCMP=0; + REPLACE_WCSSTR=0; REPLACE_WCSTOK=0; + REPLACE_WMEMCMP=0; + REPLACE_WMEMPCPY=0; @@ -8350,8 +8735,8 @@ printf %s "checking whether uses 'inline' correctly... " >&6; } if test ${gl_cv_header_wchar_h_correct_inline+y} then : printf %s "(cached) " >&6 -else $as_nop - gl_cv_header_wchar_h_correct_inline=yes +else case e in #( + e) gl_cv_header_wchar_h_correct_inline=yes case "$host_os" in *-gnu* | gnu*) cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -8399,7 +8784,8 @@ _ACEOF rm -f conftest12.c conftest12.$ac_objext conftest$ac_exeext ;; esac - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_wchar_h_correct_inline" >&5 printf "%s\n" "$gl_cv_header_wchar_h_correct_inline" >&6; } @@ -8434,8 +8820,8 @@ printf %s "checking for nl_langinfo and CODESET... " >&6; } if test ${am_cv_langinfo_codeset+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int @@ -8449,12 +8835,14 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : am_cv_langinfo_codeset=yes -else $as_nop - am_cv_langinfo_codeset=no +else case e in #( + e) am_cv_langinfo_codeset=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_langinfo_codeset" >&5 printf "%s\n" "$am_cv_langinfo_codeset" >&6; } @@ -8472,8 +8860,8 @@ printf %s "checking for a traditional french locale... " >&6; } if test ${gt_cv_locale_fr+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -8600,7 +8988,8 @@ _ACEOF esac fi rm -fr conftest* - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_fr" >&5 printf "%s\n" "$gt_cv_locale_fr" >&6; } @@ -8609,6 +8998,7 @@ printf "%s\n" "$gt_cv_locale_fr" >&6; } + GL_GNULIB_BTOWC=0 @@ -8778,215 +9168,60 @@ printf "%s\n" "$gt_cv_locale_fr" >&6; } - HAVE__EXIT=1; - HAVE_ALIGNED_ALLOC=1; - HAVE_ATOLL=1; - HAVE_CANONICALIZE_FILE_NAME=1; - HAVE_DECL_ECVT=1; - HAVE_DECL_FCVT=1; - HAVE_DECL_GCVT=1; - HAVE_DECL_GETLOADAVG=1; - HAVE_GETSUBOPT=1; - HAVE_GRANTPT=1; - HAVE_INITSTATE=1; - HAVE_DECL_INITSTATE=1; - HAVE_MBTOWC=1; - HAVE_MKDTEMP=1; - HAVE_MKOSTEMP=1; - HAVE_MKOSTEMPS=1; - HAVE_MKSTEMP=1; - HAVE_MKSTEMPS=1; - HAVE_POSIX_MEMALIGN=1; - HAVE_POSIX_OPENPT=1; - HAVE_PTSNAME=1; - HAVE_PTSNAME_R=1; - HAVE_QSORT_R=1; - HAVE_RANDOM=1; - HAVE_RANDOM_H=1; - HAVE_RANDOM_R=1; - HAVE_REALLOCARRAY=1; - HAVE_REALPATH=1; - HAVE_RPMATCH=1; - HAVE_SECURE_GETENV=1; - HAVE_SETENV=1; - HAVE_DECL_SETENV=1; - HAVE_SETSTATE=1; - HAVE_DECL_SETSTATE=1; - HAVE_STRTOD=1; - HAVE_STRTOL=1; - HAVE_STRTOLD=1; - HAVE_STRTOLL=1; - HAVE_STRTOUL=1; - HAVE_STRTOULL=1; - HAVE_STRUCT_RANDOM_DATA=1; - HAVE_SYS_LOADAVG_H=0; - HAVE_UNLOCKPT=1; - HAVE_DECL_UNSETENV=1; - REPLACE_ALIGNED_ALLOC=0; - REPLACE_CALLOC=0; - REPLACE_CANONICALIZE_FILE_NAME=0; - REPLACE_FREE=0; - REPLACE_INITSTATE=0; - REPLACE_MALLOC=0; - REPLACE_MBTOWC=0; - REPLACE_MKSTEMP=0; - REPLACE_POSIX_MEMALIGN=0; - REPLACE_PTSNAME=0; - REPLACE_PTSNAME_R=0; - REPLACE_PUTENV=0; - REPLACE_QSORT_R=0; - REPLACE_RANDOM=0; - REPLACE_RANDOM_R=0; - REPLACE_REALLOC=0; - REPLACE_REALLOCARRAY=0; - REPLACE_REALPATH=0; - REPLACE_SETENV=0; - REPLACE_SETSTATE=0; - REPLACE_STRTOD=0; - REPLACE_STRTOL=0; - REPLACE_STRTOLD=0; - REPLACE_STRTOLL=0; - REPLACE_STRTOUL=0; - REPLACE_STRTOULL=0; - REPLACE_UNSETENV=0; - REPLACE_WCTOMB=0; - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether malloc is ptrdiff_t safe" >&5 -printf %s "checking whether malloc is ptrdiff_t safe... " >&6; } -if test ${gl_cv_malloc_ptrdiff+y} -then : - printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - -int -main (void) -{ -/* 64-bit ptrdiff_t is so wide that no practical platform - can exceed it. */ - #define WIDE_PTRDIFF (PTRDIFF_MAX >> 31 >> 31 != 0) - - /* On rare machines where size_t fits in ptrdiff_t there - is no problem. */ - #define NARROW_SIZE (SIZE_MAX <= PTRDIFF_MAX) - - /* glibc 2.30 and later malloc refuses to exceed ptrdiff_t - bounds even on 32-bit platforms. We don't know which - non-glibc systems are safe. */ - #define KNOWN_SAFE (2 < __GLIBC__ + (30 <= __GLIBC_MINOR__)) - - #if WIDE_PTRDIFF || NARROW_SIZE || KNOWN_SAFE - return 0; - #else - #error "malloc might not be ptrdiff_t safe" - syntax error - #endif - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - gl_cv_malloc_ptrdiff=yes -else $as_nop - gl_cv_malloc_ptrdiff=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_malloc_ptrdiff" >&5 -printf "%s\n" "$gl_cv_malloc_ptrdiff" >&6; } - - - - - test "$gl_cv_malloc_ptrdiff" = yes || REPLACE_MALLOC=1 - - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether malloc, realloc, calloc set errno on failure" >&5 -printf %s "checking whether malloc, realloc, calloc set errno on failure... " >&6; } -if test ${gl_cv_func_malloc_posix+y} -then : - printf %s "(cached) " >&6 -else $as_nop - - case "$host_os" in - mingw*) - gl_cv_func_malloc_posix=no ;; - irix* | solaris*) - - gl_cv_func_malloc_posix=no ;; - *) - gl_cv_func_malloc_posix=yes ;; - esac - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_malloc_posix" >&5 -printf "%s\n" "$gl_cv_func_malloc_posix" >&6; } - + GL_GNULIB__EXIT=0 - if test "$gl_cv_func_malloc_posix" = yes; then + GL_GNULIB_ALIGNED_ALLOC=0 -printf "%s\n" "#define HAVE_MALLOC_POSIX 1" >>confdefs.h - else - REPLACE_MALLOC=1 - fi + GL_GNULIB_ATOLL=0 - if test $REPLACE_MALLOC = 1; then - REPLACE_CALLOC=1 - fi + GL_GNULIB_CALLOC_GNU=0 - GL_GNULIB__EXIT=0 + GL_GNULIB_CALLOC_POSIX=0 - GL_GNULIB_ALIGNED_ALLOC=0 + GL_GNULIB_CANONICALIZE_FILE_NAME=0 - GL_GNULIB_ATOLL=0 + GL_GNULIB_FREE_POSIX=0 - GL_GNULIB_CALLOC_POSIX=0 + GL_GNULIB_GETLOADAVG=0 - GL_GNULIB_CANONICALIZE_FILE_NAME=0 + GL_GNULIB_GETPROGNAME=0 - GL_GNULIB_FREE_POSIX=0 + GL_GNULIB_GETSUBOPT=0 - GL_GNULIB_GETLOADAVG=0 + GL_GNULIB_GRANTPT=0 - GL_GNULIB_GETSUBOPT=0 + GL_GNULIB_MALLOC_GNU=0 - GL_GNULIB_GRANTPT=0 + GL_GNULIB_MALLOC_POSIX=0 - GL_GNULIB_MALLOC_POSIX=0 + GL_GNULIB_MBSTOWCS=0 @@ -9050,6 +9285,10 @@ printf "%s\n" "#define HAVE_MALLOC_POSIX 1" >>confdefs.h + GL_GNULIB_REALLOC_GNU=0 + + + GL_GNULIB_REALLOC_POSIX=0 @@ -9130,845 +9369,2328 @@ printf "%s\n" "#define HAVE_MALLOC_POSIX 1" >>confdefs.h -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for C/C++ restrict keyword" >&5 -printf %s "checking for C/C++ restrict keyword... " >&6; } -if test ${ac_cv_c_restrict+y} -then : - printf %s "(cached) " >&6 -else $as_nop - ac_cv_c_restrict=no - # Put '__restrict__' first, to avoid problems with glibc and non-GCC; see: - # https://lists.gnu.org/archive/html/bug-autoconf/2016-02/msg00006.html - # Put 'restrict' last, because C++ lacks it. - for ac_kw in __restrict__ __restrict _Restrict restrict; do - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -typedef int *int_ptr; - int foo (int_ptr $ac_kw ip) { return ip[0]; } - int bar (int [$ac_kw]); /* Catch GCC bug 14050. */ - int bar (int ip[$ac_kw]) { return ip[0]; } - -int -main (void) -{ -int s[1]; - int *$ac_kw t = s; - t[0] = 0; - return foo (t) + bar (t); - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - ac_cv_c_restrict=$ac_kw -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - test "$ac_cv_c_restrict" != no && break - done - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_restrict" >&5 -printf "%s\n" "$ac_cv_c_restrict" >&6; } - - case $ac_cv_c_restrict in - restrict) ;; - no) printf "%s\n" "#define restrict /**/" >>confdefs.h - ;; - *) printf "%s\n" "#define restrict $ac_cv_c_restrict" >>confdefs.h - ;; - esac - - - - HAVE_CHOWN=1; - HAVE_COPY_FILE_RANGE=1; - HAVE_DUP3=1; - HAVE_EUIDACCESS=1; - HAVE_EXECVPE=1; - HAVE_FACCESSAT=1; - HAVE_FCHDIR=1; - HAVE_FCHOWNAT=1; - HAVE_FDATASYNC=1; - HAVE_FSYNC=1; - HAVE_FTRUNCATE=1; - HAVE_GETDTABLESIZE=1; - HAVE_GETENTROPY=1; - HAVE_GETGROUPS=1; - HAVE_GETHOSTNAME=1; - HAVE_GETLOGIN=1; - HAVE_GETPAGESIZE=1; - HAVE_GETPASS=1; - HAVE_GROUP_MEMBER=1; - HAVE_LCHOWN=1; - HAVE_LINK=1; - HAVE_LINKAT=1; - HAVE_PIPE=1; - HAVE_PIPE2=1; - HAVE_PREAD=1; - HAVE_PWRITE=1; - HAVE_READLINK=1; - HAVE_READLINKAT=1; - HAVE_SETHOSTNAME=1; - HAVE_SLEEP=1; - HAVE_SYMLINK=1; - HAVE_SYMLINKAT=1; - HAVE_UNLINKAT=1; - HAVE_USLEEP=1; - HAVE_DECL_ENVIRON=1; - HAVE_DECL_EXECVPE=1; - HAVE_DECL_FCHDIR=1; - HAVE_DECL_FDATASYNC=1; - HAVE_DECL_GETDOMAINNAME=1; - HAVE_DECL_GETLOGIN=1; - HAVE_DECL_GETLOGIN_R=1; - HAVE_DECL_GETPAGESIZE=1; - HAVE_DECL_GETUSERSHELL=1; - HAVE_DECL_SETHOSTNAME=1; - HAVE_DECL_TRUNCATE=1; - HAVE_DECL_TTYNAME_R=1; - HAVE_OS_H=0; - HAVE_SYS_PARAM_H=0; - REPLACE_ACCESS=0; - REPLACE_CHOWN=0; - REPLACE_CLOSE=0; - REPLACE_DUP=0; - REPLACE_DUP2=0; - REPLACE_EXECL=0; - REPLACE_EXECLE=0; - REPLACE_EXECLP=0; - REPLACE_EXECV=0; - REPLACE_EXECVE=0; - REPLACE_EXECVP=0; - REPLACE_EXECVPE=0; - REPLACE_FACCESSAT=0; - REPLACE_FCHOWNAT=0; - REPLACE_FTRUNCATE=0; - REPLACE_GETCWD=0; - REPLACE_GETDOMAINNAME=0; - REPLACE_GETDTABLESIZE=0; - REPLACE_GETLOGIN_R=0; - REPLACE_GETGROUPS=0; - REPLACE_GETPAGESIZE=0; - REPLACE_GETPASS=0; - REPLACE_ISATTY=0; - REPLACE_LCHOWN=0; - REPLACE_LINK=0; - REPLACE_LINKAT=0; - REPLACE_LSEEK=0; - REPLACE_PREAD=0; - REPLACE_PWRITE=0; - REPLACE_READ=0; - REPLACE_READLINK=0; - REPLACE_READLINKAT=0; - REPLACE_RMDIR=0; - REPLACE_SLEEP=0; - REPLACE_SYMLINK=0; - REPLACE_SYMLINKAT=0; - REPLACE_TRUNCATE=0; - REPLACE_TTYNAME_R=0; - REPLACE_UNLINK=0; - REPLACE_UNLINKAT=0; - REPLACE_USLEEP=0; - REPLACE_WRITE=0; - UNISTD_H_HAVE_SYS_RANDOM_H=0; - UNISTD_H_HAVE_WINSOCK2_H=0; - UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS=0; - - - - - if test $ac_cv_func__set_invalid_parameter_handler = yes; then - HAVE_MSVC_INVALID_PARAMETER_HANDLER=1 + HAVE__EXIT=1; + HAVE_ALIGNED_ALLOC=1; + HAVE_ATOLL=1; + HAVE_CANONICALIZE_FILE_NAME=1; + HAVE_DECL_ECVT=1; + HAVE_DECL_FCVT=1; + HAVE_DECL_GCVT=1; + HAVE_DECL_GETLOADAVG=1; + HAVE_DECL_PROGRAM_INVOCATION_NAME=1; + HAVE_GETPROGNAME=1; + HAVE_GETSUBOPT=1; + HAVE_GRANTPT=1; + HAVE_INITSTATE=1; + HAVE_DECL_INITSTATE=1; + HAVE_MBTOWC=1; + HAVE_MKDTEMP=1; + HAVE_MKOSTEMP=1; + HAVE_MKOSTEMPS=1; + HAVE_MKSTEMP=1; + HAVE_MKSTEMPS=1; + HAVE_POSIX_MEMALIGN=1; + HAVE_POSIX_OPENPT=1; + HAVE_PTSNAME=1; + HAVE_PTSNAME_R=1; + HAVE_QSORT_R=1; + HAVE_RANDOM=1; + HAVE_RANDOM_H=1; + HAVE_RANDOM_R=1; + HAVE_REALLOCARRAY=1; + HAVE_REALPATH=1; + HAVE_RPMATCH=1; + HAVE_SECURE_GETENV=1; + HAVE_SETENV=1; + HAVE_DECL_SETENV=1; + HAVE_SETSTATE=1; + HAVE_DECL_SETSTATE=1; + HAVE_STRTOD=1; + HAVE_STRTOL=1; + HAVE_STRTOLD=1; + HAVE_STRTOLL=1; + HAVE_STRTOUL=1; + HAVE_STRTOULL=1; + HAVE_STRUCT_RANDOM_DATA=1; + HAVE_SYS_LOADAVG_H=0; + HAVE_UNLOCKPT=1; + HAVE_DECL_UNSETENV=1; + REPLACE__EXIT=0; + REPLACE_ALIGNED_ALLOC=0; + REPLACE_CALLOC_FOR_CALLOC_GNU=0; + REPLACE_CALLOC_FOR_CALLOC_POSIX=0; + REPLACE_CANONICALIZE_FILE_NAME=0; + REPLACE_FREE=0; + REPLACE_GETLOADAVG=0; + REPLACE_GETPROGNAME=0; + REPLACE_GETSUBOPT=0; + REPLACE_INITSTATE=0; + REPLACE_MALLOC_FOR_MALLOC_GNU=0; + REPLACE_MALLOC_FOR_MALLOC_POSIX=0; + REPLACE_MB_CUR_MAX=0; + REPLACE_MBSTOWCS=0; + REPLACE_MBTOWC=0; + REPLACE_MKOSTEMP=0; + REPLACE_MKOSTEMPS=0; + REPLACE_MKSTEMP=0; + REPLACE_POSIX_MEMALIGN=0; + REPLACE_POSIX_OPENPT=0; + REPLACE_PTSNAME=0; + REPLACE_PTSNAME_R=0; + REPLACE_PUTENV=0; + REPLACE_QSORT_R=0; + REPLACE_RANDOM=0; + REPLACE_RANDOM_R=0; + REPLACE_REALLOC_FOR_REALLOC_GNU=0; + REPLACE_REALLOC_FOR_REALLOC_POSIX=0; + REPLACE_REALLOCARRAY=0; + REPLACE_REALPATH=0; + REPLACE_SETENV=0; + REPLACE_SETSTATE=0; + REPLACE_STRTOD=0; + REPLACE_STRTOL=0; + REPLACE_STRTOLD=0; + REPLACE_STRTOLL=0; + REPLACE_STRTOUL=0; + REPLACE_STRTOULL=0; + REPLACE_UNSETENV=0; + REPLACE_WCTOMB=0; -printf "%s\n" "#define HAVE_MSVC_INVALID_PARAMETER_HANDLER 1" >>confdefs.h + if test "X$prefix" = "XNONE"; then + acl_final_prefix="$ac_default_prefix" else - HAVE_MSVC_INVALID_PARAMETER_HANDLER=0 + acl_final_prefix="$prefix" fi + if test "X$exec_prefix" = "XNONE"; then + acl_final_exec_prefix='${prefix}' + else + acl_final_exec_prefix="$exec_prefix" + fi + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + eval acl_final_exec_prefix=\"$acl_final_exec_prefix\" + prefix="$acl_save_prefix" - SYS_IOCTL_H_HAVE_WINSOCK2_H=0; - SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS=0; - - REPLACE_IOCTL=0; - - - +# Check whether --with-gnu-ld was given. +if test ${with_gnu_ld+y} +then : + withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes +else case e in #( + e) with_gnu_ld=no ;; +esac +fi - GL_GNULIB_ACCESS=0 +# Prepare PATH_SEPARATOR. +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + # Determine PATH_SEPARATOR by trying to find /bin/sh in a PATH which + # contains only /bin. Note that ksh looks also at the FPATH variable, + # so we have to set that as well for the test. + PATH_SEPARATOR=: + (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ + && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ + || PATH_SEPARATOR=';' + } +fi +if test -n "$LD"; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ld" >&5 +printf %s "checking for ld... " >&6; } +elif test "$GCC" = yes; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5 +printf %s "checking for ld used by $CC... " >&6; } +elif test "$with_gnu_ld" = yes; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5 +printf %s "checking for GNU ld... " >&6; } +else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5 +printf %s "checking for non-GNU ld... " >&6; } +fi +if test -n "$LD"; then + # Let the user override the test with a path. + : +else + if test ${acl_cv_path_LD+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + acl_cv_path_LD= # Final result of this test + ac_prog=ld # Program to search in $PATH + if test "$GCC" = yes; then + # Check if gcc -print-prog-name=ld gives a path. + case $host in + *-*-mingw*) + # gcc leaves a trailing carriage return which upsets mingw + acl_output=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; + *) + acl_output=`($CC -print-prog-name=ld) 2>&5` ;; + esac + case $acl_output in + # Accept absolute paths. + [\\/]* | ?:[\\/]*) + re_direlt='/[^/][^/]*/\.\./' + # Canonicalize the pathname of ld + acl_output=`echo "$acl_output" | sed 's%\\\\%/%g'` + while echo "$acl_output" | grep "$re_direlt" > /dev/null 2>&1; do + acl_output=`echo $acl_output | sed "s%$re_direlt%/%"` + done + # Got the pathname. No search in PATH is needed. + acl_cv_path_LD="$acl_output" + ac_prog= + ;; + "") + # If it fails, then pretend we aren't using GCC. + ;; + *) + # If it is relative, then search for the first ld in PATH. + with_gnu_ld=unknown + ;; + esac + fi + if test -n "$ac_prog"; then + # Search for $ac_prog in $PATH. + acl_save_ifs="$IFS"; IFS=$PATH_SEPARATOR + for ac_dir in $PATH; do + IFS="$acl_save_ifs" + test -z "$ac_dir" && ac_dir=. + if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then + acl_cv_path_LD="$ac_dir/$ac_prog" + # Check to see if the program is GNU ld. I'd rather use --version, + # but apparently some variants of GNU ld only accept -v. + # Break only if it was the GNU/non-GNU ld that we prefer. + case `"$acl_cv_path_LD" -v 2>&1 conftest.$ac_ext +/* end confdefs.h. */ +#if defined __powerpc64__ || defined __LP64__ + int ok; + #else + error fail + #endif +_ACEOF +if ac_fn_c_try_compile "$LINENO" +then : + # The compiler produces 64-bit code. Add option '-b64' so that the + # linker groks 64-bit object files. + case "$acl_cv_path_LD " in + *" -b64 "*) ;; + *) acl_cv_path_LD="$acl_cv_path_LD -b64" ;; + esac - GL_GNULIB_CHDIR=0 +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext + ;; + sparc64-*-netbsd*) + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#if defined __sparcv9 || defined __arch64__ + int ok; + #else + error fail + #endif +_ACEOF +if ac_fn_c_try_compile "$LINENO" +then : +else case e in #( + e) # The compiler produces 32-bit code. Add option '-m elf32_sparc' + # so that the linker groks 32-bit object files. + case "$acl_cv_path_LD " in + *" -m elf32_sparc "*) ;; + *) acl_cv_path_LD="$acl_cv_path_LD -m elf32_sparc" ;; + esac + ;; +esac +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext + ;; + esac + ;; +esac +fi - GL_GNULIB_CHOWN=0 + LD="$acl_cv_path_LD" +fi +if test -n "$LD"; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $LD" >&5 +printf "%s\n" "$LD" >&6; } +else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } + as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5 +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5 +printf %s "checking if the linker ($LD) is GNU ld... " >&6; } +if test ${acl_cv_prog_gnu_ld+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) # I'd rather use --version here, but apparently some GNU lds only accept -v. +case `$LD -v 2>&1 &5 +printf "%s\n" "$acl_cv_prog_gnu_ld" >&6; } +with_gnu_ld=$acl_cv_prog_gnu_ld - GL_GNULIB_CLOSE=0 + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for shared library run path origin" >&5 +printf %s "checking for shared library run path origin... " >&6; } +if test ${acl_cv_rpath+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + CC="$CC" GCC="$GCC" LDFLAGS="$LDFLAGS" LD="$LD" with_gnu_ld="$with_gnu_ld" \ + ${CONFIG_SHELL-/bin/sh} "$ac_aux_dir/config.rpath" "$host" > conftest.sh + . ./conftest.sh + rm -f ./conftest.sh + acl_cv_rpath=done + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $acl_cv_rpath" >&5 +printf "%s\n" "$acl_cv_rpath" >&6; } + wl="$acl_cv_wl" + acl_libext="$acl_cv_libext" + acl_shlibext="$acl_cv_shlibext" + acl_libname_spec="$acl_cv_libname_spec" + acl_library_names_spec="$acl_cv_library_names_spec" + acl_hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec" + acl_hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator" + acl_hardcode_direct="$acl_cv_hardcode_direct" + acl_hardcode_minus_L="$acl_cv_hardcode_minus_L" + # Check whether --enable-rpath was given. +if test ${enable_rpath+y} +then : + enableval=$enable_rpath; : +else case e in #( + e) enable_rpath=yes ;; +esac +fi - GL_GNULIB_COPY_FILE_RANGE=0 - GL_GNULIB_DUP=0 + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking 32-bit host C ABI" >&5 +printf %s "checking 32-bit host C ABI... " >&6; } +if test ${gl_cv_host_cpu_c_abi_32bit+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) if test -n "$gl_cv_host_cpu_c_abi"; then + case "$gl_cv_host_cpu_c_abi" in + i386 | x86_64-x32 | arm | armhf | arm64-ilp32 | hppa | ia64-ilp32 | mips | mipsn32 | powerpc | riscv*-ilp32* | s390 | sparc) + gl_cv_host_cpu_c_abi_32bit=yes ;; + x86_64 | alpha | arm64 | hppa64 | ia64 | mips64 | powerpc64 | powerpc64-elfv2 | riscv*-lp64* | s390x | sparc64 ) + gl_cv_host_cpu_c_abi_32bit=no ;; + *) + gl_cv_host_cpu_c_abi_32bit=unknown ;; + esac + else + case "$host_cpu" in + # CPUs that only support a 32-bit ABI. + arc \ + | bfin \ + | cris* \ + | csky \ + | epiphany \ + | ft32 \ + | h8300 \ + | m68k \ + | microblaze | microblazeel \ + | nds32 | nds32le | nds32be \ + | nios2 | nios2eb | nios2el \ + | or1k* \ + | or32 \ + | sh | sh1234 | sh1234elb \ + | tic6x \ + | xtensa* ) + gl_cv_host_cpu_c_abi_32bit=yes + ;; + # CPUs that only support a 64-bit ABI. + alpha | alphaev[4-8] | alphaev56 | alphapca5[67] | alphaev6[78] \ + | mmix ) + gl_cv_host_cpu_c_abi_32bit=no + ;; - GL_GNULIB_DUP2=0 + i[34567]86 ) + gl_cv_host_cpu_c_abi_32bit=yes + ;; + x86_64 ) + # On x86_64 systems, the C compiler may be generating code in one of + # these ABIs: + # - 64-bit instruction set, 64-bit pointers, 64-bit 'long': x86_64. + # - 64-bit instruction set, 64-bit pointers, 32-bit 'long': x86_64 + # with native Windows (mingw, MSVC). + # - 64-bit instruction set, 32-bit pointers, 32-bit 'long': x86_64-x32. + # - 32-bit instruction set, 32-bit pointers, 32-bit 'long': i386. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#if (defined __x86_64__ || defined __amd64__ \ + || defined _M_X64 || defined _M_AMD64) \ + && !(defined __ILP32__ || defined _ILP32) + int ok; + #else + error fail + #endif +_ACEOF +if ac_fn_c_try_compile "$LINENO" +then : + gl_cv_host_cpu_c_abi_32bit=no +else case e in #( + e) gl_cv_host_cpu_c_abi_32bit=yes ;; +esac +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext + ;; - GL_GNULIB_DUP3=0 - - - - GL_GNULIB_ENVIRON=0 - - - - GL_GNULIB_EUIDACCESS=0 - - - - GL_GNULIB_EXECL=0 - - - - GL_GNULIB_EXECLE=0 - - - - GL_GNULIB_EXECLP=0 - - - - GL_GNULIB_EXECV=0 - - - - GL_GNULIB_EXECVE=0 - - - - GL_GNULIB_EXECVP=0 - - - - GL_GNULIB_EXECVPE=0 - + arm* | aarch64 ) + # Assume arm with EABI. + # On arm64 systems, the C compiler may be generating code in one of + # these ABIs: + # - aarch64 instruction set, 64-bit pointers, 64-bit 'long': arm64. + # - aarch64 instruction set, 32-bit pointers, 32-bit 'long': arm64-ilp32. + # - 32-bit instruction set, 32-bit pointers, 32-bit 'long': arm or armhf. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#if defined __aarch64__ && !(defined __ILP32__ || defined _ILP32) + int ok; + #else + error fail + #endif +_ACEOF +if ac_fn_c_try_compile "$LINENO" +then : + gl_cv_host_cpu_c_abi_32bit=no +else case e in #( + e) gl_cv_host_cpu_c_abi_32bit=yes ;; +esac +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext + ;; - GL_GNULIB_FACCESSAT=0 + hppa1.0 | hppa1.1 | hppa2.0* | hppa64 ) + # On hppa, the C compiler may be generating 32-bit code or 64-bit + # code. In the latter case, it defines _LP64 and __LP64__. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#ifdef __LP64__ + int ok; + #else + error fail + #endif +_ACEOF +if ac_fn_c_try_compile "$LINENO" +then : + gl_cv_host_cpu_c_abi_32bit=no +else case e in #( + e) gl_cv_host_cpu_c_abi_32bit=yes ;; +esac +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext + ;; + ia64* ) + # On ia64 on HP-UX, the C compiler may be generating 64-bit code or + # 32-bit code. In the latter case, it defines _ILP32. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#ifdef _ILP32 + int ok; + #else + error fail + #endif - GL_GNULIB_FCHDIR=0 +_ACEOF +if ac_fn_c_try_compile "$LINENO" +then : + gl_cv_host_cpu_c_abi_32bit=yes +else case e in #( + e) gl_cv_host_cpu_c_abi_32bit=no ;; +esac +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext + ;; + mips* ) + # We should also check for (_MIPS_SZPTR == 64), but gcc keeps this + # at 32. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#if defined _MIPS_SZLONG && (_MIPS_SZLONG == 64) + int ok; + #else + error fail + #endif +_ACEOF +if ac_fn_c_try_compile "$LINENO" +then : + gl_cv_host_cpu_c_abi_32bit=no +else case e in #( + e) gl_cv_host_cpu_c_abi_32bit=yes ;; +esac +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext + ;; - GL_GNULIB_FCHOWNAT=0 + powerpc* ) + # Different ABIs are in use on AIX vs. Mac OS X vs. Linux,*BSD. + # No need to distinguish them here; the caller may distinguish + # them based on the OS. + # On powerpc64 systems, the C compiler may still be generating + # 32-bit code. And on powerpc-ibm-aix systems, the C compiler may + # be generating 64-bit code. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#if defined __powerpc64__ || defined __LP64__ + int ok; + #else + error fail + #endif +_ACEOF +if ac_fn_c_try_compile "$LINENO" +then : + gl_cv_host_cpu_c_abi_32bit=no +else case e in #( + e) gl_cv_host_cpu_c_abi_32bit=yes ;; +esac +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext + ;; + rs6000 ) + gl_cv_host_cpu_c_abi_32bit=yes + ;; - GL_GNULIB_FDATASYNC=0 + riscv32 | riscv64 ) + # There are 6 ABIs: ilp32, ilp32f, ilp32d, lp64, lp64f, lp64d. + # Size of 'long' and 'void *': + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#if defined __LP64__ + int ok; + #else + error fail + #endif +_ACEOF +if ac_fn_c_try_compile "$LINENO" +then : + gl_cv_host_cpu_c_abi_32bit=no +else case e in #( + e) gl_cv_host_cpu_c_abi_32bit=yes ;; +esac +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext + ;; + s390* ) + # On s390x, the C compiler may be generating 64-bit (= s390x) code + # or 31-bit (= s390) code. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#if defined __LP64__ || defined __s390x__ + int ok; + #else + error fail + #endif - GL_GNULIB_FSYNC=0 +_ACEOF +if ac_fn_c_try_compile "$LINENO" +then : + gl_cv_host_cpu_c_abi_32bit=no +else case e in #( + e) gl_cv_host_cpu_c_abi_32bit=yes ;; +esac +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext + ;; + sparc | sparc64 ) + # UltraSPARCs running Linux have `uname -m` = "sparc64", but the + # C compiler still generates 32-bit code. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#if defined __sparcv9 || defined __arch64__ + int ok; + #else + error fail + #endif +_ACEOF +if ac_fn_c_try_compile "$LINENO" +then : + gl_cv_host_cpu_c_abi_32bit=no +else case e in #( + e) gl_cv_host_cpu_c_abi_32bit=yes ;; +esac +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext + ;; - GL_GNULIB_FTRUNCATE=0 + *) + gl_cv_host_cpu_c_abi_32bit=unknown + ;; + esac + fi + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_host_cpu_c_abi_32bit" >&5 +printf "%s\n" "$gl_cv_host_cpu_c_abi_32bit" >&6; } + HOST_CPU_C_ABI_32BIT="$gl_cv_host_cpu_c_abi_32bit" - GL_GNULIB_GETCWD=0 - GL_GNULIB_GETDOMAINNAME=0 + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ELF binary format" >&5 +printf %s "checking for ELF binary format... " >&6; } +if test ${gl_cv_elf+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#if defined __ELF__ || (defined __linux__ && defined __EDG__) + Extensible Linking Format + #endif +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP_TRADITIONAL "Extensible Linking Format" >/dev/null 2>&1 +then : + gl_cv_elf=yes +else case e in #( + e) gl_cv_elf=no ;; +esac +fi +rm -rf conftest* + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_elf" >&5 +printf "%s\n" "$gl_cv_elf" >&6; } + if test $gl_cv_elf = yes; then + # Extract the ELF class of a file (5th byte) in decimal. + # Cf. https://en.wikipedia.org/wiki/Executable_and_Linkable_Format#File_header + if od -A x < /dev/null >/dev/null 2>/dev/null; then + # Use POSIX od. + func_elfclass () + { + od -A n -t d1 -j 4 -N 1 + } + else + # Use BSD hexdump. + func_elfclass () + { + dd bs=1 count=1 skip=4 2>/dev/null | hexdump -e '1/1 "%3d "' + echo + } + fi + # Use 'expr', not 'test', to compare the values of func_elfclass, because on + # Solaris 11 OpenIndiana and Solaris 11 OmniOS, the result is 001 or 002, + # not 1 or 2. + case $HOST_CPU_C_ABI_32BIT in + yes) + # 32-bit ABI. + acl_is_expected_elfclass () + { + expr "`func_elfclass | sed -e 's/[ ]//g'`" = 1 > /dev/null + } + ;; + no) + # 64-bit ABI. + acl_is_expected_elfclass () + { + expr "`func_elfclass | sed -e 's/[ ]//g'`" = 2 > /dev/null + } + ;; + *) + # Unknown. + acl_is_expected_elfclass () + { + : + } + ;; + esac + else + acl_is_expected_elfclass () + { + : + } + fi - GL_GNULIB_GETDTABLESIZE=0 + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for the common suffixes of directories in the library search path" >&5 +printf %s "checking for the common suffixes of directories in the library search path... " >&6; } +if test ${acl_cv_libdirstems+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) acl_libdirstem=lib + acl_libdirstem2= + acl_libdirstem3= + case "$host_os" in + solaris*) + if test $HOST_CPU_C_ABI_32BIT = no; then + acl_libdirstem2=lib/64 + case "$host_cpu" in + sparc*) acl_libdirstem3=lib/sparcv9 ;; + i*86 | x86_64) acl_libdirstem3=lib/amd64 ;; + esac + fi + ;; + *) + searchpath=`(LC_ALL=C $CC $CPPFLAGS $CFLAGS -print-search-dirs) 2>/dev/null \ + | sed -n -e 's,^libraries: ,,p' | sed -e 's,^=,,'` + if test $HOST_CPU_C_ABI_32BIT != no; then + # 32-bit or unknown ABI. + if test -d /usr/lib32; then + acl_libdirstem2=lib32 + fi + fi + if test $HOST_CPU_C_ABI_32BIT != yes; then + # 64-bit or unknown ABI. + if test -d /usr/lib64; then + acl_libdirstem3=lib64 + fi + fi + if test -n "$searchpath"; then + acl_save_IFS="${IFS= }"; IFS=":" + for searchdir in $searchpath; do + if test -d "$searchdir"; then + case "$searchdir" in + */lib32/ | */lib32 ) acl_libdirstem2=lib32 ;; + */lib64/ | */lib64 ) acl_libdirstem3=lib64 ;; + */../ | */.. ) + # Better ignore directories of this form. They are misleading. + ;; + *) searchdir=`cd "$searchdir" && pwd` + case "$searchdir" in + */lib32 ) acl_libdirstem2=lib32 ;; + */lib64 ) acl_libdirstem3=lib64 ;; + esac ;; + esac + fi + done + IFS="$acl_save_IFS" + if test $HOST_CPU_C_ABI_32BIT = yes; then + # 32-bit ABI. + acl_libdirstem3= + fi + if test $HOST_CPU_C_ABI_32BIT = no; then + # 64-bit ABI. + acl_libdirstem2= + fi + fi + ;; + esac + test -n "$acl_libdirstem2" || acl_libdirstem2="$acl_libdirstem" + test -n "$acl_libdirstem3" || acl_libdirstem3="$acl_libdirstem" + acl_cv_libdirstems="$acl_libdirstem,$acl_libdirstem2,$acl_libdirstem3" + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $acl_cv_libdirstems" >&5 +printf "%s\n" "$acl_cv_libdirstems" >&6; } + acl_libdirstem=`echo "$acl_cv_libdirstems" | sed -e 's/,.*//'` + acl_libdirstem2=`echo "$acl_cv_libdirstems" | sed -e 's/^[^,]*,//' -e 's/,.*//'` + acl_libdirstem3=`echo "$acl_cv_libdirstems" | sed -e 's/^[^,]*,[^,]*,//' -e 's/,.*//'` - GL_GNULIB_GETENTROPY=0 +# Check whether --with-libsigsegv was given. +if test ${with_libsigsegv+y} +then : + withval=$with_libsigsegv; +fi + if test "$with_libsigsegv" = yes; then - GL_GNULIB_GETGROUPS=0 - GL_GNULIB_GETHOSTNAME=0 - GL_GNULIB_GETLOGIN=0 - GL_GNULIB_GETLOGIN_R=0 + use_additional=yes - GL_GNULIB_GETOPT_POSIX=0 + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval additional_includedir=\"$includedir\" + eval additional_libdir=\"$libdir\" + eval additional_libdir2=\"$exec_prefix/$acl_libdirstem2\" + eval additional_libdir3=\"$exec_prefix/$acl_libdirstem3\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" - GL_GNULIB_GETPAGESIZE=0 +# Check whether --with-libsigsegv-prefix was given. +if test ${with_libsigsegv_prefix+y} +then : + withval=$with_libsigsegv_prefix; + if test "X$withval" = "Xno"; then + use_additional=no + else + if test "X$withval" = "X"; then + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" - GL_GNULIB_GETPASS=0 + eval additional_includedir=\"$includedir\" + eval additional_libdir=\"$libdir\" + eval additional_libdir2=\"$exec_prefix/$acl_libdirstem2\" + eval additional_libdir3=\"$exec_prefix/$acl_libdirstem3\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + else + additional_includedir="$withval/include" + additional_libdir="$withval/$acl_libdirstem" + additional_libdir2="$withval/$acl_libdirstem2" + additional_libdir3="$withval/$acl_libdirstem3" + fi + fi - GL_GNULIB_GETUSERSHELL=0 +fi + if test "X$additional_libdir2" = "X$additional_libdir"; then + additional_libdir2= + fi + if test "X$additional_libdir3" = "X$additional_libdir"; then + additional_libdir3= + fi + LIBSIGSEGV= + LTLIBSIGSEGV= + INCSIGSEGV= + LIBSIGSEGV_PREFIX= + HAVE_LIBSIGSEGV= + rpathdirs= + ltrpathdirs= + names_already_handled= + names_next_round='sigsegv ' + while test -n "$names_next_round"; do + names_this_round="$names_next_round" + names_next_round= + for name in $names_this_round; do + already_handled= + for n in $names_already_handled; do + if test "$n" = "$name"; then + already_handled=yes + break + fi + done + if test -z "$already_handled"; then + names_already_handled="$names_already_handled $name" + uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./+-|ABCDEFGHIJKLMNOPQRSTUVWXYZ____|'` + eval value=\"\$HAVE_LIB$uppername\" + if test -n "$value"; then + if test "$value" = yes; then + eval value=\"\$LIB$uppername\" + test -z "$value" || LIBSIGSEGV="${LIBSIGSEGV}${LIBSIGSEGV:+ }$value" + eval value=\"\$LTLIB$uppername\" + test -z "$value" || LTLIBSIGSEGV="${LTLIBSIGSEGV}${LTLIBSIGSEGV:+ }$value" + else + : + fi + else + found_dir= + found_la= + found_so= + found_a= + eval libname=\"$acl_libname_spec\" # typically: libname=lib$name + if test -n "$acl_shlibext"; then + shrext=".$acl_shlibext" # typically: shrext=.so + else + shrext= + fi + if test $use_additional = yes; then + for additional_libdir_variable in additional_libdir additional_libdir2 additional_libdir3; do + if test "X$found_dir" = "X"; then + eval dir=\$$additional_libdir_variable + if test -n "$dir"; then + if test -n "$acl_shlibext"; then + if test -f "$dir/$libname$shrext" && acl_is_expected_elfclass < "$dir/$libname$shrext"; then + found_dir="$dir" + found_so="$dir/$libname$shrext" + else + if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then + ver=`(cd "$dir" && \ + for f in "$libname$shrext".*; do echo "$f"; done \ + | sed -e "s,^$libname$shrext\\\\.,," \ + | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \ + | sed 1q ) 2>/dev/null` + if test -n "$ver" && test -f "$dir/$libname$shrext.$ver" && acl_is_expected_elfclass < "$dir/$libname$shrext.$ver"; then + found_dir="$dir" + found_so="$dir/$libname$shrext.$ver" + fi + else + eval library_names=\"$acl_library_names_spec\" + for f in $library_names; do + if test -f "$dir/$f" && acl_is_expected_elfclass < "$dir/$f"; then + found_dir="$dir" + found_so="$dir/$f" + break + fi + done + fi + fi + fi + if test "X$found_dir" = "X"; then + if test -f "$dir/$libname.$acl_libext" && ${AR-ar} -p "$dir/$libname.$acl_libext" | acl_is_expected_elfclass; then + found_dir="$dir" + found_a="$dir/$libname.$acl_libext" + fi + fi + if test "X$found_dir" != "X"; then + if test -f "$dir/$libname.la"; then + found_la="$dir/$libname.la" + fi + fi + fi + fi + done + fi + if test "X$found_dir" = "X"; then + for x in $LDFLAGS $LTLIBSIGSEGV; do + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" - GL_GNULIB_GROUP_MEMBER=0 - - - - GL_GNULIB_ISATTY=0 - + case "$x" in + -L*) + dir=`echo "X$x" | sed -e 's/^X-L//'` + if test -n "$acl_shlibext"; then + if test -f "$dir/$libname$shrext" && acl_is_expected_elfclass < "$dir/$libname$shrext"; then + found_dir="$dir" + found_so="$dir/$libname$shrext" + else + if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then + ver=`(cd "$dir" && \ + for f in "$libname$shrext".*; do echo "$f"; done \ + | sed -e "s,^$libname$shrext\\\\.,," \ + | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \ + | sed 1q ) 2>/dev/null` + if test -n "$ver" && test -f "$dir/$libname$shrext.$ver" && acl_is_expected_elfclass < "$dir/$libname$shrext.$ver"; then + found_dir="$dir" + found_so="$dir/$libname$shrext.$ver" + fi + else + eval library_names=\"$acl_library_names_spec\" + for f in $library_names; do + if test -f "$dir/$f" && acl_is_expected_elfclass < "$dir/$f"; then + found_dir="$dir" + found_so="$dir/$f" + break + fi + done + fi + fi + fi + if test "X$found_dir" = "X"; then + if test -f "$dir/$libname.$acl_libext" && ${AR-ar} -p "$dir/$libname.$acl_libext" | acl_is_expected_elfclass; then + found_dir="$dir" + found_a="$dir/$libname.$acl_libext" + fi + fi + if test "X$found_dir" != "X"; then + if test -f "$dir/$libname.la"; then + found_la="$dir/$libname.la" + fi + fi + ;; + esac + if test "X$found_dir" != "X"; then + break + fi + done + fi + if test "X$found_dir" != "X"; then + LTLIBSIGSEGV="${LTLIBSIGSEGV}${LTLIBSIGSEGV:+ }-L$found_dir -l$name" + if test "X$found_so" != "X"; then + if test "$enable_rpath" = no \ + || test "X$found_dir" = "X/usr/$acl_libdirstem" \ + || test "X$found_dir" = "X/usr/$acl_libdirstem2" \ + || test "X$found_dir" = "X/usr/$acl_libdirstem3"; then + LIBSIGSEGV="${LIBSIGSEGV}${LIBSIGSEGV:+ }$found_so" + else + haveit= + for x in $ltrpathdirs; do + if test "X$x" = "X$found_dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + ltrpathdirs="$ltrpathdirs $found_dir" + fi + if test "$acl_hardcode_direct" = yes; then + LIBSIGSEGV="${LIBSIGSEGV}${LIBSIGSEGV:+ }$found_so" + else + if test -n "$acl_hardcode_libdir_flag_spec" && test "$acl_hardcode_minus_L" = no; then + LIBSIGSEGV="${LIBSIGSEGV}${LIBSIGSEGV:+ }$found_so" + haveit= + for x in $rpathdirs; do + if test "X$x" = "X$found_dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + rpathdirs="$rpathdirs $found_dir" + fi + else + haveit= + for x in $LDFLAGS $LIBSIGSEGV; do + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" - GL_GNULIB_LCHOWN=0 + if test "X$x" = "X-L$found_dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + LIBSIGSEGV="${LIBSIGSEGV}${LIBSIGSEGV:+ }-L$found_dir" + fi + if test "$acl_hardcode_minus_L" != no; then + LIBSIGSEGV="${LIBSIGSEGV}${LIBSIGSEGV:+ }$found_so" + else + LIBSIGSEGV="${LIBSIGSEGV}${LIBSIGSEGV:+ }-l$name" + fi + fi + fi + fi + else + if test "X$found_a" != "X"; then + LIBSIGSEGV="${LIBSIGSEGV}${LIBSIGSEGV:+ }$found_a" + else + LIBSIGSEGV="${LIBSIGSEGV}${LIBSIGSEGV:+ }-L$found_dir -l$name" + fi + fi + additional_includedir= + case "$found_dir" in + */$acl_libdirstem | */$acl_libdirstem/) + basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem/"'*$,,'` + if test "$name" = 'sigsegv'; then + LIBSIGSEGV_PREFIX="$basedir" + fi + additional_includedir="$basedir/include" + ;; + */$acl_libdirstem2 | */$acl_libdirstem2/) + basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem2/"'*$,,'` + if test "$name" = 'sigsegv'; then + LIBSIGSEGV_PREFIX="$basedir" + fi + additional_includedir="$basedir/include" + ;; + */$acl_libdirstem3 | */$acl_libdirstem3/) + basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem3/"'*$,,'` + if test "$name" = 'sigsegv'; then + LIBSIGSEGV_PREFIX="$basedir" + fi + additional_includedir="$basedir/include" + ;; + esac + if test "X$additional_includedir" != "X"; then + if test "X$additional_includedir" != "X/usr/include"; then + haveit= + if test "X$additional_includedir" = "X/usr/local/include"; then + if test -n "$GCC"; then + case $host_os in + linux* | gnu* | k*bsd*-gnu) haveit=yes;; + esac + fi + fi + if test -z "$haveit"; then + for x in $CPPFLAGS $INCSIGSEGV; do + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + if test "X$x" = "X-I$additional_includedir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + if test -d "$additional_includedir"; then + INCSIGSEGV="${INCSIGSEGV}${INCSIGSEGV:+ }-I$additional_includedir" + fi + fi + fi + fi + fi + if test -n "$found_la"; then + save_libdir="$libdir" + case "$found_la" in + */* | *\\*) . "$found_la" ;; + *) . "./$found_la" ;; + esac + libdir="$save_libdir" + for dep in $dependency_libs; do + case "$dep" in + -L*) + dependency_libdir=`echo "X$dep" | sed -e 's/^X-L//'` + if test "X$dependency_libdir" != "X/usr/$acl_libdirstem" \ + && test "X$dependency_libdir" != "X/usr/$acl_libdirstem2" \ + && test "X$dependency_libdir" != "X/usr/$acl_libdirstem3"; then + haveit= + if test "X$dependency_libdir" = "X/usr/local/$acl_libdirstem" \ + || test "X$dependency_libdir" = "X/usr/local/$acl_libdirstem2" \ + || test "X$dependency_libdir" = "X/usr/local/$acl_libdirstem3"; then + if test -n "$GCC"; then + case $host_os in + linux* | gnu* | k*bsd*-gnu) haveit=yes;; + esac + fi + fi + if test -z "$haveit"; then + haveit= + for x in $LDFLAGS $LIBSIGSEGV; do - GL_GNULIB_LINK=0 + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" + if test "X$x" = "X-L$dependency_libdir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + if test -d "$dependency_libdir"; then + LIBSIGSEGV="${LIBSIGSEGV}${LIBSIGSEGV:+ }-L$dependency_libdir" + fi + fi + haveit= + for x in $LDFLAGS $LTLIBSIGSEGV; do + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" - GL_GNULIB_LINKAT=0 + if test "X$x" = "X-L$dependency_libdir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + if test -d "$dependency_libdir"; then + LTLIBSIGSEGV="${LTLIBSIGSEGV}${LTLIBSIGSEGV:+ }-L$dependency_libdir" + fi + fi + fi + fi + ;; + -R*) + dir=`echo "X$dep" | sed -e 's/^X-R//'` + if test "$enable_rpath" != no; then + haveit= + for x in $rpathdirs; do + if test "X$x" = "X$dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + rpathdirs="$rpathdirs $dir" + fi + haveit= + for x in $ltrpathdirs; do + if test "X$x" = "X$dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + ltrpathdirs="$ltrpathdirs $dir" + fi + fi + ;; + -l*) + dep=`echo "X$dep" | sed -e 's/^X-l//'` + if test "X$dep" != Xc \ + || case $host_os in + linux* | gnu* | k*bsd*-gnu) false ;; + *) true ;; + esac; then + names_next_round="$names_next_round $dep" + fi + ;; + *.la) + names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'` + ;; + *) + LIBSIGSEGV="${LIBSIGSEGV}${LIBSIGSEGV:+ }$dep" + LTLIBSIGSEGV="${LTLIBSIGSEGV}${LTLIBSIGSEGV:+ }$dep" + ;; + esac + done + fi + else + LIBSIGSEGV="${LIBSIGSEGV}${LIBSIGSEGV:+ }-l$name" + LTLIBSIGSEGV="${LTLIBSIGSEGV}${LTLIBSIGSEGV:+ }-l$name" + fi + fi + fi + done + done + if test "X$rpathdirs" != "X"; then + if test -n "$acl_hardcode_libdir_separator"; then + alldirs= + for found_dir in $rpathdirs; do + alldirs="${alldirs}${alldirs:+$acl_hardcode_libdir_separator}$found_dir" + done + acl_save_libdir="$libdir" + libdir="$alldirs" + eval flag=\"$acl_hardcode_libdir_flag_spec\" + libdir="$acl_save_libdir" + LIBSIGSEGV="${LIBSIGSEGV}${LIBSIGSEGV:+ }$flag" + else + for found_dir in $rpathdirs; do + acl_save_libdir="$libdir" + libdir="$found_dir" + eval flag=\"$acl_hardcode_libdir_flag_spec\" + libdir="$acl_save_libdir" + LIBSIGSEGV="${LIBSIGSEGV}${LIBSIGSEGV:+ }$flag" + done + fi + fi + if test "X$ltrpathdirs" != "X"; then + for found_dir in $ltrpathdirs; do + LTLIBSIGSEGV="${LTLIBSIGSEGV}${LTLIBSIGSEGV:+ }-R$found_dir" + done + fi - GL_GNULIB_LSEEK=0 - GL_GNULIB_PIPE=0 + ac_save_CPPFLAGS="$CPPFLAGS" + for element in $INCSIGSEGV; do + haveit= + for x in $CPPFLAGS; do + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval x=\"$x\" + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" - GL_GNULIB_PIPE2=0 + if test "X$x" = "X$element"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element" + fi + done + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for libsigsegv" >&5 +printf %s "checking for libsigsegv... " >&6; } +if test ${ac_cv_libsigsegv+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + ac_save_LIBS="$LIBS" + case " $LIBSIGSEGV" in + *" -l"*) LIBS="$LIBS $LIBSIGSEGV" ;; + *) LIBS="$LIBSIGSEGV $LIBS" ;; + esac + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +int +main (void) +{ +sigsegv_deinstall_handler(); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO" +then : + ac_cv_libsigsegv=yes +else case e in #( + e) ac_cv_libsigsegv='no, consider installing GNU libsigsegv' ;; +esac +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam \ + conftest$ac_exeext conftest.$ac_ext + LIBS="$ac_save_LIBS" + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_libsigsegv" >&5 +printf "%s\n" "$ac_cv_libsigsegv" >&6; } + if test "$ac_cv_libsigsegv" = yes; then + HAVE_LIBSIGSEGV=yes - GL_GNULIB_PREAD=0 +printf "%s\n" "#define HAVE_LIBSIGSEGV 1" >>confdefs.h + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to link with libsigsegv" >&5 +printf %s "checking how to link with libsigsegv... " >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $LIBSIGSEGV" >&5 +printf "%s\n" "$LIBSIGSEGV" >&6; } + else + HAVE_LIBSIGSEGV=no + CPPFLAGS="$ac_save_CPPFLAGS" + LIBSIGSEGV= + LTLIBSIGSEGV= + LIBSIGSEGV_PREFIX= + fi - GL_GNULIB_PWRITE=0 - GL_GNULIB_READ=0 + gl_cv_lib_sigsegv="$ac_cv_libsigsegv" - GL_GNULIB_READLINK=0 + gl_sigsegv_uses_libsigsegv="$gl_cv_lib_sigsegv" + else + gl_sigsegv_uses_libsigsegv=no + fi + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether malloc is ptrdiff_t safe" >&5 +printf %s "checking whether malloc is ptrdiff_t safe... " >&6; } +if test ${gl_cv_malloc_ptrdiff+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include - GL_GNULIB_READLINKAT=0 +int +main (void) +{ +/* 64-bit ptrdiff_t is so wide that no practical platform + can exceed it. */ + #define WIDE_PTRDIFF (PTRDIFF_MAX >> 31 >> 31 != 0) + /* On rare machines where size_t fits in ptrdiff_t there + is no problem. */ + #define NARROW_SIZE (SIZE_MAX <= PTRDIFF_MAX) + /* glibc 2.30 and later malloc refuses to exceed ptrdiff_t + bounds even on 32-bit platforms. We don't know which + non-glibc systems are safe. */ + #define KNOWN_SAFE (2 < __GLIBC__ + (30 <= __GLIBC_MINOR__)) - GL_GNULIB_RMDIR=0 + #if WIDE_PTRDIFF || NARROW_SIZE || KNOWN_SAFE + return 0; + #else + #error "malloc might not be ptrdiff_t safe" + syntax error + #endif + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO" +then : + gl_cv_malloc_ptrdiff=yes +else case e in #( + e) gl_cv_malloc_ptrdiff=no ;; +esac +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_malloc_ptrdiff" >&5 +printf "%s\n" "$gl_cv_malloc_ptrdiff" >&6; } - GL_GNULIB_SETHOSTNAME=0 + test "$gl_cv_malloc_ptrdiff" = yes || REPLACE_MALLOC_FOR_MALLOC_POSIX=1 - GL_GNULIB_SLEEP=0 + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether malloc, realloc, calloc set errno on failure" >&5 +printf %s "checking whether malloc, realloc, calloc set errno on failure... " >&6; } +if test ${gl_cv_func_malloc_posix+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + case "$host_os" in + mingw*) + gl_cv_func_malloc_posix=no ;; + irix* | solaris*) - GL_GNULIB_SYMLINK=0 + gl_cv_func_malloc_posix=no ;; + *) + gl_cv_func_malloc_posix=yes ;; + esac + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_malloc_posix" >&5 +printf "%s\n" "$gl_cv_func_malloc_posix" >&6; } - GL_GNULIB_SYMLINKAT=0 + if test "$gl_cv_func_malloc_posix" = yes; then - GL_GNULIB_TRUNCATE=0 +printf "%s\n" "#define HAVE_MALLOC_POSIX 1" >>confdefs.h + else + REPLACE_MALLOC_FOR_MALLOC_POSIX=1 + fi - GL_GNULIB_TTYNAME_R=0 + if test $REPLACE_MALLOC_FOR_MALLOC_POSIX = 1; then + REPLACE_CALLOC_FOR_CALLOC_POSIX=1 + fi - GL_GNULIB_UNISTD_H_GETOPT=0 +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for C/C++ restrict keyword" >&5 +printf %s "checking for C/C++ restrict keyword... " >&6; } +if test ${ac_cv_c_restrict+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) ac_cv_c_restrict=no + # Put '__restrict__' first, to avoid problems with glibc and non-GCC; see: + # https://lists.gnu.org/archive/html/bug-autoconf/2016-02/msg00006.html + # Put 'restrict' last, because C++ lacks it. + for ac_kw in __restrict__ __restrict _Restrict restrict; do + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +typedef int *int_ptr; + int foo (int_ptr $ac_kw ip) { return ip[0]; } + int bar (int [$ac_kw]); /* Catch GCC bug 14050. */ + int bar (int ip[$ac_kw]) { return ip[0]; } +int +main (void) +{ +int s[1]; + int *$ac_kw t = s; + t[0] = 0; + return foo (t) + bar (t); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO" +then : + ac_cv_c_restrict=$ac_kw +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext + test "$ac_cv_c_restrict" != no && break + done + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_restrict" >&5 +printf "%s\n" "$ac_cv_c_restrict" >&6; } - GL_GNULIB_UNISTD_H_NONBLOCKING=0 + case $ac_cv_c_restrict in + restrict) ;; + no) printf "%s\n" "#define restrict /**/" >>confdefs.h + ;; + *) printf "%s\n" "#define restrict $ac_cv_c_restrict" >>confdefs.h + ;; + esac +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC options needed to detect all undeclared functions" >&5 +printf %s "checking for $CC options needed to detect all undeclared functions... " >&6; } +if test ${ac_cv_c_undeclared_builtin_options+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) ac_save_CFLAGS=$CFLAGS + ac_cv_c_undeclared_builtin_options='cannot detect' + for ac_arg in '' -fno-builtin; do + CFLAGS="$ac_save_CFLAGS $ac_arg" + # This test program should *not* compile successfully. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +int +main (void) +{ +(void) strchr; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO" +then : - GL_GNULIB_UNISTD_H_SIGPIPE=0 +else case e in #( + e) # This test program should compile successfully. + # No library function is consistently available on + # freestanding implementations, so test against a dummy + # declaration. Include always-available headers on the + # off chance that they somehow elicit warnings. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +#include +#include +extern void ac_decl (int, char *); +int +main (void) +{ +(void) ac_decl (0, (char *) 0); + (void) ac_decl; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO" +then : + if test x"$ac_arg" = x +then : + ac_cv_c_undeclared_builtin_options='none needed' +else case e in #( + e) ac_cv_c_undeclared_builtin_options=$ac_arg ;; +esac +fi + break +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext + done + CFLAGS=$ac_save_CFLAGS + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_undeclared_builtin_options" >&5 +printf "%s\n" "$ac_cv_c_undeclared_builtin_options" >&6; } + case $ac_cv_c_undeclared_builtin_options in #( + 'cannot detect') : + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 +printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} +as_fn_error $? "cannot make $CC report undeclared builtins +See 'config.log' for more details" "$LINENO" 5; } ;; #( + 'none needed') : + ac_c_undeclared_builtin_options='' ;; #( + *) : + ac_c_undeclared_builtin_options=$ac_cv_c_undeclared_builtin_options ;; +esac - GL_GNULIB_UNLINK=0 + HAVE_CHOWN=1; + HAVE_COPY_FILE_RANGE=1; + HAVE_DUP3=1; + HAVE_EUIDACCESS=1; + HAVE_EXECVPE=1; + HAVE_FACCESSAT=1; + HAVE_FCHDIR=1; + HAVE_FCHOWNAT=1; + HAVE_FDATASYNC=1; + HAVE_FSYNC=1; + HAVE_FTRUNCATE=1; + HAVE_GETDTABLESIZE=1; + HAVE_GETENTROPY=1; + HAVE_GETGROUPS=1; + HAVE_GETHOSTNAME=1; + HAVE_GETLOGIN=1; + HAVE_GETPAGESIZE=1; + HAVE_GETPASS=1; + HAVE_GROUP_MEMBER=1; + HAVE_LCHOWN=1; + HAVE_LINK=1; + HAVE_LINKAT=1; + HAVE_PIPE=1; + HAVE_PIPE2=1; + HAVE_PREAD=1; + HAVE_PWRITE=1; + HAVE_READLINK=1; + HAVE_READLINKAT=1; + HAVE_SETHOSTNAME=1; + HAVE_SLEEP=1; + HAVE_SYMLINK=1; + HAVE_SYMLINKAT=1; + HAVE_UNLINKAT=1; + HAVE_USLEEP=1; + HAVE_DECL_ENVIRON=1; + HAVE_DECL_EXECVPE=1; + HAVE_DECL_FCHDIR=1; + HAVE_DECL_FDATASYNC=1; + HAVE_DECL_GETDOMAINNAME=1; + HAVE_DECL_GETLOGIN=1; + HAVE_DECL_GETLOGIN_R=1; + HAVE_DECL_GETPAGESIZE=1; + HAVE_DECL_GETUSERSHELL=1; + HAVE_DECL_SETHOSTNAME=1; + HAVE_DECL_TRUNCATE=1; + HAVE_DECL_TTYNAME_R=1; + HAVE_OS_H=0; + HAVE_SYS_PARAM_H=0; + REPLACE_ACCESS=0; + REPLACE_CHOWN=0; + REPLACE_CLOSE=0; + REPLACE_COPY_FILE_RANGE=0; + REPLACE_DUP=0; + REPLACE_DUP2=0; + REPLACE_DUP3=0; + REPLACE_EXECL=0; + REPLACE_EXECLE=0; + REPLACE_EXECLP=0; + REPLACE_EXECV=0; + REPLACE_EXECVE=0; + REPLACE_EXECVP=0; + REPLACE_EXECVPE=0; + REPLACE_FACCESSAT=0; + REPLACE_FCHOWNAT=0; + REPLACE_FDATASYNC=0; + REPLACE_FTRUNCATE=0; + REPLACE_GETCWD=0; + REPLACE_GETDOMAINNAME=0; + REPLACE_GETDTABLESIZE=0; + REPLACE_GETENTROPY=0; + REPLACE_GETLOGIN_R=0; + REPLACE_GETGROUPS=0; + REPLACE_GETPAGESIZE=0; + REPLACE_GETPASS=0; + REPLACE_GETPASS_FOR_GETPASS_GNU=0; + REPLACE_ISATTY=0; + REPLACE_LCHOWN=0; + REPLACE_LINK=0; + REPLACE_LINKAT=0; + REPLACE_LSEEK=0; + REPLACE_PIPE2=0; + REPLACE_PREAD=0; + REPLACE_PWRITE=0; + REPLACE_READ=0; + REPLACE_READLINK=0; + REPLACE_READLINKAT=0; + REPLACE_RMDIR=0; + REPLACE_SETHOSTNAME=0; + REPLACE_SLEEP=0; + REPLACE_SYMLINK=0; + REPLACE_SYMLINKAT=0; + REPLACE_TRUNCATE=0; + REPLACE_TTYNAME_R=0; + REPLACE_UNLINK=0; + REPLACE_UNLINKAT=0; + REPLACE_USLEEP=0; + REPLACE_WRITE=0; + UNISTD_H_HAVE_SYS_RANDOM_H=0; + UNISTD_H_HAVE_WINSOCK2_H=0; + UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS=0; - GL_GNULIB_UNLINKAT=0 - GL_GNULIB_USLEEP=0 + if test $ac_cv_func__set_invalid_parameter_handler = yes; then + HAVE_MSVC_INVALID_PARAMETER_HANDLER=1 +printf "%s\n" "#define HAVE_MSVC_INVALID_PARAMETER_HANDLER 1" >>confdefs.h + else + HAVE_MSVC_INVALID_PARAMETER_HANDLER=0 + fi - GL_GNULIB_WRITE=0 + SYS_IOCTL_H_HAVE_WINSOCK2_H=0; + SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS=0; - GL_GNULIB_MDA_ACCESS=1 + REPLACE_IOCTL=0; - GL_GNULIB_MDA_CHDIR=1 - GL_GNULIB_MDA_CLOSE=1 + if test $HAVE_MSVC_INVALID_PARAMETER_HANDLER = 1; then + REPLACE_CLOSE=1 + fi - GL_GNULIB_MDA_DUP=1 - GL_GNULIB_MDA_DUP2=1 + if test $ac_cv_header_sys_socket_h != yes; then + ac_fn_c_check_header_compile "$LINENO" "winsock2.h" "ac_cv_header_winsock2_h" "$ac_includes_default" +if test "x$ac_cv_header_winsock2_h" = xyes +then : + printf "%s\n" "#define HAVE_WINSOCK2_H 1" >>confdefs.h +fi + fi + if test "$ac_cv_header_winsock2_h" = yes; then + HAVE_WINSOCK2_H=1 + UNISTD_H_HAVE_WINSOCK2_H=1 + SYS_IOCTL_H_HAVE_WINSOCK2_H=1 + else + HAVE_WINSOCK2_H=0 + fi - GL_GNULIB_MDA_EXECL=1 + if test $UNISTD_H_HAVE_WINSOCK2_H = 1; then + REPLACE_CLOSE=1 + fi - GL_GNULIB_MDA_EXECLE=1 - GL_GNULIB_MDA_EXECLP=1 + GL_GNULIB_ACCESS=0 - GL_GNULIB_MDA_EXECV=1 + GL_GNULIB_CHDIR=0 - GL_GNULIB_MDA_EXECVE=1 + GL_GNULIB_CHOWN=0 - GL_GNULIB_MDA_EXECVP=1 + GL_GNULIB_CLOSE=0 - GL_GNULIB_MDA_EXECVPE=1 + GL_GNULIB_COPY_FILE_RANGE=0 - GL_GNULIB_MDA_GETCWD=1 + GL_GNULIB_DUP=0 - GL_GNULIB_MDA_GETPID=1 + GL_GNULIB_DUP2=0 - GL_GNULIB_MDA_ISATTY=1 + GL_GNULIB_DUP3=0 - GL_GNULIB_MDA_LSEEK=1 + GL_GNULIB_ENVIRON=0 - GL_GNULIB_MDA_READ=1 + GL_GNULIB_EUIDACCESS=0 - GL_GNULIB_MDA_RMDIR=1 + GL_GNULIB_EXECL=0 - GL_GNULIB_MDA_SWAB=1 + GL_GNULIB_EXECLE=0 - GL_GNULIB_MDA_UNLINK=1 + GL_GNULIB_EXECLP=0 - GL_GNULIB_MDA_WRITE=1 + GL_GNULIB_EXECV=0 + GL_GNULIB_EXECVE=0 - HAVE_ISBLANK=1; + GL_GNULIB_EXECVP=0 - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the preprocessor supports include_next" >&5 -printf %s "checking whether the preprocessor supports include_next... " >&6; } -if test ${gl_cv_have_include_next+y} -then : - printf %s "(cached) " >&6 -else $as_nop - rm -rf conftestd1a conftestd1b conftestd2 - mkdir conftestd1a conftestd1b conftestd2 - cat < conftestd1a/conftest.h -#define DEFINED_IN_CONFTESTD1 -#include_next -#ifdef DEFINED_IN_CONFTESTD2 -int foo; -#else -#error "include_next doesn't work" -#endif -EOF - cat < conftestd1b/conftest.h -#define DEFINED_IN_CONFTESTD1 -#include -#include_next -#ifdef DEFINED_IN_CONFTESTD2 -int foo; -#else -#error "include_next doesn't work" -#endif -EOF - cat < conftestd2/conftest.h -#ifndef DEFINED_IN_CONFTESTD1 -#error "include_next test doesn't work" -#endif -#define DEFINED_IN_CONFTESTD2 -EOF - gl_save_CPPFLAGS="$CPPFLAGS" - CPPFLAGS="$gl_save_CPPFLAGS -Iconftestd1b -Iconftestd2" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - gl_cv_have_include_next=yes -else $as_nop - CPPFLAGS="$gl_save_CPPFLAGS -Iconftestd1a -Iconftestd2" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - gl_cv_have_include_next=buggy -else $as_nop - gl_cv_have_include_next=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - CPPFLAGS="$gl_save_CPPFLAGS" - rm -rf conftestd1a conftestd1b conftestd2 -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_have_include_next" >&5 -printf "%s\n" "$gl_cv_have_include_next" >&6; } - PRAGMA_SYSTEM_HEADER= - if test $gl_cv_have_include_next = yes; then - INCLUDE_NEXT=include_next - INCLUDE_NEXT_AS_FIRST_DIRECTIVE=include_next - if test -n "$GCC"; then - PRAGMA_SYSTEM_HEADER='#pragma GCC system_header' - fi - else - if test $gl_cv_have_include_next = buggy; then - INCLUDE_NEXT=include - INCLUDE_NEXT_AS_FIRST_DIRECTIVE=include_next - else - INCLUDE_NEXT=include - INCLUDE_NEXT_AS_FIRST_DIRECTIVE=include - fi - fi + GL_GNULIB_EXECVPE=0 + GL_GNULIB_FACCESSAT=0 - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether source code line length is unlimited" >&5 -printf %s "checking whether source code line length is unlimited... " >&6; } -if test ${gl_cv_source_line_length_unlimited+y} -then : - printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#ifdef __TANDEM -choke me -#endif -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "choke me" >/dev/null 2>&1 -then : - gl_cv_source_line_length_unlimited=no -else $as_nop - gl_cv_source_line_length_unlimited=yes -fi -rm -rf conftest* + GL_GNULIB_FCHDIR=0 -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_source_line_length_unlimited" >&5 -printf "%s\n" "$gl_cv_source_line_length_unlimited" >&6; } - if test $gl_cv_source_line_length_unlimited = no; then - PRAGMA_COLUMNS="#pragma COLUMNS 10000" - else - PRAGMA_COLUMNS= - fi + GL_GNULIB_FCHOWNAT=0 + GL_GNULIB_FDATASYNC=0 + GL_GNULIB_FSYNC=0 + GL_GNULIB_FTRUNCATE=0 - if test $gl_cv_have_include_next = yes; then - gl_cv_next_ctype_h='<'ctype.h'>' - else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 -printf %s "checking absolute name of ... " >&6; } -if test ${gl_cv_next_ctype_h+y} -then : - printf %s "(cached) " >&6 -else $as_nop + GL_GNULIB_GETCWD=0 - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF - case "$host_os" in - aix*) gl_absname_cpp="$ac_cpp -C" ;; - *) gl_absname_cpp="$ac_cpp" ;; - esac + GL_GNULIB_GETDOMAINNAME=0 - case "$host_os" in - mingw*) - gl_dirsep_regex='[/\\]' - ;; - *) - gl_dirsep_regex='\/' - ;; - esac - gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' - gl_header_literal_regex=`echo 'ctype.h' \ - | sed -e "$gl_make_literal_regex_sed"` - gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ - s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ - s|^/[^/]|//&| - p - q - }' - gl_cv_absolute_ctype_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | - sed -n "$gl_absolute_header_sed"` - gl_header=$gl_cv_absolute_ctype_h - gl_cv_next_ctype_h='"'$gl_header'"' + GL_GNULIB_GETDTABLESIZE=0 -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_ctype_h" >&5 -printf "%s\n" "$gl_cv_next_ctype_h" >&6; } - fi - NEXT_CTYPE_H=$gl_cv_next_ctype_h - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'ctype.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_ctype_h - fi - NEXT_AS_FIRST_DIRECTIVE_CTYPE_H=$gl_next_as_first_directive + GL_GNULIB_GETENTROPY=0 + GL_GNULIB_GETGROUPS=0 + GL_GNULIB_GETHOSTNAME=0 + GL_GNULIB_GETLOGIN=0 - GL_GNULIB_ISBLANK=0 + GL_GNULIB_GETLOGIN_R=0 -gl_mda_defines=' -#if defined _WIN32 && !defined __CYGWIN__ -#define access _access -#define chdir _chdir -#define chmod _chmod -#define close _close -#define creat _creat -#define dup _dup -#define dup2 _dup2 -#define ecvt _ecvt -#define execl _execl -#define execle _execle -#define execlp _execlp -#define execv _execv -#define execve _execve -#define execvp _execvp -#define execvpe _execvpe -#define fcloseall _fcloseall -#define fcvt _fcvt -#define fdopen _fdopen -#define fileno _fileno -#define gcvt _gcvt -#define getcwd _getcwd -#define getpid _getpid -#define getw _getw -#define isatty _isatty -#define j0 _j0 -#define j1 _j1 -#define jn _jn -#define lfind _lfind -#define lsearch _lsearch -#define lseek _lseek -#define memccpy _memccpy -#define mkdir _mkdir -#define mktemp _mktemp -#define open _open -#define putenv _putenv -#define putw _putw -#define read _read -#define rmdir _rmdir -#define strdup _strdup -#define swab _swab -#define tempnam _tempnam -#define tzset _tzset -#define umask _umask -#define unlink _unlink -#define utime _utime -#define wcsdup _wcsdup -#define write _write -#define y0 _y0 -#define y1 _y1 -#define yn _yn -#endif -' + GL_GNULIB_GETOPT_POSIX=0 + GL_GNULIB_GETPAGESIZE=0 + GL_GNULIB_GETPASS=0 - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if environ is properly declared" >&5 -printf %s "checking if environ is properly declared... " >&6; } -if test ${gt_cv_var_environ_declaration+y} -then : - printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#if HAVE_UNISTD_H - #include - #endif - /* mingw, BeOS, Haiku declare environ in , not in . */ - #include - typedef struct { int foo; } foo_t; - extern foo_t environ; -int -main (void) -{ -environ.foo = 1; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - gt_cv_var_environ_declaration=no -else $as_nop - gt_cv_var_environ_declaration=yes -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_var_environ_declaration" >&5 -printf "%s\n" "$gt_cv_var_environ_declaration" >&6; } - if test $gt_cv_var_environ_declaration = yes; then -printf "%s\n" "#define HAVE_ENVIRON_DECL 1" >>confdefs.h + GL_GNULIB_GETPASS_GNU=0 - fi - if test $gt_cv_var_environ_declaration != yes; then - HAVE_DECL_ENVIRON=0 - fi + GL_GNULIB_GETUSERSHELL=0 - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for complete errno.h" >&5 -printf %s "checking for complete errno.h... " >&6; } -if test ${gl_cv_header_errno_h_complete+y} -then : - printf %s "(cached) " >&6 -else $as_nop + GL_GNULIB_GROUP_MEMBER=0 - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#if !defined ETXTBSY -booboo -#endif -#if !defined ENOMSG -booboo -#endif -#if !defined EIDRM -booboo -#endif + + GL_GNULIB_ISATTY=0 + + + + GL_GNULIB_LCHOWN=0 + + + + GL_GNULIB_LINK=0 + + + + GL_GNULIB_LINKAT=0 + + + + GL_GNULIB_LSEEK=0 + + + + GL_GNULIB_PIPE=0 + + + + GL_GNULIB_PIPE2=0 + + + + GL_GNULIB_PREAD=0 + + + + GL_GNULIB_PWRITE=0 + + + + GL_GNULIB_READ=0 + + + + GL_GNULIB_READLINK=0 + + + + GL_GNULIB_READLINKAT=0 + + + + GL_GNULIB_RMDIR=0 + + + + GL_GNULIB_SETHOSTNAME=0 + + + + GL_GNULIB_SLEEP=0 + + + + GL_GNULIB_SYMLINK=0 + + + + GL_GNULIB_SYMLINKAT=0 + + + + GL_GNULIB_TRUNCATE=0 + + + + GL_GNULIB_TTYNAME_R=0 + + + + GL_GNULIB_UNISTD_H_GETOPT=0 + + + + GL_GNULIB_UNISTD_H_NONBLOCKING=0 + + + + GL_GNULIB_UNISTD_H_SIGPIPE=0 + + + + GL_GNULIB_UNLINK=0 + + + + GL_GNULIB_UNLINKAT=0 + + + + GL_GNULIB_USLEEP=0 + + + + GL_GNULIB_WRITE=0 + + + + GL_GNULIB_MDA_ACCESS=1 + + + + GL_GNULIB_MDA_CHDIR=1 + + + + GL_GNULIB_MDA_CLOSE=1 + + + + GL_GNULIB_MDA_DUP=1 + + + + GL_GNULIB_MDA_DUP2=1 + + + + GL_GNULIB_MDA_EXECL=1 + + + + GL_GNULIB_MDA_EXECLE=1 + + + + GL_GNULIB_MDA_EXECLP=1 + + + + GL_GNULIB_MDA_EXECV=1 + + + + GL_GNULIB_MDA_EXECVE=1 + + + + GL_GNULIB_MDA_EXECVP=1 + + + + GL_GNULIB_MDA_EXECVPE=1 + + + + GL_GNULIB_MDA_GETCWD=1 + + + + GL_GNULIB_MDA_GETPID=1 + + + + GL_GNULIB_MDA_ISATTY=1 + + + + GL_GNULIB_MDA_LSEEK=1 + + + + GL_GNULIB_MDA_READ=1 + + + + GL_GNULIB_MDA_RMDIR=1 + + + + GL_GNULIB_MDA_SWAB=1 + + + + GL_GNULIB_MDA_UNLINK=1 + + + + GL_GNULIB_MDA_WRITE=1 + + + + + HAVE_ISBLANK=1; + + + + + + + + + + + + + if test $gl_cv_have_include_next = yes; then + gl_cv_next_ctype_h='<'ctype.h'>' + else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 +printf %s "checking absolute name of ... " >&6; } +if test ${gl_cv_next_ctype_h+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + + + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +_ACEOF + case "$host_os" in + aix*) gl_absname_cpp="$ac_cpp -C" ;; + *) gl_absname_cpp="$ac_cpp" ;; + esac + + case "$host_os" in + mingw*) + gl_dirsep_regex='[/\\]' + ;; + *) + gl_dirsep_regex='\/' + ;; + esac + gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' + gl_header_literal_regex=`echo 'ctype.h' \ + | sed -e "$gl_make_literal_regex_sed"` + gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ + s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ + s|^/[^/]|//&| + p + q + }' + + gl_cv_absolute_ctype_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | + sed -n "$gl_absolute_header_sed"` + + gl_header=$gl_cv_absolute_ctype_h + gl_cv_next_ctype_h='"'$gl_header'"' + + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_ctype_h" >&5 +printf "%s\n" "$gl_cv_next_ctype_h" >&6; } + fi + NEXT_CTYPE_H=$gl_cv_next_ctype_h + + if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' + gl_next_as_first_directive='<'ctype.h'>' + else + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' + gl_next_as_first_directive=$gl_cv_next_ctype_h + fi + NEXT_AS_FIRST_DIRECTIVE_CTYPE_H=$gl_next_as_first_directive + + + + + + + + + + + + GL_GNULIB_ISBLANK=0 + + + +gl_mda_defines=' +#if defined _WIN32 && !defined __CYGWIN__ +#define access _access +#define chdir _chdir +#define chmod _chmod +#define close _close +#define creat _creat +#define dup _dup +#define dup2 _dup2 +#define ecvt _ecvt +#define execl _execl +#define execle _execle +#define execlp _execlp +#define execv _execv +#define execve _execve +#define execvp _execvp +#define execvpe _execvpe +#define fcloseall _fcloseall +#define fcvt _fcvt +#define fdopen _fdopen +#define fileno _fileno +#define gcvt _gcvt +#define getcwd _getcwd +#define getpid _getpid +#define getw _getw +#define isatty _isatty +#define j0 _j0 +#define j1 _j1 +#define jn _jn +#define lfind _lfind +#define lsearch _lsearch +#define lseek _lseek +#define memccpy _memccpy +#define mkdir _mkdir +#define mktemp _mktemp +#define open _open +#define putenv _putenv +#define putw _putw +#define read _read +#define rmdir _rmdir +#define strdup _strdup +#define swab _swab +#define tempnam _tempnam +#define tzset _tzset +#define umask _umask +#define unlink _unlink +#define utime _utime +#define wcsdup _wcsdup +#define write _write +#define y0 _y0 +#define y1 _y1 +#define yn _yn +#endif +' + + + + + + + + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if environ is properly declared" >&5 +printf %s "checking if environ is properly declared... " >&6; } +if test ${gt_cv_var_environ_declaration+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#if HAVE_UNISTD_H + #include + #endif + /* mingw, BeOS, Haiku declare environ in , not in . */ + #include + + typedef struct { int foo; } foo_t; + extern foo_t environ; +int +main (void) +{ +environ.foo = 1; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO" +then : + gt_cv_var_environ_declaration=no +else case e in #( + e) gt_cv_var_environ_declaration=yes ;; +esac +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_var_environ_declaration" >&5 +printf "%s\n" "$gt_cv_var_environ_declaration" >&6; } + if test $gt_cv_var_environ_declaration = yes; then + +printf "%s\n" "#define HAVE_ENVIRON_DECL 1" >>confdefs.h + + fi + + + if test $gt_cv_var_environ_declaration != yes; then + HAVE_DECL_ENVIRON=0 + fi + + + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for complete errno.h" >&5 +printf %s "checking for complete errno.h... " >&6; } +if test ${gl_cv_header_errno_h_complete+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#include +#if !defined ETXTBSY +booboo +#endif +#if !defined ENOMSG +booboo +#endif +#if !defined EIDRM +booboo +#endif #if !defined ENOLINK booboo #endif @@ -10014,20 +11736,22 @@ booboo _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "booboo" >/dev/null 2>&1 + $EGREP_TRADITIONAL "booboo" >/dev/null 2>&1 then : gl_cv_header_errno_h_complete=no -else $as_nop - gl_cv_header_errno_h_complete=yes +else case e in #( + e) gl_cv_header_errno_h_complete=yes ;; +esac fi rm -rf conftest* - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_errno_h_complete" >&5 printf "%s\n" "$gl_cv_header_errno_h_complete" >&6; } if test $gl_cv_header_errno_h_complete = yes; then - ERRNO_H='' + GL_GENERATE_ERRNO_H=false else @@ -10045,8 +11769,8 @@ printf %s "checking absolute name of ... " >&6; } if test ${gl_cv_next_errno_h+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -10079,10 +11803,11 @@ _ACEOF gl_cv_absolute_errno_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | sed -n "$gl_absolute_header_sed"` - gl_header=$gl_cv_absolute_errno_h - gl_cv_next_errno_h='"'$gl_header'"' - + gl_header=$gl_cv_absolute_errno_h + gl_cv_next_errno_h='"'$gl_header'"' + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_errno_h" >&5 printf "%s\n" "$gl_cv_next_errno_h" >&6; } @@ -10101,26 +11826,17 @@ printf "%s\n" "$gl_cv_next_errno_h" >&6; } - ERRNO_H='errno.h' + GL_GENERATE_ERRNO_H=true fi - if test -n "$ERRNO_H"; then - GL_GENERATE_ERRNO_H_TRUE= - GL_GENERATE_ERRNO_H_FALSE='#' -else - GL_GENERATE_ERRNO_H_TRUE='#' - GL_GENERATE_ERRNO_H_FALSE= -fi - - - if test -n "$ERRNO_H"; then + if $GL_GENERATE_ERRNO_H; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for EMULTIHOP value" >&5 printf %s "checking for EMULTIHOP value... " >&6; } if test ${gl_cv_header_errno_h_EMULTIHOP+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -10131,11 +11847,12 @@ yes _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "yes" >/dev/null 2>&1 + $EGREP_TRADITIONAL "yes" >/dev/null 2>&1 then : gl_cv_header_errno_h_EMULTIHOP=yes -else $as_nop - gl_cv_header_errno_h_EMULTIHOP=no +else case e in #( + e) gl_cv_header_errno_h_EMULTIHOP=no ;; +esac fi rm -rf conftest* @@ -10151,7 +11868,7 @@ yes _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "yes" >/dev/null 2>&1 + $EGREP_TRADITIONAL "yes" >/dev/null 2>&1 then : gl_cv_header_errno_h_EMULTIHOP=hidden fi @@ -10171,7 +11888,8 @@ fi fi fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_errno_h_EMULTIHOP" >&5 printf "%s\n" "$gl_cv_header_errno_h_EMULTIHOP" >&6; } @@ -10188,14 +11906,14 @@ printf "%s\n" "$gl_cv_header_errno_h_EMULTIHOP" >&6; } fi - if test -n "$ERRNO_H"; then + if $GL_GENERATE_ERRNO_H; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ENOLINK value" >&5 printf %s "checking for ENOLINK value... " >&6; } if test ${gl_cv_header_errno_h_ENOLINK+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -10206,11 +11924,12 @@ yes _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "yes" >/dev/null 2>&1 + $EGREP_TRADITIONAL "yes" >/dev/null 2>&1 then : gl_cv_header_errno_h_ENOLINK=yes -else $as_nop - gl_cv_header_errno_h_ENOLINK=no +else case e in #( + e) gl_cv_header_errno_h_ENOLINK=no ;; +esac fi rm -rf conftest* @@ -10226,7 +11945,7 @@ yes _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "yes" >/dev/null 2>&1 + $EGREP_TRADITIONAL "yes" >/dev/null 2>&1 then : gl_cv_header_errno_h_ENOLINK=hidden fi @@ -10246,7 +11965,8 @@ fi fi fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_errno_h_ENOLINK" >&5 printf "%s\n" "$gl_cv_header_errno_h_ENOLINK" >&6; } @@ -10263,14 +11983,14 @@ printf "%s\n" "$gl_cv_header_errno_h_ENOLINK" >&6; } fi - if test -n "$ERRNO_H"; then + if $GL_GENERATE_ERRNO_H; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for EOVERFLOW value" >&5 printf %s "checking for EOVERFLOW value... " >&6; } if test ${gl_cv_header_errno_h_EOVERFLOW+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -10281,11 +12001,12 @@ yes _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "yes" >/dev/null 2>&1 + $EGREP_TRADITIONAL "yes" >/dev/null 2>&1 then : gl_cv_header_errno_h_EOVERFLOW=yes -else $as_nop - gl_cv_header_errno_h_EOVERFLOW=no +else case e in #( + e) gl_cv_header_errno_h_EOVERFLOW=no ;; +esac fi rm -rf conftest* @@ -10301,7 +12022,7 @@ yes _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "yes" >/dev/null 2>&1 + $EGREP_TRADITIONAL "yes" >/dev/null 2>&1 then : gl_cv_header_errno_h_EOVERFLOW=hidden fi @@ -10321,7 +12042,8 @@ fi fi fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_errno_h_EOVERFLOW" >&5 printf "%s\n" "$gl_cv_header_errno_h_EOVERFLOW" >&6; } @@ -10338,112 +12060,356 @@ printf "%s\n" "$gl_cv_header_errno_h_EOVERFLOW" >&6; } fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC options needed to detect all undeclared functions" >&5 -printf %s "checking for $CC options needed to detect all undeclared functions... " >&6; } -if test ${ac_cv_c_undeclared_builtin_options+y} -then : - printf %s "(cached) " >&6 -else $as_nop - ac_save_CFLAGS=$CFLAGS - ac_cv_c_undeclared_builtin_options='cannot detect' - for ac_arg in '' -fno-builtin; do - CFLAGS="$ac_save_CFLAGS $ac_arg" - # This test program should *not* compile successfully. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -int -main (void) -{ -(void) strchr; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : -else $as_nop - # This test program should compile successfully. - # No library function is consistently available on - # freestanding implementations, so test against a dummy - # declaration. Include always-available headers on the - # off chance that they somehow elicit warnings. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include -#include -#include -extern void ac_decl (int, char *); -int -main (void) -{ -(void) ac_decl (0, (char *) 0); - (void) ac_decl; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - if test x"$ac_arg" = x -then : - ac_cv_c_undeclared_builtin_options='none needed' -else $as_nop - ac_cv_c_undeclared_builtin_options=$ac_arg -fi - break -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - done - CFLAGS=$ac_save_CFLAGS -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_undeclared_builtin_options" >&5 -printf "%s\n" "$ac_cv_c_undeclared_builtin_options" >&6; } - case $ac_cv_c_undeclared_builtin_options in #( - 'cannot detect') : - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "cannot make $CC report undeclared builtins -See \`config.log' for more details" "$LINENO" 5; } ;; #( - 'none needed') : - ac_c_undeclared_builtin_options='' ;; #( - *) : - ac_c_undeclared_builtin_options=$ac_cv_c_undeclared_builtin_options ;; -esac -ac_fn_check_decl "$LINENO" "strerror_r" "ac_cv_have_decl_strerror_r" "$ac_includes_default" "$ac_c_undeclared_builtin_options" "CFLAGS" -if test "x$ac_cv_have_decl_strerror_r" = xyes -then : - ac_have_decl=1 -else $as_nop - ac_have_decl=0 -fi -printf "%s\n" "#define HAVE_DECL_STRERROR_R $ac_have_decl" >>confdefs.h -if test $ac_cv_have_decl_strerror_r = yes; then - # For backward compatibility's sake, define HAVE_STRERROR_R. - # (We used to run AC_CHECK_FUNCS_ONCE for strerror_r, as well - # as AC_CHECK_DECLS_ONCE.) -printf "%s\n" "#define HAVE_STRERROR_R 1" >>confdefs.h -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether strerror_r returns char *" >&5 -printf %s "checking whether strerror_r returns char *... " >&6; } -if test ${ac_cv_func_strerror_r_char_p+y} + + if test $gl_cv_have_include_next = yes; then + gl_cv_next_error_h='<'error.h'>' + else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 +printf %s "checking absolute name of ... " >&6; } +if test ${gl_cv_next_error_h+y} then : printf %s "(cached) " >&6 -else $as_nop +else case e in #( + e) + if test $ac_cv_header_error_h = yes; then + + + + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +_ACEOF + case "$host_os" in + aix*) gl_absname_cpp="$ac_cpp -C" ;; + *) gl_absname_cpp="$ac_cpp" ;; + esac + + case "$host_os" in + mingw*) + gl_dirsep_regex='[/\\]' + ;; + *) + gl_dirsep_regex='\/' + ;; + esac + gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' + gl_header_literal_regex=`echo 'error.h' \ + | sed -e "$gl_make_literal_regex_sed"` + gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ + s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ + s|^/[^/]|//&| + p + q + }' + + gl_cv_absolute_error_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | + sed -n "$gl_absolute_header_sed"` + + gl_header=$gl_cv_absolute_error_h + gl_cv_next_error_h='"'$gl_header'"' + else + gl_cv_next_error_h='<'error.h'>' + fi + + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_error_h" >&5 +printf "%s\n" "$gl_cv_next_error_h" >&6; } + fi + NEXT_ERROR_H=$gl_cv_next_error_h + + if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' + gl_next_as_first_directive='<'error.h'>' + else + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' + gl_next_as_first_directive=$gl_cv_next_error_h + fi + NEXT_AS_FIRST_DIRECTIVE_ERROR_H=$gl_next_as_first_directive + + + + + if test $ac_cv_header_error_h = yes; then + HAVE_ERROR_H=1 + else + HAVE_ERROR_H=0 + fi + + + REPLACE_ERROR=0 + + + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for error" >&5 +printf %s "checking for error... " >&6; } +if test ${gl_cv_onwards_func_error+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + exec 9>&6 6>/dev/null + + case "$host_os" in + + linux*-android*) + ac_fn_check_decl "$LINENO" "error" "ac_cv_have_decl_error" "#include +" "$ac_c_undeclared_builtin_options" "CFLAGS" +if test "x$ac_cv_have_decl_error" = xyes +then : + +fi + if test $ac_cv_have_decl_error = yes; then + ac_fn_c_check_func "$LINENO" "error" "ac_cv_func_error" +if test "x$ac_cv_func_error" = xyes +then : + +fi + + if test $ac_cv_func_error = yes; then + gl_cv_onwards_func_error=yes + else + gl_cv_onwards_func_error='future OS version' + fi + else + gl_cv_onwards_func_error='future OS version' + fi + ;; + + + *) + ac_fn_c_check_func "$LINENO" "error" "ac_cv_func_error" +if test "x$ac_cv_func_error" = xyes +then : + +fi + + gl_cv_onwards_func_error=$ac_cv_func_error + ;; + + esac + + exec 6>&9 9>&- + + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_onwards_func_error" >&5 +printf "%s\n" "$gl_cv_onwards_func_error" >&6; } + + case "$gl_cv_onwards_func_error" in + future*) ac_cv_func_error=no ;; + *) ac_cv_func_error=$gl_cv_onwards_func_error ;; + esac + if test $ac_cv_func_error = yes; then + +printf "%s\n" "#define HAVE_ERROR 1" >>confdefs.h + + fi + + + if test $ac_cv_func_error = yes; then + HAVE_ERROR=1 + else + HAVE_ERROR=0 + case "$gl_cv_onwards_func_error" in + future*) REPLACE_ERROR=1 ;; + esac + fi + + ac_fn_check_decl "$LINENO" "error_at_line" "ac_cv_have_decl_error_at_line" "#include +" "$ac_c_undeclared_builtin_options" "CFLAGS" +if test "x$ac_cv_have_decl_error_at_line" = xyes +then : + +fi + if test $ac_cv_have_decl_error_at_line = yes; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for error_at_line" >&5 +printf %s "checking for error_at_line... " >&6; } +if test ${ac_cv_lib_error_at_line+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +int +main (void) +{ +error_at_line (0, 0, "", 0, "an error occurred"); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO" +then : + ac_cv_lib_error_at_line=yes +else case e in #( + e) ac_cv_lib_error_at_line=no ;; +esac +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam \ + conftest$ac_exeext conftest.$ac_ext ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_error_at_line" >&5 +printf "%s\n" "$ac_cv_lib_error_at_line" >&6; } + else + ac_cv_lib_error_at_line=no + fi + if test $ac_cv_lib_error_at_line = yes; then + HAVE_ERROR_AT_LINE=1 + else + HAVE_ERROR_AT_LINE=0 + fi + REPLACE_ERROR_AT_LINE=0 + + if test $ac_cv_func_error = yes && test $ac_cv_lib_error_at_line = yes; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for working error function" >&5 +printf %s "checking for working error function... " >&6; } +if test ${gl_cv_func_working_error+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) if test $cross_compiling != yes; then + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + + #include + static void print_no_progname (void) {} + +int +main (void) +{ + + error_print_progname = print_no_progname; + error (0, 0, "foo"); + + ; + return 0; +} + +_ACEOF +if ac_fn_c_try_link "$LINENO" +then : + rm -f conftest.out + if test -s conftest$ac_exeext \ + && ./conftest$ac_exeext 2> conftest.out; then + if grep ' ' conftest.out >/dev/null; then + gl_cv_func_working_error=no + else + gl_cv_func_working_error=yes + fi + else + gl_cv_func_working_error=no + fi + rm -f conftest.out + +else case e in #( + e) gl_cv_func_working_error=no ;; +esac +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam \ + conftest$ac_exeext conftest.$ac_ext + else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + + #include + +int +main (void) +{ + + error (0, 0, "foo"); + + ; + return 0; +} + +_ACEOF +if ac_fn_c_try_compile "$LINENO" +then : + case "$host_os" in + # Guess yes on glibc systems. + *-gnu* | gnu*) gl_cv_func_working_error="guessing yes" ;; + # Guess no on Android. + linux*-android*) gl_cv_func_working_error="guessing no" ;; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_working_error="$gl_cross_guess_normal" ;; + esac + +else case e in #( + e) gl_cv_func_working_error=no ;; +esac +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext + fi + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_working_error" >&5 +printf "%s\n" "$gl_cv_func_working_error" >&6; } + case "$gl_cv_func_working_error" in + *no) + REPLACE_ERROR=1 + REPLACE_ERROR_AT_LINE=1 + ;; + esac + fi + + if test $HAVE_ERROR = 0 || test $REPLACE_ERROR = 1 \ + || test $HAVE_ERROR_AT_LINE = 0 || test $REPLACE_ERROR_AT_LINE = 1; then + GL_GENERATE_ERROR_H=true + else + GL_GENERATE_ERROR_H=false + fi + + + + + + +ac_fn_check_decl "$LINENO" "strerror_r" "ac_cv_have_decl_strerror_r" "$ac_includes_default" "$ac_c_undeclared_builtin_options" "CFLAGS" +if test "x$ac_cv_have_decl_strerror_r" = xyes +then : + ac_have_decl=1 +else case e in #( + e) ac_have_decl=0 ;; +esac +fi +printf "%s\n" "#define HAVE_DECL_STRERROR_R $ac_have_decl" >>confdefs.h + + +if test $ac_cv_have_decl_strerror_r = yes; then + # For backward compatibility's sake, define HAVE_STRERROR_R. + # (We used to run AC_CHECK_FUNCS_ONCE for strerror_r, as well + # as AC_CHECK_DECLS_ONCE.) + +printf "%s\n" "#define HAVE_STRERROR_R 1" >>confdefs.h + +fi + +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether strerror_r returns char *" >&5 +printf %s "checking whether strerror_r returns char *... " >&6; } +if test ${ac_cv_func_strerror_r_char_p+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) ac_cv_func_strerror_r_char_p=no if test $ac_cv_have_decl_strerror_r = yes; then cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -10469,7 +12435,8 @@ fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_strerror_r_char_p" >&5 printf "%s\n" "$ac_cv_func_strerror_r_char_p" >&6; } @@ -10483,6 +12450,38 @@ fi XGETTEXT_EXTRA_OPTIONS= + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether ctype.h defines __header_inline" >&5 +printf %s "checking whether ctype.h defines __header_inline... " >&6; } +if test ${gl_cv_have___header_inline+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + #ifndef __header_inline + #error " does not define __header_inline" + #endif + +_ACEOF +if ac_fn_c_try_cpp "$LINENO" +then : + gl_cv_have___header_inline=yes +else case e in #( + e) gl_cv_have___header_inline=no ;; +esac +fi +rm -f conftest.err conftest.i conftest.$ac_ext ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_have___header_inline" >&5 +printf "%s\n" "$gl_cv_have___header_inline" >&6; } + if test "$gl_cv_have___header_inline" = yes; then + +printf "%s\n" "#define HAVE___HEADER_INLINE 1" >>confdefs.h + + fi + @@ -10535,8 +12534,8 @@ printf %s "checking for working fcntl.h... " >&6; } if test ${gl_cv_header_working_fcntl_h+y} then : printf %s "(cached) " >&6 -else $as_nop - if test "$cross_compiling" = yes +else case e in #( + e) if test "$cross_compiling" = yes then : case "$host_os" in # Guess 'no' on native Windows. @@ -10544,8 +12543,8 @@ then : *) gl_cv_header_working_fcntl_h=cross-compiling ;; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include @@ -10647,19 +12646,22 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_header_working_fcntl_h=yes -else $as_nop - case $? in #( +else case e in #( + e) case $? in #( 4) gl_cv_header_working_fcntl_h='no (bad O_NOFOLLOW)';; #( 64) gl_cv_header_working_fcntl_h='no (bad O_NOATIME)';; #( 68) gl_cv_header_working_fcntl_h='no (bad O_NOATIME, O_NOFOLLOW)';; #( *) gl_cv_header_working_fcntl_h='no';; - esac + esac ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_working_fcntl_h" >&5 printf "%s\n" "$gl_cv_header_working_fcntl_h" >&6; } @@ -10686,8 +12688,8 @@ printf "%s\n" "#define HAVE_WORKING_O_NOFOLLOW $ac_val" >>confdefs.h if test "x$ac_cv_type_pid_t" = xyes then : -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #if defined _WIN64 && !defined __CYGWIN__ @@ -10706,14 +12708,16 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : ac_pid_type='int' -else $as_nop - ac_pid_type='__int64' +else case e in #( + e) ac_pid_type='__int64' ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext printf "%s\n" "#define pid_t $ac_pid_type" >>confdefs.h - + ;; +esac fi @@ -10721,10 +12725,11 @@ ac_fn_c_check_type "$LINENO" "mode_t" "ac_cv_type_mode_t" "$ac_includes_default" if test "x$ac_cv_type_mode_t" = xyes then : -else $as_nop - +else case e in #( + e) printf "%s\n" "#define mode_t int" >>confdefs.h - + ;; +esac fi @@ -10746,8 +12751,8 @@ printf %s "checking absolute name of ... " >&6; } if test ${gl_cv_next_fcntl_h+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -10780,10 +12785,11 @@ _ACEOF gl_cv_absolute_fcntl_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | sed -n "$gl_absolute_header_sed"` - gl_header=$gl_cv_absolute_fcntl_h - gl_cv_next_fcntl_h='"'$gl_header'"' - + gl_header=$gl_cv_absolute_fcntl_h + gl_cv_next_fcntl_h='"'$gl_header'"' + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_fcntl_h" >&5 printf "%s\n" "$gl_cv_next_fcntl_h" >&6; } @@ -10814,6 +12820,73 @@ printf "%s\n" "$gl_cv_next_fcntl_h" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for mempcpy" >&5 +printf %s "checking for mempcpy... " >&6; } +if test ${gl_cv_onwards_func_mempcpy+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + exec 9>&6 6>/dev/null + + case "$host_os" in + + linux*-android*) + ac_fn_check_decl "$LINENO" "mempcpy" "ac_cv_have_decl_mempcpy" "#include +" "$ac_c_undeclared_builtin_options" "CFLAGS" +if test "x$ac_cv_have_decl_mempcpy" = xyes +then : + +fi + if test $ac_cv_have_decl_mempcpy = yes; then + ac_fn_c_check_func "$LINENO" "mempcpy" "ac_cv_func_mempcpy" +if test "x$ac_cv_func_mempcpy" = xyes +then : + +fi + + if test $ac_cv_func_mempcpy = yes; then + gl_cv_onwards_func_mempcpy=yes + else + gl_cv_onwards_func_mempcpy='future OS version' + fi + else + gl_cv_onwards_func_mempcpy='future OS version' + fi + ;; + + + *) + ac_fn_c_check_func "$LINENO" "mempcpy" "ac_cv_func_mempcpy" +if test "x$ac_cv_func_mempcpy" = xyes +then : + +fi + + gl_cv_onwards_func_mempcpy=$ac_cv_func_mempcpy + ;; + + esac + + exec 6>&9 9>&- + + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_onwards_func_mempcpy" >&5 +printf "%s\n" "$gl_cv_onwards_func_mempcpy" >&6; } + + case "$gl_cv_onwards_func_mempcpy" in + future*) ac_cv_func_mempcpy=no ;; + *) ac_cv_func_mempcpy=$gl_cv_onwards_func_mempcpy ;; + esac + if test $ac_cv_func_mempcpy = yes; then + +printf "%s\n" "#define HAVE_MEMPCPY 1" >>confdefs.h + + fi + + HAVE_FNMATCH=1; @@ -10841,8 +12914,8 @@ printf %s "checking absolute name of ... " >&6; } if test ${gl_cv_next_fnmatch_h+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) if test $ac_cv_header_fnmatch_h = yes; then @@ -10878,13 +12951,14 @@ _ACEOF gl_cv_absolute_fnmatch_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | sed -n "$gl_absolute_header_sed"` - gl_header=$gl_cv_absolute_fnmatch_h - gl_cv_next_fnmatch_h='"'$gl_header'"' + gl_header=$gl_cv_absolute_fnmatch_h + gl_cv_next_fnmatch_h='"'$gl_header'"' else gl_cv_next_fnmatch_h='<'fnmatch.h'>' fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_fnmatch_h" >&5 printf "%s\n" "$gl_cv_next_fnmatch_h" >&6; } @@ -10913,25 +12987,16 @@ printf "%s\n" "$gl_cv_next_fnmatch_h" >&6; } fi - FNMATCH_H='' + GL_GENERATE_FNMATCH_H=false if false; then - FNMATCH_H=fnmatch.h + GL_GENERATE_FNMATCH_H=true else if test $ac_cv_header_fnmatch_h != yes; then - FNMATCH_H=fnmatch.h + GL_GENERATE_FNMATCH_H=true fi fi - if test -n "$FNMATCH_H"; then - GL_GENERATE_FNMATCH_H_TRUE= - GL_GENERATE_FNMATCH_H_FALSE='#' -else - GL_GENERATE_FNMATCH_H_TRUE='#' - GL_GENERATE_FNMATCH_H_FALSE= -fi - - @@ -10950,8 +13015,8 @@ printf %s "checking for mbstate_t... " >&6; } if test ${ac_cv_type_mbstate_t+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $ac_includes_default #include @@ -10966,10 +13031,12 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : ac_cv_type_mbstate_t=yes -else $as_nop - ac_cv_type_mbstate_t=no +else case e in #( + e) ac_cv_type_mbstate_t=no ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_mbstate_t" >&5 printf "%s\n" "$ac_cv_type_mbstate_t" >&6; } @@ -10991,7 +13058,9 @@ printf "%s\n" "#define mbstate_t int" >>confdefs.h HAVE_DECL_FTELLO=1; HAVE_DECL_GETDELIM=1; HAVE_DECL_GETLINE=1; + HAVE_DECL_GETW=1; HAVE_DECL_OBSTACK_PRINTF=1; + HAVE_DECL_PUTW=1; HAVE_DECL_SNPRINTF=1; HAVE_DECL_VSNPRINTF=1; HAVE_DPRINTF=1; @@ -11007,6 +13076,7 @@ printf "%s\n" "#define mbstate_t int" >>confdefs.h REPLACE_FDOPEN=0; REPLACE_FFLUSH=0; REPLACE_FOPEN=0; + REPLACE_FOPEN_FOR_FOPEN_GNU=0; REPLACE_FPRINTF=0; REPLACE_FPURGE=0; REPLACE_FREOPEN=0; @@ -11037,6 +13107,292 @@ printf "%s\n" "#define mbstate_t int" >>confdefs.h + + case "$host_os" in + mingw* | pw*) + REPLACE_FOPEN=1 + gl_cv_func_fopen_slash="guessing no" + ;; + *) + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether fopen recognizes a trailing slash" >&5 +printf %s "checking whether fopen recognizes a trailing slash... " >&6; } +if test ${gl_cv_func_fopen_slash+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + if test "$cross_compiling" = yes +then : + + case "$host_os" in + aix* | hpux* | solaris2.[0-9] | solaris2.[0-9].*) + gl_cv_func_fopen_slash="guessing no" ;; + *) + gl_cv_func_fopen_slash="guessing yes" ;; + esac + +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#include +#include +int main () +{ + FILE *fp = fopen ("conftest.sl/", "w"); + int result = (fp != NULL); + if (fp != NULL) + fclose (fp); + return result; +} +_ACEOF +if ac_fn_c_try_run "$LINENO" +then : + gl_cv_func_fopen_slash=yes +else case e in #( + e) gl_cv_func_fopen_slash=no ;; +esac +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac +fi + + rm -f conftest.sl + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_fopen_slash" >&5 +printf "%s\n" "$gl_cv_func_fopen_slash" >&6; } + ;; + esac + case "$gl_cv_func_fopen_slash" in + *no) + +printf "%s\n" "#define FOPEN_TRAILING_SLASH_BUG 1" >>confdefs.h + + REPLACE_FOPEN=1 + ;; + esac + + + + + + + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether fflush works on input streams" >&5 +printf %s "checking whether fflush works on input streams... " >&6; } +if test ${gl_cv_func_fflush_stdin+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) echo hello world > conftest.txt + if test "$cross_compiling" = yes +then : + case "$host_os" in + # Guess no on native Windows. + mingw*) gl_cv_func_fflush_stdin="guessing no" ;; + *) gl_cv_func_fflush_stdin=cross ;; + esac + +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#include +#if HAVE_UNISTD_H +# include +#else /* on Windows with MSVC */ +# include +#endif + + +$gl_mda_defines + +int +main (void) +{ +FILE *f = fopen ("conftest.txt", "r"); + char buffer[10]; + int fd; + int c; + if (f == NULL) + return 1; + fd = fileno (f); + if (fd < 0 || fread (buffer, 1, 5, f) != 5) + { fclose (f); return 2; } + /* For deterministic results, ensure f read a bigger buffer. */ + if (lseek (fd, 0, SEEK_CUR) == 5) + { fclose (f); return 3; } + /* POSIX requires fflush-fseek to set file offset of fd. This fails + on BSD systems and on mingw. */ + if (fflush (f) != 0 || fseek (f, 0, SEEK_CUR) != 0) + { fclose (f); return 4; } + if (lseek (fd, 0, SEEK_CUR) != 5) + { fclose (f); return 5; } + /* Verify behaviour of fflush after ungetc. See + */ + /* Verify behaviour of fflush after a backup ungetc. This fails on + mingw. */ + c = fgetc (f); + ungetc (c, f); + fflush (f); + if (fgetc (f) != c) + { fclose (f); return 6; } + /* Verify behaviour of fflush after a non-backup ungetc. This fails + on glibc 2.8 and on BSD systems. */ + c = fgetc (f); + ungetc ('@', f); + fflush (f); + if (fgetc (f) != c) + { fclose (f); return 7; } + fclose (f); + return 0; + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO" +then : + gl_cv_func_fflush_stdin=yes +else case e in #( + e) gl_cv_func_fflush_stdin=no ;; +esac +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac +fi + + rm conftest.txt + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_fflush_stdin" >&5 +printf "%s\n" "$gl_cv_func_fflush_stdin" >&6; } + case "$gl_cv_func_fflush_stdin" in + *yes) gl_func_fflush_stdin=1 ;; + *no) gl_func_fflush_stdin=0 ;; + *) gl_func_fflush_stdin='(-1)' ;; + esac + +printf "%s\n" "#define FUNC_FFLUSH_STDIN $gl_func_fflush_stdin" >>confdefs.h + + + case "$gl_cv_func_fflush_stdin" in + *yes) ;; + *) REPLACE_FCLOSE=1 ;; + esac + + + if test $REPLACE_CLOSE = 1; then + REPLACE_FCLOSE=1 + fi + + case "$host_os" in + openedition) REPLACE_FCLOSE=1 ;; + esac + + if test $REPLACE_FCLOSE = 0; then + + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether fclose works on input streams" >&5 +printf %s "checking whether fclose works on input streams... " >&6; } +if test ${gl_cv_func_fclose_stdin+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) echo hello world > conftest.txt + if test "$cross_compiling" = yes +then : + case "$host_os" in + # Guess no on glibc systems. + *-gnu* | gnu*) gl_cv_func_fclose_stdin="guessing no" ;; + # Guess yes on musl systems. + *-musl* | midipix*) gl_cv_func_fclose_stdin="guessing yes" ;; + # Guess no on native Windows. + mingw*) gl_cv_func_fclose_stdin="guessing no" ;; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_fclose_stdin="$gl_cross_guess_normal" ;; + esac + +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + #include + #if HAVE_UNISTD_H + # include + #else /* on Windows with MSVC */ + # include + #endif + + +$gl_mda_defines + +int +main (void) +{ +int fd; + int fd2; + FILE *fp; + fd = open ("conftest.txt", O_RDONLY); + if (fd < 0) + return 1; + if (lseek (fd, 1, SEEK_SET) != 1) + return 2; + fd2 = dup (fd); + if (fd2 < 0) + return 3; + fp = fdopen (fd2, "r"); + if (fp == NULL) + return 4; + if (fgetc (fp) != 'e') + { fclose (fp); return 5; } + /* This fclose() call should reposition the underlying file + descriptor. */ + if (fclose (fp) != 0) + return 6; + if (lseek (fd2, 0, SEEK_CUR) != -1) /* should fail with EBADF */ + return 7; + /* Verify the file position. */ + if (lseek (fd, 0, SEEK_CUR) != 2) + return 8; + return 0; + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO" +then : + gl_cv_func_fclose_stdin=yes +else case e in #( + e) gl_cv_func_fclose_stdin=no ;; +esac +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac +fi + + rm conftest.txt + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_fclose_stdin" >&5 +printf "%s\n" "$gl_cv_func_fclose_stdin" >&6; } + + case "$gl_cv_func_fclose_stdin" in + *yes) ;; + *) REPLACE_FCLOSE=1 ;; + esac + fi + + + GL_GNULIB_DPRINTF=0 @@ -11065,6 +13421,10 @@ printf "%s\n" "#define mbstate_t int" >>confdefs.h + GL_GNULIB_FOPEN_GNU=0 + + + GL_GNULIB_FPRINTF=0 @@ -11286,6 +13646,7 @@ printf "%s\n" "#define mbstate_t int" >>confdefs.h HAVE_MKNOD=1; HAVE_MKNODAT=1; HAVE_UTIMENSAT=1; + REPLACE_CHMOD=0; REPLACE_FCHMODAT=0; REPLACE_FSTAT=0; REPLACE_FSTATAT=0; @@ -11304,8 +13665,8 @@ printf %s "checking whether stat file-mode macros are broken... " >&6; } if test ${ac_cv_header_stat_broken+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include @@ -11330,10 +13691,12 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : ac_cv_header_stat_broken=no -else $as_nop - ac_cv_header_stat_broken=yes +else case e in #( + e) ac_cv_header_stat_broken=yes ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stat_broken" >&5 printf "%s\n" "$ac_cv_header_stat_broken" >&6; } @@ -11352,8 +13715,8 @@ printf %s "checking for 64-bit off_t... " >&6; } if test ${gl_cv_type_off_t_64+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int verify_off_t_size[sizeof (off_t) >= 8 ? 1 : -1]; @@ -11369,11 +13732,13 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_type_off_t_64=yes -else $as_nop - gl_cv_type_off_t_64=no +else case e in #( + e) gl_cv_type_off_t_64=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_type_off_t_64" >&5 printf "%s\n" "$gl_cv_type_off_t_64" >&6; } @@ -11387,8 +13752,8 @@ printf %s "checking for 64-bit st_size... " >&6; } if test ${gl_cv_member_st_size_64+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include struct stat buf; @@ -11405,11 +13770,13 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_member_st_size_64=yes -else $as_nop - gl_cv_member_st_size_64=no +else case e in #( + e) gl_cv_member_st_size_64=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_member_st_size_64" >&5 printf "%s\n" "$gl_cv_member_st_size_64" >&6; } @@ -11447,8 +13814,8 @@ printf %s "checking absolute name of ... " >&6; } if test ${gl_cv_next_sys_stat_h+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) if test $ac_cv_header_sys_stat_h = yes; then @@ -11484,13 +13851,14 @@ _ACEOF gl_cv_absolute_sys_stat_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | sed -n "$gl_absolute_header_sed"` - gl_header=$gl_cv_absolute_sys_stat_h - gl_cv_next_sys_stat_h='"'$gl_header'"' + gl_header=$gl_cv_absolute_sys_stat_h + gl_cv_next_sys_stat_h='"'$gl_header'"' else gl_cv_next_sys_stat_h='<'sys/stat.h'>' fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_sys_stat_h" >&5 printf "%s\n" "$gl_cv_next_sys_stat_h" >&6; } @@ -11528,10 +13896,11 @@ printf "%s\n" "$gl_cv_next_sys_stat_h" >&6; } if test "x$ac_cv_type_nlink_t" = xyes then : -else $as_nop - +else case e in #( + e) printf "%s\n" "#define nlink_t int" >>confdefs.h - + ;; +esac fi @@ -11561,6 +13930,10 @@ fi + GL_GNULIB_CHMOD=0 + + + GL_GNULIB_FCHMODAT=0 @@ -11642,8 +14015,9 @@ ac_fn_check_decl "$LINENO" "getdtablesize" "ac_cv_have_decl_getdtablesize" "$ac_ if test "x$ac_cv_have_decl_getdtablesize" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_GETDTABLESIZE $ac_have_decl" >>confdefs.h @@ -11669,8 +14043,8 @@ printf %s "checking absolute name of ... " >&6; } if test ${gl_cv_next_getopt_h+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) if test $ac_cv_header_getopt_h = yes; then @@ -11706,13 +14080,14 @@ _ACEOF gl_cv_absolute_getopt_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | sed -n "$gl_absolute_header_sed"` - gl_header=$gl_cv_absolute_getopt_h - gl_cv_next_getopt_h='"'$gl_header'"' + gl_header=$gl_cv_absolute_getopt_h + gl_cv_next_getopt_h='"'$gl_header'"' else gl_cv_next_getopt_h='<'getopt.h'>' fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_getopt_h" >&5 printf "%s\n" "$gl_cv_next_getopt_h" >&6; } @@ -11748,8 +14123,9 @@ if test "x$ac_cv_header_getopt_h" = xyes then : printf "%s\n" "#define HAVE_GETOPT_H 1" >>confdefs.h -else $as_nop - gl_replace_getopt=yes +else case e in #( + e) gl_replace_getopt=yes ;; +esac fi done @@ -11764,8 +14140,9 @@ if test "x$ac_cv_func_getopt_long_only" = xyes then : printf "%s\n" "#define HAVE_GETOPT_LONG_ONLY 1" >>confdefs.h -else $as_nop - gl_replace_getopt=yes +else case e in #( + e) gl_replace_getopt=yes ;; +esac fi done @@ -11777,17 +14154,17 @@ printf %s "checking whether getopt is POSIX compatible... " >&6; } if test ${gl_cv_func_getopt_posix+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) if test $cross_compiling = no; then if test "$cross_compiling" = yes then : - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 +printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error $? "cannot run test program while cross compiling -See \`config.log' for more details" "$LINENO" 5; } -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +See 'config.log' for more details" "$LINENO" 5; } +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -11819,22 +14196,24 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_getopt_posix=maybe -else $as_nop - gl_cv_func_getopt_posix=no +else case e in #( + e) gl_cv_func_getopt_posix=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi if test $gl_cv_func_getopt_posix = maybe; then if test "$cross_compiling" = yes then : - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 +printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error $? "cannot run test program while cross compiling -See \`config.log' for more details" "$LINENO" 5; } -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +See 'config.log' for more details" "$LINENO" 5; } +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -11880,23 +14259,25 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_getopt_posix=maybe -else $as_nop - gl_cv_func_getopt_posix=no +else case e in #( + e) gl_cv_func_getopt_posix=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi fi if test $gl_cv_func_getopt_posix = maybe; then if test "$cross_compiling" = yes then : - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 +printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error $? "cannot run test program while cross compiling -See \`config.log' for more details" "$LINENO" 5; } -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +See 'config.log' for more details" "$LINENO" 5; } +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -11924,11 +14305,13 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_getopt_posix=yes -else $as_nop - gl_cv_func_getopt_posix=no +else case e in #( + e) gl_cv_func_getopt_posix=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi fi @@ -11938,7 +14321,8 @@ fi *) gl_cv_func_getopt_posix="guessing yes";; esac fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_getopt_posix" >&5 printf "%s\n" "$gl_cv_func_getopt_posix" >&6; } @@ -11953,8 +14337,8 @@ printf %s "checking for working GNU getopt function... " >&6; } if test ${gl_cv_func_getopt_gnu+y} then : printf %s "(cached) " >&6 -else $as_nop - # Even with POSIXLY_CORRECT, the GNU extension of leading '-' in the +else case e in #( + e) # Even with POSIXLY_CORRECT, the GNU extension of leading '-' in the # optstring is necessary for programs like m4 that have POSIX-mandated # semantics for supporting options interspersed with files. # Also, since getopt_long is a GNU extension, we require optind=0. @@ -11972,8 +14356,8 @@ else $as_nop then : gl_cv_func_getopt_gnu="$gl_cross_guess_normal" -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include @@ -12175,11 +14559,13 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_getopt_gnu=yes -else $as_nop - gl_cv_func_getopt_gnu=no +else case e in #( + e) gl_cv_func_getopt_gnu=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi case $gl_had_POSIXLY_CORRECT in @@ -12187,7 +14573,8 @@ fi yes) { POSIXLY_CORRECT=; unset POSIXLY_CORRECT;}; POSIXLY_CORRECT=1 ;; *) { POSIXLY_CORRECT=; unset POSIXLY_CORRECT;} ;; esac - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_getopt_gnu" >&5 printf "%s\n" "$gl_cv_func_getopt_gnu" >&6; } @@ -12199,16 +14586,16 @@ printf %s "checking for working GNU getopt_long function... " >&6; } if test ${gl_cv_func_getopt_long_gnu+y} then : printf %s "(cached) " >&6 -else $as_nop - if test "$cross_compiling" = yes +else case e in #( + e) if test "$cross_compiling" = yes then : case "$host_os" in openbsd*) gl_cv_func_getopt_long_gnu="guessing no";; *) gl_cv_func_getopt_long_gnu="guessing yes";; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include @@ -12244,14 +14631,17 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_getopt_long_gnu=yes -else $as_nop - gl_cv_func_getopt_long_gnu=no +else case e in #( + e) gl_cv_func_getopt_long_gnu=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_getopt_long_gnu" >&5 printf "%s\n" "$gl_cv_func_getopt_long_gnu" >&6; } @@ -12265,13 +14655,11 @@ printf "%s\n" "$gl_cv_func_getopt_long_gnu" >&6; } - HAVE_GETRANDOM=1; REPLACE_GETRANDOM=0; - GL_GNULIB_GETRANDOM=0 @@ -12279,6 +14667,66 @@ printf "%s\n" "$gl_cv_func_getopt_long_gnu" >&6; } : + + + + ac_fn_check_decl "$LINENO" "timespec_get" "ac_cv_have_decl_timespec_get" "#include +" "$ac_c_undeclared_builtin_options" "CFLAGS" +if test "x$ac_cv_have_decl_timespec_get" = xyes +then : + +fi + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for timespec_get" >&5 +printf %s "checking for timespec_get... " >&6; } +if test ${gl_cv_onwards_func_timespec_get+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) if test $ac_cv_have_decl_timespec_get = yes; then + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + struct timespec ts; + +int +main (void) +{ +return timespec_get (&ts, 0); + ; + return 0; +} + +_ACEOF +if ac_fn_c_try_link "$LINENO" +then : + gl_cv_onwards_func_timespec_get=yes +else case e in #( + e) gl_cv_onwards_func_timespec_get=no ;; +esac +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam \ + conftest$ac_exeext conftest.$ac_ext + else + gl_cv_onwards_func_timespec_get=no + fi + case "$host_os" in + linux*-android*) + if test $gl_cv_onwards_func_timespec_get = no; then + gl_cv_onwards_func_timespec_get='future OS version' + fi + ;; + esac + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_onwards_func_timespec_get" >&5 +printf "%s\n" "$gl_cv_onwards_func_timespec_get" >&6; } + case "$gl_cv_onwards_func_timespec_get" in + future*) gl_cv_func_timespec_get=no ;; + *) gl_cv_func_timespec_get=$gl_cv_onwards_func_timespec_get ;; + esac + + HAVE_GETTIMEOFDAY=1; HAVE_STRUCT_TIMEVAL=1; HAVE_SYS_TIME_H=1; @@ -12307,8 +14755,8 @@ printf %s "checking absolute name of ... " >&6; } if test ${gl_cv_next_sys_time_h+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) if test $ac_cv_header_sys_time_h = yes; then @@ -12344,13 +14792,14 @@ _ACEOF gl_cv_absolute_sys_time_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | sed -n "$gl_absolute_header_sed"` - gl_header=$gl_cv_absolute_sys_time_h - gl_cv_next_sys_time_h='"'$gl_header'"' + gl_header=$gl_cv_absolute_sys_time_h + gl_cv_next_sys_time_h='"'$gl_header'"' else gl_cv_next_sys_time_h='<'sys/time.h'>' fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_sys_time_h" >&5 printf "%s\n" "$gl_cv_next_sys_time_h" >&6; } @@ -12401,8 +14850,8 @@ printf %s "checking for struct timeval... " >&6; } if test ${gl_cv_sys_struct_timeval+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #if HAVE_SYS_TIME_H #include @@ -12423,11 +14872,13 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_sys_struct_timeval=yes -else $as_nop - gl_cv_sys_struct_timeval=no +else case e in #( + e) gl_cv_sys_struct_timeval=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_sys_struct_timeval" >&5 printf "%s\n" "$gl_cv_sys_struct_timeval" >&6; } @@ -12439,8 +14890,8 @@ printf %s "checking for wide-enough struct timeval.tv_sec member... " >&6; } if test ${gl_cv_sys_struct_timeval_tv_sec+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #if HAVE_SYS_TIME_H #include @@ -12465,11 +14916,13 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_sys_struct_timeval_tv_sec=yes -else $as_nop - gl_cv_sys_struct_timeval_tv_sec=no +else case e in #( + e) gl_cv_sys_struct_timeval_tv_sec=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_sys_struct_timeval_tv_sec" >&5 printf "%s\n" "$gl_cv_sys_struct_timeval_tv_sec" >&6; } @@ -12484,6 +14937,7 @@ printf "%s\n" "$gl_cv_sys_struct_timeval_tv_sec" >&6; } + GL_GNULIB_GETTIMEOFDAY=0 @@ -12502,8 +14956,9 @@ printf "%s\n" "$gl_cv_sys_struct_timeval_tv_sec" >&6; } if test "x$ac_cv_header_pthread_h" = xyes then : gl_have_pthread_h=yes -else $as_nop - gl_have_pthread_h=no +else case e in #( + e) gl_have_pthread_h=no ;; +esac fi if test "$gl_have_pthread_h" = yes; then @@ -12546,8 +15001,8 @@ rm -f core conftest.err conftest.$ac_objext conftest.beam \ LIBS=$save_LIBS test $gl_pthread_api = yes && break done - echo "$as_me:12549: gl_pthread_api=$gl_pthread_api" >&5 - echo "$as_me:12550: LIBPTHREAD=$LIBPTHREAD" >&5 + echo "$as_me:15004: gl_pthread_api=$gl_pthread_api" >&5 + echo "$as_me:15005: LIBPTHREAD=$LIBPTHREAD" >&5 gl_pthread_in_glibc=no # On Linux with glibc >= 2.34, libc contains the fully functional @@ -12565,7 +15020,7 @@ rm -f core conftest.err conftest.$ac_objext conftest.beam \ _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "Lucky user" >/dev/null 2>&1 + $EGREP_TRADITIONAL "Lucky user" >/dev/null 2>&1 then : gl_pthread_in_glibc=yes fi @@ -12573,7 +15028,7 @@ rm -rf conftest* ;; esac - echo "$as_me:12576: gl_pthread_in_glibc=$gl_pthread_in_glibc" >&5 + echo "$as_me:15031: gl_pthread_in_glibc=$gl_pthread_in_glibc" >&5 # Test for libpthread by looking for pthread_kill. (Not pthread_self, # since it is defined as a macro on OSF/1.) @@ -12585,16 +15040,22 @@ printf %s "checking for pthread_kill in -lpthread... " >&6; } if test ${ac_cv_lib_pthread_pthread_kill+y} then : printf %s "(cached) " >&6 -else $as_nop - ac_check_lib_save_LIBS=$LIBS +else case e in #( + e) ac_check_lib_save_LIBS=$LIBS LIBS="-lpthread $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -char pthread_kill (); + builtin and then its argument prototype would still apply. + The 'extern "C"' is for builds by C++ compilers; + although this is not generally supported in C code supporting it here + has little cost and some practical benefit (sr 110532). */ +#ifdef __cplusplus +extern "C" +#endif +char pthread_kill (void); int main (void) { @@ -12606,12 +15067,14 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : ac_cv_lib_pthread_pthread_kill=yes -else $as_nop - ac_cv_lib_pthread_pthread_kill=no +else case e in #( + e) ac_cv_lib_pthread_pthread_kill=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS +LIBS=$ac_check_lib_save_LIBS ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthread_pthread_kill" >&5 printf "%s\n" "$ac_cv_lib_pthread_pthread_kill" >&6; } @@ -12628,7 +15091,7 @@ then : # On Solaris 10 or newer, this test is no longer needed, because # libc contains the fully functional pthread functions. case "$host_os" in - solaris | solaris2.1-9 | solaris2.1-9.* | hpux*) + solaris | solaris2.[1-9] | solaris2.[1-9].* | hpux*) printf "%s\n" "#define PTHREAD_IN_USE_DETECTION_HARD 1" >>confdefs.h @@ -12644,16 +15107,22 @@ printf %s "checking for pthread_kill in -lpthread... " >&6; } if test ${ac_cv_lib_pthread_pthread_kill+y} then : printf %s "(cached) " >&6 -else $as_nop - ac_check_lib_save_LIBS=$LIBS +else case e in #( + e) ac_check_lib_save_LIBS=$LIBS LIBS="-lpthread $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -char pthread_kill (); + builtin and then its argument prototype would still apply. + The 'extern "C"' is for builds by C++ compilers; + although this is not generally supported in C code supporting it here + has little cost and some practical benefit (sr 110532). */ +#ifdef __cplusplus +extern "C" +#endif +char pthread_kill (void); int main (void) { @@ -12665,12 +15134,14 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : ac_cv_lib_pthread_pthread_kill=yes -else $as_nop - ac_cv_lib_pthread_pthread_kill=no +else case e in #( + e) ac_cv_lib_pthread_pthread_kill=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS +LIBS=$ac_check_lib_save_LIBS ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthread_pthread_kill" >&5 printf "%s\n" "$ac_cv_lib_pthread_pthread_kill" >&6; } @@ -12688,16 +15159,22 @@ printf %s "checking for pthread_kill in -lc_r... " >&6; } if test ${ac_cv_lib_c_r_pthread_kill+y} then : printf %s "(cached) " >&6 -else $as_nop - ac_check_lib_save_LIBS=$LIBS +else case e in #( + e) ac_check_lib_save_LIBS=$LIBS LIBS="-lc_r $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -char pthread_kill (); + builtin and then its argument prototype would still apply. + The 'extern "C"' is for builds by C++ compilers; + although this is not generally supported in C code supporting it here + has little cost and some practical benefit (sr 110532). */ +#ifdef __cplusplus +extern "C" +#endif +char pthread_kill (void); int main (void) { @@ -12709,12 +15186,14 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : ac_cv_lib_c_r_pthread_kill=yes -else $as_nop - ac_cv_lib_c_r_pthread_kill=no +else case e in #( + e) ac_cv_lib_c_r_pthread_kill=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS +LIBS=$ac_check_lib_save_LIBS ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_c_r_pthread_kill" >&5 printf "%s\n" "$ac_cv_lib_c_r_pthread_kill" >&6; } @@ -12727,7 +15206,7 @@ fi fi fi - echo "$as_me:12730: LIBPMULTITHREAD=$LIBPMULTITHREAD" >&5 + echo "$as_me:15209: LIBPMULTITHREAD=$LIBPMULTITHREAD" >&5 fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether POSIX threads API is available" >&5 printf %s "checking whether POSIX threads API is available... " >&6; } @@ -12754,24 +15233,30 @@ sched_yield (); _ACEOF if ac_fn_c_try_link "$LINENO" then : - LIB_SCHED_YIELD= + SCHED_YIELD_LIB= -else $as_nop - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for sched_yield in -lrt" >&5 +else case e in #( + e) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for sched_yield in -lrt" >&5 printf %s "checking for sched_yield in -lrt... " >&6; } if test ${ac_cv_lib_rt_sched_yield+y} then : printf %s "(cached) " >&6 -else $as_nop - ac_check_lib_save_LIBS=$LIBS +else case e in #( + e) ac_check_lib_save_LIBS=$LIBS LIBS="-lrt $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -char sched_yield (); + builtin and then its argument prototype would still apply. + The 'extern "C"' is for builds by C++ compilers; + although this is not generally supported in C code supporting it here + has little cost and some practical benefit (sr 110532). */ +#ifdef __cplusplus +extern "C" +#endif +char sched_yield (void); int main (void) { @@ -12783,34 +15268,42 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : ac_cv_lib_rt_sched_yield=yes -else $as_nop - ac_cv_lib_rt_sched_yield=no +else case e in #( + e) ac_cv_lib_rt_sched_yield=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS +LIBS=$ac_check_lib_save_LIBS ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_rt_sched_yield" >&5 printf "%s\n" "$ac_cv_lib_rt_sched_yield" >&6; } if test "x$ac_cv_lib_rt_sched_yield" = xyes then : - LIB_SCHED_YIELD=-lrt -else $as_nop - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for sched_yield in -lposix4" >&5 + SCHED_YIELD_LIB=-lrt +else case e in #( + e) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for sched_yield in -lposix4" >&5 printf %s "checking for sched_yield in -lposix4... " >&6; } if test ${ac_cv_lib_posix4_sched_yield+y} then : printf %s "(cached) " >&6 -else $as_nop - ac_check_lib_save_LIBS=$LIBS +else case e in #( + e) ac_check_lib_save_LIBS=$LIBS LIBS="-lposix4 $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -char sched_yield (); + builtin and then its argument prototype would still apply. + The 'extern "C"' is for builds by C++ compilers; + although this is not generally supported in C code supporting it here + has little cost and some practical benefit (sr 110532). */ +#ifdef __cplusplus +extern "C" +#endif +char sched_yield (void); int main (void) { @@ -12822,27 +15315,33 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : ac_cv_lib_posix4_sched_yield=yes -else $as_nop - ac_cv_lib_posix4_sched_yield=no +else case e in #( + e) ac_cv_lib_posix4_sched_yield=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS +LIBS=$ac_check_lib_save_LIBS ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_posix4_sched_yield" >&5 printf "%s\n" "$ac_cv_lib_posix4_sched_yield" >&6; } if test "x$ac_cv_lib_posix4_sched_yield" = xyes then : - LIB_SCHED_YIELD=-lposix4 + SCHED_YIELD_LIB=-lposix4 fi - + ;; +esac fi - + ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext + LIB_SCHED_YIELD="$SCHED_YIELD_LIB" + gl_pthreadlib_body_done=done fi @@ -12859,11 +15358,35 @@ printf %s "checking whether setlocale (LC_ALL, NULL) is multithread-safe... " >& if test ${gl_cv_func_setlocale_null_all_mtsafe+y} then : printf %s "(cached) " >&6 -else $as_nop - case "$host_os" in - # Guess no on musl libc, macOS, FreeBSD, NetBSD, OpenBSD, AIX, Haiku, Cygwin. - *-musl* | darwin* | freebsd* | midnightbsd* | netbsd* | openbsd* | aix* | haiku* | cygwin*) +else case e in #( + e) case "$host_os" in + # Guess no on musl libc, macOS, FreeBSD, NetBSD, OpenBSD, AIX, Haiku. + *-musl* | midipix* | darwin* | freebsd* | midnightbsd* | netbsd* | openbsd* | aix* | haiku*) gl_cv_func_setlocale_null_all_mtsafe=no ;; + # Guess no on Cygwin < 3.4.6. + cygwin*) + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#if defined __CYGWIN__ + #include + #if CYGWIN_VERSION_DLL_COMBINED >= CYGWIN_VERSION_DLL_MAKE_COMBINED (3004, 6) + Lucky user + #endif +#endif + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP_TRADITIONAL "Lucky user" >/dev/null 2>&1 +then : + gl_cv_func_setlocale_null_all_mtsafe=yes +else case e in #( + e) gl_cv_func_setlocale_null_all_mtsafe=no ;; +esac +fi +rm -rf conftest* + + ;; # Guess yes on glibc, HP-UX, IRIX, Solaris, native Windows. *-gnu* | gnu* | hpux* | irix* | solaris* | mingw*) gl_cv_func_setlocale_null_all_mtsafe=yes ;; @@ -12871,7 +15394,8 @@ else $as_nop *) gl_cv_func_setlocale_null_all_mtsafe="$gl_cross_guess_normal" ;; esac - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_setlocale_null_all_mtsafe" >&5 printf "%s\n" "$gl_cv_func_setlocale_null_all_mtsafe" >&6; } @@ -12896,19 +15420,20 @@ printf %s "checking whether setlocale (category, NULL) is multithread-safe... " if test ${gl_cv_func_setlocale_null_one_mtsafe+y} then : printf %s "(cached) " >&6 -else $as_nop - case "$host_os" in +else case e in #( + e) case "$host_os" in # Guess no on OpenBSD, AIX. openbsd* | aix*) gl_cv_func_setlocale_null_one_mtsafe=no ;; # Guess yes on glibc, musl libc, macOS, FreeBSD, NetBSD, HP-UX, IRIX, Solaris, Haiku, Cygwin, native Windows. - *-gnu* | gnu* | *-musl* | darwin* | freebsd* | midnightbsd* | netbsd* | hpux* | irix* | solaris* | haiku* | cygwin* | mingw*) + *-gnu* | gnu* | *-musl* | midipix* | darwin* | freebsd* | midnightbsd* | netbsd* | hpux* | irix* | solaris* | haiku* | cygwin* | mingw*) gl_cv_func_setlocale_null_one_mtsafe=yes ;; # If we don't know, obey --enable-cross-guesses. *) gl_cv_func_setlocale_null_one_mtsafe="$gl_cross_guess_normal" ;; esac - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_setlocale_null_one_mtsafe" >&5 printf "%s\n" "$gl_cv_func_setlocale_null_one_mtsafe" >&6; } @@ -12930,7 +15455,7 @@ printf "%s\n" "#define SETLOCALE_NULL_ONE_MTSAFE $SETLOCALE_NULL_ONE_MTSAFE" >>c if test $SETLOCALE_NULL_ALL_MTSAFE = 0 || test $SETLOCALE_NULL_ONE_MTSAFE = 0; then case "$host_os" in - mingw*) LIB_SETLOCALE_NULL= ;; + mingw*) SETLOCALE_NULL_LIB= ;; *) @@ -12939,9 +15464,14 @@ printf %s "checking whether imported symbols can be declared weak... " >&6; } if test ${gl_cv_have_weak+y} then : printf %s "(cached) " >&6 -else $as_nop - gl_cv_have_weak=no - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) case "$host_os" in + cygwin* | mingw*) + gl_cv_have_weak="guessing no" + ;; + *) + gl_cv_have_weak=no + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ extern void xyzzy (); #pragma weak xyzzy @@ -12959,28 +15489,29 @@ then : fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext - if test $gl_cv_have_weak = maybe; then - if test "$cross_compiling" = yes + if test $gl_cv_have_weak = maybe; then + if test "$cross_compiling" = yes then : - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifdef __ELF__ - Extensible Linking Format - #endif + Extensible Linking Format + #endif _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "Extensible Linking Format" >/dev/null 2>&1 + $EGREP_TRADITIONAL "Extensible Linking Format" >/dev/null 2>&1 then : gl_cv_have_weak="guessing yes" -else $as_nop - gl_cv_have_weak="guessing no" +else case e in #( + e) gl_cv_have_weak="guessing no" ;; +esac fi rm -rf conftest* -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -12993,14 +15524,18 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_have_weak=yes -else $as_nop - gl_cv_have_weak=no +else case e in #( + e) gl_cv_have_weak=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - fi + fi + ;; + esac case " $LDFLAGS " in *" -static "*) gl_cv_have_weak=no ;; esac @@ -13025,7 +15560,8 @@ EOF esac ;; esac - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_have_weak" >&5 printf "%s\n" "$gl_cv_have_weak" >&6; } @@ -13038,15 +15574,17 @@ printf "%s\n" "#define HAVE_WEAK_SYMBOLS 1" >>confdefs.h esac case "$gl_cv_have_weak" in - *yes) LIB_SETLOCALE_NULL= ;; - *) LIB_SETLOCALE_NULL="$LIBPTHREAD" ;; + *yes) SETLOCALE_NULL_LIB= ;; + *) SETLOCALE_NULL_LIB="$LIBPTHREAD" ;; esac ;; esac else - LIB_SETLOCALE_NULL= + SETLOCALE_NULL_LIB= fi + LIB_SETLOCALE_NULL="$SETLOCALE_NULL_LIB" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -13058,7 +15596,7 @@ MicrosoftCompiler _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "MicrosoftCompiler" >/dev/null 2>&1 + $EGREP_TRADITIONAL "MicrosoftCompiler" >/dev/null 2>&1 then : rm -f conftest* echo 'int dummy;' > conftest.c @@ -13077,10 +15615,11 @@ then : fi rm -f conftest* -else $as_nop - gl_asmext='s' +else case e in #( + e) gl_asmext='s' gl_c_asm_opt='-S' - + ;; +esac fi rm -rf conftest* @@ -13093,8 +15632,8 @@ printf %s "checking host CPU and C ABI... " >&6; } if test ${gl_cv_host_cpu_c_abi+y} then : printf %s "(cached) " >&6 -else $as_nop - case "$host_cpu" in +else case e in #( + e) case "$host_cpu" in i[34567]86 ) gl_cv_host_cpu_c_abi=i386 @@ -13132,12 +15671,14 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_host_cpu_c_abi=x86_64-x32 -else $as_nop - gl_cv_host_cpu_c_abi=x86_64 +else case e in #( + e) gl_cv_host_cpu_c_abi=x86_64 ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext -else $as_nop - gl_cv_host_cpu_c_abi=i386 +else case e in #( + e) gl_cv_host_cpu_c_abi=i386 ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; @@ -13176,12 +15717,13 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_host_cpu_c_abi=arm64-ilp32 -else $as_nop - gl_cv_host_cpu_c_abi=arm64 +else case e in #( + e) gl_cv_host_cpu_c_abi=arm64 ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext -else $as_nop - # Don't distinguish little-endian and big-endian arm, since they +else case e in #( + e) # Don't distinguish little-endian and big-endian arm, since they # don't require different machine code for simple operations and # since the user can distinguish them through the preprocessor # defines __ARMEL__ vs. __ARMEB__. @@ -13206,7 +15748,8 @@ else $as_nop gl_cv_host_cpu_c_abi=arm fi rm -f conftest* - + ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; @@ -13226,8 +15769,9 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_host_cpu_c_abi=hppa64 -else $as_nop - gl_cv_host_cpu_c_abi=hppa +else case e in #( + e) gl_cv_host_cpu_c_abi=hppa ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; @@ -13247,8 +15791,9 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_host_cpu_c_abi=ia64-ilp32 -else $as_nop - gl_cv_host_cpu_c_abi=ia64 +else case e in #( + e) gl_cv_host_cpu_c_abi=ia64 ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; @@ -13268,8 +15813,8 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_host_cpu_c_abi=mips64 -else $as_nop - # In the n32 ABI, _ABIN32 is defined, _ABIO32 is not defined (but +else case e in #( + e) # In the n32 ABI, _ABIN32 is defined, _ABIO32 is not defined (but # may later get defined by ), and _MIPS_SIM == _ABIN32. # In the 32 ABI, _ABIO32 is defined, _ABIN32 is not defined (but # may later get defined by ), and _MIPS_SIM == _ABIO32. @@ -13285,10 +15830,12 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_host_cpu_c_abi=mipsn32 -else $as_nop - gl_cv_host_cpu_c_abi=mips +else case e in #( + e) gl_cv_host_cpu_c_abi=mips ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; @@ -13325,13 +15872,15 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_host_cpu_c_abi=powerpc64-elfv2 -else $as_nop - gl_cv_host_cpu_c_abi=powerpc64 +else case e in #( + e) gl_cv_host_cpu_c_abi=powerpc64 ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext -else $as_nop - gl_cv_host_cpu_c_abi=powerpc +else case e in #( + e) gl_cv_host_cpu_c_abi=powerpc ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; @@ -13354,8 +15903,9 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : cpu=riscv64 -else $as_nop - cpu=riscv32 +else case e in #( + e) cpu=riscv32 ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext # There are 6 ABIs: ilp32, ilp32f, ilp32d, lp64, lp64f, lp64d. @@ -13372,8 +15922,9 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : main_abi=lp64 -else $as_nop - main_abi=ilp32 +else case e in #( + e) main_abi=ilp32 ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext # Float ABIs: @@ -13395,8 +15946,8 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : float_abi=d -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #if defined __riscv_float_abi_single int ok; @@ -13408,11 +15959,13 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : float_abi=f -else $as_nop - float_abi='' +else case e in #( + e) float_abi='' ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - + ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext gl_cv_host_cpu_c_abi="${cpu}-${main_abi}${float_abi}" @@ -13433,8 +15986,9 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_host_cpu_c_abi=s390x -else $as_nop - gl_cv_host_cpu_c_abi=s390 +else case e in #( + e) gl_cv_host_cpu_c_abi=s390 ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; @@ -13454,8 +16008,9 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_host_cpu_c_abi=sparc64 -else $as_nop - gl_cv_host_cpu_c_abi=sparc +else case e in #( + e) gl_cv_host_cpu_c_abi=sparc ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; @@ -13464,7 +16019,8 @@ rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext gl_cv_host_cpu_c_abi="$host_cpu" ;; esac - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_host_cpu_c_abi" >&5 printf "%s\n" "$gl_cv_host_cpu_c_abi" >&6; } @@ -13490,723 +16046,62 @@ EOF - if test "X$prefix" = "XNONE"; then - acl_final_prefix="$ac_default_prefix" - else - acl_final_prefix="$prefix" - fi - if test "X$exec_prefix" = "XNONE"; then - acl_final_exec_prefix='${prefix}' - else - acl_final_exec_prefix="$exec_prefix" - fi - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - eval acl_final_exec_prefix=\"$acl_final_exec_prefix\" - prefix="$acl_save_prefix" - - - -# Check whether --with-gnu-ld was given. -if test ${with_gnu_ld+y} -then : - withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes -else $as_nop - with_gnu_ld=no -fi - -# Prepare PATH_SEPARATOR. -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - # Determine PATH_SEPARATOR by trying to find /bin/sh in a PATH which - # contains only /bin. Note that ksh looks also at the FPATH variable, - # so we have to set that as well for the test. - PATH_SEPARATOR=: - (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ - && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ - || PATH_SEPARATOR=';' - } -fi - -if test -n "$LD"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ld" >&5 -printf %s "checking for ld... " >&6; } -elif test "$GCC" = yes; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5 -printf %s "checking for ld used by $CC... " >&6; } -elif test "$with_gnu_ld" = yes; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5 -printf %s "checking for GNU ld... " >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5 -printf %s "checking for non-GNU ld... " >&6; } -fi -if test -n "$LD"; then - # Let the user override the test with a path. - : -else - if test ${acl_cv_path_LD+y} -then : - printf %s "(cached) " >&6 -else $as_nop - - acl_cv_path_LD= # Final result of this test - ac_prog=ld # Program to search in $PATH - if test "$GCC" = yes; then - # Check if gcc -print-prog-name=ld gives a path. - case $host in - *-*-mingw*) - # gcc leaves a trailing carriage return which upsets mingw - acl_output=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; - *) - acl_output=`($CC -print-prog-name=ld) 2>&5` ;; - esac - case $acl_output in - # Accept absolute paths. - [\\/]* | ?:[\\/]*) - re_direlt='/[^/][^/]*/\.\./' - # Canonicalize the pathname of ld - acl_output=`echo "$acl_output" | sed 's%\\\\%/%g'` - while echo "$acl_output" | grep "$re_direlt" > /dev/null 2>&1; do - acl_output=`echo $acl_output | sed "s%$re_direlt%/%"` - done - # Got the pathname. No search in PATH is needed. - acl_cv_path_LD="$acl_output" - ac_prog= - ;; - "") - # If it fails, then pretend we aren't using GCC. - ;; - *) - # If it is relative, then search for the first ld in PATH. - with_gnu_ld=unknown - ;; - esac - fi - if test -n "$ac_prog"; then - # Search for $ac_prog in $PATH. - acl_save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for ac_dir in $PATH; do - IFS="$acl_save_ifs" - test -z "$ac_dir" && ac_dir=. - if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then - acl_cv_path_LD="$ac_dir/$ac_prog" - # Check to see if the program is GNU ld. I'd rather use --version, - # but apparently some variants of GNU ld only accept -v. - # Break only if it was the GNU/non-GNU ld that we prefer. - case `"$acl_cv_path_LD" -v 2>&1 conftest.$ac_ext -/* end confdefs.h. */ -#if defined __powerpc64__ || defined __LP64__ - int ok; - #else - error fail - #endif -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - # The compiler produces 64-bit code. Add option '-b64' so that the - # linker groks 64-bit object files. - case "$acl_cv_path_LD " in - *" -b64 "*) ;; - *) acl_cv_path_LD="$acl_cv_path_LD -b64" ;; - esac -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - ;; - sparc64-*-netbsd*) - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#if defined __sparcv9 || defined __arch64__ - int ok; - #else - error fail - #endif -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : -else $as_nop - # The compiler produces 32-bit code. Add option '-m elf32_sparc' - # so that the linker groks 32-bit object files. - case "$acl_cv_path_LD " in - *" -m elf32_sparc "*) ;; - *) acl_cv_path_LD="$acl_cv_path_LD -m elf32_sparc" ;; - esac -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - ;; - esac -fi - LD="$acl_cv_path_LD" -fi -if test -n "$LD"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $LD" >&5 -printf "%s\n" "$LD" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5 -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5 -printf %s "checking if the linker ($LD) is GNU ld... " >&6; } -if test ${acl_cv_prog_gnu_ld+y} -then : - printf %s "(cached) " >&6 -else $as_nop - # I'd rather use --version here, but apparently some GNU lds only accept -v. -case `$LD -v 2>&1 &5 -printf "%s\n" "$acl_cv_prog_gnu_ld" >&6; } -with_gnu_ld=$acl_cv_prog_gnu_ld + use_additional=yes + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + eval additional_includedir=\"$includedir\" + eval additional_libdir=\"$libdir\" + eval additional_libdir2=\"$exec_prefix/$acl_libdirstem2\" + eval additional_libdir3=\"$exec_prefix/$acl_libdirstem3\" - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for shared library run path origin" >&5 -printf %s "checking for shared library run path origin... " >&6; } -if test ${acl_cv_rpath+y} -then : - printf %s "(cached) " >&6 -else $as_nop + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" - CC="$CC" GCC="$GCC" LDFLAGS="$LDFLAGS" LD="$LD" with_gnu_ld="$with_gnu_ld" \ - ${CONFIG_SHELL-/bin/sh} "$ac_aux_dir/config.rpath" "$host" > conftest.sh - . ./conftest.sh - rm -f ./conftest.sh - acl_cv_rpath=done -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $acl_cv_rpath" >&5 -printf "%s\n" "$acl_cv_rpath" >&6; } - wl="$acl_cv_wl" - acl_libext="$acl_cv_libext" - acl_shlibext="$acl_cv_shlibext" - acl_libname_spec="$acl_cv_libname_spec" - acl_library_names_spec="$acl_cv_library_names_spec" - acl_hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec" - acl_hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator" - acl_hardcode_direct="$acl_cv_hardcode_direct" - acl_hardcode_minus_L="$acl_cv_hardcode_minus_L" - # Check whether --enable-rpath was given. -if test ${enable_rpath+y} +# Check whether --with-libiconv-prefix was given. +if test ${with_libiconv_prefix+y} then : - enableval=$enable_rpath; : -else $as_nop - enable_rpath=yes -fi - - + withval=$with_libiconv_prefix; + if test "X$withval" = "Xno"; then + use_additional=no + else + if test "X$withval" = "X"; then + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking 32-bit host C ABI" >&5 -printf %s "checking 32-bit host C ABI... " >&6; } -if test ${gl_cv_host_cpu_c_abi_32bit+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$gl_cv_host_cpu_c_abi"; then - case "$gl_cv_host_cpu_c_abi" in - i386 | x86_64-x32 | arm | armhf | arm64-ilp32 | hppa | ia64-ilp32 | mips | mipsn32 | powerpc | riscv*-ilp32* | s390 | sparc) - gl_cv_host_cpu_c_abi_32bit=yes ;; - x86_64 | alpha | arm64 | hppa64 | ia64 | mips64 | powerpc64 | powerpc64-elfv2 | riscv*-lp64* | s390x | sparc64 ) - gl_cv_host_cpu_c_abi_32bit=no ;; - *) - gl_cv_host_cpu_c_abi_32bit=unknown ;; - esac - else - case "$host_cpu" in + eval additional_includedir=\"$includedir\" + eval additional_libdir=\"$libdir\" + eval additional_libdir2=\"$exec_prefix/$acl_libdirstem2\" + eval additional_libdir3=\"$exec_prefix/$acl_libdirstem3\" - # CPUs that only support a 32-bit ABI. - arc \ - | bfin \ - | cris* \ - | csky \ - | epiphany \ - | ft32 \ - | h8300 \ - | m68k \ - | microblaze | microblazeel \ - | nds32 | nds32le | nds32be \ - | nios2 | nios2eb | nios2el \ - | or1k* \ - | or32 \ - | sh | sh1234 | sh1234elb \ - | tic6x \ - | xtensa* ) - gl_cv_host_cpu_c_abi_32bit=yes - ;; + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" - # CPUs that only support a 64-bit ABI. - alpha | alphaev[4-8] | alphaev56 | alphapca5[67] | alphaev6[78] \ - | mmix ) - gl_cv_host_cpu_c_abi_32bit=no - ;; + else + additional_includedir="$withval/include" + additional_libdir="$withval/$acl_libdirstem" + additional_libdir2="$withval/$acl_libdirstem2" + additional_libdir3="$withval/$acl_libdirstem3" + fi + fi - i[34567]86 ) - gl_cv_host_cpu_c_abi_32bit=yes - ;; - - x86_64 ) - # On x86_64 systems, the C compiler may be generating code in one of - # these ABIs: - # - 64-bit instruction set, 64-bit pointers, 64-bit 'long': x86_64. - # - 64-bit instruction set, 64-bit pointers, 32-bit 'long': x86_64 - # with native Windows (mingw, MSVC). - # - 64-bit instruction set, 32-bit pointers, 32-bit 'long': x86_64-x32. - # - 32-bit instruction set, 32-bit pointers, 32-bit 'long': i386. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#if (defined __x86_64__ || defined __amd64__ \ - || defined _M_X64 || defined _M_AMD64) \ - && !(defined __ILP32__ || defined _ILP32) - int ok; - #else - error fail - #endif - -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - gl_cv_host_cpu_c_abi_32bit=no -else $as_nop - gl_cv_host_cpu_c_abi_32bit=yes -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - ;; - - arm* | aarch64 ) - # Assume arm with EABI. - # On arm64 systems, the C compiler may be generating code in one of - # these ABIs: - # - aarch64 instruction set, 64-bit pointers, 64-bit 'long': arm64. - # - aarch64 instruction set, 32-bit pointers, 32-bit 'long': arm64-ilp32. - # - 32-bit instruction set, 32-bit pointers, 32-bit 'long': arm or armhf. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#if defined __aarch64__ && !(defined __ILP32__ || defined _ILP32) - int ok; - #else - error fail - #endif - -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - gl_cv_host_cpu_c_abi_32bit=no -else $as_nop - gl_cv_host_cpu_c_abi_32bit=yes -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - ;; - - hppa1.0 | hppa1.1 | hppa2.0* | hppa64 ) - # On hppa, the C compiler may be generating 32-bit code or 64-bit - # code. In the latter case, it defines _LP64 and __LP64__. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#ifdef __LP64__ - int ok; - #else - error fail - #endif - -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - gl_cv_host_cpu_c_abi_32bit=no -else $as_nop - gl_cv_host_cpu_c_abi_32bit=yes -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - ;; - - ia64* ) - # On ia64 on HP-UX, the C compiler may be generating 64-bit code or - # 32-bit code. In the latter case, it defines _ILP32. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#ifdef _ILP32 - int ok; - #else - error fail - #endif - -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - gl_cv_host_cpu_c_abi_32bit=yes -else $as_nop - gl_cv_host_cpu_c_abi_32bit=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - ;; - - mips* ) - # We should also check for (_MIPS_SZPTR == 64), but gcc keeps this - # at 32. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#if defined _MIPS_SZLONG && (_MIPS_SZLONG == 64) - int ok; - #else - error fail - #endif - -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - gl_cv_host_cpu_c_abi_32bit=no -else $as_nop - gl_cv_host_cpu_c_abi_32bit=yes -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - ;; - - powerpc* ) - # Different ABIs are in use on AIX vs. Mac OS X vs. Linux,*BSD. - # No need to distinguish them here; the caller may distinguish - # them based on the OS. - # On powerpc64 systems, the C compiler may still be generating - # 32-bit code. And on powerpc-ibm-aix systems, the C compiler may - # be generating 64-bit code. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#if defined __powerpc64__ || defined __LP64__ - int ok; - #else - error fail - #endif - -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - gl_cv_host_cpu_c_abi_32bit=no -else $as_nop - gl_cv_host_cpu_c_abi_32bit=yes -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - ;; - - rs6000 ) - gl_cv_host_cpu_c_abi_32bit=yes - ;; - - riscv32 | riscv64 ) - # There are 6 ABIs: ilp32, ilp32f, ilp32d, lp64, lp64f, lp64d. - # Size of 'long' and 'void *': - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#if defined __LP64__ - int ok; - #else - error fail - #endif - -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - gl_cv_host_cpu_c_abi_32bit=no -else $as_nop - gl_cv_host_cpu_c_abi_32bit=yes -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - ;; - - s390* ) - # On s390x, the C compiler may be generating 64-bit (= s390x) code - # or 31-bit (= s390) code. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#if defined __LP64__ || defined __s390x__ - int ok; - #else - error fail - #endif - -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - gl_cv_host_cpu_c_abi_32bit=no -else $as_nop - gl_cv_host_cpu_c_abi_32bit=yes -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - ;; - - sparc | sparc64 ) - # UltraSPARCs running Linux have `uname -m` = "sparc64", but the - # C compiler still generates 32-bit code. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#if defined __sparcv9 || defined __arch64__ - int ok; - #else - error fail - #endif - -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - gl_cv_host_cpu_c_abi_32bit=no -else $as_nop - gl_cv_host_cpu_c_abi_32bit=yes -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - ;; - - *) - gl_cv_host_cpu_c_abi_32bit=unknown - ;; - esac - fi - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_host_cpu_c_abi_32bit" >&5 -printf "%s\n" "$gl_cv_host_cpu_c_abi_32bit" >&6; } - - HOST_CPU_C_ABI_32BIT="$gl_cv_host_cpu_c_abi_32bit" - - - - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ELF binary format" >&5 -printf %s "checking for ELF binary format... " >&6; } -if test ${gl_cv_elf+y} -then : - printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#ifdef __ELF__ - Extensible Linking Format - #endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "Extensible Linking Format" >/dev/null 2>&1 -then : - gl_cv_elf=yes -else $as_nop - gl_cv_elf=no -fi -rm -rf conftest* - - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_elf" >&5 -printf "%s\n" "$gl_cv_elf" >&6; } - if test $gl_cv_elf = yes; then - # Extract the ELF class of a file (5th byte) in decimal. - # Cf. https://en.wikipedia.org/wiki/Executable_and_Linkable_Format#File_header - if od -A x < /dev/null >/dev/null 2>/dev/null; then - # Use POSIX od. - func_elfclass () - { - od -A n -t d1 -j 4 -N 1 - } - else - # Use BSD hexdump. - func_elfclass () - { - dd bs=1 count=1 skip=4 2>/dev/null | hexdump -e '1/1 "%3d "' - echo - } - fi - # Use 'expr', not 'test', to compare the values of func_elfclass, because on - # Solaris 11 OpenIndiana and Solaris 11 OmniOS, the result is 001 or 002, - # not 1 or 2. - case $HOST_CPU_C_ABI_32BIT in - yes) - # 32-bit ABI. - acl_is_expected_elfclass () - { - expr "`func_elfclass | sed -e 's/[ ]//g'`" = 1 > /dev/null - } - ;; - no) - # 64-bit ABI. - acl_is_expected_elfclass () - { - expr "`func_elfclass | sed -e 's/[ ]//g'`" = 2 > /dev/null - } - ;; - *) - # Unknown. - acl_is_expected_elfclass () - { - : - } - ;; - esac - else - acl_is_expected_elfclass () - { - : - } - fi - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for the common suffixes of directories in the library search path" >&5 -printf %s "checking for the common suffixes of directories in the library search path... " >&6; } -if test ${acl_cv_libdirstems+y} -then : - printf %s "(cached) " >&6 -else $as_nop - acl_libdirstem=lib - acl_libdirstem2= - acl_libdirstem3= - case "$host_os" in - solaris*) - if test $HOST_CPU_C_ABI_32BIT = no; then - acl_libdirstem2=lib/64 - case "$host_cpu" in - sparc*) acl_libdirstem3=lib/sparcv9 ;; - i*86 | x86_64) acl_libdirstem3=lib/amd64 ;; - esac - fi - ;; - *) - searchpath=`(LC_ALL=C $CC $CPPFLAGS $CFLAGS -print-search-dirs) 2>/dev/null \ - | sed -n -e 's,^libraries: ,,p' | sed -e 's,^=,,'` - if test $HOST_CPU_C_ABI_32BIT != no; then - # 32-bit or unknown ABI. - if test -d /usr/lib32; then - acl_libdirstem2=lib32 - fi - fi - if test $HOST_CPU_C_ABI_32BIT != yes; then - # 64-bit or unknown ABI. - if test -d /usr/lib64; then - acl_libdirstem3=lib64 - fi - fi - if test -n "$searchpath"; then - acl_save_IFS="${IFS= }"; IFS=":" - for searchdir in $searchpath; do - if test -d "$searchdir"; then - case "$searchdir" in - */lib32/ | */lib32 ) acl_libdirstem2=lib32 ;; - */lib64/ | */lib64 ) acl_libdirstem3=lib64 ;; - */../ | */.. ) - # Better ignore directories of this form. They are misleading. - ;; - *) searchdir=`cd "$searchdir" && pwd` - case "$searchdir" in - */lib32 ) acl_libdirstem2=lib32 ;; - */lib64 ) acl_libdirstem3=lib64 ;; - esac ;; - esac - fi - done - IFS="$acl_save_IFS" - if test $HOST_CPU_C_ABI_32BIT = yes; then - # 32-bit ABI. - acl_libdirstem3= - fi - if test $HOST_CPU_C_ABI_32BIT = no; then - # 64-bit ABI. - acl_libdirstem2= - fi - fi - ;; - esac - test -n "$acl_libdirstem2" || acl_libdirstem2="$acl_libdirstem" - test -n "$acl_libdirstem3" || acl_libdirstem3="$acl_libdirstem" - acl_cv_libdirstems="$acl_libdirstem,$acl_libdirstem2,$acl_libdirstem3" - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $acl_cv_libdirstems" >&5 -printf "%s\n" "$acl_cv_libdirstems" >&6; } - acl_libdirstem=`echo "$acl_cv_libdirstems" | sed -e 's/,.*//'` - acl_libdirstem2=`echo "$acl_cv_libdirstems" | sed -e 's/^[^,]*,//' -e 's/,.*//'` - acl_libdirstem3=`echo "$acl_cv_libdirstems" | sed -e 's/^[^,]*,[^,]*,//' -e 's/,.*//'` - - - - - - - - - - - - use_additional=yes - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - - eval additional_includedir=\"$includedir\" - eval additional_libdir=\"$libdir\" - eval additional_libdir2=\"$exec_prefix/$acl_libdirstem2\" - eval additional_libdir3=\"$exec_prefix/$acl_libdirstem3\" - - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - -# Check whether --with-libiconv-prefix was given. -if test ${with_libiconv_prefix+y} -then : - withval=$with_libiconv_prefix; - if test "X$withval" = "Xno"; then - use_additional=no - else - if test "X$withval" = "X"; then - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - - eval additional_includedir=\"$includedir\" - eval additional_libdir=\"$libdir\" - eval additional_libdir2=\"$exec_prefix/$acl_libdirstem2\" - eval additional_libdir3=\"$exec_prefix/$acl_libdirstem3\" - - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - else - additional_includedir="$withval/include" - additional_libdir="$withval/$acl_libdirstem" - additional_libdir2="$withval/$acl_libdirstem2" - additional_libdir3="$withval/$acl_libdirstem3" - fi - fi - -fi +fi if test "X$additional_libdir2" = "X$additional_libdir"; then additional_libdir2= @@ -14652,19 +16547,11 @@ fi REPLACE_ICONV=0; REPLACE_ICONV_OPEN=0; REPLACE_ICONV_UTF=0; - ICONV_H=''; + GL_GENERATE_ICONV_H=false if false; then - ICONV_H='iconv.h' + GL_GENERATE_ICONV_H=true fi - if test -n "$ICONV_H"; then - GL_GENERATE_ICONV_H_TRUE= - GL_GENERATE_ICONV_H_FALSE='#' -else - GL_GENERATE_ICONV_H_TRUE='#' - GL_GENERATE_ICONV_H_FALSE= -fi - @@ -14701,8 +16588,8 @@ printf %s "checking for iconv... " >&6; } if test ${am_cv_func_iconv+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) am_cv_func_iconv="no, consider installing GNU libiconv" am_cv_lib_iconv=no cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -14755,7 +16642,8 @@ rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext LIBS="$am_save_LIBS" fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_func_iconv" >&5 printf "%s\n" "$am_cv_func_iconv" >&6; } @@ -14765,8 +16653,8 @@ printf %s "checking for working iconv... " >&6; } if test ${am_cv_func_iconv_works+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) am_save_LIBS="$LIBS" if test $am_cv_lib_iconv = yes; then LIBS="$LIBS $LIBICONV" @@ -14779,8 +16667,8 @@ then : aix* | hpux*) am_cv_func_iconv_works="guessing no" ;; *) am_cv_func_iconv_works="guessing yes" ;; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -14909,13 +16797,15 @@ then : am_cv_func_iconv_works=yes fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi test "$am_cv_func_iconv_works" = no || break done LIBS="$am_save_LIBS" - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_func_iconv_works" >&5 printf "%s\n" "$am_cv_func_iconv_works" >&6; } @@ -14950,8 +16840,8 @@ printf %s "checking whether iconv is compatible with its POSIX signature... " >& if test ${gl_cv_iconv_nonconst+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -14973,11 +16863,13 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_iconv_nonconst=yes -else $as_nop - gl_cv_iconv_nonconst=no +else case e in #( + e) gl_cv_iconv_nonconst=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_iconv_nonconst" >&5 printf "%s\n" "$gl_cv_iconv_nonconst" >&6; } @@ -14998,6 +16890,20 @@ printf "%s\n" "#define ICONV_CONST $iconv_arg1" >>confdefs.h fi + if test "$am_func_iconv" = yes; then + if test -n "$LIBICONV"; then + am_cv_func_iconv_summary='yes, in libiconv' + else + am_cv_func_iconv_summary='yes, in libc' + fi + else + if test "$am_cv_func_iconv" = yes; then + am_cv_func_iconv_summary='not working, consider installing GNU libiconv' + else + am_cv_func_iconv_summary='no, consider installing GNU libiconv' + fi + fi + GL_GNULIB_ICONV=0 @@ -15025,8 +16931,8 @@ printf %s "checking absolute name of ... " >&6; } if test ${gl_cv_next_iconv_h+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) if test $ac_cv_header_iconv_h = yes; then @@ -15062,13 +16968,14 @@ _ACEOF gl_cv_absolute_iconv_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | sed -n "$gl_absolute_header_sed"` - gl_header=$gl_cv_absolute_iconv_h - gl_cv_next_iconv_h='"'$gl_header'"' + gl_header=$gl_cv_absolute_iconv_h + gl_cv_next_iconv_h='"'$gl_header'"' else gl_cv_next_iconv_h='<'iconv.h'>' fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_iconv_h" >&5 printf "%s\n" "$gl_cv_next_iconv_h" >&6; } @@ -15099,8 +17006,8 @@ printf %s "checking for inline... " >&6; } if test ${ac_cv_c_inline+y} then : printf %s "(cached) " >&6 -else $as_nop - ac_cv_c_inline=no +else case e in #( + e) ac_cv_c_inline=no for ac_kw in inline __inline__ __inline; do cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -15118,7 +17025,8 @@ fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext test "$ac_cv_c_inline" != no && break done - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_inline" >&5 printf "%s\n" "$ac_cv_c_inline" >&6; } @@ -15142,10 +17050,11 @@ ac_fn_c_check_type "$LINENO" "off_t" "ac_cv_type_off_t" "$ac_includes_default" if test "x$ac_cv_type_off_t" = xyes then : -else $as_nop - +else case e in #( + e) printf "%s\n" "#define off_t long int" >>confdefs.h - + ;; +esac fi @@ -15167,8 +17076,8 @@ printf %s "checking absolute name of ... " >&6; } if test ${gl_cv_next_limits_h+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) if test $ac_cv_header_limits_h = yes; then @@ -15204,13 +17113,14 @@ _ACEOF gl_cv_absolute_limits_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | sed -n "$gl_absolute_header_sed"` - gl_header=$gl_cv_absolute_limits_h - gl_cv_next_limits_h='"'$gl_header'"' + gl_header=$gl_cv_absolute_limits_h + gl_cv_next_limits_h='"'$gl_header'"' else gl_cv_next_limits_h='<'limits.h'>' fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_limits_h" >&5 printf "%s\n" "$gl_cv_next_limits_h" >&6; } @@ -15235,8 +17145,8 @@ printf %s "checking whether limits.h has WORD_BIT, BOOL_WIDTH etc.... " >&6; } if test ${gl_cv_header_limits_width+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifndef __STDC_WANT_IEC_60559_BFP_EXT__ #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 @@ -15246,6 +17156,8 @@ else $as_nop int wb = WORD_BIT; int ullw = ULLONG_WIDTH; int bw = BOOL_WIDTH; + int bm = BOOL_MAX; + int mblm = MB_LEN_MAX; int main (void) @@ -15258,27 +17170,48 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_header_limits_width=yes -else $as_nop - gl_cv_header_limits_width=no +else case e in #( + e) gl_cv_header_limits_width=no ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_limits_width" >&5 printf "%s\n" "$gl_cv_header_limits_width" >&6; } - if test "$gl_cv_header_limits_width" = yes; then - LIMITS_H= - else - LIMITS_H=limits.h - fi + GL_GENERATE_LIMITS_H=true + if test "$gl_cv_header_limits_width" = yes +then : + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether limits.h has SSIZE_MAX" >&5 +printf %s "checking whether limits.h has SSIZE_MAX... " >&6; } +if test ${gl_cv_header_limits_ssize_max+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + #ifndef SSIZE_MAX + #error "SSIZE_MAX is not defined" + #endif - if test -n "$LIMITS_H"; then - GL_GENERATE_LIMITS_H_TRUE= - GL_GENERATE_LIMITS_H_FALSE='#' -else - GL_GENERATE_LIMITS_H_TRUE='#' - GL_GENERATE_LIMITS_H_FALSE= +_ACEOF +if ac_fn_c_try_compile "$LINENO" +then : + gl_cv_header_limits_ssize_max=yes +else case e in #( + e) gl_cv_header_limits_ssize_max=no ;; +esac +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_limits_ssize_max" >&5 +printf "%s\n" "$gl_cv_header_limits_ssize_max" >&6; } + if test "$gl_cv_header_limits_ssize_max" = yes; then + GL_GENERATE_LIMITS_H=false + fi fi - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for wint_t" >&5 @@ -15286,8 +17219,8 @@ printf %s "checking for wint_t... " >&6; } if test ${gt_cv_c_wint_t+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include wint_t foo = (wchar_t)'\0'; @@ -15302,10 +17235,12 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gt_cv_c_wint_t=yes -else $as_nop - gt_cv_c_wint_t=no +else case e in #( + e) gt_cv_c_wint_t=no ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_c_wint_t" >&5 printf "%s\n" "$gt_cv_c_wint_t" >&6; } @@ -15319,8 +17254,8 @@ printf %s "checking whether wint_t is large enough... " >&6; } if test ${gl_cv_type_wint_t_large_enough+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int verify[sizeof (wint_t) < sizeof (int) ? -1 : 1]; @@ -15336,10 +17271,12 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_type_wint_t_large_enough=yes -else $as_nop - gl_cv_type_wint_t_large_enough=no +else case e in #( + e) gl_cv_type_wint_t_large_enough=no ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_type_wint_t_large_enough" >&5 printf "%s\n" "$gl_cv_type_wint_t_large_enough" >&6; } @@ -15359,8 +17296,8 @@ printf %s "checking whether the compiler produces multi-arch binaries... " >&6; if test ${gl_cv_c_multiarch+y} then : printf %s "(cached) " >&6 -else $as_nop - gl_cv_c_multiarch=no +else case e in #( + e) gl_cv_c_multiarch=no cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifndef __APPLE_CC__ @@ -15395,7 +17332,8 @@ then : fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_c_multiarch" >&5 printf "%s\n" "$gl_cv_c_multiarch" >&6; } @@ -15459,8 +17397,8 @@ printf %s "checking absolute name of ... " >&6; } if test ${gl_cv_next_stdint_h+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) if test $ac_cv_header_stdint_h = yes; then @@ -15496,13 +17434,14 @@ _ACEOF gl_cv_absolute_stdint_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | sed -n "$gl_absolute_header_sed"` - gl_header=$gl_cv_absolute_stdint_h - gl_cv_next_stdint_h='"'$gl_header'"' + gl_header=$gl_cv_absolute_stdint_h + gl_cv_next_stdint_h='"'$gl_header'"' else gl_cv_next_stdint_h='<'stdint.h'>' fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_stdint_h" >&5 printf "%s\n" "$gl_cv_next_stdint_h" >&6; } @@ -15534,8 +17473,8 @@ printf %s "checking whether stdint.h conforms to C99... " >&6; } if test ${gl_cv_header_working_stdint_h+y} then : printf %s "(cached) " >&6 -else $as_nop - gl_cv_header_working_stdint_h=no +else case e in #( + e) gl_cv_header_working_stdint_h=no cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -15717,8 +17656,8 @@ then : *) gl_cv_header_working_stdint_h="guessing yes" ;; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -15796,13 +17735,15 @@ then : gl_cv_header_working_stdint_h=yes fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_working_stdint_h" >&5 printf "%s\n" "$gl_cv_header_working_stdint_h" >&6; } @@ -15811,7 +17752,7 @@ printf "%s\n" "$gl_cv_header_working_stdint_h" >&6; } HAVE_C99_STDINT_H=0 HAVE_SYS_BITYPES_H=0 HAVE_SYS_INTTYPES_H=0 - STDINT_H=stdint.h + GL_GENERATE_STDINT_H=true case "$gl_cv_header_working_stdint_h" in *yes) HAVE_C99_STDINT_H=1 @@ -15820,8 +17761,8 @@ printf %s "checking whether stdint.h works without ISO C predefines... " >&6; } if test ${gl_cv_header_stdint_without_STDC_macros+y} then : printf %s "(cached) " >&6 -else $as_nop - gl_cv_header_stdint_without_STDC_macros=no +else case e in #( + e) gl_cv_header_stdint_without_STDC_macros=no cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -15853,7 +17794,8 @@ then : gl_cv_header_stdint_without_STDC_macros=yes fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_stdint_without_STDC_macros" >&5 printf "%s\n" "$gl_cv_header_stdint_without_STDC_macros" >&6; } @@ -15871,8 +17813,8 @@ printf %s "checking whether stdint.h has UINTMAX_WIDTH etc.... " >&6; } if test ${gl_cv_header_stdint_width+y} then : printf %s "(cached) " >&6 -else $as_nop - gl_cv_header_stdint_width=no +else case e in #( + e) gl_cv_header_stdint_width=no cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -15903,12 +17845,13 @@ if ac_fn_c_try_compile "$LINENO" then : gl_cv_header_stdint_width=yes fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_stdint_width" >&5 printf "%s\n" "$gl_cv_header_stdint_width" >&6; } if test "$gl_cv_header_stdint_width" = yes; then - STDINT_H= + GL_GENERATE_STDINT_H=false fi ;; *) @@ -15942,8 +17885,8 @@ printf %s "checking for bit size of $gltype... " >&6; } if eval test \${gl_cv_bitsizeof_${gltype}+y} then : printf %s "(cached) " >&6 -else $as_nop - if ac_fn_c_compute_int "$LINENO" "sizeof ($gltype) * CHAR_BIT" "result" " +else case e in #( + e) if ac_fn_c_compute_int "$LINENO" "sizeof ($gltype) * CHAR_BIT" "result" " #include #include #if HAVE_WCHAR_H @@ -15953,12 +17896,14 @@ else $as_nop #include " then : -else $as_nop - result=unknown +else case e in #( + e) result=unknown ;; +esac fi eval gl_cv_bitsizeof_${gltype}=\$result - + ;; +esac fi eval ac_res=\$gl_cv_bitsizeof_${gltype} { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 @@ -15983,8 +17928,8 @@ printf %s "checking for bit size of $gltype... " >&6; } if eval test \${gl_cv_bitsizeof_${gltype}+y} then : printf %s "(cached) " >&6 -else $as_nop - if ac_fn_c_compute_int "$LINENO" "sizeof ($gltype) * CHAR_BIT" "result" " +else case e in #( + e) if ac_fn_c_compute_int "$LINENO" "sizeof ($gltype) * CHAR_BIT" "result" " #include #include #if HAVE_WCHAR_H @@ -15994,12 +17939,14 @@ else $as_nop #include " then : -else $as_nop - result=unknown +else case e in #( + e) result=unknown ;; +esac fi eval gl_cv_bitsizeof_${gltype}=\$result - + ;; +esac fi eval ac_res=\$gl_cv_bitsizeof_${gltype} { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 @@ -16023,8 +17970,8 @@ printf %s "checking whether $gltype is signed... " >&6; } if eval test \${gl_cv_type_${gltype}_signed+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -16045,12 +17992,14 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : result=yes -else $as_nop - result=no +else case e in #( + e) result=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext eval gl_cv_type_${gltype}_signed=\$result - + ;; +esac fi eval ac_res=\$gl_cv_type_${gltype}_signed { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 @@ -16078,8 +18027,8 @@ printf %s "checking for $gltype integer literal suffix... " >&6; } if eval test \${gl_cv_type_${gltype}_suffix+y} then : printf %s "(cached) " >&6 -else $as_nop - eval gl_cv_type_${gltype}_suffix=no +else case e in #( + e) eval gl_cv_type_${gltype}_suffix=no eval result=\$gl_cv_type_${gltype}_signed if test "$result" = yes; then glsufu= @@ -16123,7 +18072,8 @@ fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext eval result=\$gl_cv_type_${gltype}_suffix test "$result" != no && break - done + done ;; +esac fi eval ac_res=\$gl_cv_type_${gltype}_suffix { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 @@ -16146,8 +18096,8 @@ printf %s "checking for $gltype integer literal suffix... " >&6; } if eval test \${gl_cv_type_${gltype}_suffix+y} then : printf %s "(cached) " >&6 -else $as_nop - eval gl_cv_type_${gltype}_suffix=no +else case e in #( + e) eval gl_cv_type_${gltype}_suffix=no eval result=\$gl_cv_type_${gltype}_signed if test "$result" = yes; then glsufu= @@ -16191,7 +18141,8 @@ fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext eval result=\$gl_cv_type_${gltype}_suffix test "$result" != no && break - done + done ;; +esac fi eval ac_res=\$gl_cv_type_${gltype}_suffix { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 @@ -16215,14 +18166,7 @@ printf "%s\n" "$ac_res" >&6; } - LIMITS_H='limits.h' - if test -n "$LIMITS_H"; then - GL_GENERATE_LIMITS_H_TRUE= - GL_GENERATE_LIMITS_H_FALSE='#' -else - GL_GENERATE_LIMITS_H_TRUE='#' - GL_GENERATE_LIMITS_H_FALSE= -fi + GL_GENERATE_LIMITS_H=true @@ -16230,21 +18174,15 @@ fi - if test -n "$STDINT_H"; then - GL_GENERATE_STDINT_H_TRUE= - GL_GENERATE_STDINT_H_FALSE='#' -else - GL_GENERATE_STDINT_H_TRUE='#' - GL_GENERATE_STDINT_H_FALSE= -fi - - - HAVE_DECL_IMAXABS=1; HAVE_DECL_IMAXDIV=1; HAVE_DECL_STRTOIMAX=1; HAVE_DECL_STRTOUMAX=1; HAVE_IMAXDIV_T=1; + HAVE_IMAXABS=1; + HAVE_IMAXDIV=1; + REPLACE_IMAXABS=0; + REPLACE_IMAXDIV=0; REPLACE_STRTOIMAX=0; REPLACE_STRTOUMAX=0; INT32_MAX_LT_INTMAX_MAX=1; @@ -16275,8 +18213,8 @@ printf %s "checking absolute name of ... " >&6; } if test ${gl_cv_next_inttypes_h+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) if test $ac_cv_header_inttypes_h = yes; then @@ -16312,13 +18250,14 @@ _ACEOF gl_cv_absolute_inttypes_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | sed -n "$gl_absolute_header_sed"` - gl_header=$gl_cv_absolute_inttypes_h - gl_cv_next_inttypes_h='"'$gl_header'"' + gl_header=$gl_cv_absolute_inttypes_h + gl_cv_next_inttypes_h='"'$gl_header'"' else gl_cv_next_inttypes_h='<'inttypes.h'>' fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_inttypes_h" >&5 printf "%s\n" "$gl_cv_next_inttypes_h" >&6; } @@ -16350,7 +18289,7 @@ printf "%s\n" "$gl_cv_next_inttypes_h" >&6; } PRIPTR_PREFIX= - if test -n "$STDINT_H"; then + if $GL_GENERATE_STDINT_H; then cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -16370,8 +18309,9 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : PRIPTR_PREFIX='"l"' -else $as_nop - PRIPTR_PREFIX='"ll"' +else case e in #( + e) PRIPTR_PREFIX='"ll"' ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext else @@ -16411,8 +18351,8 @@ printf %s "checking whether INT32_MAX < INTMAX_MAX... " >&6; } if test ${gl_cv_test_INT32_MAX_LT_INTMAX_MAX+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Work also in C++ mode. */ #define __STDC_LIMIT_MACROS 1 @@ -16442,10 +18382,12 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_test_INT32_MAX_LT_INTMAX_MAX=yes -else $as_nop - gl_cv_test_INT32_MAX_LT_INTMAX_MAX=no +else case e in #( + e) gl_cv_test_INT32_MAX_LT_INTMAX_MAX=no ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_test_INT32_MAX_LT_INTMAX_MAX" >&5 printf "%s\n" "$gl_cv_test_INT32_MAX_LT_INTMAX_MAX" >&6; } @@ -16463,8 +18405,8 @@ printf %s "checking whether INT64_MAX == LONG_MAX... " >&6; } if test ${gl_cv_test_INT64_MAX_EQ_LONG_MAX+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Work also in C++ mode. */ #define __STDC_LIMIT_MACROS 1 @@ -16494,10 +18436,12 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_test_INT64_MAX_EQ_LONG_MAX=yes -else $as_nop - gl_cv_test_INT64_MAX_EQ_LONG_MAX=no +else case e in #( + e) gl_cv_test_INT64_MAX_EQ_LONG_MAX=no ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_test_INT64_MAX_EQ_LONG_MAX" >&5 printf "%s\n" "$gl_cv_test_INT64_MAX_EQ_LONG_MAX" >&6; } @@ -16517,8 +18461,8 @@ printf %s "checking whether UINT32_MAX < UINTMAX_MAX... " >&6; } if test ${gl_cv_test_UINT32_MAX_LT_UINTMAX_MAX+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Work also in C++ mode. */ #define __STDC_LIMIT_MACROS 1 @@ -16548,10 +18492,12 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_test_UINT32_MAX_LT_UINTMAX_MAX=yes -else $as_nop - gl_cv_test_UINT32_MAX_LT_UINTMAX_MAX=no +else case e in #( + e) gl_cv_test_UINT32_MAX_LT_UINTMAX_MAX=no ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_test_UINT32_MAX_LT_UINTMAX_MAX" >&5 printf "%s\n" "$gl_cv_test_UINT32_MAX_LT_UINTMAX_MAX" >&6; } @@ -16569,8 +18515,8 @@ printf %s "checking whether UINT64_MAX == ULONG_MAX... " >&6; } if test ${gl_cv_test_UINT64_MAX_EQ_ULONG_MAX+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Work also in C++ mode. */ #define __STDC_LIMIT_MACROS 1 @@ -16600,10 +18546,12 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_test_UINT64_MAX_EQ_ULONG_MAX=yes -else $as_nop - gl_cv_test_UINT64_MAX_EQ_ULONG_MAX=no +else case e in #( + e) gl_cv_test_UINT64_MAX_EQ_ULONG_MAX=no ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_test_UINT64_MAX_EQ_ULONG_MAX" >&5 printf "%s\n" "$gl_cv_test_UINT64_MAX_EQ_ULONG_MAX" >&6; } @@ -16697,8 +18645,8 @@ printf %s "checking absolute name of ... " >&6; } if test ${gl_cv_next_wctype_h+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) if test $ac_cv_header_wctype_h = yes; then @@ -16734,13 +18682,14 @@ _ACEOF gl_cv_absolute_wctype_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | sed -n "$gl_absolute_header_sed"` - gl_header=$gl_cv_absolute_wctype_h - gl_cv_next_wctype_h='"'$gl_header'"' + gl_header=$gl_cv_absolute_wctype_h + gl_cv_next_wctype_h='"'$gl_header'"' else gl_cv_next_wctype_h='<'wctype.h'>' fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_wctype_h" >&5 printf "%s\n" "$gl_cv_next_wctype_h" >&6; } @@ -16766,8 +18715,8 @@ printf %s "checking whether iswcntrl works... " >&6; } if test ${gl_cv_func_iswcntrl_works+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) if test "$cross_compiling" = yes then : cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -16787,13 +18736,14 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_func_iswcntrl_works="guessing yes" -else $as_nop - gl_cv_func_iswcntrl_works="guessing no" +else case e in #( + e) gl_cv_func_iswcntrl_works="guessing no" ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -16804,14 +18754,17 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_iswcntrl_works=yes -else $as_nop - gl_cv_func_iswcntrl_works=no +else case e in #( + e) gl_cv_func_iswcntrl_works=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_iswcntrl_works" >&5 printf "%s\n" "$gl_cv_func_iswcntrl_works" >&6; } @@ -16858,8 +18811,9 @@ fi if test "x$ac_cv_have_decl_towlower" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_TOWLOWER $ac_have_decl" >>confdefs.h @@ -16881,8 +18835,8 @@ printf %s "checking for wctype_t... " >&6; } if test ${gl_cv_type_wctype_t+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #if HAVE_WCTYPE_H @@ -16901,11 +18855,13 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_type_wctype_t=yes -else $as_nop - gl_cv_type_wctype_t=no +else case e in #( + e) gl_cv_type_wctype_t=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_type_wctype_t" >&5 printf "%s\n" "$gl_cv_type_wctype_t" >&6; } @@ -16918,8 +18874,8 @@ printf %s "checking for wctrans_t... " >&6; } if test ${gl_cv_type_wctrans_t+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include @@ -16936,11 +18892,13 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_type_wctrans_t=yes -else $as_nop - gl_cv_type_wctrans_t=no +else case e in #( + e) gl_cv_type_wctrans_t=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_type_wctrans_t" >&5 printf "%s\n" "$gl_cv_type_wctrans_t" >&6; } @@ -16954,7 +18912,6 @@ printf "%s\n" "$gl_cv_type_wctrans_t" >&6; } - GL_GNULIB_ISWBLANK=0 @@ -16991,8 +18948,8 @@ printf %s "checking for a traditional japanese locale... " >&6; } if test ${gt_cv_locale_ja+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -17125,7 +19082,8 @@ _ACEOF esac fi rm -fr conftest* - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_ja" >&5 printf "%s\n" "$gt_cv_locale_ja" >&6; } @@ -17139,8 +19097,8 @@ printf %s "checking for a french Unicode locale... " >&6; } if test ${gt_cv_locale_fr_utf8+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -17254,7 +19212,8 @@ _ACEOF esac fi rm -fr conftest* - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_fr_utf8" >&5 printf "%s\n" "$gt_cv_locale_fr_utf8" >&6; } @@ -17269,8 +19228,8 @@ printf %s "checking for a transitional chinese locale... " >&6; } if test ${gt_cv_locale_zh_CN+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -17397,7 +19356,8 @@ _ACEOF gt_cv_locale_zh_CN=none fi rm -fr conftest* - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_zh_CN" >&5 printf "%s\n" "$gt_cv_locale_zh_CN" >&6; } @@ -17431,8 +19391,8 @@ printf %s "checking absolute name of ... " >&6; } if test ${gl_cv_next_langinfo_h+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) if test $ac_cv_header_langinfo_h = yes; then @@ -17468,13 +19428,14 @@ _ACEOF gl_cv_absolute_langinfo_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | sed -n "$gl_absolute_header_sed"` - gl_header=$gl_cv_absolute_langinfo_h - gl_cv_next_langinfo_h='"'$gl_header'"' + gl_header=$gl_cv_absolute_langinfo_h + gl_cv_next_langinfo_h='"'$gl_header'"' else gl_cv_next_langinfo_h='<'langinfo.h'>' fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_langinfo_h" >&5 printf "%s\n" "$gl_cv_next_langinfo_h" >&6; } @@ -17507,8 +19468,8 @@ printf %s "checking whether langinfo.h defines CODESET... " >&6; } if test ${gl_cv_header_langinfo_codeset+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int a = CODESET; @@ -17524,11 +19485,13 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_header_langinfo_codeset=yes -else $as_nop - gl_cv_header_langinfo_codeset=no +else case e in #( + e) gl_cv_header_langinfo_codeset=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_langinfo_codeset" >&5 printf "%s\n" "$gl_cv_header_langinfo_codeset" >&6; } @@ -17540,8 +19503,8 @@ printf %s "checking whether langinfo.h defines T_FMT_AMPM... " >&6; } if test ${gl_cv_header_langinfo_t_fmt_ampm+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int a = T_FMT_AMPM; @@ -17557,11 +19520,13 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_header_langinfo_t_fmt_ampm=yes -else $as_nop - gl_cv_header_langinfo_t_fmt_ampm=no +else case e in #( + e) gl_cv_header_langinfo_t_fmt_ampm=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_langinfo_t_fmt_ampm" >&5 printf "%s\n" "$gl_cv_header_langinfo_t_fmt_ampm" >&6; } @@ -17573,8 +19538,8 @@ printf %s "checking whether langinfo.h defines ALTMON_1... " >&6; } if test ${gl_cv_header_langinfo_altmon+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int a = ALTMON_1; @@ -17590,11 +19555,13 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_header_langinfo_altmon=yes -else $as_nop - gl_cv_header_langinfo_altmon=no +else case e in #( + e) gl_cv_header_langinfo_altmon=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_langinfo_altmon" >&5 printf "%s\n" "$gl_cv_header_langinfo_altmon" >&6; } @@ -17606,8 +19573,8 @@ printf %s "checking whether langinfo.h defines ERA... " >&6; } if test ${gl_cv_header_langinfo_era+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int a = ERA; @@ -17623,11 +19590,13 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_header_langinfo_era=yes -else $as_nop - gl_cv_header_langinfo_era=no +else case e in #( + e) gl_cv_header_langinfo_era=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_langinfo_era" >&5 printf "%s\n" "$gl_cv_header_langinfo_era" >&6; } @@ -17639,8 +19608,8 @@ printf %s "checking whether langinfo.h defines YESEXPR... " >&6; } if test ${gl_cv_header_langinfo_yesexpr+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int a = YESEXPR; @@ -17656,11 +19625,13 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_header_langinfo_yesexpr=yes -else $as_nop - gl_cv_header_langinfo_yesexpr=no +else case e in #( + e) gl_cv_header_langinfo_yesexpr=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_langinfo_yesexpr" >&5 printf "%s\n" "$gl_cv_header_langinfo_yesexpr" >&6; } @@ -17710,8 +19681,8 @@ printf %s "checking for wchar_t... " >&6; } if test ${gt_cv_c_wchar_t+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include wchar_t foo = (wchar_t)'\0'; @@ -17726,10 +19697,12 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gt_cv_c_wchar_t=yes -else $as_nop - gt_cv_c_wchar_t=no +else case e in #( + e) gt_cv_c_wchar_t=no ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_c_wchar_t" >&5 printf "%s\n" "$gt_cv_c_wchar_t" >&6; } @@ -17745,17 +19718,24 @@ printf "%s\n" "#define HAVE_WCHAR_T 1" >>confdefs.h - STDDEF_H= + GL_GENERATE_STDDEF_H=false { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for good max_align_t" >&5 printf %s "checking for good max_align_t... " >&6; } if test ${gl_cv_type_max_align_t+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include +/* On FreeBSD 12.0/x86, max_align_t defined by has + the correct alignment with the default (wrong) definition of + _Alignof, but a wrong alignment as soon as we activate an + ISO C compliant _Alignof definition. */ + #if ((defined __GNUC__ && 4 <= __GNUC__) || defined __clang__) && !defined __cplusplus + #define _Alignof(type) __builtin_offsetof (struct { char __a; type __b; }, __b) + #endif + #include unsigned int s = sizeof (max_align_t); #if defined __GNUC__ || defined __clang__ || defined __IBM__ALIGNOF__ int check1[2 * (__alignof__ (double) <= __alignof__ (max_align_t)) - 1]; @@ -17780,22 +19760,24 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_type_max_align_t=yes -else $as_nop - gl_cv_type_max_align_t=no +else case e in #( + e) gl_cv_type_max_align_t=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_type_max_align_t" >&5 printf "%s\n" "$gl_cv_type_max_align_t" >&6; } if test $gl_cv_type_max_align_t = no; then HAVE_MAX_ALIGN_T=0 - STDDEF_H=stddef.h + GL_GENERATE_STDDEF_H=true fi if test $gt_cv_c_wchar_t = no; then HAVE_WCHAR_T=0 - STDDEF_H=stddef.h + GL_GENERATE_STDDEF_H=true fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether NULL can be used in arbitrary expressions" >&5 @@ -17803,8 +19785,8 @@ printf %s "checking whether NULL can be used in arbitrary expressions... " >&6; if test ${gl_cv_decl_null_works+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int test[2 * (sizeof NULL == sizeof (void *)) -1]; @@ -17820,28 +19802,58 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_decl_null_works=yes -else $as_nop - gl_cv_decl_null_works=no +else case e in #( + e) gl_cv_decl_null_works=no ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_decl_null_works" >&5 printf "%s\n" "$gl_cv_decl_null_works" >&6; } if test $gl_cv_decl_null_works = no; then REPLACE_NULL=1 - STDDEF_H=stddef.h + GL_GENERATE_STDDEF_H=true fi + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for unreachable" >&5 +printf %s "checking for unreachable... " >&6; } +if test ${gl_cv_func_unreachable+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include - if test -n "$STDDEF_H"; then - GL_GENERATE_STDDEF_H_TRUE= - GL_GENERATE_STDDEF_H_FALSE='#' -else - GL_GENERATE_STDDEF_H_TRUE='#' - GL_GENERATE_STDDEF_H_FALSE= +int +main (void) +{ +unreachable (); + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO" +then : + gl_cv_func_unreachable=yes +else case e in #( + e) gl_cv_func_unreachable=no ;; +esac +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam \ + conftest$ac_exeext conftest.$ac_ext + ;; +esac fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_unreachable" >&5 +printf "%s\n" "$gl_cv_func_unreachable" >&6; } + if test $gl_cv_func_unreachable = no; then + GL_GENERATE_STDDEF_H=true + fi - if test -n "$STDDEF_H"; then + if $GL_GENERATE_STDDEF_H; then @@ -17858,8 +19870,8 @@ printf %s "checking absolute name of ... " >&6; } if test ${gl_cv_next_stddef_h+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -17892,10 +19904,11 @@ _ACEOF gl_cv_absolute_stddef_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | sed -n "$gl_absolute_header_sed"` - gl_header=$gl_cv_absolute_stddef_h - gl_cv_next_stddef_h='"'$gl_header'"' - + gl_header=$gl_cv_absolute_stddef_h + gl_cv_next_stddef_h='"'$gl_header'"' + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_stddef_h" >&5 printf "%s\n" "$gl_cv_next_stddef_h" >&6; } @@ -17925,8 +19938,8 @@ printf %s "checking whether locale.h defines locale_t... " >&6; } if test ${gl_cv_header_locale_has_locale_t+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include locale_t x; @@ -17941,11 +19954,13 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_header_locale_has_locale_t=yes -else $as_nop - gl_cv_header_locale_has_locale_t=no +else case e in #( + e) gl_cv_header_locale_has_locale_t=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_locale_has_locale_t" >&5 printf "%s\n" "$gl_cv_header_locale_has_locale_t" >&6; } @@ -17993,8 +20008,8 @@ printf %s "checking whether locale.h conforms to POSIX:2001... " >&6; } if test ${gl_cv_header_locale_h_posix2001+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int x = LC_MESSAGES; @@ -18010,10 +20025,12 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_header_locale_h_posix2001=yes -else $as_nop - gl_cv_header_locale_h_posix2001=no +else case e in #( + e) gl_cv_header_locale_h_posix2001=no ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_locale_h_posix2001" >&5 printf "%s\n" "$gl_cv_header_locale_h_posix2001" >&6; } @@ -18023,8 +20040,8 @@ printf %s "checking whether struct lconv is properly defined... " >&6; } if test ${gl_cv_sys_struct_lconv_ok+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include struct lconv l; @@ -18041,11 +20058,13 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_sys_struct_lconv_ok=yes -else $as_nop - gl_cv_sys_struct_lconv_ok=no +else case e in #( + e) gl_cv_sys_struct_lconv_ok=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_sys_struct_lconv_ok" >&5 printf "%s\n" "$gl_cv_sys_struct_lconv_ok" >&6; } @@ -18061,11 +20080,12 @@ printf "%s\n" "$gl_cv_sys_struct_lconv_ok" >&6; } _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "Special" >/dev/null 2>&1 + $EGREP_TRADITIONAL "Special" >/dev/null 2>&1 then : -else $as_nop - REPLACE_STRUCT_LCONV=1 +else case e in #( + e) REPLACE_STRUCT_LCONV=1 ;; +esac fi rm -rf conftest* @@ -18090,8 +20110,8 @@ printf %s "checking absolute name of ... " >&6; } if test ${gl_cv_next_locale_h+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -18124,10 +20144,11 @@ _ACEOF gl_cv_absolute_locale_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | sed -n "$gl_absolute_header_sed"` - gl_header=$gl_cv_absolute_locale_h - gl_cv_next_locale_h='"'$gl_header'"' - + gl_header=$gl_cv_absolute_locale_h + gl_cv_next_locale_h='"'$gl_header'"' + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_locale_h" >&5 printf "%s\n" "$gl_cv_next_locale_h" >&6; } @@ -18188,9 +20209,14 @@ printf %s "checking whether imported symbols can be declared weak... " >&6; } if test ${gl_cv_have_weak+y} then : printf %s "(cached) " >&6 -else $as_nop - gl_cv_have_weak=no - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) case "$host_os" in + cygwin* | mingw*) + gl_cv_have_weak="guessing no" + ;; + *) + gl_cv_have_weak=no + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ extern void xyzzy (); #pragma weak xyzzy @@ -18208,28 +20234,29 @@ then : fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext - if test $gl_cv_have_weak = maybe; then - if test "$cross_compiling" = yes + if test $gl_cv_have_weak = maybe; then + if test "$cross_compiling" = yes then : - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifdef __ELF__ - Extensible Linking Format - #endif + Extensible Linking Format + #endif _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "Extensible Linking Format" >/dev/null 2>&1 + $EGREP_TRADITIONAL "Extensible Linking Format" >/dev/null 2>&1 then : gl_cv_have_weak="guessing yes" -else $as_nop - gl_cv_have_weak="guessing no" +else case e in #( + e) gl_cv_have_weak="guessing no" ;; +esac fi rm -rf conftest* -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -18242,14 +20269,18 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_have_weak=yes -else $as_nop - gl_cv_have_weak=no +else case e in #( + e) gl_cv_have_weak=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - fi + fi + ;; + esac case " $LDFLAGS " in *" -static "*) gl_cv_have_weak=no ;; esac @@ -18274,7 +20305,8 @@ EOF esac ;; esac - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_have_weak" >&5 printf "%s\n" "$gl_cv_have_weak" >&6; } @@ -18309,8 +20341,9 @@ printf "%s\n" "#define HAVE_WEAK_SYMBOLS 1" >>confdefs.h if test "x$ac_cv_header_pthread_h" = xyes then : gl_have_pthread_h=yes -else $as_nop - gl_have_pthread_h=no +else case e in #( + e) gl_have_pthread_h=no ;; +esac fi if test "$gl_have_pthread_h" = yes; then @@ -18353,8 +20386,8 @@ rm -f core conftest.err conftest.$ac_objext conftest.beam \ LIBS=$save_LIBS test $gl_pthread_api = yes && break done - echo "$as_me:18356: gl_pthread_api=$gl_pthread_api" >&5 - echo "$as_me:18357: LIBPTHREAD=$LIBPTHREAD" >&5 + echo "$as_me:20389: gl_pthread_api=$gl_pthread_api" >&5 + echo "$as_me:20390: LIBPTHREAD=$LIBPTHREAD" >&5 gl_pthread_in_glibc=no # On Linux with glibc >= 2.34, libc contains the fully functional @@ -18372,7 +20405,7 @@ rm -f core conftest.err conftest.$ac_objext conftest.beam \ _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "Lucky user" >/dev/null 2>&1 + $EGREP_TRADITIONAL "Lucky user" >/dev/null 2>&1 then : gl_pthread_in_glibc=yes fi @@ -18380,7 +20413,7 @@ rm -rf conftest* ;; esac - echo "$as_me:18383: gl_pthread_in_glibc=$gl_pthread_in_glibc" >&5 + echo "$as_me:20416: gl_pthread_in_glibc=$gl_pthread_in_glibc" >&5 # Test for libpthread by looking for pthread_kill. (Not pthread_self, # since it is defined as a macro on OSF/1.) @@ -18392,16 +20425,22 @@ printf %s "checking for pthread_kill in -lpthread... " >&6; } if test ${ac_cv_lib_pthread_pthread_kill+y} then : printf %s "(cached) " >&6 -else $as_nop - ac_check_lib_save_LIBS=$LIBS +else case e in #( + e) ac_check_lib_save_LIBS=$LIBS LIBS="-lpthread $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -char pthread_kill (); + builtin and then its argument prototype would still apply. + The 'extern "C"' is for builds by C++ compilers; + although this is not generally supported in C code supporting it here + has little cost and some practical benefit (sr 110532). */ +#ifdef __cplusplus +extern "C" +#endif +char pthread_kill (void); int main (void) { @@ -18413,12 +20452,14 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : ac_cv_lib_pthread_pthread_kill=yes -else $as_nop - ac_cv_lib_pthread_pthread_kill=no +else case e in #( + e) ac_cv_lib_pthread_pthread_kill=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS +LIBS=$ac_check_lib_save_LIBS ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthread_pthread_kill" >&5 printf "%s\n" "$ac_cv_lib_pthread_pthread_kill" >&6; } @@ -18435,7 +20476,7 @@ then : # On Solaris 10 or newer, this test is no longer needed, because # libc contains the fully functional pthread functions. case "$host_os" in - solaris | solaris2.1-9 | solaris2.1-9.* | hpux*) + solaris | solaris2.[1-9] | solaris2.[1-9].* | hpux*) printf "%s\n" "#define PTHREAD_IN_USE_DETECTION_HARD 1" >>confdefs.h @@ -18451,16 +20492,22 @@ printf %s "checking for pthread_kill in -lpthread... " >&6; } if test ${ac_cv_lib_pthread_pthread_kill+y} then : printf %s "(cached) " >&6 -else $as_nop - ac_check_lib_save_LIBS=$LIBS +else case e in #( + e) ac_check_lib_save_LIBS=$LIBS LIBS="-lpthread $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -char pthread_kill (); + builtin and then its argument prototype would still apply. + The 'extern "C"' is for builds by C++ compilers; + although this is not generally supported in C code supporting it here + has little cost and some practical benefit (sr 110532). */ +#ifdef __cplusplus +extern "C" +#endif +char pthread_kill (void); int main (void) { @@ -18472,12 +20519,14 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : ac_cv_lib_pthread_pthread_kill=yes -else $as_nop - ac_cv_lib_pthread_pthread_kill=no +else case e in #( + e) ac_cv_lib_pthread_pthread_kill=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS +LIBS=$ac_check_lib_save_LIBS ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthread_pthread_kill" >&5 printf "%s\n" "$ac_cv_lib_pthread_pthread_kill" >&6; } @@ -18495,16 +20544,22 @@ printf %s "checking for pthread_kill in -lc_r... " >&6; } if test ${ac_cv_lib_c_r_pthread_kill+y} then : printf %s "(cached) " >&6 -else $as_nop - ac_check_lib_save_LIBS=$LIBS +else case e in #( + e) ac_check_lib_save_LIBS=$LIBS LIBS="-lc_r $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -char pthread_kill (); + builtin and then its argument prototype would still apply. + The 'extern "C"' is for builds by C++ compilers; + although this is not generally supported in C code supporting it here + has little cost and some practical benefit (sr 110532). */ +#ifdef __cplusplus +extern "C" +#endif +char pthread_kill (void); int main (void) { @@ -18516,12 +20571,14 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : ac_cv_lib_c_r_pthread_kill=yes -else $as_nop - ac_cv_lib_c_r_pthread_kill=no +else case e in #( + e) ac_cv_lib_c_r_pthread_kill=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS +LIBS=$ac_check_lib_save_LIBS ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_c_r_pthread_kill" >&5 printf "%s\n" "$ac_cv_lib_c_r_pthread_kill" >&6; } @@ -18534,7 +20591,7 @@ fi fi fi - echo "$as_me:18537: LIBPMULTITHREAD=$LIBPMULTITHREAD" >&5 + echo "$as_me:20594: LIBPMULTITHREAD=$LIBPMULTITHREAD" >&5 fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether POSIX threads API is available" >&5 printf %s "checking whether POSIX threads API is available... " >&6; } @@ -18561,24 +20618,30 @@ sched_yield (); _ACEOF if ac_fn_c_try_link "$LINENO" then : - LIB_SCHED_YIELD= + SCHED_YIELD_LIB= -else $as_nop - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for sched_yield in -lrt" >&5 +else case e in #( + e) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for sched_yield in -lrt" >&5 printf %s "checking for sched_yield in -lrt... " >&6; } if test ${ac_cv_lib_rt_sched_yield+y} then : printf %s "(cached) " >&6 -else $as_nop - ac_check_lib_save_LIBS=$LIBS +else case e in #( + e) ac_check_lib_save_LIBS=$LIBS LIBS="-lrt $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -char sched_yield (); + builtin and then its argument prototype would still apply. + The 'extern "C"' is for builds by C++ compilers; + although this is not generally supported in C code supporting it here + has little cost and some practical benefit (sr 110532). */ +#ifdef __cplusplus +extern "C" +#endif +char sched_yield (void); int main (void) { @@ -18590,34 +20653,42 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : ac_cv_lib_rt_sched_yield=yes -else $as_nop - ac_cv_lib_rt_sched_yield=no +else case e in #( + e) ac_cv_lib_rt_sched_yield=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS +LIBS=$ac_check_lib_save_LIBS ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_rt_sched_yield" >&5 printf "%s\n" "$ac_cv_lib_rt_sched_yield" >&6; } if test "x$ac_cv_lib_rt_sched_yield" = xyes then : - LIB_SCHED_YIELD=-lrt -else $as_nop - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for sched_yield in -lposix4" >&5 + SCHED_YIELD_LIB=-lrt +else case e in #( + e) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for sched_yield in -lposix4" >&5 printf %s "checking for sched_yield in -lposix4... " >&6; } if test ${ac_cv_lib_posix4_sched_yield+y} then : printf %s "(cached) " >&6 -else $as_nop - ac_check_lib_save_LIBS=$LIBS +else case e in #( + e) ac_check_lib_save_LIBS=$LIBS LIBS="-lposix4 $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -char sched_yield (); + builtin and then its argument prototype would still apply. + The 'extern "C"' is for builds by C++ compilers; + although this is not generally supported in C code supporting it here + has little cost and some practical benefit (sr 110532). */ +#ifdef __cplusplus +extern "C" +#endif +char sched_yield (void); int main (void) { @@ -18629,27 +20700,33 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : ac_cv_lib_posix4_sched_yield=yes -else $as_nop - ac_cv_lib_posix4_sched_yield=no +else case e in #( + e) ac_cv_lib_posix4_sched_yield=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS +LIBS=$ac_check_lib_save_LIBS ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_posix4_sched_yield" >&5 printf "%s\n" "$ac_cv_lib_posix4_sched_yield" >&6; } if test "x$ac_cv_lib_posix4_sched_yield" = xyes then : - LIB_SCHED_YIELD=-lposix4 + SCHED_YIELD_LIB=-lposix4 fi - + ;; +esac fi - + ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext + LIB_SCHED_YIELD="$SCHED_YIELD_LIB" + gl_pthreadlib_body_done=done fi @@ -18718,8 +20795,9 @@ printf "%s\n" "#define PTHREAD_IN_USE_DETECTION_HARD 1" >>confdefs.h if test "x$ac_cv_header_pthread_h" = xyes then : gl_have_pthread_h=yes -else $as_nop - gl_have_pthread_h=no +else case e in #( + e) gl_have_pthread_h=no ;; +esac fi if test "$gl_have_pthread_h" = yes; then @@ -18762,8 +20840,8 @@ rm -f core conftest.err conftest.$ac_objext conftest.beam \ LIBS=$save_LIBS test $gl_pthread_api = yes && break done - echo "$as_me:18765: gl_pthread_api=$gl_pthread_api" >&5 - echo "$as_me:18766: LIBPTHREAD=$LIBPTHREAD" >&5 + echo "$as_me:20843: gl_pthread_api=$gl_pthread_api" >&5 + echo "$as_me:20844: LIBPTHREAD=$LIBPTHREAD" >&5 gl_pthread_in_glibc=no # On Linux with glibc >= 2.34, libc contains the fully functional @@ -18781,7 +20859,7 @@ rm -f core conftest.err conftest.$ac_objext conftest.beam \ _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "Lucky user" >/dev/null 2>&1 + $EGREP_TRADITIONAL "Lucky user" >/dev/null 2>&1 then : gl_pthread_in_glibc=yes fi @@ -18789,7 +20867,7 @@ rm -rf conftest* ;; esac - echo "$as_me:18792: gl_pthread_in_glibc=$gl_pthread_in_glibc" >&5 + echo "$as_me:20870: gl_pthread_in_glibc=$gl_pthread_in_glibc" >&5 # Test for libpthread by looking for pthread_kill. (Not pthread_self, # since it is defined as a macro on OSF/1.) @@ -18801,16 +20879,22 @@ printf %s "checking for pthread_kill in -lpthread... " >&6; } if test ${ac_cv_lib_pthread_pthread_kill+y} then : printf %s "(cached) " >&6 -else $as_nop - ac_check_lib_save_LIBS=$LIBS +else case e in #( + e) ac_check_lib_save_LIBS=$LIBS LIBS="-lpthread $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -char pthread_kill (); + builtin and then its argument prototype would still apply. + The 'extern "C"' is for builds by C++ compilers; + although this is not generally supported in C code supporting it here + has little cost and some practical benefit (sr 110532). */ +#ifdef __cplusplus +extern "C" +#endif +char pthread_kill (void); int main (void) { @@ -18822,12 +20906,14 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : ac_cv_lib_pthread_pthread_kill=yes -else $as_nop - ac_cv_lib_pthread_pthread_kill=no +else case e in #( + e) ac_cv_lib_pthread_pthread_kill=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS +LIBS=$ac_check_lib_save_LIBS ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthread_pthread_kill" >&5 printf "%s\n" "$ac_cv_lib_pthread_pthread_kill" >&6; } @@ -18844,7 +20930,7 @@ then : # On Solaris 10 or newer, this test is no longer needed, because # libc contains the fully functional pthread functions. case "$host_os" in - solaris | solaris2.1-9 | solaris2.1-9.* | hpux*) + solaris | solaris2.[1-9] | solaris2.[1-9].* | hpux*) printf "%s\n" "#define PTHREAD_IN_USE_DETECTION_HARD 1" >>confdefs.h @@ -18860,16 +20946,22 @@ printf %s "checking for pthread_kill in -lpthread... " >&6; } if test ${ac_cv_lib_pthread_pthread_kill+y} then : printf %s "(cached) " >&6 -else $as_nop - ac_check_lib_save_LIBS=$LIBS +else case e in #( + e) ac_check_lib_save_LIBS=$LIBS LIBS="-lpthread $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -char pthread_kill (); + builtin and then its argument prototype would still apply. + The 'extern "C"' is for builds by C++ compilers; + although this is not generally supported in C code supporting it here + has little cost and some practical benefit (sr 110532). */ +#ifdef __cplusplus +extern "C" +#endif +char pthread_kill (void); int main (void) { @@ -18881,12 +20973,14 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : ac_cv_lib_pthread_pthread_kill=yes -else $as_nop - ac_cv_lib_pthread_pthread_kill=no +else case e in #( + e) ac_cv_lib_pthread_pthread_kill=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS +LIBS=$ac_check_lib_save_LIBS ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthread_pthread_kill" >&5 printf "%s\n" "$ac_cv_lib_pthread_pthread_kill" >&6; } @@ -18904,16 +20998,22 @@ printf %s "checking for pthread_kill in -lc_r... " >&6; } if test ${ac_cv_lib_c_r_pthread_kill+y} then : printf %s "(cached) " >&6 -else $as_nop - ac_check_lib_save_LIBS=$LIBS +else case e in #( + e) ac_check_lib_save_LIBS=$LIBS LIBS="-lc_r $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -char pthread_kill (); + builtin and then its argument prototype would still apply. + The 'extern "C"' is for builds by C++ compilers; + although this is not generally supported in C code supporting it here + has little cost and some practical benefit (sr 110532). */ +#ifdef __cplusplus +extern "C" +#endif +char pthread_kill (void); int main (void) { @@ -18925,12 +21025,14 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : ac_cv_lib_c_r_pthread_kill=yes -else $as_nop - ac_cv_lib_c_r_pthread_kill=no +else case e in #( + e) ac_cv_lib_c_r_pthread_kill=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS +LIBS=$ac_check_lib_save_LIBS ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_c_r_pthread_kill" >&5 printf "%s\n" "$ac_cv_lib_c_r_pthread_kill" >&6; } @@ -18943,7 +21045,7 @@ fi fi fi - echo "$as_me:18946: LIBPMULTITHREAD=$LIBPMULTITHREAD" >&5 + echo "$as_me:21048: LIBPMULTITHREAD=$LIBPMULTITHREAD" >&5 fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether POSIX threads API is available" >&5 printf %s "checking whether POSIX threads API is available... " >&6; } @@ -18970,24 +21072,30 @@ sched_yield (); _ACEOF if ac_fn_c_try_link "$LINENO" then : - LIB_SCHED_YIELD= + SCHED_YIELD_LIB= -else $as_nop - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for sched_yield in -lrt" >&5 +else case e in #( + e) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for sched_yield in -lrt" >&5 printf %s "checking for sched_yield in -lrt... " >&6; } if test ${ac_cv_lib_rt_sched_yield+y} then : printf %s "(cached) " >&6 -else $as_nop - ac_check_lib_save_LIBS=$LIBS +else case e in #( + e) ac_check_lib_save_LIBS=$LIBS LIBS="-lrt $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -char sched_yield (); + builtin and then its argument prototype would still apply. + The 'extern "C"' is for builds by C++ compilers; + although this is not generally supported in C code supporting it here + has little cost and some practical benefit (sr 110532). */ +#ifdef __cplusplus +extern "C" +#endif +char sched_yield (void); int main (void) { @@ -18999,34 +21107,42 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : ac_cv_lib_rt_sched_yield=yes -else $as_nop - ac_cv_lib_rt_sched_yield=no +else case e in #( + e) ac_cv_lib_rt_sched_yield=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS +LIBS=$ac_check_lib_save_LIBS ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_rt_sched_yield" >&5 printf "%s\n" "$ac_cv_lib_rt_sched_yield" >&6; } if test "x$ac_cv_lib_rt_sched_yield" = xyes then : - LIB_SCHED_YIELD=-lrt -else $as_nop - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for sched_yield in -lposix4" >&5 + SCHED_YIELD_LIB=-lrt +else case e in #( + e) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for sched_yield in -lposix4" >&5 printf %s "checking for sched_yield in -lposix4... " >&6; } if test ${ac_cv_lib_posix4_sched_yield+y} then : printf %s "(cached) " >&6 -else $as_nop - ac_check_lib_save_LIBS=$LIBS +else case e in #( + e) ac_check_lib_save_LIBS=$LIBS LIBS="-lposix4 $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -char sched_yield (); + builtin and then its argument prototype would still apply. + The 'extern "C"' is for builds by C++ compilers; + although this is not generally supported in C code supporting it here + has little cost and some practical benefit (sr 110532). */ +#ifdef __cplusplus +extern "C" +#endif +char sched_yield (void); int main (void) { @@ -19038,39 +21154,107 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : ac_cv_lib_posix4_sched_yield=yes -else $as_nop - ac_cv_lib_posix4_sched_yield=no +else case e in #( + e) ac_cv_lib_posix4_sched_yield=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS +LIBS=$ac_check_lib_save_LIBS ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_posix4_sched_yield" >&5 printf "%s\n" "$ac_cv_lib_posix4_sched_yield" >&6; } if test "x$ac_cv_lib_posix4_sched_yield" = xyes then : - LIB_SCHED_YIELD=-lposix4 + SCHED_YIELD_LIB=-lposix4 fi - + ;; +esac fi - + ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext + LIB_SCHED_YIELD="$SCHED_YIELD_LIB" + gl_pthreadlib_body_done=done fi if test $ac_cv_header_threads_h = yes; then - ac_fn_c_check_func "$LINENO" "thrd_create" "ac_cv_func_thrd_create" + + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for thrd_create" >&5 +printf %s "checking for thrd_create... " >&6; } +if test ${gl_cv_onwards_func_thrd_create+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + exec 9>&6 6>/dev/null + + case "$host_os" in + + linux*-android*) + ac_fn_check_decl "$LINENO" "thrd_create" "ac_cv_have_decl_thrd_create" "#include +" "$ac_c_undeclared_builtin_options" "CFLAGS" +if test "x$ac_cv_have_decl_thrd_create" = xyes +then : + +fi + if test $ac_cv_have_decl_thrd_create = yes; then + ac_fn_c_check_func "$LINENO" "thrd_create" "ac_cv_func_thrd_create" if test "x$ac_cv_func_thrd_create" = xyes then : - printf "%s\n" "#define HAVE_THRD_CREATE 1" >>confdefs.h fi + if test $ac_cv_func_thrd_create = yes; then + gl_cv_onwards_func_thrd_create=yes + else + gl_cv_onwards_func_thrd_create='future OS version' + fi + else + gl_cv_onwards_func_thrd_create='future OS version' + fi + ;; + + + *) + ac_fn_c_check_func "$LINENO" "thrd_create" "ac_cv_func_thrd_create" +if test "x$ac_cv_func_thrd_create" = xyes +then : + +fi + + gl_cv_onwards_func_thrd_create=$ac_cv_func_thrd_create + ;; + + esac + + exec 6>&9 9>&- + + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_onwards_func_thrd_create" >&5 +printf "%s\n" "$gl_cv_onwards_func_thrd_create" >&6; } + + case "$gl_cv_onwards_func_thrd_create" in + future*) ac_cv_func_thrd_create=no ;; + *) ac_cv_func_thrd_create=$gl_cv_onwards_func_thrd_create ;; + esac + if test $ac_cv_func_thrd_create = yes; then + +printf "%s\n" "#define HAVE_THRD_CREATE 1" >>confdefs.h + + fi + + if test $ac_cv_func_thrd_create = yes; then LIBSTDTHREAD= else @@ -19079,16 +21263,22 @@ printf %s "checking for thrd_create in -lstdthreads... " >&6; } if test ${ac_cv_lib_stdthreads_thrd_create+y} then : printf %s "(cached) " >&6 -else $as_nop - ac_check_lib_save_LIBS=$LIBS +else case e in #( + e) ac_check_lib_save_LIBS=$LIBS LIBS="-lstdthreads $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -char thrd_create (); + builtin and then its argument prototype would still apply. + The 'extern "C"' is for builds by C++ compilers; + although this is not generally supported in C code supporting it here + has little cost and some practical benefit (sr 110532). */ +#ifdef __cplusplus +extern "C" +#endif +char thrd_create (void); int main (void) { @@ -19100,12 +21290,14 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : ac_cv_lib_stdthreads_thrd_create=yes -else $as_nop - ac_cv_lib_stdthreads_thrd_create=no +else case e in #( + e) ac_cv_lib_stdthreads_thrd_create=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS +LIBS=$ac_check_lib_save_LIBS ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_stdthreads_thrd_create" >&5 printf "%s\n" "$ac_cv_lib_stdthreads_thrd_create" >&6; } @@ -19114,15 +21306,16 @@ then : LIBSTDTHREAD='-lstdthreads -lpthread' -else $as_nop - +else case e in #( + e) LIBSTDTHREAD="$LIBPMULTITHREAD" - + ;; +esac fi fi else - LIBSTDTHREAD="$LIBPMULTITHREAD $LIB_SCHED_YIELD" + LIBSTDTHREAD="$LIBPMULTITHREAD $SCHED_YIELD_LIB" fi ;; esac @@ -19180,8 +21373,8 @@ printf %s "checking whether lstat correctly handles trailing slash... " >&6; } if test ${gl_cv_func_lstat_dereferences_slashed_symlink+y} then : printf %s "(cached) " >&6 -else $as_nop - rm -f conftest.sym conftest.file +else case e in #( + e) rm -f conftest.sym conftest.file echo >conftest.file if test "$cross_compiling" = yes then : @@ -19189,6 +21382,9 @@ then : linux-* | linux) # Guess yes on Linux systems. gl_cv_func_lstat_dereferences_slashed_symlink="guessing yes" ;; + midipix*) + # Guess yes on systems that emulate the Linux system calls. + gl_cv_func_lstat_dereferences_slashed_symlink="guessing yes" ;; *-gnu* | gnu*) # Guess yes on glibc systems. gl_cv_func_lstat_dereferences_slashed_symlink="guessing yes" ;; @@ -19200,8 +21396,8 @@ then : gl_cv_func_lstat_dereferences_slashed_symlink="$gl_cross_guess_normal" ;; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $ac_includes_default int @@ -19222,15 +21418,18 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_lstat_dereferences_slashed_symlink=yes -else $as_nop - gl_cv_func_lstat_dereferences_slashed_symlink=no +else case e in #( + e) gl_cv_func_lstat_dereferences_slashed_symlink=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi rm -f conftest.sym conftest.file - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_lstat_dereferences_slashed_symlink" >&5 printf "%s\n" "$gl_cv_func_lstat_dereferences_slashed_symlink" >&6; } @@ -19247,8 +21446,8 @@ printf %s "checking for a sed that does not truncate output... " >&6; } if test ${ac_cv_path_SED+y} then : printf %s "(cached) " >&6 -else $as_nop - ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/ +else case e in #( + e) ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/ for ac_i in 1 2 3 4 5 6 7; do ac_script="$ac_script$as_nl$ac_script" done @@ -19273,9 +21472,10 @@ do as_fn_executable_p "$ac_path_SED" || continue # Check for GNU ac_path_SED and select it if it is found. # Check for GNU $ac_path_SED -case `"$ac_path_SED" --version 2>&1` in +case `"$ac_path_SED" --version 2>&1` in #( *GNU*) ac_cv_path_SED="$ac_path_SED" ac_path_SED_found=:;; +#( *) ac_count=0 printf %s 0123456789 >"conftest.in" @@ -19310,13 +21510,85 @@ IFS=$as_save_IFS else ac_cv_path_SED=$SED fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5 printf "%s\n" "$ac_cv_path_SED" >&6; } SED="$ac_cv_path_SED" rm -f conftest.sed +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5 +printf %s "checking for grep that handles long lines and -e... " >&6; } +if test ${ac_cv_path_GREP+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) if test -z "$GREP"; then + ac_path_GREP_found=false + # Loop through the user's path and test for each of PROGNAME-LIST + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin +do + IFS=$as_save_IFS + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac + for ac_prog in grep ggrep + do + for ac_exec_ext in '' $ac_executable_extensions; do + ac_path_GREP="$as_dir$ac_prog$ac_exec_ext" + as_fn_executable_p "$ac_path_GREP" || continue +# Check for GNU ac_path_GREP and select it if it is found. + # Check for GNU $ac_path_GREP +case `"$ac_path_GREP" --version 2>&1` in #( +*GNU*) + ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;; +#( +*) + ac_count=0 + printf %s 0123456789 >"conftest.in" + while : + do + cat "conftest.in" "conftest.in" >"conftest.tmp" + mv "conftest.tmp" "conftest.in" + cp "conftest.in" "conftest.nl" + printf "%s\n" 'GREP' >> "conftest.nl" + "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break + diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break + as_fn_arith $ac_count + 1 && ac_count=$as_val + if test $ac_count -gt ${ac_path_GREP_max-0}; then + # Best one so far, save it but keep looking for a better one + ac_cv_path_GREP="$ac_path_GREP" + ac_path_GREP_max=$ac_count + fi + # 10*(2^10) chars as input seems more than enough + test $ac_count -gt 10 && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out;; +esac + + $ac_path_GREP_found && break 3 + done + done + done +IFS=$as_save_IFS + if test -z "$ac_cv_path_GREP"; then + as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 + fi +else + ac_cv_path_GREP=$GREP +fi + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5 +printf "%s\n" "$ac_cv_path_GREP" >&6; } + GREP="$ac_cv_path_GREP" + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether malloc (0) returns nonnull" >&5 @@ -19324,21 +21596,21 @@ printf %s "checking whether malloc (0) returns nonnull... " >&6; } if test ${ac_cv_func_malloc_0_nonnull+y} then : printf %s "(cached) " >&6 -else $as_nop - if test "$cross_compiling" = yes +else case e in #( + e) if test "$cross_compiling" = yes then : case "$host_os" in # Guess yes on platforms where we know the result. *-gnu* | freebsd* | netbsd* | openbsd* | bitrig* \ - | gnu* | *-musl* | midnightbsd* \ + | gnu* | *-musl* | midipix* | midnightbsd* \ | hpux* | solaris* | cygwin* | mingw* | msys* ) ac_cv_func_malloc_0_nonnull="guessing yes" ;; # If we don't know, obey --enable-cross-guesses. *) ac_cv_func_malloc_0_nonnull="$gl_cross_guess_normal" ;; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -19357,14 +21629,17 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : ac_cv_func_malloc_0_nonnull=yes -else $as_nop - ac_cv_func_malloc_0_nonnull=no +else case e in #( + e) ac_cv_func_malloc_0_nonnull=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_malloc_0_nonnull" >&5 printf "%s\n" "$ac_cv_func_malloc_0_nonnull" >&6; } @@ -19383,6 +21658,200 @@ printf "%s\n" "#define MALLOC_0_IS_NONNULL $gl_cv_func_malloc_0_nonnull" >>confd + + + + + if case "$host_os" in + mingw*) true ;; + *) test $ac_cv_func_mbsinit = yes ;; + esac \ + && test $ac_cv_func_mbrtowc = yes; then + + + + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc handles incomplete characters" >&5 +printf %s "checking whether mbrtowc handles incomplete characters... " >&6; } +if test ${gl_cv_func_mbrtowc_incomplete_state+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + case "$host_os" in + # Guess no on AIX and OSF/1. + aix* | osf*) gl_cv_func_mbrtowc_incomplete_state="guessing no" ;; + # Guess yes otherwise. + *) gl_cv_func_mbrtowc_incomplete_state="guessing yes" ;; + esac + if test $LOCALE_JA != none; then + if test "$cross_compiling" = yes +then : + : +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#include +#include +#include +int main () +{ + if (setlocale (LC_ALL, "$LOCALE_JA") != NULL) + { + const char input[] = "B\217\253\344\217\251\316er"; /* "Büßer" */ + mbstate_t state; + wchar_t wc; + + memset (&state, '\0', sizeof (mbstate_t)); + if (mbrtowc (&wc, input + 1, 1, &state) == (size_t)(-2)) + if (mbsinit (&state)) + return 2; + } + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO" +then : + gl_cv_func_mbrtowc_incomplete_state=yes +else case e in #( + e) gl_cv_func_mbrtowc_incomplete_state=no ;; +esac +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac +fi + + else + if test $LOCALE_FR_UTF8 != none; then + if test "$cross_compiling" = yes +then : + : +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#include +#include +#include +int main () +{ + if (setlocale (LC_ALL, "$LOCALE_FR_UTF8") != NULL) + { + const char input[] = "B\303\274\303\237er"; /* "Büßer" */ + mbstate_t state; + wchar_t wc; + + memset (&state, '\0', sizeof (mbstate_t)); + if (mbrtowc (&wc, input + 1, 1, &state) == (size_t)(-2)) + if (mbsinit (&state)) + return 2; + } + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO" +then : + gl_cv_func_mbrtowc_incomplete_state=yes +else case e in #( + e) gl_cv_func_mbrtowc_incomplete_state=no ;; +esac +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac +fi + + fi + fi + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_incomplete_state" >&5 +printf "%s\n" "$gl_cv_func_mbrtowc_incomplete_state" >&6; } + + + + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc works as well as mbtowc" >&5 +printf %s "checking whether mbrtowc works as well as mbtowc... " >&6; } +if test ${gl_cv_func_mbrtowc_sanitycheck+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + case "$host_os" in + # Guess no on Solaris 8. + solaris2.8) gl_cv_func_mbrtowc_sanitycheck="guessing no" ;; + # Guess yes otherwise. + *) gl_cv_func_mbrtowc_sanitycheck="guessing yes" ;; + esac + if test $LOCALE_ZH_CN != none; then + if test "$cross_compiling" = yes +then : + : +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#include +#include +#include +#include +int main () +{ + /* This fails on Solaris 8: + mbrtowc returns 2, and sets wc to 0x00F0. + mbtowc returns 4 (correct) and sets wc to 0x5EDC. */ + if (setlocale (LC_ALL, "$LOCALE_ZH_CN") != NULL) + { + char input[] = "B\250\271\201\060\211\070er"; /* "Büßer" */ + mbstate_t state; + wchar_t wc; + + memset (&state, '\0', sizeof (mbstate_t)); + if (mbrtowc (&wc, input + 3, 6, &state) != 4 + && mbtowc (&wc, input + 3, 6) == 4) + return 2; + } + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO" +then : + gl_cv_func_mbrtowc_sanitycheck=yes +else case e in #( + e) gl_cv_func_mbrtowc_sanitycheck=no ;; +esac +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac +fi + + fi + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_sanitycheck" >&5 +printf "%s\n" "$gl_cv_func_mbrtowc_sanitycheck" >&6; } + + REPLACE_MBSTATE_T=0 + case "$gl_cv_func_mbrtowc_incomplete_state" in + *yes) ;; + *) REPLACE_MBSTATE_T=1 ;; + esac + case "$gl_cv_func_mbrtowc_sanitycheck" in + *yes) ;; + *) REPLACE_MBSTATE_T=1 ;; + esac + else + REPLACE_MBSTATE_T=1 + fi + + + GL_GNULIB_EXPLICIT_BZERO=0 @@ -19411,6 +21880,10 @@ printf "%s\n" "#define MALLOC_0_IS_NONNULL $gl_cv_func_malloc_0_nonnull" >>confd + GL_GNULIB_MEMSET_EXPLICIT=0 + + + GL_GNULIB_RAWMEMCHR=0 @@ -19562,6 +22035,7 @@ printf "%s\n" "#define MALLOC_0_IS_NONNULL $gl_cv_func_malloc_0_nonnull" >>confd HAVE_FFSLL=1; HAVE_DECL_MEMMEM=1; HAVE_MEMPCPY=1; + HAVE_MEMSET_EXPLICIT=1; HAVE_DECL_MEMRCHR=1; HAVE_RAWMEMCHR=1; HAVE_STPCPY=1; @@ -19583,6 +22057,8 @@ printf "%s\n" "#define MALLOC_0_IS_NONNULL $gl_cv_func_malloc_0_nonnull" >>confd REPLACE_FFSLL=0; REPLACE_MEMCHR=0; REPLACE_MEMMEM=0; + REPLACE_MEMPCPY=0; + REPLACE_STPCPY=0; REPLACE_STPNCPY=0; REPLACE_STRCHRNUL=0; REPLACE_STRDUP=0; @@ -19609,8 +22085,9 @@ printf "%s\n" "#define MALLOC_0_IS_NONNULL $gl_cv_func_malloc_0_nonnull" >>confd if test "x$ac_cv_func_mmap" = xyes then : gl_have_mmap=yes -else $as_nop - gl_have_mmap=no +else case e in #( + e) gl_have_mmap=no ;; +esac fi @@ -19629,7 +22106,7 @@ printf %s "checking for MAP_ANONYMOUS... " >&6; } _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "I cannot identify this map" >/dev/null 2>&1 + $EGREP_TRADITIONAL "I cannot identify this map" >/dev/null 2>&1 then : gl_have_mmap_anonymous=yes fi @@ -19646,7 +22123,7 @@ rm -rf conftest* _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "I cannot identify this map" >/dev/null 2>&1 + $EGREP_TRADITIONAL "I cannot identify this map" >/dev/null 2>&1 then : printf "%s\n" "#define MAP_ANONYMOUS MAP_ANON" >>confdefs.h @@ -19688,8 +22165,8 @@ printf %s "checking whether memchr works... " >&6; } if test ${gl_cv_func_memchr_works+y} then : printf %s "(cached) " >&6 -else $as_nop - if test "$cross_compiling" = yes +else case e in #( + e) if test "$cross_compiling" = yes then : case "$host_os" in # Guess no on Android. @@ -19700,8 +22177,8 @@ then : *) gl_cv_func_memchr_works="$gl_cross_guess_normal" ;; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -19772,14 +22249,17 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_memchr_works=yes -else $as_nop - gl_cv_func_memchr_works=no +else case e in #( + e) gl_cv_func_memchr_works=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_memchr_works" >&5 printf "%s\n" "$gl_cv_func_memchr_works" >&6; } @@ -19797,8 +22277,8 @@ printf %s "checking whether defines MIN and MAX... " >&6; } if test ${gl_cv_minmax_in_limits_h+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int x = MIN (42, 17); @@ -19813,10 +22293,12 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_minmax_in_limits_h=yes -else $as_nop - gl_cv_minmax_in_limits_h=no +else case e in #( + e) gl_cv_minmax_in_limits_h=no ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_minmax_in_limits_h" >&5 printf "%s\n" "$gl_cv_minmax_in_limits_h" >&6; } @@ -19836,8 +22318,8 @@ printf %s "checking whether defines MIN and MAX... " >&6; } if test ${gl_cv_minmax_in_sys_param_h+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int x = MIN (42, 17); @@ -19852,10 +22334,12 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_minmax_in_sys_param_h=yes -else $as_nop - gl_cv_minmax_in_sys_param_h=no +else case e in #( + e) gl_cv_minmax_in_sys_param_h=no ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_minmax_in_sys_param_h" >&5 printf "%s\n" "$gl_cv_minmax_in_sys_param_h" >&6; } @@ -19875,13 +22359,16 @@ printf "%s\n" "#define HAVE_MINMAX_IN_SYS_PARAM_H 1" >>confdefs.h HAVE_STRPTIME=1; HAVE_TIMEGM=1; HAVE_TIMESPEC_GET=1; + HAVE_TIMESPEC_GETRES=1; HAVE_TIMEZONE_T=0; REPLACE_CTIME=GNULIB_PORTCHECK; REPLACE_LOCALTIME_R=GNULIB_PORTCHECK; REPLACE_MKTIME=GNULIB_PORTCHECK; REPLACE_NANOSLEEP=GNULIB_PORTCHECK; REPLACE_STRFTIME=GNULIB_PORTCHECK; + REPLACE_TIME=0; REPLACE_TIMEGM=GNULIB_PORTCHECK; + REPLACE_TIMESPEC_GET=GNULIB_PORTCHECK; REPLACE_TZSET=GNULIB_PORTCHECK; : ${GNULIB_GETTIMEOFDAY=0}; @@ -19894,8 +22381,8 @@ printf %s "checking whether time_t is signed... " >&6; } if test ${gl_cv_time_t_is_signed+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include char time_t_signed[(time_t) -1 < 0 ? 1 : -1]; @@ -19910,10 +22397,12 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_time_t_is_signed=yes -else $as_nop - gl_cv_time_t_is_signed=no +else case e in #( + e) gl_cv_time_t_is_signed=no ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_time_t_is_signed" >&5 printf "%s\n" "$gl_cv_time_t_is_signed" >&6; } @@ -19927,8 +22416,9 @@ ac_fn_check_decl "$LINENO" "alarm" "ac_cv_have_decl_alarm" "$ac_includes_default if test "x$ac_cv_have_decl_alarm" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_ALARM $ac_have_decl" >>confdefs.h @@ -19943,8 +22433,8 @@ printf %s "checking for working mktime... " >&6; } if test ${gl_cv_func_working_mktime+y} then : printf %s "(cached) " >&6 -else $as_nop - if test $APPLE_UNIVERSAL_BUILD = 1; then +else case e in #( + e) if test $APPLE_UNIVERSAL_BUILD = 1; then # A universal build on Apple Mac OS X platforms. # The test result would be 'yes' in 32-bit mode and 'no' in 64-bit mode. # But we need a configuration result that is valid in both modes. @@ -19958,8 +22448,8 @@ then : *) gl_cv_func_working_mktime="$gl_cross_guess_normal" ;; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Test program from Paul Eggert and Tony Leneis. */ #include @@ -20005,7 +22495,8 @@ spring_forward_gap () instead of "TZ=America/Vancouver" in order to detect the bug even on systems that don't support the Olson extension, or don't have the full zoneinfo tables installed. */ - putenv ("TZ=PST8PDT,M4.1.0,M10.5.0"); + if (putenv ("TZ=PST8PDT,M4.1.0,M10.5.0") != 0) + return -1; tm.tm_year = 98; tm.tm_mon = 3; @@ -20093,7 +22584,8 @@ year_2050_test () instead of "TZ=America/Vancouver" in order to detect the bug even on systems that don't support the Olson extension, or don't have the full zoneinfo tables installed. */ - putenv ("TZ=PST8PDT,M4.1.0,M10.5.0"); + if (putenv ("TZ=PST8PDT,M4.1.0,M10.5.0") != 0) + return -1; t = mktime (&tm); @@ -20104,6 +22596,25 @@ year_2050_test () || (0 < t && answer - 120 <= t && t <= answer + 120)); } +static int +indiana_test () +{ + if (putenv ("TZ=America/Indiana/Indianapolis") != 0) + return -1; + struct tm tm; + tm.tm_year = 1986 - 1900; tm.tm_mon = 4 - 1; tm.tm_mday = 28; + tm.tm_hour = 16; tm.tm_min = 24; tm.tm_sec = 50; tm.tm_isdst = 0; + time_t std = mktime (&tm); + if (! (std == 515107490 || std == 515107503)) + return 1; + + /* This platform supports TZDB, either without or with leap seconds. + Return true if GNU Bug#48085 is absent. */ + tm.tm_isdst = 1; + time_t dst = mktime (&tm); + return std - dst == 60 * 60; +} + int main () { @@ -20159,7 +22670,7 @@ main () result |= 16; if (! spring_forward_gap ()) result |= 32; - if (! year_2050_test ()) + if (! year_2050_test () || ! indiana_test ()) result |= 64; return result; } @@ -20167,15 +22678,18 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_working_mktime=yes -else $as_nop - gl_cv_func_working_mktime=no +else case e in #( + e) gl_cv_func_working_mktime=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_working_mktime" >&5 printf "%s\n" "$gl_cv_func_working_mktime" >&6; } @@ -20206,6 +22720,10 @@ printf "%s\n" "$gl_cv_func_working_mktime" >&6; } + GL_GNULIB_TIME=0 + + + GL_GNULIB_TIMEGM=0 @@ -20214,6 +22732,10 @@ printf "%s\n" "$gl_cv_func_working_mktime" >&6; } + GL_GNULIB_TIMESPEC_GETRES=0 + + + GL_GNULIB_TIME_R=0 @@ -20233,14 +22755,13 @@ printf "%s\n" "$gl_cv_func_working_mktime" >&6; } - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether struct tm is in sys/time.h or time.h" >&5 printf %s "checking whether struct tm is in sys/time.h or time.h... " >&6; } if test ${ac_cv_struct_tm+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include @@ -20258,10 +22779,12 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : ac_cv_struct_tm=time.h -else $as_nop - ac_cv_struct_tm=sys/time.h +else case e in #( + e) ac_cv_struct_tm=sys/time.h ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_struct_tm" >&5 printf "%s\n" "$ac_cv_struct_tm" >&6; } @@ -20293,8 +22816,9 @@ else if test "x$ac_cv_have_decl_tzname" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_TZNAME $ac_have_decl" >>confdefs.h @@ -20303,8 +22827,8 @@ printf %s "checking for tzname... " >&6; } if test ${ac_cv_var_tzname+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #if !HAVE_DECL_TZNAME @@ -20322,11 +22846,13 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : ac_cv_var_tzname=yes -else $as_nop - ac_cv_var_tzname=no +else case e in #( + e) ac_cv_var_tzname=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ - conftest$ac_exeext conftest.$ac_ext + conftest$ac_exeext conftest.$ac_ext ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_var_tzname" >&5 printf "%s\n" "$ac_cv_var_tzname" >&6; } @@ -20354,8 +22880,8 @@ printf %s "checking for O_CLOEXEC... " >&6; } if test ${gl_cv_macro_O_CLOEXEC+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #ifndef O_CLOEXEC @@ -20373,10 +22899,12 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_macro_O_CLOEXEC=yes -else $as_nop - gl_cv_macro_O_CLOEXEC=no +else case e in #( + e) gl_cv_macro_O_CLOEXEC=no ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_macro_O_CLOEXEC" >&5 printf "%s\n" "$gl_cv_macro_O_CLOEXEC" >&6; } @@ -20388,8 +22916,8 @@ printf %s "checking for promoted mode_t type... " >&6; } if test ${gl_cv_promoted_mode_t+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -20404,11 +22932,13 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_promoted_mode_t='int' -else $as_nop - gl_cv_promoted_mode_t='mode_t' +else case e in #( + e) gl_cv_promoted_mode_t='mode_t' ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_promoted_mode_t" >&5 printf "%s\n" "$gl_cv_promoted_mode_t" >&6; } @@ -20445,8 +22975,9 @@ then : printf "%s\n" "#define HAVE_SIGSET_T 1" >>confdefs.h gl_cv_type_sigset_t=yes -else $as_nop - gl_cv_type_sigset_t=no +else case e in #( + e) gl_cv_type_sigset_t=no ;; +esac fi if test $gl_cv_type_sigset_t != yes; then @@ -20479,8 +23010,8 @@ fi - if test $REPLACE_MALLOC = 1; then - REPLACE_REALLOC=1 + if test $REPLACE_MALLOC_FOR_MALLOC_POSIX = 1; then + REPLACE_REALLOC_FOR_REALLOC_POSIX=1 fi @@ -20489,8 +23020,9 @@ ac_fn_check_decl "$LINENO" "setenv" "ac_cv_have_decl_setenv" "$ac_includes_defau if test "x$ac_cv_have_decl_setenv" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_SETENV $ac_have_decl" >>confdefs.h @@ -20513,45 +23045,97 @@ then : fi - ac_fn_c_check_func "$LINENO" "tsearch" "ac_cv_func_tsearch" + + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for tsearch" >&5 +printf %s "checking for tsearch... " >&6; } +if test ${gl_cv_onwards_func_tsearch+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + exec 9>&6 6>/dev/null + + case "$host_os" in + + linux*-android*) + ac_fn_check_decl "$LINENO" "tsearch" "ac_cv_have_decl_tsearch" "#include +" "$ac_c_undeclared_builtin_options" "CFLAGS" +if test "x$ac_cv_have_decl_tsearch" = xyes +then : + +fi + if test $ac_cv_have_decl_tsearch = yes; then + ac_fn_c_check_func "$LINENO" "tsearch" "ac_cv_func_tsearch" if test "x$ac_cv_func_tsearch" = xyes then : - printf "%s\n" "#define HAVE_TSEARCH 1" >>confdefs.h fi + if test $ac_cv_func_tsearch = yes; then + gl_cv_onwards_func_tsearch=yes + else + gl_cv_onwards_func_tsearch='future OS version' + fi + else + gl_cv_onwards_func_tsearch='future OS version' + fi + ;; -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for uid_t in sys/types.h" >&5 -printf %s "checking for uid_t in sys/types.h... " >&6; } -if test ${ac_cv_type_uid_t+y} + *) + ac_fn_c_check_func "$LINENO" "tsearch" "ac_cv_func_tsearch" +if test "x$ac_cv_func_tsearch" = xyes then : - printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "uid_t" >/dev/null 2>&1 -then : - ac_cv_type_uid_t=yes -else $as_nop - ac_cv_type_uid_t=no fi -rm -rf conftest* + gl_cv_onwards_func_tsearch=$ac_cv_func_tsearch + ;; + + esac + + exec 6>&9 9>&- + + ;; +esac fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_uid_t" >&5 -printf "%s\n" "$ac_cv_type_uid_t" >&6; } -if test $ac_cv_type_uid_t = no; then +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_onwards_func_tsearch" >&5 +printf "%s\n" "$gl_cv_onwards_func_tsearch" >&6; } + + case "$gl_cv_onwards_func_tsearch" in + future*) ac_cv_func_tsearch=no ;; + *) ac_cv_func_tsearch=$gl_cv_onwards_func_tsearch ;; + esac + if test $ac_cv_func_tsearch = yes; then + +printf "%s\n" "#define HAVE_TSEARCH 1" >>confdefs.h + fi + + + + +ac_fn_c_check_type "$LINENO" "uid_t" "ac_cv_type_uid_t" "$ac_includes_default" +if test "x$ac_cv_type_uid_t" = xyes +then : + +else case e in #( + e) printf "%s\n" "#define uid_t int" >>confdefs.h + ;; +esac +fi +ac_fn_c_check_type "$LINENO" "gid_t" "ac_cv_type_gid_t" "$ac_includes_default" +if test "x$ac_cv_type_gid_t" = xyes +then : +else case e in #( + e) printf "%s\n" "#define gid_t int" >>confdefs.h - + ;; +esac fi @@ -20573,8 +23157,8 @@ printf %s "checking absolute name of ... " >&6; } if test ${gl_cv_next_signal_h+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -20607,10 +23191,11 @@ _ACEOF gl_cv_absolute_signal_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | sed -n "$gl_absolute_header_sed"` - gl_header=$gl_cv_absolute_signal_h - gl_cv_next_signal_h='"'$gl_header'"' - + gl_header=$gl_cv_absolute_signal_h + gl_cv_next_signal_h='"'$gl_header'"' + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_signal_h" >&5 printf "%s\n" "$gl_cv_next_signal_h" >&6; } @@ -20639,8 +23224,9 @@ printf "%s\n" "$gl_cv_next_signal_h" >&6; } if test "x$ac_cv_type_volatile_sig_atomic_t" = xyes then : -else $as_nop - HAVE_TYPE_VOLATILE_SIG_ATOMIC_T=0 +else case e in #( + e) HAVE_TYPE_VOLATILE_SIG_ATOMIC_T=0 ;; +esac fi @@ -20656,8 +23242,9 @@ fi if test "x$ac_cv_type_sighandler_t" = xyes then : -else $as_nop - HAVE_SIGHANDLER_T=0 +else case e in #( + e) HAVE_SIGHANDLER_T=0 ;; +esac fi @@ -20669,101 +23256,17 @@ fi + case "$host_os" in + *-musl* | midipix*) -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for stdbool.h that conforms to C99" >&5 -printf %s "checking for stdbool.h that conforms to C99... " >&6; } -if test ${ac_cv_header_stdbool_h+y} -then : - printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ +printf "%s\n" "#define MUSL_LIBC 1" >>confdefs.h - #include + ;; + esac - #ifdef __cplusplus - typedef bool Bool; - #else - typedef _Bool Bool; - #ifndef bool - "error: bool is not defined" - #endif - #ifndef false - "error: false is not defined" - #endif - #if false - "error: false is not 0" - #endif - #ifndef true - "error: true is not defined" - #endif - #if true != 1 - "error: true is not 1" - #endif - #endif - #ifndef __bool_true_false_are_defined - "error: __bool_true_false_are_defined is not defined" - #endif - struct s { Bool s: 1; Bool t; bool u: 1; bool v; } s; - char a[true == 1 ? 1 : -1]; - char b[false == 0 ? 1 : -1]; - char c[__bool_true_false_are_defined == 1 ? 1 : -1]; - char d[(bool) 0.5 == true ? 1 : -1]; - /* See body of main program for 'e'. */ - char f[(Bool) 0.0 == false ? 1 : -1]; - char g[true]; - char h[sizeof (Bool)]; - char i[sizeof s.t]; - enum { j = false, k = true, l = false * true, m = true * 256 }; - /* The following fails for - HP aC++/ANSI C B3910B A.05.55 [Dec 04 2003]. */ - Bool n[m]; - char o[sizeof n == m * sizeof n[0] ? 1 : -1]; - char p[-1 - (Bool) 0 < 0 && -1 - (bool) 0 < 0 ? 1 : -1]; - /* Catch a bug in an HP-UX C compiler. See - https://gcc.gnu.org/ml/gcc-patches/2003-12/msg02303.html - https://lists.gnu.org/r/bug-coreutils/2005-11/msg00161.html - */ - Bool q = true; - Bool *pq = &q; - bool *qq = &q; - -int -main (void) -{ - - bool e = &s; - *pq |= q; *pq |= ! q; - *qq |= q; *qq |= ! q; - /* Refer to every declared value, to avoid compiler optimizations. */ - return (!a + !b + !c + !d + !e + !f + !g + !h + !i + !!j + !k + !!l - + !m + !n + !o + !p + !q + !pq + !qq); - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - ac_cv_header_stdbool_h=yes -else $as_nop - ac_cv_header_stdbool_h=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdbool_h" >&5 -printf "%s\n" "$ac_cv_header_stdbool_h" >&6; } - ac_fn_c_check_type "$LINENO" "_Bool" "ac_cv_type__Bool" "$ac_includes_default" -if test "x$ac_cv_type__Bool" = xyes -then : - -printf "%s\n" "#define HAVE__BOOL 1" >>confdefs.h - - -fi @@ -20772,15 +23275,33 @@ ac_fn_check_decl "$LINENO" "fcloseall" "ac_cv_have_decl_fcloseall" "$ac_includes if test "x$ac_cv_have_decl_fcloseall" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_FCLOSEALL $ac_have_decl" >>confdefs.h +ac_fn_check_decl "$LINENO" "getw" "ac_cv_have_decl_getw" "$ac_includes_default" "$ac_c_undeclared_builtin_options" "CFLAGS" +if test "x$ac_cv_have_decl_getw" = xyes +then : + ac_have_decl=1 +else case e in #( + e) ac_have_decl=0 ;; +esac +fi +printf "%s\n" "#define HAVE_DECL_GETW $ac_have_decl" >>confdefs.h +ac_fn_check_decl "$LINENO" "putw" "ac_cv_have_decl_putw" "$ac_includes_default" "$ac_c_undeclared_builtin_options" "CFLAGS" +if test "x$ac_cv_have_decl_putw" = xyes +then : + ac_have_decl=1 +else case e in #( + e) ac_have_decl=0 ;; +esac +fi +printf "%s\n" "#define HAVE_DECL_PUTW $ac_have_decl" >>confdefs.h - printf "%s\n" "#define __USE_MINGW_ANSI_STDIO 1" >>confdefs.h @@ -20798,8 +23319,8 @@ printf %s "checking absolute name of ... " >&6; } if test ${gl_cv_next_stdio_h+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -20832,10 +23353,11 @@ _ACEOF gl_cv_absolute_stdio_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | sed -n "$gl_absolute_header_sed"` - gl_header=$gl_cv_absolute_stdio_h - gl_cv_next_stdio_h='"'$gl_header'"' - + gl_header=$gl_cv_absolute_stdio_h + gl_cv_next_stdio_h='"'$gl_header'"' + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_stdio_h" >&5 printf "%s\n" "$gl_cv_next_stdio_h" >&6; } @@ -20860,8 +23382,8 @@ printf %s "checking which flavor of printf attribute matches inttypes macros... if test ${gl_cv_func_printf_attribute_flavor+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #define __STDC_FORMAT_MACROS 1 @@ -20886,10 +23408,12 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_func_printf_attribute_flavor=system -else $as_nop - gl_cv_func_printf_attribute_flavor=gnu +else case e in #( + e) gl_cv_func_printf_attribute_flavor=gnu ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_printf_attribute_flavor" >&5 printf "%s\n" "$gl_cv_func_printf_attribute_flavor" >&6; } @@ -20911,16 +23435,29 @@ printf "%s\n" "#define GNULIB_PRINTF_ATTRIBUTE_FLAVOR_GNU 1" >>confdefs.h + + if test $ac_cv_have_decl_fcloseall = no; then HAVE_DECL_FCLOSEALL=0 fi + + if test $ac_cv_have_decl_getw = no; then + HAVE_DECL_GETW=0 + fi + + + if test $ac_cv_have_decl_putw = no; then + HAVE_DECL_PUTW=0 + fi + ac_fn_check_decl "$LINENO" "ecvt" "ac_cv_have_decl_ecvt" "$ac_includes_default" "$ac_c_undeclared_builtin_options" "CFLAGS" if test "x$ac_cv_have_decl_ecvt" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_ECVT $ac_have_decl" >>confdefs.h @@ -20928,8 +23465,9 @@ ac_fn_check_decl "$LINENO" "fcvt" "ac_cv_have_decl_fcvt" "$ac_includes_default" if test "x$ac_cv_have_decl_fcvt" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_FCVT $ac_have_decl" >>confdefs.h @@ -20937,8 +23475,9 @@ ac_fn_check_decl "$LINENO" "gcvt" "ac_cv_have_decl_gcvt" "$ac_includes_default" if test "x$ac_cv_have_decl_gcvt" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_GCVT $ac_have_decl" >>confdefs.h @@ -20960,8 +23499,8 @@ printf %s "checking absolute name of ... " >&6; } if test ${gl_cv_next_stdlib_h+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -20994,10 +23533,11 @@ _ACEOF gl_cv_absolute_stdlib_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | sed -n "$gl_absolute_header_sed"` - gl_header=$gl_cv_absolute_stdlib_h - gl_cv_next_stdlib_h='"'$gl_header'"' - + gl_header=$gl_cv_absolute_stdlib_h + gl_cv_next_stdlib_h='"'$gl_header'"' + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_stdlib_h" >&5 printf "%s\n" "$gl_cv_next_stdlib_h" >&6; } @@ -21024,6 +23564,65 @@ printf "%s\n" "$gl_cv_next_stdlib_h" >&6; } + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether MB_CUR_MAX is correct" >&5 +printf %s "checking whether MB_CUR_MAX is correct... " >&6; } +if test ${gl_cv_macro_MB_CUR_MAX_good+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + case "$host_os" in + # Guess no on Solaris. + solaris*) gl_cv_macro_MB_CUR_MAX_good="guessing no" ;; + # Guess yes otherwise. + *) gl_cv_macro_MB_CUR_MAX_good="guessing yes" ;; + esac + if test $LOCALE_FR_UTF8 != none; then + if test "$cross_compiling" = yes +then : + : +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#include +#include +int main () +{ + int result = 0; + if (setlocale (LC_ALL, "$LOCALE_FR_UTF8") != NULL) + { + if (MB_CUR_MAX < 4) + result |= 1; + } + return result; +} +_ACEOF +if ac_fn_c_try_run "$LINENO" +then : + gl_cv_macro_MB_CUR_MAX_good=yes +else case e in #( + e) gl_cv_macro_MB_CUR_MAX_good=no ;; +esac +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac +fi + + fi + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_macro_MB_CUR_MAX_good" >&5 +printf "%s\n" "$gl_cv_macro_MB_CUR_MAX_good" >&6; } + case "$gl_cv_macro_MB_CUR_MAX_good" in + *yes) ;; + *) REPLACE_MB_CUR_MAX=1 ;; + esac + + if test $ac_cv_have_decl_ecvt = no; then HAVE_DECL_ECVT=0 fi @@ -21048,22 +23647,22 @@ printf %s "checking whether strerror(0) succeeds... " >&6; } if test ${gl_cv_func_strerror_0_works+y} then : printf %s "(cached) " >&6 -else $as_nop - if test "$cross_compiling" = yes +else case e in #( + e) if test "$cross_compiling" = yes then : case "$host_os" in - # Guess yes on glibc systems. - *-gnu* | gnu*) gl_cv_func_strerror_0_works="guessing yes" ;; - # Guess yes on musl systems. - *-musl*) gl_cv_func_strerror_0_works="guessing yes" ;; - # Guess yes on native Windows. - mingw*) gl_cv_func_strerror_0_works="guessing yes" ;; - # If we don't know, obey --enable-cross-guesses. - *) gl_cv_func_strerror_0_works="$gl_cross_guess_normal" ;; + # Guess yes on glibc systems. + *-gnu* | gnu*) gl_cv_func_strerror_0_works="guessing yes" ;; + # Guess yes on musl systems. + *-musl* | midipix*) gl_cv_func_strerror_0_works="guessing yes" ;; + # Guess yes on native Windows. + mingw*) gl_cv_func_strerror_0_works="guessing yes" ;; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_strerror_0_works="$gl_cross_guess_normal" ;; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include @@ -21087,14 +23686,17 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_strerror_0_works=yes -else $as_nop - gl_cv_func_strerror_0_works=no +else case e in #( + e) gl_cv_func_strerror_0_works=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_strerror_0_works" >&5 printf "%s\n" "$gl_cv_func_strerror_0_works" >&6; } @@ -21115,15 +23717,85 @@ printf "%s\n" "#define REPLACE_STRERROR_0 1" >>confdefs.h + + + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for strerror_r" >&5 +printf %s "checking for strerror_r... " >&6; } +if test ${gl_cv_onwards_func_strerror_r+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + exec 9>&6 6>/dev/null + + case "$host_os" in + + linux*-android*) + ac_fn_check_decl "$LINENO" "strerror_r" "ac_cv_have_decl_strerror_r" "#include +" "$ac_c_undeclared_builtin_options" "CFLAGS" +if test "x$ac_cv_have_decl_strerror_r" = xyes +then : + +fi + if test $ac_cv_have_decl_strerror_r = yes; then + ac_fn_c_check_func "$LINENO" "strerror_r" "ac_cv_func_strerror_r" +if test "x$ac_cv_func_strerror_r" = xyes +then : + +fi + + if test $ac_cv_func_strerror_r = yes; then + gl_cv_onwards_func_strerror_r=yes + else + gl_cv_onwards_func_strerror_r='future OS version' + fi + else + gl_cv_onwards_func_strerror_r='future OS version' + fi + ;; + + + *) + ac_fn_c_check_func "$LINENO" "strerror_r" "ac_cv_func_strerror_r" +if test "x$ac_cv_func_strerror_r" = xyes +then : + +fi + + gl_cv_onwards_func_strerror_r=$ac_cv_func_strerror_r + ;; + + esac + + exec 6>&9 9>&- + + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_onwards_func_strerror_r" >&5 +printf "%s\n" "$gl_cv_onwards_func_strerror_r" >&6; } + + case "$gl_cv_onwards_func_strerror_r" in + future*) ac_cv_func_strerror_r=no ;; + *) ac_cv_func_strerror_r=$gl_cv_onwards_func_strerror_r ;; + esac + if test $ac_cv_func_strerror_r = yes; then + +printf "%s\n" "#define HAVE_STRERROR_R 1" >>confdefs.h + + fi + + if test $ac_cv_func_strerror_r = yes; then - if test "$ERRNO_H:$REPLACE_STRERROR_0" = :0; then + if test "$GL_GENERATE_ERRNO_H:$REPLACE_STRERROR_0" = false:0; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for strerror_r with POSIX signature" >&5 printf %s "checking for strerror_r with POSIX signature... " >&6; } if test ${gl_cv_func_strerror_r_posix_signature+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int strerror_r (int, char *, size_t); @@ -21139,11 +23811,13 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_func_strerror_r_posix_signature=yes -else $as_nop - gl_cv_func_strerror_r_posix_signature=no +else case e in #( + e) gl_cv_func_strerror_r_posix_signature=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_strerror_r_posix_signature" >&5 printf "%s\n" "$gl_cv_func_strerror_r_posix_signature" >&6; } @@ -21153,8 +23827,8 @@ printf %s "checking whether strerror_r works... " >&6; } if test ${gl_cv_func_strerror_r_works+y} then : printf %s "(cached) " >&6 -else $as_nop - if test "$cross_compiling" = yes +else case e in #( + e) if test "$cross_compiling" = yes then : case "$host_os" in @@ -21168,8 +23842,8 @@ then : *) gl_cv_func_strerror_r_works="guessing yes";; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include @@ -21208,14 +23882,17 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_strerror_r_works=yes -else $as_nop - gl_cv_func_strerror_r_works=no +else case e in #( + e) gl_cv_func_strerror_r_works=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_strerror_r_works" >&5 printf "%s\n" "$gl_cv_func_strerror_r_works" >&6; } @@ -21227,13 +23904,13 @@ printf %s "checking whether __xpg_strerror_r works... " >&6; } if test ${gl_cv_func_strerror_r_works+y} then : printf %s "(cached) " >&6 -else $as_nop - if test "$cross_compiling" = yes +else case e in #( + e) if test "$cross_compiling" = yes then : gl_cv_func_strerror_r_works="$gl_cross_guess_normal" -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include @@ -21267,20 +23944,27 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_strerror_r_works=yes -else $as_nop - gl_cv_func_strerror_r_works=no +else case e in #( + e) gl_cv_func_strerror_r_works=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_strerror_r_works" >&5 printf "%s\n" "$gl_cv_func_strerror_r_works" >&6; } fi fi fi + else + case "$gl_cv_onwards_func_strerror_r" in + future*) REPLACE_STRERROR_R=1 ;; + esac fi @@ -21301,8 +23985,8 @@ printf %s "checking absolute name of ... " >&6; } if test ${gl_cv_next_string_h+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -21335,10 +24019,11 @@ _ACEOF gl_cv_absolute_string_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | sed -n "$gl_absolute_header_sed"` - gl_header=$gl_cv_absolute_string_h - gl_cv_next_string_h='"'$gl_header'"' - + gl_header=$gl_cv_absolute_string_h + gl_cv_next_string_h='"'$gl_header'"' + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_string_h" >&5 printf "%s\n" "$gl_cv_next_string_h" >&6; } @@ -21384,8 +24069,8 @@ printf %s "checking absolute name of ... " >&6; } if test ${gl_cv_next_strings_h+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) if test $ac_cv_header_strings_h = yes; then @@ -21421,13 +24106,14 @@ _ACEOF gl_cv_absolute_strings_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | sed -n "$gl_absolute_header_sed"` - gl_header=$gl_cv_absolute_strings_h - gl_cv_next_strings_h='"'$gl_header'"' + gl_header=$gl_cv_absolute_strings_h + gl_cv_next_strings_h='"'$gl_header'"' else gl_cv_next_strings_h='<'strings.h'>' fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_strings_h" >&5 printf "%s\n" "$gl_cv_next_strings_h" >&6; } @@ -21467,8 +24153,9 @@ ac_fn_check_decl "$LINENO" "strnlen" "ac_cv_have_decl_strnlen" "$ac_includes_def if test "x$ac_cv_have_decl_strnlen" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_STRNLEN $ac_have_decl" >>confdefs.h @@ -21478,8 +24165,9 @@ ac_fn_check_decl "$LINENO" "strtoimax" "ac_cv_have_decl_strtoimax" "$ac_includes if test "x$ac_cv_have_decl_strtoimax" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_STRTOIMAX $ac_have_decl" >>confdefs.h @@ -21503,8 +24191,8 @@ printf %s "checking absolute name of ... " >&6; } if test ${gl_cv_next_sys_random_h+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) if test $ac_cv_header_sys_random_h = yes; then @@ -21540,13 +24228,14 @@ _ACEOF gl_cv_absolute_sys_random_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | sed -n "$gl_absolute_header_sed"` - gl_header=$gl_cv_absolute_sys_random_h - gl_cv_next_sys_random_h='"'$gl_header'"' + gl_header=$gl_cv_absolute_sys_random_h + gl_cv_next_sys_random_h='"'$gl_header'"' else gl_cv_next_sys_random_h='<'sys/random.h'>' fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_sys_random_h" >&5 printf "%s\n" "$gl_cv_next_sys_random_h" >&6; } @@ -21612,8 +24301,8 @@ printf %s "checking absolute name of ... " >&6; } if test ${gl_cv_next_sys_types_h+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -21646,10 +24335,11 @@ _ACEOF gl_cv_absolute_sys_types_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | sed -n "$gl_absolute_header_sed"` - gl_header=$gl_cv_absolute_sys_types_h - gl_cv_next_sys_types_h='"'$gl_header'"' - + gl_header=$gl_cv_absolute_sys_types_h + gl_cv_next_sys_types_h='"'$gl_header'"' + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_sys_types_h" >&5 printf "%s\n" "$gl_cv_next_sys_types_h" >&6; } @@ -21705,8 +24395,8 @@ printf %s "checking absolute name of ... " >&6; } if test ${gl_cv_next_sys_wait_h+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) if test $ac_cv_header_sys_wait_h = yes; then @@ -21742,13 +24432,14 @@ _ACEOF gl_cv_absolute_sys_wait_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | sed -n "$gl_absolute_header_sed"` - gl_header=$gl_cv_absolute_sys_wait_h - gl_cv_next_sys_wait_h='"'$gl_header'"' + gl_header=$gl_cv_absolute_sys_wait_h + gl_cv_next_sys_wait_h='"'$gl_header'"' else gl_cv_next_sys_wait_h='<'sys/wait.h'>' fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_sys_wait_h" >&5 printf "%s\n" "$gl_cv_next_sys_wait_h" >&6; } @@ -21787,8 +24478,8 @@ printf %s "checking for struct timespec in ... " >&6; } if test ${gl_cv_sys_struct_timespec_in_time_h+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -21803,10 +24494,12 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_sys_struct_timespec_in_time_h=yes -else $as_nop - gl_cv_sys_struct_timespec_in_time_h=no +else case e in #( + e) gl_cv_sys_struct_timespec_in_time_h=no ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_sys_struct_timespec_in_time_h" >&5 printf "%s\n" "$gl_cv_sys_struct_timespec_in_time_h" >&6; } @@ -21823,8 +24516,8 @@ printf %s "checking for struct timespec in ... " >&6; } if test ${gl_cv_sys_struct_timespec_in_sys_time_h+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -21839,10 +24532,12 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_sys_struct_timespec_in_sys_time_h=yes -else $as_nop - gl_cv_sys_struct_timespec_in_sys_time_h=no +else case e in #( + e) gl_cv_sys_struct_timespec_in_sys_time_h=no ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_sys_struct_timespec_in_sys_time_h" >&5 printf "%s\n" "$gl_cv_sys_struct_timespec_in_sys_time_h" >&6; } @@ -21854,8 +24549,8 @@ printf %s "checking for struct timespec in ... " >&6; } if test ${gl_cv_sys_struct_timespec_in_pthread_h+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -21870,10 +24565,12 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_sys_struct_timespec_in_pthread_h=yes -else $as_nop - gl_cv_sys_struct_timespec_in_pthread_h=no +else case e in #( + e) gl_cv_sys_struct_timespec_in_pthread_h=no ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_sys_struct_timespec_in_pthread_h" >&5 printf "%s\n" "$gl_cv_sys_struct_timespec_in_pthread_h" >&6; } @@ -21885,8 +24582,8 @@ printf %s "checking for struct timespec in ... " >&6; } if test ${gl_cv_sys_struct_timespec_in_unistd_h+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -21901,10 +24598,12 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_sys_struct_timespec_in_unistd_h=yes -else $as_nop - gl_cv_sys_struct_timespec_in_unistd_h=no +else case e in #( + e) gl_cv_sys_struct_timespec_in_unistd_h=no ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_sys_struct_timespec_in_unistd_h" >&5 printf "%s\n" "$gl_cv_sys_struct_timespec_in_unistd_h" >&6; } @@ -21938,8 +24637,8 @@ printf %s "checking absolute name of ... " >&6; } if test ${gl_cv_next_time_h+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -21972,10 +24671,11 @@ _ACEOF gl_cv_absolute_time_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | sed -n "$gl_absolute_header_sed"` - gl_header=$gl_cv_absolute_time_h - gl_cv_next_time_h='"'$gl_header'"' - + gl_header=$gl_cv_absolute_time_h + gl_cv_next_time_h='"'$gl_header'"' + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_time_h" >&5 printf "%s\n" "$gl_cv_next_time_h" >&6; } @@ -21998,13 +24698,17 @@ printf "%s\n" "$gl_cv_next_time_h" >&6; } + + + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for TIME_UTC in " >&5 printf %s "checking for TIME_UTC in ... " >&6; } if test ${gl_cv_time_h_has_TIME_UTC+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -22019,10 +24723,12 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_time_h_has_TIME_UTC=yes -else $as_nop - gl_cv_time_h_has_TIME_UTC=no +else case e in #( + e) gl_cv_time_h_has_TIME_UTC=no ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_time_h_has_TIME_UTC" >&5 printf "%s\n" "$gl_cv_time_h_has_TIME_UTC" >&6; } @@ -22034,13 +24740,13 @@ printf "%s\n" "$gl_cv_time_h_has_TIME_UTC" >&6; } - ac_fn_check_decl "$LINENO" "execvpe" "ac_cv_have_decl_execvpe" "$ac_includes_default" "$ac_c_undeclared_builtin_options" "CFLAGS" if test "x$ac_cv_have_decl_execvpe" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_EXECVPE $ac_have_decl" >>confdefs.h @@ -22064,8 +24770,8 @@ printf %s "checking absolute name of ... " >&6; } if test ${gl_cv_next_unistd_h+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) if test $ac_cv_header_unistd_h = yes; then @@ -22101,13 +24807,14 @@ _ACEOF gl_cv_absolute_unistd_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | sed -n "$gl_absolute_header_sed"` - gl_header=$gl_cv_absolute_unistd_h - gl_cv_next_unistd_h='"'$gl_header'"' + gl_header=$gl_cv_absolute_unistd_h + gl_cv_next_unistd_h='"'$gl_header'"' else gl_cv_next_unistd_h='<'unistd.h'>' fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_unistd_h" >&5 printf "%s\n" "$gl_cv_next_unistd_h" >&6; } @@ -22177,12 +24884,33 @@ q LIBUNISTRING_VERSION_SUBMINOR=`echo "$LIBUNISTRING_VERSION" | sed -n -e "$gl_libunistring_sed_extract_subminor"` fi + if test "$HAVE_LIBUNISTRING" = yes; then + for ac_header in unistring/woe32dll.h +do : + ac_fn_c_check_header_compile "$LINENO" "unistring/woe32dll.h" "ac_cv_header_unistring_woe32dll_h" "$ac_includes_default" +if test "x$ac_cv_header_unistring_woe32dll_h" = xyes +then : + printf "%s\n" "#define HAVE_UNISTRING_WOE32DLL_H 1" >>confdefs.h + HAVE_UNISTRING_WOE32DLL_H=1 +else case e in #( + e) HAVE_UNISTRING_WOE32DLL_H=0 ;; +esac +fi + +done + else + HAVE_UNISTRING_WOE32DLL_H=0 + fi + + + ac_fn_check_decl "$LINENO" "clearerr_unlocked" "ac_cv_have_decl_clearerr_unlocked" "$ac_includes_default" "$ac_c_undeclared_builtin_options" "CFLAGS" if test "x$ac_cv_have_decl_clearerr_unlocked" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_CLEARERR_UNLOCKED $ac_have_decl" >>confdefs.h @@ -22190,8 +24918,9 @@ ac_fn_check_decl "$LINENO" "feof_unlocked" "ac_cv_have_decl_feof_unlocked" "$ac_ if test "x$ac_cv_have_decl_feof_unlocked" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_FEOF_UNLOCKED $ac_have_decl" >>confdefs.h @@ -22199,8 +24928,9 @@ ac_fn_check_decl "$LINENO" "ferror_unlocked" "ac_cv_have_decl_ferror_unlocked" " if test "x$ac_cv_have_decl_ferror_unlocked" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_FERROR_UNLOCKED $ac_have_decl" >>confdefs.h @@ -22208,8 +24938,9 @@ ac_fn_check_decl "$LINENO" "fflush_unlocked" "ac_cv_have_decl_fflush_unlocked" " if test "x$ac_cv_have_decl_fflush_unlocked" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_FFLUSH_UNLOCKED $ac_have_decl" >>confdefs.h @@ -22217,8 +24948,9 @@ ac_fn_check_decl "$LINENO" "fgets_unlocked" "ac_cv_have_decl_fgets_unlocked" "$a if test "x$ac_cv_have_decl_fgets_unlocked" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_FGETS_UNLOCKED $ac_have_decl" >>confdefs.h @@ -22226,8 +24958,9 @@ ac_fn_check_decl "$LINENO" "fputc_unlocked" "ac_cv_have_decl_fputc_unlocked" "$a if test "x$ac_cv_have_decl_fputc_unlocked" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_FPUTC_UNLOCKED $ac_have_decl" >>confdefs.h @@ -22235,8 +24968,9 @@ ac_fn_check_decl "$LINENO" "fputs_unlocked" "ac_cv_have_decl_fputs_unlocked" "$a if test "x$ac_cv_have_decl_fputs_unlocked" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_FPUTS_UNLOCKED $ac_have_decl" >>confdefs.h @@ -22244,8 +24978,9 @@ ac_fn_check_decl "$LINENO" "fread_unlocked" "ac_cv_have_decl_fread_unlocked" "$a if test "x$ac_cv_have_decl_fread_unlocked" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_FREAD_UNLOCKED $ac_have_decl" >>confdefs.h @@ -22253,8 +24988,9 @@ ac_fn_check_decl "$LINENO" "fwrite_unlocked" "ac_cv_have_decl_fwrite_unlocked" " if test "x$ac_cv_have_decl_fwrite_unlocked" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_FWRITE_UNLOCKED $ac_have_decl" >>confdefs.h @@ -22262,8 +24998,9 @@ ac_fn_check_decl "$LINENO" "getc_unlocked" "ac_cv_have_decl_getc_unlocked" "$ac_ if test "x$ac_cv_have_decl_getc_unlocked" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_GETC_UNLOCKED $ac_have_decl" >>confdefs.h @@ -22271,8 +25008,9 @@ ac_fn_check_decl "$LINENO" "getchar_unlocked" "ac_cv_have_decl_getchar_unlocked" if test "x$ac_cv_have_decl_getchar_unlocked" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_GETCHAR_UNLOCKED $ac_have_decl" >>confdefs.h @@ -22280,8 +25018,9 @@ ac_fn_check_decl "$LINENO" "putc_unlocked" "ac_cv_have_decl_putc_unlocked" "$ac_ if test "x$ac_cv_have_decl_putc_unlocked" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_PUTC_UNLOCKED $ac_have_decl" >>confdefs.h @@ -22289,8 +25028,9 @@ ac_fn_check_decl "$LINENO" "putchar_unlocked" "ac_cv_have_decl_putchar_unlocked" if test "x$ac_cv_have_decl_putchar_unlocked" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_PUTCHAR_UNLOCKED $ac_have_decl" >>confdefs.h @@ -22298,15 +25038,15 @@ ac_fn_check_decl "$LINENO" "unsetenv" "ac_cv_have_decl_unsetenv" "$ac_includes_d if test "x$ac_cv_have_decl_unsetenv" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_UNSETENV $ac_have_decl" >>confdefs.h - if test $ac_cv_header_features_h = yes; then HAVE_FEATURES_H=1 else @@ -22315,226 +25055,257 @@ printf "%s\n" "#define HAVE_DECL_UNSETENV $ac_have_decl" >>confdefs.h - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for inttypes.h" >&5 -printf %s "checking for inttypes.h... " >&6; } -if test ${gl_cv_header_inttypes_h+y} -then : - printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include -int -main (void) -{ -uintmax_t i = (uintmax_t) -1; return !i; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - gl_cv_header_inttypes_h=yes -else $as_nop - gl_cv_header_inttypes_h=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_inttypes_h" >&5 -printf "%s\n" "$gl_cv_header_inttypes_h" >&6; } - if test $gl_cv_header_inttypes_h = yes; then -printf "%s\n" "#define HAVE_INTTYPES_H_WITH_UINTMAX 1" >>confdefs.h - fi - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for stdint.h" >&5 -printf %s "checking for stdint.h... " >&6; } -if test ${gl_cv_header_stdint_h+y} + + + + + + if test $gl_cv_have_include_next = yes; then + gl_cv_next_wchar_h='<'wchar.h'>' + else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 +printf %s "checking absolute name of ... " >&6; } +if test ${gl_cv_next_wchar_h+y} then : printf %s "(cached) " >&6 -else $as_nop +else case e in #( + e) + if test $ac_cv_header_wchar_h = yes; then + + + + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include - #include -int -main (void) -{ -uintmax_t i = (uintmax_t) -1; return !i; - ; - return 0; -} +#include _ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - gl_cv_header_stdint_h=yes -else $as_nop - gl_cv_header_stdint_h=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext + case "$host_os" in + aix*) gl_absname_cpp="$ac_cpp -C" ;; + *) gl_absname_cpp="$ac_cpp" ;; + esac + + case "$host_os" in + mingw*) + gl_dirsep_regex='[/\\]' + ;; + *) + gl_dirsep_regex='\/' + ;; + esac + gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' + gl_header_literal_regex=`echo 'wchar.h' \ + | sed -e "$gl_make_literal_regex_sed"` + gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ + s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ + s|^/[^/]|//&| + p + q + }' + + gl_cv_absolute_wchar_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | + sed -n "$gl_absolute_header_sed"` + + gl_header=$gl_cv_absolute_wchar_h + gl_cv_next_wchar_h='"'$gl_header'"' + else + gl_cv_next_wchar_h='<'wchar.h'>' + fi + + ;; +esac fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_stdint_h" >&5 -printf "%s\n" "$gl_cv_header_stdint_h" >&6; } - if test $gl_cv_header_stdint_h = yes; then +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_wchar_h" >&5 +printf "%s\n" "$gl_cv_next_wchar_h" >&6; } + fi + NEXT_WCHAR_H=$gl_cv_next_wchar_h -printf "%s\n" "#define HAVE_STDINT_H_WITH_UINTMAX 1" >>confdefs.h + if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' + gl_next_as_first_directive='<'wchar.h'>' + else + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' + gl_next_as_first_directive=$gl_cv_next_wchar_h + fi + NEXT_AS_FIRST_DIRECTIVE_WCHAR_H=$gl_next_as_first_directive + + + + if test $ac_cv_header_wchar_h = yes; then + HAVE_WCHAR_H=1 + else + HAVE_WCHAR_H=0 fi - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for intmax_t" >&5 -printf %s "checking for intmax_t... " >&6; } -if test ${gt_cv_c_intmax_t+y} -then : - printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include -#if HAVE_STDINT_H_WITH_UINTMAX -#include -#endif -#if HAVE_INTTYPES_H_WITH_UINTMAX -#include -#endif + if test $gt_cv_c_wint_t = yes; then + HAVE_WINT_T=1 + else + HAVE_WINT_T=0 + fi -int -main (void) -{ -intmax_t x = -1; return !x; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO" + + + + + + + + + + ac_fn_check_decl "$LINENO" "wcsdup" "ac_cv_have_decl_wcsdup" " + #include + +" "$ac_c_undeclared_builtin_options" "CFLAGS" +if test "x$ac_cv_have_decl_wcsdup" = xyes then : - gt_cv_c_intmax_t=yes -else $as_nop - gt_cv_c_intmax_t=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext + ac_have_decl=1 +else case e in #( + e) ac_have_decl=0 ;; +esac fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_c_intmax_t" >&5 -printf "%s\n" "$gt_cv_c_intmax_t" >&6; } - if test $gt_cv_c_intmax_t = yes; then +printf "%s\n" "#define HAVE_DECL_WCSDUP $ac_have_decl" >>confdefs.h -printf "%s\n" "#define HAVE_INTMAX_T 1" >>confdefs.h + if test $ac_cv_have_decl_wcsdup = no; then + HAVE_DECL_WCSDUP=0 + fi - else -printf "%s\n" "#define intmax_t long long" >>confdefs.h - fi - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking where to find the exponent in a 'double'" >&5 -printf %s "checking where to find the exponent in a 'double'... " >&6; } -if test ${gl_cv_cc_double_expbit0+y} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for C compiler option to allow warnings" >&5 +printf %s "checking for C compiler option to allow warnings... " >&6; } +if test ${gl_cv_cc_wallow+y} then : printf %s "(cached) " >&6 -else $as_nop +else case e in #( + e) rm -f conftest* + echo 'int dummy;' > conftest.c + { ac_try='${CC-cc} $CFLAGS $CPPFLAGS -c conftest.c 2>conftest1.err' + { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 + (eval $ac_try) 2>&5 + ac_status=$? + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; } >/dev/null + { ac_try='${CC-cc} $CFLAGS $CPPFLAGS -Wno-error -c conftest.c 2>conftest2.err' + { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 + (eval $ac_try) 2>&5 + ac_status=$? + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; } >/dev/null + if test $? = 0 && test `wc -l < conftest1.err` = `wc -l < conftest2.err`; then + gl_cv_cc_wallow='-Wno-error' + else + gl_cv_cc_wallow=none + fi + rm -f conftest* + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_wallow" >&5 +printf "%s\n" "$gl_cv_cc_wallow" >&6; } + case "$gl_cv_cc_wallow" in + none) GL_CFLAG_ALLOW_WARNINGS='' ;; + *) GL_CFLAG_ALLOW_WARNINGS="$gl_cv_cc_wallow" ;; + esac - if test "$cross_compiling" = yes + + + if test -n "$CXX" && test "$CXX" != no; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for C++ compiler option to allow warnings" >&5 +printf %s "checking for C++ compiler option to allow warnings... " >&6; } +if test ${gl_cv_cxx_wallow+y} then : + printf %s "(cached) " >&6 +else case e in #( + e) rm -f conftest* + echo 'int dummy;' > conftest.cc + { ac_try='${CXX-c++} $CXXFLAGS $CPPFLAGS -c conftest.cc 2>conftest1.err' + { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 + (eval $ac_try) 2>&5 + ac_status=$? + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; } >/dev/null + { ac_try='${CXX-c++} $CXXFLAGS $CPPFLAGS -Wno-error -c conftest.cc 2>conftest2.err' + { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 + (eval $ac_try) 2>&5 + ac_status=$? + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; } >/dev/null + if test $? = 0 && test `wc -l < conftest1.err` = `wc -l < conftest2.err`; then + gl_cv_cxx_wallow='-Wno-error' + else + gl_cv_cxx_wallow=none + fi + rm -f conftest* + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cxx_wallow" >&5 +printf "%s\n" "$gl_cv_cxx_wallow" >&6; } + case "$gl_cv_cxx_wallow" in + none) GL_CXXFLAG_ALLOW_WARNINGS='' ;; + *) GL_CXXFLAG_ALLOW_WARNINGS="$gl_cv_cxx_wallow" ;; + esac + else + GL_CXXFLAG_ALLOW_WARNINGS='' + fi - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#if defined arm || defined __arm || defined __arm__ - mixed_endianness -#endif -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "mixed_endianness" >/dev/null 2>&1 -then : - gl_cv_cc_double_expbit0="unknown" -else $as_nop + HAVE_STRUCT_SOCKADDR_STORAGE=1; + HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY=1; - : -if test ${ac_cv_c_bigendian+y} -then : - printf %s "(cached) " >&6 -else $as_nop - ac_cv_c_bigendian=unknown - # See if we're dealing with a universal compiler. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#ifndef __APPLE_CC__ - not a universal capable compiler - #endif - typedef int dummy; + HAVE_SA_FAMILY_T=1; + HAVE_ACCEPT4=1; -_ACEOF -if ac_fn_c_try_compile "$LINENO" + + if test $ac_cv_header_sys_socket_h = no; then + ac_fn_c_check_header_compile "$LINENO" "ws2tcpip.h" "ac_cv_header_ws2tcpip_h" "$ac_includes_default" +if test "x$ac_cv_header_ws2tcpip_h" = xyes then : + printf "%s\n" "#define HAVE_WS2TCPIP_H 1" >>confdefs.h - # Check for potential -arch flags. It is not universal unless - # there are at least two -arch flags with different values. - ac_arch= - ac_prev= - for ac_word in $CC $CFLAGS $CPPFLAGS $LDFLAGS; do - if test -n "$ac_prev"; then - case $ac_word in - i?86 | x86_64 | ppc | ppc64) - if test -z "$ac_arch" || test "$ac_arch" = "$ac_word"; then - ac_arch=$ac_word - else - ac_cv_c_bigendian=universal - break - fi - ;; - esac - ac_prev= - elif test "x$ac_word" = "x-arch"; then - ac_prev=arch - fi - done fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - if test $ac_cv_c_bigendian = unknown; then - # See if sys/param.h defines the BYTE_ORDER macro. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #include -int -main (void) -{ -#if ! (defined BYTE_ORDER && defined BIG_ENDIAN \ - && defined LITTLE_ENDIAN && BYTE_ORDER && BIG_ENDIAN \ - && LITTLE_ENDIAN) - bogus endian macros - #endif + fi - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO" + + + + + case "$host_os" in + osf*) + +printf "%s\n" "#define _POSIX_PII_SOCKET 1" >>confdefs.h + + ;; + esac + + GL_GENERATE_SYS_SOCKET_H=false + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether is self-contained" >&5 +printf %s "checking whether is self-contained... " >&6; } +if test ${gl_cv_header_sys_socket_h_selfcontained+y} then : - # It does; now see whether it defined to BIG_ENDIAN or not. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + printf %s "(cached) " >&6 +else case e in #( + e) + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include - #include - +#include int main (void) { -#if BYTE_ORDER != BIG_ENDIAN - not big endian - #endif ; return 0; @@ -22542,1072 +25313,286 @@ main (void) _ACEOF if ac_fn_c_try_compile "$LINENO" then : - ac_cv_c_bigendian=yes -else $as_nop - ac_cv_c_bigendian=no + gl_cv_header_sys_socket_h_selfcontained=yes +else case e in #( + e) gl_cv_header_sys_socket_h_selfcontained=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext + ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - fi - if test $ac_cv_c_bigendian = unknown; then - # See if defines _LITTLE_ENDIAN or _BIG_ENDIAN (e.g., Solaris). - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_sys_socket_h_selfcontained" >&5 +printf "%s\n" "$gl_cv_header_sys_socket_h_selfcontained" >&6; } + if test $gl_cv_header_sys_socket_h_selfcontained = yes; then + ac_fn_c_check_func "$LINENO" "shutdown" "ac_cv_func_shutdown" +if test "x$ac_cv_func_shutdown" = xyes +then : + printf "%s\n" "#define HAVE_SHUTDOWN 1" >>confdefs.h -int -main (void) -{ -#if ! (defined _LITTLE_ENDIAN || defined _BIG_ENDIAN) - bogus endian macros - #endif +fi - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO" + if test $ac_cv_func_shutdown = yes; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether defines the SHUT_* macros" >&5 +printf %s "checking whether defines the SHUT_* macros... " >&6; } +if test ${gl_cv_header_sys_socket_h_shut+y} then : - # It does; now see whether it defined to _BIG_ENDIAN or not. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + printf %s "(cached) " >&6 +else case e in #( + e) + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include - +#include int main (void) { -#ifndef _BIG_ENDIAN - not big endian - #endif - +int a[] = { SHUT_RD, SHUT_WR, SHUT_RDWR }; ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO" then : - ac_cv_c_bigendian=yes -else $as_nop - ac_cv_c_bigendian=no + gl_cv_header_sys_socket_h_shut=yes +else case e in #( + e) gl_cv_header_sys_socket_h_shut=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext + ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_sys_socket_h_shut" >&5 +printf "%s\n" "$gl_cv_header_sys_socket_h_shut" >&6; } + if test $gl_cv_header_sys_socket_h_shut = no; then + GL_GENERATE_SYS_SOCKET_H=true + fi fi - if test $ac_cv_c_bigendian = unknown; then - # Compile a test program. - if test "$cross_compiling" = yes -then : - # Try to guess by grepping values from an object file. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -unsigned short int ascii_mm[] = - { 0x4249, 0x4765, 0x6E44, 0x6961, 0x6E53, 0x7953, 0 }; - unsigned short int ascii_ii[] = - { 0x694C, 0x5454, 0x656C, 0x6E45, 0x6944, 0x6E61, 0 }; - int use_ascii (int i) { - return ascii_mm[i] + ascii_ii[i]; - } - unsigned short int ebcdic_ii[] = - { 0x89D3, 0xE3E3, 0x8593, 0x95C5, 0x89C4, 0x9581, 0 }; - unsigned short int ebcdic_mm[] = - { 0xC2C9, 0xC785, 0x95C4, 0x8981, 0x95E2, 0xA8E2, 0 }; - int use_ebcdic (int i) { - return ebcdic_mm[i] + ebcdic_ii[i]; - } - extern int foo; - -int -main (void) -{ -return use_ascii (foo) == use_ebcdic (foo); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - if grep BIGenDianSyS conftest.$ac_objext >/dev/null; then - ac_cv_c_bigendian=yes - fi - if grep LiTTleEnDian conftest.$ac_objext >/dev/null ; then - if test "$ac_cv_c_bigendian" = unknown; then - ac_cv_c_bigendian=no - else - # finding both strings is unlikely to happen, but who knows? - ac_cv_c_bigendian=unknown - fi - fi -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$ac_includes_default -int -main (void) -{ + fi + # We need to check for ws2tcpip.h now. - /* Are we little or big endian? From Harbison&Steele. */ - union - { - long int l; - char c[sizeof (long int)]; - } u; - u.l = 1; - return u.c[sizeof (long int) - 1] == 1; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO" -then : - ac_cv_c_bigendian=no -else $as_nop - ac_cv_c_bigendian=yes -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - fi -fi -: - case $ac_cv_c_bigendian in #( - yes) - gl_cv_cc_double_expbit0="word 0 bit 20";; #( - no) - gl_cv_cc_double_expbit0="word 1 bit 20" ;; #( - universal) -printf "%s\n" "#define AC_APPLE_UNIVERSAL_BUILD 1" >>confdefs.h - ;; #( - *) - gl_cv_cc_double_expbit0="unknown" ;; - esac -fi -rm -rf conftest* -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include -#include -#include -#define NWORDS \ - ((sizeof (double) + sizeof (unsigned int) - 1) / sizeof (unsigned int)) -typedef union { double value; unsigned int word[NWORDS]; } memory_double; -static unsigned int ored_words[NWORDS]; -static unsigned int anded_words[NWORDS]; -static void add_to_ored_words (double x) -{ - memory_double m; - size_t i; - /* Clear it first, in case sizeof (double) < sizeof (memory_double). */ - memset (&m, 0, sizeof (memory_double)); - m.value = x; - for (i = 0; i < NWORDS; i++) - { - ored_words[i] |= m.word[i]; - anded_words[i] &= m.word[i]; - } -} -int main () -{ - size_t j; - FILE *fp = fopen ("conftest.out", "w"); - if (fp == NULL) - return 1; - for (j = 0; j < NWORDS; j++) - anded_words[j] = ~ (unsigned int) 0; - add_to_ored_words (0.25); - add_to_ored_words (0.5); - add_to_ored_words (1.0); - add_to_ored_words (2.0); - add_to_ored_words (4.0); - /* Remove bits that are common (e.g. if representation of the first mantissa - bit is explicit). */ - for (j = 0; j < NWORDS; j++) - ored_words[j] &= ~anded_words[j]; - /* Now find the nonzero word. */ - for (j = 0; j < NWORDS; j++) - if (ored_words[j] != 0) - break; - if (j < NWORDS) - { - size_t i; - for (i = j + 1; i < NWORDS; i++) - if (ored_words[i] != 0) - { - fprintf (fp, "unknown"); - return (fclose (fp) != 0); - } - for (i = 0; ; i++) - if ((ored_words[j] >> i) & 1) - { - fprintf (fp, "word %d bit %d", (int) j, (int) i); - return (fclose (fp) != 0); - } - } - fprintf (fp, "unknown"); - return (fclose (fp) != 0); -} -_ACEOF -if ac_fn_c_try_run "$LINENO" + if test $gl_cv_have_include_next = yes; then + gl_cv_next_sys_socket_h='<'sys/socket.h'>' + else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 +printf %s "checking absolute name of ... " >&6; } +if test ${gl_cv_next_sys_socket_h+y} then : - gl_cv_cc_double_expbit0=`cat conftest.out` -else $as_nop - gl_cv_cc_double_expbit0="unknown" -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - rm -f conftest.out + printf %s "(cached) " >&6 +else case e in #( + e) + if test $ac_cv_header_sys_socket_h = yes; then -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_double_expbit0" >&5 -printf "%s\n" "$gl_cv_cc_double_expbit0" >&6; } - case "$gl_cv_cc_double_expbit0" in - word*bit*) - word=`echo "$gl_cv_cc_double_expbit0" | sed -e 's/word //' -e 's/ bit.*//'` - bit=`echo "$gl_cv_cc_double_expbit0" | sed -e 's/word.*bit //'` -printf "%s\n" "#define DBL_EXPBIT0_WORD $word" >>confdefs.h -printf "%s\n" "#define DBL_EXPBIT0_BIT $bit" >>confdefs.h + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +_ACEOF + case "$host_os" in + aix*) gl_absname_cpp="$ac_cpp -C" ;; + *) gl_absname_cpp="$ac_cpp" ;; + esac + case "$host_os" in + mingw*) + gl_dirsep_regex='[/\\]' + ;; + *) + gl_dirsep_regex='\/' ;; esac + gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' + gl_header_literal_regex=`echo 'sys/socket.h' \ + | sed -e "$gl_make_literal_regex_sed"` + gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ + s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ + s|^/[^/]|//&| + p + q + }' + gl_cv_absolute_sys_socket_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | + sed -n "$gl_absolute_header_sed"` + gl_header=$gl_cv_absolute_sys_socket_h + gl_cv_next_sys_socket_h='"'$gl_header'"' + else + gl_cv_next_sys_socket_h='<'sys/socket.h'>' + fi + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_sys_socket_h" >&5 +printf "%s\n" "$gl_cv_next_sys_socket_h" >&6; } + fi + NEXT_SYS_SOCKET_H=$gl_cv_next_sys_socket_h + if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' + gl_next_as_first_directive='<'sys/socket.h'>' + else + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' + gl_next_as_first_directive=$gl_cv_next_sys_socket_h + fi + NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H=$gl_next_as_first_directive - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether snprintf returns a byte count as in C99" >&5 -printf %s "checking whether snprintf returns a byte count as in C99... " >&6; } -if test ${gl_cv_func_snprintf_retval_c99+y} -then : - printf %s "(cached) " >&6 -else $as_nop + if test $ac_cv_header_sys_socket_h = yes; then + HAVE_SYS_SOCKET_H=1 + else + HAVE_SYS_SOCKET_H=0 + fi - if test "$cross_compiling" = yes -then : - case "$host_os" in - # Guess yes on glibc systems. - *-gnu* | gnu*) gl_cv_func_snprintf_retval_c99="guessing yes";; - # Guess yes on musl systems. - *-musl*) gl_cv_func_snprintf_retval_c99="guessing yes";; - # Guess yes on FreeBSD >= 5. - freebsd[1-4].*) gl_cv_func_snprintf_retval_c99="guessing no";; - freebsd* | kfreebsd*) gl_cv_func_snprintf_retval_c99="guessing yes";; - midnightbsd*) gl_cv_func_snprintf_retval_c99="guessing yes";; - # Guess yes on Mac OS X >= 10.3. - darwin[1-6].*) gl_cv_func_snprintf_retval_c99="guessing no";; - darwin*) gl_cv_func_snprintf_retval_c99="guessing yes";; - # Guess yes on OpenBSD >= 3.9. - openbsd[1-2].* | openbsd3.[0-8] | openbsd3.[0-8].*) - gl_cv_func_snprintf_retval_c99="guessing no";; - openbsd*) gl_cv_func_snprintf_retval_c99="guessing yes";; - # Guess yes on Solaris >= 2.10. - solaris2.[1-9][0-9]*) gl_cv_func_printf_sizes_c99="guessing yes";; - solaris*) gl_cv_func_printf_sizes_c99="guessing no";; - # Guess yes on AIX >= 4. - aix[1-3]*) gl_cv_func_snprintf_retval_c99="guessing no";; - aix*) gl_cv_func_snprintf_retval_c99="guessing yes";; - # Guess yes on NetBSD >= 3. - netbsd[1-2]* | netbsdelf[1-2]* | netbsdaout[1-2]* | netbsdcoff[1-2]*) - gl_cv_func_snprintf_retval_c99="guessing no";; - netbsd*) gl_cv_func_snprintf_retval_c99="guessing yes";; - # Guess yes on BeOS. - beos*) gl_cv_func_snprintf_retval_c99="guessing yes";; - # Guess yes on Android. - linux*-android*) gl_cv_func_snprintf_retval_c99="guessing yes";; - # Guess yes on MSVC, no on mingw. - mingw*) cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#ifdef _MSC_VER - Known -#endif -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "Known" >/dev/null 2>&1 -then : - gl_cv_func_snprintf_retval_c99="guessing yes" -else $as_nop - gl_cv_func_snprintf_retval_c99="guessing no" -fi -rm -rf conftest* + if test $ac_cv_header_sys_socket_h = yes; then + HAVE_WS2TCPIP_H=0 + else + if test $ac_cv_header_ws2tcpip_h = yes; then + HAVE_WS2TCPIP_H=1 + else + HAVE_WS2TCPIP_H=0 + fi + fi - ;; - # If we don't know, obey --enable-cross-guesses. - *) gl_cv_func_snprintf_retval_c99="$gl_cross_guess_normal";; - esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include -#if HAVE_SNPRINTF -# define my_snprintf snprintf -#else -# include -static int my_snprintf (char *buf, int size, const char *format, ...) -{ - va_list args; - int ret; - va_start (args, format); - ret = vsnprintf (buf, size, format, args); - va_end (args); - return ret; -} + ac_fn_c_check_type "$LINENO" "struct sockaddr_storage" "ac_cv_type_struct_sockaddr_storage" " + /* sys/types.h is not needed according to POSIX, but the + sys/socket.h in i386-unknown-freebsd4.10 and + powerpc-apple-darwin5.5 required it. */ +#include +#ifdef HAVE_SYS_SOCKET_H +#include +#endif +#ifdef HAVE_WS2TCPIP_H +#include #endif -static char buf[100]; -int main () -{ - strcpy (buf, "ABCDEF"); - if (my_snprintf (buf, 3, "%d %d", 4567, 89) != 7) - return 1; - if (my_snprintf (buf, 0, "%d %d", 4567, 89) != 7) - return 2; - if (my_snprintf (NULL, 0, "%d %d", 4567, 89) != 7) - return 3; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO" -then : - gl_cv_func_snprintf_retval_c99=yes -else $as_nop - gl_cv_func_snprintf_retval_c99=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_snprintf_retval_c99" >&5 -printf "%s\n" "$gl_cv_func_snprintf_retval_c99" >&6; } +" +if test "x$ac_cv_type_struct_sockaddr_storage" = xyes +then : +printf "%s\n" "#define HAVE_STRUCT_SOCKADDR_STORAGE 1" >>confdefs.h +fi +ac_fn_c_check_type "$LINENO" "sa_family_t" "ac_cv_type_sa_family_t" " + /* sys/types.h is not needed according to POSIX, but the + sys/socket.h in i386-unknown-freebsd4.10 and + powerpc-apple-darwin5.5 required it. */ +#include +#ifdef HAVE_SYS_SOCKET_H +#include +#endif +#ifdef HAVE_WS2TCPIP_H +#include +#endif - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether snprintf truncates the result as in C99" >&5 -printf %s "checking whether snprintf truncates the result as in C99... " >&6; } -if test ${gl_cv_func_snprintf_truncation_c99+y} +" +if test "x$ac_cv_type_sa_family_t" = xyes then : - printf %s "(cached) " >&6 -else $as_nop - if test "$cross_compiling" = yes -then : +printf "%s\n" "#define HAVE_SA_FAMILY_T 1" >>confdefs.h - case "$host_os" in - # Guess yes on glibc systems. - *-gnu* | gnu*) gl_cv_func_snprintf_truncation_c99="guessing yes";; - # Guess yes on musl systems. - *-musl*) gl_cv_func_snprintf_truncation_c99="guessing yes";; - # Guess yes on FreeBSD >= 5. - freebsd[1-4].*) gl_cv_func_snprintf_truncation_c99="guessing no";; - freebsd* | kfreebsd*) gl_cv_func_snprintf_truncation_c99="guessing yes";; - midnightbsd*) gl_cv_func_snprintf_truncation_c99="guessing yes";; - # Guess yes on Mac OS X >= 10.3. - darwin[1-6].*) gl_cv_func_snprintf_truncation_c99="guessing no";; - darwin*) gl_cv_func_snprintf_truncation_c99="guessing yes";; - # Guess yes on OpenBSD >= 3.9. - openbsd[1-2].* | openbsd3.[0-8] | openbsd3.[0-8].*) - gl_cv_func_snprintf_truncation_c99="guessing no";; - openbsd*) gl_cv_func_snprintf_truncation_c99="guessing yes";; - # Guess yes on Solaris >= 2.6. - solaris2.[0-5] | solaris2.[0-5].*) - gl_cv_func_snprintf_truncation_c99="guessing no";; - solaris*) gl_cv_func_snprintf_truncation_c99="guessing yes";; - # Guess yes on AIX >= 4. - aix[1-3]*) gl_cv_func_snprintf_truncation_c99="guessing no";; - aix*) gl_cv_func_snprintf_truncation_c99="guessing yes";; - # Guess yes on HP-UX >= 11. - hpux[7-9]* | hpux10*) gl_cv_func_snprintf_truncation_c99="guessing no";; - hpux*) gl_cv_func_snprintf_truncation_c99="guessing yes";; - # Guess yes on IRIX >= 6.5. - irix6.5) gl_cv_func_snprintf_truncation_c99="guessing yes";; - # Guess yes on OSF/1 >= 5. - osf[3-4]*) gl_cv_func_snprintf_truncation_c99="guessing no";; - osf*) gl_cv_func_snprintf_truncation_c99="guessing yes";; - # Guess yes on NetBSD >= 3. - netbsd[1-2]* | netbsdelf[1-2]* | netbsdaout[1-2]* | netbsdcoff[1-2]*) - gl_cv_func_snprintf_truncation_c99="guessing no";; - netbsd*) gl_cv_func_snprintf_truncation_c99="guessing yes";; - # Guess yes on BeOS. - beos*) gl_cv_func_snprintf_truncation_c99="guessing yes";; - # Guess yes on Android. - linux*-android*) gl_cv_func_snprintf_truncation_c99="guessing yes";; - # Guess no on native Windows. - mingw*) gl_cv_func_snprintf_truncation_c99="guessing no";; - # If we don't know, obey --enable-cross-guesses. - *) gl_cv_func_snprintf_truncation_c99="$gl_cross_guess_normal";; - esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ +fi -#include -#include -#if HAVE_SNPRINTF -# define my_snprintf snprintf -#else -# include -static int my_snprintf (char *buf, int size, const char *format, ...) -{ - va_list args; - int ret; - va_start (args, format); - ret = vsnprintf (buf, size, format, args); - va_end (args); - return ret; -} -#endif -static char buf[100]; -int main () -{ - strcpy (buf, "ABCDEF"); - my_snprintf (buf, 3, "%d %d", 4567, 89); - if (memcmp (buf, "45\0DEF", 6) != 0) - return 1; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO" + if test $ac_cv_type_struct_sockaddr_storage = no; then + HAVE_STRUCT_SOCKADDR_STORAGE=0 + fi + if test $ac_cv_type_sa_family_t = no; then + HAVE_SA_FAMILY_T=0 + fi + if test $ac_cv_type_struct_sockaddr_storage != no; then + ac_fn_c_check_member "$LINENO" "struct sockaddr_storage" "ss_family" "ac_cv_member_struct_sockaddr_storage_ss_family" "#include + #ifdef HAVE_SYS_SOCKET_H + #include + #endif + #ifdef HAVE_WS2TCPIP_H + #include + #endif + +" +if test "x$ac_cv_member_struct_sockaddr_storage_ss_family" = xyes then : - gl_cv_func_snprintf_truncation_c99=yes -else $as_nop - gl_cv_func_snprintf_truncation_c99=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi + +printf "%s\n" "#define HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY 1" >>confdefs.h +else case e in #( + e) HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY=0 ;; +esac fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_snprintf_truncation_c99" >&5 -printf "%s\n" "$gl_cv_func_snprintf_truncation_c99" >&6; } + fi + if test $HAVE_STRUCT_SOCKADDR_STORAGE = 0 || test $HAVE_SA_FAMILY_T = 0 \ + || test $HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY = 0; then + GL_GENERATE_SYS_SOCKET_H=true + fi - ac_fn_c_check_func "$LINENO" "snprintf" "ac_cv_func_snprintf" -if test "x$ac_cv_func_snprintf" = xyes + if test $ac_cv_header_sys_socket_h != yes; then + ac_fn_c_check_header_compile "$LINENO" "winsock2.h" "ac_cv_header_winsock2_h" "$ac_includes_default" +if test "x$ac_cv_header_winsock2_h" = xyes then : - printf "%s\n" "#define HAVE_SNPRINTF 1" >>confdefs.h + printf "%s\n" "#define HAVE_WINSOCK2_H 1" >>confdefs.h fi -ac_fn_c_check_func "$LINENO" "strnlen" "ac_cv_func_strnlen" -if test "x$ac_cv_func_strnlen" = xyes -then : - printf "%s\n" "#define HAVE_STRNLEN 1" >>confdefs.h -fi -ac_fn_c_check_func "$LINENO" "wcslen" "ac_cv_func_wcslen" -if test "x$ac_cv_func_wcslen" = xyes -then : - printf "%s\n" "#define HAVE_WCSLEN 1" >>confdefs.h + fi + if test "$ac_cv_header_winsock2_h" = yes; then + HAVE_WINSOCK2_H=1 + UNISTD_H_HAVE_WINSOCK2_H=1 + SYS_IOCTL_H_HAVE_WINSOCK2_H=1 + else + HAVE_WINSOCK2_H=0 + fi -fi -ac_fn_c_check_func "$LINENO" "wcsnlen" "ac_cv_func_wcsnlen" -if test "x$ac_cv_func_wcsnlen" = xyes -then : - printf "%s\n" "#define HAVE_WCSNLEN 1" >>confdefs.h -fi -ac_fn_c_check_func "$LINENO" "mbrtowc" "ac_cv_func_mbrtowc" -if test "x$ac_cv_func_mbrtowc" = xyes -then : - printf "%s\n" "#define HAVE_MBRTOWC 1" >>confdefs.h -fi -ac_fn_c_check_func "$LINENO" "wcrtomb" "ac_cv_func_wcrtomb" -if test "x$ac_cv_func_wcrtomb" = xyes -then : - printf "%s\n" "#define HAVE_WCRTOMB 1" >>confdefs.h -fi - ac_fn_check_decl "$LINENO" "_snprintf" "ac_cv_have_decl__snprintf" "#include -" "$ac_c_undeclared_builtin_options" "CFLAGS" -if test "x$ac_cv_have_decl__snprintf" = xyes -then : - ac_have_decl=1 -else $as_nop - ac_have_decl=0 -fi -printf "%s\n" "#define HAVE_DECL__SNPRINTF $ac_have_decl" >>confdefs.h - case "$gl_cv_func_snprintf_retval_c99" in - *yes) -printf "%s\n" "#define HAVE_SNPRINTF_RETVAL_C99 1" >>confdefs.h - ;; - esac - case "$gl_cv_func_snprintf_truncation_c99" in - *yes) + GL_GNULIB_SOCKET=0 -printf "%s\n" "#define HAVE_SNPRINTF_TRUNCATION_C99 1" >>confdefs.h - ;; - esac + GL_GNULIB_CONNECT=0 + GL_GNULIB_ACCEPT=0 + GL_GNULIB_BIND=0 - - - - if test $gl_cv_have_include_next = yes; then - gl_cv_next_wchar_h='<'wchar.h'>' - else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 -printf %s "checking absolute name of ... " >&6; } -if test ${gl_cv_next_wchar_h+y} -then : - printf %s "(cached) " >&6 -else $as_nop - - if test $ac_cv_header_wchar_h = yes; then - - - - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF - case "$host_os" in - aix*) gl_absname_cpp="$ac_cpp -C" ;; - *) gl_absname_cpp="$ac_cpp" ;; - esac - - case "$host_os" in - mingw*) - gl_dirsep_regex='[/\\]' - ;; - *) - gl_dirsep_regex='\/' - ;; - esac - gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' - gl_header_literal_regex=`echo 'wchar.h' \ - | sed -e "$gl_make_literal_regex_sed"` - gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ - s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ - s|^/[^/]|//&| - p - q - }' - - gl_cv_absolute_wchar_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | - sed -n "$gl_absolute_header_sed"` - - gl_header=$gl_cv_absolute_wchar_h - gl_cv_next_wchar_h='"'$gl_header'"' - else - gl_cv_next_wchar_h='<'wchar.h'>' - fi - - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_wchar_h" >&5 -printf "%s\n" "$gl_cv_next_wchar_h" >&6; } - fi - NEXT_WCHAR_H=$gl_cv_next_wchar_h - - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'wchar.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_wchar_h - fi - NEXT_AS_FIRST_DIRECTIVE_WCHAR_H=$gl_next_as_first_directive - - - - - if test $ac_cv_header_wchar_h = yes; then - HAVE_WCHAR_H=1 - else - HAVE_WCHAR_H=0 - fi - - - - - - if test $gt_cv_c_wint_t = yes; then - HAVE_WINT_T=1 - else - HAVE_WINT_T=0 - fi - - - - - - - - - - - ac_fn_check_decl "$LINENO" "wcsdup" "ac_cv_have_decl_wcsdup" " - #include - -" "$ac_c_undeclared_builtin_options" "CFLAGS" -if test "x$ac_cv_have_decl_wcsdup" = xyes -then : - ac_have_decl=1 -else $as_nop - ac_have_decl=0 -fi -printf "%s\n" "#define HAVE_DECL_WCSDUP $ac_have_decl" >>confdefs.h - - if test $ac_cv_have_decl_wcsdup = no; then - HAVE_DECL_WCSDUP=0 - fi - - - - - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for C compiler option to allow warnings" >&5 -printf %s "checking for C compiler option to allow warnings... " >&6; } -if test ${gl_cv_cc_wallow+y} -then : - printf %s "(cached) " >&6 -else $as_nop - rm -f conftest* - echo 'int dummy;' > conftest.c - { ac_try='${CC-cc} $CFLAGS $CPPFLAGS -c conftest.c 2>conftest1.err' - { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 - (eval $ac_try) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; } >/dev/null - { ac_try='${CC-cc} $CFLAGS $CPPFLAGS -Wno-error -c conftest.c 2>conftest2.err' - { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 - (eval $ac_try) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; } >/dev/null - if test $? = 0 && test `wc -l < conftest1.err` = `wc -l < conftest2.err`; then - gl_cv_cc_wallow='-Wno-error' - else - gl_cv_cc_wallow=none - fi - rm -f conftest* - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_wallow" >&5 -printf "%s\n" "$gl_cv_cc_wallow" >&6; } - case "$gl_cv_cc_wallow" in - none) GL_CFLAG_ALLOW_WARNINGS='' ;; - *) GL_CFLAG_ALLOW_WARNINGS="$gl_cv_cc_wallow" ;; - esac - - - - if test -n "$CXX" && test "$CXX" != no; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for C++ compiler option to allow warnings" >&5 -printf %s "checking for C++ compiler option to allow warnings... " >&6; } -if test ${gl_cv_cxx_wallow+y} -then : - printf %s "(cached) " >&6 -else $as_nop - rm -f conftest* - echo 'int dummy;' > conftest.cc - { ac_try='${CXX-c++} $CXXFLAGS $CPPFLAGS -c conftest.cc 2>conftest1.err' - { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 - (eval $ac_try) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; } >/dev/null - { ac_try='${CXX-c++} $CXXFLAGS $CPPFLAGS -Wno-error -c conftest.cc 2>conftest2.err' - { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 - (eval $ac_try) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; } >/dev/null - if test $? = 0 && test `wc -l < conftest1.err` = `wc -l < conftest2.err`; then - gl_cv_cxx_wallow='-Wno-error' - else - gl_cv_cxx_wallow=none - fi - rm -f conftest* - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cxx_wallow" >&5 -printf "%s\n" "$gl_cv_cxx_wallow" >&6; } - case "$gl_cv_cxx_wallow" in - none) GL_CXXFLAG_ALLOW_WARNINGS='' ;; - *) GL_CXXFLAG_ALLOW_WARNINGS="$gl_cv_cxx_wallow" ;; - esac - else - GL_CXXFLAG_ALLOW_WARNINGS='' - fi - - - - HAVE_STRUCT_SOCKADDR_STORAGE=1; - HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY=1; - - HAVE_SA_FAMILY_T=1; - HAVE_ACCEPT4=1; - - - if test $ac_cv_header_sys_socket_h = no; then - ac_fn_c_check_header_compile "$LINENO" "ws2tcpip.h" "ac_cv_header_ws2tcpip_h" "$ac_includes_default" -if test "x$ac_cv_header_ws2tcpip_h" = xyes -then : - printf "%s\n" "#define HAVE_WS2TCPIP_H 1" >>confdefs.h - -fi - - fi - - - - - - case "$host_os" in - osf*) - -printf "%s\n" "#define _POSIX_PII_SOCKET 1" >>confdefs.h - - ;; - esac - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether is self-contained" >&5 -printf %s "checking whether is self-contained... " >&6; } -if test ${gl_cv_header_sys_socket_h_selfcontained+y} -then : - printf %s "(cached) " >&6 -else $as_nop - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - gl_cv_header_sys_socket_h_selfcontained=yes -else $as_nop - gl_cv_header_sys_socket_h_selfcontained=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_sys_socket_h_selfcontained" >&5 -printf "%s\n" "$gl_cv_header_sys_socket_h_selfcontained" >&6; } - if test $gl_cv_header_sys_socket_h_selfcontained = yes; then - ac_fn_c_check_func "$LINENO" "shutdown" "ac_cv_func_shutdown" -if test "x$ac_cv_func_shutdown" = xyes -then : - printf "%s\n" "#define HAVE_SHUTDOWN 1" >>confdefs.h - -fi - - if test $ac_cv_func_shutdown = yes; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether defines the SHUT_* macros" >&5 -printf %s "checking whether defines the SHUT_* macros... " >&6; } -if test ${gl_cv_header_sys_socket_h_shut+y} -then : - printf %s "(cached) " >&6 -else $as_nop - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -int -main (void) -{ -int a[] = { SHUT_RD, SHUT_WR, SHUT_RDWR }; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - gl_cv_header_sys_socket_h_shut=yes -else $as_nop - gl_cv_header_sys_socket_h_shut=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_sys_socket_h_shut" >&5 -printf "%s\n" "$gl_cv_header_sys_socket_h_shut" >&6; } - if test $gl_cv_header_sys_socket_h_shut = no; then - SYS_SOCKET_H='sys/socket.h' - fi - fi - fi - # We need to check for ws2tcpip.h now. - - - - - - - - - - - - if test $gl_cv_have_include_next = yes; then - gl_cv_next_sys_socket_h='<'sys/socket.h'>' - else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 -printf %s "checking absolute name of ... " >&6; } -if test ${gl_cv_next_sys_socket_h+y} -then : - printf %s "(cached) " >&6 -else $as_nop - - if test $ac_cv_header_sys_socket_h = yes; then - - - - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF - case "$host_os" in - aix*) gl_absname_cpp="$ac_cpp -C" ;; - *) gl_absname_cpp="$ac_cpp" ;; - esac - - case "$host_os" in - mingw*) - gl_dirsep_regex='[/\\]' - ;; - *) - gl_dirsep_regex='\/' - ;; - esac - gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' - gl_header_literal_regex=`echo 'sys/socket.h' \ - | sed -e "$gl_make_literal_regex_sed"` - gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ - s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ - s|^/[^/]|//&| - p - q - }' - - gl_cv_absolute_sys_socket_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | - sed -n "$gl_absolute_header_sed"` - - gl_header=$gl_cv_absolute_sys_socket_h - gl_cv_next_sys_socket_h='"'$gl_header'"' - else - gl_cv_next_sys_socket_h='<'sys/socket.h'>' - fi - - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_sys_socket_h" >&5 -printf "%s\n" "$gl_cv_next_sys_socket_h" >&6; } - fi - NEXT_SYS_SOCKET_H=$gl_cv_next_sys_socket_h - - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'sys/socket.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_sys_socket_h - fi - NEXT_AS_FIRST_DIRECTIVE_SYS_SOCKET_H=$gl_next_as_first_directive - - - - - if test $ac_cv_header_sys_socket_h = yes; then - HAVE_SYS_SOCKET_H=1 - else - HAVE_SYS_SOCKET_H=0 - fi - - - - if test $ac_cv_header_sys_socket_h = yes; then - HAVE_WS2TCPIP_H=0 - else - if test $ac_cv_header_ws2tcpip_h = yes; then - HAVE_WS2TCPIP_H=1 - else - HAVE_WS2TCPIP_H=0 - fi - fi - - - - ac_fn_c_check_type "$LINENO" "struct sockaddr_storage" "ac_cv_type_struct_sockaddr_storage" " - /* sys/types.h is not needed according to POSIX, but the - sys/socket.h in i386-unknown-freebsd4.10 and - powerpc-apple-darwin5.5 required it. */ -#include -#ifdef HAVE_SYS_SOCKET_H -#include -#endif -#ifdef HAVE_WS2TCPIP_H -#include -#endif - -" -if test "x$ac_cv_type_struct_sockaddr_storage" = xyes -then : - -printf "%s\n" "#define HAVE_STRUCT_SOCKADDR_STORAGE 1" >>confdefs.h - - -fi -ac_fn_c_check_type "$LINENO" "sa_family_t" "ac_cv_type_sa_family_t" " - /* sys/types.h is not needed according to POSIX, but the - sys/socket.h in i386-unknown-freebsd4.10 and - powerpc-apple-darwin5.5 required it. */ -#include -#ifdef HAVE_SYS_SOCKET_H -#include -#endif -#ifdef HAVE_WS2TCPIP_H -#include -#endif - -" -if test "x$ac_cv_type_sa_family_t" = xyes -then : - -printf "%s\n" "#define HAVE_SA_FAMILY_T 1" >>confdefs.h - - -fi - - if test $ac_cv_type_struct_sockaddr_storage = no; then - HAVE_STRUCT_SOCKADDR_STORAGE=0 - fi - if test $ac_cv_type_sa_family_t = no; then - HAVE_SA_FAMILY_T=0 - fi - if test $ac_cv_type_struct_sockaddr_storage != no; then - ac_fn_c_check_member "$LINENO" "struct sockaddr_storage" "ss_family" "ac_cv_member_struct_sockaddr_storage_ss_family" "#include - #ifdef HAVE_SYS_SOCKET_H - #include - #endif - #ifdef HAVE_WS2TCPIP_H - #include - #endif - -" -if test "x$ac_cv_member_struct_sockaddr_storage_ss_family" = xyes -then : - -printf "%s\n" "#define HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY 1" >>confdefs.h - - -else $as_nop - HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY=0 -fi - - fi - if test $HAVE_STRUCT_SOCKADDR_STORAGE = 0 || test $HAVE_SA_FAMILY_T = 0 \ - || test $HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY = 0; then - SYS_SOCKET_H='sys/socket.h' - fi - - - - - if test $ac_cv_header_sys_socket_h != yes; then - ac_fn_c_check_header_compile "$LINENO" "winsock2.h" "ac_cv_header_winsock2_h" "$ac_includes_default" -if test "x$ac_cv_header_winsock2_h" = xyes -then : - printf "%s\n" "#define HAVE_WINSOCK2_H 1" >>confdefs.h - -fi - - fi - if test "$ac_cv_header_winsock2_h" = yes; then - HAVE_WINSOCK2_H=1 - UNISTD_H_HAVE_WINSOCK2_H=1 - SYS_IOCTL_H_HAVE_WINSOCK2_H=1 - else - HAVE_WINSOCK2_H=0 - fi - - - - - - - - - - - - GL_GNULIB_SOCKET=0 - - - - GL_GNULIB_CONNECT=0 - - - - GL_GNULIB_ACCEPT=0 - - - - GL_GNULIB_BIND=0 - - - - GL_GNULIB_GETPEERNAME=0 + GL_GNULIB_GETPEERNAME=0 @@ -23685,8 +25670,8 @@ printf %s "checking absolute name of ... " >&6; } if test ${gl_cv_next_arpa_inet_h+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) if test $ac_cv_header_arpa_inet_h = yes; then @@ -23722,13 +25707,14 @@ _ACEOF gl_cv_absolute_arpa_inet_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | sed -n "$gl_absolute_header_sed"` - gl_header=$gl_cv_absolute_arpa_inet_h - gl_cv_next_arpa_inet_h='"'$gl_header'"' + gl_header=$gl_cv_absolute_arpa_inet_h + gl_cv_next_arpa_inet_h='"'$gl_header'"' else gl_cv_next_arpa_inet_h='<'arpa/inet.h'>' fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_arpa_inet_h" >&5 printf "%s\n" "$gl_cv_next_arpa_inet_h" >&6; } @@ -23781,27 +25767,161 @@ printf "%s\n" "$gl_cv_next_arpa_inet_h" >&6; } - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether getcwd (NULL, 0) allocates memory for result" >&5 -printf %s "checking whether getcwd (NULL, 0) allocates memory for result... " >&6; } -if test ${gl_cv_func_getcwd_null+y} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a turkish Unicode locale" >&5 +printf %s "checking for a turkish Unicode locale... " >&6; } +if test ${gt_cv_locale_tr_utf8+y} then : printf %s "(cached) " >&6 -else $as_nop - if test "$cross_compiling" = yes -then : - case "$host_os" in - # Guess yes on glibc systems. - *-gnu* | gnu*) gl_cv_func_getcwd_null="guessing yes";; +else case e in #( + e) + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#include +#include +#if HAVE_LANGINFO_CODESET +# include +#endif +#include +#include +#include +struct tm t; +char buf[16]; +int main () { + /* On BeOS, locales are not implemented in libc. Rather, libintl + imitates locale dependent behaviour by looking at the environment + variables, and all locales use the UTF-8 encoding. But BeOS does not + implement the Turkish upper-/lowercase mappings. Therefore, let this + program return 1 on BeOS. */ + /* Check whether the given locale name is recognized by the system. */ +#if defined _WIN32 && !defined __CYGWIN__ + /* On native Windows, setlocale(category, "") looks at the system settings, + not at the environment variables. Also, when an encoding suffix such + as ".65001" or ".54936" is specified, it succeeds but sets the LC_CTYPE + category of the locale to "C". */ + if (setlocale (LC_ALL, getenv ("LC_ALL")) == NULL + || strcmp (setlocale (LC_CTYPE, NULL), "C") == 0) + return 1; +#else + if (setlocale (LC_ALL, "") == NULL) return 1; +#endif + /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". + On Mac OS X 10.3.5 (Darwin 7.5) in the tr_TR locale, nl_langinfo(CODESET) + is empty, and the behaviour of Tcl 8.4 in this locale is not useful. + On OpenBSD 4.0, when an unsupported locale is specified, setlocale() + succeeds but then nl_langinfo(CODESET) is "646". In this situation, + some unit tests fail. */ +#if HAVE_LANGINFO_CODESET + { + const char *cs = nl_langinfo (CODESET); + if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0) + return 1; + } +#endif +#ifdef __CYGWIN__ + /* On Cygwin, avoid locale names without encoding suffix, because the + locale_charset() function relies on the encoding suffix. Note that + LC_ALL is set on the command line. */ + if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; +#endif + /* Check whether in the abbreviation of the eighth month, the second + character (should be U+011F: LATIN SMALL LETTER G WITH BREVE) is + two bytes long, with UTF-8 encoding. */ + t.tm_year = 1992 - 1900; t.tm_mon = 8 - 1; t.tm_mday = 19; + if (strftime (buf, sizeof (buf), "%b", &t) < 4 + || buf[1] != (char) 0xc4 || buf[2] != (char) 0x9f) + return 1; + /* Check whether the upper-/lowercase mappings are as expected for + Turkish. */ + if (towupper ('i') != 0x0130 || towlower (0x0130) != 'i' + || towupper(0x0131) != 'I' || towlower ('I') != 0x0131) + return 1; + return 0; +} + +_ACEOF + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 + (eval $ac_link) 2>&5 + ac_status=$? + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && test -s conftest$ac_exeext; then + case "$host_os" in + # Handle native Windows specially, because there setlocale() interprets + # "ar" as "Arabic" or "Arabic_Saudi Arabia.1256", + # "fr" or "fra" as "French" or "French_France.1252", + # "ge"(!) or "deu"(!) as "German" or "German_Germany.1252", + # "ja" as "Japanese" or "Japanese_Japan.932", + # and similar. + mingw*) + # Test for the hypothetical native Windows locale name. + if (LC_ALL=Turkish_Turkey.65001 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then + gt_cv_locale_tr_utf8=Turkish_Turkey.65001 + else + # None found. + gt_cv_locale_tr_utf8=none + fi + ;; + *) + # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because + # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the + # configure script would override the LC_ALL setting. Likewise for + # LC_CTYPE, which is also set at the beginning of the configure script. + # Test for the usual locale name. + if (LC_ALL=tr_TR LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then + gt_cv_locale_tr_utf8=tr_TR + else + # Test for the locale name with explicit encoding suffix. + if (LC_ALL=tr_TR.UTF-8 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then + gt_cv_locale_tr_utf8=tr_TR.UTF-8 + else + # Test for the Solaris 7 locale name. + if (LC_ALL=tr.UTF-8 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then + gt_cv_locale_tr_utf8=tr.UTF-8 + else + # None found. + gt_cv_locale_tr_utf8=none + fi + fi + fi + ;; + esac + else + gt_cv_locale_tr_utf8=none + fi + rm -fr conftest* + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_tr_utf8" >&5 +printf "%s\n" "$gt_cv_locale_tr_utf8" >&6; } + LOCALE_TR_UTF8=$gt_cv_locale_tr_utf8 + + + + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether getcwd (NULL, 0) allocates memory for result" >&5 +printf %s "checking whether getcwd (NULL, 0) allocates memory for result... " >&6; } +if test ${gl_cv_func_getcwd_null+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) if test "$cross_compiling" = yes +then : + case "$host_os" in + # Guess yes on glibc systems. + *-gnu* | gnu*) gl_cv_func_getcwd_null="guessing yes";; # Guess yes on musl systems. *-musl*) gl_cv_func_getcwd_null="guessing yes";; + # Guess yes on systems that emulate the Linux system calls. + midipix*) gl_cv_func_getcwd_null="guessing yes";; # Guess yes on Cygwin. cygwin*) gl_cv_func_getcwd_null="guessing yes";; # If we don't know, obey --enable-cross-guesses. *) gl_cv_func_getcwd_null="$gl_cross_guess_normal";; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ # include @@ -23849,13 +25969,16 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_getcwd_null=yes -else $as_nop - gl_cv_func_getcwd_null=no +else case e in #( + e) gl_cv_func_getcwd_null=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_getcwd_null" >&5 printf "%s\n" "$gl_cv_func_getcwd_null" >&6; } @@ -23866,8 +25989,8 @@ printf %s "checking for getcwd with POSIX signature... " >&6; } if test ${gl_cv_func_getcwd_posix_signature+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -23891,26 +26014,19 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_func_getcwd_posix_signature=yes -else $as_nop - gl_cv_func_getcwd_posix_signature=no +else case e in #( + e) gl_cv_func_getcwd_posix_signature=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_getcwd_posix_signature" >&5 printf "%s\n" "$gl_cv_func_getcwd_posix_signature" >&6; } - case "$host_os" in - *-musl*) -printf "%s\n" "#define MUSL_LIBC 1" >>confdefs.h - ;; - esac - - - - @@ -23920,8 +26036,8 @@ printf %s "checking for IPv4 sockets... " >&6; } if test ${gl_cv_socket_ipv4+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #ifdef HAVE_SYS_SOCKET_H @@ -23945,10 +26061,12 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_socket_ipv4=yes -else $as_nop - gl_cv_socket_ipv4=no +else case e in #( + e) gl_cv_socket_ipv4=no ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_socket_ipv4" >&5 printf "%s\n" "$gl_cv_socket_ipv4" >&6; } @@ -23963,8 +26081,8 @@ printf %s "checking for IPv6 sockets... " >&6; } if test ${gl_cv_socket_ipv6+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #ifdef HAVE_SYS_SOCKET_H @@ -23991,10 +26109,12 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_socket_ipv6=yes -else $as_nop - gl_cv_socket_ipv6=no +else case e in #( + e) gl_cv_socket_ipv6=no ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_socket_ipv6" >&5 printf "%s\n" "$gl_cv_socket_ipv6" >&6; } @@ -24012,6 +26132,29 @@ printf "%s\n" "#define HAVE_IPV6 1" >>confdefs.h + + + + if test $ac_cv_have_decl_strerror_r = no; then + HAVE_DECL_STRERROR_R=0 + fi + + if test $ac_cv_func_strerror_r = yes; then + if test "$GL_GENERATE_ERRNO_H:$REPLACE_STRERROR_0" = false:0; then + if test $gl_cv_func_strerror_r_posix_signature = yes; then + case "$gl_cv_func_strerror_r_works" in + *no) REPLACE_STRERROR_R=1 ;; + esac + else + REPLACE_STRERROR_R=1 + fi + else + REPLACE_STRERROR_R=1 + fi + fi + + + HAVE_PSELECT=1; REPLACE_PSELECT=0; REPLACE_SELECT=0; @@ -24025,8 +26168,8 @@ printf %s "checking whether is self-contained... " >&6; } if test ${gl_cv_header_sys_select_h_selfcontained+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -24041,8 +26184,9 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_header_sys_select_h_selfcontained=yes -else $as_nop - gl_cv_header_sys_select_h_selfcontained=no +else case e in #( + e) gl_cv_header_sys_select_h_selfcontained=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext if test $gl_cv_header_sys_select_h_selfcontained = yes; then @@ -24092,8 +26236,9 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : -else $as_nop - gl_cv_header_sys_select_h_selfcontained=no +else case e in #( + e) gl_cv_header_sys_select_h_selfcontained=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext @@ -24101,7 +26246,8 @@ rm -f core conftest.err conftest.$ac_objext conftest.beam \ fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_sys_select_h_selfcontained" >&5 printf "%s\n" "$gl_cv_header_sys_select_h_selfcontained" >&6; } @@ -24122,8 +26268,8 @@ printf %s "checking absolute name of ... " >&6; } if test ${gl_cv_next_sys_select_h+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) if test $ac_cv_header_sys_select_h = yes; then @@ -24159,13 +26305,14 @@ _ACEOF gl_cv_absolute_sys_select_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | sed -n "$gl_absolute_header_sed"` - gl_header=$gl_cv_absolute_sys_select_h - gl_cv_next_sys_select_h='"'$gl_header'"' + gl_header=$gl_cv_absolute_sys_select_h + gl_cv_next_sys_select_h='"'$gl_header'"' else gl_cv_next_sys_select_h='<'sys/select.h'>' fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_sys_select_h" >&5 printf "%s\n" "$gl_cv_next_sys_select_h" >&6; } @@ -24220,189 +26367,400 @@ fi + GL_GNULIB_PSELECT=0 - if test $ac_cv_header_sys_socket_h != yes; then - ac_fn_c_check_header_compile "$LINENO" "winsock2.h" "ac_cv_header_winsock2_h" "$ac_includes_default" -if test "x$ac_cv_header_winsock2_h" = xyes + + GL_GNULIB_SELECT=0 + + + + + HAVE_PTHREAD_T=1; + HAVE_PTHREAD_SPINLOCK_T=1; + HAVE_PTHREAD_CREATE_DETACHED=1; + HAVE_PTHREAD_MUTEX_RECURSIVE=1; + HAVE_PTHREAD_MUTEX_ROBUST=1; + HAVE_PTHREAD_PROCESS_SHARED=1; + HAVE_PTHREAD_CREATE=1; + HAVE_PTHREAD_ATTR_INIT=1; + HAVE_PTHREAD_ATTR_GETDETACHSTATE=1; + HAVE_PTHREAD_ATTR_SETDETACHSTATE=1; + HAVE_PTHREAD_ATTR_DESTROY=1; + HAVE_PTHREAD_SELF=1; + HAVE_PTHREAD_EQUAL=1; + HAVE_PTHREAD_DETACH=1; + HAVE_PTHREAD_JOIN=1; + HAVE_PTHREAD_EXIT=1; + HAVE_PTHREAD_ONCE=1; + HAVE_PTHREAD_MUTEX_INIT=1; + HAVE_PTHREAD_MUTEXATTR_INIT=1; + HAVE_PTHREAD_MUTEXATTR_GETTYPE=1; + HAVE_PTHREAD_MUTEXATTR_SETTYPE=1; + HAVE_PTHREAD_MUTEXATTR_GETROBUST=1; + HAVE_PTHREAD_MUTEXATTR_SETROBUST=1; + HAVE_PTHREAD_MUTEXATTR_DESTROY=1; + HAVE_PTHREAD_MUTEX_LOCK=1; + HAVE_PTHREAD_MUTEX_TRYLOCK=1; + HAVE_PTHREAD_MUTEX_TIMEDLOCK=1; + HAVE_PTHREAD_MUTEX_UNLOCK=1; + HAVE_PTHREAD_MUTEX_DESTROY=1; + HAVE_PTHREAD_RWLOCK_INIT=1; + HAVE_PTHREAD_RWLOCKATTR_INIT=1; + HAVE_PTHREAD_RWLOCKATTR_DESTROY=1; + HAVE_PTHREAD_RWLOCK_RDLOCK=1; + HAVE_PTHREAD_RWLOCK_WRLOCK=1; + HAVE_PTHREAD_RWLOCK_TRYRDLOCK=1; + HAVE_PTHREAD_RWLOCK_TRYWRLOCK=1; + HAVE_PTHREAD_RWLOCK_TIMEDRDLOCK=1; + HAVE_PTHREAD_RWLOCK_TIMEDWRLOCK=1; + HAVE_PTHREAD_RWLOCK_UNLOCK=1; + HAVE_PTHREAD_RWLOCK_DESTROY=1; + HAVE_PTHREAD_COND_INIT=1; + HAVE_PTHREAD_CONDATTR_INIT=1; + HAVE_PTHREAD_CONDATTR_DESTROY=1; + HAVE_PTHREAD_COND_WAIT=1; + HAVE_PTHREAD_COND_TIMEDWAIT=1; + HAVE_PTHREAD_COND_SIGNAL=1; + HAVE_PTHREAD_COND_BROADCAST=1; + HAVE_PTHREAD_COND_DESTROY=1; + HAVE_PTHREAD_KEY_CREATE=1; + HAVE_PTHREAD_SETSPECIFIC=1; + HAVE_PTHREAD_GETSPECIFIC=1; + HAVE_PTHREAD_KEY_DELETE=1; + HAVE_PTHREAD_SPIN_INIT=1; + HAVE_PTHREAD_SPIN_LOCK=1; + HAVE_PTHREAD_SPIN_TRYLOCK=1; + HAVE_PTHREAD_SPIN_UNLOCK=1; + HAVE_PTHREAD_SPIN_DESTROY=1; + REPLACE_PTHREAD_CREATE=0; + REPLACE_PTHREAD_ATTR_INIT=0; + REPLACE_PTHREAD_ATTR_GETDETACHSTATE=0; + REPLACE_PTHREAD_ATTR_SETDETACHSTATE=0; + REPLACE_PTHREAD_ATTR_DESTROY=0; + REPLACE_PTHREAD_SELF=0; + REPLACE_PTHREAD_EQUAL=0; + REPLACE_PTHREAD_DETACH=0; + REPLACE_PTHREAD_JOIN=0; + REPLACE_PTHREAD_EXIT=0; + REPLACE_PTHREAD_ONCE=0; + REPLACE_PTHREAD_MUTEX_INIT=0; + REPLACE_PTHREAD_MUTEXATTR_INIT=0; + REPLACE_PTHREAD_MUTEXATTR_GETTYPE=0; + REPLACE_PTHREAD_MUTEXATTR_SETTYPE=0; + REPLACE_PTHREAD_MUTEXATTR_GETROBUST=0; + REPLACE_PTHREAD_MUTEXATTR_SETROBUST=0; + REPLACE_PTHREAD_MUTEXATTR_DESTROY=0; + REPLACE_PTHREAD_MUTEX_LOCK=0; + REPLACE_PTHREAD_MUTEX_TRYLOCK=0; + REPLACE_PTHREAD_MUTEX_TIMEDLOCK=0; + REPLACE_PTHREAD_MUTEX_UNLOCK=0; + REPLACE_PTHREAD_MUTEX_DESTROY=0; + REPLACE_PTHREAD_RWLOCK_INIT=0; + REPLACE_PTHREAD_RWLOCKATTR_INIT=0; + REPLACE_PTHREAD_RWLOCKATTR_DESTROY=0; + REPLACE_PTHREAD_RWLOCK_RDLOCK=0; + REPLACE_PTHREAD_RWLOCK_WRLOCK=0; + REPLACE_PTHREAD_RWLOCK_TRYRDLOCK=0; + REPLACE_PTHREAD_RWLOCK_TRYWRLOCK=0; + REPLACE_PTHREAD_RWLOCK_TIMEDRDLOCK=0; + REPLACE_PTHREAD_RWLOCK_TIMEDWRLOCK=0; + REPLACE_PTHREAD_RWLOCK_UNLOCK=0; + REPLACE_PTHREAD_RWLOCK_DESTROY=0; + REPLACE_PTHREAD_COND_INIT=0; + REPLACE_PTHREAD_CONDATTR_INIT=0; + REPLACE_PTHREAD_CONDATTR_DESTROY=0; + REPLACE_PTHREAD_COND_WAIT=0; + REPLACE_PTHREAD_COND_TIMEDWAIT=0; + REPLACE_PTHREAD_COND_SIGNAL=0; + REPLACE_PTHREAD_COND_BROADCAST=0; + REPLACE_PTHREAD_COND_DESTROY=0; + REPLACE_PTHREAD_KEY_CREATE=0; + REPLACE_PTHREAD_SETSPECIFIC=0; + REPLACE_PTHREAD_GETSPECIFIC=0; + REPLACE_PTHREAD_KEY_DELETE=0; + REPLACE_PTHREAD_SPIN_INIT=0; + REPLACE_PTHREAD_SPIN_LOCK=0; + REPLACE_PTHREAD_SPIN_TRYLOCK=0; + REPLACE_PTHREAD_SPIN_UNLOCK=0; + REPLACE_PTHREAD_SPIN_DESTROY=0; + + + + + + + + + + + + + + + + + + if test $gl_cv_have_include_next = yes; then + gl_cv_next_pthread_h='<'pthread.h'>' + else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 +printf %s "checking absolute name of ... " >&6; } +if test ${gl_cv_next_pthread_h+y} then : - printf "%s\n" "#define HAVE_WINSOCK2_H 1" >>confdefs.h + printf %s "(cached) " >&6 +else case e in #( + e) + if test $ac_cv_header_pthread_h = yes; then + + + + + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +_ACEOF + case "$host_os" in + aix*) gl_absname_cpp="$ac_cpp -C" ;; + *) gl_absname_cpp="$ac_cpp" ;; + esac + + case "$host_os" in + mingw*) + gl_dirsep_regex='[/\\]' + ;; + *) + gl_dirsep_regex='\/' + ;; + esac + gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' + gl_header_literal_regex=`echo 'pthread.h' \ + | sed -e "$gl_make_literal_regex_sed"` + gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ + s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ + s|^/[^/]|//&| + p + q + }' + + gl_cv_absolute_pthread_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | + sed -n "$gl_absolute_header_sed"` + + gl_header=$gl_cv_absolute_pthread_h + gl_cv_next_pthread_h='"'$gl_header'"' + else + gl_cv_next_pthread_h='<'pthread.h'>' + fi + ;; +esac fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_pthread_h" >&5 +printf "%s\n" "$gl_cv_next_pthread_h" >&6; } + fi + NEXT_PTHREAD_H=$gl_cv_next_pthread_h + + if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' + gl_next_as_first_directive='<'pthread.h'>' + else + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' + gl_next_as_first_directive=$gl_cv_next_pthread_h + fi + NEXT_AS_FIRST_DIRECTIVE_PTHREAD_H=$gl_next_as_first_directive + + + + + if test $ac_cv_header_pthread_h = yes; then + HAVE_PTHREAD_H=1 + + + if { case "$host_os" in mingw*) true;; *) false;; esac; } \ + && test $gl_threads_api = windows; then + HAVE_PTHREAD_H=0 + fi - fi - if test "$ac_cv_header_winsock2_h" = yes; then - HAVE_WINSOCK2_H=1 - UNISTD_H_HAVE_WINSOCK2_H=1 - SYS_IOCTL_H_HAVE_WINSOCK2_H=1 else - HAVE_WINSOCK2_H=0 + HAVE_PTHREAD_H=0 fi - LIBSOCKET= - if test $HAVE_WINSOCK2_H = 1; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for WSAStartup" >&5 -printf %s "checking for WSAStartup... " >&6; } -if test ${gl_cv_func_wsastartup+y} + + ac_fn_c_check_type "$LINENO" "pthread_t" "ac_cv_type_pthread_t" "$ac_includes_default + #if HAVE_PTHREAD_H + #include + #endif +" +if test "x$ac_cv_type_pthread_t" = xyes then : - printf %s "(cached) " >&6 -else $as_nop - gl_save_LIBS="$LIBS" - LIBS="$LIBS -lws2_32" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +printf "%s\n" "#define HAVE_PTHREAD_T 1" >>confdefs.h + + +fi +ac_fn_c_check_type "$LINENO" "pthread_spinlock_t" "ac_cv_type_pthread_spinlock_t" "$ac_includes_default + #if HAVE_PTHREAD_H + #include + #endif +" +if test "x$ac_cv_type_pthread_spinlock_t" = xyes +then : + +printf "%s\n" "#define HAVE_PTHREAD_SPINLOCK_T 1" >>confdefs.h + + +fi + + if test $ac_cv_type_pthread_t != yes; then + HAVE_PTHREAD_T=0 + fi + if test $ac_cv_type_pthread_spinlock_t != yes; then + HAVE_PTHREAD_SPINLOCK_T=0 + fi + + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for PTHREAD_CREATE_DETACHED" >&5 +printf %s "checking for PTHREAD_CREATE_DETACHED... " >&6; } +if test ${gl_cv_const_PTHREAD_CREATE_DETACHED+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ +#include + int x = PTHREAD_CREATE_DETACHED; -#ifdef HAVE_WINSOCK2_H -# include -#endif int main (void) { - WORD wVersionRequested = MAKEWORD(1, 1); - WSADATA wsaData; - int err = WSAStartup(wVersionRequested, &wsaData); - WSACleanup (); - ; return 0; } - _ACEOF -if ac_fn_c_try_link "$LINENO" +if ac_fn_c_try_compile "$LINENO" then : - gl_cv_func_wsastartup=yes -else $as_nop - gl_cv_func_wsastartup=no + gl_cv_const_PTHREAD_CREATE_DETACHED=yes +else case e in #( + e) gl_cv_const_PTHREAD_CREATE_DETACHED=no ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam \ - conftest$ac_exeext conftest.$ac_ext - LIBS="$gl_save_LIBS" - +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext + ;; +esac fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_wsastartup" >&5 -printf "%s\n" "$gl_cv_func_wsastartup" >&6; } - if test "$gl_cv_func_wsastartup" = "yes"; then - -printf "%s\n" "#define WINDOWS_SOCKETS 1" >>confdefs.h +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_const_PTHREAD_CREATE_DETACHED" >&5 +printf "%s\n" "$gl_cv_const_PTHREAD_CREATE_DETACHED" >&6; } + if test $gl_cv_const_PTHREAD_CREATE_DETACHED != yes; then + HAVE_PTHREAD_CREATE_DETACHED=0 + fi - LIBSOCKET='-lws2_32' - fi - else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for library containing setsockopt" >&5 -printf %s "checking for library containing setsockopt... " >&6; } -if test ${gl_cv_lib_socket+y} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for PTHREAD_MUTEX_RECURSIVE" >&5 +printf %s "checking for PTHREAD_MUTEX_RECURSIVE... " >&6; } +if test ${gl_cv_const_PTHREAD_MUTEX_RECURSIVE+y} then : printf %s "(cached) " >&6 -else $as_nop - - gl_cv_lib_socket= - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -extern -#ifdef __cplusplus -"C" -#endif -char setsockopt(); +#include + int x = PTHREAD_MUTEX_RECURSIVE; + int main (void) { -setsockopt(); + ; return 0; } _ACEOF -if ac_fn_c_try_link "$LINENO" +if ac_fn_c_try_compile "$LINENO" then : - -else $as_nop - gl_save_LIBS="$LIBS" - LIBS="$gl_save_LIBS -lsocket" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -extern -#ifdef __cplusplus -"C" -#endif -char setsockopt(); -int -main (void) -{ -setsockopt(); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO" -then : - gl_cv_lib_socket="-lsocket" + gl_cv_const_PTHREAD_MUTEX_RECURSIVE=yes +else case e in #( + e) gl_cv_const_PTHREAD_MUTEX_RECURSIVE=no ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam \ - conftest$ac_exeext conftest.$ac_ext - if test -z "$gl_cv_lib_socket"; then - LIBS="$gl_save_LIBS -lnetwork" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_const_PTHREAD_MUTEX_RECURSIVE" >&5 +printf "%s\n" "$gl_cv_const_PTHREAD_MUTEX_RECURSIVE" >&6; } + if test $gl_cv_const_PTHREAD_MUTEX_RECURSIVE != yes; then + HAVE_PTHREAD_MUTEX_RECURSIVE=0 + fi + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for PTHREAD_MUTEX_ROBUST" >&5 +printf %s "checking for PTHREAD_MUTEX_ROBUST... " >&6; } +if test ${gl_cv_const_PTHREAD_MUTEX_ROBUST+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -extern -#ifdef __cplusplus -"C" -#endif -char setsockopt(); +#include + int x = PTHREAD_MUTEX_ROBUST; + int main (void) { -setsockopt(); + ; return 0; } _ACEOF -if ac_fn_c_try_link "$LINENO" +if ac_fn_c_try_compile "$LINENO" then : - gl_cv_lib_socket="-lnetwork" + gl_cv_const_PTHREAD_MUTEX_ROBUST=yes +else case e in #( + e) gl_cv_const_PTHREAD_MUTEX_ROBUST=no ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam \ - conftest$ac_exeext conftest.$ac_ext - if test -z "$gl_cv_lib_socket"; then - LIBS="$gl_save_LIBS -lnet" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_const_PTHREAD_MUTEX_ROBUST" >&5 +printf "%s\n" "$gl_cv_const_PTHREAD_MUTEX_ROBUST" >&6; } + if test $gl_cv_const_PTHREAD_MUTEX_ROBUST != yes; then + HAVE_PTHREAD_MUTEX_ROBUST=0 + fi + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for PTHREAD_PROCESS_SHARED" >&5 +printf %s "checking for PTHREAD_PROCESS_SHARED... " >&6; } +if test ${gl_cv_const_PTHREAD_PROCESS_SHARED+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -extern -#ifdef __cplusplus -"C" -#endif -char setsockopt(); +#include + int x = PTHREAD_PROCESS_SHARED; + int main (void) { -setsockopt(); + ; return 0; } _ACEOF -if ac_fn_c_try_link "$LINENO" +if ac_fn_c_try_compile "$LINENO" then : - gl_cv_lib_socket="-lnet" -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam \ - conftest$ac_exeext conftest.$ac_ext - fi - fi - LIBS="$gl_save_LIBS" - + gl_cv_const_PTHREAD_PROCESS_SHARED=yes +else case e in #( + e) gl_cv_const_PTHREAD_PROCESS_SHARED=no ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam \ - conftest$ac_exeext conftest.$ac_ext - if test -z "$gl_cv_lib_socket"; then - gl_cv_lib_socket="none needed" - fi - +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext + ;; +esac fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_lib_socket" >&5 -printf "%s\n" "$gl_cv_lib_socket" >&6; } - if test "$gl_cv_lib_socket" != "none needed"; then - LIBSOCKET="$gl_cv_lib_socket" - fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_const_PTHREAD_PROCESS_SHARED" >&5 +printf "%s\n" "$gl_cv_const_PTHREAD_PROCESS_SHARED" >&6; } + if test $gl_cv_const_PTHREAD_PROCESS_SHARED != yes; then + HAVE_PTHREAD_PROCESS_SHARED=0 fi @@ -24410,314 +26768,65 @@ printf "%s\n" "$gl_cv_lib_socket" >&6; } - : - - - - - - - if test "$ac_cv_header_winsock2_h" = yes; then - REPLACE_SELECT=1 - else - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether select supports a 0 argument" >&5 -printf %s "checking whether select supports a 0 argument... " >&6; } -if test ${gl_cv_func_select_supports0+y} -then : - printf %s "(cached) " >&6 -else $as_nop - - if test "$cross_compiling" = yes -then : - - case "$host_os" in - # Guess no on Interix. - interix*) gl_cv_func_select_supports0="guessing no";; - # Guess yes otherwise. - *) gl_cv_func_select_supports0="guessing yes";; - esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ + LIB_PTHREAD="$LIBPMULTITHREAD" -#include -#include -#if HAVE_SYS_SELECT_H -#include -#endif -int main () -{ - struct timeval timeout; - timeout.tv_sec = 0; - timeout.tv_usec = 5; - return select (0, (fd_set *)0, (fd_set *)0, (fd_set *)0, &timeout) < 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO" -then : - gl_cv_func_select_supports0=yes -else $as_nop - gl_cv_func_select_supports0=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_select_supports0" >&5 -printf "%s\n" "$gl_cv_func_select_supports0" >&6; } - case "$gl_cv_func_select_supports0" in - *yes) ;; - *) REPLACE_SELECT=1 ;; - esac - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether select detects invalid fds" >&5 -printf %s "checking whether select detects invalid fds... " >&6; } -if test ${gl_cv_func_select_detects_ebadf+y} -then : - printf %s "(cached) " >&6 -else $as_nop + GL_GNULIB_PTHREAD_THREAD=0 - if test "$cross_compiling" = yes -then : - case "$host_os" in - # Guess yes on Linux systems. - linux-* | linux) gl_cv_func_select_detects_ebadf="guessing yes" ;; - # Guess yes on glibc systems. - *-gnu* | gnu*) gl_cv_func_select_detects_ebadf="guessing yes" ;; - # If we don't know, obey --enable-cross-guesses. - *) gl_cv_func_select_detects_ebadf="$gl_cross_guess_normal" ;; - esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ + GL_GNULIB_PTHREAD_ONCE=0 -#include -#include -#if HAVE_SYS_SELECT_H -# include -#endif -#include -#include -$gl_mda_defines + GL_GNULIB_PTHREAD_MUTEX=0 -int -main (void) -{ - fd_set set; - dup2(0, 16); - FD_ZERO(&set); - FD_SET(16, &set); - close(16); - struct timeval timeout; - timeout.tv_sec = 0; - timeout.tv_usec = 5; - return select (17, &set, NULL, NULL, &timeout) != -1 || errno != EBADF; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO" -then : - gl_cv_func_select_detects_ebadf=yes -else $as_nop - gl_cv_func_select_detects_ebadf=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi + GL_GNULIB_PTHREAD_RWLOCK=0 -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_select_detects_ebadf" >&5 -printf "%s\n" "$gl_cv_func_select_detects_ebadf" >&6; } - case $gl_cv_func_select_detects_ebadf in - *yes) ;; - *) REPLACE_SELECT=1 ;; - esac - fi - LIB_SELECT="$LIBSOCKET" - if test $REPLACE_SELECT = 1; then - case "$host_os" in - mingw*) - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ + GL_GNULIB_PTHREAD_COND=0 -#define WIN32_LEAN_AND_MEAN -#include -int -main () -{ - MsgWaitForMultipleObjects (0, NULL, 0, 0, 0); - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO" -then : -else $as_nop - LIB_SELECT="$LIB_SELECT -luser32" -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam \ - conftest$ac_exeext conftest.$ac_ext - ;; - esac - fi + GL_GNULIB_PTHREAD_TSS=0 + GL_GNULIB_PTHREAD_SPIN=0 + GL_GNULIB_PTHREAD_MUTEX_TIMEDLOCK=0 - if test $ac_cv_have_decl_strerror_r = no; then - HAVE_DECL_STRERROR_R=0 - fi - if test $ac_cv_func_strerror_r = yes; then - if test "$ERRNO_H:$REPLACE_STRERROR_0" = :0; then - if test $gl_cv_func_strerror_r_posix_signature = yes; then - case "$gl_cv_func_strerror_r_works" in - *no) REPLACE_STRERROR_R=1 ;; - esac - else - REPLACE_STRERROR_R=1 - fi - else - REPLACE_STRERROR_R=1 - fi - fi + HAVE_SCHED_YIELD=1; + REPLACE_SCHED_YIELD=0; - HAVE_PTHREAD_T=1; - HAVE_PTHREAD_SPINLOCK_T=1; - HAVE_PTHREAD_CREATE_DETACHED=1; - HAVE_PTHREAD_MUTEX_RECURSIVE=1; - HAVE_PTHREAD_MUTEX_ROBUST=1; - HAVE_PTHREAD_PROCESS_SHARED=1; - HAVE_PTHREAD_CREATE=1; - HAVE_PTHREAD_ATTR_INIT=1; - HAVE_PTHREAD_ATTR_GETDETACHSTATE=1; - HAVE_PTHREAD_ATTR_SETDETACHSTATE=1; - HAVE_PTHREAD_ATTR_DESTROY=1; - HAVE_PTHREAD_SELF=1; - HAVE_PTHREAD_EQUAL=1; - HAVE_PTHREAD_DETACH=1; - HAVE_PTHREAD_JOIN=1; - HAVE_PTHREAD_EXIT=1; - HAVE_PTHREAD_ONCE=1; - HAVE_PTHREAD_MUTEX_INIT=1; - HAVE_PTHREAD_MUTEXATTR_INIT=1; - HAVE_PTHREAD_MUTEXATTR_GETTYPE=1; - HAVE_PTHREAD_MUTEXATTR_SETTYPE=1; - HAVE_PTHREAD_MUTEXATTR_GETROBUST=1; - HAVE_PTHREAD_MUTEXATTR_SETROBUST=1; - HAVE_PTHREAD_MUTEXATTR_DESTROY=1; - HAVE_PTHREAD_MUTEX_LOCK=1; - HAVE_PTHREAD_MUTEX_TRYLOCK=1; - HAVE_PTHREAD_MUTEX_TIMEDLOCK=1; - HAVE_PTHREAD_MUTEX_UNLOCK=1; - HAVE_PTHREAD_MUTEX_DESTROY=1; - HAVE_PTHREAD_RWLOCK_INIT=1; - HAVE_PTHREAD_RWLOCKATTR_INIT=1; - HAVE_PTHREAD_RWLOCKATTR_DESTROY=1; - HAVE_PTHREAD_RWLOCK_RDLOCK=1; - HAVE_PTHREAD_RWLOCK_WRLOCK=1; - HAVE_PTHREAD_RWLOCK_TRYRDLOCK=1; - HAVE_PTHREAD_RWLOCK_TRYWRLOCK=1; - HAVE_PTHREAD_RWLOCK_TIMEDRDLOCK=1; - HAVE_PTHREAD_RWLOCK_TIMEDWRLOCK=1; - HAVE_PTHREAD_RWLOCK_UNLOCK=1; - HAVE_PTHREAD_RWLOCK_DESTROY=1; - HAVE_PTHREAD_COND_INIT=1; - HAVE_PTHREAD_CONDATTR_INIT=1; - HAVE_PTHREAD_CONDATTR_DESTROY=1; - HAVE_PTHREAD_COND_WAIT=1; - HAVE_PTHREAD_COND_TIMEDWAIT=1; - HAVE_PTHREAD_COND_SIGNAL=1; - HAVE_PTHREAD_COND_BROADCAST=1; - HAVE_PTHREAD_COND_DESTROY=1; - HAVE_PTHREAD_KEY_CREATE=1; - HAVE_PTHREAD_SETSPECIFIC=1; - HAVE_PTHREAD_GETSPECIFIC=1; - HAVE_PTHREAD_KEY_DELETE=1; - HAVE_PTHREAD_SPIN_INIT=1; - HAVE_PTHREAD_SPIN_LOCK=1; - HAVE_PTHREAD_SPIN_TRYLOCK=1; - HAVE_PTHREAD_SPIN_UNLOCK=1; - HAVE_PTHREAD_SPIN_DESTROY=1; - REPLACE_PTHREAD_CREATE=0; - REPLACE_PTHREAD_ATTR_INIT=0; - REPLACE_PTHREAD_ATTR_GETDETACHSTATE=0; - REPLACE_PTHREAD_ATTR_SETDETACHSTATE=0; - REPLACE_PTHREAD_ATTR_DESTROY=0; - REPLACE_PTHREAD_SELF=0; - REPLACE_PTHREAD_EQUAL=0; - REPLACE_PTHREAD_DETACH=0; - REPLACE_PTHREAD_JOIN=0; - REPLACE_PTHREAD_EXIT=0; - REPLACE_PTHREAD_ONCE=0; - REPLACE_PTHREAD_MUTEX_INIT=0; - REPLACE_PTHREAD_MUTEXATTR_INIT=0; - REPLACE_PTHREAD_MUTEXATTR_GETTYPE=0; - REPLACE_PTHREAD_MUTEXATTR_SETTYPE=0; - REPLACE_PTHREAD_MUTEXATTR_GETROBUST=0; - REPLACE_PTHREAD_MUTEXATTR_SETROBUST=0; - REPLACE_PTHREAD_MUTEXATTR_DESTROY=0; - REPLACE_PTHREAD_MUTEX_LOCK=0; - REPLACE_PTHREAD_MUTEX_TRYLOCK=0; - REPLACE_PTHREAD_MUTEX_TIMEDLOCK=0; - REPLACE_PTHREAD_MUTEX_UNLOCK=0; - REPLACE_PTHREAD_MUTEX_DESTROY=0; - REPLACE_PTHREAD_RWLOCK_INIT=0; - REPLACE_PTHREAD_RWLOCKATTR_INIT=0; - REPLACE_PTHREAD_RWLOCKATTR_DESTROY=0; - REPLACE_PTHREAD_RWLOCK_RDLOCK=0; - REPLACE_PTHREAD_RWLOCK_WRLOCK=0; - REPLACE_PTHREAD_RWLOCK_TRYRDLOCK=0; - REPLACE_PTHREAD_RWLOCK_TRYWRLOCK=0; - REPLACE_PTHREAD_RWLOCK_TIMEDRDLOCK=0; - REPLACE_PTHREAD_RWLOCK_TIMEDWRLOCK=0; - REPLACE_PTHREAD_RWLOCK_UNLOCK=0; - REPLACE_PTHREAD_RWLOCK_DESTROY=0; - REPLACE_PTHREAD_COND_INIT=0; - REPLACE_PTHREAD_CONDATTR_INIT=0; - REPLACE_PTHREAD_CONDATTR_DESTROY=0; - REPLACE_PTHREAD_COND_WAIT=0; - REPLACE_PTHREAD_COND_TIMEDWAIT=0; - REPLACE_PTHREAD_COND_SIGNAL=0; - REPLACE_PTHREAD_COND_BROADCAST=0; - REPLACE_PTHREAD_COND_DESTROY=0; - REPLACE_PTHREAD_KEY_CREATE=0; - REPLACE_PTHREAD_SETSPECIFIC=0; - REPLACE_PTHREAD_GETSPECIFIC=0; - REPLACE_PTHREAD_KEY_DELETE=0; - REPLACE_PTHREAD_SPIN_INIT=0; - REPLACE_PTHREAD_SPIN_LOCK=0; - REPLACE_PTHREAD_SPIN_TRYLOCK=0; - REPLACE_PTHREAD_SPIN_UNLOCK=0; - REPLACE_PTHREAD_SPIN_DESTROY=0; + ac_fn_c_check_header_compile "$LINENO" "sched.h" "ac_cv_header_sched_h" "#if HAVE_SYS_CDEFS_H + #include + #endif +" +if test "x$ac_cv_header_sched_h" = xyes +then : + printf "%s\n" "#define HAVE_SCHED_H 1" >>confdefs.h +fi @@ -24728,23 +26837,20 @@ rm -f core conftest.err conftest.$ac_objext conftest.beam \ if test $gl_cv_have_include_next = yes; then - gl_cv_next_pthread_h='<'pthread.h'>' + gl_cv_next_sched_h='<'sched.h'>' else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 -printf %s "checking absolute name of ... " >&6; } -if test ${gl_cv_next_pthread_h+y} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 +printf %s "checking absolute name of ... " >&6; } +if test ${gl_cv_next_sched_h+y} then : printf %s "(cached) " >&6 -else $as_nop - - if test $ac_cv_header_pthread_h = yes; then - - +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include +#include _ACEOF case "$host_os" in aix*) gl_absname_cpp="$ac_cpp -C" ;; @@ -24760,7 +26866,7 @@ _ACEOF ;; esac gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' - gl_header_literal_regex=`echo 'pthread.h' \ + gl_header_literal_regex=`echo 'sched.h' \ | sed -e "$gl_make_literal_regex_sed"` gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ @@ -24769,215 +26875,289 @@ _ACEOF q }' - gl_cv_absolute_pthread_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | + gl_cv_absolute_sched_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | sed -n "$gl_absolute_header_sed"` - gl_header=$gl_cv_absolute_pthread_h - gl_cv_next_pthread_h='"'$gl_header'"' - else - gl_cv_next_pthread_h='<'pthread.h'>' - fi - + gl_header=$gl_cv_absolute_sched_h + gl_cv_next_sched_h='"'$gl_header'"' + ;; +esac fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_pthread_h" >&5 -printf "%s\n" "$gl_cv_next_pthread_h" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_sched_h" >&5 +printf "%s\n" "$gl_cv_next_sched_h" >&6; } fi - NEXT_PTHREAD_H=$gl_cv_next_pthread_h + NEXT_SCHED_H=$gl_cv_next_sched_h if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'pthread.h'>' + gl_next_as_first_directive='<'sched.h'>' else # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_pthread_h + gl_next_as_first_directive=$gl_cv_next_sched_h fi - NEXT_AS_FIRST_DIRECTIVE_PTHREAD_H=$gl_next_as_first_directive - - + NEXT_AS_FIRST_DIRECTIVE_SCHED_H=$gl_next_as_first_directive - if test $ac_cv_header_pthread_h = yes; then - HAVE_PTHREAD_H=1 - if { case "$host_os" in mingw*) true;; *) false;; esac; } \ - && test $gl_threads_api = windows; then - HAVE_PTHREAD_H=0 - fi + if test "$ac_cv_header_sched_h" = yes; then + HAVE_SCHED_H=1 else - HAVE_PTHREAD_H=0 + HAVE_SCHED_H=0 fi - ac_fn_c_check_type "$LINENO" "pthread_t" "ac_cv_type_pthread_t" "$ac_includes_default - #if HAVE_PTHREAD_H - #include - #endif + if test "$HAVE_SCHED_H" = 1; then + ac_fn_c_check_type "$LINENO" "struct sched_param" "ac_cv_type_struct_sched_param" "#if HAVE_SYS_CDEFS_H + #include + #endif + #include + " -if test "x$ac_cv_type_pthread_t" = xyes +if test "x$ac_cv_type_struct_sched_param" = xyes then : - -printf "%s\n" "#define HAVE_PTHREAD_T 1" >>confdefs.h - - + HAVE_STRUCT_SCHED_PARAM=1 +else case e in #( + e) HAVE_STRUCT_SCHED_PARAM=0 ;; +esac fi -ac_fn_c_check_type "$LINENO" "pthread_spinlock_t" "ac_cv_type_pthread_spinlock_t" "$ac_includes_default - #if HAVE_PTHREAD_H - #include - #endif + + else + HAVE_STRUCT_SCHED_PARAM=0 + case "$host_os" in + os2*) + ac_fn_c_check_type "$LINENO" "struct sched_param" "ac_cv_type_struct_sched_param" "#include " -if test "x$ac_cv_type_pthread_spinlock_t" = xyes +if test "x$ac_cv_type_struct_sched_param" = xyes then : + HAVE_STRUCT_SCHED_PARAM=1 +fi -printf "%s\n" "#define HAVE_PTHREAD_SPINLOCK_T 1" >>confdefs.h - - + ;; + vms) + ac_fn_c_check_type "$LINENO" "struct sched_param" "ac_cv_type_struct_sched_param" "#include +" +if test "x$ac_cv_type_struct_sched_param" = xyes +then : + HAVE_STRUCT_SCHED_PARAM=1 fi - if test $ac_cv_type_pthread_t != yes; then - HAVE_PTHREAD_T=0 + ;; + esac fi - if test $ac_cv_type_pthread_spinlock_t != yes; then - HAVE_PTHREAD_SPINLOCK_T=0 + + + if test "$ac_cv_header_sys_cdefs_h" = yes; then + HAVE_SYS_CDEFS_H=1 + else + HAVE_SYS_CDEFS_H=0 fi - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for PTHREAD_CREATE_DETACHED" >&5 -printf %s "checking for PTHREAD_CREATE_DETACHED... " >&6; } -if test ${gl_cv_const_PTHREAD_CREATE_DETACHED+y} -then : - printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - int x = PTHREAD_CREATE_DETACHED; -int -main (void) -{ - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - gl_cv_const_PTHREAD_CREATE_DETACHED=yes -else $as_nop - gl_cv_const_PTHREAD_CREATE_DETACHED=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext + + + + + + + GL_GNULIB_SCHED_YIELD=0 + + + + + + + + + if test $ac_cv_header_sys_socket_h != yes; then + ac_fn_c_check_header_compile "$LINENO" "winsock2.h" "ac_cv_header_winsock2_h" "$ac_includes_default" +if test "x$ac_cv_header_winsock2_h" = xyes +then : + printf "%s\n" "#define HAVE_WINSOCK2_H 1" >>confdefs.h fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_const_PTHREAD_CREATE_DETACHED" >&5 -printf "%s\n" "$gl_cv_const_PTHREAD_CREATE_DETACHED" >&6; } - if test $gl_cv_const_PTHREAD_CREATE_DETACHED != yes; then - HAVE_PTHREAD_CREATE_DETACHED=0 + + fi + if test "$ac_cv_header_winsock2_h" = yes; then + HAVE_WINSOCK2_H=1 + UNISTD_H_HAVE_WINSOCK2_H=1 + SYS_IOCTL_H_HAVE_WINSOCK2_H=1 + else + HAVE_WINSOCK2_H=0 fi - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for PTHREAD_MUTEX_RECURSIVE" >&5 -printf %s "checking for PTHREAD_MUTEX_RECURSIVE... " >&6; } -if test ${gl_cv_const_PTHREAD_MUTEX_RECURSIVE+y} + LIBSOCKET= + if test $HAVE_WINSOCK2_H = 1; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for WSAStartup" >&5 +printf %s "checking for WSAStartup... " >&6; } +if test ${gl_cv_func_wsastartup+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) + gl_save_LIBS="$LIBS" + LIBS="$LIBS -lws2_32" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include - int x = PTHREAD_MUTEX_RECURSIVE; +#ifdef HAVE_WINSOCK2_H +# include +#endif int main (void) { + WORD wVersionRequested = MAKEWORD(1, 1); + WSADATA wsaData; + int err = WSAStartup(wVersionRequested, &wsaData); + WSACleanup (); + ; return 0; } + _ACEOF -if ac_fn_c_try_compile "$LINENO" +if ac_fn_c_try_link "$LINENO" then : - gl_cv_const_PTHREAD_MUTEX_RECURSIVE=yes -else $as_nop - gl_cv_const_PTHREAD_MUTEX_RECURSIVE=no + gl_cv_func_wsastartup=yes +else case e in #( + e) gl_cv_func_wsastartup=no ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - +rm -f core conftest.err conftest.$ac_objext conftest.beam \ + conftest$ac_exeext conftest.$ac_ext + LIBS="$gl_save_LIBS" + ;; +esac fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_const_PTHREAD_MUTEX_RECURSIVE" >&5 -printf "%s\n" "$gl_cv_const_PTHREAD_MUTEX_RECURSIVE" >&6; } - if test $gl_cv_const_PTHREAD_MUTEX_RECURSIVE != yes; then - HAVE_PTHREAD_MUTEX_RECURSIVE=0 - fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_wsastartup" >&5 +printf "%s\n" "$gl_cv_func_wsastartup" >&6; } + if test "$gl_cv_func_wsastartup" = "yes"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for PTHREAD_MUTEX_ROBUST" >&5 -printf %s "checking for PTHREAD_MUTEX_ROBUST... " >&6; } -if test ${gl_cv_const_PTHREAD_MUTEX_ROBUST+y} +printf "%s\n" "#define WINDOWS_SOCKETS 1" >>confdefs.h + + LIBSOCKET='-lws2_32' + fi + else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for library containing setsockopt" >&5 +printf %s "checking for library containing setsockopt... " >&6; } +if test ${gl_cv_lib_socket+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) + gl_cv_lib_socket= + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include - int x = PTHREAD_MUTEX_ROBUST; - +extern +#ifdef __cplusplus +"C" +#endif +char setsockopt(); int main (void) { - +setsockopt(); ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO" +if ac_fn_c_try_link "$LINENO" then : - gl_cv_const_PTHREAD_MUTEX_ROBUST=yes -else $as_nop - gl_cv_const_PTHREAD_MUTEX_ROBUST=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +else case e in #( + e) gl_save_LIBS="$LIBS" + LIBS="$gl_save_LIBS -lsocket" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +extern +#ifdef __cplusplus +"C" +#endif +char setsockopt(); +int +main (void) +{ +setsockopt(); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO" +then : + gl_cv_lib_socket="-lsocket" fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_const_PTHREAD_MUTEX_ROBUST" >&5 -printf "%s\n" "$gl_cv_const_PTHREAD_MUTEX_ROBUST" >&6; } - if test $gl_cv_const_PTHREAD_MUTEX_ROBUST != yes; then - HAVE_PTHREAD_MUTEX_ROBUST=0 - fi - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for PTHREAD_PROCESS_SHARED" >&5 -printf %s "checking for PTHREAD_PROCESS_SHARED... " >&6; } -if test ${gl_cv_const_PTHREAD_PROCESS_SHARED+y} +rm -f core conftest.err conftest.$ac_objext conftest.beam \ + conftest$ac_exeext conftest.$ac_ext + if test -z "$gl_cv_lib_socket"; then + LIBS="$gl_save_LIBS -lnetwork" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +extern +#ifdef __cplusplus +"C" +#endif +char setsockopt(); +int +main (void) +{ +setsockopt(); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO" then : - printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + gl_cv_lib_socket="-lnetwork" +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam \ + conftest$ac_exeext conftest.$ac_ext + if test -z "$gl_cv_lib_socket"; then + LIBS="$gl_save_LIBS -lnet" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include - int x = PTHREAD_PROCESS_SHARED; - +extern +#ifdef __cplusplus +"C" +#endif +char setsockopt(); int main (void) { - +setsockopt(); ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO" +if ac_fn_c_try_link "$LINENO" then : - gl_cv_const_PTHREAD_PROCESS_SHARED=yes -else $as_nop - gl_cv_const_PTHREAD_PROCESS_SHARED=no + gl_cv_lib_socket="-lnet" fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - +rm -f core conftest.err conftest.$ac_objext conftest.beam \ + conftest$ac_exeext conftest.$ac_ext + fi + fi + LIBS="$gl_save_LIBS" + ;; +esac fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_const_PTHREAD_PROCESS_SHARED" >&5 -printf "%s\n" "$gl_cv_const_PTHREAD_PROCESS_SHARED" >&6; } - if test $gl_cv_const_PTHREAD_PROCESS_SHARED != yes; then - HAVE_PTHREAD_PROCESS_SHARED=0 +rm -f core conftest.err conftest.$ac_objext conftest.beam \ + conftest$ac_exeext conftest.$ac_ext + if test -z "$gl_cv_lib_socket"; then + gl_cv_lib_socket="none needed" + fi + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_lib_socket" >&5 +printf "%s\n" "$gl_cv_lib_socket" >&6; } + if test "$gl_cv_lib_socket" != "none needed"; then + LIBSOCKET="$gl_cv_lib_socket" + fi fi @@ -24985,226 +27165,563 @@ printf "%s\n" "$gl_cv_const_PTHREAD_PROCESS_SHARED" >&6; } - - LIB_PTHREAD="$LIBPMULTITHREAD" - - - - - GL_GNULIB_PTHREAD_THREAD=0 - - - - GL_GNULIB_PTHREAD_ONCE=0 - + : - GL_GNULIB_PTHREAD_MUTEX=0 - GL_GNULIB_PTHREAD_RWLOCK=0 - GL_GNULIB_PTHREAD_COND=0 + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether snprintf returns a byte count as in C99" >&5 +printf %s "checking whether snprintf returns a byte count as in C99... " >&6; } +if test ${gl_cv_func_snprintf_retval_c99+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + if test "$cross_compiling" = yes +then : + case "$host_os" in + # Guess yes on glibc systems. + *-gnu* | gnu*) gl_cv_func_snprintf_retval_c99="guessing yes";; + # Guess yes on musl systems. + *-musl* | midipix*) gl_cv_func_snprintf_retval_c99="guessing yes";; + # Guess yes on FreeBSD >= 5. + freebsd[1-4].*) gl_cv_func_snprintf_retval_c99="guessing no";; + freebsd* | kfreebsd*) gl_cv_func_snprintf_retval_c99="guessing yes";; + midnightbsd*) gl_cv_func_snprintf_retval_c99="guessing yes";; + # Guess yes on Mac OS X >= 10.3. + darwin[1-6].*) gl_cv_func_snprintf_retval_c99="guessing no";; + darwin*) gl_cv_func_snprintf_retval_c99="guessing yes";; + # Guess yes on OpenBSD >= 3.9. + openbsd[1-2].* | openbsd3.[0-8] | openbsd3.[0-8].*) + gl_cv_func_snprintf_retval_c99="guessing no";; + openbsd*) gl_cv_func_snprintf_retval_c99="guessing yes";; + # Guess yes on Solaris >= 2.10. + solaris2.[1-9][0-9]*) gl_cv_func_printf_sizes_c99="guessing yes";; + solaris*) gl_cv_func_printf_sizes_c99="guessing no";; + # Guess yes on AIX >= 4. + aix[1-3]*) gl_cv_func_snprintf_retval_c99="guessing no";; + aix*) gl_cv_func_snprintf_retval_c99="guessing yes";; + # Guess yes on NetBSD >= 3. + netbsd[1-2]* | netbsdelf[1-2]* | netbsdaout[1-2]* | netbsdcoff[1-2]*) + gl_cv_func_snprintf_retval_c99="guessing no";; + netbsd*) gl_cv_func_snprintf_retval_c99="guessing yes";; + # Guess yes on BeOS. + beos*) gl_cv_func_snprintf_retval_c99="guessing yes";; + # Guess yes on Android. + linux*-android*) gl_cv_func_snprintf_retval_c99="guessing yes";; + # Guess yes on MSVC, no on mingw. + mingw*) cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ - GL_GNULIB_PTHREAD_TSS=0 +#ifdef _MSC_VER + Known +#endif +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP_TRADITIONAL "Known" >/dev/null 2>&1 +then : + gl_cv_func_snprintf_retval_c99="guessing yes" +else case e in #( + e) gl_cv_func_snprintf_retval_c99="guessing no" ;; +esac +fi +rm -rf conftest* + ;; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_snprintf_retval_c99="$gl_cross_guess_normal";; + esac - GL_GNULIB_PTHREAD_SPIN=0 +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +#if HAVE_SNPRINTF +# define my_snprintf snprintf +#else +# include +static int my_snprintf (char *buf, int size, const char *format, ...) +{ + va_list args; + int ret; + va_start (args, format); + ret = vsnprintf (buf, size, format, args); + va_end (args); + return ret; +} +#endif +static char buf[100]; +int main () +{ + strcpy (buf, "ABCDEF"); + if (my_snprintf (buf, 3, "%d %d", 4567, 89) != 7) + return 1; + if (my_snprintf (buf, 0, "%d %d", 4567, 89) != 7) + return 2; + if (my_snprintf (NULL, 0, "%d %d", 4567, 89) != 7) + return 3; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO" +then : + gl_cv_func_snprintf_retval_c99=yes +else case e in #( + e) gl_cv_func_snprintf_retval_c99=no ;; +esac +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac +fi + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_snprintf_retval_c99" >&5 +printf "%s\n" "$gl_cv_func_snprintf_retval_c99" >&6; } - GL_GNULIB_PTHREAD_MUTEX_TIMEDLOCK=0 + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether printf supports POSIX/XSI format strings with positions" >&5 +printf %s "checking whether printf supports POSIX/XSI format strings with positions... " >&6; } +if test ${gl_cv_func_printf_positions+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + if test "$cross_compiling" = yes +then : + case "$host_os" in + netbsd[1-3]* | netbsdelf[1-3]* | netbsdaout[1-3]* | netbsdcoff[1-3]*) + gl_cv_func_printf_positions="guessing no";; + beos*) gl_cv_func_printf_positions="guessing no";; + # Guess yes on Android. + linux*-android*) gl_cv_func_printf_positions="guessing yes";; + # Guess no on native Windows. + mingw* | pw*) gl_cv_func_printf_positions="guessing no";; + *) gl_cv_func_printf_positions="guessing yes";; + esac +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ - HAVE_SCHED_YIELD=1; - REPLACE_SCHED_YIELD=0; +#include +#include +/* The string "%2$d %1$d", with dollar characters protected from the shell's + dollar expansion (possibly an autoconf bug). */ +static char format[] = { '%', '2', '$', 'd', ' ', '%', '1', '$', 'd', '\0' }; +static char buf[100]; +int main () +{ + sprintf (buf, format, 33, 55); + return (strcmp (buf, "55 33") != 0); +} +_ACEOF +if ac_fn_c_try_run "$LINENO" +then : + gl_cv_func_printf_positions=yes +else case e in #( + e) gl_cv_func_printf_positions=no ;; +esac +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac +fi + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_printf_positions" >&5 +printf "%s\n" "$gl_cv_func_printf_positions" >&6; } +ac_fn_check_decl "$LINENO" "snprintf" "ac_cv_have_decl_snprintf" "$ac_includes_default" "$ac_c_undeclared_builtin_options" "CFLAGS" +if test "x$ac_cv_have_decl_snprintf" = xyes +then : + ac_have_decl=1 +else case e in #( + e) ac_have_decl=0 ;; +esac +fi +printf "%s\n" "#define HAVE_DECL_SNPRINTF $ac_have_decl" >>confdefs.h + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking where to find the exponent in a 'double'" >&5 +printf %s "checking where to find the exponent in a 'double'... " >&6; } +if test ${gl_cv_cc_double_expbit0+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + if test "$cross_compiling" = yes +then : + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#if defined arm || defined __arm || defined __arm__ + mixed_endianness +#endif - ac_fn_c_check_header_compile "$LINENO" "sched.h" "ac_cv_header_sched_h" "#if HAVE_SYS_CDEFS_H - #include - #endif +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP_TRADITIONAL "mixed_endianness" >/dev/null 2>&1 +then : + gl_cv_cc_double_expbit0="unknown" +else case e in #( + e) + : +if test ${ac_cv_c_bigendian+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) ac_cv_c_bigendian=unknown + # See if we're dealing with a universal compiler. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#ifndef __APPLE_CC__ + not a universal capable compiler + #endif + typedef int dummy; -" -if test "x$ac_cv_header_sched_h" = xyes +_ACEOF +if ac_fn_c_try_compile "$LINENO" then : - printf "%s\n" "#define HAVE_SCHED_H 1" >>confdefs.h + # Check for potential -arch flags. It is not universal unless + # there are at least two -arch flags with different values. + ac_arch= + ac_prev= + for ac_word in $CC $CFLAGS $CPPFLAGS $LDFLAGS; do + if test -n "$ac_prev"; then + case $ac_word in + i?86 | x86_64 | ppc | ppc64) + if test -z "$ac_arch" || test "$ac_arch" = "$ac_word"; then + ac_arch=$ac_word + else + ac_cv_c_bigendian=universal + break + fi + ;; + esac + ac_prev= + elif test "x$ac_word" = "x-arch"; then + ac_prev=arch + fi + done fi +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext + if test $ac_cv_c_bigendian = unknown; then + # See if sys/param.h defines the BYTE_ORDER macro. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + #include +int +main (void) +{ +#if ! (defined BYTE_ORDER && defined BIG_ENDIAN \\ + && defined LITTLE_ENDIAN && BYTE_ORDER && BIG_ENDIAN \\ + && LITTLE_ENDIAN) + bogus endian macros + #endif + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO" +then : + # It does; now see whether it defined to BIG_ENDIAN or not. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + #include +int +main (void) +{ +#if BYTE_ORDER != BIG_ENDIAN + not big endian + #endif + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO" +then : + ac_cv_c_bigendian=yes +else case e in #( + e) ac_cv_c_bigendian=no ;; +esac +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext + fi + if test $ac_cv_c_bigendian = unknown; then + # See if defines _LITTLE_ENDIAN or _BIG_ENDIAN (e.g., Solaris). + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +int +main (void) +{ +#if ! (defined _LITTLE_ENDIAN || defined _BIG_ENDIAN) + bogus endian macros + #endif - - - - if test $gl_cv_have_include_next = yes; then - gl_cv_next_sched_h='<'sched.h'>' - else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 -printf %s "checking absolute name of ... " >&6; } -if test ${gl_cv_next_sched_h+y} + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO" then : - printf %s "(cached) " >&6 -else $as_nop - + # It does; now see whether it defined to _BIG_ENDIAN or not. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +int +main (void) +{ +#ifndef _BIG_ENDIAN + not big endian + #endif - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include + ; + return 0; +} _ACEOF - case "$host_os" in - aix*) gl_absname_cpp="$ac_cpp -C" ;; - *) gl_absname_cpp="$ac_cpp" ;; - esac - - case "$host_os" in - mingw*) - gl_dirsep_regex='[/\\]' - ;; - *) - gl_dirsep_regex='\/' - ;; - esac - gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' - gl_header_literal_regex=`echo 'sched.h' \ - | sed -e "$gl_make_literal_regex_sed"` - gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ - s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ - s|^/[^/]|//&| - p - q - }' - - gl_cv_absolute_sched_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | - sed -n "$gl_absolute_header_sed"` - - gl_header=$gl_cv_absolute_sched_h - gl_cv_next_sched_h='"'$gl_header'"' - - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_sched_h" >&5 -printf "%s\n" "$gl_cv_next_sched_h" >&6; } - fi - NEXT_SCHED_H=$gl_cv_next_sched_h - - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'sched.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_sched_h - fi - NEXT_AS_FIRST_DIRECTIVE_SCHED_H=$gl_next_as_first_directive - - - - - - if test "$ac_cv_header_sched_h" = yes; then - HAVE_SCHED_H=1 - else - HAVE_SCHED_H=0 - fi - - - if test "$HAVE_SCHED_H" = 1; then - ac_fn_c_check_type "$LINENO" "struct sched_param" "ac_cv_type_struct_sched_param" "#if HAVE_SYS_CDEFS_H - #include - #endif - #include - -" -if test "x$ac_cv_type_struct_sched_param" = xyes +if ac_fn_c_try_compile "$LINENO" then : - HAVE_STRUCT_SCHED_PARAM=1 -else $as_nop - HAVE_STRUCT_SCHED_PARAM=0 + ac_cv_c_bigendian=yes +else case e in #( + e) ac_cv_c_bigendian=no ;; +esac fi - - else - HAVE_STRUCT_SCHED_PARAM=0 - case "$host_os" in - os2*) - ac_fn_c_check_type "$LINENO" "struct sched_param" "ac_cv_type_struct_sched_param" "#include -" -if test "x$ac_cv_type_struct_sched_param" = xyes -then : - HAVE_STRUCT_SCHED_PARAM=1 +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext fi - - ;; - vms) - ac_fn_c_check_type "$LINENO" "struct sched_param" "ac_cv_type_struct_sched_param" "#include -" -if test "x$ac_cv_type_struct_sched_param" = xyes +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext + fi + if test $ac_cv_c_bigendian = unknown; then + # Compile a test program. + if test "$cross_compiling" = yes then : - HAVE_STRUCT_SCHED_PARAM=1 + # Try to guess by grepping values from an object file. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +unsigned short int ascii_mm[] = + { 0x4249, 0x4765, 0x6E44, 0x6961, 0x6E53, 0x7953, 0 }; + unsigned short int ascii_ii[] = + { 0x694C, 0x5454, 0x656C, 0x6E45, 0x6944, 0x6E61, 0 }; + int use_ascii (int i) { + return ascii_mm[i] + ascii_ii[i]; + } + unsigned short int ebcdic_ii[] = + { 0x89D3, 0xE3E3, 0x8593, 0x95C5, 0x89C4, 0x9581, 0 }; + unsigned short int ebcdic_mm[] = + { 0xC2C9, 0xC785, 0x95C4, 0x8981, 0x95E2, 0xA8E2, 0 }; + int use_ebcdic (int i) { + return ebcdic_mm[i] + ebcdic_ii[i]; + } + int + main (int argc, char **argv) + { + /* Intimidate the compiler so that it does not + optimize the arrays away. */ + char *p = argv[0]; + ascii_mm[1] = *p++; ebcdic_mm[1] = *p++; + ascii_ii[1] = *p++; ebcdic_ii[1] = *p++; + return use_ascii (argc) == use_ebcdic (*p); + } +_ACEOF +if ac_fn_c_try_link "$LINENO" +then : + if grep BIGenDianSyS conftest$ac_exeext >/dev/null; then + ac_cv_c_bigendian=yes + fi + if grep LiTTleEnDian conftest$ac_exeext >/dev/null ; then + if test "$ac_cv_c_bigendian" = unknown; then + ac_cv_c_bigendian=no + else + # finding both strings is unlikely to happen, but who knows? + ac_cv_c_bigendian=unknown + fi + fi fi +rm -f core conftest.err conftest.$ac_objext conftest.beam \ + conftest$ac_exeext conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$ac_includes_default +int +main (void) +{ - ;; - esac - fi - - - if test "$ac_cv_header_sys_cdefs_h" = yes; then - HAVE_SYS_CDEFS_H=1 - else - HAVE_SYS_CDEFS_H=0 - fi - - - - - - - - - - - GL_GNULIB_SCHED_YIELD=0 - + /* Are we little or big endian? From Harbison&Steele. */ + union + { + long int l; + char c[sizeof (long int)]; + } u; + u.l = 1; + return u.c[sizeof (long int) - 1] == 1; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO" +then : + ac_cv_c_bigendian=no +else case e in #( + e) ac_cv_c_bigendian=yes ;; +esac +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac +fi + fi ;; +esac +fi +: + case $ac_cv_c_bigendian in #( + yes) + gl_cv_cc_double_expbit0="word 0 bit 20";; #( + no) + gl_cv_cc_double_expbit0="word 1 bit 20" ;; #( + universal) +printf "%s\n" "#define AC_APPLE_UNIVERSAL_BUILD 1" >>confdefs.h - GL_GNULIB_PSELECT=0 + ;; #( + *) + gl_cv_cc_double_expbit0="unknown" ;; + esac + ;; +esac +fi +rm -rf conftest* - GL_GNULIB_SELECT=0 +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +#include +#include +#define NWORDS \ + ((sizeof (double) + sizeof (unsigned int) - 1) / sizeof (unsigned int)) +typedef union { double value; unsigned int word[NWORDS]; } memory_double; +static unsigned int ored_words[NWORDS]; +static unsigned int anded_words[NWORDS]; +static void add_to_ored_words (double x) +{ + memory_double m; + size_t i; + /* Clear it first, in case sizeof (double) < sizeof (memory_double). */ + memset (&m, 0, sizeof (memory_double)); + m.value = x; + for (i = 0; i < NWORDS; i++) + { + ored_words[i] |= m.word[i]; + anded_words[i] &= m.word[i]; + } +} +int main () +{ + size_t j; + FILE *fp = fopen ("conftest.out", "w"); + if (fp == NULL) + return 1; + for (j = 0; j < NWORDS; j++) + anded_words[j] = ~ (unsigned int) 0; + add_to_ored_words (0.25); + add_to_ored_words (0.5); + add_to_ored_words (1.0); + add_to_ored_words (2.0); + add_to_ored_words (4.0); + /* Remove bits that are common (e.g. if representation of the first mantissa + bit is explicit). */ + for (j = 0; j < NWORDS; j++) + ored_words[j] &= ~anded_words[j]; + /* Now find the nonzero word. */ + for (j = 0; j < NWORDS; j++) + if (ored_words[j] != 0) + break; + if (j < NWORDS) + { + size_t i; + for (i = j + 1; i < NWORDS; i++) + if (ored_words[i] != 0) + { + fprintf (fp, "unknown"); + return (fclose (fp) != 0); + } + for (i = 0; ; i++) + if ((ored_words[j] >> i) & 1) + { + fprintf (fp, "word %d bit %d", (int) j, (int) i); + return (fclose (fp) != 0); + } + } + fprintf (fp, "unknown"); + return (fclose (fp) != 0); +} +_ACEOF +if ac_fn_c_try_run "$LINENO" +then : + gl_cv_cc_double_expbit0=`cat conftest.out` +else case e in #( + e) gl_cv_cc_double_expbit0="unknown" ;; +esac +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac +fi + rm -f conftest.out + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_double_expbit0" >&5 +printf "%s\n" "$gl_cv_cc_double_expbit0" >&6; } + case "$gl_cv_cc_double_expbit0" in + word*bit*) + word=`echo "$gl_cv_cc_double_expbit0" | sed -e 's/word //' -e 's/ bit.*//'` + bit=`echo "$gl_cv_cc_double_expbit0" | sed -e 's/word.*bit //'` +printf "%s\n" "#define DBL_EXPBIT0_WORD $word" >>confdefs.h -ac_fn_check_decl "$LINENO" "snprintf" "ac_cv_have_decl_snprintf" "$ac_includes_default" "$ac_c_undeclared_builtin_options" "CFLAGS" -if test "x$ac_cv_have_decl_snprintf" = xyes -then : - ac_have_decl=1 -else $as_nop - ac_have_decl=0 -fi -printf "%s\n" "#define HAVE_DECL_SNPRINTF $ac_have_decl" >>confdefs.h +printf "%s\n" "#define DBL_EXPBIT0_BIT $bit" >>confdefs.h + ;; + esac @@ -25218,8 +27735,8 @@ printf %s "checking whether declares ioctl... " >&6; } if test ${gl_cv_decl_ioctl_in_sys_ioctl_h+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int @@ -25233,11 +27750,13 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_decl_ioctl_in_sys_ioctl_h=yes -else $as_nop - gl_cv_decl_ioctl_in_sys_ioctl_h=no +else case e in #( + e) gl_cv_decl_ioctl_in_sys_ioctl_h=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_decl_ioctl_in_sys_ioctl_h" >&5 printf "%s\n" "$gl_cv_decl_ioctl_in_sys_ioctl_h" >&6; } @@ -25262,8 +27781,8 @@ printf %s "checking absolute name of ... " >&6; } if test ${gl_cv_next_sys_ioctl_h+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) if test $ac_cv_header_sys_ioctl_h = yes; then @@ -25299,13 +27818,14 @@ _ACEOF gl_cv_absolute_sys_ioctl_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | sed -n "$gl_absolute_header_sed"` - gl_header=$gl_cv_absolute_sys_ioctl_h - gl_cv_next_sys_ioctl_h='"'$gl_header'"' + gl_header=$gl_cv_absolute_sys_ioctl_h + gl_cv_next_sys_ioctl_h='"'$gl_header'"' else gl_cv_next_sys_ioctl_h='<'sys/ioctl.h'>' fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_sys_ioctl_h" >&5 printf "%s\n" "$gl_cv_next_sys_ioctl_h" >&6; } @@ -25352,8 +27872,8 @@ printf %s "checking absolute name of ... " >&6; } if test ${gl_cv_next_sys_uio_h+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) if test $ac_cv_header_sys_uio_h = yes; then @@ -25389,13 +27909,14 @@ _ACEOF gl_cv_absolute_sys_uio_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | sed -n "$gl_absolute_header_sed"` - gl_header=$gl_cv_absolute_sys_uio_h - gl_cv_next_sys_uio_h='"'$gl_header'"' + gl_header=$gl_cv_absolute_sys_uio_h + gl_cv_next_sys_uio_h='"'$gl_header'"' else gl_cv_next_sys_uio_h='<'sys/uio.h'>' fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_sys_uio_h" >&5 printf "%s\n" "$gl_cv_next_sys_uio_h" >&6; } @@ -25425,417 +27946,548 @@ printf "%s\n" "$gl_cv_next_sys_uio_h" >&6; } - if false; then - GL_COND_LIBTOOL_TRUE= - GL_COND_LIBTOOL_FALSE='#' -else - GL_COND_LIBTOOL_TRUE='#' - GL_COND_LIBTOOL_FALSE= -fi - - gl_cond_libtool=false - gl_libdeps= - gl_ltlibdeps= - gl_m4_base='m4' - - - - - - - - - - - - - gl_source_base='lib' - - - if test $ac_cv_func_alloca_works = no; then - : - fi - - # Define an additional variable used in the Makefile substitution. - if test $ac_cv_working_alloca_h = yes; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for alloca as a compiler built-in" >&5 -printf %s "checking for alloca as a compiler built-in... " >&6; } -if test ${gl_cv_rpl_alloca+y} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for inttypes.h" >&5 +printf %s "checking for inttypes.h... " >&6; } +if test ${gl_cv_header_inttypes_h+y} then : printf %s "(cached) " >&6 -else $as_nop - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#if defined __GNUC__ || defined _AIX || defined _MSC_VER - Need own alloca -#endif +#include +#include +int +main (void) +{ +uintmax_t i = (uintmax_t) -1; return !i; + ; + return 0; +} _ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "Need own alloca" >/dev/null 2>&1 +if ac_fn_c_try_compile "$LINENO" then : - gl_cv_rpl_alloca=yes -else $as_nop - gl_cv_rpl_alloca=no -fi -rm -rf conftest* - - + gl_cv_header_inttypes_h=yes +else case e in #( + e) gl_cv_header_inttypes_h=no ;; +esac fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_rpl_alloca" >&5 -printf "%s\n" "$gl_cv_rpl_alloca" >&6; } - if test $gl_cv_rpl_alloca = yes; then - -printf "%s\n" "#define HAVE_ALLOCA 1" >>confdefs.h - - ALLOCA_H=alloca.h - else - ALLOCA_H= - fi - else - ALLOCA_H=alloca.h - fi - - if test -n "$ALLOCA_H"; then - GL_GENERATE_ALLOCA_H_TRUE= - GL_GENERATE_ALLOCA_H_FALSE='#' -else - GL_GENERATE_ALLOCA_H_TRUE='#' - GL_GENERATE_ALLOCA_H_FALSE= +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_inttypes_h" >&5 +printf "%s\n" "$gl_cv_header_inttypes_h" >&6; } + if test $gl_cv_header_inttypes_h = yes; then +printf "%s\n" "#define HAVE_INTTYPES_H_WITH_UINTMAX 1" >>confdefs.h - if test $ac_cv_working_alloca_h = yes; then - HAVE_ALLOCA_H=1 - else - HAVE_ALLOCA_H=0 fi - - - - - - - if test $ac_cv_func_btowc = no; then - HAVE_BTOWC=0 - else - - - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether btowc(0) is correct" >&5 -printf %s "checking whether btowc(0) is correct... " >&6; } -if test ${gl_cv_func_btowc_nul+y} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for stdint.h" >&5 +printf %s "checking for stdint.h... " >&6; } +if test ${gl_cv_header_stdint_h+y} then : printf %s "(cached) " >&6 -else $as_nop - - if test "$cross_compiling" = yes -then : - - case "$host_os" in - # Guess no on Cygwin. - cygwin*) gl_cv_func_btowc_nul="guessing no" ;; - # Guess yes on native Windows. - mingw*) gl_cv_func_btowc_nul="guessing yes" ;; - # Guess yes otherwise. - *) gl_cv_func_btowc_nul="guessing yes" ;; - esac - -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ - -#include -int main () +#include + #include +int +main (void) { - if (btowc ('\0') != 0) - return 1; +uintmax_t i = (uintmax_t) -1; return !i; + ; return 0; } _ACEOF -if ac_fn_c_try_run "$LINENO" +if ac_fn_c_try_compile "$LINENO" then : - gl_cv_func_btowc_nul=yes -else $as_nop - gl_cv_func_btowc_nul=no + gl_cv_header_stdint_h=yes +else case e in #( + e) gl_cv_header_stdint_h=no ;; +esac fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_stdint_h" >&5 +printf "%s\n" "$gl_cv_header_stdint_h" >&6; } + if test $gl_cv_header_stdint_h = yes; then +printf "%s\n" "#define HAVE_STDINT_H_WITH_UINTMAX 1" >>confdefs.h -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_btowc_nul" >&5 -printf "%s\n" "$gl_cv_func_btowc_nul" >&6; } + fi - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether btowc(EOF) is correct" >&5 -printf %s "checking whether btowc(EOF) is correct... " >&6; } -if test ${gl_cv_func_btowc_eof+y} -then : - printf %s "(cached) " >&6 -else $as_nop - case "$host_os" in - # Guess no on IRIX. - irix*) gl_cv_func_btowc_eof="guessing no" ;; - # Guess yes on native Windows. - mingw*) gl_cv_func_btowc_eof="guessing yes" ;; - # Guess yes otherwise. - *) gl_cv_func_btowc_eof="guessing yes" ;; - esac - if test $LOCALE_FR != none; then - if test "$cross_compiling" = yes + + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for intmax_t" >&5 +printf %s "checking for intmax_t... " >&6; } +if test ${gt_cv_c_intmax_t+y} then : - : -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + printf %s "(cached) " >&6 +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include -#include -#include -int main () +#include +#include +#if HAVE_STDINT_H_WITH_UINTMAX +#include +#endif +#if HAVE_INTTYPES_H_WITH_UINTMAX +#include +#endif + +int +main (void) { - if (setlocale (LC_ALL, "$LOCALE_FR") != NULL) - { - if (btowc (EOF) != WEOF) - return 1; - } +intmax_t x = -1; return !x; + ; return 0; } _ACEOF -if ac_fn_c_try_run "$LINENO" +if ac_fn_c_try_compile "$LINENO" then : - gl_cv_func_btowc_eof=yes -else $as_nop - gl_cv_func_btowc_eof=no + gt_cv_c_intmax_t=yes +else case e in #( + e) gt_cv_c_intmax_t=no ;; +esac fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_c_intmax_t" >&5 +printf "%s\n" "$gt_cv_c_intmax_t" >&6; } + if test $gt_cv_c_intmax_t = yes; then - fi +printf "%s\n" "#define HAVE_INTMAX_T 1" >>confdefs.h -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_btowc_eof" >&5 -printf "%s\n" "$gl_cv_func_btowc_eof" >&6; } + else - case "$gl_cv_func_btowc_nul" in - *yes) ;; - *) REPLACE_BTOWC=1 ;; - esac - case "$gl_cv_func_btowc_eof" in - *yes) ;; - *) REPLACE_BTOWC=1 ;; - esac - fi +printf "%s\n" "#define intmax_t long long" >>confdefs.h - if test $HAVE_BTOWC = 0 || test $REPLACE_BTOWC = 1; then + fi + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether snprintf truncates the result as in C99" >&5 +printf %s "checking whether snprintf truncates the result as in C99... " >&6; } +if test ${gl_cv_func_snprintf_truncation_c99+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + if test "$cross_compiling" = yes +then : + + case "$host_os" in + # Guess yes on glibc systems. + *-gnu* | gnu*) gl_cv_func_snprintf_truncation_c99="guessing yes";; + # Guess yes on musl systems. + *-musl* | midipix*) gl_cv_func_snprintf_truncation_c99="guessing yes";; + # Guess yes on FreeBSD >= 5. + freebsd[1-4].*) gl_cv_func_snprintf_truncation_c99="guessing no";; + freebsd* | kfreebsd*) gl_cv_func_snprintf_truncation_c99="guessing yes";; + midnightbsd*) gl_cv_func_snprintf_truncation_c99="guessing yes";; + # Guess yes on Mac OS X >= 10.3. + darwin[1-6].*) gl_cv_func_snprintf_truncation_c99="guessing no";; + darwin*) gl_cv_func_snprintf_truncation_c99="guessing yes";; + # Guess yes on OpenBSD >= 3.9. + openbsd[1-2].* | openbsd3.[0-8] | openbsd3.[0-8].*) + gl_cv_func_snprintf_truncation_c99="guessing no";; + openbsd*) gl_cv_func_snprintf_truncation_c99="guessing yes";; + # Guess yes on Solaris >= 2.6. + solaris2.[0-5] | solaris2.[0-5].*) + gl_cv_func_snprintf_truncation_c99="guessing no";; + solaris*) gl_cv_func_snprintf_truncation_c99="guessing yes";; + # Guess yes on AIX >= 4. + aix[1-3]*) gl_cv_func_snprintf_truncation_c99="guessing no";; + aix*) gl_cv_func_snprintf_truncation_c99="guessing yes";; + # Guess yes on HP-UX >= 11. + hpux[7-9]* | hpux10*) gl_cv_func_snprintf_truncation_c99="guessing no";; + hpux*) gl_cv_func_snprintf_truncation_c99="guessing yes";; + # Guess yes on IRIX >= 6.5. + irix6.5) gl_cv_func_snprintf_truncation_c99="guessing yes";; + # Guess yes on OSF/1 >= 5. + osf[3-4]*) gl_cv_func_snprintf_truncation_c99="guessing no";; + osf*) gl_cv_func_snprintf_truncation_c99="guessing yes";; + # Guess yes on NetBSD >= 3. + netbsd[1-2]* | netbsdelf[1-2]* | netbsdaout[1-2]* | netbsdcoff[1-2]*) + gl_cv_func_snprintf_truncation_c99="guessing no";; + netbsd*) gl_cv_func_snprintf_truncation_c99="guessing yes";; + # Guess yes on BeOS. + beos*) gl_cv_func_snprintf_truncation_c99="guessing yes";; + # Guess yes on Android. + linux*-android*) gl_cv_func_snprintf_truncation_c99="guessing yes";; + # Guess no on native Windows. + mingw*) gl_cv_func_snprintf_truncation_c99="guessing no";; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_snprintf_truncation_c99="$gl_cross_guess_normal";; + esac + +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +#if HAVE_SNPRINTF +# define my_snprintf snprintf +#else +# include +static int my_snprintf (char *buf, int size, const char *format, ...) +{ + va_list args; + int ret; + va_start (args, format); + ret = vsnprintf (buf, size, format, args); + va_end (args); + return ret; +} +#endif +static char buf[100]; +int main () +{ + strcpy (buf, "ABCDEF"); + my_snprintf (buf, 3, "%d %d", 4567, 89); + if (memcmp (buf, "45\0DEF", 6) != 0) + return 1; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO" +then : + gl_cv_func_snprintf_truncation_c99=yes +else case e in #( + e) gl_cv_func_snprintf_truncation_c99=no ;; +esac +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac +fi + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_snprintf_truncation_c99" >&5 +printf "%s\n" "$gl_cv_func_snprintf_truncation_c99" >&6; } - gl_LIBOBJS="$gl_LIBOBJS btowc.$ac_objext" - : - fi + ac_fn_c_check_func "$LINENO" "wcslen" "ac_cv_func_wcslen" +if test "x$ac_cv_func_wcslen" = xyes +then : + printf "%s\n" "#define HAVE_WCSLEN 1" >>confdefs.h +fi + ac_fn_c_check_func "$LINENO" "snprintf" "ac_cv_func_snprintf" +if test "x$ac_cv_func_snprintf" = xyes +then : + printf "%s\n" "#define HAVE_SNPRINTF 1" >>confdefs.h +fi +ac_fn_c_check_func "$LINENO" "strnlen" "ac_cv_func_strnlen" +if test "x$ac_cv_func_strnlen" = xyes +then : + printf "%s\n" "#define HAVE_STRNLEN 1" >>confdefs.h +fi +ac_fn_c_check_func "$LINENO" "wcrtomb" "ac_cv_func_wcrtomb" +if test "x$ac_cv_func_wcrtomb" = xyes +then : + printf "%s\n" "#define HAVE_WCRTOMB 1" >>confdefs.h +fi - GL_GNULIB_BTOWC=1 + ac_fn_check_decl "$LINENO" "_snprintf" "ac_cv_have_decl__snprintf" "#include +" "$ac_c_undeclared_builtin_options" "CFLAGS" +if test "x$ac_cv_have_decl__snprintf" = xyes +then : + ac_have_decl=1 +else case e in #( + e) ac_have_decl=0 ;; +esac +fi +printf "%s\n" "#define HAVE_DECL__SNPRINTF $ac_have_decl" >>confdefs.h + case "$gl_cv_func_snprintf_retval_c99" in + *yes) +printf "%s\n" "#define HAVE_SNPRINTF_RETVAL_C99 1" >>confdefs.h + ;; + esac -printf "%s\n" "#define GNULIB_TEST_BTOWC 1" >>confdefs.h + case "$gl_cv_func_snprintf_truncation_c99" in + *yes) +printf "%s\n" "#define HAVE_SNPRINTF_TRUNCATION_C99 1" >>confdefs.h + ;; + esac - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for __builtin_expect" >&5 -printf %s "checking for __builtin_expect... " >&6; } -if test ${gl_cv___builtin_expect+y} -then : - printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - int - main (int argc, char **argv) - { - argc = __builtin_expect (argc, 100); - return argv[argc != 100][0]; - } -_ACEOF -if ac_fn_c_try_link "$LINENO" -then : - gl_cv___builtin_expect=yes -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - #include - int - main (int argc, char **argv) - { - argc = __builtin_expect (argc, 100); - return argv[argc != 100][0]; - } -_ACEOF -if ac_fn_c_try_link "$LINENO" -then : - gl_cv___builtin_expect="in " -else $as_nop - gl_cv___builtin_expect=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam \ - conftest$ac_exeext conftest.$ac_ext -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam \ - conftest$ac_exeext conftest.$ac_ext + + GL_CFLAG_GNULIB_WARNINGS='' + if test -n "$GL_CFLAG_ALLOW_WARNINGS"; then + cat > conftest.c <<\EOF + #if __GNUC__ >= 3 || (__clang_major__ + (__clang_minor__ >= 9) > 3) + -Wno-cast-qual + -Wno-conversion + -Wno-float-equal + -Wno-sign-compare + -Wno-undef + -Wno-unused-function + -Wno-unused-parameter + #endif + #if __GNUC__ + (__GNUC_MINOR__ >= 9) > 4 || (__clang_major__ + (__clang_minor__ >= 9) > 3) + -Wno-float-conversion + #endif + #if __GNUC__ >= 7 || (__clang_major__ + (__clang_minor__ >= 9) > 3) + -Wimplicit-fallthrough + #endif + #if __GNUC__ >= 4 && __GNUC__ < 11 && !defined __clang__ + -Wno-missing-field-initializers + #endif + #if __GNUC__ + (__GNUC_MINOR__ >= 8) > 4 || (__clang_major__ + (__clang_minor__ >= 9) > 3) + -Wno-pedantic + #endif + #if __GNUC__ + (__GNUC_MINOR__ >= 3) > 4 || (__clang_major__ + (__clang_minor__ >= 9) > 3) + -Wno-sign-conversion + -Wno-type-limits + #endif + #if __GNUC__ + (__GNUC_MINOR__ >= 5) > 4 + -Wno-unsuffixed-float-constants + #endif +EOF + gl_command="$CC $CFLAGS $CPPFLAGS -E conftest.c > conftest.out" + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$gl_command\""; } >&5 + (eval $gl_command) 2>&5 + ac_status=$? + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + gl_options=`grep -v '#' conftest.out` + for word in $gl_options; do + GL_CFLAG_GNULIB_WARNINGS="$GL_CFLAG_GNULIB_WARNINGS $word" + done + fi + rm -f conftest.c conftest.out + fi + + + + + if false; then + GL_COND_LIBTOOL_TRUE= + GL_COND_LIBTOOL_FALSE='#' +else + GL_COND_LIBTOOL_TRUE='#' + GL_COND_LIBTOOL_FALSE= fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv___builtin_expect" >&5 -printf "%s\n" "$gl_cv___builtin_expect" >&6; } - if test "$gl_cv___builtin_expect" = yes; then - printf "%s\n" "#define HAVE___BUILTIN_EXPECT 1" >>confdefs.h - elif test "$gl_cv___builtin_expect" = "in "; then - printf "%s\n" "#define HAVE___BUILTIN_EXPECT 2" >>confdefs.h + gl_cond_libtool=false + gl_libdeps= + gl_ltlibdeps= + gl_m4_base='m4' - fi - if test "$with_libsigsegv" = yes; then - if test "$gl_cv_lib_sigsegv" = yes; then - LIBCSTACK=$LIBSIGSEGV - LTLIBCSTACK=$LTLIBSIGSEGV - fi - fi - if test $REPLACE_CALLOC = 0; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether calloc (0, n) and calloc (n, 0) return nonnull" >&5 -printf %s "checking whether calloc (0, n) and calloc (n, 0) return nonnull... " >&6; } -if test ${ac_cv_func_calloc_0_nonnull+y} + + gl_source_base='lib' + gl_source_base_prefix= + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for alignas and alignof" >&5 +printf %s "checking for alignas and alignof... " >&6; } +if test ${gl_cv_header_working_stdalign_h+y} then : printf %s "(cached) " >&6 -else $as_nop - if test $cross_compiling != yes; then - ac_cv_func_calloc_0_nonnull=yes - if test "$cross_compiling" = yes -then : - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "cannot run test program while cross compiling -See \`config.log' for more details" "$LINENO" 5; } -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) gl_save_CFLAGS=$CFLAGS + for gl_working in "yes, keywords" "yes, macros"; do + case $gl_working in #( + *stdalign.h*) : + CFLAGS="$gl_save_CFLAGS -DINCLUDE_STDALIGN_H" ;; #( + *) : + ;; +esac + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -$ac_includes_default +#include + #ifdef INCLUDE_STDALIGN_H + #include + #endif + #include + + /* Test that alignof yields a result consistent with offsetof. + This catches GCC bug 52023 + . */ + #ifdef __cplusplus + template struct alignof_helper { char a; t b; }; + # define ao(type) offsetof (alignof_helper, b) + #else + # define ao(type) offsetof (struct { char a; type b; }, b) + #endif + char test_double[ao (double) % _Alignof (double) == 0 ? 1 : -1]; + char test_long[ao (long int) % _Alignof (long int) == 0 ? 1 : -1]; + char test_alignof[alignof (double) == _Alignof (double) ? 1 : -1]; + + /* Test alignas only on platforms where gnulib can help. */ + #if \ + ((defined __cplusplus && 201103 <= __cplusplus) \ + || (__TINYC__ && defined __attribute__) \ + || (defined __APPLE__ && defined __MACH__ \ + ? 4 < __GNUC__ + (1 <= __GNUC_MINOR__) \ + : __GNUC__) \ + || (__ia64 && (61200 <= __HP_cc || 61200 <= __HP_aCC)) \ + || __ICC || 0x590 <= __SUNPRO_C || 0x0600 <= __xlC__ \ + || 1300 <= _MSC_VER) + struct alignas_test { char c; char alignas (8) alignas_8; }; + char test_alignas[offsetof (struct alignas_test, alignas_8) == 8 + ? 1 : -1]; + #endif + int main (void) { -int result = 0; - char * volatile p = calloc (0, 0); - if (!p) - result |= 1; - free (p); - return result; ; return 0; } _ACEOF -if ac_fn_c_try_run "$LINENO" +if ac_fn_c_try_compile "$LINENO" then : - -else $as_nop - ac_cv_func_calloc_0_nonnull=no + gl_cv_header_working_stdalign_h=$gl_working +else case e in #( + e) gl_cv_header_working_stdalign_h=no ;; +esac fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext + + CFLAGS=$gl_save_CFLAGS + test "$gl_cv_header_working_stdalign_h" != no && break + done ;; +esac fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_working_stdalign_h" >&5 +printf "%s\n" "$gl_cv_header_working_stdalign_h" >&6; } - else - case "$host_os" in - # Guess yes on glibc systems. - *-gnu* | gnu*) ac_cv_func_calloc_0_nonnull="guessing yes" ;; - # Guess yes on musl systems. - *-musl*) ac_cv_func_calloc_0_nonnull="guessing yes" ;; - # Guess yes on native Windows. - mingw*) ac_cv_func_calloc_0_nonnull="guessing yes" ;; - # If we don't know, obey --enable-cross-guesses. - *) ac_cv_func_calloc_0_nonnull="$gl_cross_guess_normal" ;; - esac - fi + case $gl_cv_header_working_stdalign_h in #( + yes*keyword*) : -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_calloc_0_nonnull" >&5 -printf "%s\n" "$ac_cv_func_calloc_0_nonnull" >&6; } - case $ac_cv_func_calloc_0_nonnull in #( - *yes) : - ;; #( +printf "%s\n" "#define HAVE_C_ALIGNASOF 1" >>confdefs.h + ;; #( *) : - REPLACE_CALLOC=1 ;; + ;; esac - fi - if test $REPLACE_CALLOC = 1; then + if test $ac_cv_func_alloca_works = no; then + : + fi + # Define an additional variable used in the Makefile substitution. + if test $ac_cv_working_alloca_h = yes; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for alloca as a compiler built-in" >&5 +printf %s "checking for alloca as a compiler built-in... " >&6; } +if test ${gl_cv_rpl_alloca+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#if defined __GNUC__ || defined _AIX || defined _MSC_VER + Need own alloca +#endif +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP_TRADITIONAL "Need own alloca" >/dev/null 2>&1 +then : + gl_cv_rpl_alloca=yes +else case e in #( + e) gl_cv_rpl_alloca=no ;; +esac +fi +rm -rf conftest* + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_rpl_alloca" >&5 +printf "%s\n" "$gl_cv_rpl_alloca" >&6; } + if test $gl_cv_rpl_alloca = yes; then - gl_LIBOBJS="$gl_LIBOBJS calloc.$ac_objext" +printf "%s\n" "#define HAVE_ALLOCA 1" >>confdefs.h + GL_GENERATE_ALLOCA_H=true + else + GL_GENERATE_ALLOCA_H=false + fi + else + GL_GENERATE_ALLOCA_H=true fi - - - if test $REPLACE_MALLOC = 1; then - REPLACE_CALLOC=1 + if test $ac_cv_working_alloca_h = yes; then + HAVE_ALLOCA_H=1 + else + HAVE_ALLOCA_H=0 fi - if test $REPLACE_CALLOC = 1; then - - + case "$GL_GENERATE_ALLOCA_H" in + false) ALLOCA_H='' ;; + true) + if test -z "$ALLOCA_H"; then + ALLOCA_H="${gl_source_base_prefix}alloca.h" + fi + ;; + *) echo "*** GL_GENERATE_ALLOCA_H is not set correctly" 1>&2; exit 1 ;; + esac - gl_LIBOBJS="$gl_LIBOBJS calloc.$ac_objext" + if $GL_GENERATE_ALLOCA_H; then + GL_GENERATE_ALLOCA_H_TRUE= + GL_GENERATE_ALLOCA_H_FALSE='#' +else + GL_GENERATE_ALLOCA_H_TRUE='#' + GL_GENERATE_ALLOCA_H_FALSE= +fi +: + if test -z "${GL_GENERATE_ALLOCA_H_TRUE}" && test -z "${GL_GENERATE_ALLOCA_H_FALSE}"; then + GL_GENERATE_ALLOCA_H_TRUE='#' + GL_GENERATE_ALLOCA_H_FALSE='#' fi @@ -25844,150 +28496,144 @@ esac - - - GL_GNULIB_CALLOC_POSIX=1 - - - - - -printf "%s\n" "#define GNULIB_TEST_CALLOC_POSIX 1" >>confdefs.h - - - - - - - - - # Solaris 2.5.1 needs -lposix4 to get the clock_gettime function. - # Solaris 7 prefers the library name -lrt to the obsolescent name -lposix4. - - # Save and restore LIBS so e.g., -lrt, isn't added to it. Otherwise, *all* - # programs in the package would end up linked with that potentially-shared - # library, inducing unnecessary run-time overhead. - LIB_CLOCK_GETTIME= - - gl_saved_libs=$LIBS - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for library containing clock_gettime" >&5 -printf %s "checking for library containing clock_gettime... " >&6; } -if test ${ac_cv_search_clock_gettime+y} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for static_assert" >&5 +printf %s "checking for static_assert... " >&6; } +if test ${gl_cv_static_assert+y} then : printf %s "(cached) " >&6 -else $as_nop - ac_func_search_save_LIBS=$LIBS -cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) gl_save_CFLAGS=$CFLAGS + for gl_working in "yes, a keyword" "yes, an macro"; do + case $gl_working in #( + *assert.h*) : + CFLAGS="$gl_save_CFLAGS -DINCLUDE_ASSERT_H" ;; #( + *) : + ;; +esac + + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ +#if defined __clang__ && __STDC_VERSION__ < 202311 + #pragma clang diagnostic error "-Wc2x-extensions" + #pragma clang diagnostic error "-Wc++1z-extensions" + #endif + #ifdef INCLUDE_ASSERT_H + #include + #endif + static_assert (2 + 2 == 4, "arithmetic does not work"); + static_assert (2 + 2 == 4); -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -char clock_gettime (); int main (void) { -return clock_gettime (); + + static_assert (sizeof (char) == 1, "sizeof does not work"); + static_assert (sizeof (char) == 1); + ; return 0; } _ACEOF -for ac_lib in '' rt posix4 -do - if test -z "$ac_lib"; then - ac_res="none required" - else - ac_res=-l$ac_lib - LIBS="-l$ac_lib $ac_func_search_save_LIBS" - fi - if ac_fn_c_try_link "$LINENO" -then : - ac_cv_search_clock_gettime=$ac_res -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam \ - conftest$ac_exeext - if test ${ac_cv_search_clock_gettime+y} -then : - break -fi -done -if test ${ac_cv_search_clock_gettime+y} -then : - -else $as_nop - ac_cv_search_clock_gettime=no -fi -rm conftest.$ac_ext -LIBS=$ac_func_search_save_LIBS -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_clock_gettime" >&5 -printf "%s\n" "$ac_cv_search_clock_gettime" >&6; } -ac_res=$ac_cv_search_clock_gettime -if test "$ac_res" != no -then : - test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" - test "$ac_cv_search_clock_gettime" = "none required" || - LIB_CLOCK_GETTIME=$ac_cv_search_clock_gettime -fi - - ac_fn_c_check_func "$LINENO" "clock_gettime" "ac_cv_func_clock_gettime" -if test "x$ac_cv_func_clock_gettime" = xyes +if ac_fn_c_try_compile "$LINENO" then : - printf "%s\n" "#define HAVE_CLOCK_GETTIME 1" >>confdefs.h - + gl_cv_static_assert=$gl_working +else case e in #( + e) gl_cv_static_assert=no ;; +esac fi -ac_fn_c_check_func "$LINENO" "clock_settime" "ac_cv_func_clock_settime" -if test "x$ac_cv_func_clock_settime" = xyes -then : - printf "%s\n" "#define HAVE_CLOCK_SETTIME 1" >>confdefs.h - +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext + CFLAGS=$gl_save_CFLAGS + test "$gl_cv_static_assert" != no && break + done ;; +esac fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_static_assert" >&5 +printf "%s\n" "$gl_cv_static_assert" >&6; } - LIBS=$gl_saved_libs - + GL_GENERATE_ASSERT_H=false + case $gl_cv_static_assert in #( + yes*keyword*) : +printf "%s\n" "#define HAVE_C_STATIC_ASSERT 1" >>confdefs.h + ;; #( + no) : + GL_GENERATE_ASSERT_H=true -printf "%s\n" "#define GNULIB_TEST_CLOEXEC 1" >>confdefs.h - if test $HAVE_MSVC_INVALID_PARAMETER_HANDLER = 1; then - REPLACE_CLOSE=1 - fi + if test $gl_cv_have_include_next = yes; then + gl_cv_next_assert_h='<'assert.h'>' + else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 +printf %s "checking absolute name of ... " >&6; } +if test ${gl_cv_next_assert_h+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +_ACEOF + case "$host_os" in + aix*) gl_absname_cpp="$ac_cpp -C" ;; + *) gl_absname_cpp="$ac_cpp" ;; + esac + case "$host_os" in + mingw*) + gl_dirsep_regex='[/\\]' + ;; + *) + gl_dirsep_regex='\/' + ;; + esac + gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' + gl_header_literal_regex=`echo 'assert.h' \ + | sed -e "$gl_make_literal_regex_sed"` + gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ + s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ + s|^/[^/]|//&| + p + q + }' + gl_cv_absolute_assert_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | + sed -n "$gl_absolute_header_sed"` - if test $ac_cv_header_sys_socket_h != yes; then - ac_fn_c_check_header_compile "$LINENO" "winsock2.h" "ac_cv_header_winsock2_h" "$ac_includes_default" -if test "x$ac_cv_header_winsock2_h" = xyes -then : - printf "%s\n" "#define HAVE_WINSOCK2_H 1" >>confdefs.h + gl_header=$gl_cv_absolute_assert_h + gl_cv_next_assert_h='"'$gl_header'"' + ;; +esac fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_assert_h" >&5 +printf "%s\n" "$gl_cv_next_assert_h" >&6; } + fi + NEXT_ASSERT_H=$gl_cv_next_assert_h - fi - if test "$ac_cv_header_winsock2_h" = yes; then - HAVE_WINSOCK2_H=1 - UNISTD_H_HAVE_WINSOCK2_H=1 - SYS_IOCTL_H_HAVE_WINSOCK2_H=1 - else - HAVE_WINSOCK2_H=0 - fi - - - if test $UNISTD_H_HAVE_WINSOCK2_H = 1; then - REPLACE_CLOSE=1 - fi + if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' + gl_next_as_first_directive='<'assert.h'>' + else + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' + gl_next_as_first_directive=$gl_cv_next_assert_h + fi + NEXT_AS_FIRST_DIRECTIVE_ASSERT_H=$gl_next_as_first_directive - if test $REPLACE_CLOSE = 1; then + ;; #( + *) : + ;; +esac @@ -25995,9 +28641,28 @@ fi + case "$GL_GENERATE_ASSERT_H" in + false) ASSERT_H='' ;; + true) + if test -z "$ASSERT_H"; then + ASSERT_H="${gl_source_base_prefix}assert.h" + fi + ;; + *) echo "*** GL_GENERATE_ASSERT_H is not set correctly" 1>&2; exit 1 ;; + esac - gl_LIBOBJS="$gl_LIBOBJS close.$ac_objext" + if $GL_GENERATE_ASSERT_H; then + GL_GENERATE_ASSERT_H_TRUE= + GL_GENERATE_ASSERT_H_FALSE='#' +else + GL_GENERATE_ASSERT_H_TRUE='#' + GL_GENERATE_ASSERT_H_FALSE= +fi +: + if test -z "${GL_GENERATE_ASSERT_H_TRUE}" && test -z "${GL_GENERATE_ASSERT_H_FALSE}"; then + GL_GENERATE_ASSERT_H_TRUE='#' + GL_GENERATE_ASSERT_H_FALSE='#' fi @@ -26008,206 +28673,301 @@ fi - GL_GNULIB_CLOSE=1 - - -printf "%s\n" "#define GNULIB_TEST_CLOSE 1" >>confdefs.h - + if test $ac_cv_func_btowc = no; then + HAVE_BTOWC=0 + else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether btowc(0) is correct" >&5 +printf %s "checking whether btowc(0) is correct... " >&6; } +if test ${gl_cv_func_btowc_nul+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + if test "$cross_compiling" = yes +then : + case "$host_os" in + # Guess no on Cygwin. + cygwin*) gl_cv_func_btowc_nul="guessing no" ;; + # Guess yes on native Windows. + mingw*) gl_cv_func_btowc_nul="guessing yes" ;; + # Guess yes otherwise. + *) gl_cv_func_btowc_nul="guessing yes" ;; + esac +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +int main () +{ + if (btowc ('\0') != 0) + return 1; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO" +then : + gl_cv_func_btowc_nul=yes +else case e in #( + e) gl_cv_func_btowc_nul=no ;; +esac +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac +fi + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_btowc_nul" >&5 +printf "%s\n" "$gl_cv_func_btowc_nul" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether btowc(EOF) is correct" >&5 +printf %s "checking whether btowc(EOF) is correct... " >&6; } +if test ${gl_cv_func_btowc_eof+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + case "$host_os" in + # Guess no on IRIX. + irix*) gl_cv_func_btowc_eof="guessing no" ;; + # Guess yes on native Windows. + mingw*) gl_cv_func_btowc_eof="guessing yes" ;; + # Guess yes otherwise. + *) gl_cv_func_btowc_eof="guessing yes" ;; + esac + if test $LOCALE_FR != none; then + if test "$cross_compiling" = yes +then : + : +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +#include +int main () +{ + if (setlocale (LC_ALL, "$LOCALE_FR") != NULL) + { + if (btowc (EOF) != WEOF) + return 1; + } + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO" +then : + gl_cv_func_btowc_eof=yes +else case e in #( + e) gl_cv_func_btowc_eof=no ;; +esac +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac +fi -printf "%s\n" "#define GNULIB_DIRNAME 1" >>confdefs.h + fi + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_btowc_eof" >&5 +printf "%s\n" "$gl_cv_func_btowc_eof" >&6; } + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether btowc is consistent with mbrtowc in the C locale" >&5 +printf %s "checking whether btowc is consistent with mbrtowc in the C locale... " >&6; } +if test ${gl_cv_func_btowc_consistent+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + if test "$cross_compiling" = yes +then : + case "$host_os" in + # Guess no on mingw. + mingw*) cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#ifdef __MINGW32__ + Problem +#endif - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether // is distinct from /" >&5 -printf %s "checking whether // is distinct from /... " >&6; } -if test ${gl_cv_double_slash_root+y} +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP_TRADITIONAL "Problem" >/dev/null 2>&1 then : - printf %s "(cached) " >&6 -else $as_nop - if test x"$cross_compiling" = xyes ; then - # When cross-compiling, there is no way to tell whether // is special - # short of a list of hosts. However, the only known hosts to date - # that have a distinct // are Apollo DomainOS (too old to port to), - # Cygwin, and z/OS. If anyone knows of another system for which // has - # special semantics and is distinct from /, please report it to - # . - case $host in - *-cygwin | i370-ibm-openedition) - gl_cv_double_slash_root=yes ;; - *) - # Be optimistic and assume that / and // are the same when we - # don't know. - gl_cv_double_slash_root='unknown, assuming no' ;; - esac - else - set x `ls -di / // 2>/dev/null` - if test "$2" = "$4" && wc //dev/null >/dev/null 2>&1; then - gl_cv_double_slash_root=no - else - gl_cv_double_slash_root=yes - fi - fi + gl_cv_func_btowc_consistent="guessing no" +else case e in #( + e) gl_cv_func_btowc_consistent="guessing yes" ;; +esac fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_double_slash_root" >&5 -printf "%s\n" "$gl_cv_double_slash_root" >&6; } - if test "$gl_cv_double_slash_root" = yes; then +rm -rf conftest* -printf "%s\n" "#define DOUBLE_SLASH_IS_DISTINCT_ROOT 1" >>confdefs.h + ;; + # Guess yes otherwise. + *) gl_cv_func_btowc_consistent="guessing yes" ;; + esac - fi +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +#include +int main () +{ +#if HAVE_MBRTOWC + wint_t wc1 = btowc (0x80); + wchar_t wc2 = (wchar_t) 0xbadface; + char buf[1] = { 0x80 }; + mbstate_t state; + memset (&state, 0, sizeof (mbstate_t)); + if (mbrtowc (&wc2, buf, 1, &state) != 1 || wc1 != wc2) + return 1; +#endif + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO" +then : + gl_cv_func_btowc_consistent=yes +else case e in #( + e) gl_cv_func_btowc_consistent=no ;; +esac +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac +fi + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_btowc_consistent" >&5 +printf "%s\n" "$gl_cv_func_btowc_consistent" >&6; } + case "$gl_cv_func_btowc_nul" in + *yes) ;; + *) REPLACE_BTOWC=1 ;; + esac + case "$gl_cv_func_btowc_eof" in + *yes) ;; + *) REPLACE_BTOWC=1 ;; + esac + case "$gl_cv_func_btowc_consistent" in + *yes) ;; + *) REPLACE_BTOWC=1 ;; + esac + if test $REPLACE_BTOWC = 0; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether dup2 works" >&5 -printf %s "checking whether dup2 works... " >&6; } -if test ${gl_cv_func_dup2_works+y} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the C locale is free of encoding errors" >&5 +printf %s "checking whether the C locale is free of encoding errors... " >&6; } +if test ${gl_cv_func_mbrtowc_C_locale_sans_EILSEQ+y} then : printf %s "(cached) " >&6 -else $as_nop - if test "$cross_compiling" = yes +else case e in #( + e) + gl_cv_func_mbrtowc_C_locale_sans_EILSEQ="$gl_cross_guess_normal" + + if test "$cross_compiling" = yes then : case "$host_os" in - mingw*) # on this platform, dup2 always returns 0 for success - gl_cv_func_dup2_works="guessing no" ;; - cygwin*) # on cygwin 1.5.x, dup2(1,1) returns 0 - gl_cv_func_dup2_works="guessing no" ;; - aix* | freebsd*) - # on AIX 7.1 and FreeBSD 6.1, dup2 (1,toobig) gives EMFILE, - # not EBADF. - gl_cv_func_dup2_works="guessing no" ;; - haiku*) # on Haiku alpha 2, dup2(1, 1) resets FD_CLOEXEC. - gl_cv_func_dup2_works="guessing no" ;; - *-android*) # implemented using dup3(), which fails if oldfd == newfd - gl_cv_func_dup2_works="guessing no" ;; - os2*) # on OS/2 kLIBC, dup2() does not work on a directory fd. - gl_cv_func_dup2_works="guessing no" ;; - *) gl_cv_func_dup2_works="guessing yes" ;; + # Guess yes on native Windows. + mingw*) gl_cv_func_mbrtowc_C_locale_sans_EILSEQ="guessing yes" ;; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - #include - #include - #include - #include - #include - - -$gl_mda_defines - #ifndef RLIM_SAVED_CUR - # define RLIM_SAVED_CUR RLIM_INFINITY - #endif - #ifndef RLIM_SAVED_MAX - # define RLIM_SAVED_MAX RLIM_INFINITY - #endif +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + #include + #include int main (void) { -int result = 0; - int bad_fd = INT_MAX; - struct rlimit rlim; - if (getrlimit (RLIMIT_NOFILE, &rlim) == 0 - && 0 <= rlim.rlim_cur && rlim.rlim_cur <= INT_MAX - && rlim.rlim_cur != RLIM_INFINITY - && rlim.rlim_cur != RLIM_SAVED_MAX - && rlim.rlim_cur != RLIM_SAVED_CUR) - bad_fd = rlim.rlim_cur; - #ifdef FD_CLOEXEC - if (fcntl (1, F_SETFD, FD_CLOEXEC) == -1) - result |= 1; - #endif - if (dup2 (1, 1) != 1) - result |= 2; - #ifdef FD_CLOEXEC - if (fcntl (1, F_GETFD) != FD_CLOEXEC) - result |= 4; - #endif - close (0); - if (dup2 (0, 0) != -1) - result |= 8; - /* Many gnulib modules require POSIX conformance of EBADF. */ - if (dup2 (2, bad_fd) == -1 && errno != EBADF) - result |= 16; - /* Flush out some cygwin core dumps. */ - if (dup2 (2, -1) != -1 || errno != EBADF) - result |= 32; - dup2 (2, 255); - dup2 (2, 256); - /* On OS/2 kLIBC, dup2() does not work on a directory fd. */ - { - int fd = open (".", O_RDONLY); - if (fd == -1) - result |= 64; - else if (dup2 (fd, fd + 1) == -1) - result |= 128; - close (fd); - } - return result; + + int i; + char *locale = setlocale (LC_ALL, "C"); + if (! locale) + return 2; + for (i = CHAR_MIN; i <= CHAR_MAX; i++) + { + char c = i; + wchar_t wc; + mbstate_t mbs = { 0, }; + size_t ss = mbrtowc (&wc, &c, 1, &mbs); + if (1 < ss) + return 3; + } + return 0; + ; return 0; } - _ACEOF if ac_fn_c_try_run "$LINENO" then : - gl_cv_func_dup2_works=yes -else $as_nop - gl_cv_func_dup2_works=no + gl_cv_func_mbrtowc_C_locale_sans_EILSEQ=yes +else case e in #( + e) gl_cv_func_mbrtowc_C_locale_sans_EILSEQ=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_dup2_works" >&5 -printf "%s\n" "$gl_cv_func_dup2_works" >&6; } - case "$gl_cv_func_dup2_works" in - *yes) ;; - *) - REPLACE_DUP2=1 - ac_fn_c_check_func "$LINENO" "setdtablesize" "ac_cv_func_setdtablesize" -if test "x$ac_cv_func_setdtablesize" = xyes -then : - printf "%s\n" "#define HAVE_SETDTABLESIZE 1" >>confdefs.h + ;; +esac fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_C_locale_sans_EILSEQ" >&5 +printf "%s\n" "$gl_cv_func_mbrtowc_C_locale_sans_EILSEQ" >&6; } - ;; - esac - - - if test $REPLACE_DUP2 = 1; then - - + case "$gl_cv_func_mbrtowc_C_locale_sans_EILSEQ" in + *yes) ;; + *) REPLACE_BTOWC=1 ;; + esac + fi + fi + if test $HAVE_BTOWC = 0 || test $REPLACE_BTOWC = 1; then + GL_COND_OBJ_BTOWC_TRUE= + GL_COND_OBJ_BTOWC_FALSE='#' +else + GL_COND_OBJ_BTOWC_TRUE='#' + GL_COND_OBJ_BTOWC_FALSE= +fi +: + if test -z "${GL_COND_OBJ_BTOWC_TRUE}" && test -z "${GL_COND_OBJ_BTOWC_FALSE}"; then + GL_COND_OBJ_BTOWC_TRUE='#' + GL_COND_OBJ_BTOWC_FALSE='#' + fi + if test -z "$GL_COND_OBJ_BTOWC_TRUE"; then : + : - gl_LIBOBJS="$gl_LIBOBJS dup2.$ac_objext" - fi +fi @@ -26217,319 +28977,446 @@ fi - GL_GNULIB_DUP2=1 -printf "%s\n" "#define GNULIB_TEST_DUP2 1" >>confdefs.h + GL_GNULIB_BTOWC=1 +printf "%s\n" "#define GNULIB_TEST_BTOWC 1" >>confdefs.h + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for __builtin_expect" >&5 +printf %s "checking for __builtin_expect... " >&6; } +if test ${gl_cv___builtin_expect+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + int + main (int argc, char **argv) + { + argc = __builtin_expect (argc, 100); + return argv[argc != 100][0]; + } +_ACEOF +if ac_fn_c_try_link "$LINENO" +then : + gl_cv___builtin_expect=yes +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + #include + int + main (int argc, char **argv) + { + argc = __builtin_expect (argc, 100); + return argv[argc != 100][0]; + } +_ACEOF +if ac_fn_c_try_link "$LINENO" +then : + gl_cv___builtin_expect="in " +else case e in #( + e) gl_cv___builtin_expect=no ;; +esac +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam \ + conftest$ac_exeext conftest.$ac_ext ;; +esac +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam \ + conftest$ac_exeext conftest.$ac_ext ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv___builtin_expect" >&5 +printf "%s\n" "$gl_cv___builtin_expect" >&6; } + if test "$gl_cv___builtin_expect" = yes; then + printf "%s\n" "#define HAVE___BUILTIN_EXPECT 1" >>confdefs.h + elif test "$gl_cv___builtin_expect" = "in "; then + printf "%s\n" "#define HAVE___BUILTIN_EXPECT 2" >>confdefs.h + fi - GL_GNULIB_ENVIRON=1 + if test $gl_sigsegv_uses_libsigsegv = yes; then + LIBCSTACK=$LIBSIGSEGV + LTLIBCSTACK=$LTLIBSIGSEGV -printf "%s\n" "#define GNULIB_TEST_ENVIRON 1" >>confdefs.h + fi + REPLACE_CALLOC_FOR_CALLOC_GNU="$REPLACE_CALLOC_FOR_CALLOC_POSIX" + if test $REPLACE_CALLOC_FOR_CALLOC_GNU = 0; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for error_at_line" >&5 -printf %s "checking for error_at_line... " >&6; } -if test ${ac_cv_lib_error_at_line+y} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether calloc (0, n) and calloc (n, 0) return nonnull" >&5 +printf %s "checking whether calloc (0, n) and calloc (n, 0) return nonnull... " >&6; } +if test ${ac_cv_func_calloc_0_nonnull+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) if test $cross_compiling != yes; then + ac_cv_func_calloc_0_nonnull=yes + if test "$cross_compiling" = yes +then : + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 +printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} +as_fn_error $? "cannot run test program while cross compiling +See 'config.log' for more details" "$LINENO" 5; } +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include +$ac_includes_default int main (void) { -error_at_line (0, 0, "", 0, "an error occurred"); +int result = 0; + char * volatile p = calloc (0, 0); + if (!p) + result |= 1; + free (p); + return result; + ; return 0; } _ACEOF -if ac_fn_c_try_link "$LINENO" +if ac_fn_c_try_run "$LINENO" then : - ac_cv_lib_error_at_line=yes -else $as_nop - ac_cv_lib_error_at_line=no + +else case e in #( + e) ac_cv_func_calloc_0_nonnull=no ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam \ - conftest$ac_exeext conftest.$ac_ext +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_error_at_line" >&5 -printf "%s\n" "$ac_cv_lib_error_at_line" >&6; } - - if test $ac_cv_lib_error_at_line = no; then + else + case "$host_os" in + # Guess yes on glibc systems. + *-gnu* | gnu*) ac_cv_func_calloc_0_nonnull="guessing yes" ;; + # Guess yes on musl systems. + *-musl* | midipix*) ac_cv_func_calloc_0_nonnull="guessing yes" ;; + # Guess yes on native Windows. + mingw*) ac_cv_func_calloc_0_nonnull="guessing yes" ;; + # If we don't know, obey --enable-cross-guesses. + *) ac_cv_func_calloc_0_nonnull="$gl_cross_guess_normal" ;; + esac + fi + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_calloc_0_nonnull" >&5 +printf "%s\n" "$ac_cv_func_calloc_0_nonnull" >&6; } + case $ac_cv_func_calloc_0_nonnull in #( + *yes) : + ;; #( + *) : + REPLACE_CALLOC_FOR_CALLOC_GNU=1 ;; +esac + fi + if test $REPLACE_CALLOC_FOR_CALLOC_GNU = 1; then - gl_LIBOBJS="$gl_LIBOBJS error.$ac_objext" - : + gl_LIBOBJS="$gl_LIBOBJS calloc.$ac_objext" fi - XGETTEXT_EXTRA_OPTIONS="$XGETTEXT_EXTRA_OPTIONS --flag=error:3:c-format" - XGETTEXT_EXTRA_OPTIONS="$XGETTEXT_EXTRA_OPTIONS --flag=error_at_line:5:c-format" + GL_GNULIB_CALLOC_GNU=1 - if test $ac_cv_func_fcntl = no; then +printf "%s\n" "#define GNULIB_TEST_CALLOC_GNU 1" >>confdefs.h - if test $ac_cv_func_fcntl = no; then - HAVE_FCNTL=0 - else - REPLACE_FCNTL=1 + + + + + + if test $REPLACE_MALLOC_FOR_MALLOC_POSIX = 1; then + REPLACE_CALLOC_FOR_CALLOC_POSIX=1 fi - else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether fcntl handles F_DUPFD correctly" >&5 -printf %s "checking whether fcntl handles F_DUPFD correctly... " >&6; } -if test ${gl_cv_func_fcntl_f_dupfd_works+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test "$cross_compiling" = yes -then : - case $host_os in - aix* | cygwin* | haiku*) - gl_cv_func_fcntl_f_dupfd_works="guessing no" ;; - *) gl_cv_func_fcntl_f_dupfd_works="guessing yes" ;; - esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #include - #include - #include - #include + if test $REPLACE_CALLOC_FOR_CALLOC_POSIX = 1; then -$gl_mda_defines - #ifndef RLIM_SAVED_CUR - # define RLIM_SAVED_CUR RLIM_INFINITY - #endif - #ifndef RLIM_SAVED_MAX - # define RLIM_SAVED_MAX RLIM_INFINITY - #endif -int -main (void) -{ -int result = 0; - int bad_fd = INT_MAX; - struct rlimit rlim; - if (getrlimit (RLIMIT_NOFILE, &rlim) == 0 - && 0 <= rlim.rlim_cur && rlim.rlim_cur <= INT_MAX - && rlim.rlim_cur != RLIM_INFINITY - && rlim.rlim_cur != RLIM_SAVED_MAX - && rlim.rlim_cur != RLIM_SAVED_CUR) - bad_fd = rlim.rlim_cur; - if (fcntl (0, F_DUPFD, -1) != -1) result |= 1; - if (errno != EINVAL) result |= 2; - if (fcntl (0, F_DUPFD, bad_fd) != -1) result |= 4; - if (errno != EINVAL) result |= 8; - /* On OS/2 kLIBC, F_DUPFD does not work on a directory fd */ - { - int fd; - fd = open (".", O_RDONLY); - if (fd == -1) - result |= 16; - else if (fcntl (fd, F_DUPFD, STDERR_FILENO + 1) == -1) - result |= 32; - close (fd); - } - return result; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO" -then : - gl_cv_func_fcntl_f_dupfd_works=yes -else $as_nop - gl_cv_func_fcntl_f_dupfd_works=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_fcntl_f_dupfd_works" >&5 -printf "%s\n" "$gl_cv_func_fcntl_f_dupfd_works" >&6; } - case $gl_cv_func_fcntl_f_dupfd_works in - *yes) ;; - *) - if test $ac_cv_func_fcntl = no; then - HAVE_FCNTL=0 - else - REPLACE_FCNTL=1 + gl_LIBOBJS="$gl_LIBOBJS calloc.$ac_objext" + fi -printf "%s\n" "#define FCNTL_DUPFD_BUGGY 1" >>confdefs.h - ;; - esac - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether fcntl understands F_DUPFD_CLOEXEC" >&5 -printf %s "checking whether fcntl understands F_DUPFD_CLOEXEC... " >&6; } -if test ${gl_cv_func_fcntl_f_dupfd_cloexec+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test "$cross_compiling" = yes -then : - case "$host_os" in - # Guess no on NetBSD. - netbsd*) gl_cv_func_fcntl_f_dupfd_cloexec="guessing no" ;; - *) gl_cv_func_fcntl_f_dupfd_cloexec="$gl_cross_guess_normal" ;; - esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #include - int main (int argc, char *argv[]) - { - if (argc == 1) - /* parent process */ - { - if (fcntl (1, F_DUPFD_CLOEXEC, 10) < 0) - return 1; - return execl ("./conftest", "./conftest", "child", NULL); - } - else - /* child process */ - return (fcntl (10, F_GETFL) < 0 ? 0 : 42); - } -_ACEOF -if ac_fn_c_try_run "$LINENO" + + + + GL_GNULIB_CALLOC_POSIX=1 + + + + + +printf "%s\n" "#define GNULIB_TEST_CALLOC_POSIX 1" >>confdefs.h + + + + + + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for readlinkat" >&5 +printf %s "checking for readlinkat... " >&6; } +if test ${gl_cv_onwards_func_readlinkat+y} then : - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + printf %s "(cached) " >&6 +else case e in #( + e) + exec 9>&6 6>/dev/null + + case "$host_os" in + + linux*-android*) + ac_fn_check_decl "$LINENO" "readlinkat" "ac_cv_have_decl_readlinkat" "#include +" "$ac_c_undeclared_builtin_options" "CFLAGS" +if test "x$ac_cv_have_decl_readlinkat" = xyes +then : + +fi + if test $ac_cv_have_decl_readlinkat = yes; then + ac_fn_c_check_func "$LINENO" "readlinkat" "ac_cv_func_readlinkat" +if test "x$ac_cv_func_readlinkat" = xyes +then : + +fi + + if test $ac_cv_func_readlinkat = yes; then + gl_cv_onwards_func_readlinkat=yes + else + gl_cv_onwards_func_readlinkat='future OS version' + fi + else + gl_cv_onwards_func_readlinkat='future OS version' + fi + ;; + + + *) + ac_fn_c_check_func "$LINENO" "readlinkat" "ac_cv_func_readlinkat" +if test "x$ac_cv_func_readlinkat" = xyes +then : + +fi + + gl_cv_onwards_func_readlinkat=$ac_cv_func_readlinkat + ;; + + esac + + exec 6>&9 9>&- + + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_onwards_func_readlinkat" >&5 +printf "%s\n" "$gl_cv_onwards_func_readlinkat" >&6; } + + case "$gl_cv_onwards_func_readlinkat" in + future*) ac_cv_func_readlinkat=no ;; + *) ac_cv_func_readlinkat=$gl_cv_onwards_func_readlinkat ;; + esac + if test $ac_cv_func_readlinkat = yes; then + +printf "%s\n" "#define HAVE_READLINKAT 1" >>confdefs.h + + fi + + + + + + # Solaris 2.5.1 needs -lposix4 to get the clock_gettime function. + # Solaris 7 prefers the library name -lrt to the obsolescent name -lposix4. + + # Save and restore LIBS so e.g., -lrt, isn't added to it. Otherwise, *all* + # programs in the package would end up linked with that potentially-shared + # library, inducing unnecessary run-time overhead. + CLOCK_TIME_LIB= + + gl_saved_libs=$LIBS + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for library containing clock_gettime" >&5 +printf %s "checking for library containing clock_gettime... " >&6; } +if test ${ac_cv_search_clock_gettime+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) ac_func_search_save_LIBS=$LIBS +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#ifdef __linux__ -/* The Linux kernel only added F_DUPFD_CLOEXEC in 2.6.24, so we always replace - it to support the semantics on older kernels that failed with EINVAL. */ -choke me +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. + The 'extern "C"' is for builds by C++ compilers; + although this is not generally supported in C code supporting it here + has little cost and some practical benefit (sr 110532). */ +#ifdef __cplusplus +extern "C" #endif - +char clock_gettime (void); int main (void) { - +return clock_gettime (); ; return 0; } _ACEOF -if ac_fn_c_try_compile "$LINENO" +for ac_lib in '' rt posix4 +do + if test -z "$ac_lib"; then + ac_res="none required" + else + ac_res=-l$ac_lib + LIBS="-l$ac_lib $ac_func_search_save_LIBS" + fi + if ac_fn_c_try_link "$LINENO" then : - gl_cv_func_fcntl_f_dupfd_cloexec=yes -else $as_nop - gl_cv_func_fcntl_f_dupfd_cloexec="needs runtime check" + ac_cv_search_clock_gettime=$ac_res fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam \ + conftest$ac_exeext + if test ${ac_cv_search_clock_gettime+y} +then : + break +fi +done +if test ${ac_cv_search_clock_gettime+y} +then : -else $as_nop - gl_cv_func_fcntl_f_dupfd_cloexec=no +else case e in #( + e) ac_cv_search_clock_gettime=no ;; +esac fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext +rm conftest.$ac_ext +LIBS=$ac_func_search_save_LIBS ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_clock_gettime" >&5 +printf "%s\n" "$ac_cv_search_clock_gettime" >&6; } +ac_res=$ac_cv_search_clock_gettime +if test "$ac_res" != no +then : + test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" + test "$ac_cv_search_clock_gettime" = "none required" || + CLOCK_TIME_LIB=$ac_cv_search_clock_gettime fi + ac_fn_c_check_func "$LINENO" "clock_getres" "ac_cv_func_clock_getres" +if test "x$ac_cv_func_clock_getres" = xyes +then : + printf "%s\n" "#define HAVE_CLOCK_GETRES 1" >>confdefs.h fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_fcntl_f_dupfd_cloexec" >&5 -printf "%s\n" "$gl_cv_func_fcntl_f_dupfd_cloexec" >&6; } - case "$gl_cv_func_fcntl_f_dupfd_cloexec" in - *yes) ;; - *) +ac_fn_c_check_func "$LINENO" "clock_gettime" "ac_cv_func_clock_gettime" +if test "x$ac_cv_func_clock_gettime" = xyes +then : + printf "%s\n" "#define HAVE_CLOCK_GETTIME 1" >>confdefs.h + +fi +ac_fn_c_check_func "$LINENO" "clock_settime" "ac_cv_func_clock_settime" +if test "x$ac_cv_func_clock_settime" = xyes +then : + printf "%s\n" "#define HAVE_CLOCK_SETTIME 1" >>confdefs.h +fi - if test $ac_cv_func_fcntl = no; then - HAVE_FCNTL=0 - else - REPLACE_FCNTL=1 - fi + LIBS=$gl_saved_libs + # For backward compatibility. + LIB_CLOCK_GETTIME="$CLOCK_TIME_LIB" - ;; - esac - fi - if test $HAVE_FCNTL = 0 || test $REPLACE_FCNTL = 1; then +printf "%s\n" "#define GNULIB_TEST_CLOEXEC 1" >>confdefs.h + if test $REPLACE_CLOSE = 1; then + GL_COND_OBJ_CLOSE_TRUE= + GL_COND_OBJ_CLOSE_FALSE='#' +else + GL_COND_OBJ_CLOSE_TRUE='#' + GL_COND_OBJ_CLOSE_FALSE= +fi +: + if test -z "${GL_COND_OBJ_CLOSE_TRUE}" && test -z "${GL_COND_OBJ_CLOSE_FALSE}"; then + GL_COND_OBJ_CLOSE_TRUE='#' + GL_COND_OBJ_CLOSE_FALSE='#' + fi - gl_LIBOBJS="$gl_LIBOBJS fcntl.$ac_objext" - fi + GL_GNULIB_CLOSE=1 - GL_GNULIB_FCNTL=1 +printf "%s\n" "#define GNULIB_TEST_CLOSE 1" >>confdefs.h -printf "%s\n" "#define GNULIB_TEST_FCNTL 1" >>confdefs.h @@ -26540,272 +29427,234 @@ printf "%s\n" "#define GNULIB_TEST_FCNTL 1" >>confdefs.h +printf "%s\n" "#define GNULIB_DIRNAME 1" >>confdefs.h -printf "%s\n" "#define GNULIB_FILENAMECAT 1" >>confdefs.h + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether // is distinct from /" >&5 +printf %s "checking whether // is distinct from /... " >&6; } +if test ${gl_cv_double_slash_root+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) if test x"$cross_compiling" = xyes ; then + # When cross-compiling, there is no way to tell whether // is special + # short of a list of hosts. However, the only known hosts to date + # that have a distinct // are Apollo DomainOS (too old to port to), + # Cygwin, and z/OS. If anyone knows of another system for which // has + # special semantics and is distinct from /, please report it to + # . + case $host in + *-cygwin | i370-ibm-openedition) + gl_cv_double_slash_root=yes ;; + *) + # Be optimistic and assume that / and // are the same when we + # don't know. + gl_cv_double_slash_root='unknown, assuming no' ;; + esac + else + set x `ls -di / // 2>/dev/null` + if test "$2" = "$4" && wc //dev/null >/dev/null 2>&1; then + gl_cv_double_slash_root=no + else + gl_cv_double_slash_root=yes + fi + fi ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_double_slash_root" >&5 +printf "%s\n" "$gl_cv_double_slash_root" >&6; } + if test "$gl_cv_double_slash_root" = yes; then +printf "%s\n" "#define DOUBLE_SLASH_IS_DISTINCT_ROOT 1" >>confdefs.h + fi - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for flexible array member" >&5 -printf %s "checking for flexible array member... " >&6; } -if test ${ac_cv_c_flexmember+y} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether dup2 works" >&5 +printf %s "checking whether dup2 works... " >&6; } +if test ${gl_cv_func_dup2_works+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) if test "$cross_compiling" = yes +then : + case "$host_os" in + mingw*) # on this platform, dup2 always returns 0 for success + gl_cv_func_dup2_works="guessing no" ;; + cygwin*) # on cygwin 1.5.x, dup2(1,1) returns 0 + gl_cv_func_dup2_works="guessing no" ;; + aix* | freebsd*) + # on AIX 7.1 and FreeBSD 6.1, dup2 (1,toobig) gives EMFILE, + # not EBADF. + gl_cv_func_dup2_works="guessing no" ;; + haiku*) # on Haiku alpha 2, dup2(1, 1) resets FD_CLOEXEC. + gl_cv_func_dup2_works="guessing no" ;; + *-android*) # implemented using dup3(), which fails if oldfd == newfd + gl_cv_func_dup2_works="guessing no" ;; + os2*) # on OS/2 kLIBC, dup2() does not work on a directory fd. + gl_cv_func_dup2_works="guessing no" ;; + *) gl_cv_func_dup2_works="guessing yes" ;; + esac +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include - #include - #include - struct m { struct m *next, **list; char name[]; }; - struct s { struct s *p; struct m *m; int n; double d[]; }; + + #include + #include + #include + #include + #include + + +$gl_mda_defines + + #ifndef RLIM_SAVED_CUR + # define RLIM_SAVED_CUR RLIM_INFINITY + #endif + #ifndef RLIM_SAVED_MAX + # define RLIM_SAVED_MAX RLIM_INFINITY + #endif + int main (void) { -int m = getchar (); - size_t nbytes = offsetof (struct s, d) + m * sizeof (double); - nbytes += sizeof (struct s) - 1; - nbytes -= nbytes % sizeof (struct s); - struct s *p = malloc (nbytes); - p->p = p; - p->m = NULL; - p->d[0] = 0.0; - return p->d != (double *) NULL; +int result = 0; + int bad_fd = INT_MAX; + struct rlimit rlim; + if (getrlimit (RLIMIT_NOFILE, &rlim) == 0 + && 0 <= rlim.rlim_cur && rlim.rlim_cur <= INT_MAX + && rlim.rlim_cur != RLIM_INFINITY + && rlim.rlim_cur != RLIM_SAVED_MAX + && rlim.rlim_cur != RLIM_SAVED_CUR) + bad_fd = rlim.rlim_cur; + #ifdef FD_CLOEXEC + if (fcntl (1, F_SETFD, FD_CLOEXEC) == -1) + result |= 1; + #endif + if (dup2 (1, 1) != 1) + result |= 2; + #ifdef FD_CLOEXEC + if (fcntl (1, F_GETFD) != FD_CLOEXEC) + result |= 4; + #endif + close (0); + if (dup2 (0, 0) != -1) + result |= 8; + /* Many gnulib modules require POSIX conformance of EBADF. */ + if (dup2 (2, bad_fd) == -1 && errno != EBADF) + result |= 16; + /* Flush out some cygwin core dumps. */ + if (dup2 (2, -1) != -1 || errno != EBADF) + result |= 32; + dup2 (2, 255); + dup2 (2, 256); + /* On OS/2 kLIBC, dup2() does not work on a directory fd. */ + { + int fd = open (".", O_RDONLY); + if (fd == -1) + result |= 64; + else if (dup2 (fd, fd + 1) == -1) + result |= 128; + close (fd); + } + return result; ; return 0; } + _ACEOF -if ac_fn_c_try_compile "$LINENO" +if ac_fn_c_try_run "$LINENO" then : - ac_cv_c_flexmember=yes -else $as_nop - ac_cv_c_flexmember=no + gl_cv_func_dup2_works=yes +else case e in #( + e) gl_cv_func_dup2_works=no ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_flexmember" >&5 -printf "%s\n" "$ac_cv_c_flexmember" >&6; } - if test $ac_cv_c_flexmember = yes; then -printf "%s\n" "#define FLEXIBLE_ARRAY_MEMBER /**/" >>confdefs.h + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_dup2_works" >&5 +printf "%s\n" "$gl_cv_func_dup2_works" >&6; } + case "$gl_cv_func_dup2_works" in + *yes) ;; + *) + REPLACE_DUP2=1 + ac_fn_c_check_func "$LINENO" "setdtablesize" "ac_cv_func_setdtablesize" +if test "x$ac_cv_func_setdtablesize" = xyes +then : + printf "%s\n" "#define HAVE_SETDTABLESIZE 1" >>confdefs.h - else - printf "%s\n" "#define FLEXIBLE_ARRAY_MEMBER 1" >>confdefs.h +fi - fi + ;; + esac + if test $REPLACE_DUP2 = 1; then + GL_COND_OBJ_DUP2_TRUE= + GL_COND_OBJ_DUP2_FALSE='#' +else + GL_COND_OBJ_DUP2_TRUE='#' + GL_COND_OBJ_DUP2_FALSE= +fi +: + if test -z "${GL_COND_OBJ_DUP2_TRUE}" && test -z "${GL_COND_OBJ_DUP2_FALSE}"; then + GL_COND_OBJ_DUP2_TRUE='#' + GL_COND_OBJ_DUP2_FALSE='#' + fi + + if test -z "$GL_COND_OBJ_DUP2_TRUE"; then : - FLOAT_H= - REPLACE_FLOAT_LDBL=0 - case "$host_os" in - aix* | beos* | openbsd* | mirbsd* | irix*) - FLOAT_H=float.h - ;; - freebsd* | dragonfly*) - case "$host_cpu" in - i[34567]86 ) - FLOAT_H=float.h - ;; - x86_64 ) - # On x86_64 systems, the C compiler may still be generating - # 32-bit code. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#if defined __LP64__ || defined __x86_64__ || defined __amd64__ - int ok; - #else - error fail - #endif -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : -else $as_nop - FLOAT_H=float.h fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - ;; - esac - ;; - linux*) - case "$host_cpu" in - powerpc*) - FLOAT_H=float.h - ;; - esac - ;; - esac - case "$host_os" in - aix* | freebsd* | dragonfly* | linux*) - if test -n "$FLOAT_H"; then - REPLACE_FLOAT_LDBL=1 - fi - ;; - esac - REPLACE_ITOLD=0 - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether conversion from 'int' to 'long double' works" >&5 -printf %s "checking whether conversion from 'int' to 'long double' works... " >&6; } -if test ${gl_cv_func_itold_works+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test "$cross_compiling" = yes -then : - case "$host" in - sparc*-*-linux*) - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#if defined __LP64__ || defined __arch64__ - int ok; - #else - error fail - #endif -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - gl_cv_func_itold_works="guessing no" -else $as_nop - gl_cv_func_itold_works="guessing yes" -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - ;; - # Guess yes on native Windows. - mingw*) gl_cv_func_itold_works="guessing yes" ;; - *) gl_cv_func_itold_works="guessing yes" ;; - esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -int i = -1; -volatile long double ld; -int main () -{ - ld += i * 1.0L; - if (ld > 0) - return 1; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO" -then : - gl_cv_func_itold_works=yes -else $as_nop - gl_cv_func_itold_works=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_itold_works" >&5 -printf "%s\n" "$gl_cv_func_itold_works" >&6; } - case "$gl_cv_func_itold_works" in - *no) - REPLACE_ITOLD=1 - FLOAT_H=float.h - ;; - esac - if test -n "$FLOAT_H"; then + GL_GNULIB_DUP2=1 +printf "%s\n" "#define GNULIB_TEST_DUP2 1" >>confdefs.h - if test $gl_cv_have_include_next = yes; then - gl_cv_next_float_h='<'float.h'>' - else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 -printf %s "checking absolute name of ... " >&6; } -if test ${gl_cv_next_float_h+y} -then : - printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF - case "$host_os" in - aix*) gl_absname_cpp="$ac_cpp -C" ;; - *) gl_absname_cpp="$ac_cpp" ;; - esac - case "$host_os" in - mingw*) - gl_dirsep_regex='[/\\]' - ;; - *) - gl_dirsep_regex='\/' - ;; - esac - gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' - gl_header_literal_regex=`echo 'float.h' \ - | sed -e "$gl_make_literal_regex_sed"` - gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ - s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ - s|^/[^/]|//&| - p - q - }' - gl_cv_absolute_float_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | - sed -n "$gl_absolute_header_sed"` - gl_header=$gl_cv_absolute_float_h - gl_cv_next_float_h='"'$gl_header'"' -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_float_h" >&5 -printf "%s\n" "$gl_cv_next_float_h" >&6; } - fi - NEXT_FLOAT_H=$gl_cv_next_float_h - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'float.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_float_h - fi - NEXT_AS_FIRST_DIRECTIVE_FLOAT_H=$gl_next_as_first_directive + GL_GNULIB_ENVIRON=1 - fi - if test -n "$FLOAT_H"; then - GL_GENERATE_FLOAT_H_TRUE= - GL_GENERATE_FLOAT_H_FALSE='#' -else - GL_GENERATE_FLOAT_H_TRUE='#' - GL_GENERATE_FLOAT_H_FALSE= -fi +printf "%s\n" "#define GNULIB_TEST_ENVIRON 1" >>confdefs.h - if test $REPLACE_FLOAT_LDBL = 1; then @@ -26813,11 +29662,29 @@ fi + case "$GL_GENERATE_ERRNO_H" in + false) ERRNO_H='' ;; + true) + if test -z "$ERRNO_H"; then + ERRNO_H="${gl_source_base_prefix}errno.h" + fi + ;; + *) echo "*** GL_GENERATE_ERRNO_H is not set correctly" 1>&2; exit 1 ;; + esac - gl_LIBOBJS="$gl_LIBOBJS float.$ac_objext" + if $GL_GENERATE_ERRNO_H; then + GL_GENERATE_ERRNO_H_TRUE= + GL_GENERATE_ERRNO_H_FALSE='#' +else + GL_GENERATE_ERRNO_H_TRUE='#' + GL_GENERATE_ERRNO_H_FALSE= +fi +: + if test -z "${GL_GENERATE_ERRNO_H_TRUE}" && test -z "${GL_GENERATE_ERRNO_H_FALSE}"; then + GL_GENERATE_ERRNO_H_TRUE='#' + GL_GENERATE_ERRNO_H_FALSE='#' fi - if test $REPLACE_ITOLD = 1; then @@ -26826,28 +29693,468 @@ fi - gl_LIBOBJS="$gl_LIBOBJS itold.$ac_objext" + + if test $GL_GENERATE_ERROR_H = true; then + GL_COND_OBJ_ERROR_TRUE= + GL_COND_OBJ_ERROR_FALSE='#' +else + GL_COND_OBJ_ERROR_TRUE='#' + GL_COND_OBJ_ERROR_FALSE= +fi +: + if test -z "${GL_COND_OBJ_ERROR_TRUE}" && test -z "${GL_COND_OBJ_ERROR_FALSE}"; then + GL_COND_OBJ_ERROR_TRUE='#' + GL_COND_OBJ_ERROR_FALSE='#' fi + if test -z "$GL_COND_OBJ_ERROR_TRUE"; then : - gl_fnmatch_required_lowercase=` - echo $gl_fnmatch_required | LC_ALL=C tr '[A-Z]' '[a-z]' - ` - if test $ac_cv_func_fnmatch = no; then - HAVE_FNMATCH=0 - else - gl_fnmatch_cache_var="gl_cv_func_fnmatch_${gl_fnmatch_required_lowercase}" - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for working $gl_fnmatch_required fnmatch" >&5 -printf %s "checking for working $gl_fnmatch_required fnmatch... " >&6; } -if eval test \${$gl_fnmatch_cache_var+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test $gl_fnmatch_required = GNU; then + + : + + +fi + + + XGETTEXT_EXTRA_OPTIONS="$XGETTEXT_EXTRA_OPTIONS --flag=error:3:c-format" + + + + XGETTEXT_EXTRA_OPTIONS="$XGETTEXT_EXTRA_OPTIONS --flag=error_at_line:5:c-format" + + + + + + + case "$GL_GENERATE_ERROR_H" in + false) ERROR_H='' ;; + true) + if test -z "$ERROR_H"; then + ERROR_H="${gl_source_base_prefix}error.h" + fi + ;; + *) echo "*** GL_GENERATE_ERROR_H is not set correctly" 1>&2; exit 1 ;; + esac + + + if $GL_GENERATE_ERROR_H; then + GL_GENERATE_ERROR_H_TRUE= + GL_GENERATE_ERROR_H_FALSE='#' +else + GL_GENERATE_ERROR_H_TRUE='#' + GL_GENERATE_ERROR_H_FALSE= +fi +: + if test -z "${GL_GENERATE_ERROR_H_TRUE}" && test -z "${GL_GENERATE_ERROR_H_FALSE}"; then + GL_GENERATE_ERROR_H_TRUE='#' + GL_GENERATE_ERROR_H_FALSE='#' + fi + + + + + + + + + + + + + if test $ac_cv_func_fcntl = no; then + + + + if test $ac_cv_func_fcntl = no; then + HAVE_FCNTL=0 + else + REPLACE_FCNTL=1 + fi + + else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether fcntl handles F_DUPFD correctly" >&5 +printf %s "checking whether fcntl handles F_DUPFD correctly... " >&6; } +if test ${gl_cv_func_fcntl_f_dupfd_works+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) if test "$cross_compiling" = yes +then : + case $host_os in + aix* | cygwin* | haiku*) + gl_cv_func_fcntl_f_dupfd_works="guessing no" ;; + *) gl_cv_func_fcntl_f_dupfd_works="guessing yes" ;; + esac +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + #include + #include + #include + #include + + +$gl_mda_defines + + #ifndef RLIM_SAVED_CUR + # define RLIM_SAVED_CUR RLIM_INFINITY + #endif + #ifndef RLIM_SAVED_MAX + # define RLIM_SAVED_MAX RLIM_INFINITY + #endif + +int +main (void) +{ +int result = 0; + int bad_fd = INT_MAX; + struct rlimit rlim; + if (getrlimit (RLIMIT_NOFILE, &rlim) == 0 + && 0 <= rlim.rlim_cur && rlim.rlim_cur <= INT_MAX + && rlim.rlim_cur != RLIM_INFINITY + && rlim.rlim_cur != RLIM_SAVED_MAX + && rlim.rlim_cur != RLIM_SAVED_CUR) + bad_fd = rlim.rlim_cur; + if (fcntl (0, F_DUPFD, -1) != -1) result |= 1; + if (errno != EINVAL) result |= 2; + if (fcntl (0, F_DUPFD, bad_fd) != -1) result |= 4; + if (errno != EINVAL) result |= 8; + /* On OS/2 kLIBC, F_DUPFD does not work on a directory fd */ + { + int fd; + fd = open (".", O_RDONLY); + if (fd == -1) + result |= 16; + else if (fcntl (fd, F_DUPFD, STDERR_FILENO + 1) == -1) + result |= 32; + + close (fd); + } + return result; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO" +then : + gl_cv_func_fcntl_f_dupfd_works=yes +else case e in #( + e) gl_cv_func_fcntl_f_dupfd_works=no ;; +esac +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac +fi + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_fcntl_f_dupfd_works" >&5 +printf "%s\n" "$gl_cv_func_fcntl_f_dupfd_works" >&6; } + case $gl_cv_func_fcntl_f_dupfd_works in + *yes) ;; + *) + + + if test $ac_cv_func_fcntl = no; then + HAVE_FCNTL=0 + else + REPLACE_FCNTL=1 + fi + + +printf "%s\n" "#define FCNTL_DUPFD_BUGGY 1" >>confdefs.h + ;; + esac + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether fcntl understands F_DUPFD_CLOEXEC" >&5 +printf %s "checking whether fcntl understands F_DUPFD_CLOEXEC... " >&6; } +if test ${gl_cv_func_fcntl_f_dupfd_cloexec+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) if test "$cross_compiling" = yes +then : + case "$host_os" in + # Guess no on NetBSD. + netbsd*) gl_cv_func_fcntl_f_dupfd_cloexec="guessing no" ;; + *) gl_cv_func_fcntl_f_dupfd_cloexec="$gl_cross_guess_normal" ;; + esac + +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + #include + int main (int argc, char *argv[]) + { + if (argc == 1) + /* parent process */ + { + if (fcntl (1, F_DUPFD_CLOEXEC, 10) < 0) + return 1; + return execl ("./conftest", "./conftest", "child", NULL); + } + else + /* child process */ + return (fcntl (10, F_GETFL) < 0 ? 0 : 42); + } + + +_ACEOF +if ac_fn_c_try_run "$LINENO" +then : + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#ifdef __linux__ +/* The Linux kernel only added F_DUPFD_CLOEXEC in 2.6.24, so we always replace + it to support the semantics on older kernels that failed with EINVAL. */ +choke me +#endif + +int +main (void) +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO" +then : + gl_cv_func_fcntl_f_dupfd_cloexec=yes +else case e in #( + e) gl_cv_func_fcntl_f_dupfd_cloexec="needs runtime check" ;; +esac +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext + +else case e in #( + e) gl_cv_func_fcntl_f_dupfd_cloexec=no ;; +esac +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac +fi + + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_fcntl_f_dupfd_cloexec" >&5 +printf "%s\n" "$gl_cv_func_fcntl_f_dupfd_cloexec" >&6; } + case "$gl_cv_func_fcntl_f_dupfd_cloexec" in + *yes) ;; + *) + + + if test $ac_cv_func_fcntl = no; then + HAVE_FCNTL=0 + else + REPLACE_FCNTL=1 + fi + + ;; + esac + fi + + + + if test $HAVE_FCNTL = 0 || test $REPLACE_FCNTL = 1; then + GL_COND_OBJ_FCNTL_TRUE= + GL_COND_OBJ_FCNTL_FALSE='#' +else + GL_COND_OBJ_FCNTL_TRUE='#' + GL_COND_OBJ_FCNTL_FALSE= +fi +: + if test -z "${GL_COND_OBJ_FCNTL_TRUE}" && test -z "${GL_COND_OBJ_FCNTL_FALSE}"; then + GL_COND_OBJ_FCNTL_TRUE='#' + GL_COND_OBJ_FCNTL_FALSE='#' + fi + + + + + + + + + + + GL_GNULIB_FCNTL=1 + + + + + +printf "%s\n" "#define GNULIB_TEST_FCNTL 1" >>confdefs.h + + + + + + + + + + + + + + + +printf "%s\n" "#define GNULIB_FILENAMECAT 1" >>confdefs.h + + + + + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for mempcpy" >&5 +printf %s "checking for mempcpy... " >&6; } +if test ${gl_cv_onwards_func_mempcpy+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + exec 9>&6 6>/dev/null + + case "$host_os" in + + linux*-android*) + ac_fn_check_decl "$LINENO" "mempcpy" "ac_cv_have_decl_mempcpy" "#include +" "$ac_c_undeclared_builtin_options" "CFLAGS" +if test "x$ac_cv_have_decl_mempcpy" = xyes +then : + +fi + if test $ac_cv_have_decl_mempcpy = yes; then + ac_fn_c_check_func "$LINENO" "mempcpy" "ac_cv_func_mempcpy" +if test "x$ac_cv_func_mempcpy" = xyes +then : + +fi + + if test $ac_cv_func_mempcpy = yes; then + gl_cv_onwards_func_mempcpy=yes + else + gl_cv_onwards_func_mempcpy='future OS version' + fi + else + gl_cv_onwards_func_mempcpy='future OS version' + fi + ;; + + + *) + ac_fn_c_check_func "$LINENO" "mempcpy" "ac_cv_func_mempcpy" +if test "x$ac_cv_func_mempcpy" = xyes +then : + +fi + + gl_cv_onwards_func_mempcpy=$ac_cv_func_mempcpy + ;; + + esac + + exec 6>&9 9>&- + + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_onwards_func_mempcpy" >&5 +printf "%s\n" "$gl_cv_onwards_func_mempcpy" >&6; } + + case "$gl_cv_onwards_func_mempcpy" in + future*) ac_cv_func_mempcpy=no ;; + *) ac_cv_func_mempcpy=$gl_cv_onwards_func_mempcpy ;; + esac + if test $ac_cv_func_mempcpy = yes; then + +printf "%s\n" "#define HAVE_MEMPCPY 1" >>confdefs.h + + fi + + + + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for flexible array member" >&5 +printf %s "checking for flexible array member... " >&6; } +if test ${ac_cv_c_flexmember+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + #include + #include + struct m { struct m *next, **list; char name[]; }; + struct s { struct s *p; struct m *m; int n; double d[]; }; +int +main (void) +{ +int m = getchar (); + size_t nbytes = offsetof (struct s, d) + m * sizeof (double); + nbytes += sizeof (struct s) - 1; + nbytes -= nbytes % sizeof (struct s); + struct s *p = malloc (nbytes); + p->p = p; + p->m = NULL; + p->d[0] = 0.0; + return p->d != (double *) NULL; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO" +then : + ac_cv_c_flexmember=yes +else case e in #( + e) ac_cv_c_flexmember=no ;; +esac +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_flexmember" >&5 +printf "%s\n" "$ac_cv_c_flexmember" >&6; } + if test $ac_cv_c_flexmember = yes; then + +printf "%s\n" "#define FLEXIBLE_ARRAY_MEMBER /**/" >>confdefs.h + + else + printf "%s\n" "#define FLEXIBLE_ARRAY_MEMBER 1" >>confdefs.h + + fi + + + + + + gl_fnmatch_required_lowercase=` + echo $gl_fnmatch_required | LC_ALL=C tr '[A-Z]' '[a-z]' + ` + + if test $ac_cv_func_fnmatch = no; then + HAVE_FNMATCH=0 + else + gl_fnmatch_cache_var="gl_cv_func_fnmatch_${gl_fnmatch_required_lowercase}" + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for working $gl_fnmatch_required fnmatch" >&5 +printf %s "checking for working $gl_fnmatch_required fnmatch... " >&6; } +if eval test \${$gl_fnmatch_cache_var+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) if test $gl_fnmatch_required = GNU; then gl_fnmatch_gnu_start= gl_fnmatch_gnu_end= else @@ -26857,14 +30164,14 @@ else $as_nop if test "$cross_compiling" = yes then : case "$host_os" in - # Guess yes on musl systems. - *-musl*) eval "$gl_fnmatch_cache_var=\"guessing yes\"" ;; - # Guess no otherwise, even on glibc systems. - *) eval "$gl_fnmatch_cache_var=\"guessing no\"" ;; + # Guess yes on musl systems. + *-musl* | midipix*) eval "$gl_fnmatch_cache_var=\"guessing yes\"" ;; + # Guess no otherwise, even on glibc systems. + *) eval "$gl_fnmatch_cache_var=\"guessing no\"" ;; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include static int @@ -26953,14 +30260,17 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : eval "$gl_fnmatch_cache_var=yes" -else $as_nop - eval "$gl_fnmatch_cache_var=no" +else case e in #( + e) eval "$gl_fnmatch_cache_var=no" ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - + ;; +esac fi eval ac_res=\$$gl_fnmatch_cache_var { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 @@ -26978,17 +30288,41 @@ printf "%s\n" "$ac_res" >&6; } - FNMATCH_H='fnmatch.h' - if test -n "$FNMATCH_H"; then + GL_GENERATE_FNMATCH_H=true + + fi + + + + + + case "$GL_GENERATE_FNMATCH_H" in + false) FNMATCH_H='' ;; + true) + if test -z "$FNMATCH_H"; then + FNMATCH_H="${gl_source_base_prefix}fnmatch.h" + fi + ;; + *) echo "*** GL_GENERATE_FNMATCH_H is not set correctly" 1>&2; exit 1 ;; + esac + + + if $GL_GENERATE_FNMATCH_H; then GL_GENERATE_FNMATCH_H_TRUE= GL_GENERATE_FNMATCH_H_FALSE='#' else GL_GENERATE_FNMATCH_H_TRUE='#' GL_GENERATE_FNMATCH_H_FALSE= fi +: + if test -z "${GL_GENERATE_FNMATCH_H_TRUE}" && test -z "${GL_GENERATE_FNMATCH_H_FALSE}"; then + GL_GENERATE_FNMATCH_H_TRUE='#' + GL_GENERATE_FNMATCH_H_FALSE='#' + fi + + - fi if test $HAVE_FNMATCH = 0 || test $REPLACE_FNMATCH = 1; then @@ -27060,69 +30394,42 @@ printf "%s\n" "#define GNULIB_FNMATCH_GNU 1" >>confdefs.h - case "$host_os" in - mingw* | pw*) - REPLACE_FOPEN=1 - gl_cv_func_fopen_slash="guessing no" + + case "$GL_GENERATE_FNMATCH_H" in + false) FNMATCH_H='' ;; + true) + if test -z "$FNMATCH_H"; then + FNMATCH_H="${gl_source_base_prefix}fnmatch.h" + fi ;; - *) - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether fopen recognizes a trailing slash" >&5 -printf %s "checking whether fopen recognizes a trailing slash... " >&6; } -if test ${gl_cv_func_fopen_slash+y} -then : - printf %s "(cached) " >&6 -else $as_nop + *) echo "*** GL_GENERATE_FNMATCH_H is not set correctly" 1>&2; exit 1 ;; + esac - if test "$cross_compiling" = yes -then : - case "$host_os" in - aix* | hpux* | solaris2.[0-9] | solaris2.[0-9].*) - gl_cv_func_fopen_slash="guessing no" ;; - *) - gl_cv_func_fopen_slash="guessing yes" ;; - esac + if $GL_GENERATE_FNMATCH_H; then + GL_GENERATE_FNMATCH_H_TRUE= + GL_GENERATE_FNMATCH_H_FALSE='#' +else + GL_GENERATE_FNMATCH_H_TRUE='#' + GL_GENERATE_FNMATCH_H_FALSE= +fi +: + if test -z "${GL_GENERATE_FNMATCH_H_TRUE}" && test -z "${GL_GENERATE_FNMATCH_H_FALSE}"; then + GL_GENERATE_FNMATCH_H_TRUE='#' + GL_GENERATE_FNMATCH_H_FALSE='#' + fi + -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include -int main () -{ - FILE *fp = fopen ("conftest.sl/", "w"); - int result = (fp != NULL); - if (fp != NULL) - fclose (fp); - return result; -} -_ACEOF -if ac_fn_c_try_run "$LINENO" -then : - gl_cv_func_fopen_slash=yes -else $as_nop - gl_cv_func_fopen_slash=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - rm -f conftest.sl -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_fopen_slash" >&5 -printf "%s\n" "$gl_cv_func_fopen_slash" >&6; } - ;; - esac - case "$gl_cv_func_fopen_slash" in - *no) -printf "%s\n" "#define FOPEN_TRAILING_SLASH_BUG 1" >>confdefs.h - REPLACE_FOPEN=1 - ;; - esac + + + if test $REPLACE_FCLOSE = 1; then + REPLACE_FOPEN=1 + fi if test $REPLACE_FOPEN = 1; then @@ -27163,21 +30470,21 @@ printf %s "checking whether fopen supports the mode character 'x'... " >&6; } if test ${gl_cv_func_fopen_mode_x+y} then : printf %s "(cached) " >&6 -else $as_nop - rm -f conftest.x +else case e in #( + e) rm -f conftest.x if test "$cross_compiling" = yes then : case "$host_os" in # Guess yes on glibc and musl systems. - linux*-gnu* | gnu* | kfreebsd*-gnu | *-musl*) + linux*-gnu* | gnu* | kfreebsd*-gnu | *-musl* | midipix*) gl_cv_func_fopen_mode_x="guessing yes" ;; # If we don't know, obey --enable-cross-guesses. *) gl_cv_func_fopen_mode_x="$gl_cross_guess_normal" ;; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -27201,15 +30508,18 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_fopen_mode_x=yes -else $as_nop - gl_cv_func_fopen_mode_x=no +else case e in #( + e) gl_cv_func_fopen_mode_x=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi rm -f conftest.x - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_fopen_mode_x" >&5 printf "%s\n" "$gl_cv_func_fopen_mode_x" >&6; } @@ -27218,13 +30528,13 @@ printf %s "checking whether fopen supports the mode character 'e'... " >&6; } if test ${gl_cv_func_fopen_mode_e+y} then : printf %s "(cached) " >&6 -else $as_nop - echo foo > conftest.x +else case e in #( + e) echo foo > conftest.x if test "$cross_compiling" = yes then : case "$host_os" in # Guess yes on glibc and musl systems. - linux*-gnu* | gnu* | kfreebsd*-gnu | *-musl*) + linux*-gnu* | gnu* | kfreebsd*-gnu | *-musl* | midipix*) gl_cv_func_fopen_mode_e="guessing yes" ;; # Guess no on native Windows. mingw*) @@ -27234,8 +30544,8 @@ then : gl_cv_func_fopen_mode_e="$gl_cross_guess_normal" ;; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -27264,26 +30574,30 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_fopen_mode_e=yes -else $as_nop - gl_cv_func_fopen_mode_e=no +else case e in #( + e) gl_cv_func_fopen_mode_e=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi rm -f conftest.x - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_fopen_mode_e" >&5 printf "%s\n" "$gl_cv_func_fopen_mode_e" >&6; } + REPLACE_FOPEN_FOR_FOPEN_GNU="$REPLACE_FOPEN" case "$gl_cv_func_fopen_mode_x" in - *no) REPLACE_FOPEN=1 ;; + *no) REPLACE_FOPEN_FOR_FOPEN_GNU=1 ;; esac case "$gl_cv_func_fopen_mode_e" in - *no) REPLACE_FOPEN=1 ;; + *no) REPLACE_FOPEN_FOR_FOPEN_GNU=1 ;; esac - if test $REPLACE_FOPEN = 1; then + if test $REPLACE_FOPEN_FOR_FOPEN_GNU = 1; then @@ -27304,13 +30618,32 @@ printf "%s\n" "#define GNULIB_FOPEN_GNU 1" >>confdefs.h + + + + + + + GL_GNULIB_FOPEN_GNU=1 + + + + + +printf "%s\n" "#define GNULIB_TEST_FOPEN_GNU 1" >>confdefs.h + + + + + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether free is known to preserve errno" >&5 printf %s "checking whether free is known to preserve errno... " >&6; } if test ${gl_cv_func_free_preserves_errno+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -27331,11 +30664,13 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_func_free_preserves_errno=yes -else $as_nop - gl_cv_func_free_preserves_errno=no +else case e in #( + e) gl_cv_func_free_preserves_errno=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_free_preserves_errno" >&5 printf "%s\n" "$gl_cv_func_free_preserves_errno" >&6; } @@ -27349,35 +30684,41 @@ printf "%s\n" "#define HAVE_FREE_POSIX 1" >>confdefs.h *) REPLACE_FREE=1 ;; esac - if test $REPLACE_FREE = 1; then + if test $REPLACE_FREE = 1; then + GL_COND_OBJ_FREE_TRUE= + GL_COND_OBJ_FREE_FALSE='#' +else + GL_COND_OBJ_FREE_TRUE='#' + GL_COND_OBJ_FREE_FALSE= +fi +: + if test -z "${GL_COND_OBJ_FREE_TRUE}" && test -z "${GL_COND_OBJ_FREE_FALSE}"; then + GL_COND_OBJ_FREE_TRUE='#' + GL_COND_OBJ_FREE_FALSE='#' + fi + if test -z "$GL_COND_OBJ_FREE_TRUE"; then : + : +fi - gl_LIBOBJS="$gl_LIBOBJS free.$ac_objext" - : - fi + GL_GNULIB_FREE_POSIX=1 - GL_GNULIB_FREE_POSIX=1 - - - - - -printf "%s\n" "#define GNULIB_TEST_FREE_POSIX 1" >>confdefs.h +printf "%s\n" "#define GNULIB_TEST_FREE_POSIX 1" >>confdefs.h @@ -27394,15 +30735,15 @@ printf %s "checking whether freopen works on closed fds... " >&6; } if test ${gl_cv_func_freopen_works_on_closed+y} then : printf %s "(cached) " >&6 -else $as_nop - if test "$cross_compiling" = yes +else case e in #( + e) if test "$cross_compiling" = yes then : case $host_os in *gnu*) gl_cv_func_freopen_works_on_closed="guessing no" ;; *) gl_cv_func_freopen_works_on_closed="guessing yes";; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include @@ -27424,13 +30765,16 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_freopen_works_on_closed=yes -else $as_nop - gl_cv_func_freopen_works_on_closed=no +else case e in #( + e) gl_cv_func_freopen_works_on_closed=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_freopen_works_on_closed" >&5 printf "%s\n" "$gl_cv_func_freopen_works_on_closed" >&6; } @@ -27439,19 +30783,25 @@ printf "%s\n" "$gl_cv_func_freopen_works_on_closed" >&6; } esac esac - if test $REPLACE_FREOPEN = 1; then - - - - - - + if test $REPLACE_FREOPEN = 1; then + GL_COND_OBJ_FREOPEN_TRUE= + GL_COND_OBJ_FREOPEN_FALSE='#' +else + GL_COND_OBJ_FREOPEN_TRUE='#' + GL_COND_OBJ_FREOPEN_FALSE= +fi +: + if test -z "${GL_COND_OBJ_FREOPEN_TRUE}" && test -z "${GL_COND_OBJ_FREOPEN_FALSE}"; then + GL_COND_OBJ_FREOPEN_TRUE='#' + GL_COND_OBJ_FREOPEN_FALSE='#' + fi - gl_LIBOBJS="$gl_LIBOBJS freopen.$ac_objext" + if test -z "$GL_COND_OBJ_FREOPEN_TRUE"; then : : - fi + +fi @@ -27483,16 +30833,21 @@ printf "%s\n" "#define GNULIB_TEST_FREOPEN 1" >>confdefs.h - if test $REPLACE_FSTAT = 1; then - - - - - - + if test $REPLACE_FSTAT = 1; then + GL_COND_OBJ_FSTAT_TRUE= + GL_COND_OBJ_FSTAT_FALSE='#' +else + GL_COND_OBJ_FSTAT_TRUE='#' + GL_COND_OBJ_FSTAT_FALSE= +fi +: + if test -z "${GL_COND_OBJ_FSTAT_TRUE}" && test -z "${GL_COND_OBJ_FSTAT_FALSE}"; then + GL_COND_OBJ_FSTAT_TRUE='#' + GL_COND_OBJ_FSTAT_FALSE='#' + fi - gl_LIBOBJS="$gl_LIBOBJS fstat.$ac_objext" + if test -z "$GL_COND_OBJ_FSTAT_TRUE"; then : case "$host_os" in mingw*) @@ -27513,7 +30868,8 @@ printf "%s\n" "#define GNULIB_TEST_FREOPEN 1" >>confdefs.h : - fi + +fi @@ -27545,8 +30901,8 @@ printf %s "checking whether getdtablesize works... " >&6; } if test ${gl_cv_func_getdtablesize_works+y} then : printf %s "(cached) " >&6 -else $as_nop - case "$host_os" in +else case e in #( + e) case "$host_os" in vms*) gl_cv_func_getdtablesize_works="no (limitation)" ;; *) if test "$cross_compiling" = yes @@ -27557,8 +30913,8 @@ then : *) gl_cv_func_getdtablesize_works="guessing yes" ;; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -27583,16 +30939,19 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_getdtablesize_works=yes -else $as_nop - gl_cv_func_getdtablesize_works=no +else case e in #( + e) gl_cv_func_getdtablesize_works=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi ;; esac - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_getdtablesize_works" >&5 printf "%s\n" "$gl_cv_func_getdtablesize_works" >&6; } @@ -27604,19 +30963,25 @@ printf "%s\n" "$gl_cv_func_getdtablesize_works" >&6; } HAVE_GETDTABLESIZE=0 fi - if test $HAVE_GETDTABLESIZE = 0 || test $REPLACE_GETDTABLESIZE = 1; then - - - - - - + if test $HAVE_GETDTABLESIZE = 0 || test $REPLACE_GETDTABLESIZE = 1; then + GL_COND_OBJ_GETDTABLESIZE_TRUE= + GL_COND_OBJ_GETDTABLESIZE_FALSE='#' +else + GL_COND_OBJ_GETDTABLESIZE_TRUE='#' + GL_COND_OBJ_GETDTABLESIZE_FALSE= +fi +: + if test -z "${GL_COND_OBJ_GETDTABLESIZE_TRUE}" && test -z "${GL_COND_OBJ_GETDTABLESIZE_FALSE}"; then + GL_COND_OBJ_GETDTABLESIZE_TRUE='#' + GL_COND_OBJ_GETDTABLESIZE_FALSE='#' + fi - gl_LIBOBJS="$gl_LIBOBJS getdtablesize.$ac_objext" + if test -z "$GL_COND_OBJ_GETDTABLESIZE_TRUE"; then : : - fi + +fi @@ -27650,6 +31015,8 @@ printf "%s\n" "#define GNULIB_TEST_GETDTABLESIZE 1" >>confdefs.h REPLACE_GETOPT=1 fi + GL_GENERATE_GETOPT_H=false + GL_GENERATE_GETOPT_CDEFS_H=false if test $REPLACE_GETOPT = 1; then @@ -27663,14 +31030,39 @@ printf "%s\n" "#define GNULIB_TEST_GETDTABLESIZE 1" >>confdefs.h printf "%s\n" "#define __GETOPT_PREFIX rpl_" >>confdefs.h - GETOPT_H=getopt.h - GETOPT_CDEFS_H=getopt-cdefs.h + GL_GENERATE_GETOPT_H=true + GL_GENERATE_GETOPT_CDEFS_H=true + + fi + + + case "$GL_GENERATE_GETOPT_H" in + false) GETOPT_H='' ;; + true) + if test -z "$GETOPT_H"; then + GETOPT_H="${gl_source_base_prefix}getopt.h" + fi + ;; + *) echo "*** GL_GENERATE_GETOPT_H is not set correctly" 1>&2; exit 1 ;; + esac + + + if $GL_GENERATE_GETOPT_H; then + GL_GENERATE_GETOPT_H_TRUE= + GL_GENERATE_GETOPT_H_FALSE='#' +else + GL_GENERATE_GETOPT_H_TRUE='#' + GL_GENERATE_GETOPT_H_FALSE= +fi +: + if test -z "${GL_GENERATE_GETOPT_H_TRUE}" && test -z "${GL_GENERATE_GETOPT_H_FALSE}"; then + GL_GENERATE_GETOPT_H_TRUE='#' + GL_GENERATE_GETOPT_H_FALSE='#' fi - if test $REPLACE_GETOPT = 1; then @@ -27679,17 +31071,50 @@ printf "%s\n" "#define __GETOPT_PREFIX rpl_" >>confdefs.h - gl_LIBOBJS="$gl_LIBOBJS getopt.$ac_objext" + case "$GL_GENERATE_GETOPT_CDEFS_H" in + false) GETOPT_CDEFS_H='' ;; + true) + if test -z "$GETOPT_CDEFS_H"; then + GETOPT_CDEFS_H="${gl_source_base_prefix}getopt-cdefs.h" + fi + ;; + *) echo "*** GL_GENERATE_GETOPT_CDEFS_H is not set correctly" 1>&2; exit 1 ;; + esac + if $GL_GENERATE_GETOPT_CDEFS_H; then + GL_GENERATE_GETOPT_CDEFS_H_TRUE= + GL_GENERATE_GETOPT_CDEFS_H_FALSE='#' +else + GL_GENERATE_GETOPT_CDEFS_H_TRUE='#' + GL_GENERATE_GETOPT_CDEFS_H_FALSE= +fi +: + if test -z "${GL_GENERATE_GETOPT_CDEFS_H_TRUE}" && test -z "${GL_GENERATE_GETOPT_CDEFS_H_FALSE}"; then + GL_GENERATE_GETOPT_CDEFS_H_TRUE='#' + GL_GENERATE_GETOPT_CDEFS_H_FALSE='#' + fi + + if test $REPLACE_GETOPT = 1; then + GL_COND_OBJ_GETOPT_TRUE= + GL_COND_OBJ_GETOPT_FALSE='#' +else + GL_COND_OBJ_GETOPT_TRUE='#' + GL_COND_OBJ_GETOPT_FALSE= +fi +: + if test -z "${GL_COND_OBJ_GETOPT_TRUE}" && test -z "${GL_COND_OBJ_GETOPT_FALSE}"; then + GL_COND_OBJ_GETOPT_TRUE='#' + GL_COND_OBJ_GETOPT_FALSE='#' + fi - gl_LIBOBJS="$gl_LIBOBJS getopt1.$ac_objext" + if test -z "$GL_COND_OBJ_GETOPT_TRUE"; then : @@ -27700,7 +31125,8 @@ printf "%s\n" "#define __GETOPT_PREFIX rpl_" >>confdefs.h GL_GNULIB_UNISTD_H_GETOPT=1 - fi + +fi @@ -27729,8 +31155,8 @@ printf %s "checking for getpagesize... " >&6; } if test ${gl_cv_func_getpagesize+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int @@ -27745,12 +31171,14 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : gl_cv_func_getpagesize=yes -else $as_nop - gl_cv_func_getpagesize=no +else case e in #( + e) gl_cv_func_getpagesize=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_getpagesize" >&5 printf "%s\n" "$gl_cv_func_getpagesize" >&6; } @@ -27787,12 +31215,24 @@ fi if test "x$ac_cv_have_decl_getpagesize" = xyes then : -else $as_nop - HAVE_DECL_GETPAGESIZE=0 +else case e in #( + e) HAVE_DECL_GETPAGESIZE=0 ;; +esac fi - if test $REPLACE_GETPAGESIZE = 1; then + if test $REPLACE_GETPAGESIZE = 1; then + GL_COND_OBJ_GETPAGESIZE_TRUE= + GL_COND_OBJ_GETPAGESIZE_FALSE='#' +else + GL_COND_OBJ_GETPAGESIZE_TRUE='#' + GL_COND_OBJ_GETPAGESIZE_FALSE= +fi +: + if test -z "${GL_COND_OBJ_GETPAGESIZE_TRUE}" && test -z "${GL_COND_OBJ_GETPAGESIZE_FALSE}"; then + GL_COND_OBJ_GETPAGESIZE_TRUE='#' + GL_COND_OBJ_GETPAGESIZE_FALSE='#' + fi @@ -27800,27 +31240,131 @@ fi - gl_LIBOBJS="$gl_LIBOBJS getpagesize.$ac_objext" - fi + GL_GNULIB_GETPAGESIZE=1 +printf "%s\n" "#define GNULIB_TEST_GETPAGESIZE 1" >>confdefs.h - GL_GNULIB_GETPAGESIZE=1 -printf "%s\n" "#define GNULIB_TEST_GETPAGESIZE 1" >>confdefs.h + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for getprogname" >&5 +printf %s "checking for getprogname... " >&6; } +if test ${gl_cv_onwards_func_getprogname+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + exec 9>&6 6>/dev/null + + case "$host_os" in + + linux*-android*) + ac_fn_check_decl "$LINENO" "getprogname" "ac_cv_have_decl_getprogname" "#include +" "$ac_c_undeclared_builtin_options" "CFLAGS" +if test "x$ac_cv_have_decl_getprogname" = xyes +then : + +fi + if test $ac_cv_have_decl_getprogname = yes; then + ac_fn_c_check_func "$LINENO" "getprogname" "ac_cv_func_getprogname" +if test "x$ac_cv_func_getprogname" = xyes +then : + +fi + + if test $ac_cv_func_getprogname = yes; then + gl_cv_onwards_func_getprogname=yes + else + gl_cv_onwards_func_getprogname='future OS version' + fi + else + gl_cv_onwards_func_getprogname='future OS version' + fi + ;; + + + *) + ac_fn_c_check_func "$LINENO" "getprogname" "ac_cv_func_getprogname" +if test "x$ac_cv_func_getprogname" = xyes +then : +fi + + gl_cv_onwards_func_getprogname=$ac_cv_func_getprogname + ;; + + esac + + exec 6>&9 9>&- + + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_onwards_func_getprogname" >&5 +printf "%s\n" "$gl_cv_onwards_func_getprogname" >&6; } + + case "$gl_cv_onwards_func_getprogname" in + future*) ac_cv_func_getprogname=no ;; + *) ac_cv_func_getprogname=$gl_cv_onwards_func_getprogname ;; + esac + if test $ac_cv_func_getprogname = yes; then + +printf "%s\n" "#define HAVE_GETPROGNAME 1" >>confdefs.h + + fi + + + if test $ac_cv_func_getprogname = no; then + HAVE_GETPROGNAME=0 + case "$gl_cv_onwards_func_getprogname" in + future*) REPLACE_GETPROGNAME=1 ;; + esac + fi + ac_fn_check_decl "$LINENO" "program_invocation_name" "ac_cv_have_decl_program_invocation_name" "#include +" "$ac_c_undeclared_builtin_options" "CFLAGS" +if test "x$ac_cv_have_decl_program_invocation_name" = xyes +then : + ac_have_decl=1 +else case e in #( + e) ac_have_decl=0 ;; +esac +fi +printf "%s\n" "#define HAVE_DECL_PROGRAM_INVOCATION_NAME $ac_have_decl" >>confdefs.h +if test $ac_have_decl = 1 +then : + +else case e in #( + e) HAVE_DECL_PROGRAM_INVOCATION_NAME=0 ;; +esac +fi + + + + if test $HAVE_GETPROGNAME = 0 || test $REPLACE_GETPROGNAME = 1; then + GL_COND_OBJ_GETPROGNAME_TRUE= + GL_COND_OBJ_GETPROGNAME_FALSE='#' +else + GL_COND_OBJ_GETPROGNAME_TRUE='#' + GL_COND_OBJ_GETPROGNAME_FALSE= +fi +: + if test -z "${GL_COND_OBJ_GETPROGNAME_TRUE}" && test -z "${GL_COND_OBJ_GETPROGNAME_FALSE}"; then + GL_COND_OBJ_GETPROGNAME_TRUE='#' + GL_COND_OBJ_GETPROGNAME_FALSE='#' + fi + + if test -z "$GL_COND_OBJ_GETPROGNAME_TRUE"; then : @@ -27831,8 +31375,9 @@ printf "%s\n" "#define GNULIB_TEST_GETPAGESIZE 1" >>confdefs.h if test "x$ac_cv_have_decl_program_invocation_name" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_PROGRAM_INVOCATION_NAME $ac_have_decl" >>confdefs.h if test $ac_have_decl = 1 @@ -27845,8 +31390,9 @@ fi if test "x$ac_cv_have_decl_program_invocation_short_name" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME $ac_have_decl" >>confdefs.h if test $ac_have_decl = 1 @@ -27859,8 +31405,9 @@ fi if test "x$ac_cv_have_decl___argv" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL___ARGV $ac_have_decl" >>confdefs.h if test $ac_have_decl = 1 @@ -27878,8 +31425,8 @@ printf %s "checking whether __progname is defined in default libraries... " >&6; if test ${gl_cv_var___progname+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) gl_cv_var___progname= cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -27901,7 +31448,8 @@ fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_var___progname" >&5 printf "%s\n" "$gl_cv_var___progname" >&6; } @@ -27913,19 +31461,116 @@ printf "%s\n" "#define HAVE_VAR___PROGNAME 1" >>confdefs.h fi +fi + + + + + + + + + + GL_GNULIB_GETPROGNAME=1 + + + + + +printf "%s\n" "#define GNULIB_TEST_GETPROGNAME 1" >>confdefs.h + + + + + + + + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for getrandom" >&5 +printf %s "checking for getrandom... " >&6; } +if test ${gl_cv_onwards_func_getrandom+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + exec 9>&6 6>/dev/null + + case "$host_os" in + linux*-android*) + ac_fn_check_decl "$LINENO" "getrandom" "ac_cv_have_decl_getrandom" "/* Additional includes are needed before on uClibc + and Mac OS X. */ + #include + #include + #include + +" "$ac_c_undeclared_builtin_options" "CFLAGS" +if test "x$ac_cv_have_decl_getrandom" = xyes +then : + +fi + if test $ac_cv_have_decl_getrandom = yes; then + ac_fn_c_check_func "$LINENO" "getrandom" "ac_cv_func_getrandom" +if test "x$ac_cv_func_getrandom" = xyes +then : + +fi + + if test $ac_cv_func_getrandom = yes; then + gl_cv_onwards_func_getrandom=yes + else + gl_cv_onwards_func_getrandom='future OS version' + fi + else + gl_cv_onwards_func_getrandom='future OS version' + fi + ;; + + + *) + ac_fn_c_check_func "$LINENO" "getrandom" "ac_cv_func_getrandom" +if test "x$ac_cv_func_getrandom" = xyes +then : + +fi + + gl_cv_onwards_func_getrandom=$ac_cv_func_getrandom + ;; + + esac + + exec 6>&9 9>&- + + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_onwards_func_getrandom" >&5 +printf "%s\n" "$gl_cv_onwards_func_getrandom" >&6; } + + case "$gl_cv_onwards_func_getrandom" in + future*) ac_cv_func_getrandom=no ;; + *) ac_cv_func_getrandom=$gl_cv_onwards_func_getrandom ;; + esac + if test $ac_cv_func_getrandom = yes; then + +printf "%s\n" "#define HAVE_GETRANDOM 1" >>confdefs.h + + fi if test "$ac_cv_func_getrandom" != yes; then HAVE_GETRANDOM=0 + case "$gl_cv_onwards_func_getrandom" in + future*) REPLACE_GETRANDOM=1 ;; + esac else { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether getrandom is compatible with its GNU+BSD signature" >&5 printf %s "checking whether getrandom is compatible with its GNU+BSD signature... " >&6; } if test ${gl_cv_func_getrandom_ok+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Additional includes are needed before on uClibc and Mac OS X. */ @@ -27946,11 +31591,13 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_func_getrandom_ok=yes -else $as_nop - gl_cv_func_getrandom_ok=no +else case e in #( + e) gl_cv_func_getrandom_ok=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_getrandom_ok" >&5 printf "%s\n" "$gl_cv_func_getrandom_ok" >&6; } @@ -27975,8 +31622,8 @@ printf %s "checking whether the bcrypt library is guaranteed to be present... " if test ${gl_cv_lib_assume_bcrypt+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int @@ -27994,11 +31641,13 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_lib_assume_bcrypt=yes -else $as_nop - gl_cv_lib_assume_bcrypt=no +else case e in #( + e) gl_cv_lib_assume_bcrypt=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_lib_assume_bcrypt" >&5 printf "%s\n" "$gl_cv_lib_assume_bcrypt" >&6; } @@ -28006,44 +31655,51 @@ printf "%s\n" "$gl_cv_lib_assume_bcrypt" >&6; } printf "%s\n" "#define HAVE_LIB_BCRYPT 1" >>confdefs.h - LIB_GETRANDOM='-lbcrypt' + GETRANDOM_LIB='-lbcrypt' else - LIB_GETRANDOM='-ladvapi32' + GETRANDOM_LIB='-ladvapi32' fi ;; *) - LIB_GETRANDOM= ;; + GETRANDOM_LIB= ;; esac - - if test $HAVE_GETRANDOM = 0 || test $REPLACE_GETRANDOM = 1; then - - + LIB_GETRANDOM="$GETRANDOM_LIB" + if test $HAVE_GETRANDOM = 0 || test $REPLACE_GETRANDOM = 1; then + GL_COND_OBJ_GETRANDOM_TRUE= + GL_COND_OBJ_GETRANDOM_FALSE='#' +else + GL_COND_OBJ_GETRANDOM_TRUE='#' + GL_COND_OBJ_GETRANDOM_FALSE= +fi +: + if test -z "${GL_COND_OBJ_GETRANDOM_TRUE}" && test -z "${GL_COND_OBJ_GETRANDOM_FALSE}"; then + GL_COND_OBJ_GETRANDOM_TRUE='#' + GL_COND_OBJ_GETRANDOM_FALSE='#' + fi - gl_LIBOBJS="$gl_LIBOBJS getrandom.$ac_objext" - fi + GL_GNULIB_GETRANDOM=1 - GL_GNULIB_GETRANDOM=1 +printf "%s\n" "#define GNULIB_TEST_GETRANDOM 1" >>confdefs.h -printf "%s\n" "#define GNULIB_TEST_GETRANDOM 1" >>confdefs.h @@ -28051,8 +31707,11 @@ printf "%s\n" "#define GNULIB_TEST_GETRANDOM 1" >>confdefs.h + if test $gl_cv_func_timespec_get = yes; then +printf "%s\n" "#define HAVE_TIMESPEC_GET 1" >>confdefs.h + fi @@ -28070,8 +31729,8 @@ printf %s "checking for gettimeofday with POSIX signature... " >&6; } if test ${gl_cv_func_gettimeofday_posix_signature+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include struct timeval c; @@ -28097,8 +31756,8 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_func_gettimeofday_posix_signature=yes -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int gettimeofday (struct timeval *restrict, struct timezone *restrict); @@ -28114,12 +31773,15 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_func_gettimeofday_posix_signature=almost -else $as_nop - gl_cv_func_gettimeofday_posix_signature=no +else case e in #( + e) gl_cv_func_gettimeofday_posix_signature=no ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_gettimeofday_posix_signature" >&5 printf "%s\n" "$gl_cv_func_gettimeofday_posix_signature" >&6; } @@ -28139,19 +31801,25 @@ printf "%s\n" "$gl_cv_func_gettimeofday_posix_signature" >&6; } printf "%s\n" "#define GETTIMEOFDAY_TIMEZONE $gl_gettimeofday_timezone" >>confdefs.h - if test $HAVE_GETTIMEOFDAY = 0 || test $REPLACE_GETTIMEOFDAY = 1; then - - - - - - + if test $HAVE_GETTIMEOFDAY = 0 || test $REPLACE_GETTIMEOFDAY = 1; then + GL_COND_OBJ_GETTIMEOFDAY_TRUE= + GL_COND_OBJ_GETTIMEOFDAY_FALSE='#' +else + GL_COND_OBJ_GETTIMEOFDAY_TRUE='#' + GL_COND_OBJ_GETTIMEOFDAY_FALSE= +fi +: + if test -z "${GL_COND_OBJ_GETTIMEOFDAY_TRUE}" && test -z "${GL_COND_OBJ_GETTIMEOFDAY_FALSE}"; then + GL_COND_OBJ_GETTIMEOFDAY_TRUE='#' + GL_COND_OBJ_GETTIMEOFDAY_FALSE='#' + fi - gl_LIBOBJS="$gl_LIBOBJS gettimeofday.$ac_objext" + if test -z "$GL_COND_OBJ_GETTIMEOFDAY_TRUE"; then : : - fi + +fi @@ -28172,6 +31840,7 @@ printf "%s\n" "#define GNULIB_TEST_GETTIMEOFDAY 1" >>confdefs.h + if LC_ALL=C ${MAKE-make} --version 2>/dev/null | sed -e '2,$d' | grep GNU >/dev/null; then GNU_MAKE_TRUE= GNU_MAKE_FALSE='#' @@ -28190,8 +31859,9 @@ fi ac_config_links="$ac_config_links $GNUmakefile:$GNUmakefile" - LIB_HARD_LOCALE="$LIB_SETLOCALE_NULL" + HARD_LOCALE_LIB="$SETLOCALE_NULL_LIB" + LIB_HARD_LOCALE="$HARD_LOCALE_LIB" @@ -28204,11 +31874,8 @@ fi - GL_GNULIB_ICONV=1 - - - + GL_GNULIB_ICONV=1 @@ -28219,23 +31886,52 @@ fi - if test "$am_cv_func_iconv" = yes; then + case "$GL_GENERATE_ICONV_H" in + false) ICONV_H='' ;; + true) + if test -z "$ICONV_H"; then + ICONV_H="${gl_source_base_prefix}iconv.h" + fi + ;; + *) echo "*** GL_GENERATE_ICONV_H is not set correctly" 1>&2; exit 1 ;; + esac - ICONV_H='iconv.h' - if test -n "$ICONV_H"; then + if $GL_GENERATE_ICONV_H; then GL_GENERATE_ICONV_H_TRUE= GL_GENERATE_ICONV_H_FALSE='#' else GL_GENERATE_ICONV_H_TRUE='#' GL_GENERATE_ICONV_H_FALSE= fi +: + if test -z "${GL_GENERATE_ICONV_H_TRUE}" && test -z "${GL_GENERATE_ICONV_H_FALSE}"; then + GL_GENERATE_ICONV_H_TRUE='#' + GL_GENERATE_ICONV_H_FALSE='#' + fi + + + + + + + + + if test "$am_cv_func_iconv" = yes; then + + + + + + + GL_GENERATE_ICONV_H=true + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -28246,11 +31942,12 @@ fi _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "gnu_iconv" >/dev/null 2>&1 + $EGREP_TRADITIONAL "gnu_iconv" >/dev/null 2>&1 then : gl_func_iconv_gnu=yes -else $as_nop - gl_func_iconv_gnu=no +else case e in #( + e) gl_func_iconv_gnu=no ;; +esac fi rm -rf conftest* @@ -28275,15 +31972,7 @@ printf "%s\n" "#define ICONV_FLAVOR $iconv_flavor" >>confdefs.h - ICONV_H='iconv.h' - if test -n "$ICONV_H"; then - GL_GENERATE_ICONV_H_TRUE= - GL_GENERATE_ICONV_H_FALSE='#' -else - GL_GENERATE_ICONV_H_TRUE='#' - GL_GENERATE_ICONV_H_FALSE= -fi - + GL_GENERATE_ICONV_H=true REPLACE_ICONV_OPEN=1 @@ -28292,49 +31981,75 @@ fi fi - if test $REPLACE_ICONV_OPEN = 1; then - - - + case "$GL_GENERATE_ICONV_H" in + false) ICONV_H='' ;; + true) + if test -z "$ICONV_H"; then + ICONV_H="${gl_source_base_prefix}iconv.h" + fi + ;; + *) echo "*** GL_GENERATE_ICONV_H is not set correctly" 1>&2; exit 1 ;; + esac - gl_LIBOBJS="$gl_LIBOBJS iconv_open.$ac_objext" + if $GL_GENERATE_ICONV_H; then + GL_GENERATE_ICONV_H_TRUE= + GL_GENERATE_ICONV_H_FALSE='#' +else + GL_GENERATE_ICONV_H_TRUE='#' + GL_GENERATE_ICONV_H_FALSE= +fi +: + if test -z "${GL_GENERATE_ICONV_H_TRUE}" && test -z "${GL_GENERATE_ICONV_H_FALSE}"; then + GL_GENERATE_ICONV_H_TRUE='#' + GL_GENERATE_ICONV_H_FALSE='#' fi - if test $REPLACE_ICONV = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS iconv.$ac_objext" - - + if test $REPLACE_ICONV_OPEN = 1; then + GL_COND_OBJ_ICONV_OPEN_TRUE= + GL_COND_OBJ_ICONV_OPEN_FALSE='#' +else + GL_COND_OBJ_ICONV_OPEN_TRUE='#' + GL_COND_OBJ_ICONV_OPEN_FALSE= +fi +: + if test -z "${GL_COND_OBJ_ICONV_OPEN_TRUE}" && test -z "${GL_COND_OBJ_ICONV_OPEN_FALSE}"; then + GL_COND_OBJ_ICONV_OPEN_TRUE='#' + GL_COND_OBJ_ICONV_OPEN_FALSE='#' + fi - gl_LIBOBJS="$gl_LIBOBJS iconv_close.$ac_objext" + if test $REPLACE_ICONV = 1; then + GL_COND_OBJ_ICONV_TRUE= + GL_COND_OBJ_ICONV_FALSE='#' +else + GL_COND_OBJ_ICONV_TRUE='#' + GL_COND_OBJ_ICONV_FALSE= +fi +: + if test -z "${GL_COND_OBJ_ICONV_TRUE}" && test -z "${GL_COND_OBJ_ICONV_FALSE}"; then + GL_COND_OBJ_ICONV_TRUE='#' + GL_COND_OBJ_ICONV_FALSE='#' fi + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the compiler generally respects inline" >&5 printf %s "checking whether the compiler generally respects inline... " >&6; } if test ${gl_cv_c_inline_effective+y} then : printf %s "(cached) " >&6 -else $as_nop - if test $ac_cv_c_inline = no; then +else case e in #( + e) if test $ac_cv_c_inline = no; then gl_cv_c_inline_effective=no else cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -28353,12 +32068,14 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_c_inline_effective=yes -else $as_nop - gl_cv_c_inline_effective=no +else case e in #( + e) gl_cv_c_inline_effective=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_c_inline_effective" >&5 printf "%s\n" "$gl_cv_c_inline_effective" >&6; } @@ -28390,29 +32107,42 @@ printf "%s\n" "#define HAVE_INLINE 1" >>confdefs.h + if test $ac_cv_func_isblank = no; then HAVE_ISBLANK=0 fi - if test $HAVE_ISBLANK = 0; then + if test $HAVE_ISBLANK = 0; then + GL_COND_OBJ_ISBLANK_TRUE= + GL_COND_OBJ_ISBLANK_FALSE='#' +else + GL_COND_OBJ_ISBLANK_TRUE='#' + GL_COND_OBJ_ISBLANK_FALSE= +fi +: + if test -z "${GL_COND_OBJ_ISBLANK_TRUE}" && test -z "${GL_COND_OBJ_ISBLANK_FALSE}"; then + GL_COND_OBJ_ISBLANK_TRUE='#' + GL_COND_OBJ_ISBLANK_FALSE='#' + fi +printf "%s\n" "#define GNULIB_ISBLANK 1" >>confdefs.h - gl_LIBOBJS="$gl_LIBOBJS isblank.$ac_objext" - fi -printf "%s\n" "#define GNULIB_ISBLANK 1" >>confdefs.h + GL_GNULIB_ISBLANK=1 + + @@ -28420,14 +32150,72 @@ printf "%s\n" "#define GNULIB_ISBLANK 1" >>confdefs.h - GL_GNULIB_ISBLANK=1 + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for iswblank" >&5 +printf %s "checking for iswblank... " >&6; } +if test ${gl_cv_onwards_func_iswblank+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + exec 9>&6 6>/dev/null + + case "$host_os" in + + linux*-android*) + ac_fn_check_decl "$LINENO" "iswblank" "ac_cv_have_decl_iswblank" "#include +" "$ac_c_undeclared_builtin_options" "CFLAGS" +if test "x$ac_cv_have_decl_iswblank" = xyes +then : + +fi + if test $ac_cv_have_decl_iswblank = yes; then + ac_fn_c_check_func "$LINENO" "iswblank" "ac_cv_func_iswblank" +if test "x$ac_cv_func_iswblank" = xyes +then : + +fi + + if test $ac_cv_func_iswblank = yes; then + gl_cv_onwards_func_iswblank=yes + else + gl_cv_onwards_func_iswblank='future OS version' + fi + else + gl_cv_onwards_func_iswblank='future OS version' + fi + ;; + *) + ac_fn_c_check_func "$LINENO" "iswblank" "ac_cv_func_iswblank" +if test "x$ac_cv_func_iswblank" = xyes +then : +fi + + gl_cv_onwards_func_iswblank=$ac_cv_func_iswblank + ;; + esac + + exec 6>&9 9>&- + + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_onwards_func_iswblank" >&5 +printf "%s\n" "$gl_cv_onwards_func_iswblank" >&6; } + + case "$gl_cv_onwards_func_iswblank" in + future*) ac_cv_func_iswblank=no ;; + *) ac_cv_func_iswblank=$gl_cv_onwards_func_iswblank ;; + esac + if test $ac_cv_func_iswblank = yes; then +printf "%s\n" "#define HAVE_ISWBLANK 1" >>confdefs.h + fi ac_fn_check_decl "$LINENO" "iswblank" "ac_cv_have_decl_iswblank" " @@ -28438,14 +32226,19 @@ printf "%s\n" "#define GNULIB_ISBLANK 1" >>confdefs.h if test "x$ac_cv_have_decl_iswblank" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_ISWBLANK $ac_have_decl" >>confdefs.h if test $ac_cv_func_iswblank = no; then HAVE_ISWBLANK=0 - if test $ac_cv_have_decl_iswblank = yes; then + if test $ac_cv_have_decl_iswblank = yes \ + || case "$gl_cv_onwards_func_iswblank" in \ + future*) true ;; \ + *) false ;; \ + esac; then REPLACE_ISWBLANK=1 fi fi @@ -28458,21 +32251,18 @@ printf "%s\n" "#define HAVE_DECL_ISWBLANK $ac_have_decl" >>confdefs.h fi - if test $HAVE_ISWCNTRL = 0 || test $REPLACE_ISWCNTRL = 1; then - : - else - if test $HAVE_ISWBLANK = 0 || test $REPLACE_ISWBLANK = 1; then - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS iswblank.$ac_objext" - - fi + if ! { test $HAVE_ISWCNTRL = 0 || test $REPLACE_ISWCNTRL = 1; } && { test $HAVE_ISWBLANK = 0 || test $REPLACE_ISWBLANK = 1; }; then + GL_COND_OBJ_ISWBLANK_TRUE= + GL_COND_OBJ_ISWBLANK_FALSE='#' +else + GL_COND_OBJ_ISWBLANK_TRUE='#' + GL_COND_OBJ_ISWBLANK_FALSE= +fi +: + if test -z "${GL_COND_OBJ_ISWBLANK_TRUE}" && test -z "${GL_COND_OBJ_ISWBLANK_FALSE}"; then + GL_COND_OBJ_ISWBLANK_TRUE='#' + GL_COND_OBJ_ISWBLANK_FALSE='#' fi @@ -28483,6 +32273,7 @@ printf "%s\n" "#define HAVE_DECL_ISWBLANK $ac_have_decl" >>confdefs.h + GL_GNULIB_ISWBLANK=1 @@ -28509,8 +32300,8 @@ printf %s "checking whether iswdigit is ISO C compliant... " >&6; } if test ${gl_cv_func_iswdigit_works+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) case "$host_os" in # Guess no on FreeBSD, NetBSD, Solaris, native Windows. freebsd* | dragonfly* | netbsd* | solaris* | mingw*) @@ -28522,8 +32313,8 @@ else $as_nop if test "$cross_compiling" = yes then : : -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -28598,15 +32389,18 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_iswdigit_works=yes -else $as_nop - gl_cv_func_iswdigit_works=no +else case e in #( + e) gl_cv_func_iswdigit_works=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_iswdigit_works" >&5 printf "%s\n" "$gl_cv_func_iswdigit_works" >&6; } @@ -28616,21 +32410,18 @@ printf "%s\n" "$gl_cv_func_iswdigit_works" >&6; } esac fi - if test $HAVE_ISWCNTRL = 0 || test $REPLACE_ISWCNTRL = 1; then - : - else - if test $REPLACE_ISWDIGIT = 1; then - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS iswdigit.$ac_objext" - - fi + if ! { test $HAVE_ISWCNTRL = 0 || test $REPLACE_ISWCNTRL = 1; } && test $REPLACE_ISWDIGIT = 1; then + GL_COND_OBJ_ISWDIGIT_TRUE= + GL_COND_OBJ_ISWDIGIT_FALSE='#' +else + GL_COND_OBJ_ISWDIGIT_TRUE='#' + GL_COND_OBJ_ISWDIGIT_FALSE= +fi +: + if test -z "${GL_COND_OBJ_ISWDIGIT_TRUE}" && test -z "${GL_COND_OBJ_ISWDIGIT_FALSE}"; then + GL_COND_OBJ_ISWDIGIT_TRUE='#' + GL_COND_OBJ_ISWDIGIT_FALSE='#' fi @@ -28641,6 +32432,7 @@ printf "%s\n" "$gl_cv_func_iswdigit_works" >&6; } + GL_GNULIB_ISWDIGIT=1 @@ -28666,8 +32458,8 @@ printf %s "checking whether iswxdigit is ISO C compliant... " >&6; } if test ${gl_cv_func_iswxdigit_works+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) case "$host_os" in # Guess no on FreeBSD, NetBSD, Solaris, native Windows. freebsd* | dragonfly* | netbsd* | solaris* | mingw*) @@ -28679,8 +32471,8 @@ else $as_nop if test "$cross_compiling" = yes then : : -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -28747,15 +32539,18 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_iswxdigit_works=yes -else $as_nop - gl_cv_func_iswxdigit_works=no +else case e in #( + e) gl_cv_func_iswxdigit_works=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_iswxdigit_works" >&5 printf "%s\n" "$gl_cv_func_iswxdigit_works" >&6; } @@ -28765,21 +32560,18 @@ printf "%s\n" "$gl_cv_func_iswxdigit_works" >&6; } esac fi - if test $HAVE_ISWCNTRL = 0 || test $REPLACE_ISWCNTRL = 1; then - : - else - if test $REPLACE_ISWXDIGIT = 1; then - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS iswxdigit.$ac_objext" - - fi + if ! { test $HAVE_ISWCNTRL = 0 || test $REPLACE_ISWCNTRL = 1; } && test $REPLACE_ISWXDIGIT = 1; then + GL_COND_OBJ_ISWXDIGIT_TRUE= + GL_COND_OBJ_ISWXDIGIT_FALSE='#' +else + GL_COND_OBJ_ISWXDIGIT_TRUE='#' + GL_COND_OBJ_ISWXDIGIT_FALSE= +fi +: + if test -z "${GL_COND_OBJ_ISWXDIGIT_TRUE}" && test -z "${GL_COND_OBJ_ISWXDIGIT_FALSE}"; then + GL_COND_OBJ_ISWXDIGIT_TRUE='#' + GL_COND_OBJ_ISWXDIGIT_FALSE='#' fi @@ -28790,6 +32582,7 @@ printf "%s\n" "$gl_cv_func_iswxdigit_works" >&6; } + GL_GNULIB_ISWXDIGIT=1 @@ -28808,13 +32601,14 @@ printf "%s\n" "#define GNULIB_TEST_ISWXDIGIT 1" >>confdefs.h + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports the __inline keyword" >&5 printf %s "checking whether the compiler supports the __inline keyword... " >&6; } if test ${gl_cv_c___inline+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ typedef int foo_t; static __inline foo_t foo (void) { return 0; } @@ -28829,10 +32623,12 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_c___inline=yes -else $as_nop - gl_cv_c___inline=no +else case e in #( + e) gl_cv_c___inline=no ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_c___inline" >&5 printf "%s\n" "$gl_cv_c___inline" >&6; } @@ -28846,6 +32642,39 @@ printf "%s\n" "#define HAVE___INLINE 1" >>confdefs.h + + case "$GL_GENERATE_LIMITS_H" in + false) LIMITS_H='' ;; + true) + if test -z "$LIMITS_H"; then + LIMITS_H="${gl_source_base_prefix}limits.h" + fi + ;; + *) echo "*** GL_GENERATE_LIMITS_H is not set correctly" 1>&2; exit 1 ;; + esac + + + if $GL_GENERATE_LIMITS_H; then + GL_GENERATE_LIMITS_H_TRUE= + GL_GENERATE_LIMITS_H_FALSE='#' +else + GL_GENERATE_LIMITS_H_TRUE='#' + GL_GENERATE_LIMITS_H_FALSE= +fi +: + if test -z "${GL_GENERATE_LIMITS_H_TRUE}" && test -z "${GL_GENERATE_LIMITS_H_FALSE}"; then + GL_GENERATE_LIMITS_H_TRUE='#' + GL_GENERATE_LIMITS_H_FALSE='#' + fi + + + + + + + + + LOCALCHARSET_TESTS_ENVIRONMENT= @@ -28858,20 +32687,81 @@ printf "%s\n" "#define HAVE___INLINE 1" >>confdefs.h + if test $REPLACE_STRUCT_LCONV = 1; then REPLACE_LOCALECONV=1 fi + if test $REPLACE_LOCALECONV = 0; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether localeconv works" >&5 +printf %s "checking whether localeconv works... " >&6; } +if test ${gl_cv_func_localeconv_works+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) if test "$cross_compiling" = yes +then : + case "$host_os" in + # Guess yes on glibc systems. + *-gnu* | gnu*) gl_cv_func_localeconv_works="guessing yes" ;; + # Guess yes on musl systems. + *-musl* | midipix*) gl_cv_func_localeconv_works="guessing yes" ;; + # Guess no on native Windows. + mingw*) gl_cv_func_localeconv_works="guessing no" ;; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_localeconv_works="$gl_cross_guess_normal" ;; + esac - if test $REPLACE_LOCALECONV = 1; then - - +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + #include + #include + int main () + { + struct lconv *l = localeconv (); + return l->frac_digits != CHAR_MAX && l->frac_digits < 0; + } +_ACEOF +if ac_fn_c_try_run "$LINENO" +then : + gl_cv_func_localeconv_works=yes +else case e in #( + e) gl_cv_func_localeconv_works=no ;; +esac +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac +fi + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_localeconv_works" >&5 +printf "%s\n" "$gl_cv_func_localeconv_works" >&6; } + case "$gl_cv_func_localeconv_works" in + *yes) ;; + *) REPLACE_LOCALECONV=1 ;; + esac + fi + if test $REPLACE_LOCALECONV = 1; then + GL_COND_OBJ_LOCALECONV_TRUE= + GL_COND_OBJ_LOCALECONV_FALSE='#' +else + GL_COND_OBJ_LOCALECONV_TRUE='#' + GL_COND_OBJ_LOCALECONV_FALSE= +fi +: + if test -z "${GL_COND_OBJ_LOCALECONV_TRUE}" && test -z "${GL_COND_OBJ_LOCALECONV_FALSE}"; then + GL_COND_OBJ_LOCALECONV_TRUE='#' + GL_COND_OBJ_LOCALECONV_FALSE='#' + fi - gl_LIBOBJS="$gl_LIBOBJS localeconv.$ac_objext" + if test -z "$GL_COND_OBJ_LOCALECONV_TRUE"; then : ac_fn_c_check_member "$LINENO" "struct lconv" "decimal_point" "ac_cv_member_struct_lconv_decimal_point" "#include @@ -28884,8 +32774,19 @@ printf "%s\n" "#define HAVE_STRUCT_LCONV_DECIMAL_POINT 1" >>confdefs.h fi + ac_fn_c_check_member "$LINENO" "struct lconv" "int_p_cs_precedes" "ac_cv_member_struct_lconv_int_p_cs_precedes" "#include +" +if test "x$ac_cv_member_struct_lconv_int_p_cs_precedes" = xyes +then : - fi +printf "%s\n" "#define HAVE_STRUCT_LCONV_INT_P_CS_PRECEDES 1" >>confdefs.h + + +fi + + + +fi @@ -28929,32 +32830,32 @@ printf %s "checking whether pthread_rwlock_rdlock prefers a writer to a reader.. if test ${gl_cv_pthread_rwlock_rdlock_prefer_writer+y} then : printf %s "(cached) " >&6 -else $as_nop - save_LIBS="$LIBS" +else case e in #( + e) save_LIBS="$LIBS" LIBS="$LIBS $LIBMULTITHREAD" if test "$cross_compiling" = yes then : case "$host_os" in - # Guess no on glibc systems. - *-gnu* | gnu*) gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing no" ;; - # Guess no on musl systems. - *-musl*) gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing no" ;; - # Guess no on bionic systems. - *-android*) gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing no" ;; - # Guess yes on native Windows with the mingw-w64 winpthreads library. - # Guess no on native Windows with the gnulib windows-rwlock module. - mingw*) if test "$gl_use_threads" = yes || test "$gl_use_threads" = posix; then - gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing yes" - else - gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing no" - fi - ;; - # If we don't know, obey --enable-cross-guesses. - *) gl_cv_pthread_rwlock_rdlock_prefer_writer="$gl_cross_guess_normal" ;; + # Guess no on glibc systems. + *-gnu* | gnu*) gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing no" ;; + # Guess no on musl systems. + *-musl* | midipix*) gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing no" ;; + # Guess no on bionic systems. + *-android*) gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing no" ;; + # Guess yes on native Windows with the mingw-w64 winpthreads library. + # Guess no on native Windows with the gnulib windows-rwlock module. + mingw*) if test "$gl_use_threads" = yes || test "$gl_use_threads" = posix; then + gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing yes" + else + gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing no" + fi + ;; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_pthread_rwlock_rdlock_prefer_writer="$gl_cross_guess_normal" ;; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -29072,15 +32973,18 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_pthread_rwlock_rdlock_prefer_writer=yes -else $as_nop - gl_cv_pthread_rwlock_rdlock_prefer_writer=no +else case e in #( + e) gl_cv_pthread_rwlock_rdlock_prefer_writer=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi LIBS="$save_LIBS" - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_pthread_rwlock_rdlock_prefer_writer" >&5 printf "%s\n" "$gl_cv_pthread_rwlock_rdlock_prefer_writer" >&6; } @@ -29146,19 +33050,25 @@ printf "%s\n" "#define GNULIB_LOCK 1" >>confdefs.h HAVE_LSTAT=0 fi - if test $REPLACE_LSTAT = 1; then - - - - - - + if test $REPLACE_LSTAT = 1; then + GL_COND_OBJ_LSTAT_TRUE= + GL_COND_OBJ_LSTAT_FALSE='#' +else + GL_COND_OBJ_LSTAT_TRUE='#' + GL_COND_OBJ_LSTAT_FALSE= +fi +: + if test -z "${GL_COND_OBJ_LSTAT_TRUE}" && test -z "${GL_COND_OBJ_LSTAT_FALSE}"; then + GL_COND_OBJ_LSTAT_TRUE='#' + GL_COND_OBJ_LSTAT_FALSE='#' + fi - gl_LIBOBJS="$gl_LIBOBJS lstat.$ac_objext" + if test -z "$GL_COND_OBJ_LSTAT_TRUE"; then : : - fi + +fi @@ -29184,28 +33094,29 @@ printf "%s\n" "#define GNULIB_TEST_LSTAT 1" >>confdefs.h - if test $REPLACE_MALLOC = 0; then + REPLACE_MALLOC_FOR_MALLOC_GNU="$REPLACE_MALLOC_FOR_MALLOC_POSIX" + if test $REPLACE_MALLOC_FOR_MALLOC_GNU = 0; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether malloc (0) returns nonnull" >&5 printf %s "checking whether malloc (0) returns nonnull... " >&6; } if test ${ac_cv_func_malloc_0_nonnull+y} then : printf %s "(cached) " >&6 -else $as_nop - if test "$cross_compiling" = yes +else case e in #( + e) if test "$cross_compiling" = yes then : case "$host_os" in # Guess yes on platforms where we know the result. *-gnu* | freebsd* | netbsd* | openbsd* | bitrig* \ - | gnu* | *-musl* | midnightbsd* \ + | gnu* | *-musl* | midipix* | midnightbsd* \ | hpux* | solaris* | cygwin* | mingw* | msys* ) ac_cv_func_malloc_0_nonnull="guessing yes" ;; # If we don't know, obey --enable-cross-guesses. *) ac_cv_func_malloc_0_nonnull="$gl_cross_guess_normal" ;; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -29224,14 +33135,17 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : ac_cv_func_malloc_0_nonnull=yes -else $as_nop - ac_cv_func_malloc_0_nonnull=no +else case e in #( + e) ac_cv_func_malloc_0_nonnull=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_malloc_0_nonnull" >&5 printf "%s\n" "$ac_cv_func_malloc_0_nonnull" >&6; } @@ -29239,12 +33153,12 @@ printf "%s\n" "$ac_cv_func_malloc_0_nonnull" >&6; } *yes) : ;; #( *) : - REPLACE_MALLOC=1 ;; + REPLACE_MALLOC_FOR_MALLOC_GNU=1 ;; esac fi - if test $REPLACE_MALLOC = 1; then + if test $REPLACE_MALLOC_FOR_MALLOC_GNU = 1; then @@ -29257,7 +33171,6 @@ esac fi - if test $REPLACE_MALLOC = 1; then @@ -29266,230 +33179,64 @@ esac - gl_LIBOBJS="$gl_LIBOBJS malloc.$ac_objext" + GL_GNULIB_MALLOC_GNU=1 - fi +printf "%s\n" "#define GNULIB_TEST_MALLOC_GNU 1" >>confdefs.h + if test $REPLACE_MALLOC_FOR_MALLOC_POSIX = 1; then - GL_GNULIB_MALLOC_POSIX=1 -printf "%s\n" "#define GNULIB_TEST_MALLOC_POSIX 1" >>confdefs.h - - + gl_LIBOBJS="$gl_LIBOBJS malloc.$ac_objext" + fi - : + GL_GNULIB_MALLOC_POSIX=1 +printf "%s\n" "#define GNULIB_TEST_MALLOC_POSIX 1" >>confdefs.h - if case "$host_os" in - mingw*) true ;; - *) test $ac_cv_func_mbsinit = yes ;; - esac \ - && test $ac_cv_func_mbrtowc = yes; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc handles incomplete characters" >&5 -printf %s "checking whether mbrtowc handles incomplete characters... " >&6; } -if test ${gl_cv_func_mbrtowc_incomplete_state+y} -then : - printf %s "(cached) " >&6 -else $as_nop - case "$host_os" in - # Guess no on AIX and OSF/1. - aix* | osf*) gl_cv_func_mbrtowc_incomplete_state="guessing no" ;; - # Guess yes otherwise. - *) gl_cv_func_mbrtowc_incomplete_state="guessing yes" ;; - esac - if test $LOCALE_JA != none; then - if test "$cross_compiling" = yes -then : : -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#include -int main () -{ - if (setlocale (LC_ALL, "$LOCALE_JA") != NULL) - { - const char input[] = "B\217\253\344\217\251\316er"; /* "Büßer" */ - mbstate_t state; - wchar_t wc; - - memset (&state, '\0', sizeof (mbstate_t)); - if (mbrtowc (&wc, input + 1, 1, &state) == (size_t)(-2)) - if (mbsinit (&state)) - return 2; - } - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO" -then : - gl_cv_func_mbrtowc_incomplete_state=yes -else $as_nop - gl_cv_func_mbrtowc_incomplete_state=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - else - if test $LOCALE_FR_UTF8 != none; then - if test "$cross_compiling" = yes -then : - : -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#include -int main () -{ - if (setlocale (LC_ALL, "$LOCALE_FR_UTF8") != NULL) - { - const char input[] = "B\303\274\303\237er"; /* "Büßer" */ - mbstate_t state; - wchar_t wc; - - memset (&state, '\0', sizeof (mbstate_t)); - if (mbrtowc (&wc, input + 1, 1, &state) == (size_t)(-2)) - if (mbsinit (&state)) - return 2; - } - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO" -then : - gl_cv_func_mbrtowc_incomplete_state=yes -else $as_nop - gl_cv_func_mbrtowc_incomplete_state=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - fi - fi - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_incomplete_state" >&5 -printf "%s\n" "$gl_cv_func_mbrtowc_incomplete_state" >&6; } - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc works as well as mbtowc" >&5 -printf %s "checking whether mbrtowc works as well as mbtowc... " >&6; } -if test ${gl_cv_func_mbrtowc_sanitycheck+y} -then : - printf %s "(cached) " >&6 -else $as_nop - case "$host_os" in - # Guess no on Solaris 8. - solaris2.8) gl_cv_func_mbrtowc_sanitycheck="guessing no" ;; - # Guess yes otherwise. - *) gl_cv_func_mbrtowc_sanitycheck="guessing yes" ;; - esac - if test $LOCALE_ZH_CN != none; then - if test "$cross_compiling" = yes -then : - : -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include -#include -#include -int main () -{ - /* This fails on Solaris 8: - mbrtowc returns 2, and sets wc to 0x00F0. - mbtowc returns 4 (correct) and sets wc to 0x5EDC. */ - if (setlocale (LC_ALL, "$LOCALE_ZH_CN") != NULL) - { - char input[] = "B\250\271\201\060\211\070er"; /* "Büßer" */ - mbstate_t state; - wchar_t wc; - memset (&state, '\0', sizeof (mbstate_t)); - if (mbrtowc (&wc, input + 3, 6, &state) != 4 - && mbtowc (&wc, input + 3, 6) == 4) - return 2; - } - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO" -then : - gl_cv_func_mbrtowc_sanitycheck=yes -else $as_nop - gl_cv_func_mbrtowc_sanitycheck=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - fi - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_sanitycheck" >&5 -printf "%s\n" "$gl_cv_func_mbrtowc_sanitycheck" >&6; } - - REPLACE_MBSTATE_T=0 - case "$gl_cv_func_mbrtowc_incomplete_state" in - *yes) ;; - *) REPLACE_MBSTATE_T=1 ;; - esac - case "$gl_cv_func_mbrtowc_sanitycheck" in - *yes) ;; - *) REPLACE_MBSTATE_T=1 ;; - esac - else - REPLACE_MBSTATE_T=1 - fi @@ -29502,8 +33249,9 @@ printf "%s\n" "$gl_cv_func_mbrtowc_sanitycheck" >&6; } if test "x$ac_cv_have_decl_mbrtowc" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_MBRTOWC $ac_have_decl" >>confdefs.h @@ -29522,8 +33270,8 @@ printf %s "checking whether mbrtowc handles a NULL pwc argument... " >&6; } if test ${gl_cv_func_mbrtowc_null_arg1+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) case "$host_os" in # Guess no on Solaris. solaris*) gl_cv_func_mbrtowc_null_arg1="guessing no" ;; @@ -29534,8 +33282,8 @@ else $as_nop if test "$cross_compiling" = yes then : : -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -29574,15 +33322,18 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_mbrtowc_null_arg1=yes -else $as_nop - gl_cv_func_mbrtowc_null_arg1=no +else case e in #( + e) gl_cv_func_mbrtowc_null_arg1=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_null_arg1" >&5 printf "%s\n" "$gl_cv_func_mbrtowc_null_arg1" >&6; } @@ -29595,8 +33346,8 @@ printf %s "checking whether mbrtowc handles a NULL string argument... " >&6; } if test ${gl_cv_func_mbrtowc_null_arg2+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) case "$host_os" in # Guess no on OSF/1. osf*) gl_cv_func_mbrtowc_null_arg2="guessing no" ;; @@ -29607,8 +33358,8 @@ else $as_nop if test "$cross_compiling" = yes then : : -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -29635,15 +33386,18 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_mbrtowc_null_arg2=yes -else $as_nop - gl_cv_func_mbrtowc_null_arg2=no +else case e in #( + e) gl_cv_func_mbrtowc_null_arg2=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_null_arg2" >&5 printf "%s\n" "$gl_cv_func_mbrtowc_null_arg2" >&6; } @@ -29658,8 +33412,8 @@ printf %s "checking whether mbrtowc has a correct return value... " >&6; } if test ${gl_cv_func_mbrtowc_retval+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) case "$host_os" in # Guess no on HP-UX, Solaris, native Windows. hpux* | solaris* | mingw*) gl_cv_func_mbrtowc_retval="guessing no" ;; @@ -29671,8 +33425,8 @@ else $as_nop if test "$cross_compiling" = yes then : : -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -29766,18 +33520,21 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_mbrtowc_retval=yes -else $as_nop - if test $? != 77; then +else case e in #( + e) if test $? != 77; then gl_cv_func_mbrtowc_retval=no fi - + ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_retval" >&5 printf "%s\n" "$gl_cv_func_mbrtowc_retval" >&6; } @@ -29790,8 +33547,8 @@ printf %s "checking whether mbrtowc returns 0 when parsing a NUL character... " if test ${gl_cv_func_mbrtowc_nul_retval+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) case "$host_os" in # Guess no on Solaris 8 and 9. solaris2.[89]) gl_cv_func_mbrtowc_nul_retval="guessing no" ;; @@ -29802,8 +33559,8 @@ else $as_nop if test "$cross_compiling" = yes then : : -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -29827,15 +33584,18 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_mbrtowc_nul_retval=yes -else $as_nop - gl_cv_func_mbrtowc_nul_retval=no +else case e in #( + e) gl_cv_func_mbrtowc_nul_retval=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_nul_retval" >&5 printf "%s\n" "$gl_cv_func_mbrtowc_nul_retval" >&6; } @@ -29847,8 +33607,8 @@ printf %s "checking whether mbrtowc stores incomplete characters... " >&6; } if test ${gl_cv_func_mbrtowc_stores_incomplete+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) case "$host_os" in # Guess yes on native Windows. mingw*) gl_cv_func_mbrtowc_stores_incomplete="guessing yes" ;; @@ -29859,8 +33619,8 @@ else $as_nop if test "$cross_compiling" = yes then : : -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -29915,11 +33675,13 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_mbrtowc_stores_incomplete=no -else $as_nop - gl_cv_func_mbrtowc_stores_incomplete=yes +else case e in #( + e) gl_cv_func_mbrtowc_stores_incomplete=yes ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi ;; @@ -29929,8 +33691,8 @@ fi if test "$cross_compiling" = yes then : : -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -29954,17 +33716,20 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_mbrtowc_stores_incomplete=no -else $as_nop - gl_cv_func_mbrtowc_stores_incomplete=yes +else case e in #( + e) gl_cv_func_mbrtowc_stores_incomplete=yes ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi fi ;; esac - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_stores_incomplete" >&5 printf "%s\n" "$gl_cv_func_mbrtowc_stores_incomplete" >&6; } @@ -29976,8 +33741,8 @@ printf %s "checking whether mbrtowc works on empty input... " >&6; } if test ${gl_cv_func_mbrtowc_empty_input+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) case "$host_os" in # Guess no on AIX and glibc systems. aix* | *-gnu* | gnu*) gl_cv_func_mbrtowc_empty_input="guessing no" ;; @@ -29988,8 +33753,8 @@ else $as_nop if test "$cross_compiling" = yes then : : -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -30004,14 +33769,17 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_mbrtowc_empty_input=yes -else $as_nop - gl_cv_func_mbrtowc_empty_input=no +else case e in #( + e) gl_cv_func_mbrtowc_empty_input=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_empty_input" >&5 printf "%s\n" "$gl_cv_func_mbrtowc_empty_input" >&6; } @@ -30022,8 +33790,8 @@ printf %s "checking whether the C locale is free of encoding errors... " >&6; } if test ${gl_cv_func_mbrtowc_C_locale_sans_EILSEQ+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) gl_cv_func_mbrtowc_C_locale_sans_EILSEQ="$gl_cross_guess_normal" if test "$cross_compiling" = yes @@ -30033,8 +33801,8 @@ then : mingw*) gl_cv_func_mbrtowc_C_locale_sans_EILSEQ="guessing yes" ;; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include @@ -30066,14 +33834,17 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_mbrtowc_C_locale_sans_EILSEQ=yes -else $as_nop - gl_cv_func_mbrtowc_C_locale_sans_EILSEQ=no +else case e in #( + e) gl_cv_func_mbrtowc_C_locale_sans_EILSEQ=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_C_locale_sans_EILSEQ" >&5 printf "%s\n" "$gl_cv_func_mbrtowc_C_locale_sans_EILSEQ" >&6; } @@ -30138,7 +33909,7 @@ printf "%s\n" "#define MBRTOWC_IN_C_LOCALE_MAYBE_EILSEQ 1" >>confdefs.h fi if test $REPLACE_MBSTATE_T = 1; then case "$host_os" in - mingw*) LIB_MBRTOWC= ;; + mingw*) MBRTOWC_LIB= ;; *) @@ -30147,9 +33918,14 @@ printf %s "checking whether imported symbols can be declared weak... " >&6; } if test ${gl_cv_have_weak+y} then : printf %s "(cached) " >&6 -else $as_nop - gl_cv_have_weak=no - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) case "$host_os" in + cygwin* | mingw*) + gl_cv_have_weak="guessing no" + ;; + *) + gl_cv_have_weak=no + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ extern void xyzzy (); #pragma weak xyzzy @@ -30167,28 +33943,29 @@ then : fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext - if test $gl_cv_have_weak = maybe; then - if test "$cross_compiling" = yes + if test $gl_cv_have_weak = maybe; then + if test "$cross_compiling" = yes then : - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifdef __ELF__ - Extensible Linking Format - #endif + Extensible Linking Format + #endif _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "Extensible Linking Format" >/dev/null 2>&1 + $EGREP_TRADITIONAL "Extensible Linking Format" >/dev/null 2>&1 then : gl_cv_have_weak="guessing yes" -else $as_nop - gl_cv_have_weak="guessing no" +else case e in #( + e) gl_cv_have_weak="guessing no" ;; +esac fi rm -rf conftest* -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -30201,14 +33978,18 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_have_weak=yes -else $as_nop - gl_cv_have_weak=no +else case e in #( + e) gl_cv_have_weak=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - fi + fi + ;; + esac case " $LDFLAGS " in *" -static "*) gl_cv_have_weak=no ;; esac @@ -30233,7 +34014,8 @@ EOF esac ;; esac - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_have_weak" >&5 printf "%s\n" "$gl_cv_have_weak" >&6; } @@ -30246,26 +34028,33 @@ printf "%s\n" "#define HAVE_WEAK_SYMBOLS 1" >>confdefs.h esac case "$gl_cv_have_weak" in - *yes) LIB_MBRTOWC= ;; - *) LIB_MBRTOWC="$LIBPTHREAD" ;; + *yes) MBRTOWC_LIB= ;; + *) MBRTOWC_LIB="$LIBPTHREAD" ;; esac ;; esac else - LIB_MBRTOWC= + MBRTOWC_LIB= fi - - if test $HAVE_MBRTOWC = 0 || test $REPLACE_MBRTOWC = 1; then - - - - + LIB_MBRTOWC="$MBRTOWC_LIB" + if test $HAVE_MBRTOWC = 0 || test $REPLACE_MBRTOWC = 1; then + GL_COND_OBJ_MBRTOWC_TRUE= + GL_COND_OBJ_MBRTOWC_FALSE='#' +else + GL_COND_OBJ_MBRTOWC_TRUE='#' + GL_COND_OBJ_MBRTOWC_FALSE= +fi +: + if test -z "${GL_COND_OBJ_MBRTOWC_TRUE}" && test -z "${GL_COND_OBJ_MBRTOWC_FALSE}"; then + GL_COND_OBJ_MBRTOWC_TRUE='#' + GL_COND_OBJ_MBRTOWC_FALSE='#' + fi - gl_LIBOBJS="$gl_LIBOBJS mbrtowc.$ac_objext" + if test -z "$GL_COND_OBJ_MBRTOWC_TRUE"; then : if test $REPLACE_MBSTATE_T = 1; then @@ -30299,8 +34088,8 @@ printf %s "checking whether the -Werror option is usable... " >&6; } if test ${gl_cv_cc_vis_werror+y} then : printf %s "(cached) " >&6 -else $as_nop - gl_save_CFLAGS="$CFLAGS" +else case e in #( + e) gl_save_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS -Werror" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -30316,12 +34105,14 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_cc_vis_werror=yes -else $as_nop - gl_cv_cc_vis_werror=no +else case e in #( + e) gl_cv_cc_vis_werror=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext CFLAGS="$gl_save_CFLAGS" - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_vis_werror" >&5 printf "%s\n" "$gl_cv_cc_vis_werror" >&6; } @@ -30330,8 +34121,8 @@ printf %s "checking for simple visibility declarations... " >&6; } if test ${gl_cv_cc_visibility+y} then : printf %s "(cached) " >&6 -else $as_nop - gl_save_CFLAGS="$CFLAGS" +else case e in #( + e) gl_save_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS -fvisibility=hidden" if test $gl_cv_cc_vis_werror = yes; then CFLAGS="$CFLAGS -Werror" @@ -30360,12 +34151,14 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_cc_visibility=yes -else $as_nop - gl_cv_cc_visibility=no +else case e in #( + e) gl_cv_cc_visibility=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext CFLAGS="$gl_save_CFLAGS" - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_visibility" >&5 printf "%s\n" "$gl_cv_cc_visibility" >&6; } @@ -30386,28 +34179,8 @@ printf "%s\n" "#define HAVE_VISIBILITY $HAVE_VISIBILITY" >>confdefs.h : - fi - - - - - - - - - - GL_GNULIB_MBRTOWC=1 - - - - - -printf "%s\n" "#define GNULIB_TEST_MBRTOWC 1" >>confdefs.h - - - - +fi @@ -30415,20 +34188,20 @@ printf "%s\n" "#define GNULIB_TEST_MBRTOWC 1" >>confdefs.h - GL_GNULIB_MBSCASECMP=1 -printf "%s\n" "#define GNULIB_TEST_MBSCASECMP 1" >>confdefs.h + GL_GNULIB_MBRTOWC=1 +printf "%s\n" "#define GNULIB_TEST_MBRTOWC 1" >>confdefs.h @@ -30437,185 +34210,30 @@ printf "%s\n" "#define GNULIB_TEST_MBSCASECMP 1" >>confdefs.h - if case "$host_os" in - mingw*) true ;; - *) test $ac_cv_func_mbsinit = yes ;; - esac \ - && test $ac_cv_func_mbrtowc = yes; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc handles incomplete characters" >&5 -printf %s "checking whether mbrtowc handles incomplete characters... " >&6; } -if test ${gl_cv_func_mbrtowc_incomplete_state+y} -then : - printf %s "(cached) " >&6 -else $as_nop - case "$host_os" in - # Guess no on AIX and OSF/1. - aix* | osf*) gl_cv_func_mbrtowc_incomplete_state="guessing no" ;; - # Guess yes otherwise. - *) gl_cv_func_mbrtowc_incomplete_state="guessing yes" ;; - esac - if test $LOCALE_JA != none; then - if test "$cross_compiling" = yes -then : - : -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include -#include -int main () -{ - if (setlocale (LC_ALL, "$LOCALE_JA") != NULL) - { - const char input[] = "B\217\253\344\217\251\316er"; /* "Büßer" */ - mbstate_t state; - wchar_t wc; - memset (&state, '\0', sizeof (mbstate_t)); - if (mbrtowc (&wc, input + 1, 1, &state) == (size_t)(-2)) - if (mbsinit (&state)) - return 2; - } - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO" -then : - gl_cv_func_mbrtowc_incomplete_state=yes -else $as_nop - gl_cv_func_mbrtowc_incomplete_state=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - else - if test $LOCALE_FR_UTF8 != none; then - if test "$cross_compiling" = yes -then : - : -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include -#include -int main () -{ - if (setlocale (LC_ALL, "$LOCALE_FR_UTF8") != NULL) - { - const char input[] = "B\303\274\303\237er"; /* "Büßer" */ - mbstate_t state; - wchar_t wc; + GL_GNULIB_MBSCASECMP=1 - memset (&state, '\0', sizeof (mbstate_t)); - if (mbrtowc (&wc, input + 1, 1, &state) == (size_t)(-2)) - if (mbsinit (&state)) - return 2; - } - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO" -then : - gl_cv_func_mbrtowc_incomplete_state=yes -else $as_nop - gl_cv_func_mbrtowc_incomplete_state=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - fi - fi -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_incomplete_state" >&5 -printf "%s\n" "$gl_cv_func_mbrtowc_incomplete_state" >&6; } +printf "%s\n" "#define GNULIB_TEST_MBSCASECMP 1" >>confdefs.h - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc works as well as mbtowc" >&5 -printf %s "checking whether mbrtowc works as well as mbtowc... " >&6; } -if test ${gl_cv_func_mbrtowc_sanitycheck+y} -then : - printf %s "(cached) " >&6 -else $as_nop - case "$host_os" in - # Guess no on Solaris 8. - solaris2.8) gl_cv_func_mbrtowc_sanitycheck="guessing no" ;; - # Guess yes otherwise. - *) gl_cv_func_mbrtowc_sanitycheck="guessing yes" ;; - esac - if test $LOCALE_ZH_CN != none; then - if test "$cross_compiling" = yes -then : - : -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include -#include -#include -int main () -{ - /* This fails on Solaris 8: - mbrtowc returns 2, and sets wc to 0x00F0. - mbtowc returns 4 (correct) and sets wc to 0x5EDC. */ - if (setlocale (LC_ALL, "$LOCALE_ZH_CN") != NULL) - { - char input[] = "B\250\271\201\060\211\070er"; /* "Büßer" */ - mbstate_t state; - wchar_t wc; - memset (&state, '\0', sizeof (mbstate_t)); - if (mbrtowc (&wc, input + 3, 6, &state) != 4 - && mbtowc (&wc, input + 3, 6) == 4) - return 2; - } - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO" -then : - gl_cv_func_mbrtowc_sanitycheck=yes -else $as_nop - gl_cv_func_mbrtowc_sanitycheck=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - fi -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_sanitycheck" >&5 -printf "%s\n" "$gl_cv_func_mbrtowc_sanitycheck" >&6; } - REPLACE_MBSTATE_T=0 - case "$gl_cv_func_mbrtowc_incomplete_state" in - *yes) ;; - *) REPLACE_MBSTATE_T=1 ;; - esac - case "$gl_cv_func_mbrtowc_sanitycheck" in - *yes) ;; - *) REPLACE_MBSTATE_T=1 ;; - esac - else - REPLACE_MBSTATE_T=1 - fi @@ -30628,8 +34246,9 @@ printf "%s\n" "$gl_cv_func_mbrtowc_sanitycheck" >&6; } if test "x$ac_cv_have_decl_mbsinit" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_MBSINIT $ac_have_decl" >>confdefs.h @@ -30646,21 +34265,32 @@ printf "%s\n" "#define HAVE_DECL_MBSINIT $ac_have_decl" >>confdefs.h fi fi - if test $HAVE_MBSINIT = 0 || test $REPLACE_MBSINIT = 1; then + if test $HAVE_MBSINIT = 0 || test $REPLACE_MBSINIT = 1; then + GL_COND_OBJ_MBSINIT_TRUE= + GL_COND_OBJ_MBSINIT_FALSE='#' +else + GL_COND_OBJ_MBSINIT_TRUE='#' + GL_COND_OBJ_MBSINIT_FALSE= +fi +: + if test -z "${GL_COND_OBJ_MBSINIT_TRUE}" && test -z "${GL_COND_OBJ_MBSINIT_FALSE}"; then + GL_COND_OBJ_MBSINIT_TRUE='#' + GL_COND_OBJ_MBSINIT_FALSE='#' + fi + if test -z "$GL_COND_OBJ_MBSINIT_TRUE"; then : + : +fi - gl_LIBOBJS="$gl_LIBOBJS mbsinit.$ac_objext" - : - fi @@ -30698,206 +34328,25 @@ printf "%s\n" "#define GNULIB_TEST_MBSINIT 1" >>confdefs.h - GL_GNULIB_MBSLEN=1 - - - - - -printf "%s\n" "#define GNULIB_TEST_MBSLEN 1" >>confdefs.h - - - - - - - - - - - - - - - if case "$host_os" in - mingw*) true ;; - *) test $ac_cv_func_mbsinit = yes ;; - esac \ - && test $ac_cv_func_mbrtowc = yes; then - - - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc handles incomplete characters" >&5 -printf %s "checking whether mbrtowc handles incomplete characters... " >&6; } -if test ${gl_cv_func_mbrtowc_incomplete_state+y} -then : - printf %s "(cached) " >&6 -else $as_nop - - case "$host_os" in - # Guess no on AIX and OSF/1. - aix* | osf*) gl_cv_func_mbrtowc_incomplete_state="guessing no" ;; - # Guess yes otherwise. - *) gl_cv_func_mbrtowc_incomplete_state="guessing yes" ;; - esac - if test $LOCALE_JA != none; then - if test "$cross_compiling" = yes -then : - : -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include -#include -int main () -{ - if (setlocale (LC_ALL, "$LOCALE_JA") != NULL) - { - const char input[] = "B\217\253\344\217\251\316er"; /* "Büßer" */ - mbstate_t state; - wchar_t wc; - memset (&state, '\0', sizeof (mbstate_t)); - if (mbrtowc (&wc, input + 1, 1, &state) == (size_t)(-2)) - if (mbsinit (&state)) - return 2; - } - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO" -then : - gl_cv_func_mbrtowc_incomplete_state=yes -else $as_nop - gl_cv_func_mbrtowc_incomplete_state=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - else - if test $LOCALE_FR_UTF8 != none; then - if test "$cross_compiling" = yes -then : - : -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include -#include -int main () -{ - if (setlocale (LC_ALL, "$LOCALE_FR_UTF8") != NULL) - { - const char input[] = "B\303\274\303\237er"; /* "Büßer" */ - mbstate_t state; - wchar_t wc; - memset (&state, '\0', sizeof (mbstate_t)); - if (mbrtowc (&wc, input + 1, 1, &state) == (size_t)(-2)) - if (mbsinit (&state)) - return 2; - } - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO" -then : - gl_cv_func_mbrtowc_incomplete_state=yes -else $as_nop - gl_cv_func_mbrtowc_incomplete_state=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi + GL_GNULIB_MBSLEN=1 - fi - fi -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_incomplete_state" >&5 -printf "%s\n" "$gl_cv_func_mbrtowc_incomplete_state" >&6; } +printf "%s\n" "#define GNULIB_TEST_MBSLEN 1" >>confdefs.h - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc works as well as mbtowc" >&5 -printf %s "checking whether mbrtowc works as well as mbtowc... " >&6; } -if test ${gl_cv_func_mbrtowc_sanitycheck+y} -then : - printf %s "(cached) " >&6 -else $as_nop - case "$host_os" in - # Guess no on Solaris 8. - solaris2.8) gl_cv_func_mbrtowc_sanitycheck="guessing no" ;; - # Guess yes otherwise. - *) gl_cv_func_mbrtowc_sanitycheck="guessing yes" ;; - esac - if test $LOCALE_ZH_CN != none; then - if test "$cross_compiling" = yes -then : - : -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include -#include -#include -int main () -{ - /* This fails on Solaris 8: - mbrtowc returns 2, and sets wc to 0x00F0. - mbtowc returns 4 (correct) and sets wc to 0x5EDC. */ - if (setlocale (LC_ALL, "$LOCALE_ZH_CN") != NULL) - { - char input[] = "B\250\271\201\060\211\070er"; /* "Büßer" */ - mbstate_t state; - wchar_t wc; - memset (&state, '\0', sizeof (mbstate_t)); - if (mbrtowc (&wc, input + 3, 6, &state) != 4 - && mbtowc (&wc, input + 3, 6) == 4) - return 2; - } - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO" -then : - gl_cv_func_mbrtowc_sanitycheck=yes -else $as_nop - gl_cv_func_mbrtowc_sanitycheck=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - fi -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_sanitycheck" >&5 -printf "%s\n" "$gl_cv_func_mbrtowc_sanitycheck" >&6; } - REPLACE_MBSTATE_T=0 - case "$gl_cv_func_mbrtowc_incomplete_state" in - *yes) ;; - *) REPLACE_MBSTATE_T=1 ;; - esac - case "$gl_cv_func_mbrtowc_sanitycheck" in - *yes) ;; - *) REPLACE_MBSTATE_T=1 ;; - esac - else - REPLACE_MBSTATE_T=1 - fi @@ -30910,8 +34359,9 @@ printf "%s\n" "$gl_cv_func_mbrtowc_sanitycheck" >&6; } if test "x$ac_cv_have_decl_mbsrtowcs" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_MBSRTOWCS $ac_have_decl" >>confdefs.h @@ -30933,8 +34383,8 @@ printf %s "checking whether mbsrtowcs works... " >&6; } if test ${gl_cv_func_mbsrtowcs_works+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) case "$host_os" in # Guess no on HP-UX, Solaris, mingw. hpux* | solaris* | mingw*) gl_cv_func_mbsrtowcs_works="guessing no" ;; @@ -30945,8 +34395,8 @@ else $as_nop if test "$cross_compiling" = yes then : : -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -31018,15 +34468,18 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_mbsrtowcs_works=yes -else $as_nop - gl_cv_func_mbsrtowcs_works=no +else case e in #( + e) gl_cv_func_mbsrtowcs_works=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbsrtowcs_works" >&5 printf "%s\n" "$gl_cv_func_mbsrtowcs_works" >&6; } @@ -31035,19 +34488,95 @@ printf "%s\n" "$gl_cv_func_mbsrtowcs_works" >&6; } *yes) ;; *) REPLACE_MBSRTOWCS=1 ;; esac - fi - fi + if test $REPLACE_MBSRTOWCS = 0; then + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the C locale is free of encoding errors" >&5 +printf %s "checking whether the C locale is free of encoding errors... " >&6; } +if test ${gl_cv_func_mbrtowc_C_locale_sans_EILSEQ+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + gl_cv_func_mbrtowc_C_locale_sans_EILSEQ="$gl_cross_guess_normal" + + if test "$cross_compiling" = yes +then : + case "$host_os" in + # Guess yes on native Windows. + mingw*) gl_cv_func_mbrtowc_C_locale_sans_EILSEQ="guessing yes" ;; + esac - if test $HAVE_MBSRTOWCS = 0 || test $REPLACE_MBSRTOWCS = 1; then +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + #include + #include +int +main (void) +{ + int i; + char *locale = setlocale (LC_ALL, "C"); + if (! locale) + return 2; + for (i = CHAR_MIN; i <= CHAR_MAX; i++) + { + char c = i; + wchar_t wc; + mbstate_t mbs = { 0, }; + size_t ss = mbrtowc (&wc, &c, 1, &mbs); + if (1 < ss) + return 3; + } + return 0; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO" +then : + gl_cv_func_mbrtowc_C_locale_sans_EILSEQ=yes +else case e in #( + e) gl_cv_func_mbrtowc_C_locale_sans_EILSEQ=no ;; +esac +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac +fi + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_C_locale_sans_EILSEQ" >&5 +printf "%s\n" "$gl_cv_func_mbrtowc_C_locale_sans_EILSEQ" >&6; } + case "$gl_cv_func_mbrtowc_C_locale_sans_EILSEQ" in + *yes) ;; + *) REPLACE_MBSRTOWCS=1 ;; + esac + fi + fi + fi + if test $HAVE_MBSRTOWCS = 0 || test $REPLACE_MBSRTOWCS = 1; then + GL_COND_OBJ_MBSRTOWCS_TRUE= + GL_COND_OBJ_MBSRTOWCS_FALSE='#' +else + GL_COND_OBJ_MBSRTOWCS_TRUE='#' + GL_COND_OBJ_MBSRTOWCS_FALSE= +fi +: + if test -z "${GL_COND_OBJ_MBSRTOWCS_TRUE}" && test -z "${GL_COND_OBJ_MBSRTOWCS_FALSE}"; then + GL_COND_OBJ_MBSRTOWCS_TRUE='#' + GL_COND_OBJ_MBSRTOWCS_FALSE='#' + fi - gl_LIBOBJS="$gl_LIBOBJS mbsrtowcs.$ac_objext" + if test -z "$GL_COND_OBJ_MBSRTOWCS_TRUE"; then : @@ -31062,8 +34591,8 @@ printf "%s\n" "$gl_cv_func_mbsrtowcs_works" >&6; } : - fi +fi @@ -31072,102 +34601,189 @@ printf "%s\n" "$gl_cv_func_mbsrtowcs_works" >&6; } - GL_GNULIB_MBSRTOWCS=1 -printf "%s\n" "#define GNULIB_TEST_MBSRTOWCS 1" >>confdefs.h + GL_GNULIB_MBSRTOWCS=1 +printf "%s\n" "#define GNULIB_TEST_MBSRTOWCS 1" >>confdefs.h - GL_GNULIB_MBSSTR=1 -printf "%s\n" "#define GNULIB_TEST_MBSSTR 1" >>confdefs.h - ac_fn_c_check_func "$LINENO" "mbtowc" "ac_cv_func_mbtowc" -if test "x$ac_cv_func_mbtowc" = xyes -then : - printf "%s\n" "#define HAVE_MBTOWC 1" >>confdefs.h + GL_GNULIB_MBSSTR=1 -fi - if test $ac_cv_func_mbtowc = no; then - HAVE_MBTOWC=0 - else - if false; then - REPLACE_MBTOWC=1 - fi - fi - if test $HAVE_MBTOWC = 0 || test $REPLACE_MBTOWC = 1; then +printf "%s\n" "#define GNULIB_TEST_MBSSTR 1" >>confdefs.h - gl_LIBOBJS="$gl_LIBOBJS mbtowc.$ac_objext" - : + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for mbtowc" >&5 +printf %s "checking for mbtowc... " >&6; } +if test ${gl_cv_onwards_func_mbtowc+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + exec 9>&6 6>/dev/null - fi + case "$host_os" in + linux*-android*) + ac_fn_check_decl "$LINENO" "mbtowc" "ac_cv_have_decl_mbtowc" "#include +" "$ac_c_undeclared_builtin_options" "CFLAGS" +if test "x$ac_cv_have_decl_mbtowc" = xyes +then : +fi + if test $ac_cv_have_decl_mbtowc = yes; then + ac_fn_c_check_func "$LINENO" "mbtowc" "ac_cv_func_mbtowc" +if test "x$ac_cv_func_mbtowc" = xyes +then : +fi + if test $ac_cv_func_mbtowc = yes; then + gl_cv_onwards_func_mbtowc=yes + else + gl_cv_onwards_func_mbtowc='future OS version' + fi + else + gl_cv_onwards_func_mbtowc='future OS version' + fi + ;; + *) + ac_fn_c_check_func "$LINENO" "mbtowc" "ac_cv_func_mbtowc" +if test "x$ac_cv_func_mbtowc" = xyes +then : +fi + gl_cv_onwards_func_mbtowc=$ac_cv_func_mbtowc + ;; - GL_GNULIB_MBTOWC=1 + esac + exec 6>&9 9>&- + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_onwards_func_mbtowc" >&5 +printf "%s\n" "$gl_cv_onwards_func_mbtowc" >&6; } + case "$gl_cv_onwards_func_mbtowc" in + future*) ac_cv_func_mbtowc=no ;; + *) ac_cv_func_mbtowc=$gl_cv_onwards_func_mbtowc ;; + esac + if test $ac_cv_func_mbtowc = yes; then +printf "%s\n" "#define HAVE_MBTOWC 1" >>confdefs.h -printf "%s\n" "#define GNULIB_TEST_MBTOWC 1" >>confdefs.h + fi + if test $ac_cv_func_mbtowc = no; then + HAVE_MBTOWC=0 + case "$gl_cv_onwards_func_mbtowc" in + future*) REPLACE_MBTOWC=1 ;; + esac + else + if false; then + REPLACE_MBTOWC=1 + fi + fi + + + if test $HAVE_MBTOWC = 0 || test $REPLACE_MBTOWC = 1; then + GL_COND_OBJ_MBTOWC_TRUE= + GL_COND_OBJ_MBTOWC_FALSE='#' +else + GL_COND_OBJ_MBTOWC_TRUE='#' + GL_COND_OBJ_MBTOWC_FALSE= +fi +: + if test -z "${GL_COND_OBJ_MBTOWC_TRUE}" && test -z "${GL_COND_OBJ_MBTOWC_FALSE}"; then + GL_COND_OBJ_MBTOWC_TRUE='#' + GL_COND_OBJ_MBTOWC_FALSE='#' + fi + if test -z "$GL_COND_OBJ_MBTOWC_TRUE"; then : : - if test $REPLACE_MEMCHR = 1; then +fi + + + + + + + + + + GL_GNULIB_MBTOWC=1 + + + + + +printf "%s\n" "#define GNULIB_TEST_MBTOWC 1" >>confdefs.h + : - gl_LIBOBJS="$gl_LIBOBJS memchr.$ac_objext" + if test $REPLACE_MEMCHR = 1; then + GL_COND_OBJ_MEMCHR_TRUE= + GL_COND_OBJ_MEMCHR_FALSE='#' +else + GL_COND_OBJ_MEMCHR_TRUE='#' + GL_COND_OBJ_MEMCHR_FALSE= +fi +: + if test -z "${GL_COND_OBJ_MEMCHR_TRUE}" && test -z "${GL_COND_OBJ_MEMCHR_FALSE}"; then + GL_COND_OBJ_MEMCHR_TRUE='#' + GL_COND_OBJ_MEMCHR_FALSE='#' + fi + + if test -z "$GL_COND_OBJ_MEMCHR_TRUE"; then : ac_fn_c_check_header_compile "$LINENO" "bp-sym.h" "ac_cv_header_bp_sym_h" "$ac_includes_default" @@ -31178,7 +34794,13 @@ then : fi - fi + +fi + + + + + @@ -31204,32 +34826,108 @@ printf "%s\n" "#define GNULIB_TEST_MEMCHR 1" >>confdefs.h - ac_fn_c_check_func "$LINENO" "mempcpy" "ac_cv_func_mempcpy" + + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for mempcpy" >&5 +printf %s "checking for mempcpy... " >&6; } +if test ${gl_cv_onwards_func_mempcpy+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + exec 9>&6 6>/dev/null + + case "$host_os" in + + linux*-android*) + ac_fn_check_decl "$LINENO" "mempcpy" "ac_cv_have_decl_mempcpy" "#include +" "$ac_c_undeclared_builtin_options" "CFLAGS" +if test "x$ac_cv_have_decl_mempcpy" = xyes +then : + +fi + if test $ac_cv_have_decl_mempcpy = yes; then + ac_fn_c_check_func "$LINENO" "mempcpy" "ac_cv_func_mempcpy" if test "x$ac_cv_func_mempcpy" = xyes then : - printf "%s\n" "#define HAVE_MEMPCPY 1" >>confdefs.h fi + if test $ac_cv_func_mempcpy = yes; then + gl_cv_onwards_func_mempcpy=yes + else + gl_cv_onwards_func_mempcpy='future OS version' + fi + else + gl_cv_onwards_func_mempcpy='future OS version' + fi + ;; + + + *) + ac_fn_c_check_func "$LINENO" "mempcpy" "ac_cv_func_mempcpy" +if test "x$ac_cv_func_mempcpy" = xyes +then : + +fi + + gl_cv_onwards_func_mempcpy=$ac_cv_func_mempcpy + ;; + + esac + + exec 6>&9 9>&- + + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_onwards_func_mempcpy" >&5 +printf "%s\n" "$gl_cv_onwards_func_mempcpy" >&6; } + + case "$gl_cv_onwards_func_mempcpy" in + future*) ac_cv_func_mempcpy=no ;; + *) ac_cv_func_mempcpy=$gl_cv_onwards_func_mempcpy ;; + esac + if test $ac_cv_func_mempcpy = yes; then + +printf "%s\n" "#define HAVE_MEMPCPY 1" >>confdefs.h + + fi + + if test $ac_cv_func_mempcpy = no; then HAVE_MEMPCPY=0 + case "$gl_cv_onwards_func_mempcpy" in + future*) REPLACE_MEMPCPY=1 ;; + esac fi - if test $HAVE_MEMPCPY = 0; then + if test $HAVE_MEMPCPY = 0 || test $REPLACE_MEMPCPY = 1; then + GL_COND_OBJ_MEMPCPY_TRUE= + GL_COND_OBJ_MEMPCPY_FALSE='#' +else + GL_COND_OBJ_MEMPCPY_TRUE='#' + GL_COND_OBJ_MEMPCPY_FALSE= +fi +: + if test -z "${GL_COND_OBJ_MEMPCPY_TRUE}" && test -z "${GL_COND_OBJ_MEMPCPY_FALSE}"; then + GL_COND_OBJ_MEMPCPY_TRUE='#' + GL_COND_OBJ_MEMPCPY_FALSE='#' + fi + if test -z "$GL_COND_OBJ_MEMPCPY_TRUE"; then : + : +fi - gl_LIBOBJS="$gl_LIBOBJS mempcpy.$ac_objext" - : - fi @@ -31259,13 +34957,15 @@ printf %s "checking whether mkdir handles trailing slash... " >&6; } if test ${gl_cv_func_mkdir_trailing_slash_works+y} then : printf %s "(cached) " >&6 -else $as_nop - rm -rf conftest.dir +else case e in #( + e) rm -rf conftest.dir if test "$cross_compiling" = yes then : case "$host_os" in # Guess yes on Linux systems. linux-* | linux) gl_cv_func_mkdir_trailing_slash_works="guessing yes" ;; + # Guess yes on systems that emulate the Linux system calls. + midipix*) gl_cv_func_mkdir_trailing_slash_works="guessing yes" ;; # Guess yes on glibc systems. *-gnu* | gnu*) gl_cv_func_mkdir_trailing_slash_works="guessing yes" ;; # Guess yes on MSVC, no on mingw. @@ -31278,11 +34978,12 @@ then : _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "Known" >/dev/null 2>&1 + $EGREP_TRADITIONAL "Known" >/dev/null 2>&1 then : gl_cv_func_mkdir_trailing_slash_works="guessing yes" -else $as_nop - gl_cv_func_mkdir_trailing_slash_works="guessing no" +else case e in #( + e) gl_cv_func_mkdir_trailing_slash_works="guessing no" ;; +esac fi rm -rf conftest* @@ -31291,8 +34992,8 @@ rm -rf conftest* *) gl_cv_func_mkdir_trailing_slash_works="$gl_cross_guess_normal" ;; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -31312,15 +35013,18 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_mkdir_trailing_slash_works=yes -else $as_nop - gl_cv_func_mkdir_trailing_slash_works=no +else case e in #( + e) gl_cv_func_mkdir_trailing_slash_works=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi rm -rf conftest.dir - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mkdir_trailing_slash_works" >&5 printf "%s\n" "$gl_cv_func_mkdir_trailing_slash_works" >&6; } @@ -31336,8 +35040,8 @@ printf %s "checking whether mkdir handles trailing dot... " >&6; } if test ${gl_cv_func_mkdir_trailing_dot_works+y} then : printf %s "(cached) " >&6 -else $as_nop - rm -rf conftest.dir +else case e in #( + e) rm -rf conftest.dir if test "$cross_compiling" = yes then : case "$host_os" in @@ -31345,14 +35049,16 @@ then : *-gnu* | gnu*) gl_cv_func_mkdir_trailing_dot_works="guessing yes" ;; # Guess yes on musl systems. *-musl*) gl_cv_func_mkdir_trailing_dot_works="guessing yes" ;; + # Guess yes on systems that emulate the Linux system calls. + midipix*) gl_cv_func_mkdir_trailing_dot_works="guessing yes" ;; # Guess no on native Windows. mingw*) gl_cv_func_mkdir_trailing_dot_works="guessing no" ;; # If we don't know, obey --enable-cross-guesses. *) gl_cv_func_mkdir_trailing_dot_works="$gl_cross_guess_normal" ;; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -31372,16 +35078,19 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_mkdir_trailing_dot_works=yes -else $as_nop - gl_cv_func_mkdir_trailing_dot_works=no +else case e in #( + e) gl_cv_func_mkdir_trailing_dot_works=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi rm -rf conftest.dir - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mkdir_trailing_dot_works" >&5 printf "%s\n" "$gl_cv_func_mkdir_trailing_dot_works" >&6; } @@ -31395,17 +35104,18 @@ printf "%s\n" "#define FUNC_MKDIR_DOT_BUG 1" >>confdefs.h ;; esac - if test $REPLACE_MKDIR = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS mkdir.$ac_objext" + if test $REPLACE_MKDIR = 1; then + GL_COND_OBJ_MKDIR_TRUE= + GL_COND_OBJ_MKDIR_FALSE='#' +else + GL_COND_OBJ_MKDIR_TRUE='#' + GL_COND_OBJ_MKDIR_FALSE= +fi +: + if test -z "${GL_COND_OBJ_MKDIR_TRUE}" && test -z "${GL_COND_OBJ_MKDIR_FALSE}"; then + GL_COND_OBJ_MKDIR_TRUE='#' + GL_COND_OBJ_MKDIR_FALSE='#' fi @@ -31416,6 +35126,7 @@ printf "%s\n" "#define FUNC_MKDIR_DOT_BUG 1" >>confdefs.h + GL_GNULIB_MKDIR=1 @@ -31436,24 +35147,24 @@ printf %s "checking for working mkstemp... " >&6; } if test ${gl_cv_func_working_mkstemp+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) mkdir conftest.mkstemp if test "$cross_compiling" = yes then : case "$host_os" in - # Guess yes on glibc systems. - *-gnu* | gnu*) gl_cv_func_working_mkstemp="guessing yes" ;; - # Guess yes on musl systems. - *-musl*) gl_cv_func_working_mkstemp="guessing yes" ;; - # Guess no on native Windows. - mingw*) gl_cv_func_working_mkstemp="guessing no" ;; - # If we don't know, obey --enable-cross-guesses. - *) gl_cv_func_working_mkstemp="$gl_cross_guess_normal" ;; + # Guess yes on glibc systems. + *-gnu* | gnu*) gl_cv_func_working_mkstemp="guessing yes" ;; + # Guess yes on musl systems. + *-musl* | midipix*) gl_cv_func_working_mkstemp="guessing yes" ;; + # Guess no on native Windows. + mingw*) gl_cv_func_working_mkstemp="guessing no" ;; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_working_mkstemp="$gl_cross_guess_normal" ;; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $ac_includes_default @@ -31497,15 +35208,18 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_working_mkstemp=yes -else $as_nop - gl_cv_func_working_mkstemp=no +else case e in #( + e) gl_cv_func_working_mkstemp=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi rm -rf conftest.mkstemp - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_working_mkstemp" >&5 printf "%s\n" "$gl_cv_func_working_mkstemp" >&6; } @@ -31519,20 +35233,26 @@ printf "%s\n" "$gl_cv_func_working_mkstemp" >&6; } HAVE_MKSTEMP=0 fi - if test $HAVE_MKSTEMP = 0 || test $REPLACE_MKSTEMP = 1; then - - - - - + if test $HAVE_MKSTEMP = 0 || test $REPLACE_MKSTEMP = 1; then + GL_COND_OBJ_MKSTEMP_TRUE= + GL_COND_OBJ_MKSTEMP_FALSE='#' +else + GL_COND_OBJ_MKSTEMP_TRUE='#' + GL_COND_OBJ_MKSTEMP_FALSE= +fi +: + if test -z "${GL_COND_OBJ_MKSTEMP_TRUE}" && test -z "${GL_COND_OBJ_MKSTEMP_FALSE}"; then + GL_COND_OBJ_MKSTEMP_TRUE='#' + GL_COND_OBJ_MKSTEMP_FALSE='#' + fi + if test -z "$GL_COND_OBJ_MKSTEMP_TRUE"; then : - gl_LIBOBJS="$gl_LIBOBJS mkstemp.$ac_objext" - fi +fi @@ -31616,12 +35336,13 @@ then : printf "%s\n" "#define mktime_internal __mktime_internal" >>confdefs.h -else $as_nop - WANT_MKTIME_INTERNAL=1 +else case e in #( + e) WANT_MKTIME_INTERNAL=1 printf "%s\n" "#define NEED_MKTIME_INTERNAL 1" >>confdefs.h - + ;; +esac fi @@ -31639,39 +35360,111 @@ fi : fi - if test $HAVE_MSVC_INVALID_PARAMETER_HANDLER = 1; then + + if test $HAVE_MSVC_INVALID_PARAMETER_HANDLER = 1; then + GL_COND_OBJ_MSVC_INVAL_TRUE= + GL_COND_OBJ_MSVC_INVAL_FALSE='#' +else + GL_COND_OBJ_MSVC_INVAL_TRUE='#' + GL_COND_OBJ_MSVC_INVAL_FALSE= +fi +: + if test -z "${GL_COND_OBJ_MSVC_INVAL_TRUE}" && test -z "${GL_COND_OBJ_MSVC_INVAL_FALSE}"; then + GL_COND_OBJ_MSVC_INVAL_TRUE='#' + GL_COND_OBJ_MSVC_INVAL_FALSE='#' + fi + if test $HAVE_MSVC_INVALID_PARAMETER_HANDLER = 1; then + GL_COND_OBJ_MSVC_NOTHROW_TRUE= + GL_COND_OBJ_MSVC_NOTHROW_FALSE='#' +else + GL_COND_OBJ_MSVC_NOTHROW_TRUE='#' + GL_COND_OBJ_MSVC_NOTHROW_FALSE= +fi +: + if test -z "${GL_COND_OBJ_MSVC_NOTHROW_TRUE}" && test -z "${GL_COND_OBJ_MSVC_NOTHROW_FALSE}"; then + GL_COND_OBJ_MSVC_NOTHROW_TRUE='#' + GL_COND_OBJ_MSVC_NOTHROW_FALSE='#' + fi +printf "%s\n" "#define GNULIB_MSVC_NOTHROW 1" >>confdefs.h - gl_LIBOBJS="$gl_LIBOBJS msvc-inval.$ac_objext" - fi - if test $HAVE_MSVC_INVALID_PARAMETER_HANDLER = 1; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for nl_langinfo" >&5 +printf %s "checking for nl_langinfo... " >&6; } +if test ${gl_cv_onwards_func_nl_langinfo+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + exec 9>&6 6>/dev/null + case "$host_os" in + linux*-android*) + ac_fn_check_decl "$LINENO" "nl_langinfo" "ac_cv_have_decl_nl_langinfo" "#include +" "$ac_c_undeclared_builtin_options" "CFLAGS" +if test "x$ac_cv_have_decl_nl_langinfo" = xyes +then : +fi + if test $ac_cv_have_decl_nl_langinfo = yes; then + ac_fn_c_check_func "$LINENO" "nl_langinfo" "ac_cv_func_nl_langinfo" +if test "x$ac_cv_func_nl_langinfo" = xyes +then : - gl_LIBOBJS="$gl_LIBOBJS msvc-nothrow.$ac_objext" +fi - fi + if test $ac_cv_func_nl_langinfo = yes; then + gl_cv_onwards_func_nl_langinfo=yes + else + gl_cv_onwards_func_nl_langinfo='future OS version' + fi + else + gl_cv_onwards_func_nl_langinfo='future OS version' + fi + ;; -printf "%s\n" "#define GNULIB_MSVC_NOTHROW 1" >>confdefs.h + *) + ac_fn_c_check_func "$LINENO" "nl_langinfo" "ac_cv_func_nl_langinfo" +if test "x$ac_cv_func_nl_langinfo" = xyes +then : + +fi + + gl_cv_onwards_func_nl_langinfo=$ac_cv_func_nl_langinfo + ;; + + esac + exec 6>&9 9>&- + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_onwards_func_nl_langinfo" >&5 +printf "%s\n" "$gl_cv_onwards_func_nl_langinfo" >&6; } + case "$gl_cv_onwards_func_nl_langinfo" in + future*) ac_cv_func_nl_langinfo=no ;; + *) ac_cv_func_nl_langinfo=$gl_cv_onwards_func_nl_langinfo ;; + esac + if test $ac_cv_func_nl_langinfo = yes; then +printf "%s\n" "#define HAVE_NL_LANGINFO 1" >>confdefs.h + fi @@ -31685,8 +35478,8 @@ printf %s "checking whether YESEXPR works... " >&6; } if test ${gl_cv_func_nl_langinfo_yesexpr_works+y} then : printf %s "(cached) " >&6 -else $as_nop - if test "$cross_compiling" = yes +else case e in #( + e) if test "$cross_compiling" = yes then : case "$host_os" in @@ -31696,8 +35489,8 @@ then : *) gl_cv_func_nl_langinfo_yesexpr_works="guessing yes";; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -31713,14 +35506,17 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_nl_langinfo_yesexpr_works=yes -else $as_nop - gl_cv_func_nl_langinfo_yesexpr_works=no +else case e in #( + e) gl_cv_func_nl_langinfo_yesexpr_works=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_nl_langinfo_yesexpr_works" >&5 printf "%s\n" "$gl_cv_func_nl_langinfo_yesexpr_works" >&6; } @@ -31754,37 +35550,46 @@ printf "%s\n" "#define REPLACE_NL_LANGINFO 1" >>confdefs.h fi else HAVE_NL_LANGINFO=0 + case "$gl_cv_onwards_func_nl_langinfo" in + future*) REPLACE_NL_LANGINFO=1 ;; + esac fi if test $HAVE_NL_LANGINFO = 0 || test $HAVE_LANGINFO_CODESET = 0; then - LIB_NL_LANGINFO="$LIB_SETLOCALE_NULL" + LIB_NL_LANGINFO="$SETLOCALE_NULL_LIB" else LIB_NL_LANGINFO= fi - if test $HAVE_NL_LANGINFO = 0 || test $REPLACE_NL_LANGINFO = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS nl_langinfo.$ac_objext" + if test $HAVE_NL_LANGINFO = 0 || test $REPLACE_NL_LANGINFO = 1; then + GL_COND_OBJ_NL_LANGINFO_TRUE= + GL_COND_OBJ_NL_LANGINFO_FALSE='#' +else + GL_COND_OBJ_NL_LANGINFO_TRUE='#' + GL_COND_OBJ_NL_LANGINFO_FALSE= +fi +: + if test -z "${GL_COND_OBJ_NL_LANGINFO_TRUE}" && test -z "${GL_COND_OBJ_NL_LANGINFO_FALSE}"; then + GL_COND_OBJ_NL_LANGINFO_TRUE='#' + GL_COND_OBJ_NL_LANGINFO_FALSE='#' fi - if test $REPLACE_NL_LANGINFO = 1 && test $NL_LANGINFO_MTSAFE = 0; then - - - + if test $REPLACE_NL_LANGINFO = 1 && test $NL_LANGINFO_MTSAFE = 0; then + GL_COND_OBJ_NL_LANGINFO_LOCK_TRUE= + GL_COND_OBJ_NL_LANGINFO_LOCK_FALSE='#' +else + GL_COND_OBJ_NL_LANGINFO_LOCK_TRUE='#' + GL_COND_OBJ_NL_LANGINFO_LOCK_FALSE= +fi +: + if test -z "${GL_COND_OBJ_NL_LANGINFO_LOCK_TRUE}" && test -z "${GL_COND_OBJ_NL_LANGINFO_LOCK_FALSE}"; then + GL_COND_OBJ_NL_LANGINFO_LOCK_TRUE='#' + GL_COND_OBJ_NL_LANGINFO_LOCK_FALSE='#' + fi - - - gl_LIBOBJS="$gl_LIBOBJS nl_langinfo-lock.$ac_objext" - + if test $REPLACE_NL_LANGINFO = 1 && test $NL_LANGINFO_MTSAFE = 0; then @@ -31796,8 +35601,8 @@ printf %s "checking whether the -Werror option is usable... " >&6; } if test ${gl_cv_cc_vis_werror+y} then : printf %s "(cached) " >&6 -else $as_nop - gl_save_CFLAGS="$CFLAGS" +else case e in #( + e) gl_save_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS -Werror" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -31813,12 +35618,14 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_cc_vis_werror=yes -else $as_nop - gl_cv_cc_vis_werror=no +else case e in #( + e) gl_cv_cc_vis_werror=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext CFLAGS="$gl_save_CFLAGS" - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_vis_werror" >&5 printf "%s\n" "$gl_cv_cc_vis_werror" >&6; } @@ -31827,8 +35634,8 @@ printf %s "checking for simple visibility declarations... " >&6; } if test ${gl_cv_cc_visibility+y} then : printf %s "(cached) " >&6 -else $as_nop - gl_save_CFLAGS="$CFLAGS" +else case e in #( + e) gl_save_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS -fvisibility=hidden" if test $gl_cv_cc_vis_werror = yes; then CFLAGS="$CFLAGS -Werror" @@ -31857,12 +35664,14 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_cc_visibility=yes -else $as_nop - gl_cv_cc_visibility=no +else case e in #( + e) gl_cv_cc_visibility=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext CFLAGS="$gl_save_CFLAGS" - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_visibility" >&5 printf "%s\n" "$gl_cv_cc_visibility" >&6; } @@ -31911,6 +35720,50 @@ printf "%s\n" "#define my_strftime nstrftime" >>confdefs.h + ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for C nullptr" >&5 +printf %s "checking for C nullptr... " >&6; } +if test ${gl_cv_c_nullptr+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +int *p = nullptr; +_ACEOF +if ac_fn_c_try_compile "$LINENO" +then : + gl_cv_c_nullptr=yes +else case e in #( + e) gl_cv_c_nullptr=no ;; +esac +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_c_nullptr" >&5 +printf "%s\n" "$gl_cv_c_nullptr" >&6; } + gl_c_nullptr=$gl_cv_c_nullptr + ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + + if test "$gl_c_nullptr" = yes; then + +printf "%s\n" "#define HAVE_C_NULLPTR 1" >>confdefs.h + + fi + + + + case "$host_os" in @@ -31929,8 +35782,8 @@ printf %s "checking whether open recognizes a trailing slash... " >&6; } if test ${gl_cv_func_open_slash+y} then : printf %s "(cached) " >&6 -else $as_nop - # Assume that if we have lstat, we can also check symlinks. +else case e in #( + e) # Assume that if we have lstat, we can also check symlinks. if test $ac_cv_func_lstat = yes; then touch conftest.tmp ln -s conftest.tmp conftest.lnk @@ -31945,8 +35798,8 @@ then : gl_cv_func_open_slash="guessing yes" ;; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -31972,15 +35825,18 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_open_slash=yes -else $as_nop - gl_cv_func_open_slash=no +else case e in #( + e) gl_cv_func_open_slash=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi rm -f conftest.sl conftest.tmp conftest.lnk - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_open_slash" >&5 printf "%s\n" "$gl_cv_func_open_slash" >&6; } @@ -32002,40 +35858,99 @@ printf "%s\n" "#define OPEN_TRAILING_SLASH_BUG 1" >>confdefs.h - if test $REPLACE_OPEN = 1; then + if test $REPLACE_OPEN = 1; then + GL_COND_OBJ_OPEN_TRUE= + GL_COND_OBJ_OPEN_FALSE='#' +else + GL_COND_OBJ_OPEN_TRUE='#' + GL_COND_OBJ_OPEN_FALSE= +fi +: + if test -z "${GL_COND_OBJ_OPEN_TRUE}" && test -z "${GL_COND_OBJ_OPEN_FALSE}"; then + GL_COND_OBJ_OPEN_TRUE='#' + GL_COND_OBJ_OPEN_FALSE='#' + fi + if test -z "$GL_COND_OBJ_OPEN_TRUE"; then : + : +fi - gl_LIBOBJS="$gl_LIBOBJS open.$ac_objext" - : - fi + GL_GNULIB_OPEN=1 - GL_GNULIB_OPEN=1 +printf "%s\n" "#define GNULIB_TEST_OPEN 1" >>confdefs.h -printf "%s\n" "#define GNULIB_TEST_OPEN 1" >>confdefs.h + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for Perl 5.005 or newer" >&5 +printf %s "checking for Perl 5.005 or newer... " >&6; } +if test ${gl_cv_prog_perl+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + if test "${PERL+set}" = set; then + # 'PERL' is set in the user's environment. + candidate_perl_names="$PERL" + perl_specified=yes + else + candidate_perl_names='perl perl5' + perl_specified=no + fi + + gl_cv_prog_perl=no + for perl in $candidate_perl_names; do + # Run test in a subshell; some versions of sh will print an error if + # an executable is not found, even if stderr is redirected. + if ( $perl -e 'require 5.005; use File::Compare; use warnings;' ) > /dev/null 2>&1; then + gl_cv_prog_perl=$perl + break + fi + done + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_prog_perl" >&5 +printf "%s\n" "$gl_cv_prog_perl" >&6; } + +if test "$gl_cv_prog_perl" != no; then + PERL=$gl_cv_prog_perl +else + PERL="$am_missing_run perl" + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: +WARNING: You don't seem to have perl5.005 or newer installed, or you lack + a usable version of the Perl File::Compare module. As a result, + you may be unable to run a few tests or to regenerate certain + files if you modify the sources from which they are derived. + " >&5 +printf "%s\n" "$as_me: WARNING: +WARNING: You don't seem to have perl5.005 or newer installed, or you lack + a usable version of the Perl File::Compare module. As a result, + you may be unable to run a few tests or to regenerate certain + files if you modify the sources from which they are derived. + " >&2;} +fi @@ -32045,8 +35960,9 @@ printf "%s\n" "#define GNULIB_TEST_OPEN 1" >>confdefs.h if test "x$ac_cv_have_decl_program_invocation_name" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_PROGRAM_INVOCATION_NAME $ac_have_decl" >>confdefs.h @@ -32055,8 +35971,9 @@ printf "%s\n" "#define HAVE_DECL_PROGRAM_INVOCATION_NAME $ac_have_decl" >>confde if test "x$ac_cv_have_decl_program_invocation_short_name" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME $ac_have_decl" >>confdefs.h @@ -32114,19 +36031,25 @@ fi fi - if test $HAVE_RAISE = 0 || test $REPLACE_RAISE = 1; then - - - - - - + if test $HAVE_RAISE = 0 || test $REPLACE_RAISE = 1; then + GL_COND_OBJ_RAISE_TRUE= + GL_COND_OBJ_RAISE_FALSE='#' +else + GL_COND_OBJ_RAISE_TRUE='#' + GL_COND_OBJ_RAISE_FALSE= +fi +: + if test -z "${GL_COND_OBJ_RAISE_TRUE}" && test -z "${GL_COND_OBJ_RAISE_FALSE}"; then + GL_COND_OBJ_RAISE_TRUE='#' + GL_COND_OBJ_RAISE_FALSE='#' + fi - gl_LIBOBJS="$gl_LIBOBJS raise.$ac_objext" + if test -z "$GL_COND_OBJ_RAISE_TRUE"; then : : - fi + +fi @@ -32161,19 +36084,30 @@ fi HAVE_RAWMEMCHR=0 fi - if test $HAVE_RAWMEMCHR = 0; then + if test $HAVE_RAWMEMCHR = 0; then + GL_COND_OBJ_RAWMEMCHR_TRUE= + GL_COND_OBJ_RAWMEMCHR_FALSE='#' +else + GL_COND_OBJ_RAWMEMCHR_TRUE='#' + GL_COND_OBJ_RAWMEMCHR_FALSE= +fi +: + if test -z "${GL_COND_OBJ_RAWMEMCHR_TRUE}" && test -z "${GL_COND_OBJ_RAWMEMCHR_FALSE}"; then + GL_COND_OBJ_RAWMEMCHR_TRUE='#' + GL_COND_OBJ_RAWMEMCHR_FALSE='#' + fi + if test -z "$GL_COND_OBJ_RAWMEMCHR_TRUE"; then : + : +fi - gl_LIBOBJS="$gl_LIBOBJS rawmemchr.$ac_objext" - : - fi @@ -32204,8 +36138,8 @@ printf %s "checking whether readlink signature is correct... " >&6; } if test ${gl_cv_decl_readlink_works+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include /* Cause compilation failure if original declaration has wrong type. */ @@ -32221,10 +36155,12 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_decl_readlink_works=yes -else $as_nop - gl_cv_decl_readlink_works=no +else case e in #( + e) gl_cv_decl_readlink_works=no ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_decl_readlink_works" >&5 printf "%s\n" "$gl_cv_decl_readlink_works" >&6; } @@ -32233,8 +36169,8 @@ printf %s "checking whether readlink handles trailing slash correctly... " >&6; if test ${gl_cv_func_readlink_trailing_slash+y} then : printf %s "(cached) " >&6 -else $as_nop - # We have readlink, so assume ln -s works. +else case e in #( + e) # We have readlink, so assume ln -s works. ln -s conftest.no-such conftest.link ln -s conftest.link conftest.lnk2 if test "$cross_compiling" = yes @@ -32243,6 +36179,9 @@ then : # Guess yes on Linux or glibc systems. linux-* | linux | *-gnu* | gnu*) gl_cv_func_readlink_trailing_slash="guessing yes" ;; + # Guess yes on systems that emulate the Linux system calls. + midipix*) + gl_cv_func_readlink_trailing_slash="guessing yes" ;; # Guess no on AIX or HP-UX. aix* | hpux*) gl_cv_func_readlink_trailing_slash="guessing no" ;; @@ -32251,8 +36190,8 @@ then : gl_cv_func_readlink_trailing_slash="$gl_cross_guess_normal" ;; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -32268,14 +36207,17 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_readlink_trailing_slash=yes -else $as_nop - gl_cv_func_readlink_trailing_slash=no +else case e in #( + e) gl_cv_func_readlink_trailing_slash=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - rm -f conftest.link conftest.lnk2 + rm -f conftest.link conftest.lnk2 ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_readlink_trailing_slash" >&5 printf "%s\n" "$gl_cv_func_readlink_trailing_slash" >&6; } @@ -32298,8 +36240,8 @@ printf %s "checking whether readlink truncates results correctly... " >&6; } if test ${gl_cv_func_readlink_truncate+y} then : printf %s "(cached) " >&6 -else $as_nop - # We have readlink, so assume ln -s works. +else case e in #( + e) # We have readlink, so assume ln -s works. ln -s ab conftest.link if test "$cross_compiling" = yes then : @@ -32307,6 +36249,9 @@ then : # Guess yes on Linux or glibc systems. linux-* | linux | *-gnu* | gnu*) gl_cv_func_readlink_truncate="guessing yes" ;; + # Guess yes on systems that emulate the Linux system calls. + midipix*) + gl_cv_func_readlink_truncate="guessing yes" ;; # Guess no on AIX or HP-UX. aix* | hpux*) gl_cv_func_readlink_truncate="guessing no" ;; @@ -32315,8 +36260,8 @@ then : gl_cv_func_readlink_truncate="$gl_cross_guess_normal" ;; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -32332,14 +36277,17 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_readlink_truncate=yes -else $as_nop - gl_cv_func_readlink_truncate=no +else case e in #( + e) gl_cv_func_readlink_truncate=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - rm -f conftest.link conftest.lnk2 + rm -f conftest.link conftest.lnk2 ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_readlink_truncate" >&5 printf "%s\n" "$gl_cv_func_readlink_truncate" >&6; } @@ -32358,21 +36306,27 @@ printf "%s\n" "#define READLINK_TRUNCATE_BUG 1" >>confdefs.h esac fi - if test $HAVE_READLINK = 0 || test $REPLACE_READLINK = 1; then - - - - - - + if test $HAVE_READLINK = 0 || test $REPLACE_READLINK = 1; then + GL_COND_OBJ_READLINK_TRUE= + GL_COND_OBJ_READLINK_FALSE='#' +else + GL_COND_OBJ_READLINK_TRUE='#' + GL_COND_OBJ_READLINK_FALSE= +fi +: + if test -z "${GL_COND_OBJ_READLINK_TRUE}" && test -z "${GL_COND_OBJ_READLINK_FALSE}"; then + GL_COND_OBJ_READLINK_TRUE='#' + GL_COND_OBJ_READLINK_FALSE='#' + fi - gl_LIBOBJS="$gl_LIBOBJS readlink.$ac_objext" + if test -z "$GL_COND_OBJ_READLINK_TRUE"; then : : - fi + +fi @@ -32395,28 +36349,28 @@ printf "%s\n" "#define GNULIB_TEST_READLINK 1" >>confdefs.h - if test $REPLACE_REALLOC = 0; then + if test $REPLACE_REALLOC_FOR_REALLOC_GNU = 0; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether realloc (0, 0) returns nonnull" >&5 printf %s "checking whether realloc (0, 0) returns nonnull... " >&6; } if test ${ac_cv_func_realloc_0_nonnull+y} then : printf %s "(cached) " >&6 -else $as_nop - if test "$cross_compiling" = yes +else case e in #( + e) if test "$cross_compiling" = yes then : case "$host_os" in # Guess yes on platforms where we know the result. *-gnu* | freebsd* | netbsd* | openbsd* | bitrig* \ - | gnu* | *-musl* | midnightbsd* \ + | gnu* | *-musl* | midipix* | midnightbsd* \ | hpux* | solaris* | cygwin* | mingw* | msys* ) ac_cv_func_realloc_0_nonnull="guessing yes" ;; # If we don't know, obey --enable-cross-guesses. *) ac_cv_func_realloc_0_nonnull="$gl_cross_guess_normal" ;; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -32435,14 +36389,17 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : ac_cv_func_realloc_0_nonnull=yes -else $as_nop - ac_cv_func_realloc_0_nonnull=no +else case e in #( + e) ac_cv_func_realloc_0_nonnull=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_realloc_0_nonnull" >&5 printf "%s\n" "$ac_cv_func_realloc_0_nonnull" >&6; } @@ -32450,12 +36407,12 @@ printf "%s\n" "$ac_cv_func_realloc_0_nonnull" >&6; } *yes) : ;; #( *) : - REPLACE_REALLOC=1 ;; + REPLACE_REALLOC_FOR_REALLOC_GNU=1 ;; esac fi - if test $REPLACE_REALLOC = 1; then + if test $REPLACE_REALLOC_FOR_REALLOC_GNU = 1; then @@ -32470,11 +36427,30 @@ esac - if test $REPLACE_MALLOC = 1; then - REPLACE_REALLOC=1 + + + + + + + GL_GNULIB_REALLOC_GNU=1 + + + + + +printf "%s\n" "#define GNULIB_TEST_REALLOC_GNU 1" >>confdefs.h + + + + + + + if test $REPLACE_MALLOC_FOR_MALLOC_POSIX = 1; then + REPLACE_REALLOC_FOR_REALLOC_POSIX=1 fi - if test $REPLACE_REALLOC = 1; then + if test $REPLACE_REALLOC_FOR_REALLOC_POSIX = 1; then @@ -32510,33 +36486,104 @@ printf "%s\n" "#define GNULIB_TEST_REALLOC_POSIX 1" >>confdefs.h - ac_fn_c_check_func "$LINENO" "reallocarray" "ac_cv_func_reallocarray" + + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for reallocarray" >&5 +printf %s "checking for reallocarray... " >&6; } +if test ${gl_cv_onwards_func_reallocarray+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + exec 9>&6 6>/dev/null + + case "$host_os" in + + linux*-android*) + ac_fn_check_decl "$LINENO" "reallocarray" "ac_cv_have_decl_reallocarray" "#include +" "$ac_c_undeclared_builtin_options" "CFLAGS" +if test "x$ac_cv_have_decl_reallocarray" = xyes +then : + +fi + if test $ac_cv_have_decl_reallocarray = yes; then + ac_fn_c_check_func "$LINENO" "reallocarray" "ac_cv_func_reallocarray" if test "x$ac_cv_func_reallocarray" = xyes then : - printf "%s\n" "#define HAVE_REALLOCARRAY 1" >>confdefs.h fi - if test "$ac_cv_func_reallocarray" = no; then - HAVE_REALLOCARRAY=0 - elif test "$gl_cv_malloc_ptrdiff" = no; then - REPLACE_REALLOCARRAY=1 - fi + if test $ac_cv_func_reallocarray = yes; then + gl_cv_onwards_func_reallocarray=yes + else + gl_cv_onwards_func_reallocarray='future OS version' + fi + else + gl_cv_onwards_func_reallocarray='future OS version' + fi + ;; - if test $HAVE_REALLOCARRAY = 0 || test $REPLACE_REALLOCARRAY = 1; then + *) + ac_fn_c_check_func "$LINENO" "reallocarray" "ac_cv_func_reallocarray" +if test "x$ac_cv_func_reallocarray" = xyes +then : + +fi + gl_cv_onwards_func_reallocarray=$ac_cv_func_reallocarray + ;; + esac + exec 6>&9 9>&- + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_onwards_func_reallocarray" >&5 +printf "%s\n" "$gl_cv_onwards_func_reallocarray" >&6; } + case "$gl_cv_onwards_func_reallocarray" in + future*) ac_cv_func_reallocarray=no ;; + *) ac_cv_func_reallocarray=$gl_cv_onwards_func_reallocarray ;; + esac + if test $ac_cv_func_reallocarray = yes; then +printf "%s\n" "#define HAVE_REALLOCARRAY 1" >>confdefs.h - gl_LIBOBJS="$gl_LIBOBJS reallocarray.$ac_objext" + fi - : + + if test "$ac_cv_func_reallocarray" = no; then + HAVE_REALLOCARRAY=0 + case "$gl_cv_onwards_func_reallocarray" in + future*) REPLACE_REALLOCARRAY=1 ;; + esac + elif test "$gl_cv_malloc_ptrdiff" = no; then + REPLACE_REALLOCARRAY=1 + fi + + + if test $HAVE_REALLOCARRAY = 0 || test $REPLACE_REALLOCARRAY = 1; then + GL_COND_OBJ_REALLOCARRAY_TRUE= + GL_COND_OBJ_REALLOCARRAY_FALSE='#' +else + GL_COND_OBJ_REALLOCARRAY_TRUE='#' + GL_COND_OBJ_REALLOCARRAY_FALSE= +fi +: + if test -z "${GL_COND_OBJ_REALLOCARRAY_TRUE}" && test -z "${GL_COND_OBJ_REALLOCARRAY_FALSE}"; then + GL_COND_OBJ_REALLOCARRAY_TRUE='#' + GL_COND_OBJ_REALLOCARRAY_FALSE='#' fi + if test -z "$GL_COND_OBJ_REALLOCARRAY_TRUE"; then : + + : + +fi + printf "%s\n" "#define GNULIB_REALLOCARRAY 1" >>confdefs.h @@ -32584,8 +36631,8 @@ printf %s "checking for working re_compile_pattern... " >&6; } if test ${gl_cv_func_re_compile_pattern_working+y} then : printf %s "(cached) " >&6 -else $as_nop - if test "$cross_compiling" = yes +else case e in #( + e) if test "$cross_compiling" = yes then : case "$host_os" in # Guess no on native Windows. @@ -32594,8 +36641,8 @@ then : *) gl_cv_func_re_compile_pattern_working="$gl_cross_guess_normal" ;; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -32897,14 +36944,17 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_re_compile_pattern_working=yes -else $as_nop - gl_cv_func_re_compile_pattern_working=no +else case e in #( + e) gl_cv_func_re_compile_pattern_working=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_re_compile_pattern_working" >&5 printf "%s\n" "$gl_cv_func_re_compile_pattern_working" >&6; } @@ -32971,16 +37021,21 @@ printf "%s\n" "#define regfree rpl_regfree" >>confdefs.h fi - if test $ac_use_included_regex = yes; then - - - - - - + if test $ac_use_included_regex = yes; then + GL_COND_OBJ_REGEX_TRUE= + GL_COND_OBJ_REGEX_FALSE='#' +else + GL_COND_OBJ_REGEX_TRUE='#' + GL_COND_OBJ_REGEX_FALSE= +fi +: + if test -z "${GL_COND_OBJ_REGEX_TRUE}" && test -z "${GL_COND_OBJ_REGEX_FALSE}"; then + GL_COND_OBJ_REGEX_TRUE='#' + GL_COND_OBJ_REGEX_FALSE='#' + fi - gl_LIBOBJS="$gl_LIBOBJS regex.$ac_objext" + if test -z "$GL_COND_OBJ_REGEX_TRUE"; then : @@ -33001,13 +37056,15 @@ fi if test "x$ac_cv_have_decl_isblank" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_ISBLANK $ac_have_decl" >>confdefs.h - fi + +fi if test $ac_cv_func_setenv = no; then @@ -33018,20 +37075,20 @@ printf %s "checking whether setenv validates arguments... " >&6; } if test ${gl_cv_func_setenv_works+y} then : printf %s "(cached) " >&6 -else $as_nop - if test "$cross_compiling" = yes +else case e in #( + e) if test "$cross_compiling" = yes then : case "$host_os" in - # Guess yes on glibc systems. - *-gnu* | gnu*) gl_cv_func_setenv_works="guessing yes" ;; - # Guess yes on musl systems. - *-musl*) gl_cv_func_setenv_works="guessing yes" ;; - # If we don't know, obey --enable-cross-guesses. - *) gl_cv_func_setenv_works="$gl_cross_guess_normal" ;; + # Guess yes on glibc systems. + *-gnu* | gnu*) gl_cv_func_setenv_works="guessing yes" ;; + # Guess yes on musl systems. + *-musl* | midipix*) gl_cv_func_setenv_works="guessing yes" ;; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_setenv_works="$gl_cross_guess_normal" ;; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -33064,13 +37121,16 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_setenv_works=yes -else $as_nop - gl_cv_func_setenv_works=no +else case e in #( + e) gl_cv_func_setenv_works=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_setenv_works" >&5 printf "%s\n" "$gl_cv_func_setenv_works" >&6; } @@ -33082,17 +37142,18 @@ printf "%s\n" "$gl_cv_func_setenv_works" >&6; } esac fi - if test $HAVE_SETENV = 0 || test $REPLACE_SETENV = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS setenv.$ac_objext" + if test $HAVE_SETENV = 0 || test $REPLACE_SETENV = 1; then + GL_COND_OBJ_SETENV_TRUE= + GL_COND_OBJ_SETENV_FALSE='#' +else + GL_COND_OBJ_SETENV_TRUE='#' + GL_COND_OBJ_SETENV_FALSE= +fi +: + if test -z "${GL_COND_OBJ_SETENV_TRUE}" && test -z "${GL_COND_OBJ_SETENV_FALSE}"; then + GL_COND_OBJ_SETENV_TRUE='#' + GL_COND_OBJ_SETENV_FALSE='#' fi @@ -33103,6 +37164,7 @@ printf "%s\n" "$gl_cv_func_setenv_works" >&6; } + GL_GNULIB_SETENV=1 @@ -33123,11 +37185,35 @@ printf %s "checking whether setlocale (LC_ALL, NULL) is multithread-safe... " >& if test ${gl_cv_func_setlocale_null_all_mtsafe+y} then : printf %s "(cached) " >&6 -else $as_nop - case "$host_os" in - # Guess no on musl libc, macOS, FreeBSD, NetBSD, OpenBSD, AIX, Haiku, Cygwin. - *-musl* | darwin* | freebsd* | midnightbsd* | netbsd* | openbsd* | aix* | haiku* | cygwin*) +else case e in #( + e) case "$host_os" in + # Guess no on musl libc, macOS, FreeBSD, NetBSD, OpenBSD, AIX, Haiku. + *-musl* | midipix* | darwin* | freebsd* | midnightbsd* | netbsd* | openbsd* | aix* | haiku*) gl_cv_func_setlocale_null_all_mtsafe=no ;; + # Guess no on Cygwin < 3.4.6. + cygwin*) + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#if defined __CYGWIN__ + #include + #if CYGWIN_VERSION_DLL_COMBINED >= CYGWIN_VERSION_DLL_MAKE_COMBINED (3004, 6) + Lucky user + #endif +#endif + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP_TRADITIONAL "Lucky user" >/dev/null 2>&1 +then : + gl_cv_func_setlocale_null_all_mtsafe=yes +else case e in #( + e) gl_cv_func_setlocale_null_all_mtsafe=no ;; +esac +fi +rm -rf conftest* + + ;; # Guess yes on glibc, HP-UX, IRIX, Solaris, native Windows. *-gnu* | gnu* | hpux* | irix* | solaris* | mingw*) gl_cv_func_setlocale_null_all_mtsafe=yes ;; @@ -33135,7 +37221,8 @@ else $as_nop *) gl_cv_func_setlocale_null_all_mtsafe="$gl_cross_guess_normal" ;; esac - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_setlocale_null_all_mtsafe" >&5 printf "%s\n" "$gl_cv_func_setlocale_null_all_mtsafe" >&6; } @@ -33160,19 +37247,20 @@ printf %s "checking whether setlocale (category, NULL) is multithread-safe... " if test ${gl_cv_func_setlocale_null_one_mtsafe+y} then : printf %s "(cached) " >&6 -else $as_nop - case "$host_os" in +else case e in #( + e) case "$host_os" in # Guess no on OpenBSD, AIX. openbsd* | aix*) gl_cv_func_setlocale_null_one_mtsafe=no ;; # Guess yes on glibc, musl libc, macOS, FreeBSD, NetBSD, HP-UX, IRIX, Solaris, Haiku, Cygwin, native Windows. - *-gnu* | gnu* | *-musl* | darwin* | freebsd* | midnightbsd* | netbsd* | hpux* | irix* | solaris* | haiku* | cygwin* | mingw*) + *-gnu* | gnu* | *-musl* | midipix* | darwin* | freebsd* | midnightbsd* | netbsd* | hpux* | irix* | solaris* | haiku* | cygwin* | mingw*) gl_cv_func_setlocale_null_one_mtsafe=yes ;; # If we don't know, obey --enable-cross-guesses. *) gl_cv_func_setlocale_null_one_mtsafe="$gl_cross_guess_normal" ;; esac - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_setlocale_null_one_mtsafe" >&5 printf "%s\n" "$gl_cv_func_setlocale_null_one_mtsafe" >&6; } @@ -33194,7 +37282,7 @@ printf "%s\n" "#define SETLOCALE_NULL_ONE_MTSAFE $SETLOCALE_NULL_ONE_MTSAFE" >>c if test $SETLOCALE_NULL_ALL_MTSAFE = 0 || test $SETLOCALE_NULL_ONE_MTSAFE = 0; then case "$host_os" in - mingw*) LIB_SETLOCALE_NULL= ;; + mingw*) SETLOCALE_NULL_LIB= ;; *) @@ -33203,9 +37291,14 @@ printf %s "checking whether imported symbols can be declared weak... " >&6; } if test ${gl_cv_have_weak+y} then : printf %s "(cached) " >&6 -else $as_nop - gl_cv_have_weak=no - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) case "$host_os" in + cygwin* | mingw*) + gl_cv_have_weak="guessing no" + ;; + *) + gl_cv_have_weak=no + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ extern void xyzzy (); #pragma weak xyzzy @@ -33223,28 +37316,29 @@ then : fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext - if test $gl_cv_have_weak = maybe; then - if test "$cross_compiling" = yes + if test $gl_cv_have_weak = maybe; then + if test "$cross_compiling" = yes then : - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifdef __ELF__ - Extensible Linking Format - #endif + Extensible Linking Format + #endif _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "Extensible Linking Format" >/dev/null 2>&1 + $EGREP_TRADITIONAL "Extensible Linking Format" >/dev/null 2>&1 then : gl_cv_have_weak="guessing yes" -else $as_nop - gl_cv_have_weak="guessing no" +else case e in #( + e) gl_cv_have_weak="guessing no" ;; +esac fi rm -rf conftest* -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -33257,14 +37351,18 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_have_weak=yes -else $as_nop - gl_cv_have_weak=no +else case e in #( + e) gl_cv_have_weak=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - fi + fi + ;; + esac case " $LDFLAGS " in *" -static "*) gl_cv_have_weak=no ;; esac @@ -33289,7 +37387,8 @@ EOF esac ;; esac - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_have_weak" >&5 printf "%s\n" "$gl_cv_have_weak" >&6; } @@ -33302,26 +37401,33 @@ printf "%s\n" "#define HAVE_WEAK_SYMBOLS 1" >>confdefs.h esac case "$gl_cv_have_weak" in - *yes) LIB_SETLOCALE_NULL= ;; - *) LIB_SETLOCALE_NULL="$LIBPTHREAD" ;; + *yes) SETLOCALE_NULL_LIB= ;; + *) SETLOCALE_NULL_LIB="$LIBPTHREAD" ;; esac ;; esac else - LIB_SETLOCALE_NULL= + SETLOCALE_NULL_LIB= fi - - if test $SETLOCALE_NULL_ALL_MTSAFE = 0 || test $SETLOCALE_NULL_ONE_MTSAFE = 0; then - - - - + LIB_SETLOCALE_NULL="$SETLOCALE_NULL_LIB" + if test $SETLOCALE_NULL_ALL_MTSAFE = 0 || test $SETLOCALE_NULL_ONE_MTSAFE = 0; then + GL_COND_OBJ_SETLOCALE_LOCK_TRUE= + GL_COND_OBJ_SETLOCALE_LOCK_FALSE='#' +else + GL_COND_OBJ_SETLOCALE_LOCK_TRUE='#' + GL_COND_OBJ_SETLOCALE_LOCK_FALSE= +fi +: + if test -z "${GL_COND_OBJ_SETLOCALE_LOCK_TRUE}" && test -z "${GL_COND_OBJ_SETLOCALE_LOCK_FALSE}"; then + GL_COND_OBJ_SETLOCALE_LOCK_TRUE='#' + GL_COND_OBJ_SETLOCALE_LOCK_FALSE='#' + fi - gl_LIBOBJS="$gl_LIBOBJS setlocale-lock.$ac_objext" + if test -z "$GL_COND_OBJ_SETLOCALE_LOCK_TRUE"; then : @@ -33334,8 +37440,8 @@ printf %s "checking whether the -Werror option is usable... " >&6; } if test ${gl_cv_cc_vis_werror+y} then : printf %s "(cached) " >&6 -else $as_nop - gl_save_CFLAGS="$CFLAGS" +else case e in #( + e) gl_save_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS -Werror" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -33351,12 +37457,14 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_cc_vis_werror=yes -else $as_nop - gl_cv_cc_vis_werror=no +else case e in #( + e) gl_cv_cc_vis_werror=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext CFLAGS="$gl_save_CFLAGS" - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_vis_werror" >&5 printf "%s\n" "$gl_cv_cc_vis_werror" >&6; } @@ -33365,8 +37473,8 @@ printf %s "checking for simple visibility declarations... " >&6; } if test ${gl_cv_cc_visibility+y} then : printf %s "(cached) " >&6 -else $as_nop - gl_save_CFLAGS="$CFLAGS" +else case e in #( + e) gl_save_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS -fvisibility=hidden" if test $gl_cv_cc_vis_werror = yes; then CFLAGS="$CFLAGS -Werror" @@ -33395,12 +37503,14 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_cc_visibility=yes -else $as_nop - gl_cv_cc_visibility=no +else case e in #( + e) gl_cv_cc_visibility=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext CFLAGS="$gl_save_CFLAGS" - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_visibility" >&5 printf "%s\n" "$gl_cv_cc_visibility" >&6; } @@ -33416,7 +37526,8 @@ printf "%s\n" "#define HAVE_VISIBILITY $HAVE_VISIBILITY" >>confdefs.h - fi + +fi @@ -33444,20 +37555,38 @@ printf "%s\n" "#define GNULIB_TEST_SETLOCALE_NULL 1" >>confdefs.h -# Check whether --with-libsigsegv was given. -if test ${with_libsigsegv+y} + + + + HAVE_POSIX_SIGNALBLOCKING=0 + if test "$gl_cv_type_sigset_t" = yes; then + ac_fn_c_check_func "$LINENO" "sigprocmask" "ac_cv_func_sigprocmask" +if test "x$ac_cv_func_sigprocmask" = xyes then : - withval=$with_libsigsegv; + HAVE_POSIX_SIGNALBLOCKING=1 fi - SIGSEGV_H=sigsegv.h - if test "$with_libsigsegv" = yes; then - + fi + if test $HAVE_POSIX_SIGNALBLOCKING = 0; then + GL_COND_OBJ_SIGPROCMASK_TRUE= + GL_COND_OBJ_SIGPROCMASK_FALSE='#' +else + GL_COND_OBJ_SIGPROCMASK_TRUE='#' + GL_COND_OBJ_SIGPROCMASK_FALSE= +fi +: + if test -z "${GL_COND_OBJ_SIGPROCMASK_TRUE}" && test -z "${GL_COND_OBJ_SIGPROCMASK_FALSE}"; then + GL_COND_OBJ_SIGPROCMASK_TRUE='#' + GL_COND_OBJ_SIGPROCMASK_FALSE='#' + fi + if test -z "$GL_COND_OBJ_SIGPROCMASK_TRUE"; then : + : +fi @@ -33465,601 +37594,68 @@ fi - use_additional=yes - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval additional_includedir=\"$includedir\" - eval additional_libdir=\"$libdir\" - eval additional_libdir2=\"$exec_prefix/$acl_libdirstem2\" - eval additional_libdir3=\"$exec_prefix/$acl_libdirstem3\" + GL_GNULIB_SIGPROCMASK=1 - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" -# Check whether --with-libsigsegv-prefix was given. -if test ${with_libsigsegv_prefix+y} -then : - withval=$with_libsigsegv_prefix; - if test "X$withval" = "Xno"; then - use_additional=no - else - if test "X$withval" = "X"; then - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval additional_includedir=\"$includedir\" - eval additional_libdir=\"$libdir\" - eval additional_libdir2=\"$exec_prefix/$acl_libdirstem2\" - eval additional_libdir3=\"$exec_prefix/$acl_libdirstem3\" +printf "%s\n" "#define GNULIB_TEST_SIGPROCMASK 1" >>confdefs.h - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - else - additional_includedir="$withval/include" - additional_libdir="$withval/$acl_libdirstem" - additional_libdir2="$withval/$acl_libdirstem2" - additional_libdir3="$withval/$acl_libdirstem3" - fi - fi -fi - if test "X$additional_libdir2" = "X$additional_libdir"; then - additional_libdir2= - fi - if test "X$additional_libdir3" = "X$additional_libdir"; then - additional_libdir3= + if test $gl_sigsegv_uses_libsigsegv = yes; then + GL_GENERATE_SIGSEGV_H=false + else + GL_GENERATE_SIGSEGV_H=true fi - LIBSIGSEGV= - LTLIBSIGSEGV= - INCSIGSEGV= - LIBSIGSEGV_PREFIX= - HAVE_LIBSIGSEGV= - rpathdirs= - ltrpathdirs= - names_already_handled= - names_next_round='sigsegv ' - while test -n "$names_next_round"; do - names_this_round="$names_next_round" - names_next_round= - for name in $names_this_round; do - already_handled= - for n in $names_already_handled; do - if test "$n" = "$name"; then - already_handled=yes - break - fi - done - if test -z "$already_handled"; then - names_already_handled="$names_already_handled $name" - uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./+-|ABCDEFGHIJKLMNOPQRSTUVWXYZ____|'` - eval value=\"\$HAVE_LIB$uppername\" - if test -n "$value"; then - if test "$value" = yes; then - eval value=\"\$LIB$uppername\" - test -z "$value" || LIBSIGSEGV="${LIBSIGSEGV}${LIBSIGSEGV:+ }$value" - eval value=\"\$LTLIB$uppername\" - test -z "$value" || LTLIBSIGSEGV="${LTLIBSIGSEGV}${LTLIBSIGSEGV:+ }$value" - else - : - fi - else - found_dir= - found_la= - found_so= - found_a= - eval libname=\"$acl_libname_spec\" # typically: libname=lib$name - if test -n "$acl_shlibext"; then - shrext=".$acl_shlibext" # typically: shrext=.so - else - shrext= - fi - if test $use_additional = yes; then - for additional_libdir_variable in additional_libdir additional_libdir2 additional_libdir3; do - if test "X$found_dir" = "X"; then - eval dir=\$$additional_libdir_variable - if test -n "$dir"; then - if test -n "$acl_shlibext"; then - if test -f "$dir/$libname$shrext" && acl_is_expected_elfclass < "$dir/$libname$shrext"; then - found_dir="$dir" - found_so="$dir/$libname$shrext" - else - if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then - ver=`(cd "$dir" && \ - for f in "$libname$shrext".*; do echo "$f"; done \ - | sed -e "s,^$libname$shrext\\\\.,," \ - | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \ - | sed 1q ) 2>/dev/null` - if test -n "$ver" && test -f "$dir/$libname$shrext.$ver" && acl_is_expected_elfclass < "$dir/$libname$shrext.$ver"; then - found_dir="$dir" - found_so="$dir/$libname$shrext.$ver" - fi - else - eval library_names=\"$acl_library_names_spec\" - for f in $library_names; do - if test -f "$dir/$f" && acl_is_expected_elfclass < "$dir/$f"; then - found_dir="$dir" - found_so="$dir/$f" - break - fi - done - fi - fi - fi - if test "X$found_dir" = "X"; then - if test -f "$dir/$libname.$acl_libext" && ${AR-ar} -p "$dir/$libname.$acl_libext" | acl_is_expected_elfclass; then - found_dir="$dir" - found_a="$dir/$libname.$acl_libext" - fi - fi - if test "X$found_dir" != "X"; then - if test -f "$dir/$libname.la"; then - found_la="$dir/$libname.la" - fi - fi - fi - fi - done - fi - if test "X$found_dir" = "X"; then - for x in $LDFLAGS $LTLIBSIGSEGV; do - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - case "$x" in - -L*) - dir=`echo "X$x" | sed -e 's/^X-L//'` - if test -n "$acl_shlibext"; then - if test -f "$dir/$libname$shrext" && acl_is_expected_elfclass < "$dir/$libname$shrext"; then - found_dir="$dir" - found_so="$dir/$libname$shrext" - else - if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then - ver=`(cd "$dir" && \ - for f in "$libname$shrext".*; do echo "$f"; done \ - | sed -e "s,^$libname$shrext\\\\.,," \ - | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \ - | sed 1q ) 2>/dev/null` - if test -n "$ver" && test -f "$dir/$libname$shrext.$ver" && acl_is_expected_elfclass < "$dir/$libname$shrext.$ver"; then - found_dir="$dir" - found_so="$dir/$libname$shrext.$ver" - fi - else - eval library_names=\"$acl_library_names_spec\" - for f in $library_names; do - if test -f "$dir/$f" && acl_is_expected_elfclass < "$dir/$f"; then - found_dir="$dir" - found_so="$dir/$f" - break - fi - done - fi - fi - fi - if test "X$found_dir" = "X"; then - if test -f "$dir/$libname.$acl_libext" && ${AR-ar} -p "$dir/$libname.$acl_libext" | acl_is_expected_elfclass; then - found_dir="$dir" - found_a="$dir/$libname.$acl_libext" - fi - fi - if test "X$found_dir" != "X"; then - if test -f "$dir/$libname.la"; then - found_la="$dir/$libname.la" - fi - fi - ;; - esac - if test "X$found_dir" != "X"; then - break - fi - done - fi - if test "X$found_dir" != "X"; then - LTLIBSIGSEGV="${LTLIBSIGSEGV}${LTLIBSIGSEGV:+ }-L$found_dir -l$name" - if test "X$found_so" != "X"; then - if test "$enable_rpath" = no \ - || test "X$found_dir" = "X/usr/$acl_libdirstem" \ - || test "X$found_dir" = "X/usr/$acl_libdirstem2" \ - || test "X$found_dir" = "X/usr/$acl_libdirstem3"; then - LIBSIGSEGV="${LIBSIGSEGV}${LIBSIGSEGV:+ }$found_so" - else - haveit= - for x in $ltrpathdirs; do - if test "X$x" = "X$found_dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - ltrpathdirs="$ltrpathdirs $found_dir" - fi - if test "$acl_hardcode_direct" = yes; then - LIBSIGSEGV="${LIBSIGSEGV}${LIBSIGSEGV:+ }$found_so" - else - if test -n "$acl_hardcode_libdir_flag_spec" && test "$acl_hardcode_minus_L" = no; then - LIBSIGSEGV="${LIBSIGSEGV}${LIBSIGSEGV:+ }$found_so" - haveit= - for x in $rpathdirs; do - if test "X$x" = "X$found_dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - rpathdirs="$rpathdirs $found_dir" - fi - else - haveit= - for x in $LDFLAGS $LIBSIGSEGV; do - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - if test "X$x" = "X-L$found_dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - LIBSIGSEGV="${LIBSIGSEGV}${LIBSIGSEGV:+ }-L$found_dir" - fi - if test "$acl_hardcode_minus_L" != no; then - LIBSIGSEGV="${LIBSIGSEGV}${LIBSIGSEGV:+ }$found_so" - else - LIBSIGSEGV="${LIBSIGSEGV}${LIBSIGSEGV:+ }-l$name" - fi - fi - fi - fi - else - if test "X$found_a" != "X"; then - LIBSIGSEGV="${LIBSIGSEGV}${LIBSIGSEGV:+ }$found_a" - else - LIBSIGSEGV="${LIBSIGSEGV}${LIBSIGSEGV:+ }-L$found_dir -l$name" - fi - fi - additional_includedir= - case "$found_dir" in - */$acl_libdirstem | */$acl_libdirstem/) - basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem/"'*$,,'` - if test "$name" = 'sigsegv'; then - LIBSIGSEGV_PREFIX="$basedir" - fi - additional_includedir="$basedir/include" - ;; - */$acl_libdirstem2 | */$acl_libdirstem2/) - basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem2/"'*$,,'` - if test "$name" = 'sigsegv'; then - LIBSIGSEGV_PREFIX="$basedir" - fi - additional_includedir="$basedir/include" - ;; - */$acl_libdirstem3 | */$acl_libdirstem3/) - basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem3/"'*$,,'` - if test "$name" = 'sigsegv'; then - LIBSIGSEGV_PREFIX="$basedir" - fi - additional_includedir="$basedir/include" - ;; - esac - if test "X$additional_includedir" != "X"; then - if test "X$additional_includedir" != "X/usr/include"; then - haveit= - if test "X$additional_includedir" = "X/usr/local/include"; then - if test -n "$GCC"; then - case $host_os in - linux* | gnu* | k*bsd*-gnu) haveit=yes;; - esac - fi - fi - if test -z "$haveit"; then - for x in $CPPFLAGS $INCSIGSEGV; do + case "$GL_GENERATE_SIGSEGV_H" in + false) SIGSEGV_H='' ;; + true) + if test -z "$SIGSEGV_H"; then + SIGSEGV_H="${gl_source_base_prefix}sigsegv.h" + fi + ;; + *) echo "*** GL_GENERATE_SIGSEGV_H is not set correctly" 1>&2; exit 1 ;; + esac - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - if test "X$x" = "X-I$additional_includedir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - if test -d "$additional_includedir"; then - INCSIGSEGV="${INCSIGSEGV}${INCSIGSEGV:+ }-I$additional_includedir" - fi - fi - fi - fi - fi - if test -n "$found_la"; then - save_libdir="$libdir" - case "$found_la" in - */* | *\\*) . "$found_la" ;; - *) . "./$found_la" ;; - esac - libdir="$save_libdir" - for dep in $dependency_libs; do - case "$dep" in - -L*) - dependency_libdir=`echo "X$dep" | sed -e 's/^X-L//'` - if test "X$dependency_libdir" != "X/usr/$acl_libdirstem" \ - && test "X$dependency_libdir" != "X/usr/$acl_libdirstem2" \ - && test "X$dependency_libdir" != "X/usr/$acl_libdirstem3"; then - haveit= - if test "X$dependency_libdir" = "X/usr/local/$acl_libdirstem" \ - || test "X$dependency_libdir" = "X/usr/local/$acl_libdirstem2" \ - || test "X$dependency_libdir" = "X/usr/local/$acl_libdirstem3"; then - if test -n "$GCC"; then - case $host_os in - linux* | gnu* | k*bsd*-gnu) haveit=yes;; - esac - fi - fi - if test -z "$haveit"; then - haveit= - for x in $LDFLAGS $LIBSIGSEGV; do + if $GL_GENERATE_SIGSEGV_H; then + GL_GENERATE_SIGSEGV_H_TRUE= + GL_GENERATE_SIGSEGV_H_FALSE='#' +else + GL_GENERATE_SIGSEGV_H_TRUE='#' + GL_GENERATE_SIGSEGV_H_FALSE= +fi +: + if test -z "${GL_GENERATE_SIGSEGV_H_TRUE}" && test -z "${GL_GENERATE_SIGSEGV_H_FALSE}"; then + GL_GENERATE_SIGSEGV_H_TRUE='#' + GL_GENERATE_SIGSEGV_H_FALSE='#' + fi - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - if test "X$x" = "X-L$dependency_libdir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - if test -d "$dependency_libdir"; then - LIBSIGSEGV="${LIBSIGSEGV}${LIBSIGSEGV:+ }-L$dependency_libdir" - fi - fi - haveit= - for x in $LDFLAGS $LTLIBSIGSEGV; do - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - if test "X$x" = "X-L$dependency_libdir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - if test -d "$dependency_libdir"; then - LTLIBSIGSEGV="${LTLIBSIGSEGV}${LTLIBSIGSEGV:+ }-L$dependency_libdir" - fi - fi - fi - fi - ;; - -R*) - dir=`echo "X$dep" | sed -e 's/^X-R//'` - if test "$enable_rpath" != no; then - haveit= - for x in $rpathdirs; do - if test "X$x" = "X$dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - rpathdirs="$rpathdirs $dir" - fi - haveit= - for x in $ltrpathdirs; do - if test "X$x" = "X$dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - ltrpathdirs="$ltrpathdirs $dir" - fi - fi - ;; - -l*) - dep=`echo "X$dep" | sed -e 's/^X-l//'` - if test "X$dep" != Xc \ - || case $host_os in - linux* | gnu* | k*bsd*-gnu) false ;; - *) true ;; - esac; then - names_next_round="$names_next_round $dep" - fi - ;; - *.la) - names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'` - ;; - *) - LIBSIGSEGV="${LIBSIGSEGV}${LIBSIGSEGV:+ }$dep" - LTLIBSIGSEGV="${LTLIBSIGSEGV}${LTLIBSIGSEGV:+ }$dep" - ;; - esac - done - fi - else - LIBSIGSEGV="${LIBSIGSEGV}${LIBSIGSEGV:+ }-l$name" - LTLIBSIGSEGV="${LTLIBSIGSEGV}${LTLIBSIGSEGV:+ }-l$name" - fi - fi - fi - done - done - if test "X$rpathdirs" != "X"; then - if test -n "$acl_hardcode_libdir_separator"; then - alldirs= - for found_dir in $rpathdirs; do - alldirs="${alldirs}${alldirs:+$acl_hardcode_libdir_separator}$found_dir" - done - acl_save_libdir="$libdir" - libdir="$alldirs" - eval flag=\"$acl_hardcode_libdir_flag_spec\" - libdir="$acl_save_libdir" - LIBSIGSEGV="${LIBSIGSEGV}${LIBSIGSEGV:+ }$flag" - else - for found_dir in $rpathdirs; do - acl_save_libdir="$libdir" - libdir="$found_dir" - eval flag=\"$acl_hardcode_libdir_flag_spec\" - libdir="$acl_save_libdir" - LIBSIGSEGV="${LIBSIGSEGV}${LIBSIGSEGV:+ }$flag" - done - fi - fi - if test "X$ltrpathdirs" != "X"; then - for found_dir in $ltrpathdirs; do - LTLIBSIGSEGV="${LTLIBSIGSEGV}${LTLIBSIGSEGV:+ }-R$found_dir" - done - fi + if $GL_GENERATE_SIGSEGV_H; then + case "$host_os" in + solaris2.11) - ac_save_CPPFLAGS="$CPPFLAGS" +printf "%s\n" "#define SOLARIS11 1" >>confdefs.h - for element in $INCSIGSEGV; do - haveit= - for x in $CPPFLAGS; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - if test "X$x" = "X$element"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element" - fi - done - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for libsigsegv" >&5 -printf %s "checking for libsigsegv... " >&6; } -if test ${ac_cv_libsigsegv+y} -then : - printf %s "(cached) " >&6 -else $as_nop - - ac_save_LIBS="$LIBS" - case " $LIBSIGSEGV" in - *" -l"*) LIBS="$LIBS $LIBSIGSEGV" ;; - *) LIBS="$LIBSIGSEGV $LIBS" ;; - esac - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -int -main (void) -{ -sigsegv_deinstall_handler(); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO" -then : - ac_cv_libsigsegv=yes -else $as_nop - ac_cv_libsigsegv='no, consider installing GNU libsigsegv' -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam \ - conftest$ac_exeext conftest.$ac_ext - LIBS="$ac_save_LIBS" - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_libsigsegv" >&5 -printf "%s\n" "$ac_cv_libsigsegv" >&6; } - if test "$ac_cv_libsigsegv" = yes; then - HAVE_LIBSIGSEGV=yes - -printf "%s\n" "#define HAVE_LIBSIGSEGV 1" >>confdefs.h - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to link with libsigsegv" >&5 -printf %s "checking how to link with libsigsegv... " >&6; } - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $LIBSIGSEGV" >&5 -printf "%s\n" "$LIBSIGSEGV" >&6; } - else - HAVE_LIBSIGSEGV=no - CPPFLAGS="$ac_save_CPPFLAGS" - LIBSIGSEGV= - LTLIBSIGSEGV= - LIBSIGSEGV_PREFIX= - fi - - - - - - - - gl_cv_lib_sigsegv="$ac_cv_libsigsegv" - - if test "$gl_cv_lib_sigsegv" = yes; then - SIGSEGV_H= - fi - fi - - if test -n "$SIGSEGV_H"; then - GL_GENERATE_SIGSEGV_H_TRUE= - GL_GENERATE_SIGSEGV_H_FALSE='#' -else - GL_GENERATE_SIGSEGV_H_TRUE='#' - GL_GENERATE_SIGSEGV_H_FALSE= -fi - - if test -n "$SIGSEGV_H"; then - - - case "$host_os" in - solaris2.11) - -printf "%s\n" "#define SOLARIS11 1" >>confdefs.h - - ;; - esac + ;; + esac @@ -34068,48 +37664,68 @@ printf %s "checking for stack direction... " >&6; } if test ${sv_cv_stack_direction_msg+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) case "$host_cpu" in a29k | \ aarch64* | \ alpha* | \ - arc | \ + arc | arceb | arc32 | arc64 | \ arm* | strongarm* | xscale* | \ avr | avr32 | \ bfin | \ c1 | c2 | c32 | c34 | c38 | \ clipper | \ + cr16 | \ cris | \ + csky | \ d30v | \ + epiphany | \ elxsi | \ fr30 | \ + frv | \ + ft32 | \ h8300 | \ i?86 | x86_64 | \ i860 | \ ia64 | \ + iq2000 | \ + lm32 | \ + loongarch* | \ + m32c | \ m32r | \ m68* | \ m88k | \ mcore | \ - microblaze | \ + microblaze* | \ mips* | \ mmix | \ mn10200 | \ mn10300 | \ - nios2 | \ + moxie | \ + msp430 | \ nds32* | \ + nios2 | nios2eb | nios2el | \ ns32k | \ + nvptx | \ + or1k | \ pdp11 | \ pj* | \ powerpc* | rs6000 | \ + pru | \ riscv* | \ + rl78 | \ romp | \ + rx | \ s390* | \ sh* | \ sparc* | \ + tic6x | \ + tilegx | \ + tilepro | \ v850 | \ vax | \ + visium | \ xtensa) sv_cv_stack_direction=-1 ;; c4x | \ @@ -34134,7 +37750,7 @@ find_stack_direction (int *addr, int depth) return dir + dummy; } int -main (int argc, char *argv) +main (int argc, char *argv[]) { printf ("%d\n", find_stack_direction (NULL, argc + 20)); return 0; @@ -34156,7 +37772,8 @@ EOF -1) sv_cv_stack_direction_msg="grows down";; *) sv_cv_stack_direction_msg="unknown";; esac - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $sv_cv_stack_direction_msg" >&5 printf "%s\n" "$sv_cv_stack_direction_msg" >&6; } @@ -34181,11 +37798,12 @@ printf "%s\n" "#define STACK_DIRECTION $sv_cv_stack_direction" >>confdefs.h if test "x$ac_cv_type_stack_t" = xyes then : -else $as_nop - +else case e in #( + e) printf "%s\n" "#define stack_t struct sigaltstack" >>confdefs.h - + ;; +esac fi fi @@ -34195,8 +37813,8 @@ printf %s "checking for working sigaltstack... " >&6; } if test ${sv_cv_sigaltstack+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) if test "$ac_cv_func_sigaltstack" = yes; then case "$host_os" in macos* | darwin[6-9]* | darwin[1-9][0-9]*) @@ -34218,8 +37836,9 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : sv_cv_sigaltstack="guessing yes" -else $as_nop - sv_cv_sigaltstack=no +else case e in #( + e) sv_cv_sigaltstack=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext @@ -34245,16 +37864,17 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : sv_cv_sigaltstack="guessing yes" -else $as_nop - sv_cv_sigaltstack=no +else case e in #( + e) sv_cv_sigaltstack=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext ;; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -34322,11 +37942,13 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : sv_cv_sigaltstack=yes -else $as_nop - sv_cv_sigaltstack=no +else case e in #( + e) sv_cv_sigaltstack=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi ;; @@ -34334,7 +37956,8 @@ fi else sv_cv_sigaltstack=no fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $sv_cv_sigaltstack" >&5 printf "%s\n" "$sv_cv_sigaltstack" >&6; } @@ -34348,8 +37971,8 @@ printf %s "checking for correct stack_t interpretation... " >&6; } if test ${sv_cv_sigaltstack_low_base+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) if test "$cross_compiling" = yes then : @@ -34358,8 +37981,8 @@ then : *) sv_cv_sigaltstack_low_base="guessing yes" ;; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -34409,14 +38032,17 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : sv_cv_sigaltstack_low_base=yes -else $as_nop - sv_cv_sigaltstack_low_base=no +else case e in #( + e) sv_cv_sigaltstack_low_base=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $sv_cv_sigaltstack_low_base" >&5 printf "%s\n" "$sv_cv_sigaltstack_low_base" >&6; } @@ -34430,106 +38056,13 @@ printf "%s\n" "#define SIGALTSTACK_SS_REVERSED 1" >>confdefs.h fi - ac_fn_c_check_header_compile "$LINENO" "stdint.h" "ac_cv_header_stdint_h" "$ac_includes_default" -if test "x$ac_cv_header_stdint_h" = xyes -then : - printf "%s\n" "#define HAVE_STDINT_H 1" >>confdefs.h - -fi - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for SIZE_MAX" >&5 -printf %s "checking for SIZE_MAX... " >&6; } -if test ${gl_cv_size_max+y} -then : - printf %s "(cached) " >&6 -else $as_nop - - gl_cv_size_max=no - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#if HAVE_STDINT_H -#include -#endif -#ifdef SIZE_MAX -Found it -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "Found it" >/dev/null 2>&1 -then : - gl_cv_size_max=yes -fi -rm -rf conftest* - - if test $gl_cv_size_max != yes; then - if ac_fn_c_compute_int "$LINENO" "sizeof (size_t) * CHAR_BIT - 1" "size_t_bits_minus_1" "#include -#include " -then : - -else $as_nop - size_t_bits_minus_1= -fi - - if ac_fn_c_compute_int "$LINENO" "sizeof (size_t) <= sizeof (unsigned int)" "fits_in_uint" "#include " -then : - -else $as_nop - fits_in_uint= -fi - - if test -n "$size_t_bits_minus_1" && test -n "$fits_in_uint"; then - if test $fits_in_uint = 1; then - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - extern size_t foo; - extern unsigned long foo; - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - fits_in_uint=0 -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - fi - if test $fits_in_uint = 1; then - gl_cv_size_max="(((1U << $size_t_bits_minus_1) - 1) * 2 + 1)" - else - gl_cv_size_max="(((1UL << $size_t_bits_minus_1) - 1) * 2 + 1)" - fi - else - gl_cv_size_max='((size_t)~(size_t)0)' - fi - fi - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_size_max" >&5 -printf "%s\n" "$gl_cv_size_max" >&6; } - if test "$gl_cv_size_max" != yes; then - -printf "%s\n" "#define SIZE_MAX $gl_cv_size_max" >>confdefs.h - - fi - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ssize_t" >&5 printf %s "checking for ssize_t... " >&6; } if test ${gt_cv_ssize_t+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int @@ -34544,10 +38077,12 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gt_cv_ssize_t=yes -else $as_nop - gt_cv_ssize_t=no +else case e in #( + e) gt_cv_ssize_t=no ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_ssize_t" >&5 printf "%s\n" "$gt_cv_ssize_t" >&6; } @@ -34571,8 +38106,8 @@ printf %s "checking whether stat handles trailing slashes on files... " >&6; } if test ${gl_cv_func_stat_file_slash+y} then : printf %s "(cached) " >&6 -else $as_nop - touch conftest.tmp +else case e in #( + e) touch conftest.tmp # Assume that if we have lstat, we can also check symlinks. if test $ac_cv_func_lstat = yes; then ln -s conftest.tmp conftest.lnk @@ -34582,14 +38117,16 @@ then : case "$host_os" in # Guess yes on Linux systems. linux-* | linux) gl_cv_func_stat_file_slash="guessing yes" ;; + # Guess yes on systems that emulate the Linux system calls. + midipix*) gl_cv_func_stat_file_slash="guessing yes" ;; # Guess yes on glibc systems. *-gnu* | gnu*) gl_cv_func_stat_file_slash="guessing yes" ;; # If we don't know, obey --enable-cross-guesses. *) gl_cv_func_stat_file_slash="$gl_cross_guess_normal" ;; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -34613,14 +38150,17 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_stat_file_slash=yes -else $as_nop - gl_cv_func_stat_file_slash=no +else case e in #( + e) gl_cv_func_stat_file_slash=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - rm -f conftest.tmp conftest.lnk + rm -f conftest.tmp conftest.lnk ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_stat_file_slash" >&5 printf "%s\n" "$gl_cv_func_stat_file_slash" >&6; } @@ -34638,16 +38178,21 @@ printf "%s\n" "#define REPLACE_FUNC_STAT_FILE 1" >>confdefs.h ;; esac - if test $REPLACE_STAT = 1; then - - - - - - + if test $REPLACE_STAT = 1; then + GL_COND_OBJ_STAT_TRUE= + GL_COND_OBJ_STAT_FALSE='#' +else + GL_COND_OBJ_STAT_TRUE='#' + GL_COND_OBJ_STAT_FALSE= +fi +: + if test -z "${GL_COND_OBJ_STAT_TRUE}" && test -z "${GL_COND_OBJ_STAT_FALSE}"; then + GL_COND_OBJ_STAT_TRUE='#' + GL_COND_OBJ_STAT_FALSE='#' + fi - gl_LIBOBJS="$gl_LIBOBJS stat.$ac_objext" + if test -z "$GL_COND_OBJ_STAT_TRUE"; then : case "$host_os" in mingw*) @@ -34668,7 +38213,8 @@ printf "%s\n" "#define REPLACE_FUNC_STAT_FILE 1" >>confdefs.h : - fi + +fi @@ -34705,8 +38251,8 @@ printf %s "checking whether struct stat.st_atim is of type struct timespec... " if test ${ac_cv_typeof_struct_stat_st_atim_is_struct_timespec+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -34731,10 +38277,12 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : ac_cv_typeof_struct_stat_st_atim_is_struct_timespec=yes -else $as_nop - ac_cv_typeof_struct_stat_st_atim_is_struct_timespec=no +else case e in #( + e) ac_cv_typeof_struct_stat_st_atim_is_struct_timespec=no ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_typeof_struct_stat_st_atim_is_struct_timespec" >&5 printf "%s\n" "$ac_cv_typeof_struct_stat_st_atim_is_struct_timespec" >&6; } @@ -34743,8 +38291,8 @@ printf "%s\n" "$ac_cv_typeof_struct_stat_st_atim_is_struct_timespec" >&6; } printf "%s\n" "#define TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC 1" >>confdefs.h fi -else $as_nop - ac_fn_c_check_member "$LINENO" "struct stat" "st_atimespec.tv_nsec" "ac_cv_member_struct_stat_st_atimespec_tv_nsec" "#include +else case e in #( + e) ac_fn_c_check_member "$LINENO" "struct stat" "st_atimespec.tv_nsec" "ac_cv_member_struct_stat_st_atimespec_tv_nsec" "#include #include " if test "x$ac_cv_member_struct_stat_st_atimespec_tv_nsec" = xyes @@ -34753,8 +38301,8 @@ then : printf "%s\n" "#define HAVE_STRUCT_STAT_ST_ATIMESPEC_TV_NSEC 1" >>confdefs.h -else $as_nop - ac_fn_c_check_member "$LINENO" "struct stat" "st_atimensec" "ac_cv_member_struct_stat_st_atimensec" "#include +else case e in #( + e) ac_fn_c_check_member "$LINENO" "struct stat" "st_atimensec" "ac_cv_member_struct_stat_st_atimensec" "#include #include " if test "x$ac_cv_member_struct_stat_st_atimensec" = xyes @@ -34763,8 +38311,8 @@ then : printf "%s\n" "#define HAVE_STRUCT_STAT_ST_ATIMENSEC 1" >>confdefs.h -else $as_nop - ac_fn_c_check_member "$LINENO" "struct stat" "st_atim.st__tim.tv_nsec" "ac_cv_member_struct_stat_st_atim_st__tim_tv_nsec" "#include +else case e in #( + e) ac_fn_c_check_member "$LINENO" "struct stat" "st_atim.st__tim.tv_nsec" "ac_cv_member_struct_stat_st_atim_st__tim_tv_nsec" "#include #include " if test "x$ac_cv_member_struct_stat_st_atim_st__tim_tv_nsec" = xyes @@ -34774,11 +38322,14 @@ printf "%s\n" "#define HAVE_STRUCT_STAT_ST_ATIM_ST__TIM_TV_NSEC 1" >>confdefs.h fi - + ;; +esac fi - + ;; +esac fi - + ;; +esac fi @@ -34794,8 +38345,8 @@ then : printf "%s\n" "#define HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC 1" >>confdefs.h -else $as_nop - ac_fn_c_check_member "$LINENO" "struct stat" "st_birthtimensec" "ac_cv_member_struct_stat_st_birthtimensec" "#include +else case e in #( + e) ac_fn_c_check_member "$LINENO" "struct stat" "st_birthtimensec" "ac_cv_member_struct_stat_st_birthtimensec" "#include #include " if test "x$ac_cv_member_struct_stat_st_birthtimensec" = xyes @@ -34804,8 +38355,8 @@ then : printf "%s\n" "#define HAVE_STRUCT_STAT_ST_BIRTHTIMENSEC 1" >>confdefs.h -else $as_nop - ac_fn_c_check_member "$LINENO" "struct stat" "st_birthtim.tv_nsec" "ac_cv_member_struct_stat_st_birthtim_tv_nsec" "#include +else case e in #( + e) ac_fn_c_check_member "$LINENO" "struct stat" "st_birthtim.tv_nsec" "ac_cv_member_struct_stat_st_birthtim_tv_nsec" "#include #include " if test "x$ac_cv_member_struct_stat_st_birthtim_tv_nsec" = xyes @@ -34815,98 +38366,24 @@ printf "%s\n" "#define HAVE_STRUCT_STAT_ST_BIRTHTIM_TV_NSEC 1" >>confdefs.h fi - -fi - -fi - - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for working stdalign.h" >&5 -printf %s "checking for working stdalign.h... " >&6; } -if test ${gl_cv_header_working_stdalign_h+y} -then : - printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - #include - #include - - /* Test that alignof yields a result consistent with offsetof. - This catches GCC bug 52023 - . */ - #ifdef __cplusplus - template struct alignof_helper { char a; t b; }; - # define ao(type) offsetof (alignof_helper, b) - #else - # define ao(type) offsetof (struct { char a; type b; }, b) - #endif - char test_double[ao (double) % _Alignof (double) == 0 ? 1 : -1]; - char test_long[ao (long int) % _Alignof (long int) == 0 ? 1 : -1]; - char test_alignof[alignof (double) == _Alignof (double) ? 1 : -1]; - - /* Test _Alignas only on platforms where gnulib can help. */ - #if \ - ((defined __cplusplus && 201103 <= __cplusplus) \ - || (__TINYC__ && defined __attribute__) \ - || (defined __APPLE__ && defined __MACH__ \ - ? 4 < __GNUC__ + (1 <= __GNUC_MINOR__) \ - : __GNUC__) \ - || (__ia64 && (61200 <= __HP_cc || 61200 <= __HP_aCC)) \ - || __ICC || 0x590 <= __SUNPRO_C || 0x0600 <= __xlC__ \ - || 1300 <= _MSC_VER) - struct alignas_test { char c; char alignas (8) alignas_8; }; - char test_alignas[offsetof (struct alignas_test, alignas_8) == 8 - ? 1 : -1]; - #endif - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - gl_cv_header_working_stdalign_h=yes -else $as_nop - gl_cv_header_working_stdalign_h=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext + ;; +esac fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_working_stdalign_h" >&5 -printf "%s\n" "$gl_cv_header_working_stdalign_h" >&6; } - - if test $gl_cv_header_working_stdalign_h = yes; then - STDALIGN_H='' - else - STDALIGN_H='stdalign.h' - fi - - - if test -n "$STDALIGN_H"; then - GL_GENERATE_STDALIGN_H_TRUE= - GL_GENERATE_STDALIGN_H_FALSE='#' -else - GL_GENERATE_STDALIGN_H_TRUE='#' - GL_GENERATE_STDALIGN_H_FALSE= + ;; +esac fi - STDARG_H='' + GL_GENERATE_STDARG_H=false NEXT_STDARG_H='' { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for va_copy" >&5 printf %s "checking for va_copy... " >&6; } if test ${gl_cv_func_va_copy+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int @@ -34924,11 +38401,13 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_func_va_copy=yes -else $as_nop - gl_cv_func_va_copy=no +else case e in #( + e) gl_cv_func_va_copy=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_va_copy" >&5 printf "%s\n" "$gl_cv_func_va_copy" >&6; } @@ -34941,16 +38420,17 @@ printf "%s\n" "$gl_cv_func_va_copy" >&6; } _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "vaccine" >/dev/null 2>&1 + $EGREP_TRADITIONAL "vaccine" >/dev/null 2>&1 then : gl_aixcc=yes -else $as_nop - gl_aixcc=no +else case e in #( + e) gl_aixcc=no ;; +esac fi rm -rf conftest* if test $gl_aixcc = yes; then - STDARG_H=stdarg.h + GL_GENERATE_STDARG_H=true @@ -34967,8 +38447,8 @@ printf %s "checking absolute name of ... " >&6; } if test ${gl_cv_next_stdarg_h+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -35001,10 +38481,11 @@ _ACEOF gl_cv_absolute_stdarg_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | sed -n "$gl_absolute_header_sed"` - gl_header=$gl_cv_absolute_stdarg_h - gl_cv_next_stdarg_h='"'$gl_header'"' - + gl_header=$gl_cv_absolute_stdarg_h + gl_cv_next_stdarg_h='"'$gl_header'"' + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_stdarg_h" >&5 printf "%s\n" "$gl_cv_next_stdarg_h" >&6; } @@ -35035,8 +38516,8 @@ printf "%s\n" "$gl_cv_next_stdarg_h" >&6; } if test ${gl_cv_func___va_copy+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -35055,10 +38536,12 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_func___va_copy=yes -else $as_nop - gl_cv_func___va_copy=no +else case e in #( + e) gl_cv_func___va_copy=no ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi @@ -35078,13 +38561,34 @@ printf "%s\n" "#define va_copy gl_va_copy" >>confdefs.h fi fi - if test -n "$STDARG_H"; then + + + + + + case "$GL_GENERATE_STDARG_H" in + false) STDARG_H='' ;; + true) + if test -z "$STDARG_H"; then + STDARG_H="${gl_source_base_prefix}stdarg.h" + fi + ;; + *) echo "*** GL_GENERATE_STDARG_H is not set correctly" 1>&2; exit 1 ;; + esac + + + if $GL_GENERATE_STDARG_H; then GL_GENERATE_STDARG_H_TRUE= GL_GENERATE_STDARG_H_FALSE='#' else GL_GENERATE_STDARG_H_TRUE='#' GL_GENERATE_STDARG_H_FALSE= fi +: + if test -z "${GL_GENERATE_STDARG_H_TRUE}" && test -z "${GL_GENERATE_STDARG_H_FALSE}"; then + GL_GENERATE_STDARG_H_TRUE='#' + GL_GENERATE_STDARG_H_FALSE='#' + fi @@ -35092,36 +38596,114 @@ fi - if test "$ac_cv_header_stdbool_h" = yes; then - case "$host_os" in - solaris*) - if test -z "$GCC"; then - STDBOOL_H='stdbool.h' - else - STDBOOL_H='' - fi - ;; - *) - STDBOOL_H='' - ;; - esac + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for bool, true, false" >&5 +printf %s "checking for bool, true, false... " >&6; } +if test ${gl_cv_c_bool+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + + #if true == false + #error "true == false" + #endif + extern bool b; + bool b = true == false; +_ACEOF +if ac_fn_c_try_compile "$LINENO" +then : + gl_cv_c_bool=yes +else case e in #( + e) gl_cv_c_bool=no ;; +esac +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_c_bool" >&5 +printf "%s\n" "$gl_cv_c_bool" >&6; } + if test "$gl_cv_c_bool" = yes; then + +printf "%s\n" "#define HAVE_C_BOOL 1" >>confdefs.h + + fi + + + + + + + if test $ac_cv_header_stdckdint_h = yes; then + GL_GENERATE_STDCKDINT_H=false else - STDBOOL_H='stdbool.h' + GL_GENERATE_STDCKDINT_H=true fi - if test -n "$STDBOOL_H"; then - GL_GENERATE_STDBOOL_H_TRUE= - GL_GENERATE_STDBOOL_H_FALSE='#' + + + + case "$GL_GENERATE_STDCKDINT_H" in + false) STDCKDINT_H='' ;; + true) + if test -z "$STDCKDINT_H"; then + STDCKDINT_H="${gl_source_base_prefix}stdckdint.h" + fi + ;; + *) echo "*** GL_GENERATE_STDCKDINT_H is not set correctly" 1>&2; exit 1 ;; + esac + + + if $GL_GENERATE_STDCKDINT_H; then + GL_GENERATE_STDCKDINT_H_TRUE= + GL_GENERATE_STDCKDINT_H_FALSE='#' else - GL_GENERATE_STDBOOL_H_TRUE='#' - GL_GENERATE_STDBOOL_H_FALSE= + GL_GENERATE_STDCKDINT_H_TRUE='#' + GL_GENERATE_STDCKDINT_H_FALSE= fi +: + if test -z "${GL_GENERATE_STDCKDINT_H_TRUE}" && test -z "${GL_GENERATE_STDCKDINT_H_FALSE}"; then + GL_GENERATE_STDCKDINT_H_TRUE='#' + GL_GENERATE_STDCKDINT_H_FALSE='#' + fi - if test "$ac_cv_type__Bool" = yes; then - HAVE__BOOL=1 - else - HAVE__BOOL=0 + + + + + + + + + + + + + + + case "$GL_GENERATE_STDDEF_H" in + false) STDDEF_H='' ;; + true) + if test -z "$STDDEF_H"; then + STDDEF_H="${gl_source_base_prefix}stddef.h" + fi + ;; + *) echo "*** GL_GENERATE_STDDEF_H is not set correctly" 1>&2; exit 1 ;; + esac + + + if $GL_GENERATE_STDDEF_H; then + GL_GENERATE_STDDEF_H_TRUE= + GL_GENERATE_STDDEF_H_FALSE='#' +else + GL_GENERATE_STDDEF_H_TRUE='#' + GL_GENERATE_STDDEF_H_FALSE= +fi +: + if test -z "${GL_GENERATE_STDDEF_H_TRUE}" && test -z "${GL_GENERATE_STDDEF_H_FALSE}"; then + GL_GENERATE_STDDEF_H_TRUE='#' + GL_GENERATE_STDDEF_H_FALSE='#' fi @@ -35134,8 +38716,30 @@ fi + case "$GL_GENERATE_STDINT_H" in + false) STDINT_H='' ;; + true) + if test -z "$STDINT_H"; then + STDINT_H="${gl_source_base_prefix}stdint.h" + fi + ;; + *) echo "*** GL_GENERATE_STDINT_H is not set correctly" 1>&2; exit 1 ;; + esac + if $GL_GENERATE_STDINT_H; then + GL_GENERATE_STDINT_H_TRUE= + GL_GENERATE_STDINT_H_FALSE='#' +else + GL_GENERATE_STDINT_H_TRUE='#' + GL_GENERATE_STDINT_H_FALSE= +fi +: + if test -z "${GL_GENERATE_STDINT_H_TRUE}" && test -z "${GL_GENERATE_STDINT_H_FALSE}"; then + GL_GENERATE_STDINT_H_TRUE='#' + GL_GENERATE_STDINT_H_FALSE='#' + fi + @@ -35144,6 +38748,76 @@ fi + case "$GL_GENERATE_LIMITS_H" in + false) LIMITS_H='' ;; + true) + if test -z "$LIMITS_H"; then + LIMITS_H="${gl_source_base_prefix}limits.h" + fi + ;; + *) echo "*** GL_GENERATE_LIMITS_H is not set correctly" 1>&2; exit 1 ;; + esac + + + if $GL_GENERATE_LIMITS_H; then + GL_GENERATE_LIMITS_H_TRUE= + GL_GENERATE_LIMITS_H_FALSE='#' +else + GL_GENERATE_LIMITS_H_TRUE='#' + GL_GENERATE_LIMITS_H_FALSE= +fi +: + if test -z "${GL_GENERATE_LIMITS_H_TRUE}" && test -z "${GL_GENERATE_LIMITS_H_FALSE}"; then + GL_GENERATE_LIMITS_H_TRUE='#' + GL_GENERATE_LIMITS_H_FALSE='#' + fi + + + + + + + + + + + + + + + if test $REPLACE_STDIO_READ_FUNCS = 1; then + GL_COND_OBJ_STDIO_READ_TRUE= + GL_COND_OBJ_STDIO_READ_FALSE='#' +else + GL_COND_OBJ_STDIO_READ_TRUE='#' + GL_COND_OBJ_STDIO_READ_FALSE= +fi +: + if test -z "${GL_COND_OBJ_STDIO_READ_TRUE}" && test -z "${GL_COND_OBJ_STDIO_READ_FALSE}"; then + GL_COND_OBJ_STDIO_READ_TRUE='#' + GL_COND_OBJ_STDIO_READ_FALSE='#' + fi + + + if test $REPLACE_STDIO_WRITE_FUNCS = 1; then + GL_COND_OBJ_STDIO_WRITE_TRUE= + GL_COND_OBJ_STDIO_WRITE_FALSE='#' +else + GL_COND_OBJ_STDIO_WRITE_TRUE='#' + GL_COND_OBJ_STDIO_WRITE_FALSE= +fi +: + if test -z "${GL_COND_OBJ_STDIO_WRITE_TRUE}" && test -z "${GL_COND_OBJ_STDIO_WRITE_FALSE}"; then + GL_COND_OBJ_STDIO_WRITE_TRUE='#' + GL_COND_OBJ_STDIO_WRITE_FALSE='#' + fi + + + + + + + @@ -35480,6 +39154,134 @@ printf "%s\n" "#define GNULIB_TEST_FWRITE 1" >>confdefs.h + + + + + + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for stpcpy" >&5 +printf %s "checking for stpcpy... " >&6; } +if test ${gl_cv_onwards_func_stpcpy+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + exec 9>&6 6>/dev/null + + case "$host_os" in + + linux*-android*) + ac_fn_check_decl "$LINENO" "stpcpy" "ac_cv_have_decl_stpcpy" "#include +" "$ac_c_undeclared_builtin_options" "CFLAGS" +if test "x$ac_cv_have_decl_stpcpy" = xyes +then : + +fi + if test $ac_cv_have_decl_stpcpy = yes; then + ac_fn_c_check_func "$LINENO" "stpcpy" "ac_cv_func_stpcpy" +if test "x$ac_cv_func_stpcpy" = xyes +then : + +fi + + if test $ac_cv_func_stpcpy = yes; then + gl_cv_onwards_func_stpcpy=yes + else + gl_cv_onwards_func_stpcpy='future OS version' + fi + else + gl_cv_onwards_func_stpcpy='future OS version' + fi + ;; + + + *) + ac_fn_c_check_func "$LINENO" "stpcpy" "ac_cv_func_stpcpy" +if test "x$ac_cv_func_stpcpy" = xyes +then : + +fi + + gl_cv_onwards_func_stpcpy=$ac_cv_func_stpcpy + ;; + + esac + + exec 6>&9 9>&- + + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_onwards_func_stpcpy" >&5 +printf "%s\n" "$gl_cv_onwards_func_stpcpy" >&6; } + + case "$gl_cv_onwards_func_stpcpy" in + future*) ac_cv_func_stpcpy=no ;; + *) ac_cv_func_stpcpy=$gl_cv_onwards_func_stpcpy ;; + esac + if test $ac_cv_func_stpcpy = yes; then + +printf "%s\n" "#define HAVE_STPCPY 1" >>confdefs.h + + fi + + + if test $ac_cv_func_stpcpy = no; then + HAVE_STPCPY=0 + case "$gl_cv_onwards_func_stpcpy" in + future*) REPLACE_STPCPY=1 ;; + esac + fi + + + if test $HAVE_STPCPY = 0 || test $REPLACE_STPCPY = 1; then + GL_COND_OBJ_STPCPY_TRUE= + GL_COND_OBJ_STPCPY_FALSE='#' +else + GL_COND_OBJ_STPCPY_TRUE='#' + GL_COND_OBJ_STPCPY_FALSE= +fi +: + if test -z "${GL_COND_OBJ_STPCPY_TRUE}" && test -z "${GL_COND_OBJ_STPCPY_FALSE}"; then + GL_COND_OBJ_STPCPY_TRUE='#' + GL_COND_OBJ_STPCPY_FALSE='#' + fi + + if test -z "$GL_COND_OBJ_STPCPY_TRUE"; then : + + + : + + +fi + + + + + + + + + + + + + + + GL_GNULIB_STPCPY=1 + + + + + +printf "%s\n" "#define GNULIB_TEST_STPCPY 1" >>confdefs.h + + + + + + ac_fn_c_check_func "$LINENO" "strcasecmp" "ac_cv_func_strcasecmp" if test "x$ac_cv_func_strcasecmp" = xyes then : @@ -35509,8 +39311,9 @@ fi if test "x$ac_cv_have_decl_strncasecmp" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_STRNCASECMP $ac_have_decl" >>confdefs.h @@ -35519,63 +39322,75 @@ printf "%s\n" "#define HAVE_DECL_STRNCASECMP $ac_have_decl" >>confdefs.h fi - if test $HAVE_STRCASECMP = 0; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS strcasecmp.$ac_objext" - - - : + if test $HAVE_STRCASECMP = 0; then + GL_COND_OBJ_STRCASECMP_TRUE= + GL_COND_OBJ_STRCASECMP_FALSE='#' +else + GL_COND_OBJ_STRCASECMP_TRUE='#' + GL_COND_OBJ_STRCASECMP_FALSE= +fi +: + if test -z "${GL_COND_OBJ_STRCASECMP_TRUE}" && test -z "${GL_COND_OBJ_STRCASECMP_FALSE}"; then + GL_COND_OBJ_STRCASECMP_TRUE='#' + GL_COND_OBJ_STRCASECMP_FALSE='#' fi - if test $HAVE_STRNCASECMP = 0; then - + if test -z "$GL_COND_OBJ_STRCASECMP_TRUE"; then : + : +fi + if test $HAVE_STRNCASECMP = 0; then + GL_COND_OBJ_STRNCASECMP_TRUE= + GL_COND_OBJ_STRNCASECMP_FALSE='#' +else + GL_COND_OBJ_STRNCASECMP_TRUE='#' + GL_COND_OBJ_STRNCASECMP_FALSE= +fi +: + if test -z "${GL_COND_OBJ_STRNCASECMP_TRUE}" && test -z "${GL_COND_OBJ_STRNCASECMP_FALSE}"; then + GL_COND_OBJ_STRNCASECMP_TRUE='#' + GL_COND_OBJ_STRNCASECMP_FALSE='#' + fi - gl_LIBOBJS="$gl_LIBOBJS strncasecmp.$ac_objext" + if test -z "$GL_COND_OBJ_STRNCASECMP_TRUE"; then : : - fi +fi - if test "$ERRNO_H:$REPLACE_STRERROR_0" = :0; then + + if test "$GL_GENERATE_ERRNO_H:$REPLACE_STRERROR_0" = false:0; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for working strerror function" >&5 printf %s "checking for working strerror function... " >&6; } if test ${gl_cv_func_working_strerror+y} then : printf %s "(cached) " >&6 -else $as_nop - if test "$cross_compiling" = yes +else case e in #( + e) if test "$cross_compiling" = yes then : case "$host_os" in - # Guess yes on glibc systems. - *-gnu* | gnu*) gl_cv_func_working_strerror="guessing yes" ;; - # Guess yes on musl systems. - *-musl*) gl_cv_func_working_strerror="guessing yes" ;; - # If we don't know, obey --enable-cross-guesses. - *) gl_cv_func_working_strerror="$gl_cross_guess_normal" ;; + # Guess yes on glibc systems. + *-gnu* | gnu*) gl_cv_func_working_strerror="guessing yes" ;; + # Guess yes on musl systems. + *-musl* | midipix*) gl_cv_func_working_strerror="guessing yes" ;; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_working_strerror="$gl_cross_guess_normal" ;; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -35590,14 +39405,17 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_working_strerror=yes -else $as_nop - gl_cv_func_working_strerror=no +else case e in #( + e) gl_cv_func_working_strerror=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_working_strerror" >&5 printf "%s\n" "$gl_cv_func_working_strerror" >&6; } @@ -35616,21 +39434,28 @@ printf "%s\n" "$gl_cv_func_working_strerror" >&6; } REPLACE_STRERROR=1 fi - if test $REPLACE_STRERROR = 1; then - - + if test $REPLACE_STRERROR = 1; then + GL_COND_OBJ_STRERROR_TRUE= + GL_COND_OBJ_STRERROR_FALSE='#' +else + GL_COND_OBJ_STRERROR_TRUE='#' + GL_COND_OBJ_STRERROR_FALSE= +fi +: + if test -z "${GL_COND_OBJ_STRERROR_TRUE}" && test -z "${GL_COND_OBJ_STRERROR_FALSE}"; then + GL_COND_OBJ_STRERROR_TRUE='#' + GL_COND_OBJ_STRERROR_FALSE='#' + fi +printf "%s\n" "#define GNULIB_STRERROR 1" >>confdefs.h - gl_LIBOBJS="$gl_LIBOBJS strerror.$ac_objext" - fi -printf "%s\n" "#define GNULIB_STRERROR 1" >>confdefs.h @@ -35654,16 +39479,21 @@ printf "%s\n" "#define GNULIB_TEST_STRERROR 1" >>confdefs.h - if test -n "$ERRNO_H" || test $REPLACE_STRERROR_0 = 1; then - - - - - - + if test -n "$ERRNO_H" || test $REPLACE_STRERROR_0 = 1; then + GL_COND_OBJ_STRERROR_OVERRIDE_TRUE= + GL_COND_OBJ_STRERROR_OVERRIDE_FALSE='#' +else + GL_COND_OBJ_STRERROR_OVERRIDE_TRUE='#' + GL_COND_OBJ_STRERROR_OVERRIDE_FALSE= +fi +: + if test -z "${GL_COND_OBJ_STRERROR_OVERRIDE_TRUE}" && test -z "${GL_COND_OBJ_STRERROR_OVERRIDE_FALSE}"; then + GL_COND_OBJ_STRERROR_OVERRIDE_TRUE='#' + GL_COND_OBJ_STRERROR_OVERRIDE_FALSE='#' + fi - gl_LIBOBJS="$gl_LIBOBJS strerror-override.$ac_objext" + if test -z "$GL_COND_OBJ_STRERROR_OVERRIDE_TRUE"; then : @@ -35687,7 +39517,8 @@ fi fi - fi + +fi if test $gl_cond_libtool = false; then gl_ltlibdeps="$gl_ltlibdeps $LTLIBICONV" gl_libdeps="$gl_libdeps $LIBICONV" @@ -35710,6 +39541,13 @@ fi + + + + + + + if test $ac_cv_have_decl_strnlen = no; then HAVE_DECL_STRNLEN=0 else @@ -35719,16 +39557,16 @@ printf %s "checking for working strnlen... " >&6; } if test ${ac_cv_func_strnlen_working+y} then : printf %s "(cached) " >&6 -else $as_nop - if test "$cross_compiling" = yes +else case e in #( + e) if test "$cross_compiling" = yes then : # Guess no on AIX systems, yes otherwise. case "$host_os" in aix*) ac_cv_func_strnlen_working=no;; *) ac_cv_func_strnlen_working=yes;; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $ac_includes_default int @@ -35757,13 +39595,16 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : ac_cv_func_strnlen_working=yes -else $as_nop - ac_cv_func_strnlen_working=no +else case e in #( + e) ac_cv_func_strnlen_working=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_strnlen_working" >&5 printf "%s\n" "$ac_cv_func_strnlen_working" >&6; } @@ -35775,19 +39616,30 @@ test $ac_cv_func_strnlen_working = no && : fi fi - if test $HAVE_DECL_STRNLEN = 0 || test $REPLACE_STRNLEN = 1; then + if test $HAVE_DECL_STRNLEN = 0 || test $REPLACE_STRNLEN = 1; then + GL_COND_OBJ_STRNLEN_TRUE= + GL_COND_OBJ_STRNLEN_FALSE='#' +else + GL_COND_OBJ_STRNLEN_TRUE='#' + GL_COND_OBJ_STRNLEN_FALSE= +fi +: + if test -z "${GL_COND_OBJ_STRNLEN_TRUE}" && test -z "${GL_COND_OBJ_STRNLEN_FALSE}"; then + GL_COND_OBJ_STRNLEN_TRUE='#' + GL_COND_OBJ_STRNLEN_FALSE='#' + fi + if test -z "$GL_COND_OBJ_STRNLEN_TRUE"; then : + : +fi - gl_LIBOBJS="$gl_LIBOBJS strnlen.$ac_objext" - : - fi @@ -35815,22 +39667,28 @@ printf "%s\n" "#define GNULIB_TEST_STRNLEN 1" >>confdefs.h HAVE_STRPTIME=0 fi - if test $HAVE_STRPTIME = 0; then - - - - - - + if test $HAVE_STRPTIME = 0; then + GL_COND_OBJ_STRPTIME_TRUE= + GL_COND_OBJ_STRPTIME_FALSE='#' +else + GL_COND_OBJ_STRPTIME_TRUE='#' + GL_COND_OBJ_STRPTIME_FALSE= +fi +: + if test -z "${GL_COND_OBJ_STRPTIME_TRUE}" && test -z "${GL_COND_OBJ_STRPTIME_FALSE}"; then + GL_COND_OBJ_STRPTIME_TRUE='#' + GL_COND_OBJ_STRPTIME_FALSE='#' + fi - gl_LIBOBJS="$gl_LIBOBJS strptime.$ac_objext" + if test -z "$GL_COND_OBJ_STRPTIME_TRUE"; then : : - fi + +fi @@ -35866,8 +39724,8 @@ printf %s "checking whether strtoimax works... " >&6; } if test ${gl_cv_func_strtoimax+y} then : printf %s "(cached) " >&6 -else $as_nop - if test "$cross_compiling" = yes +else case e in #( + e) if test "$cross_compiling" = yes then : case "$host_os" in # Guess no on AIX 5. @@ -35878,8 +39736,8 @@ then : *) gl_cv_func_strtoimax="guessing yes" ;; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -35922,14 +39780,17 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_strtoimax=yes -else $as_nop - gl_cv_func_strtoimax=no +else case e in #( + e) gl_cv_func_strtoimax=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_strtoimax" >&5 printf "%s\n" "$gl_cv_func_strtoimax" >&6; } @@ -35944,29 +39805,36 @@ printf "%s\n" "$gl_cv_func_strtoimax" >&6; } HAVE_STRTOIMAX=0 fi - if test $HAVE_DECL_STRTOIMAX = 0 || test $REPLACE_STRTOIMAX = 1; then - - - - - - + if test $HAVE_DECL_STRTOIMAX = 0 || test $REPLACE_STRTOIMAX = 1; then + GL_COND_OBJ_STRTOIMAX_TRUE= + GL_COND_OBJ_STRTOIMAX_FALSE='#' +else + GL_COND_OBJ_STRTOIMAX_TRUE='#' + GL_COND_OBJ_STRTOIMAX_FALSE= +fi +: + if test -z "${GL_COND_OBJ_STRTOIMAX_TRUE}" && test -z "${GL_COND_OBJ_STRTOIMAX_FALSE}"; then + GL_COND_OBJ_STRTOIMAX_TRUE='#' + GL_COND_OBJ_STRTOIMAX_FALSE='#' + fi - gl_LIBOBJS="$gl_LIBOBJS strtoimax.$ac_objext" + if test -z "$GL_COND_OBJ_STRTOIMAX_TRUE"; then : ac_fn_check_decl "$LINENO" "strtoll" "ac_cv_have_decl_strtoll" "$ac_includes_default" "$ac_c_undeclared_builtin_options" "CFLAGS" if test "x$ac_cv_have_decl_strtoll" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_STRTOLL $ac_have_decl" >>confdefs.h - fi + +fi @@ -35997,17 +39865,21 @@ printf %s "checking whether strtoll works... " >&6; } if test ${gl_cv_func_strtoll_works+y} then : printf %s "(cached) " >&6 -else $as_nop - if test "$cross_compiling" = yes +else case e in #( + e) if test "$cross_compiling" = yes then : case "$host_os" in - # Guess no on native Windows. - mingw*) gl_cv_func_strtoll_works="guessing no" ;; - *) gl_cv_func_strtoll_works="$gl_cross_guess_normal" ;; + # Guess no on native Windows. + mingw*) gl_cv_func_strtoll_works="guessing no" ;; + # Guess no on glibc systems. + *-gnu* | gnu*) gl_cv_func_strtoll_works="guessing no" ;; + # Guess no on musl systems. + *-musl* | midipix*) gl_cv_func_strtoll_works="guessing no" ;; + *) gl_cv_func_strtoll_works="$gl_cross_guess_normal" ;; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int @@ -36022,6 +39894,13 @@ int result = 0; if (term != input + 1) result |= 1; } + /* This test fails on pre-C23 platforms. */ + { + const char input[] = "0b1"; + (void) strtoll (input, &term, 2); + if (term != input + 3) + result |= 2; + } return result; ; @@ -36032,14 +39911,17 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_strtoll_works=yes -else $as_nop - gl_cv_func_strtoll_works=no +else case e in #( + e) gl_cv_func_strtoll_works=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_strtoll_works" >&5 printf "%s\n" "$gl_cv_func_strtoll_works" >&6; } @@ -36051,21 +39933,27 @@ printf "%s\n" "$gl_cv_func_strtoll_works" >&6; } HAVE_STRTOLL=0 fi - if test $HAVE_STRTOLL = 0 || test $REPLACE_STRTOLL = 1; then - - - - - - + if test $HAVE_STRTOLL = 0 || test $REPLACE_STRTOLL = 1; then + GL_COND_OBJ_STRTOLL_TRUE= + GL_COND_OBJ_STRTOLL_FALSE='#' +else + GL_COND_OBJ_STRTOLL_TRUE='#' + GL_COND_OBJ_STRTOLL_FALSE= +fi +: + if test -z "${GL_COND_OBJ_STRTOLL_TRUE}" && test -z "${GL_COND_OBJ_STRTOLL_FALSE}"; then + GL_COND_OBJ_STRTOLL_TRUE='#' + GL_COND_OBJ_STRTOLL_FALSE='#' + fi - gl_LIBOBJS="$gl_LIBOBJS strtoll.$ac_objext" + if test -z "$GL_COND_OBJ_STRTOLL_TRUE"; then : : - fi + +fi @@ -36144,6 +40032,7 @@ printf "%s\n" "#define GNULIB_TEMPNAME 1" >>confdefs.h + ac_fn_check_decl "$LINENO" "localtime_r" "ac_cv_have_decl_localtime_r" "/* mingw's provides the functions asctime_r, ctime_r, gmtime_r, localtime_r only if or has been included before. */ @@ -36156,8 +40045,9 @@ printf "%s\n" "#define GNULIB_TEMPNAME 1" >>confdefs.h if test "x$ac_cv_have_decl_localtime_r" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_LOCALTIME_R $ac_have_decl" >>confdefs.h @@ -36173,8 +40063,8 @@ printf %s "checking whether localtime_r is compatible with its POSIX signature.. if test ${gl_cv_time_r_posix+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* mingw's provides the functions asctime_r, ctime_r, gmtime_r, localtime_r only if or has @@ -36203,11 +40093,13 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_time_r_posix=yes -else $as_nop - gl_cv_time_r_posix=no +else case e in #( + e) gl_cv_time_r_posix=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_time_r_posix" >&5 printf "%s\n" "$gl_cv_time_r_posix" >&6; } @@ -36223,8 +40115,8 @@ printf %s "checking whether localtime_r exists as an inline function... " >&6; } if test ${gl_cv_func_localtime_r_inline+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* mingw's provides the functions asctime_r, ctime_r, gmtime_r, localtime_r only if or has @@ -36249,12 +40141,14 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : gl_cv_func_localtime_r_inline=yes -else $as_nop - gl_cv_func_localtime_r_inline=no +else case e in #( + e) gl_cv_func_localtime_r_inline=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_localtime_r_inline" >&5 printf "%s\n" "$gl_cv_func_localtime_r_inline" >&6; } @@ -36263,21 +40157,27 @@ printf "%s\n" "$gl_cv_func_localtime_r_inline" >&6; } fi fi - if test $HAVE_LOCALTIME_R = 0 || test $REPLACE_LOCALTIME_R = 1; then - - - - - - + if test $HAVE_LOCALTIME_R = 0 || test $REPLACE_LOCALTIME_R = 1; then + GL_COND_OBJ_TIME_R_TRUE= + GL_COND_OBJ_TIME_R_FALSE='#' +else + GL_COND_OBJ_TIME_R_TRUE='#' + GL_COND_OBJ_TIME_R_FALSE= +fi +: + if test -z "${GL_COND_OBJ_TIME_R_TRUE}" && test -z "${GL_COND_OBJ_TIME_R_FALSE}"; then + GL_COND_OBJ_TIME_R_TRUE='#' + GL_COND_OBJ_TIME_R_FALSE='#' + fi - gl_LIBOBJS="$gl_LIBOBJS time_r.$ac_objext" + if test -z "$GL_COND_OBJ_TIME_R_TRUE"; then : : - fi + +fi @@ -36310,13 +40210,13 @@ printf %s "checking whether localtime works even near extrema... " >&6; } if test ${gl_cv_func_localtime_works+y} then : printf %s "(cached) " >&6 -else $as_nop - gl_cv_func_localtime_works=yes +else case e in #( + e) gl_cv_func_localtime_works=yes if test "$cross_compiling" = yes then : gl_cv_func_localtime_works="guessing yes" -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include @@ -36347,9 +40247,11 @@ then : gl_cv_func_localtime_works=no fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_localtime_works" >&5 printf "%s\n" "$gl_cv_func_localtime_works" >&6; } @@ -36373,7 +40275,19 @@ fi HAVE_TIMEZONE_T=1 fi - if test $HAVE_TIMEZONE_T = 0; then + + if test $HAVE_TIMEZONE_T = 0; then + GL_COND_OBJ_TIME_RZ_TRUE= + GL_COND_OBJ_TIME_RZ_FALSE='#' +else + GL_COND_OBJ_TIME_RZ_TRUE='#' + GL_COND_OBJ_TIME_RZ_FALSE= +fi +: + if test -z "${GL_COND_OBJ_TIME_RZ_TRUE}" && test -z "${GL_COND_OBJ_TIME_RZ_FALSE}"; then + GL_COND_OBJ_TIME_RZ_TRUE='#' + GL_COND_OBJ_TIME_RZ_FALSE='#' + fi @@ -36382,32 +40296,90 @@ fi - gl_LIBOBJS="$gl_LIBOBJS time_rz.$ac_objext" - fi + GL_GNULIB_TIME_RZ=1 +printf "%s\n" "#define GNULIB_TEST_TIME_RZ 1" >>confdefs.h - GL_GNULIB_TIME_RZ=1 + REPLACE_TIMEGM=0 -printf "%s\n" "#define GNULIB_TEST_TIME_RZ 1" >>confdefs.h + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for timegm" >&5 +printf %s "checking for timegm... " >&6; } +if test ${gl_cv_onwards_func_timegm+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + exec 9>&6 6>/dev/null + case "$host_os" in + linux*-android*) + ac_fn_check_decl "$LINENO" "timegm" "ac_cv_have_decl_timegm" "#include +" "$ac_c_undeclared_builtin_options" "CFLAGS" +if test "x$ac_cv_have_decl_timegm" = xyes +then : +fi + if test $ac_cv_have_decl_timegm = yes; then + ac_fn_c_check_func "$LINENO" "timegm" "ac_cv_func_timegm" +if test "x$ac_cv_func_timegm" = xyes +then : +fi + if test $ac_cv_func_timegm = yes; then + gl_cv_onwards_func_timegm=yes + else + gl_cv_onwards_func_timegm='future OS version' + fi + else + gl_cv_onwards_func_timegm='future OS version' + fi + ;; + + + *) + ac_fn_c_check_func "$LINENO" "timegm" "ac_cv_func_timegm" +if test "x$ac_cv_func_timegm" = xyes +then : + +fi + + gl_cv_onwards_func_timegm=$ac_cv_func_timegm + ;; + + esac + + exec 6>&9 9>&- + + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_onwards_func_timegm" >&5 +printf "%s\n" "$gl_cv_onwards_func_timegm" >&6; } + + case "$gl_cv_onwards_func_timegm" in + future*) ac_cv_func_timegm=no ;; + *) ac_cv_func_timegm=$gl_cv_onwards_func_timegm ;; + esac + if test $ac_cv_func_timegm = yes; then + +printf "%s\n" "#define HAVE_TIMEGM 1" >>confdefs.h + + fi - REPLACE_TIMEGM=0 if test $ac_cv_func_timegm = yes; then if test "$gl_cv_func_working_mktime" != yes; then @@ -36416,23 +40388,32 @@ printf "%s\n" "#define GNULIB_TEST_TIME_RZ 1" >>confdefs.h fi else HAVE_TIMEGM=0 + case "$gl_cv_onwards_func_timegm" in + future*) REPLACE_TIMEGM=1 ;; + esac fi - if test $HAVE_TIMEGM = 0 || test $REPLACE_TIMEGM = 1; then - - - - - - + if test $HAVE_TIMEGM = 0 || test $REPLACE_TIMEGM = 1; then + GL_COND_OBJ_TIMEGM_TRUE= + GL_COND_OBJ_TIMEGM_FALSE='#' +else + GL_COND_OBJ_TIMEGM_TRUE='#' + GL_COND_OBJ_TIMEGM_FALSE= +fi +: + if test -z "${GL_COND_OBJ_TIMEGM_TRUE}" && test -z "${GL_COND_OBJ_TIMEGM_FALSE}"; then + GL_COND_OBJ_TIMEGM_TRUE='#' + GL_COND_OBJ_TIMEGM_FALSE='#' + fi - gl_LIBOBJS="$gl_LIBOBJS timegm.$ac_objext" + if test -z "$GL_COND_OBJ_TIMEGM_TRUE"; then : : - fi + +fi @@ -36461,17 +40442,18 @@ printf "%s\n" "#define GNULIB_TEST_TIMEGM 1" >>confdefs.h mingw*) REPLACE_TZSET=1 ;; esac - if test $REPLACE_TZSET = 1; then - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS tzset.$ac_objext" + if test $REPLACE_TZSET = 1; then + GL_COND_OBJ_TZSET_TRUE= + GL_COND_OBJ_TZSET_FALSE='#' +else + GL_COND_OBJ_TZSET_TRUE='#' + GL_COND_OBJ_TZSET_FALSE= +fi +: + if test -z "${GL_COND_OBJ_TZSET_TRUE}" && test -z "${GL_COND_OBJ_TZSET_FALSE}"; then + GL_COND_OBJ_TZSET_TRUE='#' + GL_COND_OBJ_TZSET_FALSE='#' fi @@ -36482,6 +40464,7 @@ printf "%s\n" "#define GNULIB_TEST_TIMEGM 1" >>confdefs.h + GL_GNULIB_TZSET=1 @@ -36500,6 +40483,7 @@ printf "%s\n" "#define GNULIB_TEST_TZSET 1" >>confdefs.h + if { test "$HAVE_LIBUNISTRING" != yes \ || { @@ -36519,7 +40503,9 @@ printf "%s\n" "#define GNULIB_TEST_TZSET 1" >>confdefs.h } }; then - LIBUNISTRING_UNISTR_H='unistr.h' + if test -z "$LIBUNISTRING_UNISTR_H"; then + LIBUNISTRING_UNISTR_H="${gl_source_base_prefix}unistr.h" + fi else LIBUNISTRING_UNISTR_H= fi @@ -36527,12 +40513,14 @@ printf "%s\n" "#define GNULIB_TEST_TZSET 1" >>confdefs.h + printf "%s\n" "#define GNULIB_UNISTR_U8_MBTOUCR 1" >>confdefs.h - if { test "$HAVE_LIBUNISTRING" != yes \ + + if { test "$HAVE_LIBUNISTRING" != yes \ || { @@ -36557,6 +40545,11 @@ else LIBUNISTRING_COMPILE_UNISTR_U8_MBTOUCR_TRUE='#' LIBUNISTRING_COMPILE_UNISTR_U8_MBTOUCR_FALSE= fi +: + if test -z "${LIBUNISTRING_COMPILE_UNISTR_U8_MBTOUCR_TRUE}" && test -z "${LIBUNISTRING_COMPILE_UNISTR_U8_MBTOUCR_FALSE}"; then + LIBUNISTRING_COMPILE_UNISTR_U8_MBTOUCR_TRUE='#' + LIBUNISTRING_COMPILE_UNISTR_U8_MBTOUCR_FALSE='#' + fi @@ -36566,7 +40559,8 @@ printf "%s\n" "#define GNULIB_UNISTR_U8_UCTOMB 1" >>confdefs.h - if { test "$HAVE_LIBUNISTRING" != yes \ + + if { test "$HAVE_LIBUNISTRING" != yes \ || { @@ -36591,6 +40585,11 @@ else LIBUNISTRING_COMPILE_UNISTR_U8_UCTOMB_TRUE='#' LIBUNISTRING_COMPILE_UNISTR_U8_UCTOMB_FALSE= fi +: + if test -z "${LIBUNISTRING_COMPILE_UNISTR_U8_UCTOMB_TRUE}" && test -z "${LIBUNISTRING_COMPILE_UNISTR_U8_UCTOMB_FALSE}"; then + LIBUNISTRING_COMPILE_UNISTR_U8_UCTOMB_TRUE='#' + LIBUNISTRING_COMPILE_UNISTR_U8_UCTOMB_FALSE='#' + fi @@ -36614,7 +40613,9 @@ fi } }; then - LIBUNISTRING_UNITYPES_H='unitypes.h' + if test -z "$LIBUNISTRING_UNITYPES_H"; then + LIBUNISTRING_UNITYPES_H="${gl_source_base_prefix}unitypes.h" + fi else LIBUNISTRING_UNITYPES_H= fi @@ -36623,6 +40624,7 @@ fi + if { test "$HAVE_LIBUNISTRING" != yes \ || { @@ -36642,7 +40644,9 @@ fi } }; then - LIBUNISTRING_UNIWIDTH_H='uniwidth.h' + if test -z "$LIBUNISTRING_UNIWIDTH_H"; then + LIBUNISTRING_UNIWIDTH_H="${gl_source_base_prefix}uniwidth.h" + fi else LIBUNISTRING_UNIWIDTH_H= fi @@ -36650,16 +40654,18 @@ fi - if { test "$HAVE_LIBUNISTRING" != yes \ + + + if { test "$HAVE_LIBUNISTRING" != yes \ || { - test $LIBUNISTRING_VERSION_MAJOR -lt 0 \ - || { test $LIBUNISTRING_VERSION_MAJOR -eq 0 \ - && { test $LIBUNISTRING_VERSION_MINOR -lt 9 \ - || { test $LIBUNISTRING_VERSION_MINOR -eq 9 \ - && test $LIBUNISTRING_VERSION_SUBMINOR -lt 8 + test $LIBUNISTRING_VERSION_MAJOR -lt 1 \ + || { test $LIBUNISTRING_VERSION_MAJOR -eq 1 \ + && { test $LIBUNISTRING_VERSION_MINOR -lt 1 \ + || { test $LIBUNISTRING_VERSION_MINOR -eq 1 \ + && test $LIBUNISTRING_VERSION_SUBMINOR -lt 0 } } } @@ -36675,6 +40681,11 @@ else LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_TRUE='#' LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_FALSE= fi +: + if test -z "${LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_TRUE}" && test -z "${LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_FALSE}"; then + LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_TRUE='#' + LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_FALSE='#' + fi @@ -36722,8 +40733,8 @@ printf %s "checking for unsetenv() return type... " >&6; } if test ${gt_cv_func_unsetenv_ret+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #undef _BSD @@ -36746,10 +40757,12 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gt_cv_func_unsetenv_ret='int' -else $as_nop - gt_cv_func_unsetenv_ret='void' +else case e in #( + e) gt_cv_func_unsetenv_ret='void' ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_unsetenv_ret" >&5 printf "%s\n" "$gt_cv_func_unsetenv_ret" >&6; } @@ -36765,8 +40778,8 @@ printf %s "checking whether unsetenv obeys POSIX... " >&6; } if test ${gl_cv_func_unsetenv_works+y} then : printf %s "(cached) " >&6 -else $as_nop - if test "$cross_compiling" = yes +else case e in #( + e) if test "$cross_compiling" = yes then : case "$host_os" in # Guess yes on glibc systems. @@ -36775,8 +40788,8 @@ then : *) gl_cv_func_unsetenv_works="$gl_cross_guess_normal" ;; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -36813,14 +40826,17 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_unsetenv_works=yes -else $as_nop - gl_cv_func_unsetenv_works=no +else case e in #( + e) gl_cv_func_unsetenv_works=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_unsetenv_works" >&5 printf "%s\n" "$gl_cv_func_unsetenv_works" >&6; } @@ -36832,22 +40848,28 @@ printf "%s\n" "$gl_cv_func_unsetenv_works" >&6; } esac fi - if test $HAVE_UNSETENV = 0 || test $REPLACE_UNSETENV = 1; then - - - - - + if test $HAVE_UNSETENV = 0 || test $REPLACE_UNSETENV = 1; then + GL_COND_OBJ_UNSETENV_TRUE= + GL_COND_OBJ_UNSETENV_FALSE='#' +else + GL_COND_OBJ_UNSETENV_TRUE='#' + GL_COND_OBJ_UNSETENV_FALSE= +fi +: + if test -z "${GL_COND_OBJ_UNSETENV_TRUE}" && test -z "${GL_COND_OBJ_UNSETENV_FALSE}"; then + GL_COND_OBJ_UNSETENV_TRUE='#' + GL_COND_OBJ_UNSETENV_FALSE='#' + fi + if test -z "$GL_COND_OBJ_UNSETENV_TRUE"; then : - gl_LIBOBJS="$gl_LIBOBJS unsetenv.$ac_objext" - fi +fi @@ -36868,158 +40890,89 @@ printf "%s\n" "#define GNULIB_TEST_UNSETENV 1" >>confdefs.h - - - if test $ac_cv_func_vasnprintf = no; then - - - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS vasnprintf.$ac_objext" - - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS printf-args.$ac_objext" - - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS printf-parse.$ac_objext" - - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS asnprintf.$ac_objext" - - if test $ac_cv_func_vasnprintf = yes; then - -printf "%s\n" "#define REPLACE_VASNPRINTF 1" >>confdefs.h - - fi - - - - - - - - - - ac_fn_c_check_type "$LINENO" "ptrdiff_t" "ac_cv_type_ptrdiff_t" "$ac_includes_default" -if test "x$ac_cv_type_ptrdiff_t" = xyes + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for variable-length arrays" >&5 +printf %s "checking for variable-length arrays... " >&6; } +if test ${ac_cv_c_vararrays+y} then : + printf %s "(cached) " >&6 +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + #ifndef __STDC_NO_VLA__ + #error __STDC_NO_VLA__ not defined + #endif -else $as_nop - -printf "%s\n" "#define ptrdiff_t long" >>confdefs.h - - -fi - - - - - +_ACEOF +if ac_fn_c_try_compile "$LINENO" +then : + ac_cv_c_vararrays='no: __STDC_NO_VLA__ is defined' +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +/* Test for VLA support. This test is partly inspired + from examples in the C standard. Use at least two VLA + functions to detect the GCC 3.4.3 bug described in: + https://lists.gnu.org/archive/html/bug-gnulib/2014-08/msg00014.html + */ + #ifdef __STDC_NO_VLA__ + syntax error; + #else + extern int n; + int B[100]; + int fvla (int m, int C[m][m]); + int + simple (int count, int all[static count]) + { + return all[count - 1]; + } - fi + int + fvla (int m, int C[m][m]) + { + typedef int VLA[m][m]; + VLA x; + int D[m]; + static int (*q)[m] = &B; + int (*s)[n] = q; + return C && &x[0][0] == &D[0] && &D[0] == s[0]; + } + #endif +int +main (void) +{ - ac_fn_c_check_func "$LINENO" "vasprintf" "ac_cv_func_vasprintf" -if test "x$ac_cv_func_vasprintf" = xyes + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO" then : - printf "%s\n" "#define HAVE_VASPRINTF 1" >>confdefs.h - + ac_cv_c_vararrays=yes +else case e in #( + e) ac_cv_c_vararrays=no ;; +esac fi +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_vararrays" >&5 +printf "%s\n" "$ac_cv_c_vararrays" >&6; } + if test "$ac_cv_c_vararrays" = yes; then - if test $ac_cv_func_vasprintf = no; then - - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS vasprintf.$ac_objext" - - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS asprintf.$ac_objext" - - - if test $ac_cv_func_vasprintf = yes; then - REPLACE_VASPRINTF=1 - else - HAVE_VASPRINTF=0 - fi - - - - - +printf "%s\n" "#define HAVE_C_VARARRAYS 1" >>confdefs.h + elif test "$ac_cv_c_vararrays" = no; then +printf "%s\n" "#define __STDC_NO_VLA__ 1" >>confdefs.h fi - - - - - - - - - GL_GNULIB_VASPRINTF=1 - - - - - -printf "%s\n" "#define GNULIB_TEST_VASPRINTF 1" >>confdefs.h - - - - - - XGETTEXT_EXTRA_OPTIONS="$XGETTEXT_EXTRA_OPTIONS --flag=asprintf:2:c-format" - - - - XGETTEXT_EXTRA_OPTIONS="$XGETTEXT_EXTRA_OPTIONS --flag=vasprintf:2:c-format" - - # Check whether --with-packager was given. if test ${with_packager+y} then : @@ -37084,186 +41037,6 @@ fi - if case "$host_os" in - mingw*) true ;; - *) test $ac_cv_func_mbsinit = yes ;; - esac \ - && test $ac_cv_func_mbrtowc = yes; then - - - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc handles incomplete characters" >&5 -printf %s "checking whether mbrtowc handles incomplete characters... " >&6; } -if test ${gl_cv_func_mbrtowc_incomplete_state+y} -then : - printf %s "(cached) " >&6 -else $as_nop - - case "$host_os" in - # Guess no on AIX and OSF/1. - aix* | osf*) gl_cv_func_mbrtowc_incomplete_state="guessing no" ;; - # Guess yes otherwise. - *) gl_cv_func_mbrtowc_incomplete_state="guessing yes" ;; - esac - if test $LOCALE_JA != none; then - if test "$cross_compiling" = yes -then : - : -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#include -int main () -{ - if (setlocale (LC_ALL, "$LOCALE_JA") != NULL) - { - const char input[] = "B\217\253\344\217\251\316er"; /* "Büßer" */ - mbstate_t state; - wchar_t wc; - - memset (&state, '\0', sizeof (mbstate_t)); - if (mbrtowc (&wc, input + 1, 1, &state) == (size_t)(-2)) - if (mbsinit (&state)) - return 2; - } - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO" -then : - gl_cv_func_mbrtowc_incomplete_state=yes -else $as_nop - gl_cv_func_mbrtowc_incomplete_state=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - else - if test $LOCALE_FR_UTF8 != none; then - if test "$cross_compiling" = yes -then : - : -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#include -int main () -{ - if (setlocale (LC_ALL, "$LOCALE_FR_UTF8") != NULL) - { - const char input[] = "B\303\274\303\237er"; /* "Büßer" */ - mbstate_t state; - wchar_t wc; - - memset (&state, '\0', sizeof (mbstate_t)); - if (mbrtowc (&wc, input + 1, 1, &state) == (size_t)(-2)) - if (mbsinit (&state)) - return 2; - } - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO" -then : - gl_cv_func_mbrtowc_incomplete_state=yes -else $as_nop - gl_cv_func_mbrtowc_incomplete_state=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - fi - fi - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_incomplete_state" >&5 -printf "%s\n" "$gl_cv_func_mbrtowc_incomplete_state" >&6; } - - - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc works as well as mbtowc" >&5 -printf %s "checking whether mbrtowc works as well as mbtowc... " >&6; } -if test ${gl_cv_func_mbrtowc_sanitycheck+y} -then : - printf %s "(cached) " >&6 -else $as_nop - - case "$host_os" in - # Guess no on Solaris 8. - solaris2.8) gl_cv_func_mbrtowc_sanitycheck="guessing no" ;; - # Guess yes otherwise. - *) gl_cv_func_mbrtowc_sanitycheck="guessing yes" ;; - esac - if test $LOCALE_ZH_CN != none; then - if test "$cross_compiling" = yes -then : - : -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#include -#include -int main () -{ - /* This fails on Solaris 8: - mbrtowc returns 2, and sets wc to 0x00F0. - mbtowc returns 4 (correct) and sets wc to 0x5EDC. */ - if (setlocale (LC_ALL, "$LOCALE_ZH_CN") != NULL) - { - char input[] = "B\250\271\201\060\211\070er"; /* "Büßer" */ - mbstate_t state; - wchar_t wc; - - memset (&state, '\0', sizeof (mbstate_t)); - if (mbrtowc (&wc, input + 3, 6, &state) != 4 - && mbtowc (&wc, input + 3, 6) == 4) - return 2; - } - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO" -then : - gl_cv_func_mbrtowc_sanitycheck=yes -else $as_nop - gl_cv_func_mbrtowc_sanitycheck=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - fi - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_mbrtowc_sanitycheck" >&5 -printf "%s\n" "$gl_cv_func_mbrtowc_sanitycheck" >&6; } - - REPLACE_MBSTATE_T=0 - case "$gl_cv_func_mbrtowc_incomplete_state" in - *yes) ;; - *) REPLACE_MBSTATE_T=1 ;; - esac - case "$gl_cv_func_mbrtowc_sanitycheck" in - *yes) ;; - *) REPLACE_MBSTATE_T=1 ;; - esac - else - REPLACE_MBSTATE_T=1 - fi - if test $ac_cv_func_wcrtomb = no; then @@ -37275,8 +41048,9 @@ printf "%s\n" "$gl_cv_func_mbrtowc_sanitycheck" >&6; } if test "x$ac_cv_have_decl_wcrtomb" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_WCRTOMB $ac_have_decl" >>confdefs.h @@ -37295,8 +41069,8 @@ printf %s "checking whether wcrtomb works in the C locale... " >&6; } if test ${gl_cv_func_wcrtomb_works+y} then : printf %s "(cached) " >&6 -else $as_nop - if test "$cross_compiling" = yes +else case e in #( + e) if test "$cross_compiling" = yes then : case "$host_os" in # Guess no on Android. @@ -37305,8 +41079,8 @@ then : *) gl_cv_func_wcrtomb_works="guessing yes";; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -37326,14 +41100,17 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_wcrtomb_works=yes -else $as_nop - gl_cv_func_wcrtomb_works=no +else case e in #( + e) gl_cv_func_wcrtomb_works=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_wcrtomb_works" >&5 printf "%s\n" "$gl_cv_func_wcrtomb_works" >&6; } @@ -37351,8 +41128,8 @@ printf %s "checking whether wcrtomb return value is correct... " >&6; } if test ${gl_cv_func_wcrtomb_retval+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) case "$host_os" in # Guess no on AIX 4, OSF/1, Solaris, native Windows. aix4* | osf* | solaris* | mingw*) gl_cv_func_wcrtomb_retval="guessing no" ;; @@ -37363,8 +41140,8 @@ else $as_nop if test "$cross_compiling" = yes then : : -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -37406,15 +41183,18 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_wcrtomb_retval=yes -else $as_nop - gl_cv_func_wcrtomb_retval=no +else case e in #( + e) gl_cv_func_wcrtomb_retval=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_wcrtomb_retval" >&5 printf "%s\n" "$gl_cv_func_wcrtomb_retval" >&6; } @@ -37428,21 +41208,32 @@ printf "%s\n" "#define WCRTOMB_RETVAL_BUG 1" >>confdefs.h fi fi - if test $HAVE_WCRTOMB = 0 || test $REPLACE_WCRTOMB = 1; then + if test $HAVE_WCRTOMB = 0 || test $REPLACE_WCRTOMB = 1; then + GL_COND_OBJ_WCRTOMB_TRUE= + GL_COND_OBJ_WCRTOMB_FALSE='#' +else + GL_COND_OBJ_WCRTOMB_TRUE='#' + GL_COND_OBJ_WCRTOMB_FALSE= +fi +: + if test -z "${GL_COND_OBJ_WCRTOMB_TRUE}" && test -z "${GL_COND_OBJ_WCRTOMB_FALSE}"; then + GL_COND_OBJ_WCRTOMB_TRUE='#' + GL_COND_OBJ_WCRTOMB_FALSE='#' + fi + if test -z "$GL_COND_OBJ_WCRTOMB_TRUE"; then : + : +fi - gl_LIBOBJS="$gl_LIBOBJS wcrtomb.$ac_objext" - : - fi @@ -37479,6 +41270,7 @@ printf "%s\n" "#define GNULIB_TEST_WCRTOMB 1" >>confdefs.h + ac_fn_check_decl "$LINENO" "wcwidth" "ac_cv_have_decl_wcwidth" " #include @@ -37486,8 +41278,9 @@ printf "%s\n" "#define GNULIB_TEST_WCRTOMB 1" >>confdefs.h if test "x$ac_cv_have_decl_wcwidth" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_WCWIDTH $ac_have_decl" >>confdefs.h @@ -37501,8 +41294,8 @@ printf %s "checking whether wcwidth is a macro... " >&6; } if test ${gl_cv_func_wcwidth_macro+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -37511,15 +41304,17 @@ else $as_nop #endif _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "wchar_header_defines_wcwidth" >/dev/null 2>&1 + $EGREP_TRADITIONAL "wchar_header_defines_wcwidth" >/dev/null 2>&1 then : gl_cv_func_wcwidth_macro=yes -else $as_nop - gl_cv_func_wcwidth_macro=no +else case e in #( + e) gl_cv_func_wcwidth_macro=no ;; +esac fi rm -rf conftest* - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_wcwidth_macro" >&5 printf "%s\n" "$gl_cv_func_wcwidth_macro" >&6; } @@ -37532,23 +41327,23 @@ printf %s "checking whether wcwidth works reasonably in UTF-8 locales... " >&6; if test ${gl_cv_func_wcwidth_works+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) if test "$cross_compiling" = yes then : case "$host_os" in - # Guess yes on glibc systems. - *-gnu* | gnu*) gl_cv_func_wcwidth_works="guessing yes";; - # Guess yes on musl systems. - *-musl*) gl_cv_func_wcwidth_works="guessing yes";; - # Guess yes on AIX 7 systems. - aix[7-9]*) gl_cv_func_wcwidth_works="guessing yes";; - *) gl_cv_func_wcwidth_works="$gl_cross_guess_normal";; + # Guess yes on glibc systems. + *-gnu* | gnu*) gl_cv_func_wcwidth_works="guessing yes";; + # Guess yes on musl systems. + *-musl* | midipix*) gl_cv_func_wcwidth_works="guessing yes";; + # Guess yes on AIX 7 systems. + aix[7-9]*) gl_cv_func_wcwidth_works="guessing yes";; + *) gl_cv_func_wcwidth_works="$gl_cross_guess_normal";; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -37582,14 +41377,17 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_wcwidth_works=yes -else $as_nop - gl_cv_func_wcwidth_works=no +else case e in #( + e) gl_cv_func_wcwidth_works=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_wcwidth_works" >&5 printf "%s\n" "$gl_cv_func_wcwidth_works" >&6; } @@ -37601,22 +41399,33 @@ printf "%s\n" "$gl_cv_func_wcwidth_works" >&6; } HAVE_WCWIDTH=0 fi - if test $HAVE_WCWIDTH = 0 || test $REPLACE_WCWIDTH = 1; then + if test $HAVE_WCWIDTH = 0 || test $REPLACE_WCWIDTH = 1; then + GL_COND_OBJ_WCWIDTH_TRUE= + GL_COND_OBJ_WCWIDTH_FALSE='#' +else + GL_COND_OBJ_WCWIDTH_TRUE='#' + GL_COND_OBJ_WCWIDTH_FALSE= +fi +: + if test -z "${GL_COND_OBJ_WCWIDTH_TRUE}" && test -z "${GL_COND_OBJ_WCWIDTH_FALSE}"; then + GL_COND_OBJ_WCWIDTH_TRUE='#' + GL_COND_OBJ_WCWIDTH_FALSE='#' + fi + if test -z "$GL_COND_OBJ_WCWIDTH_TRUE"; then : + : +fi - gl_LIBOBJS="$gl_LIBOBJS wcwidth.$ac_objext" - : - fi @@ -37637,65 +41446,65 @@ printf "%s\n" "#define GNULIB_TEST_WCWIDTH 1" >>confdefs.h - case "$host_os" in - mingw*) - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS windows-mutex.$ac_objext" - - ;; - esac - - case "$host_os" in - mingw*) - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS windows-once.$ac_objext" - - ;; - esac - - case "$host_os" in - mingw*) - - - - - - - - - gl_LIBOBJS="$gl_LIBOBJS windows-recmutex.$ac_objext" - ;; - esac + if case "$host_os" in mingw*) true;; *) false;; esac; then + GL_COND_OBJ_WINDOWS_MUTEX_TRUE= + GL_COND_OBJ_WINDOWS_MUTEX_FALSE='#' +else + GL_COND_OBJ_WINDOWS_MUTEX_TRUE='#' + GL_COND_OBJ_WINDOWS_MUTEX_FALSE= +fi +: + if test -z "${GL_COND_OBJ_WINDOWS_MUTEX_TRUE}" && test -z "${GL_COND_OBJ_WINDOWS_MUTEX_FALSE}"; then + GL_COND_OBJ_WINDOWS_MUTEX_TRUE='#' + GL_COND_OBJ_WINDOWS_MUTEX_FALSE='#' + fi - case "$host_os" in - mingw*) + if case "$host_os" in mingw*) true;; *) false;; esac; then + GL_COND_OBJ_WINDOWS_ONCE_TRUE= + GL_COND_OBJ_WINDOWS_ONCE_FALSE='#' +else + GL_COND_OBJ_WINDOWS_ONCE_TRUE='#' + GL_COND_OBJ_WINDOWS_ONCE_FALSE= +fi +: + if test -z "${GL_COND_OBJ_WINDOWS_ONCE_TRUE}" && test -z "${GL_COND_OBJ_WINDOWS_ONCE_FALSE}"; then + GL_COND_OBJ_WINDOWS_ONCE_TRUE='#' + GL_COND_OBJ_WINDOWS_ONCE_FALSE='#' + fi + if case "$host_os" in mingw*) true;; *) false;; esac; then + GL_COND_OBJ_WINDOWS_RECMUTEX_TRUE= + GL_COND_OBJ_WINDOWS_RECMUTEX_FALSE='#' +else + GL_COND_OBJ_WINDOWS_RECMUTEX_TRUE='#' + GL_COND_OBJ_WINDOWS_RECMUTEX_FALSE= +fi +: + if test -z "${GL_COND_OBJ_WINDOWS_RECMUTEX_TRUE}" && test -z "${GL_COND_OBJ_WINDOWS_RECMUTEX_FALSE}"; then + GL_COND_OBJ_WINDOWS_RECMUTEX_TRUE='#' + GL_COND_OBJ_WINDOWS_RECMUTEX_FALSE='#' + fi - gl_LIBOBJS="$gl_LIBOBJS windows-rwlock.$ac_objext" + if case "$host_os" in mingw*) true;; *) false;; esac; then + GL_COND_OBJ_WINDOWS_RWLOCK_TRUE= + GL_COND_OBJ_WINDOWS_RWLOCK_FALSE='#' +else + GL_COND_OBJ_WINDOWS_RWLOCK_TRUE='#' + GL_COND_OBJ_WINDOWS_RWLOCK_FALSE= +fi +: + if test -z "${GL_COND_OBJ_WINDOWS_RWLOCK_TRUE}" && test -z "${GL_COND_OBJ_WINDOWS_RWLOCK_FALSE}"; then + GL_COND_OBJ_WINDOWS_RWLOCK_TRUE='#' + GL_COND_OBJ_WINDOWS_RWLOCK_FALSE='#' + fi - ;; - esac { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for wmemchr" >&5 @@ -37703,8 +41512,8 @@ printf %s "checking for wmemchr... " >&6; } if test ${gl_cv_func_wmemchr+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -37720,12 +41529,14 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : gl_cv_func_wmemchr=yes -else $as_nop - gl_cv_func_wmemchr=no +else case e in #( + e) gl_cv_func_wmemchr=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_wmemchr" >&5 printf "%s\n" "$gl_cv_func_wmemchr" >&6; } @@ -37733,18 +41544,25 @@ printf "%s\n" "$gl_cv_func_wmemchr" >&6; } HAVE_WMEMCHR=0 fi - if test $HAVE_WMEMCHR = 0; then - - + if test $HAVE_WMEMCHR = 0; then + GL_COND_OBJ_WMEMCHR_TRUE= + GL_COND_OBJ_WMEMCHR_FALSE='#' +else + GL_COND_OBJ_WMEMCHR_TRUE='#' + GL_COND_OBJ_WMEMCHR_FALSE= +fi +: + if test -z "${GL_COND_OBJ_WMEMCHR_TRUE}" && test -z "${GL_COND_OBJ_WMEMCHR_FALSE}"; then + GL_COND_OBJ_WMEMCHR_TRUE='#' + GL_COND_OBJ_WMEMCHR_FALSE='#' + fi - gl_LIBOBJS="$gl_LIBOBJS wmemchr.$ac_objext" - fi @@ -37772,84 +41590,137 @@ printf "%s\n" "#define GNULIB_TEST_WMEMCHR 1" >>confdefs.h - if test $ac_cv_func_wmempcpy = no; then - HAVE_WMEMPCPY=0 - fi - if test $HAVE_WMEMPCPY = 0; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for wmempcpy" >&5 +printf %s "checking for wmempcpy... " >&6; } +if test ${gl_cv_onwards_func_wmempcpy+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + exec 9>&6 6>/dev/null + + case "$host_os" in + linux*-android*) + ac_fn_check_decl "$LINENO" "wmempcpy" "ac_cv_have_decl_wmempcpy" "#include +" "$ac_c_undeclared_builtin_options" "CFLAGS" +if test "x$ac_cv_have_decl_wmempcpy" = xyes +then : +fi + if test $ac_cv_have_decl_wmempcpy = yes; then + ac_fn_c_check_func "$LINENO" "wmempcpy" "ac_cv_func_wmempcpy" +if test "x$ac_cv_func_wmempcpy" = xyes +then : +fi + if test $ac_cv_func_wmempcpy = yes; then + gl_cv_onwards_func_wmempcpy=yes + else + gl_cv_onwards_func_wmempcpy='future OS version' + fi + else + gl_cv_onwards_func_wmempcpy='future OS version' + fi + ;; + *) + ac_fn_c_check_func "$LINENO" "wmempcpy" "ac_cv_func_wmempcpy" +if test "x$ac_cv_func_wmempcpy" = xyes +then : +fi - gl_LIBOBJS="$gl_LIBOBJS wmempcpy.$ac_objext" + gl_cv_onwards_func_wmempcpy=$ac_cv_func_wmempcpy + ;; - fi + esac + exec 6>&9 9>&- + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_onwards_func_wmempcpy" >&5 +printf "%s\n" "$gl_cv_onwards_func_wmempcpy" >&6; } + case "$gl_cv_onwards_func_wmempcpy" in + future*) ac_cv_func_wmempcpy=no ;; + *) ac_cv_func_wmempcpy=$gl_cv_onwards_func_wmempcpy ;; + esac + if test $ac_cv_func_wmempcpy = yes; then +printf "%s\n" "#define HAVE_WMEMPCPY 1" >>confdefs.h + fi + if test $ac_cv_func_wmempcpy = no; then + HAVE_WMEMPCPY=0 + case "$gl_cv_onwards_func_wmempcpy" in + future*) REPLACE_WMEMPCPY=1 ;; + esac + fi - GL_GNULIB_WMEMPCPY=1 + if test $HAVE_WMEMPCPY = 0 || test $REPLACE_WMEMPCPY = 1; then + GL_COND_OBJ_WMEMPCPY_TRUE= + GL_COND_OBJ_WMEMPCPY_FALSE='#' +else + GL_COND_OBJ_WMEMPCPY_TRUE='#' + GL_COND_OBJ_WMEMPCPY_FALSE= +fi +: + if test -z "${GL_COND_OBJ_WMEMPCPY_TRUE}" && test -z "${GL_COND_OBJ_WMEMPCPY_FALSE}"; then + GL_COND_OBJ_WMEMPCPY_TRUE='#' + GL_COND_OBJ_WMEMPCPY_FALSE='#' + fi -printf "%s\n" "#define GNULIB_TEST_WMEMPCPY 1" >>confdefs.h - : -printf "%s\n" "#define GNULIB_XALLOC 1" >>confdefs.h -printf "%s\n" "#define GNULIB_XALLOC_DIE 1" >>confdefs.h + GL_GNULIB_WMEMPCPY=1 - ac_fn_c_check_header_compile "$LINENO" "stdint.h" "ac_cv_header_stdint_h" "$ac_includes_default" -if test "x$ac_cv_header_stdint_h" = xyes -then : - printf "%s\n" "#define HAVE_STDINT_H 1" >>confdefs.h -fi +printf "%s\n" "#define GNULIB_TEST_WMEMPCPY 1" >>confdefs.h - : : - XGETTEXT_EXTRA_OPTIONS="$XGETTEXT_EXTRA_OPTIONS --flag=xasprintf:1:c-format" - - # End of code from modules +printf "%s\n" "#define GNULIB_XALLOC 1" >>confdefs.h +printf "%s\n" "#define GNULIB_XALLOC_DIE 1" >>confdefs.h + : + # End of code from modules - gltests_libdeps= - gltests_ltlibdeps= @@ -37858,29 +41729,41 @@ fi + gltests_libdeps= + gltests_ltlibdeps= - gl_source_base='gnulib-tests' - gltests_WITNESS=IN_`echo "${PACKAGE-$PACKAGE_TARNAME}" | LC_ALL=C tr abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ | LC_ALL=C sed -e 's/[^A-Z0-9_]/_/g'`_GNULIB_TESTS - gl_module_indicator_condition=$gltests_WITNESS - if test "$ac_cv_header_winsock2_h" = yes; then + gl_source_base='gnulib-tests' + gl_source_base_prefix= + gltests_WITNESS=IN_`echo "${PACKAGE-$PACKAGE_TARNAME}" | LC_ALL=C tr abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ | LC_ALL=C sed -e 's/[^A-Z0-9_]/_/g'`_GNULIB_TESTS + gl_module_indicator_condition=$gltests_WITNESS - gltests_LIBOBJS="$gltests_LIBOBJS accept.$ac_objext" + if test "$ac_cv_header_winsock2_h" = yes; then + GL_COND_OBJ_ACCEPT_TRUE= + GL_COND_OBJ_ACCEPT_FALSE='#' +else + GL_COND_OBJ_ACCEPT_TRUE='#' + GL_COND_OBJ_ACCEPT_FALSE= +fi +: + if test -z "${GL_COND_OBJ_ACCEPT_TRUE}" && test -z "${GL_COND_OBJ_ACCEPT_FALSE}"; then + GL_COND_OBJ_ACCEPT_TRUE='#' + GL_COND_OBJ_ACCEPT_FALSE='#' fi @@ -37891,6 +41774,7 @@ fi + if test "$GL_GNULIB_ACCEPT" != 1; then if test "$GL_GNULIB_ACCEPT" = 0; then GL_GNULIB_ACCEPT=$gl_module_indicator_condition @@ -37927,21 +41811,27 @@ fi HAVE_ATOLL=0 fi - if test $HAVE_ATOLL = 0; then - - - - - - + if test $HAVE_ATOLL = 0; then + GL_COND_OBJ_ATOLL_TRUE= + GL_COND_OBJ_ATOLL_FALSE='#' +else + GL_COND_OBJ_ATOLL_TRUE='#' + GL_COND_OBJ_ATOLL_FALSE= +fi +: + if test -z "${GL_COND_OBJ_ATOLL_TRUE}" && test -z "${GL_COND_OBJ_ATOLL_FALSE}"; then + GL_COND_OBJ_ATOLL_TRUE='#' + GL_COND_OBJ_ATOLL_FALSE='#' + fi - gltests_LIBOBJS="$gltests_LIBOBJS atoll.$ac_objext" + if test -z "$GL_COND_OBJ_ATOLL_TRUE"; then : : - fi + +fi @@ -37968,7 +41858,22 @@ printf "%s\n" "#define GNULIB_TEST_ATOLL 1" >>confdefs.h - if test "$ac_cv_header_winsock2_h" = yes; then + + if test "$ac_cv_header_winsock2_h" = yes; then + GL_COND_OBJ_BIND_TRUE= + GL_COND_OBJ_BIND_FALSE='#' +else + GL_COND_OBJ_BIND_TRUE='#' + GL_COND_OBJ_BIND_FALSE= +fi +: + if test -z "${GL_COND_OBJ_BIND_TRUE}" && test -z "${GL_COND_OBJ_BIND_FALSE}"; then + GL_COND_OBJ_BIND_TRUE='#' + GL_COND_OBJ_BIND_FALSE='#' + fi + + + @@ -37976,9 +41881,39 @@ printf "%s\n" "#define GNULIB_TEST_ATOLL 1" >>confdefs.h + if test "$GL_GNULIB_BIND" != 1; then + if test "$GL_GNULIB_BIND" = 0; then + GL_GNULIB_BIND=$gl_module_indicator_condition + else + GL_GNULIB_BIND="($GL_GNULIB_BIND || $gl_module_indicator_condition)" + fi + fi + + + + + +printf "%s\n" "#define GNULIB_TEST_BIND 1" >>confdefs.h + + + - gltests_LIBOBJS="$gltests_LIBOBJS bind.$ac_objext" + + + + + if test "$ac_cv_header_winsock2_h" = yes; then + GL_COND_OBJ_CONNECT_TRUE= + GL_COND_OBJ_CONNECT_FALSE='#' +else + GL_COND_OBJ_CONNECT_TRUE='#' + GL_COND_OBJ_CONNECT_FALSE= +fi +: + if test -z "${GL_COND_OBJ_CONNECT_TRUE}" && test -z "${GL_COND_OBJ_CONNECT_FALSE}"; then + GL_COND_OBJ_CONNECT_TRUE='#' + GL_COND_OBJ_CONNECT_FALSE='#' fi @@ -37989,11 +41924,12 @@ printf "%s\n" "#define GNULIB_TEST_ATOLL 1" >>confdefs.h - if test "$GL_GNULIB_BIND" != 1; then - if test "$GL_GNULIB_BIND" = 0; then - GL_GNULIB_BIND=$gl_module_indicator_condition + + if test "$GL_GNULIB_CONNECT" != 1; then + if test "$GL_GNULIB_CONNECT" = 0; then + GL_GNULIB_CONNECT=$gl_module_indicator_condition else - GL_GNULIB_BIND="($GL_GNULIB_BIND || $gl_module_indicator_condition)" + GL_GNULIB_CONNECT="($GL_GNULIB_CONNECT || $gl_module_indicator_condition)" fi fi @@ -38001,568 +41937,319 @@ printf "%s\n" "#define GNULIB_TEST_ATOLL 1" >>confdefs.h -printf "%s\n" "#define GNULIB_TEST_BIND 1" >>confdefs.h +printf "%s\n" "#define GNULIB_TEST_CONNECT 1" >>confdefs.h - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a traditional french locale" >&5 -printf %s "checking for a traditional french locale... " >&6; } -if test ${gt_cv_locale_fr+y} + + if test $HAVE_MSVC_INVALID_PARAMETER_HANDLER = 1; then + REPLACE_FDOPEN=1 + fi + + if test $REPLACE_FDOPEN = 0; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether fdopen sets errno" >&5 +printf %s "checking whether fdopen sets errno... " >&6; } +if test ${gl_cv_func_fdopen_works+y} then : printf %s "(cached) " >&6 -else $as_nop +else case e in #( + e) + if test "$cross_compiling" = yes +then : + case "$host_os" in + mingw*) gl_cv_func_fdopen_works="guessing no" ;; + *) gl_cv_func_fdopen_works="guessing yes" ;; + esac - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include -#include -#if HAVE_LANGINFO_CODESET -# include -#endif -#include -#include -struct tm t; -char buf[16]; -int main () { - /* On BeOS and Haiku, locales are not implemented in libc. Rather, libintl - imitates locale dependent behaviour by looking at the environment - variables, and all locales use the UTF-8 encoding. */ -#if defined __BEOS__ || defined __HAIKU__ - return 1; -#else - /* Check whether the given locale name is recognized by the system. */ -# if defined _WIN32 && !defined __CYGWIN__ - /* On native Windows, setlocale(category, "") looks at the system settings, - not at the environment variables. Also, when an encoding suffix such - as ".65001" or ".54936" is specified, it succeeds but sets the LC_CTYPE - category of the locale to "C". */ - if (setlocale (LC_ALL, getenv ("LC_ALL")) == NULL - || strcmp (setlocale (LC_CTYPE, NULL), "C") == 0) +#include +#include + + +$gl_mda_defines + +int +main (void) +{ + FILE *fp; + errno = 0; + fp = fdopen (-1, "r"); + if (fp == NULL && errno == 0) return 1; -# else - if (setlocale (LC_ALL, "") == NULL) return 1; -# endif - /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". - On Mac OS X 10.3.5 (Darwin 7.5) in the fr_FR locale, nl_langinfo(CODESET) - is empty, and the behaviour of Tcl 8.4 in this locale is not useful. - On OpenBSD 4.0, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. - On MirBSD 10, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "UTF-8". */ -# if HAVE_LANGINFO_CODESET - { - const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0 - || strcmp (cs, "UTF-8") == 0) - return 1; - } -# endif -# ifdef __CYGWIN__ - /* On Cygwin, avoid locale names without encoding suffix, because the - locale_charset() function relies on the encoding suffix. Note that - LC_ALL is set on the command line. */ - if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; -# endif - /* Check whether in the abbreviation of the second month, the second - character (should be U+00E9: LATIN SMALL LETTER E WITH ACUTE) is only - one byte long. This excludes the UTF-8 encoding. */ - t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; - if (strftime (buf, sizeof (buf), "%b", &t) < 3 || buf[2] != 'v') return 1; -# if !defined __BIONIC__ /* Bionic libc's 'struct lconv' is just a dummy. */ - /* Check whether the decimal separator is a comma. - On NetBSD 3.0 in the fr_FR.ISO8859-1 locale, localeconv()->decimal_point - are nl_langinfo(RADIXCHAR) are both ".". */ - if (localeconv () ->decimal_point[0] != ',') return 1; -# endif return 0; -#endif } - _ACEOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest$ac_exeext; then - case "$host_os" in - # Handle native Windows specially, because there setlocale() interprets - # "ar" as "Arabic" or "Arabic_Saudi Arabia.1256", - # "fr" or "fra" as "French" or "French_France.1252", - # "ge"(!) or "deu"(!) as "German" or "German_Germany.1252", - # "ja" as "Japanese" or "Japanese_Japan.932", - # and similar. - mingw*) - # Test for the native Windows locale name. - if (LC_ALL=French_France.1252 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=French_France.1252 - else - # None found. - gt_cv_locale_fr=none - fi - ;; - *) - # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because - # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the - # configure script would override the LC_ALL setting. Likewise for - # LC_CTYPE, which is also set at the beginning of the configure script. - # Test for the usual locale name. - if (LC_ALL=fr_FR LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr_FR - else - # Test for the locale name with explicit encoding suffix. - if (LC_ALL=fr_FR.ISO-8859-1 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr_FR.ISO-8859-1 - else - # Test for the AIX, OSF/1, FreeBSD, NetBSD, OpenBSD locale name. - if (LC_ALL=fr_FR.ISO8859-1 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr_FR.ISO8859-1 - else - # Test for the HP-UX locale name. - if (LC_ALL=fr_FR.iso88591 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr_FR.iso88591 - else - # Test for the Solaris 7 locale name. - if (LC_ALL=fr LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr - else - # None found. - gt_cv_locale_fr=none - fi - fi - fi - fi - fi - ;; - esac - fi - rm -fr conftest* +if ac_fn_c_try_run "$LINENO" +then : + gl_cv_func_fdopen_works=yes +else case e in #( + e) gl_cv_func_fdopen_works=no ;; +esac +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac +fi + ;; +esac fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_fr" >&5 -printf "%s\n" "$gt_cv_locale_fr" >&6; } - LOCALE_FR=$gt_cv_locale_fr +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_fdopen_works" >&5 +printf "%s\n" "$gl_cv_func_fdopen_works" >&6; } + case "$gl_cv_func_fdopen_works" in + *no) REPLACE_FDOPEN=1 ;; + esac + fi + if test $REPLACE_FDOPEN = 1; then + GL_COND_OBJ_FDOPEN_TRUE= + GL_COND_OBJ_FDOPEN_FALSE='#' +else + GL_COND_OBJ_FDOPEN_TRUE='#' + GL_COND_OBJ_FDOPEN_FALSE= +fi +: + if test -z "${GL_COND_OBJ_FDOPEN_TRUE}" && test -z "${GL_COND_OBJ_FDOPEN_FALSE}"; then + GL_COND_OBJ_FDOPEN_TRUE='#' + GL_COND_OBJ_FDOPEN_FALSE='#' + fi + if test -z "$GL_COND_OBJ_FDOPEN_TRUE"; then : - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a french Unicode locale" >&5 -printf %s "checking for a french Unicode locale... " >&6; } -if test ${gt_cv_locale_fr_utf8+y} -then : - printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include -#if HAVE_LANGINFO_CODESET -# include -#endif -#include -#include -struct tm t; -char buf[16]; -int main () { - /* On BeOS and Haiku, locales are not implemented in libc. Rather, libintl - imitates locale dependent behaviour by looking at the environment - variables, and all locales use the UTF-8 encoding. */ -#if !(defined __BEOS__ || defined __HAIKU__) - /* Check whether the given locale name is recognized by the system. */ -# if defined _WIN32 && !defined __CYGWIN__ - /* On native Windows, setlocale(category, "") looks at the system settings, - not at the environment variables. Also, when an encoding suffix such - as ".65001" or ".54936" is specified, it succeeds but sets the LC_CTYPE - category of the locale to "C". */ - if (setlocale (LC_ALL, getenv ("LC_ALL")) == NULL - || strcmp (setlocale (LC_CTYPE, NULL), "C") == 0) - return 1; -# else - if (setlocale (LC_ALL, "") == NULL) return 1; -# endif - /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". - On Mac OS X 10.3.5 (Darwin 7.5) in the fr_FR locale, nl_langinfo(CODESET) - is empty, and the behaviour of Tcl 8.4 in this locale is not useful. - On OpenBSD 4.0, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. */ -# if HAVE_LANGINFO_CODESET - { - const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0) - return 1; - } -# endif -# ifdef __CYGWIN__ - /* On Cygwin, avoid locale names without encoding suffix, because the - locale_charset() function relies on the encoding suffix. Note that - LC_ALL is set on the command line. */ - if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; -# endif - /* Check whether in the abbreviation of the second month, the second - character (should be U+00E9: LATIN SMALL LETTER E WITH ACUTE) is - two bytes long, with UTF-8 encoding. */ - t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; - if (strftime (buf, sizeof (buf), "%b", &t) < 4 - || buf[1] != (char) 0xc3 || buf[2] != (char) 0xa9 || buf[3] != 'v') - return 1; -#endif -#if !defined __BIONIC__ /* Bionic libc's 'struct lconv' is just a dummy. */ - /* Check whether the decimal separator is a comma. - On NetBSD 3.0 in the fr_FR.ISO8859-1 locale, localeconv()->decimal_point - are nl_langinfo(RADIXCHAR) are both ".". */ - if (localeconv () ->decimal_point[0] != ',') return 1; -#endif - return 0; -} +fi -_ACEOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest$ac_exeext; then - case "$host_os" in - # Handle native Windows specially, because there setlocale() interprets - # "ar" as "Arabic" or "Arabic_Saudi Arabia.1256", - # "fr" or "fra" as "French" or "French_France.1252", - # "ge"(!) or "deu"(!) as "German" or "German_Germany.1252", - # "ja" as "Japanese" or "Japanese_Japan.932", - # and similar. - mingw*) - # Test for the hypothetical native Windows locale name. - if (LC_ALL=French_France.65001 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=French_France.65001 - else - # None found. - gt_cv_locale_fr_utf8=none - fi - ;; - *) - # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because - # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the - # configure script would override the LC_ALL setting. Likewise for - # LC_CTYPE, which is also set at the beginning of the configure script. - # Test for the usual locale name. - if (LC_ALL=fr_FR LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=fr_FR - else - # Test for the locale name with explicit encoding suffix. - if (LC_ALL=fr_FR.UTF-8 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=fr_FR.UTF-8 - else - # Test for the Solaris 7 locale name. - if (LC_ALL=fr.UTF-8 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=fr.UTF-8 - else - # None found. - gt_cv_locale_fr_utf8=none - fi - fi - fi - ;; - esac + + + + + + + + + if test "$GL_GNULIB_FDOPEN" != 1; then + if test "$GL_GNULIB_FDOPEN" = 0; then + GL_GNULIB_FDOPEN=$gl_module_indicator_condition + else + GL_GNULIB_FDOPEN="($GL_GNULIB_FDOPEN || $gl_module_indicator_condition)" fi - rm -fr conftest* + fi -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_fr_utf8" >&5 -printf "%s\n" "$gt_cv_locale_fr_utf8" >&6; } - LOCALE_FR_UTF8=$gt_cv_locale_fr_utf8 +printf "%s\n" "#define GNULIB_TEST_FDOPEN 1" >>confdefs.h - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a traditional french locale" >&5 -printf %s "checking for a traditional french locale... " >&6; } -if test ${gt_cv_locale_fr+y} + + + + + + GL_GENERATE_FLOAT_H=false + REPLACE_FLOAT_LDBL=0 + case "$host_os" in + aix* | beos* | openbsd* | mirbsd* | irix*) + GL_GENERATE_FLOAT_H=true + ;; + freebsd* | dragonfly*) + case "$host_cpu" in + i[34567]86 ) + GL_GENERATE_FLOAT_H=true + ;; + x86_64 ) + # On x86_64 systems, the C compiler may still be generating + # 32-bit code. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#if defined __LP64__ || defined __x86_64__ || defined __amd64__ + int ok; + #else + error fail + #endif + +_ACEOF +if ac_fn_c_try_compile "$LINENO" +then : + +else case e in #( + e) GL_GENERATE_FLOAT_H=true ;; +esac +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext + ;; + esac + ;; + linux*) + case "$host_cpu" in + powerpc*) + GL_GENERATE_FLOAT_H=true + ;; + esac + ;; + esac + case "$host_os" in + aix* | freebsd* | dragonfly* | linux*) + if $GL_GENERATE_FLOAT_H; then + REPLACE_FLOAT_LDBL=1 + fi + ;; + esac + + REPLACE_ITOLD=0 + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether conversion from 'int' to 'long double' works" >&5 +printf %s "checking whether conversion from 'int' to 'long double' works... " >&6; } +if test ${gl_cv_func_itold_works+y} then : printf %s "(cached) " >&6 -else $as_nop +else case e in #( + e) + if test "$cross_compiling" = yes +then : + case "$host" in + sparc*-*-linux*) + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#if defined __LP64__ || defined __arch64__ + int ok; + #else + error fail + #endif - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +_ACEOF +if ac_fn_c_try_compile "$LINENO" +then : + gl_cv_func_itold_works="guessing no" +else case e in #( + e) gl_cv_func_itold_works="guessing yes" ;; +esac +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext + ;; + # Guess yes on native Windows. + mingw*) gl_cv_func_itold_works="guessing yes" ;; + *) gl_cv_func_itold_works="guessing yes" ;; + esac + +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include -#include -#if HAVE_LANGINFO_CODESET -# include -#endif -#include -#include -struct tm t; -char buf[16]; -int main () { - /* On BeOS and Haiku, locales are not implemented in libc. Rather, libintl - imitates locale dependent behaviour by looking at the environment - variables, and all locales use the UTF-8 encoding. */ -#if defined __BEOS__ || defined __HAIKU__ - return 1; -#else - /* Check whether the given locale name is recognized by the system. */ -# if defined _WIN32 && !defined __CYGWIN__ - /* On native Windows, setlocale(category, "") looks at the system settings, - not at the environment variables. Also, when an encoding suffix such - as ".65001" or ".54936" is specified, it succeeds but sets the LC_CTYPE - category of the locale to "C". */ - if (setlocale (LC_ALL, getenv ("LC_ALL")) == NULL - || strcmp (setlocale (LC_CTYPE, NULL), "C") == 0) +int i = -1; +volatile long double ld; +int main () +{ + ld += i * 1.0L; + if (ld > 0) return 1; -# else - if (setlocale (LC_ALL, "") == NULL) return 1; -# endif - /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". - On Mac OS X 10.3.5 (Darwin 7.5) in the fr_FR locale, nl_langinfo(CODESET) - is empty, and the behaviour of Tcl 8.4 in this locale is not useful. - On OpenBSD 4.0, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. - On MirBSD 10, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "UTF-8". */ -# if HAVE_LANGINFO_CODESET - { - const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0 - || strcmp (cs, "UTF-8") == 0) - return 1; - } -# endif -# ifdef __CYGWIN__ - /* On Cygwin, avoid locale names without encoding suffix, because the - locale_charset() function relies on the encoding suffix. Note that - LC_ALL is set on the command line. */ - if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; -# endif - /* Check whether in the abbreviation of the second month, the second - character (should be U+00E9: LATIN SMALL LETTER E WITH ACUTE) is only - one byte long. This excludes the UTF-8 encoding. */ - t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; - if (strftime (buf, sizeof (buf), "%b", &t) < 3 || buf[2] != 'v') return 1; -# if !defined __BIONIC__ /* Bionic libc's 'struct lconv' is just a dummy. */ - /* Check whether the decimal separator is a comma. - On NetBSD 3.0 in the fr_FR.ISO8859-1 locale, localeconv()->decimal_point - are nl_langinfo(RADIXCHAR) are both ".". */ - if (localeconv () ->decimal_point[0] != ',') return 1; -# endif return 0; -#endif } - _ACEOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest$ac_exeext; then - case "$host_os" in - # Handle native Windows specially, because there setlocale() interprets - # "ar" as "Arabic" or "Arabic_Saudi Arabia.1256", - # "fr" or "fra" as "French" or "French_France.1252", - # "ge"(!) or "deu"(!) as "German" or "German_Germany.1252", - # "ja" as "Japanese" or "Japanese_Japan.932", - # and similar. - mingw*) - # Test for the native Windows locale name. - if (LC_ALL=French_France.1252 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=French_France.1252 - else - # None found. - gt_cv_locale_fr=none - fi - ;; - *) - # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because - # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the - # configure script would override the LC_ALL setting. Likewise for - # LC_CTYPE, which is also set at the beginning of the configure script. - # Test for the usual locale name. - if (LC_ALL=fr_FR LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr_FR - else - # Test for the locale name with explicit encoding suffix. - if (LC_ALL=fr_FR.ISO-8859-1 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr_FR.ISO-8859-1 - else - # Test for the AIX, OSF/1, FreeBSD, NetBSD, OpenBSD locale name. - if (LC_ALL=fr_FR.ISO8859-1 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr_FR.ISO8859-1 - else - # Test for the HP-UX locale name. - if (LC_ALL=fr_FR.iso88591 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr_FR.iso88591 - else - # Test for the Solaris 7 locale name. - if (LC_ALL=fr LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr - else - # None found. - gt_cv_locale_fr=none - fi - fi - fi - fi - fi - ;; - esac - fi - rm -fr conftest* +if ac_fn_c_try_run "$LINENO" +then : + gl_cv_func_itold_works=yes +else case e in #( + e) gl_cv_func_itold_works=no ;; +esac +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac +fi + ;; +esac fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_fr" >&5 -printf "%s\n" "$gt_cv_locale_fr" >&6; } - LOCALE_FR=$gt_cv_locale_fr +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_itold_works" >&5 +printf "%s\n" "$gl_cv_func_itold_works" >&6; } + case "$gl_cv_func_itold_works" in + *no) + REPLACE_ITOLD=1 + GL_GENERATE_FLOAT_H=true + ;; + esac + if $GL_GENERATE_FLOAT_H; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a turkish Unicode locale" >&5 -printf %s "checking for a turkish Unicode locale... " >&6; } -if test ${gt_cv_locale_tr_utf8+y} + + + + + if test $gl_cv_have_include_next = yes; then + gl_cv_next_float_h='<'float.h'>' + else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking absolute name of " >&5 +printf %s "checking absolute name of ... " >&6; } +if test ${gl_cv_next_float_h+y} then : printf %s "(cached) " >&6 -else $as_nop +else case e in #( + e) - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ +#include +_ACEOF + case "$host_os" in + aix*) gl_absname_cpp="$ac_cpp -C" ;; + *) gl_absname_cpp="$ac_cpp" ;; + esac -#include -#include -#if HAVE_LANGINFO_CODESET -# include -#endif -#include -#include -#include -struct tm t; -char buf[16]; -int main () { - /* On BeOS, locales are not implemented in libc. Rather, libintl - imitates locale dependent behaviour by looking at the environment - variables, and all locales use the UTF-8 encoding. But BeOS does not - implement the Turkish upper-/lowercase mappings. Therefore, let this - program return 1 on BeOS. */ - /* Check whether the given locale name is recognized by the system. */ -#if defined _WIN32 && !defined __CYGWIN__ - /* On native Windows, setlocale(category, "") looks at the system settings, - not at the environment variables. Also, when an encoding suffix such - as ".65001" or ".54936" is specified, it succeeds but sets the LC_CTYPE - category of the locale to "C". */ - if (setlocale (LC_ALL, getenv ("LC_ALL")) == NULL - || strcmp (setlocale (LC_CTYPE, NULL), "C") == 0) - return 1; -#else - if (setlocale (LC_ALL, "") == NULL) return 1; -#endif - /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". - On Mac OS X 10.3.5 (Darwin 7.5) in the tr_TR locale, nl_langinfo(CODESET) - is empty, and the behaviour of Tcl 8.4 in this locale is not useful. - On OpenBSD 4.0, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. */ -#if HAVE_LANGINFO_CODESET - { - const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0) - return 1; - } -#endif -#ifdef __CYGWIN__ - /* On Cygwin, avoid locale names without encoding suffix, because the - locale_charset() function relies on the encoding suffix. Note that - LC_ALL is set on the command line. */ - if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; -#endif - /* Check whether in the abbreviation of the eighth month, the second - character (should be U+011F: LATIN SMALL LETTER G WITH BREVE) is - two bytes long, with UTF-8 encoding. */ - t.tm_year = 1992 - 1900; t.tm_mon = 8 - 1; t.tm_mday = 19; - if (strftime (buf, sizeof (buf), "%b", &t) < 4 - || buf[1] != (char) 0xc4 || buf[2] != (char) 0x9f) - return 1; - /* Check whether the upper-/lowercase mappings are as expected for - Turkish. */ - if (towupper ('i') != 0x0130 || towlower (0x0130) != 'i' - || towupper(0x0131) != 'I' || towlower ('I') != 0x0131) - return 1; - return 0; -} - -_ACEOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest$ac_exeext; then - case "$host_os" in - # Handle native Windows specially, because there setlocale() interprets - # "ar" as "Arabic" or "Arabic_Saudi Arabia.1256", - # "fr" or "fra" as "French" or "French_France.1252", - # "ge"(!) or "deu"(!) as "German" or "German_Germany.1252", - # "ja" as "Japanese" or "Japanese_Japan.932", - # and similar. - mingw*) - # Test for the hypothetical native Windows locale name. - if (LC_ALL=Turkish_Turkey.65001 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_tr_utf8=Turkish_Turkey.65001 - else - # None found. - gt_cv_locale_tr_utf8=none - fi - ;; - *) - # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because - # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the - # configure script would override the LC_ALL setting. Likewise for - # LC_CTYPE, which is also set at the beginning of the configure script. - # Test for the usual locale name. - if (LC_ALL=tr_TR LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_tr_utf8=tr_TR - else - # Test for the locale name with explicit encoding suffix. - if (LC_ALL=tr_TR.UTF-8 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_tr_utf8=tr_TR.UTF-8 - else - # Test for the Solaris 7 locale name. - if (LC_ALL=tr.UTF-8 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_tr_utf8=tr.UTF-8 - else - # None found. - gt_cv_locale_tr_utf8=none - fi - fi - fi - ;; - esac - else - gt_cv_locale_tr_utf8=none - fi - rm -fr conftest* - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_tr_utf8" >&5 -printf "%s\n" "$gt_cv_locale_tr_utf8" >&6; } - LOCALE_TR_UTF8=$gt_cv_locale_tr_utf8 - - - - if test "$ac_cv_header_winsock2_h" = yes; then - + case "$host_os" in + mingw*) + gl_dirsep_regex='[/\\]' + ;; + *) + gl_dirsep_regex='\/' + ;; + esac + gl_make_literal_regex_sed='s,[]$^\\.*/[],\\&,g' + gl_header_literal_regex=`echo 'float.h' \ + | sed -e "$gl_make_literal_regex_sed"` + gl_absolute_header_sed="/${gl_dirsep_regex}${gl_header_literal_regex}/"'{ + s/.*"\(.*'"${gl_dirsep_regex}${gl_header_literal_regex}"'\)".*/\1/ + s|^/[^/]|//&| + p + q + }' + gl_cv_absolute_float_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | + sed -n "$gl_absolute_header_sed"` + gl_header=$gl_cv_absolute_float_h + gl_cv_next_float_h='"'$gl_header'"' + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_float_h" >&5 +printf "%s\n" "$gl_cv_next_float_h" >&6; } + fi + NEXT_FLOAT_H=$gl_cv_next_float_h + if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' + gl_next_as_first_directive='<'float.h'>' + else + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' + gl_next_as_first_directive=$gl_cv_next_float_h + fi + NEXT_AS_FIRST_DIRECTIVE_FLOAT_H=$gl_next_as_first_directive - gltests_LIBOBJS="$gltests_LIBOBJS connect.$ac_objext" fi @@ -38571,129 +42258,134 @@ printf "%s\n" "$gt_cv_locale_tr_utf8" >&6; } + case "$GL_GENERATE_FLOAT_H" in + false) FLOAT_H='' ;; + true) + if test -z "$FLOAT_H"; then + FLOAT_H="${gl_source_base_prefix}float.h" + fi + ;; + *) echo "*** GL_GENERATE_FLOAT_H is not set correctly" 1>&2; exit 1 ;; + esac - - if test "$GL_GNULIB_CONNECT" != 1; then - if test "$GL_GNULIB_CONNECT" = 0; then - GL_GNULIB_CONNECT=$gl_module_indicator_condition - else - GL_GNULIB_CONNECT="($GL_GNULIB_CONNECT || $gl_module_indicator_condition)" - fi + if $GL_GENERATE_FLOAT_H; then + GL_GENERATE_FLOAT_H_TRUE= + GL_GENERATE_FLOAT_H_FALSE='#' +else + GL_GENERATE_FLOAT_H_TRUE='#' + GL_GENERATE_FLOAT_H_FALSE= +fi +: + if test -z "${GL_GENERATE_FLOAT_H_TRUE}" && test -z "${GL_GENERATE_FLOAT_H_FALSE}"; then + GL_GENERATE_FLOAT_H_TRUE='#' + GL_GENERATE_FLOAT_H_FALSE='#' fi -printf "%s\n" "#define GNULIB_TEST_CONNECT 1" >>confdefs.h - - - - - - if test $HAVE_MSVC_INVALID_PARAMETER_HANDLER = 1; then - REPLACE_FDOPEN=1 - fi - - if test $REPLACE_FDOPEN = 0; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether fdopen sets errno" >&5 -printf %s "checking whether fdopen sets errno... " >&6; } -if test ${gl_cv_func_fdopen_works+y} -then : - printf %s "(cached) " >&6 -else $as_nop - - if test "$cross_compiling" = yes -then : - case "$host_os" in - mingw*) gl_cv_func_fdopen_works="guessing no" ;; - *) gl_cv_func_fdopen_works="guessing yes" ;; - esac - -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include - - -$gl_mda_defines - -int -main (void) -{ - FILE *fp; - errno = 0; - fp = fdopen (-1, "r"); - if (fp == NULL && errno == 0) - return 1; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO" -then : - gl_cv_func_fdopen_works=yes -else $as_nop - gl_cv_func_fdopen_works=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + if test $REPLACE_FLOAT_LDBL = 1; then + GL_COND_OBJ_FLOAT_TRUE= + GL_COND_OBJ_FLOAT_FALSE='#' +else + GL_COND_OBJ_FLOAT_TRUE='#' + GL_COND_OBJ_FLOAT_FALSE= fi +: + if test -z "${GL_COND_OBJ_FLOAT_TRUE}" && test -z "${GL_COND_OBJ_FLOAT_FALSE}"; then + GL_COND_OBJ_FLOAT_TRUE='#' + GL_COND_OBJ_FLOAT_FALSE='#' + fi + if test $REPLACE_ITOLD = 1; then + GL_COND_OBJ_ITOLD_TRUE= + GL_COND_OBJ_ITOLD_FALSE='#' +else + GL_COND_OBJ_ITOLD_TRUE='#' + GL_COND_OBJ_ITOLD_FALSE= fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_fdopen_works" >&5 -printf "%s\n" "$gl_cv_func_fdopen_works" >&6; } - case "$gl_cv_func_fdopen_works" in - *no) REPLACE_FDOPEN=1 ;; - esac +: + if test -z "${GL_COND_OBJ_ITOLD_TRUE}" && test -z "${GL_COND_OBJ_ITOLD_FALSE}"; then + GL_COND_OBJ_ITOLD_TRUE='#' + GL_COND_OBJ_ITOLD_FALSE='#' fi - if test $REPLACE_FDOPEN = 1; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ftruncate" >&5 +printf %s "checking for ftruncate... " >&6; } +if test ${gl_cv_onwards_func_ftruncate+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + exec 9>&6 6>/dev/null + case "$host_os" in + linux*-android*) + ac_fn_check_decl "$LINENO" "ftruncate" "ac_cv_have_decl_ftruncate" "#include +" "$ac_c_undeclared_builtin_options" "CFLAGS" +if test "x$ac_cv_have_decl_ftruncate" = xyes +then : +fi + if test $ac_cv_have_decl_ftruncate = yes; then + ac_fn_c_check_func "$LINENO" "ftruncate" "ac_cv_func_ftruncate" +if test "x$ac_cv_func_ftruncate" = xyes +then : - gltests_LIBOBJS="$gltests_LIBOBJS fdopen.$ac_objext" +fi + if test $ac_cv_func_ftruncate = yes; then + gl_cv_onwards_func_ftruncate=yes + else + gl_cv_onwards_func_ftruncate='future OS version' + fi + else + gl_cv_onwards_func_ftruncate='future OS version' + fi + ;; - fi + *) + ac_fn_c_check_func "$LINENO" "ftruncate" "ac_cv_func_ftruncate" +if test "x$ac_cv_func_ftruncate" = xyes +then : +fi + gl_cv_onwards_func_ftruncate=$ac_cv_func_ftruncate + ;; + esac + exec 6>&9 9>&- + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_onwards_func_ftruncate" >&5 +printf "%s\n" "$gl_cv_onwards_func_ftruncate" >&6; } + case "$gl_cv_onwards_func_ftruncate" in + future*) ac_cv_func_ftruncate=no ;; + *) ac_cv_func_ftruncate=$gl_cv_onwards_func_ftruncate ;; + esac + if test $ac_cv_func_ftruncate = yes; then +printf "%s\n" "#define HAVE_FTRUNCATE 1" >>confdefs.h - if test "$GL_GNULIB_FDOPEN" != 1; then - if test "$GL_GNULIB_FDOPEN" = 0; then - GL_GNULIB_FDOPEN=$gl_module_indicator_condition - else - GL_GNULIB_FDOPEN="($GL_GNULIB_FDOPEN || $gl_module_indicator_condition)" - fi fi - - - -printf "%s\n" "#define GNULIB_TEST_FDOPEN 1" >>confdefs.h - - - - - - if test $ac_cv_func_ftruncate = yes; then @@ -38705,18 +42397,26 @@ printf "%s\n" "#define GNULIB_TEST_FDOPEN 1" >>confdefs.h else HAVE_FTRUNCATE=0 + case "$gl_cv_onwards_func_ftruncate" in + future*) REPLACE_FTRUNCATE=1 ;; + esac fi - if test $HAVE_FTRUNCATE = 0 || test $REPLACE_FTRUNCATE = 1; then - - - - - - + if test $HAVE_FTRUNCATE = 0 || test $REPLACE_FTRUNCATE = 1; then + GL_COND_OBJ_FTRUNCATE_TRUE= + GL_COND_OBJ_FTRUNCATE_FALSE='#' +else + GL_COND_OBJ_FTRUNCATE_TRUE='#' + GL_COND_OBJ_FTRUNCATE_FALSE= +fi +: + if test -z "${GL_COND_OBJ_FTRUNCATE_TRUE}" && test -z "${GL_COND_OBJ_FTRUNCATE_FALSE}"; then + GL_COND_OBJ_FTRUNCATE_TRUE='#' + GL_COND_OBJ_FTRUNCATE_FALSE='#' + fi - gltests_LIBOBJS="$gltests_LIBOBJS ftruncate.$ac_objext" + if test -z "$GL_COND_OBJ_FTRUNCATE_TRUE"; then : ac_fn_c_check_func "$LINENO" "_chsize" "ac_cv_func__chsize" @@ -38727,7 +42427,8 @@ then : fi - fi + +fi @@ -38765,17 +42466,18 @@ printf "%s\n" "#define GNULIB_TEST_FTRUNCATE 1" >>confdefs.h ;; esac - if test $REPLACE_GETCWD = 1; then - - - - - - - - - gltests_LIBOBJS="$gltests_LIBOBJS getcwd-lgpl.$ac_objext" + if test $REPLACE_GETCWD = 1; then + GL_COND_OBJ_GETCWD_LGPL_TRUE= + GL_COND_OBJ_GETCWD_LGPL_FALSE='#' +else + GL_COND_OBJ_GETCWD_LGPL_TRUE='#' + GL_COND_OBJ_GETCWD_LGPL_FALSE= +fi +: + if test -z "${GL_COND_OBJ_GETCWD_LGPL_TRUE}" && test -z "${GL_COND_OBJ_GETCWD_LGPL_FALSE}"; then + GL_COND_OBJ_GETCWD_LGPL_TRUE='#' + GL_COND_OBJ_GETCWD_LGPL_FALSE='#' fi @@ -38786,6 +42488,7 @@ printf "%s\n" "#define GNULIB_TEST_FTRUNCATE 1" >>confdefs.h + if test "$GL_GNULIB_GETCWD" != 1; then if test "$GL_GNULIB_GETCWD" = 0; then GL_GNULIB_GETCWD=$gl_module_indicator_condition @@ -38805,6 +42508,74 @@ printf "%s\n" "#define GNULIB_TEST_GETCWD 1" >>confdefs.h + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for duplocale" >&5 +printf %s "checking for duplocale... " >&6; } +if test ${gl_cv_onwards_func_duplocale+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + exec 9>&6 6>/dev/null + + case "$host_os" in + + linux*-android*) + ac_fn_check_decl "$LINENO" "duplocale" "ac_cv_have_decl_duplocale" "#include +" "$ac_c_undeclared_builtin_options" "CFLAGS" +if test "x$ac_cv_have_decl_duplocale" = xyes +then : + +fi + if test $ac_cv_have_decl_duplocale = yes; then + ac_fn_c_check_func "$LINENO" "duplocale" "ac_cv_func_duplocale" +if test "x$ac_cv_func_duplocale" = xyes +then : + +fi + + if test $ac_cv_func_duplocale = yes; then + gl_cv_onwards_func_duplocale=yes + else + gl_cv_onwards_func_duplocale='future OS version' + fi + else + gl_cv_onwards_func_duplocale='future OS version' + fi + ;; + + + *) + ac_fn_c_check_func "$LINENO" "duplocale" "ac_cv_func_duplocale" +if test "x$ac_cv_func_duplocale" = xyes +then : + +fi + + gl_cv_onwards_func_duplocale=$ac_cv_func_duplocale + ;; + + esac + + exec 6>&9 9>&- + + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_onwards_func_duplocale" >&5 +printf "%s\n" "$gl_cv_onwards_func_duplocale" >&6; } + + case "$gl_cv_onwards_func_duplocale" in + future*) ac_cv_func_duplocale=no ;; + *) ac_cv_func_duplocale=$gl_cv_onwards_func_duplocale ;; + esac + if test $ac_cv_func_duplocale = yes; then + +printf "%s\n" "#define HAVE_DUPLOCALE 1" >>confdefs.h + + fi + + + @@ -38842,8 +42613,9 @@ fi if test "x$ac_cv_have_decl_inet_pton" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_INET_PTON $ac_have_decl" >>confdefs.h @@ -38859,15 +42631,21 @@ printf %s "checking for library containing inet_pton... " >&6; } if test ${ac_cv_search_inet_pton+y} then : printf %s "(cached) " >&6 -else $as_nop - ac_func_search_save_LIBS=$LIBS +else case e in #( + e) ac_func_search_save_LIBS=$LIBS cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -char inet_pton (); + builtin and then its argument prototype would still apply. + The 'extern "C"' is for builds by C++ compilers; + although this is not generally supported in C code supporting it here + has little cost and some practical benefit (sr 110532). */ +#ifdef __cplusplus +extern "C" +#endif +char inet_pton (void); int main (void) { @@ -38898,11 +42676,13 @@ done if test ${ac_cv_search_inet_pton+y} then : -else $as_nop - ac_cv_search_inet_pton=no +else case e in #( + e) ac_cv_search_inet_pton=no ;; +esac fi rm conftest.$ac_ext -LIBS=$ac_func_search_save_LIBS +LIBS=$ac_func_search_save_LIBS ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_inet_pton" >&5 printf "%s\n" "$ac_cv_search_inet_pton" >&6; } @@ -38911,8 +42691,8 @@ if test "$ac_res" != no then : test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" -else $as_nop - ac_fn_c_check_func "$LINENO" "inet_pton" "ac_cv_func_inet_pton" +else case e in #( + e) ac_fn_c_check_func "$LINENO" "inet_pton" "ac_cv_func_inet_pton" if test "x$ac_cv_func_inet_pton" = xyes then : printf "%s\n" "#define HAVE_INET_PTON 1" >>confdefs.h @@ -38922,7 +42702,8 @@ fi if test $ac_cv_func_inet_pton = no; then HAVE_INET_PTON=0 fi - + ;; +esac fi LIBS=$gl_save_LIBS @@ -38942,8 +42723,9 @@ fi if test "x$ac_cv_have_decl_inet_pton" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_INET_PTON $ac_have_decl" >>confdefs.h @@ -38953,21 +42735,27 @@ printf "%s\n" "#define HAVE_DECL_INET_PTON $ac_have_decl" >>confdefs.h fi - if test $HAVE_INET_PTON = 0 || test $REPLACE_INET_PTON = 1; then - - - - - + if test $HAVE_INET_PTON = 0 || test $REPLACE_INET_PTON = 1; then + GL_COND_OBJ_INET_PTON_TRUE= + GL_COND_OBJ_INET_PTON_FALSE='#' +else + GL_COND_OBJ_INET_PTON_TRUE='#' + GL_COND_OBJ_INET_PTON_FALSE= +fi +: + if test -z "${GL_COND_OBJ_INET_PTON_TRUE}" && test -z "${GL_COND_OBJ_INET_PTON_FALSE}"; then + GL_COND_OBJ_INET_PTON_TRUE='#' + GL_COND_OBJ_INET_PTON_FALSE='#' + fi + if test -z "$GL_COND_OBJ_INET_PTON_TRUE"; then : - gltests_LIBOBJS="$gltests_LIBOBJS inet_pton.$ac_objext" - fi +fi @@ -38993,8 +42781,8 @@ printf %s "checking whether byte ordering is bigendian... " >&6; } if test ${ac_cv_c_bigendian+y} then : printf %s "(cached) " >&6 -else $as_nop - ac_cv_c_bigendian=unknown +else case e in #( + e) ac_cv_c_bigendian=unknown # See if we're dealing with a universal compiler. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -39040,8 +42828,8 @@ rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext int main (void) { -#if ! (defined BYTE_ORDER && defined BIG_ENDIAN \ - && defined LITTLE_ENDIAN && BYTE_ORDER && BIG_ENDIAN \ +#if ! (defined BYTE_ORDER && defined BIG_ENDIAN \\ + && defined LITTLE_ENDIAN && BYTE_ORDER && BIG_ENDIAN \\ && LITTLE_ENDIAN) bogus endian macros #endif @@ -39072,8 +42860,9 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : ac_cv_c_bigendian=yes -else $as_nop - ac_cv_c_bigendian=no +else case e in #( + e) ac_cv_c_bigendian=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext fi @@ -39117,8 +42906,9 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : ac_cv_c_bigendian=yes -else $as_nop - ac_cv_c_bigendian=no +else case e in #( + e) ac_cv_c_bigendian=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext fi @@ -39145,22 +42935,23 @@ unsigned short int ascii_mm[] = int use_ebcdic (int i) { return ebcdic_mm[i] + ebcdic_ii[i]; } - extern int foo; - -int -main (void) -{ -return use_ascii (foo) == use_ebcdic (foo); - ; - return 0; -} + int + main (int argc, char **argv) + { + /* Intimidate the compiler so that it does not + optimize the arrays away. */ + char *p = argv[0]; + ascii_mm[1] = *p++; ebcdic_mm[1] = *p++; + ascii_ii[1] = *p++; ebcdic_ii[1] = *p++; + return use_ascii (argc) == use_ebcdic (*p); + } _ACEOF -if ac_fn_c_try_compile "$LINENO" +if ac_fn_c_try_link "$LINENO" then : - if grep BIGenDianSyS conftest.$ac_objext >/dev/null; then + if grep BIGenDianSyS conftest$ac_exeext >/dev/null; then ac_cv_c_bigendian=yes fi - if grep LiTTleEnDian conftest.$ac_objext >/dev/null ; then + if grep LiTTleEnDian conftest$ac_exeext >/dev/null ; then if test "$ac_cv_c_bigendian" = unknown; then ac_cv_c_bigendian=no else @@ -39169,9 +42960,10 @@ then : fi fi fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam \ + conftest$ac_exeext conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $ac_includes_default int @@ -39194,14 +42986,17 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : ac_cv_c_bigendian=no -else $as_nop - ac_cv_c_bigendian=yes +else case e in #( + e) ac_cv_c_bigendian=yes ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - fi + fi ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_bigendian" >&5 printf "%s\n" "$ac_cv_c_bigendian" >&6; } @@ -39240,8 +43035,8 @@ printf %s "checking for ioctl with POSIX signature... " >&6; } if test ${gl_cv_func_ioctl_posix_signature+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include /* On some platforms, ioctl() is declared in . */ @@ -39264,11 +43059,13 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_func_ioctl_posix_signature=yes -else $as_nop - gl_cv_func_ioctl_posix_signature=no +else case e in #( + e) gl_cv_func_ioctl_posix_signature=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_ioctl_posix_signature" >&5 printf "%s\n" "$gl_cv_func_ioctl_posix_signature" >&6; } @@ -39277,17 +43074,18 @@ printf "%s\n" "$gl_cv_func_ioctl_posix_signature" >&6; } fi fi - if test $HAVE_IOCTL = 0 || test $REPLACE_IOCTL = 1; then - - - - - - - - - gltests_LIBOBJS="$gltests_LIBOBJS ioctl.$ac_objext" + if test $HAVE_IOCTL = 0 || test $REPLACE_IOCTL = 1; then + GL_COND_OBJ_IOCTL_TRUE= + GL_COND_OBJ_IOCTL_FALSE='#' +else + GL_COND_OBJ_IOCTL_TRUE='#' + GL_COND_OBJ_IOCTL_FALSE= +fi +: + if test -z "${GL_COND_OBJ_IOCTL_TRUE}" && test -z "${GL_COND_OBJ_IOCTL_FALSE}"; then + GL_COND_OBJ_IOCTL_TRUE='#' + GL_COND_OBJ_IOCTL_FALSE='#' fi @@ -39298,6 +43096,7 @@ printf "%s\n" "$gl_cv_func_ioctl_posix_signature" >&6; } + if test "$GL_GNULIB_IOCTL" != 1; then if test "$GL_GNULIB_IOCTL" = 0; then GL_GNULIB_IOCTL=$gl_module_indicator_condition @@ -39312,2834 +43111,132 @@ printf "%s\n" "$gl_cv_func_ioctl_posix_signature" >&6; } printf "%s\n" "#define GNULIB_TEST_IOCTL 1" >>confdefs.h - - - - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a traditional french locale" >&5 -printf %s "checking for a traditional french locale... " >&6; } -if test ${gt_cv_locale_fr+y} -then : - printf %s "(cached) " >&6 -else $as_nop - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#if HAVE_LANGINFO_CODESET -# include -#endif -#include -#include -struct tm t; -char buf[16]; -int main () { - /* On BeOS and Haiku, locales are not implemented in libc. Rather, libintl - imitates locale dependent behaviour by looking at the environment - variables, and all locales use the UTF-8 encoding. */ -#if defined __BEOS__ || defined __HAIKU__ - return 1; -#else - /* Check whether the given locale name is recognized by the system. */ -# if defined _WIN32 && !defined __CYGWIN__ - /* On native Windows, setlocale(category, "") looks at the system settings, - not at the environment variables. Also, when an encoding suffix such - as ".65001" or ".54936" is specified, it succeeds but sets the LC_CTYPE - category of the locale to "C". */ - if (setlocale (LC_ALL, getenv ("LC_ALL")) == NULL - || strcmp (setlocale (LC_CTYPE, NULL), "C") == 0) - return 1; -# else - if (setlocale (LC_ALL, "") == NULL) return 1; -# endif - /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". - On Mac OS X 10.3.5 (Darwin 7.5) in the fr_FR locale, nl_langinfo(CODESET) - is empty, and the behaviour of Tcl 8.4 in this locale is not useful. - On OpenBSD 4.0, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. - On MirBSD 10, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "UTF-8". */ -# if HAVE_LANGINFO_CODESET - { - const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0 - || strcmp (cs, "UTF-8") == 0) - return 1; - } -# endif -# ifdef __CYGWIN__ - /* On Cygwin, avoid locale names without encoding suffix, because the - locale_charset() function relies on the encoding suffix. Note that - LC_ALL is set on the command line. */ - if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; -# endif - /* Check whether in the abbreviation of the second month, the second - character (should be U+00E9: LATIN SMALL LETTER E WITH ACUTE) is only - one byte long. This excludes the UTF-8 encoding. */ - t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; - if (strftime (buf, sizeof (buf), "%b", &t) < 3 || buf[2] != 'v') return 1; -# if !defined __BIONIC__ /* Bionic libc's 'struct lconv' is just a dummy. */ - /* Check whether the decimal separator is a comma. - On NetBSD 3.0 in the fr_FR.ISO8859-1 locale, localeconv()->decimal_point - are nl_langinfo(RADIXCHAR) are both ".". */ - if (localeconv () ->decimal_point[0] != ',') return 1; -# endif - return 0; -#endif -} - -_ACEOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest$ac_exeext; then - case "$host_os" in - # Handle native Windows specially, because there setlocale() interprets - # "ar" as "Arabic" or "Arabic_Saudi Arabia.1256", - # "fr" or "fra" as "French" or "French_France.1252", - # "ge"(!) or "deu"(!) as "German" or "German_Germany.1252", - # "ja" as "Japanese" or "Japanese_Japan.932", - # and similar. - mingw*) - # Test for the native Windows locale name. - if (LC_ALL=French_France.1252 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=French_France.1252 - else - # None found. - gt_cv_locale_fr=none - fi - ;; - *) - # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because - # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the - # configure script would override the LC_ALL setting. Likewise for - # LC_CTYPE, which is also set at the beginning of the configure script. - # Test for the usual locale name. - if (LC_ALL=fr_FR LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr_FR - else - # Test for the locale name with explicit encoding suffix. - if (LC_ALL=fr_FR.ISO-8859-1 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr_FR.ISO-8859-1 - else - # Test for the AIX, OSF/1, FreeBSD, NetBSD, OpenBSD locale name. - if (LC_ALL=fr_FR.ISO8859-1 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr_FR.ISO8859-1 - else - # Test for the HP-UX locale name. - if (LC_ALL=fr_FR.iso88591 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr_FR.iso88591 - else - # Test for the Solaris 7 locale name. - if (LC_ALL=fr LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr - else - # None found. - gt_cv_locale_fr=none - fi - fi - fi - fi - fi - ;; - esac - fi - rm -fr conftest* - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_fr" >&5 -printf "%s\n" "$gt_cv_locale_fr" >&6; } - LOCALE_FR=$gt_cv_locale_fr - - - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a french Unicode locale" >&5 -printf %s "checking for a french Unicode locale... " >&6; } -if test ${gt_cv_locale_fr_utf8+y} -then : - printf %s "(cached) " >&6 -else $as_nop - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#if HAVE_LANGINFO_CODESET -# include -#endif -#include -#include -struct tm t; -char buf[16]; -int main () { - /* On BeOS and Haiku, locales are not implemented in libc. Rather, libintl - imitates locale dependent behaviour by looking at the environment - variables, and all locales use the UTF-8 encoding. */ -#if !(defined __BEOS__ || defined __HAIKU__) - /* Check whether the given locale name is recognized by the system. */ -# if defined _WIN32 && !defined __CYGWIN__ - /* On native Windows, setlocale(category, "") looks at the system settings, - not at the environment variables. Also, when an encoding suffix such - as ".65001" or ".54936" is specified, it succeeds but sets the LC_CTYPE - category of the locale to "C". */ - if (setlocale (LC_ALL, getenv ("LC_ALL")) == NULL - || strcmp (setlocale (LC_CTYPE, NULL), "C") == 0) - return 1; -# else - if (setlocale (LC_ALL, "") == NULL) return 1; -# endif - /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". - On Mac OS X 10.3.5 (Darwin 7.5) in the fr_FR locale, nl_langinfo(CODESET) - is empty, and the behaviour of Tcl 8.4 in this locale is not useful. - On OpenBSD 4.0, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. */ -# if HAVE_LANGINFO_CODESET - { - const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0) - return 1; - } -# endif -# ifdef __CYGWIN__ - /* On Cygwin, avoid locale names without encoding suffix, because the - locale_charset() function relies on the encoding suffix. Note that - LC_ALL is set on the command line. */ - if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; -# endif - /* Check whether in the abbreviation of the second month, the second - character (should be U+00E9: LATIN SMALL LETTER E WITH ACUTE) is - two bytes long, with UTF-8 encoding. */ - t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; - if (strftime (buf, sizeof (buf), "%b", &t) < 4 - || buf[1] != (char) 0xc3 || buf[2] != (char) 0xa9 || buf[3] != 'v') - return 1; -#endif -#if !defined __BIONIC__ /* Bionic libc's 'struct lconv' is just a dummy. */ - /* Check whether the decimal separator is a comma. - On NetBSD 3.0 in the fr_FR.ISO8859-1 locale, localeconv()->decimal_point - are nl_langinfo(RADIXCHAR) are both ".". */ - if (localeconv () ->decimal_point[0] != ',') return 1; -#endif - return 0; -} - -_ACEOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest$ac_exeext; then - case "$host_os" in - # Handle native Windows specially, because there setlocale() interprets - # "ar" as "Arabic" or "Arabic_Saudi Arabia.1256", - # "fr" or "fra" as "French" or "French_France.1252", - # "ge"(!) or "deu"(!) as "German" or "German_Germany.1252", - # "ja" as "Japanese" or "Japanese_Japan.932", - # and similar. - mingw*) - # Test for the hypothetical native Windows locale name. - if (LC_ALL=French_France.65001 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=French_France.65001 - else - # None found. - gt_cv_locale_fr_utf8=none - fi - ;; - *) - # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because - # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the - # configure script would override the LC_ALL setting. Likewise for - # LC_CTYPE, which is also set at the beginning of the configure script. - # Test for the usual locale name. - if (LC_ALL=fr_FR LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=fr_FR - else - # Test for the locale name with explicit encoding suffix. - if (LC_ALL=fr_FR.UTF-8 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=fr_FR.UTF-8 - else - # Test for the Solaris 7 locale name. - if (LC_ALL=fr.UTF-8 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=fr.UTF-8 - else - # None found. - gt_cv_locale_fr_utf8=none - fi - fi - fi - ;; - esac - fi - rm -fr conftest* - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_fr_utf8" >&5 -printf "%s\n" "$gt_cv_locale_fr_utf8" >&6; } - LOCALE_FR_UTF8=$gt_cv_locale_fr_utf8 - - - - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a traditional japanese locale" >&5 -printf %s "checking for a traditional japanese locale... " >&6; } -if test ${gt_cv_locale_ja+y} -then : - printf %s "(cached) " >&6 -else $as_nop - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#if HAVE_LANGINFO_CODESET -# include -#endif -#include -#include -struct tm t; -char buf[16]; -int main () -{ - /* On BeOS and Haiku, locales are not implemented in libc. Rather, libintl - imitates locale dependent behaviour by looking at the environment - variables, and all locales use the UTF-8 encoding. */ -#if defined __BEOS__ || defined __HAIKU__ - return 1; -#else - /* Check whether the given locale name is recognized by the system. */ -# if defined _WIN32 && !defined __CYGWIN__ - /* On native Windows, setlocale(category, "") looks at the system settings, - not at the environment variables. Also, when an encoding suffix such - as ".65001" or ".54936" is specified, it succeeds but sets the LC_CTYPE - category of the locale to "C". */ - if (setlocale (LC_ALL, getenv ("LC_ALL")) == NULL - || strcmp (setlocale (LC_CTYPE, NULL), "C") == 0) - return 1; -# else - if (setlocale (LC_ALL, "") == NULL) return 1; -# endif - /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". - On Mac OS X 10.3.5 (Darwin 7.5) in the fr_FR locale, nl_langinfo(CODESET) - is empty, and the behaviour of Tcl 8.4 in this locale is not useful. - On OpenBSD 4.0, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. - On MirBSD 10, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "UTF-8". */ -# if HAVE_LANGINFO_CODESET - { - const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0 - || strcmp (cs, "UTF-8") == 0) - return 1; - } -# endif -# ifdef __CYGWIN__ - /* On Cygwin, avoid locale names without encoding suffix, because the - locale_charset() function relies on the encoding suffix. Note that - LC_ALL is set on the command line. */ - if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; -# endif - /* Check whether MB_CUR_MAX is > 1. This excludes the dysfunctional locales - on Cygwin 1.5.x. */ - if (MB_CUR_MAX == 1) - return 1; - /* Check whether in a month name, no byte in the range 0x80..0x9F occurs. - This excludes the UTF-8 encoding (except on MirBSD). */ - { - const char *p; - t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; - if (strftime (buf, sizeof (buf), "%B", &t) < 2) return 1; - for (p = buf; *p != '\0'; p++) - if ((unsigned char) *p >= 0x80 && (unsigned char) *p < 0xa0) - return 1; - } - return 0; -#endif -} - -_ACEOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest$ac_exeext; then - case "$host_os" in - # Handle native Windows specially, because there setlocale() interprets - # "ar" as "Arabic" or "Arabic_Saudi Arabia.1256", - # "fr" or "fra" as "French" or "French_France.1252", - # "ge"(!) or "deu"(!) as "German" or "German_Germany.1252", - # "ja" as "Japanese" or "Japanese_Japan.932", - # and similar. - mingw*) - # Note that on native Windows, the Japanese locale is - # Japanese_Japan.932, and CP932 is very different from EUC-JP, so we - # cannot use it here. - gt_cv_locale_ja=none - ;; - *) - # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because - # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the - # configure script would override the LC_ALL setting. Likewise for - # LC_CTYPE, which is also set at the beginning of the configure script. - # Test for the AIX locale name. - if (LC_ALL=ja_JP LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_ja=ja_JP - else - # Test for the locale name with explicit encoding suffix. - if (LC_ALL=ja_JP.EUC-JP LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_ja=ja_JP.EUC-JP - else - # Test for the HP-UX, OSF/1, NetBSD locale name. - if (LC_ALL=ja_JP.eucJP LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_ja=ja_JP.eucJP - else - # Test for the IRIX, FreeBSD locale name. - if (LC_ALL=ja_JP.EUC LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_ja=ja_JP.EUC - else - # Test for the Solaris 7 locale name. - if (LC_ALL=ja LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_ja=ja - else - # Special test for NetBSD 1.6. - if test -f /usr/share/locale/ja_JP.eucJP/LC_CTYPE; then - gt_cv_locale_ja=ja_JP.eucJP - else - # None found. - gt_cv_locale_ja=none - fi - fi - fi - fi - fi - fi - ;; - esac - fi - rm -fr conftest* - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_ja" >&5 -printf "%s\n" "$gt_cv_locale_ja" >&6; } - LOCALE_JA=$gt_cv_locale_ja - - - - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a transitional chinese locale" >&5 -printf %s "checking for a transitional chinese locale... " >&6; } -if test ${gt_cv_locale_zh_CN+y} -then : - printf %s "(cached) " >&6 -else $as_nop - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#include -#if HAVE_LANGINFO_CODESET -# include -#endif -#include -#include -struct tm t; -char buf[16]; -int main () -{ - /* On BeOS and Haiku, locales are not implemented in libc. Rather, libintl - imitates locale dependent behaviour by looking at the environment - variables, and all locales use the UTF-8 encoding. */ -#if defined __BEOS__ || defined __HAIKU__ - return 1; -#else - /* Check whether the given locale name is recognized by the system. */ -# if defined _WIN32 && !defined __CYGWIN__ - /* On native Windows, setlocale(category, "") looks at the system settings, - not at the environment variables. Also, when an encoding suffix such - as ".65001" or ".54936" is specified, it succeeds but sets the LC_CTYPE - category of the locale to "C". */ - if (setlocale (LC_ALL, getenv ("LC_ALL")) == NULL - || strcmp (setlocale (LC_CTYPE, NULL), "C") == 0) - return 1; -# else - if (setlocale (LC_ALL, "") == NULL) return 1; -# endif - /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". - On Mac OS X 10.3.5 (Darwin 7.5) in the fr_FR locale, nl_langinfo(CODESET) - is empty, and the behaviour of Tcl 8.4 in this locale is not useful. - On OpenBSD 4.0, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. - On MirBSD 10, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "UTF-8". */ -# if HAVE_LANGINFO_CODESET - { - const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0 - || strcmp (cs, "UTF-8") == 0) - return 1; - } -# endif -# ifdef __CYGWIN__ - /* On Cygwin, avoid locale names without encoding suffix, because the - locale_charset() function relies on the encoding suffix. Note that - LC_ALL is set on the command line. */ - if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; -# endif - /* Check whether in a month name, no byte in the range 0x80..0x9F occurs. - This excludes the UTF-8 encoding (except on MirBSD). */ - { - const char *p; - t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; - if (strftime (buf, sizeof (buf), "%B", &t) < 2) return 1; - for (p = buf; *p != '\0'; p++) - if ((unsigned char) *p >= 0x80 && (unsigned char) *p < 0xa0) - return 1; - } - /* Check whether a typical GB18030 multibyte sequence is recognized as a - single wide character. This excludes the GB2312 and GBK encodings. */ - if (mblen ("\203\062\332\066", 5) != 4) - return 1; - return 0; -#endif -} - -_ACEOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest$ac_exeext; then - case "$host_os" in - # Handle native Windows specially, because there setlocale() interprets - # "ar" as "Arabic" or "Arabic_Saudi Arabia.1256", - # "fr" or "fra" as "French" or "French_France.1252", - # "ge"(!) or "deu"(!) as "German" or "German_Germany.1252", - # "ja" as "Japanese" or "Japanese_Japan.932", - # and similar. - mingw*) - # Test for the hypothetical native Windows locale name. - if (LC_ALL=Chinese_China.54936 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_zh_CN=Chinese_China.54936 - else - # None found. - gt_cv_locale_zh_CN=none - fi - ;; - solaris2.8) - # On Solaris 8, the locales zh_CN.GB18030, zh_CN.GBK, zh.GBK are - # broken. One witness is the test case in gl_MBRTOWC_SANITYCHECK. - # Another witness is that "LC_ALL=zh_CN.GB18030 bash -c true" dumps core. - gt_cv_locale_zh_CN=none - ;; - *) - # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because - # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the - # configure script would override the LC_ALL setting. Likewise for - # LC_CTYPE, which is also set at the beginning of the configure script. - # Test for the locale name without encoding suffix. - if (LC_ALL=zh_CN LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_zh_CN=zh_CN - else - # Test for the locale name with explicit encoding suffix. - if (LC_ALL=zh_CN.GB18030 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_zh_CN=zh_CN.GB18030 - else - # None found. - gt_cv_locale_zh_CN=none - fi - fi - ;; - esac - else - # If there was a link error, due to mblen(), the system is so old that - # it certainly doesn't have a chinese locale. - gt_cv_locale_zh_CN=none - fi - rm -fr conftest* - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_zh_CN" >&5 -printf "%s\n" "$gt_cv_locale_zh_CN" >&6; } - LOCALE_ZH_CN=$gt_cv_locale_zh_CN - - - - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a traditional french locale" >&5 -printf %s "checking for a traditional french locale... " >&6; } -if test ${gt_cv_locale_fr+y} -then : - printf %s "(cached) " >&6 -else $as_nop - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#if HAVE_LANGINFO_CODESET -# include -#endif -#include -#include -struct tm t; -char buf[16]; -int main () { - /* On BeOS and Haiku, locales are not implemented in libc. Rather, libintl - imitates locale dependent behaviour by looking at the environment - variables, and all locales use the UTF-8 encoding. */ -#if defined __BEOS__ || defined __HAIKU__ - return 1; -#else - /* Check whether the given locale name is recognized by the system. */ -# if defined _WIN32 && !defined __CYGWIN__ - /* On native Windows, setlocale(category, "") looks at the system settings, - not at the environment variables. Also, when an encoding suffix such - as ".65001" or ".54936" is specified, it succeeds but sets the LC_CTYPE - category of the locale to "C". */ - if (setlocale (LC_ALL, getenv ("LC_ALL")) == NULL - || strcmp (setlocale (LC_CTYPE, NULL), "C") == 0) - return 1; -# else - if (setlocale (LC_ALL, "") == NULL) return 1; -# endif - /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". - On Mac OS X 10.3.5 (Darwin 7.5) in the fr_FR locale, nl_langinfo(CODESET) - is empty, and the behaviour of Tcl 8.4 in this locale is not useful. - On OpenBSD 4.0, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. - On MirBSD 10, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "UTF-8". */ -# if HAVE_LANGINFO_CODESET - { - const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0 - || strcmp (cs, "UTF-8") == 0) - return 1; - } -# endif -# ifdef __CYGWIN__ - /* On Cygwin, avoid locale names without encoding suffix, because the - locale_charset() function relies on the encoding suffix. Note that - LC_ALL is set on the command line. */ - if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; -# endif - /* Check whether in the abbreviation of the second month, the second - character (should be U+00E9: LATIN SMALL LETTER E WITH ACUTE) is only - one byte long. This excludes the UTF-8 encoding. */ - t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; - if (strftime (buf, sizeof (buf), "%b", &t) < 3 || buf[2] != 'v') return 1; -# if !defined __BIONIC__ /* Bionic libc's 'struct lconv' is just a dummy. */ - /* Check whether the decimal separator is a comma. - On NetBSD 3.0 in the fr_FR.ISO8859-1 locale, localeconv()->decimal_point - are nl_langinfo(RADIXCHAR) are both ".". */ - if (localeconv () ->decimal_point[0] != ',') return 1; -# endif - return 0; -#endif -} - -_ACEOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest$ac_exeext; then - case "$host_os" in - # Handle native Windows specially, because there setlocale() interprets - # "ar" as "Arabic" or "Arabic_Saudi Arabia.1256", - # "fr" or "fra" as "French" or "French_France.1252", - # "ge"(!) or "deu"(!) as "German" or "German_Germany.1252", - # "ja" as "Japanese" or "Japanese_Japan.932", - # and similar. - mingw*) - # Test for the native Windows locale name. - if (LC_ALL=French_France.1252 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=French_France.1252 - else - # None found. - gt_cv_locale_fr=none - fi - ;; - *) - # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because - # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the - # configure script would override the LC_ALL setting. Likewise for - # LC_CTYPE, which is also set at the beginning of the configure script. - # Test for the usual locale name. - if (LC_ALL=fr_FR LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr_FR - else - # Test for the locale name with explicit encoding suffix. - if (LC_ALL=fr_FR.ISO-8859-1 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr_FR.ISO-8859-1 - else - # Test for the AIX, OSF/1, FreeBSD, NetBSD, OpenBSD locale name. - if (LC_ALL=fr_FR.ISO8859-1 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr_FR.ISO8859-1 - else - # Test for the HP-UX locale name. - if (LC_ALL=fr_FR.iso88591 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr_FR.iso88591 - else - # Test for the Solaris 7 locale name. - if (LC_ALL=fr LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr - else - # None found. - gt_cv_locale_fr=none - fi - fi - fi - fi - fi - ;; - esac - fi - rm -fr conftest* - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_fr" >&5 -printf "%s\n" "$gt_cv_locale_fr" >&6; } - LOCALE_FR=$gt_cv_locale_fr - - - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a french Unicode locale" >&5 -printf %s "checking for a french Unicode locale... " >&6; } -if test ${gt_cv_locale_fr_utf8+y} -then : - printf %s "(cached) " >&6 -else $as_nop - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#if HAVE_LANGINFO_CODESET -# include -#endif -#include -#include -struct tm t; -char buf[16]; -int main () { - /* On BeOS and Haiku, locales are not implemented in libc. Rather, libintl - imitates locale dependent behaviour by looking at the environment - variables, and all locales use the UTF-8 encoding. */ -#if !(defined __BEOS__ || defined __HAIKU__) - /* Check whether the given locale name is recognized by the system. */ -# if defined _WIN32 && !defined __CYGWIN__ - /* On native Windows, setlocale(category, "") looks at the system settings, - not at the environment variables. Also, when an encoding suffix such - as ".65001" or ".54936" is specified, it succeeds but sets the LC_CTYPE - category of the locale to "C". */ - if (setlocale (LC_ALL, getenv ("LC_ALL")) == NULL - || strcmp (setlocale (LC_CTYPE, NULL), "C") == 0) - return 1; -# else - if (setlocale (LC_ALL, "") == NULL) return 1; -# endif - /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". - On Mac OS X 10.3.5 (Darwin 7.5) in the fr_FR locale, nl_langinfo(CODESET) - is empty, and the behaviour of Tcl 8.4 in this locale is not useful. - On OpenBSD 4.0, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. */ -# if HAVE_LANGINFO_CODESET - { - const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0) - return 1; - } -# endif -# ifdef __CYGWIN__ - /* On Cygwin, avoid locale names without encoding suffix, because the - locale_charset() function relies on the encoding suffix. Note that - LC_ALL is set on the command line. */ - if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; -# endif - /* Check whether in the abbreviation of the second month, the second - character (should be U+00E9: LATIN SMALL LETTER E WITH ACUTE) is - two bytes long, with UTF-8 encoding. */ - t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; - if (strftime (buf, sizeof (buf), "%b", &t) < 4 - || buf[1] != (char) 0xc3 || buf[2] != (char) 0xa9 || buf[3] != 'v') - return 1; -#endif -#if !defined __BIONIC__ /* Bionic libc's 'struct lconv' is just a dummy. */ - /* Check whether the decimal separator is a comma. - On NetBSD 3.0 in the fr_FR.ISO8859-1 locale, localeconv()->decimal_point - are nl_langinfo(RADIXCHAR) are both ".". */ - if (localeconv () ->decimal_point[0] != ',') return 1; -#endif - return 0; -} - -_ACEOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest$ac_exeext; then - case "$host_os" in - # Handle native Windows specially, because there setlocale() interprets - # "ar" as "Arabic" or "Arabic_Saudi Arabia.1256", - # "fr" or "fra" as "French" or "French_France.1252", - # "ge"(!) or "deu"(!) as "German" or "German_Germany.1252", - # "ja" as "Japanese" or "Japanese_Japan.932", - # and similar. - mingw*) - # Test for the hypothetical native Windows locale name. - if (LC_ALL=French_France.65001 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=French_France.65001 - else - # None found. - gt_cv_locale_fr_utf8=none - fi - ;; - *) - # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because - # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the - # configure script would override the LC_ALL setting. Likewise for - # LC_CTYPE, which is also set at the beginning of the configure script. - # Test for the usual locale name. - if (LC_ALL=fr_FR LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=fr_FR - else - # Test for the locale name with explicit encoding suffix. - if (LC_ALL=fr_FR.UTF-8 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=fr_FR.UTF-8 - else - # Test for the Solaris 7 locale name. - if (LC_ALL=fr.UTF-8 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=fr.UTF-8 - else - # None found. - gt_cv_locale_fr_utf8=none - fi - fi - fi - ;; - esac - fi - rm -fr conftest* - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_fr_utf8" >&5 -printf "%s\n" "$gt_cv_locale_fr_utf8" >&6; } - LOCALE_FR_UTF8=$gt_cv_locale_fr_utf8 - - - - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a traditional japanese locale" >&5 -printf %s "checking for a traditional japanese locale... " >&6; } -if test ${gt_cv_locale_ja+y} -then : - printf %s "(cached) " >&6 -else $as_nop - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#if HAVE_LANGINFO_CODESET -# include -#endif -#include -#include -struct tm t; -char buf[16]; -int main () -{ - /* On BeOS and Haiku, locales are not implemented in libc. Rather, libintl - imitates locale dependent behaviour by looking at the environment - variables, and all locales use the UTF-8 encoding. */ -#if defined __BEOS__ || defined __HAIKU__ - return 1; -#else - /* Check whether the given locale name is recognized by the system. */ -# if defined _WIN32 && !defined __CYGWIN__ - /* On native Windows, setlocale(category, "") looks at the system settings, - not at the environment variables. Also, when an encoding suffix such - as ".65001" or ".54936" is specified, it succeeds but sets the LC_CTYPE - category of the locale to "C". */ - if (setlocale (LC_ALL, getenv ("LC_ALL")) == NULL - || strcmp (setlocale (LC_CTYPE, NULL), "C") == 0) - return 1; -# else - if (setlocale (LC_ALL, "") == NULL) return 1; -# endif - /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". - On Mac OS X 10.3.5 (Darwin 7.5) in the fr_FR locale, nl_langinfo(CODESET) - is empty, and the behaviour of Tcl 8.4 in this locale is not useful. - On OpenBSD 4.0, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. - On MirBSD 10, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "UTF-8". */ -# if HAVE_LANGINFO_CODESET - { - const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0 - || strcmp (cs, "UTF-8") == 0) - return 1; - } -# endif -# ifdef __CYGWIN__ - /* On Cygwin, avoid locale names without encoding suffix, because the - locale_charset() function relies on the encoding suffix. Note that - LC_ALL is set on the command line. */ - if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; -# endif - /* Check whether MB_CUR_MAX is > 1. This excludes the dysfunctional locales - on Cygwin 1.5.x. */ - if (MB_CUR_MAX == 1) - return 1; - /* Check whether in a month name, no byte in the range 0x80..0x9F occurs. - This excludes the UTF-8 encoding (except on MirBSD). */ - { - const char *p; - t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; - if (strftime (buf, sizeof (buf), "%B", &t) < 2) return 1; - for (p = buf; *p != '\0'; p++) - if ((unsigned char) *p >= 0x80 && (unsigned char) *p < 0xa0) - return 1; - } - return 0; -#endif -} - -_ACEOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest$ac_exeext; then - case "$host_os" in - # Handle native Windows specially, because there setlocale() interprets - # "ar" as "Arabic" or "Arabic_Saudi Arabia.1256", - # "fr" or "fra" as "French" or "French_France.1252", - # "ge"(!) or "deu"(!) as "German" or "German_Germany.1252", - # "ja" as "Japanese" or "Japanese_Japan.932", - # and similar. - mingw*) - # Note that on native Windows, the Japanese locale is - # Japanese_Japan.932, and CP932 is very different from EUC-JP, so we - # cannot use it here. - gt_cv_locale_ja=none - ;; - *) - # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because - # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the - # configure script would override the LC_ALL setting. Likewise for - # LC_CTYPE, which is also set at the beginning of the configure script. - # Test for the AIX locale name. - if (LC_ALL=ja_JP LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_ja=ja_JP - else - # Test for the locale name with explicit encoding suffix. - if (LC_ALL=ja_JP.EUC-JP LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_ja=ja_JP.EUC-JP - else - # Test for the HP-UX, OSF/1, NetBSD locale name. - if (LC_ALL=ja_JP.eucJP LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_ja=ja_JP.eucJP - else - # Test for the IRIX, FreeBSD locale name. - if (LC_ALL=ja_JP.EUC LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_ja=ja_JP.EUC - else - # Test for the Solaris 7 locale name. - if (LC_ALL=ja LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_ja=ja - else - # Special test for NetBSD 1.6. - if test -f /usr/share/locale/ja_JP.eucJP/LC_CTYPE; then - gt_cv_locale_ja=ja_JP.eucJP - else - # None found. - gt_cv_locale_ja=none - fi - fi - fi - fi - fi - fi - ;; - esac - fi - rm -fr conftest* - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_ja" >&5 -printf "%s\n" "$gt_cv_locale_ja" >&6; } - LOCALE_JA=$gt_cv_locale_ja - - - - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a transitional chinese locale" >&5 -printf %s "checking for a transitional chinese locale... " >&6; } -if test ${gt_cv_locale_zh_CN+y} -then : - printf %s "(cached) " >&6 -else $as_nop - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#include -#if HAVE_LANGINFO_CODESET -# include -#endif -#include -#include -struct tm t; -char buf[16]; -int main () -{ - /* On BeOS and Haiku, locales are not implemented in libc. Rather, libintl - imitates locale dependent behaviour by looking at the environment - variables, and all locales use the UTF-8 encoding. */ -#if defined __BEOS__ || defined __HAIKU__ - return 1; -#else - /* Check whether the given locale name is recognized by the system. */ -# if defined _WIN32 && !defined __CYGWIN__ - /* On native Windows, setlocale(category, "") looks at the system settings, - not at the environment variables. Also, when an encoding suffix such - as ".65001" or ".54936" is specified, it succeeds but sets the LC_CTYPE - category of the locale to "C". */ - if (setlocale (LC_ALL, getenv ("LC_ALL")) == NULL - || strcmp (setlocale (LC_CTYPE, NULL), "C") == 0) - return 1; -# else - if (setlocale (LC_ALL, "") == NULL) return 1; -# endif - /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". - On Mac OS X 10.3.5 (Darwin 7.5) in the fr_FR locale, nl_langinfo(CODESET) - is empty, and the behaviour of Tcl 8.4 in this locale is not useful. - On OpenBSD 4.0, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. - On MirBSD 10, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "UTF-8". */ -# if HAVE_LANGINFO_CODESET - { - const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0 - || strcmp (cs, "UTF-8") == 0) - return 1; - } -# endif -# ifdef __CYGWIN__ - /* On Cygwin, avoid locale names without encoding suffix, because the - locale_charset() function relies on the encoding suffix. Note that - LC_ALL is set on the command line. */ - if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; -# endif - /* Check whether in a month name, no byte in the range 0x80..0x9F occurs. - This excludes the UTF-8 encoding (except on MirBSD). */ - { - const char *p; - t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; - if (strftime (buf, sizeof (buf), "%B", &t) < 2) return 1; - for (p = buf; *p != '\0'; p++) - if ((unsigned char) *p >= 0x80 && (unsigned char) *p < 0xa0) - return 1; - } - /* Check whether a typical GB18030 multibyte sequence is recognized as a - single wide character. This excludes the GB2312 and GBK encodings. */ - if (mblen ("\203\062\332\066", 5) != 4) - return 1; - return 0; -#endif -} - -_ACEOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest$ac_exeext; then - case "$host_os" in - # Handle native Windows specially, because there setlocale() interprets - # "ar" as "Arabic" or "Arabic_Saudi Arabia.1256", - # "fr" or "fra" as "French" or "French_France.1252", - # "ge"(!) or "deu"(!) as "German" or "German_Germany.1252", - # "ja" as "Japanese" or "Japanese_Japan.932", - # and similar. - mingw*) - # Test for the hypothetical native Windows locale name. - if (LC_ALL=Chinese_China.54936 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_zh_CN=Chinese_China.54936 - else - # None found. - gt_cv_locale_zh_CN=none - fi - ;; - solaris2.8) - # On Solaris 8, the locales zh_CN.GB18030, zh_CN.GBK, zh.GBK are - # broken. One witness is the test case in gl_MBRTOWC_SANITYCHECK. - # Another witness is that "LC_ALL=zh_CN.GB18030 bash -c true" dumps core. - gt_cv_locale_zh_CN=none - ;; - *) - # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because - # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the - # configure script would override the LC_ALL setting. Likewise for - # LC_CTYPE, which is also set at the beginning of the configure script. - # Test for the locale name without encoding suffix. - if (LC_ALL=zh_CN LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_zh_CN=zh_CN - else - # Test for the locale name with explicit encoding suffix. - if (LC_ALL=zh_CN.GB18030 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_zh_CN=zh_CN.GB18030 - else - # None found. - gt_cv_locale_zh_CN=none - fi - fi - ;; - esac - else - # If there was a link error, due to mblen(), the system is so old that - # it certainly doesn't have a chinese locale. - gt_cv_locale_zh_CN=none - fi - rm -fr conftest* - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_zh_CN" >&5 -printf "%s\n" "$gt_cv_locale_zh_CN" >&6; } - LOCALE_ZH_CN=$gt_cv_locale_zh_CN - - - - if test "$ac_cv_header_winsock2_h" = yes; then - - - - - - - - - gltests_LIBOBJS="$gltests_LIBOBJS listen.$ac_objext" - - fi - - - - - - - - - - if test "$GL_GNULIB_LISTEN" != 1; then - if test "$GL_GNULIB_LISTEN" = 0; then - GL_GNULIB_LISTEN=$gl_module_indicator_condition - else - GL_GNULIB_LISTEN="($GL_GNULIB_LISTEN || $gl_module_indicator_condition)" - fi - fi - - - - - -printf "%s\n" "#define GNULIB_TEST_LISTEN 1" >>confdefs.h - - - - - - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a traditional french locale" >&5 -printf %s "checking for a traditional french locale... " >&6; } -if test ${gt_cv_locale_fr+y} -then : - printf %s "(cached) " >&6 -else $as_nop - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#if HAVE_LANGINFO_CODESET -# include -#endif -#include -#include -struct tm t; -char buf[16]; -int main () { - /* On BeOS and Haiku, locales are not implemented in libc. Rather, libintl - imitates locale dependent behaviour by looking at the environment - variables, and all locales use the UTF-8 encoding. */ -#if defined __BEOS__ || defined __HAIKU__ - return 1; -#else - /* Check whether the given locale name is recognized by the system. */ -# if defined _WIN32 && !defined __CYGWIN__ - /* On native Windows, setlocale(category, "") looks at the system settings, - not at the environment variables. Also, when an encoding suffix such - as ".65001" or ".54936" is specified, it succeeds but sets the LC_CTYPE - category of the locale to "C". */ - if (setlocale (LC_ALL, getenv ("LC_ALL")) == NULL - || strcmp (setlocale (LC_CTYPE, NULL), "C") == 0) - return 1; -# else - if (setlocale (LC_ALL, "") == NULL) return 1; -# endif - /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". - On Mac OS X 10.3.5 (Darwin 7.5) in the fr_FR locale, nl_langinfo(CODESET) - is empty, and the behaviour of Tcl 8.4 in this locale is not useful. - On OpenBSD 4.0, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. - On MirBSD 10, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "UTF-8". */ -# if HAVE_LANGINFO_CODESET - { - const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0 - || strcmp (cs, "UTF-8") == 0) - return 1; - } -# endif -# ifdef __CYGWIN__ - /* On Cygwin, avoid locale names without encoding suffix, because the - locale_charset() function relies on the encoding suffix. Note that - LC_ALL is set on the command line. */ - if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; -# endif - /* Check whether in the abbreviation of the second month, the second - character (should be U+00E9: LATIN SMALL LETTER E WITH ACUTE) is only - one byte long. This excludes the UTF-8 encoding. */ - t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; - if (strftime (buf, sizeof (buf), "%b", &t) < 3 || buf[2] != 'v') return 1; -# if !defined __BIONIC__ /* Bionic libc's 'struct lconv' is just a dummy. */ - /* Check whether the decimal separator is a comma. - On NetBSD 3.0 in the fr_FR.ISO8859-1 locale, localeconv()->decimal_point - are nl_langinfo(RADIXCHAR) are both ".". */ - if (localeconv () ->decimal_point[0] != ',') return 1; -# endif - return 0; -#endif -} - -_ACEOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest$ac_exeext; then - case "$host_os" in - # Handle native Windows specially, because there setlocale() interprets - # "ar" as "Arabic" or "Arabic_Saudi Arabia.1256", - # "fr" or "fra" as "French" or "French_France.1252", - # "ge"(!) or "deu"(!) as "German" or "German_Germany.1252", - # "ja" as "Japanese" or "Japanese_Japan.932", - # and similar. - mingw*) - # Test for the native Windows locale name. - if (LC_ALL=French_France.1252 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=French_France.1252 - else - # None found. - gt_cv_locale_fr=none - fi - ;; - *) - # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because - # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the - # configure script would override the LC_ALL setting. Likewise for - # LC_CTYPE, which is also set at the beginning of the configure script. - # Test for the usual locale name. - if (LC_ALL=fr_FR LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr_FR - else - # Test for the locale name with explicit encoding suffix. - if (LC_ALL=fr_FR.ISO-8859-1 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr_FR.ISO-8859-1 - else - # Test for the AIX, OSF/1, FreeBSD, NetBSD, OpenBSD locale name. - if (LC_ALL=fr_FR.ISO8859-1 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr_FR.ISO8859-1 - else - # Test for the HP-UX locale name. - if (LC_ALL=fr_FR.iso88591 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr_FR.iso88591 - else - # Test for the Solaris 7 locale name. - if (LC_ALL=fr LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr - else - # None found. - gt_cv_locale_fr=none - fi - fi - fi - fi - fi - ;; - esac - fi - rm -fr conftest* - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_fr" >&5 -printf "%s\n" "$gt_cv_locale_fr" >&6; } - LOCALE_FR=$gt_cv_locale_fr - - - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a french Unicode locale" >&5 -printf %s "checking for a french Unicode locale... " >&6; } -if test ${gt_cv_locale_fr_utf8+y} -then : - printf %s "(cached) " >&6 -else $as_nop - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#if HAVE_LANGINFO_CODESET -# include -#endif -#include -#include -struct tm t; -char buf[16]; -int main () { - /* On BeOS and Haiku, locales are not implemented in libc. Rather, libintl - imitates locale dependent behaviour by looking at the environment - variables, and all locales use the UTF-8 encoding. */ -#if !(defined __BEOS__ || defined __HAIKU__) - /* Check whether the given locale name is recognized by the system. */ -# if defined _WIN32 && !defined __CYGWIN__ - /* On native Windows, setlocale(category, "") looks at the system settings, - not at the environment variables. Also, when an encoding suffix such - as ".65001" or ".54936" is specified, it succeeds but sets the LC_CTYPE - category of the locale to "C". */ - if (setlocale (LC_ALL, getenv ("LC_ALL")) == NULL - || strcmp (setlocale (LC_CTYPE, NULL), "C") == 0) - return 1; -# else - if (setlocale (LC_ALL, "") == NULL) return 1; -# endif - /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". - On Mac OS X 10.3.5 (Darwin 7.5) in the fr_FR locale, nl_langinfo(CODESET) - is empty, and the behaviour of Tcl 8.4 in this locale is not useful. - On OpenBSD 4.0, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. */ -# if HAVE_LANGINFO_CODESET - { - const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0) - return 1; - } -# endif -# ifdef __CYGWIN__ - /* On Cygwin, avoid locale names without encoding suffix, because the - locale_charset() function relies on the encoding suffix. Note that - LC_ALL is set on the command line. */ - if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; -# endif - /* Check whether in the abbreviation of the second month, the second - character (should be U+00E9: LATIN SMALL LETTER E WITH ACUTE) is - two bytes long, with UTF-8 encoding. */ - t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; - if (strftime (buf, sizeof (buf), "%b", &t) < 4 - || buf[1] != (char) 0xc3 || buf[2] != (char) 0xa9 || buf[3] != 'v') - return 1; -#endif -#if !defined __BIONIC__ /* Bionic libc's 'struct lconv' is just a dummy. */ - /* Check whether the decimal separator is a comma. - On NetBSD 3.0 in the fr_FR.ISO8859-1 locale, localeconv()->decimal_point - are nl_langinfo(RADIXCHAR) are both ".". */ - if (localeconv () ->decimal_point[0] != ',') return 1; -#endif - return 0; -} - -_ACEOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest$ac_exeext; then - case "$host_os" in - # Handle native Windows specially, because there setlocale() interprets - # "ar" as "Arabic" or "Arabic_Saudi Arabia.1256", - # "fr" or "fra" as "French" or "French_France.1252", - # "ge"(!) or "deu"(!) as "German" or "German_Germany.1252", - # "ja" as "Japanese" or "Japanese_Japan.932", - # and similar. - mingw*) - # Test for the hypothetical native Windows locale name. - if (LC_ALL=French_France.65001 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=French_France.65001 - else - # None found. - gt_cv_locale_fr_utf8=none - fi - ;; - *) - # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because - # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the - # configure script would override the LC_ALL setting. Likewise for - # LC_CTYPE, which is also set at the beginning of the configure script. - # Test for the usual locale name. - if (LC_ALL=fr_FR LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=fr_FR - else - # Test for the locale name with explicit encoding suffix. - if (LC_ALL=fr_FR.UTF-8 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=fr_FR.UTF-8 - else - # Test for the Solaris 7 locale name. - if (LC_ALL=fr.UTF-8 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=fr.UTF-8 - else - # None found. - gt_cv_locale_fr_utf8=none - fi - fi - fi - ;; - esac - fi - rm -fr conftest* - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_fr_utf8" >&5 -printf "%s\n" "$gt_cv_locale_fr_utf8" >&6; } - LOCALE_FR_UTF8=$gt_cv_locale_fr_utf8 - - - - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a traditional japanese locale" >&5 -printf %s "checking for a traditional japanese locale... " >&6; } -if test ${gt_cv_locale_ja+y} -then : - printf %s "(cached) " >&6 -else $as_nop - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#if HAVE_LANGINFO_CODESET -# include -#endif -#include -#include -struct tm t; -char buf[16]; -int main () -{ - /* On BeOS and Haiku, locales are not implemented in libc. Rather, libintl - imitates locale dependent behaviour by looking at the environment - variables, and all locales use the UTF-8 encoding. */ -#if defined __BEOS__ || defined __HAIKU__ - return 1; -#else - /* Check whether the given locale name is recognized by the system. */ -# if defined _WIN32 && !defined __CYGWIN__ - /* On native Windows, setlocale(category, "") looks at the system settings, - not at the environment variables. Also, when an encoding suffix such - as ".65001" or ".54936" is specified, it succeeds but sets the LC_CTYPE - category of the locale to "C". */ - if (setlocale (LC_ALL, getenv ("LC_ALL")) == NULL - || strcmp (setlocale (LC_CTYPE, NULL), "C") == 0) - return 1; -# else - if (setlocale (LC_ALL, "") == NULL) return 1; -# endif - /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". - On Mac OS X 10.3.5 (Darwin 7.5) in the fr_FR locale, nl_langinfo(CODESET) - is empty, and the behaviour of Tcl 8.4 in this locale is not useful. - On OpenBSD 4.0, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. - On MirBSD 10, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "UTF-8". */ -# if HAVE_LANGINFO_CODESET - { - const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0 - || strcmp (cs, "UTF-8") == 0) - return 1; - } -# endif -# ifdef __CYGWIN__ - /* On Cygwin, avoid locale names without encoding suffix, because the - locale_charset() function relies on the encoding suffix. Note that - LC_ALL is set on the command line. */ - if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; -# endif - /* Check whether MB_CUR_MAX is > 1. This excludes the dysfunctional locales - on Cygwin 1.5.x. */ - if (MB_CUR_MAX == 1) - return 1; - /* Check whether in a month name, no byte in the range 0x80..0x9F occurs. - This excludes the UTF-8 encoding (except on MirBSD). */ - { - const char *p; - t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; - if (strftime (buf, sizeof (buf), "%B", &t) < 2) return 1; - for (p = buf; *p != '\0'; p++) - if ((unsigned char) *p >= 0x80 && (unsigned char) *p < 0xa0) - return 1; - } - return 0; -#endif -} - -_ACEOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest$ac_exeext; then - case "$host_os" in - # Handle native Windows specially, because there setlocale() interprets - # "ar" as "Arabic" or "Arabic_Saudi Arabia.1256", - # "fr" or "fra" as "French" or "French_France.1252", - # "ge"(!) or "deu"(!) as "German" or "German_Germany.1252", - # "ja" as "Japanese" or "Japanese_Japan.932", - # and similar. - mingw*) - # Note that on native Windows, the Japanese locale is - # Japanese_Japan.932, and CP932 is very different from EUC-JP, so we - # cannot use it here. - gt_cv_locale_ja=none - ;; - *) - # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because - # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the - # configure script would override the LC_ALL setting. Likewise for - # LC_CTYPE, which is also set at the beginning of the configure script. - # Test for the AIX locale name. - if (LC_ALL=ja_JP LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_ja=ja_JP - else - # Test for the locale name with explicit encoding suffix. - if (LC_ALL=ja_JP.EUC-JP LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_ja=ja_JP.EUC-JP - else - # Test for the HP-UX, OSF/1, NetBSD locale name. - if (LC_ALL=ja_JP.eucJP LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_ja=ja_JP.eucJP - else - # Test for the IRIX, FreeBSD locale name. - if (LC_ALL=ja_JP.EUC LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_ja=ja_JP.EUC - else - # Test for the Solaris 7 locale name. - if (LC_ALL=ja LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_ja=ja - else - # Special test for NetBSD 1.6. - if test -f /usr/share/locale/ja_JP.eucJP/LC_CTYPE; then - gt_cv_locale_ja=ja_JP.eucJP - else - # None found. - gt_cv_locale_ja=none - fi - fi - fi - fi - fi - fi - ;; - esac - fi - rm -fr conftest* - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_ja" >&5 -printf "%s\n" "$gt_cv_locale_ja" >&6; } - LOCALE_JA=$gt_cv_locale_ja - - - - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a transitional chinese locale" >&5 -printf %s "checking for a transitional chinese locale... " >&6; } -if test ${gt_cv_locale_zh_CN+y} -then : - printf %s "(cached) " >&6 -else $as_nop - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#include -#if HAVE_LANGINFO_CODESET -# include -#endif -#include -#include -struct tm t; -char buf[16]; -int main () -{ - /* On BeOS and Haiku, locales are not implemented in libc. Rather, libintl - imitates locale dependent behaviour by looking at the environment - variables, and all locales use the UTF-8 encoding. */ -#if defined __BEOS__ || defined __HAIKU__ - return 1; -#else - /* Check whether the given locale name is recognized by the system. */ -# if defined _WIN32 && !defined __CYGWIN__ - /* On native Windows, setlocale(category, "") looks at the system settings, - not at the environment variables. Also, when an encoding suffix such - as ".65001" or ".54936" is specified, it succeeds but sets the LC_CTYPE - category of the locale to "C". */ - if (setlocale (LC_ALL, getenv ("LC_ALL")) == NULL - || strcmp (setlocale (LC_CTYPE, NULL), "C") == 0) - return 1; -# else - if (setlocale (LC_ALL, "") == NULL) return 1; -# endif - /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". - On Mac OS X 10.3.5 (Darwin 7.5) in the fr_FR locale, nl_langinfo(CODESET) - is empty, and the behaviour of Tcl 8.4 in this locale is not useful. - On OpenBSD 4.0, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. - On MirBSD 10, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "UTF-8". */ -# if HAVE_LANGINFO_CODESET - { - const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0 - || strcmp (cs, "UTF-8") == 0) - return 1; - } -# endif -# ifdef __CYGWIN__ - /* On Cygwin, avoid locale names without encoding suffix, because the - locale_charset() function relies on the encoding suffix. Note that - LC_ALL is set on the command line. */ - if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; -# endif - /* Check whether in a month name, no byte in the range 0x80..0x9F occurs. - This excludes the UTF-8 encoding (except on MirBSD). */ - { - const char *p; - t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; - if (strftime (buf, sizeof (buf), "%B", &t) < 2) return 1; - for (p = buf; *p != '\0'; p++) - if ((unsigned char) *p >= 0x80 && (unsigned char) *p < 0xa0) - return 1; - } - /* Check whether a typical GB18030 multibyte sequence is recognized as a - single wide character. This excludes the GB2312 and GBK encodings. */ - if (mblen ("\203\062\332\066", 5) != 4) - return 1; - return 0; -#endif -} - -_ACEOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest$ac_exeext; then - case "$host_os" in - # Handle native Windows specially, because there setlocale() interprets - # "ar" as "Arabic" or "Arabic_Saudi Arabia.1256", - # "fr" or "fra" as "French" or "French_France.1252", - # "ge"(!) or "deu"(!) as "German" or "German_Germany.1252", - # "ja" as "Japanese" or "Japanese_Japan.932", - # and similar. - mingw*) - # Test for the hypothetical native Windows locale name. - if (LC_ALL=Chinese_China.54936 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_zh_CN=Chinese_China.54936 - else - # None found. - gt_cv_locale_zh_CN=none - fi - ;; - solaris2.8) - # On Solaris 8, the locales zh_CN.GB18030, zh_CN.GBK, zh.GBK are - # broken. One witness is the test case in gl_MBRTOWC_SANITYCHECK. - # Another witness is that "LC_ALL=zh_CN.GB18030 bash -c true" dumps core. - gt_cv_locale_zh_CN=none - ;; - *) - # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because - # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the - # configure script would override the LC_ALL setting. Likewise for - # LC_CTYPE, which is also set at the beginning of the configure script. - # Test for the locale name without encoding suffix. - if (LC_ALL=zh_CN LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_zh_CN=zh_CN - else - # Test for the locale name with explicit encoding suffix. - if (LC_ALL=zh_CN.GB18030 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_zh_CN=zh_CN.GB18030 - else - # None found. - gt_cv_locale_zh_CN=none - fi - fi - ;; - esac - else - # If there was a link error, due to mblen(), the system is so old that - # it certainly doesn't have a chinese locale. - gt_cv_locale_zh_CN=none - fi - rm -fr conftest* - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_zh_CN" >&5 -printf "%s\n" "$gt_cv_locale_zh_CN" >&6; } - LOCALE_ZH_CN=$gt_cv_locale_zh_CN - - - - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a turkish Unicode locale" >&5 -printf %s "checking for a turkish Unicode locale... " >&6; } -if test ${gt_cv_locale_tr_utf8+y} -then : - printf %s "(cached) " >&6 -else $as_nop - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#if HAVE_LANGINFO_CODESET -# include -#endif -#include -#include -#include -struct tm t; -char buf[16]; -int main () { - /* On BeOS, locales are not implemented in libc. Rather, libintl - imitates locale dependent behaviour by looking at the environment - variables, and all locales use the UTF-8 encoding. But BeOS does not - implement the Turkish upper-/lowercase mappings. Therefore, let this - program return 1 on BeOS. */ - /* Check whether the given locale name is recognized by the system. */ -#if defined _WIN32 && !defined __CYGWIN__ - /* On native Windows, setlocale(category, "") looks at the system settings, - not at the environment variables. Also, when an encoding suffix such - as ".65001" or ".54936" is specified, it succeeds but sets the LC_CTYPE - category of the locale to "C". */ - if (setlocale (LC_ALL, getenv ("LC_ALL")) == NULL - || strcmp (setlocale (LC_CTYPE, NULL), "C") == 0) - return 1; -#else - if (setlocale (LC_ALL, "") == NULL) return 1; -#endif - /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". - On Mac OS X 10.3.5 (Darwin 7.5) in the tr_TR locale, nl_langinfo(CODESET) - is empty, and the behaviour of Tcl 8.4 in this locale is not useful. - On OpenBSD 4.0, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. */ -#if HAVE_LANGINFO_CODESET - { - const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0) - return 1; - } -#endif -#ifdef __CYGWIN__ - /* On Cygwin, avoid locale names without encoding suffix, because the - locale_charset() function relies on the encoding suffix. Note that - LC_ALL is set on the command line. */ - if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; -#endif - /* Check whether in the abbreviation of the eighth month, the second - character (should be U+011F: LATIN SMALL LETTER G WITH BREVE) is - two bytes long, with UTF-8 encoding. */ - t.tm_year = 1992 - 1900; t.tm_mon = 8 - 1; t.tm_mday = 19; - if (strftime (buf, sizeof (buf), "%b", &t) < 4 - || buf[1] != (char) 0xc4 || buf[2] != (char) 0x9f) - return 1; - /* Check whether the upper-/lowercase mappings are as expected for - Turkish. */ - if (towupper ('i') != 0x0130 || towlower (0x0130) != 'i' - || towupper(0x0131) != 'I' || towlower ('I') != 0x0131) - return 1; - return 0; -} - -_ACEOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest$ac_exeext; then - case "$host_os" in - # Handle native Windows specially, because there setlocale() interprets - # "ar" as "Arabic" or "Arabic_Saudi Arabia.1256", - # "fr" or "fra" as "French" or "French_France.1252", - # "ge"(!) or "deu"(!) as "German" or "German_Germany.1252", - # "ja" as "Japanese" or "Japanese_Japan.932", - # and similar. - mingw*) - # Test for the hypothetical native Windows locale name. - if (LC_ALL=Turkish_Turkey.65001 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_tr_utf8=Turkish_Turkey.65001 - else - # None found. - gt_cv_locale_tr_utf8=none - fi - ;; - *) - # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because - # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the - # configure script would override the LC_ALL setting. Likewise for - # LC_CTYPE, which is also set at the beginning of the configure script. - # Test for the usual locale name. - if (LC_ALL=tr_TR LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_tr_utf8=tr_TR - else - # Test for the locale name with explicit encoding suffix. - if (LC_ALL=tr_TR.UTF-8 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_tr_utf8=tr_TR.UTF-8 - else - # Test for the Solaris 7 locale name. - if (LC_ALL=tr.UTF-8 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_tr_utf8=tr.UTF-8 - else - # None found. - gt_cv_locale_tr_utf8=none - fi - fi - fi - ;; - esac - else - gt_cv_locale_tr_utf8=none - fi - rm -fr conftest* - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_tr_utf8" >&5 -printf "%s\n" "$gt_cv_locale_tr_utf8" >&6; } - LOCALE_TR_UTF8=$gt_cv_locale_tr_utf8 - - - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a french Unicode locale" >&5 -printf %s "checking for a french Unicode locale... " >&6; } -if test ${gt_cv_locale_fr_utf8+y} -then : - printf %s "(cached) " >&6 -else $as_nop - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#if HAVE_LANGINFO_CODESET -# include -#endif -#include -#include -struct tm t; -char buf[16]; -int main () { - /* On BeOS and Haiku, locales are not implemented in libc. Rather, libintl - imitates locale dependent behaviour by looking at the environment - variables, and all locales use the UTF-8 encoding. */ -#if !(defined __BEOS__ || defined __HAIKU__) - /* Check whether the given locale name is recognized by the system. */ -# if defined _WIN32 && !defined __CYGWIN__ - /* On native Windows, setlocale(category, "") looks at the system settings, - not at the environment variables. Also, when an encoding suffix such - as ".65001" or ".54936" is specified, it succeeds but sets the LC_CTYPE - category of the locale to "C". */ - if (setlocale (LC_ALL, getenv ("LC_ALL")) == NULL - || strcmp (setlocale (LC_CTYPE, NULL), "C") == 0) - return 1; -# else - if (setlocale (LC_ALL, "") == NULL) return 1; -# endif - /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". - On Mac OS X 10.3.5 (Darwin 7.5) in the fr_FR locale, nl_langinfo(CODESET) - is empty, and the behaviour of Tcl 8.4 in this locale is not useful. - On OpenBSD 4.0, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. */ -# if HAVE_LANGINFO_CODESET - { - const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0) - return 1; - } -# endif -# ifdef __CYGWIN__ - /* On Cygwin, avoid locale names without encoding suffix, because the - locale_charset() function relies on the encoding suffix. Note that - LC_ALL is set on the command line. */ - if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; -# endif - /* Check whether in the abbreviation of the second month, the second - character (should be U+00E9: LATIN SMALL LETTER E WITH ACUTE) is - two bytes long, with UTF-8 encoding. */ - t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; - if (strftime (buf, sizeof (buf), "%b", &t) < 4 - || buf[1] != (char) 0xc3 || buf[2] != (char) 0xa9 || buf[3] != 'v') - return 1; -#endif -#if !defined __BIONIC__ /* Bionic libc's 'struct lconv' is just a dummy. */ - /* Check whether the decimal separator is a comma. - On NetBSD 3.0 in the fr_FR.ISO8859-1 locale, localeconv()->decimal_point - are nl_langinfo(RADIXCHAR) are both ".". */ - if (localeconv () ->decimal_point[0] != ',') return 1; -#endif - return 0; -} - -_ACEOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest$ac_exeext; then - case "$host_os" in - # Handle native Windows specially, because there setlocale() interprets - # "ar" as "Arabic" or "Arabic_Saudi Arabia.1256", - # "fr" or "fra" as "French" or "French_France.1252", - # "ge"(!) or "deu"(!) as "German" or "German_Germany.1252", - # "ja" as "Japanese" or "Japanese_Japan.932", - # and similar. - mingw*) - # Test for the hypothetical native Windows locale name. - if (LC_ALL=French_France.65001 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=French_France.65001 - else - # None found. - gt_cv_locale_fr_utf8=none - fi - ;; - *) - # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because - # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the - # configure script would override the LC_ALL setting. Likewise for - # LC_CTYPE, which is also set at the beginning of the configure script. - # Test for the usual locale name. - if (LC_ALL=fr_FR LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=fr_FR - else - # Test for the locale name with explicit encoding suffix. - if (LC_ALL=fr_FR.UTF-8 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=fr_FR.UTF-8 - else - # Test for the Solaris 7 locale name. - if (LC_ALL=fr.UTF-8 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=fr.UTF-8 - else - # None found. - gt_cv_locale_fr_utf8=none - fi - fi - fi - ;; - esac - fi - rm -fr conftest* - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_fr_utf8" >&5 -printf "%s\n" "$gt_cv_locale_fr_utf8" >&6; } - LOCALE_FR_UTF8=$gt_cv_locale_fr_utf8 - - - - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a traditional french locale" >&5 -printf %s "checking for a traditional french locale... " >&6; } -if test ${gt_cv_locale_fr+y} -then : - printf %s "(cached) " >&6 -else $as_nop - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#if HAVE_LANGINFO_CODESET -# include -#endif -#include -#include -struct tm t; -char buf[16]; -int main () { - /* On BeOS and Haiku, locales are not implemented in libc. Rather, libintl - imitates locale dependent behaviour by looking at the environment - variables, and all locales use the UTF-8 encoding. */ -#if defined __BEOS__ || defined __HAIKU__ - return 1; -#else - /* Check whether the given locale name is recognized by the system. */ -# if defined _WIN32 && !defined __CYGWIN__ - /* On native Windows, setlocale(category, "") looks at the system settings, - not at the environment variables. Also, when an encoding suffix such - as ".65001" or ".54936" is specified, it succeeds but sets the LC_CTYPE - category of the locale to "C". */ - if (setlocale (LC_ALL, getenv ("LC_ALL")) == NULL - || strcmp (setlocale (LC_CTYPE, NULL), "C") == 0) - return 1; -# else - if (setlocale (LC_ALL, "") == NULL) return 1; -# endif - /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". - On Mac OS X 10.3.5 (Darwin 7.5) in the fr_FR locale, nl_langinfo(CODESET) - is empty, and the behaviour of Tcl 8.4 in this locale is not useful. - On OpenBSD 4.0, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. - On MirBSD 10, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "UTF-8". */ -# if HAVE_LANGINFO_CODESET - { - const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0 - || strcmp (cs, "UTF-8") == 0) - return 1; - } -# endif -# ifdef __CYGWIN__ - /* On Cygwin, avoid locale names without encoding suffix, because the - locale_charset() function relies on the encoding suffix. Note that - LC_ALL is set on the command line. */ - if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; -# endif - /* Check whether in the abbreviation of the second month, the second - character (should be U+00E9: LATIN SMALL LETTER E WITH ACUTE) is only - one byte long. This excludes the UTF-8 encoding. */ - t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; - if (strftime (buf, sizeof (buf), "%b", &t) < 3 || buf[2] != 'v') return 1; -# if !defined __BIONIC__ /* Bionic libc's 'struct lconv' is just a dummy. */ - /* Check whether the decimal separator is a comma. - On NetBSD 3.0 in the fr_FR.ISO8859-1 locale, localeconv()->decimal_point - are nl_langinfo(RADIXCHAR) are both ".". */ - if (localeconv () ->decimal_point[0] != ',') return 1; -# endif - return 0; -#endif -} - -_ACEOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest$ac_exeext; then - case "$host_os" in - # Handle native Windows specially, because there setlocale() interprets - # "ar" as "Arabic" or "Arabic_Saudi Arabia.1256", - # "fr" or "fra" as "French" or "French_France.1252", - # "ge"(!) or "deu"(!) as "German" or "German_Germany.1252", - # "ja" as "Japanese" or "Japanese_Japan.932", - # and similar. - mingw*) - # Test for the native Windows locale name. - if (LC_ALL=French_France.1252 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=French_France.1252 - else - # None found. - gt_cv_locale_fr=none - fi - ;; - *) - # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because - # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the - # configure script would override the LC_ALL setting. Likewise for - # LC_CTYPE, which is also set at the beginning of the configure script. - # Test for the usual locale name. - if (LC_ALL=fr_FR LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr_FR - else - # Test for the locale name with explicit encoding suffix. - if (LC_ALL=fr_FR.ISO-8859-1 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr_FR.ISO-8859-1 - else - # Test for the AIX, OSF/1, FreeBSD, NetBSD, OpenBSD locale name. - if (LC_ALL=fr_FR.ISO8859-1 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr_FR.ISO8859-1 - else - # Test for the HP-UX locale name. - if (LC_ALL=fr_FR.iso88591 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr_FR.iso88591 - else - # Test for the Solaris 7 locale name. - if (LC_ALL=fr LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr - else - # None found. - gt_cv_locale_fr=none - fi - fi - fi - fi - fi - ;; - esac - fi - rm -fr conftest* - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_fr" >&5 -printf "%s\n" "$gt_cv_locale_fr" >&6; } - LOCALE_FR=$gt_cv_locale_fr - - - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a french Unicode locale" >&5 -printf %s "checking for a french Unicode locale... " >&6; } -if test ${gt_cv_locale_fr_utf8+y} -then : - printf %s "(cached) " >&6 -else $as_nop - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#if HAVE_LANGINFO_CODESET -# include -#endif -#include -#include -struct tm t; -char buf[16]; -int main () { - /* On BeOS and Haiku, locales are not implemented in libc. Rather, libintl - imitates locale dependent behaviour by looking at the environment - variables, and all locales use the UTF-8 encoding. */ -#if !(defined __BEOS__ || defined __HAIKU__) - /* Check whether the given locale name is recognized by the system. */ -# if defined _WIN32 && !defined __CYGWIN__ - /* On native Windows, setlocale(category, "") looks at the system settings, - not at the environment variables. Also, when an encoding suffix such - as ".65001" or ".54936" is specified, it succeeds but sets the LC_CTYPE - category of the locale to "C". */ - if (setlocale (LC_ALL, getenv ("LC_ALL")) == NULL - || strcmp (setlocale (LC_CTYPE, NULL), "C") == 0) - return 1; -# else - if (setlocale (LC_ALL, "") == NULL) return 1; -# endif - /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". - On Mac OS X 10.3.5 (Darwin 7.5) in the fr_FR locale, nl_langinfo(CODESET) - is empty, and the behaviour of Tcl 8.4 in this locale is not useful. - On OpenBSD 4.0, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. */ -# if HAVE_LANGINFO_CODESET - { - const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0) - return 1; - } -# endif -# ifdef __CYGWIN__ - /* On Cygwin, avoid locale names without encoding suffix, because the - locale_charset() function relies on the encoding suffix. Note that - LC_ALL is set on the command line. */ - if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; -# endif - /* Check whether in the abbreviation of the second month, the second - character (should be U+00E9: LATIN SMALL LETTER E WITH ACUTE) is - two bytes long, with UTF-8 encoding. */ - t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; - if (strftime (buf, sizeof (buf), "%b", &t) < 4 - || buf[1] != (char) 0xc3 || buf[2] != (char) 0xa9 || buf[3] != 'v') - return 1; -#endif -#if !defined __BIONIC__ /* Bionic libc's 'struct lconv' is just a dummy. */ - /* Check whether the decimal separator is a comma. - On NetBSD 3.0 in the fr_FR.ISO8859-1 locale, localeconv()->decimal_point - are nl_langinfo(RADIXCHAR) are both ".". */ - if (localeconv () ->decimal_point[0] != ',') return 1; -#endif - return 0; -} - -_ACEOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest$ac_exeext; then - case "$host_os" in - # Handle native Windows specially, because there setlocale() interprets - # "ar" as "Arabic" or "Arabic_Saudi Arabia.1256", - # "fr" or "fra" as "French" or "French_France.1252", - # "ge"(!) or "deu"(!) as "German" or "German_Germany.1252", - # "ja" as "Japanese" or "Japanese_Japan.932", - # and similar. - mingw*) - # Test for the hypothetical native Windows locale name. - if (LC_ALL=French_France.65001 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=French_France.65001 - else - # None found. - gt_cv_locale_fr_utf8=none - fi - ;; - *) - # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because - # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the - # configure script would override the LC_ALL setting. Likewise for - # LC_CTYPE, which is also set at the beginning of the configure script. - # Test for the usual locale name. - if (LC_ALL=fr_FR LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=fr_FR - else - # Test for the locale name with explicit encoding suffix. - if (LC_ALL=fr_FR.UTF-8 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=fr_FR.UTF-8 - else - # Test for the Solaris 7 locale name. - if (LC_ALL=fr.UTF-8 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=fr.UTF-8 - else - # None found. - gt_cv_locale_fr_utf8=none - fi - fi - fi - ;; - esac - fi - rm -fr conftest* - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_fr_utf8" >&5 -printf "%s\n" "$gt_cv_locale_fr_utf8" >&6; } - LOCALE_FR_UTF8=$gt_cv_locale_fr_utf8 - - - - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a traditional japanese locale" >&5 -printf %s "checking for a traditional japanese locale... " >&6; } -if test ${gt_cv_locale_ja+y} -then : - printf %s "(cached) " >&6 -else $as_nop - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#if HAVE_LANGINFO_CODESET -# include -#endif -#include -#include -struct tm t; -char buf[16]; -int main () -{ - /* On BeOS and Haiku, locales are not implemented in libc. Rather, libintl - imitates locale dependent behaviour by looking at the environment - variables, and all locales use the UTF-8 encoding. */ -#if defined __BEOS__ || defined __HAIKU__ - return 1; -#else - /* Check whether the given locale name is recognized by the system. */ -# if defined _WIN32 && !defined __CYGWIN__ - /* On native Windows, setlocale(category, "") looks at the system settings, - not at the environment variables. Also, when an encoding suffix such - as ".65001" or ".54936" is specified, it succeeds but sets the LC_CTYPE - category of the locale to "C". */ - if (setlocale (LC_ALL, getenv ("LC_ALL")) == NULL - || strcmp (setlocale (LC_CTYPE, NULL), "C") == 0) - return 1; -# else - if (setlocale (LC_ALL, "") == NULL) return 1; -# endif - /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". - On Mac OS X 10.3.5 (Darwin 7.5) in the fr_FR locale, nl_langinfo(CODESET) - is empty, and the behaviour of Tcl 8.4 in this locale is not useful. - On OpenBSD 4.0, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. - On MirBSD 10, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "UTF-8". */ -# if HAVE_LANGINFO_CODESET - { - const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0 - || strcmp (cs, "UTF-8") == 0) - return 1; - } -# endif -# ifdef __CYGWIN__ - /* On Cygwin, avoid locale names without encoding suffix, because the - locale_charset() function relies on the encoding suffix. Note that - LC_ALL is set on the command line. */ - if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; -# endif - /* Check whether MB_CUR_MAX is > 1. This excludes the dysfunctional locales - on Cygwin 1.5.x. */ - if (MB_CUR_MAX == 1) - return 1; - /* Check whether in a month name, no byte in the range 0x80..0x9F occurs. - This excludes the UTF-8 encoding (except on MirBSD). */ - { - const char *p; - t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; - if (strftime (buf, sizeof (buf), "%B", &t) < 2) return 1; - for (p = buf; *p != '\0'; p++) - if ((unsigned char) *p >= 0x80 && (unsigned char) *p < 0xa0) - return 1; - } - return 0; -#endif -} - -_ACEOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest$ac_exeext; then - case "$host_os" in - # Handle native Windows specially, because there setlocale() interprets - # "ar" as "Arabic" or "Arabic_Saudi Arabia.1256", - # "fr" or "fra" as "French" or "French_France.1252", - # "ge"(!) or "deu"(!) as "German" or "German_Germany.1252", - # "ja" as "Japanese" or "Japanese_Japan.932", - # and similar. - mingw*) - # Note that on native Windows, the Japanese locale is - # Japanese_Japan.932, and CP932 is very different from EUC-JP, so we - # cannot use it here. - gt_cv_locale_ja=none - ;; - *) - # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because - # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the - # configure script would override the LC_ALL setting. Likewise for - # LC_CTYPE, which is also set at the beginning of the configure script. - # Test for the AIX locale name. - if (LC_ALL=ja_JP LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_ja=ja_JP - else - # Test for the locale name with explicit encoding suffix. - if (LC_ALL=ja_JP.EUC-JP LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_ja=ja_JP.EUC-JP - else - # Test for the HP-UX, OSF/1, NetBSD locale name. - if (LC_ALL=ja_JP.eucJP LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_ja=ja_JP.eucJP - else - # Test for the IRIX, FreeBSD locale name. - if (LC_ALL=ja_JP.EUC LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_ja=ja_JP.EUC - else - # Test for the Solaris 7 locale name. - if (LC_ALL=ja LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_ja=ja - else - # Special test for NetBSD 1.6. - if test -f /usr/share/locale/ja_JP.eucJP/LC_CTYPE; then - gt_cv_locale_ja=ja_JP.eucJP - else - # None found. - gt_cv_locale_ja=none - fi - fi - fi - fi - fi - fi - ;; - esac - fi - rm -fr conftest* - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_ja" >&5 -printf "%s\n" "$gt_cv_locale_ja" >&6; } - LOCALE_JA=$gt_cv_locale_ja - - - - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a transitional chinese locale" >&5 -printf %s "checking for a transitional chinese locale... " >&6; } -if test ${gt_cv_locale_zh_CN+y} -then : - printf %s "(cached) " >&6 -else $as_nop - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#include -#if HAVE_LANGINFO_CODESET -# include -#endif -#include -#include -struct tm t; -char buf[16]; -int main () -{ - /* On BeOS and Haiku, locales are not implemented in libc. Rather, libintl - imitates locale dependent behaviour by looking at the environment - variables, and all locales use the UTF-8 encoding. */ -#if defined __BEOS__ || defined __HAIKU__ - return 1; -#else - /* Check whether the given locale name is recognized by the system. */ -# if defined _WIN32 && !defined __CYGWIN__ - /* On native Windows, setlocale(category, "") looks at the system settings, - not at the environment variables. Also, when an encoding suffix such - as ".65001" or ".54936" is specified, it succeeds but sets the LC_CTYPE - category of the locale to "C". */ - if (setlocale (LC_ALL, getenv ("LC_ALL")) == NULL - || strcmp (setlocale (LC_CTYPE, NULL), "C") == 0) - return 1; -# else - if (setlocale (LC_ALL, "") == NULL) return 1; -# endif - /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". - On Mac OS X 10.3.5 (Darwin 7.5) in the fr_FR locale, nl_langinfo(CODESET) - is empty, and the behaviour of Tcl 8.4 in this locale is not useful. - On OpenBSD 4.0, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. - On MirBSD 10, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "UTF-8". */ -# if HAVE_LANGINFO_CODESET - { - const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0 - || strcmp (cs, "UTF-8") == 0) - return 1; - } -# endif -# ifdef __CYGWIN__ - /* On Cygwin, avoid locale names without encoding suffix, because the - locale_charset() function relies on the encoding suffix. Note that - LC_ALL is set on the command line. */ - if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; -# endif - /* Check whether in a month name, no byte in the range 0x80..0x9F occurs. - This excludes the UTF-8 encoding (except on MirBSD). */ - { - const char *p; - t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; - if (strftime (buf, sizeof (buf), "%B", &t) < 2) return 1; - for (p = buf; *p != '\0'; p++) - if ((unsigned char) *p >= 0x80 && (unsigned char) *p < 0xa0) - return 1; - } - /* Check whether a typical GB18030 multibyte sequence is recognized as a - single wide character. This excludes the GB2312 and GBK encodings. */ - if (mblen ("\203\062\332\066", 5) != 4) - return 1; - return 0; -#endif -} - -_ACEOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest$ac_exeext; then - case "$host_os" in - # Handle native Windows specially, because there setlocale() interprets - # "ar" as "Arabic" or "Arabic_Saudi Arabia.1256", - # "fr" or "fra" as "French" or "French_France.1252", - # "ge"(!) or "deu"(!) as "German" or "German_Germany.1252", - # "ja" as "Japanese" or "Japanese_Japan.932", - # and similar. - mingw*) - # Test for the hypothetical native Windows locale name. - if (LC_ALL=Chinese_China.54936 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_zh_CN=Chinese_China.54936 - else - # None found. - gt_cv_locale_zh_CN=none - fi - ;; - solaris2.8) - # On Solaris 8, the locales zh_CN.GB18030, zh_CN.GBK, zh.GBK are - # broken. One witness is the test case in gl_MBRTOWC_SANITYCHECK. - # Another witness is that "LC_ALL=zh_CN.GB18030 bash -c true" dumps core. - gt_cv_locale_zh_CN=none - ;; - *) - # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because - # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the - # configure script would override the LC_ALL setting. Likewise for - # LC_CTYPE, which is also set at the beginning of the configure script. - # Test for the locale name without encoding suffix. - if (LC_ALL=zh_CN LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_zh_CN=zh_CN - else - # Test for the locale name with explicit encoding suffix. - if (LC_ALL=zh_CN.GB18030 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_zh_CN=zh_CN.GB18030 - else - # None found. - gt_cv_locale_zh_CN=none - fi - fi - ;; - esac - else - # If there was a link error, due to mblen(), the system is so old that - # it certainly doesn't have a chinese locale. - gt_cv_locale_zh_CN=none - fi - rm -fr conftest* - + + + + + + + + + + + + + if test "$ac_cv_header_winsock2_h" = yes; then + GL_COND_OBJ_LISTEN_TRUE= + GL_COND_OBJ_LISTEN_FALSE='#' +else + GL_COND_OBJ_LISTEN_TRUE='#' + GL_COND_OBJ_LISTEN_FALSE= fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_zh_CN" >&5 -printf "%s\n" "$gt_cv_locale_zh_CN" >&6; } - LOCALE_ZH_CN=$gt_cv_locale_zh_CN +: + if test -z "${GL_COND_OBJ_LISTEN_TRUE}" && test -z "${GL_COND_OBJ_LISTEN_FALSE}"; then + GL_COND_OBJ_LISTEN_TRUE='#' + GL_COND_OBJ_LISTEN_FALSE='#' + fi - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a french Unicode locale" >&5 -printf %s "checking for a french Unicode locale... " >&6; } -if test ${gt_cv_locale_fr_utf8+y} -then : - printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include -#if HAVE_LANGINFO_CODESET -# include -#endif -#include -#include -struct tm t; -char buf[16]; -int main () { - /* On BeOS and Haiku, locales are not implemented in libc. Rather, libintl - imitates locale dependent behaviour by looking at the environment - variables, and all locales use the UTF-8 encoding. */ -#if !(defined __BEOS__ || defined __HAIKU__) - /* Check whether the given locale name is recognized by the system. */ -# if defined _WIN32 && !defined __CYGWIN__ - /* On native Windows, setlocale(category, "") looks at the system settings, - not at the environment variables. Also, when an encoding suffix such - as ".65001" or ".54936" is specified, it succeeds but sets the LC_CTYPE - category of the locale to "C". */ - if (setlocale (LC_ALL, getenv ("LC_ALL")) == NULL - || strcmp (setlocale (LC_CTYPE, NULL), "C") == 0) - return 1; -# else - if (setlocale (LC_ALL, "") == NULL) return 1; -# endif - /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". - On Mac OS X 10.3.5 (Darwin 7.5) in the fr_FR locale, nl_langinfo(CODESET) - is empty, and the behaviour of Tcl 8.4 in this locale is not useful. - On OpenBSD 4.0, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. */ -# if HAVE_LANGINFO_CODESET - { - const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0) - return 1; - } -# endif -# ifdef __CYGWIN__ - /* On Cygwin, avoid locale names without encoding suffix, because the - locale_charset() function relies on the encoding suffix. Note that - LC_ALL is set on the command line. */ - if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; -# endif - /* Check whether in the abbreviation of the second month, the second - character (should be U+00E9: LATIN SMALL LETTER E WITH ACUTE) is - two bytes long, with UTF-8 encoding. */ - t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; - if (strftime (buf, sizeof (buf), "%b", &t) < 4 - || buf[1] != (char) 0xc3 || buf[2] != (char) 0xa9 || buf[3] != 'v') - return 1; -#endif -#if !defined __BIONIC__ /* Bionic libc's 'struct lconv' is just a dummy. */ - /* Check whether the decimal separator is a comma. - On NetBSD 3.0 in the fr_FR.ISO8859-1 locale, localeconv()->decimal_point - are nl_langinfo(RADIXCHAR) are both ".". */ - if (localeconv () ->decimal_point[0] != ',') return 1; -#endif - return 0; -} -_ACEOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest$ac_exeext; then - case "$host_os" in - # Handle native Windows specially, because there setlocale() interprets - # "ar" as "Arabic" or "Arabic_Saudi Arabia.1256", - # "fr" or "fra" as "French" or "French_France.1252", - # "ge"(!) or "deu"(!) as "German" or "German_Germany.1252", - # "ja" as "Japanese" or "Japanese_Japan.932", - # and similar. - mingw*) - # Test for the hypothetical native Windows locale name. - if (LC_ALL=French_France.65001 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=French_France.65001 - else - # None found. - gt_cv_locale_fr_utf8=none - fi - ;; - *) - # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because - # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the - # configure script would override the LC_ALL setting. Likewise for - # LC_CTYPE, which is also set at the beginning of the configure script. - # Test for the usual locale name. - if (LC_ALL=fr_FR LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=fr_FR - else - # Test for the locale name with explicit encoding suffix. - if (LC_ALL=fr_FR.UTF-8 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=fr_FR.UTF-8 - else - # Test for the Solaris 7 locale name. - if (LC_ALL=fr.UTF-8 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=fr.UTF-8 - else - # None found. - gt_cv_locale_fr_utf8=none - fi - fi - fi - ;; - esac + + + + if test "$GL_GNULIB_LISTEN" != 1; then + if test "$GL_GNULIB_LISTEN" = 0; then + GL_GNULIB_LISTEN=$gl_module_indicator_condition + else + GL_GNULIB_LISTEN="($GL_GNULIB_LISTEN || $gl_module_indicator_condition)" fi - rm -fr conftest* + fi -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_fr_utf8" >&5 -printf "%s\n" "$gt_cv_locale_fr_utf8" >&6; } - LOCALE_FR_UTF8=$gt_cv_locale_fr_utf8 +printf "%s\n" "#define GNULIB_TEST_LISTEN 1" >>confdefs.h - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a transitional chinese locale" >&5 -printf %s "checking for a transitional chinese locale... " >&6; } -if test ${gt_cv_locale_zh_CN+y} + + + + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for newlocale" >&5 +printf %s "checking for newlocale... " >&6; } +if test ${gl_cv_onwards_func_newlocale+y} then : printf %s "(cached) " >&6 -else $as_nop +else case e in #( + e) + exec 9>&6 6>/dev/null - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ + case "$host_os" in -#include -#include -#include -#if HAVE_LANGINFO_CODESET -# include -#endif -#include -#include -struct tm t; -char buf[16]; -int main () -{ - /* On BeOS and Haiku, locales are not implemented in libc. Rather, libintl - imitates locale dependent behaviour by looking at the environment - variables, and all locales use the UTF-8 encoding. */ -#if defined __BEOS__ || defined __HAIKU__ - return 1; -#else - /* Check whether the given locale name is recognized by the system. */ -# if defined _WIN32 && !defined __CYGWIN__ - /* On native Windows, setlocale(category, "") looks at the system settings, - not at the environment variables. Also, when an encoding suffix such - as ".65001" or ".54936" is specified, it succeeds but sets the LC_CTYPE - category of the locale to "C". */ - if (setlocale (LC_ALL, getenv ("LC_ALL")) == NULL - || strcmp (setlocale (LC_CTYPE, NULL), "C") == 0) - return 1; -# else - if (setlocale (LC_ALL, "") == NULL) return 1; -# endif - /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". - On Mac OS X 10.3.5 (Darwin 7.5) in the fr_FR locale, nl_langinfo(CODESET) - is empty, and the behaviour of Tcl 8.4 in this locale is not useful. - On OpenBSD 4.0, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. - On MirBSD 10, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "UTF-8". */ -# if HAVE_LANGINFO_CODESET - { - const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0 - || strcmp (cs, "UTF-8") == 0) - return 1; - } -# endif -# ifdef __CYGWIN__ - /* On Cygwin, avoid locale names without encoding suffix, because the - locale_charset() function relies on the encoding suffix. Note that - LC_ALL is set on the command line. */ - if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; -# endif - /* Check whether in a month name, no byte in the range 0x80..0x9F occurs. - This excludes the UTF-8 encoding (except on MirBSD). */ - { - const char *p; - t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; - if (strftime (buf, sizeof (buf), "%B", &t) < 2) return 1; - for (p = buf; *p != '\0'; p++) - if ((unsigned char) *p >= 0x80 && (unsigned char) *p < 0xa0) - return 1; - } - /* Check whether a typical GB18030 multibyte sequence is recognized as a - single wide character. This excludes the GB2312 and GBK encodings. */ - if (mblen ("\203\062\332\066", 5) != 4) - return 1; - return 0; -#endif -} + linux*-android*) + ac_fn_check_decl "$LINENO" "newlocale" "ac_cv_have_decl_newlocale" "#include +" "$ac_c_undeclared_builtin_options" "CFLAGS" +if test "x$ac_cv_have_decl_newlocale" = xyes +then : -_ACEOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest$ac_exeext; then - case "$host_os" in - # Handle native Windows specially, because there setlocale() interprets - # "ar" as "Arabic" or "Arabic_Saudi Arabia.1256", - # "fr" or "fra" as "French" or "French_France.1252", - # "ge"(!) or "deu"(!) as "German" or "German_Germany.1252", - # "ja" as "Japanese" or "Japanese_Japan.932", - # and similar. - mingw*) - # Test for the hypothetical native Windows locale name. - if (LC_ALL=Chinese_China.54936 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_zh_CN=Chinese_China.54936 - else - # None found. - gt_cv_locale_zh_CN=none - fi - ;; - solaris2.8) - # On Solaris 8, the locales zh_CN.GB18030, zh_CN.GBK, zh.GBK are - # broken. One witness is the test case in gl_MBRTOWC_SANITYCHECK. - # Another witness is that "LC_ALL=zh_CN.GB18030 bash -c true" dumps core. - gt_cv_locale_zh_CN=none - ;; - *) - # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because - # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the - # configure script would override the LC_ALL setting. Likewise for - # LC_CTYPE, which is also set at the beginning of the configure script. - # Test for the locale name without encoding suffix. - if (LC_ALL=zh_CN LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_zh_CN=zh_CN - else - # Test for the locale name with explicit encoding suffix. - if (LC_ALL=zh_CN.GB18030 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_zh_CN=zh_CN.GB18030 - else - # None found. - gt_cv_locale_zh_CN=none - fi - fi - ;; - esac - else - # If there was a link error, due to mblen(), the system is so old that - # it certainly doesn't have a chinese locale. - gt_cv_locale_zh_CN=none - fi - rm -fr conftest* +fi + if test $ac_cv_have_decl_newlocale = yes; then + ac_fn_c_check_func "$LINENO" "newlocale" "ac_cv_func_newlocale" +if test "x$ac_cv_func_newlocale" = xyes +then : fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_zh_CN" >&5 -printf "%s\n" "$gt_cv_locale_zh_CN" >&6; } - LOCALE_ZH_CN=$gt_cv_locale_zh_CN + + if test $ac_cv_func_newlocale = yes; then + gl_cv_onwards_func_newlocale=yes + else + gl_cv_onwards_func_newlocale='future OS version' + fi + else + gl_cv_onwards_func_newlocale='future OS version' + fi + ;; + + + *) + ac_fn_c_check_func "$LINENO" "newlocale" "ac_cv_func_newlocale" +if test "x$ac_cv_func_newlocale" = xyes +then : + +fi + + gl_cv_onwards_func_newlocale=$ac_cv_func_newlocale + ;; + + esac + + exec 6>&9 9>&- + + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_onwards_func_newlocale" >&5 +printf "%s\n" "$gl_cv_onwards_func_newlocale" >&6; } + + case "$gl_cv_onwards_func_newlocale" in + future*) ac_cv_func_newlocale=no ;; + *) ac_cv_func_newlocale=$gl_cv_onwards_func_newlocale ;; + esac + if test $ac_cv_func_newlocale = yes; then + +printf "%s\n" "#define HAVE_NEWLOCALE 1" >>confdefs.h + + fi + + + + + + + + + @@ -42159,22 +43256,28 @@ printf "%s\n" "$gt_cv_locale_zh_CN" >&6; } # Solaris 2.5.1 needs -lposix4 to get the nanosleep function. # Solaris 7 prefers the library name -lrt to the obsolescent name -lposix4. - LIB_NANOSLEEP= + NANOSLEEP_LIB= { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for library containing nanosleep" >&5 printf %s "checking for library containing nanosleep... " >&6; } if test ${ac_cv_search_nanosleep+y} then : printf %s "(cached) " >&6 -else $as_nop - ac_func_search_save_LIBS=$LIBS +else case e in #( + e) ac_func_search_save_LIBS=$LIBS cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -char nanosleep (); + builtin and then its argument prototype would still apply. + The 'extern "C"' is for builds by C++ compilers; + although this is not generally supported in C code supporting it here + has little cost and some practical benefit (sr 110532). */ +#ifdef __cplusplus +extern "C" +#endif +char nanosleep (void); int main (void) { @@ -42205,11 +43308,13 @@ done if test ${ac_cv_search_nanosleep+y} then : -else $as_nop - ac_cv_search_nanosleep=no +else case e in #( + e) ac_cv_search_nanosleep=no ;; +esac fi rm conftest.$ac_ext -LIBS=$ac_func_search_save_LIBS +LIBS=$ac_func_search_save_LIBS ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_nanosleep" >&5 printf "%s\n" "$ac_cv_search_nanosleep" >&6; } @@ -42218,7 +43323,7 @@ if test "$ac_res" != no then : test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" test "$ac_cv_search_nanosleep" = "none required" || - LIB_NANOSLEEP=$ac_cv_search_nanosleep + NANOSLEEP_LIB=$ac_cv_search_nanosleep fi if test "x$ac_cv_search_nanosleep" != xno; then @@ -42237,11 +43342,12 @@ printf %s "checking for working nanosleep... " >&6; } if test ${gl_cv_func_nanosleep+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) if test "$cross_compiling" = yes then : - case "$host_os" in linux*) # Guess it halfway works when the kernel is Linux. + case "$host_os" in + linux*) # Guess it halfway works when the kernel is Linux. gl_cv_func_nanosleep='guessing no (mishandles large arguments)' ;; mingw*) # Guess no on native Windows. gl_cv_func_nanosleep='guessing no' ;; @@ -42249,16 +43355,13 @@ then : gl_cv_func_nanosleep="$gl_cross_guess_normal" ;; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include #include - #if HAVE_SYS_TIME_H - #include - #endif #include #include #define TYPE_SIGNED(t) (! ((t) 0 < (t) -1)) @@ -42309,6 +43412,12 @@ else $as_nop #else /* A simpler test for native Windows. */ if (nanosleep (&ts_sleep, &ts_remaining) < 0) return 3; + /* Test for 32-bit mingw bug: negative nanosecond values do not + cause failure. */ + ts_sleep.tv_sec = 1; + ts_sleep.tv_nsec = -1; + if (nanosleep (&ts_sleep, &ts_remaining) != -1) + return 7; #endif return 0; } @@ -42316,15 +43425,21 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_nanosleep=yes -else $as_nop - case $? in 4|5|6) gl_cv_func_nanosleep='no (mishandles large arguments)';; *) gl_cv_func_nanosleep=no;; - esac +else case e in #( + e) case $? in + 4|5|6) gl_cv_func_nanosleep='no (mishandles large arguments)' ;; + 7) gl_cv_func_nanosleep='no (mishandles negative tv_nsec)' ;; + *) gl_cv_func_nanosleep=no ;; + esac ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_nanosleep" >&5 printf "%s\n" "$gl_cv_func_nanosleep" >&6; } @@ -42340,15 +43455,6 @@ printf "%s\n" "$gl_cv_func_nanosleep" >&6; } printf "%s\n" "#define HAVE_BUG_BIG_NANOSLEEP 1" >>confdefs.h ;; - *) - # The replacement uses select(). Add $LIBSOCKET to $LIB_NANOSLEEP. - for ac_lib in $LIBSOCKET; do - case " $LIB_NANOSLEEP " in - *" $ac_lib "*) ;; - *) LIB_NANOSLEEP="$LIB_NANOSLEEP $ac_lib";; - esac - done - ;; esac ;; esac @@ -42357,21 +43463,22 @@ printf "%s\n" "#define HAVE_BUG_BIG_NANOSLEEP 1" >>confdefs.h fi LIBS=$nanosleep_save_libs - if test $HAVE_NANOSLEEP = 0 || test $REPLACE_NANOSLEEP = 1; then - - - - - - - - - gltests_LIBOBJS="$gltests_LIBOBJS nanosleep.$ac_objext" + # For backward compatibility. + LIB_NANOSLEEP="$NANOSLEEP_LIB" - : - + if test $HAVE_NANOSLEEP = 0 || test $REPLACE_NANOSLEEP = 1; then + GL_COND_OBJ_NANOSLEEP_TRUE= + GL_COND_OBJ_NANOSLEEP_FALSE='#' +else + GL_COND_OBJ_NANOSLEEP_TRUE='#' + GL_COND_OBJ_NANOSLEEP_FALSE= +fi +: + if test -z "${GL_COND_OBJ_NANOSLEEP_TRUE}" && test -z "${GL_COND_OBJ_NANOSLEEP_FALSE}"; then + GL_COND_OBJ_NANOSLEEP_TRUE='#' + GL_COND_OBJ_NANOSLEEP_FALSE='#' fi @@ -42382,6 +43489,7 @@ printf "%s\n" "#define HAVE_BUG_BIG_NANOSLEEP 1" >>confdefs.h + if test "$GL_GNULIB_NANOSLEEP" != 1; then if test "$GL_GNULIB_NANOSLEEP" = 0; then GL_GNULIB_NANOSLEEP=$gl_module_indicator_condition @@ -42405,8 +43513,8 @@ printf %s "checking whether is self-contained... " >&6; } if test ${gl_cv_header_netinet_in_h_selfcontained+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -42421,18 +43529,20 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_header_netinet_in_h_selfcontained=yes -else $as_nop - gl_cv_header_netinet_in_h_selfcontained=no +else case e in #( + e) gl_cv_header_netinet_in_h_selfcontained=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_header_netinet_in_h_selfcontained" >&5 printf "%s\n" "$gl_cv_header_netinet_in_h_selfcontained" >&6; } if test $gl_cv_header_netinet_in_h_selfcontained = yes; then - NETINET_IN_H='' + GL_GENERATE_NETINET_IN_H=false else - NETINET_IN_H='netinet/in.h' + GL_GENERATE_NETINET_IN_H=true ac_fn_c_check_header_compile "$LINENO" "netinet/in.h" "ac_cv_header_netinet_in_h" "$ac_includes_default" if test "x$ac_cv_header_netinet_in_h" = xyes then : @@ -42457,8 +43567,8 @@ printf %s "checking absolute name of ... " >&6; } if test ${gl_cv_next_netinet_in_h+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) if test $ac_cv_header_netinet_in_h = yes; then @@ -42493,320 +43603,213 @@ _ACEOF gl_cv_absolute_netinet_in_h=`(eval "$gl_absname_cpp conftest.$ac_ext") 2>&5 | sed -n "$gl_absolute_header_sed"` - - gl_header=$gl_cv_absolute_netinet_in_h - gl_cv_next_netinet_in_h='"'$gl_header'"' - else - gl_cv_next_netinet_in_h='<'netinet/in.h'>' - fi - - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_netinet_in_h" >&5 -printf "%s\n" "$gl_cv_next_netinet_in_h" >&6; } - fi - NEXT_NETINET_IN_H=$gl_cv_next_netinet_in_h - - if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' - gl_next_as_first_directive='<'netinet/in.h'>' - else - # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' - gl_next_as_first_directive=$gl_cv_next_netinet_in_h - fi - NEXT_AS_FIRST_DIRECTIVE_NETINET_IN_H=$gl_next_as_first_directive - - - - - if test $ac_cv_header_netinet_in_h = yes; then - HAVE_NETINET_IN_H=1 - else - HAVE_NETINET_IN_H=0 - fi - - fi - - if test -n "$NETINET_IN_H"; then - GL_GENERATE_NETINET_IN_H_TRUE= - GL_GENERATE_NETINET_IN_H_FALSE='#' -else - GL_GENERATE_NETINET_IN_H_TRUE='#' - GL_GENERATE_NETINET_IN_H_FALSE= -fi - - - - - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a traditional french locale" >&5 -printf %s "checking for a traditional french locale... " >&6; } -if test ${gt_cv_locale_fr+y} -then : - printf %s "(cached) " >&6 -else $as_nop - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -#if HAVE_LANGINFO_CODESET -# include -#endif -#include -#include -struct tm t; -char buf[16]; -int main () { - /* On BeOS and Haiku, locales are not implemented in libc. Rather, libintl - imitates locale dependent behaviour by looking at the environment - variables, and all locales use the UTF-8 encoding. */ -#if defined __BEOS__ || defined __HAIKU__ - return 1; -#else - /* Check whether the given locale name is recognized by the system. */ -# if defined _WIN32 && !defined __CYGWIN__ - /* On native Windows, setlocale(category, "") looks at the system settings, - not at the environment variables. Also, when an encoding suffix such - as ".65001" or ".54936" is specified, it succeeds but sets the LC_CTYPE - category of the locale to "C". */ - if (setlocale (LC_ALL, getenv ("LC_ALL")) == NULL - || strcmp (setlocale (LC_CTYPE, NULL), "C") == 0) - return 1; -# else - if (setlocale (LC_ALL, "") == NULL) return 1; -# endif - /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". - On Mac OS X 10.3.5 (Darwin 7.5) in the fr_FR locale, nl_langinfo(CODESET) - is empty, and the behaviour of Tcl 8.4 in this locale is not useful. - On OpenBSD 4.0, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. - On MirBSD 10, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "UTF-8". */ -# if HAVE_LANGINFO_CODESET - { - const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0 - || strcmp (cs, "UTF-8") == 0) - return 1; - } -# endif -# ifdef __CYGWIN__ - /* On Cygwin, avoid locale names without encoding suffix, because the - locale_charset() function relies on the encoding suffix. Note that - LC_ALL is set on the command line. */ - if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; -# endif - /* Check whether in the abbreviation of the second month, the second - character (should be U+00E9: LATIN SMALL LETTER E WITH ACUTE) is only - one byte long. This excludes the UTF-8 encoding. */ - t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; - if (strftime (buf, sizeof (buf), "%b", &t) < 3 || buf[2] != 'v') return 1; -# if !defined __BIONIC__ /* Bionic libc's 'struct lconv' is just a dummy. */ - /* Check whether the decimal separator is a comma. - On NetBSD 3.0 in the fr_FR.ISO8859-1 locale, localeconv()->decimal_point - are nl_langinfo(RADIXCHAR) are both ".". */ - if (localeconv () ->decimal_point[0] != ',') return 1; -# endif - return 0; -#endif -} - -_ACEOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest$ac_exeext; then - case "$host_os" in - # Handle native Windows specially, because there setlocale() interprets - # "ar" as "Arabic" or "Arabic_Saudi Arabia.1256", - # "fr" or "fra" as "French" or "French_France.1252", - # "ge"(!) or "deu"(!) as "German" or "German_Germany.1252", - # "ja" as "Japanese" or "Japanese_Japan.932", - # and similar. - mingw*) - # Test for the native Windows locale name. - if (LC_ALL=French_France.1252 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=French_France.1252 - else - # None found. - gt_cv_locale_fr=none - fi - ;; - *) - # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because - # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the - # configure script would override the LC_ALL setting. Likewise for - # LC_CTYPE, which is also set at the beginning of the configure script. - # Test for the usual locale name. - if (LC_ALL=fr_FR LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr_FR + + gl_header=$gl_cv_absolute_netinet_in_h + gl_cv_next_netinet_in_h='"'$gl_header'"' else - # Test for the locale name with explicit encoding suffix. - if (LC_ALL=fr_FR.ISO-8859-1 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr_FR.ISO-8859-1 - else - # Test for the AIX, OSF/1, FreeBSD, NetBSD, OpenBSD locale name. - if (LC_ALL=fr_FR.ISO8859-1 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr_FR.ISO8859-1 - else - # Test for the HP-UX locale name. - if (LC_ALL=fr_FR.iso88591 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr_FR.iso88591 - else - # Test for the Solaris 7 locale name. - if (LC_ALL=fr LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr - else - # None found. - gt_cv_locale_fr=none - fi - fi - fi - fi - fi + gl_cv_next_netinet_in_h='<'netinet/in.h'>' + fi + ;; - esac +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_next_netinet_in_h" >&5 +printf "%s\n" "$gl_cv_next_netinet_in_h" >&6; } + fi + NEXT_NETINET_IN_H=$gl_cv_next_netinet_in_h + + if test $gl_cv_have_include_next = yes || test $gl_cv_have_include_next = buggy; then + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' + gl_next_as_first_directive='<'netinet/in.h'>' + else + # INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include' + gl_next_as_first_directive=$gl_cv_next_netinet_in_h + fi + NEXT_AS_FIRST_DIRECTIVE_NETINET_IN_H=$gl_next_as_first_directive + + + + + if test $ac_cv_header_netinet_in_h = yes; then + HAVE_NETINET_IN_H=1 + else + HAVE_NETINET_IN_H=0 fi - rm -fr conftest* + fi + + + + + + case "$GL_GENERATE_NETINET_IN_H" in + false) NETINET_IN_H='' ;; + true) + if test -z "$NETINET_IN_H"; then + NETINET_IN_H="${gl_source_base_prefix}netinet/in.h" + fi + ;; + *) echo "*** GL_GENERATE_NETINET_IN_H is not set correctly" 1>&2; exit 1 ;; + esac + + + if $GL_GENERATE_NETINET_IN_H; then + GL_GENERATE_NETINET_IN_H_TRUE= + GL_GENERATE_NETINET_IN_H_FALSE='#' +else + GL_GENERATE_NETINET_IN_H_TRUE='#' + GL_GENERATE_NETINET_IN_H_FALSE= fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_fr" >&5 -printf "%s\n" "$gt_cv_locale_fr" >&6; } - LOCALE_FR=$gt_cv_locale_fr +: + if test -z "${GL_GENERATE_NETINET_IN_H_TRUE}" && test -z "${GL_GENERATE_NETINET_IN_H_FALSE}"; then + GL_GENERATE_NETINET_IN_H_TRUE='#' + GL_GENERATE_NETINET_IN_H_FALSE='#' + fi - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a french Unicode locale" >&5 -printf %s "checking for a french Unicode locale... " >&6; } -if test ${gt_cv_locale_fr_utf8+y} + + + + + + + + + + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for uselocale" >&5 +printf %s "checking for uselocale... " >&6; } +if test ${gl_cv_onwards_func_uselocale+y} then : printf %s "(cached) " >&6 -else $as_nop +else case e in #( + e) + exec 9>&6 6>/dev/null - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + case "$host_os" in + + linux*-android*) + ac_fn_check_decl "$LINENO" "uselocale" "ac_cv_have_decl_uselocale" "#include +" "$ac_c_undeclared_builtin_options" "CFLAGS" +if test "x$ac_cv_have_decl_uselocale" = xyes +then : + +fi + if test $ac_cv_have_decl_uselocale = yes; then + ac_fn_c_check_func "$LINENO" "uselocale" "ac_cv_func_uselocale" +if test "x$ac_cv_func_uselocale" = xyes +then : + +fi + + if test $ac_cv_func_uselocale = yes; then + gl_cv_onwards_func_uselocale=yes + else + gl_cv_onwards_func_uselocale='future OS version' + fi + else + gl_cv_onwards_func_uselocale='future OS version' + fi + ;; + + + *) + ac_fn_c_check_func "$LINENO" "uselocale" "ac_cv_func_uselocale" +if test "x$ac_cv_func_uselocale" = xyes +then : + +fi + + gl_cv_onwards_func_uselocale=$ac_cv_func_uselocale + ;; + + esac + + exec 6>&9 9>&- + + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_onwards_func_uselocale" >&5 +printf "%s\n" "$gl_cv_onwards_func_uselocale" >&6; } + + case "$gl_cv_onwards_func_uselocale" in + future*) ac_cv_func_uselocale=no ;; + *) ac_cv_func_uselocale=$gl_cv_onwards_func_uselocale ;; + esac + if test $ac_cv_func_uselocale = yes; then + +printf "%s\n" "#define HAVE_USELOCALE 1" >>confdefs.h + + fi + + + + if test $ac_cv_func_uselocale = yes; then + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether uselocale works" >&5 +printf %s "checking whether uselocale works... " >&6; } +if test ${gt_cv_func_uselocale_works+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) if test "$cross_compiling" = yes +then : + # Guess no on AIX and z/OS, yes otherwise. + case "$host_os" in + aix* | openedition*) gt_cv_func_uselocale_works="guessing no" ;; + *) gt_cv_func_uselocale_works="guessing yes" ;; + esac + +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include -#include -#if HAVE_LANGINFO_CODESET -# include -#endif -#include -#include -struct tm t; -char buf[16]; -int main () { - /* On BeOS and Haiku, locales are not implemented in libc. Rather, libintl - imitates locale dependent behaviour by looking at the environment - variables, and all locales use the UTF-8 encoding. */ -#if !(defined __BEOS__ || defined __HAIKU__) - /* Check whether the given locale name is recognized by the system. */ -# if defined _WIN32 && !defined __CYGWIN__ - /* On native Windows, setlocale(category, "") looks at the system settings, - not at the environment variables. Also, when an encoding suffix such - as ".65001" or ".54936" is specified, it succeeds but sets the LC_CTYPE - category of the locale to "C". */ - if (setlocale (LC_ALL, getenv ("LC_ALL")) == NULL - || strcmp (setlocale (LC_CTYPE, NULL), "C") == 0) - return 1; -# else - if (setlocale (LC_ALL, "") == NULL) return 1; -# endif - /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". - On Mac OS X 10.3.5 (Darwin 7.5) in the fr_FR locale, nl_langinfo(CODESET) - is empty, and the behaviour of Tcl 8.4 in this locale is not useful. - On OpenBSD 4.0, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. */ -# if HAVE_LANGINFO_CODESET - { - const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0) - return 1; - } -# endif -# ifdef __CYGWIN__ - /* On Cygwin, avoid locale names without encoding suffix, because the - locale_charset() function relies on the encoding suffix. Note that - LC_ALL is set on the command line. */ - if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; -# endif - /* Check whether in the abbreviation of the second month, the second - character (should be U+00E9: LATIN SMALL LETTER E WITH ACUTE) is - two bytes long, with UTF-8 encoding. */ - t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; - if (strftime (buf, sizeof (buf), "%b", &t) < 4 - || buf[1] != (char) 0xc3 || buf[2] != (char) 0xa9 || buf[3] != 'v') - return 1; -#endif -#if !defined __BIONIC__ /* Bionic libc's 'struct lconv' is just a dummy. */ - /* Check whether the decimal separator is a comma. - On NetBSD 3.0 in the fr_FR.ISO8859-1 locale, localeconv()->decimal_point - are nl_langinfo(RADIXCHAR) are both ".". */ - if (localeconv () ->decimal_point[0] != ',') return 1; +#if HAVE_XLOCALE_H +# include #endif +locale_t loc1; +int main () +{ + uselocale (NULL); + setlocale (LC_ALL, "en_US.UTF-8"); return 0; } - _ACEOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest$ac_exeext; then - case "$host_os" in - # Handle native Windows specially, because there setlocale() interprets - # "ar" as "Arabic" or "Arabic_Saudi Arabia.1256", - # "fr" or "fra" as "French" or "French_France.1252", - # "ge"(!) or "deu"(!) as "German" or "German_Germany.1252", - # "ja" as "Japanese" or "Japanese_Japan.932", - # and similar. - mingw*) - # Test for the hypothetical native Windows locale name. - if (LC_ALL=French_France.65001 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=French_France.65001 - else - # None found. - gt_cv_locale_fr_utf8=none - fi - ;; - *) - # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because - # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the - # configure script would override the LC_ALL setting. Likewise for - # LC_CTYPE, which is also set at the beginning of the configure script. - # Test for the usual locale name. - if (LC_ALL=fr_FR LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=fr_FR - else - # Test for the locale name with explicit encoding suffix. - if (LC_ALL=fr_FR.UTF-8 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=fr_FR.UTF-8 - else - # Test for the Solaris 7 locale name. - if (LC_ALL=fr.UTF-8 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=fr.UTF-8 - else - # None found. - gt_cv_locale_fr_utf8=none - fi - fi - fi - ;; - esac - fi - rm -fr conftest* +if ac_fn_c_try_run "$LINENO" +then : + gt_cv_func_uselocale_works=yes +else case e in #( + e) gt_cv_func_uselocale_works=no ;; +esac +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac +fi + ;; +esac fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_fr_utf8" >&5 -printf "%s\n" "$gt_cv_locale_fr_utf8" >&6; } - LOCALE_FR_UTF8=$gt_cv_locale_fr_utf8 +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_uselocale_works" >&5 +printf "%s\n" "$gt_cv_func_uselocale_works" >&6; } + else + gt_cv_func_uselocale_works=no + fi + case "$gt_cv_func_uselocale_works" in + *yes) + gt_working_uselocale=yes + +printf "%s\n" "#define HAVE_WORKING_USELOCALE 1" >>confdefs.h + + ;; + *) + gt_working_uselocale=no + ;; + esac @@ -42814,7 +43817,7 @@ printf "%s\n" "$gt_cv_locale_fr_utf8" >&6; } - if test "$ERRNO_H:$REPLACE_STRERROR_0" != :0; then + if test "$GL_GENERATE_ERRNO_H:$REPLACE_STRERROR_0" != false:0; then REPLACE_PERROR=1 fi case ${gl_cv_func_strerror_r_works-unset} in @@ -42824,20 +43827,20 @@ printf %s "checking whether perror matches strerror... " >&6; } if test ${gl_cv_func_perror_works+y} then : printf %s "(cached) " >&6 -else $as_nop - if test "$cross_compiling" = yes +else case e in #( + e) if test "$cross_compiling" = yes then : case "$host_os" in - # Guess yes on musl systems. - *-musl*) gl_cv_func_perror_works="guessing yes" ;; - # Guess yes on native Windows. - mingw*) gl_cv_func_perror_works="guessing yes" ;; - # Otherwise obey --enable-cross-guesses. - *) gl_cv_func_perror_works="$gl_cross_guess_normal" ;; + # Guess yes on musl systems. + *-musl* | midipix*) gl_cv_func_perror_works="guessing yes" ;; + # Guess yes on native Windows. + mingw*) gl_cv_func_perror_works="guessing yes" ;; + # Otherwise obey --enable-cross-guesses. + *) gl_cv_func_perror_works="$gl_cross_guess_normal" ;; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include @@ -42868,14 +43871,17 @@ then : gl_cv_func_perror_works=no fi rm -rf conftest.txt1 conftest.txt2 -else $as_nop - gl_cv_func_perror_works=no +else case e in #( + e) gl_cv_func_perror_works=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_perror_works" >&5 printf "%s\n" "$gl_cv_func_perror_works" >&6; } @@ -42888,19 +43894,30 @@ printf "%s\n" "$gl_cv_func_perror_works" >&6; } REPLACE_PERROR=1 ;; esac - - if test $REPLACE_PERROR = 1; then - + case "$host_os" in + # Yes on Android 11. + linux*-android*) REPLACE_PERROR=1 ;; + esac + if test $REPLACE_PERROR = 1; then + GL_COND_OBJ_PERROR_TRUE= + GL_COND_OBJ_PERROR_FALSE='#' +else + GL_COND_OBJ_PERROR_TRUE='#' + GL_COND_OBJ_PERROR_FALSE= +fi +: + if test -z "${GL_COND_OBJ_PERROR_TRUE}" && test -z "${GL_COND_OBJ_PERROR_FALSE}"; then + GL_COND_OBJ_PERROR_TRUE='#' + GL_COND_OBJ_PERROR_FALSE='#' + fi - gltests_LIBOBJS="$gltests_LIBOBJS perror.$ac_objext" - fi @@ -42934,7 +43951,20 @@ printf "%s\n" "#define GNULIB_TEST_PERROR 1" >>confdefs.h HAVE_PIPE=0 fi - if test $HAVE_PIPE = 0; then + + if test $HAVE_PIPE = 0; then + GL_COND_OBJ_PIPE_TRUE= + GL_COND_OBJ_PIPE_FALSE='#' +else + GL_COND_OBJ_PIPE_TRUE='#' + GL_COND_OBJ_PIPE_FALSE= +fi +: + if test -z "${GL_COND_OBJ_PIPE_TRUE}" && test -z "${GL_COND_OBJ_PIPE_FALSE}"; then + GL_COND_OBJ_PIPE_TRUE='#' + GL_COND_OBJ_PIPE_FALSE='#' + fi + @@ -42943,23 +43973,173 @@ printf "%s\n" "#define GNULIB_TEST_PERROR 1" >>confdefs.h - gltests_LIBOBJS="$gltests_LIBOBJS pipe.$ac_objext" + if test "$GL_GNULIB_PIPE" != 1; then + if test "$GL_GNULIB_PIPE" = 0; then + GL_GNULIB_PIPE=$gl_module_indicator_condition + else + GL_GNULIB_PIPE="($GL_GNULIB_PIPE || $gl_module_indicator_condition)" + fi fi +printf "%s\n" "#define GNULIB_TEST_PIPE 1" >>confdefs.h + - if test "$GL_GNULIB_PIPE" != 1; then - if test "$GL_GNULIB_PIPE" = 0; then - GL_GNULIB_PIPE=$gl_module_indicator_condition + + + + if test $ac_cv_func_pselect = yes; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether signature of pselect conforms to POSIX" >&5 +printf %s "checking whether signature of pselect conforms to POSIX... " >&6; } +if test ${gl_cv_sig_pselect+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + +int +main (void) +{ +int (*p) (int, fd_set *, fd_set *, fd_set *restrict, + struct timespec const *restrict, + sigset_t const *restrict) = pselect; + return !p; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO" +then : + gl_cv_sig_pselect=yes +else case e in #( + e) gl_cv_sig_pselect=no ;; +esac +fi +rm -f core conftest.err conftest.$ac_objext conftest.beam \ + conftest$ac_exeext conftest.$ac_ext ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_sig_pselect" >&5 +printf "%s\n" "$gl_cv_sig_pselect" >&6; } + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether pselect detects invalid fds" >&5 +printf %s "checking whether pselect detects invalid fds... " >&6; } +if test ${gl_cv_func_pselect_detects_ebadf+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + if test "$cross_compiling" = yes +then : + + case "$host_os" in + # Guess yes on Linux systems. + linux-* | linux) gl_cv_func_pselect_detects_ebadf="guessing yes" ;; + # Guess yes on systems that emulate the Linux system calls. + midipix*) gl_cv_func_pselect_detects_ebadf="guessing yes" ;; + # Guess yes on glibc systems. + *-gnu* | gnu*) gl_cv_func_pselect_detects_ebadf="guessing yes" ;; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_pselect_detects_ebadf="$gl_cross_guess_normal" ;; + esac + +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#include +#include +#if HAVE_SYS_SELECT_H +# include +#endif +#include +#include + + +$gl_mda_defines + +int +main (void) +{ + + fd_set set; + dup2(0, 16); + FD_ZERO(&set); + FD_SET(16, &set); + close(16); + struct timespec timeout; + timeout.tv_sec = 0; + timeout.tv_nsec = 5000; + return pselect (17, &set, NULL, NULL, &timeout, NULL) != -1 || errno != EBADF; + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO" +then : + gl_cv_func_pselect_detects_ebadf=yes +else case e in #( + e) gl_cv_func_pselect_detects_ebadf=no ;; +esac +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac +fi + + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_pselect_detects_ebadf" >&5 +printf "%s\n" "$gl_cv_func_pselect_detects_ebadf" >&6; } + case $gl_cv_func_pselect_detects_ebadf in + *yes) ;; + *) REPLACE_PSELECT=1 ;; + esac + fi + + if test $ac_cv_func_pselect = no || test $gl_cv_sig_pselect = no; then + REPLACE_PSELECT=1 + fi + + + if test $HAVE_PSELECT = 0 || test $REPLACE_PSELECT = 1; then + GL_COND_OBJ_PSELECT_TRUE= + GL_COND_OBJ_PSELECT_FALSE='#' +else + GL_COND_OBJ_PSELECT_TRUE='#' + GL_COND_OBJ_PSELECT_FALSE= +fi +: + if test -z "${GL_COND_OBJ_PSELECT_TRUE}" && test -z "${GL_COND_OBJ_PSELECT_FALSE}"; then + GL_COND_OBJ_PSELECT_TRUE='#' + GL_COND_OBJ_PSELECT_FALSE='#' + fi + + + + + + + + + + + if test "$GL_GNULIB_PSELECT" != 1; then + if test "$GL_GNULIB_PSELECT" = 0; then + GL_GNULIB_PSELECT=$gl_module_indicator_condition else - GL_GNULIB_PIPE="($GL_GNULIB_PIPE || $gl_module_indicator_condition)" + GL_GNULIB_PSELECT="($GL_GNULIB_PSELECT || $gl_module_indicator_condition)" fi fi @@ -42967,7 +44147,9 @@ printf "%s\n" "#define GNULIB_TEST_PERROR 1" >>confdefs.h -printf "%s\n" "#define GNULIB_TEST_PIPE 1" >>confdefs.h +printf "%s\n" "#define GNULIB_TEST_PSELECT 1" >>confdefs.h + + @@ -43011,8 +44193,8 @@ printf %s "checking whether pthread_create exists as a global function... " >&6; if test ${gl_cv_func_pthread_create+y} then : printf %s "(cached) " >&6 -else $as_nop - saved_LIBS="$LIBS" +else case e in #( + e) saved_LIBS="$LIBS" LIBS="$LIBS $LIBPMULTITHREAD" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -43030,13 +44212,15 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : gl_cv_func_pthread_create=yes -else $as_nop - gl_cv_func_pthread_create=no +else case e in #( + e) gl_cv_func_pthread_create=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext LIBS="$saved_LIBS" - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_pthread_create" >&5 printf "%s\n" "$gl_cv_func_pthread_create" >&6; } @@ -43050,17 +44234,18 @@ printf "%s\n" "#define PTHREAD_CREATE_IS_INLINE 1" >>confdefs.h fi fi - if test $HAVE_PTHREAD_CREATE = 0 || test $REPLACE_PTHREAD_CREATE = 1; then - - - - - - - - - gltests_LIBOBJS="$gltests_LIBOBJS pthread-thread.$ac_objext" + if test $HAVE_PTHREAD_CREATE = 0 || test $REPLACE_PTHREAD_CREATE = 1; then + GL_COND_OBJ_PTHREAD_THREAD_TRUE= + GL_COND_OBJ_PTHREAD_THREAD_FALSE='#' +else + GL_COND_OBJ_PTHREAD_THREAD_TRUE='#' + GL_COND_OBJ_PTHREAD_THREAD_FALSE= +fi +: + if test -z "${GL_COND_OBJ_PTHREAD_THREAD_TRUE}" && test -z "${GL_COND_OBJ_PTHREAD_THREAD_FALSE}"; then + GL_COND_OBJ_PTHREAD_THREAD_TRUE='#' + GL_COND_OBJ_PTHREAD_THREAD_FALSE='#' fi @@ -43071,6 +44256,7 @@ printf "%s\n" "#define PTHREAD_CREATE_IS_INLINE 1" >>confdefs.h + if test "$GL_GNULIB_PTHREAD_THREAD" != 1; then if test "$GL_GNULIB_PTHREAD_THREAD" = 0; then GL_GNULIB_PTHREAD_THREAD=$gl_module_indicator_condition @@ -43097,8 +44283,8 @@ printf %s "checking whether pthread_sigmask is a macro... " >&6; } if test ${gl_cv_func_pthread_sigmask_macro+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -43108,20 +44294,22 @@ else $as_nop #endif _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "headers_define_pthread_sigmask" >/dev/null 2>&1 + $EGREP_TRADITIONAL "headers_define_pthread_sigmask" >/dev/null 2>&1 then : gl_cv_func_pthread_sigmask_macro=yes -else $as_nop - gl_cv_func_pthread_sigmask_macro=no +else case e in #( + e) gl_cv_func_pthread_sigmask_macro=no ;; +esac fi rm -rf conftest* - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_pthread_sigmask_macro" >&5 printf "%s\n" "$gl_cv_func_pthread_sigmask_macro" >&6; } - LIB_PTHREAD_SIGMASK= + PTHREAD_SIGMASK_LIB= if test $gl_cv_func_pthread_sigmask_macro = yes; then HAVE_PTHREAD_SIGMASK=0 @@ -43140,8 +44328,8 @@ printf %s "checking for pthread_sigmask in $LIBMULTITHREAD... " >&6; } if test ${gl_cv_func_pthread_sigmask_in_LIBMULTITHREAD+y} then : printf %s "(cached) " >&6 -else $as_nop - gl_save_LIBS="$LIBS" +else case e in #( + e) gl_save_LIBS="$LIBS" LIBS="$LIBS $LIBMULTITHREAD" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -43160,18 +44348,20 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : gl_cv_func_pthread_sigmask_in_LIBMULTITHREAD=yes -else $as_nop - gl_cv_func_pthread_sigmask_in_LIBMULTITHREAD=no +else case e in #( + e) gl_cv_func_pthread_sigmask_in_LIBMULTITHREAD=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext LIBS="$gl_save_LIBS" - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_pthread_sigmask_in_LIBMULTITHREAD" >&5 printf "%s\n" "$gl_cv_func_pthread_sigmask_in_LIBMULTITHREAD" >&6; } if test $gl_cv_func_pthread_sigmask_in_LIBMULTITHREAD = yes; then - LIB_PTHREAD_SIGMASK="$LIBMULTITHREAD" + PTHREAD_SIGMASK_LIB="$LIBMULTITHREAD" else HAVE_PTHREAD_SIGMASK=0 fi @@ -43190,11 +44380,13 @@ printf "%s\n" "$gl_cv_func_pthread_sigmask_in_LIBMULTITHREAD" >&6; } fi + LIB_PTHREAD_SIGMASK="$PTHREAD_SIGMASK_LIB" + if test $HAVE_PTHREAD_SIGMASK = 1; then - if test -z "$LIB_PTHREAD_SIGMASK"; then + if test -z "$PTHREAD_SIGMASK_LIB"; then case " $LIBS " in *' -pthread '*) ;; *' -lpthread '*) ;; @@ -43204,8 +44396,8 @@ printf %s "checking whether pthread_sigmask works without -lpthread... " >&6; } if test ${gl_cv_func_pthread_sigmask_in_libc_works+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) if test "$cross_compiling" = yes then : @@ -43216,8 +44408,8 @@ then : gl_cv_func_pthread_sigmask_in_libc_works="guessing yes";; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -43233,14 +44425,17 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_pthread_sigmask_in_libc_works=no -else $as_nop - gl_cv_func_pthread_sigmask_in_libc_works=yes +else case e in #( + e) gl_cv_func_pthread_sigmask_in_libc_works=yes ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_pthread_sigmask_in_libc_works" >&5 printf "%s\n" "$gl_cv_func_pthread_sigmask_in_libc_works" >&6; } @@ -43260,10 +44455,10 @@ printf %s "checking whether pthread_sigmask returns error numbers... " >&6; } if test ${gl_cv_func_pthread_sigmask_return_works+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) gl_save_LIBS="$LIBS" - LIBS="$LIBS $LIB_PTHREAD_SIGMASK" + LIBS="$LIBS $PTHREAD_SIGMASK_LIB" if test "$cross_compiling" = yes then : case "$host_os" in @@ -43273,8 +44468,8 @@ then : gl_cv_func_pthread_sigmask_return_works="guessing yes";; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -43292,15 +44487,18 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_pthread_sigmask_return_works=yes -else $as_nop - gl_cv_func_pthread_sigmask_return_works=no +else case e in #( + e) gl_cv_func_pthread_sigmask_return_works=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi LIBS="$gl_save_LIBS" - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_pthread_sigmask_return_works" >&5 printf "%s\n" "$gl_cv_func_pthread_sigmask_return_works" >&6; } @@ -43318,8 +44516,8 @@ printf %s "checking whether pthread_sigmask unblocks signals correctly... " >&6; if test ${gl_cv_func_pthread_sigmask_unblock_works+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) case "$host_os" in irix*) gl_cv_func_pthread_sigmask_unblock_works="guessing no";; @@ -43331,10 +44529,11 @@ else $as_nop if test "$cross_compiling" = yes then : : -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ +#include #include #include #include @@ -43353,14 +44552,16 @@ sigint_handler (int sig) int main () { sigset_t set; - int pid = getpid (); + pid_t pid = getpid (); char command[80]; + if (LONG_MAX < pid) + return 6; signal (SIGINT, sigint_handler); sigemptyset (&set); sigaddset (&set, SIGINT); if (!(pthread_sigmask (SIG_BLOCK, &set, NULL) == 0)) return 1; - sprintf (command, "sh -c 'sleep 1; kill -%d %d' &", SIGINT, pid); + sprintf (command, "sh -c 'sleep 1; kill -INT %ld' &", (long) pid); if (!(system (command) == 0)) return 2; sleep (2); @@ -43376,15 +44577,18 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : : -else $as_nop - gl_cv_func_pthread_sigmask_unblock_works=no +else case e in #( + e) gl_cv_func_pthread_sigmask_unblock_works=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi LIBS=$gl_save_LIBS - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_pthread_sigmask_unblock_works" >&5 printf "%s\n" "$gl_cv_func_pthread_sigmask_unblock_works" >&6; } @@ -43398,16 +44602,21 @@ printf "%s\n" "#define PTHREAD_SIGMASK_UNBLOCK_BUG 1" >>confdefs.h esac fi - if test $HAVE_PTHREAD_SIGMASK = 0 || test $REPLACE_PTHREAD_SIGMASK = 1; then - - - - - - + if test $HAVE_PTHREAD_SIGMASK = 0 || test $REPLACE_PTHREAD_SIGMASK = 1; then + GL_COND_OBJ_PTHREAD_SIGMASK_TRUE= + GL_COND_OBJ_PTHREAD_SIGMASK_FALSE='#' +else + GL_COND_OBJ_PTHREAD_SIGMASK_TRUE='#' + GL_COND_OBJ_PTHREAD_SIGMASK_FALSE= +fi +: + if test -z "${GL_COND_OBJ_PTHREAD_SIGMASK_TRUE}" && test -z "${GL_COND_OBJ_PTHREAD_SIGMASK_FALSE}"; then + GL_COND_OBJ_PTHREAD_SIGMASK_TRUE='#' + GL_COND_OBJ_PTHREAD_SIGMASK_FALSE='#' + fi - gltests_LIBOBJS="$gltests_LIBOBJS pthread_sigmask.$ac_objext" + if test -z "$GL_COND_OBJ_PTHREAD_SIGMASK_TRUE"; then : if test $HAVE_PTHREAD_SIGMASK = 1; then @@ -43416,7 +44625,8 @@ printf "%s\n" "#define HAVE_PTHREAD_SIGMASK 1" >>confdefs.h fi - fi + +fi @@ -43449,22 +44659,22 @@ printf %s "checking for putenv compatible with GNU and SVID... " >&6; } if test ${gl_cv_func_svid_putenv+y} then : printf %s "(cached) " >&6 -else $as_nop - if test "$cross_compiling" = yes +else case e in #( + e) if test "$cross_compiling" = yes then : case "$host_os" in - # Guess yes on glibc systems. - *-gnu* | gnu*) gl_cv_func_svid_putenv="guessing yes" ;; - # Guess yes on musl systems. - *-musl*) gl_cv_func_svid_putenv="guessing yes" ;; - # Guess no on native Windows. - mingw*) gl_cv_func_svid_putenv="guessing no" ;; - # If we don't know, obey --enable-cross-guesses. - *) gl_cv_func_svid_putenv="$gl_cross_guess_normal" ;; + # Guess yes on glibc systems. + *-gnu* | gnu*) gl_cv_func_svid_putenv="guessing yes" ;; + # Guess yes on musl systems. + *-musl* | midipix*) gl_cv_func_svid_putenv="guessing yes" ;; + # Guess no on native Windows. + mingw*) gl_cv_func_svid_putenv="guessing no" ;; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_svid_putenv="$gl_cross_guess_normal" ;; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $ac_includes_default @@ -43496,14 +44706,17 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_svid_putenv=yes -else $as_nop - gl_cv_func_svid_putenv=no +else case e in #( + e) gl_cv_func_svid_putenv=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_svid_putenv" >&5 printf "%s\n" "$gl_cv_func_svid_putenv" >&6; } @@ -43514,29 +44727,36 @@ printf "%s\n" "$gl_cv_func_svid_putenv" >&6; } ;; esac - if test $REPLACE_PUTENV = 1; then - - - - - - + if test $REPLACE_PUTENV = 1; then + GL_COND_OBJ_PUTENV_TRUE= + GL_COND_OBJ_PUTENV_FALSE='#' +else + GL_COND_OBJ_PUTENV_TRUE='#' + GL_COND_OBJ_PUTENV_FALSE= +fi +: + if test -z "${GL_COND_OBJ_PUTENV_TRUE}" && test -z "${GL_COND_OBJ_PUTENV_FALSE}"; then + GL_COND_OBJ_PUTENV_TRUE='#' + GL_COND_OBJ_PUTENV_FALSE='#' + fi - gltests_LIBOBJS="$gltests_LIBOBJS putenv.$ac_objext" + if test -z "$GL_COND_OBJ_PUTENV_TRUE"; then : ac_fn_check_decl "$LINENO" "_putenv" "ac_cv_have_decl__putenv" "$ac_includes_default" "$ac_c_undeclared_builtin_options" "CFLAGS" if test "x$ac_cv_have_decl__putenv" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL__PUTENV $ac_have_decl" >>confdefs.h - fi + +fi @@ -43578,6 +44798,7 @@ printf "%s\n" "#define GNULIB_TEST_PUTENV 1" >>confdefs.h + if test "$ac_cv_header_winsock2_h" = yes; then REPLACE_SELECT=1 else @@ -43587,8 +44808,8 @@ printf %s "checking whether select supports a 0 argument... " >&6; } if test ${gl_cv_func_select_supports0+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) if test "$cross_compiling" = yes then : @@ -43599,8 +44820,8 @@ then : *) gl_cv_func_select_supports0="guessing yes";; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -43619,14 +44840,17 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_select_supports0=yes -else $as_nop - gl_cv_func_select_supports0=no +else case e in #( + e) gl_cv_func_select_supports0=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_select_supports0" >&5 printf "%s\n" "$gl_cv_func_select_supports0" >&6; } @@ -43640,22 +44864,24 @@ printf %s "checking whether select detects invalid fds... " >&6; } if test ${gl_cv_func_select_detects_ebadf+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) if test "$cross_compiling" = yes then : case "$host_os" in # Guess yes on Linux systems. linux-* | linux) gl_cv_func_select_detects_ebadf="guessing yes" ;; + # Guess yes on systems that emulate the Linux system calls. + midipix*) gl_cv_func_select_detects_ebadf="guessing yes" ;; # Guess yes on glibc systems. *-gnu* | gnu*) gl_cv_func_select_detects_ebadf="guessing yes" ;; # If we don't know, obey --enable-cross-guesses. *) gl_cv_func_select_detects_ebadf="$gl_cross_guess_normal" ;; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -43690,14 +44916,17 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_select_detects_ebadf=yes -else $as_nop - gl_cv_func_select_detects_ebadf=no +else case e in #( + e) gl_cv_func_select_detects_ebadf=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_select_detects_ebadf" >&5 printf "%s\n" "$gl_cv_func_select_detects_ebadf" >&6; } @@ -43707,7 +44936,7 @@ printf "%s\n" "$gl_cv_func_select_detects_ebadf" >&6; } esac fi - LIB_SELECT="$LIBSOCKET" + SELECT_LIB="$LIBSOCKET" if test $REPLACE_SELECT = 1; then case "$host_os" in mingw*) @@ -43726,8 +44955,9 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : -else $as_nop - LIB_SELECT="$LIB_SELECT -luser32" +else case e in #( + e) SELECT_LIB="$SELECT_LIB -luser32" ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext @@ -43735,18 +44965,21 @@ rm -f core conftest.err conftest.$ac_objext conftest.beam \ esac fi - - if test $REPLACE_SELECT = 1; then - - - - + LIB_SELECT="$LIB_SELECT" - - gltests_LIBOBJS="$gltests_LIBOBJS select.$ac_objext" - + if test $REPLACE_SELECT = 1; then + GL_COND_OBJ_SELECT_TRUE= + GL_COND_OBJ_SELECT_FALSE='#' +else + GL_COND_OBJ_SELECT_TRUE='#' + GL_COND_OBJ_SELECT_FALSE= +fi +: + if test -z "${GL_COND_OBJ_SELECT_TRUE}" && test -z "${GL_COND_OBJ_SELECT_FALSE}"; then + GL_COND_OBJ_SELECT_TRUE='#' + GL_COND_OBJ_SELECT_FALSE='#' fi @@ -43757,6 +44990,7 @@ rm -f core conftest.err conftest.$ac_objext conftest.beam \ + if test "$GL_GNULIB_SELECT" != 1; then if test "$GL_GNULIB_SELECT" = 0; then GL_GNULIB_SELECT=$gl_module_indicator_condition @@ -43775,17 +45009,18 @@ printf "%s\n" "#define GNULIB_TEST_SELECT 1" >>confdefs.h - if test "$ac_cv_header_winsock2_h" = yes; then - - - - - - - - - gltests_LIBOBJS="$gltests_LIBOBJS setsockopt.$ac_objext" + if test "$ac_cv_header_winsock2_h" = yes; then + GL_COND_OBJ_SETSOCKOPT_TRUE= + GL_COND_OBJ_SETSOCKOPT_FALSE='#' +else + GL_COND_OBJ_SETSOCKOPT_TRUE='#' + GL_COND_OBJ_SETSOCKOPT_FALSE= +fi +: + if test -z "${GL_COND_OBJ_SETSOCKOPT_TRUE}" && test -z "${GL_COND_OBJ_SETSOCKOPT_FALSE}"; then + GL_COND_OBJ_SETSOCKOPT_TRUE='#' + GL_COND_OBJ_SETSOCKOPT_FALSE='#' fi @@ -43796,6 +45031,7 @@ printf "%s\n" "#define GNULIB_TEST_SELECT 1" >>confdefs.h + if test "$GL_GNULIB_SETSOCKOPT" != 1; then if test "$GL_GNULIB_SETSOCKOPT" = 0; then GL_GNULIB_SETSOCKOPT=$gl_module_indicator_condition @@ -43815,134 +45051,99 @@ printf "%s\n" "#define GNULIB_TEST_SETSOCKOPT 1" >>confdefs.h - if test $ac_cv_func_sigaction = yes; then - ac_fn_c_check_member "$LINENO" "struct sigaction" "sa_sigaction" "ac_cv_member_struct_sigaction_sa_sigaction" "#include -" -if test "x$ac_cv_member_struct_sigaction_sa_sigaction" = xyes + ac_fn_c_check_header_compile "$LINENO" "stdint.h" "ac_cv_header_stdint_h" "$ac_includes_default" +if test "x$ac_cv_header_stdint_h" = xyes then : - -printf "%s\n" "#define HAVE_STRUCT_SIGACTION_SA_SIGACTION 1" >>confdefs.h - + printf "%s\n" "#define HAVE_STDINT_H 1" >>confdefs.h fi - if test $ac_cv_member_struct_sigaction_sa_sigaction = no; then - HAVE_STRUCT_SIGACTION_SA_SIGACTION=0 - fi - else - HAVE_SIGACTION=0 - fi - - if test $HAVE_SIGACTION = 0; then - - - - - - - - - gltests_LIBOBJS="$gltests_LIBOBJS sigaction.$ac_objext" - - - - - - - - ac_fn_c_check_type "$LINENO" "siginfo_t" "ac_cv_type_siginfo_t" " -#include - -" -if test "x$ac_cv_type_siginfo_t" = xyes + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for SIZE_MAX" >&5 +printf %s "checking for SIZE_MAX... " >&6; } +if test ${gl_cv_size_max+y} then : + printf %s "(cached) " >&6 +else case e in #( + e) + gl_cv_size_max=no + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ -printf "%s\n" "#define HAVE_SIGINFO_T 1" >>confdefs.h - +#include +#if HAVE_STDINT_H +#include +#endif +#ifdef SIZE_MAX +Found it +#endif +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP_TRADITIONAL "Found it" >/dev/null 2>&1 +then : + gl_cv_size_max=yes fi +rm -rf conftest* - if test $ac_cv_type_siginfo_t = no; then - HAVE_SIGINFO_T=0 - fi - - fi - - - - - - - - - - if test "$GL_GNULIB_SIGACTION" != 1; then - if test "$GL_GNULIB_SIGACTION" = 0; then - GL_GNULIB_SIGACTION=$gl_module_indicator_condition - else - GL_GNULIB_SIGACTION="($GL_GNULIB_SIGACTION || $gl_module_indicator_condition)" - fi - fi - - - - - -printf "%s\n" "#define GNULIB_TEST_SIGACTION 1" >>confdefs.h + if test $gl_cv_size_max != yes; then + if ac_fn_c_compute_int "$LINENO" "sizeof (size_t) * CHAR_BIT - 1" "size_t_bits_minus_1" "#include +#include " +then : +else case e in #( + e) size_t_bits_minus_1= ;; +esac +fi + if ac_fn_c_compute_int "$LINENO" "sizeof (size_t) <= sizeof (unsigned int)" "fits_in_uint" "#include " +then : +else case e in #( + e) fits_in_uint= ;; +esac +fi + if test -n "$size_t_bits_minus_1" && test -n "$fits_in_uint"; then + if test $fits_in_uint = 1; then + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + extern size_t foo; + extern unsigned long foo; +int +main (void) +{ - HAVE_POSIX_SIGNALBLOCKING=0 - if test "$gl_cv_type_sigset_t" = yes; then - ac_fn_c_check_func "$LINENO" "sigprocmask" "ac_cv_func_sigprocmask" -if test "x$ac_cv_func_sigprocmask" = xyes + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO" then : - HAVE_POSIX_SIGNALBLOCKING=1 + fits_in_uint=0 fi - - fi - - if test $HAVE_POSIX_SIGNALBLOCKING = 0; then - - - - - - - - - gltests_LIBOBJS="$gltests_LIBOBJS sigprocmask.$ac_objext" - - : - fi - - - - - - - - - - if test "$GL_GNULIB_SIGPROCMASK" != 1; then - if test "$GL_GNULIB_SIGPROCMASK" = 0; then - GL_GNULIB_SIGPROCMASK=$gl_module_indicator_condition - else - GL_GNULIB_SIGPROCMASK="($GL_GNULIB_SIGPROCMASK || $gl_module_indicator_condition)" +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext + fi + if test $fits_in_uint = 1; then + gl_cv_size_max="(((1U << $size_t_bits_minus_1) - 1) * 2 + 1)" + else + gl_cv_size_max="(((1UL << $size_t_bits_minus_1) - 1) * 2 + 1)" + fi + else + gl_cv_size_max='((size_t)~(size_t)0)' + fi fi - fi - - - - - -printf "%s\n" "#define GNULIB_TEST_SIGPROCMASK 1" >>confdefs.h - + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_size_max" >&5 +printf "%s\n" "$gl_cv_size_max" >&6; } + if test "$gl_cv_size_max" != yes; then +printf "%s\n" "#define SIZE_MAX $gl_cv_size_max" >>confdefs.h + fi @@ -43952,8 +45153,9 @@ printf "%s\n" "#define GNULIB_TEST_SIGPROCMASK 1" >>confdefs.h if test "x$ac_cv_have_decl_sleep" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_SLEEP $ac_have_decl" >>confdefs.h @@ -43966,22 +45168,24 @@ printf %s "checking for working sleep... " >&6; } if test ${gl_cv_func_sleep_works+y} then : printf %s "(cached) " >&6 -else $as_nop - if test "$cross_compiling" = yes +else case e in #( + e) if test "$cross_compiling" = yes then : case "$host_os" in # Guess yes on glibc systems. *-gnu* | gnu*) gl_cv_func_sleep_works="guessing yes" ;; # Guess yes on musl systems. *-musl*) gl_cv_func_sleep_works="guessing yes" ;; + # Guess yes on systems that emulate the Linux system calls. + midipix*) gl_cv_func_sleep_works="guessing yes" ;; # Guess no on native Windows. mingw*) gl_cv_func_sleep_works="guessing no" ;; # If we don't know, obey --enable-cross-guesses. *) gl_cv_func_sleep_works="$gl_cross_guess_normal" ;; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -44018,13 +45222,16 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_sleep_works=yes -else $as_nop - gl_cv_func_sleep_works=no +else case e in #( + e) gl_cv_func_sleep_works=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_sleep_works" >&5 printf "%s\n" "$gl_cv_func_sleep_works" >&6; } @@ -44036,17 +45243,18 @@ printf "%s\n" "$gl_cv_func_sleep_works" >&6; } esac fi - if test $HAVE_SLEEP = 0 || test $REPLACE_SLEEP = 1; then - - - - - - - - - gltests_LIBOBJS="$gltests_LIBOBJS sleep.$ac_objext" + if test $HAVE_SLEEP = 0 || test $REPLACE_SLEEP = 1; then + GL_COND_OBJ_SLEEP_TRUE= + GL_COND_OBJ_SLEEP_FALSE='#' +else + GL_COND_OBJ_SLEEP_TRUE='#' + GL_COND_OBJ_SLEEP_FALSE= +fi +: + if test -z "${GL_COND_OBJ_SLEEP_TRUE}" && test -z "${GL_COND_OBJ_SLEEP_FALSE}"; then + GL_COND_OBJ_SLEEP_TRUE='#' + GL_COND_OBJ_SLEEP_FALSE='#' fi @@ -44057,6 +45265,7 @@ printf "%s\n" "$gl_cv_func_sleep_works" >&6; } + if test "$GL_GNULIB_SLEEP" != 1; then if test "$GL_GNULIB_SLEEP" = 0; then GL_GNULIB_SLEEP=$gl_module_indicator_condition @@ -44093,8 +45302,8 @@ printf %s "checking whether snprintf respects a size of 1... " >&6; } if test ${gl_cv_func_snprintf_size1+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) if test "$cross_compiling" = yes then : case "$host_os" in @@ -44105,8 +45314,8 @@ then : *) gl_cv_func_snprintf_size1="guessing yes" ;; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -44134,14 +45343,17 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_snprintf_size1=yes -else $as_nop - gl_cv_func_snprintf_size1=no +else case e in #( + e) gl_cv_func_snprintf_size1=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_snprintf_size1" >&5 printf "%s\n" "$gl_cv_func_snprintf_size1" >&6; } @@ -44152,59 +45364,6 @@ printf "%s\n" "$gl_cv_func_snprintf_size1" >&6; } case "$gl_cv_func_snprintf_retval_c99" in *yes) - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether printf supports POSIX/XSI format strings with positions" >&5 -printf %s "checking whether printf supports POSIX/XSI format strings with positions... " >&6; } -if test ${gl_cv_func_printf_positions+y} -then : - printf %s "(cached) " >&6 -else $as_nop - - if test "$cross_compiling" = yes -then : - - case "$host_os" in - netbsd[1-3]* | netbsdelf[1-3]* | netbsdaout[1-3]* | netbsdcoff[1-3]*) - gl_cv_func_printf_positions="guessing no";; - beos*) gl_cv_func_printf_positions="guessing no";; - # Guess yes on Android. - linux*-android*) gl_cv_func_printf_positions="guessing yes";; - # Guess no on native Windows. - mingw* | pw*) gl_cv_func_printf_positions="guessing no";; - *) gl_cv_func_printf_positions="guessing yes";; - esac - -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -/* The string "%2$d %1$d", with dollar characters protected from the shell's - dollar expansion (possibly an autoconf bug). */ -static char format[] = { '%', '2', '$', 'd', ' ', '%', '1', '$', 'd', '\0' }; -static char buf[100]; -int main () -{ - sprintf (buf, format, 33, 55); - return (strcmp (buf, "55 33") != 0); -} -_ACEOF -if ac_fn_c_try_run "$LINENO" -then : - gl_cv_func_printf_positions=yes -else $as_nop - gl_cv_func_printf_positions=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_printf_positions" >&5 -printf "%s\n" "$gl_cv_func_printf_positions" >&6; } - case "$gl_cv_func_printf_positions" in *yes) gl_cv_func_snprintf_usable=yes @@ -44275,18 +45434,20 @@ printf "%s\n" "#define GNULIB_SNPRINTF $gl_module_indicator_condition" >>confdef - if test "$ac_cv_header_winsock2_h" = yes; then - - - - - - - - - gltests_LIBOBJS="$gltests_LIBOBJS socket.$ac_objext" + if test "$ac_cv_header_winsock2_h" = yes; then + GL_COND_OBJ_SOCKET_TRUE= + GL_COND_OBJ_SOCKET_FALSE='#' +else + GL_COND_OBJ_SOCKET_TRUE='#' + GL_COND_OBJ_SOCKET_FALSE= +fi +: + if test -z "${GL_COND_OBJ_SOCKET_TRUE}" && test -z "${GL_COND_OBJ_SOCKET_FALSE}"; then + GL_COND_OBJ_SOCKET_TRUE='#' + GL_COND_OBJ_SOCKET_FALSE='#' fi + # When this module is used, sockets may actually occur as file descriptors, # hence it is worth warning if the modules 'close' and 'ioctl' are not used. @@ -44346,14 +45507,14 @@ printf "%s\n" "#define GNULIB_TEST_SOCKET 1" >>confdefs.h if test "x$ac_cv_type_socklen_t" = xyes then : -else $as_nop - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for socklen_t equivalent" >&5 +else case e in #( + e) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for socklen_t equivalent" >&5 printf %s "checking for socklen_t equivalent... " >&6; } if test ${gl_cv_socklen_t_equiv+y} then : printf %s "(cached) " >&6 -else $as_nop - # Systems have either "struct sockaddr *" or +else case e in #( + e) # Systems have either "struct sockaddr *" or # "void *" as the second argument to getpeername gl_cv_socklen_t_equiv= for arg2 in "struct sockaddr" void; do @@ -44385,13 +45546,15 @@ rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext if test "$gl_cv_socklen_t_equiv" = ""; then as_fn_error $? "Cannot find a type to use in place of socklen_t" "$LINENO" 5 fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_socklen_t_equiv" >&5 printf "%s\n" "$gl_cv_socklen_t_equiv" >&6; } printf "%s\n" "#define socklen_t $gl_cv_socklen_t_equiv" >>confdefs.h - + ;; +esac fi @@ -44402,13 +45565,12 @@ fi - if test $ac_cv_have_decl_strerror_r = no; then HAVE_DECL_STRERROR_R=0 fi if test $ac_cv_func_strerror_r = yes; then - if test "$ERRNO_H:$REPLACE_STRERROR_0" = :0; then + if test "$GL_GENERATE_ERRNO_H:$REPLACE_STRERROR_0" = false:0; then if test $gl_cv_func_strerror_r_posix_signature = yes; then case "$gl_cv_func_strerror_r_works" in *no) REPLACE_STRERROR_R=1 ;; @@ -44421,7 +45583,9 @@ fi fi fi - if test $HAVE_DECL_STRERROR_R = 0 || test $REPLACE_STRERROR_R = 1; then + if test $HAVE_DECL_STRERROR_R = 0 || test $REPLACE_STRERROR_R = 1 +then : + @@ -44437,12 +45601,87 @@ fi + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for catgets" >&5 +printf %s "checking for catgets... " >&6; } +if test ${gl_cv_onwards_func_catgets+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + exec 9>&6 6>/dev/null + + case "$host_os" in + + linux*-android*) + ac_fn_check_decl "$LINENO" "catgets" "ac_cv_have_decl_catgets" "#include +" "$ac_c_undeclared_builtin_options" "CFLAGS" +if test "x$ac_cv_have_decl_catgets" = xyes +then : + +fi + if test $ac_cv_have_decl_catgets = yes; then + ac_fn_c_check_func "$LINENO" "catgets" "ac_cv_func_catgets" +if test "x$ac_cv_func_catgets" = xyes +then : + +fi + + if test $ac_cv_func_catgets = yes; then + gl_cv_onwards_func_catgets=yes + else + gl_cv_onwards_func_catgets='future OS version' + fi + else + gl_cv_onwards_func_catgets='future OS version' + fi + ;; + + + *) + ac_fn_c_check_func "$LINENO" "catgets" "ac_cv_func_catgets" +if test "x$ac_cv_func_catgets" = xyes +then : + +fi + + gl_cv_onwards_func_catgets=$ac_cv_func_catgets + ;; + + esac + + exec 6>&9 9>&- + + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_onwards_func_catgets" >&5 +printf "%s\n" "$gl_cv_onwards_func_catgets" >&6; } + + case "$gl_cv_onwards_func_catgets" in + future*) ac_cv_func_catgets=no ;; + *) ac_cv_func_catgets=$gl_cv_onwards_func_catgets ;; + esac + if test $ac_cv_func_catgets = yes; then + +printf "%s\n" "#define HAVE_CATGETS 1" >>confdefs.h + fi +fi + + + + + + + + + + @@ -44482,20 +45721,22 @@ printf %s "checking whether symlink handles trailing slash correctly... " >&6; } if test ${gl_cv_func_symlink_works+y} then : printf %s "(cached) " >&6 -else $as_nop - if test "$cross_compiling" = yes +else case e in #( + e) if test "$cross_compiling" = yes then : case "$host_os" in # Guess yes on Linux systems. linux-* | linux) gl_cv_func_symlink_works="guessing yes" ;; + # Guess yes on systems that emulate the Linux system calls. + midipix*) gl_cv_func_symlink_works="guessing yes" ;; # Guess yes on glibc systems. *-gnu* | gnu*) gl_cv_func_symlink_works="guessing yes" ;; # If we don't know, obey --enable-cross-guesses. *) gl_cv_func_symlink_works="$gl_cross_guess_normal" ;; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -44518,14 +45759,17 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_symlink_works=yes -else $as_nop - gl_cv_func_symlink_works=no +else case e in #( + e) gl_cv_func_symlink_works=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - rm -f conftest.f conftest.link conftest.lnk2 + rm -f conftest.f conftest.link conftest.lnk2 ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_symlink_works" >&5 printf "%s\n" "$gl_cv_func_symlink_works" >&6; } @@ -44537,17 +45781,18 @@ printf "%s\n" "$gl_cv_func_symlink_works" >&6; } esac fi - if test $HAVE_SYMLINK = 0 || test $REPLACE_SYMLINK = 1; then - - - - - - - - - gltests_LIBOBJS="$gltests_LIBOBJS symlink.$ac_objext" + if test $HAVE_SYMLINK = 0 || test $REPLACE_SYMLINK = 1; then + GL_COND_OBJ_SYMLINK_TRUE= + GL_COND_OBJ_SYMLINK_FALSE='#' +else + GL_COND_OBJ_SYMLINK_TRUE='#' + GL_COND_OBJ_SYMLINK_FALSE= +fi +: + if test -z "${GL_COND_OBJ_SYMLINK_TRUE}" && test -z "${GL_COND_OBJ_SYMLINK_FALSE}"; then + GL_COND_OBJ_SYMLINK_TRUE='#' + GL_COND_OBJ_SYMLINK_FALSE='#' fi @@ -44558,6 +45803,7 @@ printf "%s\n" "$gl_cv_func_symlink_works" >&6; } + if test "$GL_GNULIB_SYMLINK" != 1; then if test "$GL_GNULIB_SYMLINK" = 0; then GL_GNULIB_SYMLINK=$gl_module_indicator_condition @@ -44609,582 +45855,255 @@ printf "%s\n" "#define GNULIB_TEST_SYMLINK 1" >>confdefs.h if test $gl_threads_api = posix; then gl_save_LIBS="$LIBS" LIBS="$LIBS $LIBMULTITHREAD" - ac_fn_c_check_func "$LINENO" "pthread_atfork" "ac_cv_func_pthread_atfork" + + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for pthread_atfork" >&5 +printf %s "checking for pthread_atfork... " >&6; } +if test ${gl_cv_onwards_func_pthread_atfork+y} +then : + printf %s "(cached) " >&6 +else case e in #( + e) + exec 9>&6 6>/dev/null + + case "$host_os" in + + linux*-android*) + ac_fn_check_decl "$LINENO" "pthread_atfork" "ac_cv_have_decl_pthread_atfork" "#include +" "$ac_c_undeclared_builtin_options" "CFLAGS" +if test "x$ac_cv_have_decl_pthread_atfork" = xyes +then : + +fi + if test $ac_cv_have_decl_pthread_atfork = yes; then + ac_fn_c_check_func "$LINENO" "pthread_atfork" "ac_cv_func_pthread_atfork" if test "x$ac_cv_func_pthread_atfork" = xyes then : - printf "%s\n" "#define HAVE_PTHREAD_ATFORK 1" >>confdefs.h fi - LIBS="$gl_save_LIBS" - fi + if test $ac_cv_func_pthread_atfork = yes; then + gl_cv_onwards_func_pthread_atfork=yes + else + gl_cv_onwards_func_pthread_atfork='future OS version' + fi + else + gl_cv_onwards_func_pthread_atfork='future OS version' + fi + ;; - abs_aux_dir=`cd "$ac_aux_dir"; pwd` - abs_aux_dir=`cd "$ac_aux_dir"; pwd` + *) + ac_fn_c_check_func "$LINENO" "pthread_atfork" "ac_cv_func_pthread_atfork" +if test "x$ac_cv_func_pthread_atfork" = xyes +then : +fi + gl_cv_onwards_func_pthread_atfork=$ac_cv_func_pthread_atfork + ;; + esac - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a traditional french locale" >&5 -printf %s "checking for a traditional french locale... " >&6; } -if test ${gt_cv_locale_fr+y} + exec 6>&9 9>&- + + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_onwards_func_pthread_atfork" >&5 +printf "%s\n" "$gl_cv_onwards_func_pthread_atfork" >&6; } + + case "$gl_cv_onwards_func_pthread_atfork" in + future*) ac_cv_func_pthread_atfork=no ;; + *) ac_cv_func_pthread_atfork=$gl_cv_onwards_func_pthread_atfork ;; + esac + if test $ac_cv_func_pthread_atfork = yes; then + +printf "%s\n" "#define HAVE_PTHREAD_ATFORK 1" >>confdefs.h + + fi + + + LIBS="$gl_save_LIBS" + fi + + + + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether time() works" >&5 +printf %s "checking whether time() works... " >&6; } +if test ${gl_cv_func_time_works+y} then : printf %s "(cached) " >&6 -else $as_nop - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) case "$host_os" in + linux*-gnu*) + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -#include -#include -#if HAVE_LANGINFO_CODESET -# include -#endif -#include -#include -struct tm t; -char buf[16]; -int main () { - /* On BeOS and Haiku, locales are not implemented in libc. Rather, libintl - imitates locale dependent behaviour by looking at the environment - variables, and all locales use the UTF-8 encoding. */ -#if defined __BEOS__ || defined __HAIKU__ - return 1; -#else - /* Check whether the given locale name is recognized by the system. */ -# if defined _WIN32 && !defined __CYGWIN__ - /* On native Windows, setlocale(category, "") looks at the system settings, - not at the environment variables. Also, when an encoding suffix such - as ".65001" or ".54936" is specified, it succeeds but sets the LC_CTYPE - category of the locale to "C". */ - if (setlocale (LC_ALL, getenv ("LC_ALL")) == NULL - || strcmp (setlocale (LC_CTYPE, NULL), "C") == 0) - return 1; -# else - if (setlocale (LC_ALL, "") == NULL) return 1; -# endif - /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". - On Mac OS X 10.3.5 (Darwin 7.5) in the fr_FR locale, nl_langinfo(CODESET) - is empty, and the behaviour of Tcl 8.4 in this locale is not useful. - On OpenBSD 4.0, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. - On MirBSD 10, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "UTF-8". */ -# if HAVE_LANGINFO_CODESET - { - const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0 - || strcmp (cs, "UTF-8") == 0) - return 1; - } -# endif -# ifdef __CYGWIN__ - /* On Cygwin, avoid locale names without encoding suffix, because the - locale_charset() function relies on the encoding suffix. Note that - LC_ALL is set on the command line. */ - if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; -# endif - /* Check whether in the abbreviation of the second month, the second - character (should be U+00E9: LATIN SMALL LETTER E WITH ACUTE) is only - one byte long. This excludes the UTF-8 encoding. */ - t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; - if (strftime (buf, sizeof (buf), "%b", &t) < 3 || buf[2] != 'v') return 1; -# if !defined __BIONIC__ /* Bionic libc's 'struct lconv' is just a dummy. */ - /* Check whether the decimal separator is a comma. - On NetBSD 3.0 in the fr_FR.ISO8859-1 locale, localeconv()->decimal_point - are nl_langinfo(RADIXCHAR) are both ".". */ - if (localeconv () ->decimal_point[0] != ',') return 1; -# endif - return 0; -#endif -} + #include + #ifdef __GNU_LIBRARY__ + #if __GLIBC__ == 2 + Unlucky GNU user + #endif + #endif _ACEOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest$ac_exeext; then - case "$host_os" in - # Handle native Windows specially, because there setlocale() interprets - # "ar" as "Arabic" or "Arabic_Saudi Arabia.1256", - # "fr" or "fra" as "French" or "French_France.1252", - # "ge"(!) or "deu"(!) as "German" or "German_Germany.1252", - # "ja" as "Japanese" or "Japanese_Japan.932", - # and similar. - mingw*) - # Test for the native Windows locale name. - if (LC_ALL=French_France.1252 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=French_France.1252 - else - # None found. - gt_cv_locale_fr=none - fi - ;; - *) - # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because - # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the - # configure script would override the LC_ALL setting. Likewise for - # LC_CTYPE, which is also set at the beginning of the configure script. - # Test for the usual locale name. - if (LC_ALL=fr_FR LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr_FR - else - # Test for the locale name with explicit encoding suffix. - if (LC_ALL=fr_FR.ISO-8859-1 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr_FR.ISO-8859-1 - else - # Test for the AIX, OSF/1, FreeBSD, NetBSD, OpenBSD locale name. - if (LC_ALL=fr_FR.ISO8859-1 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr_FR.ISO8859-1 - else - # Test for the HP-UX locale name. - if (LC_ALL=fr_FR.iso88591 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr_FR.iso88591 - else - # Test for the Solaris 7 locale name. - if (LC_ALL=fr LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr=fr - else - # None found. - gt_cv_locale_fr=none - fi - fi - fi - fi - fi - ;; - esac - fi - rm -fr conftest* +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP_TRADITIONAL "Unlucky" >/dev/null 2>&1 +then : + gl_cv_func_time_works="guessing no" +else case e in #( + e) gl_cv_func_time_works="guessing yes" ;; +esac +fi +rm -rf conftest* + + ;; + aix*) gl_cv_func_time_works="guessing no";; + mingw*) gl_cv_func_time_works="guessing no";; + *) gl_cv_func_time_works="guessing yes";; + esac + ;; +esac +fi +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_time_works" >&5 +printf "%s\n" "$gl_cv_func_time_works" >&6; } + case "$gl_cv_func_time_works" in + *no) REPLACE_TIME=1 ;; + esac + + if test $REPLACE_TIME = 1; then + GL_COND_OBJ_TIME_TRUE= + GL_COND_OBJ_TIME_FALSE='#' +else + GL_COND_OBJ_TIME_TRUE='#' + GL_COND_OBJ_TIME_FALSE= fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_fr" >&5 -printf "%s\n" "$gt_cv_locale_fr" >&6; } - LOCALE_FR=$gt_cv_locale_fr +: + if test -z "${GL_COND_OBJ_TIME_TRUE}" && test -z "${GL_COND_OBJ_TIME_FALSE}"; then + GL_COND_OBJ_TIME_TRUE='#' + GL_COND_OBJ_TIME_FALSE='#' + fi + if test -z "$GL_COND_OBJ_TIME_TRUE"; then : + : - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a french Unicode locale" >&5 -printf %s "checking for a french Unicode locale... " >&6; } -if test ${gt_cv_locale_fr_utf8+y} -then : - printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ +fi -#include -#include -#if HAVE_LANGINFO_CODESET -# include -#endif -#include -#include -struct tm t; -char buf[16]; -int main () { - /* On BeOS and Haiku, locales are not implemented in libc. Rather, libintl - imitates locale dependent behaviour by looking at the environment - variables, and all locales use the UTF-8 encoding. */ -#if !(defined __BEOS__ || defined __HAIKU__) - /* Check whether the given locale name is recognized by the system. */ -# if defined _WIN32 && !defined __CYGWIN__ - /* On native Windows, setlocale(category, "") looks at the system settings, - not at the environment variables. Also, when an encoding suffix such - as ".65001" or ".54936" is specified, it succeeds but sets the LC_CTYPE - category of the locale to "C". */ - if (setlocale (LC_ALL, getenv ("LC_ALL")) == NULL - || strcmp (setlocale (LC_CTYPE, NULL), "C") == 0) - return 1; -# else - if (setlocale (LC_ALL, "") == NULL) return 1; -# endif - /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". - On Mac OS X 10.3.5 (Darwin 7.5) in the fr_FR locale, nl_langinfo(CODESET) - is empty, and the behaviour of Tcl 8.4 in this locale is not useful. - On OpenBSD 4.0, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. */ -# if HAVE_LANGINFO_CODESET - { - const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0) - return 1; - } -# endif -# ifdef __CYGWIN__ - /* On Cygwin, avoid locale names without encoding suffix, because the - locale_charset() function relies on the encoding suffix. Note that - LC_ALL is set on the command line. */ - if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; -# endif - /* Check whether in the abbreviation of the second month, the second - character (should be U+00E9: LATIN SMALL LETTER E WITH ACUTE) is - two bytes long, with UTF-8 encoding. */ - t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; - if (strftime (buf, sizeof (buf), "%b", &t) < 4 - || buf[1] != (char) 0xc3 || buf[2] != (char) 0xa9 || buf[3] != 'v') - return 1; -#endif -#if !defined __BIONIC__ /* Bionic libc's 'struct lconv' is just a dummy. */ - /* Check whether the decimal separator is a comma. - On NetBSD 3.0 in the fr_FR.ISO8859-1 locale, localeconv()->decimal_point - are nl_langinfo(RADIXCHAR) are both ".". */ - if (localeconv () ->decimal_point[0] != ',') return 1; -#endif - return 0; -} -_ACEOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest$ac_exeext; then - case "$host_os" in - # Handle native Windows specially, because there setlocale() interprets - # "ar" as "Arabic" or "Arabic_Saudi Arabia.1256", - # "fr" or "fra" as "French" or "French_France.1252", - # "ge"(!) or "deu"(!) as "German" or "German_Germany.1252", - # "ja" as "Japanese" or "Japanese_Japan.932", - # and similar. - mingw*) - # Test for the hypothetical native Windows locale name. - if (LC_ALL=French_France.65001 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=French_France.65001 - else - # None found. - gt_cv_locale_fr_utf8=none - fi - ;; - *) - # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because - # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the - # configure script would override the LC_ALL setting. Likewise for - # LC_CTYPE, which is also set at the beginning of the configure script. - # Test for the usual locale name. - if (LC_ALL=fr_FR LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=fr_FR - else - # Test for the locale name with explicit encoding suffix. - if (LC_ALL=fr_FR.UTF-8 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=fr_FR.UTF-8 - else - # Test for the Solaris 7 locale name. - if (LC_ALL=fr.UTF-8 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_fr_utf8=fr.UTF-8 - else - # None found. - gt_cv_locale_fr_utf8=none - fi - fi - fi - ;; - esac + + + + + + + + if test "$GL_GNULIB_TIME" != 1; then + if test "$GL_GNULIB_TIME" = 0; then + GL_GNULIB_TIME=$gl_module_indicator_condition + else + GL_GNULIB_TIME="($GL_GNULIB_TIME || $gl_module_indicator_condition)" fi - rm -fr conftest* + fi -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_fr_utf8" >&5 -printf "%s\n" "$gt_cv_locale_fr_utf8" >&6; } - LOCALE_FR_UTF8=$gt_cv_locale_fr_utf8 +printf "%s\n" "#define GNULIB_TEST_TIME 1" >>confdefs.h - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a traditional japanese locale" >&5 -printf %s "checking for a traditional japanese locale... " >&6; } -if test ${gt_cv_locale_ja+y} -then : - printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include -#if HAVE_LANGINFO_CODESET -# include -#endif -#include -#include -struct tm t; -char buf[16]; -int main () -{ - /* On BeOS and Haiku, locales are not implemented in libc. Rather, libintl - imitates locale dependent behaviour by looking at the environment - variables, and all locales use the UTF-8 encoding. */ -#if defined __BEOS__ || defined __HAIKU__ - return 1; -#else - /* Check whether the given locale name is recognized by the system. */ -# if defined _WIN32 && !defined __CYGWIN__ - /* On native Windows, setlocale(category, "") looks at the system settings, - not at the environment variables. Also, when an encoding suffix such - as ".65001" or ".54936" is specified, it succeeds but sets the LC_CTYPE - category of the locale to "C". */ - if (setlocale (LC_ALL, getenv ("LC_ALL")) == NULL - || strcmp (setlocale (LC_CTYPE, NULL), "C") == 0) - return 1; -# else - if (setlocale (LC_ALL, "") == NULL) return 1; -# endif - /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". - On Mac OS X 10.3.5 (Darwin 7.5) in the fr_FR locale, nl_langinfo(CODESET) - is empty, and the behaviour of Tcl 8.4 in this locale is not useful. - On OpenBSD 4.0, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. - On MirBSD 10, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "UTF-8". */ -# if HAVE_LANGINFO_CODESET - { - const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0 - || strcmp (cs, "UTF-8") == 0) - return 1; - } -# endif -# ifdef __CYGWIN__ - /* On Cygwin, avoid locale names without encoding suffix, because the - locale_charset() function relies on the encoding suffix. Note that - LC_ALL is set on the command line. */ - if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; -# endif - /* Check whether MB_CUR_MAX is > 1. This excludes the dysfunctional locales - on Cygwin 1.5.x. */ - if (MB_CUR_MAX == 1) - return 1; - /* Check whether in a month name, no byte in the range 0x80..0x9F occurs. - This excludes the UTF-8 encoding (except on MirBSD). */ - { - const char *p; - t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; - if (strftime (buf, sizeof (buf), "%B", &t) < 2) return 1; - for (p = buf; *p != '\0'; p++) - if ((unsigned char) *p >= 0x80 && (unsigned char) *p < 0xa0) - return 1; - } - return 0; -#endif -} + abs_aux_dir=`cd "$ac_aux_dir"; pwd` -_ACEOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest$ac_exeext; then - case "$host_os" in - # Handle native Windows specially, because there setlocale() interprets - # "ar" as "Arabic" or "Arabic_Saudi Arabia.1256", - # "fr" or "fra" as "French" or "French_France.1252", - # "ge"(!) or "deu"(!) as "German" or "German_Germany.1252", - # "ja" as "Japanese" or "Japanese_Japan.932", - # and similar. - mingw*) - # Note that on native Windows, the Japanese locale is - # Japanese_Japan.932, and CP932 is very different from EUC-JP, so we - # cannot use it here. - gt_cv_locale_ja=none - ;; - *) - # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because - # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the - # configure script would override the LC_ALL setting. Likewise for - # LC_CTYPE, which is also set at the beginning of the configure script. - # Test for the AIX locale name. - if (LC_ALL=ja_JP LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_ja=ja_JP - else - # Test for the locale name with explicit encoding suffix. - if (LC_ALL=ja_JP.EUC-JP LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_ja=ja_JP.EUC-JP - else - # Test for the HP-UX, OSF/1, NetBSD locale name. - if (LC_ALL=ja_JP.eucJP LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_ja=ja_JP.eucJP - else - # Test for the IRIX, FreeBSD locale name. - if (LC_ALL=ja_JP.EUC LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_ja=ja_JP.EUC - else - # Test for the Solaris 7 locale name. - if (LC_ALL=ja LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_ja=ja - else - # Special test for NetBSD 1.6. - if test -f /usr/share/locale/ja_JP.eucJP/LC_CTYPE; then - gt_cv_locale_ja=ja_JP.eucJP - else - # None found. - gt_cv_locale_ja=none - fi - fi - fi - fi - fi - fi - ;; - esac - fi - rm -fr conftest* -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_ja" >&5 -printf "%s\n" "$gt_cv_locale_ja" >&6; } - LOCALE_JA=$gt_cv_locale_ja + if test $ac_cv_func_vasnprintf = no; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a transitional chinese locale" >&5 -printf %s "checking for a transitional chinese locale... " >&6; } -if test ${gt_cv_locale_zh_CN+y} -then : - printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include -#include -#if HAVE_LANGINFO_CODESET -# include -#endif -#include -#include -struct tm t; -char buf[16]; -int main () -{ - /* On BeOS and Haiku, locales are not implemented in libc. Rather, libintl - imitates locale dependent behaviour by looking at the environment - variables, and all locales use the UTF-8 encoding. */ -#if defined __BEOS__ || defined __HAIKU__ - return 1; -#else - /* Check whether the given locale name is recognized by the system. */ -# if defined _WIN32 && !defined __CYGWIN__ - /* On native Windows, setlocale(category, "") looks at the system settings, - not at the environment variables. Also, when an encoding suffix such - as ".65001" or ".54936" is specified, it succeeds but sets the LC_CTYPE - category of the locale to "C". */ - if (setlocale (LC_ALL, getenv ("LC_ALL")) == NULL - || strcmp (setlocale (LC_CTYPE, NULL), "C") == 0) - return 1; -# else - if (setlocale (LC_ALL, "") == NULL) return 1; -# endif - /* Check whether nl_langinfo(CODESET) is nonempty and not "ASCII" or "646". - On Mac OS X 10.3.5 (Darwin 7.5) in the fr_FR locale, nl_langinfo(CODESET) - is empty, and the behaviour of Tcl 8.4 in this locale is not useful. - On OpenBSD 4.0, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "646". In this situation, - some unit tests fail. - On MirBSD 10, when an unsupported locale is specified, setlocale() - succeeds but then nl_langinfo(CODESET) is "UTF-8". */ -# if HAVE_LANGINFO_CODESET - { - const char *cs = nl_langinfo (CODESET); - if (cs[0] == '\0' || strcmp (cs, "ASCII") == 0 || strcmp (cs, "646") == 0 - || strcmp (cs, "UTF-8") == 0) - return 1; - } -# endif -# ifdef __CYGWIN__ - /* On Cygwin, avoid locale names without encoding suffix, because the - locale_charset() function relies on the encoding suffix. Note that - LC_ALL is set on the command line. */ - if (strchr (getenv ("LC_ALL"), '.') == NULL) return 1; -# endif - /* Check whether in a month name, no byte in the range 0x80..0x9F occurs. - This excludes the UTF-8 encoding (except on MirBSD). */ - { - const char *p; - t.tm_year = 1975 - 1900; t.tm_mon = 2 - 1; t.tm_mday = 4; - if (strftime (buf, sizeof (buf), "%B", &t) < 2) return 1; - for (p = buf; *p != '\0'; p++) - if ((unsigned char) *p >= 0x80 && (unsigned char) *p < 0xa0) - return 1; - } - /* Check whether a typical GB18030 multibyte sequence is recognized as a - single wide character. This excludes the GB2312 and GBK encodings. */ - if (mblen ("\203\062\332\066", 5) != 4) - return 1; - return 0; -#endif -} -_ACEOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest$ac_exeext; then - case "$host_os" in - # Handle native Windows specially, because there setlocale() interprets - # "ar" as "Arabic" or "Arabic_Saudi Arabia.1256", - # "fr" or "fra" as "French" or "French_France.1252", - # "ge"(!) or "deu"(!) as "German" or "German_Germany.1252", - # "ja" as "Japanese" or "Japanese_Japan.932", - # and similar. - mingw*) - # Test for the hypothetical native Windows locale name. - if (LC_ALL=Chinese_China.54936 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_zh_CN=Chinese_China.54936 - else - # None found. - gt_cv_locale_zh_CN=none - fi - ;; - solaris2.8) - # On Solaris 8, the locales zh_CN.GB18030, zh_CN.GBK, zh.GBK are - # broken. One witness is the test case in gl_MBRTOWC_SANITYCHECK. - # Another witness is that "LC_ALL=zh_CN.GB18030 bash -c true" dumps core. - gt_cv_locale_zh_CN=none - ;; - *) - # Setting LC_ALL is not enough. Need to set LC_TIME to empty, because - # otherwise on Mac OS X 10.3.5 the LC_TIME=C from the beginning of the - # configure script would override the LC_ALL setting. Likewise for - # LC_CTYPE, which is also set at the beginning of the configure script. - # Test for the locale name without encoding suffix. - if (LC_ALL=zh_CN LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_zh_CN=zh_CN - else - # Test for the locale name with explicit encoding suffix. - if (LC_ALL=zh_CN.GB18030 LC_TIME= LC_CTYPE= ./conftest; exit) 2>/dev/null; then - gt_cv_locale_zh_CN=zh_CN.GB18030 - else - # None found. - gt_cv_locale_zh_CN=none - fi - fi - ;; - esac - else - # If there was a link error, due to mblen(), the system is so old that - # it certainly doesn't have a chinese locale. - gt_cv_locale_zh_CN=none - fi - rm -fr conftest* + + + + gltests_LIBOBJS="$gltests_LIBOBJS vasnprintf.$ac_objext" + + + + + + + + + + gltests_LIBOBJS="$gltests_LIBOBJS printf-args.$ac_objext" + + + + + + + + + + gltests_LIBOBJS="$gltests_LIBOBJS printf-parse.$ac_objext" + + + + + + + + + + gltests_LIBOBJS="$gltests_LIBOBJS asnprintf.$ac_objext" + + if test $ac_cv_func_vasnprintf = yes; then + +printf "%s\n" "#define REPLACE_VASNPRINTF 1" >>confdefs.h + + fi + + + + + + + + + + ac_fn_c_check_type "$LINENO" "ptrdiff_t" "ac_cv_type_ptrdiff_t" "$ac_includes_default" +if test "x$ac_cv_type_ptrdiff_t" = xyes +then : + +else case e in #( + e) +printf "%s\n" "#define ptrdiff_t long" >>confdefs.h + + ;; +esac fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_locale_zh_CN" >&5 -printf "%s\n" "$gt_cv_locale_zh_CN" >&6; } - LOCALE_ZH_CN=$gt_cv_locale_zh_CN + + + + + + + + fi + + abs_aux_dir=`cd "$ac_aux_dir"; pwd` + + + @@ -45204,8 +46123,8 @@ printf %s "checking whether wctob works... " >&6; } if test ${gl_cv_func_wctob_works+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) case "$host_os" in # Guess no on Solaris <= 9 and Cygwin. solaris2.[1-9] | solaris2.[1-9].* | cygwin*) @@ -45221,8 +46140,8 @@ else $as_nop if test "$cross_compiling" = yes then : : -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -45245,11 +46164,13 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : : -else $as_nop - gl_cv_func_wctob_works=no +else case e in #( + e) gl_cv_func_wctob_works=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi ;; @@ -45258,8 +46179,8 @@ fi if test "$cross_compiling" = yes then : : -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -45281,15 +46202,18 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : gl_cv_func_wctob_works=yes -else $as_nop - gl_cv_func_wctob_works=no +else case e in #( + e) gl_cv_func_wctob_works=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_wctob_works" >&5 printf "%s\n" "$gl_cv_func_wctob_works" >&6; } @@ -45306,8 +46230,9 @@ printf "%s\n" "$gl_cv_func_wctob_works" >&6; } if test "x$ac_cv_have_decl_wctob" = xyes then : ac_have_decl=1 -else $as_nop - ac_have_decl=0 +else case e in #( + e) ac_have_decl=0 ;; +esac fi printf "%s\n" "#define HAVE_DECL_WCTOB $ac_have_decl" >>confdefs.h @@ -45317,21 +46242,32 @@ printf "%s\n" "#define HAVE_DECL_WCTOB $ac_have_decl" >>confdefs.h fi fi - if test $HAVE_WCTOB = 0 || test $REPLACE_WCTOB = 1; then + if test $HAVE_WCTOB = 0 || test $REPLACE_WCTOB = 1; then + GL_COND_OBJ_WCTOB_TRUE= + GL_COND_OBJ_WCTOB_FALSE='#' +else + GL_COND_OBJ_WCTOB_TRUE='#' + GL_COND_OBJ_WCTOB_FALSE= +fi +: + if test -z "${GL_COND_OBJ_WCTOB_TRUE}" && test -z "${GL_COND_OBJ_WCTOB_FALSE}"; then + GL_COND_OBJ_WCTOB_TRUE='#' + GL_COND_OBJ_WCTOB_FALSE='#' + fi + if test -z "$GL_COND_OBJ_WCTOB_TRUE"; then : + : +fi - gltests_LIBOBJS="$gltests_LIBOBJS wctob.$ac_objext" - : - fi @@ -45364,21 +46300,27 @@ printf "%s\n" "#define GNULIB_TEST_WCTOB 1" >>confdefs.h REPLACE_WCTOMB=1 fi - if test $REPLACE_WCTOMB = 1; then - - - - - - + if test $REPLACE_WCTOMB = 1; then + GL_COND_OBJ_WCTOMB_TRUE= + GL_COND_OBJ_WCTOMB_FALSE='#' +else + GL_COND_OBJ_WCTOMB_TRUE='#' + GL_COND_OBJ_WCTOMB_FALSE= +fi +: + if test -z "${GL_COND_OBJ_WCTOMB_TRUE}" && test -z "${GL_COND_OBJ_WCTOMB_FALSE}"; then + GL_COND_OBJ_WCTOMB_TRUE='#' + GL_COND_OBJ_WCTOMB_FALSE='#' + fi - gltests_LIBOBJS="$gltests_LIBOBJS wctomb.$ac_objext" + if test -z "$GL_COND_OBJ_WCTOMB_TRUE"; then : : - fi + +fi @@ -45405,35 +46347,46 @@ printf "%s\n" "#define GNULIB_TEST_WCTOMB 1" >>confdefs.h - case "$host_os" in - mingw*) - - - - - - - - gltests_LIBOBJS="$gltests_LIBOBJS windows-thread.$ac_objext" - - ;; - esac + if case "$host_os" in mingw*) true;; *) false;; esac; then + GL_COND_OBJ_WINDOWS_THREAD_TRUE= + GL_COND_OBJ_WINDOWS_THREAD_FALSE='#' +else + GL_COND_OBJ_WINDOWS_THREAD_TRUE='#' + GL_COND_OBJ_WINDOWS_THREAD_FALSE= +fi +: + if test -z "${GL_COND_OBJ_WINDOWS_THREAD_TRUE}" && test -z "${GL_COND_OBJ_WINDOWS_THREAD_FALSE}"; then + GL_COND_OBJ_WINDOWS_THREAD_TRUE='#' + GL_COND_OBJ_WINDOWS_THREAD_FALSE='#' + fi - case "$host_os" in - mingw*) + if case "$host_os" in mingw*) true;; *) false;; esac; then + GL_COND_OBJ_WINDOWS_TLS_TRUE= + GL_COND_OBJ_WINDOWS_TLS_FALSE='#' +else + GL_COND_OBJ_WINDOWS_TLS_TRUE='#' + GL_COND_OBJ_WINDOWS_TLS_FALSE= +fi +: + if test -z "${GL_COND_OBJ_WINDOWS_TLS_TRUE}" && test -z "${GL_COND_OBJ_WINDOWS_TLS_FALSE}"; then + GL_COND_OBJ_WINDOWS_TLS_TRUE='#' + GL_COND_OBJ_WINDOWS_TLS_FALSE='#' + fi + ac_fn_c_check_header_compile "$LINENO" "stdint.h" "ac_cv_header_stdint_h" "$ac_includes_default" +if test "x$ac_cv_header_stdint_h" = xyes +then : + printf "%s\n" "#define HAVE_STDINT_H 1" >>confdefs.h +fi - gltests_LIBOBJS="$gltests_LIBOBJS windows-tls.$ac_objext" - ;; - esac @@ -45468,13 +46421,14 @@ then : *) as_fn_error $? "bad value $enableval for gcc-warnings option" "$LINENO" 5 ;; esac gl_gcc_warnings=$enableval -else $as_nop - if test -d "$srcdir"/.git; then +else case e in #( + e) if test -d "$srcdir"/.git; then gl_gcc_warnings=yes else gl_gcc_warnings=no fi - + ;; +esac fi @@ -45492,8 +46446,8 @@ printf %s "checking whether C compiler handles -Werror -Wunknown-warning-option. if test ${gl_cv_warn_c__Werror__Wunknown_warning_option+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) gl_save_compiler_FLAGS="$CFLAGS" as_fn_append CFLAGS " $gl_unknown_warnings_are_errors -Werror -Wunknown-warning-option" cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -45510,21 +46464,24 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : gl_cv_warn_c__Werror__Wunknown_warning_option=yes -else $as_nop - gl_cv_warn_c__Werror__Wunknown_warning_option=no +else case e in #( + e) gl_cv_warn_c__Werror__Wunknown_warning_option=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext CFLAGS="$gl_save_compiler_FLAGS" - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_warn_c__Werror__Wunknown_warning_option" >&5 printf "%s\n" "$gl_cv_warn_c__Werror__Wunknown_warning_option" >&6; } if test "x$gl_cv_warn_c__Werror__Wunknown_warning_option" = xyes then : gl_unknown_warnings_are_errors='-Wunknown-warning-option -Werror' -else $as_nop - gl_unknown_warnings_are_errors= +else case e in #( + e) gl_unknown_warnings_are_errors= ;; +esac fi ac_ext=c @@ -45541,8 +46498,8 @@ printf %s "checking whether C compiler handles -Werror... " >&6; } if test ${gl_cv_warn_c__Werror+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) gl_save_compiler_FLAGS="$CFLAGS" as_fn_append CFLAGS " $gl_unknown_warnings_are_errors -Werror" cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -45559,13 +46516,15 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : gl_cv_warn_c__Werror=yes -else $as_nop - gl_cv_warn_c__Werror=no +else case e in #( + e) gl_cv_warn_c__Werror=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext CFLAGS="$gl_save_compiler_FLAGS" - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_warn_c__Werror" >&5 printf "%s\n" "$gl_cv_warn_c__Werror" >&6; } @@ -45591,15 +46550,16 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu - if test -n "$GCC"; then + if test -n "$GCC" +then : { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether -Wno-missing-field-initializers is supported" >&5 printf %s "checking whether -Wno-missing-field-initializers is supported... " >&6; } if test ${gl_cv_cc_nomfi_supported+y} then : printf %s "(cached) " >&6 -else $as_nop - gl_save_CFLAGS="$CFLAGS" +else case e in #( + e) gl_save_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS -Wextra -Werror -Wno-missing-field-initializers" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -45615,24 +46575,28 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_cc_nomfi_supported=yes -else $as_nop - gl_cv_cc_nomfi_supported=no +else case e in #( + e) gl_cv_cc_nomfi_supported=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext CFLAGS="$gl_save_CFLAGS" - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_nomfi_supported" >&5 printf "%s\n" "$gl_cv_cc_nomfi_supported" >&6; } - if test "$gl_cv_cc_nomfi_supported" = yes; then + if test "$gl_cv_cc_nomfi_supported" = yes +then : + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether -Wno-missing-field-initializers is needed" >&5 printf %s "checking whether -Wno-missing-field-initializers is needed... " >&6; } if test ${gl_cv_cc_nomfi_needed+y} then : printf %s "(cached) " >&6 -else $as_nop - gl_save_CFLAGS="$CFLAGS" +else case e in #( + e) gl_save_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS -Wextra -Werror" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -45654,24 +46618,27 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_cc_nomfi_needed=no -else $as_nop - gl_cv_cc_nomfi_needed=yes +else case e in #( + e) gl_cv_cc_nomfi_needed=yes ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext CFLAGS="$gl_save_CFLAGS" - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_nomfi_needed" >&5 printf "%s\n" "$gl_cv_cc_nomfi_needed" >&6; } - fi + +fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether -Wuninitialized is supported" >&5 printf %s "checking whether -Wuninitialized is supported... " >&6; } if test ${gl_cv_cc_uninitialized_supported+y} then : printf %s "(cached) " >&6 -else $as_nop - gl_save_CFLAGS="$CFLAGS" +else case e in #( + e) gl_save_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS -Werror -Wuninitialized" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -45687,17 +46654,19 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : gl_cv_cc_uninitialized_supported=yes -else $as_nop - gl_cv_cc_uninitialized_supported=no +else case e in #( + e) gl_cv_cc_uninitialized_supported=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext CFLAGS="$gl_save_CFLAGS" - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_uninitialized_supported" >&5 printf "%s\n" "$gl_cv_cc_uninitialized_supported" >&6; } - fi +fi # List all gcc warning categories. # To compare this list to your installed GCC's, run this Bash command: @@ -45708,7 +46677,7 @@ printf "%s\n" "$gl_cv_cc_uninitialized_supported" >&6; } # <(LC_ALL=C gcc --help=warnings | sed -n 's/^ \(-[^ ]*\) .*/\1/p' | sort) ws= - for gl_manywarn_item in -fanalyzer -fno-common \ + for gl_manywarn_item in -fanalyzer -fstrict-flex-arrays \ -Wall \ -Warith-conversion \ -Wbad-function-cast \ @@ -45736,6 +46705,7 @@ printf "%s\n" "$gl_cv_cc_uninitialized_supported" >&6; } -Wpointer-arith \ -Wshadow \ -Wstack-protector \ + -Wstrict-flex-arrays \ -Wstrict-overflow \ -Wstrict-prototypes \ -Wsuggest-attribute=cold \ @@ -45766,23 +46736,30 @@ printf "%s\n" "$gl_cv_cc_uninitialized_supported" >&6; } # them here so that the above 'comm' command doesn't report a false match. as_fn_append ws ' -Warray-bounds=2' as_fn_append ws ' -Wattribute-alias=2' + as_fn_append ws ' -Wbidi-chars=any,ucn' as_fn_append ws ' -Wformat-overflow=2' as_fn_append ws ' -Wformat=2' as_fn_append ws ' -Wformat-truncation=2' as_fn_append ws ' -Wimplicit-fallthrough=5' as_fn_append ws ' -Wshift-overflow=2' + as_fn_append ws ' -Wuse-after-free=3' as_fn_append ws ' -Wunused-const-variable=2' as_fn_append ws ' -Wvla-larger-than=4031' # These are needed for older GCC versions. - if test -n "$GCC"; then - case `($CC --version) 2>/dev/null` in + if test -n "$GCC" && gl_gcc_version=`($CC --version) 2>/dev/null`; then + case $gl_gcc_version in 'gcc (GCC) '[0-3].* | \ 'gcc (GCC) '4.[0-7].*) as_fn_append ws ' -fdiagnostics-show-option' as_fn_append ws ' -funit-at-a-time' ;; esac + case $gl_gcc_version in + 'gcc (GCC) '[0-9].*) + as_fn_append ws ' -fno-common' + ;; + esac fi # Disable specific options as needed. @@ -45794,15 +46771,9 @@ printf "%s\n" "$gl_cv_cc_uninitialized_supported" >&6; } as_fn_append ws ' -Wno-uninitialized' fi - # Some warnings have too many false alarms in GCC 10.1. - # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93695 - as_fn_append ws ' -Wno-analyzer-double-free' - # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94458 + # This warning have too many false alarms in GCC 11.2.1. + # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101713 as_fn_append ws ' -Wno-analyzer-malloc-leak' - # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94851 - as_fn_append ws ' -Wno-analyzer-null-dereference' - # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95758 - as_fn_append ws ' -Wno-analyzer-use-after-free' ac_ext=c ac_cpp='$CPP $CPPFLAGS' @@ -45829,7 +46800,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu for w in $ws; do -as_gl_Warn=`printf "%s\n" "gl_cv_warn_c_$w" | $as_tr_sh` +as_gl_Warn=`printf "%s\n" "gl_cv_warn_c_$w" | sed "$as_sed_sh"` gl_positive="$w" case $gl_positive in -Wno-*) gl_positive=-W`expr "X$gl_positive" : 'X-Wno-\(.*\)'` ;; @@ -45839,8 +46810,8 @@ printf %s "checking whether C compiler handles $w... " >&6; } if eval test \${$as_gl_Warn+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) gl_save_compiler_FLAGS="$CFLAGS" as_fn_append CFLAGS " $gl_unknown_warnings_are_errors $gl_positive" cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -45857,13 +46828,15 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : eval "$as_gl_Warn=yes" -else $as_nop - eval "$as_gl_Warn=no" +else case e in #( + e) eval "$as_gl_Warn=no" ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext CFLAGS="$gl_save_compiler_FLAGS" - + ;; +esac fi eval ac_res=\$$as_gl_Warn { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 @@ -45882,8 +46855,8 @@ printf %s "checking whether C compiler handles -Wno-sign-compare... " >&6; } if test ${gl_cv_warn_c__Wno_sign_compare+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) gl_save_compiler_FLAGS="$CFLAGS" as_fn_append CFLAGS " $gl_unknown_warnings_are_errors -Wsign-compare" cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -45900,13 +46873,15 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : gl_cv_warn_c__Wno_sign_compare=yes -else $as_nop - gl_cv_warn_c__Wno_sign_compare=no +else case e in #( + e) gl_cv_warn_c__Wno_sign_compare=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext CFLAGS="$gl_save_compiler_FLAGS" - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_warn_c__Wno_sign_compare" >&5 printf "%s\n" "$gl_cv_warn_c__Wno_sign_compare" >&6; } @@ -45923,8 +46898,8 @@ printf %s "checking whether C compiler handles -Wno-unused-parameter... " >&6; } if test ${gl_cv_warn_c__Wno_unused_parameter+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) gl_save_compiler_FLAGS="$CFLAGS" as_fn_append CFLAGS " $gl_unknown_warnings_are_errors -Wunused-parameter" cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -45941,13 +46916,15 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : gl_cv_warn_c__Wno_unused_parameter=yes -else $as_nop - gl_cv_warn_c__Wno_unused_parameter=no +else case e in #( + e) gl_cv_warn_c__Wno_unused_parameter=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext CFLAGS="$gl_save_compiler_FLAGS" - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_warn_c__Wno_unused_parameter" >&5 printf "%s\n" "$gl_cv_warn_c__Wno_unused_parameter" >&6; } @@ -45964,8 +46941,8 @@ printf %s "checking whether C compiler handles -Wno-format-nonliteral... " >&6; if test ${gl_cv_warn_c__Wno_format_nonliteral+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) gl_save_compiler_FLAGS="$CFLAGS" as_fn_append CFLAGS " $gl_unknown_warnings_are_errors -Wformat-nonliteral" cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -45982,13 +46959,15 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : gl_cv_warn_c__Wno_format_nonliteral=yes -else $as_nop - gl_cv_warn_c__Wno_format_nonliteral=no +else case e in #( + e) gl_cv_warn_c__Wno_format_nonliteral=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext CFLAGS="$gl_save_compiler_FLAGS" - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_warn_c__Wno_format_nonliteral" >&5 printf "%s\n" "$gl_cv_warn_c__Wno_format_nonliteral" >&6; } @@ -46006,8 +46985,8 @@ printf %s "checking whether C compiler handles -fdiagnostics-show-option... " >& if test ${gl_cv_warn_c__fdiagnostics_show_option+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) gl_save_compiler_FLAGS="$CFLAGS" as_fn_append CFLAGS " $gl_unknown_warnings_are_errors -fdiagnostics-show-option" cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -46024,13 +47003,15 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : gl_cv_warn_c__fdiagnostics_show_option=yes -else $as_nop - gl_cv_warn_c__fdiagnostics_show_option=no +else case e in #( + e) gl_cv_warn_c__fdiagnostics_show_option=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext CFLAGS="$gl_save_compiler_FLAGS" - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_warn_c__fdiagnostics_show_option" >&5 printf "%s\n" "$gl_cv_warn_c__fdiagnostics_show_option" >&6; } @@ -46047,8 +47028,8 @@ printf %s "checking whether C compiler handles -funit-at-a-time... " >&6; } if test ${gl_cv_warn_c__funit_at_a_time+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) gl_save_compiler_FLAGS="$CFLAGS" as_fn_append CFLAGS " $gl_unknown_warnings_are_errors -funit-at-a-time" cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -46065,13 +47046,15 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : gl_cv_warn_c__funit_at_a_time=yes -else $as_nop - gl_cv_warn_c__funit_at_a_time=no +else case e in #( + e) gl_cv_warn_c__funit_at_a_time=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext CFLAGS="$gl_save_compiler_FLAGS" - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_warn_c__funit_at_a_time" >&5 printf "%s\n" "$gl_cv_warn_c__funit_at_a_time" >&6; } @@ -46088,8 +47071,8 @@ printf %s "checking whether C compiler handles -fno-common... " >&6; } if test ${gl_cv_warn_c__fno_common+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) gl_save_compiler_FLAGS="$CFLAGS" as_fn_append CFLAGS " $gl_unknown_warnings_are_errors -fno-common" cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -46106,13 +47089,15 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : gl_cv_warn_c__fno_common=yes -else $as_nop - gl_cv_warn_c__fno_common=no +else case e in #( + e) gl_cv_warn_c__fno_common=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext CFLAGS="$gl_save_compiler_FLAGS" - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_warn_c__fno_common" >&5 printf "%s\n" "$gl_cv_warn_c__fno_common" >&6; } @@ -46126,7 +47111,7 @@ fi -printf "%s\n" "#define lint 1" >>confdefs.h +printf "%s\n" "#define GCC_LINT 1" >>confdefs.h printf "%s\n" "#define _FORTIFY_SOURCE 2" >>confdefs.h @@ -46142,50 +47127,6 @@ printf "%s\n" "#define GNULIB_PORTCHECK 1" >>confdefs.h nw="$nw -Wsuggest-attribute=pure" nw="$nw -Wduplicated-branches" # Too many false alarms - # Avoid false alarm in lib/vasnprintf.c. - # https://lists.gnu.org/r/bug-gnulib/2021-01/msg00031.html - - -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether C compiler handles -Wno-analyzer-null-argument" >&5 -printf %s "checking whether C compiler handles -Wno-analyzer-null-argument... " >&6; } -if test ${gl_cv_warn_c__Wno_analyzer_null_argument+y} -then : - printf %s "(cached) " >&6 -else $as_nop - - gl_save_compiler_FLAGS="$CFLAGS" - as_fn_append CFLAGS " $gl_unknown_warnings_are_errors -Wanalyzer-null-argument" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO" -then : - gl_cv_warn_c__Wno_analyzer_null_argument=yes -else $as_nop - gl_cv_warn_c__Wno_analyzer_null_argument=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam \ - conftest$ac_exeext conftest.$ac_ext - CFLAGS="$gl_save_compiler_FLAGS" - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_warn_c__Wno_analyzer_null_argument" >&5 -printf "%s\n" "$gl_cv_warn_c__Wno_analyzer_null_argument" >&6; } -if test "x$gl_cv_warn_c__Wno_analyzer_null_argument" = xyes -then : - as_fn_append WARN_CFLAGS " -Wno-analyzer-null-argument" -fi - - - gl_warn_set= set x $WARN_CFLAGS; shift @@ -46209,8 +47150,8 @@ printf %s "checking for inline... " >&6; } if test ${ac_cv_c_inline+y} then : printf %s "(cached) " >&6 -else $as_nop - ac_cv_c_inline=no +else case e in #( + e) ac_cv_c_inline=no for ac_kw in inline __inline__ __inline; do cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -46228,7 +47169,8 @@ fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext test "$ac_cv_c_inline" != no && break done - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_inline" >&5 printf "%s\n" "$ac_cv_c_inline" >&6; } @@ -46260,8 +47202,8 @@ printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_path_PR_PROGRAM+y} then : printf %s "(cached) " >&6 -else $as_nop - case $PR_PROGRAM in +else case e in #( + e) case $PR_PROGRAM in [\\/]* | ?:[\\/]*) ac_cv_path_PR_PROGRAM="$PR_PROGRAM" # Let the user override the test with a path. ;; @@ -46287,6 +47229,7 @@ IFS=$as_save_IFS test -z "$ac_cv_path_PR_PROGRAM" && ac_cv_path_PR_PROGRAM="""" ;; +esac ;; esac fi PR_PROGRAM=$ac_cv_path_PR_PROGRAM @@ -46323,14 +47266,14 @@ fi ac_header_dirent=no for ac_hdr in dirent.h sys/ndir.h sys/dir.h ndir.h; do - as_ac_Header=`printf "%s\n" "ac_cv_header_dirent_$ac_hdr" | $as_tr_sh` + as_ac_Header=`printf "%s\n" "ac_cv_header_dirent_$ac_hdr" | sed "$as_sed_sh"` { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_hdr that defines DIR" >&5 printf %s "checking for $ac_hdr that defines DIR... " >&6; } if eval test \${$as_ac_Header+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include <$ac_hdr> @@ -46347,10 +47290,12 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : eval "$as_ac_Header=yes" -else $as_nop - eval "$as_ac_Header=no" +else case e in #( + e) eval "$as_ac_Header=no" ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi eval ac_res=\$$as_ac_Header { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 @@ -46358,7 +47303,7 @@ printf "%s\n" "$ac_res" >&6; } if eval test \"x\$"$as_ac_Header"\" = x"yes" then : cat >>confdefs.h <<_ACEOF -#define `printf "%s\n" "HAVE_$ac_hdr" | $as_tr_cpp` 1 +#define `printf "%s\n" "HAVE_$ac_hdr" | sed "$as_sed_cpp"` 1 _ACEOF ac_header_dirent=$ac_hdr; break @@ -46372,15 +47317,21 @@ printf %s "checking for library containing opendir... " >&6; } if test ${ac_cv_search_opendir+y} then : printf %s "(cached) " >&6 -else $as_nop - ac_func_search_save_LIBS=$LIBS +else case e in #( + e) ac_func_search_save_LIBS=$LIBS cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -char opendir (); + builtin and then its argument prototype would still apply. + The 'extern "C"' is for builds by C++ compilers; + although this is not generally supported in C code supporting it here + has little cost and some practical benefit (sr 110532). */ +#ifdef __cplusplus +extern "C" +#endif +char opendir (void); int main (void) { @@ -46411,11 +47362,13 @@ done if test ${ac_cv_search_opendir+y} then : -else $as_nop - ac_cv_search_opendir=no +else case e in #( + e) ac_cv_search_opendir=no ;; +esac fi rm conftest.$ac_ext -LIBS=$ac_func_search_save_LIBS +LIBS=$ac_func_search_save_LIBS ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_opendir" >&5 printf "%s\n" "$ac_cv_search_opendir" >&6; } @@ -46432,15 +47385,21 @@ printf %s "checking for library containing opendir... " >&6; } if test ${ac_cv_search_opendir+y} then : printf %s "(cached) " >&6 -else $as_nop - ac_func_search_save_LIBS=$LIBS +else case e in #( + e) ac_func_search_save_LIBS=$LIBS cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -char opendir (); + builtin and then its argument prototype would still apply. + The 'extern "C"' is for builds by C++ compilers; + although this is not generally supported in C code supporting it here + has little cost and some practical benefit (sr 110532). */ +#ifdef __cplusplus +extern "C" +#endif +char opendir (void); int main (void) { @@ -46471,11 +47430,13 @@ done if test ${ac_cv_search_opendir+y} then : -else $as_nop - ac_cv_search_opendir=no +else case e in #( + e) ac_cv_search_opendir=no ;; +esac fi rm conftest.$ac_ext -LIBS=$ac_func_search_save_LIBS +LIBS=$ac_func_search_save_LIBS ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_opendir" >&5 printf "%s\n" "$ac_cv_search_opendir" >&6; } @@ -46493,8 +47454,8 @@ printf %s "checking for sys/wait.h that is POSIX.1 compatible... " >&6; } if test ${ac_cv_header_sys_wait_h+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include @@ -46518,10 +47479,12 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : ac_cv_header_sys_wait_h=yes -else $as_nop - ac_cv_header_sys_wait_h=no +else case e in #( + e) ac_cv_header_sys_wait_h=no ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_sys_wait_h" >&5 printf "%s\n" "$ac_cv_header_sys_wait_h" >&6; } @@ -46537,8 +47500,8 @@ fi if test "x$ac_cv_type_pid_t" = xyes then : -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #if defined _WIN64 && !defined __CYGWIN__ @@ -46557,14 +47520,16 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : ac_pid_type='int' -else $as_nop - ac_pid_type='__int64' +else case e in #( + e) ac_pid_type='__int64' ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext printf "%s\n" "#define pid_t $ac_pid_type" >>confdefs.h - + ;; +esac fi @@ -46573,6 +47538,7 @@ fi + if test $ac_cv_func_sigprocmask = no; then ac_fn_c_check_func "$LINENO" "sigblock" "ac_cv_func_sigblock" if test "x$ac_cv_func_sigblock" = xyes @@ -46587,8 +47553,8 @@ printf %s "checking whether closedir returns void... " >&6; } if test ${ac_cv_func_closedir_void+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include <$ac_header_dirent> @@ -46606,10 +47572,12 @@ _ACEOF if ac_fn_c_try_compile "$LINENO" then : ac_cv_func_closedir_void=no -else $as_nop - ac_cv_func_closedir_void=yes +else case e in #( + e) ac_cv_func_closedir_void=yes ;; +esac fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_closedir_void" >&5 printf "%s\n" "$ac_cv_func_closedir_void" >&6; } @@ -46630,19 +47598,19 @@ printf %s "checking for working fork... " >&6; } if test ${ac_cv_func_fork_works+y} then : printf %s "(cached) " >&6 -else $as_nop - if test "$cross_compiling" = yes +else case e in #( + e) if test "$cross_compiling" = yes then : ac_cv_func_fork_works=cross -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $ac_includes_default int main (void) { - /* By Ruediger Kuhlmann. */ + /* By R. Kuhlmann. */ return fork () < 0; ; @@ -46652,13 +47620,16 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : ac_cv_func_fork_works=yes -else $as_nop - ac_cv_func_fork_works=no +else case e in #( + e) ac_cv_func_fork_works=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_fork_works" >&5 printf "%s\n" "$ac_cv_func_fork_works" >&6; } @@ -46686,12 +47657,12 @@ printf %s "checking for working vfork... " >&6; } if test ${ac_cv_func_vfork_works+y} then : printf %s "(cached) " >&6 -else $as_nop - if test "$cross_compiling" = yes +else case e in #( + e) if test "$cross_compiling" = yes then : ac_cv_func_vfork_works=cross -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Thanks to Paul Eggert for this test. */ $ac_includes_default @@ -46802,13 +47773,16 @@ _ACEOF if ac_fn_c_try_run "$LINENO" then : ac_cv_func_vfork_works=yes -else $as_nop - ac_cv_func_vfork_works=no +else case e in #( + e) ac_cv_func_vfork_works=no ;; +esac fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_vfork_works" >&5 printf "%s\n" "$ac_cv_func_vfork_works" >&6; } @@ -46856,8 +47830,9 @@ printf %s "checking whether NLS is requested... " >&6; } if test ${enable_nls+y} then : enableval=$enable_nls; USE_NLS=$enableval -else $as_nop - USE_NLS=yes +else case e in #( + e) USE_NLS=yes ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $USE_NLS" >&5 @@ -46905,8 +47880,8 @@ printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_path_MSGFMT+y} then : printf %s "(cached) " >&6 -else $as_nop - case "$MSGFMT" in +else case e in #( + e) case "$MSGFMT" in [\\/]* | ?:[\\/]*) ac_cv_path_MSGFMT="$MSGFMT" # Let the user override the test with a path. ;; @@ -46929,6 +47904,7 @@ else $as_nop IFS="$ac_save_IFS" test -z "$ac_cv_path_MSGFMT" && ac_cv_path_MSGFMT=":" ;; +esac ;; esac fi MSGFMT="$ac_cv_path_MSGFMT" @@ -46947,8 +47923,8 @@ printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_path_GMSGFMT+y} then : printf %s "(cached) " >&6 -else $as_nop - case $GMSGFMT in +else case e in #( + e) case $GMSGFMT in [\\/]* | ?:[\\/]*) ac_cv_path_GMSGFMT="$GMSGFMT" # Let the user override the test with a path. ;; @@ -46974,6 +47950,7 @@ IFS=$as_save_IFS test -z "$ac_cv_path_GMSGFMT" && ac_cv_path_GMSGFMT="$MSGFMT" ;; +esac ;; esac fi GMSGFMT=$ac_cv_path_GMSGFMT @@ -47033,8 +48010,8 @@ printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_path_XGETTEXT+y} then : printf %s "(cached) " >&6 -else $as_nop - case "$XGETTEXT" in +else case e in #( + e) case "$XGETTEXT" in [\\/]* | ?:[\\/]*) ac_cv_path_XGETTEXT="$XGETTEXT" # Let the user override the test with a path. ;; @@ -47057,6 +48034,7 @@ else $as_nop IFS="$ac_save_IFS" test -z "$ac_cv_path_XGETTEXT" && ac_cv_path_XGETTEXT=":" ;; +esac ;; esac fi XGETTEXT="$ac_cv_path_XGETTEXT" @@ -47111,8 +48089,8 @@ printf %s "checking for $ac_word... " >&6; } if test ${ac_cv_path_MSGMERGE+y} then : printf %s "(cached) " >&6 -else $as_nop - case "$MSGMERGE" in +else case e in #( + e) case "$MSGMERGE" in [\\/]* | ?:[\\/]*) ac_cv_path_MSGMERGE="$MSGMERGE" # Let the user override the test with a path. ;; @@ -47134,6 +48112,7 @@ else $as_nop IFS="$ac_save_IFS" test -z "$ac_cv_path_MSGMERGE" && ac_cv_path_MSGMERGE=":" ;; +esac ;; esac fi MSGMERGE="$ac_cv_path_MSGMERGE" @@ -47184,8 +48163,8 @@ printf %s "checking for CFPreferencesCopyAppValue... " >&6; } if test ${gt_cv_func_CFPreferencesCopyAppValue+y} then : printf %s "(cached) " >&6 -else $as_nop - gt_save_LIBS="$LIBS" +else case e in #( + e) gt_save_LIBS="$LIBS" LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -47201,12 +48180,14 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : gt_cv_func_CFPreferencesCopyAppValue=yes -else $as_nop - gt_cv_func_CFPreferencesCopyAppValue=no +else case e in #( + e) gt_cv_func_CFPreferencesCopyAppValue=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext - LIBS="$gt_save_LIBS" + LIBS="$gt_save_LIBS" ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_CFPreferencesCopyAppValue" >&5 printf "%s\n" "$gt_cv_func_CFPreferencesCopyAppValue" >&6; } @@ -47220,8 +48201,8 @@ printf %s "checking for CFLocaleCopyCurrent... " >&6; } if test ${gt_cv_func_CFLocaleCopyCurrent+y} then : printf %s "(cached) " >&6 -else $as_nop - gt_save_LIBS="$LIBS" +else case e in #( + e) gt_save_LIBS="$LIBS" LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -47237,12 +48218,14 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : gt_cv_func_CFLocaleCopyCurrent=yes -else $as_nop - gt_cv_func_CFLocaleCopyCurrent=no +else case e in #( + e) gt_cv_func_CFLocaleCopyCurrent=no ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext - LIBS="$gt_save_LIBS" + LIBS="$gt_save_LIBS" ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_CFLocaleCopyCurrent" >&5 printf "%s\n" "$gt_cv_func_CFLocaleCopyCurrent" >&6; } @@ -47298,8 +48281,8 @@ printf %s "checking for GNU gettext in libc... " >&6; } if eval test \${$gt_func_gnugettext_libc+y} then : printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -47321,11 +48304,13 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : eval "$gt_func_gnugettext_libc=yes" -else $as_nop - eval "$gt_func_gnugettext_libc=no" +else case e in #( + e) eval "$gt_func_gnugettext_libc=no" ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ - conftest$ac_exeext conftest.$ac_ext + conftest$ac_exeext conftest.$ac_ext ;; +esac fi eval ac_res=\$$gt_func_gnugettext_libc { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 @@ -47367,8 +48352,8 @@ printf %s "checking for iconv... " >&6; } if test ${am_cv_func_iconv+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) am_cv_func_iconv="no, consider installing GNU libiconv" am_cv_lib_iconv=no cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -47421,7 +48406,8 @@ rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext LIBS="$am_save_LIBS" fi - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_func_iconv" >&5 printf "%s\n" "$am_cv_func_iconv" >&6; } @@ -47431,8 +48417,8 @@ printf %s "checking for working iconv... " >&6; } if test ${am_cv_func_iconv_works+y} then : printf %s "(cached) " >&6 -else $as_nop - +else case e in #( + e) am_save_LIBS="$LIBS" if test $am_cv_lib_iconv = yes; then LIBS="$LIBS $LIBICONV" @@ -47445,8 +48431,8 @@ then : aix* | hpux*) am_cv_func_iconv_works="guessing no" ;; *) am_cv_func_iconv_works="guessing yes" ;; esac -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext +else case e in #( + e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -47575,13 +48561,15 @@ then : am_cv_func_iconv_works=yes fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + conftest.$ac_objext conftest.beam conftest.$ac_ext ;; +esac fi test "$am_cv_func_iconv_works" = no || break done LIBS="$am_save_LIBS" - + ;; +esac fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_func_iconv_works" >&5 printf "%s\n" "$am_cv_func_iconv_works" >&6; } @@ -48107,8 +49095,8 @@ printf %s "checking for GNU gettext in libintl... " >&6; } if eval test \${$gt_func_gnugettext_libintl+y} then : printf %s "(cached) " >&6 -else $as_nop - gt_save_CPPFLAGS="$CPPFLAGS" +else case e in #( + e) gt_save_CPPFLAGS="$CPPFLAGS" CPPFLAGS="$CPPFLAGS $INCINTL" gt_save_LIBS="$LIBS" LIBS="$LIBS $LIBINTL" @@ -48138,8 +49126,9 @@ _ACEOF if ac_fn_c_try_link "$LINENO" then : eval "$gt_func_gnugettext_libintl=yes" -else $as_nop - eval "$gt_func_gnugettext_libintl=no" +else case e in #( + e) eval "$gt_func_gnugettext_libintl=no" ;; +esac fi rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext @@ -48179,7 +49168,8 @@ rm -f core conftest.err conftest.$ac_objext conftest.beam \ conftest$ac_exeext conftest.$ac_ext fi CPPFLAGS="$gt_save_CPPFLAGS" - LIBS="$gt_save_LIBS" + LIBS="$gt_save_LIBS" ;; +esac fi eval ac_res=\$$gt_func_gnugettext_libintl { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 @@ -48305,8 +49295,8 @@ cat >confcache <<\_ACEOF # config.status only pays attention to the cache file if you give it # the --recheck option to rerun configure. # -# `ac_cv_env_foo' variables (set or unset) will be overridden when -# loading this file, other *unset* `ac_cv_foo' will be assigned the +# 'ac_cv_env_foo' variables (set or unset) will be overridden when +# loading this file, other *unset* 'ac_cv_foo' will be assigned the # following values. _ACEOF @@ -48336,14 +49326,14 @@ printf "%s\n" "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} (set) 2>&1 | case $as_nl`(ac_space=' '; set) 2>&1` in #( *${as_nl}ac_space=\ *) - # `set' does not quote correctly, so add quotes: double-quote + # 'set' does not quote correctly, so add quotes: double-quote # substitution turns \\\\ into \\, and sed turns \\ into \. sed -n \ "s/'/'\\\\''/g; s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" ;; #( *) - # `set' quotes correctly as required by POSIX, so do not add quotes. + # 'set' quotes correctly as required by POSIX, so do not add quotes. sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" ;; esac | @@ -48412,6 +49402,18 @@ printf %s "checking that generated files are newer than configure... " >&6; } fi { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: done" >&5 printf "%s\n" "done" >&6; } +case $enable_silent_rules in # ((( + yes) AM_DEFAULT_VERBOSITY=0;; + no) AM_DEFAULT_VERBOSITY=1;; +esac +if test $am_cv_make_support_nested_variables = yes; then + AM_V='$(V)' + AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' +else + AM_V=$AM_DEFAULT_VERBOSITY + AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY +fi + if test -n "$EXEEXT"; then am__EXEEXT_TRUE= am__EXEEXT_FALSE='#' @@ -48428,130 +49430,78 @@ if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then as_fn_error $? "conditional \"am__fastdepCC\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +# Check whether --enable-year2038 was given. +if test ${enable_year2038+y} +then : + enableval=$enable_year2038; +fi + if test -z "${GL_COND_LIBTOOL_TRUE}" && test -z "${GL_COND_LIBTOOL_FALSE}"; then as_fn_error $? "conditional \"GL_COND_LIBTOOL\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi -if test -z "${GL_GENERATE_ALLOCA_H_TRUE}" && test -z "${GL_GENERATE_ALLOCA_H_FALSE}"; then - as_fn_error $? "conditional \"GL_GENERATE_ALLOCA_H\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi test "X$DEFS" = X-DHAVE_CONFIG_H && DEFS= -if test -z "${GL_GENERATE_ERRNO_H_TRUE}" && test -z "${GL_GENERATE_ERRNO_H_FALSE}"; then - as_fn_error $? "conditional \"GL_GENERATE_ERRNO_H\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${GL_GENERATE_FLOAT_H_TRUE}" && test -z "${GL_GENERATE_FLOAT_H_FALSE}"; then - as_fn_error $? "conditional \"GL_GENERATE_FLOAT_H\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${GL_GENERATE_FNMATCH_H_TRUE}" && test -z "${GL_GENERATE_FNMATCH_H_FALSE}"; then - as_fn_error $? "conditional \"GL_GENERATE_FNMATCH_H\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${GL_GENERATE_FNMATCH_H_TRUE}" && test -z "${GL_GENERATE_FNMATCH_H_FALSE}"; then - as_fn_error $? "conditional \"GL_GENERATE_FNMATCH_H\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi if test -z "${GNU_MAKE_TRUE}" && test -z "${GNU_MAKE_FALSE}"; then as_fn_error $? "conditional \"GNU_MAKE\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi -if test -z "${GL_GENERATE_ICONV_H_TRUE}" && test -z "${GL_GENERATE_ICONV_H_FALSE}"; then - as_fn_error $? "conditional \"GL_GENERATE_ICONV_H\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${GL_GENERATE_ICONV_H_TRUE}" && test -z "${GL_GENERATE_ICONV_H_FALSE}"; then - as_fn_error $? "conditional \"GL_GENERATE_ICONV_H\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${GL_GENERATE_ICONV_H_TRUE}" && test -z "${GL_GENERATE_ICONV_H_FALSE}"; then - as_fn_error $? "conditional \"GL_GENERATE_ICONV_H\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${GL_GENERATE_LIMITS_H_TRUE}" && test -z "${GL_GENERATE_LIMITS_H_FALSE}"; then - as_fn_error $? "conditional \"GL_GENERATE_LIMITS_H\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${GL_GENERATE_LIMITS_H_TRUE}" && test -z "${GL_GENERATE_LIMITS_H_FALSE}"; then - as_fn_error $? "conditional \"GL_GENERATE_LIMITS_H\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${GL_GENERATE_STDINT_H_TRUE}" && test -z "${GL_GENERATE_STDINT_H_FALSE}"; then - as_fn_error $? "conditional \"GL_GENERATE_STDINT_H\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${GL_GENERATE_STDDEF_H_TRUE}" && test -z "${GL_GENERATE_STDDEF_H_FALSE}"; then - as_fn_error $? "conditional \"GL_GENERATE_STDDEF_H\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi CONFIG_INCLUDE=lib/config.h -if test -z "${GL_GENERATE_SIGSEGV_H_TRUE}" && test -z "${GL_GENERATE_SIGSEGV_H_FALSE}"; then - as_fn_error $? "conditional \"GL_GENERATE_SIGSEGV_H\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${GL_GENERATE_STDALIGN_H_TRUE}" && test -z "${GL_GENERATE_STDALIGN_H_FALSE}"; then - as_fn_error $? "conditional \"GL_GENERATE_STDALIGN_H\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${GL_GENERATE_STDARG_H_TRUE}" && test -z "${GL_GENERATE_STDARG_H_FALSE}"; then - as_fn_error $? "conditional \"GL_GENERATE_STDARG_H\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${GL_GENERATE_STDBOOL_H_TRUE}" && test -z "${GL_GENERATE_STDBOOL_H_FALSE}"; then - as_fn_error $? "conditional \"GL_GENERATE_STDBOOL_H\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${LIBUNISTRING_COMPILE_UNISTR_U8_MBTOUCR_TRUE}" && test -z "${LIBUNISTRING_COMPILE_UNISTR_U8_MBTOUCR_FALSE}"; then - as_fn_error $? "conditional \"LIBUNISTRING_COMPILE_UNISTR_U8_MBTOUCR\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${LIBUNISTRING_COMPILE_UNISTR_U8_UCTOMB_TRUE}" && test -z "${LIBUNISTRING_COMPILE_UNISTR_U8_UCTOMB_FALSE}"; then - as_fn_error $? "conditional \"LIBUNISTRING_COMPILE_UNISTR_U8_UCTOMB\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_TRUE}" && test -z "${LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_FALSE}"; then - as_fn_error $? "conditional \"LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi - gl_libobjs= gl_ltlibobjs= + gl_libobjdeps= if test -n "$gl_LIBOBJS"; then # Remove the extension. sed_drop_objext='s/\.o$//;s/\.obj$//' + sed_dirname1='s,//*,/,g' + sed_dirname2='s,\(.\)/$,\1,' + sed_dirname3='s,^[^/]*$,.,' + sed_dirname4='s,\(.\)/[^/]*$,\1,' + sed_basename1='s,.*/,,' for i in `for i in $gl_LIBOBJS; do echo "$i"; done | sed -e "$sed_drop_objext" | sort | uniq`; do gl_libobjs="$gl_libobjs $i.$ac_objext" gl_ltlibobjs="$gl_ltlibobjs $i.lo" + i_dir=`echo "$i" | sed -e "$sed_dirname1" -e "$sed_dirname2" -e "$sed_dirname3" -e "$sed_dirname4"` + i_base=`echo "$i" | sed -e "$sed_basename1"` + gl_libobjdeps="$gl_libobjdeps $i_dir/\$(DEPDIR)/$i_base.Po" done fi gl_LIBOBJS=$gl_libobjs gl_LTLIBOBJS=$gl_ltlibobjs + gl_LIBOBJDEPS=$gl_libobjdeps + + -if test -z "${GL_GENERATE_NETINET_IN_H_TRUE}" && test -z "${GL_GENERATE_NETINET_IN_H_FALSE}"; then - as_fn_error $? "conditional \"GL_GENERATE_NETINET_IN_H\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi gltests_libobjs= gltests_ltlibobjs= + gltests_libobjdeps= if test -n "$gltests_LIBOBJS"; then # Remove the extension. sed_drop_objext='s/\.o$//;s/\.obj$//' + sed_dirname1='s,//*,/,g' + sed_dirname2='s,\(.\)/$,\1,' + sed_dirname3='s,^[^/]*$,.,' + sed_dirname4='s,\(.\)/[^/]*$,\1,' + sed_basename1='s,.*/,,' for i in `for i in $gltests_LIBOBJS; do echo "$i"; done | sed -e "$sed_drop_objext" | sort | uniq`; do gltests_libobjs="$gltests_libobjs $i.$ac_objext" gltests_ltlibobjs="$gltests_ltlibobjs $i.lo" + i_dir=`echo "$i" | sed -e "$sed_dirname1" -e "$sed_dirname2" -e "$sed_dirname3" -e "$sed_dirname4"` + i_base=`echo "$i" | sed -e "$sed_basename1"` + gltests_libobjdeps="$gltests_libobjdeps $i_dir/\$(DEPDIR)/$i_base.Po" done fi gltests_LIBOBJS=$gltests_libobjs gltests_LTLIBOBJS=$gltests_ltlibobjs + gltests_LIBOBJDEPS=$gltests_libobjdeps + : "${CONFIG_STATUS=./config.status}" @@ -48582,7 +49532,6 @@ cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1 # Be more Bourne compatible DUALCASE=1; export DUALCASE # for MKS sh -as_nop=: if test ${ZSH_VERSION+y} && (emulate sh) >/dev/null 2>&1 then : emulate sh @@ -48591,12 +49540,13 @@ then : # is contrary to our usage. Disable this feature. alias -g '${1+"$@"}'='"$@"' setopt NO_GLOB_SUBST -else $as_nop - case `(set -o) 2>/dev/null` in #( +else case e in #( + e) case `(set -o) 2>/dev/null` in #( *posix*) : set -o posix ;; #( *) : ;; +esac ;; esac fi @@ -48668,7 +49618,7 @@ IFS=$as_save_IFS ;; esac -# We did not find ourselves, most probably we were run as `sh COMMAND' +# We did not find ourselves, most probably we were run as 'sh COMMAND' # in which case we are not to be found in the path. if test "x$as_myself" = x; then as_myself=$0 @@ -48697,7 +49647,6 @@ as_fn_error () } # as_fn_error - # as_fn_set_status STATUS # ----------------------- # Set $? to STATUS, without forking. @@ -48737,11 +49686,12 @@ then : { eval $1+=\$2 }' -else $as_nop - as_fn_append () +else case e in #( + e) as_fn_append () { eval $1=\$$1\$2 - } + } ;; +esac fi # as_fn_append # as_fn_arith ARG... @@ -48755,11 +49705,12 @@ then : { as_val=$(( $* )) }' -else $as_nop - as_fn_arith () +else case e in #( + e) as_fn_arith () { as_val=`expr "$@" || test $? -eq 1` - } + } ;; +esac fi # as_fn_arith @@ -48842,9 +49793,9 @@ if (echo >conf$$.file) 2>/dev/null; then if ln -s conf$$.file conf$$ 2>/dev/null; then as_ln_s='ln -s' # ... but there are two gotchas: - # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. - # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. - # In both cases, we have to default to `cp -pR'. + # 1) On MSYS, both 'ln -s file dir' and 'ln file dir' fail. + # 2) DJGPP < 2.04 has no symlinks; 'ln -s' creates a wrapper executable. + # In both cases, we have to default to 'cp -pR'. ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || as_ln_s='cp -pR' elif ln conf$$.file conf$$ 2>/dev/null; then @@ -48925,10 +49876,12 @@ as_test_x='test -x' as_executable_p=as_fn_executable_p # Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" +as_sed_cpp="y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g" +as_tr_cpp="eval sed '$as_sed_cpp'" # deprecated # Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" +as_sed_sh="y%*+%pp%;s%[^_$as_cr_alnum]%_%g" +as_tr_sh="eval sed '$as_sed_sh'" # deprecated exec 6>&1 @@ -48943,8 +49896,8 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by GNU diffutils $as_me 3.8, which was -generated by GNU Autoconf 2.71. Invocation command line was +This file was extended by GNU diffutils $as_me 3.10, which was +generated by GNU Autoconf 2.72c.20-9c018. Invocation command line was CONFIG_FILES = $CONFIG_FILES CONFIG_HEADERS = $CONFIG_HEADERS @@ -48977,7 +49930,7 @@ _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 ac_cs_usage="\ -\`$as_me' instantiates files and other configuration actions +'$as_me' instantiates files and other configuration actions from templates according to the current configuration. Unless the files and actions are specified as TAGs, all are instantiated by default. @@ -49017,11 +49970,11 @@ ac_cs_config_escaped=`printf "%s\n" "$ac_cs_config" | sed "s/^ //; s/'/'\\\\\\\\ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config='$ac_cs_config_escaped' ac_cs_version="\\ -GNU diffutils config.status 3.8 -configured by $0, generated by GNU Autoconf 2.71, +GNU diffutils config.status 3.10 +configured by $0, generated by GNU Autoconf 2.72c.20-9c018, with options \\"\$ac_cs_config\\" -Copyright (C) 2021 Free Software Foundation, Inc. +Copyright (C) 2023 Free Software Foundation, Inc. This config.status script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it." @@ -49083,8 +50036,8 @@ do ac_need_defaults=false;; --he | --h) # Conflict between --help and --header - as_fn_error $? "ambiguous option: \`$1' -Try \`$0 --help' for more information.";; + as_fn_error $? "ambiguous option: '$1' +Try '$0 --help' for more information.";; --help | --hel | -h ) printf "%s\n" "$ac_cs_usage"; exit ;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ @@ -49092,8 +50045,8 @@ Try \`$0 --help' for more information.";; ac_cs_silent=: ;; # This is an error. - -*) as_fn_error $? "unrecognized option: \`$1' -Try \`$0 --help' for more information." ;; + -*) as_fn_error $? "unrecognized option: '$1' +Try '$0 --help' for more information." ;; *) as_fn_append ac_config_targets " $1" ac_need_defaults=false ;; @@ -49167,7 +50120,7 @@ do "man/Makefile") CONFIG_FILES="$CONFIG_FILES man/Makefile" ;; "po/Makefile.in") CONFIG_FILES="$CONFIG_FILES po/Makefile.in" ;; - *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; + *) as_fn_error $? "invalid argument: '$ac_config_target'" "$LINENO" 5;; esac done @@ -49188,7 +50141,7 @@ fi # creating and moving files from /tmp can sometimes cause problems. # Hook for its removal unless debugging. # Note that there is a small window in which the directory will not be cleaned: -# after its creation but before its name has been assigned to `$tmp'. +# after its creation but before its name has been assigned to '$tmp'. $debug || { tmp= ac_tmp= @@ -49212,7 +50165,7 @@ ac_tmp=$tmp # Set up the scripts for CONFIG_FILES section. # No need to generate them if there are no CONFIG_FILES. -# This happens for instance with `./config.status config.h'. +# This happens for instance with './config.status config.h'. if test -n "$CONFIG_FILES"; then @@ -49370,13 +50323,13 @@ fi # test -n "$CONFIG_FILES" # Set up the scripts for CONFIG_HEADERS section. # No need to generate them if there are no CONFIG_HEADERS. -# This happens for instance with `./config.status Makefile'. +# This happens for instance with './config.status Makefile'. if test -n "$CONFIG_HEADERS"; then cat >"$ac_tmp/defines.awk" <<\_ACAWK || BEGIN { _ACEOF -# Transform confdefs.h into an awk script `defines.awk', embedded as +# Transform confdefs.h into an awk script 'defines.awk', embedded as # here-document in config.status, that substitutes the proper values into # config.h.in to produce config.h. @@ -49486,7 +50439,7 @@ do esac case $ac_mode$ac_tag in :[FHL]*:*);; - :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;; + :L* | :C*:*) as_fn_error $? "invalid tag '$ac_tag'" "$LINENO" 5;; :[FH]-) ac_tag=-:-;; :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; esac @@ -49508,19 +50461,19 @@ do -) ac_f="$ac_tmp/stdin";; *) # Look for the file first in the build tree, then in the source tree # (if the path is not absolute). The absolute path cannot be DOS-style, - # because $ac_f cannot contain `:'. + # because $ac_f cannot contain ':'. test -f "$ac_f" || case $ac_f in [\\/$]*) false;; *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; esac || - as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;; + as_fn_error 1 "cannot find input file: '$ac_f'" "$LINENO" 5;; esac case $ac_f in *\'*) ac_f=`printf "%s\n" "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac as_fn_append ac_file_inputs " '$ac_f'" done - # Let's still pretend it is `configure' which instantiates (i.e., don't + # Let's still pretend it is 'configure' which instantiates (i.e., don't # use $as_me), people would be surprised to read: # /* config.h. Generated by config.status. */ configure_input='Generated from '` @@ -49653,7 +50606,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 esac _ACEOF -# Neutralize VPATH when `$srcdir' = `.'. +# Neutralize VPATH when '$srcdir' = '.'. # Shell code in configure.ac might set extrasub. # FIXME: do we really want to maintain this feature? cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 @@ -49684,9 +50637,9 @@ test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } && { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \ "$ac_tmp/out"`; test -z "$ac_out"; } && - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable 'datarootdir' which seems to be undefined. Please make sure it is defined" >&5 -printf "%s\n" "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' +printf "%s\n" "$as_me: WARNING: $ac_file contains a reference to the variable 'datarootdir' which seems to be undefined. Please make sure it is defined" >&2;} rm -f "$ac_tmp/stdin" @@ -49872,15 +50825,15 @@ printf "%s\n" X/"$am_mf" | (exit $ac_status); } || am_rc=$? done if test $am_rc -ne 0; then - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in '$ac_pwd':" >&5 +printf "%s\n" "$as_me: error: in '$ac_pwd':" >&2;} as_fn_error $? "Something went wrong bootstrapping makefile fragments for automatic dependency tracking. If GNU make was not used, consider re-running the configure script with MAKE=\"gmake\" (or whatever is necessary). You can also try re-running configure with the '--disable-dependency-tracking' option to at least be able to build the package (albeit without support for automatic dependency tracking). -See \`config.log' for more details" "$LINENO" 5; } +See 'config.log' for more details" "$LINENO" 5; } fi { am_dirpart=; unset am_dirpart;} { am_filepart=; unset am_filepart;} diff --git a/configure.ac b/configure.ac index 73adb80..9e822dd 100644 --- a/configure.ac +++ b/configure.ac @@ -1,6 +1,6 @@ # Configure template for GNU Diffutils. -# Copyright (C) 1994-1995, 1998, 2001-2002, 2004, 2006, 2009-2013, 2015-2021 +# Copyright (C) 1994-1995, 1998, 2001-2002, 2004, 2006, 2009-2013, 2015-2023 # Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify @@ -84,7 +84,8 @@ if test "$gl_gcc_warnings" = yes; then AC_SUBST([WARN_CFLAGS]) - AC_DEFINE([lint], [1], [Define to 1 if the compiler is checking for lint.]) + AC_DEFINE([GCC_LINT], [1], + [Define to 1 if the compiler is checking for lint.]) AC_DEFINE([_FORTIFY_SOURCE], [2], [enable compile-time and run-time bounds-checking, and some warnings]) AC_DEFINE([GNULIB_PORTCHECK], [1], [enable some gnulib portability checks]) @@ -96,10 +97,6 @@ if test "$gl_gcc_warnings" = yes; then nw="$nw -Wsuggest-attribute=pure" nw="$nw -Wduplicated-branches" # Too many false alarms - # Avoid false alarm in lib/vasnprintf.c. - # https://lists.gnu.org/r/bug-gnulib/2021-01/msg00031.html - gl_WARN_ADD([-Wno-analyzer-null-argument]) - gl_MANYWARN_COMPLEMENT([GNULIB_WARN_CFLAGS], [$WARN_CFLAGS], [$nw]) AC_SUBST([GNULIB_WARN_CFLAGS]) fi diff --git a/doc/Makefile.am b/doc/Makefile.am index 7138d76..300617e 100644 --- a/doc/Makefile.am +++ b/doc/Makefile.am @@ -1,6 +1,6 @@ # Makefile for GNU diffutils documentation. -# Copyright (C) 2001-2002, 2009-2013, 2015-2021 Free Software Foundation, Inc. +# Copyright (C) 2001-2002, 2009-2013, 2015-2023 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff --git a/doc/Makefile.in b/doc/Makefile.in index 1133c58..95178aa 100644 --- a/doc/Makefile.in +++ b/doc/Makefile.in @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.16d from Makefile.am. +# Makefile.in generated by automake 1.16i from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2021 Free Software Foundation, Inc. +# Copyright (C) 1994-2023 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -16,7 +16,7 @@ # Makefile for GNU diffutils documentation. -# Copyright (C) 2001-2002, 2009-2013, 2015-2021 Free Software Foundation, Inc. +# Copyright (C) 2001-2002, 2009-2013, 2015-2023 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -86,6 +86,8 @@ am__make_running_with_option = \ test $$has_opt = yes am__make_dryrun = (target_option=n; $(am__make_running_with_option)) am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +am__rm_f = rm -f $(am__rm_f_notfound) +am__rm_rf = rm -rf $(am__rm_f_notfound) pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ @@ -110,19 +112,22 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/__inline.m4 \ $(top_srcdir)/m4/absolute-header.m4 $(top_srcdir)/m4/alloca.m4 \ $(top_srcdir)/m4/arpa_inet_h.m4 \ - $(top_srcdir)/m4/asm-underscore.m4 $(top_srcdir)/m4/atoll.m4 \ + $(top_srcdir)/m4/asm-underscore.m4 \ + $(top_srcdir)/m4/assert_h.m4 $(top_srcdir)/m4/atoll.m4 \ $(top_srcdir)/m4/btowc.m4 $(top_srcdir)/m4/builtin-expect.m4 \ - $(top_srcdir)/m4/c-stack.m4 $(top_srcdir)/m4/calloc.m4 \ - $(top_srcdir)/m4/clock_time.m4 $(top_srcdir)/m4/close.m4 \ - $(top_srcdir)/m4/codeset.m4 $(top_srcdir)/m4/config-h.m4 \ - $(top_srcdir)/m4/ctype_h.m4 \ + $(top_srcdir)/m4/c-bool.m4 $(top_srcdir)/m4/c-stack.m4 \ + $(top_srcdir)/m4/calloc.m4 $(top_srcdir)/m4/clock_time.m4 \ + $(top_srcdir)/m4/close.m4 $(top_srcdir)/m4/codeset.m4 \ + $(top_srcdir)/m4/config-h.m4 $(top_srcdir)/m4/ctype_h.m4 \ $(top_srcdir)/m4/double-slash-root.m4 $(top_srcdir)/m4/dup2.m4 \ $(top_srcdir)/m4/eealloc.m4 $(top_srcdir)/m4/environ.m4 \ $(top_srcdir)/m4/errno_h.m4 $(top_srcdir)/m4/error.m4 \ - $(top_srcdir)/m4/exponentd.m4 $(top_srcdir)/m4/extensions.m4 \ - $(top_srcdir)/m4/extern-inline.m4 $(top_srcdir)/m4/fcntl-o.m4 \ - $(top_srcdir)/m4/fcntl.m4 $(top_srcdir)/m4/fcntl_h.m4 \ - $(top_srcdir)/m4/fdopen.m4 $(top_srcdir)/m4/filenamecat.m4 \ + $(top_srcdir)/m4/error_h.m4 $(top_srcdir)/m4/exponentd.m4 \ + $(top_srcdir)/m4/extensions.m4 \ + $(top_srcdir)/m4/extern-inline.m4 $(top_srcdir)/m4/fclose.m4 \ + $(top_srcdir)/m4/fcntl-o.m4 $(top_srcdir)/m4/fcntl.m4 \ + $(top_srcdir)/m4/fcntl_h.m4 $(top_srcdir)/m4/fdopen.m4 \ + $(top_srcdir)/m4/fflush.m4 $(top_srcdir)/m4/filenamecat.m4 \ $(top_srcdir)/m4/flexmember.m4 $(top_srcdir)/m4/float_h.m4 \ $(top_srcdir)/m4/fnmatch.m4 $(top_srcdir)/m4/fnmatch_h.m4 \ $(top_srcdir)/m4/fopen.m4 $(top_srcdir)/m4/fpieee.m4 \ @@ -138,15 +143,16 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/host-cpu-c-abi.m4 $(top_srcdir)/m4/iconv.m4 \ $(top_srcdir)/m4/iconv_h.m4 $(top_srcdir)/m4/iconv_open.m4 \ $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inet_pton.m4 \ - $(top_srcdir)/m4/inline.m4 $(top_srcdir)/m4/intlmacosx.m4 \ - $(top_srcdir)/m4/intmax_t.m4 $(top_srcdir)/m4/inttostr.m4 \ - $(top_srcdir)/m4/inttypes.m4 $(top_srcdir)/m4/inttypes_h.m4 \ - $(top_srcdir)/m4/ioctl.m4 $(top_srcdir)/m4/isblank.m4 \ - $(top_srcdir)/m4/iswblank.m4 $(top_srcdir)/m4/iswdigit.m4 \ - $(top_srcdir)/m4/iswxdigit.m4 $(top_srcdir)/m4/langinfo_h.m4 \ - $(top_srcdir)/m4/largefile.m4 $(top_srcdir)/m4/lib-ld.m4 \ - $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ - $(top_srcdir)/m4/libsigsegv.m4 \ + $(top_srcdir)/m4/inline.m4 \ + $(top_srcdir)/m4/intl-thread-locale.m4 \ + $(top_srcdir)/m4/intlmacosx.m4 $(top_srcdir)/m4/intmax_t.m4 \ + $(top_srcdir)/m4/inttostr.m4 $(top_srcdir)/m4/inttypes.m4 \ + $(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/ioctl.m4 \ + $(top_srcdir)/m4/isblank.m4 $(top_srcdir)/m4/iswblank.m4 \ + $(top_srcdir)/m4/iswdigit.m4 $(top_srcdir)/m4/iswxdigit.m4 \ + $(top_srcdir)/m4/langinfo_h.m4 $(top_srcdir)/m4/largefile.m4 \ + $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ + $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libsigsegv.m4 \ $(top_srcdir)/m4/libunistring-base.m4 \ $(top_srcdir)/m4/limits-h.m4 $(top_srcdir)/m4/localcharset.m4 \ $(top_srcdir)/m4/locale-fr.m4 $(top_srcdir)/m4/locale-ja.m4 \ @@ -168,11 +174,13 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/netinet_in_h.m4 \ $(top_srcdir)/m4/nl_langinfo.m4 $(top_srcdir)/m4/nls.m4 \ $(top_srcdir)/m4/nocrash.m4 $(top_srcdir)/m4/nstrftime.m4 \ - $(top_srcdir)/m4/off_t.m4 $(top_srcdir)/m4/open-cloexec.m4 \ + $(top_srcdir)/m4/nullptr.m4 $(top_srcdir)/m4/off_t.m4 \ + $(top_srcdir)/m4/open-cloexec.m4 \ $(top_srcdir)/m4/open-slash.m4 $(top_srcdir)/m4/open.m4 \ - $(top_srcdir)/m4/pathmax.m4 $(top_srcdir)/m4/perror.m4 \ - $(top_srcdir)/m4/pipe.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/printf.m4 $(top_srcdir)/m4/progtest.m4 \ + $(top_srcdir)/m4/pathmax.m4 $(top_srcdir)/m4/perl.m4 \ + $(top_srcdir)/m4/perror.m4 $(top_srcdir)/m4/pipe.m4 \ + $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/printf.m4 \ + $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/pselect.m4 \ $(top_srcdir)/m4/pthread-thread.m4 \ $(top_srcdir)/m4/pthread_h.m4 \ $(top_srcdir)/m4/pthread_rwlock_rdlock.m4 \ @@ -183,9 +191,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/reallocarray.m4 $(top_srcdir)/m4/regex.m4 \ $(top_srcdir)/m4/sched_h.m4 $(top_srcdir)/m4/select.m4 \ $(top_srcdir)/m4/setenv.m4 $(top_srcdir)/m4/setlocale_null.m4 \ - $(top_srcdir)/m4/sigaction.m4 $(top_srcdir)/m4/sigaltstack.m4 \ - $(top_srcdir)/m4/signal_h.m4 \ - $(top_srcdir)/m4/signalblocking.m4 \ + $(top_srcdir)/m4/sigaltstack.m4 $(top_srcdir)/m4/signal_h.m4 \ + $(top_srcdir)/m4/signalblocking.m4 $(top_srcdir)/m4/sigsegv.m4 \ $(top_srcdir)/m4/size_max.m4 $(top_srcdir)/m4/sleep.m4 \ $(top_srcdir)/m4/snprintf.m4 $(top_srcdir)/m4/socketlib.m4 \ $(top_srcdir)/m4/sockets.m4 $(top_srcdir)/m4/socklen.m4 \ @@ -193,9 +200,9 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/stack-direction.m4 \ $(top_srcdir)/m4/stat-time.m4 $(top_srcdir)/m4/stat.m4 \ $(top_srcdir)/m4/stdalign.m4 $(top_srcdir)/m4/stdarg.m4 \ - $(top_srcdir)/m4/stdbool.m4 $(top_srcdir)/m4/stddef_h.m4 \ - $(top_srcdir)/m4/stdint.m4 $(top_srcdir)/m4/stdint_h.m4 \ - $(top_srcdir)/m4/stdio_h.m4 $(top_srcdir)/m4/stdlib_h.m4 \ + $(top_srcdir)/m4/stddef_h.m4 $(top_srcdir)/m4/stdint.m4 \ + $(top_srcdir)/m4/stdint_h.m4 $(top_srcdir)/m4/stdio_h.m4 \ + $(top_srcdir)/m4/stdlib_h.m4 $(top_srcdir)/m4/stpcpy.m4 \ $(top_srcdir)/m4/strcase.m4 $(top_srcdir)/m4/strerror.m4 \ $(top_srcdir)/m4/strerror_r.m4 $(top_srcdir)/m4/string_h.m4 \ $(top_srcdir)/m4/strings_h.m4 $(top_srcdir)/m4/strnlen.m4 \ @@ -209,12 +216,12 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/sys_types_h.m4 $(top_srcdir)/m4/sys_uio_h.m4 \ $(top_srcdir)/m4/sys_wait_h.m4 $(top_srcdir)/m4/tempname.m4 \ $(top_srcdir)/m4/thread.m4 $(top_srcdir)/m4/threadlib.m4 \ - $(top_srcdir)/m4/time_h.m4 $(top_srcdir)/m4/time_r.m4 \ - $(top_srcdir)/m4/time_rz.m4 $(top_srcdir)/m4/timegm.m4 \ - $(top_srcdir)/m4/timespec.m4 $(top_srcdir)/m4/tm_gmtoff.m4 \ - $(top_srcdir)/m4/tzset.m4 $(top_srcdir)/m4/unistd_h.m4 \ - $(top_srcdir)/m4/unlocked-io.m4 $(top_srcdir)/m4/vasnprintf.m4 \ - $(top_srcdir)/m4/vasprintf.m4 $(top_srcdir)/m4/version-etc.m4 \ + $(top_srcdir)/m4/time.m4 $(top_srcdir)/m4/time_h.m4 \ + $(top_srcdir)/m4/time_r.m4 $(top_srcdir)/m4/time_rz.m4 \ + $(top_srcdir)/m4/timegm.m4 $(top_srcdir)/m4/timespec.m4 \ + $(top_srcdir)/m4/tm_gmtoff.m4 $(top_srcdir)/m4/tzset.m4 \ + $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/unlocked-io.m4 \ + $(top_srcdir)/m4/vasnprintf.m4 $(top_srcdir)/m4/version-etc.m4 \ $(top_srcdir)/m4/visibility.m4 $(top_srcdir)/m4/warn-on-use.m4 \ $(top_srcdir)/m4/warnings.m4 $(top_srcdir)/m4/wchar_h.m4 \ $(top_srcdir)/m4/wchar_t.m4 $(top_srcdir)/m4/wcrtomb.m4 \ @@ -223,7 +230,6 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/wint_t.m4 $(top_srcdir)/m4/wmemchr.m4 \ $(top_srcdir)/m4/wmempcpy.m4 $(top_srcdir)/m4/xalloc.m4 \ $(top_srcdir)/m4/xsize.m4 $(top_srcdir)/m4/xstrtol.m4 \ - $(top_srcdir)/m4/xvasprintf.m4 $(top_srcdir)/m4/year2038.m4 \ $(top_srcdir)/m4/zzgnulib.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) @@ -316,10 +322,9 @@ am__base_list = \ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' am__uninstall_files_from_dir = { \ - test -z "$$files" \ - || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ - || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ - $(am__cd) "$$dir" && rm -f $$files; }; \ + { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ + || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ + $(am__cd) "$$dir" && echo $$files | $(am__xargs_n) 40 $(am__rm_f); }; \ } am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) am__DIST_COMMON = $(diffutils_TEXINFOS) $(srcdir)/Makefile.in \ @@ -334,6 +339,7 @@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APPLE_UNIVERSAL_BUILD = @APPLE_UNIVERSAL_BUILD@ AR = @AR@ ARFLAGS = @ARFLAGS@ +ASSERT_H = @ASSERT_H@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ @@ -347,6 +353,7 @@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CFLAG_VISIBILITY = @CFLAG_VISIBILITY@ +CLOCK_TIME_LIB = @CLOCK_TIME_LIB@ CONFIG_INCLUDE = @CONFIG_INCLUDE@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ @@ -358,7 +365,6 @@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ -EGREP = @EGREP@ EMULTIHOP_HIDDEN = @EMULTIHOP_HIDDEN@ EMULTIHOP_VALUE = @EMULTIHOP_VALUE@ ENOLINK_HIDDEN = @ENOLINK_HIDDEN@ @@ -366,14 +372,17 @@ ENOLINK_VALUE = @ENOLINK_VALUE@ EOVERFLOW_HIDDEN = @EOVERFLOW_HIDDEN@ EOVERFLOW_VALUE = @EOVERFLOW_VALUE@ ERRNO_H = @ERRNO_H@ +ERROR_H = @ERROR_H@ ETAGS = @ETAGS@ EXEEXT = @EXEEXT@ FLOAT_H = @FLOAT_H@ FNMATCH_H = @FNMATCH_H@ GETOPT_CDEFS_H = @GETOPT_CDEFS_H@ GETOPT_H = @GETOPT_H@ +GETRANDOM_LIB = @GETRANDOM_LIB@ GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ GL_CFLAG_ALLOW_WARNINGS = @GL_CFLAG_ALLOW_WARNINGS@ +GL_CFLAG_GNULIB_WARNINGS = @GL_CFLAG_GNULIB_WARNINGS@ GL_CXXFLAG_ALLOW_WARNINGS = @GL_CXXFLAG_ALLOW_WARNINGS@ GL_GNULIB_ACCEPT = @GL_GNULIB_ACCEPT@ GL_GNULIB_ACCEPT4 = @GL_GNULIB_ACCEPT4@ @@ -382,9 +391,11 @@ GL_GNULIB_ALIGNED_ALLOC = @GL_GNULIB_ALIGNED_ALLOC@ GL_GNULIB_ATOLL = @GL_GNULIB_ATOLL@ GL_GNULIB_BIND = @GL_GNULIB_BIND@ GL_GNULIB_BTOWC = @GL_GNULIB_BTOWC@ +GL_GNULIB_CALLOC_GNU = @GL_GNULIB_CALLOC_GNU@ GL_GNULIB_CALLOC_POSIX = @GL_GNULIB_CALLOC_POSIX@ GL_GNULIB_CANONICALIZE_FILE_NAME = @GL_GNULIB_CANONICALIZE_FILE_NAME@ GL_GNULIB_CHDIR = @GL_GNULIB_CHDIR@ +GL_GNULIB_CHMOD = @GL_GNULIB_CHMOD@ GL_GNULIB_CHOWN = @GL_GNULIB_CHOWN@ GL_GNULIB_CLOSE = @GL_GNULIB_CLOSE@ GL_GNULIB_CONNECT = @GL_GNULIB_CONNECT@ @@ -422,6 +433,7 @@ GL_GNULIB_FGETC = @GL_GNULIB_FGETC@ GL_GNULIB_FGETS = @GL_GNULIB_FGETS@ GL_GNULIB_FNMATCH = @GL_GNULIB_FNMATCH@ GL_GNULIB_FOPEN = @GL_GNULIB_FOPEN@ +GL_GNULIB_FOPEN_GNU = @GL_GNULIB_FOPEN_GNU@ GL_GNULIB_FPRINTF = @GL_GNULIB_FPRINTF@ GL_GNULIB_FPRINTF_POSIX = @GL_GNULIB_FPRINTF_POSIX@ GL_GNULIB_FPURGE = @GL_GNULIB_FPURGE@ @@ -457,7 +469,9 @@ GL_GNULIB_GETLOGIN_R = @GL_GNULIB_GETLOGIN_R@ GL_GNULIB_GETOPT_POSIX = @GL_GNULIB_GETOPT_POSIX@ GL_GNULIB_GETPAGESIZE = @GL_GNULIB_GETPAGESIZE@ GL_GNULIB_GETPASS = @GL_GNULIB_GETPASS@ +GL_GNULIB_GETPASS_GNU = @GL_GNULIB_GETPASS_GNU@ GL_GNULIB_GETPEERNAME = @GL_GNULIB_GETPEERNAME@ +GL_GNULIB_GETPROGNAME = @GL_GNULIB_GETPROGNAME@ GL_GNULIB_GETRANDOM = @GL_GNULIB_GETRANDOM@ GL_GNULIB_GETSOCKNAME = @GL_GNULIB_GETSOCKNAME@ GL_GNULIB_GETSOCKOPT = @GL_GNULIB_GETSOCKOPT@ @@ -489,6 +503,7 @@ GL_GNULIB_LOCALENAME = @GL_GNULIB_LOCALENAME@ GL_GNULIB_LOCALTIME = @GL_GNULIB_LOCALTIME@ GL_GNULIB_LSEEK = @GL_GNULIB_LSEEK@ GL_GNULIB_LSTAT = @GL_GNULIB_LSTAT@ +GL_GNULIB_MALLOC_GNU = @GL_GNULIB_MALLOC_GNU@ GL_GNULIB_MALLOC_POSIX = @GL_GNULIB_MALLOC_POSIX@ GL_GNULIB_MBRLEN = @GL_GNULIB_MBRLEN@ GL_GNULIB_MBRTOWC = @GL_GNULIB_MBRTOWC@ @@ -509,6 +524,7 @@ GL_GNULIB_MBSSEP = @GL_GNULIB_MBSSEP@ GL_GNULIB_MBSSPN = @GL_GNULIB_MBSSPN@ GL_GNULIB_MBSSTR = @GL_GNULIB_MBSSTR@ GL_GNULIB_MBSTOK_R = @GL_GNULIB_MBSTOK_R@ +GL_GNULIB_MBSTOWCS = @GL_GNULIB_MBSTOWCS@ GL_GNULIB_MBTOWC = @GL_GNULIB_MBTOWC@ GL_GNULIB_MDA_ACCESS = @GL_GNULIB_MDA_ACCESS@ GL_GNULIB_MDA_CHDIR = @GL_GNULIB_MDA_CHDIR@ @@ -555,6 +571,7 @@ GL_GNULIB_MEMCHR = @GL_GNULIB_MEMCHR@ GL_GNULIB_MEMMEM = @GL_GNULIB_MEMMEM@ GL_GNULIB_MEMPCPY = @GL_GNULIB_MEMPCPY@ GL_GNULIB_MEMRCHR = @GL_GNULIB_MEMRCHR@ +GL_GNULIB_MEMSET_EXPLICIT = @GL_GNULIB_MEMSET_EXPLICIT@ GL_GNULIB_MKDIR = @GL_GNULIB_MKDIR@ GL_GNULIB_MKDIRAT = @GL_GNULIB_MKDIRAT@ GL_GNULIB_MKDTEMP = @GL_GNULIB_MKDTEMP@ @@ -611,6 +628,7 @@ GL_GNULIB_READ = @GL_GNULIB_READ@ GL_GNULIB_READLINK = @GL_GNULIB_READLINK@ GL_GNULIB_READLINKAT = @GL_GNULIB_READLINKAT@ GL_GNULIB_REALLOCARRAY = @GL_GNULIB_REALLOCARRAY@ +GL_GNULIB_REALLOC_GNU = @GL_GNULIB_REALLOC_GNU@ GL_GNULIB_REALLOC_POSIX = @GL_GNULIB_REALLOC_POSIX@ GL_GNULIB_REALPATH = @GL_GNULIB_REALPATH@ GL_GNULIB_RECV = @GL_GNULIB_RECV@ @@ -674,8 +692,10 @@ GL_GNULIB_STRVERSCMP = @GL_GNULIB_STRVERSCMP@ GL_GNULIB_SYMLINK = @GL_GNULIB_SYMLINK@ GL_GNULIB_SYMLINKAT = @GL_GNULIB_SYMLINKAT@ GL_GNULIB_SYSTEM_POSIX = @GL_GNULIB_SYSTEM_POSIX@ +GL_GNULIB_TIME = @GL_GNULIB_TIME@ GL_GNULIB_TIMEGM = @GL_GNULIB_TIMEGM@ GL_GNULIB_TIMESPEC_GET = @GL_GNULIB_TIMESPEC_GET@ +GL_GNULIB_TIMESPEC_GETRES = @GL_GNULIB_TIMESPEC_GETRES@ GL_GNULIB_TIME_R = @GL_GNULIB_TIME_R@ GL_GNULIB_TIME_RZ = @GL_GNULIB_TIME_RZ@ GL_GNULIB_TMPFILE = @GL_GNULIB_TMPFILE@ @@ -749,6 +769,7 @@ GNULIBHEADERS_OVERRIDE_WINT_T = @GNULIBHEADERS_OVERRIDE_WINT_T@ GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@ GNULIB_WARN_CFLAGS = @GNULIB_WARN_CFLAGS@ GREP = @GREP@ +HARD_LOCALE_LIB = @HARD_LOCALE_LIB@ HAVE_ACCEPT4 = @HAVE_ACCEPT4@ HAVE_ALIGNED_ALLOC = @HAVE_ALIGNED_ALLOC@ HAVE_ALLOCA_H = @HAVE_ALLOCA_H@ @@ -779,6 +800,7 @@ HAVE_DECL_GETLOGIN = @HAVE_DECL_GETLOGIN@ HAVE_DECL_GETLOGIN_R = @HAVE_DECL_GETLOGIN_R@ HAVE_DECL_GETPAGESIZE = @HAVE_DECL_GETPAGESIZE@ HAVE_DECL_GETUSERSHELL = @HAVE_DECL_GETUSERSHELL@ +HAVE_DECL_GETW = @HAVE_DECL_GETW@ HAVE_DECL_IMAXABS = @HAVE_DECL_IMAXABS@ HAVE_DECL_IMAXDIV = @HAVE_DECL_IMAXDIV@ HAVE_DECL_INET_NTOP = @HAVE_DECL_INET_NTOP@ @@ -788,6 +810,8 @@ HAVE_DECL_LOCALTIME_R = @HAVE_DECL_LOCALTIME_R@ HAVE_DECL_MEMMEM = @HAVE_DECL_MEMMEM@ HAVE_DECL_MEMRCHR = @HAVE_DECL_MEMRCHR@ HAVE_DECL_OBSTACK_PRINTF = @HAVE_DECL_OBSTACK_PRINTF@ +HAVE_DECL_PROGRAM_INVOCATION_NAME = @HAVE_DECL_PROGRAM_INVOCATION_NAME@ +HAVE_DECL_PUTW = @HAVE_DECL_PUTW@ HAVE_DECL_SETENV = @HAVE_DECL_SETENV@ HAVE_DECL_SETHOSTNAME = @HAVE_DECL_SETHOSTNAME@ HAVE_DECL_SETSTATE = @HAVE_DECL_SETSTATE@ @@ -811,6 +835,9 @@ HAVE_DECL_WCWIDTH = @HAVE_DECL_WCWIDTH@ HAVE_DPRINTF = @HAVE_DPRINTF@ HAVE_DUP3 = @HAVE_DUP3@ HAVE_DUPLOCALE = @HAVE_DUPLOCALE@ +HAVE_ERROR = @HAVE_ERROR@ +HAVE_ERROR_AT_LINE = @HAVE_ERROR_AT_LINE@ +HAVE_ERROR_H = @HAVE_ERROR_H@ HAVE_EUIDACCESS = @HAVE_EUIDACCESS@ HAVE_EXECVPE = @HAVE_EXECVPE@ HAVE_EXPLICIT_BZERO = @HAVE_EXPLICIT_BZERO@ @@ -841,12 +868,15 @@ HAVE_GETLOGIN = @HAVE_GETLOGIN@ HAVE_GETOPT_H = @HAVE_GETOPT_H@ HAVE_GETPAGESIZE = @HAVE_GETPAGESIZE@ HAVE_GETPASS = @HAVE_GETPASS@ +HAVE_GETPROGNAME = @HAVE_GETPROGNAME@ HAVE_GETRANDOM = @HAVE_GETRANDOM@ HAVE_GETSUBOPT = @HAVE_GETSUBOPT@ HAVE_GETTIMEOFDAY = @HAVE_GETTIMEOFDAY@ HAVE_GETUMASK = @HAVE_GETUMASK@ HAVE_GRANTPT = @HAVE_GRANTPT@ HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@ +HAVE_IMAXABS = @HAVE_IMAXABS@ +HAVE_IMAXDIV = @HAVE_IMAXDIV@ HAVE_IMAXDIV_T = @HAVE_IMAXDIV_T@ HAVE_INITSTATE = @HAVE_INITSTATE@ HAVE_INTTYPES_H = @HAVE_INTTYPES_H@ @@ -874,6 +904,7 @@ HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@ HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@ HAVE_MBTOWC = @HAVE_MBTOWC@ HAVE_MEMPCPY = @HAVE_MEMPCPY@ +HAVE_MEMSET_EXPLICIT = @HAVE_MEMSET_EXPLICIT@ HAVE_MKDIRAT = @HAVE_MKDIRAT@ HAVE_MKDTEMP = @HAVE_MKDTEMP@ HAVE_MKFIFO = @HAVE_MKFIFO@ @@ -1031,9 +1062,11 @@ HAVE_SYS_TYPES_H = @HAVE_SYS_TYPES_H@ HAVE_SYS_UIO_H = @HAVE_SYS_UIO_H@ HAVE_TIMEGM = @HAVE_TIMEGM@ HAVE_TIMESPEC_GET = @HAVE_TIMESPEC_GET@ +HAVE_TIMESPEC_GETRES = @HAVE_TIMESPEC_GETRES@ HAVE_TIMEZONE_T = @HAVE_TIMEZONE_T@ HAVE_TYPE_VOLATILE_SIG_ATOMIC_T = @HAVE_TYPE_VOLATILE_SIG_ATOMIC_T@ HAVE_UNISTD_H = @HAVE_UNISTD_H@ +HAVE_UNISTRING_WOE32DLL_H = @HAVE_UNISTRING_WOE32DLL_H@ HAVE_UNLINKAT = @HAVE_UNLINKAT@ HAVE_UNLOCKPT = @HAVE_UNLOCKPT@ HAVE_USLEEP = @HAVE_USLEEP@ @@ -1083,7 +1116,6 @@ HAVE_WMEMPCPY = @HAVE_WMEMPCPY@ HAVE_WMEMSET = @HAVE_WMEMSET@ HAVE_WS2TCPIP_H = @HAVE_WS2TCPIP_H@ HAVE_XLOCALE_H = @HAVE_XLOCALE_H@ -HAVE__BOOL = @HAVE__BOOL@ HAVE__EXIT = @HAVE__EXIT@ HELP2MAN = @HELP2MAN@ HOST_CPU = @HOST_CPU@ @@ -1149,15 +1181,20 @@ LTLIBOBJS = @LTLIBOBJS@ LTLIBSIGSEGV = @LTLIBSIGSEGV@ LTLIBTHREAD = @LTLIBTHREAD@ MAKEINFO = @MAKEINFO@ +MBRTOWC_LIB = @MBRTOWC_LIB@ MKDIR_P = @MKDIR_P@ MSGFMT = @MSGFMT@ MSGFMT_015 = @MSGFMT_015@ MSGMERGE = @MSGMERGE@ +NANOSLEEP_LIB = @NANOSLEEP_LIB@ NETINET_IN_H = @NETINET_IN_H@ NEXT_ARPA_INET_H = @NEXT_ARPA_INET_H@ +NEXT_ASSERT_H = @NEXT_ASSERT_H@ NEXT_AS_FIRST_DIRECTIVE_ARPA_INET_H = @NEXT_AS_FIRST_DIRECTIVE_ARPA_INET_H@ +NEXT_AS_FIRST_DIRECTIVE_ASSERT_H = @NEXT_AS_FIRST_DIRECTIVE_ASSERT_H@ NEXT_AS_FIRST_DIRECTIVE_CTYPE_H = @NEXT_AS_FIRST_DIRECTIVE_CTYPE_H@ NEXT_AS_FIRST_DIRECTIVE_ERRNO_H = @NEXT_AS_FIRST_DIRECTIVE_ERRNO_H@ +NEXT_AS_FIRST_DIRECTIVE_ERROR_H = @NEXT_AS_FIRST_DIRECTIVE_ERROR_H@ NEXT_AS_FIRST_DIRECTIVE_FCNTL_H = @NEXT_AS_FIRST_DIRECTIVE_FCNTL_H@ NEXT_AS_FIRST_DIRECTIVE_FLOAT_H = @NEXT_AS_FIRST_DIRECTIVE_FLOAT_H@ NEXT_AS_FIRST_DIRECTIVE_FNMATCH_H = @NEXT_AS_FIRST_DIRECTIVE_FNMATCH_H@ @@ -1193,6 +1230,7 @@ NEXT_AS_FIRST_DIRECTIVE_WCHAR_H = @NEXT_AS_FIRST_DIRECTIVE_WCHAR_H@ NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H = @NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H@ NEXT_CTYPE_H = @NEXT_CTYPE_H@ NEXT_ERRNO_H = @NEXT_ERRNO_H@ +NEXT_ERROR_H = @NEXT_ERROR_H@ NEXT_FCNTL_H = @NEXT_FCNTL_H@ NEXT_FLOAT_H = @NEXT_FLOAT_H@ NEXT_FNMATCH_H = @NEXT_FNMATCH_H@ @@ -1235,27 +1273,35 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ POSUB = @POSUB@ PRAGMA_COLUMNS = @PRAGMA_COLUMNS@ PRAGMA_SYSTEM_HEADER = @PRAGMA_SYSTEM_HEADER@ PRIPTR_PREFIX = @PRIPTR_PREFIX@ PR_PROGRAM = @PR_PROGRAM@ PTHREAD_H_DEFINES_STRUCT_TIMESPEC = @PTHREAD_H_DEFINES_STRUCT_TIMESPEC@ +PTHREAD_SIGMASK_LIB = @PTHREAD_SIGMASK_LIB@ PTRDIFF_T_SUFFIX = @PTRDIFF_T_SUFFIX@ RANLIB = @RANLIB@ REPLACE_ACCESS = @REPLACE_ACCESS@ REPLACE_ALIGNED_ALLOC = @REPLACE_ALIGNED_ALLOC@ REPLACE_BTOWC = @REPLACE_BTOWC@ -REPLACE_CALLOC = @REPLACE_CALLOC@ +REPLACE_CALLOC_FOR_CALLOC_GNU = @REPLACE_CALLOC_FOR_CALLOC_GNU@ +REPLACE_CALLOC_FOR_CALLOC_POSIX = @REPLACE_CALLOC_FOR_CALLOC_POSIX@ REPLACE_CANONICALIZE_FILE_NAME = @REPLACE_CANONICALIZE_FILE_NAME@ +REPLACE_CHMOD = @REPLACE_CHMOD@ REPLACE_CHOWN = @REPLACE_CHOWN@ REPLACE_CLOSE = @REPLACE_CLOSE@ +REPLACE_COPY_FILE_RANGE = @REPLACE_COPY_FILE_RANGE@ REPLACE_CREAT = @REPLACE_CREAT@ REPLACE_CTIME = @REPLACE_CTIME@ REPLACE_DPRINTF = @REPLACE_DPRINTF@ REPLACE_DUP = @REPLACE_DUP@ REPLACE_DUP2 = @REPLACE_DUP2@ +REPLACE_DUP3 = @REPLACE_DUP3@ REPLACE_DUPLOCALE = @REPLACE_DUPLOCALE@ +REPLACE_ERROR = @REPLACE_ERROR@ +REPLACE_ERROR_AT_LINE = @REPLACE_ERROR_AT_LINE@ REPLACE_EXECL = @REPLACE_EXECL@ REPLACE_EXECLE = @REPLACE_EXECLE@ REPLACE_EXECLP = @REPLACE_EXECLP@ @@ -1268,11 +1314,13 @@ REPLACE_FCHMODAT = @REPLACE_FCHMODAT@ REPLACE_FCHOWNAT = @REPLACE_FCHOWNAT@ REPLACE_FCLOSE = @REPLACE_FCLOSE@ REPLACE_FCNTL = @REPLACE_FCNTL@ +REPLACE_FDATASYNC = @REPLACE_FDATASYNC@ REPLACE_FDOPEN = @REPLACE_FDOPEN@ REPLACE_FFLUSH = @REPLACE_FFLUSH@ REPLACE_FFSLL = @REPLACE_FFSLL@ REPLACE_FNMATCH = @REPLACE_FNMATCH@ REPLACE_FOPEN = @REPLACE_FOPEN@ +REPLACE_FOPEN_FOR_FOPEN_GNU = @REPLACE_FOPEN_FOR_FOPEN_GNU@ REPLACE_FPRINTF = @REPLACE_FPRINTF@ REPLACE_FPURGE = @REPLACE_FPURGE@ REPLACE_FREE = @REPLACE_FREE@ @@ -1290,17 +1338,24 @@ REPLACE_GETCWD = @REPLACE_GETCWD@ REPLACE_GETDELIM = @REPLACE_GETDELIM@ REPLACE_GETDOMAINNAME = @REPLACE_GETDOMAINNAME@ REPLACE_GETDTABLESIZE = @REPLACE_GETDTABLESIZE@ +REPLACE_GETENTROPY = @REPLACE_GETENTROPY@ REPLACE_GETGROUPS = @REPLACE_GETGROUPS@ REPLACE_GETLINE = @REPLACE_GETLINE@ +REPLACE_GETLOADAVG = @REPLACE_GETLOADAVG@ REPLACE_GETLOGIN_R = @REPLACE_GETLOGIN_R@ REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@ REPLACE_GETPASS = @REPLACE_GETPASS@ +REPLACE_GETPASS_FOR_GETPASS_GNU = @REPLACE_GETPASS_FOR_GETPASS_GNU@ +REPLACE_GETPROGNAME = @REPLACE_GETPROGNAME@ REPLACE_GETRANDOM = @REPLACE_GETRANDOM@ +REPLACE_GETSUBOPT = @REPLACE_GETSUBOPT@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@ REPLACE_GMTIME = @REPLACE_GMTIME@ REPLACE_ICONV = @REPLACE_ICONV@ REPLACE_ICONV_OPEN = @REPLACE_ICONV_OPEN@ REPLACE_ICONV_UTF = @REPLACE_ICONV_UTF@ +REPLACE_IMAXABS = @REPLACE_IMAXABS@ +REPLACE_IMAXDIV = @REPLACE_IMAXDIV@ REPLACE_INET_NTOP = @REPLACE_INET_NTOP@ REPLACE_INET_PTON = @REPLACE_INET_PTON@ REPLACE_INITSTATE = @REPLACE_INITSTATE@ @@ -1319,21 +1374,27 @@ REPLACE_LOCALTIME = @REPLACE_LOCALTIME@ REPLACE_LOCALTIME_R = @REPLACE_LOCALTIME_R@ REPLACE_LSEEK = @REPLACE_LSEEK@ REPLACE_LSTAT = @REPLACE_LSTAT@ -REPLACE_MALLOC = @REPLACE_MALLOC@ +REPLACE_MALLOC_FOR_MALLOC_GNU = @REPLACE_MALLOC_FOR_MALLOC_GNU@ +REPLACE_MALLOC_FOR_MALLOC_POSIX = @REPLACE_MALLOC_FOR_MALLOC_POSIX@ REPLACE_MBRLEN = @REPLACE_MBRLEN@ REPLACE_MBRTOWC = @REPLACE_MBRTOWC@ REPLACE_MBSINIT = @REPLACE_MBSINIT@ REPLACE_MBSNRTOWCS = @REPLACE_MBSNRTOWCS@ REPLACE_MBSRTOWCS = @REPLACE_MBSRTOWCS@ REPLACE_MBSTATE_T = @REPLACE_MBSTATE_T@ +REPLACE_MBSTOWCS = @REPLACE_MBSTOWCS@ REPLACE_MBTOWC = @REPLACE_MBTOWC@ +REPLACE_MB_CUR_MAX = @REPLACE_MB_CUR_MAX@ REPLACE_MEMCHR = @REPLACE_MEMCHR@ REPLACE_MEMMEM = @REPLACE_MEMMEM@ +REPLACE_MEMPCPY = @REPLACE_MEMPCPY@ REPLACE_MKDIR = @REPLACE_MKDIR@ REPLACE_MKFIFO = @REPLACE_MKFIFO@ REPLACE_MKFIFOAT = @REPLACE_MKFIFOAT@ REPLACE_MKNOD = @REPLACE_MKNOD@ REPLACE_MKNODAT = @REPLACE_MKNODAT@ +REPLACE_MKOSTEMP = @REPLACE_MKOSTEMP@ +REPLACE_MKOSTEMPS = @REPLACE_MKOSTEMPS@ REPLACE_MKSTEMP = @REPLACE_MKSTEMP@ REPLACE_MKTIME = @REPLACE_MKTIME@ REPLACE_NANOSLEEP = @REPLACE_NANOSLEEP@ @@ -1344,8 +1405,10 @@ REPLACE_OBSTACK_PRINTF = @REPLACE_OBSTACK_PRINTF@ REPLACE_OPEN = @REPLACE_OPEN@ REPLACE_OPENAT = @REPLACE_OPENAT@ REPLACE_PERROR = @REPLACE_PERROR@ +REPLACE_PIPE2 = @REPLACE_PIPE2@ REPLACE_POPEN = @REPLACE_POPEN@ REPLACE_POSIX_MEMALIGN = @REPLACE_POSIX_MEMALIGN@ +REPLACE_POSIX_OPENPT = @REPLACE_POSIX_OPENPT@ REPLACE_PREAD = @REPLACE_PREAD@ REPLACE_PRINTF = @REPLACE_PRINTF@ REPLACE_PSELECT = @REPLACE_PSELECT@ @@ -1412,8 +1475,9 @@ REPLACE_RANDOM_R = @REPLACE_RANDOM_R@ REPLACE_READ = @REPLACE_READ@ REPLACE_READLINK = @REPLACE_READLINK@ REPLACE_READLINKAT = @REPLACE_READLINKAT@ -REPLACE_REALLOC = @REPLACE_REALLOC@ REPLACE_REALLOCARRAY = @REPLACE_REALLOCARRAY@ +REPLACE_REALLOC_FOR_REALLOC_GNU = @REPLACE_REALLOC_FOR_REALLOC_GNU@ +REPLACE_REALLOC_FOR_REALLOC_POSIX = @REPLACE_REALLOC_FOR_REALLOC_POSIX@ REPLACE_REALPATH = @REPLACE_REALPATH@ REPLACE_REMOVE = @REPLACE_REMOVE@ REPLACE_RENAME = @REPLACE_RENAME@ @@ -1422,6 +1486,7 @@ REPLACE_RMDIR = @REPLACE_RMDIR@ REPLACE_SCHED_YIELD = @REPLACE_SCHED_YIELD@ REPLACE_SELECT = @REPLACE_SELECT@ REPLACE_SETENV = @REPLACE_SETENV@ +REPLACE_SETHOSTNAME = @REPLACE_SETHOSTNAME@ REPLACE_SETLOCALE = @REPLACE_SETLOCALE@ REPLACE_SETSTATE = @REPLACE_SETSTATE@ REPLACE_SLEEP = @REPLACE_SLEEP@ @@ -1430,6 +1495,7 @@ REPLACE_SPRINTF = @REPLACE_SPRINTF@ REPLACE_STAT = @REPLACE_STAT@ REPLACE_STDIO_READ_FUNCS = @REPLACE_STDIO_READ_FUNCS@ REPLACE_STDIO_WRITE_FUNCS = @REPLACE_STDIO_WRITE_FUNCS@ +REPLACE_STPCPY = @REPLACE_STPCPY@ REPLACE_STPNCPY = @REPLACE_STPNCPY@ REPLACE_STRCASESTR = @REPLACE_STRCASESTR@ REPLACE_STRCHRNUL = @REPLACE_STRCHRNUL@ @@ -1456,7 +1522,9 @@ REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@ REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@ REPLACE_SYMLINK = @REPLACE_SYMLINK@ REPLACE_SYMLINKAT = @REPLACE_SYMLINKAT@ +REPLACE_TIME = @REPLACE_TIME@ REPLACE_TIMEGM = @REPLACE_TIMEGM@ +REPLACE_TIMESPEC_GET = @REPLACE_TIMESPEC_GET@ REPLACE_TMPFILE = @REPLACE_TMPFILE@ REPLACE_TOWLOWER = @REPLACE_TOWLOWER@ REPLACE_TRUNCATE = @REPLACE_TRUNCATE@ @@ -1474,25 +1542,33 @@ REPLACE_VPRINTF = @REPLACE_VPRINTF@ REPLACE_VSNPRINTF = @REPLACE_VSNPRINTF@ REPLACE_VSPRINTF = @REPLACE_VSPRINTF@ REPLACE_WCRTOMB = @REPLACE_WCRTOMB@ +REPLACE_WCSCMP = @REPLACE_WCSCMP@ REPLACE_WCSFTIME = @REPLACE_WCSFTIME@ +REPLACE_WCSNCMP = @REPLACE_WCSNCMP@ REPLACE_WCSNRTOMBS = @REPLACE_WCSNRTOMBS@ REPLACE_WCSRTOMBS = @REPLACE_WCSRTOMBS@ +REPLACE_WCSSTR = @REPLACE_WCSSTR@ REPLACE_WCSTOK = @REPLACE_WCSTOK@ REPLACE_WCSWIDTH = @REPLACE_WCSWIDTH@ REPLACE_WCTOB = @REPLACE_WCTOB@ REPLACE_WCTOMB = @REPLACE_WCTOMB@ REPLACE_WCWIDTH = @REPLACE_WCWIDTH@ +REPLACE_WMEMCMP = @REPLACE_WMEMCMP@ +REPLACE_WMEMPCPY = @REPLACE_WMEMPCPY@ REPLACE_WRITE = @REPLACE_WRITE@ +REPLACE__EXIT = @REPLACE__EXIT@ +SCHED_YIELD_LIB = @SCHED_YIELD_LIB@ SED = @SED@ +SELECT_LIB = @SELECT_LIB@ +SETLOCALE_NULL_LIB = @SETLOCALE_NULL_LIB@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SIGSEGV_H = @SIGSEGV_H@ SIG_ATOMIC_T_SUFFIX = @SIG_ATOMIC_T_SUFFIX@ SIZE_T_SUFFIX = @SIZE_T_SUFFIX@ SRC_VERSION_C = @SRC_VERSION_C@ -STDALIGN_H = @STDALIGN_H@ STDARG_H = @STDARG_H@ -STDBOOL_H = @STDBOOL_H@ +STDCKDINT_H = @STDCKDINT_H@ STDDEF_H = @STDDEF_H@ STDINT_H = @STDINT_H@ STRIP = @STRIP@ @@ -1530,8 +1606,10 @@ ac_ct_CC = @ac_ct_CC@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ +am__rm_f_notfound = @am__rm_f_notfound@ am__tar = @am__tar@ am__untar = @am__untar@ +am__xargs_n = @am__xargs_n@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ @@ -1544,8 +1622,10 @@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ +gl_LIBOBJDEPS = @gl_LIBOBJDEPS@ gl_LIBOBJS = @gl_LIBOBJS@ gl_LTLIBOBJS = @gl_LTLIBOBJS@ +gltests_LIBOBJDEPS = @gltests_LIBOBJDEPS@ gltests_LIBOBJS = @gltests_LIBOBJS@ gltests_LTLIBOBJS = @gltests_LTLIBOBJS@ gltests_WITNESS = @gltests_WITNESS@ @@ -1641,13 +1721,13 @@ $(am__aclocal_m4_deps): .texi.dvi: $(AM_V_TEXI2DVI)TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \ MAKEINFO='$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir)' \ - $(TEXI2DVI) $(AM_V_texinfo) --build-dir=$(@:.dvi=.t2d) -o $@ $(AM_V_texidevnull) \ + $(TEXI2DVI) $(AM_TEXI2FLAGS) -I $(srcdir) $(AM_V_texinfo) --build-dir=$(@:.dvi=.t2d) -o $@ $(AM_V_texidevnull) \ $< .texi.pdf: $(AM_V_TEXI2PDF)TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \ MAKEINFO='$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir)' \ - $(TEXI2PDF) $(AM_V_texinfo) --build-dir=$(@:.pdf=.t2p) -o $@ $(AM_V_texidevnull) \ + $(TEXI2PDF) $(AM_TEXI2FLAGS) -I $(srcdir) $(AM_V_texinfo) --build-dir=$(@:.pdf=.t2p) -o $@ $(AM_V_texidevnull) \ $< .texi.html: @@ -1764,11 +1844,10 @@ dist-info: $(INFO_DEPS) done mostlyclean-aminfo: - -rm -rf diffutils.t2d diffutils.t2p + -$(am__rm_rf) diffutils.t2d diffutils.t2p clean-aminfo: - -test -z "diffutils.dvi diffutils.pdf diffutils.ps diffutils.html" \ - || rm -rf diffutils.dvi diffutils.pdf diffutils.ps diffutils.html + -$(am__rm_rf) diffutils.dvi diffutils.pdf diffutils.ps diffutils.html maintainer-clean-aminfo: @list='$(INFO_DEPS)'; for i in $$list; do \ @@ -1849,8 +1928,8 @@ mostlyclean-generic: clean-generic: distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + -$(am__rm_f) $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || $(am__rm_f) $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" diff --git a/doc/diffutils.info b/doc/diffutils.info index 229e024..85e1861 100644 --- a/doc/diffutils.info +++ b/doc/diffutils.info @@ -1,12 +1,12 @@ -This is diffutils.info, produced by makeinfo version 6.8 from +This is diffutils.info, produced by makeinfo version 7.0dev from diffutils.texi. -This manual is for GNU Diffutils (version 3.8, 2 January 2021), and -documents the GNU 'diff', 'diff3', 'sdiff', and 'cmp' commands for -showing the differences between files and the GNU 'patch' command for +This manual is for GNU Diffutils (version 3.10, 2 January 2023), and +documents the GNU ‘diff’, ‘diff3’, ‘sdiff’, and ‘cmp’ commands for +showing the differences between files and the GNU ‘patch’ command for using their output to update files. - Copyright (C) 1992-1994, 1998, 2001-2002, 2004, 2006, 2009-2021 Free + Copyright © 1992-1994, 1998, 2001-2002, 2004, 2006, 2009-2023 Free Software Foundation, Inc. Permission is granted to copy, distribute and/or modify this @@ -35,12 +35,12 @@ File: diffutils.info, Node: Top, Next: Overview, Up: (dir) Comparing and Merging Files *************************** -This manual is for GNU Diffutils (version 3.8, 2 January 2021), and -documents the GNU 'diff', 'diff3', 'sdiff', and 'cmp' commands for -showing the differences between files and the GNU 'patch' command for +This manual is for GNU Diffutils (version 3.10, 2 January 2023), and +documents the GNU ‘diff’, ‘diff3’, ‘sdiff’, and ‘cmp’ commands for +showing the differences between files and the GNU ‘patch’ command for using their output to update files. - Copyright (C) 1992-1994, 1998, 2001-2002, 2004, 2006, 2009-2021 Free + Copyright © 1992-1994, 1998, 2001-2002, 2004, 2006, 2009-2023 Free Software Foundation, Inc. Permission is granted to copy, distribute and/or modify this @@ -58,15 +58,15 @@ Software Foundation, Inc. * Output Formats:: Formats for two-way difference reports. * Incomplete Lines:: Lines that lack trailing newlines. * Comparing Directories:: Comparing files and directories. -* Adjusting Output:: Making 'diff' output prettier. -* diff Performance:: Making 'diff' smarter or faster. +* Adjusting Output:: Making ‘diff’ output prettier. +* diff Performance:: Making ‘diff’ smarter or faster. * Comparing Three Files:: Formats for three-way difference reports. * diff3 Merging:: Merging from a common ancestor. -* Interactive Merging:: Interactive merging with 'sdiff'. +* Interactive Merging:: Interactive merging with ‘sdiff’. -* Merging with patch:: Using 'patch' to change old files into new ones. +* Merging with patch:: Using ‘patch’ to change old files into new ones. * Making Patches:: Tips for making and using patch distributions. * Invoking cmp:: Compare two files byte by byte. @@ -92,65 +92,65 @@ Computer users often find occasion to ask how two files differ. Perhaps one file is a newer version of the other file. Or maybe the two files started out as identical copies but were changed by different people. - You can use the 'diff' command to show differences between two files, -or each corresponding file in two directories. 'diff' outputs + You can use the ‘diff’ command to show differences between two files, +or each corresponding file in two directories. ‘diff’ outputs differences between files line by line in any of several formats, selectable by command line options. This set of differences is often -called a "diff" or "patch". For files that are identical, 'diff' -normally produces no output; for binary (non-text) files, 'diff' +called a “diff” or “patch”. For files that are identical, ‘diff’ +normally produces no output; for binary (non-text) files, ‘diff’ normally reports only that they are different. - You can use the 'cmp' command to show the byte and line numbers where -two files differ. 'cmp' can also show all the bytes that differ between + You can use the ‘cmp’ command to show the byte and line numbers where +two files differ. ‘cmp’ can also show all the bytes that differ between the two files, side by side. A way to compare two files character by -character is the Emacs command 'M-x compare-windows'. *Note Other +character is the Emacs command ‘M-x compare-windows’. *Note Other Window: (emacs)Other Window, for more information on that command. - You can use the 'diff3' command to show differences among three + You can use the ‘diff3’ command to show differences among three files. When two people have made independent changes to a common -original, 'diff3' can report the differences between the original and +original, ‘diff3’ can report the differences between the original and the two changed versions, and can produce a merged file that contains both persons' changes together with warnings about conflicts. - You can use the 'sdiff' command to merge two files interactively. + You can use the ‘sdiff’ command to merge two files interactively. - You can use the set of differences produced by 'diff' to distribute + You can use the set of differences produced by ‘diff’ to distribute updates to text files (such as program source code) to other people. This method is especially useful when the differences are small compared -to the complete files. Given 'diff' output, you can use the 'patch' -program to update, or "patch", a copy of the file. If you think of -'diff' as subtracting one file from another to produce their difference, -you can think of 'patch' as adding the difference to one file to +to the complete files. Given ‘diff’ output, you can use the ‘patch’ +program to update, or “patch”, a copy of the file. If you think of +‘diff’ as subtracting one file from another to produce their difference, +you can think of ‘patch’ as adding the difference to one file to reproduce the other. This manual first concentrates on making diffs, and later shows how to use diffs to update files. - GNU 'diff' was written by Paul Eggert, Mike Haertel, David Hayes, + GNU ‘diff’ was written by Paul Eggert, Mike Haertel, David Hayes, Richard Stallman, and Len Tower. Wayne Davison designed and implemented the unified output format. The basic algorithm is described by Eugene W. Myers in "An O(ND) Difference Algorithm and its Variations", -'Algorithmica' Vol. 1, 1986, pp. 251-266, +‘Algorithmica’ Vol. 1, 1986, pp. 251-266, ; and in "A File Comparison -Program", Webb Miller and Eugene W. Myers, 'Software--Practice and -Experience' Vol. 15, 1985, pp. 1025-1040, +Program", Webb Miller and Eugene W. Myers, ‘Software--Practice and +Experience’ Vol. 15, 1985, pp. 1025-1040, . The algorithm was independently discovered as described by Esko Ukkonen in "Algorithms for -Approximate String Matching", 'Information and Control' Vol. 64, 1985, +Approximate String Matching", ‘Information and Control’ Vol. 64, 1985, pp. 100-118, . Unless -the '--minimal' option is used, 'diff' uses a heuristic by Paul Eggert +the ‘--minimal’ option is used, ‘diff’ uses a heuristic by Paul Eggert that limits the cost to O(N^1.5 log N) at the price of producing suboptimal output for large inputs with many differences. Related algorithms are surveyed by Alfred V. Aho in section 6.3 of "Algorithms -for Finding Patterns in Strings", 'Handbook of Theoretical Computer -Science' (Jan Van Leeuwen, ed.), Vol. A, 'Algorithms and Complexity', +for Finding Patterns in Strings", ‘Handbook of Theoretical Computer +Science’ (Jan Van Leeuwen, ed.), Vol. A, ‘Algorithms and Complexity’, Elsevier/MIT Press, 1990, pp. 255-300. - GNU 'diff3' was written by Randy Smith. GNU 'sdiff' was written by -Thomas Lord. GNU 'cmp' was written by Torbjörn Granlund and David + GNU ‘diff3’ was written by Randy Smith. GNU ‘sdiff’ was written by +Thomas Lord. GNU ‘cmp’ was written by Torbjörn Granlund and David MacKenzie. - GNU 'patch' was written mainly by Larry Wall and Paul Eggert; several + GNU ‘patch’ was written mainly by Larry Wall and Paul Eggert; several GNU enhancements were contributed by Wayne Davison and David MacKenzie. Parts of this manual are adapted from a manual page written by Larry Wall, with his permission. @@ -164,24 +164,24 @@ File: diffutils.info, Node: Comparison, Next: Output Formats, Prev: Overview, There are several ways to think about the differences between two files. One way to think of the differences is as a series of lines that were deleted from, inserted in, or changed in one file to produce the other -file. 'diff' compares two files line by line, finds groups of lines +file. ‘diff’ compares two files line by line, finds groups of lines that differ, and reports each group of differing lines. It can report the differing lines in several formats, which have different purposes. - GNU 'diff' can show whether files are different without detailing the + GNU ‘diff’ can show whether files are different without detailing the differences. It also provides ways to suppress certain kinds of differences that are not important to you. Most commonly, such differences are changes in the amount of white space between words or -lines. 'diff' also provides ways to suppress differences in alphabetic +lines. ‘diff’ also provides ways to suppress differences in alphabetic case or in lines that match a regular expression that you provide. These options can accumulate; for example, you can ignore changes in both white space and alphabetic case. Another way to think of the differences between two files is as a sequence of pairs of bytes that can be either identical or different. -'cmp' reports the differences between two files byte by byte, instead of -line by line. As a result, it is often more useful than 'diff' for -comparing binary files. For text files, 'cmp' is useful mainly when you +‘cmp’ reports the differences between two files byte by byte, instead of +line by line. As a result, it is often more useful than ‘diff’ for +comparing binary files. For text files, ‘cmp’ is useful mainly when you want to know only whether two files are identical, or whether one file is a prefix of the other. @@ -189,17 +189,17 @@ is a prefix of the other. have compared with considering them line by line, think of what happens if a single newline character is added to the beginning of a file. If that file is then compared with an otherwise identical file that lacks -the newline at the beginning, 'diff' will report that a blank line has -been added to the file, while 'cmp' will report that almost every byte +the newline at the beginning, ‘diff’ will report that a blank line has +been added to the file, while ‘cmp’ will report that almost every byte of the two files differs. - 'diff3' normally compares three input files line by line, finds + ‘diff3’ normally compares three input files line by line, finds groups of lines that differ, and reports each group of differing lines. Its output is designed to make it easy to inspect two different sets of changes to the same file. These commands compare input files without necessarily reading them. -For example, if 'diff' is asked simply to report whether two files +For example, if ‘diff’ is asked simply to report whether two files differ, and it discovers that the files have different sizes, it need not read them to do its job. @@ -219,20 +219,20 @@ File: diffutils.info, Node: Hunks, Next: White Space, Up: Comparison 1.1 Hunks ========= -When comparing two files, 'diff' finds sequences of lines common to both -files, interspersed with groups of differing lines called "hunks". +When comparing two files, ‘diff’ finds sequences of lines common to both +files, interspersed with groups of differing lines called “hunks”. Comparing two identical files yields one sequence of common lines and no hunks, because no lines differ. Comparing two entirely different files yields no common lines and one large hunk that contains all lines of both files. In general, there are many ways to match up lines between -two given files. 'diff' tries to minimize the total hunk size by +two given files. ‘diff’ tries to minimize the total hunk size by finding large sequences of common lines interspersed with small hunks of differing lines. - For example, suppose the file 'F' contains the three lines 'a', 'b', -'c', and the file 'G' contains the same three lines in reverse order -'c', 'b', 'a'. If 'diff' finds the line 'c' as common, then the command -'diff F G' produces this output: + For example, suppose the file ‘F’ contains the three lines ‘a’, ‘b’, +‘c’, and the file ‘G’ contains the same three lines in reverse order +‘c’, ‘b’, ‘a’. If ‘diff’ finds the line ‘c’ as common, then the command +‘diff F G’ produces this output: 1,2d0 < a @@ -241,7 +241,7 @@ differing lines. > b > a -But if 'diff' notices the common line 'b' instead, it produces this +But if ‘diff’ notices the common line ‘b’ instead, it produces this output: 1c1 @@ -253,10 +253,10 @@ output: --- > a -It is also possible to find 'a' as the common line. 'diff' does not +It is also possible to find ‘a’ as the common line. ‘diff’ does not always find an optimal matching between the files; it takes shortcuts to run faster. But its output is usually close to the shortest possible. -You can adjust this tradeoff with the '--minimal' ('-d') option (*note +You can adjust this tradeoff with the ‘--minimal’ (‘-d’) option (*note diff Performance::).  @@ -265,36 +265,36 @@ File: diffutils.info, Node: White Space, Next: Blank Lines, Prev: Hunks, Up: 1.2 Suppressing Differences in Blank and Tab Spacing ==================================================== -The '--ignore-tab-expansion' ('-E') option ignores the distinction +The ‘--ignore-tab-expansion’ (‘-E’) option ignores the distinction between tabs and spaces on input. A tab is considered to be equivalent to the number of spaces to the next tab stop (*note Tabs::). - The '--ignore-trailing-space' ('-Z') option ignores white space at + The ‘--ignore-trailing-space’ (‘-Z’) option ignores white space at line end. - The '--ignore-space-change' ('-b') option is stronger than '-E' and -'-Z' combined. It ignores white space at line end, and considers all + The ‘--ignore-space-change’ (‘-b’) option is stronger than ‘-E’ and +‘-Z’ combined. It ignores white space at line end, and considers all other sequences of one or more white space characters within a line to -be equivalent. With this option, 'diff' considers the following two -lines to be equivalent, where '$' denotes the line end: +be equivalent. With this option, ‘diff’ considers the following two +lines to be equivalent, where ‘$’ denotes the line end: Here lyeth muche rychnesse in lytell space. -- John Heywood$ Here lyeth muche rychnesse in lytell space. -- John Heywood $ - The '--ignore-all-space' ('-w') option is stronger still. It ignores + The ‘--ignore-all-space’ (‘-w’) option is stronger still. It ignores differences even if one line has white space where the other line has -none. "White space" characters include tab, vertical tab, form feed, +none. “White space” characters include tab, vertical tab, form feed, carriage return, and space; some locales may define additional -characters to be white space. With this option, 'diff' considers the -following two lines to be equivalent, where '$' denotes the line end and -'^M' denotes a carriage return: +characters to be white space. With this option, ‘diff’ considers the +following two lines to be equivalent, where ‘$’ denotes the line end and +‘^M’ denotes a carriage return: Here lyeth muche rychnesse in lytell space.-- John Heywood$ He relyeth much erychnes seinly tells pace. --John Heywood ^M$ For many other programs newline is also a white space character, but -'diff' is a line-oriented program and a newline character always ends a -line. Hence the '-w' or '--ignore-all-space' option does not ignore +‘diff’ is a line-oriented program and a newline character always ends a +line. Hence the ‘-w’ or ‘--ignore-all-space’ option does not ignore newline-related changes; it ignores only other white space changes.  @@ -303,7 +303,7 @@ File: diffutils.info, Node: Blank Lines, Next: Specified Lines, Prev: White S 1.3 Suppressing Differences Whose Lines Are All Blank ===================================================== -The '--ignore-blank-lines' ('-B') option ignores changes that consist +The ‘--ignore-blank-lines’ (‘-B’) option ignores changes that consist entirely of blank lines. With this option, for example, a file containing 1. A point is that which has no part. @@ -320,8 +320,8 @@ is considered identical to a file containing Normally this option affects only lines that are completely empty, but if you also specify an option that ignores trailing spaces, lines are also affected if they look empty but contain white space. In other -words, '-B' is equivalent to '-I '^$'' by default, but it is equivalent -to '-I '^[[:space:]]*$'' if '-b', '-w' or '-Z' is also specified. +words, ‘-B’ is equivalent to ‘-I '^$'’ by default, but it is equivalent +to ‘-I '^[[:space:]]*$'’ if ‘-b’, ‘-w’ or ‘-Z’ is also specified.  File: diffutils.info, Node: Specified Lines, Next: Case Folding, Prev: Blank Lines, Up: Comparison @@ -329,21 +329,21 @@ File: diffutils.info, Node: Specified Lines, Next: Case Folding, Prev: Blank 1.4 Suppressing Differences Whose Lines All Match a Regular Expression ====================================================================== -To ignore insertions and deletions of lines that match a 'grep'-style -regular expression, use the '--ignore-matching-lines=REGEXP' ('-I -REGEXP') option. You should escape regular expressions that contain +To ignore insertions and deletions of lines that match a ‘grep’-style +regular expression, use the ‘--ignore-matching-lines=REGEXP’ (‘-I +REGEXP’) option. You should escape regular expressions that contain shell metacharacters to prevent the shell from expanding them. For -example, 'diff -I '^[[:digit:]]'' ignores all changes to lines beginning +example, ‘diff -I '^[[:digit:]]'’ ignores all changes to lines beginning with a digit. - However, '-I' only ignores the insertion or deletion of lines that + However, ‘-I’ only ignores the insertion or deletion of lines that contain the regular expression if every changed line in the hunk--every insertion and every deletion--matches the regular expression. In other -words, for each nonignorable change, 'diff' prints the complete set of +words, for each nonignorable change, ‘diff’ prints the complete set of changes in its vicinity, including the ignorable ones. You can specify more than one regular expression for lines to ignore -by using more than one '-I' option. 'diff' tries to match each line +by using more than one ‘-I’ option. ‘diff’ tries to match each line against each regular expression.  @@ -352,10 +352,10 @@ File: diffutils.info, Node: Case Folding, Next: Brief, Prev: Specified Lines, 1.5 Suppressing Case Differences ================================ -GNU 'diff' can treat lower case letters as equivalent to their upper -case counterparts, so that, for example, it considers 'Funky Stuff', -'funky STUFF', and 'fUNKy stuFf' to all be the same. To request this, -use the '-i' or '--ignore-case' option. +GNU ‘diff’ can treat lower case letters as equivalent to their upper +case counterparts, so that, for example, it considers ‘Funky Stuff’, +‘funky STUFF’, and ‘fUNKy stuFf’ to all be the same. To request this, +use the ‘-i’ or ‘--ignore-case’ option.  File: diffutils.info, Node: Brief, Next: Binary, Prev: Case Folding, Up: Comparison @@ -366,24 +366,24 @@ File: diffutils.info, Node: Brief, Next: Binary, Prev: Case Folding, Up: Com When you only want to find out whether files are different, and you don't care what the differences are, you can use the summary output format. In this format, instead of showing the differences between the -files, 'diff' simply reports whether files differ. The '--brief' ('-q') +files, ‘diff’ simply reports whether files differ. The ‘--brief’ (‘-q’) option selects this output format. This format is especially useful when comparing the contents of two directories. It is also much faster than doing the normal line by line -comparisons, because 'diff' can stop analyzing the files as soon as it +comparisons, because ‘diff’ can stop analyzing the files as soon as it knows that there are any differences. You can also get a brief indication of whether two files differ by -using 'cmp'. For files that are identical, 'cmp' produces no output. -When the files differ, by default, 'cmp' outputs the byte and line +using ‘cmp’. For files that are identical, ‘cmp’ produces no output. +When the files differ, by default, ‘cmp’ outputs the byte and line number where the first difference occurs, or reports that one file is a -prefix of the other. You can use the '-s', '--quiet', or '--silent' -option to suppress that information, so that 'cmp' produces no output +prefix of the other. You can use the ‘-s’, ‘--quiet’, or ‘--silent’ +option to suppress that information, so that ‘cmp’ produces no output and reports whether the files differ using only its exit status (*note Invoking cmp::). - Unlike 'diff', 'cmp' cannot compare directories; it can only compare + Unlike ‘diff’, ‘cmp’ cannot compare directories; it can only compare two files.  @@ -392,7 +392,7 @@ File: diffutils.info, Node: Binary, Prev: Brief, Up: Comparison 1.7 Binary Files and Forcing Text Comparisons ============================================= -If 'diff' thinks that either of the two files it is comparing is binary +If ‘diff’ thinks that either of the two files it is comparing is binary (a non-text file), it normally treats that pair of files much as if the summary output format had been selected (*note Brief::), and reports only that the binary files are different. This is because line by line @@ -400,73 +400,73 @@ comparisons are usually not meaningful for binary files. This does not count as trouble, even though the resulting output does not capture all the differences. - 'diff' determines whether a file is text or binary by checking the + ‘diff’ determines whether a file is text or binary by checking the first few bytes in the file; the exact number of bytes is system dependent, but it is typically several thousand. If every byte in that -part of the file is non-null, 'diff' considers the file to be text; +part of the file is non-null, ‘diff’ considers the file to be text; otherwise it considers the file to be binary. - Sometimes you might want to force 'diff' to consider files to be + Sometimes you might want to force ‘diff’ to consider files to be text. For example, you might be comparing text files that contain null -characters; 'diff' would erroneously decide that those are non-text +characters; ‘diff’ would erroneously decide that those are non-text files. Or you might be comparing documents that are in a format used by a word processing system that uses null characters to indicate special -formatting. You can force 'diff' to consider all files to be text -files, and compare them line by line, by using the '--text' ('-a') +formatting. You can force ‘diff’ to consider all files to be text +files, and compare them line by line, by using the ‘--text’ (‘-a’) option. If the files you compare using this option do not in fact contain text, they will probably contain few newline characters, and the -'diff' output will consist of hunks showing differences between long +‘diff’ output will consist of hunks showing differences between long lines of whatever characters the files contain. - You can also force 'diff' to report only whether files differ (but -not how). Use the '--brief' ('-q') option for this. + You can also force ‘diff’ to report only whether files differ (but +not how). Use the ‘--brief’ (‘-q’) option for this. In operating systems that distinguish between text and binary files, -'diff' normally reads and writes all data as text. Use the '--binary' -option to force 'diff' to read and write binary data instead. This +‘diff’ normally reads and writes all data as text. Use the ‘--binary’ +option to force ‘diff’ to read and write binary data instead. This option has no effect on a POSIX-compliant system like GNU or traditional Unix. However, many personal computer operating systems represent the end of a line with a carriage return followed by a newline. On such -systems, 'diff' normally ignores these carriage returns on input and -generates them at the end of each output line, but with the '--binary' -option 'diff' treats each carriage return as just another input +systems, ‘diff’ normally ignores these carriage returns on input and +generates them at the end of each output line, but with the ‘--binary’ +option ‘diff’ treats each carriage return as just another input character, and does not generate a carriage return at the end of each output line. This can be useful when dealing with non-text files that are meant to be interchanged with POSIX-compliant systems. - The '--strip-trailing-cr' causes 'diff' to treat input lines that end + The ‘--strip-trailing-cr’ causes ‘diff’ to treat input lines that end in carriage return followed by newline as if they end in plain newline. This can be useful when comparing text that is imperfectly imported from many personal computer operating systems. This option affects how lines are read, which in turn affects how they are compared and output. - If you want to compare two files byte by byte, you can use the 'cmp' -program with the '--verbose' ('-l') option to show the values of each -differing byte in the two files. With GNU 'cmp', you can also use the -'-b' or '--print-bytes' option to show the ASCII representation of those + If you want to compare two files byte by byte, you can use the ‘cmp’ +program with the ‘--verbose’ (‘-l’) option to show the values of each +differing byte in the two files. With GNU ‘cmp’, you can also use the +‘-b’ or ‘--print-bytes’ option to show the ASCII representation of those bytes. *Note Invoking cmp::, for more information. - If 'diff3' thinks that any of the files it is comparing is binary (a + If ‘diff3’ thinks that any of the files it is comparing is binary (a non-text file), it normally reports an error, because such comparisons -are usually not useful. 'diff3' uses the same test as 'diff' to decide -whether a file is binary. As with 'diff', if the input files contain a +are usually not useful. ‘diff3’ uses the same test as ‘diff’ to decide +whether a file is binary. As with ‘diff’, if the input files contain a few non-text bytes but otherwise are like text files, you can force -'diff3' to consider all files to be text files and compare them line by -line by using the '-a' or '--text' option. +‘diff3’ to consider all files to be text files and compare them line by +line by using the ‘-a’ or ‘--text’ option.  File: diffutils.info, Node: Output Formats, Next: Incomplete Lines, Prev: Comparison, Up: Top -2 'diff' Output Formats +2 ‘diff’ Output Formats *********************** -'diff' has several mutually exclusive options for output format. The -following sections describe each format, illustrating how 'diff' reports +‘diff’ has several mutually exclusive options for output format. The +following sections describe each format, illustrating how ‘diff’ reports the differences between two sample input files. * Menu: -* Sample diff Input:: Sample 'diff' input files for examples. +* Sample diff Input:: Sample ‘diff’ input files for examples. * Context:: Showing differences with the surrounding text. * Side by Side:: Showing differences in two columns. * Normal:: Showing differences without surrounding text. @@ -480,9 +480,9 @@ File: diffutils.info, Node: Sample diff Input, Next: Context, Up: Output Form ========================== Here are two sample files that we will use in numerous examples to -illustrate the output of 'diff' and how various options can change it. +illustrate the output of ‘diff’ and how various options can change it. - This is the file 'lao': + This is the file ‘lao’: The Way that can be told of is not the eternal Way; The name that can be named is not the eternal name. @@ -496,7 +496,7 @@ illustrate the output of 'diff' and how various options can change it. But after they are produced, they have different names. - This is the file 'tzu': + This is the file ‘tzu’: The Nameless is the origin of Heaven and Earth; The named is the mother of all things. @@ -513,9 +513,9 @@ illustrate the output of 'diff' and how various options can change it. The door of all subtleties! In this example, the first hunk contains just the first two lines of -'lao', the second hunk contains the fourth line of 'lao' opposing the -second and third lines of 'tzu', and the last hunk contains just the -last three lines of 'tzu'. +‘lao’, the second hunk contains the fourth line of ‘lao’ opposing the +second and third lines of ‘tzu’, and the last hunk contains just the +last three lines of ‘tzu’.  File: diffutils.info, Node: Context, Next: Side by Side, Prev: Sample diff Input, Up: Output Formats @@ -526,22 +526,22 @@ File: diffutils.info, Node: Context, Next: Side by Side, Prev: Sample diff In Usually, when you are looking at the differences between files, you will also want to see the parts of the files near the lines that differ, to help you understand exactly what has changed. These nearby parts of the -files are called the "context". +files are called the “context”. - GNU 'diff' provides two output formats that show context around the -differing lines: "context format" and "unified format". It can + GNU ‘diff’ provides two output formats that show context around the +differing lines: “context format” and “unified format”. It can optionally show in which function or section of the file the differing lines are found. If you are distributing new versions of files to other people in the -form of 'diff' output, you should use one of the output formats that +form of ‘diff’ output, you should use one of the output formats that show context so that they can apply the diffs even if they have made -small changes of their own to the files. 'patch' can apply the diffs in +small changes of their own to the files. ‘patch’ can apply the diffs in this case by searching in the files for the lines of context around the differing lines; if those lines are actually a few lines away from where -the diff says they are, 'patch' can adjust the line numbers accordingly +the diff says they are, ‘patch’ can adjust the line numbers accordingly and still apply the diff correctly. *Note Imperfect::, for more -information on using 'patch' to apply imperfect diffs. +information on using ‘patch’ to apply imperfect diffs. * Menu: @@ -560,10 +560,10 @@ The context output format shows several lines of context around the lines that differ. It is the standard format for distributing updates to source code. - To select this output format, use the '--context[=LINES]' ('-C -LINES') or '-c' option. The argument LINES that some of these options + To select this output format, use the ‘--context[=LINES]’ (‘-C +LINES’) or ‘-c’ option. The argument LINES that some of these options take is the number of lines of context to show. If you do not specify -LINES, it defaults to three. For proper operation, 'patch' typically +LINES, it defaults to three. For proper operation, ‘patch’ typically needs at least two lines of context. * Menu: @@ -578,7 +578,7 @@ File: diffutils.info, Node: Example Context, Next: Less Context, Up: Context 2.2.1.1 An Example of Context Format .................................... -Here is the output of 'diff -c lao tzu' (*note Sample diff Input::, for +Here is the output of ‘diff -c lao tzu’ (*note Sample diff Input::, for the complete contents of the two files). Notice that up to three lines that are not different are shown around each line that is different; they are the context lines. Also notice that the first two hunks have @@ -618,7 +618,7 @@ File: diffutils.info, Node: Less Context, Next: Detailed Context, Prev: Examp 2.2.1.2 An Example of Context Format with Less Context ...................................................... -Here is the output of 'diff -C 1 lao tzu' (*note Sample diff Input::, +Here is the output of ‘diff -C 1 lao tzu’ (*note Sample diff Input::, for the complete contents of the two files). Notice that at most one context line is reported here. @@ -656,14 +656,15 @@ like this: *** FROM-FILE FROM-FILE-MODIFICATION-TIME --- TO-FILE TO-FILE-MODIFICATION TIME -The timestamp normally looks like '2002-02-21 23:30:39.942229878 -0800' -to indicate the date, time with fractional seconds, and time zone in -Internet RFC 2822 format (ftp://ftp.isi.edu/in-notes/rfc2822.txt). (The -fractional seconds are omitted on hosts that do not support fractional -timestamps.) However, a traditional timestamp like 'Thu Feb 21 23:30:39 -2002' is used if the 'LC_TIME' locale category is either 'C' or 'POSIX'. + The timestamp normally looks like ‘2002-02-21 23:30:39.942229878 +-0800’ to indicate the date, time with fractional seconds, and time zone +in Internet RFC 2822 format (ftp://ftp.isi.edu/in-notes/rfc2822.txt). +(The fractional seconds are omitted on hosts that do not support +fractional timestamps.) However, a traditional timestamp like ‘Thu Feb +21 23:30:39 2002’ is used if the ‘LC_TIME’ locale category is either ‘C’ +or ‘POSIX’. - You can change the header's content with the '--label=LABEL' option; + You can change the header's content with the ‘--label=LABEL’ option; see *note Alternate Names::. Next come one or more hunks of differences; each hunk shows one area @@ -678,7 +679,7 @@ where the files differ. Context format hunks look like this: TO-FILE-LINE... If a hunk contains two or more lines, its line numbers look like -'START,END'. Otherwise only its end line number appears. An empty hunk +‘START,END’. Otherwise only its end line number appears. An empty hunk is considered to end at the line that precedes the hunk. The lines of context around the lines that differ start with two @@ -686,16 +687,16 @@ space characters. The lines that differ between the two files start with one of the following indicator characters, followed by a space character: -'!' +‘!’ A line that is part of a group of one or more lines that changed between the two files. There is a corresponding group of lines - marked with '!' in the part of this hunk for the other file. + marked with ‘!’ in the part of this hunk for the other file. -'+' +‘+’ An "inserted" line in the second file that corresponds to nothing in the first file. -'-' +‘-’ A "deleted" line in the first file that corresponds to nothing in the second file. @@ -711,13 +712,13 @@ File: diffutils.info, Node: Unified Format, Next: Sections, Prev: Context For The unified output format is a variation on the context format that is more compact because it omits redundant context lines. To select this -output format, use the '--unified[=LINES]' ('-U LINES'), or '-u' option. +output format, use the ‘--unified[=LINES]’ (‘-U LINES’), or ‘-u’ option. The argument LINES is the number of lines of context to show. When it is not given, it defaults to three. - In the early 1990s, only GNU 'diff' could produce this format and -only GNU 'patch' could automatically apply diffs in this format. For -proper operation, 'patch' typically needs at least three lines of + In the early 1990s, only GNU ‘diff’ could produce this format and +only GNU ‘patch’ could automatically apply diffs in this format. For +proper operation, ‘patch’ typically needs at least three lines of context. * Menu: @@ -731,7 +732,7 @@ File: diffutils.info, Node: Example Unified, Next: Detailed Unified, Up: Unif 2.2.2.1 An Example of Unified Format .................................... -Here is the output of the command 'diff -u lao tzu' (*note Sample diff +Here is the output of the command ‘diff -u lao tzu’ (*note Sample diff Input::, for the complete contents of the two files): --- lao 2002-02-21 23:30:39.942229878 -0800 @@ -766,12 +767,12 @@ like this: --- FROM-FILE FROM-FILE-MODIFICATION-TIME +++ TO-FILE TO-FILE-MODIFICATION-TIME -The timestamp looks like '2002-02-21 23:30:39.942229878 -0800' to + The timestamp looks like ‘2002-02-21 23:30:39.942229878 -0800’ to indicate the date, time with fractional seconds, and time zone. The fractional seconds are omitted on hosts that do not support fractional timestamps. - You can change the header's content with the '--label=LABEL' option. + You can change the header's content with the ‘--label=LABEL’ option. *Note Alternate Names::. Next come one or more hunks of differences; each hunk shows one area @@ -782,21 +783,21 @@ where the files differ. Unified format hunks look like this: LINE-FROM-EITHER-FILE... If a hunk contains just one line, only its start line number appears. -Otherwise its line numbers look like 'START,COUNT'. An empty hunk is +Otherwise its line numbers look like ‘START,COUNT’. An empty hunk is considered to start at the line that follows the hunk. If a hunk and its context contain two or more lines, its line numbers -look like 'START,COUNT'. Otherwise only its end line number appears. +look like ‘START,COUNT’. Otherwise only its end line number appears. An empty hunk is considered to end at the line that precedes the hunk. The lines common to both files begin with a space character. The lines that actually differ between the two files have one of the following indicator characters in the left print column: -'+' +‘+’ A line was added here to the first file. -'-' +‘-’ A line was removed here from the first file.  @@ -808,7 +809,7 @@ File: diffutils.info, Node: Sections, Next: Alternate Names, Prev: Unified Fo Sometimes you might want to know which part of the files each change falls in. If the files are source code, this could mean which function was changed. If the files are documents, it could mean which chapter or -appendix was changed. GNU 'diff' can show this by displaying the +appendix was changed. GNU ‘diff’ can show this by displaying the nearest section heading line that precedes the differing lines. Which lines are "section headings" is determined by a regular expression. @@ -825,16 +826,16 @@ File: diffutils.info, Node: Specified Headings, Next: C Function Headings, Up To show in which sections differences occur for files that are not source code for C or similar languages, use the -'--show-function-line=REGEXP' ('-F REGEXP') option. 'diff' considers -lines that match the 'grep'-style regular expression REGEXP to be the +‘--show-function-line=REGEXP’ (‘-F REGEXP’) option. ‘diff’ considers +lines that match the ‘grep’-style regular expression REGEXP to be the beginning of a section of the file. Here are suggested regular expressions for some common languages: -'^[[:alpha:]$_]' +‘^[[:alpha:]$_]’ C, C++, Prolog -'^(' +‘^(’ Lisp -'^@node' +‘^@node’ Texinfo This option does not automatically select an output format; in order @@ -842,16 +843,16 @@ to use it, you must select the context format (*note Context Format::) or unified format (*note Unified Format::). In other output formats it has no effect. - The '--show-function-line' ('-F') option finds the nearest unchanged + The ‘--show-function-line’ (‘-F’) option finds the nearest unchanged line that precedes each hunk of differences and matches the given regular expression. Then it adds that line to the end of the line of -asterisks in the context format, or to the '@@' line in unified format. +asterisks in the context format, or to the ‘@@’ line in unified format. If no matching line exists, this option leaves the output for that hunk unchanged. If that line is more than 40 characters long, it outputs only the first 40 characters. You can specify more than one regular -expression for such lines; 'diff' tries to match each line against each +expression for such lines; ‘diff’ tries to match each line against each regular expression, starting with the last one given. This means that -you can use '-p' and '-F' together, if you wish. +you can use ‘-p’ and ‘-F’ together, if you wish.  File: diffutils.info, Node: C Function Headings, Prev: Specified Headings, Up: Sections @@ -860,16 +861,16 @@ File: diffutils.info, Node: C Function Headings, Prev: Specified Headings, Up ................................... To show in which functions differences occur for C and similar -languages, you can use the '--show-c-function' ('-p') option. This +languages, you can use the ‘--show-c-function’ (‘-p’) option. This option automatically defaults to the context output format (*note Context Format::), with the default number of lines of context. You can -override that number with '-C LINES' elsewhere in the command line. You -can override both the format and the number with '-U LINES' elsewhere in +override that number with ‘-C LINES’ elsewhere in the command line. You +can override both the format and the number with ‘-U LINES’ elsewhere in the command line. - The '--show-c-function' ('-p') option is equivalent to '-F -'^[[:alpha:]$_]'' if the unified format is specified, otherwise '-c -F -'^[[:alpha:]$_]'' (*note Specified Headings::). GNU 'diff' provides + The ‘--show-c-function’ (‘-p’) option is equivalent to ‘-F +'^[[:alpha:]$_]'’ if the unified format is specified, otherwise ‘-c -F +'^[[:alpha:]$_]'’ (*note Specified Headings::). GNU ‘diff’ provides this option for the sake of convenience.  @@ -879,17 +880,17 @@ File: diffutils.info, Node: Alternate Names, Prev: Sections, Up: Context ---------------------------------- If you are comparing two files that have meaningless or uninformative -names, you might want 'diff' to show alternate names in the header of +names, you might want ‘diff’ to show alternate names in the header of the context and unified output formats. To do this, use the -'--label=LABEL' option. The first time you give this option, its +‘--label=LABEL’ option. The first time you give this option, its argument replaces the name and date of the first file in the header; the second time, its argument replaces the name and date of the second file. -If you give this option more than twice, 'diff' reports an error. The -'--label' option does not affect the file names in the 'pr' header when -the '-l' or '--paginate' option is used (*note Pagination::). +If you give this option more than twice, ‘diff’ reports an error. The +‘--label’ option does not affect the file names in the ‘pr’ header when +the ‘-l’ or ‘--paginate’ option is used (*note Pagination::). - Here are the first two lines of the output from 'diff -C 2 ---label=original --label=modified lao tzu': + Here are the first two lines of the output from ‘diff -C 2 +--label=original --label=modified lao tzu’: *** original --- modified @@ -900,38 +901,38 @@ File: diffutils.info, Node: Side by Side, Next: Normal, Prev: Context, Up: O 2.3 Showing Differences Side by Side ==================================== -'diff' can produce a side by side difference listing of two files. The +‘diff’ can produce a side by side difference listing of two files. The files are listed in two columns with a gutter between them. The gutter contains one of the following markers: white space The corresponding lines are in common. That is, either the lines are identical, or the difference is ignored because of one of the - '--ignore' options (*note White Space::). + ‘--ignore’ options (*note White Space::). -'|' +‘|’ The corresponding lines differ, and they are either both complete or both incomplete. -'<' +‘<’ The files differ and only the first file contains the line. -'>' +‘>’ The files differ and only the second file contains the line. -'(' +‘(’ Only the first file contains the line, but the difference is ignored. -')' +‘)’ Only the second file contains the line, but the difference is ignored. -'\' +‘\’ The corresponding lines differ, and only the first line is incomplete. -'/' +‘/’ The corresponding lines differ, and only the second line is incomplete. @@ -939,7 +940,7 @@ white space it contains are incomplete. *Note Incomplete Lines::. However, when an output line represents two differing lines, one might be incomplete while the other is not. In this case, the output line is complete, but -its the gutter is marked '\' if the first line is incomplete, '/' if the +its the gutter is marked ‘\’ if the first line is incomplete, ‘/’ if the second line is. Side by side format is sometimes easiest to read, but it has @@ -948,7 +949,7 @@ lines that are too long to fit. Also, it relies on lining up output more heavily than usual, so its output looks particularly bad if you use varying width fonts, nonstandard tab stops, or nonprinting characters. - You can use the 'sdiff' command to interactively merge side by side + You can use the ‘sdiff’ command to interactively merge side by side differences. *Note Interactive Merging::, for more information on merging files. @@ -963,18 +964,18 @@ File: diffutils.info, Node: Side by Side Format, Next: Example Side by Side, 2.3.1 Controlling Side by Side Format ------------------------------------- -The '--side-by-side' ('-y') option selects side by side format. Because +The ‘--side-by-side’ (‘-y’) option selects side by side format. Because side by side output lines contain two input lines, the output is wider than usual: normally 130 print columns, which can fit onto a traditional printer line. You can set the width of the output with the -'--width=COLUMNS' ('-W COLUMNS') option. The output is split into two +‘--width=COLUMNS’ (‘-W COLUMNS’) option. The output is split into two halves of equal width, separated by a small gutter to mark differences; the right half is aligned to a tab stop so that tabs line up. Input lines that are too long to fit in half of an output line are truncated for output. - The '--left-column' option prints only the left column of two common -lines. The '--suppress-common-lines' option suppresses common lines + The ‘--left-column’ option prints only the left column of two common +lines. The ‘--suppress-common-lines’ option suppresses common lines entirely.  @@ -983,7 +984,7 @@ File: diffutils.info, Node: Example Side by Side, Prev: Side by Side Format, 2.3.2 An Example of Side by Side Format --------------------------------------- -Here is the output of the command 'diff -y -W 72 lao tzu' (*note Sample +Here is the output of the command ‘diff -y -W 72 lao tzu’ (*note Sample diff Input::, for the complete contents of the two files). The Way that can be told of is n < @@ -1008,7 +1009,7 @@ File: diffutils.info, Node: Normal, Next: Scripts, Prev: Side by Side, Up: O 2.4 Showing Differences Without Context ======================================= -The "normal" 'diff' output format shows each hunk of differences without +The "normal" ‘diff’ output format shows each hunk of differences without any surrounding context. Sometimes such output is the clearest way to see how lines have changed, without the clutter of nearby unchanged lines (although you can get similar results with the context or unified @@ -1016,8 +1017,8 @@ formats by using 0 lines of context). However, this format is no longer widely used for sending out patches; for that purpose, the context format (*note Context Format::) and the unified format (*note Unified Format::) are superior. Normal format is the default for compatibility -with older versions of 'diff' and the POSIX standard. Use the -'--normal' option to select this output format explicitly. +with older versions of ‘diff’ and the POSIX standard. Use the +‘--normal’ option to select this output format explicitly. * Menu: @@ -1030,7 +1031,7 @@ File: diffutils.info, Node: Example Normal, Next: Detailed Normal, Up: Normal 2.4.1 An Example of Normal Format --------------------------------- -Here is the output of the command 'diff lao tzu' (*note Sample diff +Here is the output of the command ‘diff lao tzu’ (*note Sample diff Input::, for the complete contents of the two files). Notice that it shows only the lines that are different between the two files. @@ -1071,23 +1072,23 @@ comma-separated range of lines in the second file. All line numbers are the original line numbers in each file. The types of change commands are: -'LaR' +‘LaR’ Add the lines in range R of the second file after line L of the - first file. For example, '8a12,15' means append lines 12-15 of + first file. For example, ‘8a12,15’ means append lines 12-15 of file 2 after line 8 of file 1; or, if changing file 2 into file 1, delete lines 12-15 of file 2. -'FcT' +‘FcT’ Replace the lines in range F of the first file with lines in range T of the second file. This is like a combined add and delete, but - more compact. For example, '5,7c8,10' means change lines 5-7 of + more compact. For example, ‘5,7c8,10’ means change lines 5-7 of file 1 to read as lines 8-10 of file 2; or, if changing file 2 into file 1, change lines 8-10 of file 2 to read as lines 5-7 of file 1. -'RdL' +‘RdL’ Delete the lines in range R from the first file; line L is where they would have appeared in the second file had they not been - deleted. For example, '5,7d3' means delete lines 5-7 of file 1; + deleted. For example, ‘5,7d3’ means delete lines 5-7 of file 1; or, if changing file 2 into file 1, append lines 5-7 of file 1 after line 3 of file 2. @@ -1102,20 +1103,20 @@ produce TO-FILE. * Menu: -* ed Scripts:: Using 'diff' to produce commands for 'ed'. -* Forward ed:: Making forward 'ed' scripts. -* RCS:: A special 'diff' output format used by RCS. +* ed Scripts:: Using ‘diff’ to produce commands for ‘ed’. +* Forward ed:: Making forward ‘ed’ scripts. +* RCS:: A special ‘diff’ output format used by RCS.  File: diffutils.info, Node: ed Scripts, Next: Forward ed, Up: Scripts -2.5.1 'ed' Scripts +2.5.1 ‘ed’ Scripts ------------------ -'diff' can produce commands that direct the 'ed' text editor to change +‘diff’ can produce commands that direct the ‘ed’ text editor to change the first file into the second file. Long ago, this was the only output mode that was suitable for editing one file into another automatically; -today, with 'patch', it is almost obsolete. Use the '--ed' ('-e') +today, with ‘patch’, it is almost obsolete. Use the ‘--ed’ (‘-e’) option to select this output format. Like the normal format (*note Normal::), this output format does not @@ -1123,25 +1124,25 @@ show any context; unlike the normal format, it does not include the information necessary to apply the diff in reverse (to produce the first file if all you have is the second file and the diff). - If the file 'd' contains the output of 'diff -e old new', then the -command '(cat d && echo w) | ed - old' edits 'old' to make it a copy of -'new'. More generally, if 'd1', 'd2', ..., 'dN' contain the outputs of -'diff -e old new1', 'diff -e new1 new2', ..., 'diff -e newN-1 newN', -respectively, then the command '(cat d1 d2 ... dN && echo w) | ed - old' -edits 'old' to make it a copy of 'newN'. + If the file ‘d’ contains the output of ‘diff -e old new’, then the +command ‘(cat d && echo w) | ed - old’ edits ‘old’ to make it a copy of +‘new’. More generally, if ‘d1’, ‘d2’, ..., ‘dN’ contain the outputs of +‘diff -e old new1’, ‘diff -e new1 new2’, ..., ‘diff -e newN-1 newN’, +respectively, then the command ‘(cat d1 d2 ... dN && echo w) | ed - old’ +edits ‘old’ to make it a copy of ‘newN’. * Menu: -* Example ed:: A sample 'ed' script. -* Detailed ed:: A detailed description of 'ed' format. +* Example ed:: A sample ‘ed’ script. +* Detailed ed:: A detailed description of ‘ed’ format.  File: diffutils.info, Node: Example ed, Next: Detailed ed, Up: ed Scripts -2.5.1.1 Example 'ed' Script +2.5.1.1 Example ‘ed’ Script ........................... -Here is the output of 'diff -e lao tzu' (*note Sample diff Input::, for +Here is the output of ‘diff -e lao tzu’ (*note Sample diff Input::, for the complete contents of the two files): 11a @@ -1158,25 +1159,25 @@ the complete contents of the two files):  File: diffutils.info, Node: Detailed ed, Prev: Example ed, Up: ed Scripts -2.5.1.2 Detailed Description of 'ed' Format +2.5.1.2 Detailed Description of ‘ed’ Format ........................................... -The 'ed' output format consists of one or more hunks of differences. +The ‘ed’ output format consists of one or more hunks of differences. The changes closest to the ends of the files come first so that commands -that change the number of lines do not affect how 'ed' interprets line -numbers in succeeding commands. 'ed' format hunks look like this: +that change the number of lines do not affect how ‘ed’ interprets line +numbers in succeeding commands. ‘ed’ format hunks look like this: CHANGE-COMMAND TO-FILE-LINE TO-FILE-LINE... . - Because 'ed' uses a single period on a line to indicate the end of -input, GNU 'diff' protects lines of changes that contain a single period -on a line by writing two periods instead, then writing a subsequent 'ed' -command to change the two periods into one. The 'ed' format cannot + Because ‘ed’ uses a single period on a line to indicate the end of +input, GNU ‘diff’ protects lines of changes that contain a single period +on a line by writing two periods instead, then writing a subsequent ‘ed’ +command to change the two periods into one. The ‘ed’ format cannot represent an incomplete line, so if the second file ends in a changed -incomplete line, 'diff' reports an error and then pretends that a +incomplete line, ‘diff’ reports an error and then pretends that a newline was appended. There are three types of change commands. Each consists of a line @@ -1185,38 +1186,38 @@ character indicating the kind of change to make. All line numbers are the original line numbers in the file. The types of change commands are: -'La' +‘La’ Add text from the second file after line L in the first file. For - example, '8a' means to add the following lines after line 8 of file + example, ‘8a’ means to add the following lines after line 8 of file 1. -'Rc' +‘Rc’ Replace the lines in range R in the first file with the following lines. Like a combined add and delete, but more compact. For - example, '5,7c' means change lines 5-7 of file 1 to read as the + example, ‘5,7c’ means change lines 5-7 of file 1 to read as the text file 2. -'Rd' +‘Rd’ Delete the lines in range R from the first file. For example, - '5,7d' means delete lines 5-7 of file 1. + ‘5,7d’ means delete lines 5-7 of file 1.  File: diffutils.info, Node: Forward ed, Next: RCS, Prev: ed Scripts, Up: Scripts -2.5.2 Forward 'ed' Scripts +2.5.2 Forward ‘ed’ Scripts -------------------------- -'diff' can produce output that is like an 'ed' script, but with hunks in +‘diff’ can produce output that is like an ‘ed’ script, but with hunks in forward (front to back) order. The format of the commands is also changed slightly: command characters precede the lines they modify, spaces separate line numbers in ranges, and no attempt is made to -disambiguate hunk lines consisting of a single period. Like 'ed' -format, forward 'ed' format cannot represent incomplete lines. +disambiguate hunk lines consisting of a single period. Like ‘ed’ +format, forward ‘ed’ format cannot represent incomplete lines. - Forward 'ed' format is not very useful, because neither 'ed' nor -'patch' can apply diffs in this format. It exists mainly for -compatibility with older versions of 'diff'. Use the '-f' or -'--forward-ed' option to select it. + Forward ‘ed’ format is not very useful, because neither ‘ed’ nor +‘patch’ can apply diffs in this format. It exists mainly for +compatibility with older versions of ‘diff’. Use the ‘-f’ or +‘--forward-ed’ option to select it.  File: diffutils.info, Node: RCS, Prev: Forward ed, Up: Scripts @@ -1226,18 +1227,18 @@ File: diffutils.info, Node: RCS, Prev: Forward ed, Up: Scripts The RCS output format is designed specifically for use by the Revision Control System, which is a set of free programs used for organizing -different versions and systems of files. Use the '--rcs' ('-n') option -to select this output format. It is like the forward 'ed' format (*note +different versions and systems of files. Use the ‘--rcs’ (‘-n’) option +to select this output format. It is like the forward ‘ed’ format (*note Forward ed::), but it can represent arbitrary changes to the contents of -a file because it avoids the forward 'ed' format's problems with lines +a file because it avoids the forward ‘ed’ format's problems with lines consisting of a single period and with incomplete lines. Instead of ending text sections with a line consisting of a single period, each command specifies the number of lines it affects; a combination of the -'a' and 'd' commands are used instead of 'c'. Also, if the second file +‘a’ and ‘d’ commands are used instead of ‘c’. Also, if the second file ends in a changed incomplete line, then the output also ends in an incomplete line. - Here is the output of 'diff -n lao tzu' (*note Sample diff Input::, + Here is the output of ‘diff -n lao tzu’ (*note Sample diff Input::, for the complete contents of the two files): d1 2 @@ -1256,21 +1257,21 @@ File: diffutils.info, Node: If-then-else, Prev: Scripts, Up: Output Formats 2.6 Merging Files with If-then-else =================================== -You can use 'diff' to merge two files of C source code. The output of -'diff' in this format contains all the lines of both files. Lines +You can use ‘diff’ to merge two files of C source code. The output of +‘diff’ in this format contains all the lines of both files. Lines common to both files are output just once; the differing parts are -separated by the C preprocessor directives '#ifdef NAME' or '#ifndef -NAME', '#else', and '#endif'. When compiling the output, you select +separated by the C preprocessor directives ‘#ifdef NAME’ or ‘#ifndef +NAME’, ‘#else’, and ‘#endif’. When compiling the output, you select which version to use by either defining or leaving undefined the macro NAME. - To merge two files, use 'diff' with the '-D NAME' or '--ifdef=NAME' + To merge two files, use ‘diff’ with the ‘-D NAME’ or ‘--ifdef=NAME’ option. The argument NAME is the C preprocessor identifier to use in -the '#ifdef' and '#ifndef' directives. +the ‘#ifdef’ and ‘#ifndef’ directives. - For example, if you change an instance of 'wait (&s)' to 'waitpid -(-1, &s, 0)' and then merge the old and new files with the -'--ifdef=HAVE_WAITPID' option, then the affected part of your code might + For example, if you change an instance of ‘wait (&s)’ to ‘waitpid +(-1, &s, 0)’ and then merge the old and new files with the +‘--ifdef=HAVE_WAITPID’ option, then the affected part of your code might look like this: do { @@ -1303,10 +1304,10 @@ applications that allow if-then-else input, including programming languages and text formatting languages. A line group format specifies the output format for a contiguous group of similar lines. - For example, the following command compares the TeX files 'old' and -'new', and outputs a merged file in which old regions are surrounded by -'\begin{em}'-'\end{em}' lines, and new regions are surrounded by -'\begin{bf}'-'\end{bf}' lines. + For example, the following command compares the TeX files ‘old’ and +‘new’, and outputs a merged file in which old regions are surrounded by +‘\begin{em}’-‘\end{em}’ lines, and new regions are surrounded by +‘\begin{bf}’-‘\end{bf}’ lines. diff \ --old-group-format='\begin{em} @@ -1350,112 +1351,112 @@ headers containing line numbers in a "plain English" style. %>' \ old new - To specify a line group format, use 'diff' with one of the options + To specify a line group format, use ‘diff’ with one of the options listed below. You can specify up to four line group formats, one for each kind of line group. You should quote FORMAT, because it typically contains shell metacharacters. -'--old-group-format=FORMAT' +‘--old-group-format=FORMAT’ These line groups are hunks containing only lines from the first file. The default old group format is the same as the changed group format if it is specified; otherwise it is a format that outputs the line group as-is. -'--new-group-format=FORMAT' +‘--new-group-format=FORMAT’ These line groups are hunks containing only lines from the second file. The default new group format is same as the changed group format if it is specified; otherwise it is a format that outputs the line group as-is. -'--changed-group-format=FORMAT' +‘--changed-group-format=FORMAT’ These line groups are hunks containing lines from both files. The default changed group format is the concatenation of the old and new group formats. -'--unchanged-group-format=FORMAT' +‘--unchanged-group-format=FORMAT’ These line groups contain lines common to both files. The default unchanged group format is a format that outputs the line group as-is. In a line group format, ordinary characters represent themselves; -conversion specifications start with '%' and have one of the following +conversion specifications start with ‘%’ and have one of the following forms. -'%<' +‘%<’ stands for the lines from the first file, including the trailing newline. Each line is formatted according to the old line format (*note Line Formats::). -'%>' +‘%>’ stands for the lines from the second file, including the trailing newline. Each line is formatted according to the new line format. -'%=' +‘%=’ stands for the lines common to both files, including the trailing newline. Each line is formatted according to the unchanged line format. -'%%' - stands for '%'. +‘%%’ + stands for ‘%’. -'%c'C'' +‘%c'C'’ where C is a single character, stands for C. C may not be a - backslash or an apostrophe. For example, '%c':'' stands for a + backslash or an apostrophe. For example, ‘%c':'’ stands for a colon, even inside the then-part of an if-then-else format, which a colon would normally terminate. -'%c'\O'' +‘%c'\O'’ where O is a string of 1, 2, or 3 octal digits, stands for the - character with octal code O. For example, '%c'\0'' stands for a + character with octal code O. For example, ‘%c'\0'’ stands for a null character. -'FN' - where F is a 'printf' conversion specification and N is one of the +‘FN’ + where F is a ‘printf’ conversion specification and N is one of the following letters, stands for N's value formatted with F. - 'e' + ‘e’ The line number of the line just before the group in the old file. - 'f' + ‘f’ The line number of the first line in the group in the old file; equals E + 1. - 'l' + ‘l’ The line number of the last line in the group in the old file. - 'm' + ‘m’ The line number of the line just after the group in the old file; equals L + 1. - 'n' + ‘n’ The number of lines in the group in the old file; equals L - F + 1. - 'E, F, L, M, N' + ‘E, F, L, M, N’ Likewise, for lines in the new file. - The 'printf' conversion specification can be '%d', '%o', '%x', or - '%X', specifying decimal, octal, lower case hexadecimal, or upper - case hexadecimal output respectively. After the '%' the following + The ‘printf’ conversion specification can be ‘%d’, ‘%o’, ‘%x’, or + ‘%X’, specifying decimal, octal, lower case hexadecimal, or upper + case hexadecimal output respectively. After the ‘%’ the following options can appear in sequence: a series of zero or more flags; an integer specifying the minimum field width; and a period followed by an optional integer specifying the minimum number of digits. - The flags are '-' for left-justification, ''' for separating the - digit into groups as specified by the 'LC_NUMERIC' locale category, - and '0' for padding with zeros instead of spaces. For example, - '%5dN' prints the number of new lines in the group in a field of - width 5 characters, using the 'printf' format '"%5d"'. + The flags are ‘-’ for left-justification, ‘'’ for separating the + digit into groups as specified by the ‘LC_NUMERIC’ locale category, + and ‘0’ for padding with zeros instead of spaces. For example, + ‘%5dN’ prints the number of new lines in the group in a field of + width 5 characters, using the ‘printf’ format ‘"%5d"’. -'(A=B?T:E)' +‘(A=B?T:E)’ If A equals B then T else E. A and B are each either a decimal constant or a single letter interpreted as above. This format spec is equivalent to T if A's value equals B's; otherwise it is equivalent to E. - For example, '%(N=0?no:%dN) line%(N=1?:s)' is equivalent to 'no - lines' if N (the number of lines in the group in the new file) is - 0, to '1 line' if N is 1, and to '%dN lines' otherwise. + For example, ‘%(N=0?no:%dN) line%(N=1?:s)’ is equivalent to ‘no + lines’ if N (the number of lines in the group in the new file) is + 0, to ‘1 line’ if N is 1, and to ‘%dN lines’ otherwise.  File: diffutils.info, Node: Line Formats, Next: Example If-then-else, Prev: Line Group Formats, Up: If-then-else @@ -1468,7 +1469,7 @@ part of a line group in if-then-else format. For example, the following command outputs text with a one-character change indicator to the left of the text. The first character of output -is '-' for deleted lines, '|' for added lines, and a space for unchanged +is ‘-’ for deleted lines, ‘|’ for added lines, and a space for unchanged lines. The formats contain newline characters where newlines are desired on output. @@ -1484,63 +1485,63 @@ desired on output. To specify a line format, use one of the following options. You should quote FORMAT, since it often contains shell metacharacters. -'--old-line-format=FORMAT' +‘--old-line-format=FORMAT’ formats lines just from the first file. -'--new-line-format=FORMAT' +‘--new-line-format=FORMAT’ formats lines just from the second file. -'--unchanged-line-format=FORMAT' +‘--unchanged-line-format=FORMAT’ formats lines common to both files. -'--line-format=FORMAT' +‘--line-format=FORMAT’ formats all lines; in effect, it sets all three above options simultaneously. In a line format, ordinary characters represent themselves; -conversion specifications start with '%' and have one of the following +conversion specifications start with ‘%’ and have one of the following forms. -'%l' +‘%l’ stands for the contents of the line, not counting its trailing newline (if any). This format ignores whether the line is incomplete; *Note Incomplete Lines::. -'%L' +‘%L’ stands for the contents of the line, including its trailing newline (if any). If a line is incomplete, this format preserves its incompleteness. -'%%' - stands for '%'. +‘%%’ + stands for ‘%’. -'%c'C'' +‘%c'C'’ where C is a single character, stands for C. C may not be a - backslash or an apostrophe. For example, '%c':'' stands for a + backslash or an apostrophe. For example, ‘%c':'’ stands for a colon. -'%c'\O'' +‘%c'\O'’ where O is a string of 1, 2, or 3 octal digits, stands for the - character with octal code O. For example, '%c'\0'' stands for a + character with octal code O. For example, ‘%c'\0'’ stands for a null character. -'Fn' - where F is a 'printf' conversion specification, stands for the line - number formatted with F. For example, '%.5dn' prints the line - number using the 'printf' format '"%.5d"'. *Note Line Group +‘Fn’ + where F is a ‘printf’ conversion specification, stands for the line + number formatted with F. For example, ‘%.5dn’ prints the line + number using the ‘printf’ format ‘"%.5d"’. *Note Line Group Formats::, for more about printf conversion specifications. - The default line format is '%l' followed by a newline character. + The default line format is ‘%l’ followed by a newline character. If the input contains tab characters and it is important that they -line up on output, you should ensure that '%l' or '%L' in a line format -is just after a tab stop (e.g. by preceding '%l' or '%L' with a tab -character), or you should use the '-t' or '--expand-tabs' option. +line up on output, you should ensure that ‘%l’ or ‘%L’ in a line format +is just after a tab stop (e.g. by preceding ‘%l’ or ‘%L’ with a tab +character), or you should use the ‘-t’ or ‘--expand-tabs’ option. Taken together, the line and line group formats let you specify many different formats. For example, the following command uses a format -similar to normal 'diff' format. You can tailor this command to get -fine control over 'diff' output. +similar to normal ‘diff’ format. You can tailor this command to get +fine control over ‘diff’ output. diff \ --old-line-format='< %l @@ -1563,7 +1564,7 @@ File: diffutils.info, Node: Example If-then-else, Next: Detailed If-then-else, 2.6.3 An Example of If-then-else Format --------------------------------------- -Here is the output of 'diff -DTWO lao tzu' (*note Sample diff Input::, +Here is the output of ‘diff -DTWO lao tzu’ (*note Sample diff Input::, for the complete contents of the two files): #ifndef TWO @@ -1596,18 +1597,18 @@ File: diffutils.info, Node: Detailed If-then-else, Prev: Example If-then-else, 2.6.4 Detailed Description of If-then-else Format ------------------------------------------------- -For lines common to both files, 'diff' uses the unchanged line group +For lines common to both files, ‘diff’ uses the unchanged line group format. For each hunk of differences in the merged output format, if -the hunk contains only lines from the first file, 'diff' uses the old +the hunk contains only lines from the first file, ‘diff’ uses the old line group format; if the hunk contains only lines from the second file, -'diff' uses the new group format; otherwise, 'diff' uses the changed +‘diff’ uses the new group format; otherwise, ‘diff’ uses the changed group format. The old, new, and unchanged line formats specify the output format of lines from the first file, lines from the second file, and lines common to both files, respectively. - The option '--ifdef=NAME' is equivalent to the following sequence of + The option ‘--ifdef=NAME’ is equivalent to the following sequence of options using shell syntax: --old-group-format='#ifndef NAME @@ -1622,17 +1623,17 @@ options using shell syntax: %>#endif /* NAME */ ' - You should carefully check the 'diff' output for proper nesting. For -example, when using the '-D NAME' or '--ifdef=NAME' option, you should + You should carefully check the ‘diff’ output for proper nesting. For +example, when using the ‘-D NAME’ or ‘--ifdef=NAME’ option, you should check that if the differing lines contain any of the C preprocessor -directives '#ifdef', '#ifndef', '#else', '#elif', or '#endif', they are +directives ‘#ifdef’, ‘#ifndef’, ‘#else’, ‘#elif’, or ‘#endif’, they are nested properly and match. If they don't, you must make corrections manually. It is a good idea to carefully check the resulting code anyway to make sure that it really does what you want it to; depending on how the input files were produced, the output might contain duplicate or otherwise incorrect code. - The 'patch' '-D NAME' option behaves like the 'diff' '-D NAME' + The ‘patch’ ‘-D NAME’ option behaves like the ‘diff’ ‘-D NAME’ option, except it operates on a file and a diff to produce a merged file. *Note patch Options::. @@ -1643,24 +1644,24 @@ File: diffutils.info, Node: Incomplete Lines, Next: Comparing Directories, Pr ****************** When an input file ends in a non-newline character, its last line is -called an "incomplete line" because its last character is not a newline. -All other lines are called "full lines" and end in a newline character. +called an “incomplete line” because its last character is not a newline. +All other lines are called “full lines” and end in a newline character. Incomplete lines do not match full lines unless differences in white space are ignored (*note White Space::). An incomplete line is normally distinguished on output from a full -line by a following line that starts with '\'. However, the RCS format +line by a following line that starts with ‘\’. However, the RCS format (*note RCS::) outputs the incomplete line as-is, without any trailing newline or following line. The side by side format normally represents -incomplete lines as-is, but in some cases uses a '\' or '/' gutter +incomplete lines as-is, but in some cases uses a ‘\’ or ‘/’ gutter marker. *Note Side by Side::. The if-then-else line format preserves a -line's incompleteness with '%L', and discards the newline with '%l'. -*Note Line Formats::. Finally, with the 'ed' and forward 'ed' output -formats (*note Output Formats::) 'diff' cannot represent an incomplete +line's incompleteness with ‘%L’, and discards the newline with ‘%l’. +*Note Line Formats::. Finally, with the ‘ed’ and forward ‘ed’ output +formats (*note Output Formats::) ‘diff’ cannot represent an incomplete line, so it pretends there was a newline and reports an error. - For example, suppose 'F' and 'G' are one-byte files that contain just -'f' and 'g', respectively. Then 'diff F G' outputs + For example, suppose ‘F’ and ‘G’ are one-byte files that contain just +‘f’ and ‘g’, respectively. Then ‘diff F G’ outputs 1c1 < f @@ -1669,14 +1670,14 @@ line, so it pretends there was a newline and reports an error. > g \ No newline at end of file -(The exact message may differ in non-English locales.) 'diff -n F G' +(The exact message may differ in non-English locales.) ‘diff -n F G’ outputs the following without a trailing newline: d1 1 a1 1 g -'diff -e F G' reports two errors and outputs the following: +‘diff -e F G’ reports two errors and outputs the following: 1c g @@ -1688,32 +1689,32 @@ File: diffutils.info, Node: Comparing Directories, Next: Adjusting Output, Pr 4 Comparing Directories *********************** -You can use 'diff' to compare some or all of the files in two directory -trees. When both file name arguments to 'diff' are directories, it +You can use ‘diff’ to compare some or all of the files in two directory +trees. When both file name arguments to ‘diff’ are directories, it compares each file that is contained in both directories, examining file -names in alphabetical order as specified by the 'LC_COLLATE' locale -category. Normally 'diff' is silent about pairs of files that contain -no differences, but if you use the '--report-identical-files' ('-s') -option, it reports pairs of identical files. Normally 'diff' reports +names in alphabetical order as specified by the ‘LC_COLLATE’ locale +category. Normally ‘diff’ is silent about pairs of files that contain +no differences, but if you use the ‘--report-identical-files’ (‘-s’) +option, it reports pairs of identical files. Normally ‘diff’ reports subdirectories common to both directories without comparing -subdirectories' files, but if you use the '-r' or '--recursive' option, +subdirectories' files, but if you use the ‘-r’ or ‘--recursive’ option, it compares every corresponding pair of files in the directory trees, as many levels deep as they go. - If only one file exists, 'diff' normally does not show its contents; + If only one file exists, ‘diff’ normally does not show its contents; it merely reports that one file exists but the other does not. You can -make 'diff' act as though the missing file is empty, so that it outputs +make ‘diff’ act as though the missing file is empty, so that it outputs the entire contents of the file that actually exists. (It is output as either an insertion or a deletion, depending on whether the missing file is in the first or the second position.) To do this, use the -'--new-file' ('-N') option. This option affects command-line arguments -as well as files found via directory traversal; for example, 'diff -N a -b' treats 'a' as empty if 'a' does not exist but 'b' does. +‘--new-file’ (‘-N’) option. This option affects command-line arguments +as well as files found via directory traversal; for example, ‘diff -N a +b’ treats ‘a’ as empty if ‘a’ does not exist but ‘b’ does. If the older directory contains large files that are not in the newer directory, you can make the patch smaller by using the -'--unidirectional-new-file' option instead of '-N'. This option is like -'-N' except that it inserts the contents only of files that appear in +‘--unidirectional-new-file’ option instead of ‘-N’. This option is like +‘-N’ except that it inserts the contents only of files that appear in the second directory but not the first (that is, files that were added). At the top of the patch, write instructions for the user applying the patch to remove the files that were deleted before applying the patch. @@ -1721,61 +1722,61 @@ patch to remove the files that were deleted before applying the patch. distribution. To ignore some files while comparing directories, use the -'--exclude=PATTERN' ('-x PATTERN') option. This option ignores any +‘--exclude=PATTERN’ (‘-x PATTERN’) option. This option ignores any files or subdirectories whose base names match the shell pattern PATTERN. Unlike in the shell, a period at the start of the base of a file name matches a wildcard at the start of a pattern. You should enclose PATTERN in quotes so that the shell does not expand it. For -example, the option '-x '*.[ao]'' ignores any file whose name ends with -'.a' or '.o'. +example, the option ‘-x '*.[ao]'’ ignores any file whose name ends with +‘.a’ or ‘.o’. This option accumulates if you specify it more than once. For -example, using the options '-x 'RCS' -x '*,v'' ignores any file or -subdirectory whose base name is 'RCS' or ends with ',v'. +example, using the options ‘-x 'RCS' -x '*,v'’ ignores any file or +subdirectory whose base name is ‘RCS’ or ends with ‘,v’. If you need to give this option many times, you can instead put the patterns in a file, one pattern per line, and use the -'--exclude-from=FILE' ('-X FILE') option. Trailing white space and +‘--exclude-from=FILE’ (‘-X FILE’) option. Trailing white space and empty lines are ignored in the pattern file. If you have been comparing two directories and stopped partway through, later you might want to continue where you left off. You can -do this by using the '--starting-file=FILE' ('-S FILE') option. This +do this by using the ‘--starting-file=FILE’ (‘-S FILE’) option. This compares only the file FILE and all alphabetically later files in the topmost directory level. If two directories differ only in that file names are lower case in -one directory and upper case in the upper, 'diff' normally reports many +one directory and upper case in the upper, ‘diff’ normally reports many differences because it compares file names in a case sensitive way. -With the '--ignore-file-name-case' option, 'diff' ignores case +With the ‘--ignore-file-name-case’ option, ‘diff’ ignores case differences in file names, so that for example the contents of the file -'Tao' in one directory are compared to the contents of the file 'TAO' in -the other. The '--no-ignore-file-name-case' option cancels the effect -of the '--ignore-file-name-case' option, reverting to the default +‘Tao’ in one directory are compared to the contents of the file ‘TAO’ in +the other. The ‘--no-ignore-file-name-case’ option cancels the effect +of the ‘--ignore-file-name-case’ option, reverting to the default behavior. - If an '--exclude=PATTERN' ('-x PATTERN') option, or an -'--exclude-from=FILE' ('-X FILE') option, is specified while the -'--ignore-file-name-case' option is in effect, case is ignored when + If an ‘--exclude=PATTERN’ (‘-x PATTERN’) option, or an +‘--exclude-from=FILE’ (‘-X FILE’) option, is specified while the +‘--ignore-file-name-case’ option is in effect, case is ignored when excluding file names matching the specified patterns. - To tell 'diff' not to follow a symbolic link, use the -'--no-dereference' option. + To tell ‘diff’ not to follow a symbolic link, use the +‘--no-dereference’ option.  File: diffutils.info, Node: Adjusting Output, Next: diff Performance, Prev: Comparing Directories, Up: Top -5 Making 'diff' Output Prettier +5 Making ‘diff’ Output Prettier ******************************* -'diff' provides several ways to adjust the appearance of its output. +‘diff’ provides several ways to adjust the appearance of its output. These adjustments can be applied to any output format. * Menu: * Tabs:: Preserving the alignment of tab stops. * Trailing Blanks:: Suppressing blanks before empty output lines. -* Pagination:: Page numbering and time-stamping 'diff' output. +* Pagination:: Page numbering and time-stamping ‘diff’ output.  File: diffutils.info, Node: Tabs, Next: Trailing Blanks, Up: Adjusting Output @@ -1783,20 +1784,20 @@ File: diffutils.info, Node: Tabs, Next: Trailing Blanks, Up: Adjusting Output 5.1 Preserving Tab Stop Alignment ================================= -The lines of text in some of the 'diff' output formats are preceded by +The lines of text in some of the ‘diff’ output formats are preceded by one or two characters that indicate whether the text is inserted, deleted, or changed. The addition of those characters can cause tabs to move to the next tab stop, throwing off the alignment of columns in the -line. GNU 'diff' provides two ways to make tab-aligned columns line up +line. GNU ‘diff’ provides two ways to make tab-aligned columns line up correctly. - The first way is to have 'diff' convert all tabs into the correct + The first way is to have ‘diff’ convert all tabs into the correct number of spaces before outputting them; select this method with the -'--expand-tabs' ('-t') option. To use this form of output with 'patch', -you must give 'patch' the '-l' or '--ignore-white-space' option (*note -Changed White Space::, for more information). 'diff' normally assumes +‘--expand-tabs’ (‘-t’) option. To use this form of output with ‘patch’, +you must give ‘patch’ the ‘-l’ or ‘--ignore-white-space’ option (*note +Changed White Space::, for more information). ‘diff’ normally assumes that tab stops are set every 8 print columns, but this can be altered by -the '--tabsize=COLUMNS' option. +the ‘--tabsize=COLUMNS’ option. The other method for making tabs line up correctly is to add a tab character instead of a space after the indicator character at the @@ -1806,8 +1807,8 @@ original files, so that the output is aligned correctly. Its disadvantage is that it can make long lines too long to fit on one line of the screen or the paper. It also does not work with the unified output format, which does not have a space character after the change -type indicator character. Select this method with the '-T' or -'--initial-tab' option. +type indicator character. Select this method with the ‘-T’ or +‘--initial-tab’ option.  File: diffutils.info, Node: Trailing Blanks, Next: Pagination, Prev: Tabs, Up: Adjusting Output @@ -1816,90 +1817,90 @@ File: diffutils.info, Node: Trailing Blanks, Next: Pagination, Prev: Tabs, U ============================ When outputting lines in normal or context format, or outputting an -unchanged line in unified format, 'diff' normally outputs a blank just -before each line. If the line is empty, the output of 'diff' therefore +unchanged line in unified format, ‘diff’ normally outputs a blank just +before each line. If the line is empty, the output of ‘diff’ therefore contains trailing blanks even though the input does not contain them. For example, when outputting an unchanged empty line in context format, -'diff' normally outputs a line with two leading spaces. +‘diff’ normally outputs a line with two leading spaces. Some text editors and email agents routinely delete trailing blanks, so it can be a problem to deal with diff output files that contain them. -You can avoid this problem with the '--suppress-blank-empty' option. It -causes 'diff' to omit trailing blanks at the end of output lines in +You can avoid this problem with the ‘--suppress-blank-empty’ option. It +causes ‘diff’ to omit trailing blanks at the end of output lines in normal, context, and unified format, unless the trailing blanks were already present in the input. This changes the output format slightly, so that output lines are guaranteed to never end in a blank unless an input line ends in a blank. This format is less likely to be munged by text editors or by transmission via email. It is accepted by GNU -'patch' as well. +‘patch’ as well.  File: diffutils.info, Node: Pagination, Prev: Trailing Blanks, Up: Adjusting Output -5.3 Paginating 'diff' Output +5.3 Paginating ‘diff’ Output ============================ It can be convenient to have long output page-numbered and time-stamped. -The '--paginate' ('-l') option does this by sending the 'diff' output -through the 'pr' program. Here is what the page header might look like -for 'diff -lc lao tzu': +The ‘--paginate’ (‘-l’) option does this by sending the ‘diff’ output +through the ‘pr’ program. Here is what the page header might look like +for ‘diff -lc lao tzu’: 2002-02-22 14:20 diff -lc lao tzu Page 1  File: diffutils.info, Node: diff Performance, Next: Comparing Three Files, Prev: Adjusting Output, Up: Top -6 'diff' Performance Tradeoffs +6 ‘diff’ Performance Tradeoffs ****************************** -GNU 'diff' runs quite efficiently; however, in some circumstances you +GNU ‘diff’ runs quite efficiently; however, in some circumstances you can cause it to run faster or produce a more compact set of changes. - One way to improve 'diff' performance is to use hard or symbolic + One way to improve ‘diff’ performance is to use hard or symbolic links to files instead of copies. This improves performance because -'diff' normally does not need to read two hard or symbolic links to the +‘diff’ normally does not need to read two hard or symbolic links to the same file, since their contents must be identical. For example, suppose you copy a large directory hierarchy, make a few changes to the copy, -and then often use 'diff -r' to compare the original to the copy. If +and then often use ‘diff -r’ to compare the original to the copy. If the original files are read-only, you can greatly improve performance by -creating the copy using hard or symbolic links (e.g., with GNU 'cp -lR' -or 'cp -sR'). Before editing a file in the copy for the first time, you +creating the copy using hard or symbolic links (e.g., with GNU ‘cp -lR’ +or ‘cp -sR’). Before editing a file in the copy for the first time, you should break the link and replace it with a regular copy. - You can also affect the performance of GNU 'diff' by giving it + You can also affect the performance of GNU ‘diff’ by giving it options that change the way it compares files. Performance has more than one dimension. These options improve one aspect of performance at the cost of another, or they improve performance in some cases while hurting it in others. - The way that GNU 'diff' determines which lines have changed always + The way that GNU ‘diff’ determines which lines have changed always comes up with a near-minimal set of differences. Usually it is good -enough for practical purposes. If the 'diff' output is large, you might -want 'diff' to use a modified algorithm that sometimes produces a -smaller set of differences. The '--minimal' ('-d') option does this; -however, it can also cause 'diff' to run more slowly than usual, so it +enough for practical purposes. If the ‘diff’ output is large, you might +want ‘diff’ to use a modified algorithm that sometimes produces a +smaller set of differences. The ‘--minimal’ (‘-d’) option does this; +however, it can also cause ‘diff’ to run more slowly than usual, so it is not the default behavior. When the files you are comparing are large and have small groups of -changes scattered throughout them, you can use the '--speed-large-files' -option to make a different modification to the algorithm that 'diff' +changes scattered throughout them, you can use the ‘--speed-large-files’ +option to make a different modification to the algorithm that ‘diff’ uses. If the input files have a constant small density of changes, this option speeds up the comparisons without changing the output. If not, -'diff' might produce a larger set of differences; however, the output +‘diff’ might produce a larger set of differences; however, the output will still be correct. - Normally 'diff' discards the prefix and suffix that is common to both + Normally ‘diff’ discards the prefix and suffix that is common to both files before it attempts to find a minimal set of differences. This -makes 'diff' run faster, but occasionally it may produce non-minimal -output. The '--horizon-lines=LINES' option prevents 'diff' from +makes ‘diff’ run faster, but occasionally it may produce non-minimal +output. The ‘--horizon-lines=LINES’ option prevents ‘diff’ from discarding the last LINES lines of the prefix and the first LINES lines -of the suffix. This gives 'diff' further opportunities to find a +of the suffix. This gives ‘diff’ further opportunities to find a minimal output. Suppose a run of changed lines includes a sequence of lines at one end and there is an identical sequence of lines just outside the other -end. The 'diff' command is free to choose which identical sequence is -included in the hunk. In this case, 'diff' normally shifts the hunk's +end. The ‘diff’ command is free to choose which identical sequence is +included in the hunk. In this case, ‘diff’ normally shifts the hunk's boundaries when this merges adjacent hunks, or shifts a hunk's lines towards the end of the file. Merging hunks can make the output look nicer in some cases. @@ -1910,19 +1911,19 @@ File: diffutils.info, Node: Comparing Three Files, Next: diff3 Merging, Prev: 7 Comparing Three Files *********************** -Use the program 'diff3' to compare three files and show any differences -among them. ('diff3' can also merge files; see *note diff3 Merging::). +Use the program ‘diff3’ to compare three files and show any differences +among them. (‘diff3’ can also merge files; see *note diff3 Merging::). - The "normal" 'diff3' output format shows each hunk of differences + The "normal" ‘diff3’ output format shows each hunk of differences without surrounding context. Hunks are labeled depending on whether they are two-way or three-way, and lines are annotated by their location in the input files. - *Note Invoking diff3::, for more information on how to run 'diff3'. + *Note Invoking diff3::, for more information on how to run ‘diff3’. * Menu: -* Sample diff3 Input:: Sample 'diff3' input for examples. +* Sample diff3 Input:: Sample ‘diff3’ input for examples. * Example diff3 Normal:: Sample output in the normal format. * Detailed diff3 Normal:: A detailed description of normal output format. * diff3 Hunks:: The format of normal output format. @@ -1934,9 +1935,9 @@ File: diffutils.info, Node: Sample diff3 Input, Next: Example diff3 Normal, U ============================= Here is a third sample file that will be used in examples to illustrate -the output of 'diff3' and how various options can change it. The first -two files are the same that we used for 'diff' (*note Sample diff -Input::). This is the third sample file, called 'tao': +the output of ‘diff3’ and how various options can change it. The first +two files are the same that we used for ‘diff’ (*note Sample diff +Input::). This is the third sample file, called ‘tao’: The Way that can be told of is not the eternal Way; The name that can be named is not the eternal name. @@ -1956,10 +1957,10 @@ Input::). This is the third sample file, called 'tao':  File: diffutils.info, Node: Example diff3 Normal, Next: Detailed diff3 Normal, Prev: Sample diff3 Input, Up: Comparing Three Files -7.2 An Example of 'diff3' Normal Format +7.2 An Example of ‘diff3’ Normal Format ======================================= -Here is the output of the command 'diff3 lao tzu tao' (*note Sample +Here is the output of the command ‘diff3 lao tzu tao’ (*note Sample diff3 Input::, for the complete contents of the files). Notice that it shows only the lines that are different among the three files. @@ -1995,62 +1996,62 @@ shows only the lines that are different among the three files.  File: diffutils.info, Node: Detailed diff3 Normal, Next: diff3 Hunks, Prev: Example diff3 Normal, Up: Comparing Three Files -7.3 Detailed Description of 'diff3' Normal Format +7.3 Detailed Description of ‘diff3’ Normal Format ================================================= -Each hunk begins with a line marked '===='. Three-way hunks have plain -'====' lines, and two-way hunks have '1', '2', or '3' appended to +Each hunk begins with a line marked ‘====’. Three-way hunks have plain +‘====’ lines, and two-way hunks have ‘1’, ‘2’, or ‘3’ appended to specify which of the three input files differ in that hunk. The hunks contain copies of two or three sets of input lines each preceded by one or two commands identifying where the lines came from. Normally, two spaces precede each copy of an input line to -distinguish it from the commands. But with the '--initial-tab' ('-T') -option, 'diff3' uses a tab instead of two spaces; this lines up tabs +distinguish it from the commands. But with the ‘--initial-tab’ (‘-T’) +option, ‘diff3’ uses a tab instead of two spaces; this lines up tabs correctly. *Note Tabs::, for more information. Commands take the following forms: -'FILE:La' +‘FILE:La’ This hunk appears after line L of file FILE, and contains no lines in that file. To edit this file to yield the other files, one must - append hunk lines taken from the other files. For example, '1:11a' + append hunk lines taken from the other files. For example, ‘1:11a’ means that the hunk follows line 11 in the first file and contains no lines from that file. -'FILE:Rc' +‘FILE:Rc’ This hunk contains the lines in the range R of file FILE. The range R is a comma-separated pair of line numbers, or just one number if there is only one line. To edit this file to yield the other files, one must change the specified lines to be the lines - taken from the other files. For example, '2:11,13c' means that the + taken from the other files. For example, ‘2:11,13c’ means that the hunk contains lines 11 through 13 from the second file. If the last line in a set of input lines is incomplete (*note Incomplete Lines::), it is distinguished on output from a full line by a -following line that starts with '\'. +following line that starts with ‘\’.  File: diffutils.info, Node: diff3 Hunks, Prev: Detailed diff3 Normal, Up: Comparing Three Files -7.4 'diff3' Hunks +7.4 ‘diff3’ Hunks ================= Groups of lines that differ in two or three of the input files are -called "diff3 hunks", by analogy with 'diff' hunks (*note Hunks::). If -all three input files differ in a 'diff3' hunk, the hunk is called a -"three-way hunk"; if just two input files differ, it is a "two-way -hunk". - - As with 'diff', several solutions are possible. When comparing the -files 'A', 'B', and 'C', 'diff3' normally finds 'diff3' hunks by merging -the two-way hunks output by the two commands 'diff A B' and 'diff A C'. +called “diff3 hunks”, by analogy with ‘diff’ hunks (*note Hunks::). If +all three input files differ in a ‘diff3’ hunk, the hunk is called a +“three-way hunk”; if just two input files differ, it is a “two-way +hunk”. + + As with ‘diff’, several solutions are possible. When comparing the +files ‘A’, ‘B’, and ‘C’, ‘diff3’ normally finds ‘diff3’ hunks by merging +the two-way hunks output by the two commands ‘diff A B’ and ‘diff A C’. This does not necessarily minimize the size of the output, but exceptions should be rare. - For example, suppose 'F' contains the three lines 'a', 'b', 'f', 'G' -contains the lines 'g', 'b', 'g', and 'H' contains the lines 'a', 'b', -'h'. 'diff3 F G H' might output the following: + For example, suppose ‘F’ contains the three lines ‘a’, ‘b’, ‘f’, ‘G’ +contains the lines ‘g’, ‘b’, ‘g’, and ‘H’ contains the lines ‘a’, ‘b’, +‘h’. ‘diff3 F G H’ might output the following: ====2 1:1c @@ -2066,8 +2067,8 @@ contains the lines 'g', 'b', 'g', and 'H' contains the lines 'a', 'b', 3:3c h -because it found a two-way hunk containing 'a' in the first and third -files and 'g' in the second file, then the single line 'b' common to all +because it found a two-way hunk containing ‘a’ in the first and third +files and ‘g’ in the second file, then the single line ‘b’ common to all three files, then a three-way hunk containing the last line of each file. @@ -2077,16 +2078,16 @@ File: diffutils.info, Node: diff3 Merging, Next: Interactive Merging, Prev: C 8 Merging From a Common Ancestor ******************************** -When two people have made changes to copies of the same file, 'diff3' +When two people have made changes to copies of the same file, ‘diff3’ can produce a merged output that contains both sets of changes together with warnings about conflicts. - One might imagine programs with names like 'diff4' and 'diff5' to + One might imagine programs with names like ‘diff4’ and ‘diff5’ to compare more than three files simultaneously, but in practice the need -rarely arises. You can use 'diff3' to merge three or more sets of +rarely arises. You can use ‘diff3’ to merge three or more sets of changes to a file by merging two change sets at a time. - 'diff3' can incorporate changes from two modified versions into a + ‘diff3’ can incorporate changes from two modified versions into a common preceding version. This lets you merge the sets of changes represented by the two newer files. Specify the common ancestor version as the second argument and the two newer versions as the first and third @@ -2102,24 +2103,24 @@ result to MINE, or as merging into MINE the changes that would turn OLDER into YOURS. This merging is well-defined as long as MINE and OLDER match in the neighborhood of each such change. This fails to be true when all three input files differ or when only OLDER differs; we -call this a "conflict". When all three input files differ, we call the -conflict an "overlap". +call this a “conflict”. When all three input files differ, we call the +conflict an “overlap”. - 'diff3' gives you several ways to handle overlaps and conflicts. You + ‘diff3’ gives you several ways to handle overlaps and conflicts. You can omit overlaps or conflicts, or select only overlaps, or mark -conflicts with special '<<<<<<<' and '>>>>>>>' lines. +conflicts with special ‘<<<<<<<’ and ‘>>>>>>>’ lines. - 'diff3' can output the merge results as an 'ed' script that that can + ‘diff3’ can output the merge results as an ‘ed’ script that that can be applied to the first file to yield the merged output. However, it is -usually better to have 'diff3' generate the merged output directly; this -bypasses some problems with 'ed'. +usually better to have ‘diff3’ generate the merged output directly; this +bypasses some problems with ‘ed’. * Menu: * Which Changes:: Selecting changes to incorporate. * Marking Conflicts:: Marking conflicts. * Bypassing ed:: Generating merged output directly. -* Merging Incomplete Lines:: How 'diff3' merges incomplete lines. +* Merging Incomplete Lines:: How ‘diff3’ merges incomplete lines. * Saving the Changed File:: Emulating System V behavior.  @@ -2129,22 +2130,22 @@ File: diffutils.info, Node: Which Changes, Next: Marking Conflicts, Up: diff3 ========================================== You can select all unmerged changes from OLDER to YOURS for merging into -MINE with the '--ed' ('-e') option. You can select only the -nonoverlapping unmerged changes with '--easy-only' ('-3'), and you can -select only the overlapping changes with '--overlap-only' ('-x'). +MINE with the ‘--ed’ (‘-e’) option. You can select only the +nonoverlapping unmerged changes with ‘--easy-only’ (‘-3’), and you can +select only the overlapping changes with ‘--overlap-only’ (‘-x’). - The '-e', '-3' and '-x' options select only "unmerged changes", i.e. + The ‘-e’, ‘-3’ and ‘-x’ options select only “unmerged changes”, i.e. changes where MINE and YOURS differ; they ignore changes from OLDER to YOURS where MINE and YOURS are identical, because they assume that such changes have already been merged. If this assumption is not a safe one, -you can use the '--show-all' ('-A') option (*note Marking Conflicts::). +you can use the ‘--show-all’ (‘-A’) option (*note Marking Conflicts::). - Here is the output of the command 'diff3' with each of these three + Here is the output of the command ‘diff3’ with each of these three options (*note Sample diff3 Input::, for the complete contents of the -files). Notice that '-e' outputs the union of the disjoint sets of -changes output by '-3' and '-x'. +files). Notice that ‘-e’ outputs the union of the disjoint sets of +changes output by ‘-3’ and ‘-x’. - Output of 'diff3 -e lao tzu tao': + Output of ‘diff3 -e lao tzu tao’: 11a -- The Way of Lao-Tzu, tr. Wing-tsit Chan @@ -2153,12 +2154,12 @@ changes output by '-3' and '-x'. so we may see their result. . - Output of 'diff3 -3 lao tzu tao': + Output of ‘diff3 -3 lao tzu tao’: 8c so we may see their result. . - Output of 'diff3 -x lao tzu tao': + Output of ‘diff3 -x lao tzu tao’: 11a -- The Way of Lao-Tzu, tr. Wing-tsit Chan @@ -2170,7 +2171,7 @@ File: diffutils.info, Node: Marking Conflicts, Next: Bypassing ed, Prev: Whic 8.2 Marking Conflicts ===================== -'diff3' can mark conflicts in the merged output by bracketing them with +‘diff3’ can mark conflicts in the merged output by bracketing them with special marker lines. A conflict that comes from two files A and B is marked as follows: @@ -2191,11 +2192,11 @@ follows: lines from C >>>>>>> C - The '--show-all' ('-A') option acts like the '-e' option, except that + The ‘--show-all’ (‘-A’) option acts like the ‘-e’ option, except that it brackets conflicts, and it outputs all changes from OLDER to YOURS, not just the unmerged changes. Thus, given the sample input files -(*note Sample diff3 Input::), 'diff3 -A lao tzu tao' puts brackets -around the conflict where only 'tzu' differs: +(*note Sample diff3 Input::), ‘diff3 -A lao tzu tao’ puts brackets +around the conflict where only ‘tzu’ differs: <<<<<<< tzu ======= @@ -2215,14 +2216,14 @@ around the conflict where only 'tzu' differs: -- The Way of Lao-Tzu, tr. Wing-tsit Chan >>>>>>> tao - The '--show-overlap' ('-E') option outputs less information than the -'--show-all' ('-A') option, because it outputs only unmerged changes, -and it never outputs the contents of the second file. Thus the '-E' -option acts like the '-e' option, except that it brackets the first and -third files from three-way overlapping changes. Similarly, '-X' acts -like '-x', except it brackets all its (necessarily overlapping) changes. -For example, for the three-way overlapping change above, the '-E' and -'-X' options output the following: + The ‘--show-overlap’ (‘-E’) option outputs less information than the +‘--show-all’ (‘-A’) option, because it outputs only unmerged changes, +and it never outputs the contents of the second file. Thus the ‘-E’ +option acts like the ‘-e’ option, except that it brackets the first and +third files from three-way overlapping changes. Similarly, ‘-X’ acts +like ‘-x’, except it brackets all its (necessarily overlapping) changes. +For example, for the three-way overlapping change above, the ‘-E’ and +‘-X’ options output the following: <<<<<<< lao ======= @@ -2231,12 +2232,12 @@ For example, for the three-way overlapping change above, the '-E' and >>>>>>> tao If you are comparing files that have meaningless or uninformative -names, you can use the '--label=LABEL' option to show alternate names in -the '<<<<<<<', '|||||||' and '>>>>>>>' brackets. This option can be -given up to three times, once for each input file. Thus 'diff3 -A ---label X --label Y --label Z A B C' acts like 'diff3 -A A B C', except -that the output looks like it came from files named 'X', 'Y' and 'Z' -rather than from files named 'A', 'B' and 'C'. +names, you can use the ‘--label=LABEL’ option to show alternate names in +the ‘<<<<<<<’, ‘|||||||’ and ‘>>>>>>>’ brackets. This option can be +given up to three times, once for each input file. Thus ‘diff3 -A +--label X --label Y --label Z A B C’ acts like ‘diff3 -A A B C’, except +that the output looks like it came from files named ‘X’, ‘Y’ and ‘Z’ +rather than from files named ‘A’, ‘B’ and ‘C’.  File: diffutils.info, Node: Bypassing ed, Next: Merging Incomplete Lines, Prev: Marking Conflicts, Up: diff3 Merging @@ -2244,12 +2245,12 @@ File: diffutils.info, Node: Bypassing ed, Next: Merging Incomplete Lines, Pre 8.3 Generating the Merged Output Directly ========================================= -With the '--merge' ('-m') option, 'diff3' outputs the merged file -directly. This is more efficient than using 'ed' to generate it, and -works even with non-text files that 'ed' would reject. If you specify -'-m' without an 'ed' script option, '-A' is assumed. +With the ‘--merge’ (‘-m’) option, ‘diff3’ outputs the merged file +directly. This is more efficient than using ‘ed’ to generate it, and +works even with non-text files that ‘ed’ would reject. If you specify +‘-m’ without an ‘ed’ script option, ‘-A’ is assumed. - For example, the command 'diff3 -m lao tzu tao' (*note Sample diff3 + For example, the command ‘diff3 -m lao tzu tao’ (*note Sample diff3 Input:: for a copy of the input files) would output the following: <<<<<<< tzu @@ -2279,18 +2280,18 @@ Input:: for a copy of the input files) would output the following:  File: diffutils.info, Node: Merging Incomplete Lines, Next: Saving the Changed File, Prev: Bypassing ed, Up: diff3 Merging -8.4 How 'diff3' Merges Incomplete Lines +8.4 How ‘diff3’ Merges Incomplete Lines ======================================= -With '-m', incomplete lines (*note Incomplete Lines::) are simply copied +With ‘-m’, incomplete lines (*note Incomplete Lines::) are simply copied to the output as they are found; if the merged output ends in an conflict and one of the input files ends in an incomplete line, -succeeding '|||||||', '=======' or '>>>>>>>' brackets appear somewhere +succeeding ‘|||||||’, ‘=======’ or ‘>>>>>>>’ brackets appear somewhere other than the start of a line because they are appended to the incomplete line. - Without '-m', if an 'ed' script option is specified and an incomplete -line is found, 'diff3' generates a warning and acts as if a newline had + Without ‘-m’, if an ‘ed’ script option is specified and an incomplete +line is found, ‘diff3’ generates a warning and acts as if a newline had been present.  @@ -2299,41 +2300,41 @@ File: diffutils.info, Node: Saving the Changed File, Prev: Merging Incomplete 8.5 Saving the Changed File =========================== -Traditional Unix 'diff3' generates an 'ed' script without the trailing -'w' and 'q' commands that save the changes. System V 'diff3' generates -these extra commands. GNU 'diff3' normally behaves like traditional -Unix 'diff3', but with the '-i' option it behaves like System V 'diff3' -and appends the 'w' and 'q' commands. +Traditional Unix ‘diff3’ generates an ‘ed’ script without the trailing +‘w’ and ‘q’ commands that save the changes. System V ‘diff3’ generates +these extra commands. GNU ‘diff3’ normally behaves like traditional +Unix ‘diff3’, but with the ‘-i’ option it behaves like System V ‘diff3’ +and appends the ‘w’ and ‘q’ commands. - The '-i' option requires one of the 'ed' script options '-AeExX3', -and is incompatible with the merged output option '-m'. + The ‘-i’ option requires one of the ‘ed’ script options ‘-AeExX3’, +and is incompatible with the merged output option ‘-m’.  File: diffutils.info, Node: Interactive Merging, Next: Merging with patch, Prev: diff3 Merging, Up: Top -9 Interactive Merging with 'sdiff' +9 Interactive Merging with ‘sdiff’ ********************************** -With 'sdiff', you can merge two files interactively based on a -side-by-side '-y' format comparison (*note Side by Side::). Use -'--output=FILE' ('-o FILE') to specify where to put the merged text. -*Note Invoking sdiff::, for more details on the options to 'sdiff'. +With ‘sdiff’, you can merge two files interactively based on a +side-by-side ‘-y’ format comparison (*note Side by Side::). Use +‘--output=FILE’ (‘-o FILE’) to specify where to put the merged text. +*Note Invoking sdiff::, for more details on the options to ‘sdiff’. Another way to merge files interactively is to use the Emacs Lisp -package 'emerge'. *Note Emerge: (emacs)Emerge, for more information. +package ‘emerge’. *Note Emerge: (emacs)Emerge, for more information. * Menu: -* sdiff Option Summary:: Summary of 'sdiff' options. +* sdiff Option Summary:: Summary of ‘sdiff’ options. * Merge Commands:: Merging two files interactively.  File: diffutils.info, Node: sdiff Option Summary, Next: Merge Commands, Up: Interactive Merging -9.1 Specifying 'diff' Options to 'sdiff' +9.1 Specifying ‘diff’ Options to ‘sdiff’ ======================================== -The following 'sdiff' options have the same meaning as for 'diff'. +The following ‘sdiff’ options have the same meaning as for ‘diff’. *Note diff Options::, for the use of these options. -a -b -d -i -t -v @@ -2347,13 +2348,13 @@ The following 'sdiff' options have the same meaning as for 'diff'. --strip-trailing-cr --suppress-common-lines --tabsize=COLUMNS --text --version --width=COLUMNS - For historical reasons, 'sdiff' has alternate names for some options. -The '-l' option is equivalent to the '--left-column' option, and -similarly '-s' is equivalent to '--suppress-common-lines'. The meaning -of the 'sdiff' '-w' and '-W' options is interchanged from that of -'diff': with 'sdiff', '-w COLUMNS' is equivalent to '--width=COLUMNS', -and '-W' is equivalent to '--ignore-all-space'. 'sdiff' without the -'-o' option is equivalent to 'diff' with the '--side-by-side' ('-y') + For historical reasons, ‘sdiff’ has alternate names for some options. +The ‘-l’ option is equivalent to the ‘--left-column’ option, and +similarly ‘-s’ is equivalent to ‘--suppress-common-lines’. The meaning +of the ‘sdiff’ ‘-w’ and ‘-W’ options is interchanged from that of +‘diff’: with ‘sdiff’, ‘-w COLUMNS’ is equivalent to ‘--width=COLUMNS’, +and ‘-W’ is equivalent to ‘--ignore-all-space’. ‘sdiff’ without the +‘-o’ option is equivalent to ‘diff’ with the ‘--side-by-side’ (‘-y’) option (*note Side by Side::).  @@ -2363,88 +2364,88 @@ File: diffutils.info, Node: Merge Commands, Prev: sdiff Option Summary, Up: I ================== Groups of common lines, with a blank gutter, are copied from the first -file to the output. After each group of differing lines, 'sdiff' -prompts with '%' and pauses, waiting for one of the following commands. +file to the output. After each group of differing lines, ‘sdiff’ +prompts with ‘%’ and pauses, waiting for one of the following commands. Follow each command with . -'e' +‘e’ Discard both versions. Invoke a text editor on an empty temporary file, then copy the resulting file to the output. -'eb' +‘eb’ Concatenate the two versions, edit the result in a temporary file, then copy the edited result to the output. -'ed' - Like 'eb', except precede each version with a header that shows +‘ed’ + Like ‘eb’, except precede each version with a header that shows what file and lines the version came from. -'el' -'e1' +‘el’ +‘e1’ Edit a copy of the left version, then copy the result to the output. -'er' -'e2' +‘er’ +‘e2’ Edit a copy of the right version, then copy the result to the output. -'l' -'1' +‘l’ +‘1’ Copy the left version to the output. -'q' +‘q’ Quit. -'r' -'2' +‘r’ +‘2’ Copy the right version to the output. -'s' +‘s’ Silently copy common lines. -'v' +‘v’ Verbosely copy common lines. This is the default. - The text editor invoked is specified by the 'EDITOR' environment + The text editor invoked is specified by the ‘EDITOR’ environment variable if it is set. The default is system-dependent.  File: diffutils.info, Node: Merging with patch, Next: Making Patches, Prev: Interactive Merging, Up: Top -10 Merging with 'patch' +10 Merging with ‘patch’ *********************** -'patch' takes comparison output produced by 'diff' and applies the +‘patch’ takes comparison output produced by ‘diff’ and applies the differences to a copy of the original file, producing a patched version. -With 'patch', you can distribute just the changes to a set of files +With ‘patch’, you can distribute just the changes to a set of files instead of distributing the entire file set; your correspondents can -apply 'patch' to update their copy of the files with your changes. -'patch' automatically determines the diff format, skips any leading or +apply ‘patch’ to update their copy of the files with your changes. +‘patch’ automatically determines the diff format, skips any leading or trailing headers, and uses the headers to determine which file to patch. This lets your correspondents feed a mail message containing a -difference listing directly to 'patch'. +difference listing directly to ‘patch’. - 'patch' detects and warns about common problems like forward patches. + ‘patch’ detects and warns about common problems like forward patches. It saves any patches that it could not apply. It can also maintain a -'patchlevel.h' file to ensure that your correspondents apply diffs in +‘patchlevel.h’ file to ensure that your correspondents apply diffs in the proper order. - 'patch' accepts a series of diffs in its standard input, usually + ‘patch’ accepts a series of diffs in its standard input, usually separated by headers that specify which file to patch. It applies -'diff' hunks (*note Hunks::) one by one. If a hunk does not exactly -match the original file, 'patch' uses heuristics to try to patch the -file as well as it can. If no approximate match can be found, 'patch' -rejects the hunk and skips to the next hunk. 'patch' normally replaces +‘diff’ hunks (*note Hunks::) one by one. If a hunk does not exactly +match the original file, ‘patch’ uses heuristics to try to patch the +file as well as it can. If no approximate match can be found, ‘patch’ +rejects the hunk and skips to the next hunk. ‘patch’ normally replaces each file F with its new version, putting reject hunks (if any) into -'F.rej'. +‘F.rej’. *Note Invoking patch::, for detailed information on the options to -'patch'. +‘patch’. * Menu: -* patch Input:: Selecting the type of 'patch' input. +* patch Input:: Selecting the type of ‘patch’ input. * Revision Control:: Getting files from RCS, SCCS, etc. * Imperfect:: Dealing with imperfect patches. * Creating and Removing:: Creating and removing files with a patch. @@ -2454,37 +2455,37 @@ each file F with its new version, putting reject hunks (if any) into * Backups:: Whether backup files are made. * Backup Names:: Backup file names. * Reject Names:: Reject file names. -* patch Messages:: Messages and questions 'patch' can produce. +* patch Messages:: Messages and questions ‘patch’ can produce. * patch and POSIX:: Conformance to the POSIX standard. -* patch and Tradition:: GNU versus traditional 'patch'. +* patch and Tradition:: GNU versus traditional ‘patch’.  File: diffutils.info, Node: patch Input, Next: Revision Control, Up: Merging with patch -10.1 Selecting the 'patch' Input Format +10.1 Selecting the ‘patch’ Input Format ======================================= -'patch' normally determines which 'diff' format the patch file uses by +‘patch’ normally determines which ‘diff’ format the patch file uses by examining its contents. For patch files that contain particularly confusing leading text, you might need to use one of the following -options to force 'patch' to interpret the patch file as a certain format -of diff. The output formats listed here are the only ones that 'patch' +options to force ‘patch’ to interpret the patch file as a certain format +of diff. The output formats listed here are the only ones that ‘patch’ can understand. -'-c' -'--context' +‘-c’ +‘--context’ context diff. -'-e' -'--ed' - 'ed' script. +‘-e’ +‘--ed’ + ‘ed’ script. -'-n' -'--normal' +‘-n’ +‘--normal’ normal diff. -'-u' -'--unified' +‘-u’ +‘--unified’ unified diff.  @@ -2494,23 +2495,23 @@ File: diffutils.info, Node: Revision Control, Next: Imperfect, Prev: patch In ===================== If a nonexistent input file is under a revision control system supported -by 'patch', 'patch' normally asks the user whether to get (or check out) +by ‘patch’, ‘patch’ normally asks the user whether to get (or check out) the file from the revision control system. Patch currently supports -RCS, ClearCase and SCCS. Under RCS and SCCS, 'patch' also asks when the +RCS, ClearCase and SCCS. Under RCS and SCCS, ‘patch’ also asks when the input file is read-only and matches the default version in the revision control system. - The '--get=NUM' ('-g NUM') option affects access to files under -supported revision control systems. If NUM is positive, 'patch' gets -the file without asking the user; if zero, 'patch' neither asks the user -nor gets the file; and if negative, 'patch' asks the user before getting + The ‘--get=NUM’ (‘-g NUM’) option affects access to files under +supported revision control systems. If NUM is positive, ‘patch’ gets +the file without asking the user; if zero, ‘patch’ neither asks the user +nor gets the file; and if negative, ‘patch’ asks the user before getting the file. The default value of NUM is given by the value of the -'PATCH_GET' environment variable if it is set; if not, the default value -is zero if 'patch' is conforming to POSIX, negative otherwise. *Note +‘PATCH_GET’ environment variable if it is set; if not, the default value +is zero if ‘patch’ is conforming to POSIX, negative otherwise. *Note patch and POSIX::. The choice of revision control system is unaffected by the -'VERSION_CONTROL' environment variable (*note Backup Names::). +‘VERSION_CONTROL’ environment variable (*note Backup Names::).  File: diffutils.info, Node: Imperfect, Next: Creating and Removing, Prev: Revision Control, Up: Merging with patch @@ -2518,15 +2519,15 @@ File: diffutils.info, Node: Imperfect, Next: Creating and Removing, Prev: Rev 10.3 Applying Imperfect Patches =============================== -'patch' tries to skip any leading text in the patch file, apply the +‘patch’ tries to skip any leading text in the patch file, apply the diff, and then skip any trailing text. Thus you can feed a mail message -directly to 'patch', and it should work. If the entire diff is indented -by a constant amount of white space, 'patch' automatically ignores the +directly to ‘patch’, and it should work. If the entire diff is indented +by a constant amount of white space, ‘patch’ automatically ignores the indentation. If a context diff contains trailing carriage return on -each line, 'patch' automatically ignores the carriage return. If a -context diff has been encapsulated by prepending '- ' to lines beginning -with '-' as per Internet RFC 934 -(ftp://ftp.isi.edu/in-notes/rfc934.txt), 'patch' automatically +each line, ‘patch’ automatically ignores the carriage return. If a +context diff has been encapsulated by prepending ‘- ’ to lines beginning +with ‘-’ as per Internet RFC 934 +(ftp://ftp.isi.edu/in-notes/rfc934.txt), ‘patch’ automatically unencapsulates the input. However, certain other types of imperfect input require user @@ -2536,8 +2537,8 @@ intervention or testing. * Changed White Space:: When tabs and spaces don't match exactly. * Reversed Patches:: Applying reversed patches correctly. -* Inexact:: Helping 'patch' find close matches. -* Dry Runs:: Predicting what 'patch' will do. +* Inexact:: Helping ‘patch’ find close matches. +* Dry Runs:: Predicting what ‘patch’ will do.  File: diffutils.info, Node: Changed White Space, Next: Reversed Patches, Up: Imperfect @@ -2547,9 +2548,9 @@ File: diffutils.info, Node: Changed White Space, Next: Reversed Patches, Up: Sometimes mailers, editors, or other programs change spaces into tabs, or vice versa. If this happens to a patch file or an input file, the -files might look the same, but 'patch' will not be able to match them -properly. If this problem occurs, use the '-l' or -'--ignore-white-space' option, which makes 'patch' compare blank +files might look the same, but ‘patch’ will not be able to match them +properly. If this problem occurs, use the ‘-l’ or +‘--ignore-white-space’ option, which makes ‘patch’ compare blank characters (i.e. spaces and tabs) loosely so that any nonempty sequence of blanks in the patch file matches any nonempty sequence of blanks in the input files. Non-blank characters must still match exactly. Each @@ -2561,79 +2562,79 @@ File: diffutils.info, Node: Reversed Patches, Next: Inexact, Prev: Changed Wh 10.3.2 Applying Reversed Patches -------------------------------- -Sometimes people run 'diff' with the new file first instead of second. +Sometimes people run ‘diff’ with the new file first instead of second. This creates a diff that is "reversed". To apply such patches, give -'patch' the '--reverse' ('-R') option. 'patch' then attempts to swap +‘patch’ the ‘--reverse’ (‘-R’) option. ‘patch’ then attempts to swap each hunk around before applying it. Rejects come out in the swapped format. - Often 'patch' can guess that the patch is reversed. If the first -hunk of a patch fails, 'patch' reverses the hunk to see if it can apply -it that way. If it can, 'patch' asks you if you want to have the '-R' -option set; if it can't, 'patch' continues to apply the patch normally. + Often ‘patch’ can guess that the patch is reversed. If the first +hunk of a patch fails, ‘patch’ reverses the hunk to see if it can apply +it that way. If it can, ‘patch’ asks you if you want to have the ‘-R’ +option set; if it can't, ‘patch’ continues to apply the patch normally. This method cannot detect a reversed patch if it is a normal diff and the first command is an append (which should have been a delete) since appends always succeed, because a null context matches anywhere. But most patches add or change lines rather than delete them, so most -reversed normal diffs begin with a delete, which fails, and 'patch' +reversed normal diffs begin with a delete, which fails, and ‘patch’ notices. - If you apply a patch that you have already applied, 'patch' thinks it + If you apply a patch that you have already applied, ‘patch’ thinks it is a reversed patch and offers to un-apply the patch. This could be construed as a feature. If you did this inadvertently and you don't -want to un-apply the patch, just answer 'n' to this offer and to the -subsequent "apply anyway" question--or type 'C-c' to kill the 'patch' +want to un-apply the patch, just answer ‘n’ to this offer and to the +subsequent "apply anyway" question--or type ‘C-c’ to kill the ‘patch’ process.  File: diffutils.info, Node: Inexact, Next: Dry Runs, Prev: Reversed Patches, Up: Imperfect -10.3.3 Helping 'patch' Find Inexact Matches +10.3.3 Helping ‘patch’ Find Inexact Matches ------------------------------------------- -For context diffs, and to a lesser extent normal diffs, 'patch' can +For context diffs, and to a lesser extent normal diffs, ‘patch’ can detect when the line numbers mentioned in the patch are incorrect, and it attempts to find the correct place to apply each hunk of the patch. As a first guess, it takes the line number mentioned in the hunk, plus or minus any offset used in applying the previous hunk. If that is not -the correct place, 'patch' scans both forward and backward for a set of +the correct place, ‘patch’ scans both forward and backward for a set of lines matching the context given in the hunk. - First 'patch' looks for a place where all lines of the context match. + First ‘patch’ looks for a place where all lines of the context match. If it cannot find such a place, and it is reading a context or unified -diff, and the maximum fuzz factor is set to 1 or more, then 'patch' +diff, and the maximum fuzz factor is set to 1 or more, then ‘patch’ makes another scan, ignoring the first and last line of context. If that fails, and the maximum fuzz factor is set to 2 or more, it makes another scan, ignoring the first two and last two lines of context are ignored. It continues similarly if the maximum fuzz factor is larger. - The '--fuzz=LINES' ('-F LINES') option sets the maximum fuzz factor + The ‘--fuzz=LINES’ (‘-F LINES’) option sets the maximum fuzz factor to LINES. This option only applies to context and unified diffs; it ignores up to LINES lines while looking for the place to install a hunk. Note that a larger fuzz factor increases the odds of making a faulty patch. The default fuzz factor is 2; there is no point to setting it to more than the number of lines of context in the diff, ordinarily 3. - If 'patch' cannot find a place to install a hunk of the patch, it + If ‘patch’ cannot find a place to install a hunk of the patch, it writes the hunk out to a reject file (*note Reject Names::, for information on how reject files are named). It writes out rejected hunks in context format no matter what form the input patch is in. If -the input is a normal or 'ed' diff, many of the contexts are simply +the input is a normal or ‘ed’ diff, many of the contexts are simply null. The line numbers on the hunks in the reject file may be different from those in the patch file: they show the approximate location where -'patch' thinks the failed hunks belong in the new file rather than in +‘patch’ thinks the failed hunks belong in the new file rather than in the old one. - If the '--verbose' option is given, then as it completes each hunk -'patch' tells you whether the hunk succeeded or failed, and if it -failed, on which line (in the new file) 'patch' thinks the hunk should + If the ‘--verbose’ option is given, then as it completes each hunk +‘patch’ tells you whether the hunk succeeded or failed, and if it +failed, on which line (in the new file) ‘patch’ thinks the hunk should go. If this is different from the line number specified in the diff, it -tells you the offset. A single large offset _may_ indicate that 'patch' -installed a hunk in the wrong place. 'patch' also tells you if it used +tells you the offset. A single large offset _may_ indicate that ‘patch’ +installed a hunk in the wrong place. ‘patch’ also tells you if it used a fuzz factor to make the match, in which case you should also be slightly suspicious. - 'patch' cannot tell if the line numbers are off in an 'ed' script, + ‘patch’ cannot tell if the line numbers are off in an ‘ed’ script, and can only detect wrong line numbers in a normal diff when it finds a change or delete command. It may have the same problem with a context diff using a fuzz factor equal to or greater than the number of lines of @@ -2645,7 +2646,7 @@ pretty good indication that the patch worked, but not a guarantee. A patch against an empty file applies to a nonexistent file, and vice versa. *Note Creating and Removing::. - 'patch' usually produces the correct results, even when it must make + ‘patch’ usually produces the correct results, even when it must make many guesses. However, the results are guaranteed only when the patch is applied to an exact copy of the file that the patch was generated from. @@ -2653,19 +2654,19 @@ from.  File: diffutils.info, Node: Dry Runs, Prev: Inexact, Up: Imperfect -10.3.4 Predicting what 'patch' will do +10.3.4 Predicting what ‘patch’ will do -------------------------------------- -It may not be obvious in advance what 'patch' will do with a complicated +It may not be obvious in advance what ‘patch’ will do with a complicated or poorly formatted patch. If you are concerned that the input might -cause 'patch' to modify the wrong files, you can use the '--dry-run' -option, which causes 'patch' to print the results of applying patches +cause ‘patch’ to modify the wrong files, you can use the ‘--dry-run’ +option, which causes ‘patch’ to print the results of applying patches without actually changing any files. You can then inspect the -diagnostics generated by the dry run to see whether 'patch' will modify +diagnostics generated by the dry run to see whether ‘patch’ will modify the files that you expect. If the patch does not do what you want, you -can modify the patch (or the other options to 'patch') and try another +can modify the patch (or the other options to ‘patch’) and try another dry run. Once you are satisfied with the proposed patch you can apply -it by invoking 'patch' as before, but this time without the '--dry-run' +it by invoking ‘patch’ as before, but this time without the ‘--dry-run’ option.  @@ -2675,18 +2676,18 @@ File: diffutils.info, Node: Creating and Removing, Next: Patching Timestamps, ================================ Sometimes when comparing two directories, a file may exist in one -directory but not the other. If you give 'diff' the '--new-file' ('-N') -option, or if you supply an old or new file that is named '/dev/null' or -is empty and is dated the Epoch (1970-01-01 00:00:00 UTC), 'diff' +directory but not the other. If you give ‘diff’ the ‘--new-file’ (‘-N’) +option, or if you supply an old or new file that is named ‘/dev/null’ or +is empty and is dated the Epoch (1970-01-01 00:00:00 UTC), ‘diff’ outputs a patch that adds or deletes the contents of this file. When -given such a patch, 'patch' normally creates a new file or removes the +given such a patch, ‘patch’ normally creates a new file or removes the old file. However, when conforming to POSIX (*note patch and POSIX::), -'patch' does not remove the old file, but leaves it empty. The -'--remove-empty-files' ('-E') option causes 'patch' to remove output +‘patch’ does not remove the old file, but leaves it empty. The +‘--remove-empty-files’ (‘-E’) option causes ‘patch’ to remove output files that are empty after applying a patch, even if the patch does not appear to be one that removed the file. - If the patch appears to create a file that already exists, 'patch' + If the patch appears to create a file that already exists, ‘patch’ asks for confirmation before applying the patch.  @@ -2695,38 +2696,38 @@ File: diffutils.info, Node: Patching Timestamps, Next: Multiple Patches, Prev 10.5 Updating Timestamps on Patched Files ========================================= -When 'patch' updates a file, it normally sets the file's last-modified -timestamp to the current time of day. If you are using 'patch' to track -a software distribution, this can cause 'make' to incorrectly conclude -that a patched file is out of date. For example, if 'syntax.c' depends -on 'syntax.y', and 'patch' updates 'syntax.c' and then 'syntax.y', then -'syntax.c' will normally appear to be out of date with respect to -'syntax.y' even though its contents are actually up to date. +When ‘patch’ updates a file, it normally sets the file's last-modified +timestamp to the current time of day. If you are using ‘patch’ to track +a software distribution, this can cause ‘make’ to incorrectly conclude +that a patched file is out of date. For example, if ‘syntax.c’ depends +on ‘syntax.y’, and ‘patch’ updates ‘syntax.c’ and then ‘syntax.y’, then +‘syntax.c’ will normally appear to be out of date with respect to +‘syntax.y’ even though its contents are actually up to date. - The '--set-utc' ('-Z') option causes 'patch' to set a patched file's + The ‘--set-utc’ (‘-Z’) option causes ‘patch’ to set a patched file's modification and access times to the timestamps given in context diff headers. If the context diff headers do not specify a time zone, they are assumed to use Coordinated Universal Time (UTC, often known as GMT). - The '--set-time' ('-T') option acts like '-Z' or '--set-utc', except + The ‘--set-time’ (‘-T’) option acts like ‘-Z’ or ‘--set-utc’, except that it assumes that the context diff headers' timestamps use local time instead of UTC. This option is not recommended, because patches using local time cannot easily be used by people in other time zones, and because local timestamps are ambiguous when local clocks move backwards during daylight-saving time adjustments. If the context diff headers -specify a time zone, this option is equivalent to '--set-utc' ('-Z'). +specify a time zone, this option is equivalent to ‘--set-utc’ (‘-Z’). - 'patch' normally refrains from setting a file's timestamps if the + ‘patch’ normally refrains from setting a file's timestamps if the file's original last-modified timestamp does not match the time given in the diff header, of if the file's contents do not exactly match the -patch. However, if the '--force' ('-f') option is given, the file's +patch. However, if the ‘--force’ (‘-f’) option is given, the file's timestamps are set regardless. - Due to the limitations of the current 'diff' format, 'patch' cannot + Due to the limitations of the current ‘diff’ format, ‘patch’ cannot update the times of files whose contents have not changed. Also, if you set file timestamps to values other than the current time of day, you -should also remove (e.g., with 'make clean') all files that depend on -the patched files, so that later invocations of 'make' do not get +should also remove (e.g., with ‘make clean’) all files that depend on +the patched files, so that later invocations of ‘make’ do not get confused by the patched files' times.  @@ -2736,55 +2737,55 @@ File: diffutils.info, Node: Multiple Patches, Next: patch Directories, Prev: =============================== If the patch file contains more than one patch, and if you do not -specify an input file on the command line, 'patch' tries to apply each +specify an input file on the command line, ‘patch’ tries to apply each patch as if they came from separate patch files. This means that it determines the name of the file to patch for each patch, and that it examines the leading text before each patch for file names and prerequisite revision level (*note Making Patches::, for more on that topic). - 'patch' uses the following rules to intuit a file name from the -leading text before a patch. First, 'patch' takes an ordered list of + ‘patch’ uses the following rules to intuit a file name from the +leading text before a patch. First, ‘patch’ takes an ordered list of candidate file names as follows: - * If the header is that of a context diff, 'patch' takes the old and + • If the header is that of a context diff, ‘patch’ takes the old and new file names in the header. A name is ignored if it does not - have enough slashes to satisfy the '-pNUM' or '--strip=NUM' option. - The name '/dev/null' is also ignored. + have enough slashes to satisfy the ‘-pNUM’ or ‘--strip=NUM’ option. + The name ‘/dev/null’ is also ignored. - * If there is an 'Index:' line in the leading garbage and if either - the old and new names are both absent or if 'patch' is conforming - to POSIX, 'patch' takes the name in the 'Index:' line. + • If there is an ‘Index:’ line in the leading garbage and if either + the old and new names are both absent or if ‘patch’ is conforming + to POSIX, ‘patch’ takes the name in the ‘Index:’ line. - * For the purpose of the following rules, the candidate file names + • For the purpose of the following rules, the candidate file names are considered to be in the order (old, new, index), regardless of the order that they appear in the header. -Then 'patch' selects a file name from the candidate list as follows: +Then ‘patch’ selects a file name from the candidate list as follows: - * If some of the named files exist, 'patch' selects the first name if + • If some of the named files exist, ‘patch’ selects the first name if conforming to POSIX, and the best name otherwise. - * If 'patch' is not ignoring RCS, ClearCase, and SCCS (*note Revision + • If ‘patch’ is not ignoring RCS, ClearCase, and SCCS (*note Revision Control::), and no named files exist but an RCS, ClearCase, or SCCS - master is found, 'patch' selects the first named file with an RCS, + master is found, ‘patch’ selects the first named file with an RCS, ClearCase, or SCCS master. - * If no named files exist, no RCS, ClearCase, or SCCS master was - found, some names are given, 'patch' is not conforming to POSIX, - and the patch appears to create a file, 'patch' selects the best + • If no named files exist, no RCS, ClearCase, or SCCS master was + found, some names are given, ‘patch’ is not conforming to POSIX, + and the patch appears to create a file, ‘patch’ selects the best name requiring the creation of the fewest directories. - * If no file name results from the above heuristics, you are asked - for the name of the file to patch, and 'patch' selects that name. + • If no file name results from the above heuristics, you are asked + for the name of the file to patch, and ‘patch’ selects that name. - To determine the "best" of a nonempty list of file names, 'patch' + To determine the “best” of a nonempty list of file names, ‘patch’ first takes all the names with the fewest path name components; of those, it then takes all the names with the shortest basename; of those, it then takes all the shortest names; finally, it takes the first remaining name. - *Note patch and POSIX::, to see whether 'patch' is conforming to + *Note patch and POSIX::, to see whether ‘patch’ is conforming to POSIX.  @@ -2793,11 +2794,11 @@ File: diffutils.info, Node: patch Directories, Next: Backups, Prev: Multiple 10.7 Applying Patches in Other Directories ========================================== -The '--directory=DIRECTORY' ('-d DIRECTORY') option to 'patch' makes +The ‘--directory=DIRECTORY’ (‘-d DIRECTORY’) option to ‘patch’ makes directory DIRECTORY the current directory for interpreting both file names in the patch file, and file names given as arguments to other -options (such as '-B' and '-o'). For example, while in a mail reading -program, you can patch a file in the '/usr/src/emacs' directory directly +options (such as ‘-B’ and ‘-o’). For example, while in a mail reading +program, you can patch a file in the ‘/usr/src/emacs’ directory directly from a message containing the patch like this: | patch -d /usr/src/emacs @@ -2805,20 +2806,20 @@ from a message containing the patch like this: Sometimes the file names given in a patch contain leading directories, but you keep your files in a directory different from the one given in the patch. In those cases, you can use the -'--strip=NUMBER' ('-pNUMBER') option to set the file name strip count to -NUMBER. The strip count tells 'patch' how many slashes, along with the +‘--strip=NUMBER’ (‘-pNUMBER’) option to set the file name strip count to +NUMBER. The strip count tells ‘patch’ how many slashes, along with the directory names between them, to strip from the front of file names. A sequence of one or more adjacent slashes is counted as a single slash. -By default, 'patch' strips off all leading directories, leaving just the +By default, ‘patch’ strips off all leading directories, leaving just the base file names. For example, suppose the file name in the patch file is -'/gnu/src/emacs/etc/NEWS'. Using '-p0' gives the entire file name -unmodified, '-p1' gives 'gnu/src/emacs/etc/NEWS' (no leading slash), -'-p4' gives 'etc/NEWS', and not specifying '-p' at all gives 'NEWS'. +‘/gnu/src/emacs/etc/NEWS’. Using ‘-p0’ gives the entire file name +unmodified, ‘-p1’ gives ‘gnu/src/emacs/etc/NEWS’ (no leading slash), +‘-p4’ gives ‘etc/NEWS’, and not specifying ‘-p’ at all gives ‘NEWS’. - 'patch' looks for each file (after any slashes have been stripped) in -the current directory, or if you used the '-d DIRECTORY' option, in that + ‘patch’ looks for each file (after any slashes have been stripped) in +the current directory, or if you used the ‘-d DIRECTORY’ option, in that directory.  @@ -2827,17 +2828,17 @@ File: diffutils.info, Node: Backups, Next: Backup Names, Prev: patch Director 10.8 Backup Files ================= -Normally, 'patch' creates a backup file if the patch does not exactly +Normally, ‘patch’ creates a backup file if the patch does not exactly match the original input file, because in that case the original data -might not be recovered if you undo the patch with 'patch -R' (*note -Reversed Patches::). However, when conforming to POSIX, 'patch' does +might not be recovered if you undo the patch with ‘patch -R’ (*note +Reversed Patches::). However, when conforming to POSIX, ‘patch’ does not create backup files by default. *Note patch and POSIX::. - The '--backup' ('-b') option causes 'patch' to make a backup file + The ‘--backup’ (‘-b’) option causes ‘patch’ to make a backup file regardless of whether the patch matches the original input. The -'--backup-if-mismatch' option causes 'patch' to create backup files for +‘--backup-if-mismatch’ option causes ‘patch’ to create backup files for mismatches files; this is the default when not conforming to POSIX. The -'--no-backup-if-mismatch' option causes 'patch' to not create backup +‘--no-backup-if-mismatch’ option causes ‘patch’ to not create backup files, even for mismatched patches; this is the default when conforming to POSIX. @@ -2851,69 +2852,69 @@ File: diffutils.info, Node: Backup Names, Next: Reject Names, Prev: Backups, 10.9 Backup File Names ====================== -Normally, 'patch' renames an original input file into a backup file by -appending to its name the extension '.orig', or '~' if using '.orig' -would make the backup file name too long.(1) The '-z BACKUP-SUFFIX' or -'--suffix=BACKUP-SUFFIX' option causes 'patch' to use BACKUP-SUFFIX as +Normally, ‘patch’ renames an original input file into a backup file by +appending to its name the extension ‘.orig’, or ‘~’ if using ‘.orig’ +would make the backup file name too long.(1) The ‘-z BACKUP-SUFFIX’ or +‘--suffix=BACKUP-SUFFIX’ option causes ‘patch’ to use BACKUP-SUFFIX as the backup extension instead. Alternately, you can specify the extension for backup files with the -'SIMPLE_BACKUP_SUFFIX' environment variable, which the options override. +‘SIMPLE_BACKUP_SUFFIX’ environment variable, which the options override. - 'patch' can also create numbered backup files the way GNU Emacs does. + ‘patch’ can also create numbered backup files the way GNU Emacs does. With this method, instead of having a single backup of each file, -'patch' makes a new backup file name each time it patches a file. For -example, the backups of a file named 'sink' would be called, -successively, 'sink.~1~', 'sink.~2~', 'sink.~3~', etc. +‘patch’ makes a new backup file name each time it patches a file. For +example, the backups of a file named ‘sink’ would be called, +successively, ‘sink.~1~’, ‘sink.~2~’, ‘sink.~3~’, etc. - The '-V BACKUP-STYLE' or '--version-control=BACKUP-STYLE' option + The ‘-V BACKUP-STYLE’ or ‘--version-control=BACKUP-STYLE’ option takes as an argument a method for creating backup file names. You can -alternately control the type of backups that 'patch' makes with the -'PATCH_VERSION_CONTROL' environment variable, which the '-V' option -overrides. If 'PATCH_VERSION_CONTROL' is not set, the 'VERSION_CONTROL' +alternately control the type of backups that ‘patch’ makes with the +‘PATCH_VERSION_CONTROL’ environment variable, which the ‘-V’ option +overrides. If ‘PATCH_VERSION_CONTROL’ is not set, the ‘VERSION_CONTROL’ environment variable is used instead. Please note that these options and variables control backup file names; they do not affect the choice of revision control system (*note Revision Control::). The values of these environment variables and the argument to the -'-V' option are like the GNU Emacs 'version-control' variable (*note +‘-V’ option are like the GNU Emacs ‘version-control’ variable (*note (emacs)Backup Names::, for more information on backup versions in Emacs). They also recognize synonyms that are more descriptive. The valid values are listed below; unique abbreviations are acceptable. -'t' -'numbered' +‘t’ +‘numbered’ Always make numbered backups. -'nil' -'existing' +‘nil’ +‘existing’ Make numbered backups of files that already have them, simple backups of the others. This is the default. -'never' -'simple' +‘never’ +‘simple’ Always make simple backups. - You can also tell 'patch' to prepend a prefix, such as a directory -name, to produce backup file names. The '--prefix=PREFIX' ('-B PREFIX') + You can also tell ‘patch’ to prepend a prefix, such as a directory +name, to produce backup file names. The ‘--prefix=PREFIX’ (‘-B PREFIX’) option makes backup files by prepending PREFIX to them. The -'--basename-prefix=PREFIX' ('-Y PREFIX') prepends PREFIX to the last -file name component of backup file names instead; for example, '-Y ~' -causes the backup name for 'dir/file.c' to be 'dir/~file.c'. If you use +‘--basename-prefix=PREFIX’ (‘-Y PREFIX’) prepends PREFIX to the last +file name component of backup file names instead; for example, ‘-Y ~’ +causes the backup name for ‘dir/file.c’ to be ‘dir/~file.c’. If you use either of these prefix options, the suffix-based options are ignored. - If you specify the output file with the '-o' option, that file is the + If you specify the output file with the ‘-o’ option, that file is the one that is backed up, not the input file. Options that affect the names of backup files do not affect whether backups are made. For example, if you specify the -'--no-backup-if-mismatch' option, none of the options described in this +‘--no-backup-if-mismatch’ option, none of the options described in this section have any affect, because no backups are made. ---------- Footnotes ---------- - (1) A coding error in GNU 'patch' version 2.5.4 causes it to always -use '~', but this should be fixed in the next release. + (1) A coding error in GNU ‘patch’ version 2.5.4 causes it to always +use ‘~’, but this should be fixed in the next release.  File: diffutils.info, Node: Reject Names, Next: patch Messages, Prev: Backup Names, Up: Merging with patch @@ -2921,36 +2922,36 @@ File: diffutils.info, Node: Reject Names, Next: patch Messages, Prev: Backup 10.10 Reject File Names ======================= -The names for reject files (files containing patches that 'patch' could +The names for reject files (files containing patches that ‘patch’ could not find a place to apply) are normally the name of the output file with -'.rej' appended (or '#' if using '.rej' would make the backup file name +‘.rej’ appended (or ‘#’ if using ‘.rej’ would make the backup file name too long). - Alternatively, you can tell 'patch' to place all of the rejected -patches in a single file. The '-r REJECT-FILE' or -'--reject-file=REJECT-FILE' option uses REJECT-FILE as the reject file + Alternatively, you can tell ‘patch’ to place all of the rejected +patches in a single file. The ‘-r REJECT-FILE’ or +‘--reject-file=REJECT-FILE’ option uses REJECT-FILE as the reject file name.  File: diffutils.info, Node: patch Messages, Next: patch and POSIX, Prev: Reject Names, Up: Merging with patch -10.11 Messages and Questions from 'patch' +10.11 Messages and Questions from ‘patch’ ========================================= -'patch' can produce a variety of messages, especially if it has trouble +‘patch’ can produce a variety of messages, especially if it has trouble decoding its input. In a few situations where it's not sure how to -proceed, 'patch' normally prompts you for more information from the +proceed, ‘patch’ normally prompts you for more information from the keyboard. There are options to produce more or fewer messages, to have it not ask for keyboard input, and to affect the way that file names are quoted in messages. * Menu: -* More or Fewer Messages:: Controlling the verbosity of 'patch'. +* More or Fewer Messages:: Controlling the verbosity of ‘patch’. * patch and Keyboard Input:: Inhibiting keyboard input. * patch Quoting Style:: Quoting file names in diagnostics. - 'patch' exits with status 0 if all hunks are applied successfully, 1 + ‘patch’ exits with status 0 if all hunks are applied successfully, 1 if some hunks cannot be applied, and 2 if there is more serious trouble. When applying a set of patches in a loop, you should check the exit status, so you don't apply a later patch to a partially patched file. @@ -2958,17 +2959,17 @@ status, so you don't apply a later patch to a partially patched file.  File: diffutils.info, Node: More or Fewer Messages, Next: patch and Keyboard Input, Up: patch Messages -10.11.1 Controlling the Verbosity of 'patch' +10.11.1 Controlling the Verbosity of ‘patch’ -------------------------------------------- -You can cause 'patch' to produce more messages by using the '--verbose' -option. For example, when you give this option, the message 'Hmm...' -indicates that 'patch' is reading text in the patch file, attempting to +You can cause ‘patch’ to produce more messages by using the ‘--verbose’ +option. For example, when you give this option, the message ‘Hmm...’ +indicates that ‘patch’ is reading text in the patch file, attempting to determine whether there is a patch in that text, and if so, what kind of patch it is. - You can inhibit all terminal output from 'patch', unless an error -occurs, by using the '-s', '--quiet', or '--silent' option. + You can inhibit all terminal output from ‘patch’, unless an error +occurs, by using the ‘-s’, ‘--quiet’, or ‘--silent’ option.  File: diffutils.info, Node: patch and Keyboard Input, Next: patch Quoting Style, Prev: More or Fewer Messages, Up: patch Messages @@ -2976,146 +2977,146 @@ File: diffutils.info, Node: patch and Keyboard Input, Next: patch Quoting Styl 10.11.2 Inhibiting Keyboard Input --------------------------------- -There are two ways you can prevent 'patch' from asking you any -questions. The '--force' ('-f') option assumes that you know what you -are doing. It causes 'patch' to do the following: +There are two ways you can prevent ‘patch’ from asking you any +questions. The ‘--force’ (‘-f’) option assumes that you know what you +are doing. It causes ‘patch’ to do the following: - * Skip patches that do not contain file names in their headers. + • Skip patches that do not contain file names in their headers. - * Patch files even though they have the wrong version for the - 'Prereq:' line in the patch; + • Patch files even though they have the wrong version for the + ‘Prereq:’ line in the patch; - * Assume that patches are not reversed even if they look like they + • Assume that patches are not reversed even if they look like they are. -The '--batch' ('-t') option is similar to '-f', in that it suppresses +The ‘--batch’ (‘-t’) option is similar to ‘-f’, in that it suppresses questions, but it makes somewhat different assumptions: - * Skip patches that do not contain file names in their headers (the - same as '-f'). + • Skip patches that do not contain file names in their headers (the + same as ‘-f’). - * Skip patches for which the file has the wrong version for the - 'Prereq:' line in the patch; + • Skip patches for which the file has the wrong version for the + ‘Prereq:’ line in the patch; - * Assume that patches are reversed if they look like they are. + • Assume that patches are reversed if they look like they are.  File: diffutils.info, Node: patch Quoting Style, Prev: patch and Keyboard Input, Up: patch Messages -10.11.3 'patch' Quoting Style +10.11.3 ‘patch’ Quoting Style ----------------------------- -When 'patch' outputs a file name in a diagnostic message, it can format +When ‘patch’ outputs a file name in a diagnostic message, it can format the name in any of several ways. This can be useful to output file names unambiguously, even if they contain punctuation or special -characters like newlines. The '--quoting-style=WORD' option controls +characters like newlines. The ‘--quoting-style=WORD’ option controls how names are output. The WORD should be one of the following: -'literal' +‘literal’ Output names as-is. -'shell' +‘shell’ Quote names for the shell if they contain shell metacharacters or would cause ambiguous output. -'shell-always' +‘shell-always’ Quote names for the shell, even if they would normally not require quoting. -'c' +‘c’ Quote names as for a C language string. -'escape' - Quote as with 'c' except omit the surrounding double-quote +‘escape’ + Quote as with ‘c’ except omit the surrounding double-quote characters. - You can specify the default value of the '--quoting-style' option -with the environment variable 'QUOTING_STYLE'. If that environment -variable is not set, the default value is 'shell', but this default may -change in a future version of 'patch'. + You can specify the default value of the ‘--quoting-style’ option +with the environment variable ‘QUOTING_STYLE’. If that environment +variable is not set, the default value is ‘shell’, but this default may +change in a future version of ‘patch’.  File: diffutils.info, Node: patch and POSIX, Next: patch and Tradition, Prev: patch Messages, Up: Merging with patch -10.12 'patch' and the POSIX Standard +10.12 ‘patch’ and the POSIX Standard ==================================== -If you specify the '--posix' option, or set the 'POSIXLY_CORRECT' -environment variable, 'patch' conforms more strictly to the POSIX +If you specify the ‘--posix’ option, or set the ‘POSIXLY_CORRECT’ +environment variable, ‘patch’ conforms more strictly to the POSIX standard, as follows: - * Take the first existing file from the list (old, new, index) when + • Take the first existing file from the list (old, new, index) when intuiting file names from diff headers. *Note Multiple Patches::. - * Do not remove files that are removed by a diff. *Note Creating and + • Do not remove files that are removed by a diff. *Note Creating and Removing::. - * Do not ask whether to get files from RCS, ClearCase, or SCCS. *Note + • Do not ask whether to get files from RCS, ClearCase, or SCCS. *Note Revision Control::. - * Require that all options precede the files in the command line. + • Require that all options precede the files in the command line. - * Do not backup files, even when there is a mismatch. *Note + • Do not backup files, even when there is a mismatch. *Note Backups::.  File: diffutils.info, Node: patch and Tradition, Prev: patch and POSIX, Up: Merging with patch -10.13 GNU 'patch' and Traditional 'patch' +10.13 GNU ‘patch’ and Traditional ‘patch’ ========================================= -The current version of GNU 'patch' normally follows the POSIX standard. +The current version of GNU ‘patch’ normally follows the POSIX standard. *Note patch and POSIX::, for the few exceptions to this general rule. - Unfortunately, POSIX redefined the behavior of 'patch' in several + Unfortunately, POSIX redefined the behavior of ‘patch’ in several important ways. You should be aware of the following differences if you -must interoperate with traditional 'patch', or with GNU 'patch' version +must interoperate with traditional ‘patch’, or with GNU ‘patch’ version 2.1 and earlier. - * In traditional 'patch', the '-p' option's operand was optional, and - a bare '-p' was equivalent to '-p0'. The '-p' option now requires - an operand, and '-p 0' is now equivalent to '-p0'. For maximum - compatibility, use options like '-p0' and '-p1'. + • In traditional ‘patch’, the ‘-p’ option's operand was optional, and + a bare ‘-p’ was equivalent to ‘-p0’. The ‘-p’ option now requires + an operand, and ‘-p 0’ is now equivalent to ‘-p0’. For maximum + compatibility, use options like ‘-p0’ and ‘-p1’. - Also, traditional 'patch' simply counted slashes when stripping - path prefixes; 'patch' now counts pathname components. That is, a + Also, traditional ‘patch’ simply counted slashes when stripping + path prefixes; ‘patch’ now counts pathname components. That is, a sequence of one or more adjacent slashes now counts as a single slash. For maximum portability, avoid sending patches containing - '//' in file names. + ‘//’ in file names. - * In traditional 'patch', backups were enabled by default. This - behavior is now enabled with the '--backup' ('-b') option. + • In traditional ‘patch’, backups were enabled by default. This + behavior is now enabled with the ‘--backup’ (‘-b’) option. - Conversely, in POSIX 'patch', backups are never made, even when - there is a mismatch. In GNU 'patch', this behavior is enabled with - the '--no-backup-if-mismatch' option, or by conforming to POSIX. + Conversely, in POSIX ‘patch’, backups are never made, even when + there is a mismatch. In GNU ‘patch’, this behavior is enabled with + the ‘--no-backup-if-mismatch’ option, or by conforming to POSIX. - The '-b SUFFIX' option of traditional 'patch' is equivalent to the - '-b -z SUFFIX' options of GNU 'patch'. + The ‘-b SUFFIX’ option of traditional ‘patch’ is equivalent to the + ‘-b -z SUFFIX’ options of GNU ‘patch’. - * Traditional 'patch' used a complicated (and incompletely + • Traditional ‘patch’ used a complicated (and incompletely documented) method to intuit the name of the file to be patched from the patch header. This method did not conform to POSIX, and - had a few gotchas. Now 'patch' uses a different, equally + had a few gotchas. Now ‘patch’ uses a different, equally complicated (but better documented) method that is optionally POSIX-conforming; we hope it has fewer gotchas. The two methods are compatible if the file names in the context diff header and the - 'Index:' line are all identical after prefix-stripping. Your patch + ‘Index:’ line are all identical after prefix-stripping. Your patch is normally compatible if each header's file names all contain the same number of slashes. - * When traditional 'patch' asked the user a question, it sent the + • When traditional ‘patch’ asked the user a question, it sent the question to standard error and looked for an answer from the first file in the following list that was a terminal: standard error, - standard output, '/dev/tty', and standard input. Now 'patch' sends - questions to standard output and gets answers from '/dev/tty'. - Defaults for some answers have been changed so that 'patch' never + standard output, ‘/dev/tty’, and standard input. Now ‘patch’ sends + questions to standard output and gets answers from ‘/dev/tty’. + Defaults for some answers have been changed so that ‘patch’ never goes into an infinite loop when using default answers. - * Traditional 'patch' exited with a status value that counted the + • Traditional ‘patch’ exited with a status value that counted the number of bad hunks, or with status 1 if there was real trouble. - Now 'patch' exits with status 1 if some hunks failed, or with 2 if + Now ‘patch’ exits with status 1 if some hunks failed, or with 2 if there was real trouble. - * Limit yourself to the following options when sending instructions - meant to be executed by anyone running GNU 'patch', traditional - 'patch', or a 'patch' that conforms to POSIX. Spaces are + • Limit yourself to the following options when sending instructions + meant to be executed by anyone running GNU ‘patch’, traditional + ‘patch’, or a ‘patch’ that conforms to POSIX. Spaces are significant in the following list, and operands are required. -c @@ -3148,7 +3149,7 @@ to distribute patches for updating a software package. * Tips for Patch Producers:: Advice for making patches. * Tips for Patch Consumers:: Advice for using patches. -* Avoiding Common Mistakes:: Avoiding common mistakes when using 'patch'. +* Avoiding Common Mistakes:: Avoiding common mistakes when using ‘patch’. * Generating Smaller Patches:: How to generate smaller patches.  @@ -3159,22 +3160,22 @@ File: diffutils.info, Node: Tips for Patch Producers, Next: Tips for Patch Con To create a patch that changes an older version of a package into a newer version, first make a copy of the older and newer versions in -adjacent subdirectories. It is common to do that by unpacking 'tar' +adjacent subdirectories. It is common to do that by unpacking ‘tar’ archives of the two versions. - To generate the patch, use the command 'diff -Naur OLD NEW' where OLD + To generate the patch, use the command ‘diff -Naur OLD NEW’ where OLD and NEW identify the old and new directories. The names OLD and NEW -should not contain any slashes. The '-N' option lets the patch create -and remove files; '-a' lets the patch update non-text files; '-u' -generates useful timestamps and enough context; and '-r' lets the patch +should not contain any slashes. The ‘-N’ option lets the patch create +and remove files; ‘-a’ lets the patch update non-text files; ‘-u’ +generates useful timestamps and enough context; and ‘-r’ lets the patch update subdirectories. Here is an example command, using Bourne shell syntax: diff -Naur gcc-3.0.3 gcc-3.0.4 Tell your recipients how to apply the patches. This should include -which working directory to use, and which 'patch' options to use; the -option '-p1' is recommended. Test your procedure by pretending to be a +which working directory to use, and which ‘patch’ options to use; the +option ‘-p1’ is recommended. Test your procedure by pretending to be a recipient and applying your patches to a copy of the original files. *Note Avoiding Common Mistakes::, for how to avoid common mistakes @@ -3190,10 +3191,10 @@ A patch producer should tell recipients how to apply the patches, so the first rule of thumb for a patch consumer is to follow the instructions supplied with the patch. - GNU 'diff' can analyze files with arbitrarily long lines and files -that end in incomplete lines. However, older versions of 'patch' cannot + GNU ‘diff’ can analyze files with arbitrarily long lines and files +that end in incomplete lines. However, older versions of ‘patch’ cannot patch such files. If you are having trouble applying such patches, try -upgrading to a recent version of GNU 'patch'. +upgrading to a recent version of GNU ‘patch’.  File: diffutils.info, Node: Avoiding Common Mistakes, Next: Generating Smaller Patches, Prev: Tips for Patch Consumers, Up: Making Patches @@ -3201,9 +3202,9 @@ File: diffutils.info, Node: Avoiding Common Mistakes, Next: Generating Smaller 11.3 Avoiding Common Mistakes ============================= -When producing a patch for multiple files, apply 'diff' to directories +When producing a patch for multiple files, apply ‘diff’ to directories whose names do not have slashes. This reduces confusion when the patch -consumer specifies the '-pNUMBER' option, since this option can have +consumer specifies the ‘-pNUMBER’ option, since this option can have surprising results when the old and new file names have different numbers of slashes. For example, do not send a patch with a header that looks like this: @@ -3213,7 +3214,7 @@ looks like this: +++ prog/README 2002-03-17 20:49:32.442260588 -0800 because the two file names have different numbers of slashes, and -different versions of 'patch' interpret the file names differently. To +different versions of ‘patch’ interpret the file names differently. To avoid confusion, send output that looks like this instead: diff -Naur v2.0.29/prog/README v2.0.30/prog/README @@ -3221,28 +3222,28 @@ avoid confusion, send output that looks like this instead: +++ v2.0.30/prog/README 2002-03-17 20:49:32.442260588 -0800 Make sure you have specified the file names correctly, either in a -context diff header or with an 'Index:' line. Take care to not send out +context diff header or with an ‘Index:’ line. Take care to not send out reversed patches, since these make people wonder whether they have already applied the patch. Avoid sending patches that compare backup file names like -'README.orig' or 'README~', since this might confuse 'patch' into +‘README.orig’ or ‘README~’, since this might confuse ‘patch’ into patching a backup file instead of the real file. Instead, send patches that compare the same base file names in different directories, e.g. -'old/README' and 'new/README'. +‘old/README’ and ‘new/README’. To save people from partially applying a patch before other patches that should have gone before it, you can make the first patch in the -patch file update a file with a name like 'patchlevel.h' or 'version.c', +patch file update a file with a name like ‘patchlevel.h’ or ‘version.c’, which contains a patch level or version number. If the input file -contains the wrong version number, 'patch' will complain immediately. +contains the wrong version number, ‘patch’ will complain immediately. - An even clearer way to prevent this problem is to put a 'Prereq:' + An even clearer way to prevent this problem is to put a ‘Prereq:’ line before the patch. If the leading text in the patch file contains a -line that starts with 'Prereq:', 'patch' takes the next word from that +line that starts with ‘Prereq:’, ‘patch’ takes the next word from that line (normally a version number) and checks whether the next input file contains that word, preceded and followed by either white space or a -newline. If not, 'patch' prompts you for confirmation before +newline. If not, ‘patch’ prompts you for confirmation before proceeding. This makes it difficult to accidentally apply patches in the wrong order. @@ -3252,60 +3253,60 @@ File: diffutils.info, Node: Generating Smaller Patches, Prev: Avoiding Common 11.4 Generating Smaller Patches =============================== -The simplest way to generate a patch is to use 'diff -Naur' (*note Tips +The simplest way to generate a patch is to use ‘diff -Naur’ (*note Tips for Patch Producers::), but you might be able to reduce the size of the patch by renaming or removing some files before making the patch. If the older version of the package contains any files that the newer version does not, or if any files have been renamed between the two -versions, make a list of 'rm' and 'mv' commands for the user to execute +versions, make a list of ‘rm’ and ‘mv’ commands for the user to execute in the old version directory before applying the patch. Then run those commands yourself in the scratch directory. If there are any files that you don't need to include in the patch -because they can easily be rebuilt from other files (for example, 'TAGS' -and output from 'yacc' and 'makeinfo'), exclude them from the patch by -giving 'diff' the '-x PATTERN' option (*note Comparing Directories::). +because they can easily be rebuilt from other files (for example, ‘TAGS’ +and output from ‘yacc’ and ‘makeinfo’), exclude them from the patch by +giving ‘diff’ the ‘-x PATTERN’ option (*note Comparing Directories::). If you want your patch to modify a derived file because your recipients lack tools to build it, make sure that the patch for the derived file follows any patches for files that it depends on, so that the -recipients' timestamps will not confuse 'make'. +recipients' timestamps will not confuse ‘make’. - Now you can create the patch using 'diff -Naur'. Make sure to + Now you can create the patch using ‘diff -Naur’. Make sure to specify the scratch directory first and the newer directory second. - Add to the top of the patch a note telling the user any 'rm' and 'mv' + Add to the top of the patch a note telling the user any ‘rm’ and ‘mv’ commands to run before applying the patch. Then you can remove the scratch directory. You can also shrink the patch size by using fewer lines of context, -but bear in mind that 'patch' typically needs at least two lines for +but bear in mind that ‘patch’ typically needs at least two lines for proper operation when patches do not exactly match the input files.  File: diffutils.info, Node: Invoking cmp, Next: Invoking diff, Prev: Making Patches, Up: Top -12 Invoking 'cmp' +12 Invoking ‘cmp’ ***************** -The 'cmp' command compares two files, and if they differ, tells the +The ‘cmp’ command compares two files, and if they differ, tells the first byte and line number where they differ or reports that one file is a prefix of the other. Bytes and lines are numbered starting with 1. -The arguments of 'cmp' are as follows: +The arguments of ‘cmp’ are as follows: cmp OPTIONS... FROM-FILE [TO-FILE [FROM-SKIP [TO-SKIP]]] - The file name '-' is always the standard input. 'cmp' also uses the + The file name ‘-’ is always the standard input. ‘cmp’ also uses the standard input if one file name is omitted. The FROM-SKIP and TO-SKIP operands specify how many bytes to ignore at the start of each file; -they are equivalent to the '--ignore-initial=FROM-SKIP:TO-SKIP' option. +they are equivalent to the ‘--ignore-initial=FROM-SKIP:TO-SKIP’ option. - By default, 'cmp' outputs nothing if the two files have the same -contents. If the two files have bytes that differ, 'cmp' reports the + By default, ‘cmp’ outputs nothing if the two files have the same +contents. If the two files have bytes that differ, ‘cmp’ reports the location of the first difference to standard output: FROM-FILE TO-FILE differ: char BYTE-NUMBER, line LINE-NUMBER -If one file is a prefix of the other, 'cmp' reports the shorter file's +If one file is a prefix of the other, ‘cmp’ reports the shorter file's name to standard error, followed by a blank and extra information about the shorter file: @@ -3320,40 +3321,40 @@ differences were found, and 2 means trouble. * Menu: -* cmp Options:: Summary of options to 'cmp'. +* cmp Options:: Summary of options to ‘cmp’.  File: diffutils.info, Node: cmp Options, Up: Invoking cmp -12.1 Options to 'cmp' +12.1 Options to ‘cmp’ ===================== -Below is a summary of all of the options that GNU 'cmp' accepts. Most +Below is a summary of all of the options that GNU ‘cmp’ accepts. Most options have two equivalent names, one of which is a single letter -preceded by '-', and the other of which is a long name preceded by '--'. +preceded by ‘-’, and the other of which is a long name preceded by ‘--’. Multiple single letter options (unless they take an argument) can be -combined into a single command line word: '-bl' is equivalent to '-b --l'. +combined into a single command line word: ‘-bl’ is equivalent to ‘-b +-l’. -'-b' -'--print-bytes' - Print the differing bytes. Display control bytes as a '^' followed +‘-b’ +‘--print-bytes’ + Print the differing bytes. Display control bytes as a ‘^’ followed by a letter of the alphabet and precede bytes that have the high - bit set with 'M-' (which stands for "meta"). + bit set with ‘M-’ (which stands for "meta"). -'--help' +‘--help’ Output a summary of usage and then exit. -'-i SKIP' -'--ignore-initial=SKIP' +‘-i SKIP’ +‘--ignore-initial=SKIP’ Ignore any differences in the first SKIP bytes of the input files. Treat files with fewer than SKIP bytes as if they are empty. If - SKIP is of the form 'FROM-SKIP:TO-SKIP', skip the first FROM-SKIP + SKIP is of the form ‘FROM-SKIP:TO-SKIP’, skip the first FROM-SKIP bytes of the first input file and the first TO-SKIP bytes of the second. -'-l' -'--verbose' +‘-l’ +‘--verbose’ Output the (decimal) byte numbers and (octal) values of all differing bytes, instead of the default standard output. Each output line contains a differing byte's number relative to the @@ -3361,493 +3362,496 @@ combined into a single command line word: '-bl' is equivalent to '-b numbers start at 1. Also, output the EOF message if one file is shorter than the other. -'-n COUNT' -'--bytes=COUNT' +‘-n COUNT’ +‘--bytes=COUNT’ Compare at most COUNT input bytes. -'-s' -'--quiet' -'--silent' +‘-s’ +‘--quiet’ +‘--silent’ Do not print anything; only return an exit status indicating whether the files differ. -'-v' -'--version' +‘-v’ +‘--version’ Output version information and then exit. In the above table, operands that are byte counts are normally -decimal, but may be preceded by '0' for octal and '0x' for hexadecimal. +decimal, but may be preceded by ‘0’ for octal and ‘0x’ for hexadecimal. A byte count can be followed by a suffix to specify a multiple of that count; in this case an omitted integer is understood to be 1. A -bare size letter, or one followed by 'iB', specifies a multiple using -powers of 1024. A size letter followed by 'B' specifies powers of 1000 -instead. For example, '-n 4M' and '-n 4MiB' are equivalent to '-n -4194304', whereas '-n 4MB' is equivalent to '-n 4000000'. This notation +bare size letter, or one followed by ‘iB’, specifies a multiple using +powers of 1024. A size letter followed by ‘B’ specifies powers of 1000 +instead. For example, ‘-n 4M’ and ‘-n 4MiB’ are equivalent to ‘-n +4194304’, whereas ‘-n 4MB’ is equivalent to ‘-n 4000000’. This notation is upward compatible with the SI prefixes (http://www.bipm.fr/enus/3_SI/si-prefixes.html) for decimal multiples and with the IEC 60027-2 prefixes for binary multiples (http://physics.nist.gov/cuu/Units/binary.html). - The following suffixes are defined. Large sizes like '1Y' may be + The following suffixes are defined. Large sizes like ‘1Y’ may be rejected by your computer due to limitations of its arithmetic. -'kB' +‘kB’ kilobyte: 10^3 = 1000. -'k' -'K' -'KiB' - kibibyte: 2^10 = 1024. 'K' is special: the SI prefix is 'k' and - the IEC 60027-2 prefix is 'Ki', but tradition and POSIX use 'k' to - mean 'KiB'. -'MB' +‘k’ +‘K’ +‘KiB’ + kibibyte: 2^10 = 1024. ‘K’ is special: the SI prefix is ‘k’ and + the IEC 60027-2 prefix is ‘Ki’, but tradition and POSIX use ‘k’ to + mean ‘KiB’. +‘MB’ megabyte: 10^6 = 1,000,000. -'M' -'MiB' +‘M’ +‘MiB’ mebibyte: 2^20 = 1,048,576. -'GB' +‘GB’ gigabyte: 10^9 = 1,000,000,000. -'G' -'GiB' +‘G’ +‘GiB’ gibibyte: 2^30 = 1,073,741,824. -'TB' +‘TB’ terabyte: 10^12 = 1,000,000,000,000. -'T' -'TiB' +‘T’ +‘TiB’ tebibyte: 2^40 = 1,099,511,627,776. -'PB' +‘PB’ petabyte: 10^15 = 1,000,000,000,000,000. -'P' -'PiB' +‘P’ +‘PiB’ pebibyte: 2^50 = 1,125,899,906,842,624. -'EB' +‘EB’ exabyte: 10^18 = 1,000,000,000,000,000,000. -'E' -'EiB' +‘E’ +‘EiB’ exbibyte: 2^60 = 1,152,921,504,606,846,976. -'ZB' +‘ZB’ zettabyte: 10^21 = 1,000,000,000,000,000,000,000 -'Z' -'ZiB' - 2^70 = 1,180,591,620,717,411,303,424. ('Zi' is a GNU extension to +‘Z’ +‘ZiB’ + 2^70 = 1,180,591,620,717,411,303,424. (‘Zi’ is a GNU extension to IEC 60027-2.) -'YB' +‘YB’ yottabyte: 10^24 = 1,000,000,000,000,000,000,000,000. -'Y' -'YiB' - 2^80 = 1,208,925,819,614,629,174,706,176. ('Yi' is a GNU extension +‘Y’ +‘YiB’ + 2^80 = 1,208,925,819,614,629,174,706,176. (‘Yi’ is a GNU extension to IEC 60027-2.)  File: diffutils.info, Node: Invoking diff, Next: Invoking diff3, Prev: Invoking cmp, Up: Top -13 Invoking 'diff' +13 Invoking ‘diff’ ****************** -The format for running the 'diff' command is: +The format for running the ‘diff’ command is: diff OPTIONS... FILES... In the simplest case, two file names FROM-FILE and TO-FILE are given, -and 'diff' compares the contents of FROM-FILE and TO-FILE. A file name -of '-' stands for the standard input. +and ‘diff’ compares the contents of FROM-FILE and TO-FILE. A file name +of ‘-’ stands for the standard input. - If one file is a directory and the other is not, 'diff' compares the + If one file is a directory and the other is not, ‘diff’ compares the file in the directory whose name is that of the non-directory. The -non-directory file must not be '-'. +non-directory file must not be ‘-’. - If two file names are given and both are directories, 'diff' compares + If two file names are given and both are directories, ‘diff’ compares corresponding files in both directories, in alphabetical order; this -comparison is not recursive unless the '--recursive' ('-r') option is -given. 'diff' never compares the actual contents of a directory as if +comparison is not recursive unless the ‘--recursive’ (‘-r’) option is +given. ‘diff’ never compares the actual contents of a directory as if it were a file. The file that is fully specified may not be standard input, because standard input is nameless and the notion of "file with the same name" does not apply. - If the '--from-file=FILE' option is given, the number of file names + If the ‘--from-file=FILE’ option is given, the number of file names is arbitrary, and FILE is compared to each named file. Similarly, if -the '--to-file=FILE' option is given, each named file is compared to +the ‘--to-file=FILE’ option is given, each named file is compared to FILE. - 'diff' options begin with '-', so normally file names may not begin -with '-'. However, '--' as an argument by itself treats the remaining -arguments as file names even if they begin with '-'. + ‘diff’ options begin with ‘-’, so normally file names may not begin +with ‘-’. However, ‘--’ as an argument by itself treats the remaining +arguments as file names even if they begin with ‘-’. An exit status of 0 means no differences were found, 1 means some differences were found, and 2 means trouble. * Menu: -* diff Options:: Summary of options to 'diff'. +* diff Options:: Summary of options to ‘diff’.  File: diffutils.info, Node: diff Options, Up: Invoking diff -13.1 Options to 'diff' +13.1 Options to ‘diff’ ====================== -Below is a summary of all of the options that GNU 'diff' accepts. Most +Below is a summary of all of the options that GNU ‘diff’ accepts. Most options have two equivalent names, one of which is a single letter -preceded by '-', and the other of which is a long name preceded by '--'. +preceded by ‘-’, and the other of which is a long name preceded by ‘--’. Multiple single letter options (unless they take an argument) can be -combined into a single command line word: '-ac' is equivalent to '-a --c'. Long named options can be abbreviated to any unique prefix of +combined into a single command line word: ‘-ac’ is equivalent to ‘-a +-c’. Long named options can be abbreviated to any unique prefix of their name. Brackets ([ and ]) indicate that an option takes an optional argument. -'-a' -'--text' +‘-a’ +‘--text’ Treat all files as text and compare them line-by-line, even if they do not seem to be text. *Note Binary::. -'-b' -'--ignore-space-change' +‘-b’ +‘--ignore-space-change’ Ignore changes in amount of white space. *Note White Space::. -'-B' -'--ignore-blank-lines' +‘-B’ +‘--ignore-blank-lines’ Ignore changes that just insert or delete blank lines. *Note Blank Lines::. -'--binary' +‘--binary’ Read and write data in binary mode. *Note Binary::. -'-c' +‘-c’ Use the context output format, showing three lines of context. *Note Context Format::. -'--color [=WHEN]' +‘--color [=WHEN]’ Specify whether to use color for distinguishing different contexts, like header, added or removed lines. WHEN may be omitted, or one of: - * none Do not use color at all. This is the default when no - -color option is specified. - * auto Use color only if standard output is a terminal. - * always Always use color. - Specifying '--color' and no WHEN is equivalent to '--color=auto'. - -'-C LINES' -'--context[=LINES]' + • none + Do not use color at all. This is the default when no -color + option is specified. + • auto + Use color only if standard output is a terminal. + • always + Always use color. + Specifying ‘--color’ and no WHEN is equivalent to ‘--color=auto’. + +‘-C LINES’ +‘--context[=LINES]’ Use the context output format, showing LINES (an integer) lines of context, or three if LINES is not given. *Note Context Format::. - For proper operation, 'patch' typically needs at least two lines of + For proper operation, ‘patch’ typically needs at least two lines of context. - For compatibility 'diff' also supports an obsolete option syntax - '-LINES' that has effect when combined with '-c', '-p', or '-u'. - New scripts should use '-U LINES' ('-C LINES') instead. + For compatibility ‘diff’ also supports an obsolete option syntax + ‘-LINES’ that has effect when combined with ‘-c’, ‘-p’, or ‘-u’. + New scripts should use ‘-U LINES’ (‘-C LINES’) instead. -'--changed-group-format=FORMAT' +‘--changed-group-format=FORMAT’ Use FORMAT to output a line group containing differing lines from both files in if-then-else format. *Note Line Group Formats::. -'-d' -'--minimal' +‘-d’ +‘--minimal’ Change the algorithm perhaps find a smaller set of changes. This - makes 'diff' slower (sometimes much slower). *Note diff + makes ‘diff’ slower (sometimes much slower). *Note diff Performance::. -'-D NAME' -'--ifdef=NAME' - Make merged '#ifdef' format output, conditional on the preprocessor +‘-D NAME’ +‘--ifdef=NAME’ + Make merged ‘#ifdef’ format output, conditional on the preprocessor macro NAME. *Note If-then-else::. -'-e' -'--ed' - Make output that is a valid 'ed' script. *Note ed Scripts::. +‘-e’ +‘--ed’ + Make output that is a valid ‘ed’ script. *Note ed Scripts::. -'-E' -'--ignore-tab-expansion' +‘-E’ +‘--ignore-tab-expansion’ Ignore changes due to tab expansion. *Note White Space::. -'-f' -'--forward-ed' - Make output that looks vaguely like an 'ed' script but has changes +‘-f’ +‘--forward-ed’ + Make output that looks vaguely like an ‘ed’ script but has changes in the order they appear in the file. *Note Forward ed::. -'-F REGEXP' -'--show-function-line=REGEXP' +‘-F REGEXP’ +‘--show-function-line=REGEXP’ In context and unified format, for each hunk of differences, show some of the last preceding line that matches REGEXP. *Note Specified Headings::. -'--from-file=FILE' +‘--from-file=FILE’ Compare FILE to each operand; FILE may be a directory. -'--help' +‘--help’ Output a summary of usage and then exit. -'--horizon-lines=LINES' +‘--horizon-lines=LINES’ Do not discard the last LINES lines of the common prefix and the first LINES lines of the common suffix. *Note diff Performance::. -'-i' -'--ignore-case' +‘-i’ +‘--ignore-case’ Ignore changes in case; consider upper- and lower-case letters equivalent. *Note Case Folding::. -'-I REGEXP' -'--ignore-matching-lines=REGEXP' +‘-I REGEXP’ +‘--ignore-matching-lines=REGEXP’ Ignore changes that just insert or delete lines that match REGEXP. *Note Specified Lines::. -'--ignore-file-name-case' +‘--ignore-file-name-case’ Ignore case when comparing file names. For example, recursive - comparison of 'd' to 'e' might compare the contents of 'd/Init' and - 'e/inIt'. At the top level, 'diff d inIt' might compare the - contents of 'd/Init' and 'inIt'. *Note Comparing Directories::. + comparison of ‘d’ to ‘e’ might compare the contents of ‘d/Init’ and + ‘e/inIt’. At the top level, ‘diff d inIt’ might compare the + contents of ‘d/Init’ and ‘inIt’. *Note Comparing Directories::. -'-l' -'--paginate' - Pass the output through 'pr' to paginate it. *Note Pagination::. +‘-l’ +‘--paginate’ + Pass the output through ‘pr’ to paginate it. *Note Pagination::. -'-L LABEL' -'--label=LABEL' +‘-L LABEL’ +‘--label=LABEL’ Use LABEL instead of the file name in the context format (*note Context Format::) and unified format (*note Unified Format::) headers. *Note RCS::. -'--left-column' +‘--left-column’ Print only the left column of two common lines in side by side format. *Note Side by Side Format::. -'--line-format=FORMAT' +‘--line-format=FORMAT’ Use FORMAT to output all input lines in if-then-else format. *Note Line Formats::. -'-n' -'--rcs' - Output RCS-format diffs; like '-f' except that each command +‘-n’ +‘--rcs’ + Output RCS-format diffs; like ‘-f’ except that each command specifies the number of lines affected. *Note RCS::. -'-N' -'--new-file' +‘-N’ +‘--new-file’ If one file is missing, treat it as present but empty. *Note Comparing Directories::. -'--new-group-format=FORMAT' +‘--new-group-format=FORMAT’ Use FORMAT to output a group of lines taken from just the second file in if-then-else format. *Note Line Group Formats::. -'--new-line-format=FORMAT' +‘--new-line-format=FORMAT’ Use FORMAT to output a line taken from just the second file in if-then-else format. *Note Line Formats::. -'--no-dereference' +‘--no-dereference’ Act on symbolic links themselves instead of what they point to. Two symbolic links are deemed equal only when each points to precisely the same name. -'--old-group-format=FORMAT' +‘--old-group-format=FORMAT’ Use FORMAT to output a group of lines taken from just the first file in if-then-else format. *Note Line Group Formats::. -'--old-line-format=FORMAT' +‘--old-line-format=FORMAT’ Use FORMAT to output a line taken from just the first file in if-then-else format. *Note Line Formats::. -'-p' -'--show-c-function' +‘-p’ +‘--show-c-function’ Show which C function each change is in. *Note C Function Headings::. -'--palette=PALETTE' +‘--palette=PALETTE’ Specify what color palette to use when colored output is enabled. - It defaults to 'rs=0:hd=1:ad=32:de=31:ln=36' for red deleted lines, + It defaults to ‘rs=0:hd=1:ad=32:de=31:ln=36’ for red deleted lines, green added lines, cyan line numbers, bold header. Supported capabilities are as follows. - 'ad=32' + ‘ad=32’ SGR substring for added lines. The default is green foreground. - 'de=31' + ‘de=31’ SGR substring for deleted lines. The default is red foreground. - 'hd=1' + ‘hd=1’ SGR substring for chunk header. The default is bold foreground. - 'ln=36' + ‘ln=36’ SGR substring for line numbers. The default is cyan foreground. -'-q' -'--brief' +‘-q’ +‘--brief’ Report only whether the files differ, not the details of the differences. *Note Brief::. -'-r' -'--recursive' +‘-r’ +‘--recursive’ When comparing directories, recursively compare any subdirectories found. *Note Comparing Directories::. -'-s' -'--report-identical-files' +‘-s’ +‘--report-identical-files’ Report when two files are the same. *Note Comparing Directories::. -'-S FILE' -'--starting-file=FILE' +‘-S FILE’ +‘--starting-file=FILE’ When comparing directories, start with the file FILE. This is used for resuming an aborted comparison. *Note Comparing Directories::. -'--speed-large-files' +‘--speed-large-files’ Use heuristics to speed handling of large files that have numerous scattered small changes. *Note diff Performance::. -'--strip-trailing-cr' +‘--strip-trailing-cr’ Strip any trailing carriage return at the end of an input line. *Note Binary::. -'--suppress-common-lines' +‘--suppress-common-lines’ Do not print common lines in side by side format. *Note Side by Side Format::. -'-t' -'--expand-tabs' +‘-t’ +‘--expand-tabs’ Expand tabs to spaces in the output, to preserve the alignment of tabs in the input files. *Note Tabs::. -'-T' -'--initial-tab' +‘-T’ +‘--initial-tab’ Output a tab rather than a space before the text of a line in normal or context format. This causes the alignment of tabs in the line to look normal. *Note Tabs::. -'--tabsize=COLUMNS' +‘--tabsize=COLUMNS’ Assume that tab stops are set every COLUMNS (default 8) print columns. *Note Tabs::. -'--suppress-blank-empty' +‘--suppress-blank-empty’ Suppress any blanks before newlines when printing the representation of an empty line, when outputting normal, context, or unified format. *Note Trailing Blanks::. -'--to-file=FILE' +‘--to-file=FILE’ Compare each operand to FILE; FILE may be a directory. -'-u' +‘-u’ Use the unified output format, showing three lines of context. *Note Unified Format::. -'--unchanged-group-format=FORMAT' +‘--unchanged-group-format=FORMAT’ Use FORMAT to output a group of common lines taken from both files in if-then-else format. *Note Line Group Formats::. -'--unchanged-line-format=FORMAT' +‘--unchanged-line-format=FORMAT’ Use FORMAT to output a line common to both files in if-then-else format. *Note Line Formats::. -'--unidirectional-new-file' +‘--unidirectional-new-file’ If a first file is missing, treat it as present but empty. *Note Comparing Directories::. -'-U LINES' -'--unified[=LINES]' +‘-U LINES’ +‘--unified[=LINES]’ Use the unified output format, showing LINES (an integer) lines of context, or three if LINES is not given. *Note Unified Format::. - For proper operation, 'patch' typically needs at least two lines of + For proper operation, ‘patch’ typically needs at least two lines of context. - On older systems, 'diff' supports an obsolete option '-LINES' that - has effect when combined with '-u'. POSIX 1003.1-2001 (*note - Standards conformance::) does not allow this; use '-U LINES' + On older systems, ‘diff’ supports an obsolete option ‘-LINES’ that + has effect when combined with ‘-u’. POSIX 1003.1-2001 (*note + Standards conformance::) does not allow this; use ‘-U LINES’ instead. -'-v' -'--version' +‘-v’ +‘--version’ Output version information and then exit. -'-w' -'--ignore-all-space' +‘-w’ +‘--ignore-all-space’ Ignore white space when comparing lines. *Note White Space::. -'-W COLUMNS' -'--width=COLUMNS' +‘-W COLUMNS’ +‘--width=COLUMNS’ Output at most COLUMNS (default 130) print columns per line in side by side format. *Note Side by Side Format::. -'-x PATTERN' -'--exclude=PATTERN' +‘-x PATTERN’ +‘--exclude=PATTERN’ When comparing directories, ignore files and subdirectories whose basenames match PATTERN. *Note Comparing Directories::. -'-X FILE' -'--exclude-from=FILE' +‘-X FILE’ +‘--exclude-from=FILE’ When comparing directories, ignore files and subdirectories whose basenames match any pattern contained in FILE. *Note Comparing Directories::. -'-y' -'--side-by-side' +‘-y’ +‘--side-by-side’ Use the side by side output format. *Note Side by Side Format::. -'-Z' -'--ignore-trailing-space' +‘-Z’ +‘--ignore-trailing-space’ Ignore white space at line end. *Note White Space::.  File: diffutils.info, Node: Invoking diff3, Next: Invoking patch, Prev: Invoking diff, Up: Top -14 Invoking 'diff3' +14 Invoking ‘diff3’ ******************* -The 'diff3' command compares three files and outputs descriptions of +The ‘diff3’ command compares three files and outputs descriptions of their differences. Its arguments are as follows: diff3 OPTIONS... MINE OLDER YOURS The files to compare are MINE, OLDER, and YOURS. At most one of -these three file names may be '-', which tells 'diff3' to read the +these three file names may be ‘-’, which tells ‘diff3’ to read the standard input for that file. - An exit status of 0 means 'diff3' was successful, 1 means some + An exit status of 0 means ‘diff3’ was successful, 1 means some conflicts were found, and 2 means trouble. * Menu: -* diff3 Options:: Summary of options to 'diff3'. +* diff3 Options:: Summary of options to ‘diff3’.  File: diffutils.info, Node: diff3 Options, Up: Invoking diff3 -14.1 Options to 'diff3' +14.1 Options to ‘diff3’ ======================= -Below is a summary of all of the options that GNU 'diff3' accepts. +Below is a summary of all of the options that GNU ‘diff3’ accepts. Multiple single letter options (unless they take an argument) can be combined into a single command line argument. -'-a' -'--text' +‘-a’ +‘--text’ Treat all files as text and compare them line-by-line, even if they do not appear to be text. *Note Binary::. -'-A' -'--show-all' +‘-A’ +‘--show-all’ Incorporate all unmerged changes from OLDER to YOURS into MINE, surrounding conflicts with bracket lines. *Note Marking Conflicts::. -'--diff-program=PROGRAM' +‘--diff-program=PROGRAM’ Use the compatible comparison program PROGRAM to compare files - instead of 'diff'. + instead of ‘diff’. -'-e' -'--ed' - Generate an 'ed' script that incorporates all the changes from +‘-e’ +‘--ed’ + Generate an ‘ed’ script that incorporates all the changes from OLDER to YOURS into MINE. *Note Which Changes::. -'-E' -'--show-overlap' - Like '-e', except bracket lines from overlapping changes' first and - third files. *Note Marking Conflicts::. With '-E', an overlapping +‘-E’ +‘--show-overlap’ + Like ‘-e’, except bracket lines from overlapping changes' first and + third files. *Note Marking Conflicts::. With ‘-E’, an overlapping change looks like this: <<<<<<< MINE @@ -3856,274 +3860,274 @@ combined into a single command line argument. lines from YOURS >>>>>>> YOURS -'--help' +‘--help’ Output a summary of usage and then exit. -'-i' - Generate 'w' and 'q' commands at the end of the 'ed' script for +‘-i’ + Generate ‘w’ and ‘q’ commands at the end of the ‘ed’ script for System V compatibility. This option must be combined with one of - the '-AeExX3' options, and may not be combined with '-m'. *Note + the ‘-AeExX3’ options, and may not be combined with ‘-m’. *Note Saving the Changed File::. -'--label=LABEL' - Use the label LABEL for the brackets output by the '-A', '-E' and - '-X' options. This option may be given up to three times, one for +‘--label=LABEL’ + Use the label LABEL for the brackets output by the ‘-A’, ‘-E’ and + ‘-X’ options. This option may be given up to three times, one for each input file. The default labels are the names of the input - files. Thus 'diff3 --label X --label Y --label Z -m A B C' acts - like 'diff3 -m A B C', except that the output looks like it came - from files named 'X', 'Y' and 'Z' rather than from files named 'A', - 'B' and 'C'. *Note Marking Conflicts::. + files. Thus ‘diff3 --label X --label Y --label Z -m A B C’ acts + like ‘diff3 -m A B C’, except that the output looks like it came + from files named ‘X’, ‘Y’ and ‘Z’ rather than from files named ‘A’, + ‘B’ and ‘C’. *Note Marking Conflicts::. -'-m' -'--merge' +‘-m’ +‘--merge’ Apply the edit script to the first file and send the result to - standard output. Unlike piping the output from 'diff3' to 'ed', - this works even for binary files and incomplete lines. '-A' is + standard output. Unlike piping the output from ‘diff3’ to ‘ed’, + this works even for binary files and incomplete lines. ‘-A’ is assumed if no edit script option is specified. *Note Bypassing ed::. -'--strip-trailing-cr' +‘--strip-trailing-cr’ Strip any trailing carriage return at the end of an input line. *Note Binary::. -'-T' -'--initial-tab' +‘-T’ +‘--initial-tab’ Output a tab rather than two spaces before the text of a line in normal format. This causes the alignment of tabs in the line to look normal. *Note Tabs::. -'-v' -'--version' +‘-v’ +‘--version’ Output version information and then exit. -'-x' -'--overlap-only' - Like '-e', except output only the overlapping changes. *Note Which +‘-x’ +‘--overlap-only’ + Like ‘-e’, except output only the overlapping changes. *Note Which Changes::. -'-X' - Like '-E', except output only the overlapping changes. In other - words, like '-x', except bracket changes as in '-E'. *Note Marking +‘-X’ + Like ‘-E’, except output only the overlapping changes. In other + words, like ‘-x’, except bracket changes as in ‘-E’. *Note Marking Conflicts::. -'-3' -'--easy-only' - Like '-e', except output only the nonoverlapping changes. *Note +‘-3’ +‘--easy-only’ + Like ‘-e’, except output only the nonoverlapping changes. *Note Which Changes::.  File: diffutils.info, Node: Invoking patch, Next: Invoking sdiff, Prev: Invoking diff3, Up: Top -15 Invoking 'patch' +15 Invoking ‘patch’ ******************* -Normally 'patch' is invoked like this: +Normally ‘patch’ is invoked like this: patch . Please send bug reports for GNU 'patch' to +. Please send bug reports for GNU ‘patch’ to . Send as precise a description of the problem as -you can, including the output of the '--version' option and sample input +you can, including the output of the ‘--version’ option and sample input files that produce the bug, if applicable. If you have a nontrivial fix for the bug, please send it as well. If you have a patch, please send it too. It may simplify the maintainer's job if the patch is relative @@ -4498,7 +4502,8 @@ Appendix A Copying This Manual Version 1.3, 3 November 2008 - Copyright (C) 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc. + Copyright © 2000-2002, 2007-2008, 2022-2023 Free Software + Foundation, Inc. Everyone is permitted to copy and distribute verbatim copies @@ -4507,7 +4512,7 @@ Appendix A Copying This Manual 0. PREAMBLE The purpose of this License is to make a manual, textbook, or other - functional and useful document "free" in the sense of freedom: to + functional and useful document “free” in the sense of freedom: to assure everyone the effective freedom to copy and redistribute it, with or without modifying it, either commercially or noncommercially. Secondarily, this License preserves for the @@ -4991,17 +4996,17 @@ Appendix C Index [index] * Menu: +* _POSIX2_VERSION: Standards conformance. + (line 23) * ! output format: Context. (line 6) * +- output format: Unified Format. (line 6) * < output format: Normal. (line 6) * <<<<<<< for marking conflicts: Marking Conflicts. (line 6) -* _POSIX2_VERSION: Standards conformance. - (line 23) -* ad capability: diff Options. (line 179) +* ad capability: diff Options. (line 182) * aligning tab stops: Tabs. (line 6) * alternate file names: Alternate Names. (line 6) -* always color option: diff Options. (line 43) -* auto color option: diff Options. (line 42) +* always color option: diff Options. (line 46) +* auto color option: diff Options. (line 44) * backup file names: Backup Names. (line 6) * backup file strategy: Backups. (line 6) * binary file diff: Binary. (line 6) @@ -5026,7 +5031,7 @@ Appendix C Index * context output format: Context. (line 6) * creating files: Creating and Removing. (line 6) -* de capability: diff Options. (line 184) +* de capability: diff Options. (line 187) * diagnostics from patch: patch Messages. (line 6) * diff invocation: Invoking diff. (line 6) * diff merging: Interactive Merging. (line 6) @@ -5057,7 +5062,7 @@ Appendix C Index * fuzz factor when patching: Inexact. (line 6) * gibibyte, definition of: cmp Options. (line 87) * gigabyte, definition of: cmp Options. (line 84) -* hd capability: diff Options. (line 189) +* hd capability: diff Options. (line 192) * headings: Sections. (line 6) * hunks: Hunks. (line 6) * hunks for diff3: diff3 Hunks. (line 6) @@ -5088,7 +5093,7 @@ Appendix C Index * LC_TIME: Detailed Context. (line 12) * line formats: Line Formats. (line 6) * line group formats: Line Group Formats. (line 6) -* ln capability: diff Options. (line 194) +* ln capability: diff Options. (line 197) * mebibyte, definition of: cmp Options. (line 82) * megabyte, definition of: cmp Options. (line 79) * merge commands: Merge Commands. (line 6) @@ -5101,7 +5106,7 @@ Appendix C Index (line 6) * multiple patches: Multiple Patches. (line 6) * newline treatment by diff: Incomplete Lines. (line 6) -* none color option: diff Options. (line 40) +* none color option: diff Options. (line 41) * normal output format: Normal. (line 6) * options for cmp: cmp Options. (line 6) * options for diff: diff Options. (line 6) @@ -5121,13 +5126,13 @@ Appendix C Index * patch options: patch Options. (line 6) * patch producer tips: Tips for Patch Producers. (line 6) +* PATCH_GET: Revision Control. (line 13) +* PATCH_VERSION_CONTROL: Backup Names. (line 21) * patch, common mistakes: Avoiding Common Mistakes. (line 6) * patches, shrinking: Generating Smaller Patches. (line 6) * patching directories: patch Directories. (line 6) -* PATCH_GET: Revision Control. (line 13) -* PATCH_VERSION_CONTROL: Backup Names. (line 21) * pebibyte, definition of: cmp Options. (line 97) * performance of diff: diff Performance. (line 6) * petabyte, definition of: cmp Options. (line 94) @@ -5171,7 +5176,7 @@ Appendix C Index * tab stop alignment: Tabs. (line 6) * tebibyte, definition of: cmp Options. (line 92) * terabyte, definition of: cmp Options. (line 89) -* terminal, using color iff: diff Options. (line 42) +* terminal, using color iff: diff Options. (line 44) * testing patch: Dry Runs. (line 6) * text versus binary diff: Binary. (line 6) * timestamp format, context diffs: Detailed Context. (line 12) @@ -5196,119 +5201,119 @@ Appendix C Index  Tag Table: -Node: Top1431 -Node: Overview3644 -Node: Comparison7398 -Node: Hunks10340 -Node: White Space11781 -Node: Blank Lines13620 -Node: Specified Lines14609 -Node: Case Folding15735 -Node: Brief16152 -Node: Binary17475 -Node: Output Formats21272 -Node: Sample diff Input21997 -Node: Context23496 -Node: Context Format25073 -Node: Example Context25865 -Node: Less Context27372 -Node: Detailed Context28561 -Node: Unified Format30756 -Node: Example Unified31565 -Node: Detailed Unified32603 -Node: Sections34243 -Node: Specified Headings35002 -Node: C Function Headings36551 -Node: Alternate Names37397 -Node: Side by Side38310 -Node: Side by Side Format40460 -Node: Example Side by Side41362 -Node: Normal42702 -Node: Example Normal43703 -Node: Detailed Normal44439 -Node: Scripts46178 -Node: ed Scripts46583 -Node: Example ed47789 -Node: Detailed ed48239 -Node: Forward ed49998 -Node: RCS50774 -Node: If-then-else51990 -Node: Line Group Formats53668 -Node: Line Formats59549 -Node: Example If-then-else62818 -Node: Detailed If-then-else63897 -Node: Incomplete Lines65782 -Node: Comparing Directories67418 -Node: Adjusting Output71619 -Node: Tabs72126 -Node: Trailing Blanks73740 -Node: Pagination74965 -Node: diff Performance75433 -Node: Comparing Three Files78522 -Node: Sample diff3 Input79400 -Node: Example diff3 Normal80348 -Node: Detailed diff3 Normal81408 -Node: diff3 Hunks83196 -Node: diff3 Merging84462 -Node: Which Changes86707 -Node: Marking Conflicts88107 -Node: Bypassing ed90562 -Node: Merging Incomplete Lines91905 -Node: Saving the Changed File92631 -Node: Interactive Merging93247 -Node: sdiff Option Summary93956 -Node: Merge Commands95159 -Node: Merging with patch96448 -Node: patch Input98815 -Node: Revision Control99497 -Node: Imperfect100667 -Node: Changed White Space101816 -Node: Reversed Patches102613 -Node: Inexact104077 -Node: Dry Runs107633 -Node: Creating and Removing108497 -Node: Patching Timestamps109546 -Node: Multiple Patches111733 -Node: patch Directories114394 -Node: Backups116018 -Node: Backup Names117082 -Ref: Backup Names-Footnote-1120037 -Node: Reject Names120164 -Node: patch Messages120753 -Node: More or Fewer Messages121813 -Node: patch and Keyboard Input122444 -Node: patch Quoting Style123473 -Node: patch and POSIX124619 -Node: patch and Tradition125458 -Node: Making Patches128879 -Node: Tips for Patch Producers129705 -Node: Tips for Patch Consumers130960 -Node: Avoiding Common Mistakes131597 -Node: Generating Smaller Patches134122 -Node: Invoking cmp135881 -Node: cmp Options137431 -Node: Invoking diff141075 -Node: diff Options142694 -Node: Invoking diff3152543 -Node: diff3 Options153181 -Node: Invoking patch156214 -Node: patch Options157422 -Node: Invoking sdiff162642 -Node: sdiff Options163784 -Node: Standards conformance166756 -Node: Projects168502 -Node: Shortcomings169214 -Node: Internationalization170314 -Node: Changing Structure171480 -Node: Special Files172583 -Node: Unusual File Names173694 -Node: Timestamp Order174332 -Node: Ignoring Changes174968 -Node: Speedups175737 -Node: Bugs176199 -Node: Copying This Manual177052 -Node: Translations202173 -Node: Index202545 +Node: Top1454 +Node: Overview3703 +Node: Comparison7577 +Node: Hunks10559 +Node: White Space12080 +Node: Blank Lines13995 +Node: Specified Lines15016 +Node: Case Folding16174 +Node: Brief16615 +Node: Binary17990 +Node: Output Formats21919 +Node: Sample diff Input22660 +Node: Context24187 +Node: Context Format25796 +Node: Example Context26604 +Node: Less Context28115 +Node: Detailed Context29308 +Node: Unified Format31549 +Node: Example Unified32382 +Node: Detailed Unified33424 +Node: Sections35091 +Node: Specified Headings35854 +Node: C Function Headings37455 +Node: Alternate Names38337 +Node: Side by Side39282 +Node: Side by Side Format41480 +Node: Example Side by Side42406 +Node: Normal43750 +Node: Example Normal44763 +Node: Detailed Normal45503 +Node: Scripts47266 +Node: ed Scripts47687 +Node: Example ed48981 +Node: Detailed ed49439 +Node: Forward ed51258 +Node: RCS52078 +Node: If-then-else53326 +Node: Line Group Formats55060 +Node: Line Formats61129 +Node: Example If-then-else64514 +Node: Detailed If-then-else65597 +Node: Incomplete Lines67550 +Node: Comparing Directories69254 +Node: Adjusting Output73639 +Node: Tabs74158 +Node: Trailing Blanks75824 +Node: Pagination77073 +Node: diff Performance77565 +Node: Comparing Three Files80750 +Node: Sample diff3 Input81648 +Node: Example diff3 Normal82608 +Node: Detailed diff3 Normal83676 +Node: diff3 Hunks85520 +Node: diff3 Merging86906 +Node: Which Changes89211 +Node: Marking Conflicts90687 +Node: Bypassing ed93254 +Node: Merging Incomplete Lines94633 +Node: Saving the Changed File95391 +Node: Interactive Merging96067 +Node: sdiff Option Summary96808 +Node: Merge Commands98103 +Node: Merging with patch99464 +Node: patch Input101907 +Node: Revision Control102645 +Node: Imperfect103859 +Node: Changed White Space105044 +Node: Reversed Patches105857 +Node: Inexact107381 +Node: Dry Runs111009 +Node: Creating and Removing111909 +Node: Patching Timestamps113002 +Node: Multiple Patches115293 +Node: patch Directories118052 +Node: Backups119756 +Node: Backup Names120860 +Ref: Backup Names-Footnote-1123971 +Node: Reject Names124106 +Node: patch Messages124723 +Node: More or Fewer Messages125803 +Node: patch and Keyboard Input126470 +Node: patch Quoting Style127551 +Node: patch and POSIX128749 +Node: patch and Tradition129614 +Node: Making Patches133211 +Node: Tips for Patch Producers134041 +Node: Tips for Patch Consumers135328 +Node: Avoiding Common Mistakes135977 +Node: Generating Smaller Patches138566 +Node: Invoking cmp140377 +Node: cmp Options141967 +Node: Invoking diff145871 +Node: diff Options147562 +Node: Invoking diff3157955 +Node: diff3 Options158617 +Node: Invoking patch161866 +Node: patch Options163138 +Node: Invoking sdiff168670 +Node: sdiff Options169876 +Node: Standards conformance173044 +Node: Projects174858 +Node: Shortcomings175578 +Node: Internationalization176698 +Node: Changing Structure177904 +Node: Special Files179051 +Node: Unusual File Names180194 +Node: Timestamp Order180856 +Node: Ignoring Changes181504 +Node: Speedups182289 +Node: Bugs182759 +Node: Copying This Manual183636 +Node: Translations208768 +Node: Index209140  End Tag Table diff --git a/doc/diffutils.texi b/doc/diffutils.texi index eed9bdb..e428646 100644 --- a/doc/diffutils.texi +++ b/doc/diffutils.texi @@ -14,7 +14,7 @@ and documents the GNU @command{diff}, @command{diff3}, differences between files and the GNU @command{patch} command for using their output to update files. -Copyright @copyright{} 1992--1994, 1998, 2001--2002, 2004, 2006, 2009--2021 +Copyright @copyright{} 1992--1994, 1998, 2001--2002, 2004, 2006, 2009--2023 Free Software Foundation, Inc. @quotation diff --git a/doc/fdl.texi b/doc/fdl.texi index eaf3da0..cffa98b 100644 --- a/doc/fdl.texi +++ b/doc/fdl.texi @@ -5,7 +5,8 @@ @c hence no sectioning command or @node. @display -Copyright @copyright{} 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc. +Copyright @copyright{} 2000--2002, 2007--2008, 2022--2023 Free Software +Foundation, Inc. @uref{https://fsf.org/} Everyone is permitted to copy and distribute verbatim copies diff --git a/doc/stamp-vti b/doc/stamp-vti index b0969cc..0fb45e9 100644 --- a/doc/stamp-vti +++ b/doc/stamp-vti @@ -1,4 +1,4 @@ -@set UPDATED 2 January 2021 -@set UPDATED-MONTH January 2021 -@set EDITION 3.8 -@set VERSION 3.8 +@set UPDATED 2 January 2023 +@set UPDATED-MONTH January 2023 +@set EDITION 3.10 +@set VERSION 3.10 diff --git a/doc/version.texi b/doc/version.texi index b0969cc..0fb45e9 100644 --- a/doc/version.texi +++ b/doc/version.texi @@ -1,4 +1,4 @@ -@set UPDATED 2 January 2021 -@set UPDATED-MONTH January 2021 -@set EDITION 3.8 -@set VERSION 3.8 +@set UPDATED 2 January 2023 +@set UPDATED-MONTH January 2023 +@set EDITION 3.10 +@set VERSION 3.10 diff --git a/exgettext b/exgettext index e077ca7..d651d90 100755 --- a/exgettext +++ b/exgettext @@ -1,7 +1,7 @@ #! /bin/sh # Wrapper around gettext for programs using the msgid convention. -# Copyright (C) 1998, 2001, 2004, 2009-2013, 2015-2021 Free Software +# Copyright (C) 1998, 2001, 2004, 2009-2013, 2015-2023 Free Software # Foundation, Inc. # Written by Paul Eggert . diff --git a/gnulib-tests/Makefile.in b/gnulib-tests/Makefile.in index aa9f987..865b1bd 100644 --- a/gnulib-tests/Makefile.in +++ b/gnulib-tests/Makefile.in @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.16d from Makefile.am. +# Makefile.in generated by automake 1.16i from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2021 Free Software Foundation, Inc. +# Copyright (C) 1994-2023 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -14,11 +14,11 @@ @SET_MAKE@ -# Copyright (C) 2002-2021 Free Software Foundation, Inc. +# Copyright (C) 2002-2023 Free Software Foundation, Inc. # # This file is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or +# the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This file is distributed in the hope that it will be useful, @@ -94,6 +94,8 @@ am__make_running_with_option = \ test $$has_opt = yes am__make_dryrun = (target_option=n; $(am__make_running_with_option)) am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +am__rm_f = rm -f $(am__rm_f_notfound) +am__rm_rf = rm -rf $(am__rm_f_notfound) pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ @@ -112,53 +114,56 @@ PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ -TESTS = test-accept$(EXEEXT) test-alloca-opt$(EXEEXT) \ - test-areadlink$(EXEEXT) test-argmatch$(EXEEXT) \ - test-arpa_inet$(EXEEXT) test-binary-io.sh test-bind$(EXEEXT) \ +TESTS = test-accept$(EXEEXT) test-alignasof$(EXEEXT) \ + test-alloca-opt$(EXEEXT) test-areadlink$(EXEEXT) \ + test-argmatch$(EXEEXT) test-arpa_inet$(EXEEXT) \ + test-assert$(EXEEXT) test-binary-io.sh test-bind$(EXEEXT) \ test-bitrotate$(EXEEXT) test-btowc1.sh test-btowc2.sh \ - test-c-ctype$(EXEEXT) test-c-stack.sh test-c-stack2.sh \ - test-c-strcase.sh test-calloc-gnu$(EXEEXT) \ - test-cloexec$(EXEEXT) test-close$(EXEEXT) \ - test-connect$(EXEEXT) test-ctype$(EXEEXT) \ - test-dirname$(EXEEXT) test-dup2$(EXEEXT) \ - test-dynarray$(EXEEXT) test-environ$(EXEEXT) \ - test-errno$(EXEEXT) test-exclude1.sh test-exclude2.sh \ - test-exclude3.sh test-exclude4.sh test-exclude5.sh \ - test-exclude6.sh test-exclude7.sh test-exclude8.sh \ - test-fcntl-h$(EXEEXT) test-fcntl$(EXEEXT) test-fdopen$(EXEEXT) \ - test-fgetc$(EXEEXT) test-filenamecat$(EXEEXT) \ - test-float$(EXEEXT) test-fnmatch-h$(EXEEXT) \ - test-fnmatch$(EXEEXT) test-fopen-gnu$(EXEEXT) \ - test-fopen$(EXEEXT) test-fputc$(EXEEXT) test-fread$(EXEEXT) \ - test-free$(EXEEXT) test-freopen$(EXEEXT) test-fstat$(EXEEXT) \ - test-ftruncate.sh test-fwrite$(EXEEXT) \ - test-getcwd-lgpl$(EXEEXT) test-getdtablesize$(EXEEXT) \ - test-getopt-gnu$(EXEEXT) test-getopt-posix$(EXEEXT) \ - test-getprogname$(EXEEXT) test-getrandom$(EXEEXT) \ - test-gettimeofday$(EXEEXT) test-hard-locale$(EXEEXT) \ + test-btowc3.sh test-c-ctype$(EXEEXT) test-c-stack.sh \ + test-c-stack2.sh test-c-strcase.sh test-c-strcasestr$(EXEEXT) \ + test-calloc-gnu$(EXEEXT) test-cloexec$(EXEEXT) \ + test-close$(EXEEXT) test-connect$(EXEEXT) test-ctype$(EXEEXT) \ + test-dirname$(EXEEXT) test-dup2$(EXEEXT) test-environ$(EXEEXT) \ + test-errno$(EXEEXT) test-error.sh test-exclude1.sh \ + test-exclude2.sh test-exclude3.sh test-exclude4.sh \ + test-exclude5.sh test-exclude6.sh test-exclude7.sh \ + test-exclude8.sh test-fcntl-h$(EXEEXT) test-fcntl$(EXEEXT) \ + test-fdopen$(EXEEXT) test-fgetc$(EXEEXT) \ + test-filenamecat$(EXEEXT) test-float$(EXEEXT) \ + test-fnmatch-h$(EXEEXT) test-fnmatch$(EXEEXT) \ + test-fopen-gnu$(EXEEXT) test-fopen$(EXEEXT) \ + test-fputc$(EXEEXT) test-fread$(EXEEXT) test-free$(EXEEXT) \ + test-freopen$(EXEEXT) test-fstat$(EXEEXT) test-ftruncate.sh \ + test-fwrite$(EXEEXT) test-getcwd-lgpl$(EXEEXT) \ + test-getdtablesize$(EXEEXT) test-getopt-gnu$(EXEEXT) \ + test-getopt-posix$(EXEEXT) test-getprogname$(EXEEXT) \ + test-getrandom$(EXEEXT) test-gettimeofday$(EXEEXT) \ + test-dynarray$(EXEEXT) test-hard-locale$(EXEEXT) \ test-hash$(EXEEXT) test-iconv-h$(EXEEXT) test-iconv$(EXEEXT) \ test-ignore-value$(EXEEXT) test-inet_pton$(EXEEXT) \ test-intprops$(EXEEXT) test-inttostr$(EXEEXT) \ test-inttypes$(EXEEXT) test-ioctl$(EXEEXT) \ test-isblank$(EXEEXT) test-iswblank$(EXEEXT) test-iswdigit.sh \ test-iswxdigit.sh test-langinfo$(EXEEXT) \ - test-limits-h$(EXEEXT) test-listen$(EXEEXT) \ - test-locale$(EXEEXT) test-localeconv$(EXEEXT) \ - test-lstat$(EXEEXT) test-malloc-gnu$(EXEEXT) \ - test-malloca$(EXEEXT) test-mbrtowc1.sh test-mbrtowc2.sh \ - test-mbrtowc3.sh test-mbrtowc4.sh test-mbrtowc5.sh \ - test-mbrtowc-w32-1.sh test-mbrtowc-w32-2.sh \ - test-mbrtowc-w32-3.sh test-mbrtowc-w32-4.sh \ - test-mbrtowc-w32-5.sh test-mbrtowc-w32-6.sh \ - test-mbrtowc-w32-7.sh test-mbscasecmp.sh test-mbsinit.sh \ - test-mbsrtowcs1.sh test-mbsrtowcs2.sh test-mbsrtowcs3.sh \ - test-mbsrtowcs4.sh test-mbsstr1$(EXEEXT) test-mbsstr2.sh \ - test-mbsstr3.sh test-memchr$(EXEEXT) test-mkdir$(EXEEXT) \ + test-largefile$(EXEEXT) test-limits-h$(EXEEXT) \ + test-listen$(EXEEXT) test-locale$(EXEEXT) \ + test-localeconv$(EXEEXT) test-lstat$(EXEEXT) \ + test-malloc-gnu$(EXEEXT) test-malloca$(EXEEXT) \ + test-mbrtowc1.sh test-mbrtowc2.sh test-mbrtowc3.sh \ + test-mbrtowc4.sh test-mbrtowc5.sh test-mbrtowc-w32-1.sh \ + test-mbrtowc-w32-2.sh test-mbrtowc-w32-3.sh \ + test-mbrtowc-w32-4.sh test-mbrtowc-w32-5.sh \ + test-mbrtowc-w32-6.sh test-mbrtowc-w32-7.sh test-mbscasecmp.sh \ + test-mbsinit.sh test-mbsrtowcs1.sh test-mbsrtowcs2.sh \ + test-mbsrtowcs3.sh test-mbsrtowcs4.sh test-mbsrtowcs5.sh \ + test-mbsstr1$(EXEEXT) test-mbsstr2.sh test-mbsstr3.sh \ + test-memchr$(EXEEXT) test-mkdir$(EXEEXT) \ test-nanosleep$(EXEEXT) test-netinet_in$(EXEEXT) \ - test-nl_langinfo.sh test-nl_langinfo-mt$(EXEEXT) \ - test-nstrftime$(EXEEXT) test-open$(EXEEXT) \ - test-pathmax$(EXEEXT) test-perror.sh test-perror2$(EXEEXT) \ - test-pipe$(EXEEXT) test-pthread$(EXEEXT) \ + test-nl_langinfo1.sh test-nl_langinfo2.sh \ + test-nl_langinfo-mt$(EXEEXT) test-nstrftime$(EXEEXT) \ + test-nullptr$(EXEEXT) test-open$(EXEEXT) test-pathmax$(EXEEXT) \ + test-perror.sh test-perror2$(EXEEXT) test-pipe$(EXEEXT) \ + test-pselect$(EXEEXT) test-pthread$(EXEEXT) \ test-pthread-thread$(EXEEXT) test-pthread_sigmask1$(EXEEXT) \ test-pthread_sigmask2$(EXEEXT) test-quotearg-simple$(EXEEXT) \ test-raise$(EXEEXT) test-rawmemchr$(EXEEXT) \ @@ -169,15 +174,14 @@ TESTS = test-accept$(EXEEXT) test-alloca-opt$(EXEEXT) \ test-setlocale_null$(EXEEXT) \ test-setlocale_null-mt-one$(EXEEXT) \ test-setlocale_null-mt-all$(EXEEXT) test-setsockopt$(EXEEXT) \ - test-sh-quote$(EXEEXT) test-sigaction$(EXEEXT) \ - test-signal-h$(EXEEXT) test-sigprocmask$(EXEEXT) \ - test-sigsegv-catch-segv1$(EXEEXT) \ + test-sh-quote$(EXEEXT) test-signal-h$(EXEEXT) \ + test-sigprocmask$(EXEEXT) test-sigsegv-catch-segv1$(EXEEXT) \ test-sigsegv-catch-segv2$(EXEEXT) \ test-sigsegv-catch-stackoverflow1$(EXEEXT) \ test-sigsegv-catch-stackoverflow2$(EXEEXT) test-sleep$(EXEEXT) \ test-snprintf$(EXEEXT) test-sockets$(EXEEXT) \ test-stat$(EXEEXT) test-stat-time$(EXEEXT) \ - test-stdalign$(EXEEXT) test-stdbool$(EXEEXT) \ + test-stdbool$(EXEEXT) test-stdckdint$(EXEEXT) \ test-stddef$(EXEEXT) test-stdint$(EXEEXT) test-stdio$(EXEEXT) \ test-stdlib$(EXEEXT) test-strerror$(EXEEXT) \ test-strerror_r$(EXEEXT) test-striconv$(EXEEXT) \ @@ -189,34 +193,35 @@ TESTS = test-accept$(EXEEXT) test-alloca-opt$(EXEEXT) \ test-sys_stat$(EXEEXT) test-sys_time$(EXEEXT) \ test-sys_types$(EXEEXT) test-sys_uio$(EXEEXT) \ test-sys_wait$(EXEEXT) test-init.sh test-thread_self$(EXEEXT) \ - test-thread_create$(EXEEXT) test-time$(EXEEXT) \ - test-timespec$(EXEEXT) test-unistd$(EXEEXT) \ + test-thread_create$(EXEEXT) test-time-h$(EXEEXT) \ + test-time$(EXEEXT) test-timespec$(EXEEXT) test-trim1.sh \ + test-trim2.sh test-trim3.sh test-unistd$(EXEEXT) \ test-u8-mbtoucr$(EXEEXT) test-u8-uctomb$(EXEEXT) \ test-uc_width$(EXEEXT) uniwidth/test-uc_width2.sh \ test-unsetenv$(EXEEXT) test-update-copyright.sh \ - test-vasnprintf$(EXEEXT) test-vasprintf$(EXEEXT) \ - test-vc-list-files-git.sh test-vc-list-files-cvs.sh \ - test-verify$(EXEEXT) test-verify.sh test-version-etc.sh \ - test-wchar$(EXEEXT) test-wcrtomb.sh test-wcrtomb-w32-1.sh \ - test-wcrtomb-w32-2.sh test-wcrtomb-w32-3.sh \ - test-wcrtomb-w32-4.sh test-wcrtomb-w32-5.sh \ - test-wcrtomb-w32-6.sh test-wcrtomb-w32-7.sh \ - test-wctype-h$(EXEEXT) test-wcwidth$(EXEEXT) \ - test-xalloc-die.sh test-xstdopen.sh test-xstrtoimax.sh \ - test-xstrtol.sh test-xvasprintf$(EXEEXT) + test-vasnprintf$(EXEEXT) test-vc-list-files-git.sh \ + test-vc-list-files-cvs.sh test-verify$(EXEEXT) test-verify.sh \ + test-version-etc.sh test-wchar$(EXEEXT) test-wcrtomb.sh \ + test-wcrtomb-w32-1.sh test-wcrtomb-w32-2.sh \ + test-wcrtomb-w32-3.sh test-wcrtomb-w32-4.sh \ + test-wcrtomb-w32-5.sh test-wcrtomb-w32-6.sh \ + test-wcrtomb-w32-7.sh test-wctype-h$(EXEEXT) \ + test-wcwidth$(EXEEXT) test-xalloc-die.sh test-xstdopen.sh \ + test-xstrtoimax.sh test-xstrtol.sh test-year2038$(EXEEXT) XFAIL_TESTS = noinst_PROGRAMS = current-locale$(EXEEXT) test-localcharset$(EXEEXT) -check_PROGRAMS = test-accept$(EXEEXT) test-alloca-opt$(EXEEXT) \ - test-areadlink$(EXEEXT) test-argmatch$(EXEEXT) \ - test-arpa_inet$(EXEEXT) test-binary-io$(EXEEXT) \ +check_PROGRAMS = test-accept$(EXEEXT) test-alignasof$(EXEEXT) \ + test-alloca-opt$(EXEEXT) test-areadlink$(EXEEXT) \ + test-argmatch$(EXEEXT) test-arpa_inet$(EXEEXT) \ + test-assert$(EXEEXT) test-binary-io$(EXEEXT) \ test-bind$(EXEEXT) test-bitrotate$(EXEEXT) test-btowc$(EXEEXT) \ test-c-ctype$(EXEEXT) test-c-stack$(EXEEXT) \ test-c-strcasecmp$(EXEEXT) test-c-strncasecmp$(EXEEXT) \ - test-calloc-gnu$(EXEEXT) test-cloexec$(EXEEXT) \ - test-close$(EXEEXT) test-connect$(EXEEXT) test-ctype$(EXEEXT) \ - test-dirname$(EXEEXT) test-dup2$(EXEEXT) \ - test-dynarray$(EXEEXT) test-environ$(EXEEXT) \ - test-errno$(EXEEXT) test-exclude$(EXEEXT) \ + test-c-strcasestr$(EXEEXT) test-calloc-gnu$(EXEEXT) \ + test-cloexec$(EXEEXT) test-close$(EXEEXT) \ + test-connect$(EXEEXT) test-ctype$(EXEEXT) \ + test-dirname$(EXEEXT) test-dup2$(EXEEXT) test-environ$(EXEEXT) \ + test-errno$(EXEEXT) test-error$(EXEEXT) test-exclude$(EXEEXT) \ test-fcntl-h$(EXEEXT) test-fcntl$(EXEEXT) test-fdopen$(EXEEXT) \ test-fgetc$(EXEEXT) test-filenamecat$(EXEEXT) \ test-float$(EXEEXT) test-fnmatch-h$(EXEEXT) \ @@ -227,27 +232,29 @@ check_PROGRAMS = test-accept$(EXEEXT) test-alloca-opt$(EXEEXT) \ test-getcwd-lgpl$(EXEEXT) test-getdtablesize$(EXEEXT) \ test-getopt-gnu$(EXEEXT) test-getopt-posix$(EXEEXT) \ test-getprogname$(EXEEXT) test-getrandom$(EXEEXT) \ - test-gettimeofday$(EXEEXT) test-hard-locale$(EXEEXT) \ - test-hash$(EXEEXT) test-iconv-h$(EXEEXT) test-iconv$(EXEEXT) \ + test-gettimeofday$(EXEEXT) test-dynarray$(EXEEXT) \ + test-hard-locale$(EXEEXT) test-hash$(EXEEXT) \ + test-iconv-h$(EXEEXT) test-iconv$(EXEEXT) \ test-ignore-value$(EXEEXT) test-inet_pton$(EXEEXT) \ test-intprops$(EXEEXT) test-inttostr$(EXEEXT) \ test-inttypes$(EXEEXT) test-ioctl$(EXEEXT) \ test-isblank$(EXEEXT) test-iswblank$(EXEEXT) \ test-iswdigit$(EXEEXT) test-iswxdigit$(EXEEXT) \ - test-langinfo$(EXEEXT) test-limits-h$(EXEEXT) \ - test-listen$(EXEEXT) test-locale$(EXEEXT) \ - test-localeconv$(EXEEXT) test-lstat$(EXEEXT) \ - test-malloc-gnu$(EXEEXT) test-malloca$(EXEEXT) \ - test-mbrtowc$(EXEEXT) test-mbrtowc-w32$(EXEEXT) \ - test-mbscasecmp$(EXEEXT) test-mbsinit$(EXEEXT) \ - test-mbsrtowcs$(EXEEXT) test-mbsstr1$(EXEEXT) \ - test-mbsstr2$(EXEEXT) test-mbsstr3$(EXEEXT) \ - test-memchr$(EXEEXT) test-mkdir$(EXEEXT) \ + test-langinfo$(EXEEXT) test-largefile$(EXEEXT) \ + test-limits-h$(EXEEXT) test-listen$(EXEEXT) \ + test-locale$(EXEEXT) test-localeconv$(EXEEXT) \ + test-lstat$(EXEEXT) test-malloc-gnu$(EXEEXT) \ + test-malloca$(EXEEXT) test-mbrtowc$(EXEEXT) \ + test-mbrtowc-w32$(EXEEXT) test-mbscasecmp$(EXEEXT) \ + test-mbsinit$(EXEEXT) test-mbsrtowcs$(EXEEXT) \ + test-mbsstr1$(EXEEXT) test-mbsstr2$(EXEEXT) \ + test-mbsstr3$(EXEEXT) test-memchr$(EXEEXT) test-mkdir$(EXEEXT) \ test-nanosleep$(EXEEXT) test-netinet_in$(EXEEXT) \ - test-nl_langinfo$(EXEEXT) test-nl_langinfo-mt$(EXEEXT) \ - test-nstrftime$(EXEEXT) test-open$(EXEEXT) \ - test-pathmax$(EXEEXT) test-perror$(EXEEXT) \ - test-perror2$(EXEEXT) test-pipe$(EXEEXT) test-pthread$(EXEEXT) \ + test-nl_langinfo1$(EXEEXT) test-nl_langinfo2$(EXEEXT) \ + test-nl_langinfo-mt$(EXEEXT) test-nstrftime$(EXEEXT) \ + test-nullptr$(EXEEXT) test-open$(EXEEXT) test-pathmax$(EXEEXT) \ + test-perror$(EXEEXT) test-perror2$(EXEEXT) test-pipe$(EXEEXT) \ + test-pselect$(EXEEXT) test-pthread$(EXEEXT) \ test-pthread-thread$(EXEEXT) test-pthread_sigmask1$(EXEEXT) \ test-pthread_sigmask2$(EXEEXT) test-quotearg-simple$(EXEEXT) \ test-raise$(EXEEXT) test-rawmemchr$(EXEEXT) \ @@ -258,15 +265,14 @@ check_PROGRAMS = test-accept$(EXEEXT) test-alloca-opt$(EXEEXT) \ test-setenv$(EXEEXT) test-setlocale_null$(EXEEXT) \ test-setlocale_null-mt-one$(EXEEXT) \ test-setlocale_null-mt-all$(EXEEXT) test-setsockopt$(EXEEXT) \ - test-sh-quote$(EXEEXT) test-sigaction$(EXEEXT) \ - test-signal-h$(EXEEXT) test-sigprocmask$(EXEEXT) \ - test-sigsegv-catch-segv1$(EXEEXT) \ + test-sh-quote$(EXEEXT) test-signal-h$(EXEEXT) \ + test-sigprocmask$(EXEEXT) test-sigsegv-catch-segv1$(EXEEXT) \ test-sigsegv-catch-segv2$(EXEEXT) \ test-sigsegv-catch-stackoverflow1$(EXEEXT) \ test-sigsegv-catch-stackoverflow2$(EXEEXT) test-sleep$(EXEEXT) \ test-snprintf$(EXEEXT) test-sockets$(EXEEXT) \ test-stat$(EXEEXT) test-stat-time$(EXEEXT) \ - test-stdalign$(EXEEXT) test-stdbool$(EXEEXT) \ + test-stdbool$(EXEEXT) test-stdckdint$(EXEEXT) \ test-stddef$(EXEEXT) test-stdint$(EXEEXT) test-stdio$(EXEEXT) \ test-stdlib$(EXEEXT) test-strerror$(EXEEXT) \ test-strerror_r$(EXEEXT) test-striconv$(EXEEXT) \ @@ -278,38 +284,70 @@ check_PROGRAMS = test-accept$(EXEEXT) test-alloca-opt$(EXEEXT) \ test-sys_stat$(EXEEXT) test-sys_time$(EXEEXT) \ test-sys_types$(EXEEXT) test-sys_uio$(EXEEXT) \ test-sys_wait$(EXEEXT) test-thread_self$(EXEEXT) \ - test-thread_create$(EXEEXT) test-time$(EXEEXT) \ - test-timespec$(EXEEXT) test-unistd$(EXEEXT) \ - test-u8-mbtoucr$(EXEEXT) test-u8-uctomb$(EXEEXT) \ - test-uc_width$(EXEEXT) test-uc_width2$(EXEEXT) \ - test-unsetenv$(EXEEXT) test-vasnprintf$(EXEEXT) \ - test-vasprintf$(EXEEXT) test-verify$(EXEEXT) \ + test-thread_create$(EXEEXT) test-time-h$(EXEEXT) \ + test-time$(EXEEXT) test-timespec$(EXEEXT) test-trim$(EXEEXT) \ + test-unistd$(EXEEXT) test-u8-mbtoucr$(EXEEXT) \ + test-u8-uctomb$(EXEEXT) test-uc_width$(EXEEXT) \ + test-uc_width2$(EXEEXT) test-unsetenv$(EXEEXT) \ + test-vasnprintf$(EXEEXT) test-verify$(EXEEXT) \ test-version-etc$(EXEEXT) test-wchar$(EXEEXT) \ test-wcrtomb$(EXEEXT) test-wcrtomb-w32$(EXEEXT) \ test-wctype-h$(EXEEXT) test-wcwidth$(EXEEXT) \ test-xalloc-die$(EXEEXT) test-xstdopen$(EXEEXT) \ test-xstrtoimax$(EXEEXT) test-xstrtol$(EXEEXT) \ - test-xstrtoul$(EXEEXT) test-xvasprintf$(EXEEXT) + test-xstrtoul$(EXEEXT) test-year2038$(EXEEXT) EXTRA_PROGRAMS = test-verify-try$(EXEEXT) +@GL_COND_OBJ_ACCEPT_TRUE@am__append_1 = accept.c +@GL_COND_OBJ_ATOLL_TRUE@am__append_2 = atoll.c +@GL_COND_OBJ_BIND_TRUE@am__append_3 = bind.c +@GL_COND_OBJ_CONNECT_TRUE@am__append_4 = connect.c +@GL_COND_OBJ_FDOPEN_TRUE@am__append_5 = fdopen.c +@GL_COND_OBJ_FLOAT_TRUE@am__append_6 = float.c +@GL_COND_OBJ_ITOLD_TRUE@am__append_7 = itold.c +@GL_COND_OBJ_FTRUNCATE_TRUE@am__append_8 = ftruncate.c +@GL_COND_OBJ_GETCWD_LGPL_TRUE@am__append_9 = getcwd-lgpl.c +@GL_COND_OBJ_INET_PTON_TRUE@am__append_10 = inet_pton.c +@GL_COND_OBJ_IOCTL_TRUE@am__append_11 = ioctl.c +@GL_COND_OBJ_LISTEN_TRUE@am__append_12 = listen.c +@GL_COND_OBJ_NANOSLEEP_TRUE@am__append_13 = nanosleep.c +@GL_COND_OBJ_PERROR_TRUE@am__append_14 = perror.c +@GL_COND_OBJ_PIPE_TRUE@am__append_15 = pipe.c +@GL_COND_OBJ_PSELECT_TRUE@am__append_16 = pselect.c +@GL_COND_OBJ_PTHREAD_THREAD_TRUE@am__append_17 = pthread-thread.c +@GL_COND_OBJ_PTHREAD_SIGMASK_TRUE@am__append_18 = pthread_sigmask.c +@GL_COND_OBJ_PUTENV_TRUE@am__append_19 = putenv.c +@GL_COND_OBJ_SELECT_TRUE@am__append_20 = select.c +@GL_COND_OBJ_SETSOCKOPT_TRUE@am__append_21 = setsockopt.c +@GL_COND_OBJ_SLEEP_TRUE@am__append_22 = sleep.c +@GL_COND_OBJ_SOCKET_TRUE@am__append_23 = socket.c +@GL_COND_OBJ_SYMLINK_TRUE@am__append_24 = symlink.c +@GL_COND_OBJ_TIME_TRUE@am__append_25 = time.c +@GL_COND_OBJ_WCTOB_TRUE@am__append_26 = wctob.c +@GL_COND_OBJ_WCTOMB_TRUE@am__append_27 = wctomb.c +@GL_COND_OBJ_WINDOWS_THREAD_TRUE@am__append_28 = windows-thread.c +@GL_COND_OBJ_WINDOWS_TLS_TRUE@am__append_29 = windows-tls.c subdir = gnulib-tests ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/__inline.m4 \ $(top_srcdir)/m4/absolute-header.m4 $(top_srcdir)/m4/alloca.m4 \ $(top_srcdir)/m4/arpa_inet_h.m4 \ - $(top_srcdir)/m4/asm-underscore.m4 $(top_srcdir)/m4/atoll.m4 \ + $(top_srcdir)/m4/asm-underscore.m4 \ + $(top_srcdir)/m4/assert_h.m4 $(top_srcdir)/m4/atoll.m4 \ $(top_srcdir)/m4/btowc.m4 $(top_srcdir)/m4/builtin-expect.m4 \ - $(top_srcdir)/m4/c-stack.m4 $(top_srcdir)/m4/calloc.m4 \ - $(top_srcdir)/m4/clock_time.m4 $(top_srcdir)/m4/close.m4 \ - $(top_srcdir)/m4/codeset.m4 $(top_srcdir)/m4/config-h.m4 \ - $(top_srcdir)/m4/ctype_h.m4 \ + $(top_srcdir)/m4/c-bool.m4 $(top_srcdir)/m4/c-stack.m4 \ + $(top_srcdir)/m4/calloc.m4 $(top_srcdir)/m4/clock_time.m4 \ + $(top_srcdir)/m4/close.m4 $(top_srcdir)/m4/codeset.m4 \ + $(top_srcdir)/m4/config-h.m4 $(top_srcdir)/m4/ctype_h.m4 \ $(top_srcdir)/m4/double-slash-root.m4 $(top_srcdir)/m4/dup2.m4 \ $(top_srcdir)/m4/eealloc.m4 $(top_srcdir)/m4/environ.m4 \ $(top_srcdir)/m4/errno_h.m4 $(top_srcdir)/m4/error.m4 \ - $(top_srcdir)/m4/exponentd.m4 $(top_srcdir)/m4/extensions.m4 \ - $(top_srcdir)/m4/extern-inline.m4 $(top_srcdir)/m4/fcntl-o.m4 \ - $(top_srcdir)/m4/fcntl.m4 $(top_srcdir)/m4/fcntl_h.m4 \ - $(top_srcdir)/m4/fdopen.m4 $(top_srcdir)/m4/filenamecat.m4 \ + $(top_srcdir)/m4/error_h.m4 $(top_srcdir)/m4/exponentd.m4 \ + $(top_srcdir)/m4/extensions.m4 \ + $(top_srcdir)/m4/extern-inline.m4 $(top_srcdir)/m4/fclose.m4 \ + $(top_srcdir)/m4/fcntl-o.m4 $(top_srcdir)/m4/fcntl.m4 \ + $(top_srcdir)/m4/fcntl_h.m4 $(top_srcdir)/m4/fdopen.m4 \ + $(top_srcdir)/m4/fflush.m4 $(top_srcdir)/m4/filenamecat.m4 \ $(top_srcdir)/m4/flexmember.m4 $(top_srcdir)/m4/float_h.m4 \ $(top_srcdir)/m4/fnmatch.m4 $(top_srcdir)/m4/fnmatch_h.m4 \ $(top_srcdir)/m4/fopen.m4 $(top_srcdir)/m4/fpieee.m4 \ @@ -325,15 +363,16 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/host-cpu-c-abi.m4 $(top_srcdir)/m4/iconv.m4 \ $(top_srcdir)/m4/iconv_h.m4 $(top_srcdir)/m4/iconv_open.m4 \ $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inet_pton.m4 \ - $(top_srcdir)/m4/inline.m4 $(top_srcdir)/m4/intlmacosx.m4 \ - $(top_srcdir)/m4/intmax_t.m4 $(top_srcdir)/m4/inttostr.m4 \ - $(top_srcdir)/m4/inttypes.m4 $(top_srcdir)/m4/inttypes_h.m4 \ - $(top_srcdir)/m4/ioctl.m4 $(top_srcdir)/m4/isblank.m4 \ - $(top_srcdir)/m4/iswblank.m4 $(top_srcdir)/m4/iswdigit.m4 \ - $(top_srcdir)/m4/iswxdigit.m4 $(top_srcdir)/m4/langinfo_h.m4 \ - $(top_srcdir)/m4/largefile.m4 $(top_srcdir)/m4/lib-ld.m4 \ - $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ - $(top_srcdir)/m4/libsigsegv.m4 \ + $(top_srcdir)/m4/inline.m4 \ + $(top_srcdir)/m4/intl-thread-locale.m4 \ + $(top_srcdir)/m4/intlmacosx.m4 $(top_srcdir)/m4/intmax_t.m4 \ + $(top_srcdir)/m4/inttostr.m4 $(top_srcdir)/m4/inttypes.m4 \ + $(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/ioctl.m4 \ + $(top_srcdir)/m4/isblank.m4 $(top_srcdir)/m4/iswblank.m4 \ + $(top_srcdir)/m4/iswdigit.m4 $(top_srcdir)/m4/iswxdigit.m4 \ + $(top_srcdir)/m4/langinfo_h.m4 $(top_srcdir)/m4/largefile.m4 \ + $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ + $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libsigsegv.m4 \ $(top_srcdir)/m4/libunistring-base.m4 \ $(top_srcdir)/m4/limits-h.m4 $(top_srcdir)/m4/localcharset.m4 \ $(top_srcdir)/m4/locale-fr.m4 $(top_srcdir)/m4/locale-ja.m4 \ @@ -355,11 +394,13 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/netinet_in_h.m4 \ $(top_srcdir)/m4/nl_langinfo.m4 $(top_srcdir)/m4/nls.m4 \ $(top_srcdir)/m4/nocrash.m4 $(top_srcdir)/m4/nstrftime.m4 \ - $(top_srcdir)/m4/off_t.m4 $(top_srcdir)/m4/open-cloexec.m4 \ + $(top_srcdir)/m4/nullptr.m4 $(top_srcdir)/m4/off_t.m4 \ + $(top_srcdir)/m4/open-cloexec.m4 \ $(top_srcdir)/m4/open-slash.m4 $(top_srcdir)/m4/open.m4 \ - $(top_srcdir)/m4/pathmax.m4 $(top_srcdir)/m4/perror.m4 \ - $(top_srcdir)/m4/pipe.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/printf.m4 $(top_srcdir)/m4/progtest.m4 \ + $(top_srcdir)/m4/pathmax.m4 $(top_srcdir)/m4/perl.m4 \ + $(top_srcdir)/m4/perror.m4 $(top_srcdir)/m4/pipe.m4 \ + $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/printf.m4 \ + $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/pselect.m4 \ $(top_srcdir)/m4/pthread-thread.m4 \ $(top_srcdir)/m4/pthread_h.m4 \ $(top_srcdir)/m4/pthread_rwlock_rdlock.m4 \ @@ -370,9 +411,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/reallocarray.m4 $(top_srcdir)/m4/regex.m4 \ $(top_srcdir)/m4/sched_h.m4 $(top_srcdir)/m4/select.m4 \ $(top_srcdir)/m4/setenv.m4 $(top_srcdir)/m4/setlocale_null.m4 \ - $(top_srcdir)/m4/sigaction.m4 $(top_srcdir)/m4/sigaltstack.m4 \ - $(top_srcdir)/m4/signal_h.m4 \ - $(top_srcdir)/m4/signalblocking.m4 \ + $(top_srcdir)/m4/sigaltstack.m4 $(top_srcdir)/m4/signal_h.m4 \ + $(top_srcdir)/m4/signalblocking.m4 $(top_srcdir)/m4/sigsegv.m4 \ $(top_srcdir)/m4/size_max.m4 $(top_srcdir)/m4/sleep.m4 \ $(top_srcdir)/m4/snprintf.m4 $(top_srcdir)/m4/socketlib.m4 \ $(top_srcdir)/m4/sockets.m4 $(top_srcdir)/m4/socklen.m4 \ @@ -380,9 +420,9 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/stack-direction.m4 \ $(top_srcdir)/m4/stat-time.m4 $(top_srcdir)/m4/stat.m4 \ $(top_srcdir)/m4/stdalign.m4 $(top_srcdir)/m4/stdarg.m4 \ - $(top_srcdir)/m4/stdbool.m4 $(top_srcdir)/m4/stddef_h.m4 \ - $(top_srcdir)/m4/stdint.m4 $(top_srcdir)/m4/stdint_h.m4 \ - $(top_srcdir)/m4/stdio_h.m4 $(top_srcdir)/m4/stdlib_h.m4 \ + $(top_srcdir)/m4/stddef_h.m4 $(top_srcdir)/m4/stdint.m4 \ + $(top_srcdir)/m4/stdint_h.m4 $(top_srcdir)/m4/stdio_h.m4 \ + $(top_srcdir)/m4/stdlib_h.m4 $(top_srcdir)/m4/stpcpy.m4 \ $(top_srcdir)/m4/strcase.m4 $(top_srcdir)/m4/strerror.m4 \ $(top_srcdir)/m4/strerror_r.m4 $(top_srcdir)/m4/string_h.m4 \ $(top_srcdir)/m4/strings_h.m4 $(top_srcdir)/m4/strnlen.m4 \ @@ -396,12 +436,12 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/sys_types_h.m4 $(top_srcdir)/m4/sys_uio_h.m4 \ $(top_srcdir)/m4/sys_wait_h.m4 $(top_srcdir)/m4/tempname.m4 \ $(top_srcdir)/m4/thread.m4 $(top_srcdir)/m4/threadlib.m4 \ - $(top_srcdir)/m4/time_h.m4 $(top_srcdir)/m4/time_r.m4 \ - $(top_srcdir)/m4/time_rz.m4 $(top_srcdir)/m4/timegm.m4 \ - $(top_srcdir)/m4/timespec.m4 $(top_srcdir)/m4/tm_gmtoff.m4 \ - $(top_srcdir)/m4/tzset.m4 $(top_srcdir)/m4/unistd_h.m4 \ - $(top_srcdir)/m4/unlocked-io.m4 $(top_srcdir)/m4/vasnprintf.m4 \ - $(top_srcdir)/m4/vasprintf.m4 $(top_srcdir)/m4/version-etc.m4 \ + $(top_srcdir)/m4/time.m4 $(top_srcdir)/m4/time_h.m4 \ + $(top_srcdir)/m4/time_r.m4 $(top_srcdir)/m4/time_rz.m4 \ + $(top_srcdir)/m4/timegm.m4 $(top_srcdir)/m4/timespec.m4 \ + $(top_srcdir)/m4/tm_gmtoff.m4 $(top_srcdir)/m4/tzset.m4 \ + $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/unlocked-io.m4 \ + $(top_srcdir)/m4/vasnprintf.m4 $(top_srcdir)/m4/version-etc.m4 \ $(top_srcdir)/m4/visibility.m4 $(top_srcdir)/m4/warn-on-use.m4 \ $(top_srcdir)/m4/warnings.m4 $(top_srcdir)/m4/wchar_h.m4 \ $(top_srcdir)/m4/wchar_t.m4 $(top_srcdir)/m4/wcrtomb.m4 \ @@ -410,7 +450,6 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/wint_t.m4 $(top_srcdir)/m4/wmemchr.m4 \ $(top_srcdir)/m4/wmempcpy.m4 $(top_srcdir)/m4/xalloc.m4 \ $(top_srcdir)/m4/xsize.m4 $(top_srcdir)/m4/xstrtol.m4 \ - $(top_srcdir)/m4/xvasprintf.m4 $(top_srcdir)/m4/year2038.m4 \ $(top_srcdir)/m4/zzgnulib.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) @@ -427,12 +466,64 @@ am__v_AR_ = $(am__v_AR_@AM_DEFAULT_V@) am__v_AR_0 = @echo " AR " $@; am__v_AR_1 = libtests_a_AR = $(AR) $(ARFLAGS) +libtests_a_RANLIB = $(RANLIB) am__DEPENDENCIES_1 = +am__libtests_a_SOURCES_DIST = accept.c atoll.c bind.c c-strcasestr.h \ + c-strcasestr.c connect.c dtotimespec.c fdopen.c float.c \ + itold.c ftruncate.c getcwd-lgpl.c hash-pjw.h hash-pjw.c \ + inet_pton.c ioctl.c listen.c nanosleep.c perror.c pipe.c \ + pselect.c pthread-thread.c pthread_sigmask.c putenv.c select.c \ + setsockopt.c size_max.h sleep.c socket.c sockets.h sockets.c \ + symlink.c sys_socket.c glthread/thread.h glthread/thread.c \ + time.c timespec-add.c timespec-sub.c wctob.c wctomb.c \ + windows-thread.c windows-tls.c xsize.h xsize.c xstrtol-error.c +@GL_COND_OBJ_ACCEPT_TRUE@am__objects_1 = accept.$(OBJEXT) +@GL_COND_OBJ_ATOLL_TRUE@am__objects_2 = atoll.$(OBJEXT) +@GL_COND_OBJ_BIND_TRUE@am__objects_3 = bind.$(OBJEXT) +@GL_COND_OBJ_CONNECT_TRUE@am__objects_4 = connect.$(OBJEXT) +@GL_COND_OBJ_FDOPEN_TRUE@am__objects_5 = fdopen.$(OBJEXT) +@GL_COND_OBJ_FLOAT_TRUE@am__objects_6 = float.$(OBJEXT) +@GL_COND_OBJ_ITOLD_TRUE@am__objects_7 = itold.$(OBJEXT) +@GL_COND_OBJ_FTRUNCATE_TRUE@am__objects_8 = ftruncate.$(OBJEXT) +@GL_COND_OBJ_GETCWD_LGPL_TRUE@am__objects_9 = getcwd-lgpl.$(OBJEXT) +@GL_COND_OBJ_INET_PTON_TRUE@am__objects_10 = inet_pton.$(OBJEXT) +@GL_COND_OBJ_IOCTL_TRUE@am__objects_11 = ioctl.$(OBJEXT) +@GL_COND_OBJ_LISTEN_TRUE@am__objects_12 = listen.$(OBJEXT) +@GL_COND_OBJ_NANOSLEEP_TRUE@am__objects_13 = nanosleep.$(OBJEXT) +@GL_COND_OBJ_PERROR_TRUE@am__objects_14 = perror.$(OBJEXT) +@GL_COND_OBJ_PIPE_TRUE@am__objects_15 = pipe.$(OBJEXT) +@GL_COND_OBJ_PSELECT_TRUE@am__objects_16 = pselect.$(OBJEXT) +@GL_COND_OBJ_PTHREAD_THREAD_TRUE@am__objects_17 = \ +@GL_COND_OBJ_PTHREAD_THREAD_TRUE@ pthread-thread.$(OBJEXT) +@GL_COND_OBJ_PTHREAD_SIGMASK_TRUE@am__objects_18 = \ +@GL_COND_OBJ_PTHREAD_SIGMASK_TRUE@ pthread_sigmask.$(OBJEXT) +@GL_COND_OBJ_PUTENV_TRUE@am__objects_19 = putenv.$(OBJEXT) +@GL_COND_OBJ_SELECT_TRUE@am__objects_20 = select.$(OBJEXT) +@GL_COND_OBJ_SETSOCKOPT_TRUE@am__objects_21 = setsockopt.$(OBJEXT) +@GL_COND_OBJ_SLEEP_TRUE@am__objects_22 = sleep.$(OBJEXT) +@GL_COND_OBJ_SOCKET_TRUE@am__objects_23 = socket.$(OBJEXT) +@GL_COND_OBJ_SYMLINK_TRUE@am__objects_24 = symlink.$(OBJEXT) am__dirstamp = $(am__leading_dot)dirstamp -am_libtests_a_OBJECTS = dtotimespec.$(OBJEXT) hash-pjw.$(OBJEXT) \ - sig-handler.$(OBJEXT) sockets.$(OBJEXT) sys_socket.$(OBJEXT) \ - glthread/thread.$(OBJEXT) timespec-add.$(OBJEXT) \ - timespec-sub.$(OBJEXT) xstrtol-error.$(OBJEXT) +@GL_COND_OBJ_TIME_TRUE@am__objects_25 = time.$(OBJEXT) +@GL_COND_OBJ_WCTOB_TRUE@am__objects_26 = wctob.$(OBJEXT) +@GL_COND_OBJ_WCTOMB_TRUE@am__objects_27 = wctomb.$(OBJEXT) +@GL_COND_OBJ_WINDOWS_THREAD_TRUE@am__objects_28 = \ +@GL_COND_OBJ_WINDOWS_THREAD_TRUE@ windows-thread.$(OBJEXT) +@GL_COND_OBJ_WINDOWS_TLS_TRUE@am__objects_29 = windows-tls.$(OBJEXT) +am_libtests_a_OBJECTS = $(am__objects_1) $(am__objects_2) \ + $(am__objects_3) c-strcasestr.$(OBJEXT) $(am__objects_4) \ + dtotimespec.$(OBJEXT) $(am__objects_5) $(am__objects_6) \ + $(am__objects_7) $(am__objects_8) $(am__objects_9) \ + hash-pjw.$(OBJEXT) $(am__objects_10) $(am__objects_11) \ + $(am__objects_12) $(am__objects_13) $(am__objects_14) \ + $(am__objects_15) $(am__objects_16) $(am__objects_17) \ + $(am__objects_18) $(am__objects_19) $(am__objects_20) \ + $(am__objects_21) $(am__objects_22) $(am__objects_23) \ + sockets.$(OBJEXT) $(am__objects_24) sys_socket.$(OBJEXT) \ + glthread/thread.$(OBJEXT) $(am__objects_25) \ + timespec-add.$(OBJEXT) timespec-sub.$(OBJEXT) \ + $(am__objects_26) $(am__objects_27) $(am__objects_28) \ + $(am__objects_29) xsize.$(OBJEXT) xstrtol-error.$(OBJEXT) libtests_a_OBJECTS = $(am_libtests_a_OBJECTS) am_current_locale_OBJECTS = locale.$(OBJEXT) current_locale_OBJECTS = $(am_current_locale_OBJECTS) @@ -445,6 +536,12 @@ test_accept_OBJECTS = test-accept.$(OBJEXT) am__DEPENDENCIES_2 = libtests.a ../lib/libdiffutils.a libtests.a \ ../lib/libdiffutils.a libtests.a $(am__DEPENDENCIES_1) test_accept_DEPENDENCIES = $(am__DEPENDENCIES_2) +test_alignasof_SOURCES = test-alignasof.c +test_alignasof_OBJECTS = test-alignasof.$(OBJEXT) +test_alignasof_LDADD = $(LDADD) +test_alignasof_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \ + libtests.a ../lib/libdiffutils.a libtests.a \ + $(am__DEPENDENCIES_1) test_alloca_opt_SOURCES = test-alloca-opt.c test_alloca_opt_OBJECTS = test-alloca-opt.$(OBJEXT) test_alloca_opt_LDADD = $(LDADD) @@ -467,6 +564,11 @@ test_arpa_inet_LDADD = $(LDADD) test_arpa_inet_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \ libtests.a ../lib/libdiffutils.a libtests.a \ $(am__DEPENDENCIES_1) +test_assert_SOURCES = test-assert.c +test_assert_OBJECTS = test-assert.$(OBJEXT) +test_assert_LDADD = $(LDADD) +test_assert_DEPENDENCIES = libtests.a ../lib/libdiffutils.a libtests.a \ + ../lib/libdiffutils.a libtests.a $(am__DEPENDENCIES_1) test_binary_io_SOURCES = test-binary-io.c test_binary_io_OBJECTS = test-binary-io.$(OBJEXT) test_binary_io_LDADD = $(LDADD) @@ -495,6 +597,12 @@ test_c_stack_DEPENDENCIES = $(am__DEPENDENCIES_2) \ test_c_strcasecmp_SOURCES = test-c-strcasecmp.c test_c_strcasecmp_OBJECTS = test-c-strcasecmp.$(OBJEXT) test_c_strcasecmp_DEPENDENCIES = $(am__DEPENDENCIES_2) +test_c_strcasestr_SOURCES = test-c-strcasestr.c +test_c_strcasestr_OBJECTS = test-c-strcasestr.$(OBJEXT) +test_c_strcasestr_LDADD = $(LDADD) +test_c_strcasestr_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \ + libtests.a ../lib/libdiffutils.a libtests.a \ + $(am__DEPENDENCIES_1) test_c_strncasecmp_SOURCES = test-c-strncasecmp.c test_c_strncasecmp_OBJECTS = test-c-strncasecmp.$(OBJEXT) test_c_strncasecmp_DEPENDENCIES = $(am__DEPENDENCIES_2) @@ -549,6 +657,9 @@ test_errno_OBJECTS = test-errno.$(OBJEXT) test_errno_LDADD = $(LDADD) test_errno_DEPENDENCIES = libtests.a ../lib/libdiffutils.a libtests.a \ ../lib/libdiffutils.a libtests.a $(am__DEPENDENCIES_1) +test_error_SOURCES = test-error.c +test_error_OBJECTS = test-error.$(OBJEXT) +test_error_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_1) test_exclude_SOURCES = test-exclude.c test_exclude_OBJECTS = test-exclude.$(OBJEXT) test_exclude_DEPENDENCIES = $(am__DEPENDENCIES_2) \ @@ -745,6 +856,12 @@ test_langinfo_LDADD = $(LDADD) test_langinfo_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \ libtests.a ../lib/libdiffutils.a libtests.a \ $(am__DEPENDENCIES_1) +test_largefile_SOURCES = test-largefile.c +test_largefile_OBJECTS = test-largefile.$(OBJEXT) +test_largefile_LDADD = $(LDADD) +test_largefile_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \ + libtests.a ../lib/libdiffutils.a libtests.a \ + $(am__DEPENDENCIES_1) test_limits_h_SOURCES = test-limits-h.c test_limits_h_OBJECTS = test-limits-h.$(OBJEXT) test_limits_h_LDADD = $(LDADD) @@ -839,19 +956,28 @@ test_netinet_in_LDADD = $(LDADD) test_netinet_in_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \ libtests.a ../lib/libdiffutils.a libtests.a \ $(am__DEPENDENCIES_1) -test_nl_langinfo_SOURCES = test-nl_langinfo.c -test_nl_langinfo_OBJECTS = test-nl_langinfo.$(OBJEXT) -test_nl_langinfo_DEPENDENCIES = $(am__DEPENDENCIES_2) test_nl_langinfo_mt_SOURCES = test-nl_langinfo-mt.c test_nl_langinfo_mt_OBJECTS = test-nl_langinfo-mt.$(OBJEXT) test_nl_langinfo_mt_DEPENDENCIES = $(am__DEPENDENCIES_2) \ $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) +test_nl_langinfo1_SOURCES = test-nl_langinfo1.c +test_nl_langinfo1_OBJECTS = test-nl_langinfo1.$(OBJEXT) +test_nl_langinfo1_DEPENDENCIES = $(am__DEPENDENCIES_2) +test_nl_langinfo2_SOURCES = test-nl_langinfo2.c +test_nl_langinfo2_OBJECTS = test-nl_langinfo2.$(OBJEXT) +test_nl_langinfo2_DEPENDENCIES = $(am__DEPENDENCIES_2) test_nstrftime_SOURCES = test-nstrftime.c test_nstrftime_OBJECTS = test-nstrftime.$(OBJEXT) test_nstrftime_LDADD = $(LDADD) test_nstrftime_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \ libtests.a ../lib/libdiffutils.a libtests.a \ $(am__DEPENDENCIES_1) +test_nullptr_SOURCES = test-nullptr.c +test_nullptr_OBJECTS = test-nullptr.$(OBJEXT) +test_nullptr_LDADD = $(LDADD) +test_nullptr_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \ + libtests.a ../lib/libdiffutils.a libtests.a \ + $(am__DEPENDENCIES_1) test_open_SOURCES = test-open.c test_open_OBJECTS = test-open.$(OBJEXT) test_open_LDADD = $(LDADD) @@ -879,6 +1005,10 @@ test_pipe_OBJECTS = test-pipe.$(OBJEXT) test_pipe_LDADD = $(LDADD) test_pipe_DEPENDENCIES = libtests.a ../lib/libdiffutils.a libtests.a \ ../lib/libdiffutils.a libtests.a $(am__DEPENDENCIES_1) +test_pselect_SOURCES = test-pselect.c +test_pselect_OBJECTS = test-pselect.$(OBJEXT) +test_pselect_DEPENDENCIES = $(am__DEPENDENCIES_2) \ + $(am__DEPENDENCIES_1) test_pthread_SOURCES = test-pthread.c test_pthread_OBJECTS = test-pthread.$(OBJEXT) test_pthread_LDADD = $(LDADD) @@ -970,12 +1100,6 @@ test_sh_quote_SOURCES = test-sh-quote.c test_sh_quote_OBJECTS = test-sh-quote.$(OBJEXT) test_sh_quote_DEPENDENCIES = $(am__DEPENDENCIES_2) \ $(am__DEPENDENCIES_1) -test_sigaction_SOURCES = test-sigaction.c -test_sigaction_OBJECTS = test-sigaction.$(OBJEXT) -test_sigaction_LDADD = $(LDADD) -test_sigaction_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \ - libtests.a ../lib/libdiffutils.a libtests.a \ - $(am__DEPENDENCIES_1) test_signal_h_SOURCES = test-signal-h.c test_signal_h_OBJECTS = test-signal-h.$(OBJEXT) test_signal_h_LDADD = $(LDADD) @@ -1029,18 +1153,18 @@ test_stat_time_SOURCES = test-stat-time.c test_stat_time_OBJECTS = test-stat-time.$(OBJEXT) test_stat_time_DEPENDENCIES = $(am__DEPENDENCIES_2) \ $(am__DEPENDENCIES_1) -test_stdalign_SOURCES = test-stdalign.c -test_stdalign_OBJECTS = test-stdalign.$(OBJEXT) -test_stdalign_LDADD = $(LDADD) -test_stdalign_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \ - libtests.a ../lib/libdiffutils.a libtests.a \ - $(am__DEPENDENCIES_1) test_stdbool_SOURCES = test-stdbool.c test_stdbool_OBJECTS = test-stdbool.$(OBJEXT) test_stdbool_LDADD = $(LDADD) test_stdbool_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \ libtests.a ../lib/libdiffutils.a libtests.a \ $(am__DEPENDENCIES_1) +test_stdckdint_SOURCES = test-stdckdint.c +test_stdckdint_OBJECTS = test-stdckdint.$(OBJEXT) +test_stdckdint_LDADD = $(LDADD) +test_stdckdint_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \ + libtests.a ../lib/libdiffutils.a libtests.a \ + $(am__DEPENDENCIES_1) test_stddef_SOURCES = test-stddef.c test_stddef_OBJECTS = test-stddef.$(OBJEXT) test_stddef_LDADD = $(LDADD) @@ -1176,12 +1300,20 @@ test_time_OBJECTS = test-time.$(OBJEXT) test_time_LDADD = $(LDADD) test_time_DEPENDENCIES = libtests.a ../lib/libdiffutils.a libtests.a \ ../lib/libdiffutils.a libtests.a $(am__DEPENDENCIES_1) +test_time_h_SOURCES = test-time-h.c +test_time_h_OBJECTS = test-time-h.$(OBJEXT) +test_time_h_LDADD = $(LDADD) +test_time_h_DEPENDENCIES = libtests.a ../lib/libdiffutils.a libtests.a \ + ../lib/libdiffutils.a libtests.a $(am__DEPENDENCIES_1) test_timespec_SOURCES = test-timespec.c test_timespec_OBJECTS = test-timespec.$(OBJEXT) test_timespec_LDADD = $(LDADD) test_timespec_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \ libtests.a ../lib/libdiffutils.a libtests.a \ $(am__DEPENDENCIES_1) +test_trim_SOURCES = test-trim.c +test_trim_OBJECTS = test-trim.$(OBJEXT) +test_trim_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_1) am_test_u8_mbtoucr_OBJECTS = unistr/test-u8-mbtoucr.$(OBJEXT) test_u8_mbtoucr_OBJECTS = $(am_test_u8_mbtoucr_OBJECTS) test_u8_mbtoucr_DEPENDENCIES = $(am__DEPENDENCIES_2) @@ -1211,12 +1343,6 @@ test_vasnprintf_LDADD = $(LDADD) test_vasnprintf_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \ libtests.a ../lib/libdiffutils.a libtests.a \ $(am__DEPENDENCIES_1) -test_vasprintf_SOURCES = test-vasprintf.c -test_vasprintf_OBJECTS = test-vasprintf.$(OBJEXT) -test_vasprintf_LDADD = $(LDADD) -test_vasprintf_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \ - libtests.a ../lib/libdiffutils.a libtests.a \ - $(am__DEPENDENCIES_1) test_verify_SOURCES = test-verify.c test_verify_OBJECTS = test-verify.$(OBJEXT) test_verify_LDADD = $(LDADD) @@ -1269,9 +1395,12 @@ test_xstrtol_DEPENDENCIES = $(am__DEPENDENCIES_2) test_xstrtoul_SOURCES = test-xstrtoul.c test_xstrtoul_OBJECTS = test-xstrtoul.$(OBJEXT) test_xstrtoul_DEPENDENCIES = $(am__DEPENDENCIES_2) -test_xvasprintf_SOURCES = test-xvasprintf.c -test_xvasprintf_OBJECTS = test-xvasprintf.$(OBJEXT) -test_xvasprintf_DEPENDENCIES = $(am__DEPENDENCIES_2) +test_year2038_SOURCES = test-year2038.c +test_year2038_OBJECTS = test-year2038.$(OBJEXT) +test_year2038_LDADD = $(LDADD) +test_year2038_DEPENDENCIES = libtests.a ../lib/libdiffutils.a \ + libtests.a ../lib/libdiffutils.a libtests.a \ + $(am__DEPENDENCIES_1) AM_V_P = $(am__v_P_@AM_V@) am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) am__v_P_0 = false @@ -1288,43 +1417,47 @@ DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/lib depcomp = $(SHELL) $(top_srcdir)/build-aux/depcomp am__maybe_remake_depfiles = depfiles am__depfiles_remade = ./$(DEPDIR)/accept.Po ./$(DEPDIR)/alloca.Po \ - ./$(DEPDIR)/atoll.Po ./$(DEPDIR)/bind.Po \ + ./$(DEPDIR)/asnprintf.Po ./$(DEPDIR)/atoll.Po \ + ./$(DEPDIR)/bind.Po ./$(DEPDIR)/c-strcasestr.Po \ ./$(DEPDIR)/connect.Po ./$(DEPDIR)/dtotimespec.Po \ - ./$(DEPDIR)/fdopen.Po ./$(DEPDIR)/ftruncate.Po \ - ./$(DEPDIR)/getcwd-lgpl.Po ./$(DEPDIR)/hash-pjw.Po \ - ./$(DEPDIR)/inet_pton.Po ./$(DEPDIR)/ioctl.Po \ + ./$(DEPDIR)/fdopen.Po ./$(DEPDIR)/float.Po \ + ./$(DEPDIR)/ftruncate.Po ./$(DEPDIR)/getcwd-lgpl.Po \ + ./$(DEPDIR)/hash-pjw.Po ./$(DEPDIR)/inet_pton.Po \ + ./$(DEPDIR)/ioctl.Po ./$(DEPDIR)/itold.Po \ ./$(DEPDIR)/listen.Po ./$(DEPDIR)/locale.Po \ ./$(DEPDIR)/nanosleep.Po ./$(DEPDIR)/perror.Po \ - ./$(DEPDIR)/pipe.Po ./$(DEPDIR)/pthread-thread.Po \ - ./$(DEPDIR)/pthread_sigmask.Po ./$(DEPDIR)/putenv.Po \ - ./$(DEPDIR)/select.Po ./$(DEPDIR)/setsockopt.Po \ - ./$(DEPDIR)/sig-handler.Po ./$(DEPDIR)/sigaction.Po \ - ./$(DEPDIR)/sigprocmask.Po ./$(DEPDIR)/sleep.Po \ + ./$(DEPDIR)/pipe.Po ./$(DEPDIR)/printf-args.Po \ + ./$(DEPDIR)/printf-parse.Po ./$(DEPDIR)/pselect.Po \ + ./$(DEPDIR)/pthread-thread.Po ./$(DEPDIR)/pthread_sigmask.Po \ + ./$(DEPDIR)/putenv.Po ./$(DEPDIR)/select.Po \ + ./$(DEPDIR)/setsockopt.Po ./$(DEPDIR)/sleep.Po \ ./$(DEPDIR)/snprintf.Po ./$(DEPDIR)/socket.Po \ ./$(DEPDIR)/sockets.Po ./$(DEPDIR)/strerror_r.Po \ ./$(DEPDIR)/symlink.Po ./$(DEPDIR)/sys_socket.Po \ - ./$(DEPDIR)/test-accept.Po ./$(DEPDIR)/test-alloca-opt.Po \ - ./$(DEPDIR)/test-areadlink.Po ./$(DEPDIR)/test-argmatch.Po \ - ./$(DEPDIR)/test-arpa_inet.Po ./$(DEPDIR)/test-binary-io.Po \ + ./$(DEPDIR)/test-accept.Po ./$(DEPDIR)/test-alignasof.Po \ + ./$(DEPDIR)/test-alloca-opt.Po ./$(DEPDIR)/test-areadlink.Po \ + ./$(DEPDIR)/test-argmatch.Po ./$(DEPDIR)/test-arpa_inet.Po \ + ./$(DEPDIR)/test-assert.Po ./$(DEPDIR)/test-binary-io.Po \ ./$(DEPDIR)/test-bind.Po ./$(DEPDIR)/test-bitrotate.Po \ ./$(DEPDIR)/test-btowc.Po ./$(DEPDIR)/test-c-ctype.Po \ ./$(DEPDIR)/test-c-stack.Po ./$(DEPDIR)/test-c-strcasecmp.Po \ + ./$(DEPDIR)/test-c-strcasestr.Po \ ./$(DEPDIR)/test-c-strncasecmp.Po \ ./$(DEPDIR)/test-calloc-gnu.Po ./$(DEPDIR)/test-cloexec.Po \ ./$(DEPDIR)/test-close.Po ./$(DEPDIR)/test-connect.Po \ ./$(DEPDIR)/test-ctype.Po ./$(DEPDIR)/test-dirname.Po \ ./$(DEPDIR)/test-dup2.Po ./$(DEPDIR)/test-dynarray.Po \ ./$(DEPDIR)/test-environ.Po ./$(DEPDIR)/test-errno.Po \ - ./$(DEPDIR)/test-exclude.Po ./$(DEPDIR)/test-fcntl-h.Po \ - ./$(DEPDIR)/test-fcntl.Po ./$(DEPDIR)/test-fdopen.Po \ - ./$(DEPDIR)/test-fgetc.Po ./$(DEPDIR)/test-filenamecat.Po \ - ./$(DEPDIR)/test-float.Po ./$(DEPDIR)/test-fnmatch-h.Po \ - ./$(DEPDIR)/test-fnmatch.Po ./$(DEPDIR)/test-fopen-gnu.Po \ - ./$(DEPDIR)/test-fopen.Po ./$(DEPDIR)/test-fputc.Po \ - ./$(DEPDIR)/test-fread.Po ./$(DEPDIR)/test-free.Po \ - ./$(DEPDIR)/test-freopen.Po ./$(DEPDIR)/test-fstat.Po \ - ./$(DEPDIR)/test-ftruncate.Po ./$(DEPDIR)/test-fwrite.Po \ - ./$(DEPDIR)/test-getcwd-lgpl.Po \ + ./$(DEPDIR)/test-error.Po ./$(DEPDIR)/test-exclude.Po \ + ./$(DEPDIR)/test-fcntl-h.Po ./$(DEPDIR)/test-fcntl.Po \ + ./$(DEPDIR)/test-fdopen.Po ./$(DEPDIR)/test-fgetc.Po \ + ./$(DEPDIR)/test-filenamecat.Po ./$(DEPDIR)/test-float.Po \ + ./$(DEPDIR)/test-fnmatch-h.Po ./$(DEPDIR)/test-fnmatch.Po \ + ./$(DEPDIR)/test-fopen-gnu.Po ./$(DEPDIR)/test-fopen.Po \ + ./$(DEPDIR)/test-fputc.Po ./$(DEPDIR)/test-fread.Po \ + ./$(DEPDIR)/test-free.Po ./$(DEPDIR)/test-freopen.Po \ + ./$(DEPDIR)/test-fstat.Po ./$(DEPDIR)/test-ftruncate.Po \ + ./$(DEPDIR)/test-fwrite.Po ./$(DEPDIR)/test-getcwd-lgpl.Po \ ./$(DEPDIR)/test-getdtablesize.Po \ ./$(DEPDIR)/test-getopt-gnu.Po \ ./$(DEPDIR)/test-getopt-posix.Po \ @@ -1337,22 +1470,24 @@ am__depfiles_remade = ./$(DEPDIR)/accept.Po ./$(DEPDIR)/alloca.Po \ ./$(DEPDIR)/test-inttypes.Po ./$(DEPDIR)/test-ioctl.Po \ ./$(DEPDIR)/test-isblank.Po ./$(DEPDIR)/test-iswblank.Po \ ./$(DEPDIR)/test-iswdigit.Po ./$(DEPDIR)/test-iswxdigit.Po \ - ./$(DEPDIR)/test-langinfo.Po ./$(DEPDIR)/test-limits-h.Po \ - ./$(DEPDIR)/test-listen.Po ./$(DEPDIR)/test-localcharset.Po \ - ./$(DEPDIR)/test-locale.Po ./$(DEPDIR)/test-localeconv.Po \ - ./$(DEPDIR)/test-lstat.Po ./$(DEPDIR)/test-malloc-gnu.Po \ - ./$(DEPDIR)/test-malloca.Po ./$(DEPDIR)/test-mbrtowc-w32.Po \ - ./$(DEPDIR)/test-mbrtowc.Po ./$(DEPDIR)/test-mbscasecmp.Po \ - ./$(DEPDIR)/test-mbsinit.Po ./$(DEPDIR)/test-mbsrtowcs.Po \ - ./$(DEPDIR)/test-mbsstr1.Po ./$(DEPDIR)/test-mbsstr2.Po \ - ./$(DEPDIR)/test-mbsstr3.Po ./$(DEPDIR)/test-memchr.Po \ - ./$(DEPDIR)/test-mkdir.Po ./$(DEPDIR)/test-nanosleep.Po \ - ./$(DEPDIR)/test-netinet_in.Po \ + ./$(DEPDIR)/test-langinfo.Po ./$(DEPDIR)/test-largefile.Po \ + ./$(DEPDIR)/test-limits-h.Po ./$(DEPDIR)/test-listen.Po \ + ./$(DEPDIR)/test-localcharset.Po ./$(DEPDIR)/test-locale.Po \ + ./$(DEPDIR)/test-localeconv.Po ./$(DEPDIR)/test-lstat.Po \ + ./$(DEPDIR)/test-malloc-gnu.Po ./$(DEPDIR)/test-malloca.Po \ + ./$(DEPDIR)/test-mbrtowc-w32.Po ./$(DEPDIR)/test-mbrtowc.Po \ + ./$(DEPDIR)/test-mbscasecmp.Po ./$(DEPDIR)/test-mbsinit.Po \ + ./$(DEPDIR)/test-mbsrtowcs.Po ./$(DEPDIR)/test-mbsstr1.Po \ + ./$(DEPDIR)/test-mbsstr2.Po ./$(DEPDIR)/test-mbsstr3.Po \ + ./$(DEPDIR)/test-memchr.Po ./$(DEPDIR)/test-mkdir.Po \ + ./$(DEPDIR)/test-nanosleep.Po ./$(DEPDIR)/test-netinet_in.Po \ ./$(DEPDIR)/test-nl_langinfo-mt.Po \ - ./$(DEPDIR)/test-nl_langinfo.Po ./$(DEPDIR)/test-nstrftime.Po \ - ./$(DEPDIR)/test-open.Po ./$(DEPDIR)/test-pathmax.Po \ - ./$(DEPDIR)/test-perror.Po ./$(DEPDIR)/test-perror2.Po \ - ./$(DEPDIR)/test-pipe.Po ./$(DEPDIR)/test-pthread-thread.Po \ + ./$(DEPDIR)/test-nl_langinfo1.Po \ + ./$(DEPDIR)/test-nl_langinfo2.Po ./$(DEPDIR)/test-nstrftime.Po \ + ./$(DEPDIR)/test-nullptr.Po ./$(DEPDIR)/test-open.Po \ + ./$(DEPDIR)/test-pathmax.Po ./$(DEPDIR)/test-perror.Po \ + ./$(DEPDIR)/test-perror2.Po ./$(DEPDIR)/test-pipe.Po \ + ./$(DEPDIR)/test-pselect.Po ./$(DEPDIR)/test-pthread-thread.Po \ ./$(DEPDIR)/test-pthread.Po \ ./$(DEPDIR)/test-pthread_sigmask1.Po \ ./$(DEPDIR)/test-pthread_sigmask2.Po \ @@ -1367,16 +1502,15 @@ am__depfiles_remade = ./$(DEPDIR)/accept.Po ./$(DEPDIR)/alloca.Po \ ./$(DEPDIR)/test-setlocale_null-mt-one.Po \ ./$(DEPDIR)/test-setlocale_null.Po \ ./$(DEPDIR)/test-setsockopt.Po ./$(DEPDIR)/test-sh-quote.Po \ - ./$(DEPDIR)/test-sigaction.Po ./$(DEPDIR)/test-signal-h.Po \ - ./$(DEPDIR)/test-sigprocmask.Po \ + ./$(DEPDIR)/test-signal-h.Po ./$(DEPDIR)/test-sigprocmask.Po \ ./$(DEPDIR)/test-sigsegv-catch-segv1.Po \ ./$(DEPDIR)/test-sigsegv-catch-segv2.Po \ ./$(DEPDIR)/test-sigsegv-catch-stackoverflow1.Po \ ./$(DEPDIR)/test-sigsegv-catch-stackoverflow2.Po \ ./$(DEPDIR)/test-sleep.Po ./$(DEPDIR)/test-snprintf.Po \ ./$(DEPDIR)/test-sockets.Po ./$(DEPDIR)/test-stat-time.Po \ - ./$(DEPDIR)/test-stat.Po ./$(DEPDIR)/test-stdalign.Po \ - ./$(DEPDIR)/test-stdbool.Po ./$(DEPDIR)/test-stddef.Po \ + ./$(DEPDIR)/test-stat.Po ./$(DEPDIR)/test-stdbool.Po \ + ./$(DEPDIR)/test-stdckdint.Po ./$(DEPDIR)/test-stddef.Po \ ./$(DEPDIR)/test-stdint.Po ./$(DEPDIR)/test-stdio.Po \ ./$(DEPDIR)/test-stdlib.Po ./$(DEPDIR)/test-strerror.Po \ ./$(DEPDIR)/test-strerror_r.Po ./$(DEPDIR)/test-striconv.Po \ @@ -1388,20 +1522,22 @@ am__depfiles_remade = ./$(DEPDIR)/accept.Po ./$(DEPDIR)/alloca.Po \ ./$(DEPDIR)/test-sys_stat.Po ./$(DEPDIR)/test-sys_time.Po \ ./$(DEPDIR)/test-sys_types.Po ./$(DEPDIR)/test-sys_uio.Po \ ./$(DEPDIR)/test-sys_wait.Po ./$(DEPDIR)/test-thread_create.Po \ - ./$(DEPDIR)/test-thread_self.Po ./$(DEPDIR)/test-time.Po \ - ./$(DEPDIR)/test-timespec.Po ./$(DEPDIR)/test-unistd.Po \ + ./$(DEPDIR)/test-thread_self.Po ./$(DEPDIR)/test-time-h.Po \ + ./$(DEPDIR)/test-time.Po ./$(DEPDIR)/test-timespec.Po \ + ./$(DEPDIR)/test-trim.Po ./$(DEPDIR)/test-unistd.Po \ ./$(DEPDIR)/test-unsetenv.Po ./$(DEPDIR)/test-vasnprintf.Po \ - ./$(DEPDIR)/test-vasprintf.Po ./$(DEPDIR)/test-verify-try.Po \ - ./$(DEPDIR)/test-verify.Po ./$(DEPDIR)/test-version-etc.Po \ - ./$(DEPDIR)/test-wchar.Po ./$(DEPDIR)/test-wcrtomb-w32.Po \ - ./$(DEPDIR)/test-wcrtomb.Po ./$(DEPDIR)/test-wctype-h.Po \ - ./$(DEPDIR)/test-wcwidth.Po ./$(DEPDIR)/test-xalloc-die.Po \ - ./$(DEPDIR)/test-xstdopen.Po ./$(DEPDIR)/test-xstrtoimax.Po \ - ./$(DEPDIR)/test-xstrtol.Po ./$(DEPDIR)/test-xstrtoul.Po \ - ./$(DEPDIR)/test-xvasprintf.Po ./$(DEPDIR)/timespec-add.Po \ - ./$(DEPDIR)/timespec-sub.Po ./$(DEPDIR)/wctob.Po \ - ./$(DEPDIR)/wctomb.Po ./$(DEPDIR)/windows-thread.Po \ - ./$(DEPDIR)/windows-tls.Po ./$(DEPDIR)/xstrtol-error.Po \ + ./$(DEPDIR)/test-verify-try.Po ./$(DEPDIR)/test-verify.Po \ + ./$(DEPDIR)/test-version-etc.Po ./$(DEPDIR)/test-wchar.Po \ + ./$(DEPDIR)/test-wcrtomb-w32.Po ./$(DEPDIR)/test-wcrtomb.Po \ + ./$(DEPDIR)/test-wctype-h.Po ./$(DEPDIR)/test-wcwidth.Po \ + ./$(DEPDIR)/test-xalloc-die.Po ./$(DEPDIR)/test-xstdopen.Po \ + ./$(DEPDIR)/test-xstrtoimax.Po ./$(DEPDIR)/test-xstrtol.Po \ + ./$(DEPDIR)/test-xstrtoul.Po ./$(DEPDIR)/test-year2038.Po \ + ./$(DEPDIR)/time.Po ./$(DEPDIR)/timespec-add.Po \ + ./$(DEPDIR)/timespec-sub.Po ./$(DEPDIR)/vasnprintf.Po \ + ./$(DEPDIR)/wctob.Po ./$(DEPDIR)/wctomb.Po \ + ./$(DEPDIR)/windows-thread.Po ./$(DEPDIR)/windows-tls.Po \ + ./$(DEPDIR)/xsize.Po ./$(DEPDIR)/xstrtol-error.Po \ glthread/$(DEPDIR)/thread.Po \ unistr/$(DEPDIR)/test-u8-mbtoucr.Po \ unistr/$(DEPDIR)/test-u8-uctomb.Po \ @@ -1421,15 +1557,16 @@ am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) am__v_CCLD_0 = @echo " CCLD " $@; am__v_CCLD_1 = SOURCES = $(libtests_a_SOURCES) $(EXTRA_libtests_a_SOURCES) \ - $(current_locale_SOURCES) test-accept.c test-alloca-opt.c \ - test-areadlink.c test-argmatch.c test-arpa_inet.c \ - test-binary-io.c test-bind.c test-bitrotate.c test-btowc.c \ - test-c-ctype.c test-c-stack.c test-c-strcasecmp.c \ - test-c-strncasecmp.c test-calloc-gnu.c test-cloexec.c \ - test-close.c test-connect.c test-ctype.c test-dirname.c \ - test-dup2.c test-dynarray.c test-environ.c test-errno.c \ - test-exclude.c test-fcntl.c test-fcntl-h.c test-fdopen.c \ - test-fgetc.c test-filenamecat.c test-float.c test-fnmatch.c \ + $(current_locale_SOURCES) test-accept.c test-alignasof.c \ + test-alloca-opt.c test-areadlink.c test-argmatch.c \ + test-arpa_inet.c test-assert.c test-binary-io.c test-bind.c \ + test-bitrotate.c test-btowc.c test-c-ctype.c test-c-stack.c \ + test-c-strcasecmp.c test-c-strcasestr.c test-c-strncasecmp.c \ + test-calloc-gnu.c test-cloexec.c test-close.c test-connect.c \ + test-ctype.c test-dirname.c test-dup2.c test-dynarray.c \ + test-environ.c test-errno.c test-error.c test-exclude.c \ + test-fcntl.c test-fcntl-h.c test-fdopen.c test-fgetc.c \ + test-filenamecat.c test-float.c test-fnmatch.c \ test-fnmatch-h.c test-fopen.c test-fopen-gnu.c test-fputc.c \ test-fread.c test-free.c test-freopen.c test-fstat.c \ test-ftruncate.c test-fwrite.c test-getcwd-lgpl.c \ @@ -1439,27 +1576,27 @@ SOURCES = $(libtests_a_SOURCES) $(EXTRA_libtests_a_SOURCES) \ test-ignore-value.c test-inet_pton.c test-intprops.c \ test-inttostr.c test-inttypes.c test-ioctl.c test-isblank.c \ test-iswblank.c test-iswdigit.c test-iswxdigit.c \ - test-langinfo.c test-limits-h.c test-listen.c \ + test-langinfo.c test-largefile.c test-limits-h.c test-listen.c \ test-localcharset.c test-locale.c test-localeconv.c \ test-lstat.c test-malloc-gnu.c test-malloca.c test-mbrtowc.c \ test-mbrtowc-w32.c test-mbscasecmp.c test-mbsinit.c \ test-mbsrtowcs.c test-mbsstr1.c test-mbsstr2.c test-mbsstr3.c \ test-memchr.c test-mkdir.c test-nanosleep.c test-netinet_in.c \ - test-nl_langinfo.c test-nl_langinfo-mt.c test-nstrftime.c \ - test-open.c test-pathmax.c test-perror.c test-perror2.c \ - test-pipe.c test-pthread.c test-pthread-thread.c \ - test-pthread_sigmask1.c test-pthread_sigmask2.c \ - test-quotearg-simple.c test-raise.c test-rawmemchr.c \ - test-readlink.c test-realloc-gnu.c test-reallocarray.c \ - test-regex.c test-sched.c test-select.c test-select-fd.c \ - test-select-stdin.c test-setenv.c test-setlocale_null.c \ - test-setlocale_null-mt-all.c test-setlocale_null-mt-one.c \ - test-setsockopt.c test-sh-quote.c test-sigaction.c \ + test-nl_langinfo-mt.c test-nl_langinfo1.c test-nl_langinfo2.c \ + test-nstrftime.c test-nullptr.c test-open.c test-pathmax.c \ + test-perror.c test-perror2.c test-pipe.c test-pselect.c \ + test-pthread.c test-pthread-thread.c test-pthread_sigmask1.c \ + test-pthread_sigmask2.c test-quotearg-simple.c test-raise.c \ + test-rawmemchr.c test-readlink.c test-realloc-gnu.c \ + test-reallocarray.c test-regex.c test-sched.c test-select.c \ + test-select-fd.c test-select-stdin.c test-setenv.c \ + test-setlocale_null.c test-setlocale_null-mt-all.c \ + test-setlocale_null-mt-one.c test-setsockopt.c test-sh-quote.c \ test-signal-h.c test-sigprocmask.c test-sigsegv-catch-segv1.c \ test-sigsegv-catch-segv2.c test-sigsegv-catch-stackoverflow1.c \ test-sigsegv-catch-stackoverflow2.c test-sleep.c \ test-snprintf.c test-sockets.c test-stat.c test-stat-time.c \ - test-stdalign.c test-stdbool.c test-stddef.c test-stdint.c \ + test-stdbool.c test-stdckdint.c test-stddef.c test-stdint.c \ test-stdio.c test-stdlib.c test-strerror.c test-strerror_r.c \ test-striconv.c test-string.c test-strings.c test-strnlen.c \ test-strtoimax.c test-strtoll.c test-symlink.c \ @@ -1467,55 +1604,57 @@ SOURCES = $(libtests_a_SOURCES) $(EXTRA_libtests_a_SOURCES) \ test-sys_socket.c test-sys_stat.c test-sys_time.c \ test-sys_types.c test-sys_uio.c test-sys_wait.c \ test-thread_create.c test-thread_self.c test-time.c \ - test-timespec.c $(test_u8_mbtoucr_SOURCES) \ - $(test_u8_uctomb_SOURCES) $(test_uc_width_SOURCES) \ - $(test_uc_width2_SOURCES) test-unistd.c test-unsetenv.c \ - test-vasnprintf.c test-vasprintf.c test-verify.c \ + test-time-h.c test-timespec.c test-trim.c \ + $(test_u8_mbtoucr_SOURCES) $(test_u8_uctomb_SOURCES) \ + $(test_uc_width_SOURCES) $(test_uc_width2_SOURCES) \ + test-unistd.c test-unsetenv.c test-vasnprintf.c test-verify.c \ test-verify-try.c test-version-etc.c test-wchar.c \ test-wcrtomb.c test-wcrtomb-w32.c test-wctype-h.c \ test-wcwidth.c test-xalloc-die.c test-xstdopen.c \ test-xstrtoimax.c test-xstrtol.c test-xstrtoul.c \ - test-xvasprintf.c -DIST_SOURCES = $(libtests_a_SOURCES) $(EXTRA_libtests_a_SOURCES) \ - $(current_locale_SOURCES) test-accept.c test-alloca-opt.c \ + test-year2038.c +DIST_SOURCES = $(am__libtests_a_SOURCES_DIST) \ + $(EXTRA_libtests_a_SOURCES) $(current_locale_SOURCES) \ + test-accept.c test-alignasof.c test-alloca-opt.c \ test-areadlink.c test-argmatch.c test-arpa_inet.c \ - test-binary-io.c test-bind.c test-bitrotate.c test-btowc.c \ - test-c-ctype.c test-c-stack.c test-c-strcasecmp.c \ - test-c-strncasecmp.c test-calloc-gnu.c test-cloexec.c \ - test-close.c test-connect.c test-ctype.c test-dirname.c \ - test-dup2.c test-dynarray.c test-environ.c test-errno.c \ - test-exclude.c test-fcntl.c test-fcntl-h.c test-fdopen.c \ - test-fgetc.c test-filenamecat.c test-float.c test-fnmatch.c \ - test-fnmatch-h.c test-fopen.c test-fopen-gnu.c test-fputc.c \ - test-fread.c test-free.c test-freopen.c test-fstat.c \ - test-ftruncate.c test-fwrite.c test-getcwd-lgpl.c \ - test-getdtablesize.c test-getopt-gnu.c test-getopt-posix.c \ - test-getprogname.c test-getrandom.c test-gettimeofday.c \ - test-hard-locale.c test-hash.c test-iconv.c test-iconv-h.c \ - test-ignore-value.c test-inet_pton.c test-intprops.c \ - test-inttostr.c test-inttypes.c test-ioctl.c test-isblank.c \ - test-iswblank.c test-iswdigit.c test-iswxdigit.c \ - test-langinfo.c test-limits-h.c test-listen.c \ + test-assert.c test-binary-io.c test-bind.c test-bitrotate.c \ + test-btowc.c test-c-ctype.c test-c-stack.c test-c-strcasecmp.c \ + test-c-strcasestr.c test-c-strncasecmp.c test-calloc-gnu.c \ + test-cloexec.c test-close.c test-connect.c test-ctype.c \ + test-dirname.c test-dup2.c test-dynarray.c test-environ.c \ + test-errno.c test-error.c test-exclude.c test-fcntl.c \ + test-fcntl-h.c test-fdopen.c test-fgetc.c test-filenamecat.c \ + test-float.c test-fnmatch.c test-fnmatch-h.c test-fopen.c \ + test-fopen-gnu.c test-fputc.c test-fread.c test-free.c \ + test-freopen.c test-fstat.c test-ftruncate.c test-fwrite.c \ + test-getcwd-lgpl.c test-getdtablesize.c test-getopt-gnu.c \ + test-getopt-posix.c test-getprogname.c test-getrandom.c \ + test-gettimeofday.c test-hard-locale.c test-hash.c \ + test-iconv.c test-iconv-h.c test-ignore-value.c \ + test-inet_pton.c test-intprops.c test-inttostr.c \ + test-inttypes.c test-ioctl.c test-isblank.c test-iswblank.c \ + test-iswdigit.c test-iswxdigit.c test-langinfo.c \ + test-largefile.c test-limits-h.c test-listen.c \ test-localcharset.c test-locale.c test-localeconv.c \ test-lstat.c test-malloc-gnu.c test-malloca.c test-mbrtowc.c \ test-mbrtowc-w32.c test-mbscasecmp.c test-mbsinit.c \ test-mbsrtowcs.c test-mbsstr1.c test-mbsstr2.c test-mbsstr3.c \ test-memchr.c test-mkdir.c test-nanosleep.c test-netinet_in.c \ - test-nl_langinfo.c test-nl_langinfo-mt.c test-nstrftime.c \ - test-open.c test-pathmax.c test-perror.c test-perror2.c \ - test-pipe.c test-pthread.c test-pthread-thread.c \ - test-pthread_sigmask1.c test-pthread_sigmask2.c \ - test-quotearg-simple.c test-raise.c test-rawmemchr.c \ - test-readlink.c test-realloc-gnu.c test-reallocarray.c \ - test-regex.c test-sched.c test-select.c test-select-fd.c \ - test-select-stdin.c test-setenv.c test-setlocale_null.c \ - test-setlocale_null-mt-all.c test-setlocale_null-mt-one.c \ - test-setsockopt.c test-sh-quote.c test-sigaction.c \ + test-nl_langinfo-mt.c test-nl_langinfo1.c test-nl_langinfo2.c \ + test-nstrftime.c test-nullptr.c test-open.c test-pathmax.c \ + test-perror.c test-perror2.c test-pipe.c test-pselect.c \ + test-pthread.c test-pthread-thread.c test-pthread_sigmask1.c \ + test-pthread_sigmask2.c test-quotearg-simple.c test-raise.c \ + test-rawmemchr.c test-readlink.c test-realloc-gnu.c \ + test-reallocarray.c test-regex.c test-sched.c test-select.c \ + test-select-fd.c test-select-stdin.c test-setenv.c \ + test-setlocale_null.c test-setlocale_null-mt-all.c \ + test-setlocale_null-mt-one.c test-setsockopt.c test-sh-quote.c \ test-signal-h.c test-sigprocmask.c test-sigsegv-catch-segv1.c \ test-sigsegv-catch-segv2.c test-sigsegv-catch-stackoverflow1.c \ test-sigsegv-catch-stackoverflow2.c test-sleep.c \ test-snprintf.c test-sockets.c test-stat.c test-stat-time.c \ - test-stdalign.c test-stdbool.c test-stddef.c test-stdint.c \ + test-stdbool.c test-stdckdint.c test-stddef.c test-stdint.c \ test-stdio.c test-stdlib.c test-strerror.c test-strerror_r.c \ test-striconv.c test-string.c test-strings.c test-strnlen.c \ test-strtoimax.c test-strtoll.c test-symlink.c \ @@ -1523,15 +1662,15 @@ DIST_SOURCES = $(libtests_a_SOURCES) $(EXTRA_libtests_a_SOURCES) \ test-sys_socket.c test-sys_stat.c test-sys_time.c \ test-sys_types.c test-sys_uio.c test-sys_wait.c \ test-thread_create.c test-thread_self.c test-time.c \ - test-timespec.c $(test_u8_mbtoucr_SOURCES) \ - $(test_u8_uctomb_SOURCES) $(test_uc_width_SOURCES) \ - $(test_uc_width2_SOURCES) test-unistd.c test-unsetenv.c \ - test-vasnprintf.c test-vasprintf.c test-verify.c \ + test-time-h.c test-timespec.c test-trim.c \ + $(test_u8_mbtoucr_SOURCES) $(test_u8_uctomb_SOURCES) \ + $(test_uc_width_SOURCES) $(test_uc_width2_SOURCES) \ + test-unistd.c test-unsetenv.c test-vasnprintf.c test-verify.c \ test-verify-try.c test-version-etc.c test-wchar.c \ test-wcrtomb.c test-wcrtomb-w32.c test-wctype-h.c \ test-wcwidth.c test-xalloc-die.c test-xstdopen.c \ test-xstrtoimax.c test-xstrtol.c test-xstrtoul.c \ - test-xvasprintf.c + test-year2038.c RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \ ctags-recursive dvi-recursive html-recursive info-recursive \ install-data-recursive install-dvi-recursive \ @@ -1615,10 +1754,9 @@ am__base_list = \ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' am__uninstall_files_from_dir = { \ - test -z "$$files" \ - || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ - || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ - $(am__cd) "$$dir" && rm -f $$files; }; \ + { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ + || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ + $(am__cd) "$$dir" && echo $$files | $(am__xargs_n) 40 $(am__rm_f); }; \ } am__recheck_rx = ^[ ]*:recheck:[ ]* am__global_test_result_rx = ^[ ]*:global-test-result:[ ]* @@ -1813,6 +1951,7 @@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APPLE_UNIVERSAL_BUILD = @APPLE_UNIVERSAL_BUILD@ AR = @AR@ ARFLAGS = @ARFLAGS@ +ASSERT_H = @ASSERT_H@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ @@ -1824,8 +1963,9 @@ BITSIZEOF_WCHAR_T = @BITSIZEOF_WCHAR_T@ BITSIZEOF_WINT_T = @BITSIZEOF_WINT_T@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ -CFLAGS = @GL_CFLAG_ALLOW_WARNINGS@ @CFLAGS@ +CFLAGS = @GL_CFLAG_ALLOW_WARNINGS@ $(GL_CFLAG_GNULIB_WARNINGS) @CFLAGS@ CFLAG_VISIBILITY = @CFLAG_VISIBILITY@ +CLOCK_TIME_LIB = @CLOCK_TIME_LIB@ CONFIG_INCLUDE = @CONFIG_INCLUDE@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ @@ -1837,7 +1977,6 @@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ -EGREP = @EGREP@ EMULTIHOP_HIDDEN = @EMULTIHOP_HIDDEN@ EMULTIHOP_VALUE = @EMULTIHOP_VALUE@ ENOLINK_HIDDEN = @ENOLINK_HIDDEN@ @@ -1845,14 +1984,17 @@ ENOLINK_VALUE = @ENOLINK_VALUE@ EOVERFLOW_HIDDEN = @EOVERFLOW_HIDDEN@ EOVERFLOW_VALUE = @EOVERFLOW_VALUE@ ERRNO_H = @ERRNO_H@ +ERROR_H = @ERROR_H@ ETAGS = @ETAGS@ EXEEXT = @EXEEXT@ FLOAT_H = @FLOAT_H@ FNMATCH_H = @FNMATCH_H@ GETOPT_CDEFS_H = @GETOPT_CDEFS_H@ GETOPT_H = @GETOPT_H@ +GETRANDOM_LIB = @GETRANDOM_LIB@ GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ GL_CFLAG_ALLOW_WARNINGS = @GL_CFLAG_ALLOW_WARNINGS@ +GL_CFLAG_GNULIB_WARNINGS = @GL_CFLAG_GNULIB_WARNINGS@ GL_CXXFLAG_ALLOW_WARNINGS = @GL_CXXFLAG_ALLOW_WARNINGS@ GL_GNULIB_ACCEPT = @GL_GNULIB_ACCEPT@ GL_GNULIB_ACCEPT4 = @GL_GNULIB_ACCEPT4@ @@ -1861,9 +2003,11 @@ GL_GNULIB_ALIGNED_ALLOC = @GL_GNULIB_ALIGNED_ALLOC@ GL_GNULIB_ATOLL = @GL_GNULIB_ATOLL@ GL_GNULIB_BIND = @GL_GNULIB_BIND@ GL_GNULIB_BTOWC = @GL_GNULIB_BTOWC@ +GL_GNULIB_CALLOC_GNU = @GL_GNULIB_CALLOC_GNU@ GL_GNULIB_CALLOC_POSIX = @GL_GNULIB_CALLOC_POSIX@ GL_GNULIB_CANONICALIZE_FILE_NAME = @GL_GNULIB_CANONICALIZE_FILE_NAME@ GL_GNULIB_CHDIR = @GL_GNULIB_CHDIR@ +GL_GNULIB_CHMOD = @GL_GNULIB_CHMOD@ GL_GNULIB_CHOWN = @GL_GNULIB_CHOWN@ GL_GNULIB_CLOSE = @GL_GNULIB_CLOSE@ GL_GNULIB_CONNECT = @GL_GNULIB_CONNECT@ @@ -1901,6 +2045,7 @@ GL_GNULIB_FGETC = @GL_GNULIB_FGETC@ GL_GNULIB_FGETS = @GL_GNULIB_FGETS@ GL_GNULIB_FNMATCH = @GL_GNULIB_FNMATCH@ GL_GNULIB_FOPEN = @GL_GNULIB_FOPEN@ +GL_GNULIB_FOPEN_GNU = @GL_GNULIB_FOPEN_GNU@ GL_GNULIB_FPRINTF = @GL_GNULIB_FPRINTF@ GL_GNULIB_FPRINTF_POSIX = @GL_GNULIB_FPRINTF_POSIX@ GL_GNULIB_FPURGE = @GL_GNULIB_FPURGE@ @@ -1936,7 +2081,9 @@ GL_GNULIB_GETLOGIN_R = @GL_GNULIB_GETLOGIN_R@ GL_GNULIB_GETOPT_POSIX = @GL_GNULIB_GETOPT_POSIX@ GL_GNULIB_GETPAGESIZE = @GL_GNULIB_GETPAGESIZE@ GL_GNULIB_GETPASS = @GL_GNULIB_GETPASS@ +GL_GNULIB_GETPASS_GNU = @GL_GNULIB_GETPASS_GNU@ GL_GNULIB_GETPEERNAME = @GL_GNULIB_GETPEERNAME@ +GL_GNULIB_GETPROGNAME = @GL_GNULIB_GETPROGNAME@ GL_GNULIB_GETRANDOM = @GL_GNULIB_GETRANDOM@ GL_GNULIB_GETSOCKNAME = @GL_GNULIB_GETSOCKNAME@ GL_GNULIB_GETSOCKOPT = @GL_GNULIB_GETSOCKOPT@ @@ -1968,6 +2115,7 @@ GL_GNULIB_LOCALENAME = @GL_GNULIB_LOCALENAME@ GL_GNULIB_LOCALTIME = @GL_GNULIB_LOCALTIME@ GL_GNULIB_LSEEK = @GL_GNULIB_LSEEK@ GL_GNULIB_LSTAT = @GL_GNULIB_LSTAT@ +GL_GNULIB_MALLOC_GNU = @GL_GNULIB_MALLOC_GNU@ GL_GNULIB_MALLOC_POSIX = @GL_GNULIB_MALLOC_POSIX@ GL_GNULIB_MBRLEN = @GL_GNULIB_MBRLEN@ GL_GNULIB_MBRTOWC = @GL_GNULIB_MBRTOWC@ @@ -1988,6 +2136,7 @@ GL_GNULIB_MBSSEP = @GL_GNULIB_MBSSEP@ GL_GNULIB_MBSSPN = @GL_GNULIB_MBSSPN@ GL_GNULIB_MBSSTR = @GL_GNULIB_MBSSTR@ GL_GNULIB_MBSTOK_R = @GL_GNULIB_MBSTOK_R@ +GL_GNULIB_MBSTOWCS = @GL_GNULIB_MBSTOWCS@ GL_GNULIB_MBTOWC = @GL_GNULIB_MBTOWC@ GL_GNULIB_MDA_ACCESS = @GL_GNULIB_MDA_ACCESS@ GL_GNULIB_MDA_CHDIR = @GL_GNULIB_MDA_CHDIR@ @@ -2034,6 +2183,7 @@ GL_GNULIB_MEMCHR = @GL_GNULIB_MEMCHR@ GL_GNULIB_MEMMEM = @GL_GNULIB_MEMMEM@ GL_GNULIB_MEMPCPY = @GL_GNULIB_MEMPCPY@ GL_GNULIB_MEMRCHR = @GL_GNULIB_MEMRCHR@ +GL_GNULIB_MEMSET_EXPLICIT = @GL_GNULIB_MEMSET_EXPLICIT@ GL_GNULIB_MKDIR = @GL_GNULIB_MKDIR@ GL_GNULIB_MKDIRAT = @GL_GNULIB_MKDIRAT@ GL_GNULIB_MKDTEMP = @GL_GNULIB_MKDTEMP@ @@ -2090,6 +2240,7 @@ GL_GNULIB_READ = @GL_GNULIB_READ@ GL_GNULIB_READLINK = @GL_GNULIB_READLINK@ GL_GNULIB_READLINKAT = @GL_GNULIB_READLINKAT@ GL_GNULIB_REALLOCARRAY = @GL_GNULIB_REALLOCARRAY@ +GL_GNULIB_REALLOC_GNU = @GL_GNULIB_REALLOC_GNU@ GL_GNULIB_REALLOC_POSIX = @GL_GNULIB_REALLOC_POSIX@ GL_GNULIB_REALPATH = @GL_GNULIB_REALPATH@ GL_GNULIB_RECV = @GL_GNULIB_RECV@ @@ -2153,8 +2304,10 @@ GL_GNULIB_STRVERSCMP = @GL_GNULIB_STRVERSCMP@ GL_GNULIB_SYMLINK = @GL_GNULIB_SYMLINK@ GL_GNULIB_SYMLINKAT = @GL_GNULIB_SYMLINKAT@ GL_GNULIB_SYSTEM_POSIX = @GL_GNULIB_SYSTEM_POSIX@ +GL_GNULIB_TIME = @GL_GNULIB_TIME@ GL_GNULIB_TIMEGM = @GL_GNULIB_TIMEGM@ GL_GNULIB_TIMESPEC_GET = @GL_GNULIB_TIMESPEC_GET@ +GL_GNULIB_TIMESPEC_GETRES = @GL_GNULIB_TIMESPEC_GETRES@ GL_GNULIB_TIME_R = @GL_GNULIB_TIME_R@ GL_GNULIB_TIME_RZ = @GL_GNULIB_TIME_RZ@ GL_GNULIB_TMPFILE = @GL_GNULIB_TMPFILE@ @@ -2228,6 +2381,7 @@ GNULIBHEADERS_OVERRIDE_WINT_T = @GNULIBHEADERS_OVERRIDE_WINT_T@ GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@ GNULIB_WARN_CFLAGS = @GNULIB_WARN_CFLAGS@ GREP = @GREP@ +HARD_LOCALE_LIB = @HARD_LOCALE_LIB@ HAVE_ACCEPT4 = @HAVE_ACCEPT4@ HAVE_ALIGNED_ALLOC = @HAVE_ALIGNED_ALLOC@ HAVE_ALLOCA_H = @HAVE_ALLOCA_H@ @@ -2258,6 +2412,7 @@ HAVE_DECL_GETLOGIN = @HAVE_DECL_GETLOGIN@ HAVE_DECL_GETLOGIN_R = @HAVE_DECL_GETLOGIN_R@ HAVE_DECL_GETPAGESIZE = @HAVE_DECL_GETPAGESIZE@ HAVE_DECL_GETUSERSHELL = @HAVE_DECL_GETUSERSHELL@ +HAVE_DECL_GETW = @HAVE_DECL_GETW@ HAVE_DECL_IMAXABS = @HAVE_DECL_IMAXABS@ HAVE_DECL_IMAXDIV = @HAVE_DECL_IMAXDIV@ HAVE_DECL_INET_NTOP = @HAVE_DECL_INET_NTOP@ @@ -2267,6 +2422,8 @@ HAVE_DECL_LOCALTIME_R = @HAVE_DECL_LOCALTIME_R@ HAVE_DECL_MEMMEM = @HAVE_DECL_MEMMEM@ HAVE_DECL_MEMRCHR = @HAVE_DECL_MEMRCHR@ HAVE_DECL_OBSTACK_PRINTF = @HAVE_DECL_OBSTACK_PRINTF@ +HAVE_DECL_PROGRAM_INVOCATION_NAME = @HAVE_DECL_PROGRAM_INVOCATION_NAME@ +HAVE_DECL_PUTW = @HAVE_DECL_PUTW@ HAVE_DECL_SETENV = @HAVE_DECL_SETENV@ HAVE_DECL_SETHOSTNAME = @HAVE_DECL_SETHOSTNAME@ HAVE_DECL_SETSTATE = @HAVE_DECL_SETSTATE@ @@ -2290,6 +2447,9 @@ HAVE_DECL_WCWIDTH = @HAVE_DECL_WCWIDTH@ HAVE_DPRINTF = @HAVE_DPRINTF@ HAVE_DUP3 = @HAVE_DUP3@ HAVE_DUPLOCALE = @HAVE_DUPLOCALE@ +HAVE_ERROR = @HAVE_ERROR@ +HAVE_ERROR_AT_LINE = @HAVE_ERROR_AT_LINE@ +HAVE_ERROR_H = @HAVE_ERROR_H@ HAVE_EUIDACCESS = @HAVE_EUIDACCESS@ HAVE_EXECVPE = @HAVE_EXECVPE@ HAVE_EXPLICIT_BZERO = @HAVE_EXPLICIT_BZERO@ @@ -2320,12 +2480,15 @@ HAVE_GETLOGIN = @HAVE_GETLOGIN@ HAVE_GETOPT_H = @HAVE_GETOPT_H@ HAVE_GETPAGESIZE = @HAVE_GETPAGESIZE@ HAVE_GETPASS = @HAVE_GETPASS@ +HAVE_GETPROGNAME = @HAVE_GETPROGNAME@ HAVE_GETRANDOM = @HAVE_GETRANDOM@ HAVE_GETSUBOPT = @HAVE_GETSUBOPT@ HAVE_GETTIMEOFDAY = @HAVE_GETTIMEOFDAY@ HAVE_GETUMASK = @HAVE_GETUMASK@ HAVE_GRANTPT = @HAVE_GRANTPT@ HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@ +HAVE_IMAXABS = @HAVE_IMAXABS@ +HAVE_IMAXDIV = @HAVE_IMAXDIV@ HAVE_IMAXDIV_T = @HAVE_IMAXDIV_T@ HAVE_INITSTATE = @HAVE_INITSTATE@ HAVE_INTTYPES_H = @HAVE_INTTYPES_H@ @@ -2353,6 +2516,7 @@ HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@ HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@ HAVE_MBTOWC = @HAVE_MBTOWC@ HAVE_MEMPCPY = @HAVE_MEMPCPY@ +HAVE_MEMSET_EXPLICIT = @HAVE_MEMSET_EXPLICIT@ HAVE_MKDIRAT = @HAVE_MKDIRAT@ HAVE_MKDTEMP = @HAVE_MKDTEMP@ HAVE_MKFIFO = @HAVE_MKFIFO@ @@ -2510,9 +2674,11 @@ HAVE_SYS_TYPES_H = @HAVE_SYS_TYPES_H@ HAVE_SYS_UIO_H = @HAVE_SYS_UIO_H@ HAVE_TIMEGM = @HAVE_TIMEGM@ HAVE_TIMESPEC_GET = @HAVE_TIMESPEC_GET@ +HAVE_TIMESPEC_GETRES = @HAVE_TIMESPEC_GETRES@ HAVE_TIMEZONE_T = @HAVE_TIMEZONE_T@ HAVE_TYPE_VOLATILE_SIG_ATOMIC_T = @HAVE_TYPE_VOLATILE_SIG_ATOMIC_T@ HAVE_UNISTD_H = @HAVE_UNISTD_H@ +HAVE_UNISTRING_WOE32DLL_H = @HAVE_UNISTRING_WOE32DLL_H@ HAVE_UNLINKAT = @HAVE_UNLINKAT@ HAVE_UNLOCKPT = @HAVE_UNLOCKPT@ HAVE_USLEEP = @HAVE_USLEEP@ @@ -2562,7 +2728,6 @@ HAVE_WMEMPCPY = @HAVE_WMEMPCPY@ HAVE_WMEMSET = @HAVE_WMEMSET@ HAVE_WS2TCPIP_H = @HAVE_WS2TCPIP_H@ HAVE_XLOCALE_H = @HAVE_XLOCALE_H@ -HAVE__BOOL = @HAVE__BOOL@ HAVE__EXIT = @HAVE__EXIT@ HELP2MAN = @HELP2MAN@ HOST_CPU = @HOST_CPU@ @@ -2628,15 +2793,20 @@ LTLIBOBJS = @LTLIBOBJS@ LTLIBSIGSEGV = @LTLIBSIGSEGV@ LTLIBTHREAD = @LTLIBTHREAD@ MAKEINFO = @MAKEINFO@ +MBRTOWC_LIB = @MBRTOWC_LIB@ MKDIR_P = @MKDIR_P@ MSGFMT = @MSGFMT@ MSGFMT_015 = @MSGFMT_015@ MSGMERGE = @MSGMERGE@ +NANOSLEEP_LIB = @NANOSLEEP_LIB@ NETINET_IN_H = @NETINET_IN_H@ NEXT_ARPA_INET_H = @NEXT_ARPA_INET_H@ +NEXT_ASSERT_H = @NEXT_ASSERT_H@ NEXT_AS_FIRST_DIRECTIVE_ARPA_INET_H = @NEXT_AS_FIRST_DIRECTIVE_ARPA_INET_H@ +NEXT_AS_FIRST_DIRECTIVE_ASSERT_H = @NEXT_AS_FIRST_DIRECTIVE_ASSERT_H@ NEXT_AS_FIRST_DIRECTIVE_CTYPE_H = @NEXT_AS_FIRST_DIRECTIVE_CTYPE_H@ NEXT_AS_FIRST_DIRECTIVE_ERRNO_H = @NEXT_AS_FIRST_DIRECTIVE_ERRNO_H@ +NEXT_AS_FIRST_DIRECTIVE_ERROR_H = @NEXT_AS_FIRST_DIRECTIVE_ERROR_H@ NEXT_AS_FIRST_DIRECTIVE_FCNTL_H = @NEXT_AS_FIRST_DIRECTIVE_FCNTL_H@ NEXT_AS_FIRST_DIRECTIVE_FLOAT_H = @NEXT_AS_FIRST_DIRECTIVE_FLOAT_H@ NEXT_AS_FIRST_DIRECTIVE_FNMATCH_H = @NEXT_AS_FIRST_DIRECTIVE_FNMATCH_H@ @@ -2672,6 +2842,7 @@ NEXT_AS_FIRST_DIRECTIVE_WCHAR_H = @NEXT_AS_FIRST_DIRECTIVE_WCHAR_H@ NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H = @NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H@ NEXT_CTYPE_H = @NEXT_CTYPE_H@ NEXT_ERRNO_H = @NEXT_ERRNO_H@ +NEXT_ERROR_H = @NEXT_ERROR_H@ NEXT_FCNTL_H = @NEXT_FCNTL_H@ NEXT_FLOAT_H = @NEXT_FLOAT_H@ NEXT_FNMATCH_H = @NEXT_FNMATCH_H@ @@ -2714,27 +2885,35 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ POSUB = @POSUB@ PRAGMA_COLUMNS = @PRAGMA_COLUMNS@ PRAGMA_SYSTEM_HEADER = @PRAGMA_SYSTEM_HEADER@ PRIPTR_PREFIX = @PRIPTR_PREFIX@ PR_PROGRAM = @PR_PROGRAM@ PTHREAD_H_DEFINES_STRUCT_TIMESPEC = @PTHREAD_H_DEFINES_STRUCT_TIMESPEC@ +PTHREAD_SIGMASK_LIB = @PTHREAD_SIGMASK_LIB@ PTRDIFF_T_SUFFIX = @PTRDIFF_T_SUFFIX@ RANLIB = @RANLIB@ REPLACE_ACCESS = @REPLACE_ACCESS@ REPLACE_ALIGNED_ALLOC = @REPLACE_ALIGNED_ALLOC@ REPLACE_BTOWC = @REPLACE_BTOWC@ -REPLACE_CALLOC = @REPLACE_CALLOC@ +REPLACE_CALLOC_FOR_CALLOC_GNU = @REPLACE_CALLOC_FOR_CALLOC_GNU@ +REPLACE_CALLOC_FOR_CALLOC_POSIX = @REPLACE_CALLOC_FOR_CALLOC_POSIX@ REPLACE_CANONICALIZE_FILE_NAME = @REPLACE_CANONICALIZE_FILE_NAME@ +REPLACE_CHMOD = @REPLACE_CHMOD@ REPLACE_CHOWN = @REPLACE_CHOWN@ REPLACE_CLOSE = @REPLACE_CLOSE@ +REPLACE_COPY_FILE_RANGE = @REPLACE_COPY_FILE_RANGE@ REPLACE_CREAT = @REPLACE_CREAT@ REPLACE_CTIME = @REPLACE_CTIME@ REPLACE_DPRINTF = @REPLACE_DPRINTF@ REPLACE_DUP = @REPLACE_DUP@ REPLACE_DUP2 = @REPLACE_DUP2@ +REPLACE_DUP3 = @REPLACE_DUP3@ REPLACE_DUPLOCALE = @REPLACE_DUPLOCALE@ +REPLACE_ERROR = @REPLACE_ERROR@ +REPLACE_ERROR_AT_LINE = @REPLACE_ERROR_AT_LINE@ REPLACE_EXECL = @REPLACE_EXECL@ REPLACE_EXECLE = @REPLACE_EXECLE@ REPLACE_EXECLP = @REPLACE_EXECLP@ @@ -2747,11 +2926,13 @@ REPLACE_FCHMODAT = @REPLACE_FCHMODAT@ REPLACE_FCHOWNAT = @REPLACE_FCHOWNAT@ REPLACE_FCLOSE = @REPLACE_FCLOSE@ REPLACE_FCNTL = @REPLACE_FCNTL@ +REPLACE_FDATASYNC = @REPLACE_FDATASYNC@ REPLACE_FDOPEN = @REPLACE_FDOPEN@ REPLACE_FFLUSH = @REPLACE_FFLUSH@ REPLACE_FFSLL = @REPLACE_FFSLL@ REPLACE_FNMATCH = @REPLACE_FNMATCH@ REPLACE_FOPEN = @REPLACE_FOPEN@ +REPLACE_FOPEN_FOR_FOPEN_GNU = @REPLACE_FOPEN_FOR_FOPEN_GNU@ REPLACE_FPRINTF = @REPLACE_FPRINTF@ REPLACE_FPURGE = @REPLACE_FPURGE@ REPLACE_FREE = @REPLACE_FREE@ @@ -2769,17 +2950,24 @@ REPLACE_GETCWD = @REPLACE_GETCWD@ REPLACE_GETDELIM = @REPLACE_GETDELIM@ REPLACE_GETDOMAINNAME = @REPLACE_GETDOMAINNAME@ REPLACE_GETDTABLESIZE = @REPLACE_GETDTABLESIZE@ +REPLACE_GETENTROPY = @REPLACE_GETENTROPY@ REPLACE_GETGROUPS = @REPLACE_GETGROUPS@ REPLACE_GETLINE = @REPLACE_GETLINE@ +REPLACE_GETLOADAVG = @REPLACE_GETLOADAVG@ REPLACE_GETLOGIN_R = @REPLACE_GETLOGIN_R@ REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@ REPLACE_GETPASS = @REPLACE_GETPASS@ +REPLACE_GETPASS_FOR_GETPASS_GNU = @REPLACE_GETPASS_FOR_GETPASS_GNU@ +REPLACE_GETPROGNAME = @REPLACE_GETPROGNAME@ REPLACE_GETRANDOM = @REPLACE_GETRANDOM@ +REPLACE_GETSUBOPT = @REPLACE_GETSUBOPT@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@ REPLACE_GMTIME = @REPLACE_GMTIME@ REPLACE_ICONV = @REPLACE_ICONV@ REPLACE_ICONV_OPEN = @REPLACE_ICONV_OPEN@ REPLACE_ICONV_UTF = @REPLACE_ICONV_UTF@ +REPLACE_IMAXABS = @REPLACE_IMAXABS@ +REPLACE_IMAXDIV = @REPLACE_IMAXDIV@ REPLACE_INET_NTOP = @REPLACE_INET_NTOP@ REPLACE_INET_PTON = @REPLACE_INET_PTON@ REPLACE_INITSTATE = @REPLACE_INITSTATE@ @@ -2798,21 +2986,27 @@ REPLACE_LOCALTIME = @REPLACE_LOCALTIME@ REPLACE_LOCALTIME_R = @REPLACE_LOCALTIME_R@ REPLACE_LSEEK = @REPLACE_LSEEK@ REPLACE_LSTAT = @REPLACE_LSTAT@ -REPLACE_MALLOC = @REPLACE_MALLOC@ +REPLACE_MALLOC_FOR_MALLOC_GNU = @REPLACE_MALLOC_FOR_MALLOC_GNU@ +REPLACE_MALLOC_FOR_MALLOC_POSIX = @REPLACE_MALLOC_FOR_MALLOC_POSIX@ REPLACE_MBRLEN = @REPLACE_MBRLEN@ REPLACE_MBRTOWC = @REPLACE_MBRTOWC@ REPLACE_MBSINIT = @REPLACE_MBSINIT@ REPLACE_MBSNRTOWCS = @REPLACE_MBSNRTOWCS@ REPLACE_MBSRTOWCS = @REPLACE_MBSRTOWCS@ REPLACE_MBSTATE_T = @REPLACE_MBSTATE_T@ +REPLACE_MBSTOWCS = @REPLACE_MBSTOWCS@ REPLACE_MBTOWC = @REPLACE_MBTOWC@ +REPLACE_MB_CUR_MAX = @REPLACE_MB_CUR_MAX@ REPLACE_MEMCHR = @REPLACE_MEMCHR@ REPLACE_MEMMEM = @REPLACE_MEMMEM@ +REPLACE_MEMPCPY = @REPLACE_MEMPCPY@ REPLACE_MKDIR = @REPLACE_MKDIR@ REPLACE_MKFIFO = @REPLACE_MKFIFO@ REPLACE_MKFIFOAT = @REPLACE_MKFIFOAT@ REPLACE_MKNOD = @REPLACE_MKNOD@ REPLACE_MKNODAT = @REPLACE_MKNODAT@ +REPLACE_MKOSTEMP = @REPLACE_MKOSTEMP@ +REPLACE_MKOSTEMPS = @REPLACE_MKOSTEMPS@ REPLACE_MKSTEMP = @REPLACE_MKSTEMP@ REPLACE_MKTIME = @REPLACE_MKTIME@ REPLACE_NANOSLEEP = @REPLACE_NANOSLEEP@ @@ -2823,8 +3017,10 @@ REPLACE_OBSTACK_PRINTF = @REPLACE_OBSTACK_PRINTF@ REPLACE_OPEN = @REPLACE_OPEN@ REPLACE_OPENAT = @REPLACE_OPENAT@ REPLACE_PERROR = @REPLACE_PERROR@ +REPLACE_PIPE2 = @REPLACE_PIPE2@ REPLACE_POPEN = @REPLACE_POPEN@ REPLACE_POSIX_MEMALIGN = @REPLACE_POSIX_MEMALIGN@ +REPLACE_POSIX_OPENPT = @REPLACE_POSIX_OPENPT@ REPLACE_PREAD = @REPLACE_PREAD@ REPLACE_PRINTF = @REPLACE_PRINTF@ REPLACE_PSELECT = @REPLACE_PSELECT@ @@ -2891,8 +3087,9 @@ REPLACE_RANDOM_R = @REPLACE_RANDOM_R@ REPLACE_READ = @REPLACE_READ@ REPLACE_READLINK = @REPLACE_READLINK@ REPLACE_READLINKAT = @REPLACE_READLINKAT@ -REPLACE_REALLOC = @REPLACE_REALLOC@ REPLACE_REALLOCARRAY = @REPLACE_REALLOCARRAY@ +REPLACE_REALLOC_FOR_REALLOC_GNU = @REPLACE_REALLOC_FOR_REALLOC_GNU@ +REPLACE_REALLOC_FOR_REALLOC_POSIX = @REPLACE_REALLOC_FOR_REALLOC_POSIX@ REPLACE_REALPATH = @REPLACE_REALPATH@ REPLACE_REMOVE = @REPLACE_REMOVE@ REPLACE_RENAME = @REPLACE_RENAME@ @@ -2901,6 +3098,7 @@ REPLACE_RMDIR = @REPLACE_RMDIR@ REPLACE_SCHED_YIELD = @REPLACE_SCHED_YIELD@ REPLACE_SELECT = @REPLACE_SELECT@ REPLACE_SETENV = @REPLACE_SETENV@ +REPLACE_SETHOSTNAME = @REPLACE_SETHOSTNAME@ REPLACE_SETLOCALE = @REPLACE_SETLOCALE@ REPLACE_SETSTATE = @REPLACE_SETSTATE@ REPLACE_SLEEP = @REPLACE_SLEEP@ @@ -2909,6 +3107,7 @@ REPLACE_SPRINTF = @REPLACE_SPRINTF@ REPLACE_STAT = @REPLACE_STAT@ REPLACE_STDIO_READ_FUNCS = @REPLACE_STDIO_READ_FUNCS@ REPLACE_STDIO_WRITE_FUNCS = @REPLACE_STDIO_WRITE_FUNCS@ +REPLACE_STPCPY = @REPLACE_STPCPY@ REPLACE_STPNCPY = @REPLACE_STPNCPY@ REPLACE_STRCASESTR = @REPLACE_STRCASESTR@ REPLACE_STRCHRNUL = @REPLACE_STRCHRNUL@ @@ -2935,7 +3134,9 @@ REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@ REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@ REPLACE_SYMLINK = @REPLACE_SYMLINK@ REPLACE_SYMLINKAT = @REPLACE_SYMLINKAT@ +REPLACE_TIME = @REPLACE_TIME@ REPLACE_TIMEGM = @REPLACE_TIMEGM@ +REPLACE_TIMESPEC_GET = @REPLACE_TIMESPEC_GET@ REPLACE_TMPFILE = @REPLACE_TMPFILE@ REPLACE_TOWLOWER = @REPLACE_TOWLOWER@ REPLACE_TRUNCATE = @REPLACE_TRUNCATE@ @@ -2953,25 +3154,33 @@ REPLACE_VPRINTF = @REPLACE_VPRINTF@ REPLACE_VSNPRINTF = @REPLACE_VSNPRINTF@ REPLACE_VSPRINTF = @REPLACE_VSPRINTF@ REPLACE_WCRTOMB = @REPLACE_WCRTOMB@ +REPLACE_WCSCMP = @REPLACE_WCSCMP@ REPLACE_WCSFTIME = @REPLACE_WCSFTIME@ +REPLACE_WCSNCMP = @REPLACE_WCSNCMP@ REPLACE_WCSNRTOMBS = @REPLACE_WCSNRTOMBS@ REPLACE_WCSRTOMBS = @REPLACE_WCSRTOMBS@ +REPLACE_WCSSTR = @REPLACE_WCSSTR@ REPLACE_WCSTOK = @REPLACE_WCSTOK@ REPLACE_WCSWIDTH = @REPLACE_WCSWIDTH@ REPLACE_WCTOB = @REPLACE_WCTOB@ REPLACE_WCTOMB = @REPLACE_WCTOMB@ REPLACE_WCWIDTH = @REPLACE_WCWIDTH@ +REPLACE_WMEMCMP = @REPLACE_WMEMCMP@ +REPLACE_WMEMPCPY = @REPLACE_WMEMPCPY@ REPLACE_WRITE = @REPLACE_WRITE@ +REPLACE__EXIT = @REPLACE__EXIT@ +SCHED_YIELD_LIB = @SCHED_YIELD_LIB@ SED = @SED@ +SELECT_LIB = @SELECT_LIB@ +SETLOCALE_NULL_LIB = @SETLOCALE_NULL_LIB@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SIGSEGV_H = @SIGSEGV_H@ SIG_ATOMIC_T_SUFFIX = @SIG_ATOMIC_T_SUFFIX@ SIZE_T_SUFFIX = @SIZE_T_SUFFIX@ SRC_VERSION_C = @SRC_VERSION_C@ -STDALIGN_H = @STDALIGN_H@ STDARG_H = @STDARG_H@ -STDBOOL_H = @STDBOOL_H@ +STDCKDINT_H = @STDCKDINT_H@ STDDEF_H = @STDDEF_H@ STDINT_H = @STDINT_H@ STRIP = @STRIP@ @@ -3009,8 +3218,10 @@ ac_ct_CC = @ac_ct_CC@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ +am__rm_f_notfound = @am__rm_f_notfound@ am__tar = @am__tar@ am__untar = @am__untar@ +am__xargs_n = @am__xargs_n@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ @@ -3023,8 +3234,10 @@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ +gl_LIBOBJDEPS = @gl_LIBOBJDEPS@ gl_LIBOBJS = @gl_LIBOBJS@ gl_LTLIBOBJS = @gl_LTLIBOBJS@ +gltests_LIBOBJDEPS = @gltests_LIBOBJDEPS@ gltests_LIBOBJS = @gltests_LIBOBJS@ gltests_LTLIBOBJS = @gltests_LTLIBOBJS@ gltests_WITNESS = @gltests_WITNESS@ @@ -3057,7 +3270,7 @@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ -AUTOMAKE_OPTIONS = 1.11 foreign subdir-objects +AUTOMAKE_OPTIONS = 1.14 foreign subdir-objects SUBDIRS = . TESTS_ENVIRONMENT = EXEEXT='@EXEEXT@' srcdir='$(srcdir)' \ LOCALE_FR='@LOCALE_FR@' LOCALE_FR_UTF8='@LOCALE_FR_UTF8@' \ @@ -3075,55 +3288,58 @@ TESTS_ENVIRONMENT = EXEEXT='@EXEEXT@' srcdir='$(srcdir)' \ LOCALE_ZH_CN='@LOCALE_ZH_CN@' \ LOCALE_FR_UTF8='@LOCALE_FR_UTF8@' \ LOCALE_ZH_CN='@LOCALE_ZH_CN@' LOCALE_FR='@LOCALE_FR@' \ - LOCALE_FR_UTF8='@LOCALE_FR_UTF8@' abs_aux_dir='$(abs_aux_dir)' \ + LOCALE_FR_UTF8='@LOCALE_FR_UTF8@' \ + LOCALE_FR_UTF8='@LOCALE_FR_UTF8@' \ + LOCALE_ZH_CN='@LOCALE_ZH_CN@' abs_aux_dir='$(abs_aux_dir)' \ abs_aux_dir='$(abs_aux_dir)' MAKE='$(MAKE)' \ LOCALE_FR='@LOCALE_FR@' LOCALE_FR_UTF8='@LOCALE_FR_UTF8@' \ LOCALE_JA='@LOCALE_JA@' LOCALE_ZH_CN='@LOCALE_ZH_CN@' noinst_HEADERS = noinst_LIBRARIES = check_LIBRARIES = libtests.a -EXTRA_DIST = accept.c w32sock.h test-accept.c signature.h macros.h \ - alloca.c test-alloca-opt.c test-areadlink.h test-areadlink.c \ - macros.h test-argmatch.c macros.h arpa_inet.in.h \ - test-arpa_inet.c atoll.c test-binary-io.sh test-binary-io.c \ - macros.h bind.c w32sock.h test-bind.c signature.h macros.h \ - test-bitrotate.c macros.h test-btowc1.sh test-btowc2.sh \ - test-btowc.c signature.h macros.h test-c-ctype.c macros.h \ - test-c-stack.c test-c-stack.sh test-c-stack2.sh macros.h \ - test-c-strcase.sh test-c-strcasecmp.c test-c-strncasecmp.c \ - macros.h test-calloc-gnu.c macros.h test-cloexec.c macros.h \ - test-close.c signature.h macros.h connect.c w32sock.h \ - test-connect.c signature.h macros.h test-ctype.c \ - test-dirname.c test-dup2.c signature.h macros.h \ - test-dynarray.c macros.h test-environ.c test-errno.c \ - test-exclude.c test-exclude1.sh test-exclude2.sh \ +EXTRA_DIST = w32sock.h test-accept.c signature.h macros.h \ + test-alignasof.c macros.h alloca.c test-alloca-opt.c \ + test-areadlink.h test-areadlink.c macros.h test-argmatch.c \ + macros.h arpa_inet.in.h test-arpa_inet.c test-assert.c \ + test-binary-io.sh test-binary-io.c macros.h w32sock.h \ + test-bind.c signature.h macros.h test-bitrotate.c macros.h \ + test-btowc1.sh test-btowc2.sh test-btowc3.sh test-btowc.c \ + signature.h macros.h test-c-ctype.c macros.h test-c-stack.c \ + test-c-stack.sh test-c-stack2.sh macros.h test-c-strcase.sh \ + test-c-strcasecmp.c test-c-strncasecmp.c macros.h \ + str-two-way.h test-c-strcasestr.c macros.h test-calloc-gnu.c \ + macros.h test-cloexec.c macros.h test-close.c signature.h \ + macros.h w32sock.h test-connect.c signature.h macros.h \ + test-ctype.c test-dirname.c test-dup2.c signature.h macros.h \ + test-environ.c test-errno.c test-error.sh test-error.c \ + macros.h test-exclude.c test-exclude1.sh test-exclude2.sh \ test-exclude3.sh test-exclude4.sh test-exclude5.sh \ test-exclude6.sh test-exclude7.sh test-exclude8.sh \ - test-fcntl-h.c test-fcntl.c signature.h macros.h fdopen.c \ - test-fdopen.c signature.h macros.h test-fgetc.c signature.h \ - macros.h test-filenamecat.c test-float.c macros.h \ + test-fcntl-h.c test-fcntl.c signature.h macros.h test-fdopen.c \ + signature.h macros.h test-fgetc.c signature.h macros.h \ + test-filenamecat.c float.in.h test-float.c macros.h \ test-fnmatch-h.c test-fnmatch.c signature.h macros.h \ test-fopen-gnu.c macros.h test-fopen.h test-fopen.c \ signature.h macros.h fpucw.h test-fputc.c signature.h macros.h \ test-fread.c signature.h macros.h test-free.c macros.h \ test-freopen.c signature.h macros.h test-fstat.c signature.h \ - macros.h ftruncate.c test-ftruncate.c test-ftruncate.sh \ - signature.h macros.h test-fwrite.c signature.h macros.h \ - getcwd-lgpl.c test-getcwd-lgpl.c signature.h macros.h \ - test-getdtablesize.c signature.h macros.h macros.h signature.h \ - test-getopt-gnu.c test-getopt-main.h test-getopt.h \ - test-getopt_long.h macros.h signature.h test-getopt-posix.c \ - test-getopt-main.h test-getopt.h test-getprogname.c \ - test-getrandom.c signature.h macros.h signature.h \ - test-gettimeofday.c test-hard-locale.c locale.c test-hash.c \ - macros.h test-iconv-h.c test-iconv.c signature.h macros.h \ - test-ignore-value.c inet_pton.c test-inet_pton.c signature.h \ - macros.h test-intprops.c macros.h macros.h test-inttostr.c \ - test-inttypes.c ioctl.c w32sock.h test-ioctl.c signature.h \ - macros.h test-isblank.c signature.h macros.h test-iswblank.c \ - macros.h test-iswdigit.sh test-iswdigit.c signature.h macros.h \ + macros.h test-ftruncate.c test-ftruncate.sh signature.h \ + macros.h test-fwrite.c signature.h macros.h test-getcwd-lgpl.c \ + signature.h macros.h test-getdtablesize.c signature.h macros.h \ + macros.h signature.h test-getopt-gnu.c test-getopt-main.h \ + test-getopt.h test-getopt_long.h macros.h signature.h \ + test-getopt-posix.c test-getopt-main.h test-getopt.h \ + test-getprogname.c test-getrandom.c signature.h macros.h \ + test-gettimeofday.c signature.h macros.h test-dynarray.c \ + macros.h test-hard-locale.c locale.c test-hash.c macros.h \ + test-iconv-h.c test-iconv.c signature.h macros.h \ + test-ignore-value.c test-inet_pton.c signature.h macros.h \ + test-intprops.c macros.h macros.h test-inttostr.c \ + test-inttypes.c w32sock.h test-ioctl.c signature.h macros.h \ + test-isblank.c signature.h macros.h test-iswblank.c macros.h \ + test-iswdigit.sh test-iswdigit.c signature.h macros.h \ test-iswxdigit.sh test-iswxdigit.c signature.h macros.h \ - test-langinfo.c test-limits-h.c listen.c w32sock.h \ + test-langinfo.c test-largefile.c test-limits-h.c w32sock.h \ test-listen.c signature.h macros.h test-localcharset.c \ test-locale.c test-localeconv.c signature.h macros.h \ test-lstat.h test-lstat.c signature.h macros.h \ @@ -3136,61 +3352,63 @@ EXTRA_DIST = accept.c w32sock.h test-accept.c signature.h macros.h \ signature.h macros.h test-mbscasecmp.sh test-mbscasecmp.c \ macros.h test-mbsinit.sh test-mbsinit.c signature.h macros.h \ test-mbsrtowcs1.sh test-mbsrtowcs2.sh test-mbsrtowcs3.sh \ - test-mbsrtowcs4.sh test-mbsrtowcs.c signature.h macros.h \ - test-mbsstr1.c test-mbsstr2.sh test-mbsstr2.c test-mbsstr3.sh \ - test-mbsstr3.c macros.h test-memchr.c zerosize-ptr.h \ - signature.h macros.h test-mkdir.h test-mkdir.c signature.h \ - macros.h nanosleep.c test-nanosleep.c signature.h macros.h \ - netinet_in.in.h test-netinet_in.c test-nl_langinfo.sh \ - test-nl_langinfo.c test-nl_langinfo-mt.c signature.h macros.h \ - test-nstrftime.c macros.h test-open.h test-open.c signature.h \ - macros.h test-pathmax.c perror.c macros.h signature.h \ - test-perror.c test-perror2.c test-perror.sh pipe.c test-pipe.c \ - signature.h macros.h pthread.in.h test-pthread.c \ - pthread-thread.c test-pthread-thread.c macros.h \ - pthread_sigmask.c test-pthread_sigmask1.c \ - test-pthread_sigmask2.c signature.h macros.h putenv.c \ + test-mbsrtowcs4.sh test-mbsrtowcs5.sh test-mbsrtowcs.c \ + signature.h macros.h test-mbsstr1.c test-mbsstr2.sh \ + test-mbsstr2.c test-mbsstr3.sh test-mbsstr3.c macros.h \ + test-memchr.c zerosize-ptr.h signature.h macros.h test-mkdir.h \ + test-mkdir.c signature.h macros.h test-nanosleep.c signature.h \ + macros.h netinet_in.in.h test-netinet_in.c \ + test-nl_langinfo1.sh test-nl_langinfo2.sh test-nl_langinfo1.c \ + test-nl_langinfo2.c test-nl_langinfo-mt.c signature.h macros.h \ + test-nstrftime.c macros.h test-nullptr.c macros.h test-open.h \ + test-open.c signature.h macros.h test-pathmax.c macros.h \ + signature.h test-perror.c test-perror2.c test-perror.sh \ + test-pipe.c signature.h macros.h test-pselect.c test-select.h \ + macros.h signature.h pthread.in.h test-pthread.c \ + test-pthread-thread.c macros.h test-pthread_sigmask1.c \ + test-pthread_sigmask2.c signature.h macros.h \ test-quotearg-simple.c test-quotearg.h macros.h zerosize-ptr.h \ test-raise.c signature.h macros.h test-rawmemchr.c \ zerosize-ptr.h signature.h macros.h test-readlink.h \ test-readlink.c signature.h macros.h test-realloc-gnu.c \ macros.h test-reallocarray.c signature.h macros.h test-regex.c \ - macros.h same-inode.h sched.in.h test-sched.c select.c \ - macros.h signature.h test-select.c test-select.h \ - test-select-fd.c test-select-in.sh test-select-out.sh \ - test-select-stdin.c test-setenv.c signature.h macros.h \ - test-setlocale_null.c test-setlocale_null-mt-one.c \ - test-setlocale_null-mt-all.c setsockopt.c w32sock.h \ - test-setsockopt.c signature.h macros.h test-sh-quote.c \ - sig-handler.h sigaction.c test-sigaction.c signature.h \ - macros.h test-signal-h.c sigprocmask.c test-sigprocmask.c \ - signature.h macros.h test-sigsegv-catch-segv1.c \ - test-sigsegv-catch-segv2.c test-sigsegv-catch-stackoverflow1.c \ + macros.h same-inode.h sched.in.h test-sched.c macros.h \ + signature.h test-select.c test-select.h test-select-fd.c \ + test-select-in.sh test-select-out.sh test-select-stdin.c \ + test-setenv.c signature.h macros.h test-setlocale_null.c \ + test-setlocale_null-mt-one.c test-setlocale_null-mt-all.c \ + w32sock.h test-setsockopt.c signature.h macros.h \ + test-sh-quote.c test-signal-h.c test-sigprocmask.c signature.h \ + macros.h test-sigsegv-catch-segv1.c test-sigsegv-catch-segv2.c \ + test-sigsegv-catch-stackoverflow1.c \ test-sigsegv-catch-stackoverflow2.c altstack-util.h \ - mmap-anon-util.h sleep.c test-sleep.c signature.h macros.h \ - _Noreturn.h arg-nonnull.h c++defs.h warn-on-use.h snprintf.c \ - test-snprintf.c signature.h macros.h socket.c w32sock.h \ - w32sock.h test-sockets.c test-stat.h test-stat.c signature.h \ - macros.h test-stat-time.c macros.h nap.h test-stdalign.c \ - macros.h test-stdbool.c test-stddef.c test-stdint.c \ - test-stdio.c test-stdlib.c test-sys_wait.h test-strerror.c \ - signature.h macros.h strerror_r.c test-strerror_r.c \ - signature.h macros.h test-striconv.c macros.h test-string.c \ - test-strings.c test-strnlen.c zerosize-ptr.h signature.h \ - macros.h test-strtoimax.c signature.h macros.h test-strtoll.c \ - signature.h macros.h symlink.c test-symlink.h test-symlink.c \ - signature.h macros.h sys_ioctl.in.h test-sys_ioctl.c \ - test-sys_random.c sys_select.in.h test-sys_select.c \ - signature.h sys_socket.in.h test-sys_socket.c test-sys_stat.c \ - test-sys_time.c test-sys_types.c sys_uio.in.h test-sys_uio.c \ - test-sys_wait.c test-sys_wait.h init.sh test-init.sh \ - test-thread_self.c test-thread_create.c macros.h test-time.c \ - test-timespec.c macros.h test-unistd.c \ + mmap-anon-util.h test-sleep.c signature.h macros.h _Noreturn.h \ + arg-nonnull.h c++defs.h warn-on-use.h snprintf.c \ + test-snprintf.c signature.h macros.h w32sock.h w32sock.h \ + test-sockets.c test-stat.h test-stat.c signature.h macros.h \ + test-stat-time.c macros.h nap.h test-stdbool.c macros.h \ + test-intprops.c test-stdckdint.c test-stddef.c test-stdint.c \ + test-stdio.c nan.h macros.h test-stdlib.c test-sys_wait.h \ + test-strerror.c signature.h macros.h strerror_r.c \ + test-strerror_r.c signature.h macros.h test-striconv.c \ + macros.h test-string.c test-strings.c test-strnlen.c \ + zerosize-ptr.h signature.h macros.h test-strtoimax.c \ + signature.h macros.h test-strtoll.c signature.h macros.h \ + test-symlink.h test-symlink.c signature.h macros.h \ + sys_ioctl.in.h test-sys_ioctl.c test-sys_random.c \ + sys_select.in.h test-sys_select.c signature.h sys_socket.in.h \ + test-sys_socket.c test-sys_stat.c test-sys_time.c \ + test-sys_types.c sys_uio.in.h test-sys_uio.c test-sys_wait.c \ + test-sys_wait.h init.sh test-init.sh test-thread_self.c \ + test-thread_create.c macros.h test-time-h.c test-time.c \ + signature.h macros.h test-timespec.c macros.h test-trim1.sh \ + test-trim2.sh test-trim3.sh test-trim.c macros.h test-unistd.c \ unistr/test-u8-mbtoucr.c macros.h unistr/test-u8-uctomb.c \ macros.h uniwidth/test-uc_width.c uniwidth/test-uc_width2.c \ uniwidth/test-uc_width2.sh macros.h test-unsetenv.c \ - signature.h macros.h test-update-copyright.sh \ - test-vasnprintf.c macros.h test-vasprintf.c signature.h \ + signature.h macros.h test-update-copyright.sh asnprintf.c \ + float+.h printf-args.c printf-args.h printf-parse.c \ + printf-parse.h vasnprintf.c vasnprintf.h test-vasnprintf.c \ macros.h test-vc-list-files-git.sh test-vc-list-files-cvs.sh \ test-verify.c test-verify-try.c test-verify.sh \ test-version-etc.c test-version-etc.sh test-wchar.c \ @@ -3198,25 +3416,25 @@ EXTRA_DIST = accept.c w32sock.h test-accept.c signature.h macros.h \ test-wcrtomb-w32-2.sh test-wcrtomb-w32-3.sh \ test-wcrtomb-w32-4.sh test-wcrtomb-w32-5.sh \ test-wcrtomb-w32-6.sh test-wcrtomb-w32-7.sh test-wcrtomb-w32.c \ - signature.h macros.h wctob.c wctomb-impl.h wctomb.c \ - test-wctype-h.c macros.h test-wcwidth.c signature.h macros.h \ - windows-thread.c windows-thread.h windows-tls.c windows-tls.h \ - test-xalloc-die.c test-xalloc-die.sh test-xstdopen.c \ - test-xstdopen.sh macros.h test-xstrtoimax.c test-xstrtoimax.sh \ - xstrtol-error.h test-xstrtol.c test-xstrtoul.c test-xstrtol.sh \ - test-xvasprintf.c macros.h -BUILT_SOURCES = arpa/inet.h $(NETINET_IN_H) pthread.h sched.h \ - sys/ioctl.h sys/select.h sys/socket.h sys/uio.h + signature.h macros.h wctomb-impl.h test-wctype-h.c macros.h \ + test-wcwidth.c signature.h macros.h windows-thread.h \ + windows-tls.h test-xalloc-die.c test-xalloc-die.sh \ + test-xstdopen.c test-xstdopen.sh macros.h test-xstrtoimax.c \ + test-xstrtoimax.sh xstrtol-error.h test-xstrtol.c \ + test-xstrtoul.c test-xstrtol.sh test-year2038.c +BUILT_SOURCES = arpa/inet.h $(FLOAT_H) $(NETINET_IN_H) pthread.h \ + sched.h sys/ioctl.h sys/select.h sys/socket.h sys/uio.h SUFFIXES = # This test expects compilation of test-verify-try.c to fail, and # each time it fails, the makefile rule does not perform the usual # "mv -f $name.Tpo $name.po, so tell make clean to remove that file. MOSTLYCLEANFILES = core *.stackdump arpa/inet.h arpa/inet.h-t \ - t-c-stack.tmp t-c-stack2.tmp netinet/in.h netinet/in.h-t \ - pthread.h pthread.h-t sched.h sched.h-t sys/ioctl.h \ - sys/ioctl.h-t sys/select.h sys/select.h-t sys/socket.h \ - sys/socket.h-t sys/uio.h sys/uio.h-t .deps/test-verify-try.Tpo + t-c-stack.tmp t-c-stack2.tmp float.h float.h-t netinet/in.h \ + netinet/in.h-t pthread.h pthread.h-t sched.h sched.h-t \ + sys/ioctl.h sys/ioctl.h-t sys/select.h sys/select.h-t \ + sys/socket.h sys/socket.h-t sys/uio.h sys/uio.h-t \ + .deps/test-verify-try.Tpo MOSTLYCLEANDIRS = arpa netinet sys sys sys sys CLEANFILES = DISTCLEANFILES = @@ -3229,72 +3447,96 @@ AM_CPPFLAGS = \ -I../lib -I$(srcdir)/../lib LDADD = libtests.a ../lib/libdiffutils.a libtests.a ../lib/libdiffutils.a libtests.a $(LIBTESTS_LIBDEPS) -libtests_a_SOURCES = dtotimespec.c hash-pjw.h hash-pjw.c sig-handler.c \ - sockets.h sockets.c sys_socket.c glthread/thread.h \ - glthread/thread.c timespec-add.c timespec-sub.c \ +libtests_a_SOURCES = $(am__append_1) $(am__append_2) $(am__append_3) \ + c-strcasestr.h c-strcasestr.c $(am__append_4) dtotimespec.c \ + $(am__append_5) $(am__append_6) $(am__append_7) \ + $(am__append_8) $(am__append_9) hash-pjw.h hash-pjw.c \ + $(am__append_10) $(am__append_11) $(am__append_12) \ + $(am__append_13) $(am__append_14) $(am__append_15) \ + $(am__append_16) $(am__append_17) $(am__append_18) \ + $(am__append_19) $(am__append_20) $(am__append_21) size_max.h \ + $(am__append_22) $(am__append_23) sockets.h sockets.c \ + $(am__append_24) sys_socket.c glthread/thread.h \ + glthread/thread.c $(am__append_25) timespec-add.c \ + timespec-sub.c $(am__append_26) $(am__append_27) \ + $(am__append_28) $(am__append_29) xsize.h xsize.c \ xstrtol-error.c libtests_a_LIBADD = $(gltests_LIBOBJS) @ALLOCA@ libtests_a_DEPENDENCIES = $(gltests_LIBOBJS) @ALLOCA@ -EXTRA_libtests_a_SOURCES = accept.c alloca.c atoll.c bind.c connect.c \ - fdopen.c ftruncate.c getcwd-lgpl.c inet_pton.c ioctl.c \ - listen.c nanosleep.c perror.c pipe.c pthread-thread.c \ - pthread_sigmask.c putenv.c select.c setsockopt.c sigaction.c \ - sigprocmask.c sleep.c snprintf.c socket.c strerror_r.c \ - symlink.c wctob.c wctomb.c windows-thread.c windows-tls.c +EXTRA_libtests_a_SOURCES = alloca.c snprintf.c strerror_r.c \ + asnprintf.c printf-args.c printf-parse.c vasnprintf.c AM_LIBTOOLFLAGS = --preserve-dup-deps test_accept_LDADD = $(LDADD) @LIBSOCKET@ -test_argmatch_LDADD = $(LDADD) @LIBINTL@ $(LIB_MBRTOWC) +test_argmatch_LDADD = $(LDADD) @LIBINTL@ $(MBRTOWC_LIB) test_bind_LDADD = $(LDADD) @LIBSOCKET@ $(INET_PTON_LIB) -test_btowc_LDADD = $(LDADD) $(LIB_SETLOCALE) -test_c_ctype_LDADD = $(LDADD) $(LIB_SETLOCALE) +test_btowc_LDADD = $(LDADD) $(SETLOCALE_LIB) +test_c_ctype_LDADD = $(LDADD) $(SETLOCALE_LIB) test_c_stack_LDADD = $(LDADD) $(LIBCSTACK) @LIBINTL@ -test_c_strcasecmp_LDADD = $(LDADD) $(LIB_SETLOCALE) -test_c_strncasecmp_LDADD = $(LDADD) $(LIB_SETLOCALE) +test_c_strcasecmp_LDADD = $(LDADD) $(SETLOCALE_LIB) +test_c_strncasecmp_LDADD = $(LDADD) $(SETLOCALE_LIB) test_connect_LDADD = $(LDADD) @LIBSOCKET@ $(INET_PTON_LIB) test_dirname_LDADD = $(LDADD) @LIBINTL@ -test_exclude_LDADD = $(LDADD) $(LIBUNISTRING) @LIBINTL@ $(LIB_MBRTOWC) $(LIBTHREAD) +test_error_LDADD = $(LDADD) $(LIBINTL) +test_exclude_LDADD = $(LDADD) $(LIBUNISTRING) @LIBINTL@ $(MBRTOWC_LIB) $(LIBTHREAD) test_filenamecat_LDADD = $(LDADD) @LIBINTL@ -test_fnmatch_LDADD = $(LDADD) $(LIB_MBRTOWC) +test_fnmatch_LDADD = $(LDADD) $(MBRTOWC_LIB) + +# In 'sed', replace the pattern space with a "DO NOT EDIT" comment. +SED_HEADER_NOEDIT = s,.*,/* DO NOT EDIT! GENERATED AUTOMATICALLY! */, + +# '$(SED_HEADER_STDOUT) -e "..."' runs 'sed' but first outputs "DO NOT EDIT". +SED_HEADER_STDOUT = sed -e 1h -e '1$(SED_HEADER_NOEDIT)' -e 1G + +# '$(SED_HEADER_TO_AT_t) FILE' copies FILE to $@-t, prepending a leading +# "DO_NOT_EDIT". Although this could be done more simply via: +# SED_HEADER_TO_AT_t = $(SED_HEADER_STDOUT) > $@-t +# the -n and 'w' avoid a fork+exec, at least when GNU Make is used. +SED_HEADER_TO_AT_t = $(SED_HEADER_STDOUT) -n -e 'w $@-t' + +# Use $(gl_V_at) instead of $(AM_V_GEN) or $(AM_V_at) on a line that +gl_V_at = $(AM_V_GEN) test_getcwd_lgpl_LDADD = $(LDADD) $(LIBINTL) test_getopt_gnu_LDADD = $(LDADD) $(LIBINTL) test_getopt_posix_LDADD = $(LDADD) $(LIBINTL) test_getprogname_LDADD = $(LDADD) -test_getrandom_LDADD = $(LDADD) @LIB_GETRANDOM@ +test_getrandom_LDADD = $(LDADD) @GETRANDOM_LIB@ GPERF = gperf V_GPERF = $(V_GPERF_@AM_V@) V_GPERF_ = $(V_GPERF_@AM_DEFAULT_V@) V_GPERF_0 = @echo " GPERF " $@; -test_hard_locale_LDADD = $(LDADD) $(LIB_SETLOCALE) @LIB_HARD_LOCALE@ +test_hard_locale_LDADD = $(LDADD) $(SETLOCALE_LIB) @HARD_LOCALE_LIB@ current_locale_SOURCES = locale.c test_iconv_LDADD = $(LDADD) @LIBICONV@ test_inet_pton_LDADD = $(LDADD) @INET_PTON_LIB@ -test_iswdigit_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIB_MBRTOWC) -test_iswxdigit_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIB_MBRTOWC) +test_iswdigit_LDADD = $(LDADD) $(SETLOCALE_LIB) $(MBRTOWC_LIB) +test_iswxdigit_LDADD = $(LDADD) $(SETLOCALE_LIB) $(MBRTOWC_LIB) test_listen_LDADD = $(LDADD) @LIBSOCKET@ -test_localcharset_LDADD = $(LDADD) $(LIB_SETLOCALE) -test_mbrtowc_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIB_MBRTOWC) -test_mbscasecmp_LDADD = $(LDADD) $(LIBUNISTRING) $(LIB_SETLOCALE) $(LIB_MBRTOWC) -test_mbsinit_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIB_MBRTOWC) -test_mbsrtowcs_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIB_MBRTOWC) -test_mbsstr1_LDADD = $(LDADD) $(LIBUNISTRING) $(LIB_MBRTOWC) -test_mbsstr2_LDADD = $(LDADD) $(LIBUNISTRING) $(LIB_SETLOCALE) $(LIB_MBRTOWC) -test_mbsstr3_LDADD = $(LDADD) $(LIBUNISTRING) $(LIB_SETLOCALE) $(LIB_MBRTOWC) -test_nanosleep_LDADD = $(LDADD) $(LIB_NANOSLEEP) -test_nl_langinfo_LDADD = $(LDADD) $(LIB_SETLOCALE) -test_nl_langinfo_mt_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIBMULTITHREAD) $(LIB_NANOSLEEP) +test_localcharset_LDADD = $(LDADD) $(SETLOCALE_LIB) +test_mbrtowc_LDADD = $(LDADD) $(SETLOCALE_LIB) $(MBRTOWC_LIB) +test_mbscasecmp_LDADD = $(LDADD) $(LIBUNISTRING) $(SETLOCALE_LIB) $(MBRTOWC_LIB) +test_mbsinit_LDADD = $(LDADD) $(SETLOCALE_LIB) $(MBRTOWC_LIB) +test_mbsrtowcs_LDADD = $(LDADD) $(SETLOCALE_LIB) $(MBRTOWC_LIB) +test_mbsstr1_LDADD = $(LDADD) $(LIBUNISTRING) $(MBRTOWC_LIB) +test_mbsstr2_LDADD = $(LDADD) $(LIBUNISTRING) $(SETLOCALE_LIB) $(MBRTOWC_LIB) +test_mbsstr3_LDADD = $(LDADD) $(LIBUNISTRING) $(SETLOCALE_LIB) $(MBRTOWC_LIB) +test_nanosleep_LDADD = $(LDADD) $(NANOSLEEP_LIB) +test_nl_langinfo1_LDADD = $(LDADD) $(SETLOCALE_LIB) +test_nl_langinfo2_LDADD = $(LDADD) $(SETLOCALE_LIB) +test_nl_langinfo_mt_LDADD = $(LDADD) $(SETLOCALE_LIB) $(LIBMULTITHREAD) $(NANOSLEEP_LIB) +test_pselect_LDADD = $(LDADD) @SELECT_LIB@ @LIBSOCKET@ @PTHREAD_SIGMASK_LIB@ $(INET_PTON_LIB) test_pthread_thread_LDADD = $(LDADD) @LIBPMULTITHREAD@ -test_pthread_sigmask1_LDADD = $(LDADD) @LIB_PTHREAD_SIGMASK@ -test_pthread_sigmask2_LDADD = $(LDADD) @LIB_PTHREAD_SIGMASK@ @LIBMULTITHREAD@ -test_quotearg_simple_LDADD = $(LDADD) @LIBINTL@ $(LIB_MBRTOWC) -test_regex_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIB_MBRTOWC) @LIBINTL@ $(LIBTHREAD) -test_select_LDADD = $(LDADD) @LIB_SELECT@ @LIBSOCKET@ $(INET_PTON_LIB) -test_select_fd_LDADD = $(LDADD) @LIB_SELECT@ -test_select_stdin_LDADD = $(LDADD) @LIB_SELECT@ -test_setlocale_null_LDADD = $(LDADD) @LIB_SETLOCALE_NULL@ -test_setlocale_null_mt_one_LDADD = $(LDADD) @LIB_SETLOCALE_NULL@ $(LIBMULTITHREAD) $(LIB_NANOSLEEP) -test_setlocale_null_mt_all_LDADD = $(LDADD) @LIB_SETLOCALE_NULL@ $(LIBMULTITHREAD) $(LIB_NANOSLEEP) +test_pthread_sigmask1_LDADD = $(LDADD) @PTHREAD_SIGMASK_LIB@ +test_pthread_sigmask2_LDADD = $(LDADD) @PTHREAD_SIGMASK_LIB@ @LIBMULTITHREAD@ +test_quotearg_simple_LDADD = $(LDADD) @LIBINTL@ $(MBRTOWC_LIB) +test_regex_LDADD = $(LDADD) $(SETLOCALE_LIB) $(MBRTOWC_LIB) @LIBINTL@ $(LIBTHREAD) +test_select_LDADD = $(LDADD) @SELECT_LIB@ @LIBSOCKET@ $(INET_PTON_LIB) +test_select_fd_LDADD = $(LDADD) @SELECT_LIB@ +test_select_stdin_LDADD = $(LDADD) @SELECT_LIB@ +test_setlocale_null_LDADD = $(LDADD) @SETLOCALE_NULL_LIB@ +test_setlocale_null_mt_one_LDADD = $(LDADD) @SETLOCALE_NULL_LIB@ $(LIBMULTITHREAD) $(NANOSLEEP_LIB) +test_setlocale_null_mt_all_LDADD = $(LDADD) @SETLOCALE_NULL_LIB@ $(LIBMULTITHREAD) $(NANOSLEEP_LIB) test_setsockopt_LDADD = $(LDADD) @LIBSOCKET@ -test_sh_quote_LDADD = $(LDADD) @LIBINTL@ $(LIB_MBRTOWC) +test_sh_quote_LDADD = $(LDADD) @LIBINTL@ $(MBRTOWC_LIB) test_sigsegv_catch_segv1_LDADD = $(LDADD) $(LIBSIGSEGV) test_sigsegv_catch_segv2_LDADD = $(LDADD) $(LIBSIGSEGV) test_sigsegv_catch_stackoverflow1_LDADD = $(LDADD) $(LIBSIGSEGV) @@ -3321,10 +3563,11 @@ CXXDEFS_H = $(srcdir)/c++defs.h WARN_ON_USE_H = $(srcdir)/warn-on-use.h test_sockets_LDADD = $(LDADD) @LIBSOCKET@ test_stat_LDADD = $(LDADD) $(LIBINTL) -test_stat_time_LDADD = $(LDADD) $(LIB_NANOSLEEP) +test_stat_time_LDADD = $(LDADD) $(NANOSLEEP_LIB) test_striconv_LDADD = $(LDADD) @LIBICONV@ test_thread_self_LDADD = $(LDADD) @LIBTHREAD@ test_thread_create_LDADD = $(LDADD) @LIBMULTITHREAD@ +test_trim_LDADD = $(LDADD) $(LIBUNISTRING) @LIBINTL@ $(MBRTOWC_LIB) test_u8_mbtoucr_SOURCES = unistr/test-u8-mbtoucr.c test_u8_mbtoucr_LDADD = $(LDADD) $(LIBUNISTRING) test_u8_uctomb_SOURCES = unistr/test-u8-uctomb.c @@ -3334,14 +3577,13 @@ test_uc_width_LDADD = $(LDADD) $(LIBUNISTRING) test_uc_width2_SOURCES = uniwidth/test-uc_width2.c test_uc_width2_LDADD = $(LDADD) $(LIBUNISTRING) test_version_etc_LDADD = $(LDADD) @LIBINTL@ -test_wcrtomb_LDADD = $(LDADD) $(LIB_SETLOCALE) -test_wcwidth_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIBUNISTRING) +test_wcrtomb_LDADD = $(LDADD) $(SETLOCALE_LIB) +test_wcwidth_LDADD = $(LDADD) $(SETLOCALE_LIB) $(LIBUNISTRING) test_xalloc_die_LDADD = $(LDADD) @LIBINTL@ test_xstdopen_LDADD = $(LDADD) @LIBINTL@ test_xstrtoimax_LDADD = $(LDADD) @LIBINTL@ test_xstrtol_LDADD = $(LDADD) @LIBINTL@ test_xstrtoul_LDADD = $(LDADD) @LIBINTL@ -test_xvasprintf_LDADD = $(LDADD) @LIBINTL@ all: $(BUILT_SOURCES) $(MAKE) $(AM_MAKEFLAGS) all-recursive @@ -3379,29 +3621,29 @@ $(ACLOCAL_M4): $(am__aclocal_m4_deps) $(am__aclocal_m4_deps): clean-checkPROGRAMS: - -test -z "$(check_PROGRAMS)" || rm -f $(check_PROGRAMS) + -$(am__rm_f) $(check_PROGRAMS) clean-noinstPROGRAMS: - -test -z "$(noinst_PROGRAMS)" || rm -f $(noinst_PROGRAMS) + -$(am__rm_f) $(noinst_PROGRAMS) clean-checkLIBRARIES: - -test -z "$(check_LIBRARIES)" || rm -f $(check_LIBRARIES) + -$(am__rm_f) $(check_LIBRARIES) clean-noinstLIBRARIES: - -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) + -$(am__rm_f) $(noinst_LIBRARIES) glthread/$(am__dirstamp): @$(MKDIR_P) glthread - @: > glthread/$(am__dirstamp) + @: >>glthread/$(am__dirstamp) glthread/$(DEPDIR)/$(am__dirstamp): @$(MKDIR_P) glthread/$(DEPDIR) - @: > glthread/$(DEPDIR)/$(am__dirstamp) + @: >>glthread/$(DEPDIR)/$(am__dirstamp) glthread/thread.$(OBJEXT): glthread/$(am__dirstamp) \ glthread/$(DEPDIR)/$(am__dirstamp) libtests.a: $(libtests_a_OBJECTS) $(libtests_a_DEPENDENCIES) $(EXTRA_libtests_a_DEPENDENCIES) $(AM_V_at)-rm -f libtests.a $(AM_V_AR)$(libtests_a_AR) libtests.a $(libtests_a_OBJECTS) $(libtests_a_LIBADD) - $(AM_V_at)$(RANLIB) libtests.a + $(AM_V_at)$(libtests_a_RANLIB) libtests.a current-locale$(EXEEXT): $(current_locale_OBJECTS) $(current_locale_DEPENDENCIES) $(EXTRA_current_locale_DEPENDENCIES) @rm -f current-locale$(EXEEXT) @@ -3411,6 +3653,10 @@ test-accept$(EXEEXT): $(test_accept_OBJECTS) $(test_accept_DEPENDENCIES) $(EXTRA @rm -f test-accept$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_accept_OBJECTS) $(test_accept_LDADD) $(LIBS) +test-alignasof$(EXEEXT): $(test_alignasof_OBJECTS) $(test_alignasof_DEPENDENCIES) $(EXTRA_test_alignasof_DEPENDENCIES) + @rm -f test-alignasof$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(test_alignasof_OBJECTS) $(test_alignasof_LDADD) $(LIBS) + test-alloca-opt$(EXEEXT): $(test_alloca_opt_OBJECTS) $(test_alloca_opt_DEPENDENCIES) $(EXTRA_test_alloca_opt_DEPENDENCIES) @rm -f test-alloca-opt$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_alloca_opt_OBJECTS) $(test_alloca_opt_LDADD) $(LIBS) @@ -3427,6 +3673,10 @@ test-arpa_inet$(EXEEXT): $(test_arpa_inet_OBJECTS) $(test_arpa_inet_DEPENDENCIES @rm -f test-arpa_inet$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_arpa_inet_OBJECTS) $(test_arpa_inet_LDADD) $(LIBS) +test-assert$(EXEEXT): $(test_assert_OBJECTS) $(test_assert_DEPENDENCIES) $(EXTRA_test_assert_DEPENDENCIES) + @rm -f test-assert$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(test_assert_OBJECTS) $(test_assert_LDADD) $(LIBS) + test-binary-io$(EXEEXT): $(test_binary_io_OBJECTS) $(test_binary_io_DEPENDENCIES) $(EXTRA_test_binary_io_DEPENDENCIES) @rm -f test-binary-io$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_binary_io_OBJECTS) $(test_binary_io_LDADD) $(LIBS) @@ -3455,6 +3705,10 @@ test-c-strcasecmp$(EXEEXT): $(test_c_strcasecmp_OBJECTS) $(test_c_strcasecmp_DEP @rm -f test-c-strcasecmp$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_c_strcasecmp_OBJECTS) $(test_c_strcasecmp_LDADD) $(LIBS) +test-c-strcasestr$(EXEEXT): $(test_c_strcasestr_OBJECTS) $(test_c_strcasestr_DEPENDENCIES) $(EXTRA_test_c_strcasestr_DEPENDENCIES) + @rm -f test-c-strcasestr$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(test_c_strcasestr_OBJECTS) $(test_c_strcasestr_LDADD) $(LIBS) + test-c-strncasecmp$(EXEEXT): $(test_c_strncasecmp_OBJECTS) $(test_c_strncasecmp_DEPENDENCIES) $(EXTRA_test_c_strncasecmp_DEPENDENCIES) @rm -f test-c-strncasecmp$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_c_strncasecmp_OBJECTS) $(test_c_strncasecmp_LDADD) $(LIBS) @@ -3499,6 +3753,10 @@ test-errno$(EXEEXT): $(test_errno_OBJECTS) $(test_errno_DEPENDENCIES) $(EXTRA_te @rm -f test-errno$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_errno_OBJECTS) $(test_errno_LDADD) $(LIBS) +test-error$(EXEEXT): $(test_error_OBJECTS) $(test_error_DEPENDENCIES) $(EXTRA_test_error_DEPENDENCIES) + @rm -f test-error$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(test_error_OBJECTS) $(test_error_LDADD) $(LIBS) + test-exclude$(EXEEXT): $(test_exclude_OBJECTS) $(test_exclude_DEPENDENCIES) $(EXTRA_test_exclude_DEPENDENCIES) @rm -f test-exclude$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_exclude_OBJECTS) $(test_exclude_LDADD) $(LIBS) @@ -3659,6 +3917,10 @@ test-langinfo$(EXEEXT): $(test_langinfo_OBJECTS) $(test_langinfo_DEPENDENCIES) $ @rm -f test-langinfo$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_langinfo_OBJECTS) $(test_langinfo_LDADD) $(LIBS) +test-largefile$(EXEEXT): $(test_largefile_OBJECTS) $(test_largefile_DEPENDENCIES) $(EXTRA_test_largefile_DEPENDENCIES) + @rm -f test-largefile$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(test_largefile_OBJECTS) $(test_largefile_LDADD) $(LIBS) + test-limits-h$(EXEEXT): $(test_limits_h_OBJECTS) $(test_limits_h_DEPENDENCIES) $(EXTRA_test_limits_h_DEPENDENCIES) @rm -f test-limits-h$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_limits_h_OBJECTS) $(test_limits_h_LDADD) $(LIBS) @@ -3739,18 +4001,26 @@ test-netinet_in$(EXEEXT): $(test_netinet_in_OBJECTS) $(test_netinet_in_DEPENDENC @rm -f test-netinet_in$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_netinet_in_OBJECTS) $(test_netinet_in_LDADD) $(LIBS) -test-nl_langinfo$(EXEEXT): $(test_nl_langinfo_OBJECTS) $(test_nl_langinfo_DEPENDENCIES) $(EXTRA_test_nl_langinfo_DEPENDENCIES) - @rm -f test-nl_langinfo$(EXEEXT) - $(AM_V_CCLD)$(LINK) $(test_nl_langinfo_OBJECTS) $(test_nl_langinfo_LDADD) $(LIBS) - test-nl_langinfo-mt$(EXEEXT): $(test_nl_langinfo_mt_OBJECTS) $(test_nl_langinfo_mt_DEPENDENCIES) $(EXTRA_test_nl_langinfo_mt_DEPENDENCIES) @rm -f test-nl_langinfo-mt$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_nl_langinfo_mt_OBJECTS) $(test_nl_langinfo_mt_LDADD) $(LIBS) +test-nl_langinfo1$(EXEEXT): $(test_nl_langinfo1_OBJECTS) $(test_nl_langinfo1_DEPENDENCIES) $(EXTRA_test_nl_langinfo1_DEPENDENCIES) + @rm -f test-nl_langinfo1$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(test_nl_langinfo1_OBJECTS) $(test_nl_langinfo1_LDADD) $(LIBS) + +test-nl_langinfo2$(EXEEXT): $(test_nl_langinfo2_OBJECTS) $(test_nl_langinfo2_DEPENDENCIES) $(EXTRA_test_nl_langinfo2_DEPENDENCIES) + @rm -f test-nl_langinfo2$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(test_nl_langinfo2_OBJECTS) $(test_nl_langinfo2_LDADD) $(LIBS) + test-nstrftime$(EXEEXT): $(test_nstrftime_OBJECTS) $(test_nstrftime_DEPENDENCIES) $(EXTRA_test_nstrftime_DEPENDENCIES) @rm -f test-nstrftime$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_nstrftime_OBJECTS) $(test_nstrftime_LDADD) $(LIBS) +test-nullptr$(EXEEXT): $(test_nullptr_OBJECTS) $(test_nullptr_DEPENDENCIES) $(EXTRA_test_nullptr_DEPENDENCIES) + @rm -f test-nullptr$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(test_nullptr_OBJECTS) $(test_nullptr_LDADD) $(LIBS) + test-open$(EXEEXT): $(test_open_OBJECTS) $(test_open_DEPENDENCIES) $(EXTRA_test_open_DEPENDENCIES) @rm -f test-open$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_open_OBJECTS) $(test_open_LDADD) $(LIBS) @@ -3771,6 +4041,10 @@ test-pipe$(EXEEXT): $(test_pipe_OBJECTS) $(test_pipe_DEPENDENCIES) $(EXTRA_test_ @rm -f test-pipe$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_pipe_OBJECTS) $(test_pipe_LDADD) $(LIBS) +test-pselect$(EXEEXT): $(test_pselect_OBJECTS) $(test_pselect_DEPENDENCIES) $(EXTRA_test_pselect_DEPENDENCIES) + @rm -f test-pselect$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(test_pselect_OBJECTS) $(test_pselect_LDADD) $(LIBS) + test-pthread$(EXEEXT): $(test_pthread_OBJECTS) $(test_pthread_DEPENDENCIES) $(EXTRA_test_pthread_DEPENDENCIES) @rm -f test-pthread$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_pthread_OBJECTS) $(test_pthread_LDADD) $(LIBS) @@ -3855,10 +4129,6 @@ test-sh-quote$(EXEEXT): $(test_sh_quote_OBJECTS) $(test_sh_quote_DEPENDENCIES) $ @rm -f test-sh-quote$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_sh_quote_OBJECTS) $(test_sh_quote_LDADD) $(LIBS) -test-sigaction$(EXEEXT): $(test_sigaction_OBJECTS) $(test_sigaction_DEPENDENCIES) $(EXTRA_test_sigaction_DEPENDENCIES) - @rm -f test-sigaction$(EXEEXT) - $(AM_V_CCLD)$(LINK) $(test_sigaction_OBJECTS) $(test_sigaction_LDADD) $(LIBS) - test-signal-h$(EXEEXT): $(test_signal_h_OBJECTS) $(test_signal_h_DEPENDENCIES) $(EXTRA_test_signal_h_DEPENDENCIES) @rm -f test-signal-h$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_signal_h_OBJECTS) $(test_signal_h_LDADD) $(LIBS) @@ -3903,14 +4173,14 @@ test-stat-time$(EXEEXT): $(test_stat_time_OBJECTS) $(test_stat_time_DEPENDENCIES @rm -f test-stat-time$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_stat_time_OBJECTS) $(test_stat_time_LDADD) $(LIBS) -test-stdalign$(EXEEXT): $(test_stdalign_OBJECTS) $(test_stdalign_DEPENDENCIES) $(EXTRA_test_stdalign_DEPENDENCIES) - @rm -f test-stdalign$(EXEEXT) - $(AM_V_CCLD)$(LINK) $(test_stdalign_OBJECTS) $(test_stdalign_LDADD) $(LIBS) - test-stdbool$(EXEEXT): $(test_stdbool_OBJECTS) $(test_stdbool_DEPENDENCIES) $(EXTRA_test_stdbool_DEPENDENCIES) @rm -f test-stdbool$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_stdbool_OBJECTS) $(test_stdbool_LDADD) $(LIBS) +test-stdckdint$(EXEEXT): $(test_stdckdint_OBJECTS) $(test_stdckdint_DEPENDENCIES) $(EXTRA_test_stdckdint_DEPENDENCIES) + @rm -f test-stdckdint$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(test_stdckdint_OBJECTS) $(test_stdckdint_LDADD) $(LIBS) + test-stddef$(EXEEXT): $(test_stddef_OBJECTS) $(test_stddef_DEPENDENCIES) $(EXTRA_test_stddef_DEPENDENCIES) @rm -f test-stddef$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_stddef_OBJECTS) $(test_stddef_LDADD) $(LIBS) @@ -4011,15 +4281,23 @@ test-time$(EXEEXT): $(test_time_OBJECTS) $(test_time_DEPENDENCIES) $(EXTRA_test_ @rm -f test-time$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_time_OBJECTS) $(test_time_LDADD) $(LIBS) +test-time-h$(EXEEXT): $(test_time_h_OBJECTS) $(test_time_h_DEPENDENCIES) $(EXTRA_test_time_h_DEPENDENCIES) + @rm -f test-time-h$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(test_time_h_OBJECTS) $(test_time_h_LDADD) $(LIBS) + test-timespec$(EXEEXT): $(test_timespec_OBJECTS) $(test_timespec_DEPENDENCIES) $(EXTRA_test_timespec_DEPENDENCIES) @rm -f test-timespec$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_timespec_OBJECTS) $(test_timespec_LDADD) $(LIBS) + +test-trim$(EXEEXT): $(test_trim_OBJECTS) $(test_trim_DEPENDENCIES) $(EXTRA_test_trim_DEPENDENCIES) + @rm -f test-trim$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(test_trim_OBJECTS) $(test_trim_LDADD) $(LIBS) unistr/$(am__dirstamp): @$(MKDIR_P) unistr - @: > unistr/$(am__dirstamp) + @: >>unistr/$(am__dirstamp) unistr/$(DEPDIR)/$(am__dirstamp): @$(MKDIR_P) unistr/$(DEPDIR) - @: > unistr/$(DEPDIR)/$(am__dirstamp) + @: >>unistr/$(DEPDIR)/$(am__dirstamp) unistr/test-u8-mbtoucr.$(OBJEXT): unistr/$(am__dirstamp) \ unistr/$(DEPDIR)/$(am__dirstamp) @@ -4034,10 +4312,10 @@ test-u8-uctomb$(EXEEXT): $(test_u8_uctomb_OBJECTS) $(test_u8_uctomb_DEPENDENCIES $(AM_V_CCLD)$(LINK) $(test_u8_uctomb_OBJECTS) $(test_u8_uctomb_LDADD) $(LIBS) uniwidth/$(am__dirstamp): @$(MKDIR_P) uniwidth - @: > uniwidth/$(am__dirstamp) + @: >>uniwidth/$(am__dirstamp) uniwidth/$(DEPDIR)/$(am__dirstamp): @$(MKDIR_P) uniwidth/$(DEPDIR) - @: > uniwidth/$(DEPDIR)/$(am__dirstamp) + @: >>uniwidth/$(DEPDIR)/$(am__dirstamp) uniwidth/test-uc_width.$(OBJEXT): uniwidth/$(am__dirstamp) \ uniwidth/$(DEPDIR)/$(am__dirstamp) @@ -4063,10 +4341,6 @@ test-vasnprintf$(EXEEXT): $(test_vasnprintf_OBJECTS) $(test_vasnprintf_DEPENDENC @rm -f test-vasnprintf$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_vasnprintf_OBJECTS) $(test_vasnprintf_LDADD) $(LIBS) -test-vasprintf$(EXEEXT): $(test_vasprintf_OBJECTS) $(test_vasprintf_DEPENDENCIES) $(EXTRA_test_vasprintf_DEPENDENCIES) - @rm -f test-vasprintf$(EXEEXT) - $(AM_V_CCLD)$(LINK) $(test_vasprintf_OBJECTS) $(test_vasprintf_LDADD) $(LIBS) - test-verify$(EXEEXT): $(test_verify_OBJECTS) $(test_verify_DEPENDENCIES) $(EXTRA_test_verify_DEPENDENCIES) @rm -f test-verify$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_verify_OBJECTS) $(test_verify_LDADD) $(LIBS) @@ -4119,9 +4393,9 @@ test-xstrtoul$(EXEEXT): $(test_xstrtoul_OBJECTS) $(test_xstrtoul_DEPENDENCIES) $ @rm -f test-xstrtoul$(EXEEXT) $(AM_V_CCLD)$(LINK) $(test_xstrtoul_OBJECTS) $(test_xstrtoul_LDADD) $(LIBS) -test-xvasprintf$(EXEEXT): $(test_xvasprintf_OBJECTS) $(test_xvasprintf_DEPENDENCIES) $(EXTRA_test_xvasprintf_DEPENDENCIES) - @rm -f test-xvasprintf$(EXEEXT) - $(AM_V_CCLD)$(LINK) $(test_xvasprintf_OBJECTS) $(test_xvasprintf_LDADD) $(LIBS) +test-year2038$(EXEEXT): $(test_year2038_OBJECTS) $(test_year2038_DEPENDENCIES) $(EXTRA_test_year2038_DEPENDENCIES) + @rm -f test-year2038$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(test_year2038_OBJECTS) $(test_year2038_LDADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) @@ -4134,29 +4408,33 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/accept.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/alloca.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/asnprintf.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/atoll.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bind.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/c-strcasestr.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/connect.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dtotimespec.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fdopen.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/float.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ftruncate.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getcwd-lgpl.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/hash-pjw.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/inet_pton.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ioctl.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/itold.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/listen.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/locale.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nanosleep.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/perror.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pipe.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/printf-args.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/printf-parse.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pselect.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pthread-thread.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pthread_sigmask.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/putenv.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/select.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/setsockopt.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sig-handler.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sigaction.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sigprocmask.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sleep.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/snprintf.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/socket.Po@am__quote@ # am--include-marker @@ -4165,10 +4443,12 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/symlink.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sys_socket.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-accept.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-alignasof.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-alloca-opt.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-areadlink.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-argmatch.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-arpa_inet.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-assert.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-binary-io.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-bind.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-bitrotate.Po@am__quote@ # am--include-marker @@ -4176,6 +4456,7 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-c-ctype.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-c-stack.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-c-strcasecmp.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-c-strcasestr.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-c-strncasecmp.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-calloc-gnu.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-cloexec.Po@am__quote@ # am--include-marker @@ -4187,6 +4468,7 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-dynarray.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-environ.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-errno.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-error.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-exclude.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-fcntl-h.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-fcntl.Po@am__quote@ # am--include-marker @@ -4227,6 +4509,7 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-iswdigit.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-iswxdigit.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-langinfo.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-largefile.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-limits-h.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-listen.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-localcharset.Po@am__quote@ # am--include-marker @@ -4248,13 +4531,16 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-nanosleep.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-netinet_in.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-nl_langinfo-mt.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-nl_langinfo.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-nl_langinfo1.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-nl_langinfo2.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-nstrftime.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-nullptr.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-open.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-pathmax.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-perror.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-perror2.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-pipe.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-pselect.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-pthread-thread.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-pthread.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-pthread_sigmask1.Po@am__quote@ # am--include-marker @@ -4276,7 +4562,6 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-setlocale_null.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-setsockopt.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-sh-quote.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-sigaction.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-signal-h.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-sigprocmask.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-sigsegv-catch-segv1.Po@am__quote@ # am--include-marker @@ -4288,8 +4573,8 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-sockets.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-stat-time.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-stat.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-stdalign.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-stdbool.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-stdckdint.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-stddef.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-stdint.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-stdio.Po@am__quote@ # am--include-marker @@ -4314,12 +4599,13 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-sys_wait.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-thread_create.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-thread_self.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-time-h.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-time.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-timespec.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-trim.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-unistd.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-unsetenv.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-vasnprintf.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-vasprintf.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-verify-try.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-verify.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-version-etc.Po@am__quote@ # am--include-marker @@ -4333,13 +4619,16 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-xstrtoimax.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-xstrtol.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-xstrtoul.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-xvasprintf.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-year2038.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/time.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/timespec-add.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/timespec-sub.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/vasnprintf.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wctob.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wctomb.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/windows-thread.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/windows-tls.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xsize.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xstrtol-error.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@glthread/$(DEPDIR)/thread.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@unistr/$(DEPDIR)/test-u8-mbtoucr.Po@am__quote@ # am--include-marker @@ -4349,7 +4638,7 @@ distclean-compile: $(am__depfiles_remade): @$(MKDIR_P) $(@D) - @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + @: >>$@ am--depfiles: $(am__depfiles_remade) @@ -4589,17 +4878,16 @@ $(TEST_SUITE_LOG): $(TEST_LOGS) $$success || exit 1 check-TESTS: $(check_PROGRAMS) $(check_LIBRARIES) - @list='$(RECHECK_LOGS)'; test -z "$$list" || rm -f $$list - @list='$(RECHECK_LOGS:.log=.trs)'; test -z "$$list" || rm -f $$list - @test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG) + @$(am__rm_f) $(RECHECK_LOGS) + @$(am__rm_f) $(RECHECK_LOGS:.log=.trs) + @$(am__rm_f) $(TEST_SUITE_LOG) @set +e; $(am__set_TESTS_bases); \ log_list=`for i in $$bases; do echo $$i.log; done`; \ - trs_list=`for i in $$bases; do echo $$i.trs; done`; \ - log_list=`echo $$log_list`; trs_list=`echo $$trs_list`; \ + log_list=`echo $$log_list`; \ $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) TEST_LOGS="$$log_list"; \ exit $$?; recheck: all $(check_PROGRAMS) $(check_LIBRARIES) - @test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG) + @$(am__rm_f) $(TEST_SUITE_LOG) @set +e; $(am__set_TESTS_bases); \ bases=`for i in $$bases; do echo $$i; done \ | $(am__list_recheck_tests)` || exit 1; \ @@ -4616,6 +4904,13 @@ test-accept.log: test-accept$(EXEEXT) --log-file $$b.log --trs-file $$b.trs \ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ "$$tst" $(AM_TESTS_FD_REDIRECT) +test-alignasof.log: test-alignasof$(EXEEXT) + @p='test-alignasof$(EXEEXT)'; \ + b='test-alignasof'; \ + $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ + --log-file $$b.log --trs-file $$b.trs \ + $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ + "$$tst" $(AM_TESTS_FD_REDIRECT) test-alloca-opt.log: test-alloca-opt$(EXEEXT) @p='test-alloca-opt$(EXEEXT)'; \ b='test-alloca-opt'; \ @@ -4644,6 +4939,13 @@ test-arpa_inet.log: test-arpa_inet$(EXEEXT) --log-file $$b.log --trs-file $$b.trs \ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ "$$tst" $(AM_TESTS_FD_REDIRECT) +test-assert.log: test-assert$(EXEEXT) + @p='test-assert$(EXEEXT)'; \ + b='test-assert'; \ + $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ + --log-file $$b.log --trs-file $$b.trs \ + $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ + "$$tst" $(AM_TESTS_FD_REDIRECT) test-binary-io.sh.log: test-binary-io.sh @p='test-binary-io.sh'; \ b='test-binary-io.sh'; \ @@ -4679,6 +4981,13 @@ test-btowc2.sh.log: test-btowc2.sh --log-file $$b.log --trs-file $$b.trs \ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ "$$tst" $(AM_TESTS_FD_REDIRECT) +test-btowc3.sh.log: test-btowc3.sh + @p='test-btowc3.sh'; \ + b='test-btowc3.sh'; \ + $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ + --log-file $$b.log --trs-file $$b.trs \ + $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ + "$$tst" $(AM_TESTS_FD_REDIRECT) test-c-ctype.log: test-c-ctype$(EXEEXT) @p='test-c-ctype$(EXEEXT)'; \ b='test-c-ctype'; \ @@ -4707,6 +5016,13 @@ test-c-strcase.sh.log: test-c-strcase.sh --log-file $$b.log --trs-file $$b.trs \ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ "$$tst" $(AM_TESTS_FD_REDIRECT) +test-c-strcasestr.log: test-c-strcasestr$(EXEEXT) + @p='test-c-strcasestr$(EXEEXT)'; \ + b='test-c-strcasestr'; \ + $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ + --log-file $$b.log --trs-file $$b.trs \ + $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ + "$$tst" $(AM_TESTS_FD_REDIRECT) test-calloc-gnu.log: test-calloc-gnu$(EXEEXT) @p='test-calloc-gnu$(EXEEXT)'; \ b='test-calloc-gnu'; \ @@ -4756,13 +5072,6 @@ test-dup2.log: test-dup2$(EXEEXT) --log-file $$b.log --trs-file $$b.trs \ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ "$$tst" $(AM_TESTS_FD_REDIRECT) -test-dynarray.log: test-dynarray$(EXEEXT) - @p='test-dynarray$(EXEEXT)'; \ - b='test-dynarray'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) test-environ.log: test-environ$(EXEEXT) @p='test-environ$(EXEEXT)'; \ b='test-environ'; \ @@ -4777,6 +5086,13 @@ test-errno.log: test-errno$(EXEEXT) --log-file $$b.log --trs-file $$b.trs \ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ "$$tst" $(AM_TESTS_FD_REDIRECT) +test-error.sh.log: test-error.sh + @p='test-error.sh'; \ + b='test-error.sh'; \ + $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ + --log-file $$b.log --trs-file $$b.trs \ + $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ + "$$tst" $(AM_TESTS_FD_REDIRECT) test-exclude1.sh.log: test-exclude1.sh @p='test-exclude1.sh'; \ b='test-exclude1.sh'; \ @@ -5001,6 +5317,13 @@ test-gettimeofday.log: test-gettimeofday$(EXEEXT) --log-file $$b.log --trs-file $$b.trs \ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ "$$tst" $(AM_TESTS_FD_REDIRECT) +test-dynarray.log: test-dynarray$(EXEEXT) + @p='test-dynarray$(EXEEXT)'; \ + b='test-dynarray'; \ + $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ + --log-file $$b.log --trs-file $$b.trs \ + $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ + "$$tst" $(AM_TESTS_FD_REDIRECT) test-hard-locale.log: test-hard-locale$(EXEEXT) @p='test-hard-locale$(EXEEXT)'; \ b='test-hard-locale'; \ @@ -5106,6 +5429,13 @@ test-langinfo.log: test-langinfo$(EXEEXT) --log-file $$b.log --trs-file $$b.trs \ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ "$$tst" $(AM_TESTS_FD_REDIRECT) +test-largefile.log: test-largefile$(EXEEXT) + @p='test-largefile$(EXEEXT)'; \ + b='test-largefile'; \ + $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ + --log-file $$b.log --trs-file $$b.trs \ + $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ + "$$tst" $(AM_TESTS_FD_REDIRECT) test-limits-h.log: test-limits-h$(EXEEXT) @p='test-limits-h$(EXEEXT)'; \ b='test-limits-h'; \ @@ -5281,6 +5611,13 @@ test-mbsrtowcs4.sh.log: test-mbsrtowcs4.sh --log-file $$b.log --trs-file $$b.trs \ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ "$$tst" $(AM_TESTS_FD_REDIRECT) +test-mbsrtowcs5.sh.log: test-mbsrtowcs5.sh + @p='test-mbsrtowcs5.sh'; \ + b='test-mbsrtowcs5.sh'; \ + $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ + --log-file $$b.log --trs-file $$b.trs \ + $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ + "$$tst" $(AM_TESTS_FD_REDIRECT) test-mbsstr1.log: test-mbsstr1$(EXEEXT) @p='test-mbsstr1$(EXEEXT)'; \ b='test-mbsstr1'; \ @@ -5330,9 +5667,16 @@ test-netinet_in.log: test-netinet_in$(EXEEXT) --log-file $$b.log --trs-file $$b.trs \ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ "$$tst" $(AM_TESTS_FD_REDIRECT) -test-nl_langinfo.sh.log: test-nl_langinfo.sh - @p='test-nl_langinfo.sh'; \ - b='test-nl_langinfo.sh'; \ +test-nl_langinfo1.sh.log: test-nl_langinfo1.sh + @p='test-nl_langinfo1.sh'; \ + b='test-nl_langinfo1.sh'; \ + $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ + --log-file $$b.log --trs-file $$b.trs \ + $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ + "$$tst" $(AM_TESTS_FD_REDIRECT) +test-nl_langinfo2.sh.log: test-nl_langinfo2.sh + @p='test-nl_langinfo2.sh'; \ + b='test-nl_langinfo2.sh'; \ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ --log-file $$b.log --trs-file $$b.trs \ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ @@ -5351,6 +5695,13 @@ test-nstrftime.log: test-nstrftime$(EXEEXT) --log-file $$b.log --trs-file $$b.trs \ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ "$$tst" $(AM_TESTS_FD_REDIRECT) +test-nullptr.log: test-nullptr$(EXEEXT) + @p='test-nullptr$(EXEEXT)'; \ + b='test-nullptr'; \ + $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ + --log-file $$b.log --trs-file $$b.trs \ + $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ + "$$tst" $(AM_TESTS_FD_REDIRECT) test-open.log: test-open$(EXEEXT) @p='test-open$(EXEEXT)'; \ b='test-open'; \ @@ -5386,6 +5737,13 @@ test-pipe.log: test-pipe$(EXEEXT) --log-file $$b.log --trs-file $$b.trs \ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ "$$tst" $(AM_TESTS_FD_REDIRECT) +test-pselect.log: test-pselect$(EXEEXT) + @p='test-pselect$(EXEEXT)'; \ + b='test-pselect'; \ + $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ + --log-file $$b.log --trs-file $$b.trs \ + $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ + "$$tst" $(AM_TESTS_FD_REDIRECT) test-pthread.log: test-pthread$(EXEEXT) @p='test-pthread$(EXEEXT)'; \ b='test-pthread'; \ @@ -5533,13 +5891,6 @@ test-sh-quote.log: test-sh-quote$(EXEEXT) --log-file $$b.log --trs-file $$b.trs \ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ "$$tst" $(AM_TESTS_FD_REDIRECT) -test-sigaction.log: test-sigaction$(EXEEXT) - @p='test-sigaction$(EXEEXT)'; \ - b='test-sigaction'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) test-signal-h.log: test-signal-h$(EXEEXT) @p='test-signal-h$(EXEEXT)'; \ b='test-signal-h'; \ @@ -5617,16 +5968,16 @@ test-stat-time.log: test-stat-time$(EXEEXT) --log-file $$b.log --trs-file $$b.trs \ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ "$$tst" $(AM_TESTS_FD_REDIRECT) -test-stdalign.log: test-stdalign$(EXEEXT) - @p='test-stdalign$(EXEEXT)'; \ - b='test-stdalign'; \ +test-stdbool.log: test-stdbool$(EXEEXT) + @p='test-stdbool$(EXEEXT)'; \ + b='test-stdbool'; \ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ --log-file $$b.log --trs-file $$b.trs \ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ "$$tst" $(AM_TESTS_FD_REDIRECT) -test-stdbool.log: test-stdbool$(EXEEXT) - @p='test-stdbool$(EXEEXT)'; \ - b='test-stdbool'; \ +test-stdckdint.log: test-stdckdint$(EXEEXT) + @p='test-stdckdint$(EXEEXT)'; \ + b='test-stdckdint'; \ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ --log-file $$b.log --trs-file $$b.trs \ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ @@ -5806,6 +6157,13 @@ test-thread_create.log: test-thread_create$(EXEEXT) --log-file $$b.log --trs-file $$b.trs \ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ "$$tst" $(AM_TESTS_FD_REDIRECT) +test-time-h.log: test-time-h$(EXEEXT) + @p='test-time-h$(EXEEXT)'; \ + b='test-time-h'; \ + $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ + --log-file $$b.log --trs-file $$b.trs \ + $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ + "$$tst" $(AM_TESTS_FD_REDIRECT) test-time.log: test-time$(EXEEXT) @p='test-time$(EXEEXT)'; \ b='test-time'; \ @@ -5820,6 +6178,27 @@ test-timespec.log: test-timespec$(EXEEXT) --log-file $$b.log --trs-file $$b.trs \ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ "$$tst" $(AM_TESTS_FD_REDIRECT) +test-trim1.sh.log: test-trim1.sh + @p='test-trim1.sh'; \ + b='test-trim1.sh'; \ + $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ + --log-file $$b.log --trs-file $$b.trs \ + $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ + "$$tst" $(AM_TESTS_FD_REDIRECT) +test-trim2.sh.log: test-trim2.sh + @p='test-trim2.sh'; \ + b='test-trim2.sh'; \ + $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ + --log-file $$b.log --trs-file $$b.trs \ + $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ + "$$tst" $(AM_TESTS_FD_REDIRECT) +test-trim3.sh.log: test-trim3.sh + @p='test-trim3.sh'; \ + b='test-trim3.sh'; \ + $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ + --log-file $$b.log --trs-file $$b.trs \ + $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ + "$$tst" $(AM_TESTS_FD_REDIRECT) test-unistd.log: test-unistd$(EXEEXT) @p='test-unistd$(EXEEXT)'; \ b='test-unistd'; \ @@ -5876,13 +6255,6 @@ test-vasnprintf.log: test-vasnprintf$(EXEEXT) --log-file $$b.log --trs-file $$b.trs \ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ "$$tst" $(AM_TESTS_FD_REDIRECT) -test-vasprintf.log: test-vasprintf$(EXEEXT) - @p='test-vasprintf$(EXEEXT)'; \ - b='test-vasprintf'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) test-vc-list-files-git.sh.log: test-vc-list-files-git.sh @p='test-vc-list-files-git.sh'; \ b='test-vc-list-files-git.sh'; \ @@ -6023,9 +6395,9 @@ test-xstrtol.sh.log: test-xstrtol.sh --log-file $$b.log --trs-file $$b.trs \ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ "$$tst" $(AM_TESTS_FD_REDIRECT) -test-xvasprintf.log: test-xvasprintf$(EXEEXT) - @p='test-xvasprintf$(EXEEXT)'; \ - b='test-xvasprintf'; \ +test-year2038.log: test-year2038$(EXEEXT) + @p='test-year2038$(EXEEXT)'; \ + b='test-year2038'; \ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ --log-file $$b.log --trs-file $$b.trs \ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ @@ -6132,30 +6504,30 @@ install-strip: "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ fi mostlyclean-generic: - -test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES) - -test -z "$(TEST_LOGS)" || rm -f $(TEST_LOGS) - -test -z "$(TEST_LOGS:.log=.trs)" || rm -f $(TEST_LOGS:.log=.trs) - -test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG) + -$(am__rm_f) $(MOSTLYCLEANFILES) + -$(am__rm_f) $(TEST_LOGS) + -$(am__rm_f) $(TEST_LOGS:.log=.trs) + -$(am__rm_f) $(TEST_SUITE_LOG) clean-generic: - -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) + -$(am__rm_f) $(CLEANFILES) distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) - -rm -f glthread/$(DEPDIR)/$(am__dirstamp) - -rm -f glthread/$(am__dirstamp) - -rm -f unistr/$(DEPDIR)/$(am__dirstamp) - -rm -f unistr/$(am__dirstamp) - -rm -f uniwidth/$(DEPDIR)/$(am__dirstamp) - -rm -f uniwidth/$(am__dirstamp) - -test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES) + -$(am__rm_f) $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || $(am__rm_f) $(CONFIG_CLEAN_VPATH_FILES) + -$(am__rm_f) $(DISTCLEANFILES) + -$(am__rm_f) glthread/$(DEPDIR)/$(am__dirstamp) + -$(am__rm_f) glthread/$(am__dirstamp) + -$(am__rm_f) unistr/$(DEPDIR)/$(am__dirstamp) + -$(am__rm_f) unistr/$(am__dirstamp) + -$(am__rm_f) uniwidth/$(DEPDIR)/$(am__dirstamp) + -$(am__rm_f) uniwidth/$(am__dirstamp) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." - -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES) - -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES) + -$(am__rm_f) $(BUILT_SOURCES) + -$(am__rm_f) $(MAINTAINERCLEANFILES) clean: clean-recursive clean-am: clean-checkLIBRARIES clean-checkPROGRAMS clean-generic \ @@ -6163,31 +6535,35 @@ clean-am: clean-checkLIBRARIES clean-checkPROGRAMS clean-generic \ mostlyclean-am distclean: distclean-recursive - -rm -f ./$(DEPDIR)/accept.Po + -rm -f ./$(DEPDIR)/accept.Po -rm -f ./$(DEPDIR)/alloca.Po + -rm -f ./$(DEPDIR)/asnprintf.Po -rm -f ./$(DEPDIR)/atoll.Po -rm -f ./$(DEPDIR)/bind.Po + -rm -f ./$(DEPDIR)/c-strcasestr.Po -rm -f ./$(DEPDIR)/connect.Po -rm -f ./$(DEPDIR)/dtotimespec.Po -rm -f ./$(DEPDIR)/fdopen.Po + -rm -f ./$(DEPDIR)/float.Po -rm -f ./$(DEPDIR)/ftruncate.Po -rm -f ./$(DEPDIR)/getcwd-lgpl.Po -rm -f ./$(DEPDIR)/hash-pjw.Po -rm -f ./$(DEPDIR)/inet_pton.Po -rm -f ./$(DEPDIR)/ioctl.Po + -rm -f ./$(DEPDIR)/itold.Po -rm -f ./$(DEPDIR)/listen.Po -rm -f ./$(DEPDIR)/locale.Po -rm -f ./$(DEPDIR)/nanosleep.Po -rm -f ./$(DEPDIR)/perror.Po -rm -f ./$(DEPDIR)/pipe.Po + -rm -f ./$(DEPDIR)/printf-args.Po + -rm -f ./$(DEPDIR)/printf-parse.Po + -rm -f ./$(DEPDIR)/pselect.Po -rm -f ./$(DEPDIR)/pthread-thread.Po -rm -f ./$(DEPDIR)/pthread_sigmask.Po -rm -f ./$(DEPDIR)/putenv.Po -rm -f ./$(DEPDIR)/select.Po -rm -f ./$(DEPDIR)/setsockopt.Po - -rm -f ./$(DEPDIR)/sig-handler.Po - -rm -f ./$(DEPDIR)/sigaction.Po - -rm -f ./$(DEPDIR)/sigprocmask.Po -rm -f ./$(DEPDIR)/sleep.Po -rm -f ./$(DEPDIR)/snprintf.Po -rm -f ./$(DEPDIR)/socket.Po @@ -6196,10 +6572,12 @@ distclean: distclean-recursive -rm -f ./$(DEPDIR)/symlink.Po -rm -f ./$(DEPDIR)/sys_socket.Po -rm -f ./$(DEPDIR)/test-accept.Po + -rm -f ./$(DEPDIR)/test-alignasof.Po -rm -f ./$(DEPDIR)/test-alloca-opt.Po -rm -f ./$(DEPDIR)/test-areadlink.Po -rm -f ./$(DEPDIR)/test-argmatch.Po -rm -f ./$(DEPDIR)/test-arpa_inet.Po + -rm -f ./$(DEPDIR)/test-assert.Po -rm -f ./$(DEPDIR)/test-binary-io.Po -rm -f ./$(DEPDIR)/test-bind.Po -rm -f ./$(DEPDIR)/test-bitrotate.Po @@ -6207,6 +6585,7 @@ distclean: distclean-recursive -rm -f ./$(DEPDIR)/test-c-ctype.Po -rm -f ./$(DEPDIR)/test-c-stack.Po -rm -f ./$(DEPDIR)/test-c-strcasecmp.Po + -rm -f ./$(DEPDIR)/test-c-strcasestr.Po -rm -f ./$(DEPDIR)/test-c-strncasecmp.Po -rm -f ./$(DEPDIR)/test-calloc-gnu.Po -rm -f ./$(DEPDIR)/test-cloexec.Po @@ -6218,6 +6597,7 @@ distclean: distclean-recursive -rm -f ./$(DEPDIR)/test-dynarray.Po -rm -f ./$(DEPDIR)/test-environ.Po -rm -f ./$(DEPDIR)/test-errno.Po + -rm -f ./$(DEPDIR)/test-error.Po -rm -f ./$(DEPDIR)/test-exclude.Po -rm -f ./$(DEPDIR)/test-fcntl-h.Po -rm -f ./$(DEPDIR)/test-fcntl.Po @@ -6258,6 +6638,7 @@ distclean: distclean-recursive -rm -f ./$(DEPDIR)/test-iswdigit.Po -rm -f ./$(DEPDIR)/test-iswxdigit.Po -rm -f ./$(DEPDIR)/test-langinfo.Po + -rm -f ./$(DEPDIR)/test-largefile.Po -rm -f ./$(DEPDIR)/test-limits-h.Po -rm -f ./$(DEPDIR)/test-listen.Po -rm -f ./$(DEPDIR)/test-localcharset.Po @@ -6279,13 +6660,16 @@ distclean: distclean-recursive -rm -f ./$(DEPDIR)/test-nanosleep.Po -rm -f ./$(DEPDIR)/test-netinet_in.Po -rm -f ./$(DEPDIR)/test-nl_langinfo-mt.Po - -rm -f ./$(DEPDIR)/test-nl_langinfo.Po + -rm -f ./$(DEPDIR)/test-nl_langinfo1.Po + -rm -f ./$(DEPDIR)/test-nl_langinfo2.Po -rm -f ./$(DEPDIR)/test-nstrftime.Po + -rm -f ./$(DEPDIR)/test-nullptr.Po -rm -f ./$(DEPDIR)/test-open.Po -rm -f ./$(DEPDIR)/test-pathmax.Po -rm -f ./$(DEPDIR)/test-perror.Po -rm -f ./$(DEPDIR)/test-perror2.Po -rm -f ./$(DEPDIR)/test-pipe.Po + -rm -f ./$(DEPDIR)/test-pselect.Po -rm -f ./$(DEPDIR)/test-pthread-thread.Po -rm -f ./$(DEPDIR)/test-pthread.Po -rm -f ./$(DEPDIR)/test-pthread_sigmask1.Po @@ -6307,7 +6691,6 @@ distclean: distclean-recursive -rm -f ./$(DEPDIR)/test-setlocale_null.Po -rm -f ./$(DEPDIR)/test-setsockopt.Po -rm -f ./$(DEPDIR)/test-sh-quote.Po - -rm -f ./$(DEPDIR)/test-sigaction.Po -rm -f ./$(DEPDIR)/test-signal-h.Po -rm -f ./$(DEPDIR)/test-sigprocmask.Po -rm -f ./$(DEPDIR)/test-sigsegv-catch-segv1.Po @@ -6319,8 +6702,8 @@ distclean: distclean-recursive -rm -f ./$(DEPDIR)/test-sockets.Po -rm -f ./$(DEPDIR)/test-stat-time.Po -rm -f ./$(DEPDIR)/test-stat.Po - -rm -f ./$(DEPDIR)/test-stdalign.Po -rm -f ./$(DEPDIR)/test-stdbool.Po + -rm -f ./$(DEPDIR)/test-stdckdint.Po -rm -f ./$(DEPDIR)/test-stddef.Po -rm -f ./$(DEPDIR)/test-stdint.Po -rm -f ./$(DEPDIR)/test-stdio.Po @@ -6345,12 +6728,13 @@ distclean: distclean-recursive -rm -f ./$(DEPDIR)/test-sys_wait.Po -rm -f ./$(DEPDIR)/test-thread_create.Po -rm -f ./$(DEPDIR)/test-thread_self.Po + -rm -f ./$(DEPDIR)/test-time-h.Po -rm -f ./$(DEPDIR)/test-time.Po -rm -f ./$(DEPDIR)/test-timespec.Po + -rm -f ./$(DEPDIR)/test-trim.Po -rm -f ./$(DEPDIR)/test-unistd.Po -rm -f ./$(DEPDIR)/test-unsetenv.Po -rm -f ./$(DEPDIR)/test-vasnprintf.Po - -rm -f ./$(DEPDIR)/test-vasprintf.Po -rm -f ./$(DEPDIR)/test-verify-try.Po -rm -f ./$(DEPDIR)/test-verify.Po -rm -f ./$(DEPDIR)/test-version-etc.Po @@ -6364,13 +6748,16 @@ distclean: distclean-recursive -rm -f ./$(DEPDIR)/test-xstrtoimax.Po -rm -f ./$(DEPDIR)/test-xstrtol.Po -rm -f ./$(DEPDIR)/test-xstrtoul.Po - -rm -f ./$(DEPDIR)/test-xvasprintf.Po + -rm -f ./$(DEPDIR)/test-year2038.Po + -rm -f ./$(DEPDIR)/time.Po -rm -f ./$(DEPDIR)/timespec-add.Po -rm -f ./$(DEPDIR)/timespec-sub.Po + -rm -f ./$(DEPDIR)/vasnprintf.Po -rm -f ./$(DEPDIR)/wctob.Po -rm -f ./$(DEPDIR)/wctomb.Po -rm -f ./$(DEPDIR)/windows-thread.Po -rm -f ./$(DEPDIR)/windows-tls.Po + -rm -f ./$(DEPDIR)/xsize.Po -rm -f ./$(DEPDIR)/xstrtol-error.Po -rm -f glthread/$(DEPDIR)/thread.Po -rm -f unistr/$(DEPDIR)/test-u8-mbtoucr.Po @@ -6422,31 +6809,35 @@ install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-recursive - -rm -f ./$(DEPDIR)/accept.Po + -rm -f ./$(DEPDIR)/accept.Po -rm -f ./$(DEPDIR)/alloca.Po + -rm -f ./$(DEPDIR)/asnprintf.Po -rm -f ./$(DEPDIR)/atoll.Po -rm -f ./$(DEPDIR)/bind.Po + -rm -f ./$(DEPDIR)/c-strcasestr.Po -rm -f ./$(DEPDIR)/connect.Po -rm -f ./$(DEPDIR)/dtotimespec.Po -rm -f ./$(DEPDIR)/fdopen.Po + -rm -f ./$(DEPDIR)/float.Po -rm -f ./$(DEPDIR)/ftruncate.Po -rm -f ./$(DEPDIR)/getcwd-lgpl.Po -rm -f ./$(DEPDIR)/hash-pjw.Po -rm -f ./$(DEPDIR)/inet_pton.Po -rm -f ./$(DEPDIR)/ioctl.Po + -rm -f ./$(DEPDIR)/itold.Po -rm -f ./$(DEPDIR)/listen.Po -rm -f ./$(DEPDIR)/locale.Po -rm -f ./$(DEPDIR)/nanosleep.Po -rm -f ./$(DEPDIR)/perror.Po -rm -f ./$(DEPDIR)/pipe.Po + -rm -f ./$(DEPDIR)/printf-args.Po + -rm -f ./$(DEPDIR)/printf-parse.Po + -rm -f ./$(DEPDIR)/pselect.Po -rm -f ./$(DEPDIR)/pthread-thread.Po -rm -f ./$(DEPDIR)/pthread_sigmask.Po -rm -f ./$(DEPDIR)/putenv.Po -rm -f ./$(DEPDIR)/select.Po -rm -f ./$(DEPDIR)/setsockopt.Po - -rm -f ./$(DEPDIR)/sig-handler.Po - -rm -f ./$(DEPDIR)/sigaction.Po - -rm -f ./$(DEPDIR)/sigprocmask.Po -rm -f ./$(DEPDIR)/sleep.Po -rm -f ./$(DEPDIR)/snprintf.Po -rm -f ./$(DEPDIR)/socket.Po @@ -6455,10 +6846,12 @@ maintainer-clean: maintainer-clean-recursive -rm -f ./$(DEPDIR)/symlink.Po -rm -f ./$(DEPDIR)/sys_socket.Po -rm -f ./$(DEPDIR)/test-accept.Po + -rm -f ./$(DEPDIR)/test-alignasof.Po -rm -f ./$(DEPDIR)/test-alloca-opt.Po -rm -f ./$(DEPDIR)/test-areadlink.Po -rm -f ./$(DEPDIR)/test-argmatch.Po -rm -f ./$(DEPDIR)/test-arpa_inet.Po + -rm -f ./$(DEPDIR)/test-assert.Po -rm -f ./$(DEPDIR)/test-binary-io.Po -rm -f ./$(DEPDIR)/test-bind.Po -rm -f ./$(DEPDIR)/test-bitrotate.Po @@ -6466,6 +6859,7 @@ maintainer-clean: maintainer-clean-recursive -rm -f ./$(DEPDIR)/test-c-ctype.Po -rm -f ./$(DEPDIR)/test-c-stack.Po -rm -f ./$(DEPDIR)/test-c-strcasecmp.Po + -rm -f ./$(DEPDIR)/test-c-strcasestr.Po -rm -f ./$(DEPDIR)/test-c-strncasecmp.Po -rm -f ./$(DEPDIR)/test-calloc-gnu.Po -rm -f ./$(DEPDIR)/test-cloexec.Po @@ -6477,6 +6871,7 @@ maintainer-clean: maintainer-clean-recursive -rm -f ./$(DEPDIR)/test-dynarray.Po -rm -f ./$(DEPDIR)/test-environ.Po -rm -f ./$(DEPDIR)/test-errno.Po + -rm -f ./$(DEPDIR)/test-error.Po -rm -f ./$(DEPDIR)/test-exclude.Po -rm -f ./$(DEPDIR)/test-fcntl-h.Po -rm -f ./$(DEPDIR)/test-fcntl.Po @@ -6517,6 +6912,7 @@ maintainer-clean: maintainer-clean-recursive -rm -f ./$(DEPDIR)/test-iswdigit.Po -rm -f ./$(DEPDIR)/test-iswxdigit.Po -rm -f ./$(DEPDIR)/test-langinfo.Po + -rm -f ./$(DEPDIR)/test-largefile.Po -rm -f ./$(DEPDIR)/test-limits-h.Po -rm -f ./$(DEPDIR)/test-listen.Po -rm -f ./$(DEPDIR)/test-localcharset.Po @@ -6538,13 +6934,16 @@ maintainer-clean: maintainer-clean-recursive -rm -f ./$(DEPDIR)/test-nanosleep.Po -rm -f ./$(DEPDIR)/test-netinet_in.Po -rm -f ./$(DEPDIR)/test-nl_langinfo-mt.Po - -rm -f ./$(DEPDIR)/test-nl_langinfo.Po + -rm -f ./$(DEPDIR)/test-nl_langinfo1.Po + -rm -f ./$(DEPDIR)/test-nl_langinfo2.Po -rm -f ./$(DEPDIR)/test-nstrftime.Po + -rm -f ./$(DEPDIR)/test-nullptr.Po -rm -f ./$(DEPDIR)/test-open.Po -rm -f ./$(DEPDIR)/test-pathmax.Po -rm -f ./$(DEPDIR)/test-perror.Po -rm -f ./$(DEPDIR)/test-perror2.Po -rm -f ./$(DEPDIR)/test-pipe.Po + -rm -f ./$(DEPDIR)/test-pselect.Po -rm -f ./$(DEPDIR)/test-pthread-thread.Po -rm -f ./$(DEPDIR)/test-pthread.Po -rm -f ./$(DEPDIR)/test-pthread_sigmask1.Po @@ -6566,7 +6965,6 @@ maintainer-clean: maintainer-clean-recursive -rm -f ./$(DEPDIR)/test-setlocale_null.Po -rm -f ./$(DEPDIR)/test-setsockopt.Po -rm -f ./$(DEPDIR)/test-sh-quote.Po - -rm -f ./$(DEPDIR)/test-sigaction.Po -rm -f ./$(DEPDIR)/test-signal-h.Po -rm -f ./$(DEPDIR)/test-sigprocmask.Po -rm -f ./$(DEPDIR)/test-sigsegv-catch-segv1.Po @@ -6578,8 +6976,8 @@ maintainer-clean: maintainer-clean-recursive -rm -f ./$(DEPDIR)/test-sockets.Po -rm -f ./$(DEPDIR)/test-stat-time.Po -rm -f ./$(DEPDIR)/test-stat.Po - -rm -f ./$(DEPDIR)/test-stdalign.Po -rm -f ./$(DEPDIR)/test-stdbool.Po + -rm -f ./$(DEPDIR)/test-stdckdint.Po -rm -f ./$(DEPDIR)/test-stddef.Po -rm -f ./$(DEPDIR)/test-stdint.Po -rm -f ./$(DEPDIR)/test-stdio.Po @@ -6604,12 +7002,13 @@ maintainer-clean: maintainer-clean-recursive -rm -f ./$(DEPDIR)/test-sys_wait.Po -rm -f ./$(DEPDIR)/test-thread_create.Po -rm -f ./$(DEPDIR)/test-thread_self.Po + -rm -f ./$(DEPDIR)/test-time-h.Po -rm -f ./$(DEPDIR)/test-time.Po -rm -f ./$(DEPDIR)/test-timespec.Po + -rm -f ./$(DEPDIR)/test-trim.Po -rm -f ./$(DEPDIR)/test-unistd.Po -rm -f ./$(DEPDIR)/test-unsetenv.Po -rm -f ./$(DEPDIR)/test-vasnprintf.Po - -rm -f ./$(DEPDIR)/test-vasprintf.Po -rm -f ./$(DEPDIR)/test-verify-try.Po -rm -f ./$(DEPDIR)/test-verify.Po -rm -f ./$(DEPDIR)/test-version-etc.Po @@ -6623,13 +7022,16 @@ maintainer-clean: maintainer-clean-recursive -rm -f ./$(DEPDIR)/test-xstrtoimax.Po -rm -f ./$(DEPDIR)/test-xstrtol.Po -rm -f ./$(DEPDIR)/test-xstrtoul.Po - -rm -f ./$(DEPDIR)/test-xvasprintf.Po + -rm -f ./$(DEPDIR)/test-year2038.Po + -rm -f ./$(DEPDIR)/time.Po -rm -f ./$(DEPDIR)/timespec-add.Po -rm -f ./$(DEPDIR)/timespec-sub.Po + -rm -f ./$(DEPDIR)/vasnprintf.Po -rm -f ./$(DEPDIR)/wctob.Po -rm -f ./$(DEPDIR)/wctomb.Po -rm -f ./$(DEPDIR)/windows-thread.Po -rm -f ./$(DEPDIR)/windows-tls.Po + -rm -f ./$(DEPDIR)/xsize.Po -rm -f ./$(DEPDIR)/xstrtol-error.Po -rm -f glthread/$(DEPDIR)/thread.Po -rm -f unistr/$(DEPDIR)/test-u8-mbtoucr.Po @@ -6679,10 +7081,9 @@ uninstall-am: # We need the following in order to create when the system # doesn't have one. arpa/inet.h: arpa_inet.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H) $(ARG_NONNULL_H) - $(AM_V_at)$(MKDIR_P) arpa - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(AM_V_GEN)$(MKDIR_P) 'arpa' + $(AM_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ @@ -6699,34 +7100,45 @@ arpa/inet.h: arpa_inet.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON -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)/arpa_inet.in.h; \ - } > $@-t && \ - mv $@-t $@ + $(srcdir)/arpa_inet.in.h > $@-t + $(AM_V_at)mv $@-t $@ + +# We need the following in order to create when the system +# doesn't have one that works with the given compiler. +@GL_GENERATE_FLOAT_H_TRUE@float.h: float.in.h $(top_builddir)/config.status +@GL_GENERATE_FLOAT_H_TRUE@ $(gl_V_at)$(SED_HEADER_STDOUT) \ +@GL_GENERATE_FLOAT_H_TRUE@ -e 's|@''GUARD_PREFIX''@|GL|g' \ +@GL_GENERATE_FLOAT_H_TRUE@ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ +@GL_GENERATE_FLOAT_H_TRUE@ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ +@GL_GENERATE_FLOAT_H_TRUE@ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ +@GL_GENERATE_FLOAT_H_TRUE@ -e 's|@''NEXT_FLOAT_H''@|$(NEXT_FLOAT_H)|g' \ +@GL_GENERATE_FLOAT_H_TRUE@ -e 's|@''REPLACE_ITOLD''@|$(REPLACE_ITOLD)|g' \ +@GL_GENERATE_FLOAT_H_TRUE@ $(srcdir)/float.in.h > $@-t +@GL_GENERATE_FLOAT_H_TRUE@ $(AM_V_at)mv $@-t $@ +@GL_GENERATE_FLOAT_H_FALSE@float.h: $(top_builddir)/config.status +@GL_GENERATE_FLOAT_H_FALSE@ rm -f $@ # We need the following in order to create when the system # doesn't have one. @GL_GENERATE_NETINET_IN_H_TRUE@netinet/in.h: netinet_in.in.h $(top_builddir)/config.status -@GL_GENERATE_NETINET_IN_H_TRUE@ $(AM_V_at)$(MKDIR_P) netinet -@GL_GENERATE_NETINET_IN_H_TRUE@ $(AM_V_GEN)rm -f $@-t $@ && \ -@GL_GENERATE_NETINET_IN_H_TRUE@ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ -@GL_GENERATE_NETINET_IN_H_TRUE@ sed -e 's|@''GUARD_PREFIX''@|GL|g' \ +@GL_GENERATE_NETINET_IN_H_TRUE@ $(AM_V_GEN)$(MKDIR_P) 'netinet' +@GL_GENERATE_NETINET_IN_H_TRUE@ $(AM_V_at)$(SED_HEADER_STDOUT) \ +@GL_GENERATE_NETINET_IN_H_TRUE@ -e 's|@''GUARD_PREFIX''@|GL|g' \ @GL_GENERATE_NETINET_IN_H_TRUE@ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ @GL_GENERATE_NETINET_IN_H_TRUE@ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ @GL_GENERATE_NETINET_IN_H_TRUE@ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ @GL_GENERATE_NETINET_IN_H_TRUE@ -e 's|@''NEXT_NETINET_IN_H''@|$(NEXT_NETINET_IN_H)|g' \ @GL_GENERATE_NETINET_IN_H_TRUE@ -e 's|@''HAVE_NETINET_IN_H''@|$(HAVE_NETINET_IN_H)|g' \ -@GL_GENERATE_NETINET_IN_H_TRUE@ < $(srcdir)/netinet_in.in.h; \ -@GL_GENERATE_NETINET_IN_H_TRUE@ } > $@-t && \ -@GL_GENERATE_NETINET_IN_H_TRUE@ mv $@-t $@ +@GL_GENERATE_NETINET_IN_H_TRUE@ $(srcdir)/netinet_in.in.h > $@-t +@GL_GENERATE_NETINET_IN_H_TRUE@ $(AM_V_at)mv $@-t $@ @GL_GENERATE_NETINET_IN_H_FALSE@netinet/in.h: $(top_builddir)/config.status @GL_GENERATE_NETINET_IN_H_FALSE@ rm -f $@ # We need the following in order to create when the system # doesn't have one that works with the given compiler. pthread.h: pthread.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(_NORETURN_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's|@''HAVE_PTHREAD_H''@|$(HAVE_PTHREAD_H)|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ @@ -6852,16 +7264,15 @@ pthread.h: pthread.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(_NORETURN_H -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ -e '/definition of _Noreturn/r $(_NORETURN_H)' \ -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ - -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)'; \ - } > $@-t && \ - mv $@-t $@ + -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ + > $@-t + $(AM_V_at)mv $@-t $@ # We need the following in order to create a replacement for when # the system doesn't have one. sched.h: sched.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's|@''HAVE_SCHED_H''@|$(HAVE_SCHED_H)|g' \ -e 's|@''HAVE_SYS_CDEFS_H''@|$(HAVE_SYS_CDEFS_H)|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ @@ -6874,17 +7285,15 @@ sched.h: sched.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H) -e 's|@''REPLACE_SCHED_YIELD''@|$(REPLACE_SCHED_YIELD)|g' \ -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ - < $(srcdir)/sched.in.h; \ - } > $@-t && \ - mv $@-t $@ + $(srcdir)/sched.in.h > $@-t + $(AM_V_at)mv $@-t $@ # We need the following in order to create when the system # does not have a complete one. sys/ioctl.h: sys_ioctl.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H) - $(AM_V_at)$(MKDIR_P) sys - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(AM_V_GEN)$(MKDIR_P) 'sys' + $(AM_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's|@''HAVE_SYS_IOCTL_H''@|$(HAVE_SYS_IOCTL_H)|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ @@ -6896,17 +7305,15 @@ sys/ioctl.h: sys_ioctl.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON -e 's|@''REPLACE_IOCTL''@|$(REPLACE_IOCTL)|g' \ -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ - < $(srcdir)/sys_ioctl.in.h; \ - } > $@-t && \ - mv $@-t $@ + $(srcdir)/sys_ioctl.in.h > $@-t + $(AM_V_at)mv $@-t $@ # We need the following in order to create when the system # doesn't have one that works with the given compiler. sys/select.h: sys_select.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H) - $(AM_V_at)$(MKDIR_P) sys - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(AM_V_GEN)$(MKDIR_P) 'sys' + $(AM_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ @@ -6920,17 +7327,15 @@ sys/select.h: sys_select.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ -e 's|@''REPLACE_SELECT''@|$(REPLACE_SELECT)|g' \ -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ - < $(srcdir)/sys_select.in.h; \ - } > $@-t && \ - mv $@-t $@ + $(srcdir)/sys_select.in.h > $@-t + $(AM_V_at)mv $@-t $@ # We need the following in order to create when the system # doesn't have one that works with the given compiler. sys/socket.h: sys_socket.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H) $(ARG_NONNULL_H) - $(AM_V_at)$(MKDIR_P) sys - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(AM_V_GEN)$(MKDIR_P) 'sys' + $(AM_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ @@ -6961,25 +7366,22 @@ sys/socket.h: sys_socket.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ -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)/sys_socket.in.h; \ - } > $@-t && \ - mv -f $@-t $@ + $(srcdir)/sys_socket.in.h > $@-t + $(AM_V_at)mv $@-t $@ # We need the following in order to create when the system # doesn't have one that works with the given compiler. sys/uio.h: sys_uio.in.h $(top_builddir)/config.status - $(AM_V_at)$(MKDIR_P) sys - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(AM_V_GEN)$(MKDIR_P) 'sys' + $(AM_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|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_SYS_UIO_H''@|$(NEXT_SYS_UIO_H)|g' \ -e 's|@''HAVE_SYS_UIO_H''@|$(HAVE_SYS_UIO_H)|g' \ - < $(srcdir)/sys_uio.in.h; \ - } > $@-t && \ - mv -f $@-t $@ + $(srcdir)/sys_uio.in.h > $@-t + $(AM_V_at)mv $@-t $@ all: all-notice all-notice: diff --git a/gnulib-tests/_Noreturn.h b/gnulib-tests/_Noreturn.h index cb72f26..6ecea98 100644 --- a/gnulib-tests/_Noreturn.h +++ b/gnulib-tests/_Noreturn.h @@ -1,5 +1,5 @@ /* A C macro for declaring that a function does not return. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published @@ -26,10 +26,15 @@ AIX system header files and several gnulib header files use precisely this syntax with 'extern'. */ # define _Noreturn [[noreturn]] +# elif (defined __clang__ && __clang_major__ < 16 \ + && defined _GL_WORK_AROUND_LLVM_BUG_59792) + /* Compile with -D_GL_WORK_AROUND_LLVM_BUG_59792 to work around + that rare LLVM bug, though you may get many false-alarm warnings. */ +# define _Noreturn # elif ((!defined __cplusplus || defined __clang__) \ && (201112 <= (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) \ || (!defined __STRICT_ANSI__ \ - && (__4 < __GNUC__ + (7 <= __GNUC_MINOR__) \ + && (4 < __GNUC__ + (7 <= __GNUC_MINOR__) \ || (defined __apple_build_version__ \ ? 6000000 <= __apple_build_version__ \ : 3 < __clang_major__ + (5 <= __clang_minor__)))))) diff --git a/gnulib-tests/accept.c b/gnulib-tests/accept.c index 71457db..2641ced 100644 --- a/gnulib-tests/accept.c +++ b/gnulib-tests/accept.c @@ -1,6 +1,6 @@ /* accept.c --- wrappers for Windows accept function - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/gnulib-tests/alloca.c b/gnulib-tests/alloca.c index 4880283..5eb16a9 100644 --- a/gnulib-tests/alloca.c +++ b/gnulib-tests/alloca.c @@ -30,17 +30,6 @@ #include #include -#ifdef emacs -# include "lisp.h" -# include "blockinput.h" -# ifdef EMACS_FREE -# undef free -# define free EMACS_FREE -# endif -#else -# define memory_full() abort () -#endif - /* If compiling with GCC or clang, this file is not needed. */ #if !(defined __GNUC__ || defined __clang__) @@ -48,22 +37,6 @@ there must be some other way alloca is supposed to work. */ # ifndef alloca -# ifdef emacs -# ifdef static -/* actually, only want this if static is defined as "" - -- this is for usg, in which emacs must undefine static - in order to make unexec workable - */ -# ifndef STACK_DIRECTION -you -lose --- must know STACK_DIRECTION at compile-time -/* Using #error here is not wise since this file should work for - old and obscure compilers. */ -# endif /* STACK_DIRECTION undefined */ -# endif /* static */ -# endif /* emacs */ - /* Define STACK_DIRECTION if you know the direction of stack growth for your system; otherwise it will be automatically deduced at run-time. @@ -145,10 +118,6 @@ alloca (size_t size) { register header *hp; /* Traverses linked list. */ -# ifdef emacs - BLOCK_INPUT; -# endif - for (hp = last_alloca_header; hp != NULL;) if ((STACK_DIR > 0 && hp->h.deep > depth) || (STACK_DIR < 0 && hp->h.deep < depth)) @@ -163,10 +132,6 @@ alloca (size_t size) break; /* Rest are not deeper. */ last_alloca_header = hp; /* -> last valid storage. */ - -# ifdef emacs - UNBLOCK_INPUT; -# endif } if (size == 0) diff --git a/gnulib-tests/altstack-util.h b/gnulib-tests/altstack-util.h index fbd0d13..80e4d4e 100644 --- a/gnulib-tests/altstack-util.h +++ b/gnulib-tests/altstack-util.h @@ -1,5 +1,5 @@ /* Some auxiliary stuff for defining an alternate stack. - Copyright (C) 2010-2021 Free Software Foundation, Inc. + Copyright (C) 2010-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by diff --git a/gnulib-tests/arg-nonnull.h b/gnulib-tests/arg-nonnull.h index b4de241..9498ae1 100644 --- a/gnulib-tests/arg-nonnull.h +++ b/gnulib-tests/arg-nonnull.h @@ -1,5 +1,5 @@ /* A C macro for declaring that specific arguments must not be NULL. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published diff --git a/gnulib-tests/arpa_inet.in.h b/gnulib-tests/arpa_inet.in.h index 9968067..12876b5 100644 --- a/gnulib-tests/arpa_inet.in.h +++ b/gnulib-tests/arpa_inet.in.h @@ -1,6 +1,6 @@ /* A GNU-like . - Copyright (C) 2005-2006, 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2005-2006, 2008-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -49,6 +49,11 @@ #ifndef _@GUARD_PREFIX@_ARPA_INET_H #define _@GUARD_PREFIX@_ARPA_INET_H +/* This file uses GNULIB_POSIXCHECK, HAVE_RAW_DECL_*. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + /* Get all possible declarations of inet_ntop() and inet_pton(). */ #if (@GNULIB_INET_NTOP@ || @GNULIB_INET_PTON@ || defined GNULIB_POSIXCHECK) \ && @HAVE_WS2TCPIP_H@ diff --git a/lib/asnprintf.c b/gnulib-tests/asnprintf.c similarity index 94% rename from lib/asnprintf.c rename to gnulib-tests/asnprintf.c index c5367b2..f4861bf 100644 --- a/lib/asnprintf.c +++ b/gnulib-tests/asnprintf.c @@ -1,5 +1,5 @@ /* Formatted output to strings. - Copyright (C) 1999, 2002, 2006, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 1999, 2002, 2006, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/gnulib-tests/atoll.c b/gnulib-tests/atoll.c index 0e40254..03a110f 100644 --- a/gnulib-tests/atoll.c +++ b/gnulib-tests/atoll.c @@ -1,9 +1,9 @@ -/* Copyright (C) 1991, 1997-1998, 2008-2021 Free Software Foundation, Inc. +/* Copyright (C) 1991, 1997-1998, 2008-2023 Free Software Foundation, Inc. This file is part of the GNU C Library. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as - published by the Free Software Foundation; either version 3 of the + published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This file is distributed in the hope that it will be useful, diff --git a/gnulib-tests/bind.c b/gnulib-tests/bind.c index 0e47254..c67bade 100644 --- a/gnulib-tests/bind.c +++ b/gnulib-tests/bind.c @@ -1,6 +1,6 @@ /* bind.c --- wrappers for Windows bind function - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/gnulib-tests/c++defs.h b/gnulib-tests/c++defs.h index a47b61a..458c014 100644 --- a/gnulib-tests/c++defs.h +++ b/gnulib-tests/c++defs.h @@ -1,5 +1,5 @@ /* C++ compatible function declaration macros. - Copyright (C) 2010-2021 Free Software Foundation, Inc. + Copyright (C) 2010-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published @@ -99,6 +99,12 @@ Example: _GL_FUNCDECL_RPL (open, int, (const char *filename, int flags, ...) _GL_ARG_NONNULL ((1))); + + Note: Attributes, such as _GL_ATTRIBUTE_DEPRECATED, are supported in front + of a _GL_FUNCDECL_RPL invocation only in C mode, not in C++ mode. (That's + because + [[...]] extern "C" ; + is invalid syntax in C++.) */ #define _GL_FUNCDECL_RPL(func,rettype,parameters_and_attributes) \ _GL_FUNCDECL_RPL_1 (rpl_##func, rettype, parameters_and_attributes) diff --git a/gnulib-tests/c-strcasestr.c b/gnulib-tests/c-strcasestr.c new file mode 100644 index 0000000..46fd4cd --- /dev/null +++ b/gnulib-tests/c-strcasestr.c @@ -0,0 +1,76 @@ +/* c-strcasestr.c -- case insensitive substring search in C locale + Copyright (C) 2005-2023 Free Software Foundation, Inc. + Written by Bruno Haible , 2005. + + This file is free software: you can redistribute it and/or modify + it under the terms of the GNU Lesser General Public License as + published by the Free Software Foundation; either version 2.1 of the + License, or (at your option) any later version. + + This file is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "c-strcasestr.h" + +#include + +#include "c-ctype.h" +#include "c-strcase.h" + +/* Two-Way algorithm. */ +#define RETURN_TYPE char * +#define AVAILABLE(h, h_l, j, n_l) \ + (!memchr ((h) + (h_l), '\0', (j) + (n_l) - (h_l)) \ + && ((h_l) = (j) + (n_l))) +#define CANON_ELEMENT c_tolower +#define CMP_FUNC(p1, p2, l) \ + c_strncasecmp ((const char *) (p1), (const char *) (p2), l) +#include "str-two-way.h" + +/* Find the first occurrence of NEEDLE in HAYSTACK, using case-insensitive + comparison from the C locale, regardless of the current locale. */ +char * +c_strcasestr (const char *haystack_start, const char *needle_start) +{ + const char *haystack = haystack_start; + const char *needle = needle_start; + size_t needle_len; /* Length of NEEDLE. */ + size_t haystack_len; /* Known minimum length of HAYSTACK. */ + bool ok = true; /* True if NEEDLE is prefix of HAYSTACK. */ + + /* Determine length of NEEDLE, and in the process, make sure + HAYSTACK is at least as long (no point processing all of a long + NEEDLE if HAYSTACK is too short). */ + while (*haystack && *needle) + ok &= (c_tolower ((unsigned char) *haystack++) + == c_tolower ((unsigned char) *needle++)); + if (*needle) + return NULL; + if (ok) + return (char *) haystack_start; + needle_len = needle - needle_start; + haystack = haystack_start + 1; + haystack_len = needle_len - 1; + + /* Perform the search. Abstract memory is considered to be an array + of 'unsigned char' values, not an array of 'char' values. See + ISO C 99 section 6.2.6.1. */ + if (needle_len < LONG_NEEDLE_THRESHOLD) + return two_way_short_needle ((const unsigned char *) haystack, + haystack_len, + (const unsigned char *) needle_start, + needle_len); + return two_way_long_needle ((const unsigned char *) haystack, haystack_len, + (const unsigned char *) needle_start, + needle_len); +} + +#undef LONG_NEEDLE_THRESHOLD diff --git a/gnulib-tests/c-strcasestr.h b/gnulib-tests/c-strcasestr.h new file mode 100644 index 0000000..f62ab1f --- /dev/null +++ b/gnulib-tests/c-strcasestr.h @@ -0,0 +1,36 @@ +/* Case-insensitive searching in a string in C locale. + Copyright (C) 2005, 2009-2023 Free Software Foundation, Inc. + + This file is free software: you can redistribute it and/or modify + it under the terms of the GNU Lesser General Public License as + published by the Free Software Foundation; either version 2.1 of the + License, or (at your option) any later version. + + This file is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#ifndef C_STRCASESTR_H +#define C_STRCASESTR_H + + +#ifdef __cplusplus +extern "C" { +#endif + + +/* Find the first occurrence of NEEDLE in HAYSTACK, using case-insensitive + comparison. */ +extern char *c_strcasestr (const char *haystack, const char *needle); + + +#ifdef __cplusplus +} +#endif + + +#endif /* C_STRCASESTR_H */ diff --git a/gnulib-tests/connect.c b/gnulib-tests/connect.c index b2b2e93..1ac4a74 100644 --- a/gnulib-tests/connect.c +++ b/gnulib-tests/connect.c @@ -1,6 +1,6 @@ /* connect.c --- wrappers for Windows connect function - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/gnulib-tests/dtotimespec.c b/gnulib-tests/dtotimespec.c index 73061a3..28a44b6 100644 --- a/gnulib-tests/dtotimespec.c +++ b/gnulib-tests/dtotimespec.c @@ -1,10 +1,10 @@ /* Convert double to timespec. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/fdopen.c b/gnulib-tests/fdopen.c index a5266c8..6cd6470 100644 --- a/gnulib-tests/fdopen.c +++ b/gnulib-tests/fdopen.c @@ -1,5 +1,5 @@ /* Open a stream with a given file descriptor. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/float+.h b/gnulib-tests/float+.h similarity index 98% rename from lib/float+.h rename to gnulib-tests/float+.h index ad891f6..e7531e4 100644 --- a/lib/float+.h +++ b/gnulib-tests/float+.h @@ -1,5 +1,5 @@ /* Supplemental information about the floating-point formats. - Copyright (C) 2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2007, 2009-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2007. This file is free software: you can redistribute it and/or modify diff --git a/lib/float.c b/gnulib-tests/float.c similarity index 95% rename from lib/float.c rename to gnulib-tests/float.c index dd1e84a..f81ff33 100644 --- a/lib/float.c +++ b/gnulib-tests/float.c @@ -1,5 +1,5 @@ /* Auxiliary definitions for . - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2011. This file is free software: you can redistribute it and/or modify diff --git a/lib/float.in.h b/gnulib-tests/float.in.h similarity index 99% rename from lib/float.in.h rename to gnulib-tests/float.in.h index f52aba3..bf2c502 100644 --- a/lib/float.in.h +++ b/gnulib-tests/float.in.h @@ -1,6 +1,6 @@ /* A correct . - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/gnulib-tests/fpucw.h b/gnulib-tests/fpucw.h index 4060911..7dcb310 100644 --- a/gnulib-tests/fpucw.h +++ b/gnulib-tests/fpucw.h @@ -1,5 +1,5 @@ /* Manipulating the FPU control word. -*- coding: utf-8 -*- - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2007. This file is free software: you can redistribute it and/or modify diff --git a/gnulib-tests/ftruncate.c b/gnulib-tests/ftruncate.c index 873f302..b662523 100644 --- a/gnulib-tests/ftruncate.c +++ b/gnulib-tests/ftruncate.c @@ -1,9 +1,9 @@ /* ftruncate emulations for native Windows. - Copyright (C) 1992-2021 Free Software Foundation, Inc. + Copyright (C) 1992-2023 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) + the Free Software Foundation, either version 3, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/getcwd-lgpl.c b/gnulib-tests/getcwd-lgpl.c index a9dd848..8a5bde9 100644 --- a/gnulib-tests/getcwd-lgpl.c +++ b/gnulib-tests/getcwd-lgpl.c @@ -1,4 +1,4 @@ -/* Copyright (C) 2011-2021 Free Software Foundation, Inc. +/* Copyright (C) 2011-2023 Free Software Foundation, Inc. This file is part of gnulib. This file is free software: you can redistribute it and/or modify diff --git a/gnulib-tests/glthread/thread.c b/gnulib-tests/glthread/thread.c index de44932..ce6b9a8 100644 --- a/gnulib-tests/glthread/thread.c +++ b/gnulib-tests/glthread/thread.c @@ -1,5 +1,5 @@ /* Creating and controlling threads. - Copyright (C) 2005-2021 Free Software Foundation, Inc. + Copyright (C) 2005-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -139,9 +139,11 @@ gl_thread_self (void) /* Memory allocation failed. There is not much we can do. Have to busy-loop, waiting for the availability of memory. */ { - struct timespec ts; - ts.tv_sec = 1; - ts.tv_nsec = 0; + struct timespec ts = + { + .tv_sec = 1, + .tv_nsec = 0 + }; thrd_sleep (&ts, NULL); } } diff --git a/gnulib-tests/glthread/thread.h b/gnulib-tests/glthread/thread.h index 44f05f3..88bc53e 100644 --- a/gnulib-tests/glthread/thread.h +++ b/gnulib-tests/glthread/thread.h @@ -1,5 +1,5 @@ /* Creating and controlling threads. - Copyright (C) 2005-2021 Free Software Foundation, Inc. + Copyright (C) 2005-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -70,6 +70,11 @@ #ifndef _GLTHREAD_THREAD_H #define _GLTHREAD_THREAD_H +/* This file uses _Noreturn, HAVE_THREADS_H, HAVE_PTHREAD_ATFORK. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + #include #include @@ -228,7 +233,7 @@ extern const gl_thread_t gl_null_thread; # define gl_thread_self() \ (pthread_in_use () ? pthread_self () : (pthread_t) 0) # define gl_thread_self_pointer() \ - (pthread_in_use () ? (void *) pthread_self () : NULL) + (pthread_in_use () ? (void *) (pthread_t) pthread_self () : NULL) # endif # define gl_thread_exit(RETVAL) \ (void) (pthread_in_use () ? (pthread_exit (RETVAL), 0) : 0) diff --git a/gnulib-tests/gnulib.mk b/gnulib-tests/gnulib.mk index 7eb14e6..3925cda 100644 --- a/gnulib-tests/gnulib.mk +++ b/gnulib-tests/gnulib.mk @@ -1,10 +1,10 @@ ## DO NOT EDIT! GENERATED AUTOMATICALLY! ## Process this file with automake to produce Makefile.in. -# Copyright (C) 2002-2021 Free Software Foundation, Inc. +# Copyright (C) 2002-2023 Free Software Foundation, Inc. # # This file is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or +# the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This file is distributed in the hope that it will be useful, @@ -22,7 +22,7 @@ # # Generated by gnulib-tool. -AUTOMAKE_OPTIONS = 1.11 foreign subdir-objects +AUTOMAKE_OPTIONS = 1.14 foreign subdir-objects SUBDIRS = . TESTS = @@ -43,7 +43,7 @@ CLEANFILES = DISTCLEANFILES = MAINTAINERCLEANFILES = -CFLAGS = @GL_CFLAG_ALLOW_WARNINGS@ @CFLAGS@ +CFLAGS = @GL_CFLAG_ALLOW_WARNINGS@ $(GL_CFLAG_GNULIB_WARNINGS) @CFLAGS@ CXXFLAGS = @GL_CXXFLAG_ALLOW_WARNINGS@ @CXXFLAGS@ AM_CPPFLAGS = \ @@ -64,10 +64,11 @@ TESTS_ENVIRONMENT += EXEEXT='@EXEEXT@' srcdir='$(srcdir)' ## begin gnulib module accept +if GL_COND_OBJ_ACCEPT +libtests_a_SOURCES += accept.c +endif -EXTRA_DIST += accept.c w32sock.h - -EXTRA_libtests_a_SOURCES += accept.c +EXTRA_DIST += w32sock.h ## end gnulib module accept @@ -80,6 +81,14 @@ EXTRA_DIST += test-accept.c signature.h macros.h ## end gnulib module accept-tests +## begin gnulib module alignasof-tests + +TESTS += test-alignasof +check_PROGRAMS += test-alignasof +EXTRA_DIST += test-alignasof.c macros.h + +## end gnulib module alignasof-tests + ## begin gnulib module alloca @@ -112,7 +121,7 @@ EXTRA_DIST += test-areadlink.h test-areadlink.c macros.h TESTS += test-argmatch check_PROGRAMS += test-argmatch -test_argmatch_LDADD = $(LDADD) @LIBINTL@ $(LIB_MBRTOWC) +test_argmatch_LDADD = $(LDADD) @LIBINTL@ $(MBRTOWC_LIB) EXTRA_DIST += test-argmatch.c macros.h @@ -125,10 +134,9 @@ BUILT_SOURCES += arpa/inet.h # We need the following in order to create when the system # doesn't have one. arpa/inet.h: arpa_inet.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H) $(ARG_NONNULL_H) - $(AM_V_at)$(MKDIR_P) arpa - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(AM_V_GEN)$(MKDIR_P) '%reldir%/arpa' + $(AM_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ @@ -145,9 +153,8 @@ arpa/inet.h: arpa_inet.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON -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)/arpa_inet.in.h; \ - } > $@-t && \ - mv $@-t $@ + $(srcdir)/arpa_inet.in.h > $@-t + $(AM_V_at)mv $@-t $@ MOSTLYCLEANFILES += arpa/inet.h arpa/inet.h-t MOSTLYCLEANDIRS += arpa @@ -163,12 +170,19 @@ EXTRA_DIST += test-arpa_inet.c ## end gnulib module arpa_inet-tests -## begin gnulib module atoll +## begin gnulib module assert-h-tests + +TESTS += test-assert +check_PROGRAMS += test-assert +EXTRA_DIST += test-assert.c +## end gnulib module assert-h-tests -EXTRA_DIST += atoll.c +## begin gnulib module atoll -EXTRA_libtests_a_SOURCES += atoll.c +if GL_COND_OBJ_ATOLL +libtests_a_SOURCES += atoll.c +endif ## end gnulib module atoll @@ -183,10 +197,11 @@ EXTRA_DIST += test-binary-io.sh test-binary-io.c macros.h ## begin gnulib module bind +if GL_COND_OBJ_BIND +libtests_a_SOURCES += bind.c +endif -EXTRA_DIST += bind.c w32sock.h - -EXTRA_libtests_a_SOURCES += bind.c +EXTRA_DIST += w32sock.h ## end gnulib module bind @@ -209,11 +224,11 @@ EXTRA_DIST += test-bitrotate.c macros.h ## begin gnulib module btowc-tests -TESTS += test-btowc1.sh test-btowc2.sh +TESTS += test-btowc1.sh test-btowc2.sh test-btowc3.sh TESTS_ENVIRONMENT += LOCALE_FR='@LOCALE_FR@' LOCALE_FR_UTF8='@LOCALE_FR_UTF8@' check_PROGRAMS += test-btowc -test_btowc_LDADD = $(LDADD) $(LIB_SETLOCALE) -EXTRA_DIST += test-btowc1.sh test-btowc2.sh test-btowc.c signature.h macros.h +test_btowc_LDADD = $(LDADD) $(SETLOCALE_LIB) +EXTRA_DIST += test-btowc1.sh test-btowc2.sh test-btowc3.sh test-btowc.c signature.h macros.h ## end gnulib module btowc-tests @@ -221,7 +236,7 @@ EXTRA_DIST += test-btowc1.sh test-btowc2.sh test-btowc.c signature.h macros.h TESTS += test-c-ctype check_PROGRAMS += test-c-ctype -test_c_ctype_LDADD = $(LDADD) $(LIB_SETLOCALE) +test_c_ctype_LDADD = $(LDADD) $(SETLOCALE_LIB) EXTRA_DIST += test-c-ctype.c macros.h ## end gnulib module c-ctype-tests @@ -242,12 +257,29 @@ EXTRA_DIST += test-c-stack.c test-c-stack.sh test-c-stack2.sh macros.h TESTS += test-c-strcase.sh TESTS_ENVIRONMENT += LOCALE_FR='@LOCALE_FR@' LOCALE_TR_UTF8='@LOCALE_TR_UTF8@' check_PROGRAMS += test-c-strcasecmp test-c-strncasecmp -test_c_strcasecmp_LDADD = $(LDADD) $(LIB_SETLOCALE) -test_c_strncasecmp_LDADD = $(LDADD) $(LIB_SETLOCALE) +test_c_strcasecmp_LDADD = $(LDADD) $(SETLOCALE_LIB) +test_c_strncasecmp_LDADD = $(LDADD) $(SETLOCALE_LIB) EXTRA_DIST += test-c-strcase.sh test-c-strcasecmp.c test-c-strncasecmp.c macros.h ## end gnulib module c-strcase-tests +## begin gnulib module c-strcasestr + +libtests_a_SOURCES += c-strcasestr.h c-strcasestr.c + +EXTRA_DIST += str-two-way.h + +## end gnulib module c-strcasestr + +## begin gnulib module c-strcasestr-tests + +TESTS += test-c-strcasestr +check_PROGRAMS += test-c-strcasestr + +EXTRA_DIST += test-c-strcasestr.c macros.h + +## end gnulib module c-strcasestr-tests + ## begin gnulib module calloc-gnu-tests TESTS += test-calloc-gnu @@ -274,10 +306,11 @@ EXTRA_DIST += test-close.c signature.h macros.h ## begin gnulib module connect +if GL_COND_OBJ_CONNECT +libtests_a_SOURCES += connect.c +endif -EXTRA_DIST += connect.c w32sock.h - -EXTRA_libtests_a_SOURCES += connect.c +EXTRA_DIST += w32sock.h ## end gnulib module connect @@ -321,14 +354,6 @@ EXTRA_DIST += test-dup2.c signature.h macros.h ## end gnulib module dup2-tests -## begin gnulib module dynarray-tests - -TESTS += test-dynarray -check_PROGRAMS += test-dynarray -EXTRA_DIST += test-dynarray.c macros.h - -## end gnulib module dynarray-tests - ## begin gnulib module environ-tests TESTS += test-environ @@ -347,6 +372,15 @@ EXTRA_DIST += test-errno.c ## end gnulib module errno-tests +## begin gnulib module error-tests + +TESTS += test-error.sh +check_PROGRAMS += test-error +test_error_LDADD = $(LDADD) $(LIBINTL) +EXTRA_DIST += test-error.sh test-error.c macros.h + +## end gnulib module error-tests + ## begin gnulib module exclude-tests TESTS += \ @@ -360,7 +394,7 @@ TESTS += \ test-exclude8.sh check_PROGRAMS += test-exclude -test_exclude_LDADD = $(LDADD) $(LIBUNISTRING) @LIBINTL@ $(LIB_MBRTOWC) $(LIBTHREAD) +test_exclude_LDADD = $(LDADD) $(LIBUNISTRING) @LIBINTL@ $(MBRTOWC_LIB) $(LIBTHREAD) EXTRA_DIST += test-exclude.c test-exclude1.sh test-exclude2.sh test-exclude3.sh test-exclude4.sh test-exclude5.sh test-exclude6.sh test-exclude7.sh test-exclude8.sh ## end gnulib module exclude-tests @@ -383,10 +417,9 @@ EXTRA_DIST += test-fcntl.c signature.h macros.h ## begin gnulib module fdopen - -EXTRA_DIST += fdopen.c - -EXTRA_libtests_a_SOURCES += fdopen.c +if GL_COND_OBJ_FDOPEN +libtests_a_SOURCES += fdopen.c +endif ## end gnulib module fdopen @@ -415,6 +448,40 @@ EXTRA_DIST += test-filenamecat.c ## end gnulib module filenamecat-tests +## begin gnulib module float + +BUILT_SOURCES += $(FLOAT_H) + +# We need the following in order to create when the system +# doesn't have one that works with the given compiler. +if GL_GENERATE_FLOAT_H +float.h: float.in.h $(top_builddir)/config.status + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|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_FLOAT_H''@|$(NEXT_FLOAT_H)|g' \ + -e 's|@''REPLACE_ITOLD''@|$(REPLACE_ITOLD)|g' \ + $(srcdir)/float.in.h > $@-t + $(AM_V_at)mv $@-t $@ +else +float.h: $(top_builddir)/config.status + rm -f $@ +endif +MOSTLYCLEANFILES += float.h float.h-t + +if GL_COND_OBJ_FLOAT +libtests_a_SOURCES += float.c +endif +if GL_COND_OBJ_ITOLD +libtests_a_SOURCES += itold.c +endif + +EXTRA_DIST += float.in.h + +## end gnulib module float + ## begin gnulib module float-tests TESTS += test-float @@ -435,7 +502,7 @@ EXTRA_DIST += test-fnmatch-h.c TESTS += test-fnmatch check_PROGRAMS += test-fnmatch -test_fnmatch_LDADD = $(LDADD) $(LIB_MBRTOWC) +test_fnmatch_LDADD = $(LDADD) $(MBRTOWC_LIB) EXTRA_DIST += test-fnmatch.c signature.h macros.h ## end gnulib module fnmatch-tests @@ -507,10 +574,9 @@ EXTRA_DIST += test-fstat.c signature.h macros.h ## begin gnulib module ftruncate - -EXTRA_DIST += ftruncate.c - -EXTRA_libtests_a_SOURCES += ftruncate.c +if GL_COND_OBJ_FTRUNCATE +libtests_a_SOURCES += ftruncate.c +endif ## end gnulib module ftruncate @@ -530,12 +596,30 @@ EXTRA_DIST += test-fwrite.c signature.h macros.h ## end gnulib module fwrite-tests -## begin gnulib module getcwd-lgpl +## begin gnulib module gen-header + +# In 'sed', replace the pattern space with a "DO NOT EDIT" comment. +SED_HEADER_NOEDIT = s,.*,/* DO NOT EDIT! GENERATED AUTOMATICALLY! */, + +# '$(SED_HEADER_STDOUT) -e "..."' runs 'sed' but first outputs "DO NOT EDIT". +SED_HEADER_STDOUT = sed -e 1h -e '1$(SED_HEADER_NOEDIT)' -e 1G +# '$(SED_HEADER_TO_AT_t) FILE' copies FILE to $@-t, prepending a leading +# "DO_NOT_EDIT". Although this could be done more simply via: +# SED_HEADER_TO_AT_t = $(SED_HEADER_STDOUT) > $@-t +# the -n and 'w' avoid a fork+exec, at least when GNU Make is used. +SED_HEADER_TO_AT_t = $(SED_HEADER_STDOUT) -n -e 'w $@-t' -EXTRA_DIST += getcwd-lgpl.c +# Use $(gl_V_at) instead of $(AM_V_GEN) or $(AM_V_at) on a line that +gl_V_at = $(AM_V_GEN) -EXTRA_libtests_a_SOURCES += getcwd-lgpl.c +## end gnulib module gen-header + +## begin gnulib module getcwd-lgpl + +if GL_COND_OBJ_GETCWD_LGPL +libtests_a_SOURCES += getcwd-lgpl.c +endif ## end gnulib module getcwd-lgpl @@ -588,7 +672,7 @@ EXTRA_DIST += test-getprogname.c TESTS += test-getrandom check_PROGRAMS += test-getrandom -test_getrandom_LDADD = $(LDADD) @LIB_GETRANDOM@ +test_getrandom_LDADD = $(LDADD) @GETRANDOM_LIB@ EXTRA_DIST += test-getrandom.c signature.h macros.h ## end gnulib module getrandom-tests @@ -598,10 +682,18 @@ EXTRA_DIST += test-getrandom.c signature.h macros.h TESTS += test-gettimeofday check_PROGRAMS += test-gettimeofday -EXTRA_DIST += signature.h test-gettimeofday.c +EXTRA_DIST += test-gettimeofday.c signature.h macros.h ## end gnulib module gettimeofday-tests +## begin gnulib module glibc-internal/dynarray-tests + +TESTS += test-dynarray +check_PROGRAMS += test-dynarray +EXTRA_DIST += test-dynarray.c macros.h + +## end gnulib module glibc-internal/dynarray-tests + ## begin gnulib module gperf GPERF = gperf @@ -615,7 +707,7 @@ V_GPERF_0 = @echo " GPERF " $@; TESTS += test-hard-locale check_PROGRAMS += test-hard-locale -test_hard_locale_LDADD = $(LDADD) $(LIB_SETLOCALE) @LIB_HARD_LOCALE@ +test_hard_locale_LDADD = $(LDADD) $(SETLOCALE_LIB) @HARD_LOCALE_LIB@ # We cannot call this program 'locale', because the C++ compiler on Mac OS X # would then barf upon '#include '. So, call it 'current-locale'. noinst_PROGRAMS += current-locale @@ -666,10 +758,9 @@ EXTRA_DIST += test-ignore-value.c ## begin gnulib module inet_pton - -EXTRA_DIST += inet_pton.c - -EXTRA_libtests_a_SOURCES += inet_pton.c +if GL_COND_OBJ_INET_PTON +libtests_a_SOURCES += inet_pton.c +endif ## end gnulib module inet_pton @@ -708,10 +799,11 @@ EXTRA_DIST += test-inttypes.c ## begin gnulib module ioctl +if GL_COND_OBJ_IOCTL +libtests_a_SOURCES += ioctl.c +endif -EXTRA_DIST += ioctl.c w32sock.h - -EXTRA_libtests_a_SOURCES += ioctl.c +EXTRA_DIST += w32sock.h ## end gnulib module ioctl @@ -748,7 +840,7 @@ TESTS_ENVIRONMENT += \ LOCALE_JA='@LOCALE_JA@' \ LOCALE_ZH_CN='@LOCALE_ZH_CN@' check_PROGRAMS += test-iswdigit -test_iswdigit_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIB_MBRTOWC) +test_iswdigit_LDADD = $(LDADD) $(SETLOCALE_LIB) $(MBRTOWC_LIB) EXTRA_DIST += test-iswdigit.sh test-iswdigit.c signature.h macros.h ## end gnulib module iswdigit-tests @@ -762,7 +854,7 @@ TESTS_ENVIRONMENT += \ LOCALE_JA='@LOCALE_JA@' \ LOCALE_ZH_CN='@LOCALE_ZH_CN@' check_PROGRAMS += test-iswxdigit -test_iswxdigit_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIB_MBRTOWC) +test_iswxdigit_LDADD = $(LDADD) $(SETLOCALE_LIB) $(MBRTOWC_LIB) EXTRA_DIST += test-iswxdigit.sh test-iswxdigit.c signature.h macros.h ## end gnulib module iswxdigit-tests @@ -775,6 +867,14 @@ EXTRA_DIST += test-langinfo.c ## end gnulib module langinfo-tests +## begin gnulib module largefile-tests + +TESTS += test-largefile +check_PROGRAMS += test-largefile +EXTRA_DIST += test-largefile.c + +## end gnulib module largefile-tests + ## begin gnulib module limits-h-tests TESTS += test-limits-h @@ -785,10 +885,11 @@ EXTRA_DIST += test-limits-h.c ## begin gnulib module listen +if GL_COND_OBJ_LISTEN +libtests_a_SOURCES += listen.c +endif -EXTRA_DIST += listen.c w32sock.h - -EXTRA_libtests_a_SOURCES += listen.c +EXTRA_DIST += w32sock.h ## end gnulib module listen @@ -804,7 +905,7 @@ EXTRA_DIST += test-listen.c signature.h macros.h ## begin gnulib module localcharset-tests noinst_PROGRAMS += test-localcharset -test_localcharset_LDADD = $(LDADD) $(LIB_SETLOCALE) +test_localcharset_LDADD = $(LDADD) $(SETLOCALE_LIB) EXTRA_DIST += test-localcharset.c ## end gnulib module localcharset-tests @@ -864,7 +965,7 @@ TESTS_ENVIRONMENT += \ LOCALE_JA='@LOCALE_JA@' \ LOCALE_ZH_CN='@LOCALE_ZH_CN@' check_PROGRAMS += test-mbrtowc test-mbrtowc-w32 -test_mbrtowc_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIB_MBRTOWC) +test_mbrtowc_LDADD = $(LDADD) $(SETLOCALE_LIB) $(MBRTOWC_LIB) EXTRA_DIST += test-mbrtowc1.sh test-mbrtowc2.sh test-mbrtowc3.sh test-mbrtowc4.sh test-mbrtowc5.sh test-mbrtowc.c test-mbrtowc-w32-1.sh test-mbrtowc-w32-2.sh test-mbrtowc-w32-3.sh test-mbrtowc-w32-4.sh test-mbrtowc-w32-5.sh test-mbrtowc-w32-6.sh test-mbrtowc-w32-7.sh test-mbrtowc-w32.c signature.h macros.h ## end gnulib module mbrtowc-tests @@ -874,7 +975,7 @@ EXTRA_DIST += test-mbrtowc1.sh test-mbrtowc2.sh test-mbrtowc3.sh test-mbrtowc4.s TESTS += test-mbscasecmp.sh TESTS_ENVIRONMENT += LOCALE_TR_UTF8='@LOCALE_TR_UTF8@' check_PROGRAMS += test-mbscasecmp -test_mbscasecmp_LDADD = $(LDADD) $(LIBUNISTRING) $(LIB_SETLOCALE) $(LIB_MBRTOWC) +test_mbscasecmp_LDADD = $(LDADD) $(LIBUNISTRING) $(SETLOCALE_LIB) $(MBRTOWC_LIB) EXTRA_DIST += test-mbscasecmp.sh test-mbscasecmp.c macros.h ## end gnulib module mbscasecmp-tests @@ -884,22 +985,24 @@ EXTRA_DIST += test-mbscasecmp.sh test-mbscasecmp.c macros.h TESTS += test-mbsinit.sh TESTS_ENVIRONMENT += LOCALE_FR_UTF8='@LOCALE_FR_UTF8@' check_PROGRAMS += test-mbsinit -test_mbsinit_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIB_MBRTOWC) +test_mbsinit_LDADD = $(LDADD) $(SETLOCALE_LIB) $(MBRTOWC_LIB) EXTRA_DIST += test-mbsinit.sh test-mbsinit.c signature.h macros.h ## end gnulib module mbsinit-tests ## begin gnulib module mbsrtowcs-tests -TESTS += test-mbsrtowcs1.sh test-mbsrtowcs2.sh test-mbsrtowcs3.sh test-mbsrtowcs4.sh +TESTS += \ + test-mbsrtowcs1.sh test-mbsrtowcs2.sh test-mbsrtowcs3.sh test-mbsrtowcs4.sh \ + test-mbsrtowcs5.sh TESTS_ENVIRONMENT += \ LOCALE_FR='@LOCALE_FR@' \ LOCALE_FR_UTF8='@LOCALE_FR_UTF8@' \ LOCALE_JA='@LOCALE_JA@' \ LOCALE_ZH_CN='@LOCALE_ZH_CN@' check_PROGRAMS += test-mbsrtowcs -test_mbsrtowcs_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIB_MBRTOWC) -EXTRA_DIST += test-mbsrtowcs1.sh test-mbsrtowcs2.sh test-mbsrtowcs3.sh test-mbsrtowcs4.sh test-mbsrtowcs.c signature.h macros.h +test_mbsrtowcs_LDADD = $(LDADD) $(SETLOCALE_LIB) $(MBRTOWC_LIB) +EXTRA_DIST += test-mbsrtowcs1.sh test-mbsrtowcs2.sh test-mbsrtowcs3.sh test-mbsrtowcs4.sh test-mbsrtowcs5.sh test-mbsrtowcs.c signature.h macros.h ## end gnulib module mbsrtowcs-tests @@ -908,9 +1011,9 @@ EXTRA_DIST += test-mbsrtowcs1.sh test-mbsrtowcs2.sh test-mbsrtowcs3.sh test-mbsr TESTS += test-mbsstr1 test-mbsstr2.sh test-mbsstr3.sh TESTS_ENVIRONMENT += LOCALE_FR_UTF8='@LOCALE_FR_UTF8@' LOCALE_ZH_CN='@LOCALE_ZH_CN@' check_PROGRAMS += test-mbsstr1 test-mbsstr2 test-mbsstr3 -test_mbsstr1_LDADD = $(LDADD) $(LIBUNISTRING) $(LIB_MBRTOWC) -test_mbsstr2_LDADD = $(LDADD) $(LIBUNISTRING) $(LIB_SETLOCALE) $(LIB_MBRTOWC) -test_mbsstr3_LDADD = $(LDADD) $(LIBUNISTRING) $(LIB_SETLOCALE) $(LIB_MBRTOWC) +test_mbsstr1_LDADD = $(LDADD) $(LIBUNISTRING) $(MBRTOWC_LIB) +test_mbsstr2_LDADD = $(LDADD) $(LIBUNISTRING) $(SETLOCALE_LIB) $(MBRTOWC_LIB) +test_mbsstr3_LDADD = $(LDADD) $(LIBUNISTRING) $(SETLOCALE_LIB) $(MBRTOWC_LIB) EXTRA_DIST += test-mbsstr1.c test-mbsstr2.sh test-mbsstr2.c test-mbsstr3.sh test-mbsstr3.c macros.h ## end gnulib module mbsstr-tests @@ -933,10 +1036,9 @@ EXTRA_DIST += test-mkdir.h test-mkdir.c signature.h macros.h ## begin gnulib module nanosleep - -EXTRA_DIST += nanosleep.c - -EXTRA_libtests_a_SOURCES += nanosleep.c +if GL_COND_OBJ_NANOSLEEP +libtests_a_SOURCES += nanosleep.c +endif ## end gnulib module nanosleep @@ -944,7 +1046,7 @@ EXTRA_libtests_a_SOURCES += nanosleep.c TESTS += test-nanosleep check_PROGRAMS += test-nanosleep -test_nanosleep_LDADD = $(LDADD) $(LIB_NANOSLEEP) +test_nanosleep_LDADD = $(LDADD) $(NANOSLEEP_LIB) EXTRA_DIST += test-nanosleep.c signature.h macros.h ## end gnulib module nanosleep-tests @@ -957,18 +1059,16 @@ BUILT_SOURCES += $(NETINET_IN_H) # doesn't have one. if GL_GENERATE_NETINET_IN_H netinet/in.h: netinet_in.in.h $(top_builddir)/config.status - $(AM_V_at)$(MKDIR_P) netinet - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(AM_V_GEN)$(MKDIR_P) '%reldir%/netinet' + $(AM_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|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_NETINET_IN_H''@|$(NEXT_NETINET_IN_H)|g' \ -e 's|@''HAVE_NETINET_IN_H''@|$(HAVE_NETINET_IN_H)|g' \ - < $(srcdir)/netinet_in.in.h; \ - } > $@-t && \ - mv $@-t $@ + $(srcdir)/netinet_in.in.h > $@-t + $(AM_V_at)mv $@-t $@ else netinet/in.h: $(top_builddir)/config.status rm -f $@ @@ -990,12 +1090,13 @@ EXTRA_DIST += test-netinet_in.c ## begin gnulib module nl_langinfo-tests -TESTS += test-nl_langinfo.sh test-nl_langinfo-mt +TESTS += test-nl_langinfo1.sh test-nl_langinfo2.sh test-nl_langinfo-mt TESTS_ENVIRONMENT += LOCALE_FR='@LOCALE_FR@' LOCALE_FR_UTF8='@LOCALE_FR_UTF8@' -check_PROGRAMS += test-nl_langinfo test-nl_langinfo-mt -test_nl_langinfo_LDADD = $(LDADD) $(LIB_SETLOCALE) -test_nl_langinfo_mt_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIBMULTITHREAD) $(LIB_NANOSLEEP) -EXTRA_DIST += test-nl_langinfo.sh test-nl_langinfo.c test-nl_langinfo-mt.c signature.h macros.h +check_PROGRAMS += test-nl_langinfo1 test-nl_langinfo2 test-nl_langinfo-mt +test_nl_langinfo1_LDADD = $(LDADD) $(SETLOCALE_LIB) +test_nl_langinfo2_LDADD = $(LDADD) $(SETLOCALE_LIB) +test_nl_langinfo_mt_LDADD = $(LDADD) $(SETLOCALE_LIB) $(LIBMULTITHREAD) $(NANOSLEEP_LIB) +EXTRA_DIST += test-nl_langinfo1.sh test-nl_langinfo2.sh test-nl_langinfo1.c test-nl_langinfo2.c test-nl_langinfo-mt.c signature.h macros.h ## end gnulib module nl_langinfo-tests @@ -1007,6 +1108,14 @@ EXTRA_DIST += test-nstrftime.c macros.h ## end gnulib module nstrftime-tests +## begin gnulib module nullptr-tests + +TESTS += test-nullptr +check_PROGRAMS += test-nullptr +EXTRA_DIST += test-nullptr.c macros.h + +## end gnulib module nullptr-tests + ## begin gnulib module open-tests TESTS += test-open @@ -1025,10 +1134,9 @@ EXTRA_DIST += test-pathmax.c ## begin gnulib module perror - -EXTRA_DIST += perror.c - -EXTRA_libtests_a_SOURCES += perror.c +if GL_COND_OBJ_PERROR +libtests_a_SOURCES += perror.c +endif ## end gnulib module perror @@ -1042,10 +1150,9 @@ EXTRA_DIST += macros.h signature.h test-perror.c test-perror2.c test-perror.sh ## begin gnulib module pipe-posix - -EXTRA_DIST += pipe.c - -EXTRA_libtests_a_SOURCES += pipe.c +if GL_COND_OBJ_PIPE +libtests_a_SOURCES += pipe.c +endif ## end gnulib module pipe-posix @@ -1057,6 +1164,23 @@ EXTRA_DIST += test-pipe.c signature.h macros.h ## end gnulib module pipe-posix-tests +## begin gnulib module pselect + +if GL_COND_OBJ_PSELECT +libtests_a_SOURCES += pselect.c +endif + +## end gnulib module pselect + +## begin gnulib module pselect-tests + +TESTS += test-pselect +check_PROGRAMS += test-pselect +test_pselect_LDADD = $(LDADD) @SELECT_LIB@ @LIBSOCKET@ @PTHREAD_SIGMASK_LIB@ $(INET_PTON_LIB) +EXTRA_DIST += test-pselect.c test-select.h macros.h signature.h + +## end gnulib module pselect-tests + ## begin gnulib module pthread-h BUILT_SOURCES += pthread.h @@ -1064,9 +1188,8 @@ BUILT_SOURCES += pthread.h # We need the following in order to create when the system # doesn't have one that works with the given compiler. pthread.h: pthread.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(_NORETURN_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's|@''HAVE_PTHREAD_H''@|$(HAVE_PTHREAD_H)|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ @@ -1192,9 +1315,9 @@ pthread.h: pthread.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(_NORETURN_H -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ -e '/definition of _Noreturn/r $(_NORETURN_H)' \ -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ - -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)'; \ - } > $@-t && \ - mv $@-t $@ + -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ + > $@-t + $(AM_V_at)mv $@-t $@ MOSTLYCLEANFILES += pthread.h pthread.h-t EXTRA_DIST += pthread.in.h @@ -1211,10 +1334,9 @@ EXTRA_DIST += test-pthread.c ## begin gnulib module pthread-thread - -EXTRA_DIST += pthread-thread.c - -EXTRA_libtests_a_SOURCES += pthread-thread.c +if GL_COND_OBJ_PTHREAD_THREAD +libtests_a_SOURCES += pthread-thread.c +endif ## end gnulib module pthread-thread @@ -1229,10 +1351,9 @@ EXTRA_DIST += test-pthread-thread.c macros.h ## begin gnulib module pthread_sigmask - -EXTRA_DIST += pthread_sigmask.c - -EXTRA_libtests_a_SOURCES += pthread_sigmask.c +if GL_COND_OBJ_PTHREAD_SIGMASK +libtests_a_SOURCES += pthread_sigmask.c +endif ## end gnulib module pthread_sigmask @@ -1240,18 +1361,17 @@ EXTRA_libtests_a_SOURCES += pthread_sigmask.c TESTS += test-pthread_sigmask1 test-pthread_sigmask2 check_PROGRAMS += test-pthread_sigmask1 test-pthread_sigmask2 -test_pthread_sigmask1_LDADD = $(LDADD) @LIB_PTHREAD_SIGMASK@ -test_pthread_sigmask2_LDADD = $(LDADD) @LIB_PTHREAD_SIGMASK@ @LIBMULTITHREAD@ +test_pthread_sigmask1_LDADD = $(LDADD) @PTHREAD_SIGMASK_LIB@ +test_pthread_sigmask2_LDADD = $(LDADD) @PTHREAD_SIGMASK_LIB@ @LIBMULTITHREAD@ EXTRA_DIST += test-pthread_sigmask1.c test-pthread_sigmask2.c signature.h macros.h ## end gnulib module pthread_sigmask-tests ## begin gnulib module putenv - -EXTRA_DIST += putenv.c - -EXTRA_libtests_a_SOURCES += putenv.c +if GL_COND_OBJ_PUTENV +libtests_a_SOURCES += putenv.c +endif ## end gnulib module putenv @@ -1259,7 +1379,7 @@ EXTRA_libtests_a_SOURCES += putenv.c TESTS += test-quotearg-simple check_PROGRAMS += test-quotearg-simple -test_quotearg_simple_LDADD = $(LDADD) @LIBINTL@ $(LIB_MBRTOWC) +test_quotearg_simple_LDADD = $(LDADD) @LIBINTL@ $(MBRTOWC_LIB) EXTRA_DIST += test-quotearg-simple.c test-quotearg.h macros.h zerosize-ptr.h ## end gnulib module quotearg-simple-tests @@ -1308,7 +1428,7 @@ EXTRA_DIST += test-reallocarray.c signature.h macros.h TESTS += test-regex check_PROGRAMS += test-regex -test_regex_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIB_MBRTOWC) @LIBINTL@ $(LIBTHREAD) +test_regex_LDADD = $(LDADD) $(SETLOCALE_LIB) $(MBRTOWC_LIB) @LIBINTL@ $(LIBTHREAD) EXTRA_DIST += test-regex.c macros.h ## end gnulib module regex-tests @@ -1327,9 +1447,8 @@ BUILT_SOURCES += sched.h # We need the following in order to create a replacement for when # the system doesn't have one. sched.h: sched.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's|@''HAVE_SCHED_H''@|$(HAVE_SCHED_H)|g' \ -e 's|@''HAVE_SYS_CDEFS_H''@|$(HAVE_SYS_CDEFS_H)|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ @@ -1342,9 +1461,8 @@ sched.h: sched.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H) -e 's|@''REPLACE_SCHED_YIELD''@|$(REPLACE_SCHED_YIELD)|g' \ -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ - < $(srcdir)/sched.in.h; \ - } > $@-t && \ - mv $@-t $@ + $(srcdir)/sched.in.h > $@-t + $(AM_V_at)mv $@-t $@ MOSTLYCLEANFILES += sched.h sched.h-t EXTRA_DIST += sched.in.h @@ -1361,10 +1479,9 @@ EXTRA_DIST += test-sched.c ## begin gnulib module select - -EXTRA_DIST += select.c - -EXTRA_libtests_a_SOURCES += select.c +if GL_COND_OBJ_SELECT +libtests_a_SOURCES += select.c +endif ## end gnulib module select @@ -1373,9 +1490,9 @@ EXTRA_libtests_a_SOURCES += select.c TESTS += test-select test-select-in.sh test-select-out.sh # test-select-stdin has to be run by hand. check_PROGRAMS += test-select test-select-fd test-select-stdin -test_select_LDADD = $(LDADD) @LIB_SELECT@ @LIBSOCKET@ $(INET_PTON_LIB) -test_select_fd_LDADD = $(LDADD) @LIB_SELECT@ -test_select_stdin_LDADD = $(LDADD) @LIB_SELECT@ +test_select_LDADD = $(LDADD) @SELECT_LIB@ @LIBSOCKET@ $(INET_PTON_LIB) +test_select_fd_LDADD = $(LDADD) @SELECT_LIB@ +test_select_stdin_LDADD = $(LDADD) @SELECT_LIB@ EXTRA_DIST += macros.h signature.h test-select.c test-select.h test-select-fd.c test-select-in.sh test-select-out.sh test-select-stdin.c ## end gnulib module select-tests @@ -1398,19 +1515,20 @@ check_PROGRAMS += \ test-setlocale_null \ test-setlocale_null-mt-one \ test-setlocale_null-mt-all -test_setlocale_null_LDADD = $(LDADD) @LIB_SETLOCALE_NULL@ -test_setlocale_null_mt_one_LDADD = $(LDADD) @LIB_SETLOCALE_NULL@ $(LIBMULTITHREAD) $(LIB_NANOSLEEP) -test_setlocale_null_mt_all_LDADD = $(LDADD) @LIB_SETLOCALE_NULL@ $(LIBMULTITHREAD) $(LIB_NANOSLEEP) +test_setlocale_null_LDADD = $(LDADD) @SETLOCALE_NULL_LIB@ +test_setlocale_null_mt_one_LDADD = $(LDADD) @SETLOCALE_NULL_LIB@ $(LIBMULTITHREAD) $(NANOSLEEP_LIB) +test_setlocale_null_mt_all_LDADD = $(LDADD) @SETLOCALE_NULL_LIB@ $(LIBMULTITHREAD) $(NANOSLEEP_LIB) EXTRA_DIST += test-setlocale_null.c test-setlocale_null-mt-one.c test-setlocale_null-mt-all.c ## end gnulib module setlocale-null-tests ## begin gnulib module setsockopt +if GL_COND_OBJ_SETSOCKOPT +libtests_a_SOURCES += setsockopt.c +endif -EXTRA_DIST += setsockopt.c w32sock.h - -EXTRA_libtests_a_SOURCES += setsockopt.c +EXTRA_DIST += w32sock.h ## end gnulib module setsockopt @@ -1427,29 +1545,11 @@ EXTRA_DIST += test-setsockopt.c signature.h macros.h TESTS += test-sh-quote check_PROGRAMS += test-sh-quote -test_sh_quote_LDADD = $(LDADD) @LIBINTL@ $(LIB_MBRTOWC) +test_sh_quote_LDADD = $(LDADD) @LIBINTL@ $(MBRTOWC_LIB) EXTRA_DIST += test-sh-quote.c ## end gnulib module sh-quote-tests -## begin gnulib module sigaction - -libtests_a_SOURCES += sig-handler.c - -EXTRA_DIST += sig-handler.h sigaction.c - -EXTRA_libtests_a_SOURCES += sigaction.c - -## end gnulib module sigaction - -## begin gnulib module sigaction-tests - -TESTS += test-sigaction -check_PROGRAMS += test-sigaction -EXTRA_DIST += test-sigaction.c signature.h macros.h - -## end gnulib module sigaction-tests - ## begin gnulib module signal-h-tests TESTS += test-signal-h @@ -1458,15 +1558,6 @@ EXTRA_DIST += test-signal-h.c ## end gnulib module signal-h-tests -## begin gnulib module sigprocmask - - -EXTRA_DIST += sigprocmask.c - -EXTRA_libtests_a_SOURCES += sigprocmask.c - -## end gnulib module sigprocmask - ## begin gnulib module sigprocmask-tests TESTS += test-sigprocmask @@ -1495,12 +1586,17 @@ EXTRA_DIST += test-sigsegv-catch-segv1.c test-sigsegv-catch-segv2.c test-sigsegv ## end gnulib module sigsegv-tests -## begin gnulib module sleep +## begin gnulib module size_max +libtests_a_SOURCES += size_max.h -EXTRA_DIST += sleep.c +## end gnulib module size_max -EXTRA_libtests_a_SOURCES += sleep.c +## begin gnulib module sleep + +if GL_COND_OBJ_SLEEP +libtests_a_SOURCES += sleep.c +endif ## end gnulib module sleep @@ -1580,10 +1676,11 @@ EXTRA_DIST += test-snprintf.c signature.h macros.h ## begin gnulib module socket +if GL_COND_OBJ_SOCKET +libtests_a_SOURCES += socket.c +endif -EXTRA_DIST += socket.c w32sock.h - -EXTRA_libtests_a_SOURCES += socket.c +EXTRA_DIST += w32sock.h ## end gnulib module socket @@ -1617,19 +1714,11 @@ EXTRA_DIST += test-stat.h test-stat.c signature.h macros.h TESTS += test-stat-time check_PROGRAMS += test-stat-time -test_stat_time_LDADD = $(LDADD) $(LIB_NANOSLEEP) +test_stat_time_LDADD = $(LDADD) $(NANOSLEEP_LIB) EXTRA_DIST += test-stat-time.c macros.h nap.h ## end gnulib module stat-time-tests -## begin gnulib module stdalign-tests - -TESTS += test-stdalign -check_PROGRAMS += test-stdalign -EXTRA_DIST += test-stdalign.c macros.h - -## end gnulib module stdalign-tests - ## begin gnulib module stdbool-tests TESTS += test-stdbool @@ -1638,6 +1727,14 @@ EXTRA_DIST += test-stdbool.c ## end gnulib module stdbool-tests +## begin gnulib module stdckdint-tests + +TESTS += test-stdckdint +check_PROGRAMS += test-stdckdint +EXTRA_DIST += macros.h test-intprops.c test-stdckdint.c + +## end gnulib module stdckdint-tests + ## begin gnulib module stddef-tests TESTS += test-stddef @@ -1658,7 +1755,7 @@ EXTRA_DIST += test-stdint.c TESTS += test-stdio check_PROGRAMS += test-stdio -EXTRA_DIST += test-stdio.c +EXTRA_DIST += test-stdio.c nan.h macros.h ## end gnulib module stdio-tests @@ -1747,10 +1844,9 @@ EXTRA_DIST += test-strtoll.c signature.h macros.h ## begin gnulib module symlink - -EXTRA_DIST += symlink.c - -EXTRA_libtests_a_SOURCES += symlink.c +if GL_COND_OBJ_SYMLINK +libtests_a_SOURCES += symlink.c +endif ## end gnulib module symlink @@ -1769,10 +1865,9 @@ BUILT_SOURCES += sys/ioctl.h # We need the following in order to create when the system # does not have a complete one. sys/ioctl.h: sys_ioctl.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H) - $(AM_V_at)$(MKDIR_P) sys - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(AM_V_GEN)$(MKDIR_P) '%reldir%/sys' + $(AM_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's|@''HAVE_SYS_IOCTL_H''@|$(HAVE_SYS_IOCTL_H)|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ @@ -1784,9 +1879,8 @@ sys/ioctl.h: sys_ioctl.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON -e 's|@''REPLACE_IOCTL''@|$(REPLACE_IOCTL)|g' \ -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ - < $(srcdir)/sys_ioctl.in.h; \ - } > $@-t && \ - mv $@-t $@ + $(srcdir)/sys_ioctl.in.h > $@-t + $(AM_V_at)mv $@-t $@ MOSTLYCLEANFILES += sys/ioctl.h sys/ioctl.h-t MOSTLYCLEANDIRS += sys @@ -1817,10 +1911,9 @@ BUILT_SOURCES += sys/select.h # We need the following in order to create when the system # doesn't have one that works with the given compiler. sys/select.h: sys_select.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H) - $(AM_V_at)$(MKDIR_P) sys - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(AM_V_GEN)$(MKDIR_P) '%reldir%/sys' + $(AM_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ @@ -1834,9 +1927,8 @@ sys/select.h: sys_select.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ -e 's|@''REPLACE_SELECT''@|$(REPLACE_SELECT)|g' \ -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ - < $(srcdir)/sys_select.in.h; \ - } > $@-t && \ - mv $@-t $@ + $(srcdir)/sys_select.in.h > $@-t + $(AM_V_at)mv $@-t $@ MOSTLYCLEANFILES += sys/select.h sys/select.h-t MOSTLYCLEANDIRS += sys @@ -1860,10 +1952,9 @@ libtests_a_SOURCES += sys_socket.c # We need the following in order to create when the system # doesn't have one that works with the given compiler. sys/socket.h: sys_socket.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H) $(ARG_NONNULL_H) - $(AM_V_at)$(MKDIR_P) sys - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(AM_V_GEN)$(MKDIR_P) '%reldir%/sys' + $(AM_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ @@ -1894,9 +1985,8 @@ sys/socket.h: sys_socket.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ -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)/sys_socket.in.h; \ - } > $@-t && \ - mv -f $@-t $@ + $(srcdir)/sys_socket.in.h > $@-t + $(AM_V_at)mv $@-t $@ MOSTLYCLEANFILES += sys/socket.h sys/socket.h-t MOSTLYCLEANDIRS += sys @@ -1943,18 +2033,16 @@ BUILT_SOURCES += sys/uio.h # We need the following in order to create when the system # doesn't have one that works with the given compiler. sys/uio.h: sys_uio.in.h $(top_builddir)/config.status - $(AM_V_at)$(MKDIR_P) sys - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(AM_V_GEN)$(MKDIR_P) '%reldir%/sys' + $(AM_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|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_SYS_UIO_H''@|$(NEXT_SYS_UIO_H)|g' \ -e 's|@''HAVE_SYS_UIO_H''@|$(HAVE_SYS_UIO_H)|g' \ - < $(srcdir)/sys_uio.in.h; \ - } > $@-t && \ - mv -f $@-t $@ + $(srcdir)/sys_uio.in.h > $@-t + $(AM_V_at)mv $@-t $@ MOSTLYCLEANFILES += sys/uio.h sys/uio.h-t MOSTLYCLEANDIRS += sys @@ -2002,11 +2090,27 @@ EXTRA_DIST += test-thread_self.c test-thread_create.c macros.h ## end gnulib module thread-tests +## begin gnulib module time + +if GL_COND_OBJ_TIME +libtests_a_SOURCES += time.c +endif + +## end gnulib module time + +## begin gnulib module time-h-tests + +TESTS += test-time-h +check_PROGRAMS += test-time-h +EXTRA_DIST += test-time-h.c + +## end gnulib module time-h-tests + ## begin gnulib module time-tests TESTS += test-time check_PROGRAMS += test-time -EXTRA_DIST += test-time.c +EXTRA_DIST += test-time.c signature.h macros.h ## end gnulib module time-tests @@ -2030,6 +2134,18 @@ EXTRA_DIST += test-timespec.c macros.h ## end gnulib module timespec-tests +## begin gnulib module trim-tests + +TESTS += test-trim1.sh test-trim2.sh test-trim3.sh +TESTS_ENVIRONMENT += \ + LOCALE_FR_UTF8='@LOCALE_FR_UTF8@' \ + LOCALE_ZH_CN='@LOCALE_ZH_CN@' +check_PROGRAMS += test-trim +test_trim_LDADD = $(LDADD) $(LIBUNISTRING) @LIBINTL@ $(MBRTOWC_LIB) +EXTRA_DIST += test-trim1.sh test-trim2.sh test-trim3.sh test-trim.c macros.h + +## end gnulib module trim-tests + ## begin gnulib module unistd-tests TESTS += test-unistd @@ -2086,6 +2202,15 @@ EXTRA_DIST += test-update-copyright.sh ## end gnulib module update-copyright-tests +## begin gnulib module vasnprintf + + +EXTRA_DIST += asnprintf.c float+.h printf-args.c printf-args.h printf-parse.c printf-parse.h vasnprintf.c vasnprintf.h + +EXTRA_libtests_a_SOURCES += asnprintf.c printf-args.c printf-parse.c vasnprintf.c + +## end gnulib module vasnprintf + ## begin gnulib module vasnprintf-tests TESTS += test-vasnprintf @@ -2095,15 +2220,6 @@ EXTRA_DIST += test-vasnprintf.c macros.h ## end gnulib module vasnprintf-tests -## begin gnulib module vasprintf-tests - -TESTS += test-vasprintf -check_PROGRAMS += test-vasprintf - -EXTRA_DIST += test-vasprintf.c signature.h macros.h - -## end gnulib module vasprintf-tests - ## begin gnulib module vc-list-files-tests TESTS += test-vc-list-files-git.sh @@ -2160,26 +2276,26 @@ TESTS_ENVIRONMENT += \ LOCALE_JA='@LOCALE_JA@' \ LOCALE_ZH_CN='@LOCALE_ZH_CN@' check_PROGRAMS += test-wcrtomb test-wcrtomb-w32 -test_wcrtomb_LDADD = $(LDADD) $(LIB_SETLOCALE) +test_wcrtomb_LDADD = $(LDADD) $(SETLOCALE_LIB) EXTRA_DIST += test-wcrtomb.sh test-wcrtomb.c test-wcrtomb-w32-1.sh test-wcrtomb-w32-2.sh test-wcrtomb-w32-3.sh test-wcrtomb-w32-4.sh test-wcrtomb-w32-5.sh test-wcrtomb-w32-6.sh test-wcrtomb-w32-7.sh test-wcrtomb-w32.c signature.h macros.h ## end gnulib module wcrtomb-tests ## begin gnulib module wctob - -EXTRA_DIST += wctob.c - -EXTRA_libtests_a_SOURCES += wctob.c +if GL_COND_OBJ_WCTOB +libtests_a_SOURCES += wctob.c +endif ## end gnulib module wctob ## begin gnulib module wctomb +if GL_COND_OBJ_WCTOMB +libtests_a_SOURCES += wctomb.c +endif -EXTRA_DIST += wctomb-impl.h wctomb.c - -EXTRA_libtests_a_SOURCES += wctomb.c +EXTRA_DIST += wctomb-impl.h ## end gnulib module wctomb @@ -2195,26 +2311,28 @@ EXTRA_DIST += test-wctype-h.c macros.h TESTS += test-wcwidth check_PROGRAMS += test-wcwidth -test_wcwidth_LDADD = $(LDADD) $(LIB_SETLOCALE) $(LIBUNISTRING) +test_wcwidth_LDADD = $(LDADD) $(SETLOCALE_LIB) $(LIBUNISTRING) EXTRA_DIST += test-wcwidth.c signature.h macros.h ## end gnulib module wcwidth-tests ## begin gnulib module windows-thread +if GL_COND_OBJ_WINDOWS_THREAD +libtests_a_SOURCES += windows-thread.c +endif -EXTRA_DIST += windows-thread.c windows-thread.h - -EXTRA_libtests_a_SOURCES += windows-thread.c +EXTRA_DIST += windows-thread.h ## end gnulib module windows-thread ## begin gnulib module windows-tls +if GL_COND_OBJ_WINDOWS_TLS +libtests_a_SOURCES += windows-tls.c +endif -EXTRA_DIST += windows-tls.c windows-tls.h - -EXTRA_libtests_a_SOURCES += windows-tls.c +EXTRA_DIST += windows-tls.h ## end gnulib module windows-tls @@ -2227,6 +2345,12 @@ EXTRA_DIST += test-xalloc-die.c test-xalloc-die.sh ## end gnulib module xalloc-die-tests +## begin gnulib module xsize + +libtests_a_SOURCES += xsize.h xsize.c + +## end gnulib module xsize + ## begin gnulib module xstdopen-tests TESTS += test-xstdopen.sh @@ -2263,15 +2387,13 @@ EXTRA_DIST += test-xstrtol.c test-xstrtoul.c test-xstrtol.sh ## end gnulib module xstrtol-tests -## begin gnulib module xvasprintf-tests - -TESTS += test-xvasprintf -check_PROGRAMS += test-xvasprintf -test_xvasprintf_LDADD = $(LDADD) @LIBINTL@ +## begin gnulib module year2038-tests -EXTRA_DIST += test-xvasprintf.c macros.h +TESTS += test-year2038 +check_PROGRAMS += test-year2038 +EXTRA_DIST += test-year2038.c -## end gnulib module xvasprintf-tests +## end gnulib module year2038-tests all: all-notice all-notice: diff --git a/gnulib-tests/hash-pjw.c b/gnulib-tests/hash-pjw.c index 19e7762..74afac7 100644 --- a/gnulib-tests/hash-pjw.c +++ b/gnulib-tests/hash-pjw.c @@ -1,6 +1,6 @@ /* hash-pjw.c -- compute a hash value from a NUL-terminated string. - Copyright (C) 2001, 2003, 2006, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2001, 2003, 2006, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/gnulib-tests/hash-pjw.h b/gnulib-tests/hash-pjw.h index cb18cf3..69af02f 100644 --- a/gnulib-tests/hash-pjw.h +++ b/gnulib-tests/hash-pjw.h @@ -1,5 +1,5 @@ /* hash-pjw.h -- declaration for a simple hash function - Copyright (C) 2001, 2003, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2001, 2003, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -14,6 +14,11 @@ You should have received a copy of the GNU Lesser General Public License along with this program. If not, see . */ +/* This file uses _GL_ATTRIBUTE_PURE. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + #include /* Compute a hash code for a NUL-terminated string starting at X, diff --git a/gnulib-tests/inet_pton.c b/gnulib-tests/inet_pton.c index 14e8b0a..49a27bb 100644 --- a/gnulib-tests/inet_pton.c +++ b/gnulib-tests/inet_pton.c @@ -1,6 +1,6 @@ /* inet_pton.c -- convert IPv4 and IPv6 addresses from text to binary form - Copyright (C) 2006, 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2006, 2008-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/gnulib-tests/init.sh b/gnulib-tests/init.sh index 9ef8348..0494097 100644 --- a/gnulib-tests/init.sh +++ b/gnulib-tests/init.sh @@ -1,6 +1,6 @@ # source this file; set up for tests -# Copyright (C) 2009-2021 Free Software Foundation, Inc. +# Copyright (C) 2009-2023 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -271,12 +271,10 @@ test -n "$EXEEXT" && test -n "$BASH_VERSION" && shopt -s expand_aliases # # First, try to use the mktemp program. # Failing that, we'll roll our own mktemp-like function: -# - try to get random bytes from /dev/urandom +# - try to get random bytes from /dev/urandom, mapping them to file-name bytes # - failing that, generate output from a combination of quickly-varying -# sources and gzip. Ignore non-varying gzip header, and extract -# "random" bits from there. -# - given those bits, map to file-name bytes using tr, and try to create -# the desired directory. +# sources and awk. +# - try to create the desired directory. # - make only $MAX_TRIES_ attempts # Helper function. Print $N pseudo-random bytes from a-zA-Z0-9. @@ -296,20 +294,27 @@ rand_bytes_ () return fi - n_plus_50_=`expr $n_ + 50` - cmds_='date; date +%N; free; who -a; w; ps auxww; ps -ef' - data_=` (eval "$cmds_") 2>&1 | gzip ` - - # Ensure that $data_ has length at least 50+$n_ - while :; do - len_=`echo "$data_"|wc -c` - test $n_plus_50_ -le $len_ && break; - data_=` (echo "$data_"; eval "$cmds_") 2>&1 | gzip ` - done - - echo "$data_" \ - | dd bs=1 skip=50 count=$n_ 2>/dev/null \ - | LC_ALL=C tr -c $chars_ 01234567$chars_$chars_$chars_ + # Fall back on quickly-varying sources + awk. + # Limit awk program to 7th Edition Unix so that it works even on Solaris 10. + + (date; date +%N; free; who -a; w; ps auxww; ps -ef) 2>&1 | awk ' + BEGIN { + n = '"$n_"' + for (i = 0; i < 256; i++) + ordinal[sprintf ("%c", i)] = i + } + { + for (i = 1; i <= length; i++) + a[ai++ % n] += ordinal[substr ($0, i, 1)] + } + END { + chars = "'"$chars_"'" + charslen = length (chars) + for (i = 0; i < n; i++) + printf "%s", substr (chars, a[i] % charslen + 1, 1) + printf "\n" + } + ' } mktempd_ () @@ -426,6 +431,23 @@ setup_ () for sig_ in 1 2 3 13 15; do eval "trap 'Exit $(expr $sig_ + 128)' $sig_" done + + # Remove relative and non-accessible directories from PATH, including '.' + # and Zero-length entries. + saved_IFS="$IFS" + IFS=: + new_PATH= + sep_= + for dir in $PATH; do + case "$dir" in + /*) test -d "$dir/." || continue + new_PATH="${new_PATH}${sep_}${dir}" + sep_=':';; + esac + done + IFS="$saved_IFS" + PATH="$new_PATH" + export PATH } # This is a stub function that is run upon trap (upon regular exit and @@ -624,18 +646,19 @@ compare_dev_null_ () for diff_opt_ in -u -U3 -c '' no; do test "$diff_opt_" != no && - diff_out_=`exec 2>/dev/null; diff $diff_opt_ "$0" "$0" < /dev/null` && + diff_out_=`exec 2>/dev/null + LC_ALL=C diff $diff_opt_ "$0" "$0" < /dev/null` && break done if test "$diff_opt_" != no; then if test -z "$diff_out_"; then - compare_ () { diff $diff_opt_ "$@"; } + compare_ () { LC_ALL=C diff $diff_opt_ "$@"; } else compare_ () { # If no differences were found, AIX and HP-UX 'diff' produce output # like "No differences encountered". Hide this output. - diff $diff_opt_ "$@" > diff.out + LC_ALL=C diff $diff_opt_ "$@" > diff.out diff_status_=$? test $diff_status_ -eq 0 || cat diff.out || diff_status_=2 rm -f diff.out || diff_status_=2 @@ -680,4 +703,4 @@ test -f "$srcdir/init.cfg" \ setup_ "$@" # This trap is here, rather than in the setup_ function, because some # shells run the exit trap at shell function exit, rather than script exit. -trap remove_tmp_ 0 +trap remove_tmp_ EXIT diff --git a/gnulib-tests/ioctl.c b/gnulib-tests/ioctl.c index ca90582..65cce13 100644 --- a/gnulib-tests/ioctl.c +++ b/gnulib-tests/ioctl.c @@ -1,6 +1,6 @@ /* ioctl.c --- wrappers for Windows ioctl function - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/itold.c b/gnulib-tests/itold.c similarity index 94% rename from lib/itold.c rename to gnulib-tests/itold.c index 7984866..0ef4464 100644 --- a/lib/itold.c +++ b/gnulib-tests/itold.c @@ -1,5 +1,5 @@ /* Replacement for 'int' to 'long double' conversion routine. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2011. This file is free software: you can redistribute it and/or modify diff --git a/gnulib-tests/listen.c b/gnulib-tests/listen.c index a145f82..85600fa 100644 --- a/gnulib-tests/listen.c +++ b/gnulib-tests/listen.c @@ -1,6 +1,6 @@ /* listen.c --- wrappers for Windows listen function - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/gnulib-tests/locale.c b/gnulib-tests/locale.c index 6185c4d..a71d885 100644 --- a/gnulib-tests/locale.c +++ b/gnulib-tests/locale.c @@ -1,9 +1,9 @@ /* Program that prints the names of the categories of the current locale. - Copyright (C) 2019-2021 Free Software Foundation, Inc. + Copyright (C) 2019-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/macros.h b/gnulib-tests/macros.h index fccfc50..eea9056 100644 --- a/gnulib-tests/macros.h +++ b/gnulib-tests/macros.h @@ -1,9 +1,9 @@ /* Common macros used by gnulib tests. - Copyright (C) 2006-2021 Free Software Foundation, Inc. + Copyright (C) 2006-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/mmap-anon-util.h b/gnulib-tests/mmap-anon-util.h index b526cb6..0854122 100644 --- a/gnulib-tests/mmap-anon-util.h +++ b/gnulib-tests/mmap-anon-util.h @@ -1,5 +1,5 @@ /* Some auxiliary stuff for using mmap & friends. - Copyright (C) 2002-2021 Free Software Foundation, Inc. + Copyright (C) 2002-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by diff --git a/gnulib-tests/nan.h b/gnulib-tests/nan.h new file mode 100644 index 0000000..05f141d --- /dev/null +++ b/gnulib-tests/nan.h @@ -0,0 +1,85 @@ +/* Macros for not-a-number. + Copyright (C) 2007-2023 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + + +/* IBM z/OS supports both hexadecimal and IEEE floating-point formats. The + former does not support NaN and its isnan() implementation returns zero + for all values. */ +#if defined __MVS__ && defined __IBMC__ && !defined __BFP__ +# error "NaN is not supported with IBM's hexadecimal floating-point format; please re-compile with -qfloat=ieee" +#endif + +/* NaNf () returns a 'float' not-a-number. */ + +/* The Compaq (ex-DEC) C 6.4 compiler and the Microsoft MSVC 9 compiler choke + on the expression 0.0 / 0.0. The IBM XL C compiler on z/OS complains. + PGI 16.10 complains. */ +#if (defined __DECC || defined _MSC_VER \ + || (defined __MVS__ && defined __IBMC__) \ + || defined __PGI) +static float +NaNf () +{ + static float zero = 0.0f; + return zero / zero; +} +#else +# define NaNf() (0.0f / 0.0f) +#endif + + +/* NaNd () returns a 'double' not-a-number. */ + +/* The Compaq (ex-DEC) C 6.4 compiler and the Microsoft MSVC 9 compiler choke + on the expression 0.0 / 0.0. The IBM XL C compiler on z/OS complains. + PGI 16.10 complains. */ +#if (defined __DECC || defined _MSC_VER \ + || (defined __MVS__ && defined __IBMC__) \ + || defined __PGI) +static double +NaNd () +{ + static double zero = 0.0; + return zero / zero; +} +#else +# define NaNd() (0.0 / 0.0) +#endif + + +/* NaNl () returns a 'long double' not-a-number. */ + +/* On Irix 6.5, gcc 3.4.3 can't compute compile-time NaN, and needs the + runtime type conversion. + The Microsoft MSVC 9 compiler chokes on the expression 0.0L / 0.0L. + The IBM XL C compiler on z/OS complains. + PGI 16.10 complains. */ +#ifdef __sgi +static long double NaNl () +{ + double zero = 0.0; + return zero / zero; +} +#elif defined _MSC_VER || (defined __MVS__ && defined __IBMC__) || defined __PGI +static long double +NaNl () +{ + static long double zero = 0.0L; + return zero / zero; +} +#else +# define NaNl() (0.0L / 0.0L) +#endif diff --git a/gnulib-tests/nanosleep.c b/gnulib-tests/nanosleep.c index 10990dc..10974df 100644 --- a/gnulib-tests/nanosleep.c +++ b/gnulib-tests/nanosleep.c @@ -1,6 +1,6 @@ /* Provide a replacement for the POSIX nanosleep function. - Copyright (C) 1999-2000, 2002, 2004-2021 Free Software Foundation, Inc. + Copyright (C) 1999-2000, 2002, 2004-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -23,16 +23,12 @@ #include #include "intprops.h" -#include "sig-handler.h" -#include "verify.h" -#include #include #include #include #include -#include #include #include @@ -61,11 +57,10 @@ nanosleep (const struct timespec *requested_delay, { /* Verify that time_t is large enough. */ - verify (TYPE_MAXIMUM (time_t) / 24 / 24 / 60 / 60); + static_assert (TYPE_MAXIMUM (time_t) / 24 / 24 / 60 / 60); const time_t limit = 24 * 24 * 60 * 60; time_t seconds = requested_delay->tv_sec; - struct timespec intermediate; - intermediate.tv_nsec = requested_delay->tv_nsec; + struct timespec intermediate = *requested_delay; while (limit < seconds) { @@ -181,45 +176,9 @@ nanosleep (const struct timespec *requested_delay, } #else -/* Unix platforms lacking nanosleep. */ - -/* Some systems (MSDOS) don't have SIGCONT. - Using SIGTERM here turns the signal-handling code below - into a no-op on such systems. */ -# ifndef SIGCONT -# define SIGCONT SIGTERM -# endif - -static sig_atomic_t volatile suspended; - -/* Handle SIGCONT. */ - -static _GL_ASYNC_SAFE void -sighandler (int sig) -{ - suspended = 1; -} - -/* Suspend execution for at least *TS_DELAY seconds. */ - -static int -my_usleep (const struct timespec *ts_delay) -{ - struct timeval tv_delay; - tv_delay.tv_sec = ts_delay->tv_sec; - tv_delay.tv_usec = (ts_delay->tv_nsec + 999) / 1000; - if (tv_delay.tv_usec == 1000000) - { - if (tv_delay.tv_sec == TYPE_MAXIMUM (time_t)) - tv_delay.tv_usec = 1000000 - 1; /* close enough */ - else - { - tv_delay.tv_sec++; - tv_delay.tv_usec = 0; - } - } - return select (0, NULL, NULL, NULL, &tv_delay); -} +/* Other platforms lacking nanosleep. + It's not clear whether these are still practical porting targets. + For now, just fall back on pselect. */ /* Suspend execution for at least *REQUESTED_DELAY seconds. The *REMAINING_DELAY part isn't implemented yet. */ @@ -228,49 +187,6 @@ int nanosleep (const struct timespec *requested_delay, struct timespec *remaining_delay) { - static bool initialized; - - if (requested_delay->tv_nsec < 0 || BILLION <= requested_delay->tv_nsec) - { - errno = EINVAL; - return -1; - } - - /* set up sig handler */ - if (! initialized) - { - struct sigaction oldact; - - sigaction (SIGCONT, NULL, &oldact); - if (get_handler (&oldact) != SIG_IGN) - { - struct sigaction newact; - - newact.sa_handler = sighandler; - sigemptyset (&newact.sa_mask); - newact.sa_flags = 0; - sigaction (SIGCONT, &newact, NULL); - } - initialized = true; - } - - suspended = 0; - - if (my_usleep (requested_delay) == -1) - { - if (suspended) - { - /* Calculate time remaining. */ - /* FIXME: the code in sleep doesn't use this, so there's no - rush to implement it. */ - - errno = EINTR; - } - return -1; - } - - /* FIXME: Restore sig handler? */ - - return 0; + return pselect (0, NULL, NULL, NULL, requested_delay, NULL); } #endif diff --git a/gnulib-tests/nap.h b/gnulib-tests/nap.h index 3d0a51d..5dea86d 100644 --- a/gnulib-tests/nap.h +++ b/gnulib-tests/nap.h @@ -1,9 +1,9 @@ /* Assist in file system timestamp tests. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -20,9 +20,8 @@ # define GLTEST_NAP_H # include -# include -# include +# include /* Avoid a conflict with a function called nap() on UnixWare. */ # if defined _SCO_DS || (defined __SCO_VERSION__ || defined __sysv5__) /* OpenServer, UnixWare */ @@ -55,9 +54,9 @@ diff_timespec (struct timespec a, struct timespec b) if (! (bs < as || (bs == as && bns < ans))) return 0; - if (INT_SUBTRACT_WRAPV (as, bs, &sdiff) - || INT_MULTIPLY_WRAPV (sdiff, 1000000000, &sdiff) - || INT_ADD_WRAPV (sdiff, ans - bns, &sdiff)) + if (ckd_sub (&sdiff, as, bs) + || ckd_mul (&sdiff, sdiff, 1000000000) + || ckd_add (&sdiff, sdiff, ans - bns)) return INT_MAX; return sdiff; diff --git a/gnulib-tests/netinet_in.in.h b/gnulib-tests/netinet_in.in.h index 21f3a64..f88923a 100644 --- a/gnulib-tests/netinet_in.in.h +++ b/gnulib-tests/netinet_in.in.h @@ -1,5 +1,5 @@ /* Substitute for . - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/gnulib-tests/perror.c b/gnulib-tests/perror.c index d02b4f6..a10cf71 100644 --- a/gnulib-tests/perror.c +++ b/gnulib-tests/perror.c @@ -1,5 +1,5 @@ /* Print a message describing error code. - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. Written by Bruno Haible and Simon Josefsson. This file is free software: you can redistribute it and/or modify diff --git a/gnulib-tests/pipe.c b/gnulib-tests/pipe.c index fc978f2..e8573ed 100644 --- a/gnulib-tests/pipe.c +++ b/gnulib-tests/pipe.c @@ -1,5 +1,5 @@ /* Create a pipe. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/printf-args.c b/gnulib-tests/printf-args.c similarity index 60% rename from lib/printf-args.c rename to gnulib-tests/printf-args.c index b822682..b2b21ae 100644 --- a/lib/printf-args.c +++ b/gnulib-tests/printf-args.c @@ -1,5 +1,5 @@ /* Decomposed printf argument list. - Copyright (C) 1999, 2002-2003, 2005-2007, 2009-2021 Free Software + Copyright (C) 1999, 2002-2003, 2005-2007, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify @@ -29,6 +29,9 @@ # include "printf-args.h" #endif +/* Get INT_WIDTH. */ +#include + #ifdef STATIC STATIC #endif @@ -71,6 +74,102 @@ PRINTF_FETCHARGS (va_list args, arguments *a) case TYPE_ULONGLONGINT: ap->a.a_ulonglongint = va_arg (args, unsigned long long int); break; + case TYPE_INT8_T: + #if INT8_WIDTH < INT_WIDTH + ap->a.a_int8_t = va_arg (args, /* int8_t */ int); + #else + ap->a.a_int8_t = va_arg (args, int8_t); + #endif + break; + case TYPE_UINT8_T: + #if UINT8_WIDTH < INT_WIDTH + ap->a.a_uint8_t = va_arg (args, /* uint8_t */ int); + #else + ap->a.a_uint8_t = va_arg (args, uint8_t); + #endif + break; + case TYPE_INT16_T: + #if INT16_WIDTH < INT_WIDTH + ap->a.a_int16_t = va_arg (args, /* int16_t */ int); + #else + ap->a.a_int16_t = va_arg (args, int16_t); + #endif + break; + case TYPE_UINT16_T: + #if UINT16_WIDTH < INT_WIDTH + ap->a.a_uint16_t = va_arg (args, /* uint16_t */ int); + #else + ap->a.a_uint16_t = va_arg (args, uint16_t); + #endif + break; + case TYPE_INT32_T: + #if INT32_WIDTH < INT_WIDTH + ap->a.a_int32_t = va_arg (args, /* int32_t */ int); + #else + ap->a.a_int32_t = va_arg (args, int32_t); + #endif + break; + case TYPE_UINT32_T: + #if UINT32_WIDTH < INT_WIDTH + ap->a.a_uint32_t = va_arg (args, /* uint32_t */ int); + #else + ap->a.a_uint32_t = va_arg (args, uint32_t); + #endif + break; + case TYPE_INT64_T: + ap->a.a_int64_t = va_arg (args, int64_t); + break; + case TYPE_UINT64_T: + ap->a.a_uint64_t = va_arg (args, uint64_t); + break; + case TYPE_INT_FAST8_T: + #if INT_FAST8_WIDTH < INT_WIDTH + ap->a.a_int_fast8_t = va_arg (args, /* int_fast8_t */ int); + #else + ap->a.a_int_fast8_t = va_arg (args, int_fast8_t); + #endif + break; + case TYPE_UINT_FAST8_T: + #if UINT_FAST8_WIDTH < INT_WIDTH + ap->a.a_uint_fast8_t = va_arg (args, /* uint_fast8_t */ int); + #else + ap->a.a_uint_fast8_t = va_arg (args, uint_fast8_t); + #endif + break; + case TYPE_INT_FAST16_T: + #if INT_FAST16_WIDTH < INT_WIDTH + ap->a.a_int_fast16_t = va_arg (args, /* int_fast16_t */ int); + #else + ap->a.a_int_fast16_t = va_arg (args, int_fast16_t); + #endif + break; + case TYPE_UINT_FAST16_T: + #if UINT_FAST16_WIDTH < INT_WIDTH + ap->a.a_uint_fast16_t = va_arg (args, /* uint_fast16_t */ int); + #else + ap->a.a_uint_fast16_t = va_arg (args, uint_fast16_t); + #endif + break; + case TYPE_INT_FAST32_T: + #if INT_FAST32_WIDTH < INT_WIDTH + ap->a.a_int_fast32_t = va_arg (args, /* int_fast32_t */ int); + #else + ap->a.a_int_fast32_t = va_arg (args, int_fast32_t); + #endif + break; + case TYPE_UINT_FAST32_T: + #if UINT_FAST32_WIDTH < INT_WIDTH + ap->a.a_uint_fast32_t = va_arg (args, /* uint_fast32_t */ int); + #else + ap->a.a_uint_fast32_t = va_arg (args, uint_fast32_t); + #endif + break; + case TYPE_INT_FAST64_T: + ap->a.a_int_fast64_t = va_arg (args, int_fast64_t); + break; + case TYPE_UINT_FAST64_T: + ap->a.a_uint_fast64_t = va_arg (args, uint_fast64_t); + break; case TYPE_DOUBLE: ap->a.a_double = va_arg (args, double); break; @@ -136,6 +235,30 @@ PRINTF_FETCHARGS (va_list args, arguments *a) case TYPE_COUNT_LONGLONGINT_POINTER: ap->a.a_count_longlongint_pointer = va_arg (args, long long int *); break; + case TYPE_COUNT_INT8_T_POINTER: + ap->a.a_count_int8_t_pointer = va_arg (args, int8_t *); + break; + case TYPE_COUNT_INT16_T_POINTER: + ap->a.a_count_int16_t_pointer = va_arg (args, int16_t *); + break; + case TYPE_COUNT_INT32_T_POINTER: + ap->a.a_count_int32_t_pointer = va_arg (args, int32_t *); + break; + case TYPE_COUNT_INT64_T_POINTER: + ap->a.a_count_int64_t_pointer = va_arg (args, int64_t *); + break; + case TYPE_COUNT_INT_FAST8_T_POINTER: + ap->a.a_count_int_fast8_t_pointer = va_arg (args, int_fast8_t *); + break; + case TYPE_COUNT_INT_FAST16_T_POINTER: + ap->a.a_count_int_fast16_t_pointer = va_arg (args, int_fast16_t *); + break; + case TYPE_COUNT_INT_FAST32_T_POINTER: + ap->a.a_count_int_fast32_t_pointer = va_arg (args, int_fast32_t *); + break; + case TYPE_COUNT_INT_FAST64_T_POINTER: + ap->a.a_count_int_fast64_t_pointer = va_arg (args, int_fast64_t *); + break; #if ENABLE_UNISTDIO /* The unistdio extensions. */ case TYPE_U8_STRING: diff --git a/lib/printf-args.h b/gnulib-tests/printf-args.h similarity index 61% rename from lib/printf-args.h rename to gnulib-tests/printf-args.h index c8d9174..1101610 100644 --- a/lib/printf-args.h +++ b/gnulib-tests/printf-args.h @@ -1,5 +1,5 @@ /* Decomposed printf argument list. - Copyright (C) 1999, 2002-2003, 2006-2007, 2011-2021 Free Software + Copyright (C) 1999, 2002-2003, 2006-2007, 2011-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify @@ -41,6 +41,9 @@ # include #endif +/* Get intN_t, uintN_t, intN_fast_t, uintN_fast_t. */ +#include + /* Get va_list. */ #include @@ -59,6 +62,26 @@ typedef enum TYPE_ULONGINT, TYPE_LONGLONGINT, TYPE_ULONGLONGINT, + /* According to ISO C 23 § 7.23.6.1, "all exact-width integer types", + "all minimum-width integer types", and "all fastest minimum-width integer + types" defined in should be supported. But for portability + between platforms, we support only those with N = 8, 16, 32, 64. */ + TYPE_INT8_T, + TYPE_UINT8_T, + TYPE_INT16_T, + TYPE_UINT16_T, + TYPE_INT32_T, + TYPE_UINT32_T, + TYPE_INT64_T, + TYPE_UINT64_T, + TYPE_INT_FAST8_T, + TYPE_UINT_FAST8_T, + TYPE_INT_FAST16_T, + TYPE_UINT_FAST16_T, + TYPE_INT_FAST32_T, + TYPE_UINT_FAST32_T, + TYPE_INT_FAST64_T, + TYPE_UINT_FAST64_T, TYPE_DOUBLE, TYPE_LONGDOUBLE, TYPE_CHAR, @@ -74,7 +97,15 @@ typedef enum TYPE_COUNT_SHORT_POINTER, TYPE_COUNT_INT_POINTER, TYPE_COUNT_LONGINT_POINTER, - TYPE_COUNT_LONGLONGINT_POINTER + TYPE_COUNT_LONGLONGINT_POINTER, + TYPE_COUNT_INT8_T_POINTER, + TYPE_COUNT_INT16_T_POINTER, + TYPE_COUNT_INT32_T_POINTER, + TYPE_COUNT_INT64_T_POINTER, + TYPE_COUNT_INT_FAST8_T_POINTER, + TYPE_COUNT_INT_FAST16_T_POINTER, + TYPE_COUNT_INT_FAST32_T_POINTER, + TYPE_COUNT_INT_FAST64_T_POINTER #if ENABLE_UNISTDIO /* The unistdio extensions. */ , TYPE_U8_STRING @@ -99,7 +130,23 @@ typedef struct unsigned long int a_ulongint; long long int a_longlongint; unsigned long long int a_ulonglongint; - float a_float; + int8_t a_int8_t; + uint8_t a_uint8_t; + int16_t a_int16_t; + uint16_t a_uint16_t; + int32_t a_int32_t; + uint32_t a_uint32_t; + int64_t a_int64_t; + uint64_t a_uint64_t; + int_fast8_t a_int_fast8_t; + uint_fast8_t a_uint_fast8_t; + int_fast16_t a_int_fast16_t; + uint_fast16_t a_uint_fast16_t; + int_fast32_t a_int_fast32_t; + uint_fast32_t a_uint_fast32_t; + int_fast64_t a_int_fast64_t; + uint_fast64_t a_uint_fast64_t; + float a_float; /* unused */ double a_double; long double a_longdouble; int a_char; @@ -116,6 +163,14 @@ typedef struct int * a_count_int_pointer; long int * a_count_longint_pointer; long long int * a_count_longlongint_pointer; + int8_t * a_count_int8_t_pointer; + int16_t * a_count_int16_t_pointer; + int32_t * a_count_int32_t_pointer; + int64_t * a_count_int64_t_pointer; + int_fast8_t * a_count_int_fast8_t_pointer; + int_fast16_t * a_count_int_fast16_t_pointer; + int_fast32_t * a_count_int_fast32_t_pointer; + int_fast64_t * a_count_int_fast64_t_pointer; #if ENABLE_UNISTDIO /* The unistdio extensions. */ const uint8_t * a_u8_string; diff --git a/lib/printf-parse.c b/gnulib-tests/printf-parse.c similarity index 54% rename from lib/printf-parse.c rename to gnulib-tests/printf-parse.c index f21cc17..d3f2c3c 100644 --- a/lib/printf-parse.c +++ b/gnulib-tests/printf-parse.c @@ -1,5 +1,5 @@ /* Formatted output to strings. - Copyright (C) 1999-2000, 2002-2003, 2006-2021 Free Software Foundation, Inc. + Copyright (C) 1999-2000, 2002-2003, 2006-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -326,226 +326,317 @@ PRINTF_PARSE (const CHAR_T *format, DIRECTIVES *d, arguments *a) arg_type type; /* Parse argument type/size specifiers. */ - { - int flags = 0; - - for (;;) - { - if (*cp == 'h') - { - flags |= (1 << (flags & 1)); - cp++; - } - else if (*cp == 'L') - { - flags |= 4; - cp++; - } - else if (*cp == 'l') - { - flags += 8; - cp++; - } - else if (*cp == 'j') - { - if (sizeof (intmax_t) > sizeof (long)) - { - /* intmax_t = long long */ - flags += 16; - } - else if (sizeof (intmax_t) > sizeof (int)) - { - /* intmax_t = long */ - flags += 8; - } - cp++; - } - else if (*cp == 'z' || *cp == 'Z') - { - /* 'z' is standardized in ISO C 99, but glibc uses 'Z' - because the warning facility in gcc-2.95.2 understands - only 'Z' (see gcc-2.95.2/gcc/c-common.c:1784). */ - if (sizeof (size_t) > sizeof (long)) - { - /* size_t = long long */ - flags += 16; - } - else if (sizeof (size_t) > sizeof (int)) - { - /* size_t = long */ - flags += 8; - } - cp++; - } - else if (*cp == 't') - { - if (sizeof (ptrdiff_t) > sizeof (long)) - { - /* ptrdiff_t = long long */ - flags += 16; - } - else if (sizeof (ptrdiff_t) > sizeof (int)) - { - /* ptrdiff_t = long */ - flags += 8; - } - cp++; - } + /* Relevant for the conversion characters d, i. */ + arg_type signed_type = TYPE_INT; + /* Relevant for the conversion characters b, o, u, x, X. */ + arg_type unsigned_type = TYPE_UINT; + /* Relevant for the conversion characters n. */ + arg_type pointer_type = TYPE_COUNT_INT_POINTER; + /* Relevant for the conversion characters a, A, e, E, f, F, g, G. */ + arg_type floatingpoint_type = TYPE_DOUBLE; + + if (*cp == 'h') + { + if (cp[1] == 'h') + { + signed_type = TYPE_SCHAR; + unsigned_type = TYPE_UCHAR; + pointer_type = TYPE_COUNT_SCHAR_POINTER; + cp += 2; + } + else + { + signed_type = TYPE_SHORT; + unsigned_type = TYPE_USHORT; + pointer_type = TYPE_COUNT_SHORT_POINTER; + cp++; + } + } + else if (*cp == 'l') + { + if (cp[1] == 'l') + { + signed_type = TYPE_LONGLONGINT; + unsigned_type = TYPE_ULONGLONGINT; + pointer_type = TYPE_COUNT_LONGLONGINT_POINTER; + /* For backward compatibility only. */ + floatingpoint_type = TYPE_LONGDOUBLE; + cp += 2; + } + else + { + signed_type = TYPE_LONGINT; + unsigned_type = TYPE_ULONGINT; + pointer_type = TYPE_COUNT_LONGINT_POINTER; + cp++; + } + } + else if (*cp == 'j') + { + if (sizeof (intmax_t) > sizeof (long)) + { + /* intmax_t = long long */ + signed_type = TYPE_LONGLONGINT; + unsigned_type = TYPE_ULONGLONGINT; + pointer_type = TYPE_COUNT_LONGLONGINT_POINTER; + /* For backward compatibility only. */ + floatingpoint_type = TYPE_LONGDOUBLE; + } + else if (sizeof (intmax_t) > sizeof (int)) + { + /* intmax_t = long */ + signed_type = TYPE_LONGINT; + unsigned_type = TYPE_ULONGINT; + pointer_type = TYPE_COUNT_LONGINT_POINTER; + } + cp++; + } + else if (*cp == 'z' || *cp == 'Z') + { + /* 'z' is standardized in ISO C 99, but glibc uses 'Z' + because the warning facility in gcc-2.95.2 understands + only 'Z' (see gcc-2.95.2/gcc/c-common.c:1784). */ + if (sizeof (size_t) > sizeof (long)) + { + /* size_t = unsigned long long */ + signed_type = TYPE_LONGLONGINT; + unsigned_type = TYPE_ULONGLONGINT; + pointer_type = TYPE_COUNT_LONGLONGINT_POINTER; + /* For backward compatibility only. */ + floatingpoint_type = TYPE_LONGDOUBLE; + } + else if (sizeof (size_t) > sizeof (int)) + { + /* size_t = unsigned long */ + signed_type = TYPE_LONGINT; + unsigned_type = TYPE_ULONGINT; + pointer_type = TYPE_COUNT_LONGINT_POINTER; + } + cp++; + } + else if (*cp == 't') + { + if (sizeof (ptrdiff_t) > sizeof (long)) + { + /* ptrdiff_t = long long */ + signed_type = TYPE_LONGLONGINT; + unsigned_type = TYPE_ULONGLONGINT; + pointer_type = TYPE_COUNT_LONGLONGINT_POINTER; + /* For backward compatibility only. */ + floatingpoint_type = TYPE_LONGDOUBLE; + } + else if (sizeof (ptrdiff_t) > sizeof (int)) + { + /* ptrdiff_t = long */ + signed_type = TYPE_LONGINT; + unsigned_type = TYPE_ULONGINT; + pointer_type = TYPE_COUNT_LONGINT_POINTER; + } + cp++; + } + else if (*cp == 'w') + { + /* wN and wfN are standardized in ISO C 23. */ + if (cp[1] == 'f') + { + if (cp[2] == '8') + { + signed_type = TYPE_INT_FAST8_T; + unsigned_type = TYPE_UINT_FAST8_T; + pointer_type = TYPE_COUNT_INT_FAST8_T_POINTER; + cp += 3; + } + else if (cp[2] == '1' && cp[3] == '6') + { + signed_type = TYPE_INT_FAST16_T; + unsigned_type = TYPE_UINT_FAST16_T; + pointer_type = TYPE_COUNT_INT_FAST16_T_POINTER; + cp += 4; + } + else if (cp[2] == '3' && cp[3] == '2') + { + signed_type = TYPE_INT_FAST32_T; + unsigned_type = TYPE_UINT_FAST32_T; + pointer_type = TYPE_COUNT_INT_FAST32_T_POINTER; + cp += 4; + } + else if (cp[2] == '6' && cp[3] == '4') + { + signed_type = TYPE_INT_FAST64_T; + unsigned_type = TYPE_UINT_FAST64_T; + pointer_type = TYPE_COUNT_INT_FAST64_T_POINTER; + cp += 4; + } + } + else + { + if (cp[1] == '8') + { + signed_type = TYPE_INT8_T; + unsigned_type = TYPE_UINT8_T; + pointer_type = TYPE_COUNT_INT8_T_POINTER; + cp += 2; + } + else if (cp[1] == '1' && cp[2] == '6') + { + signed_type = TYPE_INT16_T; + unsigned_type = TYPE_UINT16_T; + pointer_type = TYPE_COUNT_INT16_T_POINTER; + cp += 3; + } + else if (cp[1] == '3' && cp[2] == '2') + { + signed_type = TYPE_INT32_T; + unsigned_type = TYPE_UINT32_T; + pointer_type = TYPE_COUNT_INT32_T_POINTER; + cp += 3; + } + else if (cp[1] == '6' && cp[2] == '4') + { + signed_type = TYPE_INT64_T; + unsigned_type = TYPE_UINT64_T; + pointer_type = TYPE_COUNT_INT64_T_POINTER; + cp += 3; + } + } + } + else if (*cp == 'L') + { + signed_type = TYPE_LONGLONGINT; + unsigned_type = TYPE_ULONGLONGINT; + pointer_type = TYPE_COUNT_LONGLONGINT_POINTER; + floatingpoint_type = TYPE_LONGDOUBLE; + cp++; + } #if defined __APPLE__ && defined __MACH__ - /* On Mac OS X 10.3, PRIdMAX is defined as "qd". - We cannot change it to "lld" because PRIdMAX must also - be understood by the system's printf routines. */ - else if (*cp == 'q') - { - if (64 / 8 > sizeof (long)) - { - /* int64_t = long long */ - flags += 16; - } - else - { - /* int64_t = long */ - flags += 8; - } - cp++; - } + /* On Mac OS X 10.3, PRIdMAX is defined as "qd". + We cannot change it to "lld" because PRIdMAX must also + be understood by the system's printf routines. */ + else if (*cp == 'q') + { + if (64 / 8 > sizeof (long)) + { + /* int64_t = long long */ + signed_type = TYPE_LONGLONGINT; + unsigned_type = TYPE_ULONGLONGINT; + pointer_type = TYPE_COUNT_LONGLONGINT_POINTER; + /* For backward compatibility only. */ + floatingpoint_type = TYPE_LONGDOUBLE; + } + else + { + /* int64_t = long */ + signed_type = TYPE_LONGINT; + unsigned_type = TYPE_ULONGINT; + pointer_type = TYPE_COUNT_LONGINT_POINTER; + } + cp++; + } #endif #if defined _WIN32 && ! defined __CYGWIN__ - /* On native Windows, PRIdMAX is defined as "I64d". - We cannot change it to "lld" because PRIdMAX must also - be understood by the system's printf routines. */ - else if (*cp == 'I' && cp[1] == '6' && cp[2] == '4') - { - if (64 / 8 > sizeof (long)) - { - /* __int64 = long long */ - flags += 16; - } - else - { - /* __int64 = long */ - flags += 8; - } - cp += 3; - } + /* On native Windows, PRIdMAX is defined as "I64d". + We cannot change it to "lld" because PRIdMAX must also + be understood by the system's printf routines. */ + else if (*cp == 'I' && cp[1] == '6' && cp[2] == '4') + { + if (64 / 8 > sizeof (long)) + { + /* __int64_t = long long */ + signed_type = TYPE_LONGLONGINT; + unsigned_type = TYPE_ULONGLONGINT; + pointer_type = TYPE_COUNT_LONGLONGINT_POINTER; + /* For backward compatibility only. */ + floatingpoint_type = TYPE_LONGDOUBLE; + } + else + { + /* __int64_t = long */ + signed_type = TYPE_LONGINT; + unsigned_type = TYPE_ULONGINT; + pointer_type = TYPE_COUNT_LONGINT_POINTER; + } + cp++; + } #endif - else - break; - } - /* Read the conversion character. */ - c = *cp++; - switch (c) - { - case 'd': case 'i': - /* If 'long long' is larger than 'long': */ - if (flags >= 16 || (flags & 4)) - type = TYPE_LONGLONGINT; - else - /* If 'long long' is the same as 'long', we parse "lld" into - TYPE_LONGINT. */ - if (flags >= 8) - type = TYPE_LONGINT; - else if (flags & 2) - type = TYPE_SCHAR; - else if (flags & 1) - type = TYPE_SHORT; - else - type = TYPE_INT; - break; - case 'o': case 'u': case 'x': case 'X': - /* If 'unsigned long long' is larger than 'unsigned long': */ - if (flags >= 16 || (flags & 4)) - type = TYPE_ULONGLONGINT; - else - /* If 'unsigned long long' is the same as 'unsigned long', we - parse "llu" into TYPE_ULONGINT. */ - if (flags >= 8) - type = TYPE_ULONGINT; - else if (flags & 2) - type = TYPE_UCHAR; - else if (flags & 1) - type = TYPE_USHORT; - else - type = TYPE_UINT; - break; - case 'f': case 'F': case 'e': case 'E': case 'g': case 'G': - case 'a': case 'A': - if (flags >= 16 || (flags & 4)) - type = TYPE_LONGDOUBLE; - else - type = TYPE_DOUBLE; - break; - case 'c': - if (flags >= 8) + /* Read the conversion character. */ + c = *cp++; + switch (c) + { + case 'd': case 'i': + type = signed_type; + break; + case 'b': case 'o': case 'u': case 'x': case 'X': + #if SUPPORT_GNU_PRINTF_DIRECTIVES \ + || (__GLIBC__ + (__GLIBC_MINOR__ >= 35) > 2) + case 'B': + #endif + type = unsigned_type; + break; + case 'f': case 'F': case 'e': case 'E': case 'g': case 'G': + case 'a': case 'A': + type = floatingpoint_type; + break; + case 'c': + if (signed_type == TYPE_LONGINT + /* For backward compatibility only. */ + || signed_type == TYPE_LONGLONGINT) #if HAVE_WINT_T - type = TYPE_WIDE_CHAR; + type = TYPE_WIDE_CHAR; #else - goto error; + goto error; #endif - else - type = TYPE_CHAR; - break; + else + type = TYPE_CHAR; + break; #if HAVE_WINT_T - case 'C': - type = TYPE_WIDE_CHAR; - c = 'c'; - break; + case 'C': + type = TYPE_WIDE_CHAR; + c = 'c'; + break; #endif - case 's': - if (flags >= 8) + case 's': + if (signed_type == TYPE_LONGINT + /* For backward compatibility only. */ + || signed_type == TYPE_LONGLONGINT) #if HAVE_WCHAR_T - type = TYPE_WIDE_STRING; + type = TYPE_WIDE_STRING; #else - goto error; + goto error; #endif - else - type = TYPE_STRING; - break; + else + type = TYPE_STRING; + break; #if HAVE_WCHAR_T - case 'S': - type = TYPE_WIDE_STRING; - c = 's'; - break; + case 'S': + type = TYPE_WIDE_STRING; + c = 's'; + break; #endif - case 'p': - type = TYPE_POINTER; - break; - case 'n': - /* If 'long long' is larger than 'long': */ - if (flags >= 16 || (flags & 4)) - type = TYPE_COUNT_LONGLONGINT_POINTER; - else - /* If 'long long' is the same as 'long', we parse "lln" into - TYPE_COUNT_LONGINT_POINTER. */ - if (flags >= 8) - type = TYPE_COUNT_LONGINT_POINTER; - else if (flags & 2) - type = TYPE_COUNT_SCHAR_POINTER; - else if (flags & 1) - type = TYPE_COUNT_SHORT_POINTER; - else - type = TYPE_COUNT_INT_POINTER; - break; + case 'p': + type = TYPE_POINTER; + break; + case 'n': + type = pointer_type; + break; #if ENABLE_UNISTDIO - /* The unistdio extensions. */ - case 'U': - if (flags >= 16) - type = TYPE_U32_STRING; - else if (flags >= 8) - type = TYPE_U16_STRING; - else - type = TYPE_U8_STRING; - break; + /* The unistdio extensions. */ + case 'U': + if (signed_type == TYPE_LONGLONGINT) + type = TYPE_U32_STRING; + else if (signed_type == TYPE_LONGINT) + type = TYPE_U16_STRING; + else + type = TYPE_U8_STRING; + break; #endif - case '%': - type = TYPE_NONE; - break; - default: - /* Unknown conversion character. */ - goto error; - } - } + case '%': + type = TYPE_NONE; + break; + default: + /* Unknown conversion character. */ + goto error; + } if (type != TYPE_NONE) { diff --git a/lib/printf-parse.h b/gnulib-tests/printf-parse.h similarity index 92% rename from lib/printf-parse.h rename to gnulib-tests/printf-parse.h index 77b7409..45febac 100644 --- a/lib/printf-parse.h +++ b/gnulib-tests/printf-parse.h @@ -1,5 +1,5 @@ /* Parse printf format string. - Copyright (C) 1999, 2002-2003, 2005, 2007, 2010-2021 Free Software + Copyright (C) 1999, 2002-2003, 2005, 2007, 2010-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify @@ -61,7 +61,7 @@ typedef struct const char* precision_start; const char* precision_end; size_t precision_arg_index; - char conversion; /* d i o u x X f F e E g G a A c s p n U % but not C S */ + char conversion; /* d i b B o u x X f F e E g G a A c s p n U % but not C S */ size_t arg_index; } char_directive; @@ -91,7 +91,7 @@ typedef struct const uint8_t* precision_start; const uint8_t* precision_end; size_t precision_arg_index; - uint8_t conversion; /* d i o u x X f F e E g G a A c s p n U % but not C S */ + uint8_t conversion; /* d i b B o u x X f F e E g G a A c s p n U % but not C S */ size_t arg_index; } u8_directive; @@ -119,7 +119,7 @@ typedef struct const uint16_t* precision_start; const uint16_t* precision_end; size_t precision_arg_index; - uint16_t conversion; /* d i o u x X f F e E g G a A c s p n U % but not C S */ + uint16_t conversion; /* d i b B o u x X f F e E g G a A c s p n U % but not C S */ size_t arg_index; } u16_directive; @@ -147,7 +147,7 @@ typedef struct const uint32_t* precision_start; const uint32_t* precision_end; size_t precision_arg_index; - uint32_t conversion; /* d i o u x X f F e E g G a A c s p n U % but not C S */ + uint32_t conversion; /* d i b B o u x X f F e E g G a A c s p n U % but not C S */ size_t arg_index; } u32_directive; diff --git a/gnulib-tests/pselect.c b/gnulib-tests/pselect.c new file mode 100644 index 0000000..1b8c191 --- /dev/null +++ b/gnulib-tests/pselect.c @@ -0,0 +1,118 @@ +/* pselect - synchronous I/O multiplexing + + Copyright 2011-2023 Free Software Foundation, Inc. + + This file is part of gnulib. + + This file is free software: you can redistribute it and/or modify + it under the terms of the GNU Lesser General Public License as + published by the Free Software Foundation; either version 2.1 of the + License, or (at your option) any later version. + + This file is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +/* written by Paul Eggert */ + +#include + +#include + +#include +#include + +/* Examine the size-NFDS file descriptor sets in RFDS, WFDS, and XFDS + to see whether some of their descriptors are ready for reading, + ready for writing, or have exceptions pending. Wait for at most + TIMEOUT seconds, and use signal mask SIGMASK while waiting. A null + pointer parameter stands for no descriptors, an infinite timeout, + or an unaffected signal mask. */ + +#if !HAVE_PSELECT + +int +pselect (int nfds, fd_set *restrict rfds, + fd_set *restrict wfds, fd_set *restrict xfds, + struct timespec const *restrict timeout, + sigset_t const *restrict sigmask) +{ + int select_result; + sigset_t origmask; + struct timeval tv, *tvp; + + if (nfds < 0 || nfds > FD_SETSIZE) + { + errno = EINVAL; + return -1; + } + + if (timeout) + { + if (! (0 <= timeout->tv_nsec && timeout->tv_nsec < 1000000000)) + { + errno = EINVAL; + return -1; + } + + tv = (struct timeval) { + .tv_sec = timeout->tv_sec, + .tv_usec = (timeout->tv_nsec + 999) / 1000 + }; + tvp = &tv; + } + else + tvp = NULL; + + /* Signal mask munging should be atomic, but this is the best we can + do in this emulation. */ + if (sigmask) + pthread_sigmask (SIG_SETMASK, sigmask, &origmask); + + select_result = select (nfds, rfds, wfds, xfds, tvp); + + if (sigmask) + { + int select_errno = errno; + pthread_sigmask (SIG_SETMASK, &origmask, NULL); + errno = select_errno; + } + + return select_result; +} + +#else /* HAVE_PSELECT */ +# include +# undef pselect + +int +rpl_pselect (int nfds, fd_set *restrict rfds, + fd_set *restrict wfds, fd_set *restrict xfds, + struct timespec const *restrict timeout, + sigset_t const *restrict sigmask) +{ + int i; + + /* FreeBSD 8.2 has a bug: it does not always detect invalid fds. */ + if (nfds < 0 || nfds > FD_SETSIZE) + { + errno = EINVAL; + return -1; + } + for (i = 0; i < nfds; i++) + { + if (((rfds && FD_ISSET (i, rfds)) + || (wfds && FD_ISSET (i, wfds)) + || (xfds && FD_ISSET (i, xfds))) + && dup2 (i, i) != i) + return -1; + } + + return pselect (nfds, rfds, wfds, xfds, timeout, sigmask); +} + +#endif diff --git a/gnulib-tests/pthread-thread.c b/gnulib-tests/pthread-thread.c index 6e603bc..5a4e466 100644 --- a/gnulib-tests/pthread-thread.c +++ b/gnulib-tests/pthread-thread.c @@ -1,5 +1,5 @@ /* Creating and controlling POSIX threads. - Copyright (C) 2010-2021 Free Software Foundation, Inc. + Copyright (C) 2010-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -57,7 +57,7 @@ pthread_attr_setdetachstate (pthread_attr_t *attr, int detachstate) } int -pthread_attr_destroy (pthread_attr_t *attr _GL_UNUSED) +pthread_attr_destroy (_GL_UNUSED pthread_attr_t *attr) { return 0; } diff --git a/gnulib-tests/pthread.in.h b/gnulib-tests/pthread.in.h index c4cd36c..966f58b 100644 --- a/gnulib-tests/pthread.in.h +++ b/gnulib-tests/pthread.in.h @@ -1,6 +1,6 @@ /* Implement the most essential subset of POSIX 1003.1-2008 pthread.h. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -51,6 +51,12 @@ #ifndef _@GUARD_PREFIX@_PTHREAD_H_ #define _@GUARD_PREFIX@_PTHREAD_H_ +/* This file uses _Noreturn, _GL_ATTRIBUTE_PURE, GNULIB_POSIXCHECK, + HAVE_RAW_DECL_*. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + #define __need_system_stdlib_h #include #undef __need_system_stdlib_h @@ -69,6 +75,16 @@ #include #include +/* The __attribute__ feature is available in gcc versions 2.5 and later. + The attribute __pure__ was added in gcc 2.96. */ +#ifndef _GL_ATTRIBUTE_PURE +# if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96) || defined __clang__ +# define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__)) +# else +# define _GL_ATTRIBUTE_PURE /* empty */ +# endif +#endif + /* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */ /* The definition of _Noreturn is copied here. */ @@ -1958,6 +1974,35 @@ _GL_WARN_ON_USE (pthread_spin_destroy, "pthread_spin_destroy is not portable - " #endif +#if defined __cplusplus && defined GNULIB_NAMESPACE && !@HAVE_PTHREAD_H@ && defined __MINGW32__ +/* Provide the symbols required by mingw's . */ +using GNULIB_NAMESPACE::pthread_create; +using GNULIB_NAMESPACE::pthread_self; +using GNULIB_NAMESPACE::pthread_equal; +using GNULIB_NAMESPACE::pthread_detach; +using GNULIB_NAMESPACE::pthread_join; +using GNULIB_NAMESPACE::pthread_once; +using GNULIB_NAMESPACE::pthread_mutex_init; +using GNULIB_NAMESPACE::pthread_mutexattr_init; +using GNULIB_NAMESPACE::pthread_mutexattr_settype; +using GNULIB_NAMESPACE::pthread_mutexattr_destroy; +using GNULIB_NAMESPACE::pthread_mutex_lock; +using GNULIB_NAMESPACE::pthread_mutex_trylock; +using GNULIB_NAMESPACE::pthread_mutex_timedlock; +using GNULIB_NAMESPACE::pthread_mutex_unlock; +using GNULIB_NAMESPACE::pthread_mutex_destroy; +using GNULIB_NAMESPACE::pthread_cond_wait; +using GNULIB_NAMESPACE::pthread_cond_timedwait; +using GNULIB_NAMESPACE::pthread_cond_signal; +using GNULIB_NAMESPACE::pthread_cond_broadcast; +using GNULIB_NAMESPACE::pthread_cond_destroy; +using GNULIB_NAMESPACE::pthread_key_create; +using GNULIB_NAMESPACE::pthread_setspecific; +using GNULIB_NAMESPACE::pthread_getspecific; +using GNULIB_NAMESPACE::pthread_key_delete; +#endif + + #endif /* _@GUARD_PREFIX@_PTHREAD_H_ */ #endif /* _@GUARD_PREFIX@_PTHREAD_H_ */ #endif diff --git a/gnulib-tests/pthread_sigmask.c b/gnulib-tests/pthread_sigmask.c index 11b7091..1281075 100644 --- a/gnulib-tests/pthread_sigmask.c +++ b/gnulib-tests/pthread_sigmask.c @@ -1,5 +1,5 @@ /* POSIX compatible signal blocking for threads. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/gnulib-tests/putenv.c b/gnulib-tests/putenv.c index 435d10f..5d33940 100644 --- a/gnulib-tests/putenv.c +++ b/gnulib-tests/putenv.c @@ -1,4 +1,4 @@ -/* Copyright (C) 1991, 1994, 1997-1998, 2000, 2003-2021 Free Software +/* Copyright (C) 1991, 1994, 1997-1998, 2000, 2003-2023 Free Software Foundation, Inc. NOTE: The canonical source of this file is maintained with the GNU C @@ -6,7 +6,7 @@ This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as - published by the Free Software Foundation; either version 3 of the + published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This file is distributed in the hope that it will be useful, diff --git a/gnulib-tests/same-inode.h b/gnulib-tests/same-inode.h index c727777..10964f0 100644 --- a/gnulib-tests/same-inode.h +++ b/gnulib-tests/same-inode.h @@ -1,6 +1,6 @@ /* Determine whether two stat buffers are known to refer to the same file. - Copyright (C) 2006, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2006, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/gnulib-tests/sched.in.h b/gnulib-tests/sched.in.h index cdfe1ae..21aab51 100644 --- a/gnulib-tests/sched.in.h +++ b/gnulib-tests/sched.in.h @@ -1,5 +1,5 @@ /* A GNU-like . - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -21,6 +21,13 @@ #endif @PRAGMA_COLUMNS@ +/* This file uses #include_next of a system file that defines time_t. + For the 'year2038' module to work right, needs to have been + included before. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + /* The include_next requires a split double-inclusion guard. */ #if @HAVE_SCHED_H@ # if @HAVE_SYS_CDEFS_H@ @@ -32,6 +39,11 @@ #ifndef _@GUARD_PREFIX@_SCHED_H #define _@GUARD_PREFIX@_SCHED_H +/* This file uses GNULIB_POSIXCHECK, HAVE_RAW_DECL_*. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + /* Get pid_t. This is needed on glibc 2.11 (see glibc bug ) diff --git a/gnulib-tests/select.c b/gnulib-tests/select.c index eddac4b..6b6ca41 100644 --- a/gnulib-tests/select.c +++ b/gnulib-tests/select.c @@ -1,7 +1,7 @@ /* Emulation for select(2) Contributed by Paolo Bonzini. - Copyright 2008-2021 Free Software Foundation, Inc. + Copyright 2008-2023 Free Software Foundation, Inc. This file is part of gnulib. @@ -279,8 +279,11 @@ rpl_select (int nfds, fd_set *rfds, fd_set *wfds, fd_set *xfds, int i, fd, rc; clock_t tend; - if (nfds > FD_SETSIZE) - nfds = FD_SETSIZE; + if (nfds < 0 || nfds > FD_SETSIZE) + { + errno = EINVAL; + return -1; + } if (!timeout) wait_timeout = INFINITE; diff --git a/gnulib-tests/setsockopt.c b/gnulib-tests/setsockopt.c index 10b1e90..d435741 100644 --- a/gnulib-tests/setsockopt.c +++ b/gnulib-tests/setsockopt.c @@ -1,6 +1,6 @@ /* setsockopt.c --- wrappers for Windows setsockopt function - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/gnulib-tests/sig-handler.h b/gnulib-tests/sig-handler.h deleted file mode 100644 index 0ce5897..0000000 --- a/gnulib-tests/sig-handler.h +++ /dev/null @@ -1,51 +0,0 @@ -/* Convenience declarations when working with . - - Copyright (C) 2008-2021 Free Software Foundation, Inc. - - This file is free software: you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as - published by the Free Software Foundation; either version 2.1 of the - License, or (at your option) any later version. - - This file is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public License - along with this program. If not, see . */ - -#ifndef _GL_SIG_HANDLER_H -#define _GL_SIG_HANDLER_H - -#include - -#ifndef _GL_INLINE_HEADER_BEGIN - #error "Please include config.h first." -#endif -_GL_INLINE_HEADER_BEGIN -#ifndef SIG_HANDLER_INLINE -# define SIG_HANDLER_INLINE _GL_INLINE -#endif - -/* Convenience type when working with signal handlers. */ -typedef void (*sa_handler_t) (int); - -/* Return the handler of a signal, as a sa_handler_t value regardless - of its true type. The resulting function can be compared to - special values like SIG_IGN but it is not portable to call it. */ -SIG_HANDLER_INLINE sa_handler_t _GL_ATTRIBUTE_PURE -get_handler (struct sigaction const *a) -{ - /* POSIX says that special values like SIG_IGN can only occur when - action.sa_flags does not contain SA_SIGINFO. But in Linux 2.4, - for example, sa_sigaction and sa_handler are aliases and a signal - is ignored if sa_sigaction (after casting) equals SIG_IGN. In - this case, this implementation relies on the fact that the two - are aliases, and simply returns sa_handler. */ - return a->sa_handler; -} - -_GL_INLINE_HEADER_END - -#endif /* _GL_SIG_HANDLER_H */ diff --git a/gnulib-tests/sigaction.c b/gnulib-tests/sigaction.c deleted file mode 100644 index e1ace46..0000000 --- a/gnulib-tests/sigaction.c +++ /dev/null @@ -1,204 +0,0 @@ -/* POSIX compatible signal blocking. - Copyright (C) 2008-2021 Free Software Foundation, Inc. - Written by Eric Blake , 2008. - - This file is free software: you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as - published by the Free Software Foundation; either version 2.1 of the - License, or (at your option) any later version. - - This file is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public License - along with this program. If not, see . */ - -#include - -/* Specification. */ -#include - -#include -#include -#include - -/* This implementation of sigaction is tailored to native Windows behavior: - signal() has SysV semantics (ie. the handler is uninstalled before - it is invoked). This is an inherent data race if an asynchronous - signal is sent twice in a row before we can reinstall our handler, - but there's nothing we can do about it. Meanwhile, sigprocmask() - is not present, and while we can use the gnulib replacement to - provide critical sections, it too suffers from potential data races - in the face of an ill-timed asynchronous signal. And we compound - the situation by reading static storage in a signal handler, which - POSIX warns is not generically async-signal-safe. Oh well. - - Additionally: - - We don't implement SA_NOCLDSTOP or SA_NOCLDWAIT, because SIGCHLD - is not defined. - - We don't implement SA_ONSTACK, because sigaltstack() is not present. - - We ignore SA_RESTART, because blocking native Windows API calls are - not interrupted anyway when an asynchronous signal occurs, and the - MSVCRT runtime never sets errno to EINTR. - - We don't implement SA_SIGINFO because it is impossible to do so - portably. - - POSIX states that an application should not mix signal() and - sigaction(). We support the use of signal() within the gnulib - sigprocmask() substitute, but all other application code linked - with this module should stick with only sigaction(). */ - -/* Check some of our assumptions. */ -#if defined SIGCHLD || defined HAVE_SIGALTSTACK || defined HAVE_SIGINTERRUPT -# error "Revisit the assumptions made in the sigaction module" -#endif - -/* Out-of-range substitutes make a good fallback for uncatchable - signals. */ -#ifndef SIGKILL -# define SIGKILL (-1) -#endif -#ifndef SIGSTOP -# define SIGSTOP (-1) -#endif - -/* On native Windows, as of 2008, the signal SIGABRT_COMPAT is an alias - for the signal SIGABRT. Only one signal handler is stored for both - SIGABRT and SIGABRT_COMPAT. SIGABRT_COMPAT is not a signal of its own. */ -#if defined _WIN32 && ! defined __CYGWIN__ -# undef SIGABRT_COMPAT -# define SIGABRT_COMPAT 6 -#endif - -/* A signal handler. */ -typedef void (*handler_t) (int signal); - -/* Set of current actions. If sa_handler for an entry is NULL, then - that signal is not currently handled by the sigaction handler. */ -static struct sigaction volatile action_array[NSIG] /* = 0 */; - -/* Signal handler that is installed for signals. */ -static void -sigaction_handler (int sig) -{ - handler_t handler; - sigset_t mask; - sigset_t oldmask; - int saved_errno = errno; - if (sig < 0 || NSIG <= sig || !action_array[sig].sa_handler) - { - /* Unexpected situation; be careful to avoid recursive abort. */ - if (sig == SIGABRT) - signal (SIGABRT, SIG_DFL); - abort (); - } - - /* Reinstall the signal handler when required; otherwise update the - bookkeeping so that the user's handler may call sigaction and get - accurate results. We know the signal isn't currently blocked, or - we wouldn't be in its handler, therefore we know that we are not - interrupting a sigaction() call. There is a race where any - asynchronous instance of the same signal occurring before we - reinstall the handler will trigger the default handler; oh - well. */ - handler = action_array[sig].sa_handler; - if ((action_array[sig].sa_flags & SA_RESETHAND) == 0) - signal (sig, sigaction_handler); - else - action_array[sig].sa_handler = NULL; - - /* Block appropriate signals. */ - mask = action_array[sig].sa_mask; - if ((action_array[sig].sa_flags & SA_NODEFER) == 0) - sigaddset (&mask, sig); - sigprocmask (SIG_BLOCK, &mask, &oldmask); - - /* Invoke the user's handler, then restore prior mask. */ - errno = saved_errno; - handler (sig); - saved_errno = errno; - sigprocmask (SIG_SETMASK, &oldmask, NULL); - errno = saved_errno; -} - -/* Change and/or query the action that will be taken on delivery of - signal SIG. If not NULL, ACT describes the new behavior. If not - NULL, OACT is set to the prior behavior. Return 0 on success, or - set errno and return -1 on failure. */ -int -sigaction (int sig, const struct sigaction *restrict act, - struct sigaction *restrict oact) -{ - sigset_t mask; - sigset_t oldmask; - int saved_errno; - - if (sig < 0 || NSIG <= sig || sig == SIGKILL || sig == SIGSTOP - || (act && act->sa_handler == SIG_ERR)) - { - errno = EINVAL; - return -1; - } - -#ifdef SIGABRT_COMPAT - if (sig == SIGABRT_COMPAT) - sig = SIGABRT; -#endif - - /* POSIX requires sigaction() to be async-signal-safe. In other - words, if an asynchronous signal can occur while we are anywhere - inside this function, the user's handler could then call - sigaction() recursively and expect consistent results. We meet - this rule by using sigprocmask to block all signals before - modifying any data structure that could be read from a signal - handler; this works since we know that the gnulib sigprocmask - replacement does not try to use sigaction() from its handler. */ - if (!act && !oact) - return 0; - sigfillset (&mask); - sigprocmask (SIG_BLOCK, &mask, &oldmask); - if (oact) - { - if (action_array[sig].sa_handler) - *oact = action_array[sig]; - else - { - /* Safe to change the handler at will here, since all - signals are currently blocked. */ - oact->sa_handler = signal (sig, SIG_DFL); - if (oact->sa_handler == SIG_ERR) - goto failure; - signal (sig, oact->sa_handler); - oact->sa_flags = SA_RESETHAND | SA_NODEFER; - sigemptyset (&oact->sa_mask); - } - } - - if (act) - { - /* Safe to install the handler before updating action_array, - since all signals are currently blocked. */ - if (act->sa_handler == SIG_DFL || act->sa_handler == SIG_IGN) - { - if (signal (sig, act->sa_handler) == SIG_ERR) - goto failure; - action_array[sig].sa_handler = NULL; - } - else - { - if (signal (sig, sigaction_handler) == SIG_ERR) - goto failure; - action_array[sig] = *act; - } - } - sigprocmask (SIG_SETMASK, &oldmask, NULL); - return 0; - - failure: - saved_errno = errno; - sigprocmask (SIG_SETMASK, &oldmask, NULL); - errno = saved_errno; - return -1; -} diff --git a/gnulib-tests/signature.h b/gnulib-tests/signature.h index f791783..e939fec 100644 --- a/gnulib-tests/signature.h +++ b/gnulib-tests/signature.h @@ -1,9 +1,9 @@ /* Macro for checking that a function declaration is compliant. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -43,6 +43,6 @@ # define SIGNATURE_CHECK1(fn, ret, args, id) \ SIGNATURE_CHECK2 (fn, ret, args, id) /* macroexpand line */ # define SIGNATURE_CHECK2(fn, ret, args, id) \ - static ret (* _GL_UNUSED signature_check ## id) args = fn + _GL_UNUSED static ret (*signature_check ## id) args = fn #endif /* SIGNATURE_CHECK */ diff --git a/lib/size_max.h b/gnulib-tests/size_max.h similarity index 86% rename from lib/size_max.h rename to gnulib-tests/size_max.h index 1186ba9..2cfd31a 100644 --- a/lib/size_max.h +++ b/gnulib-tests/size_max.h @@ -1,5 +1,5 @@ /* size_max.h -- declare SIZE_MAX through system headers - Copyright (C) 2005-2006, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2005-2006, 2009-2023 Free Software Foundation, Inc. Written by Simon Josefsson. This file is free software: you can redistribute it and/or modify @@ -18,6 +18,11 @@ #ifndef GNULIB_SIZE_MAX_H #define GNULIB_SIZE_MAX_H +/* This file uses HAVE_STDINT_H. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + /* Get SIZE_MAX declaration on systems like Solaris 7/8/9. */ # include /* Get SIZE_MAX declaration on systems like glibc 2. */ diff --git a/gnulib-tests/sleep.c b/gnulib-tests/sleep.c index 0b49eb7..37c1213 100644 --- a/gnulib-tests/sleep.c +++ b/gnulib-tests/sleep.c @@ -1,5 +1,5 @@ /* Pausing execution of the current thread. - Copyright (C) 2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2007, 2009-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2007. This file is free software: you can redistribute it and/or modify @@ -22,8 +22,6 @@ #include -#include "verify.h" - #if defined _WIN32 && ! defined __CYGWIN__ # define WIN32_LEAN_AND_MEAN /* avoid including junk */ @@ -56,7 +54,7 @@ unsigned int rpl_sleep (unsigned int seconds) { /* This requires int larger than 16 bits. */ - verify (UINT_MAX / 24 / 24 / 60 / 60); + static_assert (UINT_MAX / 24 / 24 / 60 / 60); const unsigned int limit = 24 * 24 * 60 * 60; while (limit < seconds) { diff --git a/gnulib-tests/snprintf.c b/gnulib-tests/snprintf.c index a589cf1..cdff314 100644 --- a/gnulib-tests/snprintf.c +++ b/gnulib-tests/snprintf.c @@ -1,5 +1,5 @@ /* Formatted output to strings. - Copyright (C) 2004, 2006-2021 Free Software Foundation, Inc. + Copyright (C) 2004, 2006-2023 Free Software Foundation, Inc. Written by Simon Josefsson and Paul Eggert. This file is free software: you can redistribute it and/or modify diff --git a/gnulib-tests/socket.c b/gnulib-tests/socket.c index 0f2e6ff..7ad6eb9 100644 --- a/gnulib-tests/socket.c +++ b/gnulib-tests/socket.c @@ -1,6 +1,6 @@ /* socket.c --- wrappers for Windows socket function - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/gnulib-tests/sockets.c b/gnulib-tests/sockets.c index 934da73..ca99db8 100644 --- a/gnulib-tests/sockets.c +++ b/gnulib-tests/sockets.c @@ -1,6 +1,6 @@ /* sockets.c --- wrappers for Windows socket functions - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -113,7 +113,7 @@ static int initialized_sockets_version /* = 0 */; #endif /* WINDOWS_SOCKETS */ int -gl_sockets_startup (int version _GL_UNUSED) +gl_sockets_startup (_GL_UNUSED int version) { #if WINDOWS_SOCKETS if (version > initialized_sockets_version) diff --git a/gnulib-tests/sockets.h b/gnulib-tests/sockets.h index e70c2bb..55d5e3a 100644 --- a/gnulib-tests/sockets.h +++ b/gnulib-tests/sockets.h @@ -1,6 +1,6 @@ /* sockets.h - wrappers for Windows socket functions - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -20,6 +20,11 @@ #ifndef SOCKETS_H #define SOCKETS_H 1 +/* This file uses _GL_ATTRIBUTE_CONST. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + #define SOCKETS_1_0 0x0001 #define SOCKETS_1_1 0x0101 #define SOCKETS_2_0 0x0002 diff --git a/gnulib-tests/str-two-way.h b/gnulib-tests/str-two-way.h new file mode 100644 index 0000000..dfe7022 --- /dev/null +++ b/gnulib-tests/str-two-way.h @@ -0,0 +1,452 @@ +/* Byte-wise substring search, using the Two-Way algorithm. + Copyright (C) 2008-2023 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Written by Eric Blake , 2008. + + This file is free software: you can redistribute it and/or modify + it under the terms of the GNU Lesser General Public License as + published by the Free Software Foundation; either version 2.1 of the + License, or (at your option) any later version. + + This file is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +/* Before including this file, you need to include and + , and define: + RETURN_TYPE A macro that expands to the return type. + AVAILABLE(h, h_l, j, n_l) + A macro that returns nonzero if there are + at least N_L bytes left starting at H[J]. + H is 'unsigned char *', H_L, J, and N_L + are 'size_t'; H_L is an lvalue. For + NUL-terminated searches, H_L can be + modified each iteration to avoid having + to compute the end of H up front. + + For case-insensitivity, you may optionally define: + CMP_FUNC(p1, p2, l) A macro that returns 0 iff the first L + characters of P1 and P2 are equal. + CANON_ELEMENT(c) A macro that canonicalizes an element right after + it has been fetched from one of the two strings. + The argument is an 'unsigned char'; the result + must be an 'unsigned char' as well. + + This file undefines the macros documented above, and defines + LONG_NEEDLE_THRESHOLD. +*/ + +#include +#include + +/* We use the Two-Way string matching algorithm (also known as + Chrochemore-Perrin), which guarantees linear complexity with + constant space. Additionally, for long needles, we also use a bad + character shift table similar to the Boyer-Moore algorithm to + achieve improved (potentially sub-linear) performance. + + See https://www-igm.univ-mlv.fr/~lecroq/string/node26.html#SECTION00260, + https://en.wikipedia.org/wiki/Boyer-Moore_string_search_algorithm, + https://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.34.6641&rep=rep1&type=pdf +*/ + +/* Point at which computing a bad-byte shift table is likely to be + worthwhile. Small needles should not compute a table, since it + adds (1 << CHAR_BIT) + NEEDLE_LEN computations of preparation for a + speedup no greater than a factor of NEEDLE_LEN. The larger the + needle, the better the potential performance gain. On the other + hand, on non-POSIX systems with CHAR_BIT larger than eight, the + memory required for the table is prohibitive. */ +#if CHAR_BIT < 10 +# define LONG_NEEDLE_THRESHOLD 32U +#else +# define LONG_NEEDLE_THRESHOLD SIZE_MAX +#endif + +#ifndef MAX +# define MAX(a, b) ((a < b) ? (b) : (a)) +#endif + +#ifndef CANON_ELEMENT +# define CANON_ELEMENT(c) c +#endif +#ifndef CMP_FUNC +# define CMP_FUNC memcmp +#endif + +/* Perform a critical factorization of NEEDLE, of length NEEDLE_LEN. + Return the index of the first byte in the right half, and set + *PERIOD to the global period of the right half. + + The global period of a string is the smallest index (possibly its + length) at which all remaining bytes in the string are repetitions + of the prefix (the last repetition may be a subset of the prefix). + + When NEEDLE is factored into two halves, a local period is the + length of the smallest word that shares a suffix with the left half + and shares a prefix with the right half. All factorizations of a + non-empty NEEDLE have a local period of at least 1 and no greater + than NEEDLE_LEN. + + A critical factorization has the property that the local period + equals the global period. All strings have at least one critical + factorization with the left half smaller than the global period. + And while some strings have more than one critical factorization, + it is provable that with an ordered alphabet, at least one of the + critical factorizations corresponds to a maximal suffix. + + Given an ordered alphabet, a critical factorization can be computed + in linear time, with 2 * NEEDLE_LEN comparisons, by computing the + shorter of two ordered maximal suffixes. The ordered maximal + suffixes are determined by lexicographic comparison while tracking + periodicity. */ +static size_t +critical_factorization (const unsigned char *needle, size_t needle_len, + size_t *period) +{ + /* Index of last byte of left half, or SIZE_MAX. */ + size_t max_suffix, max_suffix_rev; + size_t j; /* Index into NEEDLE for current candidate suffix. */ + size_t k; /* Offset into current period. */ + size_t p; /* Intermediate period. */ + unsigned char a, b; /* Current comparison bytes. */ + + /* Special case NEEDLE_LEN of 1 or 2 (all callers already filtered + out 0-length needles. */ + if (needle_len < 3) + { + *period = 1; + return needle_len - 1; + } + + /* Invariants: + 0 <= j < NEEDLE_LEN - 1 + -1 <= max_suffix{,_rev} < j (treating SIZE_MAX as if it were signed) + min(max_suffix, max_suffix_rev) < global period of NEEDLE + 1 <= p <= global period of NEEDLE + p == global period of the substring NEEDLE[max_suffix{,_rev}+1...j] + 1 <= k <= p + */ + + /* Perform lexicographic search. */ + max_suffix = SIZE_MAX; + j = 0; + k = p = 1; + while (j + k < needle_len) + { + a = CANON_ELEMENT (needle[j + k]); + b = CANON_ELEMENT (needle[max_suffix + k]); + if (a < b) + { + /* Suffix is smaller, period is entire prefix so far. */ + j += k; + k = 1; + p = j - max_suffix; + } + else if (a == b) + { + /* Advance through repetition of the current period. */ + if (k != p) + ++k; + else + { + j += p; + k = 1; + } + } + else /* b < a */ + { + /* Suffix is larger, start over from current location. */ + max_suffix = j++; + k = p = 1; + } + } + *period = p; + + /* Perform reverse lexicographic search. */ + max_suffix_rev = SIZE_MAX; + j = 0; + k = p = 1; + while (j + k < needle_len) + { + a = CANON_ELEMENT (needle[j + k]); + b = CANON_ELEMENT (needle[max_suffix_rev + k]); + if (b < a) + { + /* Suffix is smaller, period is entire prefix so far. */ + j += k; + k = 1; + p = j - max_suffix_rev; + } + else if (a == b) + { + /* Advance through repetition of the current period. */ + if (k != p) + ++k; + else + { + j += p; + k = 1; + } + } + else /* a < b */ + { + /* Suffix is larger, start over from current location. */ + max_suffix_rev = j++; + k = p = 1; + } + } + + /* Choose the shorter suffix. Return the index of the first byte of + the right half, rather than the last byte of the left half. + + For some examples, 'banana' has two critical factorizations, both + exposed by the two lexicographic extreme suffixes of 'anana' and + 'nana', where both suffixes have a period of 2. On the other + hand, with 'aab' and 'bba', both strings have a single critical + factorization of the last byte, with the suffix having a period + of 1. While the maximal lexicographic suffix of 'aab' is 'b', + the maximal lexicographic suffix of 'bba' is 'ba', which is not a + critical factorization. Conversely, the maximal reverse + lexicographic suffix of 'a' works for 'bba', but not 'ab' for + 'aab'. The shorter suffix of the two will always be a critical + factorization. */ + if (max_suffix_rev + 1 < max_suffix + 1) + return max_suffix + 1; + *period = p; + return max_suffix_rev + 1; +} + +/* Return the first location of non-empty NEEDLE within HAYSTACK, or + NULL. HAYSTACK_LEN is the minimum known length of HAYSTACK. This + method is optimized for NEEDLE_LEN < LONG_NEEDLE_THRESHOLD. + Performance is guaranteed to be linear, with an initialization cost + of 2 * NEEDLE_LEN comparisons. + + If AVAILABLE does not modify HAYSTACK_LEN (as in memmem), then at + most 2 * HAYSTACK_LEN - NEEDLE_LEN comparisons occur in searching. + If AVAILABLE modifies HAYSTACK_LEN (as in strstr), then at most 3 * + HAYSTACK_LEN - NEEDLE_LEN comparisons occur in searching. */ +static RETURN_TYPE _GL_ATTRIBUTE_PURE +two_way_short_needle (const unsigned char *haystack, size_t haystack_len, + const unsigned char *needle, size_t needle_len) +{ + size_t i; /* Index into current byte of NEEDLE. */ + size_t j; /* Index into current window of HAYSTACK. */ + size_t period; /* The period of the right half of needle. */ + size_t suffix; /* The index of the right half of needle. */ + + /* Factor the needle into two halves, such that the left half is + smaller than the global period, and the right half is + periodic (with a period as large as NEEDLE_LEN - suffix). */ + suffix = critical_factorization (needle, needle_len, &period); + + /* Perform the search. Each iteration compares the right half + first. */ + if (CMP_FUNC (needle, needle + period, suffix) == 0) + { + /* Entire needle is periodic; a mismatch in the left half can + only advance by the period, so use memory to avoid rescanning + known occurrences of the period in the right half. */ + size_t memory = 0; + j = 0; + while (AVAILABLE (haystack, haystack_len, j, needle_len)) + { + /* Scan for matches in right half. */ + i = MAX (suffix, memory); + while (i < needle_len && (CANON_ELEMENT (needle[i]) + == CANON_ELEMENT (haystack[i + j]))) + ++i; + if (needle_len <= i) + { + /* Scan for matches in left half. */ + i = suffix - 1; + while (memory < i + 1 && (CANON_ELEMENT (needle[i]) + == CANON_ELEMENT (haystack[i + j]))) + --i; + if (i + 1 < memory + 1) + return (RETURN_TYPE) (haystack + j); + /* No match, so remember how many repetitions of period + on the right half were scanned. */ + j += period; + memory = needle_len - period; + } + else + { + j += i - suffix + 1; + memory = 0; + } + } + } + else + { + /* The two halves of needle are distinct; no extra memory is + required, and any mismatch results in a maximal shift. */ + period = MAX (suffix, needle_len - suffix) + 1; + j = 0; + while (AVAILABLE (haystack, haystack_len, j, needle_len)) + { + /* Scan for matches in right half. */ + i = suffix; + while (i < needle_len && (CANON_ELEMENT (needle[i]) + == CANON_ELEMENT (haystack[i + j]))) + ++i; + if (needle_len <= i) + { + /* Scan for matches in left half. */ + i = suffix - 1; + while (i != SIZE_MAX && (CANON_ELEMENT (needle[i]) + == CANON_ELEMENT (haystack[i + j]))) + --i; + if (i == SIZE_MAX) + return (RETURN_TYPE) (haystack + j); + j += period; + } + else + j += i - suffix + 1; + } + } + return NULL; +} + +/* Return the first location of non-empty NEEDLE within HAYSTACK, or + NULL. HAYSTACK_LEN is the minimum known length of HAYSTACK. This + method is optimized for LONG_NEEDLE_THRESHOLD <= NEEDLE_LEN. + Performance is guaranteed to be linear, with an initialization cost + of 3 * NEEDLE_LEN + (1 << CHAR_BIT) operations. + + If AVAILABLE does not modify HAYSTACK_LEN (as in memmem), then at + most 2 * HAYSTACK_LEN - NEEDLE_LEN comparisons occur in searching, + and sublinear performance O(HAYSTACK_LEN / NEEDLE_LEN) is possible. + If AVAILABLE modifies HAYSTACK_LEN (as in strstr), then at most 3 * + HAYSTACK_LEN - NEEDLE_LEN comparisons occur in searching, and + sublinear performance is not possible. */ +static RETURN_TYPE _GL_ATTRIBUTE_PURE +two_way_long_needle (const unsigned char *haystack, size_t haystack_len, + const unsigned char *needle, size_t needle_len) +{ + size_t i; /* Index into current byte of NEEDLE. */ + size_t j; /* Index into current window of HAYSTACK. */ + size_t period; /* The period of the right half of needle. */ + size_t suffix; /* The index of the right half of needle. */ + size_t shift_table[1U << CHAR_BIT]; /* See below. */ + + /* Factor the needle into two halves, such that the left half is + smaller than the global period, and the right half is + periodic (with a period as large as NEEDLE_LEN - suffix). */ + suffix = critical_factorization (needle, needle_len, &period); + + /* Populate shift_table. For each possible byte value c, + shift_table[c] is the distance from the last occurrence of c to + the end of NEEDLE, or NEEDLE_LEN if c is absent from the NEEDLE. + shift_table[NEEDLE[NEEDLE_LEN - 1]] contains the only 0. */ + for (i = 0; i < 1U << CHAR_BIT; i++) + shift_table[i] = needle_len; + for (i = 0; i < needle_len; i++) + shift_table[CANON_ELEMENT (needle[i])] = needle_len - i - 1; + + /* Perform the search. Each iteration compares the right half + first. */ + if (CMP_FUNC (needle, needle + period, suffix) == 0) + { + /* Entire needle is periodic; a mismatch in the left half can + only advance by the period, so use memory to avoid rescanning + known occurrences of the period in the right half. */ + size_t memory = 0; + size_t shift; + j = 0; + while (AVAILABLE (haystack, haystack_len, j, needle_len)) + { + /* Check the last byte first; if it does not match, then + shift to the next possible match location. */ + shift = shift_table[CANON_ELEMENT (haystack[j + needle_len - 1])]; + if (0 < shift) + { + if (memory && shift < period) + { + /* Since needle is periodic, but the last period has + a byte out of place, there can be no match until + after the mismatch. */ + shift = needle_len - period; + } + memory = 0; + j += shift; + continue; + } + /* Scan for matches in right half. The last byte has + already been matched, by virtue of the shift table. */ + i = MAX (suffix, memory); + while (i < needle_len - 1 && (CANON_ELEMENT (needle[i]) + == CANON_ELEMENT (haystack[i + j]))) + ++i; + if (needle_len - 1 <= i) + { + /* Scan for matches in left half. */ + i = suffix - 1; + while (memory < i + 1 && (CANON_ELEMENT (needle[i]) + == CANON_ELEMENT (haystack[i + j]))) + --i; + if (i + 1 < memory + 1) + return (RETURN_TYPE) (haystack + j); + /* No match, so remember how many repetitions of period + on the right half were scanned. */ + j += period; + memory = needle_len - period; + } + else + { + j += i - suffix + 1; + memory = 0; + } + } + } + else + { + /* The two halves of needle are distinct; no extra memory is + required, and any mismatch results in a maximal shift. */ + size_t shift; + period = MAX (suffix, needle_len - suffix) + 1; + j = 0; + while (AVAILABLE (haystack, haystack_len, j, needle_len)) + { + /* Check the last byte first; if it does not match, then + shift to the next possible match location. */ + shift = shift_table[CANON_ELEMENT (haystack[j + needle_len - 1])]; + if (0 < shift) + { + j += shift; + continue; + } + /* Scan for matches in right half. The last byte has + already been matched, by virtue of the shift table. */ + i = suffix; + while (i < needle_len - 1 && (CANON_ELEMENT (needle[i]) + == CANON_ELEMENT (haystack[i + j]))) + ++i; + if (needle_len - 1 <= i) + { + /* Scan for matches in left half. */ + i = suffix - 1; + while (i != SIZE_MAX && (CANON_ELEMENT (needle[i]) + == CANON_ELEMENT (haystack[i + j]))) + --i; + if (i == SIZE_MAX) + return (RETURN_TYPE) (haystack + j); + j += period; + } + else + j += i - suffix + 1; + } + } + return NULL; +} + +#undef AVAILABLE +#undef CANON_ELEMENT +#undef CMP_FUNC +#undef MAX +#undef RETURN_TYPE diff --git a/gnulib-tests/strerror_r.c b/gnulib-tests/strerror_r.c index f024452..ffe1266 100644 --- a/gnulib-tests/strerror_r.c +++ b/gnulib-tests/strerror_r.c @@ -1,6 +1,6 @@ /* strerror_r.c --- POSIX compatible system error routine - Copyright (C) 2010-2021 Free Software Foundation, Inc. + Copyright (C) 2010-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -34,33 +34,26 @@ #include "strerror-override.h" -#if (__GLIBC__ >= 2 || defined __UCLIBC__ || defined __CYGWIN__) && HAVE___XPG_STRERROR_R /* glibc >= 2.3.4, cygwin >= 1.7.9 */ +#if STRERROR_R_CHAR_P -# define USE_XPG_STRERROR_R 1 -extern -#ifdef __cplusplus -"C" -#endif -int __xpg_strerror_r (int errnum, char *buf, size_t buflen); +# if HAVE___XPG_STRERROR_R +_GL_EXTERN_C int __xpg_strerror_r (int errnum, char *buf, size_t buflen); +# endif -#elif HAVE_DECL_STRERROR_R && !(__GLIBC__ >= 2 || defined __UCLIBC__ || defined __CYGWIN__) +#elif HAVE_DECL_STRERROR_R -/* The system's strerror_r function is OK, except that its third argument +/* The system's strerror_r function's API is OK, except that its third argument is 'int', not 'size_t', or its return type is wrong. */ # include -# define USE_SYSTEM_STRERROR_R 1 - -#else /* (__GLIBC__ >= 2 || defined __UCLIBC__ || defined __CYGWIN__ ? !HAVE___XPG_STRERROR_R : !HAVE_DECL_STRERROR_R) */ +#else /* Use the system's strerror(). Exclude glibc and cygwin because the system strerror_r has the wrong return type, and cygwin 1.7.9 strerror_r clobbers strerror. */ # undef strerror -# define USE_SYSTEM_STRERROR 1 - # if defined __NetBSD__ || defined __hpux || (defined _WIN32 && !defined __CYGWIN__) || defined __sgi || (defined __sun && !defined _LP64) || defined __CYGWIN__ /* No locking needed. */ @@ -166,22 +159,31 @@ strerror_r (int errnum, char *buf, size_t buflen) int ret; int saved_errno = errno; -#if USE_XPG_STRERROR_R +#if STRERROR_R_CHAR_P { + ret = 0; + +# if HAVE___XPG_STRERROR_R ret = __xpg_strerror_r (errnum, buf, buflen); - if (ret < 0) - ret = errno; + /* ret is 0 upon success, or EINVAL or ERANGE upon failure. */ +# endif + if (!*buf) { - /* glibc 2.13 would not touch buf on err, so we have to fall - back to GNU strerror_r which always returns a thread-safe - untruncated string to (partially) copy into our buf. */ - safe_copy (buf, buflen, strerror_r (errnum, buf, buflen)); + /* glibc 2.13 ... 2.34 (at least) don't touch buf upon failure. + Therefore we have to fall back to strerror_r which, for valid + errnum, returns a thread-safe untruncated string. For invalid + errnum, though, it returns a truncated string, which does not + allow us to determine whether to return ERANGE or 0. Thus we + need to pass a sufficiently large buffer. */ + char stackbuf[80]; + char *errstring = strerror_r (errnum, stackbuf, sizeof stackbuf); + ret = errstring ? safe_copy (buf, buflen, errstring) : errno; } } -#elif USE_SYSTEM_STRERROR_R +#elif HAVE_DECL_STRERROR_R if (buflen > INT_MAX) buflen = INT_MAX; @@ -245,7 +247,7 @@ strerror_r (int errnum, char *buf, size_t buflen) } # endif -#else /* USE_SYSTEM_STRERROR */ +#else /* strerror_r is not declared. */ /* Try to do what strerror (errnum) does, but without clobbering the buffer used by strerror(). */ diff --git a/gnulib-tests/symlink.c b/gnulib-tests/symlink.c index 6e48898..b5009ae 100644 --- a/gnulib-tests/symlink.c +++ b/gnulib-tests/symlink.c @@ -1,9 +1,9 @@ /* Stub for symlink(). - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as - published by the Free Software Foundation; either version 3 of the + published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This file is distributed in the hope that it will be useful, @@ -47,8 +47,8 @@ rpl_symlink (char const *contents, char const *name) /* The system does not support symlinks. */ int -symlink (char const *contents _GL_UNUSED, - char const *name _GL_UNUSED) +symlink (_GL_UNUSED char const *contents, + _GL_UNUSED char const *name) { errno = ENOSYS; return -1; diff --git a/gnulib-tests/sys_ioctl.in.h b/gnulib-tests/sys_ioctl.in.h index f1b2a1b..78a7903 100644 --- a/gnulib-tests/sys_ioctl.in.h +++ b/gnulib-tests/sys_ioctl.in.h @@ -1,5 +1,5 @@ /* Substitute for and wrapper around . - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -29,6 +29,11 @@ #ifndef _@GUARD_PREFIX@_SYS_IOCTL_H #define _@GUARD_PREFIX@_SYS_IOCTL_H +/* This file uses GNULIB_POSIXCHECK, HAVE_RAW_DECL_*. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + /* AIX 5.1 and Solaris 10 declare ioctl() in and in , but not in . Haiku declares ioctl() in , but not in . @@ -62,7 +67,9 @@ _GL_FUNCDECL_SYS (ioctl, int, _GL_CXXALIAS_SYS (ioctl, int, (int fd, int request, ... /* {void *,char *} arg */)); # endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (ioctl); +# endif #elif @SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS@ # undef ioctl # define ioctl ioctl_used_without_requesting_gnulib_module_ioctl diff --git a/gnulib-tests/sys_select.in.h b/gnulib-tests/sys_select.in.h index f8ef648..3abfc48 100644 --- a/gnulib-tests/sys_select.in.h +++ b/gnulib-tests/sys_select.in.h @@ -1,5 +1,5 @@ /* Substitute for . - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -19,9 +19,16 @@ # endif @PRAGMA_COLUMNS@ +/* This file uses #include_next of a system file that defines time_t. + For the 'year2038' module to work right, needs to have been + included before. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + /* On OSF/1 and Solaris 2.6, and both include . - On Cygwin, includes . + On Cygwin and OpenBSD, includes . Simply delegate to the system's header in this case. */ #if (@HAVE_SYS_SELECT_H@ \ && !defined _GL_SYS_SELECT_H_REDIRECT_FROM_SYS_TYPES_H \ @@ -39,6 +46,7 @@ || (!defined _GL_SYS_SELECT_H_REDIRECT_FROM_SYS_TIME_H \ && ((defined __osf__ && defined _SYS_TIME_H_ \ && defined _OSF_SOURCE) \ + || (defined __OpenBSD__ && defined _SYS_TIME_H_) \ || (defined __sun && defined _SYS_TIME_H \ && (! (defined _XOPEN_SOURCE \ || defined _POSIX_C_SOURCE) \ @@ -70,6 +78,11 @@ #ifndef _@GUARD_PREFIX@_SYS_SELECT_H +/* This file uses GNULIB_POSIXCHECK, HAVE_RAW_DECL_*. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + /* On many platforms, assumes prior inclusion of . Also, mingw defines sigset_t there, instead of in where it belongs. */ @@ -81,9 +94,10 @@ of 'struct timeval', and no definition of this type. Also, Mac OS X, AIX, HP-UX, IRIX, Solaris, Interix declare select() in . - But avoid namespace pollution on glibc systems and "unknown type - name" problems on Cygwin. */ -# if !(defined __GLIBC__ || defined __CYGWIN__) + But avoid namespace pollution on glibc systems, a circular include + -> -> on FreeBSD 13.1, and + "unknown type name" problems on Cygwin. */ +# if !(defined __GLIBC__ || defined __FreeBSD__ || defined __CYGWIN__) # include # endif @@ -278,11 +292,17 @@ _GL_FUNCDECL_SYS (pselect, int, (int, fd_set *restrict, fd_set *restrict, fd_set *restrict, struct timespec const *restrict, const sigset_t *restrict)); # endif -_GL_CXXALIAS_SYS (pselect, int, - (int, fd_set *restrict, fd_set *restrict, fd_set *restrict, - struct timespec const *restrict, const sigset_t *restrict)); +/* Need to cast, because on AIX 7, the second, third, fourth argument may be + void *restrict, void *restrict, void *restrict. */ +_GL_CXXALIAS_SYS_CAST (pselect, int, + (int, + fd_set *restrict, fd_set *restrict, fd_set *restrict, + struct timespec const *restrict, + const sigset_t *restrict)); # endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (pselect); +# endif #elif defined GNULIB_POSIXCHECK # undef pselect # if HAVE_RAW_DECL_PSELECT diff --git a/gnulib-tests/sys_socket.c b/gnulib-tests/sys_socket.c index d90b32c..b7388ce 100644 --- a/gnulib-tests/sys_socket.c +++ b/gnulib-tests/sys_socket.c @@ -1,6 +1,6 @@ /* Inline functions for . - Copyright (C) 2012-2021 Free Software Foundation, Inc. + Copyright (C) 2012-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/gnulib-tests/sys_socket.in.h b/gnulib-tests/sys_socket.in.h index 0a2c57d..afeedf0 100644 --- a/gnulib-tests/sys_socket.in.h +++ b/gnulib-tests/sys_socket.in.h @@ -1,6 +1,6 @@ /* Provide a sys/socket header file for systems lacking it (read: MinGW) and for systems where it is incomplete. - Copyright (C) 2005-2021 Free Software Foundation, Inc. + Copyright (C) 2005-2023 Free Software Foundation, Inc. Written by Simon Josefsson. This file is free software: you can redistribute it and/or modify @@ -63,9 +63,12 @@ #ifndef _@GUARD_PREFIX@_SYS_SOCKET_H #define _@GUARD_PREFIX@_SYS_SOCKET_H -#ifndef _GL_INLINE_HEADER_BEGIN +/* This file uses _GL_INLINE_HEADER_BEGIN, _GL_INLINE, GNULIB_POSIXCHECK, + HAVE_RAW_DECL_*, alignof. */ +#if !_GL_CONFIG_H_INCLUDED #error "Please include config.h first." #endif + _GL_INLINE_HEADER_BEGIN #ifndef _GL_SYS_SOCKET_INLINE # define _GL_SYS_SOCKET_INLINE _GL_INLINE @@ -97,7 +100,6 @@ typedef unsigned char sa_family_t; # endif # endif #else -# include /* Code taken from glibc sysdeps/unix/sysv/linux/bits/socket.h on 2009-05-08, licensed under LGPLv2.1+, plus portability fixes. */ # define __ss_aligntype unsigned long int diff --git a/gnulib-tests/sys_uio.in.h b/gnulib-tests/sys_uio.in.h index 507ab01..64c4fb6 100644 --- a/gnulib-tests/sys_uio.in.h +++ b/gnulib-tests/sys_uio.in.h @@ -1,5 +1,5 @@ /* Substitute for . - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/gnulib-tests/test-accept.c b/gnulib-tests/test-accept.c index 49b87b1..1d56efc 100644 --- a/gnulib-tests/test-accept.c +++ b/gnulib-tests/test-accept.c @@ -1,9 +1,9 @@ /* Test accepting a connection to a server socket. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-stdalign.c b/gnulib-tests/test-alignasof.c similarity index 71% rename from gnulib-tests/test-stdalign.c rename to gnulib-tests/test-alignasof.c index 38812b6..18c0d48 100644 --- a/gnulib-tests/test-stdalign.c +++ b/gnulib-tests/test-alignasof.c @@ -1,9 +1,9 @@ -/* Test of . - Copyright 2009-2021 Free Software Foundation, Inc. +/* Test of alignasof module. + Copyright 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -18,13 +18,9 @@ #include -#include - #include #include -#include "verify.h" - #include "macros.h" typedef long double longdouble; @@ -33,32 +29,22 @@ typedef struct { char a[2]; } struct2; typedef struct { char a[3]; } struct3; typedef struct { char a[4]; } struct4; -verify (__alignof_is_defined == 1); -#ifndef alignof -# error "alignof is not a macro" -#endif - -#if __alignas_is_defined -verify (__alignas_is_defined == 1); -# ifndef alignas -# error "alignas is not a macro" -# endif +#if (202311 <= __STDC_VERSION__ || __alignas_is_defined \ + || 201103 <= __cplusplus) /* mingw can go up only to 8. 8 is all that GNU Emacs needs, so let's limit the test to 8 for now. */ # define TEST_ALIGNMENT 8 #else -# define _Alignas(alignment) +# undef alignas # define alignas(alignment) # define TEST_ALIGNMENT 1 #endif #define CHECK_STATIC(type) \ typedef struct { char slot1; type slot2; } type##_helper; \ - verify (alignof (type) == offsetof (type##_helper, slot2)); \ - verify (_Alignof (type) == alignof (type)); \ + static_assert (alignof (type) == offsetof (type##_helper, slot2)); \ const int type##_alignment = alignof (type); \ - type alignas (TEST_ALIGNMENT) static_##type##_alignas; \ - type _Alignas (TEST_ALIGNMENT) static_##type##_Alignas + type alignas (TEST_ALIGNMENT) static_##type##_alignas #define CHECK_ALIGNED(var) ASSERT ((uintptr_t) &(var) % TEST_ALIGNMENT == 0) @@ -96,31 +82,19 @@ main () return 77; #else CHECK_ALIGNED (static_char_alignas); - CHECK_ALIGNED (static_char_Alignas); CHECK_ALIGNED (static_short_alignas); - CHECK_ALIGNED (static_short_Alignas); CHECK_ALIGNED (static_int_alignas); - CHECK_ALIGNED (static_int_Alignas); CHECK_ALIGNED (static_long_alignas); - CHECK_ALIGNED (static_long_Alignas); # ifdef INT64_MAX CHECK_ALIGNED (static_int64_t_alignas); - CHECK_ALIGNED (static_int64_t_Alignas); # endif CHECK_ALIGNED (static_float_alignas); - CHECK_ALIGNED (static_float_Alignas); CHECK_ALIGNED (static_double_alignas); - CHECK_ALIGNED (static_double_Alignas); /* CHECK_ALIGNED (static_longdouble_alignas); */ - /* CHECK_ALIGNED (static_longdouble_Alignas); */ CHECK_ALIGNED (static_struct1_alignas); - CHECK_ALIGNED (static_struct1_Alignas); CHECK_ALIGNED (static_struct2_alignas); - CHECK_ALIGNED (static_struct2_Alignas); CHECK_ALIGNED (static_struct3_alignas); - CHECK_ALIGNED (static_struct3_Alignas); CHECK_ALIGNED (static_struct4_alignas); - CHECK_ALIGNED (static_struct4_Alignas); return 0; #endif } diff --git a/gnulib-tests/test-alloca-opt.c b/gnulib-tests/test-alloca-opt.c index fdbf6f5..b059439 100644 --- a/gnulib-tests/test-alloca-opt.c +++ b/gnulib-tests/test-alloca-opt.c @@ -1,9 +1,9 @@ /* Test of optional automatic memory allocation. - Copyright (C) 2005, 2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2005, 2007, 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-areadlink.c b/gnulib-tests/test-areadlink.c index d1313db..45492ac 100644 --- a/gnulib-tests/test-areadlink.c +++ b/gnulib-tests/test-areadlink.c @@ -1,9 +1,9 @@ /* Tests of areadlink. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -22,7 +22,6 @@ #include #include -#include #include #include #include @@ -38,7 +37,7 @@ /* Wrapper for testing areadlink. */ static char * -do_areadlink (char const *name, size_t ignored _GL_UNUSED) +do_areadlink (char const *name, _GL_UNUSED size_t ignored) { return areadlink (name); } diff --git a/gnulib-tests/test-areadlink.h b/gnulib-tests/test-areadlink.h index 65aeb59..32cae3f 100644 --- a/gnulib-tests/test-areadlink.h +++ b/gnulib-tests/test-areadlink.h @@ -1,9 +1,9 @@ /* Tests of areadlink and friends. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-argmatch.c b/gnulib-tests/test-argmatch.c index a7ea67c..80aba52 100644 --- a/gnulib-tests/test-argmatch.c +++ b/gnulib-tests/test-argmatch.c @@ -1,9 +1,9 @@ /* Test of exact or abbreviated match search. - Copyright (C) 1990, 1998-1999, 2001-2021 Free Software Foundation, Inc. + Copyright (C) 1990, 1998-1999, 2001-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -19,6 +19,13 @@ #include +/* As of GCC 11.2.1, gcc -Wanalyzer-too-complex reports that main's + use of CHECK macros expands to code that is too complicated for gcc + -fanalyzer. Suppress the resulting bogus warnings. */ +#if 10 <= __GNUC__ +# pragma GCC diagnostic ignored "-Wanalyzer-null-argument" +#endif + #include "argmatch.h" #include @@ -118,38 +125,63 @@ main (int argc, char *argv[]) } \ } while (0) +#define CHECK_EXACT(Input, Output) \ + do { \ + ASSERT (ARGMATCH_EXACT (Input, backup_args) == Output); \ + } while (0) + /* Not found. */ CHECK ("klingon", -1); + CHECK_EXACT ("klingon", -1); /* Exact match. */ CHECK ("none", 1); + CHECK_EXACT ("none", 1); CHECK ("nil", 7); + CHECK_EXACT ("nil", 7); /* Too long. */ CHECK ("nilpotent", -1); + CHECK_EXACT ("nilpotent", -1); /* Abbreviated. */ CHECK ("simpl", 3); + CHECK_EXACT ("simpl", -1); CHECK ("simp", 3); + CHECK_EXACT ("simp", -1); CHECK ("sim", 3); + CHECK_EXACT ("sim", -1); /* Exact match and abbreviated. */ CHECK ("numbered", 9); + CHECK_EXACT ("numbered", 9); CHECK ("numbere", -2); + CHECK_EXACT ("numbere", -1); CHECK ("number", -2); + CHECK_EXACT ("number", -1); CHECK ("numbe", -2); + CHECK_EXACT ("numbe", -1); CHECK ("numb", -2); + CHECK_EXACT ("numb", -1); CHECK ("num", -2); + CHECK_EXACT ("num", -1); CHECK ("nu", -2); + CHECK_EXACT ("nu", -1); CHECK ("n", -2); + CHECK_EXACT ("n", -1); /* Ambiguous abbreviated. */ CHECK ("ne", -2); + CHECK_EXACT ("ne", -1); /* Ambiguous abbreviated, but same value ("single" and "simple"). */ CHECK ("si", 3); + CHECK_EXACT ("si", -1); CHECK ("s", 3); + CHECK_EXACT ("s", -1); + #undef CHECK +#undef CHECK_EXACT argmatch_backup_usage (stdout); diff --git a/gnulib-tests/test-arpa_inet.c b/gnulib-tests/test-arpa_inet.c index 10a27e1..a19192b 100644 --- a/gnulib-tests/test-arpa_inet.c +++ b/gnulib-tests/test-arpa_inet.c @@ -1,9 +1,9 @@ /* Test of substitute. - Copyright (C) 2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2007, 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-assert.c b/gnulib-tests/test-assert.c new file mode 100644 index 0000000..1bb79ae --- /dev/null +++ b/gnulib-tests/test-assert.c @@ -0,0 +1,71 @@ +/* Test assert.h and static_assert. + Copyright 2022-2023 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +/* Written by Paul Eggert. */ + +#include + +#define STATIC_ASSERT_TESTS \ + static_assert (2 + 2 == 4, "arithmetic does not work"); \ + static_assert (2 + 2 == 4); \ + static_assert (sizeof (char) == 1, "sizeof does not work"); \ + static_assert (sizeof (char) == 1) + +STATIC_ASSERT_TESTS; + +static char const * +assert (char const *p, int i) +{ + return p + i; +} + +static char const * +f (char const *p) +{ + return assert (p, 0); +} + +#include + +STATIC_ASSERT_TESTS; + +static int +g (void) +{ + assert (f ("this should work")); + return 0; +} + +#define NDEBUG 1 +#include + +STATIC_ASSERT_TESTS; + +static int +h (void) +{ + assert (f ("this should work")); + return 0; +} + +int +main (void) +{ + STATIC_ASSERT_TESTS; + g (); + h (); + return 0; +} diff --git a/gnulib-tests/test-binary-io.c b/gnulib-tests/test-binary-io.c index 7da8f8b..a474d37 100644 --- a/gnulib-tests/test-binary-io.c +++ b/gnulib-tests/test-binary-io.c @@ -1,9 +1,9 @@ /* Test of binary mode I/O. - Copyright (C) 2005, 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2005, 2007-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-binary-io.sh b/gnulib-tests/test-binary-io.sh index a177d94..7bc5aa0 100755 --- a/gnulib-tests/test-binary-io.sh +++ b/gnulib-tests/test-binary-io.sh @@ -1,7 +1,7 @@ #!/bin/sh tmpfiles="" -trap 'rm -fr $tmpfiles' 1 2 3 15 +trap 'rm -fr $tmpfiles' HUP INT QUIT TERM tmpfiles="$tmpfiles t-bin-out0.tmp t-bin-out1.tmp" ${CHECKER} ./test-binary-io${EXEEXT} 1 > t-bin-out1.tmp || exit 1 diff --git a/gnulib-tests/test-bind.c b/gnulib-tests/test-bind.c index 8054e9d..98b3e5b 100644 --- a/gnulib-tests/test-bind.c +++ b/gnulib-tests/test-bind.c @@ -1,9 +1,9 @@ /* Test binding a server socket to a port. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-bitrotate.c b/gnulib-tests/test-bitrotate.c index 98d15e2..f92b31b 100644 --- a/gnulib-tests/test-bitrotate.c +++ b/gnulib-tests/test-bitrotate.c @@ -1,9 +1,9 @@ /* Test of substitute. - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-btowc.c b/gnulib-tests/test-btowc.c index 040abff..8a803e5 100644 --- a/gnulib-tests/test-btowc.c +++ b/gnulib-tests/test-btowc.c @@ -1,9 +1,9 @@ /* Test of conversion of unibyte character to wide character. - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -39,6 +39,15 @@ main (int argc, char *argv[]) ASSERT (btowc (EOF) == WEOF); +#ifdef __ANDROID__ + /* On Android ≥ 5.0, the default locale is the "C.UTF-8" locale, not the + "C" locale. Furthermore, when you attempt to set the "C" or "POSIX" + locale via setlocale(), what you get is a "C" locale with UTF-8 encoding, + that is, effectively the "C.UTF-8" locale. */ + if (argc > 1 && strcmp (argv[1], "3") == 0 && MB_CUR_MAX > 1) + argv[1] = "2"; +#endif + if (argc > 1) switch (argv[1][0]) { @@ -57,6 +66,25 @@ main (int argc, char *argv[]) for (c = 0x80; c < 0x100; c++) ASSERT (btowc (c) == WEOF); return 0; + + case '3': + /* C or POSIX locale. */ + for (c = 0; c < 0x100; c++) + if (c != 0) + { + /* We are testing all nonnull bytes. */ + wint_t wc = btowc (c); + /* POSIX:2018 says: "In the POSIX locale, btowc() shall not return + WEOF if c has a value in the range 0 to 255 inclusive." */ + if (c < 0x80) + /* c is an ASCII character. */ + ASSERT (wc == c); + else + /* On most platforms, the bytes 0x80..0xFF map to U+0080..U+00FF. + But on musl libc, the bytes 0x80..0xFF map to U+DF80..U+DFFF. */ + ASSERT (wc == c || wc == 0xDF00 + c); + } + return 0; } return 1; diff --git a/gnulib-tests/test-btowc1.sh b/gnulib-tests/test-btowc1.sh index ab4b287..e51e1c5 100755 --- a/gnulib-tests/test-btowc1.sh +++ b/gnulib-tests/test-btowc1.sh @@ -1,7 +1,7 @@ #!/bin/sh # Test in an ISO-8859-1 or ISO-8859-15 locale. -: ${LOCALE_FR=fr_FR} +: "${LOCALE_FR=fr_FR}" if test $LOCALE_FR = none; then if test -f /usr/bin/localedef; then echo "Skipping test: no traditional french locale is installed" diff --git a/gnulib-tests/test-btowc2.sh b/gnulib-tests/test-btowc2.sh index d7d4d9c..9f38f4e 100755 --- a/gnulib-tests/test-btowc2.sh +++ b/gnulib-tests/test-btowc2.sh @@ -1,7 +1,7 @@ #!/bin/sh # Test whether a specific UTF-8 locale is installed. -: ${LOCALE_FR_UTF8=fr_FR.UTF-8} +: "${LOCALE_FR_UTF8=fr_FR.UTF-8}" if test $LOCALE_FR_UTF8 = none; then if test -f /usr/bin/localedef; then echo "Skipping test: no french Unicode locale is installed" diff --git a/gnulib-tests/test-btowc3.sh b/gnulib-tests/test-btowc3.sh new file mode 100755 index 0000000..ee9e143 --- /dev/null +++ b/gnulib-tests/test-btowc3.sh @@ -0,0 +1,9 @@ +#!/bin/sh + +# Test whether the POSIX locale has encoding errors. +LC_ALL=C \ +${CHECKER} ./test-btowc${EXEEXT} 3 || exit 1 +LC_ALL=POSIX \ +${CHECKER} ./test-btowc${EXEEXT} 3 || exit 1 + +exit 0 diff --git a/gnulib-tests/test-c-ctype.c b/gnulib-tests/test-c-ctype.c index 2077eb4..ad306b6 100644 --- a/gnulib-tests/test-c-ctype.c +++ b/gnulib-tests/test-c-ctype.c @@ -1,9 +1,9 @@ /* Test of character handling in C locale. - Copyright (C) 2005, 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2005, 2007-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-c-stack.c b/gnulib-tests/test-c-stack.c index 2c5a49a..2f689d9 100644 --- a/gnulib-tests/test-c-stack.c +++ b/gnulib-tests/test-c-stack.c @@ -1,9 +1,9 @@ /* Test of c-stack module. - Copyright (C) 2002, 2004, 2006, 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2002, 2004, 2006, 2008-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-c-stack.sh b/gnulib-tests/test-c-stack.sh index 54009d3..f0bec55 100755 --- a/gnulib-tests/test-c-stack.sh +++ b/gnulib-tests/test-c-stack.sh @@ -1,7 +1,7 @@ #!/bin/sh tmpfiles="" -trap 'rm -fr $tmpfiles' 1 2 3 15 +trap 'rm -fr $tmpfiles' HUP INT QUIT TERM tmpfiles="t-c-stack.tmp" ${CHECKER} ./test-c-stack${EXEEXT} 2> t-c-stack.tmp diff --git a/gnulib-tests/test-c-stack2.sh b/gnulib-tests/test-c-stack2.sh index 7f03593..b7f8b26 100755 --- a/gnulib-tests/test-c-stack2.sh +++ b/gnulib-tests/test-c-stack2.sh @@ -1,7 +1,7 @@ #!/bin/sh tmpfiles="" -trap 'rm -fr $tmpfiles' 1 2 3 15 +trap 'rm -fr $tmpfiles' HUP INT QUIT TERM tmpfiles="t-c-stack2.tmp" diff --git a/gnulib-tests/test-c-strcase.sh b/gnulib-tests/test-c-strcase.sh index 14bdfb2..9f491e0 100755 --- a/gnulib-tests/test-c-strcase.sh +++ b/gnulib-tests/test-c-strcase.sh @@ -5,14 +5,14 @@ ${CHECKER} ./test-c-strcasecmp${EXEEXT} || exit 1 ${CHECKER} ./test-c-strncasecmp${EXEEXT} || exit 1 # Test in an ISO-8859-1 or ISO-8859-15 locale. -: ${LOCALE_FR=fr_FR} +: "${LOCALE_FR=fr_FR}" if test $LOCALE_FR != none; then LC_ALL=$LOCALE_FR ${CHECKER} ./test-c-strcasecmp${EXEEXT} locale || exit 1 LC_ALL=$LOCALE_FR ${CHECKER} ./test-c-strncasecmp${EXEEXT} locale || exit 1 fi # Test in a Turkish UTF-8 locale. -: ${LOCALE_TR_UTF8=tr_TR.UTF-8} +: "${LOCALE_TR_UTF8=tr_TR.UTF-8}" if test $LOCALE_TR_UTF8 != none; then LC_ALL=$LOCALE_TR_UTF8 ${CHECKER} ./test-c-strcasecmp${EXEEXT} locale || exit 1 LC_ALL=$LOCALE_TR_UTF8 ${CHECKER} ./test-c-strncasecmp${EXEEXT} locale || exit 1 diff --git a/gnulib-tests/test-c-strcasecmp.c b/gnulib-tests/test-c-strcasecmp.c index cc2efb0..ad33a68 100644 --- a/gnulib-tests/test-c-strcasecmp.c +++ b/gnulib-tests/test-c-strcasecmp.c @@ -1,9 +1,9 @@ /* Test of case-insensitive string comparison function. - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-c-strcasestr.c b/gnulib-tests/test-c-strcasestr.c new file mode 100644 index 0000000..4f0a6c2 --- /dev/null +++ b/gnulib-tests/test-c-strcasestr.c @@ -0,0 +1,272 @@ +/* Test of case-insensitive searching in a string. + Copyright (C) 2007-2023 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +/* Written by Bruno Haible , 2007. */ + +#include + +#include "c-strcasestr.h" + +#include +#include + +#include "macros.h" + +int +main () +{ + { + const char input[] = "foo"; + const char *result = c_strcasestr (input, ""); + ASSERT (result == input); + } + + { + const char input[] = "foo"; + const char *result = c_strcasestr (input, "O"); + ASSERT (result == input + 1); + } + + { + const char input[] = "ABC ABCDAB ABCDABCDABDE"; + const char *result = c_strcasestr (input, "ABCDaBD"); + ASSERT (result == input + 15); + } + + { + const char input[] = "ABC ABCDAB ABCDABCDABDE"; + const char *result = c_strcasestr (input, "ABCDaBE"); + ASSERT (result == NULL); + } + + { + const char input[] = "ABC ABCDAB ABCDABCDABDE"; + const char *result = c_strcasestr (input, "ABCDaBCD"); + ASSERT (result == input + 11); + } + + /* Check that a long periodic needle does not cause false positives. */ + { + const char input[] = "F_BD_CE_BD_EF_BF_BD_EF_BF_BD_EF_BF_BD_EF_BF_BD" + "_C3_88_20_EF_BF_BD_EF_BF_BD_EF_BF_BD" + "_C3_A7_20_EF_BF_BD"; + const char need[] = "_EF_BF_BD_EF_BF_BD_EF_BF_BD_EF_BF_BD_EF_BF_BD"; + const char *result = c_strcasestr (input, need); + ASSERT (result == NULL); + } + { + const char input[] = "F_BD_CE_BD_EF_BF_BD_EF_BF_BD_EF_BF_BD_EF_BF_BD" + "_C3_88_20_EF_BF_BD_EF_BF_BD_EF_BF_BD" + "_C3_A7_20_EF_BF_BD_DA_B5_C2_A6_20" + "_EF_BF_BD_EF_BF_BD_EF_BF_BD_EF_BF_BD_EF_BF_BD"; + const char need[] = "_EF_BF_BD_EF_BF_BD_EF_BF_BD_EF_BF_BD_EF_BF_BD"; + const char *result = c_strcasestr (input, need); + ASSERT (result == input + 115); + } + + /* Check that a very long haystack is handled quickly if the needle is + short and occurs near the beginning. */ + { + size_t repeat = 10000; + size_t m = 1000000; + const char *needle = + "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaAaaaaaaAAAAaaaaaaa" + "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"; + char *haystack = (char *) malloc (m + 1); + if (haystack != NULL) + { + memset (haystack, 'A', m); + haystack[0] = 'B'; + haystack[m] = '\0'; + + for (; repeat > 0; repeat--) + { + ASSERT (c_strcasestr (haystack, needle) == haystack + 1); + } + + free (haystack); + } + } + + /* Check that a very long needle is discarded quickly if the haystack is + short. */ + { + size_t repeat = 10000; + size_t m = 1000000; + const char *haystack = + "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + "ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB"; + char *needle = (char *) malloc (m + 1); + if (needle != NULL) + { + memset (needle, 'A', m); + needle[m] = '\0'; + + for (; repeat > 0; repeat--) + { + ASSERT (c_strcasestr (haystack, needle) == NULL); + } + + free (needle); + } + } + + /* Check that the asymptotic worst-case complexity is not quadratic. */ + { + size_t m = 1000000; + char *haystack = (char *) malloc (2 * m + 2); + char *needle = (char *) malloc (m + 2); + if (haystack != NULL && needle != NULL) + { + const char *result; + + memset (haystack, 'A', 2 * m); + haystack[2 * m] = 'B'; + haystack[2 * m + 1] = '\0'; + + memset (needle, 'a', m); + needle[m] = 'B'; + needle[m + 1] = '\0'; + + result = c_strcasestr (haystack, needle); + ASSERT (result == haystack + m); + } + free (needle); + free (haystack); + } + + { + /* Ensure that with a barely periodic "short" needle, c_strcasestr's + search does not mistakenly skip just past the match point. + This use of c_strcasestr would mistakenly return NULL before + gnulib v0.0-4927. */ + const char *haystack = + "\n" + "with_build_libsubdir\n" + "with_local_prefix\n" + "with_gxx_include_dir\n" + "with_cpp_install_dir\n" + "enable_generated_files_in_srcdir\n" + "with_gnu_ld\n" + "with_ld\n" + "with_demangler_in_ld\n" + "with_gnu_as\n" + "with_as\n" + "enable_largefile\n" + "enable_werror_always\n" + "enable_checking\n" + "enable_coverage\n" + "enable_gather_detailed_mem_stats\n" + "enable_build_with_cxx\n" + "with_stabs\n" + "enable_multilib\n" + "enable___cxa_atexit\n" + "enable_decimal_float\n" + "enable_fixed_point\n" + "enable_threads\n" + "enable_tls\n" + "enable_objc_gc\n" + "with_dwarf2\n" + "enable_shared\n" + "with_build_sysroot\n" + "with_sysroot\n" + "with_specs\n" + "with_pkgversion\n" + "with_bugurl\n" + "enable_languages\n" + "with_multilib_list\n"; + const char *needle = "\n" + "with_GNU_ld\n"; + const char* p = c_strcasestr (haystack, needle); + ASSERT (p - haystack == 114); + } + + { + /* Same bug, shorter trigger. */ + const char *haystack = "..wi.D."; + const char *needle = ".d."; + const char* p = c_strcasestr (haystack, needle); + ASSERT (p - haystack == 4); + } + + { + /* Like the above, but trigger the flaw in two_way_long_needle + by using a needle of length LONG_NEEDLE_THRESHOLD (32) or greater. + Rather than trying to find the right alignment manually, I've + arbitrarily chosen the following needle and template for the + haystack, and ensure that for each placement of the needle in + that haystack, c_strcasestr finds it. */ + const char *needle = "\nwith_gnu_ld-extend-to-len-32-b\n"; + const char *h = + "\n" + "with_build_libsubdir\n" + "with_local_prefix\n" + "with_gxx_include_dir\n" + "with_cpp_install_dir\n" + "with_e_\n" + "..............................\n" + "with_FGHIJKLMNOPQRSTUVWXYZ\n" + "with_567890123456789\n" + "with_multilib_list\n"; + size_t h_len = strlen (h); + char *haystack = malloc (h_len + 1); + size_t i; + ASSERT (haystack); + for (i = 0; i < h_len - strlen (needle); i++) + { + const char *p; + memcpy (haystack, h, h_len + 1); + memcpy (haystack + i, needle, strlen (needle) + 1); + p = c_strcasestr (haystack, needle); + ASSERT (p); + ASSERT (p - haystack == i); + } + free (haystack); + } + + /* Test case from Yves Bastide. + */ + { + const char input[] = "playing PLAY play PLAY always"; + const char *result = c_strcasestr (input, "play PLAY play"); + ASSERT (result == input + 8); + } + + /* Test long needles. */ + { + size_t m = 1024; + char *haystack = (char *) malloc (2 * m + 1); + char *needle = (char *) malloc (m + 1); + if (haystack != NULL && needle != NULL) + { + const char *p; + haystack[0] = 'x'; + memset (haystack + 1, ' ', m - 1); + memset (haystack + m, 'x', m); + haystack[2 * m] = '\0'; + memset (needle, 'X', m); + needle[m] = '\0'; + p = c_strcasestr (haystack, needle); + ASSERT (p); + ASSERT (p - haystack == m); + } + free (needle); + free (haystack); + } + + return 0; +} diff --git a/gnulib-tests/test-c-strncasecmp.c b/gnulib-tests/test-c-strncasecmp.c index 6cbdce0..c8501a2 100644 --- a/gnulib-tests/test-c-strncasecmp.c +++ b/gnulib-tests/test-c-strncasecmp.c @@ -1,9 +1,9 @@ /* Test of case-insensitive string comparison function. - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-calloc-gnu.c b/gnulib-tests/test-calloc-gnu.c index a98a75f..fd72c44 100644 --- a/gnulib-tests/test-calloc-gnu.c +++ b/gnulib-tests/test-calloc-gnu.c @@ -1,9 +1,9 @@ /* Test of calloc function. - Copyright (C) 2010-2021 Free Software Foundation, Inc. + Copyright (C) 2010-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -63,7 +63,7 @@ main () ASSERT (p == NULL); ASSERT (errno == ENOMEM); - p = calloc (SIZE_MAX / n + 1, identity (n)); + p = calloc (SIZE_MAX / n + 1, identity (n)); ASSERT (p == NULL); ASSERT (errno == ENOMEM); } diff --git a/gnulib-tests/test-cloexec.c b/gnulib-tests/test-cloexec.c index 660e455..e8c8eb6 100644 --- a/gnulib-tests/test-cloexec.c +++ b/gnulib-tests/test-cloexec.c @@ -1,9 +1,9 @@ /* Test duplicating non-inheritable file descriptors. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-close.c b/gnulib-tests/test-close.c index 992475f..9e3ec86 100644 --- a/gnulib-tests/test-close.c +++ b/gnulib-tests/test-close.c @@ -1,9 +1,9 @@ /* Test closing a file or socket. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-connect.c b/gnulib-tests/test-connect.c index 5e2905b..84b1367 100644 --- a/gnulib-tests/test-connect.c +++ b/gnulib-tests/test-connect.c @@ -1,9 +1,9 @@ /* Test connecting a client socket. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-ctype.c b/gnulib-tests/test-ctype.c index 43256a4..3b385fd 100644 --- a/gnulib-tests/test-ctype.c +++ b/gnulib-tests/test-ctype.c @@ -1,9 +1,9 @@ /* Test of substitute. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-dirname.c b/gnulib-tests/test-dirname.c index 3f90e17..bebd732 100644 --- a/gnulib-tests/test-dirname.c +++ b/gnulib-tests/test-dirname.c @@ -1,9 +1,9 @@ /* Test the gnulib dirname module. - Copyright (C) 2005-2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2005-2007, 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -18,7 +18,6 @@ #include "dirname.h" -#include #include #include #include diff --git a/gnulib-tests/test-dup2.c b/gnulib-tests/test-dup2.c index 6c2e65e..8acbc03 100644 --- a/gnulib-tests/test-dup2.c +++ b/gnulib-tests/test-dup2.c @@ -1,9 +1,9 @@ /* Test duplicating file descriptors. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -50,6 +50,12 @@ SIGNATURE_CHECK (dup2, int, (int, int)); #include "macros.h" +/* Tell GCC not to warn about the specific edge cases tested here. */ +#if __GNUC__ >= 13 +# pragma GCC diagnostic ignored "-Wanalyzer-fd-leak" +# pragma GCC diagnostic ignored "-Wanalyzer-fd-use-without-check" +#endif + /* Return non-zero if FD is open. */ static int is_open (int fd) diff --git a/gnulib-tests/test-dynarray.c b/gnulib-tests/test-dynarray.c index c3f9a29..b462416 100644 --- a/gnulib-tests/test-dynarray.c +++ b/gnulib-tests/test-dynarray.c @@ -1,5 +1,5 @@ /* Test of type-safe arrays that grow dynamically. - Copyright (C) 2021 Free Software Foundation, Inc. + Copyright (C) 2021-2023 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by diff --git a/gnulib-tests/test-environ.c b/gnulib-tests/test-environ.c index 2935e43..3df1f0f 100644 --- a/gnulib-tests/test-environ.c +++ b/gnulib-tests/test-environ.c @@ -1,9 +1,9 @@ /* Test of environ variable. - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-errno.c b/gnulib-tests/test-errno.c index 59c5344..c665e28 100644 --- a/gnulib-tests/test-errno.c +++ b/gnulib-tests/test-errno.c @@ -1,9 +1,9 @@ /* Test of substitute. - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-error.c b/gnulib-tests/test-error.c new file mode 100644 index 0000000..697e783 --- /dev/null +++ b/gnulib-tests/test-error.c @@ -0,0 +1,88 @@ +/* Test of error.h functions. + Copyright (C) 2023 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +/* Written by Bruno Haible , 2023. */ + +#include + +#include "error.h" + +#include + +#include "macros.h" + +/* Custom function to not show the program name in error messages. */ +static void +print_no_progname (void) +{ +} + +int +main (int argc, char *argv[]) +{ + /* Test error() function with zero STATUS and zero ERRNUM. */ + error (0, 0, "bummer"); + /* With format string arguments. */ + errno = EINVAL; /* should be ignored */ + error (0, 0, "Zonk %d%d%d is too large", 1, 2, 3); + /* With non-ASCII characters. */ + error (0, 0, "Pokémon started"); + /* Verify error_message_count. */ + ASSERT (error_message_count == 3); + + /* Test error_at_line() function with zero STATUS and zero ERRNUM. */ + error_at_line (0, 0, "d1/foo.c", 10, "invalid blub"); + error_at_line (0, 0, "d1/foo.c", 10, "invalid blarn"); + /* Verify error_message_count. */ + ASSERT (error_message_count == 5); + + /* Test error_one_per_line. */ + error_one_per_line = 1; + error_at_line (0, 0, "d1/foo.c", 10, "unsupported glink"); + /* Another line number. */ + error_at_line (0, 0, "d1/foo.c", 13, "invalid brump"); + /* Another file name. */ + error_at_line (0, 0, "d2/foo.c", 13, "unsupported flinge"); + /* Same file name and same line number => message not shown. */ + error_at_line (0, 0, "d2/foo.c", 13, "invalid bark"); + /* Verify error_message_count. */ + ASSERT (error_message_count == 8); + error_one_per_line = 0; + + /* Test error_print_progname. */ + error_print_progname = print_no_progname; + error (0, 0, "hammer"); + error (0, 0, "boing %d%d%d is too large", 1, 2, 3); + #if 0 + /* The documentation does not describe the output if the file name is NULL. */ + error_at_line (0, 0, NULL, 42, "drummer too loud"); + #endif + error_at_line (0, 0, "d2/bar.c", 11, "bark too loud"); + /* Verify error_message_count. */ + ASSERT (error_message_count == 11); + error_print_progname = NULL; + + /* Test error() function with nonzero ERRNUM. */ + errno = EINVAL; /* should be ignored */ + error (0, EACCES, "can't steal"); + /* Verify error_message_count. */ + ASSERT (error_message_count == 12); + + /* Test error() function with nonzero STATUS. */ + error (4, 0, "fatal error"); + + return 0; +} diff --git a/gnulib-tests/test-error.sh b/gnulib-tests/test-error.sh new file mode 100755 index 0000000..d173e18 --- /dev/null +++ b/gnulib-tests/test-error.sh @@ -0,0 +1,36 @@ +#!/bin/sh +# Test of the 'error' module. + +. "${srcdir=.}/init.sh"; path_prepend_ . + +${CHECKER} test-error${EXEEXT} > out 2> err +# Verify the exit code. +case $? in + 4) ;; + *) Exit 1;; +esac + +# Normalize the stderr output on Windows platforms. +tr -d '\015' < err | sed 's,.*test-error[.ex]*:,test-error:,' > err2 || Exit 1 + +# Verify the stderr output. +compare - err2 <<\EOF || Exit 1 +test-error: bummer +test-error: Zonk 123 is too large +test-error: Pokémon started +test-error:d1/foo.c:10: invalid blub +test-error:d1/foo.c:10: invalid blarn +test-error:d1/foo.c:10: unsupported glink +test-error:d1/foo.c:13: invalid brump +test-error:d2/foo.c:13: unsupported flinge +hammer +boing 123 is too large +d2/bar.c:11: bark too loud +test-error: can't steal: Permission denied +test-error: fatal error +EOF + +# Verify the stdout output. +test -s out && Exit 1 + +Exit 0 diff --git a/gnulib-tests/test-exclude.c b/gnulib-tests/test-exclude.c index 1f4baf3..5a81cab 100644 --- a/gnulib-tests/test-exclude.c +++ b/gnulib-tests/test-exclude.c @@ -1,10 +1,10 @@ /* Test suite for exclude. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This file is part of the GNUlib Library. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -20,7 +20,6 @@ #include #include #include -#include #include #include "exclude.h" diff --git a/gnulib-tests/test-exclude1.sh b/gnulib-tests/test-exclude1.sh index 613994c..9aca1d8 100755 --- a/gnulib-tests/test-exclude1.sh +++ b/gnulib-tests/test-exclude1.sh @@ -1,11 +1,11 @@ #! /bin/sh # Test suite for exclude. -# Copyright (C) 2009-2021 Free Software Foundation, Inc. +# Copyright (C) 2009-2023 Free Software Foundation, Inc. # This file is part of the GNUlib Library. # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or +# the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-exclude2.sh b/gnulib-tests/test-exclude2.sh index a0d078d..ff7ced0 100755 --- a/gnulib-tests/test-exclude2.sh +++ b/gnulib-tests/test-exclude2.sh @@ -1,11 +1,11 @@ #! /bin/sh # Test suite for exclude. -# Copyright (C) 2009-2021 Free Software Foundation, Inc. +# Copyright (C) 2009-2023 Free Software Foundation, Inc. # This file is part of the GNUlib Library. # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or +# the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-exclude3.sh b/gnulib-tests/test-exclude3.sh index 3c6c9a9..97744dc 100755 --- a/gnulib-tests/test-exclude3.sh +++ b/gnulib-tests/test-exclude3.sh @@ -1,11 +1,11 @@ #! /bin/sh # Test suite for exclude. -# Copyright (C) 2009-2021 Free Software Foundation, Inc. +# Copyright (C) 2009-2023 Free Software Foundation, Inc. # This file is part of the GNUlib Library. # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or +# the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-exclude4.sh b/gnulib-tests/test-exclude4.sh index 8fa1405..998dae0 100755 --- a/gnulib-tests/test-exclude4.sh +++ b/gnulib-tests/test-exclude4.sh @@ -1,11 +1,11 @@ #! /bin/sh # Test suite for exclude. -# Copyright (C) 2009-2021 Free Software Foundation, Inc. +# Copyright (C) 2009-2023 Free Software Foundation, Inc. # This file is part of the GNUlib Library. # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or +# the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-exclude5.sh b/gnulib-tests/test-exclude5.sh index 86dfc49..f386df8 100755 --- a/gnulib-tests/test-exclude5.sh +++ b/gnulib-tests/test-exclude5.sh @@ -1,11 +1,11 @@ #! /bin/sh # Test suite for exclude. -# Copyright (C) 2009-2021 Free Software Foundation, Inc. +# Copyright (C) 2009-2023 Free Software Foundation, Inc. # This file is part of the GNUlib Library. # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or +# the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-exclude6.sh b/gnulib-tests/test-exclude6.sh index 87dfe3a..8362b01 100755 --- a/gnulib-tests/test-exclude6.sh +++ b/gnulib-tests/test-exclude6.sh @@ -1,11 +1,11 @@ #! /bin/sh # Test suite for exclude. -# Copyright (C) 2009-2021 Free Software Foundation, Inc. +# Copyright (C) 2009-2023 Free Software Foundation, Inc. # This file is part of the GNUlib Library. # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or +# the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-exclude7.sh b/gnulib-tests/test-exclude7.sh index ed09185..08f67ef 100755 --- a/gnulib-tests/test-exclude7.sh +++ b/gnulib-tests/test-exclude7.sh @@ -1,11 +1,11 @@ #! /bin/sh # Test suite for exclude. -# Copyright (C) 2009-2021 Free Software Foundation, Inc. +# Copyright (C) 2009-2023 Free Software Foundation, Inc. # This file is part of the GNUlib Library. # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or +# the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-exclude8.sh b/gnulib-tests/test-exclude8.sh index e4f6791..a2e007d 100755 --- a/gnulib-tests/test-exclude8.sh +++ b/gnulib-tests/test-exclude8.sh @@ -1,11 +1,11 @@ #! /bin/sh # Test suite for exclude. -# Copyright (C) 2010-2021 Free Software Foundation, Inc. +# Copyright (C) 2010-2023 Free Software Foundation, Inc. # This file is part of the GNUlib Library. # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or +# the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-fcntl-h.c b/gnulib-tests/test-fcntl-h.c index ab25cf7..c255213 100644 --- a/gnulib-tests/test-fcntl-h.c +++ b/gnulib-tests/test-fcntl-h.c @@ -1,9 +1,9 @@ /* Test of substitute. - Copyright (C) 2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2007, 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-fcntl.c b/gnulib-tests/test-fcntl.c index cb834b4..5fb554a 100644 --- a/gnulib-tests/test-fcntl.c +++ b/gnulib-tests/test-fcntl.c @@ -1,9 +1,9 @@ /* Test of fcntl(2). - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -27,7 +27,6 @@ SIGNATURE_CHECK (fcntl, int, (int, int, ...)); /* Helpers. */ #include #include -#include #include #if defined _WIN32 && ! defined __CYGWIN__ @@ -45,6 +44,12 @@ SIGNATURE_CHECK (fcntl, int, (int, int, ...)); #include "binary-io.h" #include "macros.h" +/* Tell GCC not to warn about the specific edge cases tested here. */ +#if __GNUC__ >= 13 +# pragma GCC diagnostic ignored "-Wanalyzer-fd-leak" +# pragma GCC diagnostic ignored "-Wanalyzer-va-arg-type-mismatch" +#endif + #if !O_BINARY # define set_binary_mode(f,m) zero () static int zero (void) { return 0; } diff --git a/gnulib-tests/test-fdopen.c b/gnulib-tests/test-fdopen.c index 86793bc..cf28f8e 100644 --- a/gnulib-tests/test-fdopen.c +++ b/gnulib-tests/test-fdopen.c @@ -1,9 +1,9 @@ /* Test opening a stream with a file descriptor. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -33,9 +33,14 @@ main (void) failure, since the behavior is not well-defined on invalid file descriptors, so try fdopen 1000 times and if that's not enough to fail due to EMFILE, so be it. */ + #if defined __ANDROID__ /* fdsan */ + #define COUNT 1 + #else + #define COUNT 1000 + #endif int i; - for (i = 0; i < 1000; i++) + for (i = 0; i < COUNT; i++) { errno = 0; if (! fdopen (STDOUT_FILENO, "w")) diff --git a/gnulib-tests/test-fgetc.c b/gnulib-tests/test-fgetc.c index 6faae5c..c8c65f5 100644 --- a/gnulib-tests/test-fgetc.c +++ b/gnulib-tests/test-fgetc.c @@ -1,9 +1,9 @@ /* Test of fgetc() function. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) + the Free Software Foundation, either version 3, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -54,6 +54,7 @@ main (int argc, char **argv) /* Test that fgetc() sets errno if someone else closes the stream fd behind the back of stdio. */ + #if !defined __ANDROID__ /* fdsan */ { FILE *fp = fopen (filename, "r"); ASSERT (fp != NULL); @@ -64,6 +65,7 @@ main (int argc, char **argv) ASSERT (ferror (fp)); fclose (fp); } + #endif /* Test that fgetc() sets errno if the stream was constructed with an invalid file descriptor. */ diff --git a/gnulib-tests/test-filenamecat.c b/gnulib-tests/test-filenamecat.c index 384342d..8cc5f94 100644 --- a/gnulib-tests/test-filenamecat.c +++ b/gnulib-tests/test-filenamecat.c @@ -1,10 +1,10 @@ /* Test of concatenation of two arbitrary file names. - Copyright (C) 1996-2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 1996-2007, 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -23,7 +23,6 @@ #include "idx.h" -#include #include #include #include @@ -31,7 +30,7 @@ int -main (int argc _GL_UNUSED, char *argv[]) +main (_GL_UNUSED int argc, char *argv[]) { static char const *const tests[][3] = { diff --git a/gnulib-tests/test-float.c b/gnulib-tests/test-float.c index f79e819..07c3ad1 100644 --- a/gnulib-tests/test-float.c +++ b/gnulib-tests/test-float.c @@ -1,9 +1,9 @@ /* Test of substitute. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -20,12 +20,48 @@ #include -#include "fpucw.h" -#include "macros.h" - /* Check that FLT_RADIX is a constant expression. */ int a[] = { FLT_RADIX }; +/* ----------------------- Check macros for 'float' ----------------------- */ + +/* Check that the FLT_* macros expand to constant expressions. */ +int fb[] = + { + FLT_MANT_DIG, FLT_MIN_EXP, FLT_MAX_EXP, + FLT_DIG, FLT_MIN_10_EXP, FLT_MAX_10_EXP + }; +float fc[] = { FLT_EPSILON, FLT_MIN, FLT_MAX }; + +/* ----------------------- Check macros for 'double' ----------------------- */ + +/* Check that the DBL_* macros expand to constant expressions. */ +int db[] = + { + DBL_MANT_DIG, DBL_MIN_EXP, DBL_MAX_EXP, + DBL_DIG, DBL_MIN_10_EXP, DBL_MAX_10_EXP + }; +double dc[] = { DBL_EPSILON, DBL_MIN, DBL_MAX }; + +/* -------------------- Check macros for 'long double' -------------------- */ + +/* Check that the LDBL_* macros expand to constant expressions. */ +int lb[] = + { + LDBL_MANT_DIG, LDBL_MIN_EXP, LDBL_MAX_EXP, + LDBL_DIG, LDBL_MIN_10_EXP, LDBL_MAX_10_EXP + }; +long double lc1 = LDBL_EPSILON; +long double lc2 = LDBL_MIN; +#if 0 /* LDBL_MAX is not a constant expression on some platforms. */ +long double lc3 = LDBL_MAX; +#endif + +/* ------------------------------------------------------------------------- */ + +#include "fpucw.h" +#include "macros.h" + #if FLT_RADIX == 2 /* Return 2^n. */ @@ -117,14 +153,6 @@ pow2l (int n) /* ----------------------- Check macros for 'float' ----------------------- */ -/* Check that the FLT_* macros expand to constant expressions. */ -int fb[] = - { - FLT_MANT_DIG, FLT_MIN_EXP, FLT_MAX_EXP, - FLT_DIG, FLT_MIN_10_EXP, FLT_MAX_10_EXP - }; -float fc[] = { FLT_EPSILON, FLT_MIN, FLT_MAX }; - static void test_float (void) { @@ -196,14 +224,6 @@ test_float (void) /* ----------------------- Check macros for 'double' ----------------------- */ -/* Check that the DBL_* macros expand to constant expressions. */ -int db[] = - { - DBL_MANT_DIG, DBL_MIN_EXP, DBL_MAX_EXP, - DBL_DIG, DBL_MIN_10_EXP, DBL_MAX_10_EXP - }; -double dc[] = { DBL_EPSILON, DBL_MIN, DBL_MAX }; - static void test_double (void) { @@ -275,18 +295,6 @@ test_double (void) /* -------------------- Check macros for 'long double' -------------------- */ -/* Check that the LDBL_* macros expand to constant expressions. */ -int lb[] = - { - LDBL_MANT_DIG, LDBL_MIN_EXP, LDBL_MAX_EXP, - LDBL_DIG, LDBL_MIN_10_EXP, LDBL_MAX_10_EXP - }; -long double lc1 = LDBL_EPSILON; -long double lc2 = LDBL_MIN; -#if 0 /* LDBL_MAX is not a constant expression on some platforms. */ -long double lc3 = LDBL_MAX; -#endif - static void test_long_double (void) { diff --git a/gnulib-tests/test-fnmatch-h.c b/gnulib-tests/test-fnmatch-h.c index 86246fd..e26b640 100644 --- a/gnulib-tests/test-fnmatch-h.c +++ b/gnulib-tests/test-fnmatch-h.c @@ -1,9 +1,9 @@ /* Test of substitute. - Copyright (C) 2018-2021 Free Software Foundation, Inc. + Copyright (C) 2018-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-fnmatch.c b/gnulib-tests/test-fnmatch.c index ae7fc8a..3777aa2 100644 --- a/gnulib-tests/test-fnmatch.c +++ b/gnulib-tests/test-fnmatch.c @@ -1,9 +1,9 @@ /* Test of fnmatch string matching function. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -28,29 +28,27 @@ SIGNATURE_CHECK (fnmatch, int, (char const *, char const *, int)); int main () { - int res; + ASSERT (fnmatch ("", "", 0) == 0); - ASSERT (res = fnmatch ("", "", 0) == 0); + ASSERT (fnmatch ("*", "", 0) == 0); + ASSERT (fnmatch ("*", "foo", 0) == 0); + ASSERT (fnmatch ("*", "bar", 0) == 0); + ASSERT (fnmatch ("*", "*", 0) == 0); + ASSERT (fnmatch ("**", "f", 0) == 0); + ASSERT (fnmatch ("**", "foo.txt", 0) == 0); + ASSERT (fnmatch ("*.*", "foo.txt", 0) == 0); - ASSERT (res = fnmatch ("*", "", 0) == 0); - ASSERT (res = fnmatch ("*", "foo", 0) == 0); - ASSERT (res = fnmatch ("*", "bar", 0) == 0); - ASSERT (res = fnmatch ("*", "*", 0) == 0); - ASSERT (res = fnmatch ("**", "f", 0) == 0); - ASSERT (res = fnmatch ("**", "foo.txt", 0) == 0); - ASSERT (res = fnmatch ("*.*", "foo.txt", 0) == 0); + ASSERT (fnmatch ("foo*.txt", "foobar.txt", 0) == 0); - ASSERT (res = fnmatch ("foo*.txt", "foobar.txt", 0) == 0); - - ASSERT (res = fnmatch ("foo.txt", "foo.txt", 0) == 0); - ASSERT (res = fnmatch ("foo\\.txt", "foo.txt", 0) == 0); - ASSERT (res = fnmatch ("foo\\.txt", "foo.txt", FNM_NOESCAPE) == FNM_NOMATCH); + ASSERT (fnmatch ("foo.txt", "foo.txt", 0) == 0); + ASSERT (fnmatch ("foo\\.txt", "foo.txt", 0) == 0); + ASSERT (fnmatch ("foo\\.txt", "foo.txt", FNM_NOESCAPE) == FNM_NOMATCH); /* Verify that an unmatched [ is treated as a literal, as POSIX requires. This test ensures that glibc Bugzilla bug #12378 stays fixed. */ - ASSERT (res = fnmatch ("[/b", "[/b", 0) == 0); + ASSERT (fnmatch ("[/b", "[/b", 0) == 0); ASSERT (fnmatch ("[[:alpha:]'[:alpha:]\0]", "a", 0) == FNM_NOMATCH); ASSERT (fnmatch ("[a[.\0.]]", "a", 0) == FNM_NOMATCH); diff --git a/gnulib-tests/test-fopen-gnu.c b/gnulib-tests/test-fopen-gnu.c index 26c5762..1fa8824 100644 --- a/gnulib-tests/test-fopen-gnu.c +++ b/gnulib-tests/test-fopen-gnu.c @@ -1,9 +1,9 @@ /* Test of opening a file stream. - Copyright (C) 2020-2021 Free Software Foundation, Inc. + Copyright (C) 2020-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-fopen.c b/gnulib-tests/test-fopen.c index f69a13a..17984e0 100644 --- a/gnulib-tests/test-fopen.c +++ b/gnulib-tests/test-fopen.c @@ -1,9 +1,9 @@ /* Test of opening a file stream. - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-fopen.h b/gnulib-tests/test-fopen.h index b6a3dcb..751afd8 100644 --- a/gnulib-tests/test-fopen.h +++ b/gnulib-tests/test-fopen.h @@ -1,9 +1,9 @@ /* Test of opening a file stream. - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -23,6 +23,11 @@ #include "macros.h" +/* Tell GCC not to warn about the specific edge cases tested here. */ +#if __GNUC__ >= 10 +# pragma GCC diagnostic ignored "-Wanalyzer-file-leak" +#endif + /* Test fopen. Assumes BASE is defined. */ static int diff --git a/gnulib-tests/test-fputc.c b/gnulib-tests/test-fputc.c index 47bb844..3a9e7c3 100644 --- a/gnulib-tests/test-fputc.c +++ b/gnulib-tests/test-fputc.c @@ -1,9 +1,9 @@ /* Test of fputc() function. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) + the Free Software Foundation, either version 3, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -45,6 +45,7 @@ main (int argc, char **argv) /* Test that fputc() on an unbuffered stream sets errno if someone else closes the stream fd behind the back of stdio. */ + #if !defined __ANDROID__ /* fdsan */ { FILE *fp = fopen (filename, "w"); ASSERT (fp != NULL); @@ -56,6 +57,7 @@ main (int argc, char **argv) ASSERT (ferror (fp)); fclose (fp); } + #endif /* Test that fputc() on an unbuffered stream sets errno if the stream was constructed with an invalid file descriptor. */ diff --git a/gnulib-tests/test-fread.c b/gnulib-tests/test-fread.c index f8214ca..d6d16ec 100644 --- a/gnulib-tests/test-fread.c +++ b/gnulib-tests/test-fread.c @@ -1,9 +1,9 @@ /* Test of fread() function. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) + the Free Software Foundation, either version 3, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -54,6 +54,7 @@ main (int argc, char **argv) /* Test that fread() sets errno if someone else closes the stream fd behind the back of stdio. */ + #if !defined __ANDROID__ /* fdsan */ { FILE *fp = fopen (filename, "r"); char buf[5]; @@ -65,6 +66,7 @@ main (int argc, char **argv) ASSERT (ferror (fp)); fclose (fp); } + #endif /* Test that fread() sets errno if the stream was constructed with an invalid file descriptor. */ diff --git a/gnulib-tests/test-free.c b/gnulib-tests/test-free.c index 53f1085..c530e86 100644 --- a/gnulib-tests/test-free.c +++ b/gnulib-tests/test-free.c @@ -1,9 +1,9 @@ /* Test of free() function. - Copyright (C) 2020-2021 Free Software Foundation, Inc. + Copyright (C) 2020-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-freopen.c b/gnulib-tests/test-freopen.c index bbe551e..11efa5f 100644 --- a/gnulib-tests/test-freopen.c +++ b/gnulib-tests/test-freopen.c @@ -1,9 +1,9 @@ /* Test of opening a file stream. - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-fstat.c b/gnulib-tests/test-fstat.c index 0d78e17..59c2dc4 100644 --- a/gnulib-tests/test-fstat.c +++ b/gnulib-tests/test-fstat.c @@ -1,9 +1,9 @@ /* Tests of fstat() function. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-ftruncate.c b/gnulib-tests/test-ftruncate.c index d11b8eb..bcd6393 100644 --- a/gnulib-tests/test-ftruncate.c +++ b/gnulib-tests/test-ftruncate.c @@ -1,9 +1,9 @@ /* Test truncating a file. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-fwrite.c b/gnulib-tests/test-fwrite.c index 17e80bd..503e849 100644 --- a/gnulib-tests/test-fwrite.c +++ b/gnulib-tests/test-fwrite.c @@ -1,9 +1,9 @@ /* Test of fwrite() function. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) + the Free Software Foundation, either version 3, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -45,6 +45,7 @@ main (int argc, char **argv) /* Test that fwrite() on an unbuffered stream sets errno if someone else closes the stream fd behind the back of stdio. */ + #if !defined __ANDROID__ /* fdsan */ { FILE *fp = fopen (filename, "w"); char buf[5] = "world"; @@ -57,6 +58,7 @@ main (int argc, char **argv) ASSERT (ferror (fp)); fclose (fp); } + #endif /* Test that fwrite() on an unbuffered stream sets errno if the stream was constructed with an invalid file descriptor. */ diff --git a/gnulib-tests/test-getcwd-lgpl.c b/gnulib-tests/test-getcwd-lgpl.c index 17080d9..821244f 100644 --- a/gnulib-tests/test-getcwd-lgpl.c +++ b/gnulib-tests/test-getcwd-lgpl.c @@ -1,9 +1,9 @@ /* Test of getcwd() function. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-getdtablesize.c b/gnulib-tests/test-getdtablesize.c index d56c682..d2c93f1 100644 --- a/gnulib-tests/test-getdtablesize.c +++ b/gnulib-tests/test-getdtablesize.c @@ -1,9 +1,9 @@ /* Test of getdtablesize() function. - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -25,6 +25,11 @@ SIGNATURE_CHECK (getdtablesize, int, (void)); #include "macros.h" +/* Tell GCC not to warn about the specific edge cases tested here. */ +#if __GNUC__ >= 13 +# pragma GCC diagnostic ignored "-Wanalyzer-fd-leak" +#endif + int main (int argc, char *argv[]) { diff --git a/gnulib-tests/test-getopt-gnu.c b/gnulib-tests/test-getopt-gnu.c index fe1ab3c..8289a3c 100644 --- a/gnulib-tests/test-getopt-gnu.c +++ b/gnulib-tests/test-getopt-gnu.c @@ -1,9 +1,9 @@ /* Test of command line argument processing. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-getopt-main.h b/gnulib-tests/test-getopt-main.h index c86dc8d..510685d 100644 --- a/gnulib-tests/test-getopt-main.h +++ b/gnulib-tests/test-getopt-main.h @@ -1,9 +1,9 @@ /* Test of command line argument processing. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-getopt-posix.c b/gnulib-tests/test-getopt-posix.c index 26d5764..f933b38 100644 --- a/gnulib-tests/test-getopt-posix.c +++ b/gnulib-tests/test-getopt-posix.c @@ -1,9 +1,9 @@ /* Test of command line argument processing. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-getopt.h b/gnulib-tests/test-getopt.h index 5cc9d8c..781acc1 100644 --- a/gnulib-tests/test-getopt.h +++ b/gnulib-tests/test-getopt.h @@ -1,9 +1,9 @@ /* Test of command line argument processing. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -16,7 +16,6 @@ /* Written by Bruno Haible , 2009. */ -#include /* The glibc/gnulib implementation of getopt supports setting optind = 0, but not all other implementations do. This matters for getopt. diff --git a/gnulib-tests/test-getopt_long.h b/gnulib-tests/test-getopt_long.h index 5e3c50a..c686aed 100644 --- a/gnulib-tests/test-getopt_long.h +++ b/gnulib-tests/test-getopt_long.h @@ -1,9 +1,9 @@ /* Test of command line argument processing. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-getprogname.c b/gnulib-tests/test-getprogname.c index 21eb338..168c0cb 100644 --- a/gnulib-tests/test-getprogname.c +++ b/gnulib-tests/test-getprogname.c @@ -1,9 +1,9 @@ /* Test the gnulib getprogname module. - Copyright (C) 2016-2021 Free Software Foundation, Inc. + Copyright (C) 2016-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -16,7 +16,8 @@ #include -#include "getprogname.h" +#include + #include #include diff --git a/gnulib-tests/test-getrandom.c b/gnulib-tests/test-getrandom.c index 73abe6b..4670118 100644 --- a/gnulib-tests/test-getrandom.c +++ b/gnulib-tests/test-getrandom.c @@ -1,9 +1,9 @@ /* Test of getting random bytes. - Copyright (C) 2020-2021 Free Software Foundation, Inc. + Copyright (C) 2020-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-gettimeofday.c b/gnulib-tests/test-gettimeofday.c index f9139d0..d1d5206 100644 --- a/gnulib-tests/test-gettimeofday.c +++ b/gnulib-tests/test-gettimeofday.c @@ -1,10 +1,9 @@ /* - * Copyright (C) 2005, 2007, 2009-2021 Free Software Foundation, Inc. - * Written by Jim Meyering. + * Copyright (C) 2005, 2007, 2009-2023 Free Software Foundation, Inc. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 3 of the License, or + * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, @@ -15,6 +14,8 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ +/* Written by Jim Meyering and Bruno Haible. */ + #include #include @@ -26,10 +27,13 @@ SIGNATURE_CHECK (gettimeofday, int, #include #include +#include #include -int -main (void) +#include "macros.h" + +static void +test_clobber () { time_t t = 0; struct tm *lt; @@ -41,7 +45,44 @@ main (void) if (memcmp (lt, &saved_lt, sizeof (struct tm)) != 0) { fprintf (stderr, "gettimeofday still clobbers the localtime buffer!\n"); - return 1; + exit (1); } +} + +static void +test_consistency () +{ + struct timeval tv1; + time_t tt2; + struct timeval tv3; + time_t tt4; + + ASSERT (gettimeofday (&tv1, NULL) == 0); + tt2 = time (NULL); + ASSERT (gettimeofday (&tv3, NULL) == 0); + tt4 = time (NULL); + + /* Verify monotonicity of gettimeofday(). */ + ASSERT (tv1.tv_sec < tv3.tv_sec + || (tv1.tv_sec == tv3.tv_sec && tv1.tv_usec <= tv3.tv_usec)); + + /* Verify monotonicity of time(). */ + ASSERT (tt2 <= tt4); + + /* Verify that the tv_sec field of the result is the same as time(NULL). */ + /* Note: It's here that the dependency to the 'time' module is needed. + Without it, this assertion would sometimes fail on glibc systems, see + https://sourceware.org/bugzilla/show_bug.cgi?id=30200 */ + ASSERT (tv1.tv_sec <= tt2); + ASSERT (tt2 <= tv3.tv_sec); + ASSERT (tv3.tv_sec <= tt4); +} + +int +main (void) +{ + test_clobber (); + test_consistency (); + return 0; } diff --git a/gnulib-tests/test-hard-locale.c b/gnulib-tests/test-hard-locale.c index ff29b36..6f94e6c 100644 --- a/gnulib-tests/test-hard-locale.c +++ b/gnulib-tests/test-hard-locale.c @@ -1,9 +1,9 @@ /* Test of determination whether a locale is different from the "C" locale. - Copyright (C) 2019-2021 Free Software Foundation, Inc. + Copyright (C) 2019-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -21,7 +21,6 @@ #include "hard-locale.h" #include -#include #include #include @@ -39,8 +38,10 @@ test_one (const char *name, int failure_bitmask) /* musl libc has special code for the C.UTF-8 locale; other than that, all locale names are accepted and all locales are trivial. OpenBSD returns the locale name that was set, but we don't know how it - behaves under the hood. Likewise for Haiku. */ -#if defined MUSL_LIBC || defined __OpenBSD__ || defined __HAIKU__ + behaves under the hood. Likewise for Haiku. + On Android >= 5.0, the "C" locale may have UTF-8 encoding, and we don't + know how it will behave in the future. */ +#if defined MUSL_LIBC || defined __OpenBSD__ || defined __HAIKU__ || defined __ANDROID__ expected = true; #else expected = !all_trivial; @@ -58,12 +59,14 @@ test_one (const char *name, int failure_bitmask) /* On NetBSD 7.0, some locales such as de_DE.ISO8859-1 and de_DE.UTF-8 have the LC_COLLATE category set to "C". - Similarly, on musl libc, with the C.UTF-8 locale. */ + Similarly, on musl libc, with the C.UTF-8 locale. + On Android >= 5.0, the "C" locale may have UTF-8 encoding, and we don't + know how it will behave in the future. */ #if defined __NetBSD__ expected = false; #elif defined MUSL_LIBC expected = strcmp (name, "C.UTF-8") != 0; -#elif (defined __OpenBSD__ && HAVE_DUPLOCALE) || defined __HAIKU__ /* OpenBSD >= 6.2, Haiku */ +#elif (defined __OpenBSD__ && HAVE_DUPLOCALE) || defined __HAIKU__ || defined __ANDROID__ /* OpenBSD >= 6.2, Haiku, Android */ expected = true; #else expected = !all_trivial; @@ -87,12 +90,16 @@ main () { int fail = 0; - /* The initial locale is the "C" or "POSIX" locale. */ + /* The initial locale is the "C" or "POSIX" locale. + On Android >= 5.0, it is equivalent to the "C.UTF-8" locale, cf. + . */ +#if ! defined __ANDROID__ if (hard_locale (LC_CTYPE) || hard_locale (LC_COLLATE)) { fprintf (stderr, "The initial locale should not be hard!\n"); fail |= 1; } +#endif all_trivial = (setlocale (LC_ALL, "foobar") != NULL); diff --git a/gnulib-tests/test-hash.c b/gnulib-tests/test-hash.c index 4e8c59f..08a14e2 100644 --- a/gnulib-tests/test-hash.c +++ b/gnulib-tests/test-hash.c @@ -1,10 +1,10 @@ /* - * Copyright (C) 2009-2021 Free Software Foundation, Inc. + * Copyright (C) 2009-2023 Free Software Foundation, Inc. * Written by Jim Meyering * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 3 of the License, or + * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, @@ -23,7 +23,6 @@ #include #include -#include #include #include diff --git a/gnulib-tests/test-iconv-h.c b/gnulib-tests/test-iconv-h.c index bba7fe3..98d8a9f 100644 --- a/gnulib-tests/test-iconv-h.c +++ b/gnulib-tests/test-iconv-h.c @@ -1,9 +1,9 @@ /* Test of substitute. - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-iconv.c b/gnulib-tests/test-iconv.c index f35113f..2b6a019 100644 --- a/gnulib-tests/test-iconv.c +++ b/gnulib-tests/test-iconv.c @@ -1,9 +1,9 @@ /* Test of character set conversion. - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-ignore-value.c b/gnulib-tests/test-ignore-value.c index 6191d7d..c2e6aaf 100644 --- a/gnulib-tests/test-ignore-value.c +++ b/gnulib-tests/test-ignore-value.c @@ -1,10 +1,10 @@ /* Test the "ignore-value" module. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-inet_pton.c b/gnulib-tests/test-inet_pton.c index 9d2e50f..b6c1571 100644 --- a/gnulib-tests/test-inet_pton.c +++ b/gnulib-tests/test-inet_pton.c @@ -1,9 +1,9 @@ /* Test of inet_pton function. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-init.sh b/gnulib-tests/test-init.sh index 7b8c451..badc139 100755 --- a/gnulib-tests/test-init.sh +++ b/gnulib-tests/test-init.sh @@ -1,11 +1,11 @@ #!/bin/sh # Unit tests for init.sh -# Copyright (C) 2011-2021 Free Software Foundation, Inc. +# Copyright (C) 2011-2023 Free Software Foundation, Inc. # This file is part of the GNUlib Library. # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or +# the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, @@ -16,7 +16,7 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see . */ -: ${srcdir=.} +: "${srcdir=.}" . "$srcdir/init.sh"; path_prepend_ . fail=0 diff --git a/gnulib-tests/test-intprops.c b/gnulib-tests/test-intprops.c index fff4218..5785706 100644 --- a/gnulib-tests/test-intprops.c +++ b/gnulib-tests/test-intprops.c @@ -1,9 +1,9 @@ /* Test intprops.h. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -30,10 +30,12 @@ #include -#include "intprops.h" -#include "verify.h" +#ifdef TEST_STDCKDINT +# include +#else +# include "intprops.h" +#endif -#include #include #include @@ -41,14 +43,17 @@ /* Compile-time verification of expression X. In this file, we need it as a statement, rather than as a declaration. */ -#define verify_stmt(x) do { verify (x); } while (0) +#define verify_stmt(x) do { static_assert (x); } while (0) /* VERIFY (X) uses a static assertion for compilers that are known to work, and falls back on a dynamic assertion for other compilers. + But it ignores X if testing stdckdint.h. These tests should be checkable via 'verify' rather than 'ASSERT', but using 'verify' would run into a bug with HP-UX 11.23 cc; see . */ -#if __GNUC__ || __clang__ || __SUNPRO_C +#ifdef TEST_STDCKDINT +# define VERIFY(x) ((void) 0) +#elif __GNUC__ || __clang__ || __SUNPRO_C # define VERIFY(x) verify_stmt (x) #else # define VERIFY(x) ASSERT (x) @@ -65,6 +70,7 @@ main (void) /* Use VERIFY for tests that must be integer constant expressions, ASSERT otherwise. */ +#ifndef TEST_STDCKDINT /* TYPE_IS_INTEGER. */ ASSERT (TYPE_IS_INTEGER (bool)); ASSERT (TYPE_IS_INTEGER (char)); @@ -161,6 +167,7 @@ main (void) VERIFY (INT_STRLEN_BOUND (int64_t) == sizeof ("-9223372036854775808") - 1); VERIFY (INT_BUFSIZE_BOUND (int64_t) == sizeof ("-9223372036854775808")); #endif +#endif /* All the INT__RANGE_OVERFLOW tests are equally valid as INT__OVERFLOW tests, so define macros to do both. OP is the diff --git a/gnulib-tests/test-inttostr.c b/gnulib-tests/test-inttostr.c index 9422ad4..a8870b7 100644 --- a/gnulib-tests/test-inttostr.c +++ b/gnulib-tests/test-inttostr.c @@ -1,9 +1,9 @@ /* Test inttostr functions, and incidentally, INT_BUFSIZE_BOUND - Copyright (C) 2010-2021 Free Software Foundation, Inc. + Copyright (C) 2010-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-inttypes.c b/gnulib-tests/test-inttypes.c index f7f2e3a..6c27275 100644 --- a/gnulib-tests/test-inttypes.c +++ b/gnulib-tests/test-inttypes.c @@ -1,9 +1,9 @@ /* Test of substitute. - Copyright (C) 2006-2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2006-2007, 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -20,8 +20,6 @@ #include -#include - /* Tests for macros supposed to be defined in inttypes.h. */ const char *k = /* implicit string concatenation */ diff --git a/gnulib-tests/test-ioctl.c b/gnulib-tests/test-ioctl.c index 6d7b629..646fe57 100644 --- a/gnulib-tests/test-ioctl.c +++ b/gnulib-tests/test-ioctl.c @@ -1,9 +1,9 @@ /* Test of ioctl() function. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-isblank.c b/gnulib-tests/test-isblank.c index eca2366..5f2a183 100644 --- a/gnulib-tests/test-isblank.c +++ b/gnulib-tests/test-isblank.c @@ -1,9 +1,9 @@ /* Test of isblank() function. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-iswblank.c b/gnulib-tests/test-iswblank.c index 3f69114..d8db5ff 100644 --- a/gnulib-tests/test-iswblank.c +++ b/gnulib-tests/test-iswblank.c @@ -1,9 +1,9 @@ /* Test of iswblank() function. - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-iswdigit.c b/gnulib-tests/test-iswdigit.c index bcd66a0..c2beb8d 100644 --- a/gnulib-tests/test-iswdigit.c +++ b/gnulib-tests/test-iswdigit.c @@ -1,9 +1,9 @@ /* Test of iswdigit() function. - Copyright (C) 2020-2021 Free Software Foundation, Inc. + Copyright (C) 2020-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-iswdigit.sh b/gnulib-tests/test-iswdigit.sh index 1bde602..142a224 100755 --- a/gnulib-tests/test-iswdigit.sh +++ b/gnulib-tests/test-iswdigit.sh @@ -5,7 +5,7 @@ LC_ALL=C ${CHECKER} ./test-iswdigit${EXEEXT} 0 || exit 1 LC_ALL=POSIX ${CHECKER} ./test-iswdigit${EXEEXT} 0 || exit 1 # Test in an ISO-8859-1 or ISO-8859-15 locale. -: ${LOCALE_FR=fr_FR} +: "${LOCALE_FR=fr_FR}" if test $LOCALE_FR != none; then LC_ALL=$LOCALE_FR \ ${CHECKER} ./test-iswdigit${EXEEXT} 1 \ @@ -13,7 +13,7 @@ if test $LOCALE_FR != none; then fi # Test whether a specific EUC-JP locale is installed. -: ${LOCALE_JA=ja_JP} +: "${LOCALE_JA=ja_JP}" if test $LOCALE_JA != none; then LC_ALL=$LOCALE_JA \ ${CHECKER} ./test-iswdigit${EXEEXT} 2 \ @@ -21,7 +21,7 @@ if test $LOCALE_JA != none; then fi # Test whether a specific UTF-8 locale is installed. -: ${LOCALE_FR_UTF8=fr_FR.UTF-8} +: "${LOCALE_FR_UTF8=fr_FR.UTF-8}" if test $LOCALE_FR_UTF8 != none; then LC_ALL=$LOCALE_FR_UTF8 \ ${CHECKER} ./test-iswdigit${EXEEXT} 3 \ @@ -29,7 +29,7 @@ if test $LOCALE_FR_UTF8 != none; then fi # Test whether a specific GB18030 locale is installed. -: ${LOCALE_ZH_CN=zh_CN.GB18030} +: "${LOCALE_ZH_CN=zh_CN.GB18030}" if test $LOCALE_ZH_CN != none; then LC_ALL=$LOCALE_ZH_CN \ ${CHECKER} ./test-iswdigit${EXEEXT} 4 \ diff --git a/gnulib-tests/test-iswxdigit.c b/gnulib-tests/test-iswxdigit.c index 15425ee..84101fd 100644 --- a/gnulib-tests/test-iswxdigit.c +++ b/gnulib-tests/test-iswxdigit.c @@ -1,9 +1,9 @@ /* Test of iswxdigit() function. - Copyright (C) 2020-2021 Free Software Foundation, Inc. + Copyright (C) 2020-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-iswxdigit.sh b/gnulib-tests/test-iswxdigit.sh index f545438..9bdaff4 100755 --- a/gnulib-tests/test-iswxdigit.sh +++ b/gnulib-tests/test-iswxdigit.sh @@ -5,7 +5,7 @@ LC_ALL=C ${CHECKER} ./test-iswxdigit${EXEEXT} 0 || exit 1 LC_ALL=POSIX ${CHECKER} ./test-iswxdigit${EXEEXT} 0 || exit 1 # Test in an ISO-8859-1 or ISO-8859-15 locale. -: ${LOCALE_FR=fr_FR} +: "${LOCALE_FR=fr_FR}" if test $LOCALE_FR != none; then LC_ALL=$LOCALE_FR \ ${CHECKER} ./test-iswxdigit${EXEEXT} 1 \ @@ -13,7 +13,7 @@ if test $LOCALE_FR != none; then fi # Test whether a specific EUC-JP locale is installed. -: ${LOCALE_JA=ja_JP} +: "${LOCALE_JA=ja_JP}" if test $LOCALE_JA != none; then LC_ALL=$LOCALE_JA \ ${CHECKER} ./test-iswxdigit${EXEEXT} 2 \ @@ -21,7 +21,7 @@ if test $LOCALE_JA != none; then fi # Test whether a specific UTF-8 locale is installed. -: ${LOCALE_FR_UTF8=fr_FR.UTF-8} +: "${LOCALE_FR_UTF8=fr_FR.UTF-8}" if test $LOCALE_FR_UTF8 != none; then LC_ALL=$LOCALE_FR_UTF8 \ ${CHECKER} ./test-iswxdigit${EXEEXT} 3 \ @@ -29,7 +29,7 @@ if test $LOCALE_FR_UTF8 != none; then fi # Test whether a specific GB18030 locale is installed. -: ${LOCALE_ZH_CN=zh_CN.GB18030} +: "${LOCALE_ZH_CN=zh_CN.GB18030}" if test $LOCALE_ZH_CN != none; then LC_ALL=$LOCALE_ZH_CN \ ${CHECKER} ./test-iswxdigit${EXEEXT} 4 \ diff --git a/gnulib-tests/test-langinfo.c b/gnulib-tests/test-langinfo.c index 4215ea7..743cd12 100644 --- a/gnulib-tests/test-langinfo.c +++ b/gnulib-tests/test-langinfo.c @@ -1,9 +1,9 @@ /* Test of substitute. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-largefile.c b/gnulib-tests/test-largefile.c new file mode 100644 index 0000000..eb7861d --- /dev/null +++ b/gnulib-tests/test-largefile.c @@ -0,0 +1,51 @@ +/* Test of largefile module. + Copyright (C) 2023 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +/* Written by Bruno Haible , 2023. */ + +/* This test may fail if AC_SYS_LARGEFILE could not arrange for a 64-bit off_t. + This should be rare, though: only very old systems don't have support for + files larger than 2 GiB. */ + +#include + +#include +#include +#include "intprops.h" + +/* Although these tests could be done with static_assert, the test + harness prefers dynamic checking. */ + +int +main (void) +{ + int result = 0; + + /* Check the range of off_t. + With MSVC, this test succeeds only thanks to the 'sys_types' module. */ + if (TYPE_MAXIMUM (off_t) >> 31 >> 31 == 0) + result |= 1; + + /* Check the size of the 'struct stat' field 'st_size'. + With MSVC, this test succeeds only thanks to the 'sys_stat' module. */ + { + struct stat st; + if (sizeof st.st_size != sizeof (off_t)) + result |= 2; + } + + return result; +} diff --git a/gnulib-tests/test-limits-h.c b/gnulib-tests/test-limits-h.c index f3394c1..d7cfba7 100644 --- a/gnulib-tests/test-limits-h.c +++ b/gnulib-tests/test-limits-h.c @@ -1,9 +1,9 @@ /* Test of substitute. - Copyright 2016-2021 Free Software Foundation, Inc. + Copyright 2016-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -20,14 +20,12 @@ #include -#include "verify.h" - #if 4 < __GNUC__ + (3 <= __GNUC_MINOR__) # pragma GCC diagnostic ignored "-Woverlength-strings" #endif #define verify_width(width, min, max) \ - verify ((max) >> ((width) - 1 - ((min) < 0)) == 1) + static_assert ((max) >> ((width) - 1 - ((min) < 0)) == 1) /* Macros borrowed from intprops.h. */ #define TYPE_SIGNED(t) (! ((t) 0 < (t) -1)) @@ -53,50 +51,50 @@ verify_width (LONG_BIT, LONG_MIN, LONG_MAX); /* Numerical limit macros. */ char limits1[] = { CHAR_MIN, CHAR_MAX }; -verify (TYPE_MINIMUM (char) == CHAR_MIN); -verify (TYPE_MAXIMUM (char) == CHAR_MAX); +static_assert (TYPE_MINIMUM (char) == CHAR_MIN); +static_assert (TYPE_MAXIMUM (char) == CHAR_MAX); signed char limits2[] = { SCHAR_MIN, SCHAR_MAX }; -verify (TYPE_MINIMUM (signed char) == SCHAR_MIN); -verify (TYPE_MAXIMUM (signed char) == SCHAR_MAX); +static_assert (TYPE_MINIMUM (signed char) == SCHAR_MIN); +static_assert (TYPE_MAXIMUM (signed char) == SCHAR_MAX); unsigned char limits3[] = { UCHAR_MAX }; -verify (TYPE_MINIMUM (unsigned char) == 0); -verify (TYPE_MAXIMUM (unsigned char) == UCHAR_MAX); +static_assert (TYPE_MINIMUM (unsigned char) == 0); +static_assert (TYPE_MAXIMUM (unsigned char) == UCHAR_MAX); short limits4[] = { SHRT_MIN, SHRT_MAX }; -verify (TYPE_MINIMUM (short int) == SHRT_MIN); -verify (TYPE_MAXIMUM (short int) == SHRT_MAX); +static_assert (TYPE_MINIMUM (short int) == SHRT_MIN); +static_assert (TYPE_MAXIMUM (short int) == SHRT_MAX); unsigned short limits5[] = { USHRT_MAX }; -verify (TYPE_MINIMUM (unsigned short int) == 0); -verify (TYPE_MAXIMUM (unsigned short int) == USHRT_MAX); +static_assert (TYPE_MINIMUM (unsigned short int) == 0); +static_assert (TYPE_MAXIMUM (unsigned short int) == USHRT_MAX); int limits6[] = { INT_MIN, INT_MAX }; -verify (TYPE_MINIMUM (int) == INT_MIN); -verify (TYPE_MAXIMUM (int) == INT_MAX); +static_assert (TYPE_MINIMUM (int) == INT_MIN); +static_assert (TYPE_MAXIMUM (int) == INT_MAX); unsigned int limits7[] = { UINT_MAX }; -verify (TYPE_MINIMUM (unsigned int) == 0); -verify (TYPE_MAXIMUM (unsigned int) == UINT_MAX); +static_assert (TYPE_MINIMUM (unsigned int) == 0); +static_assert (TYPE_MAXIMUM (unsigned int) == UINT_MAX); long limits8[] = { LONG_MIN, LONG_MAX }; -verify (TYPE_MINIMUM (long int) == LONG_MIN); -verify (TYPE_MAXIMUM (long int) == LONG_MAX); +static_assert (TYPE_MINIMUM (long int) == LONG_MIN); +static_assert (TYPE_MAXIMUM (long int) == LONG_MAX); unsigned long limits9[] = { ULONG_MAX }; -verify (TYPE_MINIMUM (unsigned long int) == 0); -verify (TYPE_MAXIMUM (unsigned long int) == ULONG_MAX); +static_assert (TYPE_MINIMUM (unsigned long int) == 0); +static_assert (TYPE_MAXIMUM (unsigned long int) == ULONG_MAX); long long limits10[] = { LLONG_MIN, LLONG_MAX }; -verify (TYPE_MINIMUM (long long int) == LLONG_MIN); -verify (TYPE_MAXIMUM (long long int) == LLONG_MAX); +static_assert (TYPE_MINIMUM (long long int) == LLONG_MIN); +static_assert (TYPE_MAXIMUM (long long int) == LLONG_MAX); unsigned long long limits11[] = { ULLONG_MAX }; -verify (TYPE_MINIMUM (unsigned long long int) == 0); -verify (TYPE_MAXIMUM (unsigned long long int) == ULLONG_MAX); +static_assert (TYPE_MINIMUM (unsigned long long int) == 0); +static_assert (TYPE_MAXIMUM (unsigned long long int) == ULLONG_MAX); -/* Macros specified by ISO/IEC TS 18661-1:2014. */ +/* Macros specified by C23 and by ISO/IEC TS 18661-1:2014. */ verify_width (CHAR_WIDTH, CHAR_MIN, CHAR_MAX); verify_width (SCHAR_WIDTH, SCHAR_MIN, SCHAR_MAX); @@ -110,10 +108,12 @@ verify_width (ULONG_WIDTH, 0, ULONG_MAX); verify_width (LLONG_WIDTH, LLONG_MIN, LLONG_MAX); verify_width (ULLONG_WIDTH, 0, ULLONG_MAX); -/* Macros specified by C2x. */ +/* Macros specified by C23. */ int bool_attrs[] = { BOOL_MAX, BOOL_WIDTH }; -verify (BOOL_MAX == (((1U << (BOOL_WIDTH - 1)) - 1) * 2) + 1); +static_assert (BOOL_MAX == (((1U << (BOOL_WIDTH - 1)) - 1) * 2) + 1); + +static_assert (0 < MB_LEN_MAX); int main (void) diff --git a/gnulib-tests/test-listen.c b/gnulib-tests/test-listen.c index 3692514..8d85779 100644 --- a/gnulib-tests/test-listen.c +++ b/gnulib-tests/test-listen.c @@ -1,9 +1,9 @@ /* Test listen() function. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -27,6 +27,11 @@ SIGNATURE_CHECK (listen, int, (int, int)); #include "sockets.h" #include "macros.h" +/* Tell GCC not to warn about the specific edge cases tested here. */ +#if __GNUC__ >= 13 +# pragma GCC diagnostic ignored "-Wanalyzer-fd-use-without-check" +#endif + int main (void) { diff --git a/gnulib-tests/test-localcharset.c b/gnulib-tests/test-localcharset.c index 07b756c..e0ea591 100644 --- a/gnulib-tests/test-localcharset.c +++ b/gnulib-tests/test-localcharset.c @@ -1,9 +1,9 @@ /* Manual test of localcharset() function. - Copyright (C) 2018-2021 Free Software Foundation, Inc. + Copyright (C) 2018-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-locale.c b/gnulib-tests/test-locale.c index 59644fa..8314679 100644 --- a/gnulib-tests/test-locale.c +++ b/gnulib-tests/test-locale.c @@ -1,9 +1,9 @@ /* Test of substitute. - Copyright (C) 2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2007, 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -20,8 +20,6 @@ #include -#include "verify.h" - int a[] = { LC_ALL, @@ -39,7 +37,7 @@ int ls; /* Check that NULL can be passed through varargs as a pointer type, per POSIX 2008. */ -verify (sizeof NULL == sizeof (void *)); +static_assert (sizeof NULL == sizeof (void *)); int main () diff --git a/gnulib-tests/test-localeconv.c b/gnulib-tests/test-localeconv.c index b7998ef..ab3f5fe 100644 --- a/gnulib-tests/test-localeconv.c +++ b/gnulib-tests/test-localeconv.c @@ -1,9 +1,9 @@ /* Test of localeconv() function. - Copyright (C) 2012-2021 Free Software Foundation, Inc. + Copyright (C) 2012-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-lstat.c b/gnulib-tests/test-lstat.c index b8481fb..61aed86 100644 --- a/gnulib-tests/test-lstat.c +++ b/gnulib-tests/test-lstat.c @@ -1,9 +1,9 @@ /* Test of lstat() function. - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -29,7 +29,6 @@ SIGNATURE_CHECK (lstat, int, (char const *, struct stat *)); #include #include -#include #include #include #include diff --git a/gnulib-tests/test-lstat.h b/gnulib-tests/test-lstat.h index 08803da..8a36767 100644 --- a/gnulib-tests/test-lstat.h +++ b/gnulib-tests/test-lstat.h @@ -1,9 +1,9 @@ /* Test of lstat() function. - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-malloc-gnu.c b/gnulib-tests/test-malloc-gnu.c index 0160c6c..e2462da 100644 --- a/gnulib-tests/test-malloc-gnu.c +++ b/gnulib-tests/test-malloc-gnu.c @@ -1,9 +1,9 @@ /* Test of malloc function. - Copyright (C) 2010-2021 Free Software Foundation, Inc. + Copyright (C) 2010-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-malloca.c b/gnulib-tests/test-malloca.c index 52d95a5..ad3dc1b 100644 --- a/gnulib-tests/test-malloca.c +++ b/gnulib-tests/test-malloca.c @@ -1,9 +1,9 @@ /* Test of safe automatic memory allocation. - Copyright (C) 2005, 2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2005, 2007, 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-mbrtowc-w32.c b/gnulib-tests/test-mbrtowc-w32.c index 7de6959..5d07bb0 100644 --- a/gnulib-tests/test-mbrtowc-w32.c +++ b/gnulib-tests/test-mbrtowc-w32.c @@ -1,9 +1,9 @@ /* Test of conversion of multibyte character to wide character. - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-mbrtowc.c b/gnulib-tests/test-mbrtowc.c index 404128b..cf43011 100644 --- a/gnulib-tests/test-mbrtowc.c +++ b/gnulib-tests/test-mbrtowc.c @@ -1,9 +1,9 @@ /* Test of conversion of multibyte character to wide character. - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -26,6 +26,7 @@ SIGNATURE_CHECK (mbrtowc, size_t, (wchar_t *, char const *, size_t, #include #include +#include #include #include "macros.h" @@ -72,10 +73,6 @@ main (int argc, char *argv[]) for (c = 0; c < 0x100; c++) switch (c) { - default: - if (! (c && 1 < argc && argv[1][0] == '5')) - break; - FALLTHROUGH; case '\t': case '\v': case '\f': case ' ': case '!': case '"': case '#': case '%': case '&': case '\'': case '(': case ')': case '*': @@ -97,25 +94,23 @@ main (int argc, char *argv[]) case 'p': case 'q': case 'r': case 's': case 't': case 'u': case 'v': case 'w': case 'x': case 'y': case 'z': case '{': case '|': case '}': case '~': - /* c is in the ISO C "basic character set", or argv[1] starts - with '5' so we are testing all nonnull bytes. */ + /* c is in the ISO C "basic character set". */ + ASSERT (c < 0x80); + /* c is an ASCII character. */ buf[0] = c; + wc = (wchar_t) 0xBADFACE; ret = mbrtowc (&wc, buf, 1, &state); ASSERT (ret == 1); - if (c < 0x80) - /* c is an ASCII character. */ - ASSERT (wc == c); - else - /* argv[1] starts with '5', that is, we are testing the C or POSIX - locale. - On most platforms, the bytes 0x80..0xFF map to U+0080..U+00FF. - But on musl libc, the bytes 0x80..0xFF map to U+DF80..U+DFFF. */ - ASSERT (wc == (btowc (c) == 0xDF00 + c ? btowc (c) : c)); + ASSERT (wc == c); ASSERT (mbsinit (&state)); + ret = mbrtowc (NULL, buf, 1, &state); ASSERT (ret == 1); ASSERT (mbsinit (&state)); + + break; + default: break; } } @@ -130,6 +125,15 @@ main (int argc, char *argv[]) ASSERT (mbsinit (&state)); } +#ifdef __ANDROID__ + /* On Android ≥ 5.0, the default locale is the "C.UTF-8" locale, not the + "C" locale. Furthermore, when you attempt to set the "C" or "POSIX" + locale via setlocale(), what you get is a "C" locale with UTF-8 encoding, + that is, effectively the "C.UTF-8" locale. */ + if (argc > 1 && strcmp (argv[1], "5") == 0 && MB_CUR_MAX > 1) + argv[1] = "2"; +#endif + if (argc > 1) switch (argv[1][0]) { @@ -349,7 +353,37 @@ main (int argc, char *argv[]) return 0; case '5': - /* C locale; tested above. */ + /* C or POSIX locale. */ + { + int c; + char buf[1]; + + memset (&state, '\0', sizeof (mbstate_t)); + for (c = 0; c < 0x100; c++) + if (c != 0) + { + /* We are testing all nonnull bytes. */ + buf[0] = c; + + wc = (wchar_t) 0xBADFACE; + ret = mbrtowc (&wc, buf, 1, &state); + /* POSIX:2018 says: "In the POSIX locale an [EILSEQ] error + cannot occur since all byte values are valid characters." */ + ASSERT (ret == 1); + if (c < 0x80) + /* c is an ASCII character. */ + ASSERT (wc == c); + else + /* On most platforms, the bytes 0x80..0xFF map to U+0080..U+00FF. + But on musl libc, the bytes 0x80..0xFF map to U+DF80..U+DFFF. */ + ASSERT (wc == (btowc (c) == 0xDF00 + c ? btowc (c) : c)); + ASSERT (mbsinit (&state)); + + ret = mbrtowc (NULL, buf, 1, &state); + ASSERT (ret == 1); + ASSERT (mbsinit (&state)); + } + } return 0; } diff --git a/gnulib-tests/test-mbrtowc1.sh b/gnulib-tests/test-mbrtowc1.sh index 00b108b..2b6eaf9 100755 --- a/gnulib-tests/test-mbrtowc1.sh +++ b/gnulib-tests/test-mbrtowc1.sh @@ -1,7 +1,7 @@ #!/bin/sh # Test in an ISO-8859-1 or ISO-8859-15 locale. -: ${LOCALE_FR=fr_FR} +: "${LOCALE_FR=fr_FR}" if test $LOCALE_FR = none; then if test -f /usr/bin/localedef; then echo "Skipping test: no traditional french locale is installed" diff --git a/gnulib-tests/test-mbrtowc2.sh b/gnulib-tests/test-mbrtowc2.sh index 5036930..6868e86 100755 --- a/gnulib-tests/test-mbrtowc2.sh +++ b/gnulib-tests/test-mbrtowc2.sh @@ -1,7 +1,7 @@ #!/bin/sh # Test whether a specific UTF-8 locale is installed. -: ${LOCALE_FR_UTF8=fr_FR.UTF-8} +: "${LOCALE_FR_UTF8=fr_FR.UTF-8}" if test $LOCALE_FR_UTF8 = none; then if test -f /usr/bin/localedef; then echo "Skipping test: no french Unicode locale is installed" diff --git a/gnulib-tests/test-mbrtowc3.sh b/gnulib-tests/test-mbrtowc3.sh index 2773fa7..eca8d64 100755 --- a/gnulib-tests/test-mbrtowc3.sh +++ b/gnulib-tests/test-mbrtowc3.sh @@ -1,7 +1,7 @@ #!/bin/sh # Test whether a specific EUC-JP locale is installed. -: ${LOCALE_JA=ja_JP} +: "${LOCALE_JA=ja_JP}" if test $LOCALE_JA = none; then if test -f /usr/bin/localedef; then echo "Skipping test: no traditional japanese locale is installed" diff --git a/gnulib-tests/test-mbrtowc4.sh b/gnulib-tests/test-mbrtowc4.sh index 92f641c..7da23a3 100755 --- a/gnulib-tests/test-mbrtowc4.sh +++ b/gnulib-tests/test-mbrtowc4.sh @@ -1,7 +1,7 @@ #!/bin/sh # Test whether a specific GB18030 locale is installed. -: ${LOCALE_ZH_CN=zh_CN.GB18030} +: "${LOCALE_ZH_CN=zh_CN.GB18030}" if test $LOCALE_ZH_CN = none; then if test -f /usr/bin/localedef; then echo "Skipping test: no transitional chinese locale is installed" diff --git a/gnulib-tests/test-mbrtowc5.sh b/gnulib-tests/test-mbrtowc5.sh index 490496d..4c6c6fe 100755 --- a/gnulib-tests/test-mbrtowc5.sh +++ b/gnulib-tests/test-mbrtowc5.sh @@ -1,6 +1,9 @@ #!/bin/sh + # Test whether the POSIX locale has encoding errors. LC_ALL=C \ -${CHECKER} ./test-mbrtowc${EXEEXT} 5 || exit +${CHECKER} ./test-mbrtowc${EXEEXT} 5 || exit 1 LC_ALL=POSIX \ -${CHECKER} ./test-mbrtowc${EXEEXT} 5 +${CHECKER} ./test-mbrtowc${EXEEXT} 5 || exit 1 + +exit 0 diff --git a/gnulib-tests/test-mbscasecmp.c b/gnulib-tests/test-mbscasecmp.c index c1b5c8f..9ecff60 100644 --- a/gnulib-tests/test-mbscasecmp.c +++ b/gnulib-tests/test-mbscasecmp.c @@ -1,9 +1,9 @@ /* Test of case-insensitive string comparison function. - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-mbscasecmp.sh b/gnulib-tests/test-mbscasecmp.sh index 5201951..73e62b5 100755 --- a/gnulib-tests/test-mbscasecmp.sh +++ b/gnulib-tests/test-mbscasecmp.sh @@ -1,7 +1,7 @@ #!/bin/sh # Test whether a specific Turkish locale is installed. -: ${LOCALE_TR_UTF8=tr_TR.UTF-8} +: "${LOCALE_TR_UTF8=tr_TR.UTF-8}" if test $LOCALE_TR_UTF8 = none; then if test -f /usr/bin/localedef; then echo "Skipping test: no turkish Unicode locale is installed" diff --git a/gnulib-tests/test-mbsinit.c b/gnulib-tests/test-mbsinit.c index bda3a3b..8b9779c 100644 --- a/gnulib-tests/test-mbsinit.c +++ b/gnulib-tests/test-mbsinit.c @@ -1,9 +1,9 @@ /* Test of test for initial conversion state. - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-mbsinit.sh b/gnulib-tests/test-mbsinit.sh index 7308714..25d4b2e 100755 --- a/gnulib-tests/test-mbsinit.sh +++ b/gnulib-tests/test-mbsinit.sh @@ -1,7 +1,7 @@ #!/bin/sh # Test whether a specific UTF-8 locale is installed. -: ${LOCALE_FR_UTF8=fr_FR.UTF-8} +: "${LOCALE_FR_UTF8=fr_FR.UTF-8}" if test $LOCALE_FR_UTF8 = none; then if test -f /usr/bin/localedef; then echo "Skipping test: no french Unicode locale is installed" diff --git a/gnulib-tests/test-mbsrtowcs.c b/gnulib-tests/test-mbsrtowcs.c index 1489978..3c351f2 100644 --- a/gnulib-tests/test-mbsrtowcs.c +++ b/gnulib-tests/test-mbsrtowcs.c @@ -1,9 +1,9 @@ /* Test of conversion of string to wide string. - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -72,6 +72,15 @@ main (int argc, char *argv[]) ASSERT (mbsinit (&state)); } +#ifdef __ANDROID__ + /* On Android ≥ 5.0, the default locale is the "C.UTF-8" locale, not the + "C" locale. Furthermore, when you attempt to set the "C" or "POSIX" + locale via setlocale(), what you get is a "C" locale with UTF-8 encoding, + that is, effectively the "C.UTF-8" locale. */ + if (argc > 1 && strcmp (argv[1], "5") == 0 && MB_CUR_MAX > 1) + argv[1] = "2"; +#endif + if (argc > 1) { int unlimited; @@ -281,6 +290,72 @@ main (int argc, char *argv[]) } break; + case '5': + /* C or POSIX locale. */ + { + char input[] = "n/a"; + memset (&state, '\0', sizeof (mbstate_t)); + + src = input; + temp_state = state; + ret = mbsrtowcs (NULL, &src, unlimited ? BUFSIZE : 1, &temp_state); + ASSERT (ret == 3); + ASSERT (src == input); + ASSERT (mbsinit (&state)); + + src = input; + ret = mbsrtowcs (buf, &src, unlimited ? BUFSIZE : 1, &state); + ASSERT (ret == (unlimited ? 3 : 1)); + ASSERT (src == (unlimited ? NULL : input + 1)); + ASSERT (buf[0] == 'n'); + if (unlimited) + { + ASSERT (buf[1] == '/'); + ASSERT (buf[2] == 'a'); + ASSERT (buf[3] == 0); + ASSERT (buf[4] == (wchar_t) 0xBADFACE); + } + else + ASSERT (buf[1] == (wchar_t) 0xBADFACE); + ASSERT (mbsinit (&state)); + } + { + int c; + char input[2]; + + memset (&state, '\0', sizeof (mbstate_t)); + for (c = 0; c < 0x100; c++) + if (c != 0) + { + /* We are testing all nonnull bytes. */ + input[0] = c; + input[1] = '\0'; + + src = input; + ret = mbsrtowcs (NULL, &src, unlimited ? BUFSIZE : 1, &state); + ASSERT (ret == 1); + ASSERT (src == input); + ASSERT (mbsinit (&state)); + + buf[0] = buf[1] = (wchar_t) 0xBADFACE; + src = input; + ret = mbsrtowcs (buf, &src, unlimited ? BUFSIZE : 1, &state); + /* POSIX:2018 says: "In the POSIX locale an [EILSEQ] error + cannot occur since all byte values are valid characters." */ + ASSERT (ret == 1); + ASSERT (src == (unlimited ? NULL : input + 1)); + if (c < 0x80) + /* c is an ASCII character. */ + ASSERT (buf[0] == c); + else + /* On most platforms, the bytes 0x80..0xFF map to U+0080..U+00FF. + But on musl libc, the bytes 0x80..0xFF map to U+DF80..U+DFFF. */ + ASSERT (buf[0] == (btowc (c) == 0xDF00 + c ? btowc (c) : c)); + ASSERT (mbsinit (&state)); + } + } + break; + default: return 1; } diff --git a/gnulib-tests/test-mbsrtowcs1.sh b/gnulib-tests/test-mbsrtowcs1.sh index 66ba231..f8c54ab 100755 --- a/gnulib-tests/test-mbsrtowcs1.sh +++ b/gnulib-tests/test-mbsrtowcs1.sh @@ -1,7 +1,7 @@ #!/bin/sh # Test in an ISO-8859-1 or ISO-8859-15 locale. -: ${LOCALE_FR=fr_FR} +: "${LOCALE_FR=fr_FR}" if test $LOCALE_FR = none; then if test -f /usr/bin/localedef; then echo "Skipping test: no traditional french locale is installed" diff --git a/gnulib-tests/test-mbsrtowcs2.sh b/gnulib-tests/test-mbsrtowcs2.sh index 6786efd..1cae31c 100755 --- a/gnulib-tests/test-mbsrtowcs2.sh +++ b/gnulib-tests/test-mbsrtowcs2.sh @@ -1,7 +1,7 @@ #!/bin/sh # Test whether a specific UTF-8 locale is installed. -: ${LOCALE_FR_UTF8=fr_FR.UTF-8} +: "${LOCALE_FR_UTF8=fr_FR.UTF-8}" if test $LOCALE_FR_UTF8 = none; then if test -f /usr/bin/localedef; then echo "Skipping test: no french Unicode locale is installed" diff --git a/gnulib-tests/test-mbsrtowcs3.sh b/gnulib-tests/test-mbsrtowcs3.sh index 54e9832..908c140 100755 --- a/gnulib-tests/test-mbsrtowcs3.sh +++ b/gnulib-tests/test-mbsrtowcs3.sh @@ -1,7 +1,7 @@ #!/bin/sh # Test whether a specific EUC-JP locale is installed. -: ${LOCALE_JA=ja_JP} +: "${LOCALE_JA=ja_JP}" if test $LOCALE_JA = none; then if test -f /usr/bin/localedef; then echo "Skipping test: no traditional japanese locale is installed" diff --git a/gnulib-tests/test-mbsrtowcs4.sh b/gnulib-tests/test-mbsrtowcs4.sh index 8acda08..135bc5f 100755 --- a/gnulib-tests/test-mbsrtowcs4.sh +++ b/gnulib-tests/test-mbsrtowcs4.sh @@ -1,7 +1,7 @@ #!/bin/sh # Test whether a specific GB18030 locale is installed. -: ${LOCALE_ZH_CN=zh_CN.GB18030} +: "${LOCALE_ZH_CN=zh_CN.GB18030}" if test $LOCALE_ZH_CN = none; then if test -f /usr/bin/localedef; then echo "Skipping test: no transitional chinese locale is installed" diff --git a/gnulib-tests/test-mbsrtowcs5.sh b/gnulib-tests/test-mbsrtowcs5.sh new file mode 100755 index 0000000..96734a7 --- /dev/null +++ b/gnulib-tests/test-mbsrtowcs5.sh @@ -0,0 +1,9 @@ +#!/bin/sh + +# Test whether the POSIX locale has encoding errors. +LC_ALL=C \ +${CHECKER} ./test-mbsrtowcs${EXEEXT} 5 || exit 1 +LC_ALL=POSIX \ +${CHECKER} ./test-mbsrtowcs${EXEEXT} 5 || exit 1 + +exit 0 diff --git a/gnulib-tests/test-mbsstr1.c b/gnulib-tests/test-mbsstr1.c index a34cfe6..0de4a9a 100644 --- a/gnulib-tests/test-mbsstr1.c +++ b/gnulib-tests/test-mbsstr1.c @@ -1,9 +1,9 @@ /* Test of searching in a string. - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-mbsstr2.c b/gnulib-tests/test-mbsstr2.c index 6727358..2f034ab 100644 --- a/gnulib-tests/test-mbsstr2.c +++ b/gnulib-tests/test-mbsstr2.c @@ -1,9 +1,9 @@ /* Test of searching in a string. - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-mbsstr2.sh b/gnulib-tests/test-mbsstr2.sh index 5ef7139..d1905d6 100755 --- a/gnulib-tests/test-mbsstr2.sh +++ b/gnulib-tests/test-mbsstr2.sh @@ -1,7 +1,7 @@ #!/bin/sh # Test whether a specific UTF-8 locale is installed. -: ${LOCALE_FR_UTF8=fr_FR.UTF-8} +: "${LOCALE_FR_UTF8=fr_FR.UTF-8}" if test $LOCALE_FR_UTF8 = none; then if test -f /usr/bin/localedef; then echo "Skipping test: no french Unicode locale is installed" diff --git a/gnulib-tests/test-mbsstr3.c b/gnulib-tests/test-mbsstr3.c index 91834df..5831f17 100644 --- a/gnulib-tests/test-mbsstr3.c +++ b/gnulib-tests/test-mbsstr3.c @@ -1,9 +1,9 @@ /* Test of searching in a string. - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-mbsstr3.sh b/gnulib-tests/test-mbsstr3.sh index 539f9c0..5e781bf 100755 --- a/gnulib-tests/test-mbsstr3.sh +++ b/gnulib-tests/test-mbsstr3.sh @@ -1,7 +1,7 @@ #!/bin/sh # Test whether a specific GB18030 locale is installed. -: ${LOCALE_ZH_CN=zh_CN.GB18030} +: "${LOCALE_ZH_CN=zh_CN.GB18030}" if test $LOCALE_ZH_CN = none; then if test -f /usr/bin/localedef; then echo "Skipping test: no chinese GB18030 locale is installed" diff --git a/gnulib-tests/test-memchr.c b/gnulib-tests/test-memchr.c index 1357d08..9d31353 100644 --- a/gnulib-tests/test-memchr.c +++ b/gnulib-tests/test-memchr.c @@ -1,10 +1,10 @@ /* - * Copyright (C) 2008-2021 Free Software Foundation, Inc. + * Copyright (C) 2008-2023 Free Software Foundation, Inc. * Written by Eric Blake and Bruno Haible * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 3 of the License, or + * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-mkdir.c b/gnulib-tests/test-mkdir.c index ab65cb8..022d80d 100644 --- a/gnulib-tests/test-mkdir.c +++ b/gnulib-tests/test-mkdir.c @@ -1,9 +1,9 @@ /* Tests of mkdir. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -25,7 +25,6 @@ SIGNATURE_CHECK (mkdir, int, (char const *, mode_t)); #include #include -#include #include #include #include diff --git a/gnulib-tests/test-mkdir.h b/gnulib-tests/test-mkdir.h index 204f522..4e57abe 100644 --- a/gnulib-tests/test-mkdir.h +++ b/gnulib-tests/test-mkdir.h @@ -1,9 +1,9 @@ /* Test of mkdir() function. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-nanosleep.c b/gnulib-tests/test-nanosleep.c index 4464006..c2f2a19 100644 --- a/gnulib-tests/test-nanosleep.c +++ b/gnulib-tests/test-nanosleep.c @@ -1,9 +1,9 @@ /* Test of nanosleep() function. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -43,16 +43,27 @@ main (void) { struct timespec ts; + /* Check that negative nanosecond values cause failure. */ + ts.tv_sec = 1; + ts.tv_nsec = -1; + errno = 0; + ASSERT (nanosleep (&ts, NULL) == -1); + ASSERT (errno == EINVAL); + ts.tv_sec = 1000; ts.tv_nsec = -1; errno = 0; ASSERT (nanosleep (&ts, NULL) == -1); ASSERT (errno == EINVAL); + + /* Check that too large nanosecond values cause failure. */ + ts.tv_sec = 1000; ts.tv_nsec = 1000000000; errno = 0; ASSERT (nanosleep (&ts, NULL) == -1); ASSERT (errno == EINVAL); + /* Check successful call. */ ts.tv_sec = 0; ts.tv_nsec = 1; ASSERT (nanosleep (&ts, &ts) == 0); diff --git a/gnulib-tests/test-netinet_in.c b/gnulib-tests/test-netinet_in.c index c0de97f..0639d2f 100644 --- a/gnulib-tests/test-netinet_in.c +++ b/gnulib-tests/test-netinet_in.c @@ -1,9 +1,9 @@ /* Test of substitute. - Copyright (C) 2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2007, 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-nl_langinfo-mt.c b/gnulib-tests/test-nl_langinfo-mt.c index 5ff6490..806a093 100644 --- a/gnulib-tests/test-nl_langinfo-mt.c +++ b/gnulib-tests/test-nl_langinfo-mt.c @@ -1,9 +1,9 @@ /* Multithread-safety test for nl_langinfo(). - Copyright (C) 2019-2021 Free Software Foundation, Inc. + Copyright (C) 2019-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-nl_langinfo.sh b/gnulib-tests/test-nl_langinfo.sh deleted file mode 100755 index b1ce46c..0000000 --- a/gnulib-tests/test-nl_langinfo.sh +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/sh - -LC_ALL=C ${CHECKER} ./test-nl_langinfo${EXEEXT} 0 || exit 1 - -# Test whether a specific traditional locale is installed. -: ${LOCALE_FR=fr_FR} -if test $LOCALE_FR != none; then - LC_ALL=$LOCALE_FR ${CHECKER} ./test-nl_langinfo${EXEEXT} 1 || exit 1 -fi - -# Test whether a specific UTF-8 locale is installed. -: ${LOCALE_FR_UTF8=fr_FR.UTF-8} -if test $LOCALE_FR_UTF8 != none; then - LC_ALL=$LOCALE_FR_UTF8 ${CHECKER} ./test-nl_langinfo${EXEEXT} 2 || exit 1 -fi - -exit 0 diff --git a/gnulib-tests/test-nl_langinfo.c b/gnulib-tests/test-nl_langinfo1.c similarity index 98% rename from gnulib-tests/test-nl_langinfo.c rename to gnulib-tests/test-nl_langinfo1.c index def628b..5254f86 100644 --- a/gnulib-tests/test-nl_langinfo.c +++ b/gnulib-tests/test-nl_langinfo1.c @@ -1,9 +1,9 @@ /* Test of nl_langinfo replacement. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-nl_langinfo1.sh b/gnulib-tests/test-nl_langinfo1.sh new file mode 100755 index 0000000..9acfcdd --- /dev/null +++ b/gnulib-tests/test-nl_langinfo1.sh @@ -0,0 +1,17 @@ +#!/bin/sh + +LC_ALL=C ${CHECKER} ./test-nl_langinfo1${EXEEXT} 0 || exit 1 + +# Test whether a specific traditional locale is installed. +: "${LOCALE_FR=fr_FR}" +if test $LOCALE_FR != none; then + LC_ALL=$LOCALE_FR ${CHECKER} ./test-nl_langinfo1${EXEEXT} 1 || exit 1 +fi + +# Test whether a specific UTF-8 locale is installed. +: "${LOCALE_FR_UTF8=fr_FR.UTF-8}" +if test $LOCALE_FR_UTF8 != none; then + LC_ALL=$LOCALE_FR_UTF8 ${CHECKER} ./test-nl_langinfo1${EXEEXT} 2 || exit 1 +fi + +exit 0 diff --git a/gnulib-tests/test-nl_langinfo2.c b/gnulib-tests/test-nl_langinfo2.c new file mode 100644 index 0000000..7f276da --- /dev/null +++ b/gnulib-tests/test-nl_langinfo2.c @@ -0,0 +1,136 @@ +/* Test of nl_langinfo replacement. + Copyright (C) 2023 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +/* Written by Bruno Haible , 2023. */ + +#include + +#include + +#include +#include +#include + +#include "c-strcase.h" +#include "c-strcasestr.h" +#include "macros.h" + +int +main (int argc, char *argv[]) +{ +#if HAVE_WORKING_USELOCALE + /* Check that nl_langinfo() uses the per-thread locale. */ + int pass; + bool skipped_all = true; + + /* Extract a few items from the C locale. */ + /* nl_langinfo items of the LC_CTYPE category */ + const char *c_CODESET = nl_langinfo (CODESET); + /* nl_langinfo items of the LC_NUMERIC category */ + const char *c_RADIXCHAR = nl_langinfo (RADIXCHAR); + /* nl_langinfo items of the LC_TIME category */ + const char *c_T_FMT_AMPM = nl_langinfo (T_FMT_AMPM); + const char *c_AM_STR = nl_langinfo (AM_STR); + const char *c_PM_STR = nl_langinfo (PM_STR); + /* nl_langinfo items of the LC_MONETARY category */ + const char *c_CRNCYSTR = nl_langinfo (CRNCYSTR); + /* nl_langinfo items of the LC_MESSAGES category */ + const char *c_YESEXPR = nl_langinfo (YESEXPR); + + /* Sanity checks. */ + (void) c_CODESET; + ASSERT (strcmp (c_RADIXCHAR, ".") == 0); + ASSERT (strlen (c_T_FMT_AMPM) > 0); + ASSERT (strlen (c_AM_STR) > 0); + ASSERT (strlen (c_PM_STR) > 0); + ASSERT (strlen (c_CRNCYSTR) <= 1); /* "-", "+", ".", or "" */ + ASSERT (c_strcasestr (c_YESEXPR, "y" /* from "yes" */) != NULL); + + for (pass = 1; pass <= 2; pass++) + { + /* pass locale + 1 traditional French locale + 2 French UTF-8 locale + */ + const char *fr_locale_name = + getenv (pass == 1 ? "LOCALE_FR" : "LOCALE_FR_UTF8"); + if (strcmp (fr_locale_name, "none") != 0) + { + /* Use a per-thread locale. */ + locale_t fr_locale = newlocale (LC_ALL_MASK, fr_locale_name, NULL); + if (fr_locale != NULL) + { + uselocale (fr_locale); + + /* Extract a few items from the current locale, and check the + values. */ + + /* nl_langinfo items of the LC_CTYPE category */ + const char *fr_CODESET = nl_langinfo (CODESET); + if (pass == 1) + ASSERT (strstr (fr_CODESET, "8859") != NULL); + else if (pass == 2) + ASSERT (c_strcasecmp (fr_CODESET, "UTF-8") == 0 + || c_strcasecmp (fr_CODESET, "UTF8") == 0); + + /* nl_langinfo items of the LC_NUMERIC category */ + const char *fr_RADIXCHAR = nl_langinfo (RADIXCHAR); + ASSERT (strcmp (fr_RADIXCHAR, ",") == 0); + + /* nl_langinfo items of the LC_TIME category */ + /* macOS and Solaris 11 don't get the LC_TIME values right. + Poor. */ + #if !((defined __APPLE__ && defined __MACH__) || defined __sun) + const char *fr_T_FMT_AMPM = nl_langinfo (T_FMT_AMPM); + const char *fr_AM_STR = nl_langinfo (AM_STR); + const char *fr_PM_STR = nl_langinfo (PM_STR); + ASSERT (strlen (fr_T_FMT_AMPM) == 0 + || strcmp (fr_T_FMT_AMPM, "%I:%M:%S") == 0); + ASSERT (strlen (fr_AM_STR) == 0); + ASSERT (strlen (fr_PM_STR) == 0); + #endif + + /* nl_langinfo items of the LC_MONETARY category */ + /* macOS doesn't get the EUR currency symbol or abbreviation + right. Very poor. */ + #if !(defined __APPLE__ && defined __MACH__) + const char *fr_CRNCYSTR = nl_langinfo (CRNCYSTR); + if (pass == 2) + ASSERT (strlen (fr_CRNCYSTR) >= 1 + && strcmp (fr_CRNCYSTR + 1, "€") == 0); + #endif + + /* nl_langinfo items of the LC_MESSAGES category */ + const char *fr_YESEXPR = nl_langinfo (YESEXPR); + ASSERT (c_strcasestr (fr_YESEXPR, "o" /* from "oui" */) != NULL); + + skipped_all = false; + } + } + } + + if (skipped_all) + { + fputs ("Skipping test: French locale is not installed\n", stderr); + return 77; + } + + return 0; +#else + fputs ("Skipping test: uselocale() not available\n", stderr); + return 77; +#endif +} diff --git a/gnulib-tests/test-nl_langinfo2.sh b/gnulib-tests/test-nl_langinfo2.sh new file mode 100755 index 0000000..6333c90 --- /dev/null +++ b/gnulib-tests/test-nl_langinfo2.sh @@ -0,0 +1,12 @@ +#!/bin/sh + +# The name of a specific traditional locale. +: "${LOCALE_FR=fr_FR}" + +# The name of a specific UTF-8 locale. +: "${LOCALE_FR_UTF8=fr_FR.UTF-8}" + +# Make them accessible as environment variables. +export LOCALE_FR LOCALE_FR_UTF8 + +${CHECKER} ./test-nl_langinfo2${EXEEXT} diff --git a/gnulib-tests/test-nstrftime.c b/gnulib-tests/test-nstrftime.c index 98a2eca..22dab6c 100644 --- a/gnulib-tests/test-nstrftime.c +++ b/gnulib-tests/test-nstrftime.c @@ -1,9 +1,9 @@ /* Test that nstrftime works as required. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-nullptr.c b/gnulib-tests/test-nullptr.c new file mode 100644 index 0000000..1f9abc7 --- /dev/null +++ b/gnulib-tests/test-nullptr.c @@ -0,0 +1,69 @@ +/* Test nullptr. + Copyright 2023 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +/* Written by Bruno Haible. */ + +#include + +int *my_null = nullptr; + +#if 0 /* not yet */ +/* Header that is supposed to define nullptr_t. */ +# include +#endif + +#include + +#include "macros.h" + +#if 0 /* not yet */ + +static void +simple_callee (nullptr_t x) +{ + ASSERT (x == NULL); +} + +#endif + +void +varargs_callee (const char *first, ...) +{ + va_list args; + const char *arg; + + ASSERT (first[0] == 't'); + va_start (args, first); + + arg = va_arg (args, const char *); + ASSERT (arg == NULL); + + arg = va_arg (args, const char *); + ASSERT (arg[0] == 'f'); + + arg = va_arg (args, const char *); + ASSERT (arg == NULL); + + va_end (args); +} + +int +main () +{ + varargs_callee ("type", nullptr, "foo", nullptr); + + return 0; +} diff --git a/gnulib-tests/test-open.c b/gnulib-tests/test-open.c index 1524af4..e137cef 100644 --- a/gnulib-tests/test-open.c +++ b/gnulib-tests/test-open.c @@ -1,9 +1,9 @@ /* Test of opening a file descriptor. - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -24,7 +24,6 @@ SIGNATURE_CHECK (open, int, (char const *, int, ...)); #include -#include #include #include diff --git a/gnulib-tests/test-open.h b/gnulib-tests/test-open.h index 9ceb798..d3af821 100644 --- a/gnulib-tests/test-open.h +++ b/gnulib-tests/test-open.h @@ -1,9 +1,9 @@ /* Test of opening a file descriptor. - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -16,6 +16,11 @@ /* Written by Bruno Haible , 2007. */ +/* Tell GCC not to warn about the specific edge cases tested here. */ +#if __GNUC__ >= 13 +# pragma GCC diagnostic ignored "-Wanalyzer-fd-leak" +#endif + /* Make test_open always inline if we're using Fortify, which defines __always_inline to do that. Do nothing otherwise. This works around a glibc bug whereby 'open' cannot be used as a function diff --git a/gnulib-tests/test-pathmax.c b/gnulib-tests/test-pathmax.c index 2ba1cc2..f65b2d8 100644 --- a/gnulib-tests/test-pathmax.c +++ b/gnulib-tests/test-pathmax.c @@ -1,9 +1,9 @@ /* Test of "pathmax.h". - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-perror.c b/gnulib-tests/test-perror.c index 1012396..3ef0bc8 100644 --- a/gnulib-tests/test-perror.c +++ b/gnulib-tests/test-perror.c @@ -1,9 +1,9 @@ /* Test of perror() function. - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) + the Free Software Foundation, either version 3, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-perror.sh b/gnulib-tests/test-perror.sh index e776609..e624441 100755 --- a/gnulib-tests/test-perror.sh +++ b/gnulib-tests/test-perror.sh @@ -1,5 +1,5 @@ #!/bin/sh -: ${srcdir=.} +: "${srcdir=.}" . "$srcdir/init.sh"; path_prepend_ . # Test NULL prefix. Result should not contain a number, except in lines that diff --git a/gnulib-tests/test-perror2.c b/gnulib-tests/test-perror2.c index adce4a6..25390ff 100644 --- a/gnulib-tests/test-perror2.c +++ b/gnulib-tests/test-perror2.c @@ -1,9 +1,9 @@ /* Test of perror() function. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) + the Free Software Foundation, either version 3, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -22,6 +22,11 @@ #include #include +/* Tell GCC not to warn about myerr being leaked. */ +#if __GNUC__ >= 13 +# pragma GCC diagnostic ignored "-Wanalyzer-fd-leak" +#endif + /* This test intentionally parses stderr. So, we arrange to have fd 10 (outside the range of interesting fd's during the test) set up to duplicate the original stderr. */ diff --git a/gnulib-tests/test-pipe.c b/gnulib-tests/test-pipe.c index 5ae2a0a..de1dd2f 100644 --- a/gnulib-tests/test-pipe.c +++ b/gnulib-tests/test-pipe.c @@ -1,9 +1,9 @@ /* Test of pipe. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) + the Free Software Foundation, either version 3, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -22,7 +22,6 @@ SIGNATURE_CHECK (pipe, int, (int[2])); #include -#include #if defined _WIN32 && ! defined __CYGWIN__ /* Get declarations of the native Windows API functions. */ diff --git a/gnulib-tests/test-pselect.c b/gnulib-tests/test-pselect.c new file mode 100644 index 0000000..a383f1d --- /dev/null +++ b/gnulib-tests/test-pselect.c @@ -0,0 +1,49 @@ +/* Test of pselect() substitute. + Copyright (C) 2011-2023 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +#include + +#include + +#include "signature.h" + +SIGNATURE_CHECK (pselect, int, + (int, fd_set *restrict, fd_set *restrict, fd_set *restrict, + struct timespec const *restrict, const sigset_t *restrict)); + +#define TEST_PORT 12347 +#include "test-select.h" + +static int +my_select (int nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, + struct timeval *timeout) +{ + struct timespec ts; + struct timespec *pts = NULL; + if (timeout) + { + ts.tv_sec = timeout->tv_sec; + ts.tv_nsec = timeout->tv_usec * 1000; + pts = &ts; + } + return pselect (nfds, readfds, writefds, exceptfds, pts, NULL); +} + +int +main (void) +{ + return test_function (my_select); +} diff --git a/gnulib-tests/test-pthread-thread.c b/gnulib-tests/test-pthread-thread.c index 094e8d1..5a5bce5 100644 --- a/gnulib-tests/test-pthread-thread.c +++ b/gnulib-tests/test-pthread-thread.c @@ -1,9 +1,9 @@ /* Test of pthread_create () function. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-pthread.c b/gnulib-tests/test-pthread.c index 89c68dc..0c67762 100644 --- a/gnulib-tests/test-pthread.c +++ b/gnulib-tests/test-pthread.c @@ -1,9 +1,9 @@ /* Test of substitute. - Copyright (C) 2019-2021 Free Software Foundation, Inc. + Copyright (C) 2019-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -20,8 +20,6 @@ #include -#include "verify.h" - /* Check that the types are all defined. */ pthread_t t1; diff --git a/gnulib-tests/test-pthread_sigmask1.c b/gnulib-tests/test-pthread_sigmask1.c index f12b17c..b1b6eb5 100644 --- a/gnulib-tests/test-pthread_sigmask1.c +++ b/gnulib-tests/test-pthread_sigmask1.c @@ -1,9 +1,9 @@ /* Test of pthread_sigmask in a single-threaded program. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -24,6 +24,7 @@ SIGNATURE_CHECK (pthread_sigmask, int, (int, const sigset_t *, sigset_t *)); #include +#include #include #include #include @@ -44,9 +45,15 @@ int main (int argc, char *argv[]) { sigset_t set; - int pid = getpid (); + pid_t pid = getpid (); char command[80]; + if (LONG_MAX < pid) + { + fputs ("Skipping test: pid too large\n", stderr); + return 77; + } + signal (SIGINT, sigint_handler); sigemptyset (&set); @@ -59,7 +66,7 @@ main (int argc, char *argv[]) ASSERT (pthread_sigmask (SIG_BLOCK, &set, NULL) == 0); /* Request a SIGINT signal from outside. */ - sprintf (command, "sh -c 'sleep 1; kill -%d %d' &", SIGINT, pid); + sprintf (command, "sh -c 'sleep 1; kill -INT %ld' &", (long) pid); ASSERT (system (command) == 0); /* Wait. */ diff --git a/gnulib-tests/test-pthread_sigmask2.c b/gnulib-tests/test-pthread_sigmask2.c index f57fc93..94f951f 100644 --- a/gnulib-tests/test-pthread_sigmask2.c +++ b/gnulib-tests/test-pthread_sigmask2.c @@ -1,9 +1,9 @@ /* Test of pthread_sigmask in a multi-threaded program. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-quotearg-simple.c b/gnulib-tests/test-quotearg-simple.c index 795e30f..896c4bf 100644 --- a/gnulib-tests/test-quotearg-simple.c +++ b/gnulib-tests/test-quotearg-simple.c @@ -1,9 +1,9 @@ /* Test of quotearg family of functions. - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) + the Free Software Foundation, either version 3, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -21,7 +21,6 @@ #include "quotearg.h" #include -#include #include #include #include @@ -255,7 +254,7 @@ use_quote_double_quotes (const char *str, size_t *len) } int -main (int argc _GL_UNUSED, char *argv[]) +main (_GL_UNUSED int argc, char *argv[]) { int i; bool ascii_only = MB_CUR_MAX == 1 && !isprint ((unsigned char) LQ[0]); diff --git a/gnulib-tests/test-quotearg.h b/gnulib-tests/test-quotearg.h index 065b54b..4cd2776 100644 --- a/gnulib-tests/test-quotearg.h +++ b/gnulib-tests/test-quotearg.h @@ -1,9 +1,9 @@ /* Test of quotearg family of functions. - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) + the Free Software Foundation, either version 3, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-raise.c b/gnulib-tests/test-raise.c index d7fe02b..7574b2b 100644 --- a/gnulib-tests/test-raise.c +++ b/gnulib-tests/test-raise.c @@ -1,9 +1,9 @@ /* Test raising a signal. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-rawmemchr.c b/gnulib-tests/test-rawmemchr.c index f53f875..c2f6416 100644 --- a/gnulib-tests/test-rawmemchr.c +++ b/gnulib-tests/test-rawmemchr.c @@ -1,10 +1,10 @@ /* - * Copyright (C) 2008-2021 Free Software Foundation, Inc. + * Copyright (C) 2008-2023 Free Software Foundation, Inc. * Written by Eric Blake and Bruno Haible * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 3 of the License, or + * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-readlink.c b/gnulib-tests/test-readlink.c index e2ab9df..51f1fcb 100644 --- a/gnulib-tests/test-readlink.c +++ b/gnulib-tests/test-readlink.c @@ -1,9 +1,9 @@ /* Tests of readlink. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -25,7 +25,6 @@ SIGNATURE_CHECK (readlink, ssize_t, (char const *, char *, size_t)); #include #include -#include #include #include #include diff --git a/gnulib-tests/test-readlink.h b/gnulib-tests/test-readlink.h index c95d889..2c10dff 100644 --- a/gnulib-tests/test-readlink.h +++ b/gnulib-tests/test-readlink.h @@ -1,9 +1,9 @@ /* Tests of readlink. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-realloc-gnu.c b/gnulib-tests/test-realloc-gnu.c index 6f98be0..28afc62 100644 --- a/gnulib-tests/test-realloc-gnu.c +++ b/gnulib-tests/test-realloc-gnu.c @@ -1,9 +1,9 @@ /* Test of realloc function. - Copyright (C) 2010-2021 Free Software Foundation, Inc. + Copyright (C) 2010-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-reallocarray.c b/gnulib-tests/test-reallocarray.c index ff90962..26a366a 100644 --- a/gnulib-tests/test-reallocarray.c +++ b/gnulib-tests/test-reallocarray.c @@ -1,9 +1,9 @@ /* Test of reallocarray function. - Copyright (C) 2010-2021 Free Software Foundation, Inc. + Copyright (C) 2010-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-regex.c b/gnulib-tests/test-regex.c index ed4ca64..787ca51 100644 --- a/gnulib-tests/test-regex.c +++ b/gnulib-tests/test-regex.c @@ -1,9 +1,9 @@ /* Test regular expressions - Copyright 1996-2001, 2003-2021 Free Software Foundation, Inc. + Copyright 1996-2001, 2003-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -134,31 +134,31 @@ bug_regex11 (void) { n = regcomp (&re, tests[i].pattern, tests[i].flags); if (n != 0) - { - char buf[500]; - regerror (n, &re, buf, sizeof (buf)); - report_error ("%s: regcomp %zd failed: %s", tests[i].pattern, i, buf); - continue; - } + { + char buf[500]; + regerror (n, &re, buf, sizeof (buf)); + report_error ("%s: regcomp %zd failed: %s", tests[i].pattern, i, buf); + continue; + } if (regexec (&re, tests[i].string, tests[i].nmatch, rm, 0)) - { - report_error ("%s: regexec %zd failed", tests[i].pattern, i); - regfree (&re); - continue; - } + { + report_error ("%s: regexec %zd failed", tests[i].pattern, i); + regfree (&re); + continue; + } for (n = 0; n < tests[i].nmatch; ++n) - if (rm[n].rm_so != tests[i].rm[n].rm_so + if (rm[n].rm_so != tests[i].rm[n].rm_so || rm[n].rm_eo != tests[i].rm[n].rm_eo) - { - if (tests[i].rm[n].rm_so == -1 && tests[i].rm[n].rm_eo == -1) - break; - report_error ("%s: regexec %zd match failure rm[%d] %d..%d", + { + if (tests[i].rm[n].rm_so == -1 && tests[i].rm[n].rm_eo == -1) + break; + report_error ("%s: regexec %zd match failure rm[%d] %d..%d", tests[i].pattern, i, n, (int) rm[n].rm_so, (int) rm[n].rm_eo); - break; - } + break; + } regfree (&re); } diff --git a/gnulib-tests/test-sched.c b/gnulib-tests/test-sched.c index f3c4195..b379714 100644 --- a/gnulib-tests/test-sched.c +++ b/gnulib-tests/test-sched.c @@ -1,9 +1,9 @@ /* Test of substitute. - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -29,7 +29,7 @@ int b[] = { SCHED_FIFO, SCHED_RR, SCHED_OTHER }; /* Check that the types are all defined. */ pid_t t1; -static int f1; +int f1; int main () diff --git a/gnulib-tests/test-select-fd.c b/gnulib-tests/test-select-fd.c index 229e821..c99e5bb 100644 --- a/gnulib-tests/test-select-fd.c +++ b/gnulib-tests/test-select-fd.c @@ -1,9 +1,9 @@ /* Test of select() substitute, reading or writing from a given file descriptor. - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-select-in.sh b/gnulib-tests/test-select-in.sh index 68176d3..ad86ea2 100755 --- a/gnulib-tests/test-select-in.sh +++ b/gnulib-tests/test-select-in.sh @@ -5,7 +5,7 @@ # of /dev/null. tmpfiles="" -trap 'rm -fr $tmpfiles' 1 2 3 15 +trap 'rm -fr $tmpfiles' HUP INT QUIT TERM tmpfiles="$tmpfiles t-select-in.tmp" diff --git a/gnulib-tests/test-select-out.sh b/gnulib-tests/test-select-out.sh index dbeace5..cfa5e17 100755 --- a/gnulib-tests/test-select-out.sh +++ b/gnulib-tests/test-select-out.sh @@ -2,7 +2,7 @@ # Test select() on file descriptors opened for writing. tmpfiles="" -trap 'rm -fr $tmpfiles' 1 2 3 15 +trap 'rm -fr $tmpfiles' HUP INT QUIT TERM tmpfiles="$tmpfiles t-select-out.out t-select-out.tmp" diff --git a/gnulib-tests/test-select-stdin.c b/gnulib-tests/test-select-stdin.c index 26ca8a8..1182391 100644 --- a/gnulib-tests/test-select-stdin.c +++ b/gnulib-tests/test-select-stdin.c @@ -1,9 +1,9 @@ /* Test of select() substitute, reading from stdin. - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-select.c b/gnulib-tests/test-select.c index a4ff8d1..b460060 100644 --- a/gnulib-tests/test-select.c +++ b/gnulib-tests/test-select.c @@ -1,9 +1,9 @@ /* Test of select() substitute. - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -25,6 +25,7 @@ SIGNATURE_CHECK (select, int, (int, fd_set *, fd_set *, fd_set *, struct timeval *)); +#define TEST_PORT 12346 #include "test-select.h" int diff --git a/gnulib-tests/test-select.h b/gnulib-tests/test-select.h index 6348a49..902e085 100644 --- a/gnulib-tests/test-select.h +++ b/gnulib-tests/test-select.h @@ -1,9 +1,9 @@ /* Test of select() substitute. - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -24,7 +24,6 @@ #include #include #include -#include #include #include @@ -38,8 +37,10 @@ # include #endif -#define TEST_PORT 12345 - +/* Tell GCC not to warn about the specific edge cases tested here. */ +#if __GNUC__ >= 13 +# pragma GCC diagnostic ignored "-Wanalyzer-fd-use-without-check" +#endif typedef int (*select_fn) (int, fd_set *, fd_set *, fd_set *, struct timeval *); diff --git a/gnulib-tests/test-setenv.c b/gnulib-tests/test-setenv.c index 034a7d2..422d9b7 100644 --- a/gnulib-tests/test-setenv.c +++ b/gnulib-tests/test-setenv.c @@ -1,9 +1,9 @@ /* Tests of setenv. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-setlocale_null-mt-all.c b/gnulib-tests/test-setlocale_null-mt-all.c index f733036..7480406 100644 --- a/gnulib-tests/test-setlocale_null-mt-all.c +++ b/gnulib-tests/test-setlocale_null-mt-all.c @@ -1,9 +1,9 @@ /* Multithread-safety test for setlocale_null_r (LC_ALL, ...). - Copyright (C) 2019-2021 Free Software Foundation, Inc. + Copyright (C) 2019-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -166,7 +166,7 @@ Solaris 11.0 OK Solaris 11.4 OK Solaris OpenIndiana OK Haiku crash < 1 sec -Cygwin crash < 1 sec +Cygwin < 3.4.6 crash < 1 sec mingw OK MSVC OK (assuming compiler option /MD !) */ diff --git a/gnulib-tests/test-setlocale_null-mt-one.c b/gnulib-tests/test-setlocale_null-mt-one.c index 5f9b85b..4829082 100644 --- a/gnulib-tests/test-setlocale_null-mt-one.c +++ b/gnulib-tests/test-setlocale_null-mt-one.c @@ -1,9 +1,9 @@ /* Multithread-safety test for setlocale_null_r (LC_xxx, ...). - Copyright (C) 2019-2021 Free Software Foundation, Inc. + Copyright (C) 2019-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-setlocale_null.c b/gnulib-tests/test-setlocale_null.c index ebe0d36..2495964 100644 --- a/gnulib-tests/test-setlocale_null.c +++ b/gnulib-tests/test-setlocale_null.c @@ -1,9 +1,9 @@ /* Test of setlocale_null_r function. - Copyright (C) 2019-2021 Free Software Foundation, Inc. + Copyright (C) 2019-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -27,6 +27,6 @@ static char buf[SETLOCALE_NULL_ALL_MAX]; int main () { - /* Check that setlocale_null_r() can be used with $(LIB_SETLOCALE_NULL). */ + /* Check that setlocale_null_r() can be used with $(SETLOCALE_NULL_LIB). */ return setlocale_null_r (LC_ALL, buf, sizeof (buf)) != 0; } diff --git a/gnulib-tests/test-setsockopt.c b/gnulib-tests/test-setsockopt.c index 09ae1aa..0543e39 100644 --- a/gnulib-tests/test-setsockopt.c +++ b/gnulib-tests/test-setsockopt.c @@ -1,9 +1,9 @@ /* Test setsockopt() function. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-sh-quote.c b/gnulib-tests/test-sh-quote.c index 09f8992..19b28ad 100644 --- a/gnulib-tests/test-sh-quote.c +++ b/gnulib-tests/test-sh-quote.c @@ -1,9 +1,9 @@ /* Test of sh-quote module. - Copyright (C) 2012-2021 Free Software Foundation, Inc. + Copyright (C) 2012-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-sigaction.c b/gnulib-tests/test-sigaction.c deleted file mode 100644 index fc4a45c..0000000 --- a/gnulib-tests/test-sigaction.c +++ /dev/null @@ -1,122 +0,0 @@ -/* Test of sigaction() function. - Copyright (C) 2008-2021 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* Written by Eric Blake , 2008. */ - -#include - -#include - -#include "signature.h" -SIGNATURE_CHECK (sigaction, int, (int, struct sigaction const *, - struct sigaction *)); - -#include - -#include "macros.h" - -#ifndef SA_NOCLDSTOP -# define SA_NOCLDSTOP 0 -#endif -#ifndef SA_ONSTACK -# define SA_ONSTACK 0 -#endif -#ifndef SA_RESETHAND -# define SA_RESETHAND 0 -#endif -#ifndef SA_RESTART -# define SA_RESTART 0 -#endif -#ifndef SA_SIGINFO -# define SA_SIGINFO 0 -#endif -#ifndef SA_NOCLDWAIT -# define SA_NOCLDWAIT 0 -#endif - -/* Define a mask of flags required by POSIX. Some implementations - provide other flags as extensions, such as SA_RESTORER, that we - must ignore in this test. */ -#define MASK_SA_FLAGS (SA_NOCLDSTOP | SA_ONSTACK | SA_RESETHAND | SA_RESTART \ - | SA_SIGINFO | SA_NOCLDWAIT | SA_NODEFER) - -/* This test is unsafe in the presence of an asynchronous SIGABRT, - because we install a signal-handler that is intentionally not - async-safe. Hopefully, this does not lead to too many reports of - false failures, since people don't generally use 'kill -s SIGABRT' - to end a runaway program. */ - -static void -handler (int sig) -{ - static int entry_count; - struct sigaction sa; - ASSERT (sig == SIGABRT); - ASSERT (sigaction (SIGABRT, NULL, &sa) == 0); - ASSERT ((sa.sa_flags & SA_SIGINFO) == 0); - switch (entry_count++) - { - case 0: - ASSERT ((sa.sa_flags & SA_RESETHAND) == 0); - ASSERT (sa.sa_handler == handler); - break; - case 1: - /* This assertion fails on glibc-2.3.6 systems with LinuxThreads, - when this program is linked with -lpthread, due to the sigaction() - override in libpthread.so. */ -#if !(defined __GLIBC__ || defined __UCLIBC__) - ASSERT (sa.sa_handler == SIG_DFL); -#endif - break; - default: - ASSERT (0); - } -} - -int -main (void) -{ - struct sigaction sa; - struct sigaction old_sa; - sa.sa_handler = handler; - - sa.sa_flags = 0; - ASSERT (sigemptyset (&sa.sa_mask) == 0); - ASSERT (sigaction (SIGABRT, &sa, NULL) == 0); - ASSERT (raise (SIGABRT) == 0); - - sa.sa_flags = SA_RESETHAND | SA_NODEFER; - ASSERT (sigaction (SIGABRT, &sa, &old_sa) == 0); - ASSERT ((old_sa.sa_flags & MASK_SA_FLAGS) == 0); - ASSERT (old_sa.sa_handler == handler); - ASSERT (raise (SIGABRT) == 0); - - sa.sa_handler = SIG_DFL; - ASSERT (sigaction (SIGABRT, &sa, &old_sa) == 0); - ASSERT ((old_sa.sa_flags & SA_SIGINFO) == 0); -#if !(defined __GLIBC__ || defined __UCLIBC__) /* see above */ - ASSERT (old_sa.sa_handler == SIG_DFL); -#endif - - sa.sa_handler = SIG_IGN; - ASSERT (sigaction (SIGABRT, &sa, NULL) == 0); - ASSERT (raise (SIGABRT) == 0); - ASSERT (sigaction (SIGABRT, NULL, &old_sa) == 0); - ASSERT (old_sa.sa_handler == SIG_IGN); - ASSERT (raise (SIGABRT) == 0); - - return 0; -} diff --git a/gnulib-tests/test-signal-h.c b/gnulib-tests/test-signal-h.c index b9d5176..05ec06c 100644 --- a/gnulib-tests/test-signal-h.c +++ b/gnulib-tests/test-signal-h.c @@ -1,9 +1,9 @@ /* Test of substitute. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-sigprocmask.c b/gnulib-tests/test-sigprocmask.c index bf000d7..b6d0114 100644 --- a/gnulib-tests/test-sigprocmask.c +++ b/gnulib-tests/test-sigprocmask.c @@ -1,9 +1,9 @@ /* Test of sigprocmask. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -24,6 +24,7 @@ SIGNATURE_CHECK (sigprocmask, int, (int, const sigset_t *, sigset_t *)); #include +#include #include #include #include @@ -47,7 +48,7 @@ main (int argc, char *argv[]) pid_t pid = getpid (); char command[80]; - if (sizeof (int) < sizeof pid && 0x7fffffff < pid) + if (LONG_MAX < pid) { fputs ("Skipping test: pid too large\n", stderr); return 77; @@ -66,7 +67,7 @@ main (int argc, char *argv[]) ASSERT (sigprocmask (SIG_BLOCK, &set, NULL) == 0); /* Request a SIGINT signal from outside. */ - sprintf (command, "sh -c 'sleep 1; kill -%d %d' &", SIGINT, (int) pid); + sprintf (command, "sh -c 'sleep 1; kill -INT %ld' &", (long) pid); ASSERT (system (command) == 0); /* Wait. */ diff --git a/gnulib-tests/test-sigsegv-catch-segv1.c b/gnulib-tests/test-sigsegv-catch-segv1.c index 68f65c5..55effac 100644 --- a/gnulib-tests/test-sigsegv-catch-segv1.c +++ b/gnulib-tests/test-sigsegv-catch-segv1.c @@ -1,5 +1,5 @@ /* Test that the handler is called, with the right fault address. - Copyright (C) 2002-2021 Free Software Foundation, Inc. + Copyright (C) 2002-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -40,7 +40,7 @@ uintptr_t page; volatile int handler_called = 0; -int +static int handler (void *fault_address, int serious) { handler_called++; @@ -54,7 +54,7 @@ handler (void *fault_address, int serious) return 0; } -void +static void crasher (uintptr_t p) { *(volatile int *) (p + 0x678) = 42; diff --git a/gnulib-tests/test-sigsegv-catch-segv2.c b/gnulib-tests/test-sigsegv-catch-segv2.c index b2a4804..1628f1a 100644 --- a/gnulib-tests/test-sigsegv-catch-segv2.c +++ b/gnulib-tests/test-sigsegv-catch-segv2.c @@ -1,5 +1,5 @@ /* Test that the handler can be exited multiple times. - Copyright (C) 2002-2021 Free Software Foundation, Inc. + Copyright (C) 2002-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by diff --git a/gnulib-tests/test-sigsegv-catch-stackoverflow1.c b/gnulib-tests/test-sigsegv-catch-stackoverflow1.c index 2f1e6f4..0c4f1d4 100644 --- a/gnulib-tests/test-sigsegv-catch-stackoverflow1.c +++ b/gnulib-tests/test-sigsegv-catch-stackoverflow1.c @@ -1,5 +1,5 @@ /* Test the stack overflow handler. - Copyright (C) 2002-2021 Free Software Foundation, Inc. + Copyright (C) 2002-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -44,13 +44,13 @@ # endif # include "altstack-util.h" -jmp_buf mainloop; -sigset_t mainsigset; +static jmp_buf mainloop; +static sigset_t mainsigset; -volatile int pass = 0; +static volatile int pass = 0; -volatile char *stack_lower_bound; -volatile char *stack_upper_bound; +static volatile char *stack_lower_bound; +static volatile char *stack_upper_bound; static void stackoverflow_handler_continuation (void *arg1, void *arg2, void *arg3) @@ -59,7 +59,7 @@ stackoverflow_handler_continuation (void *arg1, void *arg2, void *arg3) longjmp (mainloop, arg); } -void +static void stackoverflow_handler (int emergency, stackoverflow_context_t scp) { char dummy; @@ -73,7 +73,7 @@ stackoverflow_handler (int emergency, stackoverflow_context_t scp) (void *) (long) (emergency ? -1 : pass), NULL, NULL); } -volatile int * +static volatile int * recurse_1 (int n, volatile int *p) { if (n < INT_MAX) @@ -81,7 +81,7 @@ recurse_1 (int n, volatile int *p) return p; } -int +static int recurse (volatile int n) { return *recurse_1 (n, &n); diff --git a/gnulib-tests/test-sigsegv-catch-stackoverflow2.c b/gnulib-tests/test-sigsegv-catch-stackoverflow2.c index 5914e32..7330938 100644 --- a/gnulib-tests/test-sigsegv-catch-stackoverflow2.c +++ b/gnulib-tests/test-sigsegv-catch-stackoverflow2.c @@ -1,5 +1,5 @@ /* Test that stack overflow and SIGSEGV are correctly distinguished. - Copyright (C) 2002-2021 Free Software Foundation, Inc. + Copyright (C) 2002-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -46,12 +46,12 @@ # endif # include "altstack-util.h" -jmp_buf mainloop; -sigset_t mainsigset; +static jmp_buf mainloop; +static sigset_t mainsigset; -volatile int pass = 0; -uintptr_t page; -volatile int *null_pointer_to_volatile_int /* = NULL */; +static volatile int pass = 0; +static uintptr_t page; +static volatile int *null_pointer_to_volatile_int /* = NULL */; static void stackoverflow_handler_continuation (void *arg1, void *arg2, void *arg3) @@ -60,7 +60,7 @@ stackoverflow_handler_continuation (void *arg1, void *arg2, void *arg3) longjmp (mainloop, arg); } -void +static void stackoverflow_handler (int emergency, stackoverflow_context_t scp) { pass++; @@ -76,7 +76,7 @@ stackoverflow_handler (int emergency, stackoverflow_context_t scp) (void *) (long) (emergency ? -1 : pass), NULL, NULL); } -int +static int sigsegv_handler (void *address, int emergency) { /* This test is necessary to distinguish stack overflow and SIGSEGV. */ @@ -96,7 +96,7 @@ sigsegv_handler (void *address, int emergency) (void *) (long) pass, NULL, NULL); } -volatile int * +static volatile int * recurse_1 (int n, volatile int *p) { if (n < INT_MAX) @@ -104,7 +104,7 @@ recurse_1 (int n, volatile int *p) return p; } -int +static int recurse (volatile int n) { return *recurse_1 (n, &n); diff --git a/gnulib-tests/test-sleep.c b/gnulib-tests/test-sleep.c index be9ee83..391c490 100644 --- a/gnulib-tests/test-sleep.c +++ b/gnulib-tests/test-sleep.c @@ -1,9 +1,9 @@ /* Test of sleep() function. - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-snprintf.c b/gnulib-tests/test-snprintf.c index ea6de1c..d106ad6 100644 --- a/gnulib-tests/test-snprintf.c +++ b/gnulib-tests/test-snprintf.c @@ -1,9 +1,9 @@ /* Test of snprintf() function. - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-sockets.c b/gnulib-tests/test-sockets.c index 8fd603c..9293b7c 100644 --- a/gnulib-tests/test-sockets.c +++ b/gnulib-tests/test-sockets.c @@ -1,10 +1,10 @@ /* - * Copyright (C) 2008-2021 Free Software Foundation, Inc. + * Copyright (C) 2008-2023 Free Software Foundation, Inc. * Written by Simon Josefsson. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 3 of the License, or + * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-stat-time.c b/gnulib-tests/test-stat-time.c index cd0f3c3..f20f5e2 100644 --- a/gnulib-tests/test-stat-time.c +++ b/gnulib-tests/test-stat-time.c @@ -1,9 +1,9 @@ /* Test of . - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-stat.c b/gnulib-tests/test-stat.c index 6f0a995..47fe894 100644 --- a/gnulib-tests/test-stat.c +++ b/gnulib-tests/test-stat.c @@ -1,9 +1,9 @@ /* Tests of stat. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -29,7 +29,6 @@ SIGNATURE_CHECK (stat, int, (char const *, struct stat *)); #include #include -#include #include #include #include diff --git a/gnulib-tests/test-stat.h b/gnulib-tests/test-stat.h index e728ca2..f2132c2 100644 --- a/gnulib-tests/test-stat.h +++ b/gnulib-tests/test-stat.h @@ -1,9 +1,9 @@ /* Tests of stat. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-stdbool.c b/gnulib-tests/test-stdbool.c index 60e5242..a4ff4d4 100644 --- a/gnulib-tests/test-stdbool.c +++ b/gnulib-tests/test-stdbool.c @@ -1,9 +1,9 @@ -/* Test of substitute. - Copyright (C) 2002-2007, 2009-2021 Free Software Foundation, Inc. +/* Test bool. + Copyright (C) 2002-2007, 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -33,37 +33,34 @@ #include -#include - -#ifndef bool - "error: bool is not defined" -#endif -#ifndef false - "error: false is not defined" +#ifdef TEST_STDBOOL_H +# include #endif + #if false "error: false is not 0" #endif -#ifndef true - "error: true is not defined" -#endif #if true != 1 "error: true is not 1" #endif -#ifndef __bool_true_false_are_defined - "error: __bool_true_false_are_defined is not defined" -#endif /* Several tests cannot be guaranteed with gnulib's , at least, not for all compilers and compiler options. */ -#if HAVE_STDBOOL_H || 3 <= __GNUC__ || 4 <= __clang_major__ -struct s { _Bool s: 1; _Bool t; } s; +#if ((HAVE_C_BOOL || defined __cplusplus \ + || HAVE_STDBOOL_H || 3 <= __GNUC__ || 4 <= __clang_major__) \ + && !(defined _MSC_VER || defined __SUNPRO_C)) +# define WORKING_BOOL 1 +#else +# define WORKING_BOOL 0 +#endif + +#if WORKING_BOOL +struct s { bool s: 1; bool t; } s; #endif char a[true == 1 ? 1 : -1]; char b[false == 0 ? 1 : -1]; -char c[__bool_true_false_are_defined == 1 ? 1 : -1]; -#if HAVE_STDBOOL_H || 3 <= __GNUC__ || 4 <= __clang_major__ /* See above. */ +#if WORKING_BOOL char d[(bool) 0.5 == true ? 1 : -1]; # ifdef ADDRESS_CHECK_OKAY /* Avoid gcc warning. */ /* C99 may plausibly be interpreted as not requiring support for a cast from @@ -73,30 +70,30 @@ char d[(bool) 0.5 == true ? 1 : -1]; bool e = &s; # endif # endif -char f[(_Bool) 0.0 == false ? 1 : -1]; +char f[(bool) 0.0 == false ? 1 : -1]; #endif char g[true]; -char h[sizeof (_Bool)]; -#if HAVE_STDBOOL_H || 3 <= __GNUC__ || 4 <= __clang_major__ /* See above. */ +char h[sizeof (bool)]; +#if WORKING_BOOL char i[sizeof s.t]; #endif enum { j = false, k = true, l = false * true, m = true * 256 }; -_Bool n[m]; +bool n[m]; char o[sizeof n == m * sizeof n[0] ? 1 : -1]; -char p[-1 - (_Bool) 0 < 0 && -1 - (bool) 0 < 0 ? 1 : -1]; +char p[-1 - (bool) 0 < 0 && -1 - (bool) 0 < 0 ? 1 : -1]; /* Catch a bug in an HP-UX C compiler. See https://gcc.gnu.org/ml/gcc-patches/2003-12/msg02303.html https://lists.gnu.org/r/bug-coreutils/2005-11/msg00161.html */ -_Bool q = true; -_Bool *pq = &q; +bool q = true; +bool *pq = &q; int main () { int error = 0; -#if HAVE_STDBOOL_H || 3 <= __GNUC_ || 4 <= __clang_major___ /* See above. */ +#if WORKING_BOOL # ifdef ADDRESS_CHECK_OKAY /* Avoid gcc warning. */ /* A cast from a variable's address to bool is valid in expressions. */ { diff --git a/lib/xasprintf.c b/gnulib-tests/test-stdckdint.c similarity index 50% rename from lib/xasprintf.c rename to gnulib-tests/test-stdckdint.c index 3a893d2..43d5e80 100644 --- a/lib/xasprintf.c +++ b/gnulib-tests/test-stdckdint.c @@ -1,10 +1,9 @@ -/* vasprintf and asprintf with out-of-memory checking. - Copyright (C) 1999, 2002-2004, 2006, 2009-2021 Free Software Foundation, - Inc. +/* Test . + Copyright 2022-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -15,20 +14,17 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . */ -#include +/* Written by Paul Eggert. */ -/* Specification. */ -#include "xvasprintf.h" +/* Tell test-intprops.c to test instead of . */ -char * -xasprintf (const char *format, ...) -{ - va_list args; - char *result; +#define TEST_STDCKDINT 1 - va_start (args, format); - result = xvasprintf (format, args); - va_end (args); +#define INT_ADD_WRAPV(a, b, r) ckd_add (r, a, b) +#define INT_SUBTRACT_WRAPV(a, b, r) ckd_sub (r, a, b) +#define INT_MULTIPLY_WRAPV(a, b, r) ckd_mul (r, a, b) - return result; -} +/* Luckily, test-intprops.c uses INT_NEGATE_OVERFLOW only on INT_MIN. */ +#define INT_NEGATE_OVERFLOW(a) ((a) < -INT_MAX) + +#include "test-intprops.c" diff --git a/gnulib-tests/test-stddef.c b/gnulib-tests/test-stddef.c index 21b46b9..359fece 100644 --- a/gnulib-tests/test-stddef.c +++ b/gnulib-tests/test-stddef.c @@ -1,9 +1,9 @@ /* Test of substitute. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -19,9 +19,6 @@ #include #include -#include -#include -#include "verify.h" /* Check that appropriate types are defined. */ wchar_t a = 'c'; @@ -31,7 +28,7 @@ max_align_t x; /* Check that NULL can be passed through varargs as a pointer type, per POSIX 2008. */ -verify (sizeof NULL == sizeof (void *)); +static_assert (sizeof NULL == sizeof (void *)); /* Check that offsetof produces integer constants with correct type. */ struct d @@ -42,34 +39,60 @@ struct d /* Solaris 10 has a bug where offsetof is under-parenthesized, and cannot be used as an arbitrary expression. However, since it is unlikely to bite real code, we ignore that short-coming. */ -/* verify (sizeof offsetof (struct d, e) == sizeof (size_t)); */ -verify (sizeof (offsetof (struct d, e)) == sizeof (size_t)); -verify (offsetof (struct d, f) == 1); - -/* offsetof promotes to an unsigned integer if and only if sizes do - not fit in int. */ -verify ((offsetof (struct d, e) < -1) == (INT_MAX < (size_t) -1)); +/* static_assert (sizeof offsetof (struct d, e) == sizeof (size_t)); */ +static_assert (sizeof (offsetof (struct d, e)) == sizeof (size_t)); +static_assert (offsetof (struct d, f) == 1); /* Check max_align_t's alignment. */ -verify (alignof (double) <= alignof (max_align_t)); -verify (alignof (int) <= alignof (max_align_t)); -verify (alignof (long double) <= alignof (max_align_t)); -verify (alignof (long int) <= alignof (max_align_t)); -verify (alignof (ptrdiff_t) <= alignof (max_align_t)); -verify (alignof (size_t) <= alignof (max_align_t)); -verify (alignof (wchar_t) <= alignof (max_align_t)); -verify (alignof (struct d) <= alignof (max_align_t)); +static_assert (alignof (double) <= alignof (max_align_t)); +static_assert (alignof (int) <= alignof (max_align_t)); +static_assert (alignof (long double) <= alignof (max_align_t)); +static_assert (alignof (long int) <= alignof (max_align_t)); +static_assert (alignof (ptrdiff_t) <= alignof (max_align_t)); +static_assert (alignof (size_t) <= alignof (max_align_t)); +static_assert (alignof (wchar_t) <= alignof (max_align_t)); +static_assert (alignof (struct d) <= alignof (max_align_t)); #if defined __GNUC__ || defined __clang__ || defined __IBM__ALIGNOF__ -verify (__alignof__ (double) <= __alignof__ (max_align_t)); -verify (__alignof__ (int) <= __alignof__ (max_align_t)); -verify (__alignof__ (long double) <= __alignof__ (max_align_t)); -verify (__alignof__ (long int) <= __alignof__ (max_align_t)); -verify (__alignof__ (ptrdiff_t) <= __alignof__ (max_align_t)); -verify (__alignof__ (size_t) <= __alignof__ (max_align_t)); -verify (__alignof__ (wchar_t) <= __alignof__ (max_align_t)); -verify (__alignof__ (struct d) <= __alignof__ (max_align_t)); +static_assert (__alignof__ (double) <= __alignof__ (max_align_t)); +static_assert (__alignof__ (int) <= __alignof__ (max_align_t)); +static_assert (__alignof__ (long double) <= __alignof__ (max_align_t)); +static_assert (__alignof__ (long int) <= __alignof__ (max_align_t)); +static_assert (__alignof__ (ptrdiff_t) <= __alignof__ (max_align_t)); +static_assert (__alignof__ (size_t) <= __alignof__ (max_align_t)); +static_assert (__alignof__ (wchar_t) <= __alignof__ (max_align_t)); +static_assert (__alignof__ (struct d) <= __alignof__ (max_align_t)); #endif +int test_unreachable_optimization (int x); +_Noreturn void test_unreachable_noreturn (void); + +int +test_unreachable_optimization (int x) +{ + /* Check that the compiler uses 'unreachable' for optimization. + This function, when compiled with optimization, should have code + equivalent to + return x + 3; + Use 'objdump --disassemble test-stddef.o' to verify this. */ + if (x < 4) + unreachable (); + return (x > 1 ? x + 3 : 2 * x + 10); +} + +_Noreturn void +test_unreachable_noreturn (void) +{ + /* Check that the compiler's data-flow analysis recognizes 'unreachable ()'. + This function should not elicit a warning. */ + unreachable (); +} + +#include /* INT_MAX */ + +/* offsetof promotes to an unsigned integer if and only if sizes do + not fit in int. */ +static_assert ((offsetof (struct d, e) < -1) == (INT_MAX < (size_t) -1)); + int main (void) { diff --git a/gnulib-tests/test-stdint.c b/gnulib-tests/test-stdint.c index dc6fad7..a34c33f 100644 --- a/gnulib-tests/test-stdint.c +++ b/gnulib-tests/test-stdint.c @@ -1,9 +1,9 @@ /* Test of substitute. - Copyright (C) 2006-2021 Free Software Foundation, Inc. + Copyright (C) 2006-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -247,9 +247,10 @@ uintmax_t j[2] = { UINTMAX_C (17), UINTMAX_MAX }; verify (TYPE_MAXIMUM (uintmax_t) == UINTMAX_MAX); verify_same_types (UINTMAX_MAX, (uintmax_t) 0 + 0); -/* As of 2007, Sun C and HP-UX 10.20 cc don't support 'long long' constants in +/* Older Sun C and HP-UX 10.20 cc don't support 'long long' constants in the preprocessor. */ -#if !(defined __SUNPRO_C || (defined __hpux && !defined __GNUC__)) +#if !((defined __SUNPRO_C && __SUNPRO_C < 0x5150) \ + || (defined __hpux && !defined __GNUC__)) #if INTMAX_MIN && INTMAX_MAX && UINTMAX_MAX /* ok */ #else diff --git a/gnulib-tests/test-stdio.c b/gnulib-tests/test-stdio.c index 8fd000a..9794f4d 100644 --- a/gnulib-tests/test-stdio.c +++ b/gnulib-tests/test-stdio.c @@ -1,9 +1,9 @@ /* Test of substitute. - Copyright (C) 2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2007, 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -20,14 +20,15 @@ #include -#include "verify.h" - /* Check that the various SEEK_* macros are defined. */ int sk[] = { SEEK_CUR, SEEK_END, SEEK_SET }; +/* Check that the _PRINTF_NAN_LEN_MAX macro is defined. */ +int pnlm[] = { _PRINTF_NAN_LEN_MAX }; + /* Check that NULL can be passed through varargs as a pointer type, per POSIX 2008. */ -verify (sizeof NULL == sizeof (void *)); +static_assert (sizeof NULL == sizeof (void *)); /* Check that the types are all defined. */ fpos_t t1; @@ -36,8 +37,37 @@ size_t t3; ssize_t t4; va_list t5; +#include + +#include "nan.h" +#include "macros.h" + int main (void) { +#if defined DBL_EXPBIT0_WORD && defined DBL_EXPBIT0_BIT + /* Check the value of _PRINTF_NAN_LEN_MAX. */ + { + #define NWORDS \ + ((sizeof (double) + sizeof (unsigned int) - 1) / sizeof (unsigned int)) + typedef union { double value; unsigned int word[NWORDS]; } memory_double; + + double value1; + memory_double value2; + char buf[64]; + + value1 = NaNd(); + sprintf (buf, "%g", value1); + ASSERT (strlen (buf) <= _PRINTF_NAN_LEN_MAX); + + value2.value = NaNd (); + #if DBL_EXPBIT0_BIT == 20 + value2.word[DBL_EXPBIT0_WORD] ^= 0x54321; + #endif + sprintf (buf, "%g", value2.value); + ASSERT (strlen (buf) <= _PRINTF_NAN_LEN_MAX); + } +#endif + return 0; } diff --git a/gnulib-tests/test-stdlib.c b/gnulib-tests/test-stdlib.c index 427263e..0d39847 100644 --- a/gnulib-tests/test-stdlib.c +++ b/gnulib-tests/test-stdlib.c @@ -1,9 +1,9 @@ /* Test of substitute. - Copyright (C) 2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2007, 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -20,8 +20,6 @@ #include -#include "verify.h" - /* Check that EXIT_SUCCESS is 0, per POSIX. */ static int exitcode = EXIT_SUCCESS; #if EXIT_SUCCESS @@ -36,7 +34,7 @@ static int exitcode = EXIT_SUCCESS; /* Check that NULL can be passed through varargs as a pointer type, per POSIX 2008. */ -verify (sizeof NULL == sizeof (void *)); +static_assert (sizeof NULL == sizeof (void *)); #if GNULIB_TEST_SYSTEM_POSIX # include "test-sys_wait.h" @@ -47,8 +45,19 @@ verify (sizeof NULL == sizeof (void *)); int main (void) { - if (test_sys_wait_macros ()) + /* POSIX:2018 says: + "In the POSIX locale the value of MB_CUR_MAX shall be 1." */ + /* On Android ≥ 5.0, the default locale is the "C.UTF-8" locale, not the + "C" locale. Furthermore, when you attempt to set the "C" or "POSIX" + locale via setlocale(), what you get is a "C" locale with UTF-8 encoding, + that is, effectively the "C.UTF-8" locale. */ +#ifndef __ANDROID__ + if (MB_CUR_MAX != 1) return 1; +#endif + + if (test_sys_wait_macros ()) + return 2; return exitcode; } diff --git a/gnulib-tests/test-strerror.c b/gnulib-tests/test-strerror.c index 2e4125b..d23e982 100644 --- a/gnulib-tests/test-strerror.c +++ b/gnulib-tests/test-strerror.c @@ -1,9 +1,9 @@ /* Test of strerror() function. - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) + the Free Software Foundation, either version 3, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-strerror_r.c b/gnulib-tests/test-strerror_r.c index 6e72194..7ad4424 100644 --- a/gnulib-tests/test-strerror_r.c +++ b/gnulib-tests/test-strerror_r.c @@ -1,9 +1,9 @@ /* Test of strerror_r() function. - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) + the Free Software Foundation, either version 3, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-striconv.c b/gnulib-tests/test-striconv.c index 55bd3df..461886e 100644 --- a/gnulib-tests/test-striconv.c +++ b/gnulib-tests/test-striconv.c @@ -1,9 +1,9 @@ /* Test of character set conversion. - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-string.c b/gnulib-tests/test-string.c index bad996f..054d7dd 100644 --- a/gnulib-tests/test-string.c +++ b/gnulib-tests/test-string.c @@ -1,9 +1,9 @@ /* Test of substitute. - Copyright (C) 2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2007, 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -20,11 +20,9 @@ #include -#include "verify.h" - /* Check that NULL can be passed through varargs as a pointer type, per POSIX 2008. */ -verify (sizeof NULL == sizeof (void *)); +static_assert (sizeof NULL == sizeof (void *)); int main (void) diff --git a/gnulib-tests/test-strings.c b/gnulib-tests/test-strings.c index 4ac1ac5..4104216 100644 --- a/gnulib-tests/test-strings.c +++ b/gnulib-tests/test-strings.c @@ -1,9 +1,9 @@ /* Test of substitute. - Copyright (C) 2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2007, 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-strnlen.c b/gnulib-tests/test-strnlen.c index 6470ebc..2102d74 100644 --- a/gnulib-tests/test-strnlen.c +++ b/gnulib-tests/test-strnlen.c @@ -1,10 +1,10 @@ /* - * Copyright (C) 2010-2021 Free Software Foundation, Inc. + * Copyright (C) 2010-2023 Free Software Foundation, Inc. * Written by Eric Blake * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 3 of the License, or + * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-strtoimax.c b/gnulib-tests/test-strtoimax.c index 3aa83c6..7d770b5 100644 --- a/gnulib-tests/test-strtoimax.c +++ b/gnulib-tests/test-strtoimax.c @@ -1,9 +1,9 @@ /* - * Copyright (C) 2011-2021 Free Software Foundation, Inc. + * Copyright (C) 2011-2023 Free Software Foundation, Inc. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 3 of the License, or + * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-strtoll.c b/gnulib-tests/test-strtoll.c index 5f2b193..24cb4eb 100644 --- a/gnulib-tests/test-strtoll.c +++ b/gnulib-tests/test-strtoll.c @@ -1,9 +1,9 @@ /* - * Copyright (C) 2011-2021 Free Software Foundation, Inc. + * Copyright (C) 2011-2023 Free Software Foundation, Inc. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 3 of the License, or + * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, @@ -239,5 +239,67 @@ main (void) ASSERT (errno == 0); } + /* Binary integer syntax. */ + { + const char input[] = "0b111010"; + char *ptr; + long long result; + errno = 0; + result = strtoll (input, &ptr, 10); + ASSERT (result == 0LL); + ASSERT (ptr == input + 1); + ASSERT (errno == 0); + } + { + const char input[] = "0b111010"; + char *ptr; + long long result; + errno = 0; + result = strtoll (input, &ptr, 2); + ASSERT (result == 58LL); + ASSERT (ptr == input + 8); + ASSERT (errno == 0); + } + { + const char input[] = "0b111010"; + char *ptr; + long long result; + errno = 0; + result = strtoll (input, &ptr, 0); + ASSERT (result == 58LL); + ASSERT (ptr == input + 8); + ASSERT (errno == 0); + } + { + const char input[] = "0b"; + char *ptr; + long long result; + errno = 0; + result = strtoll (input, &ptr, 10); + ASSERT (result == 0LL); + ASSERT (ptr == input + 1); + ASSERT (errno == 0); + } + { + const char input[] = "0b"; + char *ptr; + long long result; + errno = 0; + result = strtoll (input, &ptr, 2); + ASSERT (result == 0LL); + ASSERT (ptr == input + 1); + ASSERT (errno == 0); + } + { + const char input[] = "0b"; + char *ptr; + long long result; + errno = 0; + result = strtoll (input, &ptr, 0); + ASSERT (result == 0LL); + ASSERT (ptr == input + 1); + ASSERT (errno == 0); + } + return 0; } diff --git a/gnulib-tests/test-symlink.c b/gnulib-tests/test-symlink.c index 95a3fbf..c3cd831 100644 --- a/gnulib-tests/test-symlink.c +++ b/gnulib-tests/test-symlink.c @@ -1,9 +1,9 @@ /* Tests of symlink. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -25,7 +25,6 @@ SIGNATURE_CHECK (symlink, int, (char const *, char const *)); #include #include -#include #include #include #include diff --git a/gnulib-tests/test-symlink.h b/gnulib-tests/test-symlink.h index 3128d0a..46a5c77 100644 --- a/gnulib-tests/test-symlink.h +++ b/gnulib-tests/test-symlink.h @@ -1,9 +1,9 @@ /* Tests of symlink. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-sys_ioctl.c b/gnulib-tests/test-sys_ioctl.c index 151bf31..dd053d4 100644 --- a/gnulib-tests/test-sys_ioctl.c +++ b/gnulib-tests/test-sys_ioctl.c @@ -1,9 +1,9 @@ /* Test of substitute. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-sys_random.c b/gnulib-tests/test-sys_random.c index 1bf5336..574e231 100644 --- a/gnulib-tests/test-sys_random.c +++ b/gnulib-tests/test-sys_random.c @@ -1,9 +1,9 @@ /* Test of substitute. - Copyright (C) 2020-2021 Free Software Foundation, Inc. + Copyright (C) 2020-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-sys_select.c b/gnulib-tests/test-sys_select.c index 48667ce..f8905ce 100644 --- a/gnulib-tests/test-sys_select.c +++ b/gnulib-tests/test-sys_select.c @@ -1,9 +1,9 @@ /* Test of substitute. - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -20,6 +20,16 @@ #include +/* Check that the 'struct timeval' type is defined. */ +struct timeval a; + +/* Check that a.tv_sec is wide enough to hold a time_t, ignoring + signedness issues. */ +typedef int verify_tv_sec_type[sizeof (time_t) <= sizeof (a.tv_sec) ? 1 : -1]; + +/* Check that sigset_t is defined. */ +sigset_t t2; + #include "signature.h" /* The following may be macros without underlying functions, so only @@ -37,16 +47,6 @@ SIGNATURE_CHECK (FD_SET, int, (int, fd_set *)); SIGNATURE_CHECK (FD_ZERO, void, (fd_set *)); #endif -/* Check that the 'struct timeval' type is defined. */ -struct timeval a; - -/* Check that a.tv_sec is wide enough to hold a time_t, ignoring - signedness issues. */ -typedef int verify_tv_sec_type[sizeof (time_t) <= sizeof (a.tv_sec) ? 1 : -1]; - -/* Check that sigset_t is defined. */ -sigset_t t2; - int main (void) { diff --git a/gnulib-tests/test-sys_socket.c b/gnulib-tests/test-sys_socket.c index 49f4958..02ec637 100644 --- a/gnulib-tests/test-sys_socket.c +++ b/gnulib-tests/test-sys_socket.c @@ -1,9 +1,9 @@ /* Test of substitute. - Copyright (C) 2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2007, 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -20,8 +20,6 @@ #include -#include - #if HAVE_SHUTDOWN /* Check some integer constant expressions. */ int a[] = { SHUT_RD, SHUT_WR, SHUT_RDWR }; @@ -40,6 +38,8 @@ struct iovec io; /* Check that a minimal set of 'struct msghdr' is defined. */ struct msghdr msg; +#include + int main (void) { diff --git a/gnulib-tests/test-sys_stat.c b/gnulib-tests/test-sys_stat.c index e5f88c0..8453fc4 100644 --- a/gnulib-tests/test-sys_stat.c +++ b/gnulib-tests/test-sys_stat.c @@ -1,9 +1,9 @@ /* Test of substitute. - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -20,8 +20,6 @@ #include -#include "verify.h" - /* Check the existence of some macros. */ int a[] = { @@ -61,264 +59,264 @@ int a[] = /* Sanity checks. */ -verify (S_IRWXU == (S_IRUSR | S_IWUSR | S_IXUSR)); -verify (S_IRWXG == (S_IRGRP | S_IWGRP | S_IXGRP)); -verify (S_IRWXO == (S_IROTH | S_IWOTH | S_IXOTH)); +static_assert (S_IRWXU == (S_IRUSR | S_IWUSR | S_IXUSR)); +static_assert (S_IRWXG == (S_IRGRP | S_IWGRP | S_IXGRP)); +static_assert (S_IRWXO == (S_IROTH | S_IWOTH | S_IXOTH)); #ifdef S_IFBLK -verify (S_ISBLK (S_IFBLK)); +static_assert (S_ISBLK (S_IFBLK)); #endif -verify (!S_ISBLK (S_IFCHR)); -verify (!S_ISBLK (S_IFDIR)); -verify (!S_ISBLK (S_IFIFO)); -verify (!S_ISBLK (S_IFREG)); +static_assert (!S_ISBLK (S_IFCHR)); +static_assert (!S_ISBLK (S_IFDIR)); +static_assert (!S_ISBLK (S_IFIFO)); +static_assert (!S_ISBLK (S_IFREG)); #ifdef S_IFLNK -verify (!S_ISBLK (S_IFLNK)); +static_assert (!S_ISBLK (S_IFLNK)); #endif #ifdef S_IFSOCK -verify (!S_ISBLK (S_IFSOCK)); +static_assert (!S_ISBLK (S_IFSOCK)); #endif #ifdef S_IFBLK -verify (!S_ISCHR (S_IFBLK)); +static_assert (!S_ISCHR (S_IFBLK)); #endif -verify (S_ISCHR (S_IFCHR)); -verify (!S_ISCHR (S_IFDIR)); -verify (!S_ISCHR (S_IFIFO)); -verify (!S_ISCHR (S_IFREG)); +static_assert (S_ISCHR (S_IFCHR)); +static_assert (!S_ISCHR (S_IFDIR)); +static_assert (!S_ISCHR (S_IFIFO)); +static_assert (!S_ISCHR (S_IFREG)); #ifdef S_IFLNK -verify (!S_ISCHR (S_IFLNK)); +static_assert (!S_ISCHR (S_IFLNK)); #endif #ifdef S_IFSOCK -verify (!S_ISCHR (S_IFSOCK)); +static_assert (!S_ISCHR (S_IFSOCK)); #endif #ifdef S_IFBLK -verify (!S_ISDIR (S_IFBLK)); +static_assert (!S_ISDIR (S_IFBLK)); #endif -verify (!S_ISDIR (S_IFCHR)); -verify (S_ISDIR (S_IFDIR)); -verify (!S_ISDIR (S_IFIFO)); -verify (!S_ISDIR (S_IFREG)); +static_assert (!S_ISDIR (S_IFCHR)); +static_assert (S_ISDIR (S_IFDIR)); +static_assert (!S_ISDIR (S_IFIFO)); +static_assert (!S_ISDIR (S_IFREG)); #ifdef S_IFLNK -verify (!S_ISDIR (S_IFLNK)); +static_assert (!S_ISDIR (S_IFLNK)); #endif #ifdef S_IFSOCK -verify (!S_ISDIR (S_IFSOCK)); +static_assert (!S_ISDIR (S_IFSOCK)); #endif #ifdef S_IFBLK -verify (!S_ISFIFO (S_IFBLK)); +static_assert (!S_ISFIFO (S_IFBLK)); #endif -verify (!S_ISFIFO (S_IFCHR)); -verify (!S_ISFIFO (S_IFDIR)); -verify (S_ISFIFO (S_IFIFO)); -verify (!S_ISFIFO (S_IFREG)); +static_assert (!S_ISFIFO (S_IFCHR)); +static_assert (!S_ISFIFO (S_IFDIR)); +static_assert (S_ISFIFO (S_IFIFO)); +static_assert (!S_ISFIFO (S_IFREG)); #ifdef S_IFLNK -verify (!S_ISFIFO (S_IFLNK)); +static_assert (!S_ISFIFO (S_IFLNK)); #endif #ifdef S_IFSOCK -verify (!S_ISFIFO (S_IFSOCK)); +static_assert (!S_ISFIFO (S_IFSOCK)); #endif #ifdef S_IFBLK -verify (!S_ISREG (S_IFBLK)); +static_assert (!S_ISREG (S_IFBLK)); #endif -verify (!S_ISREG (S_IFCHR)); -verify (!S_ISREG (S_IFDIR)); -verify (!S_ISREG (S_IFIFO)); -verify (S_ISREG (S_IFREG)); +static_assert (!S_ISREG (S_IFCHR)); +static_assert (!S_ISREG (S_IFDIR)); +static_assert (!S_ISREG (S_IFIFO)); +static_assert (S_ISREG (S_IFREG)); #ifdef S_IFLNK -verify (!S_ISREG (S_IFLNK)); +static_assert (!S_ISREG (S_IFLNK)); #endif #ifdef S_IFSOCK -verify (!S_ISREG (S_IFSOCK)); +static_assert (!S_ISREG (S_IFSOCK)); #endif #ifdef S_IFBLK -verify (!S_ISLNK (S_IFBLK)); +static_assert (!S_ISLNK (S_IFBLK)); #endif -verify (!S_ISLNK (S_IFCHR)); -verify (!S_ISLNK (S_IFDIR)); -verify (!S_ISLNK (S_IFIFO)); -verify (!S_ISLNK (S_IFREG)); +static_assert (!S_ISLNK (S_IFCHR)); +static_assert (!S_ISLNK (S_IFDIR)); +static_assert (!S_ISLNK (S_IFIFO)); +static_assert (!S_ISLNK (S_IFREG)); #ifdef S_IFLNK -verify (S_ISLNK (S_IFLNK)); +static_assert (S_ISLNK (S_IFLNK)); #endif #ifdef S_IFSOCK -verify (!S_ISLNK (S_IFSOCK)); +static_assert (!S_ISLNK (S_IFSOCK)); #endif #ifdef S_IFBLK -verify (!S_ISSOCK (S_IFBLK)); +static_assert (!S_ISSOCK (S_IFBLK)); #endif -verify (!S_ISSOCK (S_IFCHR)); -verify (!S_ISSOCK (S_IFDIR)); -verify (!S_ISSOCK (S_IFIFO)); -verify (!S_ISSOCK (S_IFREG)); +static_assert (!S_ISSOCK (S_IFCHR)); +static_assert (!S_ISSOCK (S_IFDIR)); +static_assert (!S_ISSOCK (S_IFIFO)); +static_assert (!S_ISSOCK (S_IFREG)); #ifdef S_IFLNK -verify (!S_ISSOCK (S_IFLNK)); +static_assert (!S_ISSOCK (S_IFLNK)); #endif #ifdef S_IFSOCK -verify (S_ISSOCK (S_IFSOCK)); +static_assert (S_ISSOCK (S_IFSOCK)); #endif #ifdef S_IFBLK -verify (!S_ISDOOR (S_IFBLK)); +static_assert (!S_ISDOOR (S_IFBLK)); #endif -verify (!S_ISDOOR (S_IFCHR)); -verify (!S_ISDOOR (S_IFDIR)); -verify (!S_ISDOOR (S_IFIFO)); -verify (!S_ISDOOR (S_IFREG)); +static_assert (!S_ISDOOR (S_IFCHR)); +static_assert (!S_ISDOOR (S_IFDIR)); +static_assert (!S_ISDOOR (S_IFIFO)); +static_assert (!S_ISDOOR (S_IFREG)); #ifdef S_IFLNK -verify (!S_ISDOOR (S_IFLNK)); +static_assert (!S_ISDOOR (S_IFLNK)); #endif #ifdef S_IFSOCK -verify (!S_ISDOOR (S_IFSOCK)); +static_assert (!S_ISDOOR (S_IFSOCK)); #endif #ifdef S_IFBLK -verify (!S_ISMPB (S_IFBLK)); +static_assert (!S_ISMPB (S_IFBLK)); #endif -verify (!S_ISMPB (S_IFCHR)); -verify (!S_ISMPB (S_IFDIR)); -verify (!S_ISMPB (S_IFIFO)); -verify (!S_ISMPB (S_IFREG)); +static_assert (!S_ISMPB (S_IFCHR)); +static_assert (!S_ISMPB (S_IFDIR)); +static_assert (!S_ISMPB (S_IFIFO)); +static_assert (!S_ISMPB (S_IFREG)); #ifdef S_IFLNK -verify (!S_ISMPB (S_IFLNK)); +static_assert (!S_ISMPB (S_IFLNK)); #endif #ifdef S_IFSOCK -verify (!S_ISMPB (S_IFSOCK)); +static_assert (!S_ISMPB (S_IFSOCK)); #endif #ifdef S_IFBLK -verify (!S_ISMPX (S_IFBLK)); +static_assert (!S_ISMPX (S_IFBLK)); #endif -verify (!S_ISMPX (S_IFCHR)); -verify (!S_ISMPX (S_IFDIR)); -verify (!S_ISMPX (S_IFIFO)); -verify (!S_ISMPX (S_IFREG)); +static_assert (!S_ISMPX (S_IFCHR)); +static_assert (!S_ISMPX (S_IFDIR)); +static_assert (!S_ISMPX (S_IFIFO)); +static_assert (!S_ISMPX (S_IFREG)); #ifdef S_IFLNK -verify (!S_ISMPX (S_IFLNK)); +static_assert (!S_ISMPX (S_IFLNK)); #endif #ifdef S_IFSOCK -verify (!S_ISMPX (S_IFSOCK)); +static_assert (!S_ISMPX (S_IFSOCK)); #endif #ifdef S_IFBLK -verify (!S_ISNAM (S_IFBLK)); +static_assert (!S_ISNAM (S_IFBLK)); #endif -verify (!S_ISNAM (S_IFCHR)); -verify (!S_ISNAM (S_IFDIR)); -verify (!S_ISNAM (S_IFIFO)); -verify (!S_ISNAM (S_IFREG)); +static_assert (!S_ISNAM (S_IFCHR)); +static_assert (!S_ISNAM (S_IFDIR)); +static_assert (!S_ISNAM (S_IFIFO)); +static_assert (!S_ISNAM (S_IFREG)); #ifdef S_IFLNK -verify (!S_ISNAM (S_IFLNK)); +static_assert (!S_ISNAM (S_IFLNK)); #endif #ifdef S_IFSOCK -verify (!S_ISNAM (S_IFSOCK)); +static_assert (!S_ISNAM (S_IFSOCK)); #endif #ifdef S_IFBLK -verify (!S_ISNWK (S_IFBLK)); +static_assert (!S_ISNWK (S_IFBLK)); #endif -verify (!S_ISNWK (S_IFCHR)); -verify (!S_ISNWK (S_IFDIR)); -verify (!S_ISNWK (S_IFIFO)); -verify (!S_ISNWK (S_IFREG)); +static_assert (!S_ISNWK (S_IFCHR)); +static_assert (!S_ISNWK (S_IFDIR)); +static_assert (!S_ISNWK (S_IFIFO)); +static_assert (!S_ISNWK (S_IFREG)); #ifdef S_IFLNK -verify (!S_ISNWK (S_IFLNK)); +static_assert (!S_ISNWK (S_IFLNK)); #endif #ifdef S_IFSOCK -verify (!S_ISNWK (S_IFSOCK)); +static_assert (!S_ISNWK (S_IFSOCK)); #endif #ifdef S_IFBLK -verify (!S_ISPORT (S_IFBLK)); +static_assert (!S_ISPORT (S_IFBLK)); #endif -verify (!S_ISPORT (S_IFCHR)); -verify (!S_ISPORT (S_IFDIR)); -verify (!S_ISPORT (S_IFIFO)); -verify (!S_ISPORT (S_IFREG)); +static_assert (!S_ISPORT (S_IFCHR)); +static_assert (!S_ISPORT (S_IFDIR)); +static_assert (!S_ISPORT (S_IFIFO)); +static_assert (!S_ISPORT (S_IFREG)); #ifdef S_IFLNK -verify (!S_ISPORT (S_IFLNK)); +static_assert (!S_ISPORT (S_IFLNK)); #endif #ifdef S_IFSOCK -verify (!S_ISPORT (S_IFSOCK)); +static_assert (!S_ISPORT (S_IFSOCK)); #endif #ifdef S_IFBLK -verify (!S_ISCTG (S_IFBLK)); +static_assert (!S_ISCTG (S_IFBLK)); #endif -verify (!S_ISCTG (S_IFCHR)); -verify (!S_ISCTG (S_IFDIR)); -verify (!S_ISCTG (S_IFIFO)); -verify (!S_ISCTG (S_IFREG)); +static_assert (!S_ISCTG (S_IFCHR)); +static_assert (!S_ISCTG (S_IFDIR)); +static_assert (!S_ISCTG (S_IFIFO)); +static_assert (!S_ISCTG (S_IFREG)); #ifdef S_IFLNK -verify (!S_ISCTG (S_IFLNK)); +static_assert (!S_ISCTG (S_IFLNK)); #endif #ifdef S_IFSOCK -verify (!S_ISCTG (S_IFSOCK)); +static_assert (!S_ISCTG (S_IFSOCK)); #endif #ifdef S_IFBLK -verify (!S_ISOFD (S_IFBLK)); +static_assert (!S_ISOFD (S_IFBLK)); #endif -verify (!S_ISOFD (S_IFCHR)); -verify (!S_ISOFD (S_IFDIR)); -verify (!S_ISOFD (S_IFIFO)); -verify (!S_ISOFD (S_IFREG)); +static_assert (!S_ISOFD (S_IFCHR)); +static_assert (!S_ISOFD (S_IFDIR)); +static_assert (!S_ISOFD (S_IFIFO)); +static_assert (!S_ISOFD (S_IFREG)); #ifdef S_IFLNK -verify (!S_ISOFD (S_IFLNK)); +static_assert (!S_ISOFD (S_IFLNK)); #endif #ifdef S_IFSOCK -verify (!S_ISOFD (S_IFSOCK)); +static_assert (!S_ISOFD (S_IFSOCK)); #endif #ifdef S_IFBLK -verify (!S_ISOFL (S_IFBLK)); +static_assert (!S_ISOFL (S_IFBLK)); #endif -verify (!S_ISOFL (S_IFCHR)); -verify (!S_ISOFL (S_IFDIR)); -verify (!S_ISOFL (S_IFIFO)); -verify (!S_ISOFL (S_IFREG)); +static_assert (!S_ISOFL (S_IFCHR)); +static_assert (!S_ISOFL (S_IFDIR)); +static_assert (!S_ISOFL (S_IFIFO)); +static_assert (!S_ISOFL (S_IFREG)); #ifdef S_IFLNK -verify (!S_ISOFL (S_IFLNK)); +static_assert (!S_ISOFL (S_IFLNK)); #endif #ifdef S_IFSOCK -verify (!S_ISOFL (S_IFSOCK)); +static_assert (!S_ISOFL (S_IFSOCK)); #endif #ifdef S_IFBLK -verify (!S_ISWHT (S_IFBLK)); +static_assert (!S_ISWHT (S_IFBLK)); #endif -verify (!S_ISWHT (S_IFCHR)); -verify (!S_ISWHT (S_IFDIR)); -verify (!S_ISWHT (S_IFIFO)); -verify (!S_ISWHT (S_IFREG)); +static_assert (!S_ISWHT (S_IFCHR)); +static_assert (!S_ISWHT (S_IFDIR)); +static_assert (!S_ISWHT (S_IFIFO)); +static_assert (!S_ISWHT (S_IFREG)); #ifdef S_IFLNK -verify (!S_ISWHT (S_IFLNK)); +static_assert (!S_ISWHT (S_IFLNK)); #endif #ifdef S_IFSOCK -verify (!S_ISWHT (S_IFSOCK)); +static_assert (!S_ISWHT (S_IFSOCK)); #endif /* POSIX 2008 requires traditional encoding of permission constants. */ -verify (S_IRWXU == 00700); -verify (S_IRUSR == 00400); -verify (S_IWUSR == 00200); -verify (S_IXUSR == 00100); -verify (S_IRWXG == 00070); -verify (S_IRGRP == 00040); -verify (S_IWGRP == 00020); -verify (S_IXGRP == 00010); -verify (S_IRWXO == 00007); -verify (S_IROTH == 00004); -verify (S_IWOTH == 00002); -verify (S_IXOTH == 00001); -verify (S_ISUID == 04000); -verify (S_ISGID == 02000); -verify (S_ISVTX == 01000); +static_assert (S_IRWXU == 00700); +static_assert (S_IRUSR == 00400); +static_assert (S_IWUSR == 00200); +static_assert (S_IXUSR == 00100); +static_assert (S_IRWXG == 00070); +static_assert (S_IRGRP == 00040); +static_assert (S_IWGRP == 00020); +static_assert (S_IXGRP == 00010); +static_assert (S_IRWXO == 00007); +static_assert (S_IROTH == 00004); +static_assert (S_IWOTH == 00002); +static_assert (S_IXOTH == 00001); +static_assert (S_ISUID == 04000); +static_assert (S_ISGID == 02000); +static_assert (S_ISVTX == 01000); #if ((0 <= UTIME_NOW && UTIME_NOW < 1000000000) \ || (0 <= UTIME_OMIT && UTIME_OMIT < 1000000000) \ diff --git a/gnulib-tests/test-sys_time.c b/gnulib-tests/test-sys_time.c index 764321b..f0df8b8 100644 --- a/gnulib-tests/test-sys_time.c +++ b/gnulib-tests/test-sys_time.c @@ -1,9 +1,9 @@ /* Test of substitute. - Copyright (C) 2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2007, 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-sys_types.c b/gnulib-tests/test-sys_types.c index a0bcc04..f9f2bb7 100644 --- a/gnulib-tests/test-sys_types.c +++ b/gnulib-tests/test-sys_types.c @@ -1,9 +1,9 @@ /* Test of substitute. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-sys_uio.c b/gnulib-tests/test-sys_uio.c index 723f36b..3ecd170 100644 --- a/gnulib-tests/test-sys_uio.c +++ b/gnulib-tests/test-sys_uio.c @@ -1,9 +1,9 @@ /* Test of substitute. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-sys_wait.c b/gnulib-tests/test-sys_wait.c index 595956a..7fbef06 100644 --- a/gnulib-tests/test-sys_wait.c +++ b/gnulib-tests/test-sys_wait.c @@ -1,9 +1,9 @@ /* Test of substitute. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-sys_wait.h b/gnulib-tests/test-sys_wait.h index 4508f57..376a315 100644 --- a/gnulib-tests/test-sys_wait.h +++ b/gnulib-tests/test-sys_wait.h @@ -1,9 +1,9 @@ /* Test of macros shared between and . - Copyright (C) 2010-2021 Free Software Foundation, Inc. + Copyright (C) 2010-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -40,14 +40,14 @@ test_sys_wait_macros (void) } i = WEXITSTATUS (i) + WSTOPSIG (i) + WTERMSIG (i); +#if 0 switch (i) { -#if 0 /* Gnulib doesn't guarantee these, yet. */ case WNOHANG: case WUNTRACED: -#endif break; } +#endif return 0; } diff --git a/gnulib-tests/test-thread_create.c b/gnulib-tests/test-thread_create.c index f4213d4..9312d8e 100644 --- a/gnulib-tests/test-thread_create.c +++ b/gnulib-tests/test-thread_create.c @@ -1,9 +1,9 @@ /* Test of gl_thread_create () macro. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-thread_self.c b/gnulib-tests/test-thread_self.c index 69d876d..3073605 100644 --- a/gnulib-tests/test-thread_self.c +++ b/gnulib-tests/test-thread_self.c @@ -1,9 +1,9 @@ /* Test of gl_thread_self () macro. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-time-h.c b/gnulib-tests/test-time-h.c new file mode 100644 index 0000000..2240705 --- /dev/null +++ b/gnulib-tests/test-time-h.c @@ -0,0 +1,43 @@ +/* Test of substitute. + Copyright (C) 2007, 2009-2023 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +/* Written by Bruno Haible , 2007. */ + +#include + +#include + +/* Check that the types are all defined. */ +struct timespec t1; +#if 0 +/* POSIX:2008 does not require pid_t in unconditionally, and indeed + it's missing on Mac OS X 10.5, FreeBSD 6.4, OpenBSD 4.9, mingw. */ +pid_t t2; +#endif + +/* Check that NULL can be passed through varargs as a pointer type, + per POSIX 2008. */ +static_assert (sizeof NULL == sizeof (void *)); + +/* Check that TIME_UTC is defined and a positive integer. */ +int t3 = TIME_UTC; +static_assert (TIME_UTC > 0); + +int +main (void) +{ + return 0; +} diff --git a/gnulib-tests/test-time.c b/gnulib-tests/test-time.c index e5a4522..3986ee2 100644 --- a/gnulib-tests/test-time.c +++ b/gnulib-tests/test-time.c @@ -1,9 +1,9 @@ -/* Test of substitute. - Copyright (C) 2007, 2009-2021 Free Software Foundation, Inc. +/* Test of time() function. + Copyright (C) 2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -14,32 +14,36 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . */ -/* Written by Bruno Haible , 2007. */ +/* Written by Bruno Haible. */ #include #include -#include "verify.h" +#include "signature.h" +SIGNATURE_CHECK (time, time_t, (time_t *)); -/* Check that the types are all defined. */ -struct timespec t1; -#if 0 -/* POSIX:2008 does not require pid_t in unconditionally, and indeed - it's missing on Mac OS X 10.5, FreeBSD 6.4, OpenBSD 4.9, mingw. */ -pid_t t2; -#endif +#include -/* Check that NULL can be passed through varargs as a pointer type, - per POSIX 2008. */ -verify (sizeof NULL == sizeof (void *)); - -/* Check that TIME_UTC is defined and a positive integer. */ -int t3 = TIME_UTC; -verify (TIME_UTC > 0); +#include "macros.h" int main (void) { + /* Check consistency of time() with gettimeofday().tv_sec. */ + struct timeval tv1; + struct timeval tv2; + time_t tt3; + + /* Wait until gettimeofday() reports an increase in tv_sec. */ + ASSERT (gettimeofday (&tv1, NULL) == 0); + do + ASSERT (gettimeofday (&tv2, NULL) == 0); + while (tv2.tv_sec == tv1.tv_sec); + /* We are now at the beginning of a second. Test whether time() reports + the new second or the previous one. */ + tt3 = time (NULL); + ASSERT (tt3 >= tv2.tv_sec); + return 0; } diff --git a/gnulib-tests/test-timespec.c b/gnulib-tests/test-timespec.c index 4af9f83..de7cb6f 100644 --- a/gnulib-tests/test-timespec.c +++ b/gnulib-tests/test-timespec.c @@ -1,9 +1,9 @@ /* Test timespec functions. - Copyright 2015-2021 Free Software Foundation, Inc. + Copyright 2015-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -23,7 +23,6 @@ #include "intprops.h" #include "macros.h" -#include #include static struct { int s; int ns; } const prototype[] = diff --git a/gnulib-tests/test-trim.c b/gnulib-tests/test-trim.c new file mode 100644 index 0000000..e2f5043 --- /dev/null +++ b/gnulib-tests/test-trim.c @@ -0,0 +1,158 @@ +/* Tests of removing leading and/or trailing whitespaces. + Copyright (C) 2023 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +/* Written by Bruno Haible , 2023. */ + +#include + +/* Specification. */ +#include "trim.h" + +#include +#include +#include +#include + +#include "macros.h" + +static void +test_ascii (void) +{ + { + char *result = trim (""); + ASSERT (strcmp (result, "") == 0); + free (result); + result = trim_leading (""); + ASSERT (strcmp (result, "") == 0); + free (result); + result = trim_trailing (""); + ASSERT (strcmp (result, "") == 0); + free (result); + } + + { + char *result = trim (" "); + ASSERT (strcmp (result, "") == 0); + free (result); + result = trim_leading (" "); + ASSERT (strcmp (result, "") == 0); + free (result); + result = trim_trailing (" "); + ASSERT (strcmp (result, "") == 0); + free (result); + } + + { + char *result = trim ("Hello world"); + ASSERT (strcmp (result, "Hello world") == 0); + free (result); + result = trim_leading ("Hello world"); + ASSERT (strcmp (result, "Hello world") == 0); + free (result); + result = trim_trailing ("Hello world"); + ASSERT (strcmp (result, "Hello world") == 0); + free (result); + } + + { + char *result = trim (" Hello world"); + ASSERT (strcmp (result, "Hello world") == 0); + free (result); + result = trim_leading (" Hello world"); + ASSERT (strcmp (result, "Hello world") == 0); + free (result); + result = trim_trailing (" Hello world"); + ASSERT (strcmp (result, " Hello world") == 0); + free (result); + } + + { + char *result = trim ("Hello world "); + ASSERT (strcmp (result, "Hello world") == 0); + free (result); + result = trim_leading ("Hello world "); + ASSERT (strcmp (result, "Hello world ") == 0); + free (result); + result = trim_trailing ("Hello world "); + ASSERT (strcmp (result, "Hello world") == 0); + free (result); + } + + { + char *result = trim (" Hello world "); + ASSERT (strcmp (result, "Hello world") == 0); + free (result); + result = trim_leading (" Hello world "); + ASSERT (strcmp (result, "Hello world ") == 0); + free (result); + result = trim_trailing (" Hello world "); + ASSERT (strcmp (result, " Hello world") == 0); + free (result); + } +} + +int +main (int argc, char *argv[]) +{ + /* configure should already have checked that the locale is supported. */ + if (setlocale (LC_ALL, "") == NULL) + return 1; + + /* Test ASCII arguments. */ + test_ascii (); + + if (argc > 1) + switch (argv[1][0]) + { + case '1': + /* C or POSIX locale. */ + return 0; + + case '2': + /* Locale encoding is UTF-8. */ + { /* U+2002 EN SPACE */ + char *result = trim ("\342\200\202\302\267foo\342\200\202"); + ASSERT (strcmp (result, "\302\267foo") == 0); + free (result); + } + { /* U+3000 IDEOGRAPHIC SPACE */ + char *result = trim ("\343\200\200\302\267foo\343\200\200"); + ASSERT (strcmp (result, "\302\267foo") == 0); + free (result); + } + return 0; + + case '3': + /* Locale encoding is GB18030. */ + #if !(defined __FreeBSD__ || defined __DragonFly__ || defined __sun) + { /* U+2002 EN SPACE */ + char *result = trim ("\201\066\243\070\241\244foo\201\066\243\070"); + ASSERT (strcmp (result, "\241\244foo") == 0); + free (result); + } + #endif + #if !(defined __FreeBSD__ || defined __DragonFly__) + { /* U+3000 IDEOGRAPHIC SPACE */ + char *result = trim ("\241\241\241\244foo\241\241"); + ASSERT (strcmp (result, "\241\244foo") == 0); + free (result); + } + #endif + return 0; + } + + return 1; +} diff --git a/gnulib-tests/test-trim1.sh b/gnulib-tests/test-trim1.sh new file mode 100755 index 0000000..7d6ffe0 --- /dev/null +++ b/gnulib-tests/test-trim1.sh @@ -0,0 +1,5 @@ +#!/bin/sh + +# Test in the "C" or "POSIX" locale. +LC_ALL=C \ +${CHECKER} ./test-trim${EXEEXT} 1 diff --git a/gnulib-tests/test-trim2.sh b/gnulib-tests/test-trim2.sh new file mode 100755 index 0000000..1c14bd5 --- /dev/null +++ b/gnulib-tests/test-trim2.sh @@ -0,0 +1,15 @@ +#!/bin/sh + +# Test whether a specific UTF-8 locale is installed. +: "${LOCALE_FR_UTF8=fr_FR.UTF-8}" +if test $LOCALE_FR_UTF8 = none; then + if test -f /usr/bin/localedef; then + echo "Skipping test: no french Unicode locale is installed" + else + echo "Skipping test: no french Unicode locale is supported" + fi + exit 77 +fi + +LC_ALL=$LOCALE_FR_UTF8 \ +${CHECKER} ./test-trim${EXEEXT} 2 diff --git a/gnulib-tests/test-trim3.sh b/gnulib-tests/test-trim3.sh new file mode 100755 index 0000000..1da4307 --- /dev/null +++ b/gnulib-tests/test-trim3.sh @@ -0,0 +1,15 @@ +#!/bin/sh + +# Test whether a specific GB18030 locale is installed. +: "${LOCALE_ZH_CN=zh_CN.GB18030}" +if test $LOCALE_ZH_CN = none; then + if test -f /usr/bin/localedef; then + echo "Skipping test: no transitional chinese locale is installed" + else + echo "Skipping test: no transitional chinese locale is supported" + fi + exit 77 +fi + +LC_ALL=$LOCALE_ZH_CN \ +${CHECKER} ./test-trim${EXEEXT} 3 diff --git a/gnulib-tests/test-unistd.c b/gnulib-tests/test-unistd.c index ca7422c..08c5832 100644 --- a/gnulib-tests/test-unistd.c +++ b/gnulib-tests/test-unistd.c @@ -1,9 +1,9 @@ /* Test of substitute. - Copyright (C) 2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2007, 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -20,11 +20,9 @@ #include -#include "verify.h" - /* Check that NULL can be passed through varargs as a pointer type, per POSIX 2008. */ -verify (sizeof NULL == sizeof (void *)); +static_assert (sizeof NULL == sizeof (void *)); /* Check that the various SEEK_* macros are defined. */ int sk[] = { SEEK_CUR, SEEK_END, SEEK_SET }; diff --git a/gnulib-tests/test-unsetenv.c b/gnulib-tests/test-unsetenv.c index e61fbbc..d8e5b01 100644 --- a/gnulib-tests/test-unsetenv.c +++ b/gnulib-tests/test-unsetenv.c @@ -1,9 +1,9 @@ /* Tests of unsetenv. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -32,7 +32,8 @@ SIGNATURE_CHECK (unsetenv, int, (char const *)); int main (void) { - char entry[] = "b=2"; + /* Static to pacify gcc -Wanalyzer-putenv-of-auto-var. */ + static char entry[] = "b=2"; /* Test removal when multiple entries present. */ ASSERT (putenv ((char *) "a=1") == 0); diff --git a/gnulib-tests/test-update-copyright.sh b/gnulib-tests/test-update-copyright.sh index 7813f1e..a84ae34 100755 --- a/gnulib-tests/test-update-copyright.sh +++ b/gnulib-tests/test-update-copyright.sh @@ -1,11 +1,11 @@ #!/bin/sh # Test suite for update-copyright. -# Copyright (C) 2009-2021 Free Software Foundation, Inc. +# Copyright (C) 2009-2023 Free Software Foundation, Inc. # This file is part of the GNUlib Library. # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or +# the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, @@ -28,7 +28,7 @@ PATH=$abs_aux_dir:$PATH export PATH TMP_BASE=update-copyright.test -trap 'rm -f $TMP_BASE*' 0 1 2 3 15 +trap 'rm -f $TMP_BASE*' EXIT HUP INT QUIT TERM ## --------------------------------- ## ## Skip if user does not have perl. ## @@ -68,7 +68,7 @@ echo a > $TMP-in # Skip this test if Perl is too old. FIXME: 5.8.0 is just a guess. # We have a report that 5.6.1 is inadequate and that 5.8.0 works. perl -e 'require 5.8.0' || { - echo '$0: skipping this test; Perl version is too old' 1>&2 + echo "$0: skipping this test; Perl version is too old" 1>&2 exit 77 } @@ -115,6 +115,10 @@ Copyright (C) 1990-2005, 2007-2009 Acme, Inc. # Copyright (C) 1990-2005, 2007-2009 Free Software # Foundation, Inc. EOF +cat > $TMP.8 < $TMP-stdout 2> $TMP-stderr @@ -157,6 +161,10 @@ Copyright (C) 1990-2005, 2007-2009 Acme, Inc. # Copyright (C) 1990-2005, 2007-2009 Free Software # Foundation, Inc. EOF +compare - $TMP.8 < $TMP-stdout 2> $TMP-stderr diff --git a/gnulib-tests/test-vasnprintf.c b/gnulib-tests/test-vasnprintf.c index 9d99743..635654b 100644 --- a/gnulib-tests/test-vasnprintf.c +++ b/gnulib-tests/test-vasnprintf.c @@ -1,9 +1,9 @@ /* Test of vasnprintf() and asnprintf() functions. - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-vasprintf.c b/gnulib-tests/test-vasprintf.c deleted file mode 100644 index cbebce7..0000000 --- a/gnulib-tests/test-vasprintf.c +++ /dev/null @@ -1,103 +0,0 @@ -/* Test of vasprintf() and asprintf() functions. - Copyright (C) 2007-2021 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* Written by Bruno Haible , 2007. */ - -#include - -#include - -#include "signature.h" -SIGNATURE_CHECK (asprintf, int, (char **, char const *, ...)); -SIGNATURE_CHECK (vasprintf, int, (char **, char const *, va_list)); - -#include -#include -#include - -#include "macros.h" - -static int -my_asprintf (char **result, const char *format, ...) -{ - va_list args; - int ret; - - va_start (args, format); - ret = vasprintf (result, format, args); - va_end (args); - return ret; -} - -static void -test_vasprintf () -{ - int repeat; - - for (repeat = 0; repeat <= 8; repeat++) - { - char *result; - int retval = my_asprintf (&result, "%d", 12345); - ASSERT (retval == 5); - ASSERT (result != NULL); - ASSERT (strcmp (result, "12345") == 0); - free (result); - } - - for (repeat = 0; repeat <= 8; repeat++) - { - char *result; - int retval = my_asprintf (&result, "%08lx", 12345UL); - ASSERT (retval == 8); - ASSERT (result != NULL); - ASSERT (strcmp (result, "00003039") == 0); - free (result); - } -} - -static void -test_asprintf () -{ - int repeat; - - for (repeat = 0; repeat <= 8; repeat++) - { - char *result; - int retval = asprintf (&result, "%d", 12345); - ASSERT (retval == 5); - ASSERT (result != NULL); - ASSERT (strcmp (result, "12345") == 0); - free (result); - } - - for (repeat = 0; repeat <= 8; repeat++) - { - char *result; - int retval = asprintf (&result, "%08lx", 12345UL); - ASSERT (retval == 8); - ASSERT (result != NULL); - ASSERT (strcmp (result, "00003039") == 0); - free (result); - } -} - -int -main (int argc, char *argv[]) -{ - test_vasprintf (); - test_asprintf (); - return 0; -} diff --git a/gnulib-tests/test-vc-list-files-cvs.sh b/gnulib-tests/test-vc-list-files-cvs.sh index 3a7e1c5..40723fa 100755 --- a/gnulib-tests/test-vc-list-files-cvs.sh +++ b/gnulib-tests/test-vc-list-files-cvs.sh @@ -1,11 +1,11 @@ #!/bin/sh # Unit tests for vc-list-files -# Copyright (C) 2008-2021 Free Software Foundation, Inc. +# Copyright (C) 2008-2023 Free Software Foundation, Inc. # This file is part of the GNUlib Library. # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or +# the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, @@ -16,7 +16,7 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see . */ -: ${srcdir=.} +: "${srcdir=.}" . "$srcdir/init.sh"; path_prepend_ . tmpdir=vc-cvs diff --git a/gnulib-tests/test-vc-list-files-git.sh b/gnulib-tests/test-vc-list-files-git.sh index 3359ffb..ab10800 100755 --- a/gnulib-tests/test-vc-list-files-git.sh +++ b/gnulib-tests/test-vc-list-files-git.sh @@ -1,11 +1,11 @@ #!/bin/sh # Unit tests for vc-list-files -# Copyright (C) 2008-2021 Free Software Foundation, Inc. +# Copyright (C) 2008-2023 Free Software Foundation, Inc. # This file is part of the GNUlib Library. # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or +# the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, @@ -16,12 +16,19 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see . */ -: ${srcdir=.} +: "${srcdir=.}" . "$srcdir/init.sh"; path_prepend_ . tmpdir=vc-git-$$ GIT_DIR= GIT_WORK_TREE=; unset GIT_DIR GIT_WORK_TREE +# Ignore local git configurations that may interact badly with +# commands below. For example, if the user has set +# commit.gpgsign=true in ~/.gitconfig the 'git commit' below will +# require a OpenPGP private key operation which trigger PIN prompts +# and unwanted hardware access on the developer's machine. +GIT_CONFIG_GLOBAL=/dev/null; export GIT_CONFIG_GLOBAL + fail=1 mkdir $tmpdir && cd $tmpdir && # without git, skip the test diff --git a/gnulib-tests/test-verify-try.c b/gnulib-tests/test-verify-try.c index e97ea2a..ed7a1c3 100644 --- a/gnulib-tests/test-verify-try.c +++ b/gnulib-tests/test-verify-try.c @@ -1,10 +1,10 @@ /* Test the "verify" module. - Copyright (C) 2017-2021 Free Software Foundation, Inc. + Copyright (C) 2017-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-verify.c b/gnulib-tests/test-verify.c index 65b926a..e581a10 100644 --- a/gnulib-tests/test-verify.c +++ b/gnulib-tests/test-verify.c @@ -1,10 +1,10 @@ /* Test the "verify" module. - Copyright (C) 2005, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2005, 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-version-etc.c b/gnulib-tests/test-version-etc.c index a098556..c81f228 100644 --- a/gnulib-tests/test-version-etc.c +++ b/gnulib-tests/test-version-etc.c @@ -1,10 +1,10 @@ /* Test suite for version-etc. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This file is part of the GNUlib Library. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -23,7 +23,7 @@ #define AUTHORS "Sergey Poznyakoff", "Eric Blake" int -main (int argc _GL_UNUSED, char **argv) +main (_GL_UNUSED int argc, char **argv) { version_etc (stdout, "test-version-etc", "dummy", "0", AUTHORS, (const char *) NULL); diff --git a/gnulib-tests/test-version-etc.sh b/gnulib-tests/test-version-etc.sh index 20b9e9b..11dcc28 100755 --- a/gnulib-tests/test-version-etc.sh +++ b/gnulib-tests/test-version-etc.sh @@ -1,11 +1,11 @@ #! /bin/sh # Test suite for version-etc. -# Copyright (C) 2009-2021 Free Software Foundation, Inc. +# Copyright (C) 2009-2023 Free Software Foundation, Inc. # This file is part of the GNUlib Library. # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or +# the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-wchar.c b/gnulib-tests/test-wchar.c index 65c685c..4b8d537 100644 --- a/gnulib-tests/test-wchar.c +++ b/gnulib-tests/test-wchar.c @@ -1,9 +1,9 @@ /* Test of substitute. - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -20,15 +20,13 @@ #include -#include "verify.h" - /* Check that the types wchar_t and wint_t are defined. */ wchar_t a = 'c'; wint_t b = 'x'; /* Check that NULL can be passed through varargs as a pointer type, per POSIX 2008. */ -verify (sizeof NULL == sizeof (void *)); +static_assert (sizeof NULL == sizeof (void *)); int main (void) diff --git a/gnulib-tests/test-wcrtomb-w32.c b/gnulib-tests/test-wcrtomb-w32.c index b354260..4e75fe0 100644 --- a/gnulib-tests/test-wcrtomb-w32.c +++ b/gnulib-tests/test-wcrtomb-w32.c @@ -1,9 +1,9 @@ /* Test of conversion of wide character to multibyte character. - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-wcrtomb.c b/gnulib-tests/test-wcrtomb.c index 74f2d1d..6ec0750 100644 --- a/gnulib-tests/test-wcrtomb.c +++ b/gnulib-tests/test-wcrtomb.c @@ -1,9 +1,9 @@ /* Test of conversion of wide character to multibyte character. - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-wcrtomb.sh b/gnulib-tests/test-wcrtomb.sh index 1a31b6e..01d8d53 100755 --- a/gnulib-tests/test-wcrtomb.sh +++ b/gnulib-tests/test-wcrtomb.sh @@ -1,7 +1,7 @@ #!/bin/sh # Test in an ISO-8859-1 or ISO-8859-15 locale. -: ${LOCALE_FR=fr_FR} +: "${LOCALE_FR=fr_FR}" if test $LOCALE_FR != none; then LC_ALL=$LOCALE_FR \ ${CHECKER} ./test-wcrtomb${EXEEXT} 1 \ @@ -9,7 +9,7 @@ if test $LOCALE_FR != none; then fi # Test whether a specific UTF-8 locale is installed. -: ${LOCALE_FR_UTF8=fr_FR.UTF-8} +: "${LOCALE_FR_UTF8=fr_FR.UTF-8}" if test $LOCALE_FR_UTF8 != none; then LC_ALL=$LOCALE_FR_UTF8 \ ${CHECKER} ./test-wcrtomb${EXEEXT} 2 \ @@ -17,7 +17,7 @@ if test $LOCALE_FR_UTF8 != none; then fi # Test whether a specific EUC-JP locale is installed. -: ${LOCALE_JA=ja_JP} +: "${LOCALE_JA=ja_JP}" if test $LOCALE_JA != none; then LC_ALL=$LOCALE_JA \ ${CHECKER} ./test-wcrtomb${EXEEXT} 3 \ @@ -25,7 +25,7 @@ if test $LOCALE_JA != none; then fi # Test whether a specific GB18030 locale is installed. -: ${LOCALE_ZH_CN=zh_CN.GB18030} +: "${LOCALE_ZH_CN=zh_CN.GB18030}" if test $LOCALE_ZH_CN != none; then LC_ALL=$LOCALE_ZH_CN \ ${CHECKER} ./test-wcrtomb${EXEEXT} 4 \ diff --git a/gnulib-tests/test-wctype-h.c b/gnulib-tests/test-wctype-h.c index f96c73d..ceee02b 100644 --- a/gnulib-tests/test-wctype-h.c +++ b/gnulib-tests/test-wctype-h.c @@ -1,9 +1,9 @@ /* Test of substitute. - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -20,8 +20,6 @@ #include -#include "macros.h" - /* Check that the type wint_t is defined. */ wint_t a = 'x'; /* Check that WEOF is defined. */ @@ -33,6 +31,8 @@ wctype_t p; /* Check that the type wctrans_t is defined. */ wctrans_t q; +#include "macros.h" + int main (void) { diff --git a/gnulib-tests/test-wcwidth.c b/gnulib-tests/test-wcwidth.c index e5e3a54..b6aa41f 100644 --- a/gnulib-tests/test-wcwidth.c +++ b/gnulib-tests/test-wcwidth.c @@ -1,9 +1,9 @@ /* Test of wcwidth() function. - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-xalloc-die.c b/gnulib-tests/test-xalloc-die.c index 3da598b..07dcb1d 100644 --- a/gnulib-tests/test-xalloc-die.c +++ b/gnulib-tests/test-xalloc-die.c @@ -1,9 +1,9 @@ /* Test of xalloc_die() function. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -21,7 +21,7 @@ #include "xalloc.h" int -main (int argc _GL_UNUSED, char **argv) +main (_GL_UNUSED int argc, char **argv) { xalloc_die (); return 0; diff --git a/gnulib-tests/test-xalloc-die.sh b/gnulib-tests/test-xalloc-die.sh index b88d959..822a270 100755 --- a/gnulib-tests/test-xalloc-die.sh +++ b/gnulib-tests/test-xalloc-die.sh @@ -1,11 +1,11 @@ #!/bin/sh # Test suite for xalloc_die. -# Copyright (C) 2009-2021 Free Software Foundation, Inc. +# Copyright (C) 2009-2023 Free Software Foundation, Inc. # This file is part of the GNUlib Library. # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or +# the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-xstdopen.c b/gnulib-tests/test-xstdopen.c index 89f3090..b1c7f78 100644 --- a/gnulib-tests/test-xstdopen.c +++ b/gnulib-tests/test-xstdopen.c @@ -1,9 +1,9 @@ /* Test of xstdopen() function. - Copyright (C) 2019-2021 Free Software Foundation, Inc. + Copyright (C) 2019-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-xstrtoimax.sh b/gnulib-tests/test-xstrtoimax.sh index 6a48e67..f41e52e 100755 --- a/gnulib-tests/test-xstrtoimax.sh +++ b/gnulib-tests/test-xstrtoimax.sh @@ -1,5 +1,5 @@ #!/bin/sh -: ${srcdir=.} +: "${srcdir=.}" . "$srcdir/init.sh"; path_prepend_ . too_big=99999999999999999999999999999999999999999999999999999999999999999999 diff --git a/gnulib-tests/test-xstrtol.c b/gnulib-tests/test-xstrtol.c index f07a1f4..9c5d35f 100644 --- a/gnulib-tests/test-xstrtol.c +++ b/gnulib-tests/test-xstrtol.c @@ -1,9 +1,9 @@ /* Test of xstrtol module. - Copyright (C) 1995-1996, 1998-2001, 2003-2021 Free Software Foundation, Inc. + Copyright (C) 1995-1996, 1998-2001, 2003-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/test-xstrtol.sh b/gnulib-tests/test-xstrtol.sh index 15dd911..e82b585 100755 --- a/gnulib-tests/test-xstrtol.sh +++ b/gnulib-tests/test-xstrtol.sh @@ -1,5 +1,5 @@ #!/bin/sh -: ${srcdir=.} +: "${srcdir=.}" . "$srcdir/init.sh"; path_prepend_ . too_big=99999999999999999999999999999999999999999999999999999999999999999999 diff --git a/gnulib-tests/test-xvasprintf.c b/gnulib-tests/test-xvasprintf.c deleted file mode 100644 index b637444..0000000 --- a/gnulib-tests/test-xvasprintf.c +++ /dev/null @@ -1,135 +0,0 @@ -/* Test of xvasprintf() and xasprintf() functions. - Copyright (C) 2007-2021 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* Written by Bruno Haible , 2007. */ - -/* Tell GCC not to warn about the specific edge cases tested here. */ -#if (__GNUC__ == 4 && 3 <= __GNUC_MINOR__) || 4 < __GNUC__ -# pragma GCC diagnostic ignored "-Wformat-zero-length" -# pragma GCC diagnostic ignored "-Wformat-nonliteral" -# pragma GCC diagnostic ignored "-Wformat-security" -#endif - -#include - -#include "xvasprintf.h" - -#include -#include -#include - -#include "macros.h" - -static char * -my_xasprintf (const char *format, ...) -{ - va_list args; - char *ret; - - va_start (args, format); - ret = xvasprintf (format, args); - va_end (args); - return ret; -} - -static void -test_xvasprintf (void) -{ - int repeat; - char *result; - - for (repeat = 0; repeat <= 8; repeat++) - { - result = my_xasprintf ("%d", 12345); - ASSERT (result != NULL); - ASSERT (strcmp (result, "12345") == 0); - free (result); - } - - { - /* Silence gcc warning about zero-length format string. */ - const char *empty = ""; - result = my_xasprintf (empty); - ASSERT (result != NULL); - ASSERT (strcmp (result, "") == 0); - free (result); - } - - result = my_xasprintf ("%s", "foo"); - ASSERT (result != NULL); - ASSERT (strcmp (result, "foo") == 0); - free (result); - - result = my_xasprintf ("%s%s", "foo", "bar"); - ASSERT (result != NULL); - ASSERT (strcmp (result, "foobar") == 0); - free (result); - - result = my_xasprintf ("%s%sbaz", "foo", "bar"); - ASSERT (result != NULL); - ASSERT (strcmp (result, "foobarbaz") == 0); - free (result); -} - -static void -test_xasprintf (void) -{ - int repeat; - char *result; - - for (repeat = 0; repeat <= 8; repeat++) - { - result = xasprintf ("%d", 12345); - ASSERT (result != NULL); - ASSERT (strcmp (result, "12345") == 0); - free (result); - } - - { - /* Silence gcc warning about zero-length format string, - and about "format not a string literal and no format" - (whatever that means) . */ - const char *empty = ""; - result = xasprintf (empty, empty); - ASSERT (result != NULL); - ASSERT (strcmp (result, "") == 0); - free (result); - } - - result = xasprintf ("%s", "foo"); - ASSERT (result != NULL); - ASSERT (strcmp (result, "foo") == 0); - free (result); - - result = xasprintf ("%s%s", "foo", "bar"); - ASSERT (result != NULL); - ASSERT (strcmp (result, "foobar") == 0); - free (result); - - result = my_xasprintf ("%s%sbaz", "foo", "bar"); - ASSERT (result != NULL); - ASSERT (strcmp (result, "foobarbaz") == 0); - free (result); -} - -int -main (int argc _GL_UNUSED, char *argv[]) -{ - test_xvasprintf (); - test_xasprintf (); - - return 0; -} diff --git a/gnulib-tests/test-year2038.c b/gnulib-tests/test-year2038.c new file mode 100644 index 0000000..d1989eb --- /dev/null +++ b/gnulib-tests/test-year2038.c @@ -0,0 +1,39 @@ +/* Test of year2038 module. + Copyright (C) 2023 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +/* Written by Bruno Haible , 2023. */ + +/* This test fails if AC_SYS_YEAR2038 could not arrange for a time_t + that supports values > 2147483647. + This can happen + - on systems that are not year 2038 safe, or + - if the user specified --disable-year2038 at configure time. + It is intended that this test fails in these circumstances. */ + +#include + +#include +#include "intprops.h" + +/* Although this test could be done with static_assert, the test + harness prefers dynamic checking. */ + +int +main (void) +{ + /* Check the range of time_t. */ + return TYPE_MAXIMUM (time_t) >> 31 == 0; +} diff --git a/lib/asprintf.c b/gnulib-tests/time.c similarity index 63% rename from lib/asprintf.c rename to gnulib-tests/time.c index 9c78c13..4e2ee31 100644 --- a/lib/asprintf.c +++ b/gnulib-tests/time.c @@ -1,6 +1,5 @@ -/* Formatted output to strings. - Copyright (C) 1999, 2002, 2006-2007, 2009-2021 Free Software Foundation, - Inc. +/* Provide time() for systems for which it's broken. + Copyright (C) 2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -15,25 +14,28 @@ You should have received a copy of the GNU Lesser General Public License along with this program. If not, see . */ +/* Written by Bruno Haible. */ + #include /* Specification. */ -#ifdef IN_LIBASPRINTF -# include "vasprintf.h" -#else -# include -#endif +#include -#include +#include +#include -int -asprintf (char **resultp, const char *format, ...) +time_t +time (time_t *tp) { - va_list args; - int result; + struct timeval tv; + time_t tt; + + if (gettimeofday (&tv, NULL) < 0) + abort (); + tt = tv.tv_sec; + + if (tp) + *tp = tt; - va_start (args, format); - result = vasprintf (resultp, format, args); - va_end (args); - return result; + return tt; } diff --git a/gnulib-tests/timespec-add.c b/gnulib-tests/timespec-add.c index 5460a04..38c4dfc 100644 --- a/gnulib-tests/timespec-add.c +++ b/gnulib-tests/timespec-add.c @@ -1,10 +1,10 @@ /* Add two struct timespec values. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -23,6 +23,7 @@ #include #include "timespec.h" +#include #include "intprops.h" struct timespec @@ -38,7 +39,7 @@ timespec_add (struct timespec a, struct timespec b) { rns = nsd; time_t bs1; - if (!INT_ADD_WRAPV (bs, 1, &bs1)) + if (!ckd_add (&bs1, bs, 1)) bs = bs1; else if (rs < 0) rs++; @@ -46,7 +47,7 @@ timespec_add (struct timespec a, struct timespec b) goto high_overflow; } - if (INT_ADD_WRAPV (rs, bs, &rs)) + if (ckd_add (&rs, rs, bs)) { if (bs < 0) { diff --git a/gnulib-tests/timespec-sub.c b/gnulib-tests/timespec-sub.c index 88ef69a..f805240 100644 --- a/gnulib-tests/timespec-sub.c +++ b/gnulib-tests/timespec-sub.c @@ -1,10 +1,10 @@ /* Subtract two struct timespec values. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -24,6 +24,7 @@ #include #include "timespec.h" +#include #include "intprops.h" struct timespec @@ -38,7 +39,7 @@ timespec_sub (struct timespec a, struct timespec b) { rns = ns + TIMESPEC_HZ; time_t bs1; - if (!INT_ADD_WRAPV (bs, 1, &bs1)) + if (!ckd_add (&bs1, bs, 1)) bs = bs1; else if (- TYPE_SIGNED (time_t) < rs) rs--; @@ -46,7 +47,7 @@ timespec_sub (struct timespec a, struct timespec b) goto low_overflow; } - if (INT_SUBTRACT_WRAPV (rs, bs, &rs)) + if (ckd_sub (&rs, rs, bs)) { if (0 < bs) { diff --git a/gnulib-tests/unistr/test-u8-mbtoucr.c b/gnulib-tests/unistr/test-u8-mbtoucr.c index 680014b..6628b70 100644 --- a/gnulib-tests/unistr/test-u8-mbtoucr.c +++ b/gnulib-tests/unistr/test-u8-mbtoucr.c @@ -1,9 +1,9 @@ /* Test of u8_mbtoucr() function. - Copyright (C) 2010-2021 Free Software Foundation, Inc. + Copyright (C) 2010-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/unistr/test-u8-uctomb.c b/gnulib-tests/unistr/test-u8-uctomb.c index ed8b077..7e8b518 100644 --- a/gnulib-tests/unistr/test-u8-uctomb.c +++ b/gnulib-tests/unistr/test-u8-uctomb.c @@ -1,9 +1,9 @@ /* Test of u8_uctomb() function. - Copyright (C) 2010-2021 Free Software Foundation, Inc. + Copyright (C) 2010-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/uniwidth/test-uc_width.c b/gnulib-tests/uniwidth/test-uc_width.c index c957d3c..a8bfdc9 100644 --- a/gnulib-tests/uniwidth/test-uc_width.c +++ b/gnulib-tests/uniwidth/test-uc_width.c @@ -1,9 +1,9 @@ /* Test of uc_width() function. - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/uniwidth/test-uc_width2.c b/gnulib-tests/uniwidth/test-uc_width2.c index 2a68670..69395a3 100644 --- a/gnulib-tests/uniwidth/test-uc_width2.c +++ b/gnulib-tests/uniwidth/test-uc_width2.c @@ -1,9 +1,9 @@ /* Test of uc_width() function. - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/uniwidth/test-uc_width2.sh b/gnulib-tests/uniwidth/test-uc_width2.sh index 23866c9..ae6f8f4 100755 --- a/gnulib-tests/uniwidth/test-uc_width2.sh +++ b/gnulib-tests/uniwidth/test-uc_width2.sh @@ -1,7 +1,7 @@ #!/bin/sh tmpfiles="" -trap 'rm -fr $tmpfiles' 1 2 3 15 +trap 'rm -fr $tmpfiles' HUP INT QUIT TERM tmpfiles="$tmpfiles uc_width.out" ${CHECKER} ./test-uc_width2${EXEEXT} | LC_ALL=C tr -d '\r' > uc_width.out @@ -55,7 +55,9 @@ cat > uc_width.ok <<\EOF 07A6..07B0 0 07B1..07EA A 07EB..07F3 0 -07F4..0815 A +07F4..07FC A +07FD 0 +07FE..0815 A 0816..0819 0 081A A 081B..0823 0 @@ -65,8 +67,12 @@ cat > uc_width.ok <<\EOF 0829..082D 0 082E..0858 A 0859..085B 0 -085C..08D3 A -08D4..0902 0 +085C..088F A +0890..0891 0 +0892..0897 A +0898..089F 0 +08A0..08C9 A +08CA..0902 0 0903..0939 A 093A 0 093B A @@ -89,7 +95,9 @@ cat > uc_width.ok <<\EOF 09CD 0 09CE..09E1 A 09E2..09E3 0 -09E4..0A00 A +09E4..09FD A +09FE 0 +09FF..0A00 A 0A01..0A02 0 0A03..0A3B A 0A3C 0 @@ -117,7 +125,9 @@ cat > uc_width.ok <<\EOF 0ACD 0 0ACE..0AE1 A 0AE2..0AE3 0 -0AE4..0B00 A +0AE4..0AF9 A +0AFA..0AFF 0 +0B00 A 0B01 0 0B02..0B3B A 0B3C 0 @@ -127,8 +137,8 @@ cat > uc_width.ok <<\EOF 0B41..0B44 0 0B45..0B4C A 0B4D 0 -0B4E..0B55 A -0B56 0 +0B4E..0B54 A +0B55..0B56 0 0B57..0B61 A 0B62..0B63 0 0B64..0B81 A @@ -139,7 +149,11 @@ cat > uc_width.ok <<\EOF 0BCD 0 0BCE..0BFF A 0C00 0 -0C01..0C3D A +0C01..0C03 A +0C04 0 +0C05..0C3B A +0C3C 0 +0C3D A 0C3E..0C40 0 0C41..0C45 A 0C46..0C48 0 @@ -157,15 +171,19 @@ cat > uc_width.ok <<\EOF 0CCC..0CCD 0 0CCE..0CE1 A 0CE2..0CE3 0 -0CE4..0D00 A -0D01 0 -0D02..0D40 A +0CE4..0CFF A +0D00..0D01 0 +0D02..0D3A A +0D3B..0D3C 0 +0D3D..0D40 A 0D41..0D44 0 0D45..0D4C A 0D4D 0 0D4E..0D61 A 0D62..0D63 0 -0D64..0DC9 A +0D64..0D80 A +0D81 0 +0D82..0DC9 A 0DCA 0 0DCB..0DD1 A 0DD2..0DD4 0 @@ -180,12 +198,10 @@ cat > uc_width.ok <<\EOF 0E4F..0EB0 A 0EB1 0 0EB2..0EB3 A -0EB4..0EB9 0 -0EBA A -0EBB..0EBC 0 +0EB4..0EBC 0 0EBD..0EC7 A -0EC8..0ECD 0 -0ECE..0F17 A +0EC8..0ECE 0 +0ECF..0F17 A 0F18..0F19 0 0F1A..0F34 A 0F35 0 @@ -229,13 +245,14 @@ cat > uc_width.ok <<\EOF 109D 0 109E..10FF A 1100..115F 2 -1160..135C A +1160..11FF 0 +1200..135C A 135D..135F 0 1360..1711 A 1712..1714 0 1715..1731 A -1732..1734 0 -1735..1751 A +1732..1733 0 +1734..1751 A 1752..1753 0 1754..1771 A 1772..1773 0 @@ -250,8 +267,8 @@ cat > uc_width.ok <<\EOF 17D4..17DC A 17DD 0 17DE..180A A -180B..180E 0 -180F..1884 A +180B..180F 0 +1810..1884 A 1885..1886 0 1887..18A8 A 18A9 0 @@ -282,8 +299,8 @@ cat > uc_width.ok <<\EOF 1A7D..1A7E A 1A7F 0 1A80..1AAF A -1AB0..1ABE 0 -1ABF..1AFF A +1AB0..1ACE 0 +1ACF..1AFF A 1B00..1B03 0 1B04..1B33 A 1B34 0 @@ -328,9 +345,7 @@ cat > uc_width.ok <<\EOF 1CF5..1CF7 A 1CF8..1CF9 0 1CFA..1DBF A -1DC0..1DF5 0 -1DF6..1DFA A -1DFB..1DFF 0 +1DC0..1DFF 0 1E00..200A A 200B..200F 0 2010..2029 A @@ -343,9 +358,75 @@ cat > uc_width.ok <<\EOF 20A9 1 20AA..20CF A 20D0..20F0 0 -20F1..2328 A +20F1..2319 A +231A..231B 2 +231C..2328 A 2329..232A 2 -232B..2CEE A +232B..23E8 A +23E9..23EC 2 +23ED..23EF A +23F0 2 +23F1..23F2 A +23F3 2 +23F4..25FC A +25FD..25FE 2 +25FF..2613 A +2614..2615 2 +2616..2647 A +2648..2653 2 +2654..267E A +267F 2 +2680..2692 A +2693 2 +2694..26A0 A +26A1 2 +26A2..26A9 A +26AA..26AB 2 +26AC..26BC A +26BD..26BE 2 +26BF..26C3 A +26C4..26C5 2 +26C6..26CD A +26CE 2 +26CF..26D3 A +26D4 2 +26D5..26E9 A +26EA 2 +26EB..26F1 A +26F2..26F3 2 +26F4 A +26F5 2 +26F6..26F9 A +26FA 2 +26FB..26FC A +26FD 2 +26FE..2704 A +2705 2 +2706..2709 A +270A..270B 2 +270C..2727 A +2728 2 +2729..274B A +274C 2 +274D A +274E 2 +274F..2752 A +2753..2755 2 +2756 A +2757 2 +2758..2794 A +2795..2797 2 +2798..27AF A +27B0 2 +27B1..27BE A +27BF 2 +27C0..2B1A A +2B1B..2B1C 2 +2B1D..2B4F A +2B50 2 +2B51..2B54 A +2B55 2 +2B56..2CEE A 2CEF..2CF1 0 2CF2..2D7E A 2D7F 0 @@ -358,7 +439,9 @@ cat > uc_width.ok <<\EOF 303F A 3040..3098 2 3099..309A 0 -309B..4DBF 2 +309B..3247 2 +3248..324F A +3250..4DBF 2 4DC0..4DFF A 4E00..A4CF 2 A4D0..A66E A @@ -377,23 +460,29 @@ A807..A80A A A80B 0 A80C..A824 A A825..A826 0 -A827..A8C3 A +A827..A82B A +A82C 0 +A82D..A8C3 A A8C4..A8C5 0 A8C6..A8DF A A8E0..A8F1 0 -A8F2..A925 A +A8F2..A8FE A +A8FF 0 +A900..A925 A A926..A92D 0 A92E..A946 A A947..A951 0 -A952..A97F A +A952..A95F A +A960..A97C 2 +A97D..A97F A A980..A982 0 A983..A9B2 A A9B3 0 A9B4..A9B5 A A9B6..A9B9 0 A9BA..A9BB A -A9BC 0 -A9BD..A9E4 A +A9BC..A9BD 0 +A9BE..A9E4 A A9E5 0 A9E6..AA28 A AA29..AA2E 0 @@ -429,7 +518,11 @@ ABE9..ABEC A ABED 0 ABEE..ABFF A AC00..D7A3 2 -D7A4..F8FF A +D7A4..D7AF A +D7B0..D7C6 0 +D7C7..D7CA A +D7CB..D7FB 0 +D7FC..F8FF A F900..FAFF 2 FB00..FB1D A FB1E 0 @@ -463,11 +556,25 @@ FFFC..101FC 1 10A3F 0 10A40..10AE4 1 10AE5..10AE6 0 -10AE7..11000 1 +10AE7..10D23 1 +10D24..10D27 0 +10D28..10EAA 1 +10EAB..10EAC 0 +10EAD..10EFC 1 +10EFD..10EFF 0 +10F00..10F45 1 +10F46..10F50 0 +10F51..10F81 1 +10F82..10F85 0 +10F86..11000 1 11001 0 11002..11037 1 11038..11046 0 -11047..1107E 1 +11047..1106F 1 +11070 0 +11071..11072 1 +11073..11074 0 +11075..1107E 1 1107F..11081 0 11082..110B2 1 110B3..110B6 0 @@ -475,7 +582,11 @@ FFFC..101FC 1 110B9..110BA 0 110BB..110BC 1 110BD 0 -110BE..110FF 1 +110BE..110C1 1 +110C2 0 +110C3..110CC 1 +110CD 0 +110CE..110FF 1 11100..11102 0 11103..11126 1 11127..1112B 0 @@ -487,9 +598,11 @@ FFFC..101FC 1 11180..11181 0 11182..111B5 1 111B6..111BE 0 -111BF..111C9 1 -111CA..111CC 0 -111CD..1122E 1 +111BF..111C8 1 +111C9..111CC 0 +111CD..111CE 1 +111CF 0 +111D0..1122E 1 1122F..11231 0 11232..11233 1 11234 0 @@ -497,14 +610,16 @@ FFFC..101FC 1 11236..11237 0 11238..1123D 1 1123E 0 -1123F..112DE 1 +1123F..11240 1 +11241 0 +11242..112DE 1 112DF 0 112E0..112E2 1 112E3..112EA 0 112EB..112FF 1 11300..11301 0 -11302..1133B 1 -1133C 0 +11302..1133A 1 +1133B..1133C 0 1133D..1133F 1 11340 0 11341..11365 1 @@ -517,7 +632,9 @@ FFFC..101FC 1 11442..11444 0 11445 1 11446 0 -11447..114B2 1 +11447..1145D 1 +1145E 0 +1145F..114B2 1 114B3..114B8 0 114B9 1 114BA 0 @@ -553,7 +670,41 @@ FFFC..101FC 1 11722..11725 0 11726 1 11727..1172B 0 -1172C..11C2F 1 +1172C..1182E 1 +1182F..11837 0 +11838 1 +11839..1183A 0 +1183B..1193A 1 +1193B..1193C 0 +1193D 1 +1193E 0 +1193F..11942 1 +11943 0 +11944..119D3 1 +119D4..119D7 0 +119D8..119D9 1 +119DA..119DB 0 +119DC..119DF 1 +119E0 0 +119E1..11A00 1 +11A01..11A06 0 +11A07..11A08 1 +11A09..11A0A 0 +11A0B..11A32 1 +11A33..11A38 0 +11A39..11A3A 1 +11A3B..11A3E 0 +11A3F..11A46 1 +11A47 0 +11A48..11A50 1 +11A51..11A56 0 +11A57..11A58 1 +11A59..11A5B 0 +11A5C..11A89 1 +11A8A..11A96 0 +11A97 1 +11A98..11A99 0 +11A9A..11C2F 1 11C30..11C36 0 11C37 1 11C38..11C3D 0 @@ -565,17 +716,78 @@ FFFC..101FC 1 11CB2..11CB3 0 11CB4 1 11CB5..11CB6 0 -11CB7..16AEF 1 +11CB7..11D30 1 +11D31..11D36 0 +11D37..11D39 1 +11D3A 0 +11D3B 1 +11D3C..11D3D 0 +11D3E 1 +11D3F..11D45 0 +11D46 1 +11D47 0 +11D48..11D8F 1 +11D90..11D91 0 +11D92..11D94 1 +11D95 0 +11D96 1 +11D97 0 +11D98..11EF2 1 +11EF3..11EF4 0 +11EF5..11EFF 1 +11F00..11F01 0 +11F02..11F35 1 +11F36..11F3A 0 +11F3B..11F3F 1 +11F40 0 +11F41 1 +11F42 0 +11F43..1342F 1 +13430..13440 0 +13441..13446 1 +13447..13455 0 +13456..16AEF 1 16AF0..16AF4 0 16AF5..16B2F 1 16B30..16B36 0 -16B37..16F8E 1 +16B37..16F4E 1 +16F4F 0 +16F50..16F8E 1 16F8F..16F92 0 -16F93..1BC9C 1 +16F93..16FDF 1 +16FE0..16FE3 2 +16FE4 0 +16FE5..16FEF 1 +16FF0..16FF1 2 +16FF2..16FFF 1 +17000..187F7 2 +187F8..187FF 1 +18800..18CD5 2 +18CD6..18CFF 1 +18D00..18D08 2 +18D09..1AFEF 1 +1AFF0..1AFF3 2 +1AFF4 1 +1AFF5..1AFFB 2 +1AFFC 1 +1AFFD..1AFFE 2 +1AFFF 1 +1B000..1B122 2 +1B123..1B14F 1 +1B150..1B152 2 +1B153..1B163 1 +1B164..1B167 2 +1B168..1B16F 1 +1B170..1B2FB 2 +1B2FC..1BC9C 1 1BC9D..1BC9E 0 1BC9F 1 1BCA0..1BCA3 0 -1BCA4..1D166 1 +1BCA4..1CEFF 1 +1CF00..1CF2D 0 +1CF2E..1CF2F 1 +1CF30..1CF46 0 +1CF47..1D166 1 1D167..1D169 0 1D16A..1D172 1 1D173..1D182 0 @@ -607,11 +819,107 @@ FFFC..101FC 1 1E023..1E024 0 1E025 1 1E026..1E02A 0 -1E02B..1E8CF 1 +1E02B..1E08E 1 +1E08F 0 +1E090..1E12F 1 +1E130..1E136 0 +1E137..1E2AD 1 +1E2AE 0 +1E2AF..1E2EB 1 +1E2EC..1E2EF 0 +1E2F0..1E4EB 1 +1E4EC..1E4EF 0 +1E4F0..1E8CF 1 1E8D0..1E8D6 0 1E8D7..1E943 1 1E944..1E94A 0 -1E94B..1FFFF 1 +1E94B..1F003 1 +1F004 2 +1F005..1F0CE 1 +1F0CF 2 +1F0D0..1F18D 1 +1F18E 2 +1F18F..1F190 1 +1F191..1F19A 2 +1F19B..1F1FF 1 +1F200..1F320 2 +1F321..1F32C 1 +1F32D..1F335 2 +1F336 1 +1F337..1F37C 2 +1F37D 1 +1F37E..1F393 2 +1F394..1F39F 1 +1F3A0..1F3CA 2 +1F3CB..1F3CE 1 +1F3CF..1F3D3 2 +1F3D4..1F3DF 1 +1F3E0..1F3F0 2 +1F3F1..1F3F3 1 +1F3F4 2 +1F3F5..1F3F7 1 +1F3F8..1F43E 2 +1F43F 1 +1F440 2 +1F441 1 +1F442..1F4FC 2 +1F4FD..1F4FE 1 +1F4FF..1F53D 2 +1F53E..1F54A 1 +1F54B..1F54E 2 +1F54F 1 +1F550..1F567 2 +1F568..1F579 1 +1F57A 2 +1F57B..1F594 1 +1F595..1F596 2 +1F597..1F5A3 1 +1F5A4 2 +1F5A5..1F5FA 1 +1F5FB..1F64F 2 +1F650..1F67F 1 +1F680..1F6C5 2 +1F6C6..1F6CB 1 +1F6CC 2 +1F6CD..1F6CF 1 +1F6D0..1F6D2 2 +1F6D3..1F6D4 1 +1F6D5..1F6D7 2 +1F6D8..1F6DC 1 +1F6DD..1F6DF 2 +1F6E0..1F6EA 1 +1F6EB..1F6EC 2 +1F6ED..1F6F3 1 +1F6F4..1F6FC 2 +1F6FD..1F7DF 1 +1F7E0..1F7EB 2 +1F7EC..1F7EF 1 +1F7F0 2 +1F7F1..1F90B 1 +1F90C..1F93A 2 +1F93B 1 +1F93C..1F945 2 +1F946 1 +1F947..1F9FF 2 +1FA00..1FA6F 1 +1FA70..1FA74 2 +1FA75..1FA77 1 +1FA78..1FA7C 2 +1FA7D..1FA7F 1 +1FA80..1FA86 2 +1FA87..1FA8F 1 +1FA90..1FAAC 2 +1FAAD..1FAAF 1 +1FAB0..1FABA 2 +1FABB..1FABF 1 +1FAC0..1FAC5 2 +1FAC6..1FACF 1 +1FAD0..1FAD9 2 +1FADA..1FADF 1 +1FAE0..1FAE7 2 +1FAE8..1FAEF 1 +1FAF0..1FAF6 2 +1FAF7..1FFFF 1 20000..3FFFF 2 40000..E0000 1 E0001 0 @@ -622,7 +930,7 @@ E0100..E01EF 0 E01F0..10FFFF 1 EOF -: ${DIFF=diff} +: "${DIFF=diff}" ${DIFF} uc_width.ok uc_width.out result=$? diff --git a/lib/vasnprintf.c b/gnulib-tests/vasnprintf.c similarity index 77% rename from lib/vasnprintf.c rename to gnulib-tests/vasnprintf.c index 12c532e..63a6cd6 100644 --- a/lib/vasnprintf.c +++ b/gnulib-tests/vasnprintf.c @@ -1,5 +1,5 @@ /* vsprintf with automatic memory allocation. - Copyright (C) 1999, 2002-2021 Free Software Foundation, Inc. + Copyright (C) 1999, 2002-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -60,6 +60,14 @@ #ifndef VASNPRINTF # include #endif + +/* As of GCC 11.2.1, gcc -Wanalyzer-too-complex reports that main's + use of CHECK macros expands to code that is too complicated for gcc + -fanalyzer. Suppress the resulting bogus warnings. */ +#if 10 <= __GNUC__ +# pragma GCC diagnostic ignored "-Wanalyzer-null-argument" +#endif + #include /* Specification. */ @@ -75,8 +83,9 @@ #include /* snprintf(), sprintf() */ #include /* abort(), malloc(), realloc(), free() */ #include /* memcpy(), strlen() */ +#include /* mbstate_t, mbrtowc(), mbrlen(), wcrtomb() */ #include /* errno */ -#include /* CHAR_BIT */ +#include /* CHAR_BIT, INT_WIDTH, LONG_WIDTH */ #include /* DBL_MAX_EXP, LDBL_MAX_EXP */ #if HAVE_NL_LANGINFO # include @@ -93,31 +102,30 @@ #include "xsize.h" #include "attribute.h" -#include "verify.h" -#if (NEED_PRINTF_DOUBLE || NEED_PRINTF_LONG_DOUBLE) && !defined IN_LIBINTL +#if NEED_PRINTF_DOUBLE || NEED_PRINTF_LONG_DOUBLE || (NEED_WPRINTF_DIRECTIVE_LA && WIDE_CHAR_VERSION) # include # include "float+.h" #endif -#if (NEED_PRINTF_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE) && !defined IN_LIBINTL +#if NEED_PRINTF_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE # include # include "isnand-nolibm.h" #endif -#if (NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_LONG_DOUBLE) && !defined IN_LIBINTL +#if NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_LONG_DOUBLE || (NEED_WPRINTF_DIRECTIVE_LA && WIDE_CHAR_VERSION) # include # include "isnanl-nolibm.h" # include "fpucw.h" #endif -#if (NEED_PRINTF_DIRECTIVE_A || NEED_PRINTF_DOUBLE) && !defined IN_LIBINTL +#if NEED_PRINTF_DIRECTIVE_A || NEED_PRINTF_DOUBLE # include # include "isnand-nolibm.h" # include "printf-frexp.h" #endif -#if (NEED_PRINTF_DIRECTIVE_A || NEED_PRINTF_LONG_DOUBLE) && !defined IN_LIBINTL +#if NEED_PRINTF_DIRECTIVE_A || NEED_PRINTF_LONG_DOUBLE || (NEED_WPRINTF_DIRECTIVE_LA && WIDE_CHAR_VERSION) # include # include "isnanl-nolibm.h" # include "printf-frexpl.h" @@ -130,8 +138,6 @@ # define VASNPRINTF vasnwprintf # define FCHAR_T wchar_t # define DCHAR_T wchar_t -# define TCHAR_T wchar_t -# define DCHAR_IS_TCHAR 1 # define DIRECTIVE wchar_t_directive # define DIRECTIVES wchar_t_directives # define PRINTF_PARSE wprintf_parse @@ -151,24 +157,32 @@ # endif #endif #if WIDE_CHAR_VERSION - /* TCHAR_T is wchar_t. */ -# define USE_SNPRINTF 1 -# if HAVE_DECL__SNWPRINTF - /* On Windows, the function swprintf() has a different signature than - on Unix; we use the function _snwprintf() or - on mingw - snwprintf() - instead. The mingw function snwprintf() has fewer bugs than the - MSVCRT function _snwprintf(), so prefer that. */ -# if defined __MINGW32__ -# define SNPRINTF snwprintf + /* DCHAR_T is wchar_t. */ +# if HAVE_DECL__SNWPRINTF || (HAVE_SWPRINTF && HAVE_WORKING_SWPRINTF) +# define TCHAR_T wchar_t +# define DCHAR_IS_TCHAR 1 +# define USE_SNPRINTF 1 +# if HAVE_DECL__SNWPRINTF + /* On Windows, the function swprintf() has a different signature than + on Unix; we use the function _snwprintf() or - on mingw - snwprintf() + instead. The mingw function snwprintf() has fewer bugs than the + MSVCRT function _snwprintf(), so prefer that. */ +# if defined __MINGW32__ +# define SNPRINTF snwprintf +# else +# define SNPRINTF _snwprintf +# define USE_MSVC__SNPRINTF 1 +# endif # else -# define SNPRINTF _snwprintf -# define USE_MSVC__SNPRINTF 1 + /* Unix. */ +# define SNPRINTF swprintf # endif # else - /* Unix. */ -# define SNPRINTF swprintf + /* Old platforms such as NetBSD 3.0, OpenBSD 3.8, HP-UX 11.00, IRIX 6.5. */ +# define TCHAR_T char # endif -#else +#endif +#if !WIDE_CHAR_VERSION || !DCHAR_IS_TCHAR /* TCHAR_T is char. */ /* Use snprintf if it exists under the name 'snprintf' or '_snprintf'. But don't use it on BeOS, since BeOS snprintf produces no output if the @@ -233,7 +247,7 @@ local_strnlen (const char *string, size_t maxlen) # endif #endif -#if (((!USE_SNPRINTF || !HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF) && WIDE_CHAR_VERSION) || ((!USE_SNPRINTF || !HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF || (NEED_PRINTF_DIRECTIVE_LS && !defined IN_LIBINTL)) && !WIDE_CHAR_VERSION && DCHAR_IS_TCHAR)) && HAVE_WCHAR_T +#if (((!USE_SNPRINTF || WIDE_CHAR_VERSION || !HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF) && WIDE_CHAR_VERSION) || ((!USE_SNPRINTF || !HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF || NEED_PRINTF_DIRECTIVE_LS) && !WIDE_CHAR_VERSION && DCHAR_IS_TCHAR)) && HAVE_WCHAR_T # if HAVE_WCSLEN # define local_wcslen wcslen # else @@ -256,8 +270,8 @@ local_wcslen (const wchar_t *s) # endif #endif -#if (!USE_SNPRINTF || !HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF) && HAVE_WCHAR_T && WIDE_CHAR_VERSION -# if HAVE_WCSNLEN +#if (!USE_SNPRINTF || (WIDE_CHAR_VERSION && DCHAR_IS_TCHAR) || !HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF) && HAVE_WCHAR_T && WIDE_CHAR_VERSION +# if HAVE_WCSNLEN && HAVE_DECL_WCSNLEN # define local_wcsnlen wcsnlen # else # ifndef local_wcsnlen_defined @@ -275,7 +289,7 @@ local_wcsnlen (const wchar_t *s, size_t maxlen) # endif #endif -#if (((!USE_SNPRINTF || !HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF || (NEED_PRINTF_DIRECTIVE_LS && !defined IN_LIBINTL) || ENABLE_WCHAR_FALLBACK) && HAVE_WCHAR_T) || (ENABLE_WCHAR_FALLBACK && HAVE_WINT_T)) && !WIDE_CHAR_VERSION +#if (((!USE_SNPRINTF || !HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF || NEED_PRINTF_DIRECTIVE_LS || ENABLE_WCHAR_FALLBACK) && HAVE_WCHAR_T) || ((NEED_PRINTF_DIRECTIVE_LC || ENABLE_WCHAR_FALLBACK) && HAVE_WINT_T)) && !WIDE_CHAR_VERSION # if ENABLE_WCHAR_FALLBACK static size_t wctomb_fallback (char *s, wchar_t wc) @@ -343,7 +357,7 @@ local_wctomb (char *s, wchar_t wc) # endif #endif -#if (NEED_PRINTF_DIRECTIVE_A || NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_LONG_DOUBLE || NEED_PRINTF_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE) && !defined IN_LIBINTL +#if NEED_PRINTF_DIRECTIVE_A || NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_LONG_DOUBLE || NEED_PRINTF_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE || (NEED_WPRINTF_DIRECTIVE_LA && WIDE_CHAR_VERSION) /* Determine the decimal-point character according to the current locale. */ # ifndef decimal_point_char_defined # define decimal_point_char_defined 1 @@ -370,7 +384,7 @@ decimal_point_char (void) # endif #endif -#if NEED_PRINTF_INFINITE_DOUBLE && !NEED_PRINTF_DOUBLE && !defined IN_LIBINTL +#if NEED_PRINTF_INFINITE_DOUBLE && !NEED_PRINTF_DOUBLE /* Equivalent to !isfinite(x) || x == 0, but does not require libm. */ static int @@ -381,7 +395,7 @@ is_infinite_or_zero (double x) #endif -#if NEED_PRINTF_INFINITE_LONG_DOUBLE && !NEED_PRINTF_LONG_DOUBLE && !defined IN_LIBINTL +#if NEED_PRINTF_INFINITE_LONG_DOUBLE && !NEED_PRINTF_LONG_DOUBLE /* Equivalent to !isfinite(x) || x == 0, but does not require libm. */ static int @@ -392,7 +406,7 @@ is_infinite_or_zerol (long double x) #endif -#if (NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_DOUBLE) && !defined IN_LIBINTL +#if NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_DOUBLE /* Converting 'long double' to decimal without rare rounding bugs requires real bignums. We use the naming conventions of GNU gmp, but vastly simpler @@ -400,11 +414,11 @@ is_infinite_or_zerol (long double x) typedef unsigned int mp_limb_t; # define GMP_LIMB_BITS 32 -verify (sizeof (mp_limb_t) * CHAR_BIT == GMP_LIMB_BITS); +static_assert (sizeof (mp_limb_t) * CHAR_BIT == GMP_LIMB_BITS); typedef unsigned long long mp_twolimb_t; # define GMP_TWOLIMB_BITS 64 -verify (sizeof (mp_twolimb_t) * CHAR_BIT == GMP_TWOLIMB_BITS); +static_assert (sizeof (mp_twolimb_t) * CHAR_BIT == GMP_TWOLIMB_BITS); /* Representation of a bignum >= 0. */ typedef struct @@ -907,13 +921,20 @@ divide (mpn_t a, mpn_t b, mpn_t *q) q_ptr[q_len++] = 1; } keep_q: - if (tmp_roomptr != NULL) - free (tmp_roomptr); + free (tmp_roomptr); q->limbs = q_ptr; q->nlimbs = q_len; return roomptr; } +/* Avoid pointless GCC warning "argument 1 value '18446744073709551615' exceeds + maximum object size 9223372036854775807", triggered by the use of xsum as + argument of malloc. */ +# if __GNUC__ >= 7 +# pragma GCC diagnostic push +# pragma GCC diagnostic ignored "-Walloc-size-larger-than=" +# endif + /* Convert a bignum a >= 0, multiplied with 10^extra_zeroes, to decimal representation. Destroys the contents of a. @@ -970,6 +991,10 @@ convert_to_decimal (mpn_t a, size_t extra_zeroes) return c_ptr; } +# if __GNUC__ >= 7 +# pragma GCC diagnostic pop +# endif + # if NEED_PRINTF_LONG_DOUBLE /* Assuming x is finite and >= 0: @@ -1164,8 +1189,6 @@ scale10_round_decimal_decoded (int e, mpn_t m, void *memory, int n) void *z_memory; char *digits; - if (memory == NULL) - return NULL; /* x = 2^e * m, hence y = round (2^e * 10^n * m) = round (2^(e+n) * 5^n * m) = round (2^s * 5^n * m). */ @@ -1373,10 +1396,13 @@ scale10_round_decimal_decoded (int e, mpn_t m, void *memory, int n) static char * scale10_round_decimal_long_double (long double x, int n) { - int e IF_LINT(= 0); + int e; mpn_t m; void *memory = decode_long_double (x, &e, &m); - return scale10_round_decimal_decoded (e, m, memory, n); + if (memory != NULL) + return scale10_round_decimal_decoded (e, m, memory, n); + else + return NULL; } # endif @@ -1391,10 +1417,13 @@ scale10_round_decimal_long_double (long double x, int n) static char * scale10_round_decimal_double (double x, int n) { - int e IF_LINT(= 0); + int e; mpn_t m; void *memory = decode_double (x, &e, &m); - return scale10_round_decimal_decoded (e, m, memory, n); + if (memory != NULL) + return scale10_round_decimal_decoded (e, m, memory, n); + else + return NULL; } # endif @@ -1597,7 +1626,7 @@ is_borderline (const char *digits, size_t precision) #endif -#if !USE_SNPRINTF || !HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF +#if !USE_SNPRINTF || (WIDE_CHAR_VERSION && DCHAR_IS_TCHAR) || !HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF /* Use a different function name, to make it possible that the 'wchar_t' parametrization and the 'char' parametrization get compiled in the same @@ -1620,24 +1649,156 @@ MAX_ROOM_NEEDED (const arguments *ap, size_t arg_index, FCHAR_T conversion, switch (conversion) { case 'd': case 'i': case 'u': - if (type == TYPE_LONGLONGINT || type == TYPE_ULONGLONGINT) - tmp_length = - (unsigned int) (sizeof (unsigned long long) * CHAR_BIT - * 0.30103 /* binary -> decimal */ - ) - + 1; /* turn floor into ceil */ - else if (type == TYPE_LONGINT || type == TYPE_ULONGINT) - tmp_length = - (unsigned int) (sizeof (unsigned long) * CHAR_BIT - * 0.30103 /* binary -> decimal */ - ) - + 1; /* turn floor into ceil */ - else - tmp_length = - (unsigned int) (sizeof (unsigned int) * CHAR_BIT - * 0.30103 /* binary -> decimal */ - ) - + 1; /* turn floor into ceil */ + switch (type) + { + default: + tmp_length = + (unsigned int) (sizeof (unsigned int) * CHAR_BIT + * 0.30103 /* binary -> decimal */ + ) + + 1; /* turn floor into ceil */ + break; + case TYPE_LONGINT: + tmp_length = + (unsigned int) (sizeof (long int) * CHAR_BIT + * 0.30103 /* binary -> decimal */ + ) + + 1; /* turn floor into ceil */ + break; + case TYPE_ULONGINT: + tmp_length = + (unsigned int) (sizeof (unsigned long int) * CHAR_BIT + * 0.30103 /* binary -> decimal */ + ) + + 1; /* turn floor into ceil */ + break; + case TYPE_LONGLONGINT: + tmp_length = + (unsigned int) (sizeof (long long int) * CHAR_BIT + * 0.30103 /* binary -> decimal */ + ) + + 1; /* turn floor into ceil */ + break; + case TYPE_ULONGLONGINT: + tmp_length = + (unsigned int) (sizeof (unsigned long long int) * CHAR_BIT + * 0.30103 /* binary -> decimal */ + ) + + 1; /* turn floor into ceil */ + break; + case TYPE_INT8_T: + tmp_length = + (unsigned int) (sizeof (int8_t) * CHAR_BIT + * 0.30103 /* binary -> decimal */ + ) + + 1; /* turn floor into ceil */ + break; + case TYPE_UINT8_T: + tmp_length = + (unsigned int) (sizeof (uint8_t) * CHAR_BIT + * 0.30103 /* binary -> decimal */ + ) + + 1; /* turn floor into ceil */ + break; + case TYPE_INT16_T: + tmp_length = + (unsigned int) (sizeof (int16_t) * CHAR_BIT + * 0.30103 /* binary -> decimal */ + ) + + 1; /* turn floor into ceil */ + break; + case TYPE_UINT16_T: + tmp_length = + (unsigned int) (sizeof (uint16_t) * CHAR_BIT + * 0.30103 /* binary -> decimal */ + ) + + 1; /* turn floor into ceil */ + break; + case TYPE_INT32_T: + tmp_length = + (unsigned int) (sizeof (int32_t) * CHAR_BIT + * 0.30103 /* binary -> decimal */ + ) + + 1; /* turn floor into ceil */ + break; + case TYPE_UINT32_T: + tmp_length = + (unsigned int) (sizeof (uint32_t) * CHAR_BIT + * 0.30103 /* binary -> decimal */ + ) + + 1; /* turn floor into ceil */ + break; + case TYPE_INT64_T: + tmp_length = + (unsigned int) (sizeof (int64_t) * CHAR_BIT + * 0.30103 /* binary -> decimal */ + ) + + 1; /* turn floor into ceil */ + break; + case TYPE_UINT64_T: + tmp_length = + (unsigned int) (sizeof (uint64_t) * CHAR_BIT + * 0.30103 /* binary -> decimal */ + ) + + 1; /* turn floor into ceil */ + break; + case TYPE_INT_FAST8_T: + tmp_length = + (unsigned int) (sizeof (int_fast8_t) * CHAR_BIT + * 0.30103 /* binary -> decimal */ + ) + + 1; /* turn floor into ceil */ + break; + case TYPE_UINT_FAST8_T: + tmp_length = + (unsigned int) (sizeof (uint_fast8_t) * CHAR_BIT + * 0.30103 /* binary -> decimal */ + ) + + 1; /* turn floor into ceil */ + break; + case TYPE_INT_FAST16_T: + tmp_length = + (unsigned int) (sizeof (int_fast16_t) * CHAR_BIT + * 0.30103 /* binary -> decimal */ + ) + + 1; /* turn floor into ceil */ + break; + case TYPE_UINT_FAST16_T: + tmp_length = + (unsigned int) (sizeof (uint_fast16_t) * CHAR_BIT + * 0.30103 /* binary -> decimal */ + ) + + 1; /* turn floor into ceil */ + break; + case TYPE_INT_FAST32_T: + tmp_length = + (unsigned int) (sizeof (int_fast32_t) * CHAR_BIT + * 0.30103 /* binary -> decimal */ + ) + + 1; /* turn floor into ceil */ + break; + case TYPE_UINT_FAST32_T: + tmp_length = + (unsigned int) (sizeof (uint_fast32_t) * CHAR_BIT + * 0.30103 /* binary -> decimal */ + ) + + 1; /* turn floor into ceil */ + break; + case TYPE_INT_FAST64_T: + tmp_length = + (unsigned int) (sizeof (int_fast64_t) * CHAR_BIT + * 0.30103 /* binary -> decimal */ + ) + + 1; /* turn floor into ceil */ + break; + case TYPE_UINT_FAST64_T: + tmp_length = + (unsigned int) (sizeof (uint_fast64_t) * CHAR_BIT + * 0.30103 /* binary -> decimal */ + ) + + 1; /* turn floor into ceil */ + break; + } if (tmp_length < precision) tmp_length = precision; /* Multiply by 2, as an estimate for FLAG_GROUP. */ @@ -1646,25 +1807,156 @@ MAX_ROOM_NEEDED (const arguments *ap, size_t arg_index, FCHAR_T conversion, tmp_length = xsum (tmp_length, 1); break; + case 'b': + #if SUPPORT_GNU_PRINTF_DIRECTIVES \ + || (__GLIBC__ + (__GLIBC_MINOR__ >= 35) > 2) + case 'B': + #endif + switch (type) + { + default: + tmp_length = + (unsigned int) (sizeof (unsigned int) * CHAR_BIT) + + 1; /* turn floor into ceil */ + break; + case TYPE_ULONGINT: + tmp_length = + (unsigned int) (sizeof (unsigned long int) * CHAR_BIT) + + 1; /* turn floor into ceil */ + break; + case TYPE_ULONGLONGINT: + tmp_length = + (unsigned int) (sizeof (unsigned long long int) * CHAR_BIT) + + 1; /* turn floor into ceil */ + break; + case TYPE_UINT8_T: + tmp_length = + (unsigned int) (sizeof (uint8_t) * CHAR_BIT) + + 1; /* turn floor into ceil */ + break; + case TYPE_UINT16_T: + tmp_length = + (unsigned int) (sizeof (uint16_t) * CHAR_BIT) + + 1; /* turn floor into ceil */ + break; + case TYPE_UINT32_T: + tmp_length = + (unsigned int) (sizeof (uint32_t) * CHAR_BIT) + + 1; /* turn floor into ceil */ + break; + case TYPE_UINT64_T: + tmp_length = + (unsigned int) (sizeof (uint64_t) * CHAR_BIT) + + 1; /* turn floor into ceil */ + break; + case TYPE_UINT_FAST8_T: + tmp_length = + (unsigned int) (sizeof (uint_fast8_t) * CHAR_BIT) + + 1; /* turn floor into ceil */ + break; + case TYPE_UINT_FAST16_T: + tmp_length = + (unsigned int) (sizeof (uint_fast16_t) * CHAR_BIT) + + 1; /* turn floor into ceil */ + break; + case TYPE_UINT_FAST32_T: + tmp_length = + (unsigned int) (sizeof (uint_fast32_t) * CHAR_BIT) + + 1; /* turn floor into ceil */ + break; + case TYPE_UINT_FAST64_T: + tmp_length = + (unsigned int) (sizeof (uint_fast64_t) * CHAR_BIT) + + 1; /* turn floor into ceil */ + break; + } + if (tmp_length < precision) + tmp_length = precision; + /* Add 2, to account for a prefix from the alternate form. */ + tmp_length = xsum (tmp_length, 2); + break; + case 'o': - if (type == TYPE_LONGLONGINT || type == TYPE_ULONGLONGINT) - tmp_length = - (unsigned int) (sizeof (unsigned long long) * CHAR_BIT - * 0.333334 /* binary -> octal */ - ) - + 1; /* turn floor into ceil */ - else if (type == TYPE_LONGINT || type == TYPE_ULONGINT) - tmp_length = - (unsigned int) (sizeof (unsigned long) * CHAR_BIT - * 0.333334 /* binary -> octal */ - ) - + 1; /* turn floor into ceil */ - else - tmp_length = - (unsigned int) (sizeof (unsigned int) * CHAR_BIT - * 0.333334 /* binary -> octal */ - ) - + 1; /* turn floor into ceil */ + switch (type) + { + default: + tmp_length = + (unsigned int) (sizeof (unsigned int) * CHAR_BIT + * 0.333334 /* binary -> octal */ + ) + + 1; /* turn floor into ceil */ + break; + case TYPE_ULONGINT: + tmp_length = + (unsigned int) (sizeof (unsigned long int) * CHAR_BIT + * 0.333334 /* binary -> octal */ + ) + + 1; /* turn floor into ceil */ + break; + case TYPE_ULONGLONGINT: + tmp_length = + (unsigned int) (sizeof (unsigned long long int) * CHAR_BIT + * 0.333334 /* binary -> octal */ + ) + + 1; /* turn floor into ceil */ + break; + case TYPE_UINT8_T: + tmp_length = + (unsigned int) (sizeof (uint8_t) * CHAR_BIT + * 0.333334 /* binary -> octal */ + ) + + 1; /* turn floor into ceil */ + break; + case TYPE_UINT16_T: + tmp_length = + (unsigned int) (sizeof (uint16_t) * CHAR_BIT + * 0.333334 /* binary -> octal */ + ) + + 1; /* turn floor into ceil */ + break; + case TYPE_UINT32_T: + tmp_length = + (unsigned int) (sizeof (uint32_t) * CHAR_BIT + * 0.333334 /* binary -> octal */ + ) + + 1; /* turn floor into ceil */ + break; + case TYPE_UINT64_T: + tmp_length = + (unsigned int) (sizeof (uint64_t) * CHAR_BIT + * 0.333334 /* binary -> octal */ + ) + + 1; /* turn floor into ceil */ + break; + case TYPE_UINT_FAST8_T: + tmp_length = + (unsigned int) (sizeof (uint_fast8_t) * CHAR_BIT + * 0.333334 /* binary -> octal */ + ) + + 1; /* turn floor into ceil */ + break; + case TYPE_UINT_FAST16_T: + tmp_length = + (unsigned int) (sizeof (uint_fast16_t) * CHAR_BIT + * 0.333334 /* binary -> octal */ + ) + + 1; /* turn floor into ceil */ + break; + case TYPE_UINT_FAST32_T: + tmp_length = + (unsigned int) (sizeof (uint_fast32_t) * CHAR_BIT + * 0.333334 /* binary -> octal */ + ) + + 1; /* turn floor into ceil */ + break; + case TYPE_UINT_FAST64_T: + tmp_length = + (unsigned int) (sizeof (uint_fast64_t) * CHAR_BIT + * 0.333334 /* binary -> octal */ + ) + + 1; /* turn floor into ceil */ + break; + } if (tmp_length < precision) tmp_length = precision; /* Add 1, to account for a leading sign. */ @@ -1672,27 +1964,89 @@ MAX_ROOM_NEEDED (const arguments *ap, size_t arg_index, FCHAR_T conversion, break; case 'x': case 'X': - if (type == TYPE_LONGLONGINT || type == TYPE_ULONGLONGINT) - tmp_length = - (unsigned int) (sizeof (unsigned long long) * CHAR_BIT - * 0.25 /* binary -> hexadecimal */ - ) - + 1; /* turn floor into ceil */ - else if (type == TYPE_LONGINT || type == TYPE_ULONGINT) - tmp_length = - (unsigned int) (sizeof (unsigned long) * CHAR_BIT - * 0.25 /* binary -> hexadecimal */ - ) - + 1; /* turn floor into ceil */ - else - tmp_length = - (unsigned int) (sizeof (unsigned int) * CHAR_BIT - * 0.25 /* binary -> hexadecimal */ - ) - + 1; /* turn floor into ceil */ + switch (type) + { + default: + tmp_length = + (unsigned int) (sizeof (unsigned int) * CHAR_BIT + * 0.25 /* binary -> hexadecimal */ + ) + + 1; /* turn floor into ceil */ + break; + case TYPE_ULONGINT: + tmp_length = + (unsigned int) (sizeof (unsigned long int) * CHAR_BIT + * 0.25 /* binary -> hexadecimal */ + ) + + 1; /* turn floor into ceil */ + break; + case TYPE_ULONGLONGINT: + tmp_length = + (unsigned int) (sizeof (unsigned long long int) * CHAR_BIT + * 0.25 /* binary -> hexadecimal */ + ) + + 1; /* turn floor into ceil */ + break; + case TYPE_UINT8_T: + tmp_length = + (unsigned int) (sizeof (uint8_t) * CHAR_BIT + * 0.25 /* binary -> hexadecimal */ + ) + + 1; /* turn floor into ceil */ + break; + case TYPE_UINT16_T: + tmp_length = + (unsigned int) (sizeof (uint16_t) * CHAR_BIT + * 0.25 /* binary -> hexadecimal */ + ) + + 1; /* turn floor into ceil */ + break; + case TYPE_UINT32_T: + tmp_length = + (unsigned int) (sizeof (uint32_t) * CHAR_BIT + * 0.25 /* binary -> hexadecimal */ + ) + + 1; /* turn floor into ceil */ + break; + case TYPE_UINT64_T: + tmp_length = + (unsigned int) (sizeof (uint64_t) * CHAR_BIT + * 0.25 /* binary -> hexadecimal */ + ) + + 1; /* turn floor into ceil */ + break; + case TYPE_UINT_FAST8_T: + tmp_length = + (unsigned int) (sizeof (uint_fast8_t) * CHAR_BIT + * 0.25 /* binary -> hexadecimal */ + ) + + 1; /* turn floor into ceil */ + break; + case TYPE_UINT_FAST16_T: + tmp_length = + (unsigned int) (sizeof (uint_fast16_t) * CHAR_BIT + * 0.25 /* binary -> hexadecimal */ + ) + + 1; /* turn floor into ceil */ + break; + case TYPE_UINT_FAST32_T: + tmp_length = + (unsigned int) (sizeof (uint_fast32_t) * CHAR_BIT + * 0.25 /* binary -> hexadecimal */ + ) + + 1; /* turn floor into ceil */ + break; + case TYPE_UINT_FAST64_T: + tmp_length = + (unsigned int) (sizeof (uint_fast64_t) * CHAR_BIT + * 0.25 /* binary -> hexadecimal */ + ) + + 1; /* turn floor into ceil */ + break; + } if (tmp_length < precision) tmp_length = precision; - /* Add 2, to account for a leading sign or alternate form. */ + /* Add 2, to account for a prefix from the alternate form. */ tmp_length = xsum (tmp_length, 2); break; @@ -1865,11 +2219,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, free (a.arg); if (PRINTF_FETCHARGS (args, &a) < 0) - { - CLEANUP (); - errno = EINVAL; - return NULL; - } + goto fail_1_with_EINVAL; { size_t buf_neededlength; @@ -1905,19 +2255,12 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, buf_malloced = buf; } - if (resultbuf != NULL) - { - result = resultbuf; - allocated = *lengthp; - } - else - { - result = NULL; - allocated = 0; - } + result = resultbuf; + allocated = (resultbuf != NULL ? *lengthp : 0); length = 0; /* Invariants: - result is either == resultbuf or == NULL or malloc-allocated. + result is either == resultbuf or malloc-allocated. + If result == NULL, resultbuf is == NULL as well. If length > 0, then result != NULL. */ /* Ensures that allocated >= needed. Aborts through a jump to @@ -1934,7 +2277,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, memory_size = xtimes (allocated, sizeof (DCHAR_T)); \ if (size_overflow_p (memory_size)) \ oom_statement \ - if (result == resultbuf || result == NULL) \ + if (result == resultbuf) \ memory = (DCHAR_T *) malloc (memory_size); \ else \ memory = (DCHAR_T *) realloc (result, memory_size); \ @@ -2009,6 +2352,30 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, case TYPE_COUNT_LONGLONGINT_POINTER: *a.arg[dp->arg_index].a.a_count_longlongint_pointer = length; break; + case TYPE_COUNT_INT8_T_POINTER: + *a.arg[dp->arg_index].a.a_count_int8_t_pointer = length; + break; + case TYPE_COUNT_INT16_T_POINTER: + *a.arg[dp->arg_index].a.a_count_int16_t_pointer = length; + break; + case TYPE_COUNT_INT32_T_POINTER: + *a.arg[dp->arg_index].a.a_count_int32_t_pointer = length; + break; + case TYPE_COUNT_INT64_T_POINTER: + *a.arg[dp->arg_index].a.a_count_int64_t_pointer = length; + break; + case TYPE_COUNT_INT_FAST8_T_POINTER: + *a.arg[dp->arg_index].a.a_count_int_fast8_t_pointer = length; + break; + case TYPE_COUNT_INT_FAST16_T_POINTER: + *a.arg[dp->arg_index].a.a_count_int_fast16_t_pointer = length; + break; + case TYPE_COUNT_INT_FAST32_T_POINTER: + *a.arg[dp->arg_index].a.a_count_int_fast32_t_pointer = length; + break; + case TYPE_COUNT_INT_FAST64_T_POINTER: + *a.arg[dp->arg_index].a.a_count_int_fast64_t_pointer = length; + break; default: abort (); } @@ -2104,15 +2471,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, if (count == 0) break; if (count < 0) - { - if (!(result == resultbuf || result == NULL)) - free (result); - if (buf_malloced != NULL) - free (buf_malloced); - CLEANUP (); - errno = EILSEQ; - return NULL; - } + goto fail_with_EILSEQ; arg_end += count; characters++; } @@ -2129,15 +2488,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, if (count == 0) break; if (count < 0) - { - if (!(result == resultbuf || result == NULL)) - free (result); - if (buf_malloced != NULL) - free (buf_malloced); - CLEANUP (); - errno = EILSEQ; - return NULL; - } + goto fail_with_EILSEQ; arg_end += count; characters++; } @@ -2150,7 +2501,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, characters = 0; } - if (characters < width && !(dp->flags & FLAG_LEFT)) + if (characters < width && !(flags & FLAG_LEFT)) { size_t n = width - characters; ENSURE_ALLOCATION (xsum (length, n)); @@ -2183,14 +2534,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, converted, &converted_len); # endif if (converted == NULL) - { - if (!(result == resultbuf || result == NULL)) - free (result); - if (buf_malloced != NULL) - free (buf_malloced); - CLEANUP (); - return NULL; - } + goto fail_with_errno; if (converted != result + length) { ENSURE_ALLOCATION_ELSE (xsum (length, converted_len), @@ -2202,7 +2546,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, } # endif - if (characters < width && (dp->flags & FLAG_LEFT)) + if (characters < width && (flags & FLAG_LEFT)) { size_t n = width - characters; ENSURE_ALLOCATION (xsum (length, n)); @@ -2229,15 +2573,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, if (count == 0) break; if (count < 0) - { - if (!(result == resultbuf || result == NULL)) - free (result); - if (buf_malloced != NULL) - free (buf_malloced); - CLEANUP (); - errno = EILSEQ; - return NULL; - } + goto fail_with_EILSEQ; arg_end += count; characters++; } @@ -2254,15 +2590,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, if (count == 0) break; if (count < 0) - { - if (!(result == resultbuf || result == NULL)) - free (result); - if (buf_malloced != NULL) - free (buf_malloced); - CLEANUP (); - errno = EILSEQ; - return NULL; - } + goto fail_with_EILSEQ; arg_end += count; characters++; } @@ -2275,7 +2603,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, characters = 0; } - if (characters < width && !(dp->flags & FLAG_LEFT)) + if (characters < width && !(flags & FLAG_LEFT)) { size_t n = width - characters; ENSURE_ALLOCATION (xsum (length, n)); @@ -2308,14 +2636,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, converted, &converted_len); # endif if (converted == NULL) - { - if (!(result == resultbuf || result == NULL)) - free (result); - if (buf_malloced != NULL) - free (buf_malloced); - CLEANUP (); - return NULL; - } + goto fail_with_errno; if (converted != result + length) { ENSURE_ALLOCATION_ELSE (xsum (length, converted_len), @@ -2327,7 +2648,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, } # endif - if (characters < width && (dp->flags & FLAG_LEFT)) + if (characters < width && (flags & FLAG_LEFT)) { size_t n = width - characters; ENSURE_ALLOCATION (xsum (length, n)); @@ -2354,15 +2675,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, if (count == 0) break; if (count < 0) - { - if (!(result == resultbuf || result == NULL)) - free (result); - if (buf_malloced != NULL) - free (buf_malloced); - CLEANUP (); - errno = EILSEQ; - return NULL; - } + goto fail_with_EILSEQ; arg_end += count; characters++; } @@ -2379,15 +2692,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, if (count == 0) break; if (count < 0) - { - if (!(result == resultbuf || result == NULL)) - free (result); - if (buf_malloced != NULL) - free (buf_malloced); - CLEANUP (); - errno = EILSEQ; - return NULL; - } + goto fail_with_EILSEQ; arg_end += count; characters++; } @@ -2400,7 +2705,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, characters = 0; } - if (characters < width && !(dp->flags & FLAG_LEFT)) + if (characters < width && !(flags & FLAG_LEFT)) { size_t n = width - characters; ENSURE_ALLOCATION (xsum (length, n)); @@ -2433,14 +2738,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, converted, &converted_len); # endif if (converted == NULL) - { - if (!(result == resultbuf || result == NULL)) - free (result); - if (buf_malloced != NULL) - free (buf_malloced); - CLEANUP (); - return NULL; - } + goto fail_with_errno; if (converted != result + length) { ENSURE_ALLOCATION_ELSE (xsum (length, converted_len), @@ -2452,7 +2750,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, } # endif - if (characters < width && (dp->flags & FLAG_LEFT)) + if (characters < width && (flags & FLAG_LEFT)) { size_t n = width - characters; ENSURE_ALLOCATION (xsum (length, n)); @@ -2467,7 +2765,150 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, } } #endif -#if (!USE_SNPRINTF || !HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF || (NEED_PRINTF_DIRECTIVE_LS && !defined IN_LIBINTL) || ENABLE_WCHAR_FALLBACK) && HAVE_WCHAR_T +#if WIDE_CHAR_VERSION && !DCHAR_IS_TCHAR + else if ((dp->conversion == 's' + && a.arg[dp->arg_index].type == TYPE_WIDE_STRING) + || (dp->conversion == 'c' + && a.arg[dp->arg_index].type == TYPE_WIDE_CHAR)) + { + /* %ls or %lc in vasnwprintf. See the specification of + fwprintf. */ + /* It would be silly to use snprintf ("%ls", ...) and then + convert back the result from a char[] to a wchar_t[]. + Instead, just copy the argument wchar_t[] to the result. */ + int flags = dp->flags; + size_t width; + + width = 0; + if (dp->width_start != dp->width_end) + { + if (dp->width_arg_index != ARG_NONE) + { + int arg; + + if (!(a.arg[dp->width_arg_index].type == TYPE_INT)) + abort (); + arg = a.arg[dp->width_arg_index].a.a_int; + width = arg; + if (arg < 0) + { + /* "A negative field width is taken as a '-' flag + followed by a positive field width." */ + flags |= FLAG_LEFT; + width = -width; + } + } + else + { + const FCHAR_T *digitp = dp->width_start; + + do + width = xsum (xtimes (width, 10), *digitp++ - '0'); + while (digitp != dp->width_end); + } + } + + { + const wchar_t *ls_arg; + wchar_t lc_arg[1]; + size_t characters; + + if (dp->conversion == 's') + { + int has_precision; + size_t precision; + + has_precision = 0; + precision = 6; + if (dp->precision_start != dp->precision_end) + { + if (dp->precision_arg_index != ARG_NONE) + { + int arg; + + if (!(a.arg[dp->precision_arg_index].type == TYPE_INT)) + abort (); + arg = a.arg[dp->precision_arg_index].a.a_int; + /* "A negative precision is taken as if the precision + were omitted." */ + if (arg >= 0) + { + precision = arg; + has_precision = 1; + } + } + else + { + const FCHAR_T *digitp = dp->precision_start + 1; + + precision = 0; + while (digitp != dp->precision_end) + precision = xsum (xtimes (precision, 10), *digitp++ - '0'); + has_precision = 1; + } + } + + ls_arg = a.arg[dp->arg_index].a.a_wide_string; + + if (has_precision) + { + /* Use only at most PRECISION wide characters, from + the left. */ + const wchar_t *ls_arg_end; + + ls_arg_end = ls_arg; + characters = 0; + for (; precision > 0; precision--) + { + if (*ls_arg_end == 0) + /* Found the terminating null wide character. */ + break; + ls_arg_end++; + characters++; + } + } + else + { + /* Use the entire string, and count the number of wide + characters. */ + characters = local_wcslen (ls_arg); + } + } + else /* dp->conversion == 'c' */ + { + lc_arg[0] = (wchar_t) a.arg[dp->arg_index].a.a_wide_char; + ls_arg = lc_arg; + characters = 1; + } + + { + size_t total = (characters < width ? width : characters); + ENSURE_ALLOCATION (xsum (length, total)); + + if (characters < width && !(flags & FLAG_LEFT)) + { + size_t n = width - characters; + DCHAR_SET (result + length, ' ', n); + length += n; + } + + if (characters > 0) + { + DCHAR_CPY (result + length, ls_arg, characters); + length += characters; + } + + if (characters < width && (flags & FLAG_LEFT)) + { + size_t n = width - characters; + DCHAR_SET (result + length, ' ', n); + length += n; + } + } + } + } +#endif +#if (!USE_SNPRINTF || WIDE_CHAR_VERSION || !HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF || NEED_PRINTF_DIRECTIVE_LS || ENABLE_WCHAR_FALLBACK) && HAVE_WCHAR_T else if (dp->conversion == 's' # if WIDE_CHAR_VERSION && a.arg[dp->arg_index].type != TYPE_WIDE_STRING @@ -2582,16 +3023,8 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, /* Found the terminating NUL. */ break; if (count < 0) - { - /* Invalid or incomplete multibyte character. */ - if (!(result == resultbuf || result == NULL)) - free (result); - if (buf_malloced != NULL) - free (buf_malloced); - CLEANUP (); - errno = EILSEQ; - return NULL; - } + /* Invalid or incomplete multibyte character. */ + goto fail_with_EILSEQ; arg_end += count; characters++; } @@ -2618,16 +3051,8 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, /* Found the terminating NUL. */ break; if (count < 0) - { - /* Invalid or incomplete multibyte character. */ - if (!(result == resultbuf || result == NULL)) - free (result); - if (buf_malloced != NULL) - free (buf_malloced); - CLEANUP (); - errno = EILSEQ; - return NULL; - } + /* Invalid or incomplete multibyte character. */ + goto fail_with_EILSEQ; arg_end += count; characters++; } @@ -2640,7 +3065,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, characters = 0; } - if (characters < width && !(dp->flags & FLAG_LEFT)) + if (characters < width && !(flags & FLAG_LEFT)) { size_t n = width - characters; ENSURE_ALLOCATION (xsum (length, n)); @@ -2691,17 +3116,19 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, # else count = mbtowc (&wc, arg, arg_end - arg); # endif - if (count <= 0) - /* mbrtowc not consistent with mbrlen, or mbtowc - not consistent with mblen. */ + if (count == 0) + /* mbrtowc not consistent with strlen. */ abort (); + if (count < 0) + /* Invalid or incomplete multibyte character. */ + goto fail_with_EILSEQ; ENSURE_ALLOCATION (xsum (length, 1)); result[length++] = wc; arg += count; } } - if (characters < width && (dp->flags & FLAG_LEFT)) + if (characters < width && (flags & FLAG_LEFT)) { size_t n = width - characters; ENSURE_ALLOCATION (xsum (length, n)); @@ -2717,7 +3144,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, size_t characters; # if !DCHAR_IS_TCHAR /* This code assumes that TCHAR_T is 'char'. */ - verify (sizeof (TCHAR_T) == 1); + static_assert (sizeof (TCHAR_T) == 1); TCHAR_T *tmpsrc; DCHAR_T *tmpdst; size_t tmpdst_len; @@ -2744,16 +3171,8 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, break; count = local_wcrtomb (cbuf, *arg_end, &state); if (count < 0) - { - /* Cannot convert. */ - if (!(result == resultbuf || result == NULL)) - free (result); - if (buf_malloced != NULL) - free (buf_malloced); - CLEANUP (); - errno = EILSEQ; - return NULL; - } + /* Cannot convert. */ + goto fail_with_EILSEQ; if (precision < (unsigned int) count) break; arg_end++; @@ -2785,16 +3204,8 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, break; count = local_wcrtomb (cbuf, *arg_end, &state); if (count < 0) - { - /* Cannot convert. */ - if (!(result == resultbuf || result == NULL)) - free (result); - if (buf_malloced != NULL) - free (buf_malloced); - CLEANUP (); - errno = EILSEQ; - return NULL; - } + /* Cannot convert. */ + goto fail_with_EILSEQ; arg_end++; characters += count; } @@ -2851,12 +3262,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, if (tmpdst == NULL) { free (tmpsrc); - if (!(result == resultbuf || result == NULL)) - free (result); - if (buf_malloced != NULL) - free (buf_malloced); - CLEANUP (); - return NULL; + goto fail_with_errno; } free (tmpsrc); # endif @@ -2878,7 +3284,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, /* w doesn't matter. */ w = 0; - if (w < width && !(dp->flags & FLAG_LEFT)) + if (w < width && !(flags & FLAG_LEFT)) { size_t n = width - w; ENSURE_ALLOCATION (xsum (length, n)); @@ -2930,16 +3336,8 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, abort (); count = local_wcrtomb (cbuf, *arg, &state); if (count <= 0) - { - /* Cannot convert. */ - if (!(result == resultbuf || result == NULL)) - free (result); - if (buf_malloced != NULL) - free (buf_malloced); - CLEANUP (); - errno = EILSEQ; - return NULL; - } + /* Cannot convert. */ + goto fail_with_EILSEQ; ENSURE_ALLOCATION (xsum (length, count)); memcpy (result + length, cbuf, count); length += count; @@ -2954,7 +3352,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, length += tmpdst_len; # endif - if (w < width && (dp->flags & FLAG_LEFT)) + if (w < width && (flags & FLAG_LEFT)) { size_t n = width - w; ENSURE_ALLOCATION (xsum (length, n)); @@ -2965,12 +3363,13 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, # endif } #endif -#if ENABLE_WCHAR_FALLBACK && HAVE_WINT_T && !WIDE_CHAR_VERSION +#if (NEED_PRINTF_DIRECTIVE_LC || ENABLE_WCHAR_FALLBACK) && HAVE_WINT_T && !WIDE_CHAR_VERSION else if (dp->conversion == 'c' && a.arg[dp->arg_index].type == TYPE_WIDE_CHAR) { /* Implement the 'lc' directive ourselves, in order to provide - the fallback that avoids EILSEQ. */ + a correct behaviour for the null wint_t argument and/or the + fallback that avoids EILSEQ. */ int flags = dp->flags; int has_width; size_t width; @@ -3012,7 +3411,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, size_t characters; # if !DCHAR_IS_TCHAR /* This code assumes that TCHAR_T is 'char'. */ - verify (sizeof (TCHAR_T) == 1); + static_assert (sizeof (TCHAR_T) == 1); TCHAR_T tmpsrc[64]; /* Assume MB_CUR_MAX <= 64. */ DCHAR_T *tmpdst; size_t tmpdst_len; @@ -3036,8 +3435,8 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, count = local_wcrtomb (cbuf, arg, &state); if (count < 0) - /* Inconsistency. */ - abort (); + /* Cannot convert. */ + goto fail_with_EILSEQ; characters = count; } } @@ -3049,133 +3448,511 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, } # endif -# if !DCHAR_IS_TCHAR - /* Convert the string into a piece of temporary memory. */ - if (characters > 0) /* implies arg != 0 */ - { - char cbuf[64]; /* Assume MB_CUR_MAX <= 64. */ - int count; -# if HAVE_WCRTOMB && !defined GNULIB_defined_mbstate_t - mbstate_t state; - memset (&state, '\0', sizeof (mbstate_t)); -# endif +# if !DCHAR_IS_TCHAR + /* Convert the string into a piece of temporary memory. */ + if (characters > 0) /* implies arg != 0 */ + { + char cbuf[64]; /* Assume MB_CUR_MAX <= 64. */ + int count; +# if HAVE_WCRTOMB && !defined GNULIB_defined_mbstate_t + mbstate_t state; + memset (&state, '\0', sizeof (mbstate_t)); +# endif + + count = local_wcrtomb (cbuf, arg, &state); + if (count <= 0) + /* Inconsistency. */ + abort (); + memcpy (tmpsrc, cbuf, count); + } + + /* Convert from TCHAR_T[] to DCHAR_T[]. */ + tmpdst = + DCHAR_CONV_FROM_ENCODING (locale_charset (), + iconveh_question_mark, + tmpsrc, characters, + NULL, + NULL, &tmpdst_len); + if (tmpdst == NULL) + goto fail_with_errno; +# endif + + if (has_width) + { +# if ENABLE_UNISTDIO + /* Outside POSIX, it's preferable to compare the width + against the number of _characters_ of the converted + value. */ + w = DCHAR_MBSNLEN (result + length, characters); +# else + /* The width is compared against the number of _bytes_ + of the converted value, says POSIX. */ + w = characters; +# endif + } + else + /* w doesn't matter. */ + w = 0; + + if (w < width && !(flags & FLAG_LEFT)) + { + size_t n = width - w; + ENSURE_ALLOCATION (xsum (length, n)); + DCHAR_SET (result + length, ' ', n); + length += n; + } + +# if DCHAR_IS_TCHAR + if (has_width) + { + /* We know the number of bytes in advance. */ + ENSURE_ALLOCATION (xsum (length, characters)); + if (characters > 0) /* implies arg != 0 */ + { + int count; +# if HAVE_WCRTOMB && !defined GNULIB_defined_mbstate_t + mbstate_t state; + memset (&state, '\0', sizeof (mbstate_t)); +# endif + + count = local_wcrtomb (result + length, arg, &state); + if (count <= 0) + /* Inconsistency. */ + abort (); + length += count; + } + } + else + { + if (arg != 0) + { + char cbuf[64]; /* Assume MB_CUR_MAX <= 64. */ + int count; +# if HAVE_WCRTOMB && !defined GNULIB_defined_mbstate_t + mbstate_t state; + memset (&state, '\0', sizeof (mbstate_t)); +# endif + + count = local_wcrtomb (cbuf, arg, &state); + if (count < 0) + /* Cannot convert. */ + goto fail_with_EILSEQ; + ENSURE_ALLOCATION (xsum (length, count)); + memcpy (result + length, cbuf, count); + length += count; + } + } +# else + ENSURE_ALLOCATION_ELSE (xsum (length, tmpdst_len), + { free (tmpdst); goto out_of_memory; }); + DCHAR_CPY (result + length, tmpdst, tmpdst_len); + free (tmpdst); + length += tmpdst_len; +# endif + + if (w < width && (flags & FLAG_LEFT)) + { + size_t n = width - w; + ENSURE_ALLOCATION (xsum (length, n)); + DCHAR_SET (result + length, ' ', n); + length += n; + } + } + } +#endif +#if NEED_WPRINTF_DIRECTIVE_C && WIDE_CHAR_VERSION + else if (dp->conversion == 'c' + && a.arg[dp->arg_index].type != TYPE_WIDE_CHAR) + { + /* Implement the 'c' directive ourselves, in order to avoid + EILSEQ in the "C" locale. */ + int flags = dp->flags; + size_t width; + + width = 0; + if (dp->width_start != dp->width_end) + { + if (dp->width_arg_index != ARG_NONE) + { + int arg; + + if (!(a.arg[dp->width_arg_index].type == TYPE_INT)) + abort (); + arg = a.arg[dp->width_arg_index].a.a_int; + width = arg; + if (arg < 0) + { + /* "A negative field width is taken as a '-' flag + followed by a positive field width." */ + flags |= FLAG_LEFT; + width = -width; + } + } + else + { + const FCHAR_T *digitp = dp->width_start; + + do + width = xsum (xtimes (width, 10), *digitp++ - '0'); + while (digitp != dp->width_end); + } + } + + /* %c in vasnwprintf. See the specification of fwprintf. */ + { + char arg = (char) a.arg[dp->arg_index].a.a_char; + mbstate_t state; + wchar_t wc; + + memset (&state, '\0', sizeof (mbstate_t)); + int count = mbrtowc (&wc, &arg, 1, &state); + if (count < 0) + /* Invalid or incomplete multibyte character. */ + goto fail_with_EILSEQ; + + if (1 < width && !(flags & FLAG_LEFT)) + { + size_t n = width - 1; + ENSURE_ALLOCATION (xsum (length, n)); + DCHAR_SET (result + length, ' ', n); + length += n; + } + + ENSURE_ALLOCATION (xsum (length, 1)); + result[length++] = wc; + + if (1 < width && (flags & FLAG_LEFT)) + { + size_t n = width - 1; + ENSURE_ALLOCATION (xsum (length, n)); + DCHAR_SET (result + length, ' ', n); + length += n; + } + } + } +#endif +#if NEED_PRINTF_DIRECTIVE_B || NEED_PRINTF_DIRECTIVE_UPPERCASE_B + else if (0 +# if NEED_PRINTF_DIRECTIVE_B + || (dp->conversion == 'b') +# endif +# if NEED_PRINTF_DIRECTIVE_UPPERCASE_B + || (dp->conversion == 'B') +# endif + ) + { + arg_type type = a.arg[dp->arg_index].type; + int flags = dp->flags; + int has_width; + size_t width; + int has_precision; + size_t precision; + size_t tmp_length; + size_t count; + DCHAR_T tmpbuf[700]; + DCHAR_T *tmp; + DCHAR_T *tmp_end; + DCHAR_T *tmp_start; + DCHAR_T *pad_ptr; + DCHAR_T *p; + + has_width = 0; + width = 0; + if (dp->width_start != dp->width_end) + { + if (dp->width_arg_index != ARG_NONE) + { + int arg; + + if (!(a.arg[dp->width_arg_index].type == TYPE_INT)) + abort (); + arg = a.arg[dp->width_arg_index].a.a_int; + width = arg; + if (arg < 0) + { + /* "A negative field width is taken as a '-' flag + followed by a positive field width." */ + flags |= FLAG_LEFT; + width = -width; + } + } + else + { + const FCHAR_T *digitp = dp->width_start; + + do + width = xsum (xtimes (width, 10), *digitp++ - '0'); + while (digitp != dp->width_end); + } + has_width = 1; + } + + has_precision = 0; + precision = 1; + if (dp->precision_start != dp->precision_end) + { + if (dp->precision_arg_index != ARG_NONE) + { + int arg; + + if (!(a.arg[dp->precision_arg_index].type == TYPE_INT)) + abort (); + arg = a.arg[dp->precision_arg_index].a.a_int; + /* "A negative precision is taken as if the precision + were omitted." */ + if (arg >= 0) + { + precision = arg; + has_precision = 1; + } + } + else + { + const FCHAR_T *digitp = dp->precision_start + 1; + + precision = 0; + while (digitp != dp->precision_end) + precision = xsum (xtimes (precision, 10), *digitp++ - '0'); + has_precision = 1; + } + } + + /* Allocate a temporary buffer of sufficient size. */ + switch (type) + { + default: + tmp_length = + (unsigned int) (sizeof (unsigned int) * CHAR_BIT) + + 1; /* turn floor into ceil */ + break; + case TYPE_ULONGINT: + tmp_length = + (unsigned int) (sizeof (unsigned long int) * CHAR_BIT) + + 1; /* turn floor into ceil */ + break; + case TYPE_ULONGLONGINT: + tmp_length = + (unsigned int) (sizeof (unsigned long long int) * CHAR_BIT) + + 1; /* turn floor into ceil */ + break; + case TYPE_UINT8_T: + tmp_length = + (unsigned int) (sizeof (uint8_t) * CHAR_BIT) + + 1; /* turn floor into ceil */ + break; + case TYPE_UINT16_T: + tmp_length = + (unsigned int) (sizeof (uint16_t) * CHAR_BIT) + + 1; /* turn floor into ceil */ + break; + case TYPE_UINT32_T: + tmp_length = + (unsigned int) (sizeof (uint32_t) * CHAR_BIT) + + 1; /* turn floor into ceil */ + break; + case TYPE_UINT64_T: + tmp_length = + (unsigned int) (sizeof (uint64_t) * CHAR_BIT) + + 1; /* turn floor into ceil */ + break; + case TYPE_UINT_FAST8_T: + tmp_length = + (unsigned int) (sizeof (uint_fast8_t) * CHAR_BIT) + + 1; /* turn floor into ceil */ + break; + case TYPE_UINT_FAST16_T: + tmp_length = + (unsigned int) (sizeof (uint_fast16_t) * CHAR_BIT) + + 1; /* turn floor into ceil */ + break; + case TYPE_UINT_FAST32_T: + tmp_length = + (unsigned int) (sizeof (uint_fast32_t) * CHAR_BIT) + + 1; /* turn floor into ceil */ + break; + case TYPE_UINT_FAST64_T: + tmp_length = + (unsigned int) (sizeof (uint_fast64_t) * CHAR_BIT) + + 1; /* turn floor into ceil */ + break; + } + if (tmp_length < precision) + tmp_length = precision; + /* Add 2, to account for a prefix from the alternate form. */ + tmp_length = xsum (tmp_length, 2); + + if (tmp_length < width) + tmp_length = width; + + if (tmp_length <= sizeof (tmpbuf) / sizeof (DCHAR_T)) + tmp = tmpbuf; + else + { + size_t tmp_memsize = xtimes (tmp_length, sizeof (DCHAR_T)); + + if (size_overflow_p (tmp_memsize)) + /* Overflow, would lead to out of memory. */ + goto out_of_memory; + tmp = (DCHAR_T *) malloc (tmp_memsize); + if (tmp == NULL) + /* Out of memory. */ + goto out_of_memory; + } + + tmp_end = tmp + tmp_length; + + unsigned long long arg; + switch (type) + { + case TYPE_UCHAR: + arg = a.arg[dp->arg_index].a.a_uchar; + break; + case TYPE_USHORT: + arg = a.arg[dp->arg_index].a.a_ushort; + break; + case TYPE_UINT: + arg = a.arg[dp->arg_index].a.a_uint; + break; + case TYPE_ULONGINT: + arg = a.arg[dp->arg_index].a.a_ulongint; + break; + case TYPE_ULONGLONGINT: + arg = a.arg[dp->arg_index].a.a_ulonglongint; + break; + case TYPE_UINT8_T: + arg = a.arg[dp->arg_index].a.a_uint8_t; + break; + case TYPE_UINT16_T: + arg = a.arg[dp->arg_index].a.a_uint16_t; + break; + case TYPE_UINT32_T: + arg = a.arg[dp->arg_index].a.a_uint32_t; + break; + case TYPE_UINT64_T: + arg = a.arg[dp->arg_index].a.a_uint64_t; + break; + case TYPE_UINT_FAST8_T: + arg = a.arg[dp->arg_index].a.a_uint_fast8_t; + break; + case TYPE_UINT_FAST16_T: + arg = a.arg[dp->arg_index].a.a_uint_fast16_t; + break; + case TYPE_UINT_FAST32_T: + arg = a.arg[dp->arg_index].a.a_uint_fast32_t; + break; + case TYPE_UINT_FAST64_T: + arg = a.arg[dp->arg_index].a.a_uint_fast64_t; + break; + default: + abort (); + } + int need_prefix = ((flags & FLAG_ALT) && arg != 0); + + p = tmp_end; + /* "The result of converting a zero value with a precision + of zero is no characters." */ + if (!(has_precision && precision == 0 && arg == 0)) + { + do + { + *--p = '0' + (arg & 1); + arg = arg >> 1; + } + while (arg != 0); + } - count = local_wcrtomb (cbuf, arg, &state); - if (count <= 0) - /* Inconsistency. */ - abort (); - memcpy (tmpsrc, cbuf, count); - } + if (has_precision) + { + DCHAR_T *digits_start = tmp_end - precision; + while (p > digits_start) + *--p = '0'; + } - /* Convert from TCHAR_T[] to DCHAR_T[]. */ - tmpdst = - DCHAR_CONV_FROM_ENCODING (locale_charset (), - iconveh_question_mark, - tmpsrc, characters, - NULL, - NULL, &tmpdst_len); - if (tmpdst == NULL) - { - if (!(result == resultbuf || result == NULL)) - free (result); - if (buf_malloced != NULL) - free (buf_malloced); - CLEANUP (); - return NULL; - } -# endif + pad_ptr = p; - if (has_width) - { -# if ENABLE_UNISTDIO - /* Outside POSIX, it's preferable to compare the width - against the number of _characters_ of the converted - value. */ - w = DCHAR_MBSNLEN (result + length, characters); + if (need_prefix) + { +# if NEED_PRINTF_DIRECTIVE_B && !NEED_PRINTF_DIRECTIVE_UPPERCASE_B + *--p = 'b'; +# elif NEED_PRINTF_DIRECTIVE_UPPERCASE_B && !NEED_PRINTF_DIRECTIVE_B + *--p = 'B'; # else - /* The width is compared against the number of _bytes_ - of the converted value, says POSIX. */ - w = characters; + *--p = dp->conversion; # endif - } - else - /* w doesn't matter. */ - w = 0; + *--p = '0'; + } + tmp_start = p; - if (w < width && !(dp->flags & FLAG_LEFT)) - { - size_t n = width - w; - ENSURE_ALLOCATION (xsum (length, n)); - DCHAR_SET (result + length, ' ', n); - length += n; - } + /* The generated string now extends from tmp_start to tmp_end, + with the zero padding insertion point being at pad_ptr, + tmp_start <= pad_ptr <= tmp_end. */ + count = tmp_end - tmp_start; -# if DCHAR_IS_TCHAR - if (has_width) - { - /* We know the number of bytes in advance. */ - ENSURE_ALLOCATION (xsum (length, characters)); - if (characters > 0) /* implies arg != 0 */ - { - int count; -# if HAVE_WCRTOMB && !defined GNULIB_defined_mbstate_t - mbstate_t state; - memset (&state, '\0', sizeof (mbstate_t)); -# endif + if (count < width) + { + size_t pad = width - count; - count = local_wcrtomb (result + length, arg, &state); - if (count <= 0) - /* Inconsistency. */ - abort (); - length += count; - } - } - else - { - if (arg != 0) - { - char cbuf[64]; /* Assume MB_CUR_MAX <= 64. */ - int count; -# if HAVE_WCRTOMB && !defined GNULIB_defined_mbstate_t - mbstate_t state; - memset (&state, '\0', sizeof (mbstate_t)); -# endif + if (flags & FLAG_LEFT) + { + /* Pad with spaces on the right. */ + for (p = tmp_start; p < tmp_end; p++) + *(p - pad) = *p; + for (p = tmp_end - pad; p < tmp_end; p++) + *p = ' '; + } + else if ((flags & FLAG_ZERO) + /* Neither ISO C nor POSIX specify that the '0' + flag is ignored when a width and a precision + are both present. But most implementations + do so. */ + && !(has_width && has_precision)) + { + /* Pad with zeroes. */ + for (p = tmp_start; p < pad_ptr; p++) + *(p - pad) = *p; + for (p = pad_ptr - pad; p < pad_ptr; p++) + *p = '0'; + } + else + { + /* Pad with spaces on the left. */ + for (p = tmp_start - pad; p < tmp_start; p++) + *p = ' '; + } - count = local_wcrtomb (cbuf, arg, &state); - if (count <= 0) - /* Inconsistency. */ - abort (); - ENSURE_ALLOCATION (xsum (length, count)); - memcpy (result + length, cbuf, count); - length += count; - } - } -# else - ENSURE_ALLOCATION_ELSE (xsum (length, tmpdst_len), - { free (tmpdst); goto out_of_memory; }); - DCHAR_CPY (result + length, tmpdst, tmpdst_len); - free (tmpdst); - length += tmpdst_len; -# endif + tmp_start = tmp_start - pad; + } - if (w < width && (dp->flags & FLAG_LEFT)) - { - size_t n = width - w; - ENSURE_ALLOCATION (xsum (length, n)); - DCHAR_SET (result + length, ' ', n); - length += n; - } - } + count = tmp_end - tmp_start; + + if (count > tmp_length) + /* tmp_length was incorrectly calculated - fix the + code above! */ + abort (); + + /* Make room for the result. */ + if (count >= allocated - length) + { + size_t n = xsum (length, count); + + ENSURE_ALLOCATION (n); + } + + /* Append the result. */ + memcpy (result + length, tmp_start, count * sizeof (DCHAR_T)); + if (tmp != tmpbuf) + free (tmp); + length += count; } #endif -#if (NEED_PRINTF_DIRECTIVE_A || NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_DOUBLE) && !defined IN_LIBINTL +#if NEED_PRINTF_DIRECTIVE_A || NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_DOUBLE || (NEED_WPRINTF_DIRECTIVE_LA && WIDE_CHAR_VERSION) else if ((dp->conversion == 'a' || dp->conversion == 'A') # if !(NEED_PRINTF_DIRECTIVE_A || (NEED_PRINTF_LONG_DOUBLE && NEED_PRINTF_DOUBLE)) && (0 # if NEED_PRINTF_DOUBLE || a.arg[dp->arg_index].type == TYPE_DOUBLE # endif -# if NEED_PRINTF_LONG_DOUBLE +# if NEED_PRINTF_LONG_DOUBLE || (NEED_WPRINTF_DIRECTIVE_LA && WIDE_CHAR_VERSION) || a.arg[dp->arg_index].type == TYPE_LONGDOUBLE # endif ) @@ -3295,7 +4072,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, p = tmp; if (type == TYPE_LONGDOUBLE) { -# if NEED_PRINTF_DIRECTIVE_A || NEED_PRINTF_LONG_DOUBLE +# if NEED_PRINTF_DIRECTIVE_A || NEED_PRINTF_LONG_DOUBLE || (NEED_WPRINTF_DIRECTIVE_LA && WIDE_CHAR_VERSION) long double arg = a.arg[dp->arg_index].a.a_longdouble; if (isnanl (arg)) @@ -3415,7 +4192,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, } } *p++ = dp->conversion - 'A' + 'P'; -# if WIDE_CHAR_VERSION +# if WIDE_CHAR_VERSION && DCHAR_IS_TCHAR { static const wchar_t decimal_format[] = { '%', '+', 'd', '\0' }; @@ -3566,7 +4343,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, } } *p++ = dp->conversion - 'A' + 'P'; -# if WIDE_CHAR_VERSION +# if WIDE_CHAR_VERSION && DCHAR_IS_TCHAR { static const wchar_t decimal_format[] = { '%', '+', 'd', '\0' }; @@ -3658,7 +4435,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, length += count; } #endif -#if (NEED_PRINTF_INFINITE_DOUBLE || NEED_PRINTF_DOUBLE || NEED_PRINTF_INFINITE_LONG_DOUBLE || NEED_PRINTF_LONG_DOUBLE) && !defined IN_LIBINTL +#if NEED_PRINTF_INFINITE_DOUBLE || NEED_PRINTF_DOUBLE || NEED_PRINTF_INFINITE_LONG_DOUBLE || NEED_PRINTF_LONG_DOUBLE else if ((dp->conversion == 'f' || dp->conversion == 'F' || dp->conversion == 'e' || dp->conversion == 'E' || dp->conversion == 'g' || dp->conversion == 'G' @@ -4026,7 +4803,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, } *p++ = dp->conversion; /* 'e' or 'E' */ -# if WIDE_CHAR_VERSION +# if WIDE_CHAR_VERSION && DCHAR_IS_TCHAR { static const wchar_t decimal_format[] = { '%', '+', '.', '2', 'd', '\0' }; @@ -4207,7 +4984,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, } } *p++ = dp->conversion - 'G' + 'E'; /* 'e' or 'E' */ -# if WIDE_CHAR_VERSION +# if WIDE_CHAR_VERSION && DCHAR_IS_TCHAR { static const wchar_t decimal_format[] = { '%', '+', '.', '2', 'd', '\0' }; @@ -4484,7 +5261,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, } *p++ = dp->conversion; /* 'e' or 'E' */ -# if WIDE_CHAR_VERSION +# if WIDE_CHAR_VERSION && DCHAR_IS_TCHAR { static const wchar_t decimal_format[] = /* Produce the same number of exponent digits @@ -4677,7 +5454,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, } } *p++ = dp->conversion - 'G' + 'E'; /* 'e' or 'E' */ -# if WIDE_CHAR_VERSION +# if WIDE_CHAR_VERSION && DCHAR_IS_TCHAR { static const wchar_t decimal_format[] = /* Produce the same number of exponent digits @@ -4845,13 +5622,13 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, { arg_type type = a.arg[dp->arg_index].type; int flags = dp->flags; -#if !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION +#if (WIDE_CHAR_VERSION && MUSL_LIBC) || !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION int has_width; #endif -#if !USE_SNPRINTF || !HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF || !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION +#if !USE_SNPRINTF || WIDE_CHAR_VERSION || !HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF || !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION size_t width; #endif -#if !USE_SNPRINTF || !HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF || NEED_PRINTF_UNBOUNDED_PRECISION +#if !USE_SNPRINTF || (WIDE_CHAR_VERSION && DCHAR_IS_TCHAR) || !HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF || (WIDE_CHAR_VERSION && MUSL_LIBC) || !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION int has_precision; size_t precision; #endif @@ -4860,7 +5637,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, #else # define prec_ourselves 0 #endif -#if NEED_PRINTF_FLAG_LEFTADJUST +#if (WIDE_CHAR_VERSION && MUSL_LIBC) || NEED_PRINTF_FLAG_LEFTADJUST # define pad_ourselves 1 #elif !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION int pad_ourselves; @@ -4877,10 +5654,10 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, TCHAR_T *tmp; #endif -#if !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION +#if (WIDE_CHAR_VERSION && MUSL_LIBC) || !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION has_width = 0; #endif -#if !USE_SNPRINTF || !HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF || !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION +#if !USE_SNPRINTF || WIDE_CHAR_VERSION || !HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF || !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION width = 0; if (dp->width_start != dp->width_end) { @@ -4908,13 +5685,13 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, width = xsum (xtimes (width, 10), *digitp++ - '0'); while (digitp != dp->width_end); } -#if !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION +# if (WIDE_CHAR_VERSION && MUSL_LIBC) || !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION has_width = 1; -#endif +# endif } #endif -#if !USE_SNPRINTF || !HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF || NEED_PRINTF_UNBOUNDED_PRECISION +#if !USE_SNPRINTF || (WIDE_CHAR_VERSION && DCHAR_IS_TCHAR) || !HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF || (WIDE_CHAR_VERSION && MUSL_LIBC) || !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION has_precision = 0; precision = 6; if (dp->precision_start != dp->precision_end) @@ -4951,6 +5728,11 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, switch (dp->conversion) { case 'd': case 'i': case 'u': + case 'b': + #if SUPPORT_GNU_PRINTF_DIRECTIVES \ + || (__GLIBC__ + (__GLIBC_MINOR__ >= 35) > 2) + case 'B': + #endif case 'o': case 'x': case 'X': case 'p': prec_ourselves = has_precision && (precision > 0); @@ -4962,7 +5744,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, #endif /* Decide whether to perform the padding ourselves. */ -#if !NEED_PRINTF_FLAG_LEFTADJUST && (!DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION) +#if !((WIDE_CHAR_VERSION && MUSL_LIBC) || NEED_PRINTF_FLAG_LEFTADJUST) && (!DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION) switch (dp->conversion) { # if !DCHAR_IS_TCHAR || ENABLE_UNISTDIO @@ -5081,6 +5863,54 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, { case TYPE_LONGLONGINT: case TYPE_ULONGLONGINT: + #if INT8_WIDTH > LONG_WIDTH + case TYPE_INT8_T: + #endif + #if UINT8_WIDTH > LONG_WIDTH + case TYPE_UINT8_T: + #endif + #if INT16_WIDTH > LONG_WIDTH + case TYPE_INT16_T: + #endif + #if UINT16_WIDTH > LONG_WIDTH + case TYPE_UINT16_T: + #endif + #if INT32_WIDTH > LONG_WIDTH + case TYPE_INT32_T: + #endif + #if UINT32_WIDTH > LONG_WIDTH + case TYPE_UINT32_T: + #endif + #if INT64_WIDTH > LONG_WIDTH + case TYPE_INT64_T: + #endif + #if UINT64_WIDTH > LONG_WIDTH + case TYPE_UINT64_T: + #endif + #if INT_FAST8_WIDTH > LONG_WIDTH + case TYPE_INT_FAST8_T: + #endif + #if UINT_FAST8_WIDTH > LONG_WIDTH + case TYPE_UINT_FAST8_T: + #endif + #if INT_FAST16_WIDTH > LONG_WIDTH + case TYPE_INT_FAST16_T: + #endif + #if UINT_FAST16_WIDTH > LONG_WIDTH + case TYPE_UINT_FAST16_T: + #endif + #if INT_FAST32_WIDTH > LONG_WIDTH + case TYPE_INT3_FAST2_T: + #endif + #if UINT_FAST32_WIDTH > LONG_WIDTH + case TYPE_UINT_FAST32_T: + #endif + #if INT_FAST64_WIDTH > LONG_WIDTH + case TYPE_INT_FAST64_T: + #endif + #if UINT_FAST64_WIDTH > LONG_WIDTH + case TYPE_UINT_FAST64_T: + #endif #if defined _WIN32 && ! defined __CYGWIN__ *fbp++ = 'I'; *fbp++ = '6'; @@ -5092,12 +5922,60 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, FALLTHROUGH; case TYPE_LONGINT: case TYPE_ULONGINT: -#if HAVE_WINT_T + #if INT8_WIDTH > INT_WIDTH && INT8_WIDTH <= LONG_WIDTH + case TYPE_INT8_T: + #endif + #if UINT8_WIDTH > INT_WIDTH && UINT8_WIDTH <= LONG_WIDTH + case TYPE_UINT8_T: + #endif + #if INT16_WIDTH > INT_WIDTH && INT16_WIDTH <= LONG_WIDTH + case TYPE_INT16_T: + #endif + #if UINT16_WIDTH > INT_WIDTH && UINT16_WIDTH <= LONG_WIDTH + case TYPE_UINT16_T: + #endif + #if INT32_WIDTH > INT_WIDTH && INT32_WIDTH <= LONG_WIDTH + case TYPE_INT32_T: + #endif + #if UINT32_WIDTH > INT_WIDTH && UINT32_WIDTH <= LONG_WIDTH + case TYPE_UINT32_T: + #endif + #if INT64_WIDTH > INT_WIDTH && INT64_WIDTH <= LONG_WIDTH + case TYPE_INT64_T: + #endif + #if UINT64_WIDTH > INT_WIDTH && UINT64_WIDTH <= LONG_WIDTH + case TYPE_UINT64_T: + #endif + #if INT_FAST8_WIDTH > INT_WIDTH && INT_FAST8_WIDTH <= LONG_WIDTH + case TYPE_INT_FAST8_T: + #endif + #if UINT_FAST8_WIDTH > INT_WIDTH && UINT_FAST8_WIDTH <= LONG_WIDTH + case TYPE_UINT_FAST8_T: + #endif + #if INT_FAST16_WIDTH > INT_WIDTH && INT_FAST16_WIDTH <= LONG_WIDTH + case TYPE_INT_FAST16_T: + #endif + #if UINT_FAST16_WIDTH > INT_WIDTH && UINT_FAST16_WIDTH <= LONG_WIDTH + case TYPE_UINT_FAST16_T: + #endif + #if INT_FAST32_WIDTH > INT_WIDTH && INT_FAST32_WIDTH <= LONG_WIDTH + case TYPE_INT_FAST32_T: + #endif + #if UINT_FAST32_WIDTH > INT_WIDTH && UINT_FAST32_WIDTH <= LONG_WIDTH + case TYPE_UINT_FAST32_T: + #endif + #if INT_FAST64_WIDTH > INT_WIDTH && INT_FAST64_WIDTH <= LONG_WIDTH + case TYPE_INT_FAST64_T: + #endif + #if UINT_FAST64_WIDTH > INT_WIDTH && UINT_FAST64_WIDTH <= LONG_WIDTH + case TYPE_UINT_FAST64_T: + #endif + #if HAVE_WINT_T case TYPE_WIDE_CHAR: -#endif -#if HAVE_WCHAR_T + #endif + #if HAVE_WCHAR_T case TYPE_WIDE_STRING: -#endif + #endif *fbp++ = 'l'; break; case TYPE_LONGDOUBLE: @@ -5113,47 +5991,74 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, #endif *fbp = dp->conversion; #if USE_SNPRINTF -# if ((HAVE_SNPRINTF_RETVAL_C99 && HAVE_SNPRINTF_TRUNCATION_C99) \ + /* Decide whether to pass %n in the format string + to SNPRINTF. */ +# if (((!WIDE_CHAR_VERSION || !DCHAR_IS_TCHAR) \ + && (HAVE_SNPRINTF_RETVAL_C99 && HAVE_SNPRINTF_TRUNCATION_C99)) \ || ((__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 3)) \ && !defined __UCLIBC__) \ || (defined __APPLE__ && defined __MACH__) \ + || defined __OpenBSD__ \ || defined __ANDROID__ \ - || (defined _WIN32 && ! defined __CYGWIN__)) - /* On systems where we know that snprintf's return value - conforms to ISO C 99 (HAVE_SNPRINTF_RETVAL_C99) and that - snprintf always produces NUL-terminated strings - (HAVE_SNPRINTF_TRUNCATION_C99), it is possible to avoid - using %n. And it is desirable to do so, because more and - more platforms no longer support %n, for "security reasons". - In particular, the following platforms: + || (defined _WIN32 && ! defined __CYGWIN__)) \ + || (WIDE_CHAR_VERSION && MUSL_LIBC) + /* We can avoid passing %n and instead rely on SNPRINTF's + return value if + - !WIDE_CHAR_VERSION || !DCHAR_IS_TCHAR, because otherwise, + when WIDE_CHAR_VERSION && DCHAR_IS_TCHAR, + snwprintf()/_snwprintf() (Windows) and swprintf() (Unix) + don't return the needed buffer size, + and + - we're compiling for a system where we know + - that snprintf's return value conforms to ISO C 99 + (HAVE_SNPRINTF_RETVAL_C99) and + - that snprintf always produces NUL-terminated strings + (HAVE_SNPRINTF_TRUNCATION_C99). + And it is desirable to do so, because more and more platforms + no longer support %n, for "security reasons". */ + /* On specific platforms, listed below, we *must* avoid %n. + In the case + !WIDE_CHAR_VERSION && HAVE_SNPRINTF_RETVAL_C99 && !USE_MSVC__SNPRINTF + we can rely on the return value of snprintf instead. Whereas + in the opposite case + WIDE_CHAR_VERSION || !HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF + we need to make room based on an estimation, computed by + MAX_ROOM_NEEDED. */ + /* The following platforms forbid %n: - On glibc2 systems from 2004-10-18 or newer, the use of %n in format strings in writable memory may crash the program (if compiled with _FORTIFY_SOURCE=2). - - On Mac OS X 10.13 or newer, the use of %n in format + - On macOS 10.13 or newer, the use of %n in format strings in writable memory by default crashes the program. + - On OpenBSD, since 2021-08-30, the use of %n in format + strings produces an abort (see + , + ). - On Android, starting on 2018-03-07, the use of %n in format strings produces a fatal error (see ). - On these platforms, HAVE_SNPRINTF_RETVAL_C99 and - HAVE_SNPRINTF_TRUNCATION_C99 are 1. We have listed them - explicitly in the condition above, in case of cross- - compilation (just to be sure). */ - /* On native Windows systems (such as mingw), we can avoid using - %n because: + - On native Windows systems (such as mingw) where the OS is + Windows Vista, the use of %n in format strings by default + crashes the program. See + and + + On the first four of these platforms, if !WIDE_CHAR_VERSION, + it is not a big deal to avoid %n, because on these platforms, + HAVE_SNPRINTF_RETVAL_C99 and HAVE_SNPRINTF_TRUNCATION_C99 are + 1. + On native Windows, if !WIDE_CHAR_VERSION, it's not a big deal + either because: - Although the gl_SNPRINTF_TRUNCATION_C99 test fails, snprintf does not write more than the specified number of bytes. (snprintf (buf, 3, "%d %d", 4567, 89) writes '4', '5', '6' into buf, not '4', '5', '\0'.) - Although the gl_SNPRINTF_RETVAL_C99 test fails, snprintf allows us to recognize the case of an insufficient - buffer size: it returns -1 in this case. - On native Windows systems (such as mingw) where the OS is - Windows Vista, the use of %n in format strings by default - crashes the program. See - and - - So we should avoid %n in this situation. */ + buffer size: it returns -1 in this case. */ + /* Additionally, in the WIDE_CHAR_VERSION case, we cannot use %n + on musl libc because we would run into an swprintf() bug. + See . */ fbp[1] = '\0'; # else /* AIX <= 5.1, HP-UX, IRIX, OSF/1, Solaris <= 9, BeOS */ fbp[1] = '%'; @@ -5314,6 +6219,102 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, SNPRINTF_BUF (arg); } break; + case TYPE_INT8_T: + { + int8_t arg = a.arg[dp->arg_index].a.a_int8_t; + SNPRINTF_BUF (arg); + } + break; + case TYPE_UINT8_T: + { + uint8_t arg = a.arg[dp->arg_index].a.a_uint8_t; + SNPRINTF_BUF (arg); + } + break; + case TYPE_INT16_T: + { + int16_t arg = a.arg[dp->arg_index].a.a_int16_t; + SNPRINTF_BUF (arg); + } + break; + case TYPE_UINT16_T: + { + uint16_t arg = a.arg[dp->arg_index].a.a_uint16_t; + SNPRINTF_BUF (arg); + } + break; + case TYPE_INT32_T: + { + int32_t arg = a.arg[dp->arg_index].a.a_int32_t; + SNPRINTF_BUF (arg); + } + break; + case TYPE_UINT32_T: + { + uint32_t arg = a.arg[dp->arg_index].a.a_uint32_t; + SNPRINTF_BUF (arg); + } + break; + case TYPE_INT64_T: + { + int64_t arg = a.arg[dp->arg_index].a.a_int64_t; + SNPRINTF_BUF (arg); + } + break; + case TYPE_UINT64_T: + { + uint64_t arg = a.arg[dp->arg_index].a.a_uint64_t; + SNPRINTF_BUF (arg); + } + break; + case TYPE_INT_FAST8_T: + { + int_fast8_t arg = a.arg[dp->arg_index].a.a_int_fast8_t; + SNPRINTF_BUF (arg); + } + break; + case TYPE_UINT_FAST8_T: + { + uint_fast8_t arg = a.arg[dp->arg_index].a.a_uint_fast8_t; + SNPRINTF_BUF (arg); + } + break; + case TYPE_INT_FAST16_T: + { + int_fast16_t arg = a.arg[dp->arg_index].a.a_int_fast16_t; + SNPRINTF_BUF (arg); + } + break; + case TYPE_UINT_FAST16_T: + { + uint_fast16_t arg = a.arg[dp->arg_index].a.a_uint_fast16_t; + SNPRINTF_BUF (arg); + } + break; + case TYPE_INT_FAST32_T: + { + int_fast32_t arg = a.arg[dp->arg_index].a.a_int_fast32_t; + SNPRINTF_BUF (arg); + } + break; + case TYPE_UINT_FAST32_T: + { + uint_fast32_t arg = a.arg[dp->arg_index].a.a_uint_fast32_t; + SNPRINTF_BUF (arg); + } + break; + case TYPE_INT_FAST64_T: + { + int_fast64_t arg = a.arg[dp->arg_index].a.a_int_fast64_t; + SNPRINTF_BUF (arg); + } + break; + case TYPE_UINT_FAST64_T: + { + uint_fast64_t arg = a.arg[dp->arg_index].a.a_uint_fast64_t; + SNPRINTF_BUF (arg); + } + break; case TYPE_DOUBLE: { double arg = a.arg[dp->arg_index].a.a_double; @@ -5396,12 +6397,16 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, /* Look at the snprintf() return value. */ if (retcount < 0) { -# if !HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF +# if (WIDE_CHAR_VERSION && DCHAR_IS_TCHAR) || !HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF /* HP-UX 10.20 snprintf() is doubly deficient: It doesn't understand the '%n' directive, *and* it returns -1 (rather than the length that would have been required) when the buffer is too small. + Likewise, in case of + WIDE_CHAR_VERSION && DCHAR_IS_TCHAR, the + functions snwprintf()/_snwprintf() (Windows) + or swprintf() (Unix). But a failure at this point can also come from other reasons than a too small buffer, such as an invalid wide string argument to @@ -5437,7 +6442,15 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, # endif } else - count = retcount; + { + count = retcount; +# if WIDE_CHAR_VERSION && defined __MINGW32__ + if (count == 0 && dp->conversion == 'c') + /* snwprintf returned 0 instead of 1. But it + wrote a null wide character. */ + count = 1; +# endif + } } } #endif @@ -5455,13 +6468,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, errno = EINVAL; } - if (!(result == resultbuf || result == NULL)) - free (result); - if (buf_malloced != NULL) - free (buf_malloced); - CLEANUP (); - - return NULL; + goto fail_with_errno; } #if USE_SNPRINTF @@ -5573,21 +6580,73 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, #if !DCHAR_IS_TCHAR /* Convert from TCHAR_T[] to DCHAR_T[]. */ - if (dp->conversion == 'c' || dp->conversion == 's') + if (dp->conversion == 'c' || dp->conversion == 's' +# if __GLIBC__ >= 2 && !defined __UCLIBC__ + || (flags & FLAG_LOCALIZED) +# endif + ) { - /* type = TYPE_CHAR or TYPE_WIDE_CHAR or TYPE_STRING - TYPE_WIDE_STRING. - The result string is not certainly ASCII. */ + /* The result string is not guaranteed to be ASCII. */ const TCHAR_T *tmpsrc; DCHAR_T *tmpdst; size_t tmpdst_len; /* This code assumes that TCHAR_T is 'char'. */ - verify (sizeof (TCHAR_T) == 1); + static_assert (sizeof (TCHAR_T) == 1); # if USE_SNPRINTF tmpsrc = (TCHAR_T *) (result + length); # else tmpsrc = tmp; # endif +# if WIDE_CHAR_VERSION + /* Convert tmpsrc[0..count-1] to a freshly allocated + wide character array. */ + mbstate_t state; + + memset (&state, '\0', sizeof (mbstate_t)); + tmpdst_len = 0; + { + const TCHAR_T *src = tmpsrc; + size_t srclen = count; + + for (; srclen > 0; tmpdst_len++) + { + /* Parse the next multibyte character. */ + size_t ret = mbrtowc (NULL, src, srclen, &state); + if (ret == (size_t)(-2) || ret == (size_t)(-1)) + goto fail_with_EILSEQ; + if (ret == 0) + ret = 1; + src += ret; + srclen -= ret; + } + } + + tmpdst = + (wchar_t *) malloc ((tmpdst_len + 1) * sizeof (wchar_t)); + if (tmpdst == NULL) + goto out_of_memory; + + memset (&state, '\0', sizeof (mbstate_t)); + { + DCHAR_T *destptr = tmpdst; + const TCHAR_T *src = tmpsrc; + size_t srclen = count; + + for (; srclen > 0; destptr++) + { + /* Parse the next multibyte character. */ + size_t ret = mbrtowc (destptr, src, srclen, &state); + if (ret == (size_t)(-2) || ret == (size_t)(-1)) + /* Should already have been caught in the first + loop, above. */ + abort (); + if (ret == 0) + ret = 1; + src += ret; + srclen -= ret; + } + } +# else tmpdst = DCHAR_CONV_FROM_ENCODING (locale_charset (), iconveh_question_mark, @@ -5595,14 +6654,8 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, NULL, NULL, &tmpdst_len); if (tmpdst == NULL) - { - if (!(result == resultbuf || result == NULL)) - free (result); - if (buf_malloced != NULL) - free (buf_malloced); - CLEANUP (); - return NULL; - } + goto fail_with_errno; +# endif ENSURE_ALLOCATION_ELSE (xsum (length, tmpdst_len), { free (tmpdst); goto out_of_memory; }); DCHAR_CPY (result + length, tmpdst, tmpdst_len); @@ -5669,7 +6722,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, /* Here count <= allocated - length. */ /* Perform padding. */ -#if !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION +#if (WIDE_CHAR_VERSION && MUSL_LIBC) || !DCHAR_IS_TCHAR || ENABLE_UNISTDIO || NEED_PRINTF_FLAG_LEFTADJUST || NEED_PRINTF_FLAG_ZERO || NEED_PRINTF_UNBOUNDED_PRECISION if (pad_ourselves && has_width) { size_t w; @@ -5728,6 +6781,22 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, if ((*pad_ptr >= 'A' && *pad_ptr <= 'Z') || (*pad_ptr >= 'a' && *pad_ptr <= 'z')) pad_ptr = NULL; + else + /* Do the zero-padding after the "0x" or + "0b" prefix, not before. */ + if (p - rp >= 2 + && *rp == '0' + && (((dp->conversion == 'a' + || dp->conversion == 'x') + && rp[1] == 'x') + || ((dp->conversion == 'A' + || dp->conversion == 'X') + && rp[1] == 'X') + || (dp->conversion == 'b' + && rp[1] == 'b') + || (dp->conversion == 'B' + && rp[1] == 'B'))) + pad_ptr += 2; } /* The generated string now extends from rp to p, with the zero padding insertion point being at @@ -5741,7 +6810,22 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, for (; pad > 0; pad--) *p++ = ' '; } - else if ((flags & FLAG_ZERO) && pad_ptr != NULL) + else if ((flags & FLAG_ZERO) && pad_ptr != NULL + /* ISO C says: "For d, i, o, u, x, and X + conversions, if a precision is + specified, the 0 flag is ignored. */ + && !(has_precision + && (dp->conversion == 'd' + || dp->conversion == 'i' + || dp->conversion == 'o' + || dp->conversion == 'u' + || dp->conversion == 'x' + || dp->conversion == 'X' + /* Although ISO C does not + require it, treat 'b' and 'B' + like 'x' and 'X'. */ + || dp->conversion == 'b' + || dp->conversion == 'B'))) { /* Pad with zeroes. */ DCHAR_T *q = end; @@ -5827,25 +6911,40 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp, #if USE_SNPRINTF overflow: - if (!(result == resultbuf || result == NULL)) - free (result); - if (buf_malloced != NULL) - free (buf_malloced); - CLEANUP (); errno = EOVERFLOW; - return NULL; + goto fail_with_errno; #endif out_of_memory: - if (!(result == resultbuf || result == NULL)) + errno = ENOMEM; + goto fail_with_errno; + +#if ENABLE_UNISTDIO || ((!USE_SNPRINTF || WIDE_CHAR_VERSION || !HAVE_SNPRINTF_RETVAL_C99 || USE_MSVC__SNPRINTF || NEED_PRINTF_DIRECTIVE_LS || ENABLE_WCHAR_FALLBACK) && HAVE_WCHAR_T) || ((NEED_PRINTF_DIRECTIVE_LC || ENABLE_WCHAR_FALLBACK) && HAVE_WINT_T && !WIDE_CHAR_VERSION) || (NEED_WPRINTF_DIRECTIVE_C && WIDE_CHAR_VERSION) + fail_with_EILSEQ: + errno = EILSEQ; + goto fail_with_errno; +#endif + + fail_with_errno: + if (result != resultbuf) free (result); if (buf_malloced != NULL) free (buf_malloced); - out_of_memory_1: CLEANUP (); - errno = ENOMEM; return NULL; } + + out_of_memory_1: + errno = ENOMEM; + goto fail_1_with_errno; + + fail_1_with_EINVAL: + errno = EINVAL; + goto fail_1_with_errno; + + fail_1_with_errno: + CLEANUP (); + return NULL; } #undef MAX_ROOM_NEEDED diff --git a/lib/vasnprintf.h b/gnulib-tests/vasnprintf.h similarity index 93% rename from lib/vasnprintf.h rename to gnulib-tests/vasnprintf.h index 9b02cdf..2d13407 100644 --- a/lib/vasnprintf.h +++ b/gnulib-tests/vasnprintf.h @@ -1,5 +1,5 @@ /* vsprintf with automatic memory allocation. - Copyright (C) 2002-2004, 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2002-2004, 2007-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -17,6 +17,11 @@ #ifndef _VASNPRINTF_H #define _VASNPRINTF_H +/* This file uses _GL_ATTRIBUTE_FORMAT. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + /* Get va_list. */ #include diff --git a/gnulib-tests/w32sock.h b/gnulib-tests/w32sock.h index 635a1b2..84e46e3 100644 --- a/gnulib-tests/w32sock.h +++ b/gnulib-tests/w32sock.h @@ -1,6 +1,6 @@ /* w32sock.h --- internal auxiliary functions for Windows socket functions - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/gnulib-tests/warn-on-use.h b/gnulib-tests/warn-on-use.h index 612937a..3075603 100644 --- a/gnulib-tests/warn-on-use.h +++ b/gnulib-tests/warn-on-use.h @@ -1,5 +1,5 @@ /* A C macro for emitting warnings if a function is used. - Copyright (C) 2010-2021 Free Software Foundation, Inc. + Copyright (C) 2010-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published @@ -84,20 +84,20 @@ # if 4 < __GNUC__ || (__GNUC__ == 4 && 3 <= __GNUC_MINOR__) /* A compiler attribute is available in gcc versions 4.3.0 and later. */ # define _GL_WARN_ON_USE(function, message) \ -extern __typeof__ (function) function __attribute__ ((__warning__ (message))) +_GL_WARN_EXTERN_C __typeof__ (function) function __attribute__ ((__warning__ (message))) # define _GL_WARN_ON_USE_ATTRIBUTE(message) \ __attribute__ ((__warning__ (message))) # elif __clang_major__ >= 4 /* Another compiler attribute is available in clang. */ # define _GL_WARN_ON_USE(function, message) \ -extern __typeof__ (function) function \ +_GL_WARN_EXTERN_C __typeof__ (function) function \ __attribute__ ((__diagnose_if__ (1, message, "warning"))) # define _GL_WARN_ON_USE_ATTRIBUTE(message) \ __attribute__ ((__diagnose_if__ (1, message, "warning"))) # elif __GNUC__ >= 3 && GNULIB_STRICT_CHECKING /* Verify the existence of the function. */ # define _GL_WARN_ON_USE(function, message) \ -extern __typeof__ (function) function +_GL_WARN_EXTERN_C __typeof__ (function) function # define _GL_WARN_ON_USE_ATTRIBUTE(message) # else /* Unsupported. */ # define _GL_WARN_ON_USE(function, message) \ diff --git a/gnulib-tests/wctob.c b/gnulib-tests/wctob.c index 6f6bed5..df27feb 100644 --- a/gnulib-tests/wctob.c +++ b/gnulib-tests/wctob.c @@ -1,10 +1,10 @@ /* Convert wide character to unibyte character. - Copyright (C) 2008, 2010-2021 Free Software Foundation, Inc. + Copyright (C) 2008, 2010-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2008. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as - published by the Free Software Foundation; either version 3 of the + published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This file is distributed in the hope that it will be useful, diff --git a/gnulib-tests/wctomb-impl.h b/gnulib-tests/wctomb-impl.h index ff8dfe9..9ba727e 100644 --- a/gnulib-tests/wctomb-impl.h +++ b/gnulib-tests/wctomb-impl.h @@ -1,5 +1,5 @@ /* Convert wide character to multibyte character. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2011. This file is free software: you can redistribute it and/or modify diff --git a/gnulib-tests/wctomb.c b/gnulib-tests/wctomb.c index aaf5cee..1143a95 100644 --- a/gnulib-tests/wctomb.c +++ b/gnulib-tests/wctomb.c @@ -1,5 +1,5 @@ /* Convert wide character to multibyte character. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2011. This file is free software: you can redistribute it and/or modify diff --git a/gnulib-tests/windows-thread.c b/gnulib-tests/windows-thread.c index a60967f..87866dd 100644 --- a/gnulib-tests/windows-thread.c +++ b/gnulib-tests/windows-thread.c @@ -1,5 +1,5 @@ /* Creating and controlling threads (native Windows implementation). - Copyright (C) 2005-2021 Free Software Foundation, Inc. + Copyright (C) 2005-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/gnulib-tests/windows-thread.h b/gnulib-tests/windows-thread.h index 680565d..e6511d7 100644 --- a/gnulib-tests/windows-thread.h +++ b/gnulib-tests/windows-thread.h @@ -1,5 +1,5 @@ /* Creating and controlling threads (native Windows implementation). - Copyright (C) 2005-2021 Free Software Foundation, Inc. + Copyright (C) 2005-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -20,6 +20,11 @@ #ifndef _WINDOWS_THREAD_H #define _WINDOWS_THREAD_H +/* This file uses _Noreturn. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + #define WIN32_LEAN_AND_MEAN /* avoid including junk */ #include diff --git a/gnulib-tests/windows-tls.c b/gnulib-tests/windows-tls.c index dfadcfd..3b6ff80 100644 --- a/gnulib-tests/windows-tls.c +++ b/gnulib-tests/windows-tls.c @@ -1,5 +1,5 @@ /* Thread-local storage (native Windows implementation). - Copyright (C) 2005-2021 Free Software Foundation, Inc. + Copyright (C) 2005-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/gnulib-tests/windows-tls.h b/gnulib-tests/windows-tls.h index c822d25..b1e4dbf 100644 --- a/gnulib-tests/windows-tls.h +++ b/gnulib-tests/windows-tls.h @@ -1,5 +1,5 @@ /* Thread-local storage (native Windows implementation). - Copyright (C) 2005-2021 Free Software Foundation, Inc. + Copyright (C) 2005-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/xsize.c b/gnulib-tests/xsize.c similarity index 93% rename from lib/xsize.c rename to gnulib-tests/xsize.c index b3d73a2..279ae82 100644 --- a/lib/xsize.c +++ b/gnulib-tests/xsize.c @@ -1,6 +1,6 @@ /* Checked size_t computations. - Copyright (C) 2012-2021 Free Software Foundation, Inc. + Copyright (C) 2012-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/xsize.h b/gnulib-tests/xsize.h similarity index 95% rename from lib/xsize.h rename to gnulib-tests/xsize.h index 91fa877..5b08d61 100644 --- a/lib/xsize.h +++ b/gnulib-tests/xsize.h @@ -1,6 +1,6 @@ /* xsize.h -- Checked size_t computations. - Copyright (C) 2003, 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2003, 2008-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -18,6 +18,11 @@ #ifndef _XSIZE_H #define _XSIZE_H +/* This file uses _GL_INLINE_HEADER_BEGIN, _GL_INLINE, HAVE_STDINT_H. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + /* Get size_t. */ #include @@ -30,9 +35,6 @@ /* Get ATTRIBUTE_PURE. */ #include "attribute.h" -#ifndef _GL_INLINE_HEADER_BEGIN - #error "Please include config.h first." -#endif _GL_INLINE_HEADER_BEGIN #ifndef XSIZE_INLINE # define XSIZE_INLINE _GL_INLINE diff --git a/gnulib-tests/xstrtol-error.c b/gnulib-tests/xstrtol-error.c index 80b650f..7749e02 100644 --- a/gnulib-tests/xstrtol-error.c +++ b/gnulib-tests/xstrtol-error.c @@ -1,11 +1,11 @@ /* A more useful interface to strtol. - Copyright (C) 1995-1996, 1998-1999, 2001-2004, 2006-2021 Free Software + Copyright (C) 1995-1996, 1998-1999, 2001-2004, 2006-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/gnulib-tests/xstrtol-error.h b/gnulib-tests/xstrtol-error.h index 83abc68..0872f59 100644 --- a/gnulib-tests/xstrtol-error.h +++ b/gnulib-tests/xstrtol-error.h @@ -1,11 +1,11 @@ /* Error reporting interface for xstrto* functions. - Copyright (C) 1995-1996, 1998-1999, 2001-2004, 2006-2021 Free Software + Copyright (C) 1995-1996, 1998-1999, 2001-2004, 2006-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -19,6 +19,11 @@ #ifndef XSTRTOL_ERROR_H_ # define XSTRTOL_ERROR_H_ 1 +/* This file uses _Noreturn. */ +# if !_GL_CONFIG_H_INCLUDED +# error "Please include config.h first." +# endif + # include "xstrtol.h" # include @@ -28,7 +33,7 @@ ERR is the error code returned by one of the xstrto* functions. Use OPT_IDX to decide whether to print the short option string "C" - or "-C" or a long option string derived from LONG_OPTION. OPT_IDX + or "-C" or a long option string derived from LONG_OPTIONS. OPT_IDX is -2 if the short option "C" was used, without any leading "-"; it is -1 if the short option "-C" was used; otherwise it is an index into LONG_OPTIONS, which should have a name preceded by two '-' @@ -38,8 +43,9 @@ After reporting an error, exit with a failure status. */ -_Noreturn void xstrtol_fatal (enum strtol_error, - int, char, struct option const *, - char const *); +_Noreturn void xstrtol_fatal (enum strtol_error /* err */, + int /* opt_idx */, char /* c */, + struct option const * /* long_options */, + char const * /* arg */); #endif /* not XSTRTOL_ERROR_H_ */ diff --git a/gnulib-tests/zerosize-ptr.h b/gnulib-tests/zerosize-ptr.h index bfeff50..f2b0903 100644 --- a/gnulib-tests/zerosize-ptr.h +++ b/gnulib-tests/zerosize-ptr.h @@ -1,9 +1,9 @@ /* Return a pointer to a zero-size object in memory. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/lib/Makefile.am b/lib/Makefile.am index 2edb30a..042850c 100644 --- a/lib/Makefile.am +++ b/lib/Makefile.am @@ -1,6 +1,6 @@ # Automakefile for GNU Diffutils library. -# Copyright (C) 2001-2002, 2004, 2006, 2009-2013, 2015-2021 Free Software +# Copyright (C) 2001-2002, 2004, 2006, 2009-2013, 2015-2023 Free Software # Foundation, Inc. # This program is free software: you can redistribute it and/or modify @@ -29,7 +29,7 @@ noinst_HEADERS = include gnulib.mk -noinst_HEADERS += cmpbuf.h prepargs.h -libdiffutils_a_SOURCES += cmpbuf.c prepargs.c +noinst_HEADERS += cmpbuf.h +libdiffutils_a_SOURCES += cmpbuf.c AM_CFLAGS += $(GNULIB_WARN_CFLAGS) $(WERROR_CFLAGS) diff --git a/lib/Makefile.in b/lib/Makefile.in index 31a3c99..e656ada 100644 --- a/lib/Makefile.in +++ b/lib/Makefile.in @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.16d from Makefile.am. +# Makefile.in generated by automake 1.16i from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2021 Free Software Foundation, Inc. +# Copyright (C) 1994-2023 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -16,7 +16,7 @@ # Automakefile for GNU Diffutils library. -# Copyright (C) 2001-2002, 2004, 2006, 2009-2013, 2015-2021 Free Software +# Copyright (C) 2001-2002, 2004, 2006, 2009-2013, 2015-2023 Free Software # Foundation, Inc. # This program is free software: you can redistribute it and/or modify @@ -32,11 +32,11 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see . -# Copyright (C) 2002-2021 Free Software Foundation, Inc. +# Copyright (C) 2002-2023 Free Software Foundation, Inc. # # This file is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or +# the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This file is distributed in the hope that it will be useful, @@ -71,6 +71,7 @@ # --avoid=setlocale \ # announce-gen \ # argmatch \ +# attribute \ # binary-io \ # c-stack \ # config-h \ @@ -82,10 +83,11 @@ # exclude \ # exitfail \ # extensions \ +# extern-inline \ # fcntl \ -# fdl \ # file-type \ # filenamecat \ +# flexmember \ # fnmatch-gnu \ # getopt-gnu \ # gettext-h \ @@ -105,25 +107,33 @@ # maintainer-makefile \ # manywarnings \ # mbrtowc \ +# mempcpy \ # mkstemp \ # mktime \ # nstrftime \ +# nullptr \ +# perl \ # progname \ # propername \ +# raise \ # rawmemchr \ # readme-release \ # regex \ # sh-quote \ # signal \ +# sigprocmask \ # stat \ # stat-macros \ # stat-time \ +# stdbool \ # stdint \ +# stpcpy \ # strcase \ # strptime \ # strtoimax \ # sys_wait \ # system-quote \ +# time_rz \ # unistd \ # unlocked-io \ # update-copyright \ @@ -137,7 +147,7 @@ # xreadlink \ # xstdopen \ # xstrtoimax \ -# xvasprintf +# year2038 VPATH = @srcdir@ @@ -196,6 +206,8 @@ am__make_running_with_option = \ test $$has_opt = yes am__make_dryrun = (target_option=n; $(am__make_running_with_option)) am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +am__rm_f = rm -f $(am__rm_f_notfound) +am__rm_rf = rm -rf $(am__rm_f_notfound) pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ @@ -214,29 +226,100 @@ PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ -@GL_GENERATE_SIGSEGV_H_TRUE@am__append_1 = sigsegv.c stackvma.c -@LIBUNISTRING_COMPILE_UNISTR_U8_MBTOUCR_TRUE@am__append_2 = unistr/u8-mbtoucr.c -@LIBUNISTRING_COMPILE_UNISTR_U8_UCTOMB_TRUE@am__append_3 = unistr/u8-uctomb.c unistr/u8-uctomb-aux.c -@LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_TRUE@am__append_4 = uniwidth/width.c +@GL_COND_OBJ_BTOWC_TRUE@am__append_1 = btowc.c +@GL_COND_OBJ_CLOSE_TRUE@am__append_2 = close.c +@GL_COND_OBJ_DUP2_TRUE@am__append_3 = dup2.c +@GL_COND_OBJ_ERROR_TRUE@am__append_4 = error.c +@GL_COND_OBJ_FCNTL_TRUE@am__append_5 = fcntl.c +@GL_COND_OBJ_FREE_TRUE@am__append_6 = free.c +@GL_COND_OBJ_FREOPEN_TRUE@am__append_7 = freopen.c +@GL_COND_OBJ_FSTAT_TRUE@am__append_8 = fstat.c +@GL_COND_OBJ_GETDTABLESIZE_TRUE@am__append_9 = getdtablesize.c +@GL_COND_OBJ_GETOPT_TRUE@am__append_10 = getopt.c getopt1.c +@GL_COND_OBJ_GETPAGESIZE_TRUE@am__append_11 = getpagesize.c +@GL_COND_OBJ_GETPROGNAME_TRUE@am__append_12 = getprogname.c +@GL_COND_OBJ_GETRANDOM_TRUE@am__append_13 = getrandom.c +@GL_COND_OBJ_GETTIMEOFDAY_TRUE@am__append_14 = gettimeofday.c +@GL_COND_OBJ_ICONV_OPEN_TRUE@am__append_15 = iconv_open.c +@GL_COND_OBJ_ICONV_TRUE@am__append_16 = iconv.c iconv_close.c +@GL_COND_OBJ_ISBLANK_TRUE@am__append_17 = isblank.c +@GL_COND_OBJ_ISWBLANK_TRUE@am__append_18 = iswblank.c +@GL_COND_OBJ_ISWDIGIT_TRUE@am__append_19 = iswdigit.c +@GL_COND_OBJ_ISWXDIGIT_TRUE@am__append_20 = iswxdigit.c +@GL_COND_OBJ_LOCALECONV_TRUE@am__append_21 = localeconv.c +@GL_COND_OBJ_LSTAT_TRUE@am__append_22 = lstat.c +@GL_COND_OBJ_MBRTOWC_TRUE@am__append_23 = mbrtowc.c +@GL_COND_OBJ_MBSINIT_TRUE@am__append_24 = mbsinit.c +@GL_COND_OBJ_MBSRTOWCS_TRUE@am__append_25 = mbsrtowcs.c +@GL_COND_OBJ_MBTOWC_TRUE@am__append_26 = mbtowc.c +@GL_COND_OBJ_MEMCHR_TRUE@am__append_27 = memchr.c +@GL_COND_OBJ_MEMPCPY_TRUE@am__append_28 = mempcpy.c +@GL_COND_OBJ_MKDIR_TRUE@am__append_29 = mkdir.c +@GL_COND_OBJ_MKSTEMP_TRUE@am__append_30 = mkstemp.c +@GL_COND_OBJ_MSVC_INVAL_TRUE@am__append_31 = msvc-inval.c +@GL_COND_OBJ_MSVC_NOTHROW_TRUE@am__append_32 = msvc-nothrow.c +@GL_COND_OBJ_NL_LANGINFO_TRUE@am__append_33 = nl_langinfo.c +@GL_COND_OBJ_NL_LANGINFO_LOCK_TRUE@am__append_34 = nl_langinfo-lock.c +@GL_COND_OBJ_OPEN_TRUE@am__append_35 = open.c +@GL_COND_OBJ_RAISE_TRUE@am__append_36 = raise.c +@GL_COND_OBJ_RAWMEMCHR_TRUE@am__append_37 = rawmemchr.c +@GL_COND_OBJ_READLINK_TRUE@am__append_38 = readlink.c +@GL_COND_OBJ_REALLOCARRAY_TRUE@am__append_39 = reallocarray.c +@GL_COND_OBJ_REGEX_TRUE@am__append_40 = regex.c +@GL_COND_OBJ_SETENV_TRUE@am__append_41 = setenv.c +@GL_COND_OBJ_SETLOCALE_LOCK_TRUE@am__append_42 = setlocale-lock.c +@GL_COND_OBJ_SIGPROCMASK_TRUE@am__append_43 = sigprocmask.c +@GL_GENERATE_SIGSEGV_H_TRUE@am__append_44 = sigsegv.c stackvma.c +@GL_COND_OBJ_STAT_TRUE@am__append_45 = stat.c +@GL_COND_OBJ_STDIO_READ_TRUE@am__append_46 = stdio-read.c +@GL_COND_OBJ_STDIO_WRITE_TRUE@am__append_47 = stdio-write.c +@GL_COND_OBJ_STPCPY_TRUE@am__append_48 = stpcpy.c +@GL_COND_OBJ_STRCASECMP_TRUE@am__append_49 = strcasecmp.c +@GL_COND_OBJ_STRNCASECMP_TRUE@am__append_50 = strncasecmp.c +@GL_COND_OBJ_STRERROR_TRUE@am__append_51 = strerror.c +@GL_COND_OBJ_STRERROR_OVERRIDE_TRUE@am__append_52 = strerror-override.c +@GL_COND_OBJ_STRNLEN_TRUE@am__append_53 = strnlen.c +@GL_COND_OBJ_STRPTIME_TRUE@am__append_54 = strptime.c +@GL_COND_OBJ_STRTOIMAX_TRUE@am__append_55 = strtoimax.c +@GL_COND_OBJ_STRTOLL_TRUE@am__append_56 = strtoll.c +@GL_COND_OBJ_TIME_R_TRUE@am__append_57 = time_r.c +@GL_COND_OBJ_TIME_RZ_TRUE@am__append_58 = time_rz.c +@GL_COND_OBJ_TIMEGM_TRUE@am__append_59 = timegm.c +@GL_COND_OBJ_TZSET_TRUE@am__append_60 = tzset.c +@LIBUNISTRING_COMPILE_UNISTR_U8_MBTOUCR_TRUE@am__append_61 = unistr/u8-mbtoucr.c +@LIBUNISTRING_COMPILE_UNISTR_U8_UCTOMB_TRUE@am__append_62 = unistr/u8-uctomb.c unistr/u8-uctomb-aux.c +@LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_TRUE@am__append_63 = uniwidth/width.c +@GL_COND_OBJ_UNSETENV_TRUE@am__append_64 = unsetenv.c +@GL_COND_OBJ_WCRTOMB_TRUE@am__append_65 = wcrtomb.c +@GL_COND_OBJ_WCWIDTH_TRUE@am__append_66 = wcwidth.c +@GL_COND_OBJ_WINDOWS_MUTEX_TRUE@am__append_67 = windows-mutex.c +@GL_COND_OBJ_WINDOWS_ONCE_TRUE@am__append_68 = windows-once.c +@GL_COND_OBJ_WINDOWS_RECMUTEX_TRUE@am__append_69 = windows-recmutex.c +@GL_COND_OBJ_WINDOWS_RWLOCK_TRUE@am__append_70 = windows-rwlock.c +@GL_COND_OBJ_WMEMCHR_TRUE@am__append_71 = wmemchr.c +@GL_COND_OBJ_WMEMPCPY_TRUE@am__append_72 = wmempcpy.c subdir = lib ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/__inline.m4 \ $(top_srcdir)/m4/absolute-header.m4 $(top_srcdir)/m4/alloca.m4 \ $(top_srcdir)/m4/arpa_inet_h.m4 \ - $(top_srcdir)/m4/asm-underscore.m4 $(top_srcdir)/m4/atoll.m4 \ + $(top_srcdir)/m4/asm-underscore.m4 \ + $(top_srcdir)/m4/assert_h.m4 $(top_srcdir)/m4/atoll.m4 \ $(top_srcdir)/m4/btowc.m4 $(top_srcdir)/m4/builtin-expect.m4 \ - $(top_srcdir)/m4/c-stack.m4 $(top_srcdir)/m4/calloc.m4 \ - $(top_srcdir)/m4/clock_time.m4 $(top_srcdir)/m4/close.m4 \ - $(top_srcdir)/m4/codeset.m4 $(top_srcdir)/m4/config-h.m4 \ - $(top_srcdir)/m4/ctype_h.m4 \ + $(top_srcdir)/m4/c-bool.m4 $(top_srcdir)/m4/c-stack.m4 \ + $(top_srcdir)/m4/calloc.m4 $(top_srcdir)/m4/clock_time.m4 \ + $(top_srcdir)/m4/close.m4 $(top_srcdir)/m4/codeset.m4 \ + $(top_srcdir)/m4/config-h.m4 $(top_srcdir)/m4/ctype_h.m4 \ $(top_srcdir)/m4/double-slash-root.m4 $(top_srcdir)/m4/dup2.m4 \ $(top_srcdir)/m4/eealloc.m4 $(top_srcdir)/m4/environ.m4 \ $(top_srcdir)/m4/errno_h.m4 $(top_srcdir)/m4/error.m4 \ - $(top_srcdir)/m4/exponentd.m4 $(top_srcdir)/m4/extensions.m4 \ - $(top_srcdir)/m4/extern-inline.m4 $(top_srcdir)/m4/fcntl-o.m4 \ - $(top_srcdir)/m4/fcntl.m4 $(top_srcdir)/m4/fcntl_h.m4 \ - $(top_srcdir)/m4/fdopen.m4 $(top_srcdir)/m4/filenamecat.m4 \ + $(top_srcdir)/m4/error_h.m4 $(top_srcdir)/m4/exponentd.m4 \ + $(top_srcdir)/m4/extensions.m4 \ + $(top_srcdir)/m4/extern-inline.m4 $(top_srcdir)/m4/fclose.m4 \ + $(top_srcdir)/m4/fcntl-o.m4 $(top_srcdir)/m4/fcntl.m4 \ + $(top_srcdir)/m4/fcntl_h.m4 $(top_srcdir)/m4/fdopen.m4 \ + $(top_srcdir)/m4/fflush.m4 $(top_srcdir)/m4/filenamecat.m4 \ $(top_srcdir)/m4/flexmember.m4 $(top_srcdir)/m4/float_h.m4 \ $(top_srcdir)/m4/fnmatch.m4 $(top_srcdir)/m4/fnmatch_h.m4 \ $(top_srcdir)/m4/fopen.m4 $(top_srcdir)/m4/fpieee.m4 \ @@ -252,15 +335,16 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/host-cpu-c-abi.m4 $(top_srcdir)/m4/iconv.m4 \ $(top_srcdir)/m4/iconv_h.m4 $(top_srcdir)/m4/iconv_open.m4 \ $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inet_pton.m4 \ - $(top_srcdir)/m4/inline.m4 $(top_srcdir)/m4/intlmacosx.m4 \ - $(top_srcdir)/m4/intmax_t.m4 $(top_srcdir)/m4/inttostr.m4 \ - $(top_srcdir)/m4/inttypes.m4 $(top_srcdir)/m4/inttypes_h.m4 \ - $(top_srcdir)/m4/ioctl.m4 $(top_srcdir)/m4/isblank.m4 \ - $(top_srcdir)/m4/iswblank.m4 $(top_srcdir)/m4/iswdigit.m4 \ - $(top_srcdir)/m4/iswxdigit.m4 $(top_srcdir)/m4/langinfo_h.m4 \ - $(top_srcdir)/m4/largefile.m4 $(top_srcdir)/m4/lib-ld.m4 \ - $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ - $(top_srcdir)/m4/libsigsegv.m4 \ + $(top_srcdir)/m4/inline.m4 \ + $(top_srcdir)/m4/intl-thread-locale.m4 \ + $(top_srcdir)/m4/intlmacosx.m4 $(top_srcdir)/m4/intmax_t.m4 \ + $(top_srcdir)/m4/inttostr.m4 $(top_srcdir)/m4/inttypes.m4 \ + $(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/ioctl.m4 \ + $(top_srcdir)/m4/isblank.m4 $(top_srcdir)/m4/iswblank.m4 \ + $(top_srcdir)/m4/iswdigit.m4 $(top_srcdir)/m4/iswxdigit.m4 \ + $(top_srcdir)/m4/langinfo_h.m4 $(top_srcdir)/m4/largefile.m4 \ + $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ + $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libsigsegv.m4 \ $(top_srcdir)/m4/libunistring-base.m4 \ $(top_srcdir)/m4/limits-h.m4 $(top_srcdir)/m4/localcharset.m4 \ $(top_srcdir)/m4/locale-fr.m4 $(top_srcdir)/m4/locale-ja.m4 \ @@ -282,11 +366,13 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/netinet_in_h.m4 \ $(top_srcdir)/m4/nl_langinfo.m4 $(top_srcdir)/m4/nls.m4 \ $(top_srcdir)/m4/nocrash.m4 $(top_srcdir)/m4/nstrftime.m4 \ - $(top_srcdir)/m4/off_t.m4 $(top_srcdir)/m4/open-cloexec.m4 \ + $(top_srcdir)/m4/nullptr.m4 $(top_srcdir)/m4/off_t.m4 \ + $(top_srcdir)/m4/open-cloexec.m4 \ $(top_srcdir)/m4/open-slash.m4 $(top_srcdir)/m4/open.m4 \ - $(top_srcdir)/m4/pathmax.m4 $(top_srcdir)/m4/perror.m4 \ - $(top_srcdir)/m4/pipe.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/printf.m4 $(top_srcdir)/m4/progtest.m4 \ + $(top_srcdir)/m4/pathmax.m4 $(top_srcdir)/m4/perl.m4 \ + $(top_srcdir)/m4/perror.m4 $(top_srcdir)/m4/pipe.m4 \ + $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/printf.m4 \ + $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/pselect.m4 \ $(top_srcdir)/m4/pthread-thread.m4 \ $(top_srcdir)/m4/pthread_h.m4 \ $(top_srcdir)/m4/pthread_rwlock_rdlock.m4 \ @@ -297,9 +383,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/reallocarray.m4 $(top_srcdir)/m4/regex.m4 \ $(top_srcdir)/m4/sched_h.m4 $(top_srcdir)/m4/select.m4 \ $(top_srcdir)/m4/setenv.m4 $(top_srcdir)/m4/setlocale_null.m4 \ - $(top_srcdir)/m4/sigaction.m4 $(top_srcdir)/m4/sigaltstack.m4 \ - $(top_srcdir)/m4/signal_h.m4 \ - $(top_srcdir)/m4/signalblocking.m4 \ + $(top_srcdir)/m4/sigaltstack.m4 $(top_srcdir)/m4/signal_h.m4 \ + $(top_srcdir)/m4/signalblocking.m4 $(top_srcdir)/m4/sigsegv.m4 \ $(top_srcdir)/m4/size_max.m4 $(top_srcdir)/m4/sleep.m4 \ $(top_srcdir)/m4/snprintf.m4 $(top_srcdir)/m4/socketlib.m4 \ $(top_srcdir)/m4/sockets.m4 $(top_srcdir)/m4/socklen.m4 \ @@ -307,9 +392,9 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/stack-direction.m4 \ $(top_srcdir)/m4/stat-time.m4 $(top_srcdir)/m4/stat.m4 \ $(top_srcdir)/m4/stdalign.m4 $(top_srcdir)/m4/stdarg.m4 \ - $(top_srcdir)/m4/stdbool.m4 $(top_srcdir)/m4/stddef_h.m4 \ - $(top_srcdir)/m4/stdint.m4 $(top_srcdir)/m4/stdint_h.m4 \ - $(top_srcdir)/m4/stdio_h.m4 $(top_srcdir)/m4/stdlib_h.m4 \ + $(top_srcdir)/m4/stddef_h.m4 $(top_srcdir)/m4/stdint.m4 \ + $(top_srcdir)/m4/stdint_h.m4 $(top_srcdir)/m4/stdio_h.m4 \ + $(top_srcdir)/m4/stdlib_h.m4 $(top_srcdir)/m4/stpcpy.m4 \ $(top_srcdir)/m4/strcase.m4 $(top_srcdir)/m4/strerror.m4 \ $(top_srcdir)/m4/strerror_r.m4 $(top_srcdir)/m4/string_h.m4 \ $(top_srcdir)/m4/strings_h.m4 $(top_srcdir)/m4/strnlen.m4 \ @@ -323,12 +408,12 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/sys_types_h.m4 $(top_srcdir)/m4/sys_uio_h.m4 \ $(top_srcdir)/m4/sys_wait_h.m4 $(top_srcdir)/m4/tempname.m4 \ $(top_srcdir)/m4/thread.m4 $(top_srcdir)/m4/threadlib.m4 \ - $(top_srcdir)/m4/time_h.m4 $(top_srcdir)/m4/time_r.m4 \ - $(top_srcdir)/m4/time_rz.m4 $(top_srcdir)/m4/timegm.m4 \ - $(top_srcdir)/m4/timespec.m4 $(top_srcdir)/m4/tm_gmtoff.m4 \ - $(top_srcdir)/m4/tzset.m4 $(top_srcdir)/m4/unistd_h.m4 \ - $(top_srcdir)/m4/unlocked-io.m4 $(top_srcdir)/m4/vasnprintf.m4 \ - $(top_srcdir)/m4/vasprintf.m4 $(top_srcdir)/m4/version-etc.m4 \ + $(top_srcdir)/m4/time.m4 $(top_srcdir)/m4/time_h.m4 \ + $(top_srcdir)/m4/time_r.m4 $(top_srcdir)/m4/time_rz.m4 \ + $(top_srcdir)/m4/timegm.m4 $(top_srcdir)/m4/timespec.m4 \ + $(top_srcdir)/m4/tm_gmtoff.m4 $(top_srcdir)/m4/tzset.m4 \ + $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/unlocked-io.m4 \ + $(top_srcdir)/m4/vasnprintf.m4 $(top_srcdir)/m4/version-etc.m4 \ $(top_srcdir)/m4/visibility.m4 $(top_srcdir)/m4/warn-on-use.m4 \ $(top_srcdir)/m4/warnings.m4 $(top_srcdir)/m4/wchar_h.m4 \ $(top_srcdir)/m4/wchar_t.m4 $(top_srcdir)/m4/wcrtomb.m4 \ @@ -337,7 +422,6 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/wint_t.m4 $(top_srcdir)/m4/wmemchr.m4 \ $(top_srcdir)/m4/wmempcpy.m4 $(top_srcdir)/m4/xalloc.m4 \ $(top_srcdir)/m4/xsize.m4 $(top_srcdir)/m4/xstrtol.m4 \ - $(top_srcdir)/m4/xvasprintf.m4 $(top_srcdir)/m4/year2038.m4 \ $(top_srcdir)/m4/zzgnulib.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) @@ -353,73 +437,252 @@ am__v_AR_ = $(am__v_AR_@AM_DEFAULT_V@) am__v_AR_0 = @echo " AR " $@; am__v_AR_1 = libdiffutils_a_AR = $(AR) $(ARFLAGS) +libdiffutils_a_RANLIB = $(RANLIB) am__DEPENDENCIES_1 = am__libdiffutils_a_SOURCES_DIST = allocator.c areadlink.c argmatch.c \ basename-lgpl.c binary-io.h binary-io.c bitrotate.h \ - bitrotate.c c-ctype.h c-ctype.c c-stack.h c-stack.c \ + bitrotate.c btowc.c c-ctype.h c-ctype.c c-stack.h c-stack.c \ c-strcase.h c-strcasecmp.c c-strncasecmp.c careadlinkat.c \ - cloexec.c diffseq.h dirname.c basename.c dirname-lgpl.c \ - stripslash.c malloc/dynarray_at_failure.c \ - malloc/dynarray_emplace_enlarge.c malloc/dynarray_finalize.c \ - malloc/dynarray_resize.c malloc/dynarray_resize_clear.c \ - exclude.c exitfail.c fd-hook.c file-type.c filenamecat.c \ - filenamecat-lgpl.c getprogname.h getprogname.c gettext.h \ - gettime.c hard-locale.c hash.c ialloc.c idx.h imaxtostr.c \ - inttostr.c offtostr.c uinttostr.c umaxtostr.c localcharset.c \ - glthread/lock.h glthread/lock.c malloca.c mbchar.c mbiter.h \ - mbiter.c mbscasecmp.c mbslen.c mbsstr.c mbuiter.h mbuiter.c \ - minmax.h nstrftime.c progname.h progname.c propername.h \ - propername.c quotearg.c setlocale_null.c sh-quote.h sh-quote.c \ - sigsegv.c stackvma.c size_max.h stat-time.c stdopen.c \ - striconv.h striconv.c strnlen1.h strnlen1.c system-quote.h \ - system-quote.c tempname.c glthread/threadlib.c timespec.c \ - trim.c unistd.c unistr/u8-mbtoucr.c unistr/u8-uctomb.c \ - unistr/u8-uctomb-aux.c uniwidth/width.c version-etc.h \ - version-etc.c version-etc-fsf.c wctype-h.c xmalloc.c \ - xalloc-die.c xfreopen.c xfreopen.h xmalloca.c xreadlink.c \ - xsize.h xsize.c xstdopen.c xstriconv.h xstriconv.c \ - xstrtoimax.c xstrtol.c xstrtoul.c xvasprintf.h xvasprintf.c \ - xasprintf.c cmpbuf.c prepargs.c + cloexec.c close.c diffseq.h dirname.c basename.c \ + dirname-lgpl.c stripslash.c dup2.c error.c exclude.c \ + exitfail.c fcntl.c fd-hook.c file-type.c filenamecat.c \ + filenamecat-lgpl.c free.c freopen.c fstat.c getdtablesize.c \ + getopt.c getopt1.c getpagesize.c getprogname.c getrandom.c \ + gettext.h gettime.c gettimeofday.c \ + malloc/dynarray_at_failure.c malloc/dynarray_emplace_enlarge.c \ + malloc/dynarray_finalize.c malloc/dynarray_resize.c \ + malloc/dynarray_resize_clear.c hard-locale.c hash.c ialloc.c \ + iconv_open.c iconv.c iconv_close.c idx.h imaxtostr.c \ + inttostr.c offtostr.c uinttostr.c umaxtostr.c isblank.c \ + iswblank.c iswdigit.c iswxdigit.c localcharset.c localeconv.c \ + glthread/lock.h glthread/lock.c lstat.c malloca.c mbchar.c \ + mbiter.h mbiter.c mbrtowc.c mbscasecmp.c mbsinit.c mbslen.c \ + mbsrtowcs.c mbsstr.c mbtowc.c mbuiter.h mbuiter.c memchr.c \ + mempcpy.c minmax.h mkdir.c mkstemp.c msvc-inval.c \ + msvc-nothrow.c nl_langinfo.c nl_langinfo-lock.c nstrftime.c \ + open.c progname.h progname.c propername.h propername.c \ + quotearg.c raise.c rawmemchr.c readlink.c reallocarray.c \ + regex.c setenv.c setlocale_null.c setlocale-lock.c sh-quote.h \ + sh-quote.c sigprocmask.c sigsegv.c stackvma.c stat.c \ + stat-time.c stdio-read.c stdio-write.c stdopen.c stpcpy.c \ + strcasecmp.c strncasecmp.c strerror.c strerror-override.c \ + striconv.h striconv.c strnlen.c strnlen1.h strnlen1.c \ + strptime.c strtoimax.c strtoll.c system-quote.h system-quote.c \ + tempname.c glthread/threadlib.c time_r.c time_rz.c timegm.c \ + timespec.c trim.c tzset.c unistd.c unistr/u8-mbtoucr.c \ + unistr/u8-uctomb.c unistr/u8-uctomb-aux.c uniwidth/width.c \ + unsetenv.c version-etc.h version-etc.c version-etc-fsf.c \ + wcrtomb.c wctype-h.c wcwidth.c windows-mutex.c windows-once.c \ + windows-recmutex.c windows-rwlock.c wmemchr.c wmempcpy.c \ + xmalloc.c xalloc-die.c xfreopen.c xfreopen.h xmalloca.c \ + xreadlink.c xstdopen.c xstriconv.h xstriconv.c xstrtoimax.c \ + xstrtol.c xstrtoul.c cmpbuf.c +@GL_COND_OBJ_BTOWC_TRUE@am__objects_1 = \ +@GL_COND_OBJ_BTOWC_TRUE@ libdiffutils_a-btowc.$(OBJEXT) +@GL_COND_OBJ_CLOSE_TRUE@am__objects_2 = \ +@GL_COND_OBJ_CLOSE_TRUE@ libdiffutils_a-close.$(OBJEXT) +@GL_COND_OBJ_DUP2_TRUE@am__objects_3 = libdiffutils_a-dup2.$(OBJEXT) +@GL_COND_OBJ_ERROR_TRUE@am__objects_4 = \ +@GL_COND_OBJ_ERROR_TRUE@ libdiffutils_a-error.$(OBJEXT) +@GL_COND_OBJ_FCNTL_TRUE@am__objects_5 = \ +@GL_COND_OBJ_FCNTL_TRUE@ libdiffutils_a-fcntl.$(OBJEXT) +@GL_COND_OBJ_FREE_TRUE@am__objects_6 = libdiffutils_a-free.$(OBJEXT) +@GL_COND_OBJ_FREOPEN_TRUE@am__objects_7 = \ +@GL_COND_OBJ_FREOPEN_TRUE@ libdiffutils_a-freopen.$(OBJEXT) +@GL_COND_OBJ_FSTAT_TRUE@am__objects_8 = \ +@GL_COND_OBJ_FSTAT_TRUE@ libdiffutils_a-fstat.$(OBJEXT) +@GL_COND_OBJ_GETDTABLESIZE_TRUE@am__objects_9 = libdiffutils_a-getdtablesize.$(OBJEXT) +@GL_COND_OBJ_GETOPT_TRUE@am__objects_10 = \ +@GL_COND_OBJ_GETOPT_TRUE@ libdiffutils_a-getopt.$(OBJEXT) \ +@GL_COND_OBJ_GETOPT_TRUE@ libdiffutils_a-getopt1.$(OBJEXT) +@GL_COND_OBJ_GETPAGESIZE_TRUE@am__objects_11 = libdiffutils_a-getpagesize.$(OBJEXT) +@GL_COND_OBJ_GETPROGNAME_TRUE@am__objects_12 = libdiffutils_a-getprogname.$(OBJEXT) +@GL_COND_OBJ_GETRANDOM_TRUE@am__objects_13 = libdiffutils_a-getrandom.$(OBJEXT) +@GL_COND_OBJ_GETTIMEOFDAY_TRUE@am__objects_14 = libdiffutils_a-gettimeofday.$(OBJEXT) am__dirstamp = $(am__leading_dot)dirstamp -@GL_GENERATE_SIGSEGV_H_TRUE@am__objects_1 = sigsegv.$(OBJEXT) \ -@GL_GENERATE_SIGSEGV_H_TRUE@ stackvma.$(OBJEXT) -@LIBUNISTRING_COMPILE_UNISTR_U8_MBTOUCR_TRUE@am__objects_2 = unistr/u8-mbtoucr.$(OBJEXT) -@LIBUNISTRING_COMPILE_UNISTR_U8_UCTOMB_TRUE@am__objects_3 = unistr/u8-uctomb.$(OBJEXT) \ -@LIBUNISTRING_COMPILE_UNISTR_U8_UCTOMB_TRUE@ unistr/u8-uctomb-aux.$(OBJEXT) -@LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_TRUE@am__objects_4 = uniwidth/width.$(OBJEXT) -am_libdiffutils_a_OBJECTS = allocator.$(OBJEXT) areadlink.$(OBJEXT) \ - argmatch.$(OBJEXT) basename-lgpl.$(OBJEXT) binary-io.$(OBJEXT) \ - bitrotate.$(OBJEXT) c-ctype.$(OBJEXT) c-stack.$(OBJEXT) \ - c-strcasecmp.$(OBJEXT) c-strncasecmp.$(OBJEXT) \ - careadlinkat.$(OBJEXT) cloexec.$(OBJEXT) dirname.$(OBJEXT) \ - basename.$(OBJEXT) dirname-lgpl.$(OBJEXT) stripslash.$(OBJEXT) \ - malloc/dynarray_at_failure.$(OBJEXT) \ - malloc/dynarray_emplace_enlarge.$(OBJEXT) \ - malloc/dynarray_finalize.$(OBJEXT) \ - malloc/dynarray_resize.$(OBJEXT) \ - malloc/dynarray_resize_clear.$(OBJEXT) exclude.$(OBJEXT) \ - exitfail.$(OBJEXT) fd-hook.$(OBJEXT) file-type.$(OBJEXT) \ - filenamecat.$(OBJEXT) filenamecat-lgpl.$(OBJEXT) \ - getprogname.$(OBJEXT) gettime.$(OBJEXT) hard-locale.$(OBJEXT) \ - hash.$(OBJEXT) ialloc.$(OBJEXT) imaxtostr.$(OBJEXT) \ - inttostr.$(OBJEXT) offtostr.$(OBJEXT) uinttostr.$(OBJEXT) \ - umaxtostr.$(OBJEXT) localcharset.$(OBJEXT) \ - glthread/lock.$(OBJEXT) malloca.$(OBJEXT) mbchar.$(OBJEXT) \ - mbiter.$(OBJEXT) mbscasecmp.$(OBJEXT) mbslen.$(OBJEXT) \ - mbsstr.$(OBJEXT) mbuiter.$(OBJEXT) nstrftime.$(OBJEXT) \ - progname.$(OBJEXT) propername.$(OBJEXT) quotearg.$(OBJEXT) \ - setlocale_null.$(OBJEXT) sh-quote.$(OBJEXT) $(am__objects_1) \ - stat-time.$(OBJEXT) stdopen.$(OBJEXT) striconv.$(OBJEXT) \ - strnlen1.$(OBJEXT) system-quote.$(OBJEXT) tempname.$(OBJEXT) \ - glthread/threadlib.$(OBJEXT) timespec.$(OBJEXT) trim.$(OBJEXT) \ - unistd.$(OBJEXT) $(am__objects_2) $(am__objects_3) \ - $(am__objects_4) version-etc.$(OBJEXT) \ - version-etc-fsf.$(OBJEXT) wctype-h.$(OBJEXT) xmalloc.$(OBJEXT) \ - xalloc-die.$(OBJEXT) xfreopen.$(OBJEXT) xmalloca.$(OBJEXT) \ - xreadlink.$(OBJEXT) xsize.$(OBJEXT) xstdopen.$(OBJEXT) \ - xstriconv.$(OBJEXT) xstrtoimax.$(OBJEXT) xstrtol.$(OBJEXT) \ - xstrtoul.$(OBJEXT) xvasprintf.$(OBJEXT) xasprintf.$(OBJEXT) \ - cmpbuf.$(OBJEXT) prepargs.$(OBJEXT) +@GL_COND_OBJ_ICONV_OPEN_TRUE@am__objects_15 = libdiffutils_a-iconv_open.$(OBJEXT) +@GL_COND_OBJ_ICONV_TRUE@am__objects_16 = \ +@GL_COND_OBJ_ICONV_TRUE@ libdiffutils_a-iconv.$(OBJEXT) \ +@GL_COND_OBJ_ICONV_TRUE@ libdiffutils_a-iconv_close.$(OBJEXT) +@GL_COND_OBJ_ISBLANK_TRUE@am__objects_17 = \ +@GL_COND_OBJ_ISBLANK_TRUE@ libdiffutils_a-isblank.$(OBJEXT) +@GL_COND_OBJ_ISWBLANK_TRUE@am__objects_18 = \ +@GL_COND_OBJ_ISWBLANK_TRUE@ libdiffutils_a-iswblank.$(OBJEXT) +@GL_COND_OBJ_ISWDIGIT_TRUE@am__objects_19 = \ +@GL_COND_OBJ_ISWDIGIT_TRUE@ libdiffutils_a-iswdigit.$(OBJEXT) +@GL_COND_OBJ_ISWXDIGIT_TRUE@am__objects_20 = libdiffutils_a-iswxdigit.$(OBJEXT) +@GL_COND_OBJ_LOCALECONV_TRUE@am__objects_21 = libdiffutils_a-localeconv.$(OBJEXT) +@GL_COND_OBJ_LSTAT_TRUE@am__objects_22 = \ +@GL_COND_OBJ_LSTAT_TRUE@ libdiffutils_a-lstat.$(OBJEXT) +@GL_COND_OBJ_MBRTOWC_TRUE@am__objects_23 = \ +@GL_COND_OBJ_MBRTOWC_TRUE@ libdiffutils_a-mbrtowc.$(OBJEXT) +@GL_COND_OBJ_MBSINIT_TRUE@am__objects_24 = \ +@GL_COND_OBJ_MBSINIT_TRUE@ libdiffutils_a-mbsinit.$(OBJEXT) +@GL_COND_OBJ_MBSRTOWCS_TRUE@am__objects_25 = libdiffutils_a-mbsrtowcs.$(OBJEXT) +@GL_COND_OBJ_MBTOWC_TRUE@am__objects_26 = \ +@GL_COND_OBJ_MBTOWC_TRUE@ libdiffutils_a-mbtowc.$(OBJEXT) +@GL_COND_OBJ_MEMCHR_TRUE@am__objects_27 = \ +@GL_COND_OBJ_MEMCHR_TRUE@ libdiffutils_a-memchr.$(OBJEXT) +@GL_COND_OBJ_MEMPCPY_TRUE@am__objects_28 = \ +@GL_COND_OBJ_MEMPCPY_TRUE@ libdiffutils_a-mempcpy.$(OBJEXT) +@GL_COND_OBJ_MKDIR_TRUE@am__objects_29 = \ +@GL_COND_OBJ_MKDIR_TRUE@ libdiffutils_a-mkdir.$(OBJEXT) +@GL_COND_OBJ_MKSTEMP_TRUE@am__objects_30 = \ +@GL_COND_OBJ_MKSTEMP_TRUE@ libdiffutils_a-mkstemp.$(OBJEXT) +@GL_COND_OBJ_MSVC_INVAL_TRUE@am__objects_31 = libdiffutils_a-msvc-inval.$(OBJEXT) +@GL_COND_OBJ_MSVC_NOTHROW_TRUE@am__objects_32 = libdiffutils_a-msvc-nothrow.$(OBJEXT) +@GL_COND_OBJ_NL_LANGINFO_TRUE@am__objects_33 = libdiffutils_a-nl_langinfo.$(OBJEXT) +@GL_COND_OBJ_NL_LANGINFO_LOCK_TRUE@am__objects_34 = libdiffutils_a-nl_langinfo-lock.$(OBJEXT) +@GL_COND_OBJ_OPEN_TRUE@am__objects_35 = libdiffutils_a-open.$(OBJEXT) +@GL_COND_OBJ_RAISE_TRUE@am__objects_36 = \ +@GL_COND_OBJ_RAISE_TRUE@ libdiffutils_a-raise.$(OBJEXT) +@GL_COND_OBJ_RAWMEMCHR_TRUE@am__objects_37 = libdiffutils_a-rawmemchr.$(OBJEXT) +@GL_COND_OBJ_READLINK_TRUE@am__objects_38 = \ +@GL_COND_OBJ_READLINK_TRUE@ libdiffutils_a-readlink.$(OBJEXT) +@GL_COND_OBJ_REALLOCARRAY_TRUE@am__objects_39 = libdiffutils_a-reallocarray.$(OBJEXT) +@GL_COND_OBJ_REGEX_TRUE@am__objects_40 = \ +@GL_COND_OBJ_REGEX_TRUE@ libdiffutils_a-regex.$(OBJEXT) +@GL_COND_OBJ_SETENV_TRUE@am__objects_41 = \ +@GL_COND_OBJ_SETENV_TRUE@ libdiffutils_a-setenv.$(OBJEXT) +@GL_COND_OBJ_SETLOCALE_LOCK_TRUE@am__objects_42 = libdiffutils_a-setlocale-lock.$(OBJEXT) +@GL_COND_OBJ_SIGPROCMASK_TRUE@am__objects_43 = libdiffutils_a-sigprocmask.$(OBJEXT) +@GL_GENERATE_SIGSEGV_H_TRUE@am__objects_44 = \ +@GL_GENERATE_SIGSEGV_H_TRUE@ libdiffutils_a-sigsegv.$(OBJEXT) \ +@GL_GENERATE_SIGSEGV_H_TRUE@ libdiffutils_a-stackvma.$(OBJEXT) +@GL_COND_OBJ_STAT_TRUE@am__objects_45 = libdiffutils_a-stat.$(OBJEXT) +@GL_COND_OBJ_STDIO_READ_TRUE@am__objects_46 = libdiffutils_a-stdio-read.$(OBJEXT) +@GL_COND_OBJ_STDIO_WRITE_TRUE@am__objects_47 = libdiffutils_a-stdio-write.$(OBJEXT) +@GL_COND_OBJ_STPCPY_TRUE@am__objects_48 = \ +@GL_COND_OBJ_STPCPY_TRUE@ libdiffutils_a-stpcpy.$(OBJEXT) +@GL_COND_OBJ_STRCASECMP_TRUE@am__objects_49 = libdiffutils_a-strcasecmp.$(OBJEXT) +@GL_COND_OBJ_STRNCASECMP_TRUE@am__objects_50 = libdiffutils_a-strncasecmp.$(OBJEXT) +@GL_COND_OBJ_STRERROR_TRUE@am__objects_51 = \ +@GL_COND_OBJ_STRERROR_TRUE@ libdiffutils_a-strerror.$(OBJEXT) +@GL_COND_OBJ_STRERROR_OVERRIDE_TRUE@am__objects_52 = libdiffutils_a-strerror-override.$(OBJEXT) +@GL_COND_OBJ_STRNLEN_TRUE@am__objects_53 = \ +@GL_COND_OBJ_STRNLEN_TRUE@ libdiffutils_a-strnlen.$(OBJEXT) +@GL_COND_OBJ_STRPTIME_TRUE@am__objects_54 = \ +@GL_COND_OBJ_STRPTIME_TRUE@ libdiffutils_a-strptime.$(OBJEXT) +@GL_COND_OBJ_STRTOIMAX_TRUE@am__objects_55 = libdiffutils_a-strtoimax.$(OBJEXT) +@GL_COND_OBJ_STRTOLL_TRUE@am__objects_56 = \ +@GL_COND_OBJ_STRTOLL_TRUE@ libdiffutils_a-strtoll.$(OBJEXT) +@GL_COND_OBJ_TIME_R_TRUE@am__objects_57 = \ +@GL_COND_OBJ_TIME_R_TRUE@ libdiffutils_a-time_r.$(OBJEXT) +@GL_COND_OBJ_TIME_RZ_TRUE@am__objects_58 = \ +@GL_COND_OBJ_TIME_RZ_TRUE@ libdiffutils_a-time_rz.$(OBJEXT) +@GL_COND_OBJ_TIMEGM_TRUE@am__objects_59 = \ +@GL_COND_OBJ_TIMEGM_TRUE@ libdiffutils_a-timegm.$(OBJEXT) +@GL_COND_OBJ_TZSET_TRUE@am__objects_60 = \ +@GL_COND_OBJ_TZSET_TRUE@ libdiffutils_a-tzset.$(OBJEXT) +@LIBUNISTRING_COMPILE_UNISTR_U8_MBTOUCR_TRUE@am__objects_61 = unistr/libdiffutils_a-u8-mbtoucr.$(OBJEXT) +@LIBUNISTRING_COMPILE_UNISTR_U8_UCTOMB_TRUE@am__objects_62 = unistr/libdiffutils_a-u8-uctomb.$(OBJEXT) \ +@LIBUNISTRING_COMPILE_UNISTR_U8_UCTOMB_TRUE@ unistr/libdiffutils_a-u8-uctomb-aux.$(OBJEXT) +@LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_TRUE@am__objects_63 = uniwidth/libdiffutils_a-width.$(OBJEXT) +@GL_COND_OBJ_UNSETENV_TRUE@am__objects_64 = \ +@GL_COND_OBJ_UNSETENV_TRUE@ libdiffutils_a-unsetenv.$(OBJEXT) +@GL_COND_OBJ_WCRTOMB_TRUE@am__objects_65 = \ +@GL_COND_OBJ_WCRTOMB_TRUE@ libdiffutils_a-wcrtomb.$(OBJEXT) +@GL_COND_OBJ_WCWIDTH_TRUE@am__objects_66 = \ +@GL_COND_OBJ_WCWIDTH_TRUE@ libdiffutils_a-wcwidth.$(OBJEXT) +@GL_COND_OBJ_WINDOWS_MUTEX_TRUE@am__objects_67 = libdiffutils_a-windows-mutex.$(OBJEXT) +@GL_COND_OBJ_WINDOWS_ONCE_TRUE@am__objects_68 = libdiffutils_a-windows-once.$(OBJEXT) +@GL_COND_OBJ_WINDOWS_RECMUTEX_TRUE@am__objects_69 = libdiffutils_a-windows-recmutex.$(OBJEXT) +@GL_COND_OBJ_WINDOWS_RWLOCK_TRUE@am__objects_70 = libdiffutils_a-windows-rwlock.$(OBJEXT) +@GL_COND_OBJ_WMEMCHR_TRUE@am__objects_71 = \ +@GL_COND_OBJ_WMEMCHR_TRUE@ libdiffutils_a-wmemchr.$(OBJEXT) +@GL_COND_OBJ_WMEMPCPY_TRUE@am__objects_72 = \ +@GL_COND_OBJ_WMEMPCPY_TRUE@ libdiffutils_a-wmempcpy.$(OBJEXT) +am_libdiffutils_a_OBJECTS = libdiffutils_a-allocator.$(OBJEXT) \ + libdiffutils_a-areadlink.$(OBJEXT) \ + libdiffutils_a-argmatch.$(OBJEXT) \ + libdiffutils_a-basename-lgpl.$(OBJEXT) \ + libdiffutils_a-binary-io.$(OBJEXT) \ + libdiffutils_a-bitrotate.$(OBJEXT) $(am__objects_1) \ + libdiffutils_a-c-ctype.$(OBJEXT) \ + libdiffutils_a-c-stack.$(OBJEXT) \ + libdiffutils_a-c-strcasecmp.$(OBJEXT) \ + libdiffutils_a-c-strncasecmp.$(OBJEXT) \ + libdiffutils_a-careadlinkat.$(OBJEXT) \ + libdiffutils_a-cloexec.$(OBJEXT) $(am__objects_2) \ + libdiffutils_a-dirname.$(OBJEXT) \ + libdiffutils_a-basename.$(OBJEXT) \ + libdiffutils_a-dirname-lgpl.$(OBJEXT) \ + libdiffutils_a-stripslash.$(OBJEXT) $(am__objects_3) \ + $(am__objects_4) libdiffutils_a-exclude.$(OBJEXT) \ + libdiffutils_a-exitfail.$(OBJEXT) $(am__objects_5) \ + libdiffutils_a-fd-hook.$(OBJEXT) \ + libdiffutils_a-file-type.$(OBJEXT) \ + libdiffutils_a-filenamecat.$(OBJEXT) \ + libdiffutils_a-filenamecat-lgpl.$(OBJEXT) $(am__objects_6) \ + $(am__objects_7) $(am__objects_8) $(am__objects_9) \ + $(am__objects_10) $(am__objects_11) $(am__objects_12) \ + $(am__objects_13) libdiffutils_a-gettime.$(OBJEXT) \ + $(am__objects_14) \ + malloc/libdiffutils_a-dynarray_at_failure.$(OBJEXT) \ + malloc/libdiffutils_a-dynarray_emplace_enlarge.$(OBJEXT) \ + malloc/libdiffutils_a-dynarray_finalize.$(OBJEXT) \ + malloc/libdiffutils_a-dynarray_resize.$(OBJEXT) \ + malloc/libdiffutils_a-dynarray_resize_clear.$(OBJEXT) \ + libdiffutils_a-hard-locale.$(OBJEXT) \ + libdiffutils_a-hash.$(OBJEXT) libdiffutils_a-ialloc.$(OBJEXT) \ + $(am__objects_15) $(am__objects_16) \ + libdiffutils_a-imaxtostr.$(OBJEXT) \ + libdiffutils_a-inttostr.$(OBJEXT) \ + libdiffutils_a-offtostr.$(OBJEXT) \ + libdiffutils_a-uinttostr.$(OBJEXT) \ + libdiffutils_a-umaxtostr.$(OBJEXT) $(am__objects_17) \ + $(am__objects_18) $(am__objects_19) $(am__objects_20) \ + libdiffutils_a-localcharset.$(OBJEXT) $(am__objects_21) \ + glthread/libdiffutils_a-lock.$(OBJEXT) $(am__objects_22) \ + libdiffutils_a-malloca.$(OBJEXT) \ + libdiffutils_a-mbchar.$(OBJEXT) \ + libdiffutils_a-mbiter.$(OBJEXT) $(am__objects_23) \ + libdiffutils_a-mbscasecmp.$(OBJEXT) $(am__objects_24) \ + libdiffutils_a-mbslen.$(OBJEXT) $(am__objects_25) \ + libdiffutils_a-mbsstr.$(OBJEXT) $(am__objects_26) \ + libdiffutils_a-mbuiter.$(OBJEXT) $(am__objects_27) \ + $(am__objects_28) $(am__objects_29) $(am__objects_30) \ + $(am__objects_31) $(am__objects_32) $(am__objects_33) \ + $(am__objects_34) libdiffutils_a-nstrftime.$(OBJEXT) \ + $(am__objects_35) libdiffutils_a-progname.$(OBJEXT) \ + libdiffutils_a-propername.$(OBJEXT) \ + libdiffutils_a-quotearg.$(OBJEXT) $(am__objects_36) \ + $(am__objects_37) $(am__objects_38) $(am__objects_39) \ + $(am__objects_40) $(am__objects_41) \ + libdiffutils_a-setlocale_null.$(OBJEXT) $(am__objects_42) \ + libdiffutils_a-sh-quote.$(OBJEXT) $(am__objects_43) \ + $(am__objects_44) $(am__objects_45) \ + libdiffutils_a-stat-time.$(OBJEXT) $(am__objects_46) \ + $(am__objects_47) libdiffutils_a-stdopen.$(OBJEXT) \ + $(am__objects_48) $(am__objects_49) $(am__objects_50) \ + $(am__objects_51) $(am__objects_52) \ + libdiffutils_a-striconv.$(OBJEXT) $(am__objects_53) \ + libdiffutils_a-strnlen1.$(OBJEXT) $(am__objects_54) \ + $(am__objects_55) $(am__objects_56) \ + libdiffutils_a-system-quote.$(OBJEXT) \ + libdiffutils_a-tempname.$(OBJEXT) \ + glthread/libdiffutils_a-threadlib.$(OBJEXT) $(am__objects_57) \ + $(am__objects_58) $(am__objects_59) \ + libdiffutils_a-timespec.$(OBJEXT) \ + libdiffutils_a-trim.$(OBJEXT) $(am__objects_60) \ + libdiffutils_a-unistd.$(OBJEXT) $(am__objects_61) \ + $(am__objects_62) $(am__objects_63) $(am__objects_64) \ + libdiffutils_a-version-etc.$(OBJEXT) \ + libdiffutils_a-version-etc-fsf.$(OBJEXT) $(am__objects_65) \ + libdiffutils_a-wctype-h.$(OBJEXT) $(am__objects_66) \ + $(am__objects_67) $(am__objects_68) $(am__objects_69) \ + $(am__objects_70) $(am__objects_71) $(am__objects_72) \ + libdiffutils_a-xmalloc.$(OBJEXT) \ + libdiffutils_a-xalloc-die.$(OBJEXT) \ + libdiffutils_a-xfreopen.$(OBJEXT) \ + libdiffutils_a-xmalloca.$(OBJEXT) \ + libdiffutils_a-xreadlink.$(OBJEXT) \ + libdiffutils_a-xstdopen.$(OBJEXT) \ + libdiffutils_a-xstriconv.$(OBJEXT) \ + libdiffutils_a-xstrtoimax.$(OBJEXT) \ + libdiffutils_a-xstrtol.$(OBJEXT) \ + libdiffutils_a-xstrtoul.$(OBJEXT) \ + libdiffutils_a-cmpbuf.$(OBJEXT) libdiffutils_a_OBJECTS = $(am_libdiffutils_a_OBJECTS) AM_V_P = $(am__v_P_@AM_V@) am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) @@ -436,99 +699,179 @@ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ depcomp = $(SHELL) $(top_srcdir)/build-aux/depcomp am__maybe_remake_depfiles = depfiles -am__depfiles_remade = ./$(DEPDIR)/allocator.Po ./$(DEPDIR)/anytostr.Po \ - ./$(DEPDIR)/areadlink.Po ./$(DEPDIR)/argmatch.Po \ - ./$(DEPDIR)/asnprintf.Po ./$(DEPDIR)/asprintf.Po \ - ./$(DEPDIR)/basename-lgpl.Po ./$(DEPDIR)/basename.Po \ - ./$(DEPDIR)/binary-io.Po ./$(DEPDIR)/bitrotate.Po \ - ./$(DEPDIR)/btowc.Po ./$(DEPDIR)/c-ctype.Po \ - ./$(DEPDIR)/c-stack.Po ./$(DEPDIR)/c-strcasecmp.Po \ - ./$(DEPDIR)/c-strncasecmp.Po ./$(DEPDIR)/calloc.Po \ - ./$(DEPDIR)/careadlinkat.Po ./$(DEPDIR)/cloexec.Po \ - ./$(DEPDIR)/close.Po ./$(DEPDIR)/cmpbuf.Po \ - ./$(DEPDIR)/dirname-lgpl.Po ./$(DEPDIR)/dirname.Po \ - ./$(DEPDIR)/dup2.Po ./$(DEPDIR)/error.Po \ - ./$(DEPDIR)/exclude.Po ./$(DEPDIR)/exitfail.Po \ - ./$(DEPDIR)/fcntl.Po ./$(DEPDIR)/fd-hook.Po \ - ./$(DEPDIR)/file-type.Po ./$(DEPDIR)/filenamecat-lgpl.Po \ - ./$(DEPDIR)/filenamecat.Po ./$(DEPDIR)/float.Po \ - ./$(DEPDIR)/fnmatch.Po ./$(DEPDIR)/fnmatch_loop.Po \ - ./$(DEPDIR)/fopen.Po ./$(DEPDIR)/free.Po \ - ./$(DEPDIR)/freopen.Po ./$(DEPDIR)/fstat.Po \ - ./$(DEPDIR)/getdtablesize.Po ./$(DEPDIR)/getopt.Po \ - ./$(DEPDIR)/getopt1.Po ./$(DEPDIR)/getpagesize.Po \ - ./$(DEPDIR)/getprogname.Po ./$(DEPDIR)/getrandom.Po \ - ./$(DEPDIR)/gettime.Po ./$(DEPDIR)/gettimeofday.Po \ - ./$(DEPDIR)/hard-locale.Po ./$(DEPDIR)/hash.Po \ - ./$(DEPDIR)/ialloc.Po ./$(DEPDIR)/iconv.Po \ - ./$(DEPDIR)/iconv_close.Po ./$(DEPDIR)/iconv_open.Po \ - ./$(DEPDIR)/imaxtostr.Po ./$(DEPDIR)/inttostr.Po \ - ./$(DEPDIR)/isblank.Po ./$(DEPDIR)/iswblank.Po \ - ./$(DEPDIR)/iswdigit.Po ./$(DEPDIR)/iswxdigit.Po \ - ./$(DEPDIR)/itold.Po ./$(DEPDIR)/lc-charset-dispatch.Po \ - ./$(DEPDIR)/localcharset.Po ./$(DEPDIR)/localeconv.Po \ - ./$(DEPDIR)/lstat.Po ./$(DEPDIR)/malloc.Po \ - ./$(DEPDIR)/malloca.Po ./$(DEPDIR)/mbchar.Po \ - ./$(DEPDIR)/mbiter.Po ./$(DEPDIR)/mbrtowc.Po \ - ./$(DEPDIR)/mbscasecmp.Po ./$(DEPDIR)/mbsinit.Po \ - ./$(DEPDIR)/mbslen.Po ./$(DEPDIR)/mbsrtowcs-state.Po \ - ./$(DEPDIR)/mbsrtowcs.Po ./$(DEPDIR)/mbsstr.Po \ - ./$(DEPDIR)/mbtowc-lock.Po ./$(DEPDIR)/mbtowc.Po \ - ./$(DEPDIR)/mbuiter.Po ./$(DEPDIR)/memchr.Po \ - ./$(DEPDIR)/mempcpy.Po ./$(DEPDIR)/mkdir.Po \ - ./$(DEPDIR)/mkstemp.Po ./$(DEPDIR)/mktime.Po \ - ./$(DEPDIR)/msvc-inval.Po ./$(DEPDIR)/msvc-nothrow.Po \ - ./$(DEPDIR)/nl_langinfo-lock.Po ./$(DEPDIR)/nl_langinfo.Po \ - ./$(DEPDIR)/nstrftime.Po ./$(DEPDIR)/offtostr.Po \ - ./$(DEPDIR)/open.Po ./$(DEPDIR)/prepargs.Po \ - ./$(DEPDIR)/printf-args.Po ./$(DEPDIR)/printf-parse.Po \ - ./$(DEPDIR)/progname.Po ./$(DEPDIR)/propername.Po \ - ./$(DEPDIR)/quotearg.Po ./$(DEPDIR)/raise.Po \ - ./$(DEPDIR)/rawmemchr.Po ./$(DEPDIR)/readlink.Po \ - ./$(DEPDIR)/realloc.Po ./$(DEPDIR)/reallocarray.Po \ - ./$(DEPDIR)/regcomp.Po ./$(DEPDIR)/regex.Po \ - ./$(DEPDIR)/regex_internal.Po ./$(DEPDIR)/regexec.Po \ - ./$(DEPDIR)/setenv.Po ./$(DEPDIR)/setlocale-lock.Po \ - ./$(DEPDIR)/setlocale_null.Po ./$(DEPDIR)/sh-quote.Po \ - ./$(DEPDIR)/sigsegv.Po ./$(DEPDIR)/stackvma.Po \ - ./$(DEPDIR)/stat-time.Po ./$(DEPDIR)/stat-w32.Po \ - ./$(DEPDIR)/stat.Po ./$(DEPDIR)/stdopen.Po \ - ./$(DEPDIR)/strcasecmp.Po ./$(DEPDIR)/strerror-override.Po \ - ./$(DEPDIR)/strerror.Po ./$(DEPDIR)/striconv.Po \ - ./$(DEPDIR)/stripslash.Po ./$(DEPDIR)/strncasecmp.Po \ - ./$(DEPDIR)/strnlen.Po ./$(DEPDIR)/strnlen1.Po \ - ./$(DEPDIR)/strptime.Po ./$(DEPDIR)/strtoimax.Po \ - ./$(DEPDIR)/strtol.Po ./$(DEPDIR)/strtoll.Po \ - ./$(DEPDIR)/system-quote.Po ./$(DEPDIR)/tempname.Po \ - ./$(DEPDIR)/time_r.Po ./$(DEPDIR)/time_rz.Po \ - ./$(DEPDIR)/timegm.Po ./$(DEPDIR)/timespec.Po \ - ./$(DEPDIR)/trim.Po ./$(DEPDIR)/tzset.Po \ - ./$(DEPDIR)/uinttostr.Po ./$(DEPDIR)/umaxtostr.Po \ - ./$(DEPDIR)/unistd.Po ./$(DEPDIR)/unsetenv.Po \ - ./$(DEPDIR)/vasnprintf.Po ./$(DEPDIR)/vasprintf.Po \ - ./$(DEPDIR)/version-etc-fsf.Po ./$(DEPDIR)/version-etc.Po \ - ./$(DEPDIR)/wcrtomb.Po ./$(DEPDIR)/wctype-h.Po \ - ./$(DEPDIR)/wcwidth.Po ./$(DEPDIR)/windows-mutex.Po \ - ./$(DEPDIR)/windows-once.Po ./$(DEPDIR)/windows-recmutex.Po \ - ./$(DEPDIR)/windows-rwlock.Po ./$(DEPDIR)/wmemchr.Po \ - ./$(DEPDIR)/wmempcpy.Po ./$(DEPDIR)/xalloc-die.Po \ - ./$(DEPDIR)/xasprintf.Po ./$(DEPDIR)/xfreopen.Po \ - ./$(DEPDIR)/xmalloc.Po ./$(DEPDIR)/xmalloca.Po \ - ./$(DEPDIR)/xreadlink.Po ./$(DEPDIR)/xsize.Po \ - ./$(DEPDIR)/xstdopen.Po ./$(DEPDIR)/xstriconv.Po \ - ./$(DEPDIR)/xstrtoimax.Po ./$(DEPDIR)/xstrtol.Po \ - ./$(DEPDIR)/xstrtoul.Po ./$(DEPDIR)/xvasprintf.Po \ - glthread/$(DEPDIR)/lock.Po glthread/$(DEPDIR)/threadlib.Po \ - malloc/$(DEPDIR)/dynarray-skeleton.Po \ - malloc/$(DEPDIR)/dynarray_at_failure.Po \ - malloc/$(DEPDIR)/dynarray_emplace_enlarge.Po \ - malloc/$(DEPDIR)/dynarray_finalize.Po \ - malloc/$(DEPDIR)/dynarray_resize.Po \ - malloc/$(DEPDIR)/dynarray_resize_clear.Po \ - unistr/$(DEPDIR)/u8-mbtoucr.Po \ - unistr/$(DEPDIR)/u8-uctomb-aux.Po \ - unistr/$(DEPDIR)/u8-uctomb.Po uniwidth/$(DEPDIR)/width.Po +am__depfiles_remade = ./$(DEPDIR)/libdiffutils_a-allocator.Po \ + ./$(DEPDIR)/libdiffutils_a-anytostr.Po \ + ./$(DEPDIR)/libdiffutils_a-areadlink.Po \ + ./$(DEPDIR)/libdiffutils_a-argmatch.Po \ + ./$(DEPDIR)/libdiffutils_a-basename-lgpl.Po \ + ./$(DEPDIR)/libdiffutils_a-basename.Po \ + ./$(DEPDIR)/libdiffutils_a-binary-io.Po \ + ./$(DEPDIR)/libdiffutils_a-bitrotate.Po \ + ./$(DEPDIR)/libdiffutils_a-btowc.Po \ + ./$(DEPDIR)/libdiffutils_a-c-ctype.Po \ + ./$(DEPDIR)/libdiffutils_a-c-stack.Po \ + ./$(DEPDIR)/libdiffutils_a-c-strcasecmp.Po \ + ./$(DEPDIR)/libdiffutils_a-c-strncasecmp.Po \ + ./$(DEPDIR)/libdiffutils_a-calloc.Po \ + ./$(DEPDIR)/libdiffutils_a-careadlinkat.Po \ + ./$(DEPDIR)/libdiffutils_a-cloexec.Po \ + ./$(DEPDIR)/libdiffutils_a-close.Po \ + ./$(DEPDIR)/libdiffutils_a-cmpbuf.Po \ + ./$(DEPDIR)/libdiffutils_a-dirname-lgpl.Po \ + ./$(DEPDIR)/libdiffutils_a-dirname.Po \ + ./$(DEPDIR)/libdiffutils_a-dup2.Po \ + ./$(DEPDIR)/libdiffutils_a-error.Po \ + ./$(DEPDIR)/libdiffutils_a-exclude.Po \ + ./$(DEPDIR)/libdiffutils_a-exitfail.Po \ + ./$(DEPDIR)/libdiffutils_a-fcntl.Po \ + ./$(DEPDIR)/libdiffutils_a-fd-hook.Po \ + ./$(DEPDIR)/libdiffutils_a-file-type.Po \ + ./$(DEPDIR)/libdiffutils_a-filenamecat-lgpl.Po \ + ./$(DEPDIR)/libdiffutils_a-filenamecat.Po \ + ./$(DEPDIR)/libdiffutils_a-fnmatch.Po \ + ./$(DEPDIR)/libdiffutils_a-fnmatch_loop.Po \ + ./$(DEPDIR)/libdiffutils_a-fopen.Po \ + ./$(DEPDIR)/libdiffutils_a-free.Po \ + ./$(DEPDIR)/libdiffutils_a-freopen.Po \ + ./$(DEPDIR)/libdiffutils_a-fstat.Po \ + ./$(DEPDIR)/libdiffutils_a-getdtablesize.Po \ + ./$(DEPDIR)/libdiffutils_a-getopt.Po \ + ./$(DEPDIR)/libdiffutils_a-getopt1.Po \ + ./$(DEPDIR)/libdiffutils_a-getpagesize.Po \ + ./$(DEPDIR)/libdiffutils_a-getprogname.Po \ + ./$(DEPDIR)/libdiffutils_a-getrandom.Po \ + ./$(DEPDIR)/libdiffutils_a-gettime.Po \ + ./$(DEPDIR)/libdiffutils_a-gettimeofday.Po \ + ./$(DEPDIR)/libdiffutils_a-hard-locale.Po \ + ./$(DEPDIR)/libdiffutils_a-hash.Po \ + ./$(DEPDIR)/libdiffutils_a-ialloc.Po \ + ./$(DEPDIR)/libdiffutils_a-iconv.Po \ + ./$(DEPDIR)/libdiffutils_a-iconv_close.Po \ + ./$(DEPDIR)/libdiffutils_a-iconv_open.Po \ + ./$(DEPDIR)/libdiffutils_a-imaxtostr.Po \ + ./$(DEPDIR)/libdiffutils_a-inttostr.Po \ + ./$(DEPDIR)/libdiffutils_a-isblank.Po \ + ./$(DEPDIR)/libdiffutils_a-iswblank.Po \ + ./$(DEPDIR)/libdiffutils_a-iswdigit.Po \ + ./$(DEPDIR)/libdiffutils_a-iswxdigit.Po \ + ./$(DEPDIR)/libdiffutils_a-lc-charset-dispatch.Po \ + ./$(DEPDIR)/libdiffutils_a-localcharset.Po \ + ./$(DEPDIR)/libdiffutils_a-localeconv.Po \ + ./$(DEPDIR)/libdiffutils_a-lstat.Po \ + ./$(DEPDIR)/libdiffutils_a-malloc.Po \ + ./$(DEPDIR)/libdiffutils_a-malloca.Po \ + ./$(DEPDIR)/libdiffutils_a-mbchar.Po \ + ./$(DEPDIR)/libdiffutils_a-mbiter.Po \ + ./$(DEPDIR)/libdiffutils_a-mbrtowc.Po \ + ./$(DEPDIR)/libdiffutils_a-mbscasecmp.Po \ + ./$(DEPDIR)/libdiffutils_a-mbsinit.Po \ + ./$(DEPDIR)/libdiffutils_a-mbslen.Po \ + ./$(DEPDIR)/libdiffutils_a-mbsrtowcs-state.Po \ + ./$(DEPDIR)/libdiffutils_a-mbsrtowcs.Po \ + ./$(DEPDIR)/libdiffutils_a-mbsstr.Po \ + ./$(DEPDIR)/libdiffutils_a-mbtowc-lock.Po \ + ./$(DEPDIR)/libdiffutils_a-mbtowc.Po \ + ./$(DEPDIR)/libdiffutils_a-mbuiter.Po \ + ./$(DEPDIR)/libdiffutils_a-memchr.Po \ + ./$(DEPDIR)/libdiffutils_a-mempcpy.Po \ + ./$(DEPDIR)/libdiffutils_a-mkdir.Po \ + ./$(DEPDIR)/libdiffutils_a-mkstemp.Po \ + ./$(DEPDIR)/libdiffutils_a-mktime.Po \ + ./$(DEPDIR)/libdiffutils_a-msvc-inval.Po \ + ./$(DEPDIR)/libdiffutils_a-msvc-nothrow.Po \ + ./$(DEPDIR)/libdiffutils_a-nl_langinfo-lock.Po \ + ./$(DEPDIR)/libdiffutils_a-nl_langinfo.Po \ + ./$(DEPDIR)/libdiffutils_a-nstrftime.Po \ + ./$(DEPDIR)/libdiffutils_a-offtostr.Po \ + ./$(DEPDIR)/libdiffutils_a-open.Po \ + ./$(DEPDIR)/libdiffutils_a-progname.Po \ + ./$(DEPDIR)/libdiffutils_a-propername.Po \ + ./$(DEPDIR)/libdiffutils_a-quotearg.Po \ + ./$(DEPDIR)/libdiffutils_a-raise.Po \ + ./$(DEPDIR)/libdiffutils_a-rawmemchr.Po \ + ./$(DEPDIR)/libdiffutils_a-readlink.Po \ + ./$(DEPDIR)/libdiffutils_a-realloc.Po \ + ./$(DEPDIR)/libdiffutils_a-reallocarray.Po \ + ./$(DEPDIR)/libdiffutils_a-regcomp.Po \ + ./$(DEPDIR)/libdiffutils_a-regex.Po \ + ./$(DEPDIR)/libdiffutils_a-regex_internal.Po \ + ./$(DEPDIR)/libdiffutils_a-regexec.Po \ + ./$(DEPDIR)/libdiffutils_a-setenv.Po \ + ./$(DEPDIR)/libdiffutils_a-setlocale-lock.Po \ + ./$(DEPDIR)/libdiffutils_a-setlocale_null.Po \ + ./$(DEPDIR)/libdiffutils_a-sh-quote.Po \ + ./$(DEPDIR)/libdiffutils_a-sigprocmask.Po \ + ./$(DEPDIR)/libdiffutils_a-sigsegv.Po \ + ./$(DEPDIR)/libdiffutils_a-stackvma.Po \ + ./$(DEPDIR)/libdiffutils_a-stat-time.Po \ + ./$(DEPDIR)/libdiffutils_a-stat-w32.Po \ + ./$(DEPDIR)/libdiffutils_a-stat.Po \ + ./$(DEPDIR)/libdiffutils_a-stdio-read.Po \ + ./$(DEPDIR)/libdiffutils_a-stdio-write.Po \ + ./$(DEPDIR)/libdiffutils_a-stdopen.Po \ + ./$(DEPDIR)/libdiffutils_a-stpcpy.Po \ + ./$(DEPDIR)/libdiffutils_a-strcasecmp.Po \ + ./$(DEPDIR)/libdiffutils_a-strerror-override.Po \ + ./$(DEPDIR)/libdiffutils_a-strerror.Po \ + ./$(DEPDIR)/libdiffutils_a-striconv.Po \ + ./$(DEPDIR)/libdiffutils_a-stripslash.Po \ + ./$(DEPDIR)/libdiffutils_a-strncasecmp.Po \ + ./$(DEPDIR)/libdiffutils_a-strnlen.Po \ + ./$(DEPDIR)/libdiffutils_a-strnlen1.Po \ + ./$(DEPDIR)/libdiffutils_a-strptime.Po \ + ./$(DEPDIR)/libdiffutils_a-strtoimax.Po \ + ./$(DEPDIR)/libdiffutils_a-strtol.Po \ + ./$(DEPDIR)/libdiffutils_a-strtoll.Po \ + ./$(DEPDIR)/libdiffutils_a-system-quote.Po \ + ./$(DEPDIR)/libdiffutils_a-tempname.Po \ + ./$(DEPDIR)/libdiffutils_a-time_r.Po \ + ./$(DEPDIR)/libdiffutils_a-time_rz.Po \ + ./$(DEPDIR)/libdiffutils_a-timegm.Po \ + ./$(DEPDIR)/libdiffutils_a-timespec.Po \ + ./$(DEPDIR)/libdiffutils_a-trim.Po \ + ./$(DEPDIR)/libdiffutils_a-tzset.Po \ + ./$(DEPDIR)/libdiffutils_a-uinttostr.Po \ + ./$(DEPDIR)/libdiffutils_a-umaxtostr.Po \ + ./$(DEPDIR)/libdiffutils_a-unistd.Po \ + ./$(DEPDIR)/libdiffutils_a-unsetenv.Po \ + ./$(DEPDIR)/libdiffutils_a-version-etc-fsf.Po \ + ./$(DEPDIR)/libdiffutils_a-version-etc.Po \ + ./$(DEPDIR)/libdiffutils_a-wcrtomb.Po \ + ./$(DEPDIR)/libdiffutils_a-wctype-h.Po \ + ./$(DEPDIR)/libdiffutils_a-wcwidth.Po \ + ./$(DEPDIR)/libdiffutils_a-windows-mutex.Po \ + ./$(DEPDIR)/libdiffutils_a-windows-once.Po \ + ./$(DEPDIR)/libdiffutils_a-windows-recmutex.Po \ + ./$(DEPDIR)/libdiffutils_a-windows-rwlock.Po \ + ./$(DEPDIR)/libdiffutils_a-wmemchr.Po \ + ./$(DEPDIR)/libdiffutils_a-wmempcpy.Po \ + ./$(DEPDIR)/libdiffutils_a-xalloc-die.Po \ + ./$(DEPDIR)/libdiffutils_a-xfreopen.Po \ + ./$(DEPDIR)/libdiffutils_a-xmalloc.Po \ + ./$(DEPDIR)/libdiffutils_a-xmalloca.Po \ + ./$(DEPDIR)/libdiffutils_a-xreadlink.Po \ + ./$(DEPDIR)/libdiffutils_a-xstdopen.Po \ + ./$(DEPDIR)/libdiffutils_a-xstriconv.Po \ + ./$(DEPDIR)/libdiffutils_a-xstrtoimax.Po \ + ./$(DEPDIR)/libdiffutils_a-xstrtol.Po \ + ./$(DEPDIR)/libdiffutils_a-xstrtoul.Po \ + glthread/$(DEPDIR)/libdiffutils_a-lock.Po \ + glthread/$(DEPDIR)/libdiffutils_a-threadlib.Po \ + malloc/$(DEPDIR)/libdiffutils_a-dynarray-skeleton.Po \ + malloc/$(DEPDIR)/libdiffutils_a-dynarray_at_failure.Po \ + malloc/$(DEPDIR)/libdiffutils_a-dynarray_emplace_enlarge.Po \ + malloc/$(DEPDIR)/libdiffutils_a-dynarray_finalize.Po \ + malloc/$(DEPDIR)/libdiffutils_a-dynarray_resize.Po \ + malloc/$(DEPDIR)/libdiffutils_a-dynarray_resize_clear.Po \ + unistr/$(DEPDIR)/libdiffutils_a-u8-mbtoucr.Po \ + unistr/$(DEPDIR)/libdiffutils_a-u8-uctomb-aux.Po \ + unistr/$(DEPDIR)/libdiffutils_a-u8-uctomb.Po \ + uniwidth/$(DEPDIR)/libdiffutils_a-width.Po am__mv = mv -f +AM_V_lt = $(am__v_lt_@AM_V@) +am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) +am__v_lt_0 = --silent +am__v_lt_1 = COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) AM_V_CC = $(am__v_CC_@AM_V@) @@ -579,6 +922,7 @@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APPLE_UNIVERSAL_BUILD = @APPLE_UNIVERSAL_BUILD@ AR = @AR@ ARFLAGS = @ARFLAGS@ +ASSERT_H = @ASSERT_H@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ @@ -592,6 +936,7 @@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CFLAG_VISIBILITY = @CFLAG_VISIBILITY@ +CLOCK_TIME_LIB = @CLOCK_TIME_LIB@ CONFIG_INCLUDE = @CONFIG_INCLUDE@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ @@ -603,7 +948,6 @@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ -EGREP = @EGREP@ EMULTIHOP_HIDDEN = @EMULTIHOP_HIDDEN@ EMULTIHOP_VALUE = @EMULTIHOP_VALUE@ ENOLINK_HIDDEN = @ENOLINK_HIDDEN@ @@ -611,14 +955,17 @@ ENOLINK_VALUE = @ENOLINK_VALUE@ EOVERFLOW_HIDDEN = @EOVERFLOW_HIDDEN@ EOVERFLOW_VALUE = @EOVERFLOW_VALUE@ ERRNO_H = @ERRNO_H@ +ERROR_H = @ERROR_H@ ETAGS = @ETAGS@ EXEEXT = @EXEEXT@ FLOAT_H = @FLOAT_H@ FNMATCH_H = @FNMATCH_H@ GETOPT_CDEFS_H = @GETOPT_CDEFS_H@ GETOPT_H = @GETOPT_H@ +GETRANDOM_LIB = @GETRANDOM_LIB@ GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ GL_CFLAG_ALLOW_WARNINGS = @GL_CFLAG_ALLOW_WARNINGS@ +GL_CFLAG_GNULIB_WARNINGS = @GL_CFLAG_GNULIB_WARNINGS@ GL_CXXFLAG_ALLOW_WARNINGS = @GL_CXXFLAG_ALLOW_WARNINGS@ GL_GNULIB_ACCEPT = @GL_GNULIB_ACCEPT@ GL_GNULIB_ACCEPT4 = @GL_GNULIB_ACCEPT4@ @@ -627,9 +974,11 @@ GL_GNULIB_ALIGNED_ALLOC = @GL_GNULIB_ALIGNED_ALLOC@ GL_GNULIB_ATOLL = @GL_GNULIB_ATOLL@ GL_GNULIB_BIND = @GL_GNULIB_BIND@ GL_GNULIB_BTOWC = @GL_GNULIB_BTOWC@ +GL_GNULIB_CALLOC_GNU = @GL_GNULIB_CALLOC_GNU@ GL_GNULIB_CALLOC_POSIX = @GL_GNULIB_CALLOC_POSIX@ GL_GNULIB_CANONICALIZE_FILE_NAME = @GL_GNULIB_CANONICALIZE_FILE_NAME@ GL_GNULIB_CHDIR = @GL_GNULIB_CHDIR@ +GL_GNULIB_CHMOD = @GL_GNULIB_CHMOD@ GL_GNULIB_CHOWN = @GL_GNULIB_CHOWN@ GL_GNULIB_CLOSE = @GL_GNULIB_CLOSE@ GL_GNULIB_CONNECT = @GL_GNULIB_CONNECT@ @@ -667,6 +1016,7 @@ GL_GNULIB_FGETC = @GL_GNULIB_FGETC@ GL_GNULIB_FGETS = @GL_GNULIB_FGETS@ GL_GNULIB_FNMATCH = @GL_GNULIB_FNMATCH@ GL_GNULIB_FOPEN = @GL_GNULIB_FOPEN@ +GL_GNULIB_FOPEN_GNU = @GL_GNULIB_FOPEN_GNU@ GL_GNULIB_FPRINTF = @GL_GNULIB_FPRINTF@ GL_GNULIB_FPRINTF_POSIX = @GL_GNULIB_FPRINTF_POSIX@ GL_GNULIB_FPURGE = @GL_GNULIB_FPURGE@ @@ -702,7 +1052,9 @@ GL_GNULIB_GETLOGIN_R = @GL_GNULIB_GETLOGIN_R@ GL_GNULIB_GETOPT_POSIX = @GL_GNULIB_GETOPT_POSIX@ GL_GNULIB_GETPAGESIZE = @GL_GNULIB_GETPAGESIZE@ GL_GNULIB_GETPASS = @GL_GNULIB_GETPASS@ +GL_GNULIB_GETPASS_GNU = @GL_GNULIB_GETPASS_GNU@ GL_GNULIB_GETPEERNAME = @GL_GNULIB_GETPEERNAME@ +GL_GNULIB_GETPROGNAME = @GL_GNULIB_GETPROGNAME@ GL_GNULIB_GETRANDOM = @GL_GNULIB_GETRANDOM@ GL_GNULIB_GETSOCKNAME = @GL_GNULIB_GETSOCKNAME@ GL_GNULIB_GETSOCKOPT = @GL_GNULIB_GETSOCKOPT@ @@ -734,6 +1086,7 @@ GL_GNULIB_LOCALENAME = @GL_GNULIB_LOCALENAME@ GL_GNULIB_LOCALTIME = @GL_GNULIB_LOCALTIME@ GL_GNULIB_LSEEK = @GL_GNULIB_LSEEK@ GL_GNULIB_LSTAT = @GL_GNULIB_LSTAT@ +GL_GNULIB_MALLOC_GNU = @GL_GNULIB_MALLOC_GNU@ GL_GNULIB_MALLOC_POSIX = @GL_GNULIB_MALLOC_POSIX@ GL_GNULIB_MBRLEN = @GL_GNULIB_MBRLEN@ GL_GNULIB_MBRTOWC = @GL_GNULIB_MBRTOWC@ @@ -754,6 +1107,7 @@ GL_GNULIB_MBSSEP = @GL_GNULIB_MBSSEP@ GL_GNULIB_MBSSPN = @GL_GNULIB_MBSSPN@ GL_GNULIB_MBSSTR = @GL_GNULIB_MBSSTR@ GL_GNULIB_MBSTOK_R = @GL_GNULIB_MBSTOK_R@ +GL_GNULIB_MBSTOWCS = @GL_GNULIB_MBSTOWCS@ GL_GNULIB_MBTOWC = @GL_GNULIB_MBTOWC@ GL_GNULIB_MDA_ACCESS = @GL_GNULIB_MDA_ACCESS@ GL_GNULIB_MDA_CHDIR = @GL_GNULIB_MDA_CHDIR@ @@ -800,6 +1154,7 @@ GL_GNULIB_MEMCHR = @GL_GNULIB_MEMCHR@ GL_GNULIB_MEMMEM = @GL_GNULIB_MEMMEM@ GL_GNULIB_MEMPCPY = @GL_GNULIB_MEMPCPY@ GL_GNULIB_MEMRCHR = @GL_GNULIB_MEMRCHR@ +GL_GNULIB_MEMSET_EXPLICIT = @GL_GNULIB_MEMSET_EXPLICIT@ GL_GNULIB_MKDIR = @GL_GNULIB_MKDIR@ GL_GNULIB_MKDIRAT = @GL_GNULIB_MKDIRAT@ GL_GNULIB_MKDTEMP = @GL_GNULIB_MKDTEMP@ @@ -856,6 +1211,7 @@ GL_GNULIB_READ = @GL_GNULIB_READ@ GL_GNULIB_READLINK = @GL_GNULIB_READLINK@ GL_GNULIB_READLINKAT = @GL_GNULIB_READLINKAT@ GL_GNULIB_REALLOCARRAY = @GL_GNULIB_REALLOCARRAY@ +GL_GNULIB_REALLOC_GNU = @GL_GNULIB_REALLOC_GNU@ GL_GNULIB_REALLOC_POSIX = @GL_GNULIB_REALLOC_POSIX@ GL_GNULIB_REALPATH = @GL_GNULIB_REALPATH@ GL_GNULIB_RECV = @GL_GNULIB_RECV@ @@ -919,8 +1275,10 @@ GL_GNULIB_STRVERSCMP = @GL_GNULIB_STRVERSCMP@ GL_GNULIB_SYMLINK = @GL_GNULIB_SYMLINK@ GL_GNULIB_SYMLINKAT = @GL_GNULIB_SYMLINKAT@ GL_GNULIB_SYSTEM_POSIX = @GL_GNULIB_SYSTEM_POSIX@ +GL_GNULIB_TIME = @GL_GNULIB_TIME@ GL_GNULIB_TIMEGM = @GL_GNULIB_TIMEGM@ GL_GNULIB_TIMESPEC_GET = @GL_GNULIB_TIMESPEC_GET@ +GL_GNULIB_TIMESPEC_GETRES = @GL_GNULIB_TIMESPEC_GETRES@ GL_GNULIB_TIME_R = @GL_GNULIB_TIME_R@ GL_GNULIB_TIME_RZ = @GL_GNULIB_TIME_RZ@ GL_GNULIB_TMPFILE = @GL_GNULIB_TMPFILE@ @@ -994,6 +1352,7 @@ GNULIBHEADERS_OVERRIDE_WINT_T = @GNULIBHEADERS_OVERRIDE_WINT_T@ GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@ GNULIB_WARN_CFLAGS = @GNULIB_WARN_CFLAGS@ GREP = @GREP@ +HARD_LOCALE_LIB = @HARD_LOCALE_LIB@ HAVE_ACCEPT4 = @HAVE_ACCEPT4@ HAVE_ALIGNED_ALLOC = @HAVE_ALIGNED_ALLOC@ HAVE_ALLOCA_H = @HAVE_ALLOCA_H@ @@ -1024,6 +1383,7 @@ HAVE_DECL_GETLOGIN = @HAVE_DECL_GETLOGIN@ HAVE_DECL_GETLOGIN_R = @HAVE_DECL_GETLOGIN_R@ HAVE_DECL_GETPAGESIZE = @HAVE_DECL_GETPAGESIZE@ HAVE_DECL_GETUSERSHELL = @HAVE_DECL_GETUSERSHELL@ +HAVE_DECL_GETW = @HAVE_DECL_GETW@ HAVE_DECL_IMAXABS = @HAVE_DECL_IMAXABS@ HAVE_DECL_IMAXDIV = @HAVE_DECL_IMAXDIV@ HAVE_DECL_INET_NTOP = @HAVE_DECL_INET_NTOP@ @@ -1033,6 +1393,8 @@ HAVE_DECL_LOCALTIME_R = @HAVE_DECL_LOCALTIME_R@ HAVE_DECL_MEMMEM = @HAVE_DECL_MEMMEM@ HAVE_DECL_MEMRCHR = @HAVE_DECL_MEMRCHR@ HAVE_DECL_OBSTACK_PRINTF = @HAVE_DECL_OBSTACK_PRINTF@ +HAVE_DECL_PROGRAM_INVOCATION_NAME = @HAVE_DECL_PROGRAM_INVOCATION_NAME@ +HAVE_DECL_PUTW = @HAVE_DECL_PUTW@ HAVE_DECL_SETENV = @HAVE_DECL_SETENV@ HAVE_DECL_SETHOSTNAME = @HAVE_DECL_SETHOSTNAME@ HAVE_DECL_SETSTATE = @HAVE_DECL_SETSTATE@ @@ -1056,6 +1418,9 @@ HAVE_DECL_WCWIDTH = @HAVE_DECL_WCWIDTH@ HAVE_DPRINTF = @HAVE_DPRINTF@ HAVE_DUP3 = @HAVE_DUP3@ HAVE_DUPLOCALE = @HAVE_DUPLOCALE@ +HAVE_ERROR = @HAVE_ERROR@ +HAVE_ERROR_AT_LINE = @HAVE_ERROR_AT_LINE@ +HAVE_ERROR_H = @HAVE_ERROR_H@ HAVE_EUIDACCESS = @HAVE_EUIDACCESS@ HAVE_EXECVPE = @HAVE_EXECVPE@ HAVE_EXPLICIT_BZERO = @HAVE_EXPLICIT_BZERO@ @@ -1086,12 +1451,15 @@ HAVE_GETLOGIN = @HAVE_GETLOGIN@ HAVE_GETOPT_H = @HAVE_GETOPT_H@ HAVE_GETPAGESIZE = @HAVE_GETPAGESIZE@ HAVE_GETPASS = @HAVE_GETPASS@ +HAVE_GETPROGNAME = @HAVE_GETPROGNAME@ HAVE_GETRANDOM = @HAVE_GETRANDOM@ HAVE_GETSUBOPT = @HAVE_GETSUBOPT@ HAVE_GETTIMEOFDAY = @HAVE_GETTIMEOFDAY@ HAVE_GETUMASK = @HAVE_GETUMASK@ HAVE_GRANTPT = @HAVE_GRANTPT@ HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@ +HAVE_IMAXABS = @HAVE_IMAXABS@ +HAVE_IMAXDIV = @HAVE_IMAXDIV@ HAVE_IMAXDIV_T = @HAVE_IMAXDIV_T@ HAVE_INITSTATE = @HAVE_INITSTATE@ HAVE_INTTYPES_H = @HAVE_INTTYPES_H@ @@ -1119,6 +1487,7 @@ HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@ HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@ HAVE_MBTOWC = @HAVE_MBTOWC@ HAVE_MEMPCPY = @HAVE_MEMPCPY@ +HAVE_MEMSET_EXPLICIT = @HAVE_MEMSET_EXPLICIT@ HAVE_MKDIRAT = @HAVE_MKDIRAT@ HAVE_MKDTEMP = @HAVE_MKDTEMP@ HAVE_MKFIFO = @HAVE_MKFIFO@ @@ -1276,9 +1645,11 @@ HAVE_SYS_TYPES_H = @HAVE_SYS_TYPES_H@ HAVE_SYS_UIO_H = @HAVE_SYS_UIO_H@ HAVE_TIMEGM = @HAVE_TIMEGM@ HAVE_TIMESPEC_GET = @HAVE_TIMESPEC_GET@ +HAVE_TIMESPEC_GETRES = @HAVE_TIMESPEC_GETRES@ HAVE_TIMEZONE_T = @HAVE_TIMEZONE_T@ HAVE_TYPE_VOLATILE_SIG_ATOMIC_T = @HAVE_TYPE_VOLATILE_SIG_ATOMIC_T@ HAVE_UNISTD_H = @HAVE_UNISTD_H@ +HAVE_UNISTRING_WOE32DLL_H = @HAVE_UNISTRING_WOE32DLL_H@ HAVE_UNLINKAT = @HAVE_UNLINKAT@ HAVE_UNLOCKPT = @HAVE_UNLOCKPT@ HAVE_USLEEP = @HAVE_USLEEP@ @@ -1328,7 +1699,6 @@ HAVE_WMEMPCPY = @HAVE_WMEMPCPY@ HAVE_WMEMSET = @HAVE_WMEMSET@ HAVE_WS2TCPIP_H = @HAVE_WS2TCPIP_H@ HAVE_XLOCALE_H = @HAVE_XLOCALE_H@ -HAVE__BOOL = @HAVE__BOOL@ HAVE__EXIT = @HAVE__EXIT@ HELP2MAN = @HELP2MAN@ HOST_CPU = @HOST_CPU@ @@ -1394,15 +1764,20 @@ LTLIBOBJS = @LTLIBOBJS@ LTLIBSIGSEGV = @LTLIBSIGSEGV@ LTLIBTHREAD = @LTLIBTHREAD@ MAKEINFO = @MAKEINFO@ +MBRTOWC_LIB = @MBRTOWC_LIB@ MKDIR_P = @MKDIR_P@ MSGFMT = @MSGFMT@ MSGFMT_015 = @MSGFMT_015@ MSGMERGE = @MSGMERGE@ +NANOSLEEP_LIB = @NANOSLEEP_LIB@ NETINET_IN_H = @NETINET_IN_H@ NEXT_ARPA_INET_H = @NEXT_ARPA_INET_H@ +NEXT_ASSERT_H = @NEXT_ASSERT_H@ NEXT_AS_FIRST_DIRECTIVE_ARPA_INET_H = @NEXT_AS_FIRST_DIRECTIVE_ARPA_INET_H@ +NEXT_AS_FIRST_DIRECTIVE_ASSERT_H = @NEXT_AS_FIRST_DIRECTIVE_ASSERT_H@ NEXT_AS_FIRST_DIRECTIVE_CTYPE_H = @NEXT_AS_FIRST_DIRECTIVE_CTYPE_H@ NEXT_AS_FIRST_DIRECTIVE_ERRNO_H = @NEXT_AS_FIRST_DIRECTIVE_ERRNO_H@ +NEXT_AS_FIRST_DIRECTIVE_ERROR_H = @NEXT_AS_FIRST_DIRECTIVE_ERROR_H@ NEXT_AS_FIRST_DIRECTIVE_FCNTL_H = @NEXT_AS_FIRST_DIRECTIVE_FCNTL_H@ NEXT_AS_FIRST_DIRECTIVE_FLOAT_H = @NEXT_AS_FIRST_DIRECTIVE_FLOAT_H@ NEXT_AS_FIRST_DIRECTIVE_FNMATCH_H = @NEXT_AS_FIRST_DIRECTIVE_FNMATCH_H@ @@ -1438,6 +1813,7 @@ NEXT_AS_FIRST_DIRECTIVE_WCHAR_H = @NEXT_AS_FIRST_DIRECTIVE_WCHAR_H@ NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H = @NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H@ NEXT_CTYPE_H = @NEXT_CTYPE_H@ NEXT_ERRNO_H = @NEXT_ERRNO_H@ +NEXT_ERROR_H = @NEXT_ERROR_H@ NEXT_FCNTL_H = @NEXT_FCNTL_H@ NEXT_FLOAT_H = @NEXT_FLOAT_H@ NEXT_FNMATCH_H = @NEXT_FNMATCH_H@ @@ -1480,27 +1856,35 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ POSUB = @POSUB@ PRAGMA_COLUMNS = @PRAGMA_COLUMNS@ PRAGMA_SYSTEM_HEADER = @PRAGMA_SYSTEM_HEADER@ PRIPTR_PREFIX = @PRIPTR_PREFIX@ PR_PROGRAM = @PR_PROGRAM@ PTHREAD_H_DEFINES_STRUCT_TIMESPEC = @PTHREAD_H_DEFINES_STRUCT_TIMESPEC@ +PTHREAD_SIGMASK_LIB = @PTHREAD_SIGMASK_LIB@ PTRDIFF_T_SUFFIX = @PTRDIFF_T_SUFFIX@ RANLIB = @RANLIB@ REPLACE_ACCESS = @REPLACE_ACCESS@ REPLACE_ALIGNED_ALLOC = @REPLACE_ALIGNED_ALLOC@ REPLACE_BTOWC = @REPLACE_BTOWC@ -REPLACE_CALLOC = @REPLACE_CALLOC@ +REPLACE_CALLOC_FOR_CALLOC_GNU = @REPLACE_CALLOC_FOR_CALLOC_GNU@ +REPLACE_CALLOC_FOR_CALLOC_POSIX = @REPLACE_CALLOC_FOR_CALLOC_POSIX@ REPLACE_CANONICALIZE_FILE_NAME = @REPLACE_CANONICALIZE_FILE_NAME@ +REPLACE_CHMOD = @REPLACE_CHMOD@ REPLACE_CHOWN = @REPLACE_CHOWN@ REPLACE_CLOSE = @REPLACE_CLOSE@ +REPLACE_COPY_FILE_RANGE = @REPLACE_COPY_FILE_RANGE@ REPLACE_CREAT = @REPLACE_CREAT@ REPLACE_CTIME = @REPLACE_CTIME@ REPLACE_DPRINTF = @REPLACE_DPRINTF@ REPLACE_DUP = @REPLACE_DUP@ REPLACE_DUP2 = @REPLACE_DUP2@ +REPLACE_DUP3 = @REPLACE_DUP3@ REPLACE_DUPLOCALE = @REPLACE_DUPLOCALE@ +REPLACE_ERROR = @REPLACE_ERROR@ +REPLACE_ERROR_AT_LINE = @REPLACE_ERROR_AT_LINE@ REPLACE_EXECL = @REPLACE_EXECL@ REPLACE_EXECLE = @REPLACE_EXECLE@ REPLACE_EXECLP = @REPLACE_EXECLP@ @@ -1513,11 +1897,13 @@ REPLACE_FCHMODAT = @REPLACE_FCHMODAT@ REPLACE_FCHOWNAT = @REPLACE_FCHOWNAT@ REPLACE_FCLOSE = @REPLACE_FCLOSE@ REPLACE_FCNTL = @REPLACE_FCNTL@ +REPLACE_FDATASYNC = @REPLACE_FDATASYNC@ REPLACE_FDOPEN = @REPLACE_FDOPEN@ REPLACE_FFLUSH = @REPLACE_FFLUSH@ REPLACE_FFSLL = @REPLACE_FFSLL@ REPLACE_FNMATCH = @REPLACE_FNMATCH@ REPLACE_FOPEN = @REPLACE_FOPEN@ +REPLACE_FOPEN_FOR_FOPEN_GNU = @REPLACE_FOPEN_FOR_FOPEN_GNU@ REPLACE_FPRINTF = @REPLACE_FPRINTF@ REPLACE_FPURGE = @REPLACE_FPURGE@ REPLACE_FREE = @REPLACE_FREE@ @@ -1535,17 +1921,24 @@ REPLACE_GETCWD = @REPLACE_GETCWD@ REPLACE_GETDELIM = @REPLACE_GETDELIM@ REPLACE_GETDOMAINNAME = @REPLACE_GETDOMAINNAME@ REPLACE_GETDTABLESIZE = @REPLACE_GETDTABLESIZE@ +REPLACE_GETENTROPY = @REPLACE_GETENTROPY@ REPLACE_GETGROUPS = @REPLACE_GETGROUPS@ REPLACE_GETLINE = @REPLACE_GETLINE@ +REPLACE_GETLOADAVG = @REPLACE_GETLOADAVG@ REPLACE_GETLOGIN_R = @REPLACE_GETLOGIN_R@ REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@ REPLACE_GETPASS = @REPLACE_GETPASS@ +REPLACE_GETPASS_FOR_GETPASS_GNU = @REPLACE_GETPASS_FOR_GETPASS_GNU@ +REPLACE_GETPROGNAME = @REPLACE_GETPROGNAME@ REPLACE_GETRANDOM = @REPLACE_GETRANDOM@ +REPLACE_GETSUBOPT = @REPLACE_GETSUBOPT@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@ REPLACE_GMTIME = @REPLACE_GMTIME@ REPLACE_ICONV = @REPLACE_ICONV@ REPLACE_ICONV_OPEN = @REPLACE_ICONV_OPEN@ REPLACE_ICONV_UTF = @REPLACE_ICONV_UTF@ +REPLACE_IMAXABS = @REPLACE_IMAXABS@ +REPLACE_IMAXDIV = @REPLACE_IMAXDIV@ REPLACE_INET_NTOP = @REPLACE_INET_NTOP@ REPLACE_INET_PTON = @REPLACE_INET_PTON@ REPLACE_INITSTATE = @REPLACE_INITSTATE@ @@ -1564,21 +1957,27 @@ REPLACE_LOCALTIME = @REPLACE_LOCALTIME@ REPLACE_LOCALTIME_R = @REPLACE_LOCALTIME_R@ REPLACE_LSEEK = @REPLACE_LSEEK@ REPLACE_LSTAT = @REPLACE_LSTAT@ -REPLACE_MALLOC = @REPLACE_MALLOC@ +REPLACE_MALLOC_FOR_MALLOC_GNU = @REPLACE_MALLOC_FOR_MALLOC_GNU@ +REPLACE_MALLOC_FOR_MALLOC_POSIX = @REPLACE_MALLOC_FOR_MALLOC_POSIX@ REPLACE_MBRLEN = @REPLACE_MBRLEN@ REPLACE_MBRTOWC = @REPLACE_MBRTOWC@ REPLACE_MBSINIT = @REPLACE_MBSINIT@ REPLACE_MBSNRTOWCS = @REPLACE_MBSNRTOWCS@ REPLACE_MBSRTOWCS = @REPLACE_MBSRTOWCS@ REPLACE_MBSTATE_T = @REPLACE_MBSTATE_T@ +REPLACE_MBSTOWCS = @REPLACE_MBSTOWCS@ REPLACE_MBTOWC = @REPLACE_MBTOWC@ +REPLACE_MB_CUR_MAX = @REPLACE_MB_CUR_MAX@ REPLACE_MEMCHR = @REPLACE_MEMCHR@ REPLACE_MEMMEM = @REPLACE_MEMMEM@ +REPLACE_MEMPCPY = @REPLACE_MEMPCPY@ REPLACE_MKDIR = @REPLACE_MKDIR@ REPLACE_MKFIFO = @REPLACE_MKFIFO@ REPLACE_MKFIFOAT = @REPLACE_MKFIFOAT@ REPLACE_MKNOD = @REPLACE_MKNOD@ REPLACE_MKNODAT = @REPLACE_MKNODAT@ +REPLACE_MKOSTEMP = @REPLACE_MKOSTEMP@ +REPLACE_MKOSTEMPS = @REPLACE_MKOSTEMPS@ REPLACE_MKSTEMP = @REPLACE_MKSTEMP@ REPLACE_MKTIME = @REPLACE_MKTIME@ REPLACE_NANOSLEEP = @REPLACE_NANOSLEEP@ @@ -1589,8 +1988,10 @@ REPLACE_OBSTACK_PRINTF = @REPLACE_OBSTACK_PRINTF@ REPLACE_OPEN = @REPLACE_OPEN@ REPLACE_OPENAT = @REPLACE_OPENAT@ REPLACE_PERROR = @REPLACE_PERROR@ +REPLACE_PIPE2 = @REPLACE_PIPE2@ REPLACE_POPEN = @REPLACE_POPEN@ REPLACE_POSIX_MEMALIGN = @REPLACE_POSIX_MEMALIGN@ +REPLACE_POSIX_OPENPT = @REPLACE_POSIX_OPENPT@ REPLACE_PREAD = @REPLACE_PREAD@ REPLACE_PRINTF = @REPLACE_PRINTF@ REPLACE_PSELECT = @REPLACE_PSELECT@ @@ -1657,8 +2058,9 @@ REPLACE_RANDOM_R = @REPLACE_RANDOM_R@ REPLACE_READ = @REPLACE_READ@ REPLACE_READLINK = @REPLACE_READLINK@ REPLACE_READLINKAT = @REPLACE_READLINKAT@ -REPLACE_REALLOC = @REPLACE_REALLOC@ REPLACE_REALLOCARRAY = @REPLACE_REALLOCARRAY@ +REPLACE_REALLOC_FOR_REALLOC_GNU = @REPLACE_REALLOC_FOR_REALLOC_GNU@ +REPLACE_REALLOC_FOR_REALLOC_POSIX = @REPLACE_REALLOC_FOR_REALLOC_POSIX@ REPLACE_REALPATH = @REPLACE_REALPATH@ REPLACE_REMOVE = @REPLACE_REMOVE@ REPLACE_RENAME = @REPLACE_RENAME@ @@ -1667,6 +2069,7 @@ REPLACE_RMDIR = @REPLACE_RMDIR@ REPLACE_SCHED_YIELD = @REPLACE_SCHED_YIELD@ REPLACE_SELECT = @REPLACE_SELECT@ REPLACE_SETENV = @REPLACE_SETENV@ +REPLACE_SETHOSTNAME = @REPLACE_SETHOSTNAME@ REPLACE_SETLOCALE = @REPLACE_SETLOCALE@ REPLACE_SETSTATE = @REPLACE_SETSTATE@ REPLACE_SLEEP = @REPLACE_SLEEP@ @@ -1675,6 +2078,7 @@ REPLACE_SPRINTF = @REPLACE_SPRINTF@ REPLACE_STAT = @REPLACE_STAT@ REPLACE_STDIO_READ_FUNCS = @REPLACE_STDIO_READ_FUNCS@ REPLACE_STDIO_WRITE_FUNCS = @REPLACE_STDIO_WRITE_FUNCS@ +REPLACE_STPCPY = @REPLACE_STPCPY@ REPLACE_STPNCPY = @REPLACE_STPNCPY@ REPLACE_STRCASESTR = @REPLACE_STRCASESTR@ REPLACE_STRCHRNUL = @REPLACE_STRCHRNUL@ @@ -1701,7 +2105,9 @@ REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@ REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@ REPLACE_SYMLINK = @REPLACE_SYMLINK@ REPLACE_SYMLINKAT = @REPLACE_SYMLINKAT@ +REPLACE_TIME = @REPLACE_TIME@ REPLACE_TIMEGM = @REPLACE_TIMEGM@ +REPLACE_TIMESPEC_GET = @REPLACE_TIMESPEC_GET@ REPLACE_TMPFILE = @REPLACE_TMPFILE@ REPLACE_TOWLOWER = @REPLACE_TOWLOWER@ REPLACE_TRUNCATE = @REPLACE_TRUNCATE@ @@ -1719,25 +2125,33 @@ REPLACE_VPRINTF = @REPLACE_VPRINTF@ REPLACE_VSNPRINTF = @REPLACE_VSNPRINTF@ REPLACE_VSPRINTF = @REPLACE_VSPRINTF@ REPLACE_WCRTOMB = @REPLACE_WCRTOMB@ +REPLACE_WCSCMP = @REPLACE_WCSCMP@ REPLACE_WCSFTIME = @REPLACE_WCSFTIME@ +REPLACE_WCSNCMP = @REPLACE_WCSNCMP@ REPLACE_WCSNRTOMBS = @REPLACE_WCSNRTOMBS@ REPLACE_WCSRTOMBS = @REPLACE_WCSRTOMBS@ +REPLACE_WCSSTR = @REPLACE_WCSSTR@ REPLACE_WCSTOK = @REPLACE_WCSTOK@ REPLACE_WCSWIDTH = @REPLACE_WCSWIDTH@ REPLACE_WCTOB = @REPLACE_WCTOB@ REPLACE_WCTOMB = @REPLACE_WCTOMB@ REPLACE_WCWIDTH = @REPLACE_WCWIDTH@ +REPLACE_WMEMCMP = @REPLACE_WMEMCMP@ +REPLACE_WMEMPCPY = @REPLACE_WMEMPCPY@ REPLACE_WRITE = @REPLACE_WRITE@ +REPLACE__EXIT = @REPLACE__EXIT@ +SCHED_YIELD_LIB = @SCHED_YIELD_LIB@ SED = @SED@ +SELECT_LIB = @SELECT_LIB@ +SETLOCALE_NULL_LIB = @SETLOCALE_NULL_LIB@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SIGSEGV_H = @SIGSEGV_H@ SIG_ATOMIC_T_SUFFIX = @SIG_ATOMIC_T_SUFFIX@ SIZE_T_SUFFIX = @SIZE_T_SUFFIX@ SRC_VERSION_C = @SRC_VERSION_C@ -STDALIGN_H = @STDALIGN_H@ STDARG_H = @STDARG_H@ -STDBOOL_H = @STDBOOL_H@ +STDCKDINT_H = @STDCKDINT_H@ STDDEF_H = @STDDEF_H@ STDINT_H = @STDINT_H@ STRIP = @STRIP@ @@ -1775,8 +2189,10 @@ ac_ct_CC = @ac_ct_CC@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ +am__rm_f_notfound = @am__rm_f_notfound@ am__tar = @am__tar@ am__untar = @am__untar@ +am__xargs_n = @am__xargs_n@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ @@ -1789,8 +2205,10 @@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ +gl_LIBOBJDEPS = @gl_LIBOBJDEPS@ gl_LIBOBJS = @gl_LIBOBJS@ gl_LTLIBOBJS = @gl_LTLIBOBJS@ +gltests_LIBOBJDEPS = @gltests_LIBOBJDEPS@ gltests_LIBOBJS = @gltests_LIBOBJS@ gltests_LTLIBOBJS = @gltests_LTLIBOBJS@ gltests_WITNESS = @gltests_WITNESS@ @@ -1824,18 +2242,17 @@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ AM_CFLAGS = $(GNULIB_WARN_CFLAGS) $(WERROR_CFLAGS) -BUILT_SOURCES = $(ALLOCA_H) ctype.h malloc/dynarray.gl.h \ - malloc/dynarray-skeleton.gl.h $(ERRNO_H) fcntl.h $(FLOAT_H) \ - $(FNMATCH_H) $(GETOPT_H) $(GETOPT_CDEFS_H) $(ICONV_H) \ +BUILT_SOURCES = $(ALLOCA_H) $(ASSERT_H) ctype.h $(ERRNO_H) $(ERROR_H) \ + fcntl.h $(FNMATCH_H) $(GETOPT_H) $(GETOPT_CDEFS_H) \ + malloc/dynarray.gl.h malloc/dynarray-skeleton.gl.h $(ICONV_H) \ iconv_open-aix.h iconv_open-hpux.h iconv_open-irix.h \ iconv_open-osf.h iconv_open-solaris.h iconv_open-zos.h \ inttypes.h langinfo.h $(LIMITS_H) locale.h signal.h \ - $(SIGSEGV_H) $(STDALIGN_H) $(STDARG_H) $(STDBOOL_H) \ - $(STDDEF_H) $(STDINT_H) stdio.h stdlib.h string.h strings.h \ - sys/random.h sys/stat.h sys/time.h sys/types.h sys/wait.h \ - time.h unistd.h $(LIBUNISTRING_UNISTR_H) \ - $(LIBUNISTRING_UNITYPES_H) $(LIBUNISTRING_UNIWIDTH_H) wchar.h \ - wctype.h + $(SIGSEGV_H) $(STDARG_H) $(STDCKDINT_H) $(STDDEF_H) \ + $(STDINT_H) stdio.h stdlib.h string.h strings.h sys/random.h \ + sys/stat.h sys/time.h sys/types.h sys/wait.h time.h unistd.h \ + $(LIBUNISTRING_UNISTR_H) $(LIBUNISTRING_UNITYPES_H) \ + $(LIBUNISTRING_UNIWIDTH_H) wchar.h wctype.h CLEANFILES = #if GNU_MAKE @@ -1847,150 +2264,156 @@ CLEANFILES = #endif EXTRA_DIST = alloca.in.h allocator.h \ $(top_srcdir)/build-aux/announce-gen areadlink.h argmatch.h \ - assure.h attribute.h basename-lgpl.h btowc.c c-strcaseeq.h \ - calloc.c calloc.c careadlinkat.h cloexec.h close.c ctype.in.h \ - stripslash.c dirname.h \ - $(top_srcdir)/build-aux/do-release-commit-and-tag dup2.c \ - dynarray.h malloc/dynarray-skeleton.c malloc/dynarray.h \ - errno.in.h error.c error.h exclude.h exitfail.h fcntl.c \ - fcntl.in.h fd-hook.h file-type.h filename.h filenamecat.h \ - flexmember.h float.c float.in.h itold.c fnmatch.c \ - fnmatch_loop.c fnmatch.c fnmatch.in.h fopen.c fopen.c free.c \ - freopen.c fstat.c stat-w32.c stat-w32.h \ - $(top_srcdir)/build-aux/gendocs.sh getdtablesize.c \ + assert.in.h verify.h assure.h attribute.h basename-lgpl.h \ + c-strcaseeq.h calloc.c calloc.c careadlinkat.h cloexec.h \ + ctype.in.h stripslash.c dirname.h \ + $(top_srcdir)/build-aux/do-release-commit-and-tag errno.in.h \ + error.in.h exclude.h exitfail.h fcntl.in.h fd-hook.h \ + file-type.h filename.h filenamecat.h flexmember.h fnmatch.c \ + fnmatch_loop.c fnmatch.c fnmatch.in.h fopen.c fopen.c \ + stat-w32.c stat-w32.h $(top_srcdir)/build-aux/gendocs.sh \ getopt-cdefs.in.h getopt-core.h getopt-ext.h getopt-pfx-core.h \ - getopt-pfx-ext.h getopt.c getopt.in.h getopt1.c getopt_int.h \ - getpagesize.c getrandom.c gettimeofday.c \ + getopt-pfx-ext.h getopt.in.h getopt_int.h getprogname.h \ $(top_srcdir)/build-aux/git-version-gen \ - $(top_srcdir)/build-aux/gitlog-to-changelog \ + $(top_srcdir)/build-aux/gitlog-to-changelog dynarray.h \ + malloc/dynarray-skeleton.c malloc/dynarray.h \ $(top_srcdir)/build-aux/gnu-web-doc-update \ $(top_srcdir)/GNUmakefile $(top_srcdir)/build-aux/gnupload \ hard-locale.h hash.h $(top_srcdir)/build-aux/config.rpath \ ialloc.h iconv.in.h iconv_open-aix.h iconv_open-hpux.h \ iconv_open-irix.h iconv_open-osf.h iconv_open-solaris.h \ - iconv_open-zos.h iconv.c iconv_close.c iconv_open-aix.gperf \ - iconv_open-hpux.gperf iconv_open-irix.gperf \ - iconv_open-osf.gperf iconv_open-solaris.gperf \ - iconv_open-zos.gperf iconv_open.c ignore-value.h intprops.h \ - anytostr.c inttostr.h inttypes.in.h isblank.c iswblank.c \ - iswdigit.c iswxdigit.c langinfo.in.h cdefs.h libc-config.h \ - limits.in.h localcharset.h locale.in.h localeconv.c lstat.c \ - $(top_srcdir)/maint.mk malloc.c malloc.c malloca.h mbchar.h \ - lc-charset-dispatch.c lc-charset-dispatch.h \ - mbrtowc-impl-utf8.h mbrtowc-impl.h mbrtowc.c mbtowc-lock.c \ - mbtowc-lock.h windows-initguard.h mbsinit.c mbsrtowcs-impl.h \ - mbsrtowcs-state.c mbsrtowcs.c str-kmp.h mbtowc-impl.h mbtowc.c \ - memchr.c memchr.valgrind mempcpy.c mkdir.c mkstemp.c \ - mktime-internal.h mktime.c mktime-internal.h mktime.c \ - msvc-inval.c msvc-inval.h msvc-nothrow.c msvc-nothrow.h \ - nl_langinfo-lock.c nl_langinfo.c windows-initguard.h \ - strftime.h open.c pathmax.h quote.h quote.h quotearg.h raise.c \ - rawmemchr.c rawmemchr.valgrind readlink.c realloc.c realloc.c \ - reallocarray.c regcomp.c regex.c regex.h regex_internal.c \ - regex_internal.h regexec.c setenv.c setlocale-lock.c \ - setlocale_null.h windows-initguard.h signal.in.h sigsegv.in.h \ - stackvma.h _Noreturn.h arg-nonnull.h c++defs.h warn-on-use.h \ - stat-w32.c stat-w32.h stat.c stat-macros.h stat-time.h \ - stdalign.in.h stdarg.in.h stdbool.in.h stddef.in.h stdint.in.h \ - stdio.in.h stdlib.in.h stdopen.h strcasecmp.c strncasecmp.c \ - streq.h strerror.c strerror-override.c strerror-override.h \ - string.in.h strings.in.h strnlen.c strptime.c strtoimax.c \ - strtol.c strtoll.c sys_random.in.h sys_stat.in.h sys_time.in.h \ - sys_types.in.h sys_wait.in.h tempname.h time.in.h time_r.c \ - time-internal.h time_rz.c mktime-internal.h timegm.c \ - timespec.h trim.h tzset.c unistd.in.h unistr.in.h \ - unitypes.in.h localcharset.h uniwidth.in.h uniwidth/cjk.h \ - unlocked-io.h unsetenv.c \ + iconv_open-zos.h iconv_open-aix.gperf iconv_open-hpux.gperf \ + iconv_open-irix.gperf iconv_open-osf.gperf \ + iconv_open-solaris.gperf iconv_open-zos.gperf ignore-value.h \ + intprops-internal.h intprops.h anytostr.c inttostr.h \ + inttypes.in.h langinfo.in.h cdefs.h libc-config.h limits.in.h \ + localcharset.h locale.in.h $(top_srcdir)/maint.mk malloc.c \ + malloc.c malloca.h mbchar.h lc-charset-dispatch.c \ + lc-charset-dispatch.h mbrtowc-impl-utf8.h mbrtowc-impl.h \ + mbtowc-lock.c mbtowc-lock.h windows-initguard.h \ + mbsrtowcs-impl.h mbsrtowcs-state.c str-kmp.h mbtowc-impl.h \ + memchr.valgrind mktime-internal.h mktime.c mktime-internal.h \ + mktime.c msvc-inval.h msvc-nothrow.h windows-initguard.h \ + strftime.h pathmax.h quote.h quote.h quotearg.h \ + rawmemchr.valgrind realloc.c realloc.c regcomp.c regex.h \ + regex_internal.c regex_internal.h regexec.c setlocale_null.h \ + windows-initguard.h signal.in.h sigsegv.in.h stackvma.h \ + _Noreturn.h arg-nonnull.h c++defs.h warn-on-use.h stat-w32.c \ + stat-w32.h stat-macros.h stat-time.h stdarg.in.h \ + intprops-internal.h stdckdint.in.h stddef.in.h stdint.in.h \ + stdio.in.h stdlib.in.h stdopen.h streq.h strerror-override.h \ + string.in.h strings.in.h strtol.c sys_random.in.h \ + sys_stat.in.h sys_time.in.h sys_types.in.h sys_wait.in.h \ + tempname.h time.in.h time-internal.h mktime-internal.h \ + timespec.h trim.h unistd.in.h unistr.in.h unitypes.in.h \ + localcharset.h uniwidth.in.h unictype/bitmap.h uniwidth/cjk.h \ + uniwidth/width0.h uniwidth/width2.h unlocked-io.h \ $(top_srcdir)/build-aux/update-copyright \ - $(top_srcdir)/build-aux/useless-if-before-free asnprintf.c \ - float+.h printf-args.c printf-args.h printf-parse.c \ - printf-parse.h vasnprintf.c vasnprintf.h asprintf.c \ - vasprintf.c $(top_srcdir)/build-aux/vc-list-files verify.h \ - wchar.in.h wcrtomb.c wctype.in.h wcwidth.c windows-initguard.h \ - windows-mutex.c windows-mutex.h windows-once.c windows-once.h \ - windows-initguard.h windows-recmutex.c windows-recmutex.h \ - windows-initguard.h windows-rwlock.c windows-rwlock.h \ - wmemchr-impl.h wmemchr.c wmempcpy.c xalloc.h xalloc.h \ - xalloc-oversized.h xmalloca.h xreadlink.h xstdopen.h xstrtol.h \ - xalloc.h + $(top_srcdir)/build-aux/useless-if-before-free \ + $(top_srcdir)/build-aux/vc-list-files verify.h wchar.in.h \ + wctype.in.h windows-initguard.h windows-mutex.h windows-once.h \ + windows-initguard.h windows-recmutex.h windows-initguard.h \ + windows-rwlock.h wmemchr-impl.h xalloc.h xalloc.h \ + xalloc-oversized.h xmalloca.h xreadlink.h xstdopen.h xstrtol.h MOSTLYCLEANDIRS = sys sys sys -MOSTLYCLEANFILES = core *.stackdump alloca.h alloca.h-t ctype.h \ - ctype.h-t malloc/dynarray.gl.h malloc/dynarray.gl.h-t \ +MOSTLYCLEANFILES = core *.stackdump alloca.h alloca.h-t assert.h \ + assert.h-t ctype.h ctype.h-t errno.h errno.h-t error.h \ + error.h-t fcntl.h fcntl.h-t fnmatch.h fnmatch.h-t getopt.h \ + getopt.h-t getopt-cdefs.h getopt-cdefs.h-t \ + malloc/dynarray.gl.h malloc/dynarray.gl.h-t \ malloc/dynarray-skeleton.gl.h malloc/dynarray-skeleton.gl.h-t \ - errno.h errno.h-t fcntl.h fcntl.h-t float.h float.h-t \ - fnmatch.h fnmatch.h-t getopt.h getopt.h-t getopt-cdefs.h \ - getopt-cdefs.h-t iconv.h iconv.h-t iconv_open-aix.h-t \ - iconv_open-hpux.h-t iconv_open-irix.h-t iconv_open-osf.h-t \ - iconv_open-solaris.h-t iconv_open-zos.h-t inttypes.h \ - inttypes.h-t langinfo.h langinfo.h-t limits.h limits.h-t \ - locale.h locale.h-t signal.h signal.h-t sigsegv.h sigsegv.h-t \ - stdalign.h stdalign.h-t stdarg.h stdarg.h-t stdbool.h \ - stdbool.h-t stddef.h stddef.h-t stdint.h stdint.h-t stdio.h \ - stdio.h-t stdlib.h stdlib.h-t string.h string.h-t strings.h \ - strings.h-t sys/random.h sys/random.h-t sys/stat.h \ - sys/stat.h-t sys/time.h sys/time.h-t sys/types.h sys/types.h-t \ - sys/wait.h sys/wait.h-t time.h time.h-t unistd.h unistd.h-t \ - unistr.h unistr.h-t unitypes.h unitypes.h-t uniwidth.h \ - uniwidth.h-t wchar.h wchar.h-t wctype.h wctype.h-t + iconv.h iconv.h-t iconv_open-aix.h-t iconv_open-hpux.h-t \ + iconv_open-irix.h-t iconv_open-osf.h-t iconv_open-solaris.h-t \ + iconv_open-zos.h-t inttypes.h inttypes.h-t langinfo.h \ + langinfo.h-t limits.h limits.h-t locale.h locale.h-t signal.h \ + signal.h-t sigsegv.h sigsegv.h-t stdarg.h stdarg.h-t \ + stdckdint.h stdckdint.h-t stddef.h stddef.h-t stdint.h \ + stdint.h-t stdio.h stdio.h-t stdlib.h stdlib.h-t string.h \ + string.h-t strings.h strings.h-t sys/random.h sys/random.h-t \ + sys/stat.h sys/stat.h-t sys/time.h sys/time.h-t sys/types.h \ + sys/types.h-t sys/wait.h sys/wait.h-t time.h time.h-t unistd.h \ + unistd.h-t unistr.h unistr.h-t unitypes.h unitypes.h-t \ + uniwidth.h uniwidth.h-t wchar.h wchar.h-t wctype.h wctype.h-t MAINTAINERCLEANFILES = iconv_open-aix.h iconv_open-hpux.h \ iconv_open-irix.h iconv_open-osf.h iconv_open-solaris.h \ iconv_open-zos.h SUFFIXES = # No GNU Make output. noinst_LIBRARIES = libdiffutils.a -noinst_HEADERS = cmpbuf.h prepargs.h +noinst_HEADERS = cmpbuf.h libdiffutils_a_SOURCES = allocator.c areadlink.c argmatch.c \ basename-lgpl.c binary-io.h binary-io.c bitrotate.h \ - bitrotate.c c-ctype.h c-ctype.c c-stack.h c-stack.c \ - c-strcase.h c-strcasecmp.c c-strncasecmp.c careadlinkat.c \ - cloexec.c diffseq.h dirname.c basename.c dirname-lgpl.c \ - stripslash.c malloc/dynarray_at_failure.c \ - malloc/dynarray_emplace_enlarge.c malloc/dynarray_finalize.c \ - malloc/dynarray_resize.c malloc/dynarray_resize_clear.c \ - exclude.c exitfail.c fd-hook.c file-type.c filenamecat.c \ - filenamecat-lgpl.c getprogname.h getprogname.c gettext.h \ - gettime.c hard-locale.c hash.c ialloc.c idx.h imaxtostr.c \ - inttostr.c offtostr.c uinttostr.c umaxtostr.c localcharset.c \ - glthread/lock.h glthread/lock.c malloca.c mbchar.c mbiter.h \ - mbiter.c mbscasecmp.c mbslen.c mbsstr.c mbuiter.h mbuiter.c \ - minmax.h nstrftime.c progname.h progname.c propername.h \ - propername.c quotearg.c setlocale_null.c sh-quote.h sh-quote.c \ - $(am__append_1) size_max.h stat-time.c stdopen.c striconv.h \ - striconv.c strnlen1.h strnlen1.c system-quote.h system-quote.c \ - tempname.c glthread/threadlib.c timespec.c trim.c unistd.c \ - $(am__append_2) $(am__append_3) $(am__append_4) version-etc.h \ - version-etc.c version-etc-fsf.c wctype-h.c xmalloc.c \ - xalloc-die.c xfreopen.c xfreopen.h xmalloca.c xreadlink.c \ - xsize.h xsize.c xstdopen.c xstriconv.h xstriconv.c \ - xstrtoimax.c xstrtol.c xstrtoul.c xvasprintf.h xvasprintf.c \ - xasprintf.c cmpbuf.c prepargs.c + bitrotate.c $(am__append_1) c-ctype.h c-ctype.c c-stack.h \ + c-stack.c c-strcase.h c-strcasecmp.c c-strncasecmp.c \ + careadlinkat.c cloexec.c $(am__append_2) diffseq.h dirname.c \ + basename.c dirname-lgpl.c stripslash.c $(am__append_3) \ + $(am__append_4) exclude.c exitfail.c $(am__append_5) fd-hook.c \ + file-type.c filenamecat.c filenamecat-lgpl.c $(am__append_6) \ + $(am__append_7) $(am__append_8) $(am__append_9) \ + $(am__append_10) $(am__append_11) $(am__append_12) \ + $(am__append_13) gettext.h gettime.c $(am__append_14) \ + malloc/dynarray_at_failure.c malloc/dynarray_emplace_enlarge.c \ + malloc/dynarray_finalize.c malloc/dynarray_resize.c \ + malloc/dynarray_resize_clear.c hard-locale.c hash.c ialloc.c \ + $(am__append_15) $(am__append_16) idx.h imaxtostr.c inttostr.c \ + offtostr.c uinttostr.c umaxtostr.c $(am__append_17) \ + $(am__append_18) $(am__append_19) $(am__append_20) \ + localcharset.c $(am__append_21) glthread/lock.h \ + glthread/lock.c $(am__append_22) malloca.c mbchar.c mbiter.h \ + mbiter.c $(am__append_23) mbscasecmp.c $(am__append_24) \ + mbslen.c $(am__append_25) mbsstr.c $(am__append_26) mbuiter.h \ + mbuiter.c $(am__append_27) $(am__append_28) minmax.h \ + $(am__append_29) $(am__append_30) $(am__append_31) \ + $(am__append_32) $(am__append_33) $(am__append_34) nstrftime.c \ + $(am__append_35) progname.h progname.c propername.h \ + propername.c quotearg.c $(am__append_36) $(am__append_37) \ + $(am__append_38) $(am__append_39) $(am__append_40) \ + $(am__append_41) setlocale_null.c $(am__append_42) sh-quote.h \ + sh-quote.c $(am__append_43) $(am__append_44) $(am__append_45) \ + stat-time.c $(am__append_46) $(am__append_47) stdopen.c \ + $(am__append_48) $(am__append_49) $(am__append_50) \ + $(am__append_51) $(am__append_52) striconv.h striconv.c \ + $(am__append_53) strnlen1.h strnlen1.c $(am__append_54) \ + $(am__append_55) $(am__append_56) system-quote.h \ + system-quote.c tempname.c glthread/threadlib.c \ + $(am__append_57) $(am__append_58) $(am__append_59) timespec.c \ + trim.c $(am__append_60) unistd.c $(am__append_61) \ + $(am__append_62) $(am__append_63) $(am__append_64) \ + version-etc.h version-etc.c version-etc-fsf.c $(am__append_65) \ + wctype-h.c $(am__append_66) $(am__append_67) $(am__append_68) \ + $(am__append_69) $(am__append_70) $(am__append_71) \ + $(am__append_72) xmalloc.c xalloc-die.c xfreopen.c xfreopen.h \ + xmalloca.c xreadlink.c xstdopen.c xstriconv.h xstriconv.c \ + xstrtoimax.c xstrtol.c xstrtoul.c cmpbuf.c +libdiffutils_a_CFLAGS = $(AM_CFLAGS) $(GL_CFLAG_GNULIB_WARNINGS) libdiffutils_a_LIBADD = $(gl_LIBOBJS) libdiffutils_a_DEPENDENCIES = $(gl_LIBOBJS) -EXTRA_libdiffutils_a_SOURCES = btowc.c calloc.c calloc.c close.c \ - stripslash.c dup2.c malloc/dynarray-skeleton.c error.c fcntl.c \ - float.c itold.c fnmatch.c fnmatch_loop.c fnmatch.c fopen.c \ - fopen.c free.c freopen.c fstat.c stat-w32.c getdtablesize.c \ - getopt.c getopt1.c getpagesize.c getrandom.c gettimeofday.c \ - iconv.c iconv_close.c iconv_open.c anytostr.c isblank.c \ - iswblank.c iswdigit.c iswxdigit.c localeconv.c lstat.c \ - malloc.c malloc.c lc-charset-dispatch.c mbrtowc.c \ - mbtowc-lock.c mbsinit.c mbsrtowcs-state.c mbsrtowcs.c mbtowc.c \ - memchr.c mempcpy.c mkdir.c mkstemp.c mktime.c mktime.c \ - msvc-inval.c msvc-nothrow.c nl_langinfo-lock.c nl_langinfo.c \ - open.c raise.c rawmemchr.c readlink.c realloc.c realloc.c \ - reallocarray.c regcomp.c regex.c regex_internal.c regexec.c \ - setenv.c setlocale-lock.c stat-w32.c stat.c strcasecmp.c \ - strncasecmp.c strerror.c strerror-override.c strnlen.c \ - strptime.c strtoimax.c strtol.c strtoll.c time_r.c time_rz.c \ - timegm.c tzset.c unsetenv.c asnprintf.c printf-args.c \ - printf-parse.c vasnprintf.c asprintf.c vasprintf.c wcrtomb.c \ - wcwidth.c windows-mutex.c windows-once.c windows-recmutex.c \ - windows-rwlock.c wmemchr.c wmempcpy.c +EXTRA_libdiffutils_a_SOURCES = calloc.c calloc.c stripslash.c \ + fnmatch.c fnmatch_loop.c fnmatch.c fopen.c fopen.c stat-w32.c \ + malloc/dynarray-skeleton.c anytostr.c malloc.c malloc.c \ + lc-charset-dispatch.c mbtowc-lock.c mbsrtowcs-state.c mktime.c \ + mktime.c realloc.c realloc.c regcomp.c regex_internal.c \ + regexec.c stat-w32.c strtol.c # Use this preprocessor expression to decide whether #include_next works. # Do not rely on a 'configure'-time test for this, since the expression # might appear in an installed header, which is used by some other compiler. HAVE_INCLUDE_NEXT = (__GNUC__ || __clang__ || 60000000 <= __DECC_VER) + +# In 'sed', replace the pattern space with a "DO NOT EDIT" comment. +SED_HEADER_NOEDIT = s,.*,/* DO NOT EDIT! GENERATED AUTOMATICALLY! */, + +# '$(SED_HEADER_STDOUT) -e "..."' runs 'sed' but first outputs "DO NOT EDIT". +SED_HEADER_STDOUT = sed -e 1h -e '1$(SED_HEADER_NOEDIT)' -e 1G + +# '$(SED_HEADER_TO_AT_t) FILE' copies FILE to $@-t, prepending a leading +# "DO_NOT_EDIT". Although this could be done more simply via: +# SED_HEADER_TO_AT_t = $(SED_HEADER_STDOUT) > $@-t +# the -n and 'w' avoid a fork+exec, at least when GNU Make is used. +SED_HEADER_TO_AT_t = $(SED_HEADER_STDOUT) -n -e 'w $@-t' + +# Use $(gl_V_at) instead of $(AM_V_GEN) or $(AM_V_at) on a line that +gl_V_at = $(AM_V_GEN) GPERF = gperf V_GPERF = $(V_GPERF_@AM_V@) V_GPERF_ = $(V_GPERF_@AM_DEFAULT_V@) @@ -2056,71 +2479,71 @@ config.h: stamp-h1 @test -f $@ || $(MAKE) $(AM_MAKEFLAGS) stamp-h1 stamp-h1: $(srcdir)/config.hin $(top_builddir)/config.status - @rm -f stamp-h1 - cd $(top_builddir) && $(SHELL) ./config.status lib/config.h + $(AM_V_at)rm -f stamp-h1 + $(AM_V_GEN)cd $(top_builddir) && $(SHELL) ./config.status lib/config.h $(srcdir)/config.hin: $(am__configure_deps) - ($(am__cd) $(top_srcdir) && $(AUTOHEADER)) - rm -f stamp-h1 - touch $@ + $(AM_V_GEN)($(am__cd) $(top_srcdir) && $(AUTOHEADER)) + $(AM_V_at)rm -f stamp-h1 + $(AM_V_at)touch $@ distclean-hdr: -rm -f config.h stamp-h1 clean-noinstLIBRARIES: - -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) + -$(am__rm_f) $(noinst_LIBRARIES) malloc/$(am__dirstamp): @$(MKDIR_P) malloc - @: > malloc/$(am__dirstamp) + @: >>malloc/$(am__dirstamp) malloc/$(DEPDIR)/$(am__dirstamp): @$(MKDIR_P) malloc/$(DEPDIR) - @: > malloc/$(DEPDIR)/$(am__dirstamp) -malloc/dynarray_at_failure.$(OBJEXT): malloc/$(am__dirstamp) \ - malloc/$(DEPDIR)/$(am__dirstamp) -malloc/dynarray_emplace_enlarge.$(OBJEXT): malloc/$(am__dirstamp) \ - malloc/$(DEPDIR)/$(am__dirstamp) -malloc/dynarray_finalize.$(OBJEXT): malloc/$(am__dirstamp) \ - malloc/$(DEPDIR)/$(am__dirstamp) -malloc/dynarray_resize.$(OBJEXT): malloc/$(am__dirstamp) \ - malloc/$(DEPDIR)/$(am__dirstamp) -malloc/dynarray_resize_clear.$(OBJEXT): malloc/$(am__dirstamp) \ - malloc/$(DEPDIR)/$(am__dirstamp) + @: >>malloc/$(DEPDIR)/$(am__dirstamp) +malloc/libdiffutils_a-dynarray_at_failure.$(OBJEXT): \ + malloc/$(am__dirstamp) malloc/$(DEPDIR)/$(am__dirstamp) +malloc/libdiffutils_a-dynarray_emplace_enlarge.$(OBJEXT): \ + malloc/$(am__dirstamp) malloc/$(DEPDIR)/$(am__dirstamp) +malloc/libdiffutils_a-dynarray_finalize.$(OBJEXT): \ + malloc/$(am__dirstamp) malloc/$(DEPDIR)/$(am__dirstamp) +malloc/libdiffutils_a-dynarray_resize.$(OBJEXT): \ + malloc/$(am__dirstamp) malloc/$(DEPDIR)/$(am__dirstamp) +malloc/libdiffutils_a-dynarray_resize_clear.$(OBJEXT): \ + malloc/$(am__dirstamp) malloc/$(DEPDIR)/$(am__dirstamp) glthread/$(am__dirstamp): @$(MKDIR_P) glthread - @: > glthread/$(am__dirstamp) + @: >>glthread/$(am__dirstamp) glthread/$(DEPDIR)/$(am__dirstamp): @$(MKDIR_P) glthread/$(DEPDIR) - @: > glthread/$(DEPDIR)/$(am__dirstamp) -glthread/lock.$(OBJEXT): glthread/$(am__dirstamp) \ + @: >>glthread/$(DEPDIR)/$(am__dirstamp) +glthread/libdiffutils_a-lock.$(OBJEXT): glthread/$(am__dirstamp) \ glthread/$(DEPDIR)/$(am__dirstamp) -glthread/threadlib.$(OBJEXT): glthread/$(am__dirstamp) \ +glthread/libdiffutils_a-threadlib.$(OBJEXT): glthread/$(am__dirstamp) \ glthread/$(DEPDIR)/$(am__dirstamp) unistr/$(am__dirstamp): @$(MKDIR_P) unistr - @: > unistr/$(am__dirstamp) + @: >>unistr/$(am__dirstamp) unistr/$(DEPDIR)/$(am__dirstamp): @$(MKDIR_P) unistr/$(DEPDIR) - @: > unistr/$(DEPDIR)/$(am__dirstamp) -unistr/u8-mbtoucr.$(OBJEXT): unistr/$(am__dirstamp) \ + @: >>unistr/$(DEPDIR)/$(am__dirstamp) +unistr/libdiffutils_a-u8-mbtoucr.$(OBJEXT): unistr/$(am__dirstamp) \ unistr/$(DEPDIR)/$(am__dirstamp) -unistr/u8-uctomb.$(OBJEXT): unistr/$(am__dirstamp) \ +unistr/libdiffutils_a-u8-uctomb.$(OBJEXT): unistr/$(am__dirstamp) \ unistr/$(DEPDIR)/$(am__dirstamp) -unistr/u8-uctomb-aux.$(OBJEXT): unistr/$(am__dirstamp) \ +unistr/libdiffutils_a-u8-uctomb-aux.$(OBJEXT): unistr/$(am__dirstamp) \ unistr/$(DEPDIR)/$(am__dirstamp) uniwidth/$(am__dirstamp): @$(MKDIR_P) uniwidth - @: > uniwidth/$(am__dirstamp) + @: >>uniwidth/$(am__dirstamp) uniwidth/$(DEPDIR)/$(am__dirstamp): @$(MKDIR_P) uniwidth/$(DEPDIR) - @: > uniwidth/$(DEPDIR)/$(am__dirstamp) -uniwidth/width.$(OBJEXT): uniwidth/$(am__dirstamp) \ + @: >>uniwidth/$(DEPDIR)/$(am__dirstamp) +uniwidth/libdiffutils_a-width.$(OBJEXT): uniwidth/$(am__dirstamp) \ uniwidth/$(DEPDIR)/$(am__dirstamp) -malloc/dynarray-skeleton.$(OBJEXT): malloc/$(am__dirstamp) \ - malloc/$(DEPDIR)/$(am__dirstamp) +malloc/libdiffutils_a-dynarray-skeleton.$(OBJEXT): \ + malloc/$(am__dirstamp) malloc/$(DEPDIR)/$(am__dirstamp) libdiffutils.a: $(libdiffutils_a_OBJECTS) $(libdiffutils_a_DEPENDENCIES) $(EXTRA_libdiffutils_a_DEPENDENCIES) $(AM_V_at)-rm -f libdiffutils.a $(AM_V_AR)$(libdiffutils_a_AR) libdiffutils.a $(libdiffutils_a_OBJECTS) $(libdiffutils_a_LIBADD) - $(AM_V_at)$(RANLIB) libdiffutils.a + $(AM_V_at)$(libdiffutils_a_RANLIB) libdiffutils.a mostlyclean-compile: -rm -f *.$(OBJEXT) @@ -2132,186 +2555,178 @@ mostlyclean-compile: distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/allocator.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/anytostr.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/areadlink.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/argmatch.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/asnprintf.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/asprintf.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/basename-lgpl.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/basename.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/binary-io.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bitrotate.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/btowc.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/c-ctype.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/c-stack.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/c-strcasecmp.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/c-strncasecmp.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/calloc.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/careadlinkat.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cloexec.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/close.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cmpbuf.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dirname-lgpl.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dirname.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dup2.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/error.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/exclude.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/exitfail.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fcntl.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fd-hook.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/file-type.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/filenamecat-lgpl.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/filenamecat.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/float.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fnmatch.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fnmatch_loop.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fopen.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/free.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/freopen.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fstat.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getdtablesize.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getopt.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getopt1.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getpagesize.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getprogname.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getrandom.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gettime.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gettimeofday.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/hard-locale.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/hash.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ialloc.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/iconv.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/iconv_close.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/iconv_open.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/imaxtostr.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/inttostr.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/isblank.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/iswblank.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/iswdigit.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/iswxdigit.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/itold.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lc-charset-dispatch.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/localcharset.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/localeconv.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lstat.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/malloc.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/malloca.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbchar.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbiter.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbrtowc.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbscasecmp.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbsinit.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbslen.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbsrtowcs-state.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbsrtowcs.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbsstr.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbtowc-lock.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbtowc.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mbuiter.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/memchr.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mempcpy.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mkdir.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mkstemp.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mktime.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/msvc-inval.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/msvc-nothrow.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nl_langinfo-lock.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nl_langinfo.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nstrftime.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/offtostr.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/open.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/prepargs.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/printf-args.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/printf-parse.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/progname.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/propername.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/quotearg.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/raise.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rawmemchr.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/readlink.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/realloc.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/reallocarray.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/regcomp.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/regex.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/regex_internal.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/regexec.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/setenv.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/setlocale-lock.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/setlocale_null.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sh-quote.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sigsegv.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stackvma.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stat-time.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stat-w32.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stat.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stdopen.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strcasecmp.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strerror-override.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strerror.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/striconv.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stripslash.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strncasecmp.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strnlen.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strnlen1.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strptime.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strtoimax.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strtol.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strtoll.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/system-quote.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tempname.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/time_r.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/time_rz.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/timegm.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/timespec.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/trim.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tzset.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/uinttostr.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/umaxtostr.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unistd.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unsetenv.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/vasnprintf.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/vasprintf.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/version-etc-fsf.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/version-etc.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wcrtomb.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wctype-h.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wcwidth.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/windows-mutex.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/windows-once.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/windows-recmutex.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/windows-rwlock.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wmemchr.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wmempcpy.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xalloc-die.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xasprintf.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xfreopen.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xmalloc.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xmalloca.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xreadlink.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xsize.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xstdopen.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xstriconv.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xstrtoimax.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xstrtol.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xstrtoul.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xvasprintf.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@glthread/$(DEPDIR)/lock.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@glthread/$(DEPDIR)/threadlib.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@malloc/$(DEPDIR)/dynarray-skeleton.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@malloc/$(DEPDIR)/dynarray_at_failure.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@malloc/$(DEPDIR)/dynarray_emplace_enlarge.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@malloc/$(DEPDIR)/dynarray_finalize.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@malloc/$(DEPDIR)/dynarray_resize.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@malloc/$(DEPDIR)/dynarray_resize_clear.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@unistr/$(DEPDIR)/u8-mbtoucr.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@unistr/$(DEPDIR)/u8-uctomb-aux.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@unistr/$(DEPDIR)/u8-uctomb.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@uniwidth/$(DEPDIR)/width.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-allocator.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-anytostr.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-areadlink.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-argmatch.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-basename-lgpl.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-basename.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-binary-io.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-bitrotate.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-btowc.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-c-ctype.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-c-stack.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-c-strcasecmp.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-c-strncasecmp.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-calloc.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-careadlinkat.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-cloexec.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-close.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-cmpbuf.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-dirname-lgpl.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-dirname.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-dup2.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-error.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-exclude.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-exitfail.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-fcntl.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-fd-hook.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-file-type.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-filenamecat-lgpl.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-filenamecat.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-fnmatch.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-fnmatch_loop.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-fopen.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-free.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-freopen.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-fstat.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-getdtablesize.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-getopt.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-getopt1.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-getpagesize.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-getprogname.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-getrandom.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-gettime.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-gettimeofday.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-hard-locale.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-hash.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-ialloc.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-iconv.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-iconv_close.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-iconv_open.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-imaxtostr.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-inttostr.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-isblank.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-iswblank.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-iswdigit.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-iswxdigit.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-lc-charset-dispatch.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-localcharset.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-localeconv.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-lstat.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-malloc.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-malloca.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-mbchar.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-mbiter.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-mbrtowc.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-mbscasecmp.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-mbsinit.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-mbslen.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-mbsrtowcs-state.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-mbsrtowcs.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-mbsstr.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-mbtowc-lock.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-mbtowc.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-mbuiter.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-memchr.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-mempcpy.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-mkdir.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-mkstemp.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-mktime.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-msvc-inval.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-msvc-nothrow.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-nl_langinfo-lock.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-nl_langinfo.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-nstrftime.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-offtostr.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-open.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-progname.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-propername.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-quotearg.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-raise.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-rawmemchr.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-readlink.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-realloc.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-reallocarray.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-regcomp.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-regex.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-regex_internal.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-regexec.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-setenv.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-setlocale-lock.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-setlocale_null.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-sh-quote.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-sigprocmask.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-sigsegv.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-stackvma.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-stat-time.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-stat-w32.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-stat.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-stdio-read.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-stdio-write.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-stdopen.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-stpcpy.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-strcasecmp.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-strerror-override.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-strerror.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-striconv.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-stripslash.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-strncasecmp.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-strnlen.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-strnlen1.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-strptime.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-strtoimax.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-strtol.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-strtoll.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-system-quote.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-tempname.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-time_r.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-time_rz.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-timegm.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-timespec.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-trim.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-tzset.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-uinttostr.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-umaxtostr.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-unistd.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-unsetenv.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-version-etc-fsf.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-version-etc.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-wcrtomb.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-wctype-h.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-wcwidth.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-windows-mutex.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-windows-once.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-windows-recmutex.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-windows-rwlock.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-wmemchr.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-wmempcpy.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-xalloc-die.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-xfreopen.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-xmalloc.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-xmalloca.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-xreadlink.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-xstdopen.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-xstriconv.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-xstrtoimax.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-xstrtol.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdiffutils_a-xstrtoul.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@glthread/$(DEPDIR)/libdiffutils_a-lock.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@glthread/$(DEPDIR)/libdiffutils_a-threadlib.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@malloc/$(DEPDIR)/libdiffutils_a-dynarray-skeleton.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@malloc/$(DEPDIR)/libdiffutils_a-dynarray_at_failure.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@malloc/$(DEPDIR)/libdiffutils_a-dynarray_emplace_enlarge.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@malloc/$(DEPDIR)/libdiffutils_a-dynarray_finalize.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@malloc/$(DEPDIR)/libdiffutils_a-dynarray_resize.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@malloc/$(DEPDIR)/libdiffutils_a-dynarray_resize_clear.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unistr/$(DEPDIR)/libdiffutils_a-u8-mbtoucr.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unistr/$(DEPDIR)/libdiffutils_a-u8-uctomb-aux.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@unistr/$(DEPDIR)/libdiffutils_a-u8-uctomb.Po@am__quote@ # am--include-marker +@AMDEP_TRUE@@am__include@ @am__quote@uniwidth/$(DEPDIR)/libdiffutils_a-width.Po@am__quote@ # am--include-marker $(am__depfiles_remade): @$(MKDIR_P) $(@D) - @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + @: >>$@ am--depfiles: $(am__depfiles_remade) @@ -2331,659 +2746,3006 @@ am--depfiles: $(am__depfiles_remade) @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'` -ID: $(am__tagged_files) - $(am__define_uniq_tagged_files); mkid -fID $$unique -tags: tags-am -TAGS: tags +libdiffutils_a-allocator.o: allocator.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-allocator.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-allocator.Tpo -c -o libdiffutils_a-allocator.o `test -f 'allocator.c' || echo '$(srcdir)/'`allocator.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-allocator.Tpo $(DEPDIR)/libdiffutils_a-allocator.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='allocator.c' object='libdiffutils_a-allocator.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-allocator.o `test -f 'allocator.c' || echo '$(srcdir)/'`allocator.c -tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) - set x; \ - here=`pwd`; \ - $(am__define_uniq_tagged_files); \ - shift; \ - if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ - test -n "$$unique" || unique=$$empty_fix; \ - if test $$# -gt 0; then \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - "$$@" $$unique; \ - else \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - $$unique; \ - fi; \ - fi -ctags: ctags-am +libdiffutils_a-allocator.obj: allocator.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-allocator.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-allocator.Tpo -c -o libdiffutils_a-allocator.obj `if test -f 'allocator.c'; then $(CYGPATH_W) 'allocator.c'; else $(CYGPATH_W) '$(srcdir)/allocator.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-allocator.Tpo $(DEPDIR)/libdiffutils_a-allocator.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='allocator.c' object='libdiffutils_a-allocator.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-allocator.obj `if test -f 'allocator.c'; then $(CYGPATH_W) 'allocator.c'; else $(CYGPATH_W) '$(srcdir)/allocator.c'; fi` -CTAGS: ctags -ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) - $(am__define_uniq_tagged_files); \ - test -z "$(CTAGS_ARGS)$$unique" \ - || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ - $$unique +libdiffutils_a-areadlink.o: areadlink.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-areadlink.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-areadlink.Tpo -c -o libdiffutils_a-areadlink.o `test -f 'areadlink.c' || echo '$(srcdir)/'`areadlink.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-areadlink.Tpo $(DEPDIR)/libdiffutils_a-areadlink.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='areadlink.c' object='libdiffutils_a-areadlink.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-areadlink.o `test -f 'areadlink.c' || echo '$(srcdir)/'`areadlink.c -GTAGS: - here=`$(am__cd) $(top_builddir) && pwd` \ - && $(am__cd) $(top_srcdir) \ - && gtags -i $(GTAGS_ARGS) "$$here" -cscopelist: cscopelist-am +libdiffutils_a-areadlink.obj: areadlink.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-areadlink.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-areadlink.Tpo -c -o libdiffutils_a-areadlink.obj `if test -f 'areadlink.c'; then $(CYGPATH_W) 'areadlink.c'; else $(CYGPATH_W) '$(srcdir)/areadlink.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-areadlink.Tpo $(DEPDIR)/libdiffutils_a-areadlink.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='areadlink.c' object='libdiffutils_a-areadlink.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-areadlink.obj `if test -f 'areadlink.c'; then $(CYGPATH_W) 'areadlink.c'; else $(CYGPATH_W) '$(srcdir)/areadlink.c'; fi` -cscopelist-am: $(am__tagged_files) - list='$(am__tagged_files)'; \ - case "$(srcdir)" in \ - [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ - *) sdir=$(subdir)/$(srcdir) ;; \ - esac; \ - for i in $$list; do \ - if test -f "$$i"; then \ - echo "$(subdir)/$$i"; \ - else \ - echo "$$sdir/$$i"; \ - fi; \ - done >> $(top_builddir)/cscope.files +libdiffutils_a-argmatch.o: argmatch.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-argmatch.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-argmatch.Tpo -c -o libdiffutils_a-argmatch.o `test -f 'argmatch.c' || echo '$(srcdir)/'`argmatch.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-argmatch.Tpo $(DEPDIR)/libdiffutils_a-argmatch.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='argmatch.c' object='libdiffutils_a-argmatch.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-argmatch.o `test -f 'argmatch.c' || echo '$(srcdir)/'`argmatch.c -distclean-tags: - -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(BUILT_SOURCES) - $(MAKE) $(AM_MAKEFLAGS) distdir-am +libdiffutils_a-argmatch.obj: argmatch.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-argmatch.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-argmatch.Tpo -c -o libdiffutils_a-argmatch.obj `if test -f 'argmatch.c'; then $(CYGPATH_W) 'argmatch.c'; else $(CYGPATH_W) '$(srcdir)/argmatch.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-argmatch.Tpo $(DEPDIR)/libdiffutils_a-argmatch.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='argmatch.c' object='libdiffutils_a-argmatch.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-argmatch.obj `if test -f 'argmatch.c'; then $(CYGPATH_W) 'argmatch.c'; else $(CYGPATH_W) '$(srcdir)/argmatch.c'; fi` -distdir-am: $(DISTFILES) - @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - list='$(DISTFILES)'; \ - dist_files=`for file in $$list; do echo $$file; done | \ - sed -e "s|^$$srcdirstrip/||;t" \ - -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ - case $$dist_files in \ - */*) $(MKDIR_P) `echo "$$dist_files" | \ - sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ - sort -u` ;; \ - esac; \ - for file in $$dist_files; do \ - if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - if test -d $$d/$$file; then \ - dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test -d "$(distdir)/$$file"; then \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ - else \ - test -f "$(distdir)/$$file" \ - || cp -p $$d/$$file "$(distdir)/$$file" \ - || exit 1; \ - fi; \ - done -check-am: all-am -check: $(BUILT_SOURCES) - $(MAKE) $(AM_MAKEFLAGS) check-am -all-am: Makefile $(LIBRARIES) $(HEADERS) config.h -installdirs: -install: $(BUILT_SOURCES) - $(MAKE) $(AM_MAKEFLAGS) install-am -install-exec: $(BUILT_SOURCES) - $(MAKE) $(AM_MAKEFLAGS) install-exec-am -install-data: install-data-am -uninstall: uninstall-am +libdiffutils_a-basename-lgpl.o: basename-lgpl.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-basename-lgpl.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-basename-lgpl.Tpo -c -o libdiffutils_a-basename-lgpl.o `test -f 'basename-lgpl.c' || echo '$(srcdir)/'`basename-lgpl.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-basename-lgpl.Tpo $(DEPDIR)/libdiffutils_a-basename-lgpl.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='basename-lgpl.c' object='libdiffutils_a-basename-lgpl.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-basename-lgpl.o `test -f 'basename-lgpl.c' || echo '$(srcdir)/'`basename-lgpl.c -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am +libdiffutils_a-basename-lgpl.obj: basename-lgpl.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-basename-lgpl.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-basename-lgpl.Tpo -c -o libdiffutils_a-basename-lgpl.obj `if test -f 'basename-lgpl.c'; then $(CYGPATH_W) 'basename-lgpl.c'; else $(CYGPATH_W) '$(srcdir)/basename-lgpl.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-basename-lgpl.Tpo $(DEPDIR)/libdiffutils_a-basename-lgpl.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='basename-lgpl.c' object='libdiffutils_a-basename-lgpl.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-basename-lgpl.obj `if test -f 'basename-lgpl.c'; then $(CYGPATH_W) 'basename-lgpl.c'; else $(CYGPATH_W) '$(srcdir)/basename-lgpl.c'; fi` -installcheck: installcheck-am -install-strip: - if test -z '$(STRIP)'; then \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - install; \ - else \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ - fi -mostlyclean-generic: - -test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES) +libdiffutils_a-binary-io.o: binary-io.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-binary-io.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-binary-io.Tpo -c -o libdiffutils_a-binary-io.o `test -f 'binary-io.c' || echo '$(srcdir)/'`binary-io.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-binary-io.Tpo $(DEPDIR)/libdiffutils_a-binary-io.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='binary-io.c' object='libdiffutils_a-binary-io.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-binary-io.o `test -f 'binary-io.c' || echo '$(srcdir)/'`binary-io.c -clean-generic: - -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) +libdiffutils_a-binary-io.obj: binary-io.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-binary-io.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-binary-io.Tpo -c -o libdiffutils_a-binary-io.obj `if test -f 'binary-io.c'; then $(CYGPATH_W) 'binary-io.c'; else $(CYGPATH_W) '$(srcdir)/binary-io.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-binary-io.Tpo $(DEPDIR)/libdiffutils_a-binary-io.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='binary-io.c' object='libdiffutils_a-binary-io.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-binary-io.obj `if test -f 'binary-io.c'; then $(CYGPATH_W) 'binary-io.c'; else $(CYGPATH_W) '$(srcdir)/binary-io.c'; fi` -distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) - -rm -f glthread/$(DEPDIR)/$(am__dirstamp) - -rm -f glthread/$(am__dirstamp) - -rm -f malloc/$(DEPDIR)/$(am__dirstamp) - -rm -f malloc/$(am__dirstamp) - -rm -f unistr/$(DEPDIR)/$(am__dirstamp) - -rm -f unistr/$(am__dirstamp) - -rm -f uniwidth/$(DEPDIR)/$(am__dirstamp) - -rm -f uniwidth/$(am__dirstamp) +libdiffutils_a-bitrotate.o: bitrotate.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-bitrotate.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-bitrotate.Tpo -c -o libdiffutils_a-bitrotate.o `test -f 'bitrotate.c' || echo '$(srcdir)/'`bitrotate.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-bitrotate.Tpo $(DEPDIR)/libdiffutils_a-bitrotate.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bitrotate.c' object='libdiffutils_a-bitrotate.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-bitrotate.o `test -f 'bitrotate.c' || echo '$(srcdir)/'`bitrotate.c -maintainer-clean-generic: - @echo "This command is intended for maintainers to use" - @echo "it deletes files that may require special tools to rebuild." - -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES) - -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES) -clean: clean-am +libdiffutils_a-bitrotate.obj: bitrotate.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-bitrotate.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-bitrotate.Tpo -c -o libdiffutils_a-bitrotate.obj `if test -f 'bitrotate.c'; then $(CYGPATH_W) 'bitrotate.c'; else $(CYGPATH_W) '$(srcdir)/bitrotate.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-bitrotate.Tpo $(DEPDIR)/libdiffutils_a-bitrotate.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bitrotate.c' object='libdiffutils_a-bitrotate.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-bitrotate.obj `if test -f 'bitrotate.c'; then $(CYGPATH_W) 'bitrotate.c'; else $(CYGPATH_W) '$(srcdir)/bitrotate.c'; fi` -clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am +libdiffutils_a-btowc.o: btowc.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-btowc.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-btowc.Tpo -c -o libdiffutils_a-btowc.o `test -f 'btowc.c' || echo '$(srcdir)/'`btowc.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-btowc.Tpo $(DEPDIR)/libdiffutils_a-btowc.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='btowc.c' object='libdiffutils_a-btowc.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-btowc.o `test -f 'btowc.c' || echo '$(srcdir)/'`btowc.c -distclean: distclean-am - -rm -f ./$(DEPDIR)/allocator.Po - -rm -f ./$(DEPDIR)/anytostr.Po - -rm -f ./$(DEPDIR)/areadlink.Po - -rm -f ./$(DEPDIR)/argmatch.Po - -rm -f ./$(DEPDIR)/asnprintf.Po - -rm -f ./$(DEPDIR)/asprintf.Po - -rm -f ./$(DEPDIR)/basename-lgpl.Po - -rm -f ./$(DEPDIR)/basename.Po - -rm -f ./$(DEPDIR)/binary-io.Po - -rm -f ./$(DEPDIR)/bitrotate.Po - -rm -f ./$(DEPDIR)/btowc.Po - -rm -f ./$(DEPDIR)/c-ctype.Po - -rm -f ./$(DEPDIR)/c-stack.Po - -rm -f ./$(DEPDIR)/c-strcasecmp.Po - -rm -f ./$(DEPDIR)/c-strncasecmp.Po - -rm -f ./$(DEPDIR)/calloc.Po - -rm -f ./$(DEPDIR)/careadlinkat.Po - -rm -f ./$(DEPDIR)/cloexec.Po - -rm -f ./$(DEPDIR)/close.Po - -rm -f ./$(DEPDIR)/cmpbuf.Po - -rm -f ./$(DEPDIR)/dirname-lgpl.Po - -rm -f ./$(DEPDIR)/dirname.Po - -rm -f ./$(DEPDIR)/dup2.Po - -rm -f ./$(DEPDIR)/error.Po - -rm -f ./$(DEPDIR)/exclude.Po - -rm -f ./$(DEPDIR)/exitfail.Po - -rm -f ./$(DEPDIR)/fcntl.Po - -rm -f ./$(DEPDIR)/fd-hook.Po - -rm -f ./$(DEPDIR)/file-type.Po - -rm -f ./$(DEPDIR)/filenamecat-lgpl.Po - -rm -f ./$(DEPDIR)/filenamecat.Po - -rm -f ./$(DEPDIR)/float.Po - -rm -f ./$(DEPDIR)/fnmatch.Po - -rm -f ./$(DEPDIR)/fnmatch_loop.Po - -rm -f ./$(DEPDIR)/fopen.Po - -rm -f ./$(DEPDIR)/free.Po - -rm -f ./$(DEPDIR)/freopen.Po - -rm -f ./$(DEPDIR)/fstat.Po - -rm -f ./$(DEPDIR)/getdtablesize.Po - -rm -f ./$(DEPDIR)/getopt.Po - -rm -f ./$(DEPDIR)/getopt1.Po - -rm -f ./$(DEPDIR)/getpagesize.Po - -rm -f ./$(DEPDIR)/getprogname.Po - -rm -f ./$(DEPDIR)/getrandom.Po - -rm -f ./$(DEPDIR)/gettime.Po - -rm -f ./$(DEPDIR)/gettimeofday.Po - -rm -f ./$(DEPDIR)/hard-locale.Po - -rm -f ./$(DEPDIR)/hash.Po - -rm -f ./$(DEPDIR)/ialloc.Po - -rm -f ./$(DEPDIR)/iconv.Po - -rm -f ./$(DEPDIR)/iconv_close.Po - -rm -f ./$(DEPDIR)/iconv_open.Po - -rm -f ./$(DEPDIR)/imaxtostr.Po - -rm -f ./$(DEPDIR)/inttostr.Po - -rm -f ./$(DEPDIR)/isblank.Po - -rm -f ./$(DEPDIR)/iswblank.Po - -rm -f ./$(DEPDIR)/iswdigit.Po - -rm -f ./$(DEPDIR)/iswxdigit.Po - -rm -f ./$(DEPDIR)/itold.Po - -rm -f ./$(DEPDIR)/lc-charset-dispatch.Po - -rm -f ./$(DEPDIR)/localcharset.Po - -rm -f ./$(DEPDIR)/localeconv.Po - -rm -f ./$(DEPDIR)/lstat.Po - -rm -f ./$(DEPDIR)/malloc.Po - -rm -f ./$(DEPDIR)/malloca.Po - -rm -f ./$(DEPDIR)/mbchar.Po - -rm -f ./$(DEPDIR)/mbiter.Po - -rm -f ./$(DEPDIR)/mbrtowc.Po - -rm -f ./$(DEPDIR)/mbscasecmp.Po - -rm -f ./$(DEPDIR)/mbsinit.Po - -rm -f ./$(DEPDIR)/mbslen.Po - -rm -f ./$(DEPDIR)/mbsrtowcs-state.Po - -rm -f ./$(DEPDIR)/mbsrtowcs.Po - -rm -f ./$(DEPDIR)/mbsstr.Po - -rm -f ./$(DEPDIR)/mbtowc-lock.Po - -rm -f ./$(DEPDIR)/mbtowc.Po - -rm -f ./$(DEPDIR)/mbuiter.Po - -rm -f ./$(DEPDIR)/memchr.Po - -rm -f ./$(DEPDIR)/mempcpy.Po - -rm -f ./$(DEPDIR)/mkdir.Po - -rm -f ./$(DEPDIR)/mkstemp.Po - -rm -f ./$(DEPDIR)/mktime.Po - -rm -f ./$(DEPDIR)/msvc-inval.Po - -rm -f ./$(DEPDIR)/msvc-nothrow.Po - -rm -f ./$(DEPDIR)/nl_langinfo-lock.Po - -rm -f ./$(DEPDIR)/nl_langinfo.Po - -rm -f ./$(DEPDIR)/nstrftime.Po - -rm -f ./$(DEPDIR)/offtostr.Po - -rm -f ./$(DEPDIR)/open.Po - -rm -f ./$(DEPDIR)/prepargs.Po - -rm -f ./$(DEPDIR)/printf-args.Po - -rm -f ./$(DEPDIR)/printf-parse.Po - -rm -f ./$(DEPDIR)/progname.Po - -rm -f ./$(DEPDIR)/propername.Po - -rm -f ./$(DEPDIR)/quotearg.Po - -rm -f ./$(DEPDIR)/raise.Po - -rm -f ./$(DEPDIR)/rawmemchr.Po - -rm -f ./$(DEPDIR)/readlink.Po - -rm -f ./$(DEPDIR)/realloc.Po - -rm -f ./$(DEPDIR)/reallocarray.Po - -rm -f ./$(DEPDIR)/regcomp.Po - -rm -f ./$(DEPDIR)/regex.Po - -rm -f ./$(DEPDIR)/regex_internal.Po - -rm -f ./$(DEPDIR)/regexec.Po - -rm -f ./$(DEPDIR)/setenv.Po - -rm -f ./$(DEPDIR)/setlocale-lock.Po - -rm -f ./$(DEPDIR)/setlocale_null.Po - -rm -f ./$(DEPDIR)/sh-quote.Po - -rm -f ./$(DEPDIR)/sigsegv.Po - -rm -f ./$(DEPDIR)/stackvma.Po - -rm -f ./$(DEPDIR)/stat-time.Po - -rm -f ./$(DEPDIR)/stat-w32.Po - -rm -f ./$(DEPDIR)/stat.Po - -rm -f ./$(DEPDIR)/stdopen.Po - -rm -f ./$(DEPDIR)/strcasecmp.Po - -rm -f ./$(DEPDIR)/strerror-override.Po - -rm -f ./$(DEPDIR)/strerror.Po - -rm -f ./$(DEPDIR)/striconv.Po - -rm -f ./$(DEPDIR)/stripslash.Po - -rm -f ./$(DEPDIR)/strncasecmp.Po - -rm -f ./$(DEPDIR)/strnlen.Po - -rm -f ./$(DEPDIR)/strnlen1.Po - -rm -f ./$(DEPDIR)/strptime.Po - -rm -f ./$(DEPDIR)/strtoimax.Po - -rm -f ./$(DEPDIR)/strtol.Po - -rm -f ./$(DEPDIR)/strtoll.Po - -rm -f ./$(DEPDIR)/system-quote.Po - -rm -f ./$(DEPDIR)/tempname.Po - -rm -f ./$(DEPDIR)/time_r.Po - -rm -f ./$(DEPDIR)/time_rz.Po - -rm -f ./$(DEPDIR)/timegm.Po - -rm -f ./$(DEPDIR)/timespec.Po - -rm -f ./$(DEPDIR)/trim.Po - -rm -f ./$(DEPDIR)/tzset.Po - -rm -f ./$(DEPDIR)/uinttostr.Po - -rm -f ./$(DEPDIR)/umaxtostr.Po - -rm -f ./$(DEPDIR)/unistd.Po - -rm -f ./$(DEPDIR)/unsetenv.Po - -rm -f ./$(DEPDIR)/vasnprintf.Po - -rm -f ./$(DEPDIR)/vasprintf.Po - -rm -f ./$(DEPDIR)/version-etc-fsf.Po - -rm -f ./$(DEPDIR)/version-etc.Po - -rm -f ./$(DEPDIR)/wcrtomb.Po - -rm -f ./$(DEPDIR)/wctype-h.Po - -rm -f ./$(DEPDIR)/wcwidth.Po - -rm -f ./$(DEPDIR)/windows-mutex.Po - -rm -f ./$(DEPDIR)/windows-once.Po - -rm -f ./$(DEPDIR)/windows-recmutex.Po - -rm -f ./$(DEPDIR)/windows-rwlock.Po - -rm -f ./$(DEPDIR)/wmemchr.Po - -rm -f ./$(DEPDIR)/wmempcpy.Po - -rm -f ./$(DEPDIR)/xalloc-die.Po - -rm -f ./$(DEPDIR)/xasprintf.Po - -rm -f ./$(DEPDIR)/xfreopen.Po - -rm -f ./$(DEPDIR)/xmalloc.Po - -rm -f ./$(DEPDIR)/xmalloca.Po - -rm -f ./$(DEPDIR)/xreadlink.Po - -rm -f ./$(DEPDIR)/xsize.Po - -rm -f ./$(DEPDIR)/xstdopen.Po - -rm -f ./$(DEPDIR)/xstriconv.Po - -rm -f ./$(DEPDIR)/xstrtoimax.Po - -rm -f ./$(DEPDIR)/xstrtol.Po - -rm -f ./$(DEPDIR)/xstrtoul.Po - -rm -f ./$(DEPDIR)/xvasprintf.Po - -rm -f glthread/$(DEPDIR)/lock.Po - -rm -f glthread/$(DEPDIR)/threadlib.Po - -rm -f malloc/$(DEPDIR)/dynarray-skeleton.Po - -rm -f malloc/$(DEPDIR)/dynarray_at_failure.Po - -rm -f malloc/$(DEPDIR)/dynarray_emplace_enlarge.Po - -rm -f malloc/$(DEPDIR)/dynarray_finalize.Po - -rm -f malloc/$(DEPDIR)/dynarray_resize.Po - -rm -f malloc/$(DEPDIR)/dynarray_resize_clear.Po - -rm -f unistr/$(DEPDIR)/u8-mbtoucr.Po - -rm -f unistr/$(DEPDIR)/u8-uctomb-aux.Po - -rm -f unistr/$(DEPDIR)/u8-uctomb.Po - -rm -f uniwidth/$(DEPDIR)/width.Po - -rm -f Makefile -distclean-am: clean-am distclean-compile distclean-generic \ - distclean-hdr distclean-local distclean-tags +libdiffutils_a-btowc.obj: btowc.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-btowc.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-btowc.Tpo -c -o libdiffutils_a-btowc.obj `if test -f 'btowc.c'; then $(CYGPATH_W) 'btowc.c'; else $(CYGPATH_W) '$(srcdir)/btowc.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-btowc.Tpo $(DEPDIR)/libdiffutils_a-btowc.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='btowc.c' object='libdiffutils_a-btowc.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-btowc.obj `if test -f 'btowc.c'; then $(CYGPATH_W) 'btowc.c'; else $(CYGPATH_W) '$(srcdir)/btowc.c'; fi` -dvi: dvi-am +libdiffutils_a-c-ctype.o: c-ctype.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-c-ctype.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-c-ctype.Tpo -c -o libdiffutils_a-c-ctype.o `test -f 'c-ctype.c' || echo '$(srcdir)/'`c-ctype.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-c-ctype.Tpo $(DEPDIR)/libdiffutils_a-c-ctype.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='c-ctype.c' object='libdiffutils_a-c-ctype.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-c-ctype.o `test -f 'c-ctype.c' || echo '$(srcdir)/'`c-ctype.c -dvi-am: +libdiffutils_a-c-ctype.obj: c-ctype.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-c-ctype.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-c-ctype.Tpo -c -o libdiffutils_a-c-ctype.obj `if test -f 'c-ctype.c'; then $(CYGPATH_W) 'c-ctype.c'; else $(CYGPATH_W) '$(srcdir)/c-ctype.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-c-ctype.Tpo $(DEPDIR)/libdiffutils_a-c-ctype.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='c-ctype.c' object='libdiffutils_a-c-ctype.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-c-ctype.obj `if test -f 'c-ctype.c'; then $(CYGPATH_W) 'c-ctype.c'; else $(CYGPATH_W) '$(srcdir)/c-ctype.c'; fi` -html: html-am +libdiffutils_a-c-stack.o: c-stack.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-c-stack.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-c-stack.Tpo -c -o libdiffutils_a-c-stack.o `test -f 'c-stack.c' || echo '$(srcdir)/'`c-stack.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-c-stack.Tpo $(DEPDIR)/libdiffutils_a-c-stack.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='c-stack.c' object='libdiffutils_a-c-stack.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-c-stack.o `test -f 'c-stack.c' || echo '$(srcdir)/'`c-stack.c -html-am: +libdiffutils_a-c-stack.obj: c-stack.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-c-stack.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-c-stack.Tpo -c -o libdiffutils_a-c-stack.obj `if test -f 'c-stack.c'; then $(CYGPATH_W) 'c-stack.c'; else $(CYGPATH_W) '$(srcdir)/c-stack.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-c-stack.Tpo $(DEPDIR)/libdiffutils_a-c-stack.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='c-stack.c' object='libdiffutils_a-c-stack.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-c-stack.obj `if test -f 'c-stack.c'; then $(CYGPATH_W) 'c-stack.c'; else $(CYGPATH_W) '$(srcdir)/c-stack.c'; fi` -info: info-am +libdiffutils_a-c-strcasecmp.o: c-strcasecmp.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-c-strcasecmp.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-c-strcasecmp.Tpo -c -o libdiffutils_a-c-strcasecmp.o `test -f 'c-strcasecmp.c' || echo '$(srcdir)/'`c-strcasecmp.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-c-strcasecmp.Tpo $(DEPDIR)/libdiffutils_a-c-strcasecmp.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='c-strcasecmp.c' object='libdiffutils_a-c-strcasecmp.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-c-strcasecmp.o `test -f 'c-strcasecmp.c' || echo '$(srcdir)/'`c-strcasecmp.c -info-am: +libdiffutils_a-c-strcasecmp.obj: c-strcasecmp.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-c-strcasecmp.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-c-strcasecmp.Tpo -c -o libdiffutils_a-c-strcasecmp.obj `if test -f 'c-strcasecmp.c'; then $(CYGPATH_W) 'c-strcasecmp.c'; else $(CYGPATH_W) '$(srcdir)/c-strcasecmp.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-c-strcasecmp.Tpo $(DEPDIR)/libdiffutils_a-c-strcasecmp.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='c-strcasecmp.c' object='libdiffutils_a-c-strcasecmp.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-c-strcasecmp.obj `if test -f 'c-strcasecmp.c'; then $(CYGPATH_W) 'c-strcasecmp.c'; else $(CYGPATH_W) '$(srcdir)/c-strcasecmp.c'; fi` -install-data-am: +libdiffutils_a-c-strncasecmp.o: c-strncasecmp.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-c-strncasecmp.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-c-strncasecmp.Tpo -c -o libdiffutils_a-c-strncasecmp.o `test -f 'c-strncasecmp.c' || echo '$(srcdir)/'`c-strncasecmp.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-c-strncasecmp.Tpo $(DEPDIR)/libdiffutils_a-c-strncasecmp.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='c-strncasecmp.c' object='libdiffutils_a-c-strncasecmp.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-c-strncasecmp.o `test -f 'c-strncasecmp.c' || echo '$(srcdir)/'`c-strncasecmp.c -install-dvi: install-dvi-am +libdiffutils_a-c-strncasecmp.obj: c-strncasecmp.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-c-strncasecmp.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-c-strncasecmp.Tpo -c -o libdiffutils_a-c-strncasecmp.obj `if test -f 'c-strncasecmp.c'; then $(CYGPATH_W) 'c-strncasecmp.c'; else $(CYGPATH_W) '$(srcdir)/c-strncasecmp.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-c-strncasecmp.Tpo $(DEPDIR)/libdiffutils_a-c-strncasecmp.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='c-strncasecmp.c' object='libdiffutils_a-c-strncasecmp.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-c-strncasecmp.obj `if test -f 'c-strncasecmp.c'; then $(CYGPATH_W) 'c-strncasecmp.c'; else $(CYGPATH_W) '$(srcdir)/c-strncasecmp.c'; fi` -install-dvi-am: +libdiffutils_a-careadlinkat.o: careadlinkat.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-careadlinkat.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-careadlinkat.Tpo -c -o libdiffutils_a-careadlinkat.o `test -f 'careadlinkat.c' || echo '$(srcdir)/'`careadlinkat.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-careadlinkat.Tpo $(DEPDIR)/libdiffutils_a-careadlinkat.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='careadlinkat.c' object='libdiffutils_a-careadlinkat.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-careadlinkat.o `test -f 'careadlinkat.c' || echo '$(srcdir)/'`careadlinkat.c -install-exec-am: +libdiffutils_a-careadlinkat.obj: careadlinkat.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-careadlinkat.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-careadlinkat.Tpo -c -o libdiffutils_a-careadlinkat.obj `if test -f 'careadlinkat.c'; then $(CYGPATH_W) 'careadlinkat.c'; else $(CYGPATH_W) '$(srcdir)/careadlinkat.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-careadlinkat.Tpo $(DEPDIR)/libdiffutils_a-careadlinkat.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='careadlinkat.c' object='libdiffutils_a-careadlinkat.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-careadlinkat.obj `if test -f 'careadlinkat.c'; then $(CYGPATH_W) 'careadlinkat.c'; else $(CYGPATH_W) '$(srcdir)/careadlinkat.c'; fi` -install-html: install-html-am +libdiffutils_a-cloexec.o: cloexec.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-cloexec.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-cloexec.Tpo -c -o libdiffutils_a-cloexec.o `test -f 'cloexec.c' || echo '$(srcdir)/'`cloexec.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-cloexec.Tpo $(DEPDIR)/libdiffutils_a-cloexec.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='cloexec.c' object='libdiffutils_a-cloexec.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-cloexec.o `test -f 'cloexec.c' || echo '$(srcdir)/'`cloexec.c -install-html-am: +libdiffutils_a-cloexec.obj: cloexec.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-cloexec.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-cloexec.Tpo -c -o libdiffutils_a-cloexec.obj `if test -f 'cloexec.c'; then $(CYGPATH_W) 'cloexec.c'; else $(CYGPATH_W) '$(srcdir)/cloexec.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-cloexec.Tpo $(DEPDIR)/libdiffutils_a-cloexec.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='cloexec.c' object='libdiffutils_a-cloexec.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-cloexec.obj `if test -f 'cloexec.c'; then $(CYGPATH_W) 'cloexec.c'; else $(CYGPATH_W) '$(srcdir)/cloexec.c'; fi` -install-info: install-info-am +libdiffutils_a-close.o: close.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-close.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-close.Tpo -c -o libdiffutils_a-close.o `test -f 'close.c' || echo '$(srcdir)/'`close.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-close.Tpo $(DEPDIR)/libdiffutils_a-close.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='close.c' object='libdiffutils_a-close.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-close.o `test -f 'close.c' || echo '$(srcdir)/'`close.c -install-info-am: +libdiffutils_a-close.obj: close.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-close.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-close.Tpo -c -o libdiffutils_a-close.obj `if test -f 'close.c'; then $(CYGPATH_W) 'close.c'; else $(CYGPATH_W) '$(srcdir)/close.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-close.Tpo $(DEPDIR)/libdiffutils_a-close.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='close.c' object='libdiffutils_a-close.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-close.obj `if test -f 'close.c'; then $(CYGPATH_W) 'close.c'; else $(CYGPATH_W) '$(srcdir)/close.c'; fi` -install-man: +libdiffutils_a-dirname.o: dirname.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-dirname.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-dirname.Tpo -c -o libdiffutils_a-dirname.o `test -f 'dirname.c' || echo '$(srcdir)/'`dirname.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-dirname.Tpo $(DEPDIR)/libdiffutils_a-dirname.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dirname.c' object='libdiffutils_a-dirname.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-dirname.o `test -f 'dirname.c' || echo '$(srcdir)/'`dirname.c -install-pdf: install-pdf-am +libdiffutils_a-dirname.obj: dirname.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-dirname.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-dirname.Tpo -c -o libdiffutils_a-dirname.obj `if test -f 'dirname.c'; then $(CYGPATH_W) 'dirname.c'; else $(CYGPATH_W) '$(srcdir)/dirname.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-dirname.Tpo $(DEPDIR)/libdiffutils_a-dirname.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dirname.c' object='libdiffutils_a-dirname.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-dirname.obj `if test -f 'dirname.c'; then $(CYGPATH_W) 'dirname.c'; else $(CYGPATH_W) '$(srcdir)/dirname.c'; fi` -install-pdf-am: +libdiffutils_a-basename.o: basename.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-basename.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-basename.Tpo -c -o libdiffutils_a-basename.o `test -f 'basename.c' || echo '$(srcdir)/'`basename.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-basename.Tpo $(DEPDIR)/libdiffutils_a-basename.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='basename.c' object='libdiffutils_a-basename.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-basename.o `test -f 'basename.c' || echo '$(srcdir)/'`basename.c -install-ps: install-ps-am +libdiffutils_a-basename.obj: basename.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-basename.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-basename.Tpo -c -o libdiffutils_a-basename.obj `if test -f 'basename.c'; then $(CYGPATH_W) 'basename.c'; else $(CYGPATH_W) '$(srcdir)/basename.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-basename.Tpo $(DEPDIR)/libdiffutils_a-basename.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='basename.c' object='libdiffutils_a-basename.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-basename.obj `if test -f 'basename.c'; then $(CYGPATH_W) 'basename.c'; else $(CYGPATH_W) '$(srcdir)/basename.c'; fi` -install-ps-am: +libdiffutils_a-dirname-lgpl.o: dirname-lgpl.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-dirname-lgpl.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-dirname-lgpl.Tpo -c -o libdiffutils_a-dirname-lgpl.o `test -f 'dirname-lgpl.c' || echo '$(srcdir)/'`dirname-lgpl.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-dirname-lgpl.Tpo $(DEPDIR)/libdiffutils_a-dirname-lgpl.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dirname-lgpl.c' object='libdiffutils_a-dirname-lgpl.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-dirname-lgpl.o `test -f 'dirname-lgpl.c' || echo '$(srcdir)/'`dirname-lgpl.c -installcheck-am: +libdiffutils_a-dirname-lgpl.obj: dirname-lgpl.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-dirname-lgpl.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-dirname-lgpl.Tpo -c -o libdiffutils_a-dirname-lgpl.obj `if test -f 'dirname-lgpl.c'; then $(CYGPATH_W) 'dirname-lgpl.c'; else $(CYGPATH_W) '$(srcdir)/dirname-lgpl.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-dirname-lgpl.Tpo $(DEPDIR)/libdiffutils_a-dirname-lgpl.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dirname-lgpl.c' object='libdiffutils_a-dirname-lgpl.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-dirname-lgpl.obj `if test -f 'dirname-lgpl.c'; then $(CYGPATH_W) 'dirname-lgpl.c'; else $(CYGPATH_W) '$(srcdir)/dirname-lgpl.c'; fi` -maintainer-clean: maintainer-clean-am - -rm -f ./$(DEPDIR)/allocator.Po - -rm -f ./$(DEPDIR)/anytostr.Po - -rm -f ./$(DEPDIR)/areadlink.Po - -rm -f ./$(DEPDIR)/argmatch.Po - -rm -f ./$(DEPDIR)/asnprintf.Po - -rm -f ./$(DEPDIR)/asprintf.Po - -rm -f ./$(DEPDIR)/basename-lgpl.Po - -rm -f ./$(DEPDIR)/basename.Po - -rm -f ./$(DEPDIR)/binary-io.Po - -rm -f ./$(DEPDIR)/bitrotate.Po - -rm -f ./$(DEPDIR)/btowc.Po - -rm -f ./$(DEPDIR)/c-ctype.Po - -rm -f ./$(DEPDIR)/c-stack.Po - -rm -f ./$(DEPDIR)/c-strcasecmp.Po - -rm -f ./$(DEPDIR)/c-strncasecmp.Po - -rm -f ./$(DEPDIR)/calloc.Po - -rm -f ./$(DEPDIR)/careadlinkat.Po - -rm -f ./$(DEPDIR)/cloexec.Po - -rm -f ./$(DEPDIR)/close.Po - -rm -f ./$(DEPDIR)/cmpbuf.Po - -rm -f ./$(DEPDIR)/dirname-lgpl.Po - -rm -f ./$(DEPDIR)/dirname.Po - -rm -f ./$(DEPDIR)/dup2.Po - -rm -f ./$(DEPDIR)/error.Po - -rm -f ./$(DEPDIR)/exclude.Po - -rm -f ./$(DEPDIR)/exitfail.Po - -rm -f ./$(DEPDIR)/fcntl.Po - -rm -f ./$(DEPDIR)/fd-hook.Po - -rm -f ./$(DEPDIR)/file-type.Po - -rm -f ./$(DEPDIR)/filenamecat-lgpl.Po - -rm -f ./$(DEPDIR)/filenamecat.Po - -rm -f ./$(DEPDIR)/float.Po - -rm -f ./$(DEPDIR)/fnmatch.Po - -rm -f ./$(DEPDIR)/fnmatch_loop.Po - -rm -f ./$(DEPDIR)/fopen.Po - -rm -f ./$(DEPDIR)/free.Po - -rm -f ./$(DEPDIR)/freopen.Po - -rm -f ./$(DEPDIR)/fstat.Po - -rm -f ./$(DEPDIR)/getdtablesize.Po - -rm -f ./$(DEPDIR)/getopt.Po - -rm -f ./$(DEPDIR)/getopt1.Po - -rm -f ./$(DEPDIR)/getpagesize.Po - -rm -f ./$(DEPDIR)/getprogname.Po - -rm -f ./$(DEPDIR)/getrandom.Po - -rm -f ./$(DEPDIR)/gettime.Po - -rm -f ./$(DEPDIR)/gettimeofday.Po - -rm -f ./$(DEPDIR)/hard-locale.Po - -rm -f ./$(DEPDIR)/hash.Po - -rm -f ./$(DEPDIR)/ialloc.Po - -rm -f ./$(DEPDIR)/iconv.Po - -rm -f ./$(DEPDIR)/iconv_close.Po - -rm -f ./$(DEPDIR)/iconv_open.Po - -rm -f ./$(DEPDIR)/imaxtostr.Po - -rm -f ./$(DEPDIR)/inttostr.Po - -rm -f ./$(DEPDIR)/isblank.Po - -rm -f ./$(DEPDIR)/iswblank.Po - -rm -f ./$(DEPDIR)/iswdigit.Po - -rm -f ./$(DEPDIR)/iswxdigit.Po - -rm -f ./$(DEPDIR)/itold.Po - -rm -f ./$(DEPDIR)/lc-charset-dispatch.Po - -rm -f ./$(DEPDIR)/localcharset.Po - -rm -f ./$(DEPDIR)/localeconv.Po - -rm -f ./$(DEPDIR)/lstat.Po - -rm -f ./$(DEPDIR)/malloc.Po - -rm -f ./$(DEPDIR)/malloca.Po - -rm -f ./$(DEPDIR)/mbchar.Po - -rm -f ./$(DEPDIR)/mbiter.Po - -rm -f ./$(DEPDIR)/mbrtowc.Po - -rm -f ./$(DEPDIR)/mbscasecmp.Po - -rm -f ./$(DEPDIR)/mbsinit.Po - -rm -f ./$(DEPDIR)/mbslen.Po - -rm -f ./$(DEPDIR)/mbsrtowcs-state.Po - -rm -f ./$(DEPDIR)/mbsrtowcs.Po - -rm -f ./$(DEPDIR)/mbsstr.Po - -rm -f ./$(DEPDIR)/mbtowc-lock.Po - -rm -f ./$(DEPDIR)/mbtowc.Po - -rm -f ./$(DEPDIR)/mbuiter.Po - -rm -f ./$(DEPDIR)/memchr.Po - -rm -f ./$(DEPDIR)/mempcpy.Po - -rm -f ./$(DEPDIR)/mkdir.Po - -rm -f ./$(DEPDIR)/mkstemp.Po - -rm -f ./$(DEPDIR)/mktime.Po - -rm -f ./$(DEPDIR)/msvc-inval.Po - -rm -f ./$(DEPDIR)/msvc-nothrow.Po - -rm -f ./$(DEPDIR)/nl_langinfo-lock.Po - -rm -f ./$(DEPDIR)/nl_langinfo.Po - -rm -f ./$(DEPDIR)/nstrftime.Po - -rm -f ./$(DEPDIR)/offtostr.Po - -rm -f ./$(DEPDIR)/open.Po - -rm -f ./$(DEPDIR)/prepargs.Po - -rm -f ./$(DEPDIR)/printf-args.Po - -rm -f ./$(DEPDIR)/printf-parse.Po - -rm -f ./$(DEPDIR)/progname.Po - -rm -f ./$(DEPDIR)/propername.Po - -rm -f ./$(DEPDIR)/quotearg.Po - -rm -f ./$(DEPDIR)/raise.Po - -rm -f ./$(DEPDIR)/rawmemchr.Po - -rm -f ./$(DEPDIR)/readlink.Po - -rm -f ./$(DEPDIR)/realloc.Po - -rm -f ./$(DEPDIR)/reallocarray.Po - -rm -f ./$(DEPDIR)/regcomp.Po - -rm -f ./$(DEPDIR)/regex.Po - -rm -f ./$(DEPDIR)/regex_internal.Po - -rm -f ./$(DEPDIR)/regexec.Po - -rm -f ./$(DEPDIR)/setenv.Po - -rm -f ./$(DEPDIR)/setlocale-lock.Po - -rm -f ./$(DEPDIR)/setlocale_null.Po - -rm -f ./$(DEPDIR)/sh-quote.Po - -rm -f ./$(DEPDIR)/sigsegv.Po - -rm -f ./$(DEPDIR)/stackvma.Po - -rm -f ./$(DEPDIR)/stat-time.Po - -rm -f ./$(DEPDIR)/stat-w32.Po - -rm -f ./$(DEPDIR)/stat.Po - -rm -f ./$(DEPDIR)/stdopen.Po - -rm -f ./$(DEPDIR)/strcasecmp.Po - -rm -f ./$(DEPDIR)/strerror-override.Po - -rm -f ./$(DEPDIR)/strerror.Po - -rm -f ./$(DEPDIR)/striconv.Po - -rm -f ./$(DEPDIR)/stripslash.Po - -rm -f ./$(DEPDIR)/strncasecmp.Po - -rm -f ./$(DEPDIR)/strnlen.Po - -rm -f ./$(DEPDIR)/strnlen1.Po - -rm -f ./$(DEPDIR)/strptime.Po - -rm -f ./$(DEPDIR)/strtoimax.Po - -rm -f ./$(DEPDIR)/strtol.Po - -rm -f ./$(DEPDIR)/strtoll.Po - -rm -f ./$(DEPDIR)/system-quote.Po - -rm -f ./$(DEPDIR)/tempname.Po - -rm -f ./$(DEPDIR)/time_r.Po - -rm -f ./$(DEPDIR)/time_rz.Po - -rm -f ./$(DEPDIR)/timegm.Po - -rm -f ./$(DEPDIR)/timespec.Po - -rm -f ./$(DEPDIR)/trim.Po - -rm -f ./$(DEPDIR)/tzset.Po - -rm -f ./$(DEPDIR)/uinttostr.Po - -rm -f ./$(DEPDIR)/umaxtostr.Po - -rm -f ./$(DEPDIR)/unistd.Po - -rm -f ./$(DEPDIR)/unsetenv.Po - -rm -f ./$(DEPDIR)/vasnprintf.Po - -rm -f ./$(DEPDIR)/vasprintf.Po - -rm -f ./$(DEPDIR)/version-etc-fsf.Po - -rm -f ./$(DEPDIR)/version-etc.Po - -rm -f ./$(DEPDIR)/wcrtomb.Po - -rm -f ./$(DEPDIR)/wctype-h.Po - -rm -f ./$(DEPDIR)/wcwidth.Po - -rm -f ./$(DEPDIR)/windows-mutex.Po - -rm -f ./$(DEPDIR)/windows-once.Po - -rm -f ./$(DEPDIR)/windows-recmutex.Po - -rm -f ./$(DEPDIR)/windows-rwlock.Po - -rm -f ./$(DEPDIR)/wmemchr.Po - -rm -f ./$(DEPDIR)/wmempcpy.Po - -rm -f ./$(DEPDIR)/xalloc-die.Po - -rm -f ./$(DEPDIR)/xasprintf.Po - -rm -f ./$(DEPDIR)/xfreopen.Po - -rm -f ./$(DEPDIR)/xmalloc.Po - -rm -f ./$(DEPDIR)/xmalloca.Po - -rm -f ./$(DEPDIR)/xreadlink.Po - -rm -f ./$(DEPDIR)/xsize.Po - -rm -f ./$(DEPDIR)/xstdopen.Po - -rm -f ./$(DEPDIR)/xstriconv.Po - -rm -f ./$(DEPDIR)/xstrtoimax.Po - -rm -f ./$(DEPDIR)/xstrtol.Po - -rm -f ./$(DEPDIR)/xstrtoul.Po - -rm -f ./$(DEPDIR)/xvasprintf.Po - -rm -f glthread/$(DEPDIR)/lock.Po - -rm -f glthread/$(DEPDIR)/threadlib.Po - -rm -f malloc/$(DEPDIR)/dynarray-skeleton.Po - -rm -f malloc/$(DEPDIR)/dynarray_at_failure.Po - -rm -f malloc/$(DEPDIR)/dynarray_emplace_enlarge.Po - -rm -f malloc/$(DEPDIR)/dynarray_finalize.Po - -rm -f malloc/$(DEPDIR)/dynarray_resize.Po - -rm -f malloc/$(DEPDIR)/dynarray_resize_clear.Po - -rm -f unistr/$(DEPDIR)/u8-mbtoucr.Po - -rm -f unistr/$(DEPDIR)/u8-uctomb-aux.Po - -rm -f unistr/$(DEPDIR)/u8-uctomb.Po - -rm -f uniwidth/$(DEPDIR)/width.Po - -rm -f Makefile -maintainer-clean-am: distclean-am maintainer-clean-generic +libdiffutils_a-stripslash.o: stripslash.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-stripslash.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-stripslash.Tpo -c -o libdiffutils_a-stripslash.o `test -f 'stripslash.c' || echo '$(srcdir)/'`stripslash.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-stripslash.Tpo $(DEPDIR)/libdiffutils_a-stripslash.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='stripslash.c' object='libdiffutils_a-stripslash.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-stripslash.o `test -f 'stripslash.c' || echo '$(srcdir)/'`stripslash.c -mostlyclean: mostlyclean-am +libdiffutils_a-stripslash.obj: stripslash.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-stripslash.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-stripslash.Tpo -c -o libdiffutils_a-stripslash.obj `if test -f 'stripslash.c'; then $(CYGPATH_W) 'stripslash.c'; else $(CYGPATH_W) '$(srcdir)/stripslash.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-stripslash.Tpo $(DEPDIR)/libdiffutils_a-stripslash.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='stripslash.c' object='libdiffutils_a-stripslash.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-stripslash.obj `if test -f 'stripslash.c'; then $(CYGPATH_W) 'stripslash.c'; else $(CYGPATH_W) '$(srcdir)/stripslash.c'; fi` -mostlyclean-am: mostlyclean-compile mostlyclean-generic \ - mostlyclean-local +libdiffutils_a-dup2.o: dup2.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-dup2.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-dup2.Tpo -c -o libdiffutils_a-dup2.o `test -f 'dup2.c' || echo '$(srcdir)/'`dup2.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-dup2.Tpo $(DEPDIR)/libdiffutils_a-dup2.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dup2.c' object='libdiffutils_a-dup2.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-dup2.o `test -f 'dup2.c' || echo '$(srcdir)/'`dup2.c -pdf: pdf-am +libdiffutils_a-dup2.obj: dup2.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-dup2.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-dup2.Tpo -c -o libdiffutils_a-dup2.obj `if test -f 'dup2.c'; then $(CYGPATH_W) 'dup2.c'; else $(CYGPATH_W) '$(srcdir)/dup2.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-dup2.Tpo $(DEPDIR)/libdiffutils_a-dup2.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dup2.c' object='libdiffutils_a-dup2.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-dup2.obj `if test -f 'dup2.c'; then $(CYGPATH_W) 'dup2.c'; else $(CYGPATH_W) '$(srcdir)/dup2.c'; fi` -pdf-am: +libdiffutils_a-error.o: error.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-error.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-error.Tpo -c -o libdiffutils_a-error.o `test -f 'error.c' || echo '$(srcdir)/'`error.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-error.Tpo $(DEPDIR)/libdiffutils_a-error.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='error.c' object='libdiffutils_a-error.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-error.o `test -f 'error.c' || echo '$(srcdir)/'`error.c -ps: ps-am +libdiffutils_a-error.obj: error.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-error.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-error.Tpo -c -o libdiffutils_a-error.obj `if test -f 'error.c'; then $(CYGPATH_W) 'error.c'; else $(CYGPATH_W) '$(srcdir)/error.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-error.Tpo $(DEPDIR)/libdiffutils_a-error.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='error.c' object='libdiffutils_a-error.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-error.obj `if test -f 'error.c'; then $(CYGPATH_W) 'error.c'; else $(CYGPATH_W) '$(srcdir)/error.c'; fi` -ps-am: +libdiffutils_a-exclude.o: exclude.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-exclude.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-exclude.Tpo -c -o libdiffutils_a-exclude.o `test -f 'exclude.c' || echo '$(srcdir)/'`exclude.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-exclude.Tpo $(DEPDIR)/libdiffutils_a-exclude.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='exclude.c' object='libdiffutils_a-exclude.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-exclude.o `test -f 'exclude.c' || echo '$(srcdir)/'`exclude.c -uninstall-am: +libdiffutils_a-exclude.obj: exclude.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-exclude.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-exclude.Tpo -c -o libdiffutils_a-exclude.obj `if test -f 'exclude.c'; then $(CYGPATH_W) 'exclude.c'; else $(CYGPATH_W) '$(srcdir)/exclude.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-exclude.Tpo $(DEPDIR)/libdiffutils_a-exclude.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='exclude.c' object='libdiffutils_a-exclude.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-exclude.obj `if test -f 'exclude.c'; then $(CYGPATH_W) 'exclude.c'; else $(CYGPATH_W) '$(srcdir)/exclude.c'; fi` -.MAKE: all check install install-am install-exec install-strip +libdiffutils_a-exitfail.o: exitfail.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-exitfail.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-exitfail.Tpo -c -o libdiffutils_a-exitfail.o `test -f 'exitfail.c' || echo '$(srcdir)/'`exitfail.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-exitfail.Tpo $(DEPDIR)/libdiffutils_a-exitfail.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='exitfail.c' object='libdiffutils_a-exitfail.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-exitfail.o `test -f 'exitfail.c' || echo '$(srcdir)/'`exitfail.c -.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \ - clean-generic clean-noinstLIBRARIES cscopelist-am ctags \ - ctags-am distclean distclean-compile distclean-generic \ - distclean-hdr distclean-local distclean-tags distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dvi install-dvi-am \ - install-exec install-exec-am install-html install-html-am \ - install-info install-info-am install-man install-pdf \ - install-pdf-am install-ps install-ps-am install-strip \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-compile \ - mostlyclean-generic mostlyclean-local pdf pdf-am ps ps-am tags \ - tags-am uninstall uninstall-am +libdiffutils_a-exitfail.obj: exitfail.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-exitfail.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-exitfail.Tpo -c -o libdiffutils_a-exitfail.obj `if test -f 'exitfail.c'; then $(CYGPATH_W) 'exitfail.c'; else $(CYGPATH_W) '$(srcdir)/exitfail.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-exitfail.Tpo $(DEPDIR)/libdiffutils_a-exitfail.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='exitfail.c' object='libdiffutils_a-exitfail.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-exitfail.obj `if test -f 'exitfail.c'; then $(CYGPATH_W) 'exitfail.c'; else $(CYGPATH_W) '$(srcdir)/exitfail.c'; fi` -.PRECIOUS: Makefile +libdiffutils_a-fcntl.o: fcntl.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-fcntl.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-fcntl.Tpo -c -o libdiffutils_a-fcntl.o `test -f 'fcntl.c' || echo '$(srcdir)/'`fcntl.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-fcntl.Tpo $(DEPDIR)/libdiffutils_a-fcntl.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fcntl.c' object='libdiffutils_a-fcntl.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-fcntl.o `test -f 'fcntl.c' || echo '$(srcdir)/'`fcntl.c +libdiffutils_a-fcntl.obj: fcntl.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-fcntl.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-fcntl.Tpo -c -o libdiffutils_a-fcntl.obj `if test -f 'fcntl.c'; then $(CYGPATH_W) 'fcntl.c'; else $(CYGPATH_W) '$(srcdir)/fcntl.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-fcntl.Tpo $(DEPDIR)/libdiffutils_a-fcntl.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fcntl.c' object='libdiffutils_a-fcntl.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-fcntl.obj `if test -f 'fcntl.c'; then $(CYGPATH_W) 'fcntl.c'; else $(CYGPATH_W) '$(srcdir)/fcntl.c'; fi` -# We need the following in order to create when the system -# doesn't have one that works with the given compiler. -@GL_GENERATE_ALLOCA_H_TRUE@alloca.h: alloca.in.h $(top_builddir)/config.status -@GL_GENERATE_ALLOCA_H_TRUE@ $(AM_V_GEN)rm -f $@-t $@ && \ -@GL_GENERATE_ALLOCA_H_TRUE@ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ -@GL_GENERATE_ALLOCA_H_TRUE@ sed -e 's|@''HAVE_ALLOCA_H''@|$(HAVE_ALLOCA_H)|g' < $(srcdir)/alloca.in.h; \ -@GL_GENERATE_ALLOCA_H_TRUE@ } > $@-t && \ -@GL_GENERATE_ALLOCA_H_TRUE@ mv -f $@-t $@ -@GL_GENERATE_ALLOCA_H_FALSE@alloca.h: $(top_builddir)/config.status -@GL_GENERATE_ALLOCA_H_FALSE@ rm -f $@ +libdiffutils_a-fd-hook.o: fd-hook.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-fd-hook.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-fd-hook.Tpo -c -o libdiffutils_a-fd-hook.o `test -f 'fd-hook.c' || echo '$(srcdir)/'`fd-hook.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-fd-hook.Tpo $(DEPDIR)/libdiffutils_a-fd-hook.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fd-hook.c' object='libdiffutils_a-fd-hook.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-fd-hook.o `test -f 'fd-hook.c' || echo '$(srcdir)/'`fd-hook.c -# We need the following in order to create when the system -# doesn't have one that works with the given compiler. -ctype.h: ctype.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|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_CTYPE_H''@|$(NEXT_CTYPE_H)|g' \ - -e 's/@''GNULIB_ISBLANK''@/$(GL_GNULIB_ISBLANK)/g' \ - -e 's/@''HAVE_ISBLANK''@/$(HAVE_ISBLANK)/g' \ - -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ - -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ - < $(srcdir)/ctype.in.h; \ - } > $@-t && \ - mv $@-t $@ +libdiffutils_a-fd-hook.obj: fd-hook.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-fd-hook.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-fd-hook.Tpo -c -o libdiffutils_a-fd-hook.obj `if test -f 'fd-hook.c'; then $(CYGPATH_W) 'fd-hook.c'; else $(CYGPATH_W) '$(srcdir)/fd-hook.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-fd-hook.Tpo $(DEPDIR)/libdiffutils_a-fd-hook.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fd-hook.c' object='libdiffutils_a-fd-hook.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-fd-hook.obj `if test -f 'fd-hook.c'; then $(CYGPATH_W) 'fd-hook.c'; else $(CYGPATH_W) '$(srcdir)/fd-hook.c'; fi` -malloc/dynarray.gl.h: malloc/dynarray.h - $(AM_V_at)$(MKDIR_P) malloc - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e '/libc_hidden_proto/d' < $(srcdir)/malloc/dynarray.h; \ - } > $@-t && \ - mv $@-t $@ +libdiffutils_a-file-type.o: file-type.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-file-type.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-file-type.Tpo -c -o libdiffutils_a-file-type.o `test -f 'file-type.c' || echo '$(srcdir)/'`file-type.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-file-type.Tpo $(DEPDIR)/libdiffutils_a-file-type.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='file-type.c' object='libdiffutils_a-file-type.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-file-type.o `test -f 'file-type.c' || echo '$(srcdir)/'`file-type.c -malloc/dynarray-skeleton.gl.h: malloc/dynarray-skeleton.c - $(AM_V_at)$(MKDIR_P) malloc - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|||g' \ - -e 's|__attribute_maybe_unused__|_GL_ATTRIBUTE_MAYBE_UNUSED|g' \ - -e 's|__attribute_nonnull__|_GL_ATTRIBUTE_NONNULL|g' \ - -e 's|__attribute_warn_unused_result__|_GL_ATTRIBUTE_NODISCARD|g' \ - -e 's|__glibc_likely|_GL_LIKELY|g' \ - -e 's|__glibc_unlikely|_GL_UNLIKELY|g' \ - < $(srcdir)/malloc/dynarray-skeleton.c; \ - } > $@-t && \ - mv $@-t $@ +libdiffutils_a-file-type.obj: file-type.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-file-type.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-file-type.Tpo -c -o libdiffutils_a-file-type.obj `if test -f 'file-type.c'; then $(CYGPATH_W) 'file-type.c'; else $(CYGPATH_W) '$(srcdir)/file-type.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-file-type.Tpo $(DEPDIR)/libdiffutils_a-file-type.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='file-type.c' object='libdiffutils_a-file-type.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-file-type.obj `if test -f 'file-type.c'; then $(CYGPATH_W) 'file-type.c'; else $(CYGPATH_W) '$(srcdir)/file-type.c'; fi` -# We need the following in order to create when the system -# doesn't have one that is POSIX compliant. -@GL_GENERATE_ERRNO_H_TRUE@errno.h: errno.in.h $(top_builddir)/config.status -@GL_GENERATE_ERRNO_H_TRUE@ $(AM_V_GEN)rm -f $@-t $@ && \ -@GL_GENERATE_ERRNO_H_TRUE@ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ -@GL_GENERATE_ERRNO_H_TRUE@ sed -e 's|@''GUARD_PREFIX''@|GL|g' \ -@GL_GENERATE_ERRNO_H_TRUE@ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -@GL_GENERATE_ERRNO_H_TRUE@ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ -@GL_GENERATE_ERRNO_H_TRUE@ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -@GL_GENERATE_ERRNO_H_TRUE@ -e 's|@''NEXT_ERRNO_H''@|$(NEXT_ERRNO_H)|g' \ -@GL_GENERATE_ERRNO_H_TRUE@ -e 's|@''EMULTIHOP_HIDDEN''@|$(EMULTIHOP_HIDDEN)|g' \ -@GL_GENERATE_ERRNO_H_TRUE@ -e 's|@''EMULTIHOP_VALUE''@|$(EMULTIHOP_VALUE)|g' \ -@GL_GENERATE_ERRNO_H_TRUE@ -e 's|@''ENOLINK_HIDDEN''@|$(ENOLINK_HIDDEN)|g' \ -@GL_GENERATE_ERRNO_H_TRUE@ -e 's|@''ENOLINK_VALUE''@|$(ENOLINK_VALUE)|g' \ -@GL_GENERATE_ERRNO_H_TRUE@ -e 's|@''EOVERFLOW_HIDDEN''@|$(EOVERFLOW_HIDDEN)|g' \ -@GL_GENERATE_ERRNO_H_TRUE@ -e 's|@''EOVERFLOW_VALUE''@|$(EOVERFLOW_VALUE)|g' \ -@GL_GENERATE_ERRNO_H_TRUE@ < $(srcdir)/errno.in.h; \ -@GL_GENERATE_ERRNO_H_TRUE@ } > $@-t && \ -@GL_GENERATE_ERRNO_H_TRUE@ mv $@-t $@ -@GL_GENERATE_ERRNO_H_FALSE@errno.h: $(top_builddir)/config.status -@GL_GENERATE_ERRNO_H_FALSE@ rm -f $@ +libdiffutils_a-filenamecat.o: filenamecat.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-filenamecat.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-filenamecat.Tpo -c -o libdiffutils_a-filenamecat.o `test -f 'filenamecat.c' || echo '$(srcdir)/'`filenamecat.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-filenamecat.Tpo $(DEPDIR)/libdiffutils_a-filenamecat.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='filenamecat.c' object='libdiffutils_a-filenamecat.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-filenamecat.o `test -f 'filenamecat.c' || echo '$(srcdir)/'`filenamecat.c -# We need the following in order to create when the system -# doesn't have one that works with the given compiler. -fcntl.h: fcntl.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ - -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ - -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ +libdiffutils_a-filenamecat.obj: filenamecat.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-filenamecat.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-filenamecat.Tpo -c -o libdiffutils_a-filenamecat.obj `if test -f 'filenamecat.c'; then $(CYGPATH_W) 'filenamecat.c'; else $(CYGPATH_W) '$(srcdir)/filenamecat.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-filenamecat.Tpo $(DEPDIR)/libdiffutils_a-filenamecat.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='filenamecat.c' object='libdiffutils_a-filenamecat.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-filenamecat.obj `if test -f 'filenamecat.c'; then $(CYGPATH_W) 'filenamecat.c'; else $(CYGPATH_W) '$(srcdir)/filenamecat.c'; fi` + +libdiffutils_a-filenamecat-lgpl.o: filenamecat-lgpl.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-filenamecat-lgpl.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-filenamecat-lgpl.Tpo -c -o libdiffutils_a-filenamecat-lgpl.o `test -f 'filenamecat-lgpl.c' || echo '$(srcdir)/'`filenamecat-lgpl.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-filenamecat-lgpl.Tpo $(DEPDIR)/libdiffutils_a-filenamecat-lgpl.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='filenamecat-lgpl.c' object='libdiffutils_a-filenamecat-lgpl.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-filenamecat-lgpl.o `test -f 'filenamecat-lgpl.c' || echo '$(srcdir)/'`filenamecat-lgpl.c + +libdiffutils_a-filenamecat-lgpl.obj: filenamecat-lgpl.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-filenamecat-lgpl.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-filenamecat-lgpl.Tpo -c -o libdiffutils_a-filenamecat-lgpl.obj `if test -f 'filenamecat-lgpl.c'; then $(CYGPATH_W) 'filenamecat-lgpl.c'; else $(CYGPATH_W) '$(srcdir)/filenamecat-lgpl.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-filenamecat-lgpl.Tpo $(DEPDIR)/libdiffutils_a-filenamecat-lgpl.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='filenamecat-lgpl.c' object='libdiffutils_a-filenamecat-lgpl.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-filenamecat-lgpl.obj `if test -f 'filenamecat-lgpl.c'; then $(CYGPATH_W) 'filenamecat-lgpl.c'; else $(CYGPATH_W) '$(srcdir)/filenamecat-lgpl.c'; fi` + +libdiffutils_a-free.o: free.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-free.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-free.Tpo -c -o libdiffutils_a-free.o `test -f 'free.c' || echo '$(srcdir)/'`free.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-free.Tpo $(DEPDIR)/libdiffutils_a-free.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='free.c' object='libdiffutils_a-free.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-free.o `test -f 'free.c' || echo '$(srcdir)/'`free.c + +libdiffutils_a-free.obj: free.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-free.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-free.Tpo -c -o libdiffutils_a-free.obj `if test -f 'free.c'; then $(CYGPATH_W) 'free.c'; else $(CYGPATH_W) '$(srcdir)/free.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-free.Tpo $(DEPDIR)/libdiffutils_a-free.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='free.c' object='libdiffutils_a-free.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-free.obj `if test -f 'free.c'; then $(CYGPATH_W) 'free.c'; else $(CYGPATH_W) '$(srcdir)/free.c'; fi` + +libdiffutils_a-freopen.o: freopen.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-freopen.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-freopen.Tpo -c -o libdiffutils_a-freopen.o `test -f 'freopen.c' || echo '$(srcdir)/'`freopen.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-freopen.Tpo $(DEPDIR)/libdiffutils_a-freopen.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='freopen.c' object='libdiffutils_a-freopen.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-freopen.o `test -f 'freopen.c' || echo '$(srcdir)/'`freopen.c + +libdiffutils_a-freopen.obj: freopen.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-freopen.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-freopen.Tpo -c -o libdiffutils_a-freopen.obj `if test -f 'freopen.c'; then $(CYGPATH_W) 'freopen.c'; else $(CYGPATH_W) '$(srcdir)/freopen.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-freopen.Tpo $(DEPDIR)/libdiffutils_a-freopen.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='freopen.c' object='libdiffutils_a-freopen.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-freopen.obj `if test -f 'freopen.c'; then $(CYGPATH_W) 'freopen.c'; else $(CYGPATH_W) '$(srcdir)/freopen.c'; fi` + +libdiffutils_a-fstat.o: fstat.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-fstat.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-fstat.Tpo -c -o libdiffutils_a-fstat.o `test -f 'fstat.c' || echo '$(srcdir)/'`fstat.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-fstat.Tpo $(DEPDIR)/libdiffutils_a-fstat.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fstat.c' object='libdiffutils_a-fstat.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-fstat.o `test -f 'fstat.c' || echo '$(srcdir)/'`fstat.c + +libdiffutils_a-fstat.obj: fstat.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-fstat.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-fstat.Tpo -c -o libdiffutils_a-fstat.obj `if test -f 'fstat.c'; then $(CYGPATH_W) 'fstat.c'; else $(CYGPATH_W) '$(srcdir)/fstat.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-fstat.Tpo $(DEPDIR)/libdiffutils_a-fstat.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fstat.c' object='libdiffutils_a-fstat.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-fstat.obj `if test -f 'fstat.c'; then $(CYGPATH_W) 'fstat.c'; else $(CYGPATH_W) '$(srcdir)/fstat.c'; fi` + +libdiffutils_a-getdtablesize.o: getdtablesize.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-getdtablesize.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-getdtablesize.Tpo -c -o libdiffutils_a-getdtablesize.o `test -f 'getdtablesize.c' || echo '$(srcdir)/'`getdtablesize.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-getdtablesize.Tpo $(DEPDIR)/libdiffutils_a-getdtablesize.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='getdtablesize.c' object='libdiffutils_a-getdtablesize.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-getdtablesize.o `test -f 'getdtablesize.c' || echo '$(srcdir)/'`getdtablesize.c + +libdiffutils_a-getdtablesize.obj: getdtablesize.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-getdtablesize.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-getdtablesize.Tpo -c -o libdiffutils_a-getdtablesize.obj `if test -f 'getdtablesize.c'; then $(CYGPATH_W) 'getdtablesize.c'; else $(CYGPATH_W) '$(srcdir)/getdtablesize.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-getdtablesize.Tpo $(DEPDIR)/libdiffutils_a-getdtablesize.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='getdtablesize.c' object='libdiffutils_a-getdtablesize.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-getdtablesize.obj `if test -f 'getdtablesize.c'; then $(CYGPATH_W) 'getdtablesize.c'; else $(CYGPATH_W) '$(srcdir)/getdtablesize.c'; fi` + +libdiffutils_a-getopt.o: getopt.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-getopt.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-getopt.Tpo -c -o libdiffutils_a-getopt.o `test -f 'getopt.c' || echo '$(srcdir)/'`getopt.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-getopt.Tpo $(DEPDIR)/libdiffutils_a-getopt.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='getopt.c' object='libdiffutils_a-getopt.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-getopt.o `test -f 'getopt.c' || echo '$(srcdir)/'`getopt.c + +libdiffutils_a-getopt.obj: getopt.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-getopt.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-getopt.Tpo -c -o libdiffutils_a-getopt.obj `if test -f 'getopt.c'; then $(CYGPATH_W) 'getopt.c'; else $(CYGPATH_W) '$(srcdir)/getopt.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-getopt.Tpo $(DEPDIR)/libdiffutils_a-getopt.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='getopt.c' object='libdiffutils_a-getopt.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-getopt.obj `if test -f 'getopt.c'; then $(CYGPATH_W) 'getopt.c'; else $(CYGPATH_W) '$(srcdir)/getopt.c'; fi` + +libdiffutils_a-getopt1.o: getopt1.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-getopt1.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-getopt1.Tpo -c -o libdiffutils_a-getopt1.o `test -f 'getopt1.c' || echo '$(srcdir)/'`getopt1.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-getopt1.Tpo $(DEPDIR)/libdiffutils_a-getopt1.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='getopt1.c' object='libdiffutils_a-getopt1.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-getopt1.o `test -f 'getopt1.c' || echo '$(srcdir)/'`getopt1.c + +libdiffutils_a-getopt1.obj: getopt1.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-getopt1.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-getopt1.Tpo -c -o libdiffutils_a-getopt1.obj `if test -f 'getopt1.c'; then $(CYGPATH_W) 'getopt1.c'; else $(CYGPATH_W) '$(srcdir)/getopt1.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-getopt1.Tpo $(DEPDIR)/libdiffutils_a-getopt1.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='getopt1.c' object='libdiffutils_a-getopt1.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-getopt1.obj `if test -f 'getopt1.c'; then $(CYGPATH_W) 'getopt1.c'; else $(CYGPATH_W) '$(srcdir)/getopt1.c'; fi` + +libdiffutils_a-getpagesize.o: getpagesize.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-getpagesize.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-getpagesize.Tpo -c -o libdiffutils_a-getpagesize.o `test -f 'getpagesize.c' || echo '$(srcdir)/'`getpagesize.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-getpagesize.Tpo $(DEPDIR)/libdiffutils_a-getpagesize.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='getpagesize.c' object='libdiffutils_a-getpagesize.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-getpagesize.o `test -f 'getpagesize.c' || echo '$(srcdir)/'`getpagesize.c + +libdiffutils_a-getpagesize.obj: getpagesize.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-getpagesize.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-getpagesize.Tpo -c -o libdiffutils_a-getpagesize.obj `if test -f 'getpagesize.c'; then $(CYGPATH_W) 'getpagesize.c'; else $(CYGPATH_W) '$(srcdir)/getpagesize.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-getpagesize.Tpo $(DEPDIR)/libdiffutils_a-getpagesize.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='getpagesize.c' object='libdiffutils_a-getpagesize.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-getpagesize.obj `if test -f 'getpagesize.c'; then $(CYGPATH_W) 'getpagesize.c'; else $(CYGPATH_W) '$(srcdir)/getpagesize.c'; fi` + +libdiffutils_a-getprogname.o: getprogname.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-getprogname.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-getprogname.Tpo -c -o libdiffutils_a-getprogname.o `test -f 'getprogname.c' || echo '$(srcdir)/'`getprogname.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-getprogname.Tpo $(DEPDIR)/libdiffutils_a-getprogname.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='getprogname.c' object='libdiffutils_a-getprogname.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-getprogname.o `test -f 'getprogname.c' || echo '$(srcdir)/'`getprogname.c + +libdiffutils_a-getprogname.obj: getprogname.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-getprogname.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-getprogname.Tpo -c -o libdiffutils_a-getprogname.obj `if test -f 'getprogname.c'; then $(CYGPATH_W) 'getprogname.c'; else $(CYGPATH_W) '$(srcdir)/getprogname.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-getprogname.Tpo $(DEPDIR)/libdiffutils_a-getprogname.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='getprogname.c' object='libdiffutils_a-getprogname.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-getprogname.obj `if test -f 'getprogname.c'; then $(CYGPATH_W) 'getprogname.c'; else $(CYGPATH_W) '$(srcdir)/getprogname.c'; fi` + +libdiffutils_a-getrandom.o: getrandom.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-getrandom.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-getrandom.Tpo -c -o libdiffutils_a-getrandom.o `test -f 'getrandom.c' || echo '$(srcdir)/'`getrandom.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-getrandom.Tpo $(DEPDIR)/libdiffutils_a-getrandom.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='getrandom.c' object='libdiffutils_a-getrandom.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-getrandom.o `test -f 'getrandom.c' || echo '$(srcdir)/'`getrandom.c + +libdiffutils_a-getrandom.obj: getrandom.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-getrandom.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-getrandom.Tpo -c -o libdiffutils_a-getrandom.obj `if test -f 'getrandom.c'; then $(CYGPATH_W) 'getrandom.c'; else $(CYGPATH_W) '$(srcdir)/getrandom.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-getrandom.Tpo $(DEPDIR)/libdiffutils_a-getrandom.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='getrandom.c' object='libdiffutils_a-getrandom.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-getrandom.obj `if test -f 'getrandom.c'; then $(CYGPATH_W) 'getrandom.c'; else $(CYGPATH_W) '$(srcdir)/getrandom.c'; fi` + +libdiffutils_a-gettime.o: gettime.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-gettime.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-gettime.Tpo -c -o libdiffutils_a-gettime.o `test -f 'gettime.c' || echo '$(srcdir)/'`gettime.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-gettime.Tpo $(DEPDIR)/libdiffutils_a-gettime.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gettime.c' object='libdiffutils_a-gettime.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-gettime.o `test -f 'gettime.c' || echo '$(srcdir)/'`gettime.c + +libdiffutils_a-gettime.obj: gettime.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-gettime.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-gettime.Tpo -c -o libdiffutils_a-gettime.obj `if test -f 'gettime.c'; then $(CYGPATH_W) 'gettime.c'; else $(CYGPATH_W) '$(srcdir)/gettime.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-gettime.Tpo $(DEPDIR)/libdiffutils_a-gettime.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gettime.c' object='libdiffutils_a-gettime.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-gettime.obj `if test -f 'gettime.c'; then $(CYGPATH_W) 'gettime.c'; else $(CYGPATH_W) '$(srcdir)/gettime.c'; fi` + +libdiffutils_a-gettimeofday.o: gettimeofday.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-gettimeofday.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-gettimeofday.Tpo -c -o libdiffutils_a-gettimeofday.o `test -f 'gettimeofday.c' || echo '$(srcdir)/'`gettimeofday.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-gettimeofday.Tpo $(DEPDIR)/libdiffutils_a-gettimeofday.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gettimeofday.c' object='libdiffutils_a-gettimeofday.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-gettimeofday.o `test -f 'gettimeofday.c' || echo '$(srcdir)/'`gettimeofday.c + +libdiffutils_a-gettimeofday.obj: gettimeofday.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-gettimeofday.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-gettimeofday.Tpo -c -o libdiffutils_a-gettimeofday.obj `if test -f 'gettimeofday.c'; then $(CYGPATH_W) 'gettimeofday.c'; else $(CYGPATH_W) '$(srcdir)/gettimeofday.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-gettimeofday.Tpo $(DEPDIR)/libdiffutils_a-gettimeofday.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gettimeofday.c' object='libdiffutils_a-gettimeofday.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-gettimeofday.obj `if test -f 'gettimeofday.c'; then $(CYGPATH_W) 'gettimeofday.c'; else $(CYGPATH_W) '$(srcdir)/gettimeofday.c'; fi` + +malloc/libdiffutils_a-dynarray_at_failure.o: malloc/dynarray_at_failure.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT malloc/libdiffutils_a-dynarray_at_failure.o -MD -MP -MF malloc/$(DEPDIR)/libdiffutils_a-dynarray_at_failure.Tpo -c -o malloc/libdiffutils_a-dynarray_at_failure.o `test -f 'malloc/dynarray_at_failure.c' || echo '$(srcdir)/'`malloc/dynarray_at_failure.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) malloc/$(DEPDIR)/libdiffutils_a-dynarray_at_failure.Tpo malloc/$(DEPDIR)/libdiffutils_a-dynarray_at_failure.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='malloc/dynarray_at_failure.c' object='malloc/libdiffutils_a-dynarray_at_failure.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o malloc/libdiffutils_a-dynarray_at_failure.o `test -f 'malloc/dynarray_at_failure.c' || echo '$(srcdir)/'`malloc/dynarray_at_failure.c + +malloc/libdiffutils_a-dynarray_at_failure.obj: malloc/dynarray_at_failure.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT malloc/libdiffutils_a-dynarray_at_failure.obj -MD -MP -MF malloc/$(DEPDIR)/libdiffutils_a-dynarray_at_failure.Tpo -c -o malloc/libdiffutils_a-dynarray_at_failure.obj `if test -f 'malloc/dynarray_at_failure.c'; then $(CYGPATH_W) 'malloc/dynarray_at_failure.c'; else $(CYGPATH_W) '$(srcdir)/malloc/dynarray_at_failure.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) malloc/$(DEPDIR)/libdiffutils_a-dynarray_at_failure.Tpo malloc/$(DEPDIR)/libdiffutils_a-dynarray_at_failure.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='malloc/dynarray_at_failure.c' object='malloc/libdiffutils_a-dynarray_at_failure.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o malloc/libdiffutils_a-dynarray_at_failure.obj `if test -f 'malloc/dynarray_at_failure.c'; then $(CYGPATH_W) 'malloc/dynarray_at_failure.c'; else $(CYGPATH_W) '$(srcdir)/malloc/dynarray_at_failure.c'; fi` + +malloc/libdiffutils_a-dynarray_emplace_enlarge.o: malloc/dynarray_emplace_enlarge.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT malloc/libdiffutils_a-dynarray_emplace_enlarge.o -MD -MP -MF malloc/$(DEPDIR)/libdiffutils_a-dynarray_emplace_enlarge.Tpo -c -o malloc/libdiffutils_a-dynarray_emplace_enlarge.o `test -f 'malloc/dynarray_emplace_enlarge.c' || echo '$(srcdir)/'`malloc/dynarray_emplace_enlarge.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) malloc/$(DEPDIR)/libdiffutils_a-dynarray_emplace_enlarge.Tpo malloc/$(DEPDIR)/libdiffutils_a-dynarray_emplace_enlarge.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='malloc/dynarray_emplace_enlarge.c' object='malloc/libdiffutils_a-dynarray_emplace_enlarge.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o malloc/libdiffutils_a-dynarray_emplace_enlarge.o `test -f 'malloc/dynarray_emplace_enlarge.c' || echo '$(srcdir)/'`malloc/dynarray_emplace_enlarge.c + +malloc/libdiffutils_a-dynarray_emplace_enlarge.obj: malloc/dynarray_emplace_enlarge.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT malloc/libdiffutils_a-dynarray_emplace_enlarge.obj -MD -MP -MF malloc/$(DEPDIR)/libdiffutils_a-dynarray_emplace_enlarge.Tpo -c -o malloc/libdiffutils_a-dynarray_emplace_enlarge.obj `if test -f 'malloc/dynarray_emplace_enlarge.c'; then $(CYGPATH_W) 'malloc/dynarray_emplace_enlarge.c'; else $(CYGPATH_W) '$(srcdir)/malloc/dynarray_emplace_enlarge.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) malloc/$(DEPDIR)/libdiffutils_a-dynarray_emplace_enlarge.Tpo malloc/$(DEPDIR)/libdiffutils_a-dynarray_emplace_enlarge.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='malloc/dynarray_emplace_enlarge.c' object='malloc/libdiffutils_a-dynarray_emplace_enlarge.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o malloc/libdiffutils_a-dynarray_emplace_enlarge.obj `if test -f 'malloc/dynarray_emplace_enlarge.c'; then $(CYGPATH_W) 'malloc/dynarray_emplace_enlarge.c'; else $(CYGPATH_W) '$(srcdir)/malloc/dynarray_emplace_enlarge.c'; fi` + +malloc/libdiffutils_a-dynarray_finalize.o: malloc/dynarray_finalize.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT malloc/libdiffutils_a-dynarray_finalize.o -MD -MP -MF malloc/$(DEPDIR)/libdiffutils_a-dynarray_finalize.Tpo -c -o malloc/libdiffutils_a-dynarray_finalize.o `test -f 'malloc/dynarray_finalize.c' || echo '$(srcdir)/'`malloc/dynarray_finalize.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) malloc/$(DEPDIR)/libdiffutils_a-dynarray_finalize.Tpo malloc/$(DEPDIR)/libdiffutils_a-dynarray_finalize.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='malloc/dynarray_finalize.c' object='malloc/libdiffutils_a-dynarray_finalize.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o malloc/libdiffutils_a-dynarray_finalize.o `test -f 'malloc/dynarray_finalize.c' || echo '$(srcdir)/'`malloc/dynarray_finalize.c + +malloc/libdiffutils_a-dynarray_finalize.obj: malloc/dynarray_finalize.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT malloc/libdiffutils_a-dynarray_finalize.obj -MD -MP -MF malloc/$(DEPDIR)/libdiffutils_a-dynarray_finalize.Tpo -c -o malloc/libdiffutils_a-dynarray_finalize.obj `if test -f 'malloc/dynarray_finalize.c'; then $(CYGPATH_W) 'malloc/dynarray_finalize.c'; else $(CYGPATH_W) '$(srcdir)/malloc/dynarray_finalize.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) malloc/$(DEPDIR)/libdiffutils_a-dynarray_finalize.Tpo malloc/$(DEPDIR)/libdiffutils_a-dynarray_finalize.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='malloc/dynarray_finalize.c' object='malloc/libdiffutils_a-dynarray_finalize.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o malloc/libdiffutils_a-dynarray_finalize.obj `if test -f 'malloc/dynarray_finalize.c'; then $(CYGPATH_W) 'malloc/dynarray_finalize.c'; else $(CYGPATH_W) '$(srcdir)/malloc/dynarray_finalize.c'; fi` + +malloc/libdiffutils_a-dynarray_resize.o: malloc/dynarray_resize.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT malloc/libdiffutils_a-dynarray_resize.o -MD -MP -MF malloc/$(DEPDIR)/libdiffutils_a-dynarray_resize.Tpo -c -o malloc/libdiffutils_a-dynarray_resize.o `test -f 'malloc/dynarray_resize.c' || echo '$(srcdir)/'`malloc/dynarray_resize.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) malloc/$(DEPDIR)/libdiffutils_a-dynarray_resize.Tpo malloc/$(DEPDIR)/libdiffutils_a-dynarray_resize.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='malloc/dynarray_resize.c' object='malloc/libdiffutils_a-dynarray_resize.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o malloc/libdiffutils_a-dynarray_resize.o `test -f 'malloc/dynarray_resize.c' || echo '$(srcdir)/'`malloc/dynarray_resize.c + +malloc/libdiffutils_a-dynarray_resize.obj: malloc/dynarray_resize.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT malloc/libdiffutils_a-dynarray_resize.obj -MD -MP -MF malloc/$(DEPDIR)/libdiffutils_a-dynarray_resize.Tpo -c -o malloc/libdiffutils_a-dynarray_resize.obj `if test -f 'malloc/dynarray_resize.c'; then $(CYGPATH_W) 'malloc/dynarray_resize.c'; else $(CYGPATH_W) '$(srcdir)/malloc/dynarray_resize.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) malloc/$(DEPDIR)/libdiffutils_a-dynarray_resize.Tpo malloc/$(DEPDIR)/libdiffutils_a-dynarray_resize.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='malloc/dynarray_resize.c' object='malloc/libdiffutils_a-dynarray_resize.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o malloc/libdiffutils_a-dynarray_resize.obj `if test -f 'malloc/dynarray_resize.c'; then $(CYGPATH_W) 'malloc/dynarray_resize.c'; else $(CYGPATH_W) '$(srcdir)/malloc/dynarray_resize.c'; fi` + +malloc/libdiffutils_a-dynarray_resize_clear.o: malloc/dynarray_resize_clear.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT malloc/libdiffutils_a-dynarray_resize_clear.o -MD -MP -MF malloc/$(DEPDIR)/libdiffutils_a-dynarray_resize_clear.Tpo -c -o malloc/libdiffutils_a-dynarray_resize_clear.o `test -f 'malloc/dynarray_resize_clear.c' || echo '$(srcdir)/'`malloc/dynarray_resize_clear.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) malloc/$(DEPDIR)/libdiffutils_a-dynarray_resize_clear.Tpo malloc/$(DEPDIR)/libdiffutils_a-dynarray_resize_clear.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='malloc/dynarray_resize_clear.c' object='malloc/libdiffutils_a-dynarray_resize_clear.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o malloc/libdiffutils_a-dynarray_resize_clear.o `test -f 'malloc/dynarray_resize_clear.c' || echo '$(srcdir)/'`malloc/dynarray_resize_clear.c + +malloc/libdiffutils_a-dynarray_resize_clear.obj: malloc/dynarray_resize_clear.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT malloc/libdiffutils_a-dynarray_resize_clear.obj -MD -MP -MF malloc/$(DEPDIR)/libdiffutils_a-dynarray_resize_clear.Tpo -c -o malloc/libdiffutils_a-dynarray_resize_clear.obj `if test -f 'malloc/dynarray_resize_clear.c'; then $(CYGPATH_W) 'malloc/dynarray_resize_clear.c'; else $(CYGPATH_W) '$(srcdir)/malloc/dynarray_resize_clear.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) malloc/$(DEPDIR)/libdiffutils_a-dynarray_resize_clear.Tpo malloc/$(DEPDIR)/libdiffutils_a-dynarray_resize_clear.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='malloc/dynarray_resize_clear.c' object='malloc/libdiffutils_a-dynarray_resize_clear.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o malloc/libdiffutils_a-dynarray_resize_clear.obj `if test -f 'malloc/dynarray_resize_clear.c'; then $(CYGPATH_W) 'malloc/dynarray_resize_clear.c'; else $(CYGPATH_W) '$(srcdir)/malloc/dynarray_resize_clear.c'; fi` + +libdiffutils_a-hard-locale.o: hard-locale.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-hard-locale.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-hard-locale.Tpo -c -o libdiffutils_a-hard-locale.o `test -f 'hard-locale.c' || echo '$(srcdir)/'`hard-locale.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-hard-locale.Tpo $(DEPDIR)/libdiffutils_a-hard-locale.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='hard-locale.c' object='libdiffutils_a-hard-locale.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-hard-locale.o `test -f 'hard-locale.c' || echo '$(srcdir)/'`hard-locale.c + +libdiffutils_a-hard-locale.obj: hard-locale.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-hard-locale.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-hard-locale.Tpo -c -o libdiffutils_a-hard-locale.obj `if test -f 'hard-locale.c'; then $(CYGPATH_W) 'hard-locale.c'; else $(CYGPATH_W) '$(srcdir)/hard-locale.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-hard-locale.Tpo $(DEPDIR)/libdiffutils_a-hard-locale.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='hard-locale.c' object='libdiffutils_a-hard-locale.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-hard-locale.obj `if test -f 'hard-locale.c'; then $(CYGPATH_W) 'hard-locale.c'; else $(CYGPATH_W) '$(srcdir)/hard-locale.c'; fi` + +libdiffutils_a-hash.o: hash.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-hash.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-hash.Tpo -c -o libdiffutils_a-hash.o `test -f 'hash.c' || echo '$(srcdir)/'`hash.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-hash.Tpo $(DEPDIR)/libdiffutils_a-hash.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='hash.c' object='libdiffutils_a-hash.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-hash.o `test -f 'hash.c' || echo '$(srcdir)/'`hash.c + +libdiffutils_a-hash.obj: hash.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-hash.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-hash.Tpo -c -o libdiffutils_a-hash.obj `if test -f 'hash.c'; then $(CYGPATH_W) 'hash.c'; else $(CYGPATH_W) '$(srcdir)/hash.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-hash.Tpo $(DEPDIR)/libdiffutils_a-hash.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='hash.c' object='libdiffutils_a-hash.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-hash.obj `if test -f 'hash.c'; then $(CYGPATH_W) 'hash.c'; else $(CYGPATH_W) '$(srcdir)/hash.c'; fi` + +libdiffutils_a-ialloc.o: ialloc.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-ialloc.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-ialloc.Tpo -c -o libdiffutils_a-ialloc.o `test -f 'ialloc.c' || echo '$(srcdir)/'`ialloc.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-ialloc.Tpo $(DEPDIR)/libdiffutils_a-ialloc.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ialloc.c' object='libdiffutils_a-ialloc.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-ialloc.o `test -f 'ialloc.c' || echo '$(srcdir)/'`ialloc.c + +libdiffutils_a-ialloc.obj: ialloc.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-ialloc.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-ialloc.Tpo -c -o libdiffutils_a-ialloc.obj `if test -f 'ialloc.c'; then $(CYGPATH_W) 'ialloc.c'; else $(CYGPATH_W) '$(srcdir)/ialloc.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-ialloc.Tpo $(DEPDIR)/libdiffutils_a-ialloc.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ialloc.c' object='libdiffutils_a-ialloc.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-ialloc.obj `if test -f 'ialloc.c'; then $(CYGPATH_W) 'ialloc.c'; else $(CYGPATH_W) '$(srcdir)/ialloc.c'; fi` + +libdiffutils_a-iconv_open.o: iconv_open.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-iconv_open.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-iconv_open.Tpo -c -o libdiffutils_a-iconv_open.o `test -f 'iconv_open.c' || echo '$(srcdir)/'`iconv_open.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-iconv_open.Tpo $(DEPDIR)/libdiffutils_a-iconv_open.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='iconv_open.c' object='libdiffutils_a-iconv_open.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-iconv_open.o `test -f 'iconv_open.c' || echo '$(srcdir)/'`iconv_open.c + +libdiffutils_a-iconv_open.obj: iconv_open.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-iconv_open.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-iconv_open.Tpo -c -o libdiffutils_a-iconv_open.obj `if test -f 'iconv_open.c'; then $(CYGPATH_W) 'iconv_open.c'; else $(CYGPATH_W) '$(srcdir)/iconv_open.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-iconv_open.Tpo $(DEPDIR)/libdiffutils_a-iconv_open.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='iconv_open.c' object='libdiffutils_a-iconv_open.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-iconv_open.obj `if test -f 'iconv_open.c'; then $(CYGPATH_W) 'iconv_open.c'; else $(CYGPATH_W) '$(srcdir)/iconv_open.c'; fi` + +libdiffutils_a-iconv.o: iconv.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-iconv.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-iconv.Tpo -c -o libdiffutils_a-iconv.o `test -f 'iconv.c' || echo '$(srcdir)/'`iconv.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-iconv.Tpo $(DEPDIR)/libdiffutils_a-iconv.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='iconv.c' object='libdiffutils_a-iconv.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-iconv.o `test -f 'iconv.c' || echo '$(srcdir)/'`iconv.c + +libdiffutils_a-iconv.obj: iconv.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-iconv.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-iconv.Tpo -c -o libdiffutils_a-iconv.obj `if test -f 'iconv.c'; then $(CYGPATH_W) 'iconv.c'; else $(CYGPATH_W) '$(srcdir)/iconv.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-iconv.Tpo $(DEPDIR)/libdiffutils_a-iconv.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='iconv.c' object='libdiffutils_a-iconv.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-iconv.obj `if test -f 'iconv.c'; then $(CYGPATH_W) 'iconv.c'; else $(CYGPATH_W) '$(srcdir)/iconv.c'; fi` + +libdiffutils_a-iconv_close.o: iconv_close.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-iconv_close.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-iconv_close.Tpo -c -o libdiffutils_a-iconv_close.o `test -f 'iconv_close.c' || echo '$(srcdir)/'`iconv_close.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-iconv_close.Tpo $(DEPDIR)/libdiffutils_a-iconv_close.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='iconv_close.c' object='libdiffutils_a-iconv_close.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-iconv_close.o `test -f 'iconv_close.c' || echo '$(srcdir)/'`iconv_close.c + +libdiffutils_a-iconv_close.obj: iconv_close.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-iconv_close.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-iconv_close.Tpo -c -o libdiffutils_a-iconv_close.obj `if test -f 'iconv_close.c'; then $(CYGPATH_W) 'iconv_close.c'; else $(CYGPATH_W) '$(srcdir)/iconv_close.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-iconv_close.Tpo $(DEPDIR)/libdiffutils_a-iconv_close.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='iconv_close.c' object='libdiffutils_a-iconv_close.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-iconv_close.obj `if test -f 'iconv_close.c'; then $(CYGPATH_W) 'iconv_close.c'; else $(CYGPATH_W) '$(srcdir)/iconv_close.c'; fi` + +libdiffutils_a-imaxtostr.o: imaxtostr.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-imaxtostr.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-imaxtostr.Tpo -c -o libdiffutils_a-imaxtostr.o `test -f 'imaxtostr.c' || echo '$(srcdir)/'`imaxtostr.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-imaxtostr.Tpo $(DEPDIR)/libdiffutils_a-imaxtostr.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='imaxtostr.c' object='libdiffutils_a-imaxtostr.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-imaxtostr.o `test -f 'imaxtostr.c' || echo '$(srcdir)/'`imaxtostr.c + +libdiffutils_a-imaxtostr.obj: imaxtostr.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-imaxtostr.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-imaxtostr.Tpo -c -o libdiffutils_a-imaxtostr.obj `if test -f 'imaxtostr.c'; then $(CYGPATH_W) 'imaxtostr.c'; else $(CYGPATH_W) '$(srcdir)/imaxtostr.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-imaxtostr.Tpo $(DEPDIR)/libdiffutils_a-imaxtostr.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='imaxtostr.c' object='libdiffutils_a-imaxtostr.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-imaxtostr.obj `if test -f 'imaxtostr.c'; then $(CYGPATH_W) 'imaxtostr.c'; else $(CYGPATH_W) '$(srcdir)/imaxtostr.c'; fi` + +libdiffutils_a-inttostr.o: inttostr.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-inttostr.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-inttostr.Tpo -c -o libdiffutils_a-inttostr.o `test -f 'inttostr.c' || echo '$(srcdir)/'`inttostr.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-inttostr.Tpo $(DEPDIR)/libdiffutils_a-inttostr.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='inttostr.c' object='libdiffutils_a-inttostr.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-inttostr.o `test -f 'inttostr.c' || echo '$(srcdir)/'`inttostr.c + +libdiffutils_a-inttostr.obj: inttostr.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-inttostr.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-inttostr.Tpo -c -o libdiffutils_a-inttostr.obj `if test -f 'inttostr.c'; then $(CYGPATH_W) 'inttostr.c'; else $(CYGPATH_W) '$(srcdir)/inttostr.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-inttostr.Tpo $(DEPDIR)/libdiffutils_a-inttostr.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='inttostr.c' object='libdiffutils_a-inttostr.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-inttostr.obj `if test -f 'inttostr.c'; then $(CYGPATH_W) 'inttostr.c'; else $(CYGPATH_W) '$(srcdir)/inttostr.c'; fi` + +libdiffutils_a-offtostr.o: offtostr.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-offtostr.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-offtostr.Tpo -c -o libdiffutils_a-offtostr.o `test -f 'offtostr.c' || echo '$(srcdir)/'`offtostr.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-offtostr.Tpo $(DEPDIR)/libdiffutils_a-offtostr.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='offtostr.c' object='libdiffutils_a-offtostr.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-offtostr.o `test -f 'offtostr.c' || echo '$(srcdir)/'`offtostr.c + +libdiffutils_a-offtostr.obj: offtostr.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-offtostr.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-offtostr.Tpo -c -o libdiffutils_a-offtostr.obj `if test -f 'offtostr.c'; then $(CYGPATH_W) 'offtostr.c'; else $(CYGPATH_W) '$(srcdir)/offtostr.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-offtostr.Tpo $(DEPDIR)/libdiffutils_a-offtostr.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='offtostr.c' object='libdiffutils_a-offtostr.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-offtostr.obj `if test -f 'offtostr.c'; then $(CYGPATH_W) 'offtostr.c'; else $(CYGPATH_W) '$(srcdir)/offtostr.c'; fi` + +libdiffutils_a-uinttostr.o: uinttostr.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-uinttostr.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-uinttostr.Tpo -c -o libdiffutils_a-uinttostr.o `test -f 'uinttostr.c' || echo '$(srcdir)/'`uinttostr.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-uinttostr.Tpo $(DEPDIR)/libdiffutils_a-uinttostr.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='uinttostr.c' object='libdiffutils_a-uinttostr.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-uinttostr.o `test -f 'uinttostr.c' || echo '$(srcdir)/'`uinttostr.c + +libdiffutils_a-uinttostr.obj: uinttostr.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-uinttostr.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-uinttostr.Tpo -c -o libdiffutils_a-uinttostr.obj `if test -f 'uinttostr.c'; then $(CYGPATH_W) 'uinttostr.c'; else $(CYGPATH_W) '$(srcdir)/uinttostr.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-uinttostr.Tpo $(DEPDIR)/libdiffutils_a-uinttostr.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='uinttostr.c' object='libdiffutils_a-uinttostr.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-uinttostr.obj `if test -f 'uinttostr.c'; then $(CYGPATH_W) 'uinttostr.c'; else $(CYGPATH_W) '$(srcdir)/uinttostr.c'; fi` + +libdiffutils_a-umaxtostr.o: umaxtostr.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-umaxtostr.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-umaxtostr.Tpo -c -o libdiffutils_a-umaxtostr.o `test -f 'umaxtostr.c' || echo '$(srcdir)/'`umaxtostr.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-umaxtostr.Tpo $(DEPDIR)/libdiffutils_a-umaxtostr.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='umaxtostr.c' object='libdiffutils_a-umaxtostr.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-umaxtostr.o `test -f 'umaxtostr.c' || echo '$(srcdir)/'`umaxtostr.c + +libdiffutils_a-umaxtostr.obj: umaxtostr.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-umaxtostr.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-umaxtostr.Tpo -c -o libdiffutils_a-umaxtostr.obj `if test -f 'umaxtostr.c'; then $(CYGPATH_W) 'umaxtostr.c'; else $(CYGPATH_W) '$(srcdir)/umaxtostr.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-umaxtostr.Tpo $(DEPDIR)/libdiffutils_a-umaxtostr.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='umaxtostr.c' object='libdiffutils_a-umaxtostr.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-umaxtostr.obj `if test -f 'umaxtostr.c'; then $(CYGPATH_W) 'umaxtostr.c'; else $(CYGPATH_W) '$(srcdir)/umaxtostr.c'; fi` + +libdiffutils_a-isblank.o: isblank.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-isblank.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-isblank.Tpo -c -o libdiffutils_a-isblank.o `test -f 'isblank.c' || echo '$(srcdir)/'`isblank.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-isblank.Tpo $(DEPDIR)/libdiffutils_a-isblank.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='isblank.c' object='libdiffutils_a-isblank.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-isblank.o `test -f 'isblank.c' || echo '$(srcdir)/'`isblank.c + +libdiffutils_a-isblank.obj: isblank.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-isblank.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-isblank.Tpo -c -o libdiffutils_a-isblank.obj `if test -f 'isblank.c'; then $(CYGPATH_W) 'isblank.c'; else $(CYGPATH_W) '$(srcdir)/isblank.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-isblank.Tpo $(DEPDIR)/libdiffutils_a-isblank.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='isblank.c' object='libdiffutils_a-isblank.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-isblank.obj `if test -f 'isblank.c'; then $(CYGPATH_W) 'isblank.c'; else $(CYGPATH_W) '$(srcdir)/isblank.c'; fi` + +libdiffutils_a-iswblank.o: iswblank.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-iswblank.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-iswblank.Tpo -c -o libdiffutils_a-iswblank.o `test -f 'iswblank.c' || echo '$(srcdir)/'`iswblank.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-iswblank.Tpo $(DEPDIR)/libdiffutils_a-iswblank.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='iswblank.c' object='libdiffutils_a-iswblank.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-iswblank.o `test -f 'iswblank.c' || echo '$(srcdir)/'`iswblank.c + +libdiffutils_a-iswblank.obj: iswblank.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-iswblank.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-iswblank.Tpo -c -o libdiffutils_a-iswblank.obj `if test -f 'iswblank.c'; then $(CYGPATH_W) 'iswblank.c'; else $(CYGPATH_W) '$(srcdir)/iswblank.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-iswblank.Tpo $(DEPDIR)/libdiffutils_a-iswblank.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='iswblank.c' object='libdiffutils_a-iswblank.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-iswblank.obj `if test -f 'iswblank.c'; then $(CYGPATH_W) 'iswblank.c'; else $(CYGPATH_W) '$(srcdir)/iswblank.c'; fi` + +libdiffutils_a-iswdigit.o: iswdigit.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-iswdigit.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-iswdigit.Tpo -c -o libdiffutils_a-iswdigit.o `test -f 'iswdigit.c' || echo '$(srcdir)/'`iswdigit.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-iswdigit.Tpo $(DEPDIR)/libdiffutils_a-iswdigit.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='iswdigit.c' object='libdiffutils_a-iswdigit.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-iswdigit.o `test -f 'iswdigit.c' || echo '$(srcdir)/'`iswdigit.c + +libdiffutils_a-iswdigit.obj: iswdigit.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-iswdigit.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-iswdigit.Tpo -c -o libdiffutils_a-iswdigit.obj `if test -f 'iswdigit.c'; then $(CYGPATH_W) 'iswdigit.c'; else $(CYGPATH_W) '$(srcdir)/iswdigit.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-iswdigit.Tpo $(DEPDIR)/libdiffutils_a-iswdigit.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='iswdigit.c' object='libdiffutils_a-iswdigit.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-iswdigit.obj `if test -f 'iswdigit.c'; then $(CYGPATH_W) 'iswdigit.c'; else $(CYGPATH_W) '$(srcdir)/iswdigit.c'; fi` + +libdiffutils_a-iswxdigit.o: iswxdigit.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-iswxdigit.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-iswxdigit.Tpo -c -o libdiffutils_a-iswxdigit.o `test -f 'iswxdigit.c' || echo '$(srcdir)/'`iswxdigit.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-iswxdigit.Tpo $(DEPDIR)/libdiffutils_a-iswxdigit.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='iswxdigit.c' object='libdiffutils_a-iswxdigit.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-iswxdigit.o `test -f 'iswxdigit.c' || echo '$(srcdir)/'`iswxdigit.c + +libdiffutils_a-iswxdigit.obj: iswxdigit.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-iswxdigit.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-iswxdigit.Tpo -c -o libdiffutils_a-iswxdigit.obj `if test -f 'iswxdigit.c'; then $(CYGPATH_W) 'iswxdigit.c'; else $(CYGPATH_W) '$(srcdir)/iswxdigit.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-iswxdigit.Tpo $(DEPDIR)/libdiffutils_a-iswxdigit.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='iswxdigit.c' object='libdiffutils_a-iswxdigit.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-iswxdigit.obj `if test -f 'iswxdigit.c'; then $(CYGPATH_W) 'iswxdigit.c'; else $(CYGPATH_W) '$(srcdir)/iswxdigit.c'; fi` + +libdiffutils_a-localcharset.o: localcharset.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-localcharset.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-localcharset.Tpo -c -o libdiffutils_a-localcharset.o `test -f 'localcharset.c' || echo '$(srcdir)/'`localcharset.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-localcharset.Tpo $(DEPDIR)/libdiffutils_a-localcharset.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='localcharset.c' object='libdiffutils_a-localcharset.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-localcharset.o `test -f 'localcharset.c' || echo '$(srcdir)/'`localcharset.c + +libdiffutils_a-localcharset.obj: localcharset.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-localcharset.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-localcharset.Tpo -c -o libdiffutils_a-localcharset.obj `if test -f 'localcharset.c'; then $(CYGPATH_W) 'localcharset.c'; else $(CYGPATH_W) '$(srcdir)/localcharset.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-localcharset.Tpo $(DEPDIR)/libdiffutils_a-localcharset.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='localcharset.c' object='libdiffutils_a-localcharset.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-localcharset.obj `if test -f 'localcharset.c'; then $(CYGPATH_W) 'localcharset.c'; else $(CYGPATH_W) '$(srcdir)/localcharset.c'; fi` + +libdiffutils_a-localeconv.o: localeconv.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-localeconv.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-localeconv.Tpo -c -o libdiffutils_a-localeconv.o `test -f 'localeconv.c' || echo '$(srcdir)/'`localeconv.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-localeconv.Tpo $(DEPDIR)/libdiffutils_a-localeconv.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='localeconv.c' object='libdiffutils_a-localeconv.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-localeconv.o `test -f 'localeconv.c' || echo '$(srcdir)/'`localeconv.c + +libdiffutils_a-localeconv.obj: localeconv.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-localeconv.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-localeconv.Tpo -c -o libdiffutils_a-localeconv.obj `if test -f 'localeconv.c'; then $(CYGPATH_W) 'localeconv.c'; else $(CYGPATH_W) '$(srcdir)/localeconv.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-localeconv.Tpo $(DEPDIR)/libdiffutils_a-localeconv.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='localeconv.c' object='libdiffutils_a-localeconv.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-localeconv.obj `if test -f 'localeconv.c'; then $(CYGPATH_W) 'localeconv.c'; else $(CYGPATH_W) '$(srcdir)/localeconv.c'; fi` + +glthread/libdiffutils_a-lock.o: glthread/lock.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT glthread/libdiffutils_a-lock.o -MD -MP -MF glthread/$(DEPDIR)/libdiffutils_a-lock.Tpo -c -o glthread/libdiffutils_a-lock.o `test -f 'glthread/lock.c' || echo '$(srcdir)/'`glthread/lock.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) glthread/$(DEPDIR)/libdiffutils_a-lock.Tpo glthread/$(DEPDIR)/libdiffutils_a-lock.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='glthread/lock.c' object='glthread/libdiffutils_a-lock.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o glthread/libdiffutils_a-lock.o `test -f 'glthread/lock.c' || echo '$(srcdir)/'`glthread/lock.c + +glthread/libdiffutils_a-lock.obj: glthread/lock.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT glthread/libdiffutils_a-lock.obj -MD -MP -MF glthread/$(DEPDIR)/libdiffutils_a-lock.Tpo -c -o glthread/libdiffutils_a-lock.obj `if test -f 'glthread/lock.c'; then $(CYGPATH_W) 'glthread/lock.c'; else $(CYGPATH_W) '$(srcdir)/glthread/lock.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) glthread/$(DEPDIR)/libdiffutils_a-lock.Tpo glthread/$(DEPDIR)/libdiffutils_a-lock.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='glthread/lock.c' object='glthread/libdiffutils_a-lock.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o glthread/libdiffutils_a-lock.obj `if test -f 'glthread/lock.c'; then $(CYGPATH_W) 'glthread/lock.c'; else $(CYGPATH_W) '$(srcdir)/glthread/lock.c'; fi` + +libdiffutils_a-lstat.o: lstat.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-lstat.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-lstat.Tpo -c -o libdiffutils_a-lstat.o `test -f 'lstat.c' || echo '$(srcdir)/'`lstat.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-lstat.Tpo $(DEPDIR)/libdiffutils_a-lstat.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lstat.c' object='libdiffutils_a-lstat.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-lstat.o `test -f 'lstat.c' || echo '$(srcdir)/'`lstat.c + +libdiffutils_a-lstat.obj: lstat.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-lstat.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-lstat.Tpo -c -o libdiffutils_a-lstat.obj `if test -f 'lstat.c'; then $(CYGPATH_W) 'lstat.c'; else $(CYGPATH_W) '$(srcdir)/lstat.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-lstat.Tpo $(DEPDIR)/libdiffutils_a-lstat.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lstat.c' object='libdiffutils_a-lstat.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-lstat.obj `if test -f 'lstat.c'; then $(CYGPATH_W) 'lstat.c'; else $(CYGPATH_W) '$(srcdir)/lstat.c'; fi` + +libdiffutils_a-malloca.o: malloca.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-malloca.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-malloca.Tpo -c -o libdiffutils_a-malloca.o `test -f 'malloca.c' || echo '$(srcdir)/'`malloca.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-malloca.Tpo $(DEPDIR)/libdiffutils_a-malloca.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='malloca.c' object='libdiffutils_a-malloca.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-malloca.o `test -f 'malloca.c' || echo '$(srcdir)/'`malloca.c + +libdiffutils_a-malloca.obj: malloca.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-malloca.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-malloca.Tpo -c -o libdiffutils_a-malloca.obj `if test -f 'malloca.c'; then $(CYGPATH_W) 'malloca.c'; else $(CYGPATH_W) '$(srcdir)/malloca.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-malloca.Tpo $(DEPDIR)/libdiffutils_a-malloca.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='malloca.c' object='libdiffutils_a-malloca.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-malloca.obj `if test -f 'malloca.c'; then $(CYGPATH_W) 'malloca.c'; else $(CYGPATH_W) '$(srcdir)/malloca.c'; fi` + +libdiffutils_a-mbchar.o: mbchar.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-mbchar.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-mbchar.Tpo -c -o libdiffutils_a-mbchar.o `test -f 'mbchar.c' || echo '$(srcdir)/'`mbchar.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-mbchar.Tpo $(DEPDIR)/libdiffutils_a-mbchar.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mbchar.c' object='libdiffutils_a-mbchar.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-mbchar.o `test -f 'mbchar.c' || echo '$(srcdir)/'`mbchar.c + +libdiffutils_a-mbchar.obj: mbchar.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-mbchar.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-mbchar.Tpo -c -o libdiffutils_a-mbchar.obj `if test -f 'mbchar.c'; then $(CYGPATH_W) 'mbchar.c'; else $(CYGPATH_W) '$(srcdir)/mbchar.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-mbchar.Tpo $(DEPDIR)/libdiffutils_a-mbchar.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mbchar.c' object='libdiffutils_a-mbchar.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-mbchar.obj `if test -f 'mbchar.c'; then $(CYGPATH_W) 'mbchar.c'; else $(CYGPATH_W) '$(srcdir)/mbchar.c'; fi` + +libdiffutils_a-mbiter.o: mbiter.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-mbiter.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-mbiter.Tpo -c -o libdiffutils_a-mbiter.o `test -f 'mbiter.c' || echo '$(srcdir)/'`mbiter.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-mbiter.Tpo $(DEPDIR)/libdiffutils_a-mbiter.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mbiter.c' object='libdiffutils_a-mbiter.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-mbiter.o `test -f 'mbiter.c' || echo '$(srcdir)/'`mbiter.c + +libdiffutils_a-mbiter.obj: mbiter.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-mbiter.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-mbiter.Tpo -c -o libdiffutils_a-mbiter.obj `if test -f 'mbiter.c'; then $(CYGPATH_W) 'mbiter.c'; else $(CYGPATH_W) '$(srcdir)/mbiter.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-mbiter.Tpo $(DEPDIR)/libdiffutils_a-mbiter.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mbiter.c' object='libdiffutils_a-mbiter.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-mbiter.obj `if test -f 'mbiter.c'; then $(CYGPATH_W) 'mbiter.c'; else $(CYGPATH_W) '$(srcdir)/mbiter.c'; fi` + +libdiffutils_a-mbrtowc.o: mbrtowc.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-mbrtowc.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-mbrtowc.Tpo -c -o libdiffutils_a-mbrtowc.o `test -f 'mbrtowc.c' || echo '$(srcdir)/'`mbrtowc.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-mbrtowc.Tpo $(DEPDIR)/libdiffutils_a-mbrtowc.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mbrtowc.c' object='libdiffutils_a-mbrtowc.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-mbrtowc.o `test -f 'mbrtowc.c' || echo '$(srcdir)/'`mbrtowc.c + +libdiffutils_a-mbrtowc.obj: mbrtowc.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-mbrtowc.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-mbrtowc.Tpo -c -o libdiffutils_a-mbrtowc.obj `if test -f 'mbrtowc.c'; then $(CYGPATH_W) 'mbrtowc.c'; else $(CYGPATH_W) '$(srcdir)/mbrtowc.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-mbrtowc.Tpo $(DEPDIR)/libdiffutils_a-mbrtowc.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mbrtowc.c' object='libdiffutils_a-mbrtowc.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-mbrtowc.obj `if test -f 'mbrtowc.c'; then $(CYGPATH_W) 'mbrtowc.c'; else $(CYGPATH_W) '$(srcdir)/mbrtowc.c'; fi` + +libdiffutils_a-mbscasecmp.o: mbscasecmp.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-mbscasecmp.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-mbscasecmp.Tpo -c -o libdiffutils_a-mbscasecmp.o `test -f 'mbscasecmp.c' || echo '$(srcdir)/'`mbscasecmp.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-mbscasecmp.Tpo $(DEPDIR)/libdiffutils_a-mbscasecmp.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mbscasecmp.c' object='libdiffutils_a-mbscasecmp.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-mbscasecmp.o `test -f 'mbscasecmp.c' || echo '$(srcdir)/'`mbscasecmp.c + +libdiffutils_a-mbscasecmp.obj: mbscasecmp.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-mbscasecmp.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-mbscasecmp.Tpo -c -o libdiffutils_a-mbscasecmp.obj `if test -f 'mbscasecmp.c'; then $(CYGPATH_W) 'mbscasecmp.c'; else $(CYGPATH_W) '$(srcdir)/mbscasecmp.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-mbscasecmp.Tpo $(DEPDIR)/libdiffutils_a-mbscasecmp.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mbscasecmp.c' object='libdiffutils_a-mbscasecmp.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-mbscasecmp.obj `if test -f 'mbscasecmp.c'; then $(CYGPATH_W) 'mbscasecmp.c'; else $(CYGPATH_W) '$(srcdir)/mbscasecmp.c'; fi` + +libdiffutils_a-mbsinit.o: mbsinit.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-mbsinit.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-mbsinit.Tpo -c -o libdiffutils_a-mbsinit.o `test -f 'mbsinit.c' || echo '$(srcdir)/'`mbsinit.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-mbsinit.Tpo $(DEPDIR)/libdiffutils_a-mbsinit.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mbsinit.c' object='libdiffutils_a-mbsinit.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-mbsinit.o `test -f 'mbsinit.c' || echo '$(srcdir)/'`mbsinit.c + +libdiffutils_a-mbsinit.obj: mbsinit.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-mbsinit.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-mbsinit.Tpo -c -o libdiffutils_a-mbsinit.obj `if test -f 'mbsinit.c'; then $(CYGPATH_W) 'mbsinit.c'; else $(CYGPATH_W) '$(srcdir)/mbsinit.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-mbsinit.Tpo $(DEPDIR)/libdiffutils_a-mbsinit.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mbsinit.c' object='libdiffutils_a-mbsinit.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-mbsinit.obj `if test -f 'mbsinit.c'; then $(CYGPATH_W) 'mbsinit.c'; else $(CYGPATH_W) '$(srcdir)/mbsinit.c'; fi` + +libdiffutils_a-mbslen.o: mbslen.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-mbslen.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-mbslen.Tpo -c -o libdiffutils_a-mbslen.o `test -f 'mbslen.c' || echo '$(srcdir)/'`mbslen.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-mbslen.Tpo $(DEPDIR)/libdiffutils_a-mbslen.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mbslen.c' object='libdiffutils_a-mbslen.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-mbslen.o `test -f 'mbslen.c' || echo '$(srcdir)/'`mbslen.c + +libdiffutils_a-mbslen.obj: mbslen.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-mbslen.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-mbslen.Tpo -c -o libdiffutils_a-mbslen.obj `if test -f 'mbslen.c'; then $(CYGPATH_W) 'mbslen.c'; else $(CYGPATH_W) '$(srcdir)/mbslen.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-mbslen.Tpo $(DEPDIR)/libdiffutils_a-mbslen.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mbslen.c' object='libdiffutils_a-mbslen.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-mbslen.obj `if test -f 'mbslen.c'; then $(CYGPATH_W) 'mbslen.c'; else $(CYGPATH_W) '$(srcdir)/mbslen.c'; fi` + +libdiffutils_a-mbsrtowcs.o: mbsrtowcs.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-mbsrtowcs.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-mbsrtowcs.Tpo -c -o libdiffutils_a-mbsrtowcs.o `test -f 'mbsrtowcs.c' || echo '$(srcdir)/'`mbsrtowcs.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-mbsrtowcs.Tpo $(DEPDIR)/libdiffutils_a-mbsrtowcs.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mbsrtowcs.c' object='libdiffutils_a-mbsrtowcs.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-mbsrtowcs.o `test -f 'mbsrtowcs.c' || echo '$(srcdir)/'`mbsrtowcs.c + +libdiffutils_a-mbsrtowcs.obj: mbsrtowcs.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-mbsrtowcs.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-mbsrtowcs.Tpo -c -o libdiffutils_a-mbsrtowcs.obj `if test -f 'mbsrtowcs.c'; then $(CYGPATH_W) 'mbsrtowcs.c'; else $(CYGPATH_W) '$(srcdir)/mbsrtowcs.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-mbsrtowcs.Tpo $(DEPDIR)/libdiffutils_a-mbsrtowcs.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mbsrtowcs.c' object='libdiffutils_a-mbsrtowcs.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-mbsrtowcs.obj `if test -f 'mbsrtowcs.c'; then $(CYGPATH_W) 'mbsrtowcs.c'; else $(CYGPATH_W) '$(srcdir)/mbsrtowcs.c'; fi` + +libdiffutils_a-mbsstr.o: mbsstr.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-mbsstr.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-mbsstr.Tpo -c -o libdiffutils_a-mbsstr.o `test -f 'mbsstr.c' || echo '$(srcdir)/'`mbsstr.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-mbsstr.Tpo $(DEPDIR)/libdiffutils_a-mbsstr.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mbsstr.c' object='libdiffutils_a-mbsstr.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-mbsstr.o `test -f 'mbsstr.c' || echo '$(srcdir)/'`mbsstr.c + +libdiffutils_a-mbsstr.obj: mbsstr.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-mbsstr.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-mbsstr.Tpo -c -o libdiffutils_a-mbsstr.obj `if test -f 'mbsstr.c'; then $(CYGPATH_W) 'mbsstr.c'; else $(CYGPATH_W) '$(srcdir)/mbsstr.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-mbsstr.Tpo $(DEPDIR)/libdiffutils_a-mbsstr.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mbsstr.c' object='libdiffutils_a-mbsstr.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-mbsstr.obj `if test -f 'mbsstr.c'; then $(CYGPATH_W) 'mbsstr.c'; else $(CYGPATH_W) '$(srcdir)/mbsstr.c'; fi` + +libdiffutils_a-mbtowc.o: mbtowc.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-mbtowc.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-mbtowc.Tpo -c -o libdiffutils_a-mbtowc.o `test -f 'mbtowc.c' || echo '$(srcdir)/'`mbtowc.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-mbtowc.Tpo $(DEPDIR)/libdiffutils_a-mbtowc.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mbtowc.c' object='libdiffutils_a-mbtowc.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-mbtowc.o `test -f 'mbtowc.c' || echo '$(srcdir)/'`mbtowc.c + +libdiffutils_a-mbtowc.obj: mbtowc.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-mbtowc.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-mbtowc.Tpo -c -o libdiffutils_a-mbtowc.obj `if test -f 'mbtowc.c'; then $(CYGPATH_W) 'mbtowc.c'; else $(CYGPATH_W) '$(srcdir)/mbtowc.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-mbtowc.Tpo $(DEPDIR)/libdiffutils_a-mbtowc.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mbtowc.c' object='libdiffutils_a-mbtowc.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-mbtowc.obj `if test -f 'mbtowc.c'; then $(CYGPATH_W) 'mbtowc.c'; else $(CYGPATH_W) '$(srcdir)/mbtowc.c'; fi` + +libdiffutils_a-mbuiter.o: mbuiter.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-mbuiter.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-mbuiter.Tpo -c -o libdiffutils_a-mbuiter.o `test -f 'mbuiter.c' || echo '$(srcdir)/'`mbuiter.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-mbuiter.Tpo $(DEPDIR)/libdiffutils_a-mbuiter.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mbuiter.c' object='libdiffutils_a-mbuiter.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-mbuiter.o `test -f 'mbuiter.c' || echo '$(srcdir)/'`mbuiter.c + +libdiffutils_a-mbuiter.obj: mbuiter.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-mbuiter.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-mbuiter.Tpo -c -o libdiffutils_a-mbuiter.obj `if test -f 'mbuiter.c'; then $(CYGPATH_W) 'mbuiter.c'; else $(CYGPATH_W) '$(srcdir)/mbuiter.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-mbuiter.Tpo $(DEPDIR)/libdiffutils_a-mbuiter.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mbuiter.c' object='libdiffutils_a-mbuiter.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-mbuiter.obj `if test -f 'mbuiter.c'; then $(CYGPATH_W) 'mbuiter.c'; else $(CYGPATH_W) '$(srcdir)/mbuiter.c'; fi` + +libdiffutils_a-memchr.o: memchr.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-memchr.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-memchr.Tpo -c -o libdiffutils_a-memchr.o `test -f 'memchr.c' || echo '$(srcdir)/'`memchr.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-memchr.Tpo $(DEPDIR)/libdiffutils_a-memchr.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='memchr.c' object='libdiffutils_a-memchr.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-memchr.o `test -f 'memchr.c' || echo '$(srcdir)/'`memchr.c + +libdiffutils_a-memchr.obj: memchr.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-memchr.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-memchr.Tpo -c -o libdiffutils_a-memchr.obj `if test -f 'memchr.c'; then $(CYGPATH_W) 'memchr.c'; else $(CYGPATH_W) '$(srcdir)/memchr.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-memchr.Tpo $(DEPDIR)/libdiffutils_a-memchr.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='memchr.c' object='libdiffutils_a-memchr.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-memchr.obj `if test -f 'memchr.c'; then $(CYGPATH_W) 'memchr.c'; else $(CYGPATH_W) '$(srcdir)/memchr.c'; fi` + +libdiffutils_a-mempcpy.o: mempcpy.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-mempcpy.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-mempcpy.Tpo -c -o libdiffutils_a-mempcpy.o `test -f 'mempcpy.c' || echo '$(srcdir)/'`mempcpy.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-mempcpy.Tpo $(DEPDIR)/libdiffutils_a-mempcpy.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mempcpy.c' object='libdiffutils_a-mempcpy.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-mempcpy.o `test -f 'mempcpy.c' || echo '$(srcdir)/'`mempcpy.c + +libdiffutils_a-mempcpy.obj: mempcpy.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-mempcpy.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-mempcpy.Tpo -c -o libdiffutils_a-mempcpy.obj `if test -f 'mempcpy.c'; then $(CYGPATH_W) 'mempcpy.c'; else $(CYGPATH_W) '$(srcdir)/mempcpy.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-mempcpy.Tpo $(DEPDIR)/libdiffutils_a-mempcpy.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mempcpy.c' object='libdiffutils_a-mempcpy.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-mempcpy.obj `if test -f 'mempcpy.c'; then $(CYGPATH_W) 'mempcpy.c'; else $(CYGPATH_W) '$(srcdir)/mempcpy.c'; fi` + +libdiffutils_a-mkdir.o: mkdir.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-mkdir.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-mkdir.Tpo -c -o libdiffutils_a-mkdir.o `test -f 'mkdir.c' || echo '$(srcdir)/'`mkdir.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-mkdir.Tpo $(DEPDIR)/libdiffutils_a-mkdir.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mkdir.c' object='libdiffutils_a-mkdir.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-mkdir.o `test -f 'mkdir.c' || echo '$(srcdir)/'`mkdir.c + +libdiffutils_a-mkdir.obj: mkdir.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-mkdir.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-mkdir.Tpo -c -o libdiffutils_a-mkdir.obj `if test -f 'mkdir.c'; then $(CYGPATH_W) 'mkdir.c'; else $(CYGPATH_W) '$(srcdir)/mkdir.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-mkdir.Tpo $(DEPDIR)/libdiffutils_a-mkdir.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mkdir.c' object='libdiffutils_a-mkdir.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-mkdir.obj `if test -f 'mkdir.c'; then $(CYGPATH_W) 'mkdir.c'; else $(CYGPATH_W) '$(srcdir)/mkdir.c'; fi` + +libdiffutils_a-mkstemp.o: mkstemp.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-mkstemp.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-mkstemp.Tpo -c -o libdiffutils_a-mkstemp.o `test -f 'mkstemp.c' || echo '$(srcdir)/'`mkstemp.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-mkstemp.Tpo $(DEPDIR)/libdiffutils_a-mkstemp.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mkstemp.c' object='libdiffutils_a-mkstemp.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-mkstemp.o `test -f 'mkstemp.c' || echo '$(srcdir)/'`mkstemp.c + +libdiffutils_a-mkstemp.obj: mkstemp.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-mkstemp.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-mkstemp.Tpo -c -o libdiffutils_a-mkstemp.obj `if test -f 'mkstemp.c'; then $(CYGPATH_W) 'mkstemp.c'; else $(CYGPATH_W) '$(srcdir)/mkstemp.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-mkstemp.Tpo $(DEPDIR)/libdiffutils_a-mkstemp.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mkstemp.c' object='libdiffutils_a-mkstemp.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-mkstemp.obj `if test -f 'mkstemp.c'; then $(CYGPATH_W) 'mkstemp.c'; else $(CYGPATH_W) '$(srcdir)/mkstemp.c'; fi` + +libdiffutils_a-msvc-inval.o: msvc-inval.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-msvc-inval.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-msvc-inval.Tpo -c -o libdiffutils_a-msvc-inval.o `test -f 'msvc-inval.c' || echo '$(srcdir)/'`msvc-inval.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-msvc-inval.Tpo $(DEPDIR)/libdiffutils_a-msvc-inval.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='msvc-inval.c' object='libdiffutils_a-msvc-inval.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-msvc-inval.o `test -f 'msvc-inval.c' || echo '$(srcdir)/'`msvc-inval.c + +libdiffutils_a-msvc-inval.obj: msvc-inval.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-msvc-inval.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-msvc-inval.Tpo -c -o libdiffutils_a-msvc-inval.obj `if test -f 'msvc-inval.c'; then $(CYGPATH_W) 'msvc-inval.c'; else $(CYGPATH_W) '$(srcdir)/msvc-inval.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-msvc-inval.Tpo $(DEPDIR)/libdiffutils_a-msvc-inval.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='msvc-inval.c' object='libdiffutils_a-msvc-inval.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-msvc-inval.obj `if test -f 'msvc-inval.c'; then $(CYGPATH_W) 'msvc-inval.c'; else $(CYGPATH_W) '$(srcdir)/msvc-inval.c'; fi` + +libdiffutils_a-msvc-nothrow.o: msvc-nothrow.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-msvc-nothrow.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-msvc-nothrow.Tpo -c -o libdiffutils_a-msvc-nothrow.o `test -f 'msvc-nothrow.c' || echo '$(srcdir)/'`msvc-nothrow.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-msvc-nothrow.Tpo $(DEPDIR)/libdiffutils_a-msvc-nothrow.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='msvc-nothrow.c' object='libdiffutils_a-msvc-nothrow.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-msvc-nothrow.o `test -f 'msvc-nothrow.c' || echo '$(srcdir)/'`msvc-nothrow.c + +libdiffutils_a-msvc-nothrow.obj: msvc-nothrow.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-msvc-nothrow.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-msvc-nothrow.Tpo -c -o libdiffutils_a-msvc-nothrow.obj `if test -f 'msvc-nothrow.c'; then $(CYGPATH_W) 'msvc-nothrow.c'; else $(CYGPATH_W) '$(srcdir)/msvc-nothrow.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-msvc-nothrow.Tpo $(DEPDIR)/libdiffutils_a-msvc-nothrow.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='msvc-nothrow.c' object='libdiffutils_a-msvc-nothrow.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-msvc-nothrow.obj `if test -f 'msvc-nothrow.c'; then $(CYGPATH_W) 'msvc-nothrow.c'; else $(CYGPATH_W) '$(srcdir)/msvc-nothrow.c'; fi` + +libdiffutils_a-nl_langinfo.o: nl_langinfo.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-nl_langinfo.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-nl_langinfo.Tpo -c -o libdiffutils_a-nl_langinfo.o `test -f 'nl_langinfo.c' || echo '$(srcdir)/'`nl_langinfo.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-nl_langinfo.Tpo $(DEPDIR)/libdiffutils_a-nl_langinfo.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='nl_langinfo.c' object='libdiffutils_a-nl_langinfo.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-nl_langinfo.o `test -f 'nl_langinfo.c' || echo '$(srcdir)/'`nl_langinfo.c + +libdiffutils_a-nl_langinfo.obj: nl_langinfo.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-nl_langinfo.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-nl_langinfo.Tpo -c -o libdiffutils_a-nl_langinfo.obj `if test -f 'nl_langinfo.c'; then $(CYGPATH_W) 'nl_langinfo.c'; else $(CYGPATH_W) '$(srcdir)/nl_langinfo.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-nl_langinfo.Tpo $(DEPDIR)/libdiffutils_a-nl_langinfo.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='nl_langinfo.c' object='libdiffutils_a-nl_langinfo.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-nl_langinfo.obj `if test -f 'nl_langinfo.c'; then $(CYGPATH_W) 'nl_langinfo.c'; else $(CYGPATH_W) '$(srcdir)/nl_langinfo.c'; fi` + +libdiffutils_a-nl_langinfo-lock.o: nl_langinfo-lock.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-nl_langinfo-lock.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-nl_langinfo-lock.Tpo -c -o libdiffutils_a-nl_langinfo-lock.o `test -f 'nl_langinfo-lock.c' || echo '$(srcdir)/'`nl_langinfo-lock.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-nl_langinfo-lock.Tpo $(DEPDIR)/libdiffutils_a-nl_langinfo-lock.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='nl_langinfo-lock.c' object='libdiffutils_a-nl_langinfo-lock.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-nl_langinfo-lock.o `test -f 'nl_langinfo-lock.c' || echo '$(srcdir)/'`nl_langinfo-lock.c + +libdiffutils_a-nl_langinfo-lock.obj: nl_langinfo-lock.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-nl_langinfo-lock.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-nl_langinfo-lock.Tpo -c -o libdiffutils_a-nl_langinfo-lock.obj `if test -f 'nl_langinfo-lock.c'; then $(CYGPATH_W) 'nl_langinfo-lock.c'; else $(CYGPATH_W) '$(srcdir)/nl_langinfo-lock.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-nl_langinfo-lock.Tpo $(DEPDIR)/libdiffutils_a-nl_langinfo-lock.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='nl_langinfo-lock.c' object='libdiffutils_a-nl_langinfo-lock.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-nl_langinfo-lock.obj `if test -f 'nl_langinfo-lock.c'; then $(CYGPATH_W) 'nl_langinfo-lock.c'; else $(CYGPATH_W) '$(srcdir)/nl_langinfo-lock.c'; fi` + +libdiffutils_a-nstrftime.o: nstrftime.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-nstrftime.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-nstrftime.Tpo -c -o libdiffutils_a-nstrftime.o `test -f 'nstrftime.c' || echo '$(srcdir)/'`nstrftime.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-nstrftime.Tpo $(DEPDIR)/libdiffutils_a-nstrftime.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='nstrftime.c' object='libdiffutils_a-nstrftime.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-nstrftime.o `test -f 'nstrftime.c' || echo '$(srcdir)/'`nstrftime.c + +libdiffutils_a-nstrftime.obj: nstrftime.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-nstrftime.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-nstrftime.Tpo -c -o libdiffutils_a-nstrftime.obj `if test -f 'nstrftime.c'; then $(CYGPATH_W) 'nstrftime.c'; else $(CYGPATH_W) '$(srcdir)/nstrftime.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-nstrftime.Tpo $(DEPDIR)/libdiffutils_a-nstrftime.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='nstrftime.c' object='libdiffutils_a-nstrftime.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-nstrftime.obj `if test -f 'nstrftime.c'; then $(CYGPATH_W) 'nstrftime.c'; else $(CYGPATH_W) '$(srcdir)/nstrftime.c'; fi` + +libdiffutils_a-open.o: open.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-open.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-open.Tpo -c -o libdiffutils_a-open.o `test -f 'open.c' || echo '$(srcdir)/'`open.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-open.Tpo $(DEPDIR)/libdiffutils_a-open.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='open.c' object='libdiffutils_a-open.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-open.o `test -f 'open.c' || echo '$(srcdir)/'`open.c + +libdiffutils_a-open.obj: open.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-open.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-open.Tpo -c -o libdiffutils_a-open.obj `if test -f 'open.c'; then $(CYGPATH_W) 'open.c'; else $(CYGPATH_W) '$(srcdir)/open.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-open.Tpo $(DEPDIR)/libdiffutils_a-open.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='open.c' object='libdiffutils_a-open.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-open.obj `if test -f 'open.c'; then $(CYGPATH_W) 'open.c'; else $(CYGPATH_W) '$(srcdir)/open.c'; fi` + +libdiffutils_a-progname.o: progname.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-progname.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-progname.Tpo -c -o libdiffutils_a-progname.o `test -f 'progname.c' || echo '$(srcdir)/'`progname.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-progname.Tpo $(DEPDIR)/libdiffutils_a-progname.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='progname.c' object='libdiffutils_a-progname.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-progname.o `test -f 'progname.c' || echo '$(srcdir)/'`progname.c + +libdiffutils_a-progname.obj: progname.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-progname.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-progname.Tpo -c -o libdiffutils_a-progname.obj `if test -f 'progname.c'; then $(CYGPATH_W) 'progname.c'; else $(CYGPATH_W) '$(srcdir)/progname.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-progname.Tpo $(DEPDIR)/libdiffutils_a-progname.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='progname.c' object='libdiffutils_a-progname.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-progname.obj `if test -f 'progname.c'; then $(CYGPATH_W) 'progname.c'; else $(CYGPATH_W) '$(srcdir)/progname.c'; fi` + +libdiffutils_a-propername.o: propername.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-propername.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-propername.Tpo -c -o libdiffutils_a-propername.o `test -f 'propername.c' || echo '$(srcdir)/'`propername.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-propername.Tpo $(DEPDIR)/libdiffutils_a-propername.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='propername.c' object='libdiffutils_a-propername.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-propername.o `test -f 'propername.c' || echo '$(srcdir)/'`propername.c + +libdiffutils_a-propername.obj: propername.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-propername.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-propername.Tpo -c -o libdiffutils_a-propername.obj `if test -f 'propername.c'; then $(CYGPATH_W) 'propername.c'; else $(CYGPATH_W) '$(srcdir)/propername.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-propername.Tpo $(DEPDIR)/libdiffutils_a-propername.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='propername.c' object='libdiffutils_a-propername.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-propername.obj `if test -f 'propername.c'; then $(CYGPATH_W) 'propername.c'; else $(CYGPATH_W) '$(srcdir)/propername.c'; fi` + +libdiffutils_a-quotearg.o: quotearg.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-quotearg.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-quotearg.Tpo -c -o libdiffutils_a-quotearg.o `test -f 'quotearg.c' || echo '$(srcdir)/'`quotearg.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-quotearg.Tpo $(DEPDIR)/libdiffutils_a-quotearg.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='quotearg.c' object='libdiffutils_a-quotearg.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-quotearg.o `test -f 'quotearg.c' || echo '$(srcdir)/'`quotearg.c + +libdiffutils_a-quotearg.obj: quotearg.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-quotearg.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-quotearg.Tpo -c -o libdiffutils_a-quotearg.obj `if test -f 'quotearg.c'; then $(CYGPATH_W) 'quotearg.c'; else $(CYGPATH_W) '$(srcdir)/quotearg.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-quotearg.Tpo $(DEPDIR)/libdiffutils_a-quotearg.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='quotearg.c' object='libdiffutils_a-quotearg.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-quotearg.obj `if test -f 'quotearg.c'; then $(CYGPATH_W) 'quotearg.c'; else $(CYGPATH_W) '$(srcdir)/quotearg.c'; fi` + +libdiffutils_a-raise.o: raise.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-raise.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-raise.Tpo -c -o libdiffutils_a-raise.o `test -f 'raise.c' || echo '$(srcdir)/'`raise.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-raise.Tpo $(DEPDIR)/libdiffutils_a-raise.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='raise.c' object='libdiffutils_a-raise.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-raise.o `test -f 'raise.c' || echo '$(srcdir)/'`raise.c + +libdiffutils_a-raise.obj: raise.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-raise.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-raise.Tpo -c -o libdiffutils_a-raise.obj `if test -f 'raise.c'; then $(CYGPATH_W) 'raise.c'; else $(CYGPATH_W) '$(srcdir)/raise.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-raise.Tpo $(DEPDIR)/libdiffutils_a-raise.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='raise.c' object='libdiffutils_a-raise.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-raise.obj `if test -f 'raise.c'; then $(CYGPATH_W) 'raise.c'; else $(CYGPATH_W) '$(srcdir)/raise.c'; fi` + +libdiffutils_a-rawmemchr.o: rawmemchr.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-rawmemchr.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-rawmemchr.Tpo -c -o libdiffutils_a-rawmemchr.o `test -f 'rawmemchr.c' || echo '$(srcdir)/'`rawmemchr.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-rawmemchr.Tpo $(DEPDIR)/libdiffutils_a-rawmemchr.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='rawmemchr.c' object='libdiffutils_a-rawmemchr.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-rawmemchr.o `test -f 'rawmemchr.c' || echo '$(srcdir)/'`rawmemchr.c + +libdiffutils_a-rawmemchr.obj: rawmemchr.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-rawmemchr.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-rawmemchr.Tpo -c -o libdiffutils_a-rawmemchr.obj `if test -f 'rawmemchr.c'; then $(CYGPATH_W) 'rawmemchr.c'; else $(CYGPATH_W) '$(srcdir)/rawmemchr.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-rawmemchr.Tpo $(DEPDIR)/libdiffutils_a-rawmemchr.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='rawmemchr.c' object='libdiffutils_a-rawmemchr.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-rawmemchr.obj `if test -f 'rawmemchr.c'; then $(CYGPATH_W) 'rawmemchr.c'; else $(CYGPATH_W) '$(srcdir)/rawmemchr.c'; fi` + +libdiffutils_a-readlink.o: readlink.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-readlink.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-readlink.Tpo -c -o libdiffutils_a-readlink.o `test -f 'readlink.c' || echo '$(srcdir)/'`readlink.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-readlink.Tpo $(DEPDIR)/libdiffutils_a-readlink.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='readlink.c' object='libdiffutils_a-readlink.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-readlink.o `test -f 'readlink.c' || echo '$(srcdir)/'`readlink.c + +libdiffutils_a-readlink.obj: readlink.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-readlink.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-readlink.Tpo -c -o libdiffutils_a-readlink.obj `if test -f 'readlink.c'; then $(CYGPATH_W) 'readlink.c'; else $(CYGPATH_W) '$(srcdir)/readlink.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-readlink.Tpo $(DEPDIR)/libdiffutils_a-readlink.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='readlink.c' object='libdiffutils_a-readlink.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-readlink.obj `if test -f 'readlink.c'; then $(CYGPATH_W) 'readlink.c'; else $(CYGPATH_W) '$(srcdir)/readlink.c'; fi` + +libdiffutils_a-reallocarray.o: reallocarray.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-reallocarray.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-reallocarray.Tpo -c -o libdiffutils_a-reallocarray.o `test -f 'reallocarray.c' || echo '$(srcdir)/'`reallocarray.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-reallocarray.Tpo $(DEPDIR)/libdiffutils_a-reallocarray.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='reallocarray.c' object='libdiffutils_a-reallocarray.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-reallocarray.o `test -f 'reallocarray.c' || echo '$(srcdir)/'`reallocarray.c + +libdiffutils_a-reallocarray.obj: reallocarray.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-reallocarray.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-reallocarray.Tpo -c -o libdiffutils_a-reallocarray.obj `if test -f 'reallocarray.c'; then $(CYGPATH_W) 'reallocarray.c'; else $(CYGPATH_W) '$(srcdir)/reallocarray.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-reallocarray.Tpo $(DEPDIR)/libdiffutils_a-reallocarray.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='reallocarray.c' object='libdiffutils_a-reallocarray.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-reallocarray.obj `if test -f 'reallocarray.c'; then $(CYGPATH_W) 'reallocarray.c'; else $(CYGPATH_W) '$(srcdir)/reallocarray.c'; fi` + +libdiffutils_a-regex.o: regex.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-regex.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-regex.Tpo -c -o libdiffutils_a-regex.o `test -f 'regex.c' || echo '$(srcdir)/'`regex.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-regex.Tpo $(DEPDIR)/libdiffutils_a-regex.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='regex.c' object='libdiffutils_a-regex.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-regex.o `test -f 'regex.c' || echo '$(srcdir)/'`regex.c + +libdiffutils_a-regex.obj: regex.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-regex.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-regex.Tpo -c -o libdiffutils_a-regex.obj `if test -f 'regex.c'; then $(CYGPATH_W) 'regex.c'; else $(CYGPATH_W) '$(srcdir)/regex.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-regex.Tpo $(DEPDIR)/libdiffutils_a-regex.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='regex.c' object='libdiffutils_a-regex.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-regex.obj `if test -f 'regex.c'; then $(CYGPATH_W) 'regex.c'; else $(CYGPATH_W) '$(srcdir)/regex.c'; fi` + +libdiffutils_a-setenv.o: setenv.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-setenv.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-setenv.Tpo -c -o libdiffutils_a-setenv.o `test -f 'setenv.c' || echo '$(srcdir)/'`setenv.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-setenv.Tpo $(DEPDIR)/libdiffutils_a-setenv.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='setenv.c' object='libdiffutils_a-setenv.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-setenv.o `test -f 'setenv.c' || echo '$(srcdir)/'`setenv.c + +libdiffutils_a-setenv.obj: setenv.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-setenv.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-setenv.Tpo -c -o libdiffutils_a-setenv.obj `if test -f 'setenv.c'; then $(CYGPATH_W) 'setenv.c'; else $(CYGPATH_W) '$(srcdir)/setenv.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-setenv.Tpo $(DEPDIR)/libdiffutils_a-setenv.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='setenv.c' object='libdiffutils_a-setenv.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-setenv.obj `if test -f 'setenv.c'; then $(CYGPATH_W) 'setenv.c'; else $(CYGPATH_W) '$(srcdir)/setenv.c'; fi` + +libdiffutils_a-setlocale_null.o: setlocale_null.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-setlocale_null.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-setlocale_null.Tpo -c -o libdiffutils_a-setlocale_null.o `test -f 'setlocale_null.c' || echo '$(srcdir)/'`setlocale_null.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-setlocale_null.Tpo $(DEPDIR)/libdiffutils_a-setlocale_null.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='setlocale_null.c' object='libdiffutils_a-setlocale_null.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-setlocale_null.o `test -f 'setlocale_null.c' || echo '$(srcdir)/'`setlocale_null.c + +libdiffutils_a-setlocale_null.obj: setlocale_null.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-setlocale_null.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-setlocale_null.Tpo -c -o libdiffutils_a-setlocale_null.obj `if test -f 'setlocale_null.c'; then $(CYGPATH_W) 'setlocale_null.c'; else $(CYGPATH_W) '$(srcdir)/setlocale_null.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-setlocale_null.Tpo $(DEPDIR)/libdiffutils_a-setlocale_null.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='setlocale_null.c' object='libdiffutils_a-setlocale_null.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-setlocale_null.obj `if test -f 'setlocale_null.c'; then $(CYGPATH_W) 'setlocale_null.c'; else $(CYGPATH_W) '$(srcdir)/setlocale_null.c'; fi` + +libdiffutils_a-setlocale-lock.o: setlocale-lock.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-setlocale-lock.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-setlocale-lock.Tpo -c -o libdiffutils_a-setlocale-lock.o `test -f 'setlocale-lock.c' || echo '$(srcdir)/'`setlocale-lock.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-setlocale-lock.Tpo $(DEPDIR)/libdiffutils_a-setlocale-lock.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='setlocale-lock.c' object='libdiffutils_a-setlocale-lock.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-setlocale-lock.o `test -f 'setlocale-lock.c' || echo '$(srcdir)/'`setlocale-lock.c + +libdiffutils_a-setlocale-lock.obj: setlocale-lock.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-setlocale-lock.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-setlocale-lock.Tpo -c -o libdiffutils_a-setlocale-lock.obj `if test -f 'setlocale-lock.c'; then $(CYGPATH_W) 'setlocale-lock.c'; else $(CYGPATH_W) '$(srcdir)/setlocale-lock.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-setlocale-lock.Tpo $(DEPDIR)/libdiffutils_a-setlocale-lock.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='setlocale-lock.c' object='libdiffutils_a-setlocale-lock.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-setlocale-lock.obj `if test -f 'setlocale-lock.c'; then $(CYGPATH_W) 'setlocale-lock.c'; else $(CYGPATH_W) '$(srcdir)/setlocale-lock.c'; fi` + +libdiffutils_a-sh-quote.o: sh-quote.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-sh-quote.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-sh-quote.Tpo -c -o libdiffutils_a-sh-quote.o `test -f 'sh-quote.c' || echo '$(srcdir)/'`sh-quote.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-sh-quote.Tpo $(DEPDIR)/libdiffutils_a-sh-quote.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sh-quote.c' object='libdiffutils_a-sh-quote.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-sh-quote.o `test -f 'sh-quote.c' || echo '$(srcdir)/'`sh-quote.c + +libdiffutils_a-sh-quote.obj: sh-quote.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-sh-quote.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-sh-quote.Tpo -c -o libdiffutils_a-sh-quote.obj `if test -f 'sh-quote.c'; then $(CYGPATH_W) 'sh-quote.c'; else $(CYGPATH_W) '$(srcdir)/sh-quote.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-sh-quote.Tpo $(DEPDIR)/libdiffutils_a-sh-quote.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sh-quote.c' object='libdiffutils_a-sh-quote.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-sh-quote.obj `if test -f 'sh-quote.c'; then $(CYGPATH_W) 'sh-quote.c'; else $(CYGPATH_W) '$(srcdir)/sh-quote.c'; fi` + +libdiffutils_a-sigprocmask.o: sigprocmask.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-sigprocmask.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-sigprocmask.Tpo -c -o libdiffutils_a-sigprocmask.o `test -f 'sigprocmask.c' || echo '$(srcdir)/'`sigprocmask.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-sigprocmask.Tpo $(DEPDIR)/libdiffutils_a-sigprocmask.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sigprocmask.c' object='libdiffutils_a-sigprocmask.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-sigprocmask.o `test -f 'sigprocmask.c' || echo '$(srcdir)/'`sigprocmask.c + +libdiffutils_a-sigprocmask.obj: sigprocmask.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-sigprocmask.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-sigprocmask.Tpo -c -o libdiffutils_a-sigprocmask.obj `if test -f 'sigprocmask.c'; then $(CYGPATH_W) 'sigprocmask.c'; else $(CYGPATH_W) '$(srcdir)/sigprocmask.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-sigprocmask.Tpo $(DEPDIR)/libdiffutils_a-sigprocmask.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sigprocmask.c' object='libdiffutils_a-sigprocmask.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-sigprocmask.obj `if test -f 'sigprocmask.c'; then $(CYGPATH_W) 'sigprocmask.c'; else $(CYGPATH_W) '$(srcdir)/sigprocmask.c'; fi` + +libdiffutils_a-sigsegv.o: sigsegv.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-sigsegv.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-sigsegv.Tpo -c -o libdiffutils_a-sigsegv.o `test -f 'sigsegv.c' || echo '$(srcdir)/'`sigsegv.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-sigsegv.Tpo $(DEPDIR)/libdiffutils_a-sigsegv.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sigsegv.c' object='libdiffutils_a-sigsegv.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-sigsegv.o `test -f 'sigsegv.c' || echo '$(srcdir)/'`sigsegv.c + +libdiffutils_a-sigsegv.obj: sigsegv.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-sigsegv.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-sigsegv.Tpo -c -o libdiffutils_a-sigsegv.obj `if test -f 'sigsegv.c'; then $(CYGPATH_W) 'sigsegv.c'; else $(CYGPATH_W) '$(srcdir)/sigsegv.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-sigsegv.Tpo $(DEPDIR)/libdiffutils_a-sigsegv.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sigsegv.c' object='libdiffutils_a-sigsegv.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-sigsegv.obj `if test -f 'sigsegv.c'; then $(CYGPATH_W) 'sigsegv.c'; else $(CYGPATH_W) '$(srcdir)/sigsegv.c'; fi` + +libdiffutils_a-stackvma.o: stackvma.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-stackvma.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-stackvma.Tpo -c -o libdiffutils_a-stackvma.o `test -f 'stackvma.c' || echo '$(srcdir)/'`stackvma.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-stackvma.Tpo $(DEPDIR)/libdiffutils_a-stackvma.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='stackvma.c' object='libdiffutils_a-stackvma.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-stackvma.o `test -f 'stackvma.c' || echo '$(srcdir)/'`stackvma.c + +libdiffutils_a-stackvma.obj: stackvma.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-stackvma.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-stackvma.Tpo -c -o libdiffutils_a-stackvma.obj `if test -f 'stackvma.c'; then $(CYGPATH_W) 'stackvma.c'; else $(CYGPATH_W) '$(srcdir)/stackvma.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-stackvma.Tpo $(DEPDIR)/libdiffutils_a-stackvma.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='stackvma.c' object='libdiffutils_a-stackvma.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-stackvma.obj `if test -f 'stackvma.c'; then $(CYGPATH_W) 'stackvma.c'; else $(CYGPATH_W) '$(srcdir)/stackvma.c'; fi` + +libdiffutils_a-stat.o: stat.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-stat.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-stat.Tpo -c -o libdiffutils_a-stat.o `test -f 'stat.c' || echo '$(srcdir)/'`stat.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-stat.Tpo $(DEPDIR)/libdiffutils_a-stat.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='stat.c' object='libdiffutils_a-stat.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-stat.o `test -f 'stat.c' || echo '$(srcdir)/'`stat.c + +libdiffutils_a-stat.obj: stat.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-stat.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-stat.Tpo -c -o libdiffutils_a-stat.obj `if test -f 'stat.c'; then $(CYGPATH_W) 'stat.c'; else $(CYGPATH_W) '$(srcdir)/stat.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-stat.Tpo $(DEPDIR)/libdiffutils_a-stat.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='stat.c' object='libdiffutils_a-stat.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-stat.obj `if test -f 'stat.c'; then $(CYGPATH_W) 'stat.c'; else $(CYGPATH_W) '$(srcdir)/stat.c'; fi` + +libdiffutils_a-stat-time.o: stat-time.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-stat-time.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-stat-time.Tpo -c -o libdiffutils_a-stat-time.o `test -f 'stat-time.c' || echo '$(srcdir)/'`stat-time.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-stat-time.Tpo $(DEPDIR)/libdiffutils_a-stat-time.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='stat-time.c' object='libdiffutils_a-stat-time.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-stat-time.o `test -f 'stat-time.c' || echo '$(srcdir)/'`stat-time.c + +libdiffutils_a-stat-time.obj: stat-time.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-stat-time.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-stat-time.Tpo -c -o libdiffutils_a-stat-time.obj `if test -f 'stat-time.c'; then $(CYGPATH_W) 'stat-time.c'; else $(CYGPATH_W) '$(srcdir)/stat-time.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-stat-time.Tpo $(DEPDIR)/libdiffutils_a-stat-time.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='stat-time.c' object='libdiffutils_a-stat-time.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-stat-time.obj `if test -f 'stat-time.c'; then $(CYGPATH_W) 'stat-time.c'; else $(CYGPATH_W) '$(srcdir)/stat-time.c'; fi` + +libdiffutils_a-stdio-read.o: stdio-read.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-stdio-read.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-stdio-read.Tpo -c -o libdiffutils_a-stdio-read.o `test -f 'stdio-read.c' || echo '$(srcdir)/'`stdio-read.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-stdio-read.Tpo $(DEPDIR)/libdiffutils_a-stdio-read.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='stdio-read.c' object='libdiffutils_a-stdio-read.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-stdio-read.o `test -f 'stdio-read.c' || echo '$(srcdir)/'`stdio-read.c + +libdiffutils_a-stdio-read.obj: stdio-read.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-stdio-read.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-stdio-read.Tpo -c -o libdiffutils_a-stdio-read.obj `if test -f 'stdio-read.c'; then $(CYGPATH_W) 'stdio-read.c'; else $(CYGPATH_W) '$(srcdir)/stdio-read.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-stdio-read.Tpo $(DEPDIR)/libdiffutils_a-stdio-read.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='stdio-read.c' object='libdiffutils_a-stdio-read.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-stdio-read.obj `if test -f 'stdio-read.c'; then $(CYGPATH_W) 'stdio-read.c'; else $(CYGPATH_W) '$(srcdir)/stdio-read.c'; fi` + +libdiffutils_a-stdio-write.o: stdio-write.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-stdio-write.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-stdio-write.Tpo -c -o libdiffutils_a-stdio-write.o `test -f 'stdio-write.c' || echo '$(srcdir)/'`stdio-write.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-stdio-write.Tpo $(DEPDIR)/libdiffutils_a-stdio-write.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='stdio-write.c' object='libdiffutils_a-stdio-write.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-stdio-write.o `test -f 'stdio-write.c' || echo '$(srcdir)/'`stdio-write.c + +libdiffutils_a-stdio-write.obj: stdio-write.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-stdio-write.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-stdio-write.Tpo -c -o libdiffutils_a-stdio-write.obj `if test -f 'stdio-write.c'; then $(CYGPATH_W) 'stdio-write.c'; else $(CYGPATH_W) '$(srcdir)/stdio-write.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-stdio-write.Tpo $(DEPDIR)/libdiffutils_a-stdio-write.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='stdio-write.c' object='libdiffutils_a-stdio-write.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-stdio-write.obj `if test -f 'stdio-write.c'; then $(CYGPATH_W) 'stdio-write.c'; else $(CYGPATH_W) '$(srcdir)/stdio-write.c'; fi` + +libdiffutils_a-stdopen.o: stdopen.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-stdopen.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-stdopen.Tpo -c -o libdiffutils_a-stdopen.o `test -f 'stdopen.c' || echo '$(srcdir)/'`stdopen.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-stdopen.Tpo $(DEPDIR)/libdiffutils_a-stdopen.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='stdopen.c' object='libdiffutils_a-stdopen.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-stdopen.o `test -f 'stdopen.c' || echo '$(srcdir)/'`stdopen.c + +libdiffutils_a-stdopen.obj: stdopen.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-stdopen.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-stdopen.Tpo -c -o libdiffutils_a-stdopen.obj `if test -f 'stdopen.c'; then $(CYGPATH_W) 'stdopen.c'; else $(CYGPATH_W) '$(srcdir)/stdopen.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-stdopen.Tpo $(DEPDIR)/libdiffutils_a-stdopen.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='stdopen.c' object='libdiffutils_a-stdopen.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-stdopen.obj `if test -f 'stdopen.c'; then $(CYGPATH_W) 'stdopen.c'; else $(CYGPATH_W) '$(srcdir)/stdopen.c'; fi` + +libdiffutils_a-stpcpy.o: stpcpy.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-stpcpy.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-stpcpy.Tpo -c -o libdiffutils_a-stpcpy.o `test -f 'stpcpy.c' || echo '$(srcdir)/'`stpcpy.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-stpcpy.Tpo $(DEPDIR)/libdiffutils_a-stpcpy.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='stpcpy.c' object='libdiffutils_a-stpcpy.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-stpcpy.o `test -f 'stpcpy.c' || echo '$(srcdir)/'`stpcpy.c + +libdiffutils_a-stpcpy.obj: stpcpy.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-stpcpy.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-stpcpy.Tpo -c -o libdiffutils_a-stpcpy.obj `if test -f 'stpcpy.c'; then $(CYGPATH_W) 'stpcpy.c'; else $(CYGPATH_W) '$(srcdir)/stpcpy.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-stpcpy.Tpo $(DEPDIR)/libdiffutils_a-stpcpy.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='stpcpy.c' object='libdiffutils_a-stpcpy.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-stpcpy.obj `if test -f 'stpcpy.c'; then $(CYGPATH_W) 'stpcpy.c'; else $(CYGPATH_W) '$(srcdir)/stpcpy.c'; fi` + +libdiffutils_a-strcasecmp.o: strcasecmp.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-strcasecmp.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-strcasecmp.Tpo -c -o libdiffutils_a-strcasecmp.o `test -f 'strcasecmp.c' || echo '$(srcdir)/'`strcasecmp.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-strcasecmp.Tpo $(DEPDIR)/libdiffutils_a-strcasecmp.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='strcasecmp.c' object='libdiffutils_a-strcasecmp.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-strcasecmp.o `test -f 'strcasecmp.c' || echo '$(srcdir)/'`strcasecmp.c + +libdiffutils_a-strcasecmp.obj: strcasecmp.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-strcasecmp.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-strcasecmp.Tpo -c -o libdiffutils_a-strcasecmp.obj `if test -f 'strcasecmp.c'; then $(CYGPATH_W) 'strcasecmp.c'; else $(CYGPATH_W) '$(srcdir)/strcasecmp.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-strcasecmp.Tpo $(DEPDIR)/libdiffutils_a-strcasecmp.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='strcasecmp.c' object='libdiffutils_a-strcasecmp.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-strcasecmp.obj `if test -f 'strcasecmp.c'; then $(CYGPATH_W) 'strcasecmp.c'; else $(CYGPATH_W) '$(srcdir)/strcasecmp.c'; fi` + +libdiffutils_a-strncasecmp.o: strncasecmp.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-strncasecmp.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-strncasecmp.Tpo -c -o libdiffutils_a-strncasecmp.o `test -f 'strncasecmp.c' || echo '$(srcdir)/'`strncasecmp.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-strncasecmp.Tpo $(DEPDIR)/libdiffutils_a-strncasecmp.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='strncasecmp.c' object='libdiffutils_a-strncasecmp.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-strncasecmp.o `test -f 'strncasecmp.c' || echo '$(srcdir)/'`strncasecmp.c + +libdiffutils_a-strncasecmp.obj: strncasecmp.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-strncasecmp.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-strncasecmp.Tpo -c -o libdiffutils_a-strncasecmp.obj `if test -f 'strncasecmp.c'; then $(CYGPATH_W) 'strncasecmp.c'; else $(CYGPATH_W) '$(srcdir)/strncasecmp.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-strncasecmp.Tpo $(DEPDIR)/libdiffutils_a-strncasecmp.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='strncasecmp.c' object='libdiffutils_a-strncasecmp.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-strncasecmp.obj `if test -f 'strncasecmp.c'; then $(CYGPATH_W) 'strncasecmp.c'; else $(CYGPATH_W) '$(srcdir)/strncasecmp.c'; fi` + +libdiffutils_a-strerror.o: strerror.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-strerror.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-strerror.Tpo -c -o libdiffutils_a-strerror.o `test -f 'strerror.c' || echo '$(srcdir)/'`strerror.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-strerror.Tpo $(DEPDIR)/libdiffutils_a-strerror.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='strerror.c' object='libdiffutils_a-strerror.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-strerror.o `test -f 'strerror.c' || echo '$(srcdir)/'`strerror.c + +libdiffutils_a-strerror.obj: strerror.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-strerror.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-strerror.Tpo -c -o libdiffutils_a-strerror.obj `if test -f 'strerror.c'; then $(CYGPATH_W) 'strerror.c'; else $(CYGPATH_W) '$(srcdir)/strerror.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-strerror.Tpo $(DEPDIR)/libdiffutils_a-strerror.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='strerror.c' object='libdiffutils_a-strerror.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-strerror.obj `if test -f 'strerror.c'; then $(CYGPATH_W) 'strerror.c'; else $(CYGPATH_W) '$(srcdir)/strerror.c'; fi` + +libdiffutils_a-strerror-override.o: strerror-override.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-strerror-override.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-strerror-override.Tpo -c -o libdiffutils_a-strerror-override.o `test -f 'strerror-override.c' || echo '$(srcdir)/'`strerror-override.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-strerror-override.Tpo $(DEPDIR)/libdiffutils_a-strerror-override.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='strerror-override.c' object='libdiffutils_a-strerror-override.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-strerror-override.o `test -f 'strerror-override.c' || echo '$(srcdir)/'`strerror-override.c + +libdiffutils_a-strerror-override.obj: strerror-override.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-strerror-override.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-strerror-override.Tpo -c -o libdiffutils_a-strerror-override.obj `if test -f 'strerror-override.c'; then $(CYGPATH_W) 'strerror-override.c'; else $(CYGPATH_W) '$(srcdir)/strerror-override.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-strerror-override.Tpo $(DEPDIR)/libdiffutils_a-strerror-override.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='strerror-override.c' object='libdiffutils_a-strerror-override.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-strerror-override.obj `if test -f 'strerror-override.c'; then $(CYGPATH_W) 'strerror-override.c'; else $(CYGPATH_W) '$(srcdir)/strerror-override.c'; fi` + +libdiffutils_a-striconv.o: striconv.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-striconv.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-striconv.Tpo -c -o libdiffutils_a-striconv.o `test -f 'striconv.c' || echo '$(srcdir)/'`striconv.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-striconv.Tpo $(DEPDIR)/libdiffutils_a-striconv.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='striconv.c' object='libdiffutils_a-striconv.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-striconv.o `test -f 'striconv.c' || echo '$(srcdir)/'`striconv.c + +libdiffutils_a-striconv.obj: striconv.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-striconv.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-striconv.Tpo -c -o libdiffutils_a-striconv.obj `if test -f 'striconv.c'; then $(CYGPATH_W) 'striconv.c'; else $(CYGPATH_W) '$(srcdir)/striconv.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-striconv.Tpo $(DEPDIR)/libdiffutils_a-striconv.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='striconv.c' object='libdiffutils_a-striconv.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-striconv.obj `if test -f 'striconv.c'; then $(CYGPATH_W) 'striconv.c'; else $(CYGPATH_W) '$(srcdir)/striconv.c'; fi` + +libdiffutils_a-strnlen.o: strnlen.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-strnlen.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-strnlen.Tpo -c -o libdiffutils_a-strnlen.o `test -f 'strnlen.c' || echo '$(srcdir)/'`strnlen.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-strnlen.Tpo $(DEPDIR)/libdiffutils_a-strnlen.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='strnlen.c' object='libdiffutils_a-strnlen.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-strnlen.o `test -f 'strnlen.c' || echo '$(srcdir)/'`strnlen.c + +libdiffutils_a-strnlen.obj: strnlen.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-strnlen.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-strnlen.Tpo -c -o libdiffutils_a-strnlen.obj `if test -f 'strnlen.c'; then $(CYGPATH_W) 'strnlen.c'; else $(CYGPATH_W) '$(srcdir)/strnlen.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-strnlen.Tpo $(DEPDIR)/libdiffutils_a-strnlen.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='strnlen.c' object='libdiffutils_a-strnlen.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-strnlen.obj `if test -f 'strnlen.c'; then $(CYGPATH_W) 'strnlen.c'; else $(CYGPATH_W) '$(srcdir)/strnlen.c'; fi` + +libdiffutils_a-strnlen1.o: strnlen1.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-strnlen1.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-strnlen1.Tpo -c -o libdiffutils_a-strnlen1.o `test -f 'strnlen1.c' || echo '$(srcdir)/'`strnlen1.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-strnlen1.Tpo $(DEPDIR)/libdiffutils_a-strnlen1.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='strnlen1.c' object='libdiffutils_a-strnlen1.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-strnlen1.o `test -f 'strnlen1.c' || echo '$(srcdir)/'`strnlen1.c + +libdiffutils_a-strnlen1.obj: strnlen1.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-strnlen1.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-strnlen1.Tpo -c -o libdiffutils_a-strnlen1.obj `if test -f 'strnlen1.c'; then $(CYGPATH_W) 'strnlen1.c'; else $(CYGPATH_W) '$(srcdir)/strnlen1.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-strnlen1.Tpo $(DEPDIR)/libdiffutils_a-strnlen1.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='strnlen1.c' object='libdiffutils_a-strnlen1.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-strnlen1.obj `if test -f 'strnlen1.c'; then $(CYGPATH_W) 'strnlen1.c'; else $(CYGPATH_W) '$(srcdir)/strnlen1.c'; fi` + +libdiffutils_a-strptime.o: strptime.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-strptime.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-strptime.Tpo -c -o libdiffutils_a-strptime.o `test -f 'strptime.c' || echo '$(srcdir)/'`strptime.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-strptime.Tpo $(DEPDIR)/libdiffutils_a-strptime.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='strptime.c' object='libdiffutils_a-strptime.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-strptime.o `test -f 'strptime.c' || echo '$(srcdir)/'`strptime.c + +libdiffutils_a-strptime.obj: strptime.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-strptime.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-strptime.Tpo -c -o libdiffutils_a-strptime.obj `if test -f 'strptime.c'; then $(CYGPATH_W) 'strptime.c'; else $(CYGPATH_W) '$(srcdir)/strptime.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-strptime.Tpo $(DEPDIR)/libdiffutils_a-strptime.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='strptime.c' object='libdiffutils_a-strptime.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-strptime.obj `if test -f 'strptime.c'; then $(CYGPATH_W) 'strptime.c'; else $(CYGPATH_W) '$(srcdir)/strptime.c'; fi` + +libdiffutils_a-strtoimax.o: strtoimax.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-strtoimax.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-strtoimax.Tpo -c -o libdiffutils_a-strtoimax.o `test -f 'strtoimax.c' || echo '$(srcdir)/'`strtoimax.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-strtoimax.Tpo $(DEPDIR)/libdiffutils_a-strtoimax.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='strtoimax.c' object='libdiffutils_a-strtoimax.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-strtoimax.o `test -f 'strtoimax.c' || echo '$(srcdir)/'`strtoimax.c + +libdiffutils_a-strtoimax.obj: strtoimax.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-strtoimax.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-strtoimax.Tpo -c -o libdiffutils_a-strtoimax.obj `if test -f 'strtoimax.c'; then $(CYGPATH_W) 'strtoimax.c'; else $(CYGPATH_W) '$(srcdir)/strtoimax.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-strtoimax.Tpo $(DEPDIR)/libdiffutils_a-strtoimax.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='strtoimax.c' object='libdiffutils_a-strtoimax.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-strtoimax.obj `if test -f 'strtoimax.c'; then $(CYGPATH_W) 'strtoimax.c'; else $(CYGPATH_W) '$(srcdir)/strtoimax.c'; fi` + +libdiffutils_a-strtoll.o: strtoll.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-strtoll.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-strtoll.Tpo -c -o libdiffutils_a-strtoll.o `test -f 'strtoll.c' || echo '$(srcdir)/'`strtoll.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-strtoll.Tpo $(DEPDIR)/libdiffutils_a-strtoll.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='strtoll.c' object='libdiffutils_a-strtoll.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-strtoll.o `test -f 'strtoll.c' || echo '$(srcdir)/'`strtoll.c + +libdiffutils_a-strtoll.obj: strtoll.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-strtoll.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-strtoll.Tpo -c -o libdiffutils_a-strtoll.obj `if test -f 'strtoll.c'; then $(CYGPATH_W) 'strtoll.c'; else $(CYGPATH_W) '$(srcdir)/strtoll.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-strtoll.Tpo $(DEPDIR)/libdiffutils_a-strtoll.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='strtoll.c' object='libdiffutils_a-strtoll.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-strtoll.obj `if test -f 'strtoll.c'; then $(CYGPATH_W) 'strtoll.c'; else $(CYGPATH_W) '$(srcdir)/strtoll.c'; fi` + +libdiffutils_a-system-quote.o: system-quote.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-system-quote.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-system-quote.Tpo -c -o libdiffutils_a-system-quote.o `test -f 'system-quote.c' || echo '$(srcdir)/'`system-quote.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-system-quote.Tpo $(DEPDIR)/libdiffutils_a-system-quote.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='system-quote.c' object='libdiffutils_a-system-quote.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-system-quote.o `test -f 'system-quote.c' || echo '$(srcdir)/'`system-quote.c + +libdiffutils_a-system-quote.obj: system-quote.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-system-quote.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-system-quote.Tpo -c -o libdiffutils_a-system-quote.obj `if test -f 'system-quote.c'; then $(CYGPATH_W) 'system-quote.c'; else $(CYGPATH_W) '$(srcdir)/system-quote.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-system-quote.Tpo $(DEPDIR)/libdiffutils_a-system-quote.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='system-quote.c' object='libdiffutils_a-system-quote.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-system-quote.obj `if test -f 'system-quote.c'; then $(CYGPATH_W) 'system-quote.c'; else $(CYGPATH_W) '$(srcdir)/system-quote.c'; fi` + +libdiffutils_a-tempname.o: tempname.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-tempname.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-tempname.Tpo -c -o libdiffutils_a-tempname.o `test -f 'tempname.c' || echo '$(srcdir)/'`tempname.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-tempname.Tpo $(DEPDIR)/libdiffutils_a-tempname.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tempname.c' object='libdiffutils_a-tempname.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-tempname.o `test -f 'tempname.c' || echo '$(srcdir)/'`tempname.c + +libdiffutils_a-tempname.obj: tempname.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-tempname.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-tempname.Tpo -c -o libdiffutils_a-tempname.obj `if test -f 'tempname.c'; then $(CYGPATH_W) 'tempname.c'; else $(CYGPATH_W) '$(srcdir)/tempname.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-tempname.Tpo $(DEPDIR)/libdiffutils_a-tempname.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tempname.c' object='libdiffutils_a-tempname.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-tempname.obj `if test -f 'tempname.c'; then $(CYGPATH_W) 'tempname.c'; else $(CYGPATH_W) '$(srcdir)/tempname.c'; fi` + +glthread/libdiffutils_a-threadlib.o: glthread/threadlib.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT glthread/libdiffutils_a-threadlib.o -MD -MP -MF glthread/$(DEPDIR)/libdiffutils_a-threadlib.Tpo -c -o glthread/libdiffutils_a-threadlib.o `test -f 'glthread/threadlib.c' || echo '$(srcdir)/'`glthread/threadlib.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) glthread/$(DEPDIR)/libdiffutils_a-threadlib.Tpo glthread/$(DEPDIR)/libdiffutils_a-threadlib.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='glthread/threadlib.c' object='glthread/libdiffutils_a-threadlib.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o glthread/libdiffutils_a-threadlib.o `test -f 'glthread/threadlib.c' || echo '$(srcdir)/'`glthread/threadlib.c + +glthread/libdiffutils_a-threadlib.obj: glthread/threadlib.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT glthread/libdiffutils_a-threadlib.obj -MD -MP -MF glthread/$(DEPDIR)/libdiffutils_a-threadlib.Tpo -c -o glthread/libdiffutils_a-threadlib.obj `if test -f 'glthread/threadlib.c'; then $(CYGPATH_W) 'glthread/threadlib.c'; else $(CYGPATH_W) '$(srcdir)/glthread/threadlib.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) glthread/$(DEPDIR)/libdiffutils_a-threadlib.Tpo glthread/$(DEPDIR)/libdiffutils_a-threadlib.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='glthread/threadlib.c' object='glthread/libdiffutils_a-threadlib.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o glthread/libdiffutils_a-threadlib.obj `if test -f 'glthread/threadlib.c'; then $(CYGPATH_W) 'glthread/threadlib.c'; else $(CYGPATH_W) '$(srcdir)/glthread/threadlib.c'; fi` + +libdiffutils_a-time_r.o: time_r.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-time_r.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-time_r.Tpo -c -o libdiffutils_a-time_r.o `test -f 'time_r.c' || echo '$(srcdir)/'`time_r.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-time_r.Tpo $(DEPDIR)/libdiffutils_a-time_r.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='time_r.c' object='libdiffutils_a-time_r.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-time_r.o `test -f 'time_r.c' || echo '$(srcdir)/'`time_r.c + +libdiffutils_a-time_r.obj: time_r.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-time_r.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-time_r.Tpo -c -o libdiffutils_a-time_r.obj `if test -f 'time_r.c'; then $(CYGPATH_W) 'time_r.c'; else $(CYGPATH_W) '$(srcdir)/time_r.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-time_r.Tpo $(DEPDIR)/libdiffutils_a-time_r.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='time_r.c' object='libdiffutils_a-time_r.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-time_r.obj `if test -f 'time_r.c'; then $(CYGPATH_W) 'time_r.c'; else $(CYGPATH_W) '$(srcdir)/time_r.c'; fi` + +libdiffutils_a-time_rz.o: time_rz.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-time_rz.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-time_rz.Tpo -c -o libdiffutils_a-time_rz.o `test -f 'time_rz.c' || echo '$(srcdir)/'`time_rz.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-time_rz.Tpo $(DEPDIR)/libdiffutils_a-time_rz.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='time_rz.c' object='libdiffutils_a-time_rz.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-time_rz.o `test -f 'time_rz.c' || echo '$(srcdir)/'`time_rz.c + +libdiffutils_a-time_rz.obj: time_rz.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-time_rz.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-time_rz.Tpo -c -o libdiffutils_a-time_rz.obj `if test -f 'time_rz.c'; then $(CYGPATH_W) 'time_rz.c'; else $(CYGPATH_W) '$(srcdir)/time_rz.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-time_rz.Tpo $(DEPDIR)/libdiffutils_a-time_rz.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='time_rz.c' object='libdiffutils_a-time_rz.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-time_rz.obj `if test -f 'time_rz.c'; then $(CYGPATH_W) 'time_rz.c'; else $(CYGPATH_W) '$(srcdir)/time_rz.c'; fi` + +libdiffutils_a-timegm.o: timegm.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-timegm.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-timegm.Tpo -c -o libdiffutils_a-timegm.o `test -f 'timegm.c' || echo '$(srcdir)/'`timegm.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-timegm.Tpo $(DEPDIR)/libdiffutils_a-timegm.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='timegm.c' object='libdiffutils_a-timegm.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-timegm.o `test -f 'timegm.c' || echo '$(srcdir)/'`timegm.c + +libdiffutils_a-timegm.obj: timegm.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-timegm.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-timegm.Tpo -c -o libdiffutils_a-timegm.obj `if test -f 'timegm.c'; then $(CYGPATH_W) 'timegm.c'; else $(CYGPATH_W) '$(srcdir)/timegm.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-timegm.Tpo $(DEPDIR)/libdiffutils_a-timegm.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='timegm.c' object='libdiffutils_a-timegm.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-timegm.obj `if test -f 'timegm.c'; then $(CYGPATH_W) 'timegm.c'; else $(CYGPATH_W) '$(srcdir)/timegm.c'; fi` + +libdiffutils_a-timespec.o: timespec.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-timespec.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-timespec.Tpo -c -o libdiffutils_a-timespec.o `test -f 'timespec.c' || echo '$(srcdir)/'`timespec.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-timespec.Tpo $(DEPDIR)/libdiffutils_a-timespec.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='timespec.c' object='libdiffutils_a-timespec.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-timespec.o `test -f 'timespec.c' || echo '$(srcdir)/'`timespec.c + +libdiffutils_a-timespec.obj: timespec.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-timespec.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-timespec.Tpo -c -o libdiffutils_a-timespec.obj `if test -f 'timespec.c'; then $(CYGPATH_W) 'timespec.c'; else $(CYGPATH_W) '$(srcdir)/timespec.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-timespec.Tpo $(DEPDIR)/libdiffutils_a-timespec.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='timespec.c' object='libdiffutils_a-timespec.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-timespec.obj `if test -f 'timespec.c'; then $(CYGPATH_W) 'timespec.c'; else $(CYGPATH_W) '$(srcdir)/timespec.c'; fi` + +libdiffutils_a-trim.o: trim.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-trim.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-trim.Tpo -c -o libdiffutils_a-trim.o `test -f 'trim.c' || echo '$(srcdir)/'`trim.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-trim.Tpo $(DEPDIR)/libdiffutils_a-trim.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='trim.c' object='libdiffutils_a-trim.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-trim.o `test -f 'trim.c' || echo '$(srcdir)/'`trim.c + +libdiffutils_a-trim.obj: trim.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-trim.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-trim.Tpo -c -o libdiffutils_a-trim.obj `if test -f 'trim.c'; then $(CYGPATH_W) 'trim.c'; else $(CYGPATH_W) '$(srcdir)/trim.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-trim.Tpo $(DEPDIR)/libdiffutils_a-trim.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='trim.c' object='libdiffutils_a-trim.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-trim.obj `if test -f 'trim.c'; then $(CYGPATH_W) 'trim.c'; else $(CYGPATH_W) '$(srcdir)/trim.c'; fi` + +libdiffutils_a-tzset.o: tzset.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-tzset.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-tzset.Tpo -c -o libdiffutils_a-tzset.o `test -f 'tzset.c' || echo '$(srcdir)/'`tzset.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-tzset.Tpo $(DEPDIR)/libdiffutils_a-tzset.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tzset.c' object='libdiffutils_a-tzset.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-tzset.o `test -f 'tzset.c' || echo '$(srcdir)/'`tzset.c + +libdiffutils_a-tzset.obj: tzset.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-tzset.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-tzset.Tpo -c -o libdiffutils_a-tzset.obj `if test -f 'tzset.c'; then $(CYGPATH_W) 'tzset.c'; else $(CYGPATH_W) '$(srcdir)/tzset.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-tzset.Tpo $(DEPDIR)/libdiffutils_a-tzset.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tzset.c' object='libdiffutils_a-tzset.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-tzset.obj `if test -f 'tzset.c'; then $(CYGPATH_W) 'tzset.c'; else $(CYGPATH_W) '$(srcdir)/tzset.c'; fi` + +libdiffutils_a-unistd.o: unistd.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-unistd.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-unistd.Tpo -c -o libdiffutils_a-unistd.o `test -f 'unistd.c' || echo '$(srcdir)/'`unistd.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-unistd.Tpo $(DEPDIR)/libdiffutils_a-unistd.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='unistd.c' object='libdiffutils_a-unistd.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-unistd.o `test -f 'unistd.c' || echo '$(srcdir)/'`unistd.c + +libdiffutils_a-unistd.obj: unistd.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-unistd.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-unistd.Tpo -c -o libdiffutils_a-unistd.obj `if test -f 'unistd.c'; then $(CYGPATH_W) 'unistd.c'; else $(CYGPATH_W) '$(srcdir)/unistd.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-unistd.Tpo $(DEPDIR)/libdiffutils_a-unistd.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='unistd.c' object='libdiffutils_a-unistd.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-unistd.obj `if test -f 'unistd.c'; then $(CYGPATH_W) 'unistd.c'; else $(CYGPATH_W) '$(srcdir)/unistd.c'; fi` + +unistr/libdiffutils_a-u8-mbtoucr.o: unistr/u8-mbtoucr.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT unistr/libdiffutils_a-u8-mbtoucr.o -MD -MP -MF unistr/$(DEPDIR)/libdiffutils_a-u8-mbtoucr.Tpo -c -o unistr/libdiffutils_a-u8-mbtoucr.o `test -f 'unistr/u8-mbtoucr.c' || echo '$(srcdir)/'`unistr/u8-mbtoucr.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) unistr/$(DEPDIR)/libdiffutils_a-u8-mbtoucr.Tpo unistr/$(DEPDIR)/libdiffutils_a-u8-mbtoucr.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='unistr/u8-mbtoucr.c' object='unistr/libdiffutils_a-u8-mbtoucr.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o unistr/libdiffutils_a-u8-mbtoucr.o `test -f 'unistr/u8-mbtoucr.c' || echo '$(srcdir)/'`unistr/u8-mbtoucr.c + +unistr/libdiffutils_a-u8-mbtoucr.obj: unistr/u8-mbtoucr.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT unistr/libdiffutils_a-u8-mbtoucr.obj -MD -MP -MF unistr/$(DEPDIR)/libdiffutils_a-u8-mbtoucr.Tpo -c -o unistr/libdiffutils_a-u8-mbtoucr.obj `if test -f 'unistr/u8-mbtoucr.c'; then $(CYGPATH_W) 'unistr/u8-mbtoucr.c'; else $(CYGPATH_W) '$(srcdir)/unistr/u8-mbtoucr.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) unistr/$(DEPDIR)/libdiffutils_a-u8-mbtoucr.Tpo unistr/$(DEPDIR)/libdiffutils_a-u8-mbtoucr.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='unistr/u8-mbtoucr.c' object='unistr/libdiffutils_a-u8-mbtoucr.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o unistr/libdiffutils_a-u8-mbtoucr.obj `if test -f 'unistr/u8-mbtoucr.c'; then $(CYGPATH_W) 'unistr/u8-mbtoucr.c'; else $(CYGPATH_W) '$(srcdir)/unistr/u8-mbtoucr.c'; fi` + +unistr/libdiffutils_a-u8-uctomb.o: unistr/u8-uctomb.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT unistr/libdiffutils_a-u8-uctomb.o -MD -MP -MF unistr/$(DEPDIR)/libdiffutils_a-u8-uctomb.Tpo -c -o unistr/libdiffutils_a-u8-uctomb.o `test -f 'unistr/u8-uctomb.c' || echo '$(srcdir)/'`unistr/u8-uctomb.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) unistr/$(DEPDIR)/libdiffutils_a-u8-uctomb.Tpo unistr/$(DEPDIR)/libdiffutils_a-u8-uctomb.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='unistr/u8-uctomb.c' object='unistr/libdiffutils_a-u8-uctomb.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o unistr/libdiffutils_a-u8-uctomb.o `test -f 'unistr/u8-uctomb.c' || echo '$(srcdir)/'`unistr/u8-uctomb.c + +unistr/libdiffutils_a-u8-uctomb.obj: unistr/u8-uctomb.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT unistr/libdiffutils_a-u8-uctomb.obj -MD -MP -MF unistr/$(DEPDIR)/libdiffutils_a-u8-uctomb.Tpo -c -o unistr/libdiffutils_a-u8-uctomb.obj `if test -f 'unistr/u8-uctomb.c'; then $(CYGPATH_W) 'unistr/u8-uctomb.c'; else $(CYGPATH_W) '$(srcdir)/unistr/u8-uctomb.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) unistr/$(DEPDIR)/libdiffutils_a-u8-uctomb.Tpo unistr/$(DEPDIR)/libdiffutils_a-u8-uctomb.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='unistr/u8-uctomb.c' object='unistr/libdiffutils_a-u8-uctomb.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o unistr/libdiffutils_a-u8-uctomb.obj `if test -f 'unistr/u8-uctomb.c'; then $(CYGPATH_W) 'unistr/u8-uctomb.c'; else $(CYGPATH_W) '$(srcdir)/unistr/u8-uctomb.c'; fi` + +unistr/libdiffutils_a-u8-uctomb-aux.o: unistr/u8-uctomb-aux.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT unistr/libdiffutils_a-u8-uctomb-aux.o -MD -MP -MF unistr/$(DEPDIR)/libdiffutils_a-u8-uctomb-aux.Tpo -c -o unistr/libdiffutils_a-u8-uctomb-aux.o `test -f 'unistr/u8-uctomb-aux.c' || echo '$(srcdir)/'`unistr/u8-uctomb-aux.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) unistr/$(DEPDIR)/libdiffutils_a-u8-uctomb-aux.Tpo unistr/$(DEPDIR)/libdiffutils_a-u8-uctomb-aux.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='unistr/u8-uctomb-aux.c' object='unistr/libdiffutils_a-u8-uctomb-aux.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o unistr/libdiffutils_a-u8-uctomb-aux.o `test -f 'unistr/u8-uctomb-aux.c' || echo '$(srcdir)/'`unistr/u8-uctomb-aux.c + +unistr/libdiffutils_a-u8-uctomb-aux.obj: unistr/u8-uctomb-aux.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT unistr/libdiffutils_a-u8-uctomb-aux.obj -MD -MP -MF unistr/$(DEPDIR)/libdiffutils_a-u8-uctomb-aux.Tpo -c -o unistr/libdiffutils_a-u8-uctomb-aux.obj `if test -f 'unistr/u8-uctomb-aux.c'; then $(CYGPATH_W) 'unistr/u8-uctomb-aux.c'; else $(CYGPATH_W) '$(srcdir)/unistr/u8-uctomb-aux.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) unistr/$(DEPDIR)/libdiffutils_a-u8-uctomb-aux.Tpo unistr/$(DEPDIR)/libdiffutils_a-u8-uctomb-aux.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='unistr/u8-uctomb-aux.c' object='unistr/libdiffutils_a-u8-uctomb-aux.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o unistr/libdiffutils_a-u8-uctomb-aux.obj `if test -f 'unistr/u8-uctomb-aux.c'; then $(CYGPATH_W) 'unistr/u8-uctomb-aux.c'; else $(CYGPATH_W) '$(srcdir)/unistr/u8-uctomb-aux.c'; fi` + +uniwidth/libdiffutils_a-width.o: uniwidth/width.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT uniwidth/libdiffutils_a-width.o -MD -MP -MF uniwidth/$(DEPDIR)/libdiffutils_a-width.Tpo -c -o uniwidth/libdiffutils_a-width.o `test -f 'uniwidth/width.c' || echo '$(srcdir)/'`uniwidth/width.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) uniwidth/$(DEPDIR)/libdiffutils_a-width.Tpo uniwidth/$(DEPDIR)/libdiffutils_a-width.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='uniwidth/width.c' object='uniwidth/libdiffutils_a-width.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o uniwidth/libdiffutils_a-width.o `test -f 'uniwidth/width.c' || echo '$(srcdir)/'`uniwidth/width.c + +uniwidth/libdiffutils_a-width.obj: uniwidth/width.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT uniwidth/libdiffutils_a-width.obj -MD -MP -MF uniwidth/$(DEPDIR)/libdiffutils_a-width.Tpo -c -o uniwidth/libdiffutils_a-width.obj `if test -f 'uniwidth/width.c'; then $(CYGPATH_W) 'uniwidth/width.c'; else $(CYGPATH_W) '$(srcdir)/uniwidth/width.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) uniwidth/$(DEPDIR)/libdiffutils_a-width.Tpo uniwidth/$(DEPDIR)/libdiffutils_a-width.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='uniwidth/width.c' object='uniwidth/libdiffutils_a-width.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o uniwidth/libdiffutils_a-width.obj `if test -f 'uniwidth/width.c'; then $(CYGPATH_W) 'uniwidth/width.c'; else $(CYGPATH_W) '$(srcdir)/uniwidth/width.c'; fi` + +libdiffutils_a-unsetenv.o: unsetenv.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-unsetenv.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-unsetenv.Tpo -c -o libdiffutils_a-unsetenv.o `test -f 'unsetenv.c' || echo '$(srcdir)/'`unsetenv.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-unsetenv.Tpo $(DEPDIR)/libdiffutils_a-unsetenv.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='unsetenv.c' object='libdiffutils_a-unsetenv.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-unsetenv.o `test -f 'unsetenv.c' || echo '$(srcdir)/'`unsetenv.c + +libdiffutils_a-unsetenv.obj: unsetenv.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-unsetenv.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-unsetenv.Tpo -c -o libdiffutils_a-unsetenv.obj `if test -f 'unsetenv.c'; then $(CYGPATH_W) 'unsetenv.c'; else $(CYGPATH_W) '$(srcdir)/unsetenv.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-unsetenv.Tpo $(DEPDIR)/libdiffutils_a-unsetenv.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='unsetenv.c' object='libdiffutils_a-unsetenv.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-unsetenv.obj `if test -f 'unsetenv.c'; then $(CYGPATH_W) 'unsetenv.c'; else $(CYGPATH_W) '$(srcdir)/unsetenv.c'; fi` + +libdiffutils_a-version-etc.o: version-etc.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-version-etc.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-version-etc.Tpo -c -o libdiffutils_a-version-etc.o `test -f 'version-etc.c' || echo '$(srcdir)/'`version-etc.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-version-etc.Tpo $(DEPDIR)/libdiffutils_a-version-etc.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='version-etc.c' object='libdiffutils_a-version-etc.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-version-etc.o `test -f 'version-etc.c' || echo '$(srcdir)/'`version-etc.c + +libdiffutils_a-version-etc.obj: version-etc.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-version-etc.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-version-etc.Tpo -c -o libdiffutils_a-version-etc.obj `if test -f 'version-etc.c'; then $(CYGPATH_W) 'version-etc.c'; else $(CYGPATH_W) '$(srcdir)/version-etc.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-version-etc.Tpo $(DEPDIR)/libdiffutils_a-version-etc.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='version-etc.c' object='libdiffutils_a-version-etc.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-version-etc.obj `if test -f 'version-etc.c'; then $(CYGPATH_W) 'version-etc.c'; else $(CYGPATH_W) '$(srcdir)/version-etc.c'; fi` + +libdiffutils_a-version-etc-fsf.o: version-etc-fsf.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-version-etc-fsf.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-version-etc-fsf.Tpo -c -o libdiffutils_a-version-etc-fsf.o `test -f 'version-etc-fsf.c' || echo '$(srcdir)/'`version-etc-fsf.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-version-etc-fsf.Tpo $(DEPDIR)/libdiffutils_a-version-etc-fsf.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='version-etc-fsf.c' object='libdiffutils_a-version-etc-fsf.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-version-etc-fsf.o `test -f 'version-etc-fsf.c' || echo '$(srcdir)/'`version-etc-fsf.c + +libdiffutils_a-version-etc-fsf.obj: version-etc-fsf.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-version-etc-fsf.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-version-etc-fsf.Tpo -c -o libdiffutils_a-version-etc-fsf.obj `if test -f 'version-etc-fsf.c'; then $(CYGPATH_W) 'version-etc-fsf.c'; else $(CYGPATH_W) '$(srcdir)/version-etc-fsf.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-version-etc-fsf.Tpo $(DEPDIR)/libdiffutils_a-version-etc-fsf.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='version-etc-fsf.c' object='libdiffutils_a-version-etc-fsf.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-version-etc-fsf.obj `if test -f 'version-etc-fsf.c'; then $(CYGPATH_W) 'version-etc-fsf.c'; else $(CYGPATH_W) '$(srcdir)/version-etc-fsf.c'; fi` + +libdiffutils_a-wcrtomb.o: wcrtomb.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-wcrtomb.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-wcrtomb.Tpo -c -o libdiffutils_a-wcrtomb.o `test -f 'wcrtomb.c' || echo '$(srcdir)/'`wcrtomb.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-wcrtomb.Tpo $(DEPDIR)/libdiffutils_a-wcrtomb.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='wcrtomb.c' object='libdiffutils_a-wcrtomb.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-wcrtomb.o `test -f 'wcrtomb.c' || echo '$(srcdir)/'`wcrtomb.c + +libdiffutils_a-wcrtomb.obj: wcrtomb.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-wcrtomb.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-wcrtomb.Tpo -c -o libdiffutils_a-wcrtomb.obj `if test -f 'wcrtomb.c'; then $(CYGPATH_W) 'wcrtomb.c'; else $(CYGPATH_W) '$(srcdir)/wcrtomb.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-wcrtomb.Tpo $(DEPDIR)/libdiffutils_a-wcrtomb.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='wcrtomb.c' object='libdiffutils_a-wcrtomb.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-wcrtomb.obj `if test -f 'wcrtomb.c'; then $(CYGPATH_W) 'wcrtomb.c'; else $(CYGPATH_W) '$(srcdir)/wcrtomb.c'; fi` + +libdiffutils_a-wctype-h.o: wctype-h.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-wctype-h.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-wctype-h.Tpo -c -o libdiffutils_a-wctype-h.o `test -f 'wctype-h.c' || echo '$(srcdir)/'`wctype-h.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-wctype-h.Tpo $(DEPDIR)/libdiffutils_a-wctype-h.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='wctype-h.c' object='libdiffutils_a-wctype-h.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-wctype-h.o `test -f 'wctype-h.c' || echo '$(srcdir)/'`wctype-h.c + +libdiffutils_a-wctype-h.obj: wctype-h.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-wctype-h.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-wctype-h.Tpo -c -o libdiffutils_a-wctype-h.obj `if test -f 'wctype-h.c'; then $(CYGPATH_W) 'wctype-h.c'; else $(CYGPATH_W) '$(srcdir)/wctype-h.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-wctype-h.Tpo $(DEPDIR)/libdiffutils_a-wctype-h.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='wctype-h.c' object='libdiffutils_a-wctype-h.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-wctype-h.obj `if test -f 'wctype-h.c'; then $(CYGPATH_W) 'wctype-h.c'; else $(CYGPATH_W) '$(srcdir)/wctype-h.c'; fi` + +libdiffutils_a-wcwidth.o: wcwidth.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-wcwidth.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-wcwidth.Tpo -c -o libdiffutils_a-wcwidth.o `test -f 'wcwidth.c' || echo '$(srcdir)/'`wcwidth.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-wcwidth.Tpo $(DEPDIR)/libdiffutils_a-wcwidth.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='wcwidth.c' object='libdiffutils_a-wcwidth.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-wcwidth.o `test -f 'wcwidth.c' || echo '$(srcdir)/'`wcwidth.c + +libdiffutils_a-wcwidth.obj: wcwidth.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-wcwidth.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-wcwidth.Tpo -c -o libdiffutils_a-wcwidth.obj `if test -f 'wcwidth.c'; then $(CYGPATH_W) 'wcwidth.c'; else $(CYGPATH_W) '$(srcdir)/wcwidth.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-wcwidth.Tpo $(DEPDIR)/libdiffutils_a-wcwidth.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='wcwidth.c' object='libdiffutils_a-wcwidth.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-wcwidth.obj `if test -f 'wcwidth.c'; then $(CYGPATH_W) 'wcwidth.c'; else $(CYGPATH_W) '$(srcdir)/wcwidth.c'; fi` + +libdiffutils_a-windows-mutex.o: windows-mutex.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-windows-mutex.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-windows-mutex.Tpo -c -o libdiffutils_a-windows-mutex.o `test -f 'windows-mutex.c' || echo '$(srcdir)/'`windows-mutex.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-windows-mutex.Tpo $(DEPDIR)/libdiffutils_a-windows-mutex.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='windows-mutex.c' object='libdiffutils_a-windows-mutex.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-windows-mutex.o `test -f 'windows-mutex.c' || echo '$(srcdir)/'`windows-mutex.c + +libdiffutils_a-windows-mutex.obj: windows-mutex.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-windows-mutex.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-windows-mutex.Tpo -c -o libdiffutils_a-windows-mutex.obj `if test -f 'windows-mutex.c'; then $(CYGPATH_W) 'windows-mutex.c'; else $(CYGPATH_W) '$(srcdir)/windows-mutex.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-windows-mutex.Tpo $(DEPDIR)/libdiffutils_a-windows-mutex.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='windows-mutex.c' object='libdiffutils_a-windows-mutex.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-windows-mutex.obj `if test -f 'windows-mutex.c'; then $(CYGPATH_W) 'windows-mutex.c'; else $(CYGPATH_W) '$(srcdir)/windows-mutex.c'; fi` + +libdiffutils_a-windows-once.o: windows-once.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-windows-once.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-windows-once.Tpo -c -o libdiffutils_a-windows-once.o `test -f 'windows-once.c' || echo '$(srcdir)/'`windows-once.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-windows-once.Tpo $(DEPDIR)/libdiffutils_a-windows-once.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='windows-once.c' object='libdiffutils_a-windows-once.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-windows-once.o `test -f 'windows-once.c' || echo '$(srcdir)/'`windows-once.c + +libdiffutils_a-windows-once.obj: windows-once.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-windows-once.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-windows-once.Tpo -c -o libdiffutils_a-windows-once.obj `if test -f 'windows-once.c'; then $(CYGPATH_W) 'windows-once.c'; else $(CYGPATH_W) '$(srcdir)/windows-once.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-windows-once.Tpo $(DEPDIR)/libdiffutils_a-windows-once.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='windows-once.c' object='libdiffutils_a-windows-once.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-windows-once.obj `if test -f 'windows-once.c'; then $(CYGPATH_W) 'windows-once.c'; else $(CYGPATH_W) '$(srcdir)/windows-once.c'; fi` + +libdiffutils_a-windows-recmutex.o: windows-recmutex.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-windows-recmutex.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-windows-recmutex.Tpo -c -o libdiffutils_a-windows-recmutex.o `test -f 'windows-recmutex.c' || echo '$(srcdir)/'`windows-recmutex.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-windows-recmutex.Tpo $(DEPDIR)/libdiffutils_a-windows-recmutex.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='windows-recmutex.c' object='libdiffutils_a-windows-recmutex.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-windows-recmutex.o `test -f 'windows-recmutex.c' || echo '$(srcdir)/'`windows-recmutex.c + +libdiffutils_a-windows-recmutex.obj: windows-recmutex.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-windows-recmutex.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-windows-recmutex.Tpo -c -o libdiffutils_a-windows-recmutex.obj `if test -f 'windows-recmutex.c'; then $(CYGPATH_W) 'windows-recmutex.c'; else $(CYGPATH_W) '$(srcdir)/windows-recmutex.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-windows-recmutex.Tpo $(DEPDIR)/libdiffutils_a-windows-recmutex.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='windows-recmutex.c' object='libdiffutils_a-windows-recmutex.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-windows-recmutex.obj `if test -f 'windows-recmutex.c'; then $(CYGPATH_W) 'windows-recmutex.c'; else $(CYGPATH_W) '$(srcdir)/windows-recmutex.c'; fi` + +libdiffutils_a-windows-rwlock.o: windows-rwlock.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-windows-rwlock.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-windows-rwlock.Tpo -c -o libdiffutils_a-windows-rwlock.o `test -f 'windows-rwlock.c' || echo '$(srcdir)/'`windows-rwlock.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-windows-rwlock.Tpo $(DEPDIR)/libdiffutils_a-windows-rwlock.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='windows-rwlock.c' object='libdiffutils_a-windows-rwlock.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-windows-rwlock.o `test -f 'windows-rwlock.c' || echo '$(srcdir)/'`windows-rwlock.c + +libdiffutils_a-windows-rwlock.obj: windows-rwlock.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-windows-rwlock.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-windows-rwlock.Tpo -c -o libdiffutils_a-windows-rwlock.obj `if test -f 'windows-rwlock.c'; then $(CYGPATH_W) 'windows-rwlock.c'; else $(CYGPATH_W) '$(srcdir)/windows-rwlock.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-windows-rwlock.Tpo $(DEPDIR)/libdiffutils_a-windows-rwlock.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='windows-rwlock.c' object='libdiffutils_a-windows-rwlock.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-windows-rwlock.obj `if test -f 'windows-rwlock.c'; then $(CYGPATH_W) 'windows-rwlock.c'; else $(CYGPATH_W) '$(srcdir)/windows-rwlock.c'; fi` + +libdiffutils_a-wmemchr.o: wmemchr.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-wmemchr.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-wmemchr.Tpo -c -o libdiffutils_a-wmemchr.o `test -f 'wmemchr.c' || echo '$(srcdir)/'`wmemchr.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-wmemchr.Tpo $(DEPDIR)/libdiffutils_a-wmemchr.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='wmemchr.c' object='libdiffutils_a-wmemchr.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-wmemchr.o `test -f 'wmemchr.c' || echo '$(srcdir)/'`wmemchr.c + +libdiffutils_a-wmemchr.obj: wmemchr.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-wmemchr.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-wmemchr.Tpo -c -o libdiffutils_a-wmemchr.obj `if test -f 'wmemchr.c'; then $(CYGPATH_W) 'wmemchr.c'; else $(CYGPATH_W) '$(srcdir)/wmemchr.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-wmemchr.Tpo $(DEPDIR)/libdiffutils_a-wmemchr.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='wmemchr.c' object='libdiffutils_a-wmemchr.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-wmemchr.obj `if test -f 'wmemchr.c'; then $(CYGPATH_W) 'wmemchr.c'; else $(CYGPATH_W) '$(srcdir)/wmemchr.c'; fi` + +libdiffutils_a-wmempcpy.o: wmempcpy.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-wmempcpy.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-wmempcpy.Tpo -c -o libdiffutils_a-wmempcpy.o `test -f 'wmempcpy.c' || echo '$(srcdir)/'`wmempcpy.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-wmempcpy.Tpo $(DEPDIR)/libdiffutils_a-wmempcpy.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='wmempcpy.c' object='libdiffutils_a-wmempcpy.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-wmempcpy.o `test -f 'wmempcpy.c' || echo '$(srcdir)/'`wmempcpy.c + +libdiffutils_a-wmempcpy.obj: wmempcpy.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-wmempcpy.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-wmempcpy.Tpo -c -o libdiffutils_a-wmempcpy.obj `if test -f 'wmempcpy.c'; then $(CYGPATH_W) 'wmempcpy.c'; else $(CYGPATH_W) '$(srcdir)/wmempcpy.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-wmempcpy.Tpo $(DEPDIR)/libdiffutils_a-wmempcpy.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='wmempcpy.c' object='libdiffutils_a-wmempcpy.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-wmempcpy.obj `if test -f 'wmempcpy.c'; then $(CYGPATH_W) 'wmempcpy.c'; else $(CYGPATH_W) '$(srcdir)/wmempcpy.c'; fi` + +libdiffutils_a-xmalloc.o: xmalloc.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-xmalloc.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-xmalloc.Tpo -c -o libdiffutils_a-xmalloc.o `test -f 'xmalloc.c' || echo '$(srcdir)/'`xmalloc.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-xmalloc.Tpo $(DEPDIR)/libdiffutils_a-xmalloc.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='xmalloc.c' object='libdiffutils_a-xmalloc.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-xmalloc.o `test -f 'xmalloc.c' || echo '$(srcdir)/'`xmalloc.c + +libdiffutils_a-xmalloc.obj: xmalloc.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-xmalloc.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-xmalloc.Tpo -c -o libdiffutils_a-xmalloc.obj `if test -f 'xmalloc.c'; then $(CYGPATH_W) 'xmalloc.c'; else $(CYGPATH_W) '$(srcdir)/xmalloc.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-xmalloc.Tpo $(DEPDIR)/libdiffutils_a-xmalloc.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='xmalloc.c' object='libdiffutils_a-xmalloc.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-xmalloc.obj `if test -f 'xmalloc.c'; then $(CYGPATH_W) 'xmalloc.c'; else $(CYGPATH_W) '$(srcdir)/xmalloc.c'; fi` + +libdiffutils_a-xalloc-die.o: xalloc-die.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-xalloc-die.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-xalloc-die.Tpo -c -o libdiffutils_a-xalloc-die.o `test -f 'xalloc-die.c' || echo '$(srcdir)/'`xalloc-die.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-xalloc-die.Tpo $(DEPDIR)/libdiffutils_a-xalloc-die.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='xalloc-die.c' object='libdiffutils_a-xalloc-die.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-xalloc-die.o `test -f 'xalloc-die.c' || echo '$(srcdir)/'`xalloc-die.c + +libdiffutils_a-xalloc-die.obj: xalloc-die.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-xalloc-die.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-xalloc-die.Tpo -c -o libdiffutils_a-xalloc-die.obj `if test -f 'xalloc-die.c'; then $(CYGPATH_W) 'xalloc-die.c'; else $(CYGPATH_W) '$(srcdir)/xalloc-die.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-xalloc-die.Tpo $(DEPDIR)/libdiffutils_a-xalloc-die.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='xalloc-die.c' object='libdiffutils_a-xalloc-die.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-xalloc-die.obj `if test -f 'xalloc-die.c'; then $(CYGPATH_W) 'xalloc-die.c'; else $(CYGPATH_W) '$(srcdir)/xalloc-die.c'; fi` + +libdiffutils_a-xfreopen.o: xfreopen.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-xfreopen.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-xfreopen.Tpo -c -o libdiffutils_a-xfreopen.o `test -f 'xfreopen.c' || echo '$(srcdir)/'`xfreopen.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-xfreopen.Tpo $(DEPDIR)/libdiffutils_a-xfreopen.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='xfreopen.c' object='libdiffutils_a-xfreopen.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-xfreopen.o `test -f 'xfreopen.c' || echo '$(srcdir)/'`xfreopen.c + +libdiffutils_a-xfreopen.obj: xfreopen.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-xfreopen.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-xfreopen.Tpo -c -o libdiffutils_a-xfreopen.obj `if test -f 'xfreopen.c'; then $(CYGPATH_W) 'xfreopen.c'; else $(CYGPATH_W) '$(srcdir)/xfreopen.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-xfreopen.Tpo $(DEPDIR)/libdiffutils_a-xfreopen.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='xfreopen.c' object='libdiffutils_a-xfreopen.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-xfreopen.obj `if test -f 'xfreopen.c'; then $(CYGPATH_W) 'xfreopen.c'; else $(CYGPATH_W) '$(srcdir)/xfreopen.c'; fi` + +libdiffutils_a-xmalloca.o: xmalloca.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-xmalloca.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-xmalloca.Tpo -c -o libdiffutils_a-xmalloca.o `test -f 'xmalloca.c' || echo '$(srcdir)/'`xmalloca.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-xmalloca.Tpo $(DEPDIR)/libdiffutils_a-xmalloca.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='xmalloca.c' object='libdiffutils_a-xmalloca.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-xmalloca.o `test -f 'xmalloca.c' || echo '$(srcdir)/'`xmalloca.c + +libdiffutils_a-xmalloca.obj: xmalloca.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-xmalloca.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-xmalloca.Tpo -c -o libdiffutils_a-xmalloca.obj `if test -f 'xmalloca.c'; then $(CYGPATH_W) 'xmalloca.c'; else $(CYGPATH_W) '$(srcdir)/xmalloca.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-xmalloca.Tpo $(DEPDIR)/libdiffutils_a-xmalloca.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='xmalloca.c' object='libdiffutils_a-xmalloca.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-xmalloca.obj `if test -f 'xmalloca.c'; then $(CYGPATH_W) 'xmalloca.c'; else $(CYGPATH_W) '$(srcdir)/xmalloca.c'; fi` + +libdiffutils_a-xreadlink.o: xreadlink.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-xreadlink.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-xreadlink.Tpo -c -o libdiffutils_a-xreadlink.o `test -f 'xreadlink.c' || echo '$(srcdir)/'`xreadlink.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-xreadlink.Tpo $(DEPDIR)/libdiffutils_a-xreadlink.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='xreadlink.c' object='libdiffutils_a-xreadlink.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-xreadlink.o `test -f 'xreadlink.c' || echo '$(srcdir)/'`xreadlink.c + +libdiffutils_a-xreadlink.obj: xreadlink.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-xreadlink.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-xreadlink.Tpo -c -o libdiffutils_a-xreadlink.obj `if test -f 'xreadlink.c'; then $(CYGPATH_W) 'xreadlink.c'; else $(CYGPATH_W) '$(srcdir)/xreadlink.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-xreadlink.Tpo $(DEPDIR)/libdiffutils_a-xreadlink.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='xreadlink.c' object='libdiffutils_a-xreadlink.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-xreadlink.obj `if test -f 'xreadlink.c'; then $(CYGPATH_W) 'xreadlink.c'; else $(CYGPATH_W) '$(srcdir)/xreadlink.c'; fi` + +libdiffutils_a-xstdopen.o: xstdopen.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-xstdopen.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-xstdopen.Tpo -c -o libdiffutils_a-xstdopen.o `test -f 'xstdopen.c' || echo '$(srcdir)/'`xstdopen.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-xstdopen.Tpo $(DEPDIR)/libdiffutils_a-xstdopen.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='xstdopen.c' object='libdiffutils_a-xstdopen.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-xstdopen.o `test -f 'xstdopen.c' || echo '$(srcdir)/'`xstdopen.c + +libdiffutils_a-xstdopen.obj: xstdopen.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-xstdopen.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-xstdopen.Tpo -c -o libdiffutils_a-xstdopen.obj `if test -f 'xstdopen.c'; then $(CYGPATH_W) 'xstdopen.c'; else $(CYGPATH_W) '$(srcdir)/xstdopen.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-xstdopen.Tpo $(DEPDIR)/libdiffutils_a-xstdopen.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='xstdopen.c' object='libdiffutils_a-xstdopen.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-xstdopen.obj `if test -f 'xstdopen.c'; then $(CYGPATH_W) 'xstdopen.c'; else $(CYGPATH_W) '$(srcdir)/xstdopen.c'; fi` + +libdiffutils_a-xstriconv.o: xstriconv.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-xstriconv.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-xstriconv.Tpo -c -o libdiffutils_a-xstriconv.o `test -f 'xstriconv.c' || echo '$(srcdir)/'`xstriconv.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-xstriconv.Tpo $(DEPDIR)/libdiffutils_a-xstriconv.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='xstriconv.c' object='libdiffutils_a-xstriconv.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-xstriconv.o `test -f 'xstriconv.c' || echo '$(srcdir)/'`xstriconv.c + +libdiffutils_a-xstriconv.obj: xstriconv.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-xstriconv.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-xstriconv.Tpo -c -o libdiffutils_a-xstriconv.obj `if test -f 'xstriconv.c'; then $(CYGPATH_W) 'xstriconv.c'; else $(CYGPATH_W) '$(srcdir)/xstriconv.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-xstriconv.Tpo $(DEPDIR)/libdiffutils_a-xstriconv.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='xstriconv.c' object='libdiffutils_a-xstriconv.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-xstriconv.obj `if test -f 'xstriconv.c'; then $(CYGPATH_W) 'xstriconv.c'; else $(CYGPATH_W) '$(srcdir)/xstriconv.c'; fi` + +libdiffutils_a-xstrtoimax.o: xstrtoimax.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-xstrtoimax.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-xstrtoimax.Tpo -c -o libdiffutils_a-xstrtoimax.o `test -f 'xstrtoimax.c' || echo '$(srcdir)/'`xstrtoimax.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-xstrtoimax.Tpo $(DEPDIR)/libdiffutils_a-xstrtoimax.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='xstrtoimax.c' object='libdiffutils_a-xstrtoimax.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-xstrtoimax.o `test -f 'xstrtoimax.c' || echo '$(srcdir)/'`xstrtoimax.c + +libdiffutils_a-xstrtoimax.obj: xstrtoimax.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-xstrtoimax.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-xstrtoimax.Tpo -c -o libdiffutils_a-xstrtoimax.obj `if test -f 'xstrtoimax.c'; then $(CYGPATH_W) 'xstrtoimax.c'; else $(CYGPATH_W) '$(srcdir)/xstrtoimax.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-xstrtoimax.Tpo $(DEPDIR)/libdiffutils_a-xstrtoimax.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='xstrtoimax.c' object='libdiffutils_a-xstrtoimax.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-xstrtoimax.obj `if test -f 'xstrtoimax.c'; then $(CYGPATH_W) 'xstrtoimax.c'; else $(CYGPATH_W) '$(srcdir)/xstrtoimax.c'; fi` + +libdiffutils_a-xstrtol.o: xstrtol.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-xstrtol.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-xstrtol.Tpo -c -o libdiffutils_a-xstrtol.o `test -f 'xstrtol.c' || echo '$(srcdir)/'`xstrtol.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-xstrtol.Tpo $(DEPDIR)/libdiffutils_a-xstrtol.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='xstrtol.c' object='libdiffutils_a-xstrtol.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-xstrtol.o `test -f 'xstrtol.c' || echo '$(srcdir)/'`xstrtol.c + +libdiffutils_a-xstrtol.obj: xstrtol.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-xstrtol.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-xstrtol.Tpo -c -o libdiffutils_a-xstrtol.obj `if test -f 'xstrtol.c'; then $(CYGPATH_W) 'xstrtol.c'; else $(CYGPATH_W) '$(srcdir)/xstrtol.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-xstrtol.Tpo $(DEPDIR)/libdiffutils_a-xstrtol.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='xstrtol.c' object='libdiffutils_a-xstrtol.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-xstrtol.obj `if test -f 'xstrtol.c'; then $(CYGPATH_W) 'xstrtol.c'; else $(CYGPATH_W) '$(srcdir)/xstrtol.c'; fi` + +libdiffutils_a-xstrtoul.o: xstrtoul.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-xstrtoul.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-xstrtoul.Tpo -c -o libdiffutils_a-xstrtoul.o `test -f 'xstrtoul.c' || echo '$(srcdir)/'`xstrtoul.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-xstrtoul.Tpo $(DEPDIR)/libdiffutils_a-xstrtoul.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='xstrtoul.c' object='libdiffutils_a-xstrtoul.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-xstrtoul.o `test -f 'xstrtoul.c' || echo '$(srcdir)/'`xstrtoul.c + +libdiffutils_a-xstrtoul.obj: xstrtoul.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-xstrtoul.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-xstrtoul.Tpo -c -o libdiffutils_a-xstrtoul.obj `if test -f 'xstrtoul.c'; then $(CYGPATH_W) 'xstrtoul.c'; else $(CYGPATH_W) '$(srcdir)/xstrtoul.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-xstrtoul.Tpo $(DEPDIR)/libdiffutils_a-xstrtoul.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='xstrtoul.c' object='libdiffutils_a-xstrtoul.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-xstrtoul.obj `if test -f 'xstrtoul.c'; then $(CYGPATH_W) 'xstrtoul.c'; else $(CYGPATH_W) '$(srcdir)/xstrtoul.c'; fi` + +libdiffutils_a-cmpbuf.o: cmpbuf.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-cmpbuf.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-cmpbuf.Tpo -c -o libdiffutils_a-cmpbuf.o `test -f 'cmpbuf.c' || echo '$(srcdir)/'`cmpbuf.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-cmpbuf.Tpo $(DEPDIR)/libdiffutils_a-cmpbuf.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='cmpbuf.c' object='libdiffutils_a-cmpbuf.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-cmpbuf.o `test -f 'cmpbuf.c' || echo '$(srcdir)/'`cmpbuf.c + +libdiffutils_a-cmpbuf.obj: cmpbuf.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-cmpbuf.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-cmpbuf.Tpo -c -o libdiffutils_a-cmpbuf.obj `if test -f 'cmpbuf.c'; then $(CYGPATH_W) 'cmpbuf.c'; else $(CYGPATH_W) '$(srcdir)/cmpbuf.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-cmpbuf.Tpo $(DEPDIR)/libdiffutils_a-cmpbuf.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='cmpbuf.c' object='libdiffutils_a-cmpbuf.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-cmpbuf.obj `if test -f 'cmpbuf.c'; then $(CYGPATH_W) 'cmpbuf.c'; else $(CYGPATH_W) '$(srcdir)/cmpbuf.c'; fi` + +libdiffutils_a-calloc.o: calloc.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-calloc.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-calloc.Tpo -c -o libdiffutils_a-calloc.o `test -f 'calloc.c' || echo '$(srcdir)/'`calloc.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-calloc.Tpo $(DEPDIR)/libdiffutils_a-calloc.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='calloc.c' object='libdiffutils_a-calloc.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-calloc.o `test -f 'calloc.c' || echo '$(srcdir)/'`calloc.c + +libdiffutils_a-calloc.obj: calloc.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-calloc.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-calloc.Tpo -c -o libdiffutils_a-calloc.obj `if test -f 'calloc.c'; then $(CYGPATH_W) 'calloc.c'; else $(CYGPATH_W) '$(srcdir)/calloc.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-calloc.Tpo $(DEPDIR)/libdiffutils_a-calloc.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='calloc.c' object='libdiffutils_a-calloc.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-calloc.obj `if test -f 'calloc.c'; then $(CYGPATH_W) 'calloc.c'; else $(CYGPATH_W) '$(srcdir)/calloc.c'; fi` + +libdiffutils_a-fnmatch.o: fnmatch.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-fnmatch.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-fnmatch.Tpo -c -o libdiffutils_a-fnmatch.o `test -f 'fnmatch.c' || echo '$(srcdir)/'`fnmatch.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-fnmatch.Tpo $(DEPDIR)/libdiffutils_a-fnmatch.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fnmatch.c' object='libdiffutils_a-fnmatch.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-fnmatch.o `test -f 'fnmatch.c' || echo '$(srcdir)/'`fnmatch.c + +libdiffutils_a-fnmatch.obj: fnmatch.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-fnmatch.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-fnmatch.Tpo -c -o libdiffutils_a-fnmatch.obj `if test -f 'fnmatch.c'; then $(CYGPATH_W) 'fnmatch.c'; else $(CYGPATH_W) '$(srcdir)/fnmatch.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-fnmatch.Tpo $(DEPDIR)/libdiffutils_a-fnmatch.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fnmatch.c' object='libdiffutils_a-fnmatch.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-fnmatch.obj `if test -f 'fnmatch.c'; then $(CYGPATH_W) 'fnmatch.c'; else $(CYGPATH_W) '$(srcdir)/fnmatch.c'; fi` + +libdiffutils_a-fnmatch_loop.o: fnmatch_loop.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-fnmatch_loop.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-fnmatch_loop.Tpo -c -o libdiffutils_a-fnmatch_loop.o `test -f 'fnmatch_loop.c' || echo '$(srcdir)/'`fnmatch_loop.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-fnmatch_loop.Tpo $(DEPDIR)/libdiffutils_a-fnmatch_loop.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fnmatch_loop.c' object='libdiffutils_a-fnmatch_loop.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-fnmatch_loop.o `test -f 'fnmatch_loop.c' || echo '$(srcdir)/'`fnmatch_loop.c + +libdiffutils_a-fnmatch_loop.obj: fnmatch_loop.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-fnmatch_loop.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-fnmatch_loop.Tpo -c -o libdiffutils_a-fnmatch_loop.obj `if test -f 'fnmatch_loop.c'; then $(CYGPATH_W) 'fnmatch_loop.c'; else $(CYGPATH_W) '$(srcdir)/fnmatch_loop.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-fnmatch_loop.Tpo $(DEPDIR)/libdiffutils_a-fnmatch_loop.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fnmatch_loop.c' object='libdiffutils_a-fnmatch_loop.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-fnmatch_loop.obj `if test -f 'fnmatch_loop.c'; then $(CYGPATH_W) 'fnmatch_loop.c'; else $(CYGPATH_W) '$(srcdir)/fnmatch_loop.c'; fi` + +libdiffutils_a-fopen.o: fopen.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-fopen.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-fopen.Tpo -c -o libdiffutils_a-fopen.o `test -f 'fopen.c' || echo '$(srcdir)/'`fopen.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-fopen.Tpo $(DEPDIR)/libdiffutils_a-fopen.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fopen.c' object='libdiffutils_a-fopen.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-fopen.o `test -f 'fopen.c' || echo '$(srcdir)/'`fopen.c + +libdiffutils_a-fopen.obj: fopen.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-fopen.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-fopen.Tpo -c -o libdiffutils_a-fopen.obj `if test -f 'fopen.c'; then $(CYGPATH_W) 'fopen.c'; else $(CYGPATH_W) '$(srcdir)/fopen.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-fopen.Tpo $(DEPDIR)/libdiffutils_a-fopen.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='fopen.c' object='libdiffutils_a-fopen.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-fopen.obj `if test -f 'fopen.c'; then $(CYGPATH_W) 'fopen.c'; else $(CYGPATH_W) '$(srcdir)/fopen.c'; fi` + +libdiffutils_a-stat-w32.o: stat-w32.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-stat-w32.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-stat-w32.Tpo -c -o libdiffutils_a-stat-w32.o `test -f 'stat-w32.c' || echo '$(srcdir)/'`stat-w32.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-stat-w32.Tpo $(DEPDIR)/libdiffutils_a-stat-w32.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='stat-w32.c' object='libdiffutils_a-stat-w32.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-stat-w32.o `test -f 'stat-w32.c' || echo '$(srcdir)/'`stat-w32.c + +libdiffutils_a-stat-w32.obj: stat-w32.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-stat-w32.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-stat-w32.Tpo -c -o libdiffutils_a-stat-w32.obj `if test -f 'stat-w32.c'; then $(CYGPATH_W) 'stat-w32.c'; else $(CYGPATH_W) '$(srcdir)/stat-w32.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-stat-w32.Tpo $(DEPDIR)/libdiffutils_a-stat-w32.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='stat-w32.c' object='libdiffutils_a-stat-w32.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-stat-w32.obj `if test -f 'stat-w32.c'; then $(CYGPATH_W) 'stat-w32.c'; else $(CYGPATH_W) '$(srcdir)/stat-w32.c'; fi` + +malloc/libdiffutils_a-dynarray-skeleton.o: malloc/dynarray-skeleton.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT malloc/libdiffutils_a-dynarray-skeleton.o -MD -MP -MF malloc/$(DEPDIR)/libdiffutils_a-dynarray-skeleton.Tpo -c -o malloc/libdiffutils_a-dynarray-skeleton.o `test -f 'malloc/dynarray-skeleton.c' || echo '$(srcdir)/'`malloc/dynarray-skeleton.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) malloc/$(DEPDIR)/libdiffutils_a-dynarray-skeleton.Tpo malloc/$(DEPDIR)/libdiffutils_a-dynarray-skeleton.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='malloc/dynarray-skeleton.c' object='malloc/libdiffutils_a-dynarray-skeleton.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o malloc/libdiffutils_a-dynarray-skeleton.o `test -f 'malloc/dynarray-skeleton.c' || echo '$(srcdir)/'`malloc/dynarray-skeleton.c + +malloc/libdiffutils_a-dynarray-skeleton.obj: malloc/dynarray-skeleton.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT malloc/libdiffutils_a-dynarray-skeleton.obj -MD -MP -MF malloc/$(DEPDIR)/libdiffutils_a-dynarray-skeleton.Tpo -c -o malloc/libdiffutils_a-dynarray-skeleton.obj `if test -f 'malloc/dynarray-skeleton.c'; then $(CYGPATH_W) 'malloc/dynarray-skeleton.c'; else $(CYGPATH_W) '$(srcdir)/malloc/dynarray-skeleton.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) malloc/$(DEPDIR)/libdiffutils_a-dynarray-skeleton.Tpo malloc/$(DEPDIR)/libdiffutils_a-dynarray-skeleton.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='malloc/dynarray-skeleton.c' object='malloc/libdiffutils_a-dynarray-skeleton.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o malloc/libdiffutils_a-dynarray-skeleton.obj `if test -f 'malloc/dynarray-skeleton.c'; then $(CYGPATH_W) 'malloc/dynarray-skeleton.c'; else $(CYGPATH_W) '$(srcdir)/malloc/dynarray-skeleton.c'; fi` + +libdiffutils_a-anytostr.o: anytostr.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-anytostr.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-anytostr.Tpo -c -o libdiffutils_a-anytostr.o `test -f 'anytostr.c' || echo '$(srcdir)/'`anytostr.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-anytostr.Tpo $(DEPDIR)/libdiffutils_a-anytostr.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='anytostr.c' object='libdiffutils_a-anytostr.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-anytostr.o `test -f 'anytostr.c' || echo '$(srcdir)/'`anytostr.c + +libdiffutils_a-anytostr.obj: anytostr.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-anytostr.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-anytostr.Tpo -c -o libdiffutils_a-anytostr.obj `if test -f 'anytostr.c'; then $(CYGPATH_W) 'anytostr.c'; else $(CYGPATH_W) '$(srcdir)/anytostr.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-anytostr.Tpo $(DEPDIR)/libdiffutils_a-anytostr.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='anytostr.c' object='libdiffutils_a-anytostr.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-anytostr.obj `if test -f 'anytostr.c'; then $(CYGPATH_W) 'anytostr.c'; else $(CYGPATH_W) '$(srcdir)/anytostr.c'; fi` + +libdiffutils_a-malloc.o: malloc.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-malloc.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-malloc.Tpo -c -o libdiffutils_a-malloc.o `test -f 'malloc.c' || echo '$(srcdir)/'`malloc.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-malloc.Tpo $(DEPDIR)/libdiffutils_a-malloc.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='malloc.c' object='libdiffutils_a-malloc.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-malloc.o `test -f 'malloc.c' || echo '$(srcdir)/'`malloc.c + +libdiffutils_a-malloc.obj: malloc.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-malloc.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-malloc.Tpo -c -o libdiffutils_a-malloc.obj `if test -f 'malloc.c'; then $(CYGPATH_W) 'malloc.c'; else $(CYGPATH_W) '$(srcdir)/malloc.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-malloc.Tpo $(DEPDIR)/libdiffutils_a-malloc.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='malloc.c' object='libdiffutils_a-malloc.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-malloc.obj `if test -f 'malloc.c'; then $(CYGPATH_W) 'malloc.c'; else $(CYGPATH_W) '$(srcdir)/malloc.c'; fi` + +libdiffutils_a-lc-charset-dispatch.o: lc-charset-dispatch.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-lc-charset-dispatch.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-lc-charset-dispatch.Tpo -c -o libdiffutils_a-lc-charset-dispatch.o `test -f 'lc-charset-dispatch.c' || echo '$(srcdir)/'`lc-charset-dispatch.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-lc-charset-dispatch.Tpo $(DEPDIR)/libdiffutils_a-lc-charset-dispatch.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lc-charset-dispatch.c' object='libdiffutils_a-lc-charset-dispatch.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-lc-charset-dispatch.o `test -f 'lc-charset-dispatch.c' || echo '$(srcdir)/'`lc-charset-dispatch.c + +libdiffutils_a-lc-charset-dispatch.obj: lc-charset-dispatch.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-lc-charset-dispatch.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-lc-charset-dispatch.Tpo -c -o libdiffutils_a-lc-charset-dispatch.obj `if test -f 'lc-charset-dispatch.c'; then $(CYGPATH_W) 'lc-charset-dispatch.c'; else $(CYGPATH_W) '$(srcdir)/lc-charset-dispatch.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-lc-charset-dispatch.Tpo $(DEPDIR)/libdiffutils_a-lc-charset-dispatch.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lc-charset-dispatch.c' object='libdiffutils_a-lc-charset-dispatch.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-lc-charset-dispatch.obj `if test -f 'lc-charset-dispatch.c'; then $(CYGPATH_W) 'lc-charset-dispatch.c'; else $(CYGPATH_W) '$(srcdir)/lc-charset-dispatch.c'; fi` + +libdiffutils_a-mbtowc-lock.o: mbtowc-lock.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-mbtowc-lock.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-mbtowc-lock.Tpo -c -o libdiffutils_a-mbtowc-lock.o `test -f 'mbtowc-lock.c' || echo '$(srcdir)/'`mbtowc-lock.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-mbtowc-lock.Tpo $(DEPDIR)/libdiffutils_a-mbtowc-lock.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mbtowc-lock.c' object='libdiffutils_a-mbtowc-lock.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-mbtowc-lock.o `test -f 'mbtowc-lock.c' || echo '$(srcdir)/'`mbtowc-lock.c + +libdiffutils_a-mbtowc-lock.obj: mbtowc-lock.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-mbtowc-lock.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-mbtowc-lock.Tpo -c -o libdiffutils_a-mbtowc-lock.obj `if test -f 'mbtowc-lock.c'; then $(CYGPATH_W) 'mbtowc-lock.c'; else $(CYGPATH_W) '$(srcdir)/mbtowc-lock.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-mbtowc-lock.Tpo $(DEPDIR)/libdiffutils_a-mbtowc-lock.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mbtowc-lock.c' object='libdiffutils_a-mbtowc-lock.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-mbtowc-lock.obj `if test -f 'mbtowc-lock.c'; then $(CYGPATH_W) 'mbtowc-lock.c'; else $(CYGPATH_W) '$(srcdir)/mbtowc-lock.c'; fi` + +libdiffutils_a-mbsrtowcs-state.o: mbsrtowcs-state.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-mbsrtowcs-state.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-mbsrtowcs-state.Tpo -c -o libdiffutils_a-mbsrtowcs-state.o `test -f 'mbsrtowcs-state.c' || echo '$(srcdir)/'`mbsrtowcs-state.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-mbsrtowcs-state.Tpo $(DEPDIR)/libdiffutils_a-mbsrtowcs-state.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mbsrtowcs-state.c' object='libdiffutils_a-mbsrtowcs-state.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-mbsrtowcs-state.o `test -f 'mbsrtowcs-state.c' || echo '$(srcdir)/'`mbsrtowcs-state.c + +libdiffutils_a-mbsrtowcs-state.obj: mbsrtowcs-state.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-mbsrtowcs-state.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-mbsrtowcs-state.Tpo -c -o libdiffutils_a-mbsrtowcs-state.obj `if test -f 'mbsrtowcs-state.c'; then $(CYGPATH_W) 'mbsrtowcs-state.c'; else $(CYGPATH_W) '$(srcdir)/mbsrtowcs-state.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-mbsrtowcs-state.Tpo $(DEPDIR)/libdiffutils_a-mbsrtowcs-state.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mbsrtowcs-state.c' object='libdiffutils_a-mbsrtowcs-state.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-mbsrtowcs-state.obj `if test -f 'mbsrtowcs-state.c'; then $(CYGPATH_W) 'mbsrtowcs-state.c'; else $(CYGPATH_W) '$(srcdir)/mbsrtowcs-state.c'; fi` + +libdiffutils_a-mktime.o: mktime.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-mktime.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-mktime.Tpo -c -o libdiffutils_a-mktime.o `test -f 'mktime.c' || echo '$(srcdir)/'`mktime.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-mktime.Tpo $(DEPDIR)/libdiffutils_a-mktime.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mktime.c' object='libdiffutils_a-mktime.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-mktime.o `test -f 'mktime.c' || echo '$(srcdir)/'`mktime.c + +libdiffutils_a-mktime.obj: mktime.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-mktime.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-mktime.Tpo -c -o libdiffutils_a-mktime.obj `if test -f 'mktime.c'; then $(CYGPATH_W) 'mktime.c'; else $(CYGPATH_W) '$(srcdir)/mktime.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-mktime.Tpo $(DEPDIR)/libdiffutils_a-mktime.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mktime.c' object='libdiffutils_a-mktime.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-mktime.obj `if test -f 'mktime.c'; then $(CYGPATH_W) 'mktime.c'; else $(CYGPATH_W) '$(srcdir)/mktime.c'; fi` + +libdiffutils_a-realloc.o: realloc.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-realloc.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-realloc.Tpo -c -o libdiffutils_a-realloc.o `test -f 'realloc.c' || echo '$(srcdir)/'`realloc.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-realloc.Tpo $(DEPDIR)/libdiffutils_a-realloc.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='realloc.c' object='libdiffutils_a-realloc.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-realloc.o `test -f 'realloc.c' || echo '$(srcdir)/'`realloc.c + +libdiffutils_a-realloc.obj: realloc.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-realloc.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-realloc.Tpo -c -o libdiffutils_a-realloc.obj `if test -f 'realloc.c'; then $(CYGPATH_W) 'realloc.c'; else $(CYGPATH_W) '$(srcdir)/realloc.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-realloc.Tpo $(DEPDIR)/libdiffutils_a-realloc.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='realloc.c' object='libdiffutils_a-realloc.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-realloc.obj `if test -f 'realloc.c'; then $(CYGPATH_W) 'realloc.c'; else $(CYGPATH_W) '$(srcdir)/realloc.c'; fi` + +libdiffutils_a-regcomp.o: regcomp.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-regcomp.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-regcomp.Tpo -c -o libdiffutils_a-regcomp.o `test -f 'regcomp.c' || echo '$(srcdir)/'`regcomp.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-regcomp.Tpo $(DEPDIR)/libdiffutils_a-regcomp.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='regcomp.c' object='libdiffutils_a-regcomp.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-regcomp.o `test -f 'regcomp.c' || echo '$(srcdir)/'`regcomp.c + +libdiffutils_a-regcomp.obj: regcomp.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-regcomp.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-regcomp.Tpo -c -o libdiffutils_a-regcomp.obj `if test -f 'regcomp.c'; then $(CYGPATH_W) 'regcomp.c'; else $(CYGPATH_W) '$(srcdir)/regcomp.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-regcomp.Tpo $(DEPDIR)/libdiffutils_a-regcomp.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='regcomp.c' object='libdiffutils_a-regcomp.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-regcomp.obj `if test -f 'regcomp.c'; then $(CYGPATH_W) 'regcomp.c'; else $(CYGPATH_W) '$(srcdir)/regcomp.c'; fi` + +libdiffutils_a-regex_internal.o: regex_internal.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-regex_internal.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-regex_internal.Tpo -c -o libdiffutils_a-regex_internal.o `test -f 'regex_internal.c' || echo '$(srcdir)/'`regex_internal.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-regex_internal.Tpo $(DEPDIR)/libdiffutils_a-regex_internal.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='regex_internal.c' object='libdiffutils_a-regex_internal.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-regex_internal.o `test -f 'regex_internal.c' || echo '$(srcdir)/'`regex_internal.c + +libdiffutils_a-regex_internal.obj: regex_internal.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-regex_internal.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-regex_internal.Tpo -c -o libdiffutils_a-regex_internal.obj `if test -f 'regex_internal.c'; then $(CYGPATH_W) 'regex_internal.c'; else $(CYGPATH_W) '$(srcdir)/regex_internal.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-regex_internal.Tpo $(DEPDIR)/libdiffutils_a-regex_internal.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='regex_internal.c' object='libdiffutils_a-regex_internal.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-regex_internal.obj `if test -f 'regex_internal.c'; then $(CYGPATH_W) 'regex_internal.c'; else $(CYGPATH_W) '$(srcdir)/regex_internal.c'; fi` + +libdiffutils_a-regexec.o: regexec.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-regexec.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-regexec.Tpo -c -o libdiffutils_a-regexec.o `test -f 'regexec.c' || echo '$(srcdir)/'`regexec.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-regexec.Tpo $(DEPDIR)/libdiffutils_a-regexec.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='regexec.c' object='libdiffutils_a-regexec.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-regexec.o `test -f 'regexec.c' || echo '$(srcdir)/'`regexec.c + +libdiffutils_a-regexec.obj: regexec.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-regexec.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-regexec.Tpo -c -o libdiffutils_a-regexec.obj `if test -f 'regexec.c'; then $(CYGPATH_W) 'regexec.c'; else $(CYGPATH_W) '$(srcdir)/regexec.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-regexec.Tpo $(DEPDIR)/libdiffutils_a-regexec.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='regexec.c' object='libdiffutils_a-regexec.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-regexec.obj `if test -f 'regexec.c'; then $(CYGPATH_W) 'regexec.c'; else $(CYGPATH_W) '$(srcdir)/regexec.c'; fi` + +libdiffutils_a-strtol.o: strtol.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-strtol.o -MD -MP -MF $(DEPDIR)/libdiffutils_a-strtol.Tpo -c -o libdiffutils_a-strtol.o `test -f 'strtol.c' || echo '$(srcdir)/'`strtol.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-strtol.Tpo $(DEPDIR)/libdiffutils_a-strtol.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='strtol.c' object='libdiffutils_a-strtol.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-strtol.o `test -f 'strtol.c' || echo '$(srcdir)/'`strtol.c + +libdiffutils_a-strtol.obj: strtol.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -MT libdiffutils_a-strtol.obj -MD -MP -MF $(DEPDIR)/libdiffutils_a-strtol.Tpo -c -o libdiffutils_a-strtol.obj `if test -f 'strtol.c'; then $(CYGPATH_W) 'strtol.c'; else $(CYGPATH_W) '$(srcdir)/strtol.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdiffutils_a-strtol.Tpo $(DEPDIR)/libdiffutils_a-strtol.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='strtol.c' object='libdiffutils_a-strtol.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libdiffutils_a_CFLAGS) $(CFLAGS) -c -o libdiffutils_a-strtol.obj `if test -f 'strtol.c'; then $(CYGPATH_W) 'strtol.c'; else $(CYGPATH_W) '$(srcdir)/strtol.c'; fi` + +ID: $(am__tagged_files) + $(am__define_uniq_tagged_files); mkid -fID $$unique +tags: tags-am +TAGS: tags + +tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + set x; \ + here=`pwd`; \ + $(am__define_uniq_tagged_files); \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ + fi +ctags: ctags-am + +CTAGS: ctags +ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + $(am__define_uniq_tagged_files); \ + test -z "$(CTAGS_ARGS)$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" +cscopelist: cscopelist-am + +cscopelist-am: $(am__tagged_files) + list='$(am__tagged_files)'; \ + case "$(srcdir)" in \ + [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ + *) sdir=$(subdir)/$(srcdir) ;; \ + esac; \ + for i in $$list; do \ + if test -f "$$i"; then \ + echo "$(subdir)/$$i"; \ + else \ + echo "$$sdir/$$i"; \ + fi; \ + done >> $(top_builddir)/cscope.files + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) check-am +all-am: Makefile $(LIBRARIES) $(HEADERS) config.h +installdirs: +install: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) install-am +install-exec: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi +mostlyclean-generic: + -$(am__rm_f) $(MOSTLYCLEANFILES) + +clean-generic: + -$(am__rm_f) $(CLEANFILES) + +distclean-generic: + -$(am__rm_f) $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || $(am__rm_f) $(CONFIG_CLEAN_VPATH_FILES) + -$(am__rm_f) glthread/$(DEPDIR)/$(am__dirstamp) + -$(am__rm_f) glthread/$(am__dirstamp) + -$(am__rm_f) malloc/$(DEPDIR)/$(am__dirstamp) + -$(am__rm_f) malloc/$(am__dirstamp) + -$(am__rm_f) unistr/$(DEPDIR)/$(am__dirstamp) + -$(am__rm_f) unistr/$(am__dirstamp) + -$(am__rm_f) uniwidth/$(DEPDIR)/$(am__dirstamp) + -$(am__rm_f) uniwidth/$(am__dirstamp) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." + -$(am__rm_f) $(BUILT_SOURCES) + -$(am__rm_f) $(MAINTAINERCLEANFILES) +clean: clean-am + +clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am + +distclean: distclean-am + -rm -f ./$(DEPDIR)/libdiffutils_a-allocator.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-anytostr.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-areadlink.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-argmatch.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-basename-lgpl.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-basename.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-binary-io.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-bitrotate.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-btowc.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-c-ctype.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-c-stack.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-c-strcasecmp.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-c-strncasecmp.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-calloc.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-careadlinkat.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-cloexec.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-close.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-cmpbuf.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-dirname-lgpl.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-dirname.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-dup2.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-error.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-exclude.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-exitfail.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-fcntl.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-fd-hook.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-file-type.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-filenamecat-lgpl.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-filenamecat.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-fnmatch.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-fnmatch_loop.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-fopen.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-free.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-freopen.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-fstat.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-getdtablesize.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-getopt.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-getopt1.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-getpagesize.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-getprogname.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-getrandom.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-gettime.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-gettimeofday.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-hard-locale.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-hash.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-ialloc.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-iconv.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-iconv_close.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-iconv_open.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-imaxtostr.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-inttostr.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-isblank.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-iswblank.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-iswdigit.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-iswxdigit.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-lc-charset-dispatch.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-localcharset.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-localeconv.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-lstat.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-malloc.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-malloca.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-mbchar.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-mbiter.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-mbrtowc.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-mbscasecmp.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-mbsinit.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-mbslen.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-mbsrtowcs-state.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-mbsrtowcs.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-mbsstr.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-mbtowc-lock.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-mbtowc.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-mbuiter.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-memchr.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-mempcpy.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-mkdir.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-mkstemp.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-mktime.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-msvc-inval.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-msvc-nothrow.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-nl_langinfo-lock.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-nl_langinfo.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-nstrftime.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-offtostr.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-open.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-progname.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-propername.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-quotearg.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-raise.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-rawmemchr.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-readlink.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-realloc.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-reallocarray.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-regcomp.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-regex.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-regex_internal.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-regexec.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-setenv.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-setlocale-lock.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-setlocale_null.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-sh-quote.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-sigprocmask.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-sigsegv.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-stackvma.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-stat-time.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-stat-w32.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-stat.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-stdio-read.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-stdio-write.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-stdopen.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-stpcpy.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-strcasecmp.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-strerror-override.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-strerror.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-striconv.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-stripslash.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-strncasecmp.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-strnlen.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-strnlen1.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-strptime.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-strtoimax.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-strtol.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-strtoll.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-system-quote.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-tempname.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-time_r.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-time_rz.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-timegm.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-timespec.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-trim.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-tzset.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-uinttostr.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-umaxtostr.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-unistd.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-unsetenv.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-version-etc-fsf.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-version-etc.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-wcrtomb.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-wctype-h.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-wcwidth.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-windows-mutex.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-windows-once.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-windows-recmutex.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-windows-rwlock.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-wmemchr.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-wmempcpy.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-xalloc-die.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-xfreopen.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-xmalloc.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-xmalloca.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-xreadlink.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-xstdopen.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-xstriconv.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-xstrtoimax.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-xstrtol.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-xstrtoul.Po + -rm -f glthread/$(DEPDIR)/libdiffutils_a-lock.Po + -rm -f glthread/$(DEPDIR)/libdiffutils_a-threadlib.Po + -rm -f malloc/$(DEPDIR)/libdiffutils_a-dynarray-skeleton.Po + -rm -f malloc/$(DEPDIR)/libdiffutils_a-dynarray_at_failure.Po + -rm -f malloc/$(DEPDIR)/libdiffutils_a-dynarray_emplace_enlarge.Po + -rm -f malloc/$(DEPDIR)/libdiffutils_a-dynarray_finalize.Po + -rm -f malloc/$(DEPDIR)/libdiffutils_a-dynarray_resize.Po + -rm -f malloc/$(DEPDIR)/libdiffutils_a-dynarray_resize_clear.Po + -rm -f unistr/$(DEPDIR)/libdiffutils_a-u8-mbtoucr.Po + -rm -f unistr/$(DEPDIR)/libdiffutils_a-u8-uctomb-aux.Po + -rm -f unistr/$(DEPDIR)/libdiffutils_a-u8-uctomb.Po + -rm -f uniwidth/$(DEPDIR)/libdiffutils_a-width.Po + -rm -f Makefile +distclean-am: clean-am distclean-compile distclean-generic \ + distclean-hdr distclean-local distclean-tags + +dvi: dvi-am + +dvi-am: + +html: html-am + +html-am: + +info: info-am + +info-am: + +install-data-am: + +install-dvi: install-dvi-am + +install-dvi-am: + +install-exec-am: + +install-html: install-html-am + +install-html-am: + +install-info: install-info-am + +install-info-am: + +install-man: + +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -f ./$(DEPDIR)/libdiffutils_a-allocator.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-anytostr.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-areadlink.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-argmatch.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-basename-lgpl.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-basename.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-binary-io.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-bitrotate.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-btowc.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-c-ctype.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-c-stack.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-c-strcasecmp.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-c-strncasecmp.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-calloc.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-careadlinkat.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-cloexec.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-close.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-cmpbuf.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-dirname-lgpl.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-dirname.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-dup2.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-error.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-exclude.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-exitfail.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-fcntl.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-fd-hook.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-file-type.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-filenamecat-lgpl.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-filenamecat.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-fnmatch.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-fnmatch_loop.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-fopen.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-free.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-freopen.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-fstat.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-getdtablesize.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-getopt.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-getopt1.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-getpagesize.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-getprogname.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-getrandom.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-gettime.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-gettimeofday.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-hard-locale.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-hash.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-ialloc.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-iconv.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-iconv_close.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-iconv_open.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-imaxtostr.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-inttostr.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-isblank.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-iswblank.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-iswdigit.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-iswxdigit.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-lc-charset-dispatch.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-localcharset.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-localeconv.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-lstat.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-malloc.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-malloca.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-mbchar.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-mbiter.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-mbrtowc.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-mbscasecmp.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-mbsinit.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-mbslen.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-mbsrtowcs-state.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-mbsrtowcs.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-mbsstr.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-mbtowc-lock.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-mbtowc.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-mbuiter.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-memchr.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-mempcpy.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-mkdir.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-mkstemp.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-mktime.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-msvc-inval.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-msvc-nothrow.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-nl_langinfo-lock.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-nl_langinfo.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-nstrftime.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-offtostr.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-open.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-progname.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-propername.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-quotearg.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-raise.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-rawmemchr.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-readlink.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-realloc.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-reallocarray.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-regcomp.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-regex.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-regex_internal.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-regexec.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-setenv.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-setlocale-lock.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-setlocale_null.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-sh-quote.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-sigprocmask.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-sigsegv.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-stackvma.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-stat-time.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-stat-w32.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-stat.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-stdio-read.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-stdio-write.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-stdopen.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-stpcpy.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-strcasecmp.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-strerror-override.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-strerror.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-striconv.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-stripslash.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-strncasecmp.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-strnlen.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-strnlen1.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-strptime.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-strtoimax.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-strtol.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-strtoll.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-system-quote.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-tempname.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-time_r.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-time_rz.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-timegm.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-timespec.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-trim.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-tzset.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-uinttostr.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-umaxtostr.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-unistd.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-unsetenv.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-version-etc-fsf.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-version-etc.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-wcrtomb.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-wctype-h.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-wcwidth.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-windows-mutex.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-windows-once.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-windows-recmutex.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-windows-rwlock.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-wmemchr.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-wmempcpy.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-xalloc-die.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-xfreopen.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-xmalloc.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-xmalloca.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-xreadlink.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-xstdopen.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-xstriconv.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-xstrtoimax.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-xstrtol.Po + -rm -f ./$(DEPDIR)/libdiffutils_a-xstrtoul.Po + -rm -f glthread/$(DEPDIR)/libdiffutils_a-lock.Po + -rm -f glthread/$(DEPDIR)/libdiffutils_a-threadlib.Po + -rm -f malloc/$(DEPDIR)/libdiffutils_a-dynarray-skeleton.Po + -rm -f malloc/$(DEPDIR)/libdiffutils_a-dynarray_at_failure.Po + -rm -f malloc/$(DEPDIR)/libdiffutils_a-dynarray_emplace_enlarge.Po + -rm -f malloc/$(DEPDIR)/libdiffutils_a-dynarray_finalize.Po + -rm -f malloc/$(DEPDIR)/libdiffutils_a-dynarray_resize.Po + -rm -f malloc/$(DEPDIR)/libdiffutils_a-dynarray_resize_clear.Po + -rm -f unistr/$(DEPDIR)/libdiffutils_a-u8-mbtoucr.Po + -rm -f unistr/$(DEPDIR)/libdiffutils_a-u8-uctomb-aux.Po + -rm -f unistr/$(DEPDIR)/libdiffutils_a-u8-uctomb.Po + -rm -f uniwidth/$(DEPDIR)/libdiffutils_a-width.Po + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic \ + maintainer-clean-local + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-compile mostlyclean-generic \ + mostlyclean-local + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: + +.MAKE: all check install install-am install-exec install-strip + +.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \ + clean-generic clean-noinstLIBRARIES cscopelist-am ctags \ + ctags-am distclean distclean-compile distclean-generic \ + distclean-hdr distclean-local distclean-tags distdir dvi \ + dvi-am html html-am info info-am install install-am \ + install-data install-data-am install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + installcheck installcheck-am installdirs maintainer-clean \ + maintainer-clean-generic maintainer-clean-local mostlyclean \ + mostlyclean-compile mostlyclean-generic mostlyclean-local pdf \ + pdf-am ps ps-am tags tags-am uninstall uninstall-am + +.PRECIOUS: Makefile + + +# We need the following in order to create when the system +# doesn't have one that works with the given compiler. +@GL_GENERATE_ALLOCA_H_TRUE@alloca.h: alloca.in.h $(top_builddir)/config.status +@GL_GENERATE_ALLOCA_H_TRUE@ $(gl_V_at)$(SED_HEADER_STDOUT) \ +@GL_GENERATE_ALLOCA_H_TRUE@ -e 's|@''HAVE_ALLOCA_H''@|$(HAVE_ALLOCA_H)|g' \ +@GL_GENERATE_ALLOCA_H_TRUE@ $(srcdir)/alloca.in.h > $@-t +@GL_GENERATE_ALLOCA_H_TRUE@ $(AM_V_at)mv $@-t $@ +@GL_GENERATE_ALLOCA_H_FALSE@alloca.h: $(top_builddir)/config.status +@GL_GENERATE_ALLOCA_H_FALSE@ rm -f $@ + +# We need the following in order to create when the system +# doesn't have one that works with the given compiler. +@GL_GENERATE_ASSERT_H_TRUE@assert.h: assert.in.h verify.h $(top_builddir)/config.status +@GL_GENERATE_ASSERT_H_TRUE@ $(gl_V_at){ $(SED_HEADER_STDOUT) \ +@GL_GENERATE_ASSERT_H_TRUE@ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ +@GL_GENERATE_ASSERT_H_TRUE@ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ +@GL_GENERATE_ASSERT_H_TRUE@ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ +@GL_GENERATE_ASSERT_H_TRUE@ -e 's|@''NEXT_ASSERT_H''@|$(NEXT_ASSERT_H)|g' \ +@GL_GENERATE_ASSERT_H_TRUE@ < $(srcdir)/assert.in.h && \ +@GL_GENERATE_ASSERT_H_TRUE@ sed -e '/@assert.h omit start@/,/@assert.h omit end@/d' \ +@GL_GENERATE_ASSERT_H_TRUE@ -e 's|_gl_verify|_gl_static_assert|g' \ +@GL_GENERATE_ASSERT_H_TRUE@ -e 's|_GL_VERIFY|_GL_STATIC_ASSERT|g' \ +@GL_GENERATE_ASSERT_H_TRUE@ -e 's|_GL\(_STATIC_ASSERT_H\)|_GL\1|g' \ +@GL_GENERATE_ASSERT_H_TRUE@ < $(srcdir)/verify.h; \ +@GL_GENERATE_ASSERT_H_TRUE@ } > $@-t +@GL_GENERATE_ASSERT_H_TRUE@ $(AM_V_at)mv $@-t $@ +@GL_GENERATE_ASSERT_H_FALSE@assert.h: $(top_builddir)/config.status +@GL_GENERATE_ASSERT_H_FALSE@ rm -f $@ + +# We need the following in order to create when the system +# doesn't have one that works with the given compiler. +ctype.h: ctype.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H) + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|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_CTYPE_H''@|$(NEXT_CTYPE_H)|g' \ + -e 's/@''GNULIB_ISBLANK''@/$(GL_GNULIB_ISBLANK)/g' \ + -e 's/@''HAVE_ISBLANK''@/$(HAVE_ISBLANK)/g' \ + -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ + -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ + $(srcdir)/ctype.in.h > $@-t + $(AM_V_at)mv $@-t $@ + +# We need the following in order to create when the system +# doesn't have one that is POSIX compliant. +@GL_GENERATE_ERRNO_H_TRUE@errno.h: errno.in.h $(top_builddir)/config.status +@GL_GENERATE_ERRNO_H_TRUE@ $(gl_V_at)$(SED_HEADER_STDOUT) \ +@GL_GENERATE_ERRNO_H_TRUE@ -e 's|@''GUARD_PREFIX''@|GL|g' \ +@GL_GENERATE_ERRNO_H_TRUE@ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ +@GL_GENERATE_ERRNO_H_TRUE@ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ +@GL_GENERATE_ERRNO_H_TRUE@ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ +@GL_GENERATE_ERRNO_H_TRUE@ -e 's|@''NEXT_ERRNO_H''@|$(NEXT_ERRNO_H)|g' \ +@GL_GENERATE_ERRNO_H_TRUE@ -e 's|@''EMULTIHOP_HIDDEN''@|$(EMULTIHOP_HIDDEN)|g' \ +@GL_GENERATE_ERRNO_H_TRUE@ -e 's|@''EMULTIHOP_VALUE''@|$(EMULTIHOP_VALUE)|g' \ +@GL_GENERATE_ERRNO_H_TRUE@ -e 's|@''ENOLINK_HIDDEN''@|$(ENOLINK_HIDDEN)|g' \ +@GL_GENERATE_ERRNO_H_TRUE@ -e 's|@''ENOLINK_VALUE''@|$(ENOLINK_VALUE)|g' \ +@GL_GENERATE_ERRNO_H_TRUE@ -e 's|@''EOVERFLOW_HIDDEN''@|$(EOVERFLOW_HIDDEN)|g' \ +@GL_GENERATE_ERRNO_H_TRUE@ -e 's|@''EOVERFLOW_VALUE''@|$(EOVERFLOW_VALUE)|g' \ +@GL_GENERATE_ERRNO_H_TRUE@ $(srcdir)/errno.in.h > $@-t +@GL_GENERATE_ERRNO_H_TRUE@ $(AM_V_at)mv $@-t $@ +@GL_GENERATE_ERRNO_H_FALSE@errno.h: $(top_builddir)/config.status +@GL_GENERATE_ERRNO_H_FALSE@ rm -f $@ + +# We need the following in order to create when the system +# doesn't have one that works. +@GL_GENERATE_ERROR_H_TRUE@error.h: error.in.h $(top_builddir)/config.status $(CXXDEFS_H) +@GL_GENERATE_ERROR_H_TRUE@ $(gl_V_at)$(SED_HEADER_STDOUT) \ +@GL_GENERATE_ERROR_H_TRUE@ -e 's|@''GUARD_PREFIX''@|GL|g' \ +@GL_GENERATE_ERROR_H_TRUE@ -e 's|@''HAVE_ERROR_H''@|$(HAVE_ERROR_H)|g' \ +@GL_GENERATE_ERROR_H_TRUE@ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ +@GL_GENERATE_ERROR_H_TRUE@ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ +@GL_GENERATE_ERROR_H_TRUE@ -e 's|@''NEXT_ERROR_H''@|$(NEXT_ERROR_H)|g' \ +@GL_GENERATE_ERROR_H_TRUE@ -e 's|@''HAVE_ERROR''@|$(HAVE_ERROR)|g' \ +@GL_GENERATE_ERROR_H_TRUE@ -e 's|@''HAVE_ERROR_AT_LINE''@|$(HAVE_ERROR_AT_LINE)|g' \ +@GL_GENERATE_ERROR_H_TRUE@ -e 's|@''REPLACE_ERROR''@|$(REPLACE_ERROR)|g' \ +@GL_GENERATE_ERROR_H_TRUE@ -e 's|@''REPLACE_ERROR_AT_LINE''@|$(REPLACE_ERROR_AT_LINE)|g' \ +@GL_GENERATE_ERROR_H_TRUE@ -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ +@GL_GENERATE_ERROR_H_TRUE@ $(srcdir)/error.in.h > $@-t +@GL_GENERATE_ERROR_H_TRUE@ $(AM_V_at)mv $@-t $@ +@GL_GENERATE_ERROR_H_FALSE@error.h: $(top_builddir)/config.status +@GL_GENERATE_ERROR_H_FALSE@ rm -f $@ + +# We need the following in order to create when the system +# doesn't have one that works with the given compiler. +fcntl.h: fcntl.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|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_FCNTL_H''@|$(NEXT_FCNTL_H)|g' \ -e 's/@''GNULIB_CREAT''@/$(GL_GNULIB_CREAT)/g' \ @@ -3002,32 +5764,13 @@ fcntl.h: fcntl.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) -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)/fcntl.in.h; \ - } > $@-t && \ - mv $@-t $@ - -# We need the following in order to create when the system -# doesn't have one that works with the given compiler. -@GL_GENERATE_FLOAT_H_TRUE@float.h: float.in.h $(top_builddir)/config.status -@GL_GENERATE_FLOAT_H_TRUE@ $(AM_V_GEN)rm -f $@-t $@ && \ -@GL_GENERATE_FLOAT_H_TRUE@ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ -@GL_GENERATE_FLOAT_H_TRUE@ sed -e 's|@''GUARD_PREFIX''@|GL|g' \ -@GL_GENERATE_FLOAT_H_TRUE@ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -@GL_GENERATE_FLOAT_H_TRUE@ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ -@GL_GENERATE_FLOAT_H_TRUE@ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ -@GL_GENERATE_FLOAT_H_TRUE@ -e 's|@''NEXT_FLOAT_H''@|$(NEXT_FLOAT_H)|g' \ -@GL_GENERATE_FLOAT_H_TRUE@ -e 's|@''REPLACE_ITOLD''@|$(REPLACE_ITOLD)|g' \ -@GL_GENERATE_FLOAT_H_TRUE@ < $(srcdir)/float.in.h; \ -@GL_GENERATE_FLOAT_H_TRUE@ } > $@-t && \ -@GL_GENERATE_FLOAT_H_TRUE@ mv $@-t $@ -@GL_GENERATE_FLOAT_H_FALSE@float.h: $(top_builddir)/config.status -@GL_GENERATE_FLOAT_H_FALSE@ rm -f $@ + $(srcdir)/fcntl.in.h > $@-t + $(AM_V_at)mv $@-t $@ # We need the following in order to create . @GL_GENERATE_FNMATCH_H_TRUE@fnmatch.h: fnmatch.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) -@GL_GENERATE_FNMATCH_H_TRUE@ $(AM_V_GEN)rm -f $@-t $@ && \ -@GL_GENERATE_FNMATCH_H_TRUE@ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ -@GL_GENERATE_FNMATCH_H_TRUE@ sed -e 's|@''GUARD_PREFIX''@|GL|g' \ +@GL_GENERATE_FNMATCH_H_TRUE@ $(gl_V_at)$(SED_HEADER_STDOUT) \ +@GL_GENERATE_FNMATCH_H_TRUE@ -e 's|@''GUARD_PREFIX''@|GL|g' \ @GL_GENERATE_FNMATCH_H_TRUE@ -e 's|@''HAVE_FNMATCH_H''@|$(HAVE_FNMATCH_H)|g' \ @GL_GENERATE_FNMATCH_H_TRUE@ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ @GL_GENERATE_FNMATCH_H_TRUE@ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ @@ -3039,35 +5782,53 @@ fcntl.h: fcntl.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) @GL_GENERATE_FNMATCH_H_TRUE@ -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ @GL_GENERATE_FNMATCH_H_TRUE@ -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ @GL_GENERATE_FNMATCH_H_TRUE@ -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ -@GL_GENERATE_FNMATCH_H_TRUE@ < $(srcdir)/fnmatch.in.h; \ -@GL_GENERATE_FNMATCH_H_TRUE@ } > $@-t && \ -@GL_GENERATE_FNMATCH_H_TRUE@ mv $@-t $@ +@GL_GENERATE_FNMATCH_H_TRUE@ $(srcdir)/fnmatch.in.h > $@-t +@GL_GENERATE_FNMATCH_H_TRUE@ $(AM_V_at)mv $@-t $@ @GL_GENERATE_FNMATCH_H_FALSE@fnmatch.h: $(top_builddir)/config.status @GL_GENERATE_FNMATCH_H_FALSE@ rm -f $@ # We need the following in order to create when the system # doesn't have one that works with the given compiler. -getopt.h: getopt.in.h $(top_builddir)/config.status $(ARG_NONNULL_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ - -e 's|@''HAVE_GETOPT_H''@|$(HAVE_GETOPT_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_GETOPT_H''@|$(NEXT_GETOPT_H)|g' \ - -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ - < $(srcdir)/getopt.in.h; \ - } > $@-t && \ - mv -f $@-t $@ - -getopt-cdefs.h: getopt-cdefs.in.h $(top_builddir)/config.status - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''HAVE_SYS_CDEFS_H''@|$(HAVE_SYS_CDEFS_H)|g' \ - < $(srcdir)/getopt-cdefs.in.h; \ - } > $@-t && \ - mv -f $@-t $@ +@GL_GENERATE_GETOPT_H_TRUE@getopt.h: getopt.in.h $(top_builddir)/config.status $(ARG_NONNULL_H) +@GL_GENERATE_GETOPT_H_TRUE@ $(gl_V_at)$(SED_HEADER_STDOUT) \ +@GL_GENERATE_GETOPT_H_TRUE@ -e 's|@''GUARD_PREFIX''@|GL|g' \ +@GL_GENERATE_GETOPT_H_TRUE@ -e 's|@''HAVE_GETOPT_H''@|$(HAVE_GETOPT_H)|g' \ +@GL_GENERATE_GETOPT_H_TRUE@ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ +@GL_GENERATE_GETOPT_H_TRUE@ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ +@GL_GENERATE_GETOPT_H_TRUE@ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ +@GL_GENERATE_GETOPT_H_TRUE@ -e 's|@''NEXT_GETOPT_H''@|$(NEXT_GETOPT_H)|g' \ +@GL_GENERATE_GETOPT_H_TRUE@ -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ +@GL_GENERATE_GETOPT_H_TRUE@ $(srcdir)/getopt.in.h > $@-t +@GL_GENERATE_GETOPT_H_TRUE@ $(AM_V_at)mv $@-t $@ +@GL_GENERATE_GETOPT_H_FALSE@getopt.h: $(top_builddir)/config.status +@GL_GENERATE_GETOPT_H_FALSE@ rm -f $@ + +@GL_GENERATE_GETOPT_CDEFS_H_TRUE@getopt-cdefs.h: getopt-cdefs.in.h $(top_builddir)/config.status +@GL_GENERATE_GETOPT_CDEFS_H_TRUE@ $(AM_V_GEN)$(SED_HEADER_STDOUT) \ +@GL_GENERATE_GETOPT_CDEFS_H_TRUE@ -e 's|@''HAVE_SYS_CDEFS_H''@|$(HAVE_SYS_CDEFS_H)|g' \ +@GL_GENERATE_GETOPT_CDEFS_H_TRUE@ $(srcdir)/getopt-cdefs.in.h > $@-t +@GL_GENERATE_GETOPT_CDEFS_H_TRUE@ $(AM_V_at)mv $@-t $@ +@GL_GENERATE_GETOPT_CDEFS_H_FALSE@getopt-cdefs.h: $(top_builddir)/config.status +@GL_GENERATE_GETOPT_CDEFS_H_FALSE@ rm -f $@ + +malloc/dynarray.gl.h: malloc/dynarray.h + $(AM_V_GEN)$(MKDIR_P) 'malloc' + $(AM_V_at)$(SED_HEADER_STDOUT) \ + -e '/libc_hidden_proto/d' \ + $(srcdir)/malloc/dynarray.h > $@-t + $(AM_V_at)mv $@-t $@ + +malloc/dynarray-skeleton.gl.h: malloc/dynarray-skeleton.c + $(AM_V_GEN)$(MKDIR_P) 'malloc' + $(AM_V_at)$(SED_HEADER_STDOUT) \ + -e 's|||g' \ + -e 's|__attribute_maybe_unused__|_GL_ATTRIBUTE_MAYBE_UNUSED|g' \ + -e 's|__attribute_nonnull__|_GL_ATTRIBUTE_NONNULL|g' \ + -e 's|__attribute_warn_unused_result__|_GL_ATTRIBUTE_NODISCARD|g' \ + -e 's|__glibc_likely|_GL_LIKELY|g' \ + -e 's|__glibc_unlikely|_GL_UNLIKELY|g' \ + $(srcdir)/malloc/dynarray-skeleton.c > $@-t + $(AM_V_at)mv $@-t $@ distclean-local: clean-GNUmakefile clean-GNUmakefile: test '$(srcdir)' = . || rm -f $(top_builddir)/GNUmakefile @@ -3075,9 +5836,8 @@ clean-GNUmakefile: # We need the following in order to create when the system # doesn't have one that works with the given compiler. @GL_GENERATE_ICONV_H_TRUE@iconv.h: iconv.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) -@GL_GENERATE_ICONV_H_TRUE@ $(AM_V_GEN)rm -f $@-t $@ && \ -@GL_GENERATE_ICONV_H_TRUE@ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ -@GL_GENERATE_ICONV_H_TRUE@ sed -e 's|@''GUARD_PREFIX''@|GL|g' \ +@GL_GENERATE_ICONV_H_TRUE@ $(gl_V_at)$(SED_HEADER_STDOUT) \ +@GL_GENERATE_ICONV_H_TRUE@ -e 's|@''GUARD_PREFIX''@|GL|g' \ @GL_GENERATE_ICONV_H_TRUE@ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ @GL_GENERATE_ICONV_H_TRUE@ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ @GL_GENERATE_ICONV_H_TRUE@ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ @@ -3090,9 +5850,8 @@ clean-GNUmakefile: @GL_GENERATE_ICONV_H_TRUE@ -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ @GL_GENERATE_ICONV_H_TRUE@ -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ @GL_GENERATE_ICONV_H_TRUE@ -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ -@GL_GENERATE_ICONV_H_TRUE@ < $(srcdir)/iconv.in.h; \ -@GL_GENERATE_ICONV_H_TRUE@ } > $@-t && \ -@GL_GENERATE_ICONV_H_TRUE@ mv $@-t $@ +@GL_GENERATE_ICONV_H_TRUE@ $(srcdir)/iconv.in.h > $@-t +@GL_GENERATE_ICONV_H_TRUE@ $(AM_V_at)mv $@-t $@ @GL_GENERATE_ICONV_H_FALSE@iconv.h: $(top_builddir)/config.status @GL_GENERATE_ICONV_H_FALSE@ rm -f $@ @@ -3118,9 +5877,8 @@ $(srcdir)/iconv_open-zos.h: $(srcdir)/iconv_open-zos.gperf # We need the following in order to create when the system # doesn't have one that works with the given compiler. inttypes.h: inttypes.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H) $(ARG_NONNULL_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's/@''HAVE_INTTYPES_H''@/$(HAVE_INTTYPES_H)/g' \ + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's/@''HAVE_INTTYPES_H''@/$(HAVE_INTTYPES_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' \ @@ -3136,6 +5894,8 @@ inttypes.h: inttypes.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_U -e 's/@''HAVE_DECL_STRTOIMAX''@/$(HAVE_DECL_STRTOIMAX)/g' \ -e 's/@''HAVE_DECL_STRTOUMAX''@/$(HAVE_DECL_STRTOUMAX)/g' \ -e 's/@''HAVE_IMAXDIV_T''@/$(HAVE_IMAXDIV_T)/g' \ + -e 's/@''REPLACE_IMAXABS''@/$(REPLACE_IMAXABS)/g' \ + -e 's/@''REPLACE_IMAXDIV''@/$(REPLACE_IMAXDIV)/g' \ -e 's/@''REPLACE_STRTOIMAX''@/$(REPLACE_STRTOIMAX)/g' \ -e 's/@''REPLACE_STRTOUMAX''@/$(REPLACE_STRTOUMAX)/g' \ -e 's/@''INT32_MAX_LT_INTMAX_MAX''@/$(INT32_MAX_LT_INTMAX_MAX)/g' \ @@ -3145,16 +5905,14 @@ inttypes.h: inttypes.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_U -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)/inttypes.in.h; \ - } > $@-t && \ - mv $@-t $@ + $(srcdir)/inttypes.in.h > $@-t + $(AM_V_at)mv $@-t $@ # We need the following in order to create an empty placeholder for # when the system doesn't have one. langinfo.h: langinfo.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's|@''HAVE_LANGINFO_H''@|$(HAVE_LANGINFO_H)|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ @@ -3170,32 +5928,28 @@ langinfo.h: langinfo.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_U -e 's|@''REPLACE_NL_LANGINFO''@|$(REPLACE_NL_LANGINFO)|g' \ -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ - < $(srcdir)/langinfo.in.h; \ - } > $@-t && \ - mv $@-t $@ + $(srcdir)/langinfo.in.h > $@-t + $(AM_V_at)mv $@-t $@ # We need the following in order to create when the system # doesn't have one that is compatible with GNU. @GL_GENERATE_LIMITS_H_TRUE@limits.h: limits.in.h $(top_builddir)/config.status -@GL_GENERATE_LIMITS_H_TRUE@ $(AM_V_GEN)rm -f $@-t $@ && \ -@GL_GENERATE_LIMITS_H_TRUE@ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ -@GL_GENERATE_LIMITS_H_TRUE@ sed -e 's|@''GUARD_PREFIX''@|GL|g' \ +@GL_GENERATE_LIMITS_H_TRUE@ $(gl_V_at)$(SED_HEADER_STDOUT) \ +@GL_GENERATE_LIMITS_H_TRUE@ -e 's|@''GUARD_PREFIX''@|GL|g' \ @GL_GENERATE_LIMITS_H_TRUE@ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ @GL_GENERATE_LIMITS_H_TRUE@ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ @GL_GENERATE_LIMITS_H_TRUE@ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ @GL_GENERATE_LIMITS_H_TRUE@ -e 's|@''NEXT_LIMITS_H''@|$(NEXT_LIMITS_H)|g' \ -@GL_GENERATE_LIMITS_H_TRUE@ < $(srcdir)/limits.in.h; \ -@GL_GENERATE_LIMITS_H_TRUE@ } > $@-t && \ -@GL_GENERATE_LIMITS_H_TRUE@ mv $@-t $@ +@GL_GENERATE_LIMITS_H_TRUE@ $(srcdir)/limits.in.h > $@-t +@GL_GENERATE_LIMITS_H_TRUE@ $(AM_V_at)mv $@-t $@ @GL_GENERATE_LIMITS_H_FALSE@limits.h: $(top_builddir)/config.status @GL_GENERATE_LIMITS_H_FALSE@ rm -f $@ # We need the following in order to create when the system # doesn't have one that provides all definitions. locale.h: locale.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ @@ -3219,16 +5973,14 @@ locale.h: locale.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H -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)/locale.in.h; \ - } > $@-t && \ - mv $@-t $@ + $(srcdir)/locale.in.h > $@-t + $(AM_V_at)mv $@-t $@ # We need the following in order to create when the system # doesn't have a complete one. signal.h: signal.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ @@ -3252,63 +6004,43 @@ signal.h: signal.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H -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)/signal.in.h; \ - } > $@-t && \ - mv $@-t $@ + $(srcdir)/signal.in.h > $@-t + $(AM_V_at)mv $@-t $@ @GL_GENERATE_SIGSEGV_H_TRUE@sigsegv.h: sigsegv.in.h $(top_builddir)/config.status -@GL_GENERATE_SIGSEGV_H_TRUE@ $(AM_V_GEN)rm -f $@-t $@ && \ -@GL_GENERATE_SIGSEGV_H_TRUE@ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ -@GL_GENERATE_SIGSEGV_H_TRUE@ cat $(srcdir)/sigsegv.in.h; \ -@GL_GENERATE_SIGSEGV_H_TRUE@ } > $@-t && \ -@GL_GENERATE_SIGSEGV_H_TRUE@ mv $@-t $@ +@GL_GENERATE_SIGSEGV_H_TRUE@ $(gl_V_at)$(SED_HEADER_TO_AT_t) $(srcdir)/sigsegv.in.h +@GL_GENERATE_SIGSEGV_H_TRUE@ $(AM_V_at)mv $@-t $@ @GL_GENERATE_SIGSEGV_H_FALSE@sigsegv.h: $(top_builddir)/config.status @GL_GENERATE_SIGSEGV_H_FALSE@ rm -f $@ -# We need the following in order to create when the system -# doesn't have one that works. -@GL_GENERATE_STDALIGN_H_TRUE@stdalign.h: stdalign.in.h $(top_builddir)/config.status -@GL_GENERATE_STDALIGN_H_TRUE@ $(AM_V_GEN)rm -f $@-t $@ && \ -@GL_GENERATE_STDALIGN_H_TRUE@ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ -@GL_GENERATE_STDALIGN_H_TRUE@ cat $(srcdir)/stdalign.in.h; \ -@GL_GENERATE_STDALIGN_H_TRUE@ } > $@-t && \ -@GL_GENERATE_STDALIGN_H_TRUE@ mv $@-t $@ -@GL_GENERATE_STDALIGN_H_FALSE@stdalign.h: $(top_builddir)/config.status -@GL_GENERATE_STDALIGN_H_FALSE@ rm -f $@ - # We need the following in order to create when the system # doesn't have one that works with the given compiler. @GL_GENERATE_STDARG_H_TRUE@stdarg.h: stdarg.in.h $(top_builddir)/config.status -@GL_GENERATE_STDARG_H_TRUE@ $(AM_V_GEN)rm -f $@-t $@ && \ -@GL_GENERATE_STDARG_H_TRUE@ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ -@GL_GENERATE_STDARG_H_TRUE@ sed -e 's|@''GUARD_PREFIX''@|GL|g' \ +@GL_GENERATE_STDARG_H_TRUE@ $(gl_V_at)$(SED_HEADER_STDOUT) \ +@GL_GENERATE_STDARG_H_TRUE@ -e 's|@''GUARD_PREFIX''@|GL|g' \ @GL_GENERATE_STDARG_H_TRUE@ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ @GL_GENERATE_STDARG_H_TRUE@ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ @GL_GENERATE_STDARG_H_TRUE@ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ @GL_GENERATE_STDARG_H_TRUE@ -e 's|@''NEXT_STDARG_H''@|$(NEXT_STDARG_H)|g' \ -@GL_GENERATE_STDARG_H_TRUE@ < $(srcdir)/stdarg.in.h; \ -@GL_GENERATE_STDARG_H_TRUE@ } > $@-t && \ -@GL_GENERATE_STDARG_H_TRUE@ mv $@-t $@ +@GL_GENERATE_STDARG_H_TRUE@ $(srcdir)/stdarg.in.h > $@-t +@GL_GENERATE_STDARG_H_TRUE@ $(AM_V_at)mv $@-t $@ @GL_GENERATE_STDARG_H_FALSE@stdarg.h: $(top_builddir)/config.status @GL_GENERATE_STDARG_H_FALSE@ rm -f $@ -# We need the following in order to create when the system -# doesn't have one that works. -@GL_GENERATE_STDBOOL_H_TRUE@stdbool.h: stdbool.in.h $(top_builddir)/config.status -@GL_GENERATE_STDBOOL_H_TRUE@ $(AM_V_GEN)rm -f $@-t $@ && \ -@GL_GENERATE_STDBOOL_H_TRUE@ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ -@GL_GENERATE_STDBOOL_H_TRUE@ sed -e 's/@''HAVE__BOOL''@/$(HAVE__BOOL)/g' < $(srcdir)/stdbool.in.h; \ -@GL_GENERATE_STDBOOL_H_TRUE@ } > $@-t && \ -@GL_GENERATE_STDBOOL_H_TRUE@ mv $@-t $@ -@GL_GENERATE_STDBOOL_H_FALSE@stdbool.h: $(top_builddir)/config.status -@GL_GENERATE_STDBOOL_H_FALSE@ rm -f $@ +# We need the following in order to create when the system +# doesn't have one that works with the given compiler. +@GL_GENERATE_STDCKDINT_H_TRUE@stdckdint.h: stdckdint.in.h $(top_builddir)/config.status +@GL_GENERATE_STDCKDINT_H_TRUE@ $(gl_V_at)$(SED_HEADER_STDOUT) \ +@GL_GENERATE_STDCKDINT_H_TRUE@ $(srcdir)/stdckdint.in.h > $@-t +@GL_GENERATE_STDCKDINT_H_TRUE@ $(AM_V_at)mv $@-t $@ +@GL_GENERATE_STDCKDINT_H_FALSE@stdckdint.h: $(top_builddir)/config.status +@GL_GENERATE_STDCKDINT_H_FALSE@ rm -f $@ # We need the following in order to create when the system # doesn't have one that works with the given compiler. @GL_GENERATE_STDDEF_H_TRUE@stddef.h: stddef.in.h $(top_builddir)/config.status -@GL_GENERATE_STDDEF_H_TRUE@ $(AM_V_GEN)rm -f $@-t $@ && \ -@GL_GENERATE_STDDEF_H_TRUE@ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ -@GL_GENERATE_STDDEF_H_TRUE@ sed -e 's|@''GUARD_PREFIX''@|GL|g' \ +@GL_GENERATE_STDDEF_H_TRUE@ $(gl_V_at)$(SED_HEADER_STDOUT) \ +@GL_GENERATE_STDDEF_H_TRUE@ -e 's|@''GUARD_PREFIX''@|GL|g' \ @GL_GENERATE_STDDEF_H_TRUE@ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ @GL_GENERATE_STDDEF_H_TRUE@ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ @GL_GENERATE_STDDEF_H_TRUE@ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ @@ -3316,18 +6048,16 @@ signal.h: signal.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H @GL_GENERATE_STDDEF_H_TRUE@ -e 's|@''HAVE_MAX_ALIGN_T''@|$(HAVE_MAX_ALIGN_T)|g' \ @GL_GENERATE_STDDEF_H_TRUE@ -e 's|@''HAVE_WCHAR_T''@|$(HAVE_WCHAR_T)|g' \ @GL_GENERATE_STDDEF_H_TRUE@ -e 's|@''REPLACE_NULL''@|$(REPLACE_NULL)|g' \ -@GL_GENERATE_STDDEF_H_TRUE@ < $(srcdir)/stddef.in.h; \ -@GL_GENERATE_STDDEF_H_TRUE@ } > $@-t && \ -@GL_GENERATE_STDDEF_H_TRUE@ mv $@-t $@ +@GL_GENERATE_STDDEF_H_TRUE@ $(srcdir)/stddef.in.h > $@-t +@GL_GENERATE_STDDEF_H_TRUE@ $(AM_V_at)mv $@-t $@ @GL_GENERATE_STDDEF_H_FALSE@stddef.h: $(top_builddir)/config.status @GL_GENERATE_STDDEF_H_FALSE@ rm -f $@ # We need the following in order to create when the system # doesn't have one that works with the given compiler. @GL_GENERATE_STDINT_H_TRUE@stdint.h: stdint.in.h $(top_builddir)/config.status -@GL_GENERATE_STDINT_H_TRUE@ $(AM_V_GEN)rm -f $@-t $@ && \ -@GL_GENERATE_STDINT_H_TRUE@ { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ -@GL_GENERATE_STDINT_H_TRUE@ sed -e 's|@''GUARD_PREFIX''@|GL|g' \ +@GL_GENERATE_STDINT_H_TRUE@ $(gl_V_at)$(SED_HEADER_STDOUT) \ +@GL_GENERATE_STDINT_H_TRUE@ -e 's|@''GUARD_PREFIX''@|GL|g' \ @GL_GENERATE_STDINT_H_TRUE@ -e 's/@''HAVE_STDINT_H''@/$(HAVE_STDINT_H)/g' \ @GL_GENERATE_STDINT_H_TRUE@ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ @GL_GENERATE_STDINT_H_TRUE@ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ @@ -3354,18 +6084,16 @@ signal.h: signal.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H @GL_GENERATE_STDINT_H_TRUE@ -e 's/@''HAVE_SIGNED_WINT_T''@/$(HAVE_SIGNED_WINT_T)/g' \ @GL_GENERATE_STDINT_H_TRUE@ -e 's/@''WINT_T_SUFFIX''@/$(WINT_T_SUFFIX)/g' \ @GL_GENERATE_STDINT_H_TRUE@ -e 's/@''GNULIBHEADERS_OVERRIDE_WINT_T''@/$(GNULIBHEADERS_OVERRIDE_WINT_T)/g' \ -@GL_GENERATE_STDINT_H_TRUE@ < $(srcdir)/stdint.in.h; \ -@GL_GENERATE_STDINT_H_TRUE@ } > $@-t && \ -@GL_GENERATE_STDINT_H_TRUE@ mv $@-t $@ +@GL_GENERATE_STDINT_H_TRUE@ $(srcdir)/stdint.in.h > $@-t +@GL_GENERATE_STDINT_H_TRUE@ $(AM_V_at)mv $@-t $@ @GL_GENERATE_STDINT_H_FALSE@stdint.h: $(top_builddir)/config.status @GL_GENERATE_STDINT_H_FALSE@ rm -f $@ # We need the following in order to create when the system # doesn't have one that works with the given compiler. stdio.h: stdio.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ @@ -3377,6 +6105,7 @@ stdio.h: stdio.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) -e 's/@''GNULIB_FGETC''@/$(GL_GNULIB_FGETC)/g' \ -e 's/@''GNULIB_FGETS''@/$(GL_GNULIB_FGETS)/g' \ -e 's/@''GNULIB_FOPEN''@/$(GL_GNULIB_FOPEN)/g' \ + -e 's/@''GNULIB_FOPEN_GNU''@/$(GL_GNULIB_FOPEN_GNU)/g' \ -e 's/@''GNULIB_FPRINTF''@/$(GL_GNULIB_FPRINTF)/g' \ -e 's/@''GNULIB_FPRINTF_POSIX''@/$(GL_GNULIB_FPRINTF_POSIX)/g' \ -e 's/@''GNULIB_FPURGE''@/$(GL_GNULIB_FPURGE)/g' \ @@ -3436,7 +6165,9 @@ stdio.h: stdio.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) -e 's|@''HAVE_DECL_FTELLO''@|$(HAVE_DECL_FTELLO)|g' \ -e 's|@''HAVE_DECL_GETDELIM''@|$(HAVE_DECL_GETDELIM)|g' \ -e 's|@''HAVE_DECL_GETLINE''@|$(HAVE_DECL_GETLINE)|g' \ + -e 's|@''HAVE_DECL_GETW''@|$(HAVE_DECL_GETW)|g' \ -e 's|@''HAVE_DECL_OBSTACK_PRINTF''@|$(HAVE_DECL_OBSTACK_PRINTF)|g' \ + -e 's|@''HAVE_DECL_PUTW''@|$(HAVE_DECL_PUTW)|g' \ -e 's|@''HAVE_DECL_SNPRINTF''@|$(HAVE_DECL_SNPRINTF)|g' \ -e 's|@''HAVE_DECL_VSNPRINTF''@|$(HAVE_DECL_VSNPRINTF)|g' \ -e 's|@''HAVE_DPRINTF''@|$(HAVE_DPRINTF)|g' \ @@ -3452,6 +6183,7 @@ stdio.h: stdio.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) -e 's|@''REPLACE_FDOPEN''@|$(REPLACE_FDOPEN)|g' \ -e 's|@''REPLACE_FFLUSH''@|$(REPLACE_FFLUSH)|g' \ -e 's|@''REPLACE_FOPEN''@|$(REPLACE_FOPEN)|g' \ + -e 's|@''REPLACE_FOPEN_FOR_FOPEN_GNU''@|$(REPLACE_FOPEN_FOR_FOPEN_GNU)|g' \ -e 's|@''REPLACE_FPRINTF''@|$(REPLACE_FPRINTF)|g' \ -e 's|@''REPLACE_FPURGE''@|$(REPLACE_FPURGE)|g' \ -e 's|@''REPLACE_FREOPEN''@|$(REPLACE_FREOPEN)|g' \ @@ -3482,17 +6214,16 @@ stdio.h: stdio.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) -e 's|@''ASM_SYMBOL_PREFIX''@|$(ASM_SYMBOL_PREFIX)|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)'; \ - } > $@-t && \ - mv $@-t $@ + -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ + > $@-t + $(AM_V_at)mv $@-t $@ # We need the following in order to create when the system # doesn't have one that works with the given compiler. stdlib.h: stdlib.in.h $(top_builddir)/config.status $(CXXDEFS_H) \ $(_NORETURN_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ @@ -3500,13 +6231,17 @@ stdlib.h: stdlib.in.h $(top_builddir)/config.status $(CXXDEFS_H) \ -e 's/@''GNULIB__EXIT''@/$(GL_GNULIB__EXIT)/g' \ -e 's/@''GNULIB_ALIGNED_ALLOC''@/$(GL_GNULIB_ALIGNED_ALLOC)/g' \ -e 's/@''GNULIB_ATOLL''@/$(GL_GNULIB_ATOLL)/g' \ + -e 's/@''GNULIB_CALLOC_GNU''@/$(GL_GNULIB_CALLOC_GNU)/g' \ -e 's/@''GNULIB_CALLOC_POSIX''@/$(GL_GNULIB_CALLOC_POSIX)/g' \ -e 's/@''GNULIB_CANONICALIZE_FILE_NAME''@/$(GL_GNULIB_CANONICALIZE_FILE_NAME)/g' \ -e 's/@''GNULIB_FREE_POSIX''@/$(GL_GNULIB_FREE_POSIX)/g' \ -e 's/@''GNULIB_GETLOADAVG''@/$(GL_GNULIB_GETLOADAVG)/g' \ + -e 's/@''GNULIB_GETPROGNAME''@/$(GL_GNULIB_GETPROGNAME)/g' \ -e 's/@''GNULIB_GETSUBOPT''@/$(GL_GNULIB_GETSUBOPT)/g' \ -e 's/@''GNULIB_GRANTPT''@/$(GL_GNULIB_GRANTPT)/g' \ + -e 's/@''GNULIB_MALLOC_GNU''@/$(GL_GNULIB_MALLOC_GNU)/g' \ -e 's/@''GNULIB_MALLOC_POSIX''@/$(GL_GNULIB_MALLOC_POSIX)/g' \ + -e 's/@''GNULIB_MBSTOWCS''@/$(GL_GNULIB_MBSTOWCS)/g' \ -e 's/@''GNULIB_MBTOWC''@/$(GL_GNULIB_MBTOWC)/g' \ -e 's/@''GNULIB_MKDTEMP''@/$(GL_GNULIB_MKDTEMP)/g' \ -e 's/@''GNULIB_MKOSTEMP''@/$(GL_GNULIB_MKOSTEMP)/g' \ @@ -3521,6 +6256,7 @@ stdlib.h: stdlib.in.h $(top_builddir)/config.status $(CXXDEFS_H) \ -e 's/@''GNULIB_QSORT_R''@/$(GL_GNULIB_QSORT_R)/g' \ -e 's/@''GNULIB_RANDOM''@/$(GL_GNULIB_RANDOM)/g' \ -e 's/@''GNULIB_RANDOM_R''@/$(GL_GNULIB_RANDOM_R)/g' \ + -e 's/@''GNULIB_REALLOC_GNU''@/$(GL_GNULIB_REALLOC_GNU)/g' \ -e 's/@''GNULIB_REALLOC_POSIX''@/$(GL_GNULIB_REALLOC_POSIX)/g' \ -e 's/@''GNULIB_REALLOCARRAY''@/$(GL_GNULIB_REALLOCARRAY)/g' \ -e 's/@''GNULIB_REALPATH''@/$(GL_GNULIB_REALPATH)/g' \ @@ -3551,6 +6287,8 @@ stdlib.h: stdlib.in.h $(top_builddir)/config.status $(CXXDEFS_H) \ -e 's|@''HAVE_DECL_FCVT''@|$(HAVE_DECL_FCVT)|g' \ -e 's|@''HAVE_DECL_GCVT''@|$(HAVE_DECL_GCVT)|g' \ -e 's|@''HAVE_DECL_GETLOADAVG''@|$(HAVE_DECL_GETLOADAVG)|g' \ + -e 's|@''HAVE_DECL_PROGRAM_INVOCATION_NAME''@|$(HAVE_DECL_PROGRAM_INVOCATION_NAME)|g' \ + -e 's|@''HAVE_GETPROGNAME''@|$(HAVE_GETPROGNAME)|g' \ -e 's|@''HAVE_GETSUBOPT''@|$(HAVE_GETSUBOPT)|g' \ -e 's|@''HAVE_GRANTPT''@|$(HAVE_GRANTPT)|g' \ -e 's|@''HAVE_INITSTATE''@|$(HAVE_INITSTATE)|g' \ @@ -3586,22 +6324,34 @@ stdlib.h: stdlib.in.h $(top_builddir)/config.status $(CXXDEFS_H) \ -e 's|@''HAVE_SYS_LOADAVG_H''@|$(HAVE_SYS_LOADAVG_H)|g' \ -e 's|@''HAVE_UNLOCKPT''@|$(HAVE_UNLOCKPT)|g' \ -e 's|@''HAVE_DECL_UNSETENV''@|$(HAVE_DECL_UNSETENV)|g' \ + -e 's|@''REPLACE__EXIT''@|$(REPLACE__EXIT)|g' \ -e 's|@''REPLACE_ALIGNED_ALLOC''@|$(REPLACE_ALIGNED_ALLOC)|g' \ - -e 's|@''REPLACE_CALLOC''@|$(REPLACE_CALLOC)|g' \ + -e 's|@''REPLACE_CALLOC_FOR_CALLOC_GNU''@|$(REPLACE_CALLOC_FOR_CALLOC_GNU)|g' \ + -e 's|@''REPLACE_CALLOC_FOR_CALLOC_POSIX''@|$(REPLACE_CALLOC_FOR_CALLOC_POSIX)|g' \ -e 's|@''REPLACE_CANONICALIZE_FILE_NAME''@|$(REPLACE_CANONICALIZE_FILE_NAME)|g' \ -e 's|@''REPLACE_FREE''@|$(REPLACE_FREE)|g' \ + -e 's|@''REPLACE_GETLOADAVG''@|$(REPLACE_GETLOADAVG)|g' \ + -e 's|@''REPLACE_GETPROGNAME''@|$(REPLACE_GETPROGNAME)|g' \ + -e 's|@''REPLACE_GETSUBOPT''@|$(REPLACE_GETSUBOPT)|g' \ -e 's|@''REPLACE_INITSTATE''@|$(REPLACE_INITSTATE)|g' \ - -e 's|@''REPLACE_MALLOC''@|$(REPLACE_MALLOC)|g' \ + -e 's|@''REPLACE_MALLOC_FOR_MALLOC_GNU''@|$(REPLACE_MALLOC_FOR_MALLOC_GNU)|g' \ + -e 's|@''REPLACE_MALLOC_FOR_MALLOC_POSIX''@|$(REPLACE_MALLOC_FOR_MALLOC_POSIX)|g' \ + -e 's|@''REPLACE_MB_CUR_MAX''@|$(REPLACE_MB_CUR_MAX)|g' \ + -e 's|@''REPLACE_MBSTOWCS''@|$(REPLACE_MBSTOWCS)|g' \ -e 's|@''REPLACE_MBTOWC''@|$(REPLACE_MBTOWC)|g' \ + -e 's|@''REPLACE_MKOSTEMP''@|$(REPLACE_MKOSTEMP)|g' \ + -e 's|@''REPLACE_MKOSTEMPS''@|$(REPLACE_MKOSTEMPS)|g' \ -e 's|@''REPLACE_MKSTEMP''@|$(REPLACE_MKSTEMP)|g' \ -e 's|@''REPLACE_POSIX_MEMALIGN''@|$(REPLACE_POSIX_MEMALIGN)|g' \ + -e 's|@''REPLACE_POSIX_OPENPT''@|$(REPLACE_POSIX_OPENPT)|g' \ -e 's|@''REPLACE_PTSNAME''@|$(REPLACE_PTSNAME)|g' \ -e 's|@''REPLACE_PTSNAME_R''@|$(REPLACE_PTSNAME_R)|g' \ -e 's|@''REPLACE_PUTENV''@|$(REPLACE_PUTENV)|g' \ -e 's|@''REPLACE_QSORT_R''@|$(REPLACE_QSORT_R)|g' \ -e 's|@''REPLACE_RANDOM''@|$(REPLACE_RANDOM)|g' \ -e 's|@''REPLACE_RANDOM_R''@|$(REPLACE_RANDOM_R)|g' \ - -e 's|@''REPLACE_REALLOC''@|$(REPLACE_REALLOC)|g' \ + -e 's|@''REPLACE_REALLOC_FOR_REALLOC_GNU''@|$(REPLACE_REALLOC_FOR_REALLOC_GNU)|g' \ + -e 's|@''REPLACE_REALLOC_FOR_REALLOC_POSIX''@|$(REPLACE_REALLOC_FOR_REALLOC_POSIX)|g' \ -e 's|@''REPLACE_REALLOCARRAY''@|$(REPLACE_REALLOCARRAY)|g' \ -e 's|@''REPLACE_REALPATH''@|$(REPLACE_REALPATH)|g' \ -e 's|@''REPLACE_SETENV''@|$(REPLACE_SETENV)|g' \ @@ -3617,16 +6367,15 @@ stdlib.h: stdlib.in.h $(top_builddir)/config.status $(CXXDEFS_H) \ -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ -e '/definition of _Noreturn/r $(_NORETURN_H)' \ -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ - -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)'; \ - } > $@-t && \ - mv $@-t $@ + -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ + > $@-t + $(AM_V_at)mv $@-t $@ # We need the following in order to create when the system # doesn't have one that works with the given compiler. string.h: string.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ @@ -3652,6 +6401,7 @@ string.h: string.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H -e 's/@''GNULIB_MEMMEM''@/$(GL_GNULIB_MEMMEM)/g' \ -e 's/@''GNULIB_MEMPCPY''@/$(GL_GNULIB_MEMPCPY)/g' \ -e 's/@''GNULIB_MEMRCHR''@/$(GL_GNULIB_MEMRCHR)/g' \ + -e 's/@''GNULIB_MEMSET_EXPLICIT''@/$(GL_GNULIB_MEMSET_EXPLICIT)/g' \ -e 's/@''GNULIB_RAWMEMCHR''@/$(GL_GNULIB_RAWMEMCHR)/g' \ -e 's/@''GNULIB_STPCPY''@/$(GL_GNULIB_STPCPY)/g' \ -e 's/@''GNULIB_STPNCPY''@/$(GL_GNULIB_STPNCPY)/g' \ @@ -3674,6 +6424,7 @@ string.h: string.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H -e 's/@''GNULIB_STRVERSCMP''@/$(GL_GNULIB_STRVERSCMP)/g' \ -e 's/@''GNULIB_MDA_MEMCCPY''@/$(GL_GNULIB_MDA_MEMCCPY)/g' \ -e 's/@''GNULIB_MDA_STRDUP''@/$(GL_GNULIB_MDA_STRDUP)/g' \ + -e 's/@''GNULIB_FREE_POSIX''@/$(GL_GNULIB_FREE_POSIX)/g' \ < $(srcdir)/string.in.h | \ sed -e 's|@''HAVE_EXPLICIT_BZERO''@|$(HAVE_EXPLICIT_BZERO)|g' \ -e 's|@''HAVE_FFSL''@|$(HAVE_FFSL)|g' \ @@ -3682,6 +6433,7 @@ string.h: string.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H -e 's|@''HAVE_DECL_MEMMEM''@|$(HAVE_DECL_MEMMEM)|g' \ -e 's|@''HAVE_MEMPCPY''@|$(HAVE_MEMPCPY)|g' \ -e 's|@''HAVE_DECL_MEMRCHR''@|$(HAVE_DECL_MEMRCHR)|g' \ + -e 's|@''HAVE_MEMSET_EXPLICIT''@|$(HAVE_MEMSET_EXPLICIT)|g' \ -e 's|@''HAVE_RAWMEMCHR''@|$(HAVE_RAWMEMCHR)|g' \ -e 's|@''HAVE_STPCPY''@|$(HAVE_STPCPY)|g' \ -e 's|@''HAVE_STPNCPY''@|$(HAVE_STPNCPY)|g' \ @@ -3702,6 +6454,9 @@ string.h: string.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H -e 's|@''REPLACE_FFSLL''@|$(REPLACE_FFSLL)|g' \ -e 's|@''REPLACE_MEMCHR''@|$(REPLACE_MEMCHR)|g' \ -e 's|@''REPLACE_MEMMEM''@|$(REPLACE_MEMMEM)|g' \ + -e 's|@''REPLACE_MEMPCPY''@|$(REPLACE_MEMPCPY)|g' \ + -e 's|@''REPLACE_FREE''@|$(REPLACE_FREE)|g' \ + -e 's|@''REPLACE_STPCPY''@|$(REPLACE_STPCPY)|g' \ -e 's|@''REPLACE_STPNCPY''@|$(REPLACE_STPNCPY)|g' \ -e 's|@''REPLACE_STRCHRNUL''@|$(REPLACE_STRCHRNUL)|g' \ -e 's|@''REPLACE_STRDUP''@|$(REPLACE_STRDUP)|g' \ @@ -3718,17 +6473,15 @@ string.h: string.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H -e 's|@''UNDEFINE_STRTOK_R''@|$(UNDEFINE_STRTOK_R)|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)/string.in.h; \ - } > $@-t && \ - mv $@-t $@ + -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ + > $@-t + $(AM_V_at)mv $@-t $@ # We need the following in order to create 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) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|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' \ @@ -3741,17 +6494,15 @@ strings.h: strings.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE -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 && \ - mv $@-t $@ + $(srcdir)/strings.in.h > $@-t + $(AM_V_at)mv $@-t $@ # We need the following in order to create when the system # doesn't have one. sys/random.h: sys_random.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_at)$(MKDIR_P) sys - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(AM_V_GEN)$(MKDIR_P) 'sys' + $(AM_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ @@ -3763,23 +6514,22 @@ sys/random.h: sys_random.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_N -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)/sys_random.in.h; \ - } > $@-t && \ - mv -f $@-t $@ + $(srcdir)/sys_random.in.h > $@-t + $(AM_V_at)mv $@-t $@ # We need the following in order to create when the system # has one that is incomplete. sys/stat.h: sys_stat.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_at)$(MKDIR_P) sys - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(AM_V_GEN)$(MKDIR_P) 'sys' + $(AM_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|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_SYS_STAT_H''@|$(NEXT_SYS_STAT_H)|g' \ -e 's|@''WINDOWS_64_BIT_ST_SIZE''@|$(WINDOWS_64_BIT_ST_SIZE)|g' \ -e 's|@''WINDOWS_STAT_TIMESPEC''@|$(WINDOWS_STAT_TIMESPEC)|g' \ + -e 's/@''GNULIB_CHMOD''@/$(GL_GNULIB_CHMOD)/g' \ -e 's/@''GNULIB_FCHMODAT''@/$(GL_GNULIB_FCHMODAT)/g' \ -e 's/@''GNULIB_FSTAT''@/$(GL_GNULIB_FSTAT)/g' \ -e 's/@''GNULIB_FSTATAT''@/$(GL_GNULIB_FSTATAT)/g' \ @@ -3811,6 +6561,7 @@ sys/stat.h: sys_stat.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNU -e 's|@''HAVE_MKNOD''@|$(HAVE_MKNOD)|g' \ -e 's|@''HAVE_MKNODAT''@|$(HAVE_MKNODAT)|g' \ -e 's|@''HAVE_UTIMENSAT''@|$(HAVE_UTIMENSAT)|g' \ + -e 's|@''REPLACE_CHMOD''@|$(REPLACE_CHMOD)|g' \ -e 's|@''REPLACE_FCHMODAT''@|$(REPLACE_FCHMODAT)|g' \ -e 's|@''REPLACE_FSTAT''@|$(REPLACE_FSTAT)|g' \ -e 's|@''REPLACE_FSTATAT''@|$(REPLACE_FSTATAT)|g' \ @@ -3826,17 +6577,15 @@ sys/stat.h: sys_stat.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNU -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)/sys_stat.in.h; \ - } > $@-t && \ - mv $@-t $@ + $(srcdir)/sys_stat.in.h > $@-t + $(AM_V_at)mv $@-t $@ # We need the following in order to create when the system # doesn't have one that works with the given compiler. sys/time.h: sys_time.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_at)$(MKDIR_P) sys - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(AM_V_GEN)$(MKDIR_P) 'sys' + $(AM_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's/@''HAVE_SYS_TIME_H''@/$(HAVE_SYS_TIME_H)/g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ @@ -3851,34 +6600,30 @@ sys/time.h: sys_time.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNU -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)/sys_time.in.h; \ - } > $@-t && \ - mv $@-t $@ + $(srcdir)/sys_time.in.h > $@-t + $(AM_V_at)mv $@-t $@ # We need the following in order to create when the system # doesn't have one that works with the given compiler. sys/types.h: sys_types.in.h $(top_builddir)/config.status - $(AM_V_at)$(MKDIR_P) sys - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(AM_V_GEN)$(MKDIR_P) 'sys' + $(AM_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|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_SYS_TYPES_H''@|$(NEXT_SYS_TYPES_H)|g' \ -e 's|@''WINDOWS_64_BIT_OFF_T''@|$(WINDOWS_64_BIT_OFF_T)|g' \ -e 's|@''WINDOWS_STAT_INODES''@|$(WINDOWS_STAT_INODES)|g' \ - < $(srcdir)/sys_types.in.h; \ - } > $@-t && \ - mv $@-t $@ + $(srcdir)/sys_types.in.h > $@-t + $(AM_V_at)mv $@-t $@ # We need the following in order to create when the system # has one that is incomplete. sys/wait.h: sys_wait.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H) - $(AM_V_at)$(MKDIR_P) sys - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(AM_V_GEN)$(MKDIR_P) 'sys' + $(AM_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ @@ -3886,16 +6631,14 @@ sys/wait.h: sys_wait.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_U -e 's/@''GNULIB_WAITPID''@/$(GL_GNULIB_WAITPID)/g' \ -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ - < $(srcdir)/sys_wait.in.h; \ - } > $@-t && \ - mv $@-t $@ + $(srcdir)/sys_wait.in.h > $@-t + $(AM_V_at)mv $@-t $@ # We need the following in order to create when the system # doesn't have one that works with the given compiler. time.h: time.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ @@ -3906,8 +6649,10 @@ time.h: time.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $( -e 's/@''GNULIB_NANOSLEEP''@/$(GL_GNULIB_NANOSLEEP)/g' \ -e 's/@''GNULIB_STRFTIME''@/$(GL_GNULIB_STRFTIME)/g' \ -e 's/@''GNULIB_STRPTIME''@/$(GL_GNULIB_STRPTIME)/g' \ + -e 's/@''GNULIB_TIME''@/$(GL_GNULIB_TIME)/g' \ -e 's/@''GNULIB_TIMEGM''@/$(GL_GNULIB_TIMEGM)/g' \ -e 's/@''GNULIB_TIMESPEC_GET''@/$(GL_GNULIB_TIMESPEC_GET)/g' \ + -e 's/@''GNULIB_TIMESPEC_GETRES''@/$(GL_GNULIB_TIMESPEC_GETRES)/g' \ -e 's/@''GNULIB_TIME_R''@/$(GL_GNULIB_TIME_R)/g' \ -e 's/@''GNULIB_TIME_RZ''@/$(GL_GNULIB_TIME_RZ)/g' \ -e 's/@''GNULIB_TZSET''@/$(GL_GNULIB_TZSET)/g' \ @@ -3917,6 +6662,7 @@ time.h: time.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $( -e 's|@''HAVE_STRPTIME''@|$(HAVE_STRPTIME)|g' \ -e 's|@''HAVE_TIMEGM''@|$(HAVE_TIMEGM)|g' \ -e 's|@''HAVE_TIMESPEC_GET''@|$(HAVE_TIMESPEC_GET)|g' \ + -e 's|@''HAVE_TIMESPEC_GETRES''@|$(HAVE_TIMESPEC_GETRES)|g' \ -e 's|@''HAVE_TIMEZONE_T''@|$(HAVE_TIMEZONE_T)|g' \ -e 's|@''REPLACE_CTIME''@|$(REPLACE_CTIME)|g' \ -e 's|@''REPLACE_GMTIME''@|$(REPLACE_GMTIME)|g' \ @@ -3925,7 +6671,9 @@ time.h: time.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $( -e 's|@''REPLACE_MKTIME''@|$(REPLACE_MKTIME)|g' \ -e 's|@''REPLACE_NANOSLEEP''@|$(REPLACE_NANOSLEEP)|g' \ -e 's|@''REPLACE_STRFTIME''@|$(REPLACE_STRFTIME)|g' \ + -e 's|@''REPLACE_TIME''@|$(REPLACE_TIME)|g' \ -e 's|@''REPLACE_TIMEGM''@|$(REPLACE_TIMEGM)|g' \ + -e 's|@''REPLACE_TIMESPEC_GET''@|$(REPLACE_TIMESPEC_GET)|g' \ -e 's|@''REPLACE_TZSET''@|$(REPLACE_TZSET)|g' \ -e 's|@''PTHREAD_H_DEFINES_STRUCT_TIMESPEC''@|$(PTHREAD_H_DEFINES_STRUCT_TIMESPEC)|g' \ -e 's|@''SYS_TIME_H_DEFINES_STRUCT_TIMESPEC''@|$(SYS_TIME_H_DEFINES_STRUCT_TIMESPEC)|g' \ @@ -3935,16 +6683,14 @@ time.h: time.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $( -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)/time.in.h; \ - } > $@-t && \ - mv $@-t $@ + $(srcdir)/time.in.h > $@-t + $(AM_V_at)mv $@-t $@ # We need the following in order to create an empty placeholder for # when the system doesn't have one. unistd.h: unistd.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's|@''HAVE_UNISTD_H''@|$(HAVE_UNISTD_H)|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ @@ -3985,6 +6731,7 @@ unistd.h: unistd.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H -e 's/@''GNULIB_GETOPT_POSIX''@/$(GL_GNULIB_GETOPT_POSIX)/g' \ -e 's/@''GNULIB_GETPAGESIZE''@/$(GL_GNULIB_GETPAGESIZE)/g' \ -e 's/@''GNULIB_GETPASS''@/$(GL_GNULIB_GETPASS)/g' \ + -e 's/@''GNULIB_GETPASS_GNU''@/$(GL_GNULIB_GETPASS_GNU)/g' \ -e 's/@''GNULIB_GETUSERSHELL''@/$(GL_GNULIB_GETUSERSHELL)/g' \ -e 's/@''GNULIB_GROUP_MEMBER''@/$(GL_GNULIB_GROUP_MEMBER)/g' \ -e 's/@''GNULIB_ISATTY''@/$(GL_GNULIB_ISATTY)/g' \ @@ -4086,8 +6833,10 @@ unistd.h: unistd.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H sed -e 's|@''REPLACE_ACCESS''@|$(REPLACE_ACCESS)|g' \ -e 's|@''REPLACE_CHOWN''@|$(REPLACE_CHOWN)|g' \ -e 's|@''REPLACE_CLOSE''@|$(REPLACE_CLOSE)|g' \ + -e 's|@''REPLACE_COPY_FILE_RANGE''@|$(REPLACE_COPY_FILE_RANGE)|g' \ -e 's|@''REPLACE_DUP''@|$(REPLACE_DUP)|g' \ -e 's|@''REPLACE_DUP2''@|$(REPLACE_DUP2)|g' \ + -e 's|@''REPLACE_DUP3''@|$(REPLACE_DUP3)|g' \ -e 's|@''REPLACE_EXECL''@|$(REPLACE_EXECL)|g' \ -e 's|@''REPLACE_EXECLE''@|$(REPLACE_EXECLE)|g' \ -e 's|@''REPLACE_EXECLP''@|$(REPLACE_EXECLP)|g' \ @@ -4097,25 +6846,30 @@ unistd.h: unistd.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H -e 's|@''REPLACE_EXECVPE''@|$(REPLACE_EXECVPE)|g' \ -e 's|@''REPLACE_FACCESSAT''@|$(REPLACE_FACCESSAT)|g' \ -e 's|@''REPLACE_FCHOWNAT''@|$(REPLACE_FCHOWNAT)|g' \ + -e 's|@''REPLACE_FDATASYNC''@|$(REPLACE_FDATASYNC)|g' \ -e 's|@''REPLACE_FTRUNCATE''@|$(REPLACE_FTRUNCATE)|g' \ -e 's|@''REPLACE_GETCWD''@|$(REPLACE_GETCWD)|g' \ -e 's|@''REPLACE_GETDOMAINNAME''@|$(REPLACE_GETDOMAINNAME)|g' \ -e 's|@''REPLACE_GETDTABLESIZE''@|$(REPLACE_GETDTABLESIZE)|g' \ + -e 's|@''REPLACE_GETENTROPY''@|$(REPLACE_GETENTROPY)|g' \ -e 's|@''REPLACE_GETLOGIN_R''@|$(REPLACE_GETLOGIN_R)|g' \ -e 's|@''REPLACE_GETGROUPS''@|$(REPLACE_GETGROUPS)|g' \ -e 's|@''REPLACE_GETPAGESIZE''@|$(REPLACE_GETPAGESIZE)|g' \ -e 's|@''REPLACE_GETPASS''@|$(REPLACE_GETPASS)|g' \ + -e 's|@''REPLACE_GETPASS_FOR_GETPASS_GNU''@|$(REPLACE_GETPASS_FOR_GETPASS_GNU)|g' \ -e 's|@''REPLACE_ISATTY''@|$(REPLACE_ISATTY)|g' \ -e 's|@''REPLACE_LCHOWN''@|$(REPLACE_LCHOWN)|g' \ -e 's|@''REPLACE_LINK''@|$(REPLACE_LINK)|g' \ -e 's|@''REPLACE_LINKAT''@|$(REPLACE_LINKAT)|g' \ -e 's|@''REPLACE_LSEEK''@|$(REPLACE_LSEEK)|g' \ + -e 's|@''REPLACE_PIPE2''@|$(REPLACE_PIPE2)|g' \ -e 's|@''REPLACE_PREAD''@|$(REPLACE_PREAD)|g' \ -e 's|@''REPLACE_PWRITE''@|$(REPLACE_PWRITE)|g' \ -e 's|@''REPLACE_READ''@|$(REPLACE_READ)|g' \ -e 's|@''REPLACE_READLINK''@|$(REPLACE_READLINK)|g' \ -e 's|@''REPLACE_READLINKAT''@|$(REPLACE_READLINKAT)|g' \ -e 's|@''REPLACE_RMDIR''@|$(REPLACE_RMDIR)|g' \ + -e 's|@''REPLACE_SETHOSTNAME''@|$(REPLACE_SETHOSTNAME)|g' \ -e 's|@''REPLACE_SLEEP''@|$(REPLACE_SLEEP)|g' \ -e 's|@''REPLACE_SYMLINK''@|$(REPLACE_SYMLINK)|g' \ -e 's|@''REPLACE_SYMLINKAT''@|$(REPLACE_SYMLINKAT)|g' \ @@ -4130,37 +6884,27 @@ unistd.h: unistd.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H -e 's|@''UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS''@|$(UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS)|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)'; \ - } > $@-t && \ - mv $@-t $@ + -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ + > $@-t + $(AM_V_at)mv $@-t $@ unistr.h: unistr.in.h - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - cat $(srcdir)/unistr.in.h; \ - } > $@-t && \ - mv -f $@-t $@ + $(gl_V_at)$(SED_HEADER_TO_AT_t) $(srcdir)/unistr.in.h + $(AM_V_at)mv $@-t $@ unitypes.h: unitypes.in.h - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - cat $(srcdir)/unitypes.in.h; \ - } > $@-t && \ - mv -f $@-t $@ + $(gl_V_at)$(SED_HEADER_TO_AT_t) $(srcdir)/unitypes.in.h + $(AM_V_at)mv $@-t $@ uniwidth.h: uniwidth.in.h - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - cat $(srcdir)/uniwidth.in.h; \ - } > $@-t && \ - mv -f $@-t $@ + $(gl_V_at)$(SED_HEADER_TO_AT_t) $(srcdir)/uniwidth.in.h + $(AM_V_at)mv $@-t $@ # We need the following in order to create when the system # version does not work standalone. wchar.h: wchar.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ @@ -4211,6 +6955,7 @@ wchar.h: wchar.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) -e 's/@''GNULIB_WCSWIDTH''@/$(GL_GNULIB_WCSWIDTH)/g' \ -e 's/@''GNULIB_WCSFTIME''@/$(GL_GNULIB_WCSFTIME)/g' \ -e 's/@''GNULIB_MDA_WCSDUP''@/$(GL_GNULIB_MDA_WCSDUP)/g' \ + -e 's/@''GNULIB_FREE_POSIX''@/$(GL_GNULIB_FREE_POSIX)/g' \ < $(srcdir)/wchar.in.h | \ sed -e 's|@''HAVE_WINT_T''@|$(HAVE_WINT_T)|g' \ -e 's|@''HAVE_BTOWC''@|$(HAVE_BTOWC)|g' \ @@ -4259,6 +7004,7 @@ wchar.h: wchar.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) sed -e 's|@''REPLACE_MBSTATE_T''@|$(REPLACE_MBSTATE_T)|g' \ -e 's|@''REPLACE_BTOWC''@|$(REPLACE_BTOWC)|g' \ -e 's|@''REPLACE_WCTOB''@|$(REPLACE_WCTOB)|g' \ + -e 's|@''REPLACE_FREE''@|$(REPLACE_FREE)|g' \ -e 's|@''REPLACE_MBSINIT''@|$(REPLACE_MBSINIT)|g' \ -e 's|@''REPLACE_MBRTOWC''@|$(REPLACE_MBRTOWC)|g' \ -e 's|@''REPLACE_MBRLEN''@|$(REPLACE_MBRLEN)|g' \ @@ -4270,19 +7016,23 @@ wchar.h: wchar.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) -e 's|@''REPLACE_WCWIDTH''@|$(REPLACE_WCWIDTH)|g' \ -e 's|@''REPLACE_WCSWIDTH''@|$(REPLACE_WCSWIDTH)|g' \ -e 's|@''REPLACE_WCSFTIME''@|$(REPLACE_WCSFTIME)|g' \ + -e 's|@''REPLACE_WCSCMP''@|$(REPLACE_WCSCMP)|g' \ + -e 's|@''REPLACE_WCSNCMP''@|$(REPLACE_WCSNCMP)|g' \ + -e 's|@''REPLACE_WCSSTR''@|$(REPLACE_WCSSTR)|g' \ -e 's|@''REPLACE_WCSTOK''@|$(REPLACE_WCSTOK)|g' \ + -e 's|@''REPLACE_WMEMCMP''@|$(REPLACE_WMEMCMP)|g' \ + -e 's|@''REPLACE_WMEMPCPY''@|$(REPLACE_WMEMPCPY)|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)'; \ - } > $@-t && \ - mv $@-t $@ + -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ + > $@-t + $(AM_V_at)mv $@-t $@ # We need the following in order to create when the system # doesn't have one that works with the given compiler. wctype.h: wctype.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's/@''HAVE_WCTYPE_H''@/$(HAVE_WCTYPE_H)/g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ @@ -4309,9 +7059,8 @@ wctype.h: wctype.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H -e 's/@''REPLACE_TOWLOWER''@/$(REPLACE_TOWLOWER)/g' \ -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ - < $(srcdir)/wctype.in.h; \ - } > $@-t && \ - mv $@-t $@ + $(srcdir)/wctype.in.h > $@-t + $(AM_V_at)mv $@-t $@ mostlyclean-local: mostlyclean-generic @for dir in '' $(MOSTLYCLEANDIRS); do \ @@ -4320,6 +7069,10 @@ mostlyclean-local: mostlyclean-generic fi; \ done; \ : +distclean-local: distclean-gnulib-libobjs +distclean-gnulib-libobjs: + -rm -f @gl_LIBOBJDEPS@ +maintainer-clean-local: distclean-gnulib-libobjs # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/lib/_Noreturn.h b/lib/_Noreturn.h index cb72f26..6ecea98 100644 --- a/lib/_Noreturn.h +++ b/lib/_Noreturn.h @@ -1,5 +1,5 @@ /* A C macro for declaring that a function does not return. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published @@ -26,10 +26,15 @@ AIX system header files and several gnulib header files use precisely this syntax with 'extern'. */ # define _Noreturn [[noreturn]] +# elif (defined __clang__ && __clang_major__ < 16 \ + && defined _GL_WORK_AROUND_LLVM_BUG_59792) + /* Compile with -D_GL_WORK_AROUND_LLVM_BUG_59792 to work around + that rare LLVM bug, though you may get many false-alarm warnings. */ +# define _Noreturn # elif ((!defined __cplusplus || defined __clang__) \ && (201112 <= (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) \ || (!defined __STRICT_ANSI__ \ - && (__4 < __GNUC__ + (7 <= __GNUC_MINOR__) \ + && (4 < __GNUC__ + (7 <= __GNUC_MINOR__) \ || (defined __apple_build_version__ \ ? 6000000 <= __apple_build_version__ \ : 3 < __clang_major__ + (5 <= __clang_minor__)))))) diff --git a/lib/alloca.in.h b/lib/alloca.in.h index 65c2d4d..a1bb3d7 100644 --- a/lib/alloca.in.h +++ b/lib/alloca.in.h @@ -1,6 +1,6 @@ /* Memory allocation on the stack. - Copyright (C) 1995, 1999, 2001-2004, 2006-2021 Free Software Foundation, + Copyright (C) 1995, 1999, 2001-2004, 2006-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify diff --git a/lib/allocator.c b/lib/allocator.c index 2262de9..922be1f 100644 --- a/lib/allocator.c +++ b/lib/allocator.c @@ -1,6 +1,6 @@ /* Memory allocators such as malloc+free. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/allocator.h b/lib/allocator.h index f0e8f34..0c830d0 100644 --- a/lib/allocator.h +++ b/lib/allocator.h @@ -1,6 +1,6 @@ /* Memory allocators such as malloc+free. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/anytostr.c b/lib/anytostr.c index 8294353..3b74789 100644 --- a/lib/anytostr.c +++ b/lib/anytostr.c @@ -1,6 +1,6 @@ /* anytostr.c -- convert integers to printable strings - Copyright (C) 2001, 2006, 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2001, 2006, 2008-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/areadlink.c b/lib/areadlink.c index 90ae0d5..0d6f169 100644 --- a/lib/areadlink.c +++ b/lib/areadlink.c @@ -1,7 +1,7 @@ /* areadlink.c -- readlink wrapper to return the link name in malloc'd storage Unlike xreadlink and xreadlink_with_size, don't ever call exit. - Copyright (C) 2001, 2003-2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2001, 2003-2007, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/areadlink.h b/lib/areadlink.h index a351150..cd5738d 100644 --- a/lib/areadlink.h +++ b/lib/areadlink.h @@ -1,6 +1,6 @@ /* Read symbolic links without size limitation. - Copyright (C) 2001, 2003-2004, 2007, 2009-2021 Free Software Foundation, + Copyright (C) 2001, 2003-2004, 2007, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify @@ -18,16 +18,20 @@ /* Written by Jim Meyering */ -#include +#include -extern char *areadlink (char const *filename); -extern char *areadlink_with_size (char const *filename, size_t size_hint); +extern char *areadlink (char const *filename) + _GL_ATTRIBUTE_DEALLOC_FREE; +extern char *areadlink_with_size (char const *filename, size_t size_hint) + _GL_ATTRIBUTE_DEALLOC_FREE; #if GNULIB_AREADLINKAT -extern char *areadlinkat (int fd, char const *filename); +extern char *areadlinkat (int fd, char const *filename) + _GL_ATTRIBUTE_DEALLOC_FREE; #endif #if GNULIB_AREADLINKAT_WITH_SIZE extern char *areadlinkat_with_size (int fd, char const *filename, - size_t size_hint); + size_t size_hint) + _GL_ATTRIBUTE_DEALLOC_FREE; #endif diff --git a/lib/arg-nonnull.h b/lib/arg-nonnull.h index b4de241..9498ae1 100644 --- a/lib/arg-nonnull.h +++ b/lib/arg-nonnull.h @@ -1,5 +1,5 @@ /* A C macro for declaring that specific arguments must not be NULL. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published diff --git a/lib/argmatch.c b/lib/argmatch.c index dfdb4e3..9cddb37 100644 --- a/lib/argmatch.c +++ b/lib/argmatch.c @@ -1,11 +1,11 @@ /* argmatch.c -- find a match for a string in an array - Copyright (C) 1990, 1998-1999, 2001-2007, 2009-2021 Free Software + Copyright (C) 1990, 1998-1999, 2001-2007, 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -24,7 +24,6 @@ /* Specification. */ #include "argmatch.h" -#include #include #include #include @@ -33,7 +32,6 @@ #include "error.h" #include "quotearg.h" -#include "getprogname.h" #if USE_UNLOCKED_IO # include "unlocked-io.h" @@ -62,7 +60,7 @@ __argmatch_die (void) ARGMATCH_DIE; } -/* Used by XARGMATCH and XARGCASEMATCH. See description in argmatch.h. +/* Used by XARGMATCH. See description in argmatch.h. Default to __argmatch_die, but allow caller to change this at run-time. */ argmatch_exit_fn argmatch_die = __argmatch_die; @@ -120,6 +118,21 @@ argmatch (const char *arg, const char *const *arglist, return matchind; } +ptrdiff_t +argmatch_exact (const char *arg, const char *const *arglist) +{ + size_t i; + + /* Test elements for exact match. */ + for (i = 0; arglist[i]; i++) + { + if (!strcmp (arglist[i], arg)) + return i; + } + + return -1; +} + /* Error reporting for argmatch. CONTEXT is a description of the type of entity that was being matched. VALUE is the invalid value that was given. @@ -174,9 +187,16 @@ ptrdiff_t __xargmatch_internal (const char *context, const char *arg, const char *const *arglist, const void *vallist, size_t valsize, - argmatch_exit_fn exit_fn) + argmatch_exit_fn exit_fn, + bool allow_abbreviation) { - ptrdiff_t res = argmatch (arg, arglist, vallist, valsize); + ptrdiff_t res; + + if (allow_abbreviation) + res = argmatch (arg, arglist, vallist, valsize); + else + res = argmatch_exact (arg, arglist); + if (res >= 0) /* Success. */ return res; diff --git a/lib/argmatch.h b/lib/argmatch.h index 3ef6813..9e8d217 100644 --- a/lib/argmatch.h +++ b/lib/argmatch.h @@ -1,11 +1,11 @@ /* argmatch.h -- definitions and prototypes for argmatch.c - Copyright (C) 1990, 1998-1999, 2001-2002, 2004-2005, 2009-2021 Free Software + Copyright (C) 1990, 1998-1999, 2001-2002, 2004-2005, 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -22,15 +22,18 @@ #ifndef ARGMATCH_H_ # define ARGMATCH_H_ 1 +/* This file uses _GL_ATTRIBUTE_PURE. */ +# if !_GL_CONFIG_H_INCLUDED +# error "Please include config.h first." +# endif + # include -# include # include # include # include /* memcmp */ # include "gettext.h" # include "quote.h" -# include "verify.h" # ifdef __cplusplus extern "C" { @@ -42,7 +45,8 @@ extern "C" { (argument list ends with a NULL guard). */ # define ARGMATCH_VERIFY(Arglist, Vallist) \ - verify (ARRAY_CARDINALITY (Arglist) == ARRAY_CARDINALITY (Vallist) + 1) + static_assert (ARRAY_CARDINALITY (Arglist) \ + == ARRAY_CARDINALITY (Vallist) + 1) /* Return the index of the element of ARGLIST (NULL terminated) that matches with ARG. If VALLIST is not NULL, then use it to resolve @@ -52,9 +56,15 @@ extern "C" { ptrdiff_t argmatch (char const *arg, char const *const *arglist, void const *vallist, size_t valsize) _GL_ATTRIBUTE_PURE; +ptrdiff_t argmatch_exact (char const *arg, char const *const *arglist) + _GL_ATTRIBUTE_PURE; + # define ARGMATCH(Arg, Arglist, Vallist) \ argmatch (Arg, Arglist, (void const *) (Vallist), sizeof *(Vallist)) +# define ARGMATCH_EXACT(Arg, Arglist) \ + argmatch_exact (Arg, Arglist) + /* xargmatch calls this function when it fails. This function should not return. By default, this is a function that calls ARGMATCH_DIE which in turn defaults to 'exit (exit_failure)'. */ @@ -83,13 +93,14 @@ void argmatch_valid (char const *const *arglist, -/* Same as argmatch, but upon failure, report an explanation of the - failure, and exit using the function EXIT_FN. */ +/* Like argmatch/argmatch_exact, but upon failure, report an explanation + of the failure, and exit using the function EXIT_FN. */ ptrdiff_t __xargmatch_internal (char const *context, char const *arg, char const *const *arglist, void const *vallist, size_t valsize, - argmatch_exit_fn exit_fn); + argmatch_exit_fn exit_fn, + bool allow_abbreviation); /* Programmer friendly interface to __xargmatch_internal. */ @@ -97,7 +108,15 @@ ptrdiff_t __xargmatch_internal (char const *context, ((Vallist) [__xargmatch_internal (Context, Arg, Arglist, \ (void const *) (Vallist), \ sizeof *(Vallist), \ - argmatch_die)]) + argmatch_die, \ + true)]) + +# define XARGMATCH_EXACT(Context, Arg, Arglist, Vallist) \ + ((Vallist) [__xargmatch_internal (Context, Arg, Arglist, \ + (void const *) (Vallist), \ + sizeof *(Vallist), \ + argmatch_die, \ + false)]) /* Convert a value into a corresponding argument. */ diff --git a/gnulib-tests/sig-handler.c b/lib/assert.in.h similarity index 63% rename from gnulib-tests/sig-handler.c rename to lib/assert.in.h index 6257914..b0ab99c 100644 --- a/gnulib-tests/sig-handler.c +++ b/lib/assert.in.h @@ -1,6 +1,5 @@ -/* Convenience declarations when working with . - - Copyright (C) 2012-2021 Free Software Foundation, Inc. +/* Substitute for and wrapper around + Copyright (C) 2011-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -15,7 +14,14 @@ You should have received a copy of the GNU Lesser General Public License along with this program. If not, see . */ -#include +/* Do not guard the include, since is supposed to define + the assert macro each time it is included. */ + +#if __GNUC__ >= 3 +@PRAGMA_SYSTEM_HEADER@ +#endif +@PRAGMA_COLUMNS@ + +#@INCLUDE_NEXT@ @NEXT_ASSERT_H@ -#define SIG_HANDLER_INLINE _GL_EXTERN_INLINE -#include "sig-handler.h" +/* The definition of static_assert is copied here. */ diff --git a/lib/assure.h b/lib/assure.h index 49aa82f..e31076d 100644 --- a/lib/assure.h +++ b/lib/assure.h @@ -1,6 +1,6 @@ /* Run-time assert-like macros. - Copyright (C) 2014-2021 Free Software Foundation, Inc. + Copyright (C) 2014-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/attribute.h b/lib/attribute.h index 80a23f5..9464fde 100644 --- a/lib/attribute.h +++ b/lib/attribute.h @@ -1,6 +1,6 @@ /* ATTRIBUTE_* macros for using attributes in GCC and similar compilers - Copyright 2020-2021 Free Software Foundation, Inc. + Copyright 2020-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -32,7 +32,7 @@ /* This file defines two types of attributes: - * C2x standard attributes. These have macro names that do not begin with + * C23 standard attributes. These have macro names that do not begin with 'ATTRIBUTE_'. * Selected GCC attributes; see: https://gcc.gnu.org/onlinedocs/gcc/Common-Function-Attributes.html @@ -41,6 +41,21 @@ These names begin with 'ATTRIBUTE_' to avoid name clashes. */ +/* This file uses _GL_ATTRIBUTE_ALLOC_SIZE, _GL_ATTRIBUTE_ALWAYS_INLINE, + _GL_ATTRIBUTE_ARTIFICIAL, _GL_ATTRIBUTE_COLD, _GL_ATTRIBUTE_CONST, + _GL_ATTRIBUTE_DEALLOC, _GL_ATTRIBUTE_DEPRECATED, _GL_ATTRIBUTE_ERROR, + _GL_ATTRIBUTE_WARNING, _GL_ATTRIBUTE_EXTERNALLY_VISIBLE, + _GL_ATTRIBUTE_FALLTHROUGH, _GL_ATTRIBUTE_FORMAT, _GL_ATTRIBUTE_LEAF, + _GL_ATTRIBUTE_MALLOC, _GL_ATTRIBUTE_MAY_ALIAS, _GL_ATTRIBUTE_MAYBE_UNUSED, + _GL_ATTRIBUTE_NODISCARD, _GL_ATTRIBUTE_NOINLINE, _GL_ATTRIBUTE_NONNULL, + _GL_ATTRIBUTE_NONSTRING, _GL_ATTRIBUTE_NOTHROW, _GL_ATTRIBUTE_PACKED, + _GL_ATTRIBUTE_PURE, _GL_ATTRIBUTE_RETURNS_NONNULL, + _GL_ATTRIBUTE_SENTINEL. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + + /* =============== Attributes for specific kinds of functions =============== */ /* Attributes for functions that should not be used. */ @@ -76,6 +91,14 @@ /* Applies to: function, pointer to function, function types. */ #define ATTRIBUTE_ALLOC_SIZE(args) _GL_ATTRIBUTE_ALLOC_SIZE (args) +/* ATTRIBUTE_DEALLOC (F, I) declares that the function returns pointers + that can be freed by passing them as the Ith argument to the + function F. + ATTRIBUTE_DEALLOC_FREE declares that the function returns pointers that + can be freed via 'free'; it can be used only after declaring 'free'. */ +/* Applies to: functions. Cannot be used on inline functions. */ +#define ATTRIBUTE_DEALLOC(f, i) _GL_ATTRIBUTE_DEALLOC(f, i) +#define ATTRIBUTE_DEALLOC_FREE _GL_ATTRIBUTE_DEALLOC_FREE /* Attributes for variadic functions. */ diff --git a/lib/basename-lgpl.c b/lib/basename-lgpl.c index 5dbd157..6de60aa 100644 --- a/lib/basename-lgpl.c +++ b/lib/basename-lgpl.c @@ -1,6 +1,6 @@ /* basename.c -- return the last element in a file name - Copyright (C) 1990, 1998-2001, 2003-2006, 2009-2021 Free Software + Copyright (C) 1990, 1998-2001, 2003-2006, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify @@ -21,7 +21,6 @@ /* Specification. */ #include "basename-lgpl.h" -#include #include #include "filename.h" diff --git a/lib/basename-lgpl.h b/lib/basename-lgpl.h index d520c09..c1982fa 100644 --- a/lib/basename-lgpl.h +++ b/lib/basename-lgpl.h @@ -1,6 +1,6 @@ /* Extract the last component (base name) of a file name. - Copyright (C) 1998, 2001, 2003-2006, 2009-2021 Free Software Foundation, + Copyright (C) 1998, 2001, 2003-2006, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify @@ -19,6 +19,11 @@ #ifndef _BASENAME_LGPL_H #define _BASENAME_LGPL_H +/* This file uses _GL_ATTRIBUTE_PURE. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + #include #ifndef DOUBLE_SLASH_IS_DISTINCT_ROOT diff --git a/lib/basename.c b/lib/basename.c index 1181134..21fab1e 100644 --- a/lib/basename.c +++ b/lib/basename.c @@ -1,11 +1,11 @@ /* basename.c -- return the last element in a file name - Copyright (C) 1990, 1998-2001, 2003-2006, 2009-2021 Free Software + Copyright (C) 1990, 1998-2001, 2003-2006, 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/lib/binary-io.c b/lib/binary-io.c index adc0ae2..28a9e6e 100644 --- a/lib/binary-io.c +++ b/lib/binary-io.c @@ -1,5 +1,5 @@ /* Binary mode I/O. - Copyright 2017-2021 Free Software Foundation, Inc. + Copyright 2017-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/binary-io.h b/lib/binary-io.h index 0fa8d54..855d6f8 100644 --- a/lib/binary-io.h +++ b/lib/binary-io.h @@ -1,5 +1,5 @@ /* Binary mode I/O. - Copyright (C) 2001, 2003, 2005, 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2001, 2003, 2005, 2008-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -17,6 +17,11 @@ #ifndef _BINARY_H #define _BINARY_H +/* This file uses _GL_INLINE_HEADER_BEGIN, _GL_INLINE, _GL_UNUSED. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + /* For systems that distinguish between text and binary I/O. O_BINARY is guaranteed by the gnulib . */ #include @@ -25,9 +30,6 @@ so we include it here first. */ #include -#ifndef _GL_INLINE_HEADER_BEGIN - #error "Please include config.h first." -#endif _GL_INLINE_HEADER_BEGIN #ifndef BINARY_IO_INLINE # define BINARY_IO_INLINE _GL_INLINE @@ -47,7 +49,7 @@ _GL_INLINE_HEADER_BEGIN /* Use a function rather than a macro, to avoid gcc warnings "warning: statement with no effect". */ BINARY_IO_INLINE int -__gl_setmode (int fd _GL_UNUSED, int mode _GL_UNUSED) +__gl_setmode (_GL_UNUSED int fd, _GL_UNUSED int mode) { return O_BINARY; } diff --git a/lib/bitrotate.c b/lib/bitrotate.c index e8987f2..180ab15 100644 --- a/lib/bitrotate.c +++ b/lib/bitrotate.c @@ -1,6 +1,6 @@ /* Rotate bits in integers. - Copyright (C) 2012-2021 Free Software Foundation, Inc. + Copyright (C) 2012-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/bitrotate.h b/lib/bitrotate.h index ceb734a..6fb7b49 100644 --- a/lib/bitrotate.h +++ b/lib/bitrotate.h @@ -1,5 +1,5 @@ /* bitrotate.h - Rotate bits in integers - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -19,13 +19,15 @@ #ifndef _GL_BITROTATE_H #define _GL_BITROTATE_H +/* This file uses _GL_INLINE_HEADER_BEGIN, _GL_INLINE. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + #include #include #include -#ifndef _GL_INLINE_HEADER_BEGIN - #error "Please include config.h first." -#endif _GL_INLINE_HEADER_BEGIN #ifndef BITROTATE_INLINE # define BITROTATE_INLINE _GL_INLINE diff --git a/lib/btowc.c b/lib/btowc.c index b8239af..4defbdd 100644 --- a/lib/btowc.c +++ b/lib/btowc.c @@ -1,5 +1,5 @@ /* Convert unibyte character to wide character. - Copyright (C) 2008, 2010-2021 Free Software Foundation, Inc. + Copyright (C) 2008, 2010-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2008. This file is free software: you can redistribute it and/or modify @@ -22,6 +22,7 @@ #include #include +#include wint_t btowc (int c) @@ -32,7 +33,14 @@ btowc (int c) wchar_t wc; buf[0] = c; +#if HAVE_MBRTOWC + mbstate_t state; + memset (&state, 0, sizeof (mbstate_t)); + size_t ret = mbrtowc (&wc, buf, 1, &state); + if (!(ret == (size_t)(-1) || ret == (size_t)(-2))) +#else if (mbtowc (&wc, buf, 1) >= 0) +#endif return wc; } return WEOF; diff --git a/lib/c++defs.h b/lib/c++defs.h index a47b61a..458c014 100644 --- a/lib/c++defs.h +++ b/lib/c++defs.h @@ -1,5 +1,5 @@ /* C++ compatible function declaration macros. - Copyright (C) 2010-2021 Free Software Foundation, Inc. + Copyright (C) 2010-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published @@ -99,6 +99,12 @@ Example: _GL_FUNCDECL_RPL (open, int, (const char *filename, int flags, ...) _GL_ARG_NONNULL ((1))); + + Note: Attributes, such as _GL_ATTRIBUTE_DEPRECATED, are supported in front + of a _GL_FUNCDECL_RPL invocation only in C mode, not in C++ mode. (That's + because + [[...]] extern "C" ; + is invalid syntax in C++.) */ #define _GL_FUNCDECL_RPL(func,rettype,parameters_and_attributes) \ _GL_FUNCDECL_RPL_1 (rpl_##func, rettype, parameters_and_attributes) diff --git a/lib/c-ctype.c b/lib/c-ctype.c index 300f97c..a4343f4 100644 --- a/lib/c-ctype.c +++ b/lib/c-ctype.c @@ -1,6 +1,6 @@ /* Character handling in C locale. - Copyright (C) 2003-2021 Free Software Foundation, Inc. + Copyright (C) 2003-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/c-ctype.h b/lib/c-ctype.h index 3a652ac..cb0f4f3 100644 --- a/lib/c-ctype.h +++ b/lib/c-ctype.h @@ -5,7 +5,7 @@ functions' behaviour depends on the current locale set via setlocale. - Copyright (C) 2000-2003, 2006, 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2000-2003, 2006, 2008-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -23,11 +23,11 @@ #ifndef C_CTYPE_H #define C_CTYPE_H -#include - -#ifndef _GL_INLINE_HEADER_BEGIN +/* This file uses _GL_INLINE_HEADER_BEGIN, _GL_INLINE. */ +#if !_GL_CONFIG_H_INCLUDED #error "Please include config.h first." #endif + _GL_INLINE_HEADER_BEGIN #ifndef C_CTYPE_INLINE # define C_CTYPE_INLINE _GL_INLINE diff --git a/lib/c-stack.c b/lib/c-stack.c index 1965bdd..f0078d5 100644 --- a/lib/c-stack.c +++ b/lib/c-stack.c @@ -1,10 +1,10 @@ /* Stack overflow handling. - Copyright (C) 2002, 2004, 2006, 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2002, 2004, 2006, 2008-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -52,7 +52,6 @@ #include #include "exitfail.h" -#include "getprogname.h" #include "idx.h" #include "ignore-value.h" @@ -126,7 +125,7 @@ die (int signo) } static _GL_ASYNC_SAFE void -null_action (int signo _GL_UNUSED) +null_action (_GL_UNUSED int signo) { } @@ -142,7 +141,7 @@ static volatile int segv_handler_missing; overflow. This function is async-signal-safe. */ static _GL_ASYNC_SAFE int -segv_handler (void *address _GL_UNUSED, int serious) +segv_handler (_GL_UNUSED void *address, int serious) { # if DEBUG { @@ -165,7 +164,7 @@ segv_handler (void *address _GL_UNUSED, int serious) overflow and exit. This function is async-signal-safe. */ static _GL_ASYNC_SAFE _Noreturn void -overflow_handler (int emergency, stackoverflow_context_t context _GL_UNUSED) +overflow_handler (int emergency, _GL_UNUSED stackoverflow_context_t context) { # if DEBUG { @@ -205,7 +204,7 @@ c_stack_action (_GL_ASYNC_SAFE void (*action) (int)) #else /* !HAVE_STACK_OVERFLOW_RECOVERY */ int -c_stack_action (_GL_ASYNC_SAFE void (*action) (int) _GL_UNUSED) +c_stack_action (_GL_ASYNC_SAFE void (*action) (_GL_UNUSED int) ) { errno = ENOTSUP; return -1; diff --git a/lib/c-stack.h b/lib/c-stack.h index a9a8b13..7958112 100644 --- a/lib/c-stack.h +++ b/lib/c-stack.h @@ -1,10 +1,10 @@ /* Stack overflow handling. - Copyright (C) 2002, 2004, 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2002, 2004, 2008-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -15,6 +15,15 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . */ +/* This file uses _GL_ASYNC_SAFE. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + +#ifdef __cplusplus +extern "C" +{ +#endif /* Set up ACTION so that it is invoked on C stack overflow and on other, stack-unrelated, segmentation violation. @@ -47,3 +56,7 @@ signal or exercise other system dependent exception handling APIs. */ extern int c_stack_action (_GL_ASYNC_SAFE void (* /*action*/) (int)); + +#ifdef __cplusplus +} +#endif diff --git a/lib/c-strcase.h b/lib/c-strcase.h index 82f99bb..5dfa96c 100644 --- a/lib/c-strcase.h +++ b/lib/c-strcase.h @@ -1,5 +1,5 @@ /* Case-insensitive string comparison functions in C locale. - Copyright (C) 1995-1996, 2001, 2003, 2005, 2009-2021 Free Software + Copyright (C) 1995-1996, 2001, 2003, 2005, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify @@ -18,6 +18,11 @@ #ifndef C_STRCASE_H #define C_STRCASE_H +/* This file uses _GL_ATTRIBUTE_PURE. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + #include diff --git a/lib/c-strcasecmp.c b/lib/c-strcasecmp.c index 3c22455..8a958dc 100644 --- a/lib/c-strcasecmp.c +++ b/lib/c-strcasecmp.c @@ -1,5 +1,5 @@ /* c-strcasecmp.c -- case insensitive string comparator in C locale - Copyright (C) 1998-1999, 2005-2006, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 1998-1999, 2005-2006, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/c-strcaseeq.h b/lib/c-strcaseeq.h index 66b9cf3..1d0759a 100644 --- a/lib/c-strcaseeq.h +++ b/lib/c-strcaseeq.h @@ -1,5 +1,5 @@ /* Optimized case-insensitive string comparison in C locale. - Copyright (C) 2001-2002, 2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2001-2002, 2007, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/c-strncasecmp.c b/lib/c-strncasecmp.c index f3ca786..4ca8c5f 100644 --- a/lib/c-strncasecmp.c +++ b/lib/c-strncasecmp.c @@ -1,5 +1,5 @@ /* c-strncasecmp.c -- case insensitive string comparator in C locale - Copyright (C) 1998-1999, 2005-2006, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 1998-1999, 2005-2006, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/calloc.c b/lib/calloc.c index 25064e9..08843ac 100644 --- a/lib/calloc.c +++ b/lib/calloc.c @@ -1,6 +1,6 @@ /* calloc() function that is glibc compatible. This wrapper function is required at least on Tru64 UNIX 5.1 and mingw. - Copyright (C) 2004-2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2004-2007, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/careadlinkat.c b/lib/careadlinkat.c index 9d0c125..49c92dc 100644 --- a/lib/careadlinkat.c +++ b/lib/careadlinkat.c @@ -1,6 +1,6 @@ /* Read symbolic links into a buffer without size limitation, relative to fd. - Copyright (C) 2001, 2003-2004, 2007, 2009-2021 Free Software Foundation, + Copyright (C) 2001, 2003-2004, 2007, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify @@ -35,10 +35,6 @@ # define SIZE_MAX ((size_t) -1) #endif -#ifndef SSIZE_MAX -# define SSIZE_MAX ((ssize_t) (SIZE_MAX / 2)) -#endif - #include "allocator.h" enum { STACK_BUF_SIZE = 1024 }; @@ -55,7 +51,9 @@ enum { STACK_BUF_SIZE = 1024 }; When the GCC bug is fixed this workaround should be limited to the broken GCC versions. */ #if _GL_GNUC_PREREQ (10, 1) -# if defined GCC_LINT || defined lint +# if _GL_GNUC_PREREQ (12, 1) +# pragma GCC diagnostic ignored "-Wreturn-local-addr" +# elif defined GCC_LINT || defined lint __attribute__ ((__noinline__)) # elif __OPTIMIZE__ && !__NO_INLINE__ # define GCC_BOGUS_WRETURN_LOCAL_ADDR diff --git a/lib/careadlinkat.h b/lib/careadlinkat.h index a3517b8..562cf01 100644 --- a/lib/careadlinkat.h +++ b/lib/careadlinkat.h @@ -1,6 +1,6 @@ /* Read symbolic links into a buffer without size limitation, relative to fd. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -20,6 +20,11 @@ #ifndef _GL_CAREADLINKAT_H #define _GL_CAREADLINKAT_H +/* This file uses HAVE_READLINKAT. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + #include #include diff --git a/lib/cdefs.h b/lib/cdefs.h index b883b25..412f036 100644 --- a/lib/cdefs.h +++ b/lib/cdefs.h @@ -1,4 +1,5 @@ -/* Copyright (C) 1992-2021 Free Software Foundation, Inc. +/* Copyright (C) 1992-2023 Free Software Foundation, Inc. + Copyright The GNU Toolchain Authors. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -40,7 +41,9 @@ Similarly for __has_builtin, etc. */ #if (defined __has_attribute \ && (!defined __clang_minor__ \ - || 3 < __clang_major__ + (5 <= __clang_minor__))) + || (defined __apple_build_version__ \ + ? 6000000 <= __apple_build_version__ \ + : 3 < __clang_major__ + (5 <= __clang_minor__)))) # define __glibc_has_attribute(attr) __has_attribute (attr) #else # define __glibc_has_attribute(attr) 0 @@ -137,19 +140,75 @@ #endif +/* Gnulib avoids these definitions, as they don't work on non-glibc platforms. + In particular, __bos and __bos0 are defined differently in the Android libc. + */ +#ifndef __GNULIB_CDEFS + /* Fortify support. */ -#define __bos(ptr) __builtin_object_size (ptr, __USE_FORTIFY_LEVEL > 1) -#define __bos0(ptr) __builtin_object_size (ptr, 0) +# define __bos(ptr) __builtin_object_size (ptr, __USE_FORTIFY_LEVEL > 1) +# define __bos0(ptr) __builtin_object_size (ptr, 0) /* Use __builtin_dynamic_object_size at _FORTIFY_SOURCE=3 when available. */ -#if __USE_FORTIFY_LEVEL == 3 && __glibc_clang_prereq (9, 0) -# define __glibc_objsize0(__o) __builtin_dynamic_object_size (__o, 0) -# define __glibc_objsize(__o) __builtin_dynamic_object_size (__o, 1) -#else -# define __glibc_objsize0(__o) __bos0 (__o) -# define __glibc_objsize(__o) __bos (__o) +# if __USE_FORTIFY_LEVEL == 3 && (__glibc_clang_prereq (9, 0) \ + || __GNUC_PREREQ (12, 0)) +# define __glibc_objsize0(__o) __builtin_dynamic_object_size (__o, 0) +# define __glibc_objsize(__o) __builtin_dynamic_object_size (__o, 1) +# else +# define __glibc_objsize0(__o) __bos0 (__o) +# define __glibc_objsize(__o) __bos (__o) +# endif + +/* Compile time conditions to choose between the regular, _chk and _chk_warn + variants. These conditions should get evaluated to constant and optimized + away. */ + +# define __glibc_safe_len_cond(__l, __s, __osz) ((__l) <= (__osz) / (__s)) +# define __glibc_unsigned_or_positive(__l) \ + ((__typeof (__l)) 0 < (__typeof (__l)) -1 \ + || (__builtin_constant_p (__l) && (__l) > 0)) + +/* Length is known to be safe at compile time if the __L * __S <= __OBJSZ + condition can be folded to a constant and if it is true, or unknown (-1) */ +# define __glibc_safe_or_unknown_len(__l, __s, __osz) \ + ((__osz) == (__SIZE_TYPE__) -1 \ + || (__glibc_unsigned_or_positive (__l) \ + && __builtin_constant_p (__glibc_safe_len_cond ((__SIZE_TYPE__) (__l), \ + (__s), (__osz))) \ + && __glibc_safe_len_cond ((__SIZE_TYPE__) (__l), (__s), (__osz)))) + +/* Conversely, we know at compile time that the length is unsafe if the + __L * __S <= __OBJSZ condition can be folded to a constant and if it is + false. */ +# define __glibc_unsafe_len(__l, __s, __osz) \ + (__glibc_unsigned_or_positive (__l) \ + && __builtin_constant_p (__glibc_safe_len_cond ((__SIZE_TYPE__) (__l), \ + __s, __osz)) \ + && !__glibc_safe_len_cond ((__SIZE_TYPE__) (__l), __s, __osz)) + +/* Fortify function f. __f_alias, __f_chk and __f_chk_warn must be + declared. */ + +# define __glibc_fortify(f, __l, __s, __osz, ...) \ + (__glibc_safe_or_unknown_len (__l, __s, __osz) \ + ? __ ## f ## _alias (__VA_ARGS__) \ + : (__glibc_unsafe_len (__l, __s, __osz) \ + ? __ ## f ## _chk_warn (__VA_ARGS__, __osz) \ + : __ ## f ## _chk (__VA_ARGS__, __osz))) \ + +/* Fortify function f, where object size argument passed to f is the number of + elements and not total size. */ + +# define __glibc_fortify_n(f, __l, __s, __osz, ...) \ + (__glibc_safe_or_unknown_len (__l, __s, __osz) \ + ? __ ## f ## _alias (__VA_ARGS__) \ + : (__glibc_unsafe_len (__l, __s, __osz) \ + ? __ ## f ## _chk_warn (__VA_ARGS__, (__osz) / (__s)) \ + : __ ## f ## _chk (__VA_ARGS__, (__osz) / (__s)))) \ + #endif + #if __GNUC_PREREQ (4,3) # define __warnattr(msg) __attribute__((__warning__ (msg))) # define __errordecl(name, msg) \ @@ -243,6 +302,15 @@ # define __attribute_alloc_size__(params) /* Ignore. */ #endif +/* Tell the compiler which argument to an allocation function + indicates the alignment of the allocation. */ +#if __GNUC_PREREQ (4, 9) || __glibc_has_attribute (__alloc_align__) +# define __attribute_alloc_align__(param) \ + __attribute__ ((__alloc_align__ param)) +#else +# define __attribute_alloc_align__(param) /* Ignore. */ +#endif + /* At some point during the gcc 2.96 development the `pure' attribute for functions was introduced. We don't want to use it unconditionally (although this would be possible) since it generates warnings. */ @@ -261,10 +329,6 @@ #if __GNUC_PREREQ (2,7) || __glibc_has_attribute (__unused__) # define __attribute_maybe_unused__ __attribute__ ((__unused__)) -/* Once the next version of the C standard comes out, we can - do something like the following here: - #elif defined __STDC_VERSION__ && 202???L <= __STDC_VERSION__ - # define __attribute_maybe_unused__ [[__maybe_unused__]] */ #else # define __attribute_maybe_unused__ /* Ignore */ #endif @@ -336,6 +400,16 @@ # define __nonnull(params) __attribute_nonnull__ (params) #endif +/* The returns_nonnull function attribute marks the return type of the function + as always being non-null. */ +#ifndef __returns_nonnull +# if __GNUC_PREREQ (4, 9) || __glibc_has_attribute (__returns_nonnull__) +# define __returns_nonnull __attribute__ ((__returns_nonnull__)) +# else +# define __returns_nonnull +# endif +#endif + /* If fortification mode, we warn about unused results of certain function calls which can lead to problems. */ #if __GNUC_PREREQ (3,4) || __glibc_has_attribute (__warn_unused_result__) @@ -598,9 +672,36 @@ _Static_assert (0, "IEEE 128-bits long double requires redirection on this platf array according to access mode, or at least one element when size-index is not provided: access (access-mode, [, ]) */ -#define __attr_access(x) __attribute__ ((__access__ x)) +# define __attr_access(x) __attribute__ ((__access__ x)) +/* For _FORTIFY_SOURCE == 3 we use __builtin_dynamic_object_size, which may + use the access attribute to get object sizes from function definition + arguments, so we can't use them on functions we fortify. Drop the object + size hints for such functions. */ +# if __USE_FORTIFY_LEVEL == 3 +# define __fortified_attr_access(a, o, s) __attribute__ ((__access__ (a, o))) +# else +# define __fortified_attr_access(a, o, s) __attr_access ((a, o, s)) +# endif +# if __GNUC_PREREQ (11, 0) +# define __attr_access_none(argno) __attribute__ ((__access__ (__none__, argno))) +# else +# define __attr_access_none(argno) +# endif #else +# define __fortified_attr_access(a, o, s) # define __attr_access(x) +# define __attr_access_none(argno) +#endif + +#if __GNUC_PREREQ (11, 0) +/* Designates dealloc as a function to call to deallocate objects + allocated by the declared function. */ +# define __attr_dealloc(dealloc, argno) \ + __attribute__ ((__malloc__ (dealloc, argno))) +# define __attr_dealloc_free __attr_dealloc (__builtin_free, 1) +#else +# define __attr_dealloc(dealloc, argno) +# define __attr_dealloc_free #endif /* Specify that a function such as setjmp or vfork may return diff --git a/lib/cloexec.c b/lib/cloexec.c index 7defa93..e4cecbd 100644 --- a/lib/cloexec.c +++ b/lib/cloexec.c @@ -1,6 +1,6 @@ /* cloexec.c - set or clear the close-on-exec descriptor flag - Copyright (C) 1991, 2004-2006, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 1991, 2004-2006, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/cloexec.h b/lib/cloexec.h index 97a3659..057fd66 100644 --- a/lib/cloexec.h +++ b/lib/cloexec.h @@ -1,6 +1,6 @@ /* cloexec.c - set or clear the close-on-exec descriptor flag - Copyright (C) 2004, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2004, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -15,8 +15,6 @@ You should have received a copy of the GNU Lesser General Public License along with this program. If not, see . */ -#include - /* Set the 'FD_CLOEXEC' flag of DESC if VALUE is true, or clear the flag if VALUE is false. Return 0 on success, or -1 on error with 'errno' set. diff --git a/lib/close.c b/lib/close.c index 5b9ab6c..3c1b09e 100644 --- a/lib/close.c +++ b/lib/close.c @@ -1,5 +1,5 @@ /* close replacement. - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/cmpbuf.c b/lib/cmpbuf.c index 7cee45a..aa79edb 100644 --- a/lib/cmpbuf.c +++ b/lib/cmpbuf.c @@ -1,6 +1,6 @@ /* Buffer primitives for comparison operations. - Copyright (C) 1993, 1995, 1998, 2001-2002, 2006, 2009-2013, 2015-2021 Free + Copyright (C) 1993, 1995, 1998, 2001-2002, 2006, 2009-2013, 2015-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify @@ -104,6 +104,5 @@ buffer_lcm (size_t a, size_t b, size_t lcm_max) /* Yield a if there is an overflow. */ q = a / n; - lcm = q * b; - return lcm <= lcm_max && lcm / b == q ? lcm : a; + return !INT_MULTIPLY_WRAPV (q, b, &lcm) && lcm <= lcm_max ? lcm : a; } diff --git a/lib/cmpbuf.h b/lib/cmpbuf.h index 79b9f06..91680fe 100644 --- a/lib/cmpbuf.h +++ b/lib/cmpbuf.h @@ -1,6 +1,6 @@ /* Buffer primitives for comparison operations. - Copyright (C) 2002, 2009-2013, 2015-2021 Free Software Foundation, Inc. + Copyright (C) 2002, 2009-2013, 2015-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by diff --git a/lib/config.hin b/lib/config.hin index 1a6ccb7..d338c18 100644 --- a/lib/config.hin +++ b/lib/config.hin @@ -37,6 +37,9 @@ #ifndef __ia64__ #undef __ia64__ #endif +#ifndef __loongarch64__ +#undef __loongarch64__ +#endif #ifndef __m68k__ #undef __m68k__ #endif @@ -108,6 +111,10 @@ #endif +/* Witness that has been included. */ +#define _GL_CONFIG_H_INCLUDED 1 + + /* Define if building universal (internal helper macro) */ #undef AC_APPLE_UNIVERSAL_BUILD @@ -126,7 +133,7 @@ /* Define to the number of bits in type 'wint_t'. */ #undef BITSIZEOF_WINT_T -/* Define to 1 if the `closedir' function returns void instead of int. */ +/* Define to 1 if the 'closedir' function returns void instead of int. */ #undef CLOSEDIR_VOID /* Define to 1 if using 'alloca.c'. */ @@ -162,6 +169,10 @@ /* Define to 1 if fopen() fails to recognize a trailing slash. */ #undef FOPEN_TRAILING_SLASH_BUG +/* Define to 1 if fflush is known to work on stdin as per POSIX.1-2008, 0 if + fflush is known to not work, -1 if unknown. */ +#undef FUNC_FFLUSH_STDIN + /* Define to 1 if mkdir mistakenly creates a directory given with a trailing dot component. */ #undef FUNC_MKDIR_DOT_BUG @@ -169,6 +180,9 @@ /* Define to 1 if nl_langinfo (YESEXPR) returns a non-empty string. */ #undef FUNC_NL_LANGINFO_YESEXPR_WORKS +/* Define to 1 if the compiler is checking for lint. */ +#undef GCC_LINT + /* Define this to 'void' or 'struct timezone' to match the system's declaration of the second argument to gettimeofday. */ #undef GETTIMEOFDAY_TIMEZONE @@ -259,6 +273,9 @@ /* Define to 1 when the gnulib module btowc should be tested. */ #undef GNULIB_TEST_BTOWC +/* Define to 1 when the gnulib module calloc-gnu should be tested. */ +#undef GNULIB_TEST_CALLOC_GNU + /* Define to 1 when the gnulib module calloc-posix should be tested. */ #undef GNULIB_TEST_CALLOC_POSIX @@ -295,6 +312,9 @@ /* Define to 1 when the gnulib module fopen should be tested. */ #undef GNULIB_TEST_FOPEN +/* Define to 1 when the gnulib module fopen-gnu should be tested. */ +#undef GNULIB_TEST_FOPEN_GNU + /* Define to 1 when the gnulib module fprintf should be tested. */ #undef GNULIB_TEST_FPRINTF @@ -343,6 +363,9 @@ /* Define to 1 when the gnulib module getpagesize should be tested. */ #undef GNULIB_TEST_GETPAGESIZE +/* Define to 1 when the gnulib module getprogname should be tested. */ +#undef GNULIB_TEST_GETPROGNAME + /* Define to 1 when the gnulib module getrandom should be tested. */ #undef GNULIB_TEST_GETRANDOM @@ -370,6 +393,9 @@ /* Define to 1 when the gnulib module lstat should be tested. */ #undef GNULIB_TEST_LSTAT +/* Define to 1 when the gnulib module malloc-gnu should be tested. */ +#undef GNULIB_TEST_MALLOC_GNU + /* Define to 1 when the gnulib module malloc-posix should be tested. */ #undef GNULIB_TEST_MALLOC_POSIX @@ -427,6 +453,9 @@ /* Define to 1 when the gnulib module printf should be tested. */ #undef GNULIB_TEST_PRINTF +/* Define to 1 when the gnulib module pselect should be tested. */ +#undef GNULIB_TEST_PSELECT + /* Define to 1 when the gnulib module pthread_sigmask should be tested. */ #undef GNULIB_TEST_PTHREAD_SIGMASK @@ -457,6 +486,9 @@ /* Define to 1 when the gnulib module reallocarray should be tested. */ #undef GNULIB_TEST_REALLOCARRAY +/* Define to 1 when the gnulib module realloc-gnu should be tested. */ +#undef GNULIB_TEST_REALLOC_GNU + /* Define to 1 when the gnulib module realloc-posix should be tested. */ #undef GNULIB_TEST_REALLOC_POSIX @@ -475,9 +507,6 @@ /* Define to 1 when the gnulib module setsockopt should be tested. */ #undef GNULIB_TEST_SETSOCKOPT -/* Define to 1 when the gnulib module sigaction should be tested. */ -#undef GNULIB_TEST_SIGACTION - /* Define to 1 when the gnulib module sigprocmask should be tested. */ #undef GNULIB_TEST_SIGPROCMASK @@ -493,6 +522,9 @@ /* Define to 1 when the gnulib module stat should be tested. */ #undef GNULIB_TEST_STAT +/* Define to 1 when the gnulib module stpcpy should be tested. */ +#undef GNULIB_TEST_STPCPY + /* Define to 1 when the gnulib module strerror should be tested. */ #undef GNULIB_TEST_STRERROR @@ -511,6 +543,9 @@ /* Define to 1 when the gnulib module symlink should be tested. */ #undef GNULIB_TEST_SYMLINK +/* Define to 1 when the gnulib module time should be tested. */ +#undef GNULIB_TEST_TIME + /* Define to 1 when the gnulib module timegm should be tested. */ #undef GNULIB_TEST_TIMEGM @@ -526,9 +561,6 @@ /* Define to 1 when the gnulib module unsetenv should be tested. */ #undef GNULIB_TEST_UNSETENV -/* Define to 1 when the gnulib module vasprintf should be tested. */ -#undef GNULIB_TEST_VASPRINTF - /* Define to 1 when the gnulib module vfprintf should be tested. */ #undef GNULIB_TEST_VFPRINTF @@ -579,7 +611,7 @@ /* Define to 1 if you have the header file. */ #undef HAVE_ARPA_INET_H -/* Define to 1 if you have the `atoll' function. */ +/* Define to 1 if you have the 'atoll' function. */ #undef HAVE_ATOLL /* Define to 1 if you have the header file. */ @@ -588,7 +620,7 @@ /* Define to 1 if you have the header file. */ #undef HAVE_BP_SYM_H -/* Define to 1 if you have the `btowc' function. */ +/* Define to 1 if you have the 'btowc' function. */ #undef HAVE_BTOWC /* Define to 1 if nanosleep mishandles large arguments. */ @@ -605,208 +637,234 @@ the CoreFoundation framework. */ #undef HAVE_CFPREFERENCESCOPYAPPVALUE -/* Define to 1 if you have the `clock_gettime' function. */ +/* Define to 1 if you have the 'clock_getres' function. */ +#undef HAVE_CLOCK_GETRES + +/* Define to 1 if you have the 'clock_gettime' function. */ #undef HAVE_CLOCK_GETTIME -/* Define to 1 if you have the `clock_settime' function. */ +/* Define to 1 if you have the 'clock_settime' function. */ #undef HAVE_CLOCK_SETTIME /* Define to 1 if you have the header file. */ #undef HAVE_CRTDEFS_H +/* Define to 1 if the alignas and alignof keywords work. */ +#undef HAVE_C_ALIGNASOF + +/* Define to 1 if bool, true and false work as per C2023. */ +#undef HAVE_C_BOOL + +/* Define to 1 if C nullptr is known to work. */ +#undef HAVE_C_NULLPTR + +/* Define to 1 if the static_assert keyword works. */ +#undef HAVE_C_STATIC_ASSERT + +/* Define to 1 if C supports variable-length arrays. */ +#undef HAVE_C_VARARRAYS + /* Define if the GNU dcgettext() function is already present or preinstalled. */ #undef HAVE_DCGETTEXT -/* Define to 1 if you have the declaration of `alarm', and to 0 if you don't. +/* Define to 1 if you have the declaration of 'alarm', and to 0 if you don't. */ #undef HAVE_DECL_ALARM -/* Define to 1 if you have the declaration of `clearerr_unlocked', and to 0 if +/* Define to 1 if you have the declaration of 'clearerr_unlocked', and to 0 if you don't. */ #undef HAVE_DECL_CLEARERR_UNLOCKED -/* Define to 1 if you have the declaration of `ecvt', and to 0 if you don't. +/* Define to 1 if you have the declaration of 'ecvt', and to 0 if you don't. */ #undef HAVE_DECL_ECVT -/* Define to 1 if you have the declaration of `execvpe', and to 0 if you +/* Define to 1 if you have the declaration of 'execvpe', and to 0 if you don't. */ #undef HAVE_DECL_EXECVPE -/* Define to 1 if you have the declaration of `fcloseall', and to 0 if you +/* Define to 1 if you have the declaration of 'fcloseall', and to 0 if you don't. */ #undef HAVE_DECL_FCLOSEALL -/* Define to 1 if you have the declaration of `fcvt', and to 0 if you don't. +/* Define to 1 if you have the declaration of 'fcvt', and to 0 if you don't. */ #undef HAVE_DECL_FCVT -/* Define to 1 if you have the declaration of `feof_unlocked', and to 0 if you +/* Define to 1 if you have the declaration of 'feof_unlocked', and to 0 if you don't. */ #undef HAVE_DECL_FEOF_UNLOCKED -/* Define to 1 if you have the declaration of `ferror_unlocked', and to 0 if +/* Define to 1 if you have the declaration of 'ferror_unlocked', and to 0 if you don't. */ #undef HAVE_DECL_FERROR_UNLOCKED -/* Define to 1 if you have the declaration of `fflush_unlocked', and to 0 if +/* Define to 1 if you have the declaration of 'fflush_unlocked', and to 0 if you don't. */ #undef HAVE_DECL_FFLUSH_UNLOCKED -/* Define to 1 if you have the declaration of `fgets_unlocked', and to 0 if +/* Define to 1 if you have the declaration of 'fgets_unlocked', and to 0 if you don't. */ #undef HAVE_DECL_FGETS_UNLOCKED -/* Define to 1 if you have the declaration of `fputc_unlocked', and to 0 if +/* Define to 1 if you have the declaration of 'fputc_unlocked', and to 0 if you don't. */ #undef HAVE_DECL_FPUTC_UNLOCKED -/* Define to 1 if you have the declaration of `fputs_unlocked', and to 0 if +/* Define to 1 if you have the declaration of 'fputs_unlocked', and to 0 if you don't. */ #undef HAVE_DECL_FPUTS_UNLOCKED -/* Define to 1 if you have the declaration of `fread_unlocked', and to 0 if +/* Define to 1 if you have the declaration of 'fread_unlocked', and to 0 if you don't. */ #undef HAVE_DECL_FREAD_UNLOCKED -/* Define to 1 if you have the declaration of `fwrite_unlocked', and to 0 if +/* Define to 1 if you have the declaration of 'fwrite_unlocked', and to 0 if you don't. */ #undef HAVE_DECL_FWRITE_UNLOCKED -/* Define to 1 if you have the declaration of `gcvt', and to 0 if you don't. +/* Define to 1 if you have the declaration of 'gcvt', and to 0 if you don't. */ #undef HAVE_DECL_GCVT -/* Define to 1 if you have the declaration of `getchar_unlocked', and to 0 if +/* Define to 1 if you have the declaration of 'getchar_unlocked', and to 0 if you don't. */ #undef HAVE_DECL_GETCHAR_UNLOCKED -/* Define to 1 if you have the declaration of `getc_unlocked', and to 0 if you +/* Define to 1 if you have the declaration of 'getc_unlocked', and to 0 if you don't. */ #undef HAVE_DECL_GETC_UNLOCKED -/* Define to 1 if you have the declaration of `getdtablesize', and to 0 if you +/* Define to 1 if you have the declaration of 'getdtablesize', and to 0 if you don't. */ #undef HAVE_DECL_GETDTABLESIZE -/* Define to 1 if you have the declaration of `inet_pton', and to 0 if you +/* Define to 1 if you have the declaration of 'getw', and to 0 if you don't. + */ +#undef HAVE_DECL_GETW + +/* Define to 1 if you have the declaration of 'inet_pton', and to 0 if you don't. */ #undef HAVE_DECL_INET_PTON -/* Define to 1 if you have the declaration of `isblank', and to 0 if you +/* Define to 1 if you have the declaration of 'isblank', and to 0 if you don't. */ #undef HAVE_DECL_ISBLANK -/* Define to 1 if you have the declaration of `iswblank', and to 0 if you +/* Define to 1 if you have the declaration of 'iswblank', and to 0 if you don't. */ #undef HAVE_DECL_ISWBLANK -/* Define to 1 if you have the declaration of `localtime_r', and to 0 if you +/* Define to 1 if you have the declaration of 'localtime_r', and to 0 if you don't. */ #undef HAVE_DECL_LOCALTIME_R -/* Define to 1 if you have the declaration of `mbrtowc', and to 0 if you +/* Define to 1 if you have the declaration of 'mbrtowc', and to 0 if you don't. */ #undef HAVE_DECL_MBRTOWC -/* Define to 1 if you have the declaration of `mbsinit', and to 0 if you +/* Define to 1 if you have the declaration of 'mbsinit', and to 0 if you don't. */ #undef HAVE_DECL_MBSINIT -/* Define to 1 if you have the declaration of `mbsrtowcs', and to 0 if you +/* Define to 1 if you have the declaration of 'mbsrtowcs', and to 0 if you don't. */ #undef HAVE_DECL_MBSRTOWCS -/* Define to 1 if you have the declaration of `program_invocation_name', and +/* Define to 1 if you have the declaration of 'program_invocation_name', and to 0 if you don't. */ #undef HAVE_DECL_PROGRAM_INVOCATION_NAME -/* Define to 1 if you have the declaration of `program_invocation_short_name', +/* Define to 1 if you have the declaration of 'program_invocation_short_name', and to 0 if you don't. */ #undef HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME -/* Define to 1 if you have the declaration of `putchar_unlocked', and to 0 if +/* Define to 1 if you have the declaration of 'putchar_unlocked', and to 0 if you don't. */ #undef HAVE_DECL_PUTCHAR_UNLOCKED -/* Define to 1 if you have the declaration of `putc_unlocked', and to 0 if you +/* Define to 1 if you have the declaration of 'putc_unlocked', and to 0 if you don't. */ #undef HAVE_DECL_PUTC_UNLOCKED -/* Define to 1 if you have the declaration of `setenv', and to 0 if you don't. +/* Define to 1 if you have the declaration of 'putw', and to 0 if you don't. + */ +#undef HAVE_DECL_PUTW + +/* Define to 1 if you have the declaration of 'setenv', and to 0 if you don't. */ #undef HAVE_DECL_SETENV -/* Define to 1 if you have the declaration of `sleep', and to 0 if you don't. +/* Define to 1 if you have the declaration of 'sleep', and to 0 if you don't. */ #undef HAVE_DECL_SLEEP -/* Define to 1 if you have the declaration of `snprintf', and to 0 if you +/* Define to 1 if you have the declaration of 'snprintf', and to 0 if you don't. */ #undef HAVE_DECL_SNPRINTF -/* Define to 1 if you have the declaration of `strerror_r', and to 0 if you +/* Define to 1 if you have the declaration of 'strerror_r', and to 0 if you don't. */ #undef HAVE_DECL_STRERROR_R -/* Define to 1 if you have the declaration of `strncasecmp', and to 0 if you +/* Define to 1 if you have the declaration of 'strncasecmp', and to 0 if you don't. */ #undef HAVE_DECL_STRNCASECMP -/* Define to 1 if you have the declaration of `strnlen', and to 0 if you +/* Define to 1 if you have the declaration of 'strnlen', and to 0 if you don't. */ #undef HAVE_DECL_STRNLEN -/* Define to 1 if you have the declaration of `strtoimax', and to 0 if you +/* Define to 1 if you have the declaration of 'strtoimax', and to 0 if you don't. */ #undef HAVE_DECL_STRTOIMAX -/* Define to 1 if you have the declaration of `strtoll', and to 0 if you +/* Define to 1 if you have the declaration of 'strtoll', and to 0 if you don't. */ #undef HAVE_DECL_STRTOLL -/* Define to 1 if you have the declaration of `towlower', and to 0 if you +/* Define to 1 if you have the declaration of 'towlower', and to 0 if you don't. */ #undef HAVE_DECL_TOWLOWER -/* Define to 1 if you have the declaration of `tzname', and to 0 if you don't. +/* Define to 1 if you have the declaration of 'tzname', and to 0 if you don't. */ #undef HAVE_DECL_TZNAME -/* Define to 1 if you have the declaration of `unsetenv', and to 0 if you +/* Define to 1 if you have the declaration of 'unsetenv', and to 0 if you don't. */ #undef HAVE_DECL_UNSETENV -/* Define to 1 if you have the declaration of `wcrtomb', and to 0 if you +/* Define to 1 if you have the declaration of 'wcrtomb', and to 0 if you don't. */ #undef HAVE_DECL_WCRTOMB -/* Define to 1 if you have the declaration of `wcsdup', and to 0 if you don't. +/* Define to 1 if you have the declaration of 'wcsdup', and to 0 if you don't. */ #undef HAVE_DECL_WCSDUP -/* Define to 1 if you have the declaration of `wctob', and to 0 if you don't. +/* Define to 1 if you have the declaration of 'wctob', and to 0 if you don't. */ #undef HAVE_DECL_WCTOB -/* Define to 1 if you have the declaration of `wcwidth', and to 0 if you +/* Define to 1 if you have the declaration of 'wcwidth', and to 0 if you don't. */ #undef HAVE_DECL_WCWIDTH -/* Define to 1 if you have the declaration of `_putenv', and to 0 if you +/* Define to 1 if you have the declaration of '_putenv', and to 0 if you don't. */ #undef HAVE_DECL__PUTENV -/* Define to 1 if you have the declaration of `_snprintf', and to 0 if you +/* Define to 1 if you have the declaration of '_snprintf', and to 0 if you don't. */ #undef HAVE_DECL__SNPRINTF -/* Define to 1 if you have the declaration of `__argv', and to 0 if you don't. +/* Define to 1 if you have the declaration of '__argv', and to 0 if you don't. */ #undef HAVE_DECL___ARGV -/* Define to 1 if you have the header file, and it defines `DIR'. +/* Define to 1 if you have the header file, and it defines 'DIR'. */ #undef HAVE_DIRENT_H @@ -816,19 +874,25 @@ /* Define if you have the declaration of environ. */ #undef HAVE_ENVIRON_DECL -/* Define to 1 if you have the `fcntl' function. */ +/* Define to 1 if you have the `error' function. */ +#undef HAVE_ERROR + +/* Define to 1 if you have the header file. */ +#undef HAVE_ERROR_H + +/* Define to 1 if you have the 'fcntl' function. */ #undef HAVE_FCNTL /* Define to 1 if you have the header file. */ #undef HAVE_FEATURES_H -/* Define to 1 if you have the `fnmatch' function. */ +/* Define to 1 if you have the 'fnmatch' function. */ #undef HAVE_FNMATCH /* Define to 1 if you have the header file. */ #undef HAVE_FNMATCH_H -/* Define to 1 if you have the `fork' function. */ +/* Define to 1 if you have the 'fork' function. */ #undef HAVE_FORK /* Define if the 'free' function is guaranteed to preserve errno. */ @@ -837,16 +901,16 @@ /* Define to 1 if you have the `ftruncate' function. */ #undef HAVE_FTRUNCATE -/* Define to 1 if you have the `getdtablesize' function. */ +/* Define to 1 if you have the 'getdtablesize' function. */ #undef HAVE_GETDTABLESIZE -/* Define to 1 if you have the `getexecname' function. */ +/* Define to 1 if you have the 'getexecname' function. */ #undef HAVE_GETEXECNAME /* Define to 1 if you have the header file. */ #undef HAVE_GETOPT_H -/* Define to 1 if you have the `getopt_long_only' function. */ +/* Define to 1 if you have the 'getopt_long_only' function. */ #undef HAVE_GETOPT_LONG_ONLY /* Define to 1 if you have the `getprogname' function. */ @@ -855,13 +919,13 @@ /* Define to 1 if you have the `getrandom' function. */ #undef HAVE_GETRANDOM -/* Define to 1 if you have the `getrlimit' function. */ +/* Define to 1 if you have the 'getrlimit' function. */ #undef HAVE_GETRLIMIT /* Define if the GNU gettext() function is already present or preinstalled. */ #undef HAVE_GETTEXT -/* Define to 1 if you have the `gettimeofday' function. */ +/* Define to 1 if you have the 'gettimeofday' function. */ #undef HAVE_GETTIMEOFDAY /* Define if you have the iconv() function and it works. */ @@ -870,7 +934,7 @@ /* Define to 1 if you have the header file. */ #undef HAVE_ICONV_H -/* Define to 1 if you have the `inet_pton' function. */ +/* Define to 1 if you have the 'inet_pton' function. */ #undef HAVE_INET_PTON /* Define to 1 if the compiler supports one of the keywords 'inline', @@ -888,7 +952,7 @@ declares uintmax_t. */ #undef HAVE_INTTYPES_H_WITH_UINTMAX -/* Define to 1 if you have the `ioctl' function. */ +/* Define to 1 if you have the 'ioctl' function. */ #undef HAVE_IOCTL /* Define to 1 if defines AF_INET. */ @@ -897,16 +961,16 @@ /* Define to 1 if defines AF_INET6. */ #undef HAVE_IPV6 -/* Define to 1 if you have the `isblank' function. */ +/* Define to 1 if you have the 'isblank' function. */ #undef HAVE_ISBLANK /* Define to 1 if you have the `iswblank' function. */ #undef HAVE_ISWBLANK -/* Define to 1 if you have the `iswcntrl' function. */ +/* Define to 1 if you have the 'iswcntrl' function. */ #undef HAVE_ISWCNTRL -/* Define to 1 if you have the `iswctype' function. */ +/* Define to 1 if you have the 'iswctype' function. */ #undef HAVE_ISWCTYPE /* Define if you have and nl_langinfo(CODESET). */ @@ -931,13 +995,13 @@ */ #undef HAVE_LOCALTIME_INFLOOP_BUG -/* Define to 1 if you have the `localtime_r' function. */ +/* Define to 1 if you have the 'localtime_r' function. */ #undef HAVE_LOCALTIME_R /* Define to 1 if the system has the type 'long long int'. */ #undef HAVE_LONG_LONG_INT -/* Define to 1 if you have the `lstat' function. */ +/* Define to 1 if you have the 'lstat' function. */ #undef HAVE_LSTAT /* Define to 1 if you have the header file. */ @@ -950,16 +1014,16 @@ config.h and . */ #undef HAVE_MAP_ANONYMOUS -/* Define to 1 if you have the `mbrtowc' function. */ +/* Define to 1 if you have the 'mbrtowc' function. */ #undef HAVE_MBRTOWC -/* Define to 1 if you have the `mbsinit' function. */ +/* Define to 1 if you have the 'mbsinit' function. */ #undef HAVE_MBSINIT -/* Define to 1 if you have the `mbslen' function. */ +/* Define to 1 if you have the 'mbslen' function. */ #undef HAVE_MBSLEN -/* Define to 1 if you have the `mbsrtowcs' function. */ +/* Define to 1 if you have the 'mbsrtowcs' function. */ #undef HAVE_MBSRTOWCS /* Define to 1 if declares mbstate_t. */ @@ -980,17 +1044,17 @@ /* Define to 1 if defines the MIN and MAX macros. */ #undef HAVE_MINMAX_IN_SYS_PARAM_H -/* Define to 1 if you have the `mkstemp' function. */ +/* Define to 1 if you have the 'mkstemp' function. */ #undef HAVE_MKSTEMP -/* Define to 1 if you have the `mprotect' function. */ +/* Define to 1 if you have the 'mprotect' function. */ #undef HAVE_MPROTECT /* Define to 1 on MSVC platforms that have the "invalid parameter handler" concept. */ #undef HAVE_MSVC_INVALID_PARAMETER_HANDLER -/* Define to 1 if you have the header file, and it defines `DIR'. */ +/* Define to 1 if you have the header file, and it defines 'DIR'. */ #undef HAVE_NDIR_H /* Define to 1 if you have the header file. */ @@ -1008,9 +1072,12 @@ /* Define to 1 if you have the header file. */ #undef HAVE_OS_H -/* Define to 1 if you have the `pipe' function. */ +/* Define to 1 if you have the 'pipe' function. */ #undef HAVE_PIPE +/* Define to 1 if you have the 'pselect' function. */ +#undef HAVE_PSELECT + /* Define if you have the header and the POSIX threads API. */ #undef HAVE_PTHREAD_API @@ -1033,19 +1100,19 @@ /* Define to 1 if the pthread_sigmask function can be used (despite bugs). */ #undef HAVE_PTHREAD_SIGMASK -/* Define to 1 if the system has the type `pthread_spinlock_t'. */ +/* Define to 1 if the system has the type 'pthread_spinlock_t'. */ #undef HAVE_PTHREAD_SPINLOCK_T -/* Define to 1 if the system has the type `pthread_t'. */ +/* Define to 1 if the system has the type 'pthread_t'. */ #undef HAVE_PTHREAD_T -/* Define to 1 if you have the `raise' function. */ +/* Define to 1 if you have the 'raise' function. */ #undef HAVE_RAISE -/* Define to 1 if you have the `rawmemchr' function. */ +/* Define to 1 if you have the 'rawmemchr' function. */ #undef HAVE_RAWMEMCHR -/* Define to 1 if you have the `readlink' function. */ +/* Define to 1 if you have the 'readlink' function. */ #undef HAVE_READLINK /* Define to 1 if you have the `readlinkat' function. */ @@ -1054,7 +1121,7 @@ /* Define to 1 if you have the `reallocarray' function. */ #undef HAVE_REALLOCARRAY -/* Define to 1 if the system has the type `sa_family_t'. */ +/* Define to 1 if the system has the type 'sa_family_t'. */ #undef HAVE_SA_FAMILY_T /* Define to 1 if you have the header file. */ @@ -1066,33 +1133,27 @@ /* Define to 1 if you have the header file. */ #undef HAVE_SEARCH_H -/* Define to 1 if you have the `setdtablesize' function. */ +/* Define to 1 if you have the 'setdtablesize' function. */ #undef HAVE_SETDTABLESIZE -/* Define to 1 if you have the `setenv' function. */ +/* Define to 1 if you have the 'setenv' function. */ #undef HAVE_SETENV -/* Define to 1 if you have the `setrlimit' function. */ +/* Define to 1 if you have the 'setrlimit' function. */ #undef HAVE_SETRLIMIT -/* Define to 1 if you have the `shutdown' function. */ +/* Define to 1 if you have the 'shutdown' function. */ #undef HAVE_SHUTDOWN -/* Define to 1 if you have the `sigaction' function. */ +/* Define to 1 if you have the 'sigaction' function. */ #undef HAVE_SIGACTION -/* Define to 1 if you have the `sigaltstack' function. */ +/* Define to 1 if you have the 'sigaltstack' function. */ #undef HAVE_SIGALTSTACK -/* Define to 1 if you have the `sigblock' function. */ +/* Define to 1 if you have the 'sigblock' function. */ #undef HAVE_SIGBLOCK -/* Define to 1 if the system has the type `siginfo_t'. */ -#undef HAVE_SIGINFO_T - -/* Define to 1 if you have the `siginterrupt' function. */ -#undef HAVE_SIGINTERRUPT - /* Define to 1 if 'sig_atomic_t' is a signed integer type. */ #undef HAVE_SIGNED_SIG_ATOMIC_T @@ -1102,16 +1163,16 @@ /* Define to 1 if 'wint_t' is a signed integer type. */ #undef HAVE_SIGNED_WINT_T -/* Define to 1 if you have the `sigprocmask' function. */ +/* Define to 1 if you have the 'sigprocmask' function. */ #undef HAVE_SIGPROCMASK -/* Define to 1 if the system has the type `sigset_t'. */ +/* Define to 1 if the system has the type 'sigset_t'. */ #undef HAVE_SIGSET_T -/* Define to 1 if you have the `sleep' function. */ +/* Define to 1 if you have the 'sleep' function. */ #undef HAVE_SLEEP -/* Define to 1 if you have the `snprintf' function. */ +/* Define to 1 if you have the 'snprintf' function. */ #undef HAVE_SNPRINTF /* Define if the return value of the snprintf function is the number of of @@ -1123,6 +1184,12 @@ terminated. */ #undef HAVE_SNPRINTF_TRUNCATION_C99 +/* Define to 1 if you have the header file. */ +#undef HAVE_STDBOOL_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_STDCKDINT_H + /* Define to 1 if you have the header file. */ #undef HAVE_STDINT_H @@ -1136,16 +1203,19 @@ /* Define to 1 if you have the header file. */ #undef HAVE_STDLIB_H -/* Define to 1 if you have the `strcasecmp' function. */ +/* Define to 1 if you have the `stpcpy' function. */ +#undef HAVE_STPCPY + +/* Define to 1 if you have the 'strcasecmp' function. */ #undef HAVE_STRCASECMP -/* Define to 1 if you have the `strcasecoll' function. */ +/* Define to 1 if you have the 'strcasecoll' function. */ #undef HAVE_STRCASECOLL /* Define to 1 if you have the `strerror_r' function. */ #undef HAVE_STRERROR_R -/* Define to 1 if you have the `stricoll' function. */ +/* Define to 1 if you have the 'stricoll' function. */ #undef HAVE_STRICOLL /* Define to 1 if you have the header file. */ @@ -1154,64 +1224,64 @@ /* Define to 1 if you have the header file. */ #undef HAVE_STRING_H -/* Define to 1 if you have the `strncasecmp' function. */ +/* Define to 1 if you have the 'strncasecmp' function. */ #undef HAVE_STRNCASECMP -/* Define to 1 if you have the `strnlen' function. */ +/* Define to 1 if you have the 'strnlen' function. */ #undef HAVE_STRNLEN -/* Define to 1 if you have the `strptime' function. */ +/* Define to 1 if you have the 'strptime' function. */ #undef HAVE_STRPTIME -/* Define to 1 if you have the `strtoimax' function. */ +/* Define to 1 if you have the 'strtoimax' function. */ #undef HAVE_STRTOIMAX -/* Define to 1 if you have the `strtoll' function. */ +/* Define to 1 if you have the 'strtoll' function. */ #undef HAVE_STRTOLL -/* Define to 1 if `decimal_point' is a member of `struct lconv'. */ +/* Define to 1 if 'decimal_point' is a member of 'struct lconv'. */ #undef HAVE_STRUCT_LCONV_DECIMAL_POINT -/* Define to 1 if `sa_sigaction' is a member of `struct sigaction'. */ -#undef HAVE_STRUCT_SIGACTION_SA_SIGACTION +/* Define to 1 if 'int_p_cs_precedes' is a member of 'struct lconv'. */ +#undef HAVE_STRUCT_LCONV_INT_P_CS_PRECEDES -/* Define to 1 if the system has the type `struct sockaddr_storage'. */ +/* Define to 1 if the system has the type 'struct sockaddr_storage'. */ #undef HAVE_STRUCT_SOCKADDR_STORAGE -/* Define to 1 if `ss_family' is a member of `struct sockaddr_storage'. */ +/* Define to 1 if 'ss_family' is a member of 'struct sockaddr_storage'. */ #undef HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY -/* Define to 1 if `st_atimensec' is a member of `struct stat'. */ +/* Define to 1 if 'st_atimensec' is a member of 'struct stat'. */ #undef HAVE_STRUCT_STAT_ST_ATIMENSEC -/* Define to 1 if `st_atimespec.tv_nsec' is a member of `struct stat'. */ +/* Define to 1 if 'st_atimespec.tv_nsec' is a member of 'struct stat'. */ #undef HAVE_STRUCT_STAT_ST_ATIMESPEC_TV_NSEC -/* Define to 1 if `st_atim.st__tim.tv_nsec' is a member of `struct stat'. */ +/* Define to 1 if 'st_atim.st__tim.tv_nsec' is a member of 'struct stat'. */ #undef HAVE_STRUCT_STAT_ST_ATIM_ST__TIM_TV_NSEC -/* Define to 1 if `st_atim.tv_nsec' is a member of `struct stat'. */ +/* Define to 1 if 'st_atim.tv_nsec' is a member of 'struct stat'. */ #undef HAVE_STRUCT_STAT_ST_ATIM_TV_NSEC -/* Define to 1 if `st_birthtimensec' is a member of `struct stat'. */ +/* Define to 1 if 'st_birthtimensec' is a member of 'struct stat'. */ #undef HAVE_STRUCT_STAT_ST_BIRTHTIMENSEC -/* Define to 1 if `st_birthtimespec.tv_nsec' is a member of `struct stat'. */ +/* Define to 1 if 'st_birthtimespec.tv_nsec' is a member of 'struct stat'. */ #undef HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC -/* Define to 1 if `st_birthtim.tv_nsec' is a member of `struct stat'. */ +/* Define to 1 if 'st_birthtim.tv_nsec' is a member of 'struct stat'. */ #undef HAVE_STRUCT_STAT_ST_BIRTHTIM_TV_NSEC -/* Define to 1 if `st_blksize' is a member of `struct stat'. */ +/* Define to 1 if 'st_blksize' is a member of 'struct stat'. */ #undef HAVE_STRUCT_STAT_ST_BLKSIZE -/* Define to 1 if `st_rdev' is a member of `struct stat'. */ +/* Define to 1 if 'st_rdev' is a member of 'struct stat'. */ #undef HAVE_STRUCT_STAT_ST_RDEV -/* Define to 1 if `tm_zone' is a member of `struct tm'. */ +/* Define to 1 if 'tm_zone' is a member of 'struct tm'. */ #undef HAVE_STRUCT_TM_TM_ZONE -/* Define to 1 if you have the `symlink' function. */ +/* Define to 1 if you have the 'symlink' function. */ #undef HAVE_SYMLINK /* Define to 1 if you have the header file. */ @@ -1220,7 +1290,7 @@ /* Define to 1 if you have the header file. */ #undef HAVE_SYS_CDEFS_H -/* Define to 1 if you have the header file, and it defines `DIR'. +/* Define to 1 if you have the header file, and it defines 'DIR'. */ #undef HAVE_SYS_DIR_H @@ -1233,7 +1303,7 @@ /* Define to 1 if you have the header file. */ #undef HAVE_SYS_MMAN_H -/* Define to 1 if you have the header file, and it defines `DIR'. +/* Define to 1 if you have the header file, and it defines 'DIR'. */ #undef HAVE_SYS_NDIR_H @@ -1273,45 +1343,51 @@ /* Define to 1 if you have the `timegm' function. */ #undef HAVE_TIMEGM -/* Define to 1 if the system has the type `timezone_t'. */ +/* Define if you have the timespec_get function. */ +#undef HAVE_TIMESPEC_GET + +/* Define to 1 if the system has the type 'timezone_t'. */ #undef HAVE_TIMEZONE_T /* Define if struct tm has the tm_gmtoff member. */ #undef HAVE_TM_GMTOFF -/* Define to 1 if your `struct tm' has `tm_zone'. Deprecated, use - `HAVE_STRUCT_TM_TM_ZONE' instead. */ +/* Define to 1 if your 'struct tm' has 'tm_zone'. Deprecated, use + 'HAVE_STRUCT_TM_TM_ZONE' instead. */ #undef HAVE_TM_ZONE -/* Define to 1 if you have the `towlower' function. */ +/* Define to 1 if you have the 'towlower' function. */ #undef HAVE_TOWLOWER /* Define to 1 if you have the `tsearch' function. */ #undef HAVE_TSEARCH -/* Define to 1 if you don't have `tm_zone' but do have the external array - `tzname'. */ +/* Define to 1 if you don't have 'tm_zone' but do have the external array + 'tzname'. */ #undef HAVE_TZNAME /* Define to 1 if you have the header file. */ #undef HAVE_UNISTD_H -/* Define to 1 if you have the `unsetenv' function. */ +/* Define to 1 if you have the header file. */ +#undef HAVE_UNISTRING_WOE32DLL_H + +/* Define to 1 if you have the 'unsetenv' function. */ #undef HAVE_UNSETENV /* Define to 1 if the system has the type 'unsigned long long int'. */ #undef HAVE_UNSIGNED_LONG_LONG_INT +/* Define to 1 if you have the `uselocale' function. */ +#undef HAVE_USELOCALE + /* Define if you have a global __progname variable */ #undef HAVE_VAR___PROGNAME -/* Define to 1 if you have the `vasnprintf' function. */ +/* Define to 1 if you have the 'vasnprintf' function. */ #undef HAVE_VASNPRINTF -/* Define to 1 if you have the `vasprintf' function. */ -#undef HAVE_VASPRINTF - -/* Define to 1 if you have the `vfork' function. */ +/* Define to 1 if you have the 'vfork' function. */ #undef HAVE_VFORK /* Define to 1 if you have the header file. */ @@ -1327,22 +1403,19 @@ /* Define if you have the 'wchar_t' type. */ #undef HAVE_WCHAR_T -/* Define to 1 if you have the `wcrtomb' function. */ +/* Define to 1 if you have the 'wcrtomb' function. */ #undef HAVE_WCRTOMB -/* Define to 1 if you have the `wcslen' function. */ +/* Define to 1 if you have the 'wcslen' function. */ #undef HAVE_WCSLEN -/* Define to 1 if you have the `wcsnlen' function. */ -#undef HAVE_WCSNLEN - -/* Define to 1 if you have the `wctob' function. */ +/* Define to 1 if you have the 'wctob' function. */ #undef HAVE_WCTOB /* Define to 1 if you have the header file. */ #undef HAVE_WCTYPE_H -/* Define to 1 if you have the `wcwidth' function. */ +/* Define to 1 if you have the 'wcwidth' function. */ #undef HAVE_WCWIDTH /* Define to 1 if the compiler and linker support weak declarations of @@ -1358,7 +1431,7 @@ /* Define to 1 if you have the `wmempcpy' function. */ #undef HAVE_WMEMPCPY -/* Define to 1 if `fork' works. */ +/* Define to 1 if 'fork' works. */ #undef HAVE_WORKING_FORK /* Define to 1 if O_NOATIME works. */ @@ -1370,7 +1443,10 @@ /* Define if you have the sigaltstack() function and it works. */ #undef HAVE_WORKING_SIGALTSTACK -/* Define to 1 if `vfork' works. */ +/* Define if the uselocale function exists and may safely be called. */ +#undef HAVE_WORKING_USELOCALE + +/* Define to 1 if 'vfork' works. */ #undef HAVE_WORKING_VFORK /* Define to 1 if you have the header file. */ @@ -1379,13 +1455,10 @@ /* Define to 1 if you have the header file. */ #undef HAVE_XLOCALE_H -/* Define to 1 if the system has the type `_Bool'. */ -#undef HAVE__BOOL - -/* Define to 1 if you have the `_chsize' function. */ +/* Define to 1 if you have the '_chsize' function. */ #undef HAVE__CHSIZE -/* Define to 1 if you have the `_set_invalid_parameter_handler' function. */ +/* Define to 1 if you have the '_set_invalid_parameter_handler' function. */ #undef HAVE__SET_INVALID_PARAMETER_HANDLER /* Define to 1 if the compiler supports __builtin_expect, @@ -1398,10 +1471,120 @@ #endif +/* Define to 1 if ctype.h defines __header_inline. */ +#undef HAVE___HEADER_INLINE + +/* Please see the Gnulib manual for how to use these macros. + + Suppress extern inline with HP-UX cc, as it appears to be broken; see + . + + Suppress extern inline with Sun C in standards-conformance mode, as it + mishandles inline functions that call each other. E.g., for 'inline void f + (void) { } inline void g (void) { f (); }', c99 incorrectly complains + 'reference to static identifier "f" in extern inline function'. + This bug was observed with Oracle Developer Studio 12.6 + (Sun C 5.15 SunOS_sparc 2017/05/30). + + Suppress extern inline (with or without __attribute__ ((__gnu_inline__))) + on configurations that mistakenly use 'static inline' to implement + functions or macros in standard C headers like . For example, + if isdigit is mistakenly implemented via a static inline function, + a program containing an extern inline function that calls isdigit + may not work since the C standard prohibits extern inline functions + from calling static functions (ISO C 99 section 6.7.4.(3). + This bug is known to occur on: + + OS X 10.8 and earlier; see: + https://lists.gnu.org/r/bug-gnulib/2012-12/msg00023.html + + DragonFly; see + http://muscles.dragonflybsd.org/bulk/clang-master-potential/20141111_102002/logs/ah-tty-0.3.12.log + + FreeBSD; see: + https://lists.gnu.org/r/bug-gnulib/2014-07/msg00104.html + + OS X 10.9 has a macro __header_inline indicating the bug is fixed for C and + for clang but remains for g++; see . + Assume DragonFly and FreeBSD will be similar. + + GCC 4.3 and above with -std=c99 or -std=gnu99 implements ISO C99 + inline semantics, unless -fgnu89-inline is used. It defines a macro + __GNUC_STDC_INLINE__ to indicate this situation or a macro + __GNUC_GNU_INLINE__ to indicate the opposite situation. + GCC 4.2 with -std=c99 or -std=gnu99 implements the GNU C inline + semantics but warns, unless -fgnu89-inline is used: + warning: C99 inline functions are not supported; using GNU89 + warning: to disable this warning use -fgnu89-inline or the gnu_inline function attribute + It defines a macro __GNUC_GNU_INLINE__ to indicate this situation. + */ +#if (((defined __APPLE__ && defined __MACH__) \ + || defined __DragonFly__ || defined __FreeBSD__) \ + && (defined HAVE___HEADER_INLINE \ + ? (defined __cplusplus && defined __GNUC_STDC_INLINE__ \ + && ! defined __clang__) \ + : ((! defined _DONT_USE_CTYPE_INLINE_ \ + && (defined __GNUC__ || defined __cplusplus)) \ + || (defined _FORTIFY_SOURCE && 0 < _FORTIFY_SOURCE \ + && defined __GNUC__ && ! defined __cplusplus)))) +# define _GL_EXTERN_INLINE_STDHEADER_BUG +#endif +#if ((__GNUC__ \ + ? (defined __GNUC_STDC_INLINE__ && __GNUC_STDC_INLINE__ \ + && !defined __PCC__) \ + : (199901L <= __STDC_VERSION__ \ + && !defined __HP_cc \ + && !defined __PGI \ + && !(defined __SUNPRO_C && __STDC__))) \ + && !defined _GL_EXTERN_INLINE_STDHEADER_BUG) +# define _GL_INLINE inline +# define _GL_EXTERN_INLINE extern inline +# define _GL_EXTERN_INLINE_IN_USE +#elif (2 < __GNUC__ + (7 <= __GNUC_MINOR__) && !defined __STRICT_ANSI__ \ + && !defined __PCC__ \ + && !defined _GL_EXTERN_INLINE_STDHEADER_BUG) +# if defined __GNUC_GNU_INLINE__ && __GNUC_GNU_INLINE__ + /* __gnu_inline__ suppresses a GCC 4.2 diagnostic. */ +# define _GL_INLINE extern inline __attribute__ ((__gnu_inline__)) +# else +# define _GL_INLINE extern inline +# endif +# define _GL_EXTERN_INLINE extern +# define _GL_EXTERN_INLINE_IN_USE +#else +# define _GL_INLINE _GL_UNUSED static +# define _GL_EXTERN_INLINE _GL_UNUSED static +#endif + +/* In GCC 4.6 (inclusive) to 5.1 (exclusive), + suppress bogus "no previous prototype for 'FOO'" + and "no previous declaration for 'FOO'" diagnostics, + when FOO is an inline function in the header; see + and + . */ +#if __GNUC__ == 4 && 6 <= __GNUC_MINOR__ +# if defined __GNUC_STDC_INLINE__ && __GNUC_STDC_INLINE__ +# define _GL_INLINE_HEADER_CONST_PRAGMA +# else +# define _GL_INLINE_HEADER_CONST_PRAGMA \ + _Pragma ("GCC diagnostic ignored \"-Wsuggest-attribute=const\"") +# endif +# define _GL_INLINE_HEADER_BEGIN \ + _Pragma ("GCC diagnostic push") \ + _Pragma ("GCC diagnostic ignored \"-Wmissing-prototypes\"") \ + _Pragma ("GCC diagnostic ignored \"-Wmissing-declarations\"") \ + _GL_INLINE_HEADER_CONST_PRAGMA +# define _GL_INLINE_HEADER_END \ + _Pragma ("GCC diagnostic pop") +#else +# define _GL_INLINE_HEADER_BEGIN +# define _GL_INLINE_HEADER_END +#endif + /* Define to 1 if the compiler supports the keyword '__inline'. */ #undef HAVE___INLINE -/* Define to 1 if you have the `__xpg_strerror_r' function. */ +/* Define to 1 if you have the '__xpg_strerror_r' function. */ #undef HAVE___XPG_STRERROR_R /* Define as const if the declaration of iconv() needs const. */ @@ -1581,10 +1764,10 @@ lower addresses STACK_DIRECTION = 0 => spaghetti stack. */ #undef STACK_DIRECTION -/* Define to 1 if the `S_IS*' macros in do not work properly. */ +/* Define to 1 if the 'S_IS*' macros in do not work properly. */ #undef STAT_MACROS_BROKEN -/* Define to 1 if all of the C90 standard headers exist (not just the ones +/* Define to 1 if all of the C89 standard headers exist (not just the ones required in a freestanding environment). This macro is provided for backward compatibility; new code need not use it. */ #undef STDC_HEADERS @@ -1595,7 +1778,7 @@ /* Define to 1 if time_t is signed. */ #undef TIME_T_IS_SIGNED -/* Define to 1 if your declares `struct tm'. */ +/* Define to 1 if your declares 'struct tm'. */ #undef TM_IN_SYS_TIME /* Define to 1 if the type of the st_atim member of a struct stat is struct @@ -1620,7 +1803,7 @@ weak. */ #undef USE_POSIX_THREADS_WEAK -/* Enable extensions on AIX 3, Interix. */ +/* Enable extensions on AIX, Interix, z/OS. */ #ifndef _ALL_SOURCE # undef _ALL_SOURCE #endif @@ -1681,11 +1864,15 @@ #ifndef __STDC_WANT_IEC_60559_DFP_EXT__ # undef __STDC_WANT_IEC_60559_DFP_EXT__ #endif +/* Enable extensions specified by C23 Annex F. */ +#ifndef __STDC_WANT_IEC_60559_EXT__ +# undef __STDC_WANT_IEC_60559_EXT__ +#endif /* Enable extensions specified by ISO/IEC TS 18661-4:2015. */ #ifndef __STDC_WANT_IEC_60559_FUNCS_EXT__ # undef __STDC_WANT_IEC_60559_FUNCS_EXT__ #endif -/* Enable extensions specified by ISO/IEC TS 18661-3:2015. */ +/* Enable extensions specified by C23 Annex H and ISO/IEC TS 18661-3:2015. */ #ifndef __STDC_WANT_IEC_60559_TYPES_EXT__ # undef __STDC_WANT_IEC_60559_TYPES_EXT__ #endif @@ -1767,7 +1954,7 @@ /* Define to enable the declarations of ISO C 11 types and functions. */ #undef _ISOC11_SOURCE -/* Define for large files, on AIX-style hosts. */ +/* Define to 1 on platforms where this makes off_t a 64-bit type. */ #undef _LARGE_FILES /* Define to 1 on Solaris. */ @@ -1786,6 +1973,11 @@ AIX system header files and several gnulib header files use precisely this syntax with 'extern'. */ # define _Noreturn [[noreturn]] +# elif (defined __clang__ && __clang_major__ < 16 \ + && defined _GL_WORK_AROUND_LLVM_BUG_59792) + /* Compile with -D_GL_WORK_AROUND_LLVM_BUG_59792 to work around + that rare LLVM bug, though you may get many false-alarm warnings. */ +# define _Noreturn # elif ((!defined __cplusplus || defined __clang__) \ && (201112 <= (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) \ || (!defined __STRICT_ANSI__ \ @@ -1815,7 +2007,7 @@ /* Define if you want regoff_t to be at least as wide POSIX requires. */ #undef _REGEX_LARGE_OFFSETS -/* Number of bits in a timestamp, on hosts where this is settable. */ +/* Number of bits in time_t, on hosts where this is settable. */ #undef _TIME_BITS /* For standard stat data types on VMS. */ @@ -1825,7 +2017,7 @@ used. */ #undef __GETOPT_PREFIX -/* For 64-bit time_t on 32-bit mingw. */ +/* Define to 1 on platforms where this makes time_t a 64-bit type. */ #undef __MINGW_USE_VC2005_COMPAT /* Define to 1 if the system predates C++11. */ @@ -1834,6 +2026,10 @@ /* Define to 1 if the system predates C++11. */ #undef __STDC_LIMIT_MACROS +/* Define to 1 if C does not support variable-length arrays, and if the + compiler does not already define this. */ +#undef __STDC_NO_VLA__ + /* The _GL_ASYNC_SAFE marker should be attached to functions that are signal handlers (for signals other than SIGABRT, SIGPIPE) or can be invoked from such signal handlers. Such functions have some restrictions: @@ -1864,7 +2060,9 @@ /* Attributes. */ #if (defined __has_attribute \ && (!defined __clang_minor__ \ - || 3 < __clang_major__ + (5 <= __clang_minor__))) + || (defined __apple_build_version__ \ + ? 6000000 <= __apple_build_version__ \ + : 5 <= __clang_major__))) # define _GL_HAS_ATTRIBUTE(attr) __has_attribute (__##attr##__) #else # define _GL_HAS_ATTRIBUTE(attr) _GL_ATTR_##attr @@ -1880,12 +2078,12 @@ # define _GL_ATTR_fallthrough _GL_GNUC_PREREQ (7, 0) # define _GL_ATTR_format _GL_GNUC_PREREQ (2, 7) # define _GL_ATTR_leaf _GL_GNUC_PREREQ (4, 6) +# define _GL_ATTR_malloc _GL_GNUC_PREREQ (3, 0) # ifdef _ICC # define _GL_ATTR_may_alias 0 # else # define _GL_ATTR_may_alias _GL_GNUC_PREREQ (3, 3) # endif -# define _GL_ATTR_malloc _GL_GNUC_PREREQ (3, 0) # define _GL_ATTR_noinline _GL_GNUC_PREREQ (3, 1) # define _GL_ATTR_nonnull _GL_GNUC_PREREQ (3, 3) # define _GL_ATTR_nonstring _GL_GNUC_PREREQ (8, 0) @@ -1898,315 +2096,462 @@ # define _GL_ATTR_warn_unused_result _GL_GNUC_PREREQ (3, 4) #endif -#ifdef __has_c_attribute -# define _GL_HAS_C_ATTRIBUTE(attr) __has_c_attribute (__##attr##__) -#else -# define _GL_HAS_C_ATTRIBUTE(attr) 0 +/* Disable GCC -Wpedantic if using __has_c_attribute and this is not C23+. */ +#if (defined __has_c_attribute && _GL_GNUC_PREREQ (4, 6) \ + && (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) <= 201710) +# pragma GCC diagnostic ignored "-Wpedantic" #endif - -#if _GL_HAS_ATTRIBUTE (alloc_size) -# define _GL_ATTRIBUTE_ALLOC_SIZE(args) __attribute__ ((__alloc_size__ args)) +/* Define if, in a function declaration, the attributes in bracket syntax + [[...]] must come before the attributes in __attribute__((...)) syntax. + If this is defined, it is best to avoid the bracket syntax, so that the + various _GL_ATTRIBUTE_* can be cumulated on the same declaration in any + order. */ +#ifdef __cplusplus +# if defined __clang__ +# define _GL_BRACKET_BEFORE_ATTRIBUTE 1 +# endif #else -# define _GL_ATTRIBUTE_ALLOC_SIZE(args) +# if defined __GNUC__ && !defined __clang__ +# define _GL_BRACKET_BEFORE_ATTRIBUTE 1 +# endif #endif -#if _GL_HAS_ATTRIBUTE (always_inline) -# define _GL_ATTRIBUTE_ALWAYS_INLINE __attribute__ ((__always_inline__)) -#else -# define _GL_ATTRIBUTE_ALWAYS_INLINE +/* _GL_ATTRIBUTE_ALLOC_SIZE ((N)) declares that the Nth argument of the function + is the size of the returned memory block. + _GL_ATTRIBUTE_ALLOC_SIZE ((M, N)) declares that the Mth argument multiplied + by the Nth argument of the function is the size of the returned memory block. + */ +/* Applies to: function, pointer to function, function types. */ +#ifndef _GL_ATTRIBUTE_ALLOC_SIZE +# if _GL_HAS_ATTRIBUTE (alloc_size) +# define _GL_ATTRIBUTE_ALLOC_SIZE(args) __attribute__ ((__alloc_size__ args)) +# else +# define _GL_ATTRIBUTE_ALLOC_SIZE(args) +# endif #endif -#if _GL_HAS_ATTRIBUTE (artificial) -# define _GL_ATTRIBUTE_ARTIFICIAL __attribute__ ((__artificial__)) -#else -# define _GL_ATTRIBUTE_ARTIFICIAL +/* _GL_ATTRIBUTE_ALWAYS_INLINE tells that the compiler should always inline the + function and report an error if it cannot do so. */ +/* Applies to: function. */ +#ifndef _GL_ATTRIBUTE_ALWAYS_INLINE +# if _GL_HAS_ATTRIBUTE (always_inline) +# define _GL_ATTRIBUTE_ALWAYS_INLINE __attribute__ ((__always_inline__)) +# else +# define _GL_ATTRIBUTE_ALWAYS_INLINE +# endif #endif +/* _GL_ATTRIBUTE_ARTIFICIAL declares that the function is not important to show + in stack traces when debugging. The compiler should omit the function from + stack traces. */ +/* Applies to: function. */ +#ifndef _GL_ATTRIBUTE_ARTIFICIAL +# if _GL_HAS_ATTRIBUTE (artificial) +# define _GL_ATTRIBUTE_ARTIFICIAL __attribute__ ((__artificial__)) +# else +# define _GL_ATTRIBUTE_ARTIFICIAL +# endif +#endif + +/* _GL_ATTRIBUTE_COLD declares that the function is rarely executed. */ +/* Applies to: functions. */ /* Avoid __attribute__ ((cold)) on MinGW; see thread starting at . Also, Oracle Studio 12.6 requires 'cold' not '__cold__'. */ -#if _GL_HAS_ATTRIBUTE (cold) && !defined __MINGW32__ -# ifndef __SUNPRO_C -# define _GL_ATTRIBUTE_COLD __attribute__ ((__cold__)) +#ifndef _GL_ATTRIBUTE_COLD +# if _GL_HAS_ATTRIBUTE (cold) && !defined __MINGW32__ +# ifndef __SUNPRO_C +# define _GL_ATTRIBUTE_COLD __attribute__ ((__cold__)) +# else +# define _GL_ATTRIBUTE_COLD __attribute__ ((cold)) +# endif # else -# define _GL_ATTRIBUTE_COLD __attribute__ ((cold)) +# define _GL_ATTRIBUTE_COLD # endif -#else -# define _GL_ATTRIBUTE_COLD #endif -#if _GL_HAS_ATTRIBUTE (const) -# define _GL_ATTRIBUTE_CONST __attribute__ ((__const__)) -#else -# define _GL_ATTRIBUTE_CONST +/* _GL_ATTRIBUTE_CONST declares that it is OK for a compiler to omit duplicate + calls to the function with the same arguments. + This attribute is safe for a function that neither depends on nor affects + observable state, and always returns exactly once - e.g., does not loop + forever, and does not call longjmp. + (This attribute is stricter than _GL_ATTRIBUTE_PURE.) */ +/* Applies to: functions. */ +#ifndef _GL_ATTRIBUTE_CONST +# if _GL_HAS_ATTRIBUTE (const) +# define _GL_ATTRIBUTE_CONST __attribute__ ((__const__)) +# else +# define _GL_ATTRIBUTE_CONST +# endif #endif -/* _GL_ATTRIBUTE_DEALLOC (F, I) is for functions returning pointers +/* _GL_ATTRIBUTE_DEALLOC (F, I) declares that the function returns pointers that can be freed by passing them as the Ith argument to the - function F. _GL_ATTRIBUTE_DEALLOC_FREE is for functions that - return pointers that can be freed via 'free'; it can be used - only after including stdlib.h. */ -#if _GL_GNUC_PREREQ (11, 0) -# define _GL_ATTRIBUTE_DEALLOC(f, i) __attribute__ ((__malloc__ (f, i))) -#else -# define _GL_ATTRIBUTE_DEALLOC(f, i) + function F. + _GL_ATTRIBUTE_DEALLOC_FREE declares that the function returns pointers that + can be freed via 'free'; it can be used only after declaring 'free'. */ +/* Applies to: functions. Cannot be used on inline functions. */ +#ifndef _GL_ATTRIBUTE_DEALLOC +# if _GL_GNUC_PREREQ (11, 0) +# define _GL_ATTRIBUTE_DEALLOC(f, i) __attribute__ ((__malloc__ (f, i))) +# else +# define _GL_ATTRIBUTE_DEALLOC(f, i) +# endif +#endif +/* If gnulib's or has already defined this macro, continue + to use this earlier definition, since may not have been included + yet. */ +#ifndef _GL_ATTRIBUTE_DEALLOC_FREE +# if defined __cplusplus && defined __GNUC__ && !defined __clang__ +/* Work around GCC bug */ +# define _GL_ATTRIBUTE_DEALLOC_FREE \ + _GL_ATTRIBUTE_DEALLOC ((void (*) (void *)) free, 1) +# else +# define _GL_ATTRIBUTE_DEALLOC_FREE \ + _GL_ATTRIBUTE_DEALLOC (free, 1) +# endif #endif -#define _GL_ATTRIBUTE_DEALLOC_FREE _GL_ATTRIBUTE_DEALLOC (free, 1) -#if _GL_HAS_C_ATTRIBUTE (deprecated) -# define _GL_ATTRIBUTE_DEPRECATED [[__deprecated__]] -#elif _GL_HAS_ATTRIBUTE (deprecated) -# define _GL_ATTRIBUTE_DEPRECATED __attribute__ ((__deprecated__)) -#else -# define _GL_ATTRIBUTE_DEPRECATED +/* _GL_ATTRIBUTE_DEPRECATED: Declares that an entity is deprecated. + The compiler may warn if the entity is used. */ +/* Applies to: + - function, variable, + - struct, union, struct/union member, + - enumeration, enumeration item, + - typedef, + in C++ also: namespace, class, template specialization. */ +#ifndef _GL_ATTRIBUTE_DEPRECATED +# ifndef _GL_BRACKET_BEFORE_ATTRIBUTE +# ifdef __has_c_attribute +# if __has_c_attribute (__deprecated__) +# define _GL_ATTRIBUTE_DEPRECATED [[__deprecated__]] +# endif +# endif +# endif +# if !defined _GL_ATTRIBUTE_DEPRECATED && _GL_HAS_ATTRIBUTE (deprecated) +# define _GL_ATTRIBUTE_DEPRECATED __attribute__ ((__deprecated__)) +# endif +# ifndef _GL_ATTRIBUTE_DEPRECATED +# define _GL_ATTRIBUTE_DEPRECATED +# endif #endif -#if _GL_HAS_ATTRIBUTE (error) -# define _GL_ATTRIBUTE_ERROR(msg) __attribute__ ((__error__ (msg))) -# define _GL_ATTRIBUTE_WARNING(msg) __attribute__ ((__warning__ (msg))) -#elif _GL_HAS_ATTRIBUTE (diagnose_if) -# define _GL_ATTRIBUTE_ERROR(msg) __attribute__ ((__diagnose_if__ (1, msg, "error"))) -# define _GL_ATTRIBUTE_WARNING(msg) __attribute__ ((__diagnose_if__ (1, msg, "warning"))) -#else -# define _GL_ATTRIBUTE_ERROR(msg) -# define _GL_ATTRIBUTE_WARNING(msg) +/* _GL_ATTRIBUTE_ERROR(msg) requests an error if a function is called and + the function call is not optimized away. + _GL_ATTRIBUTE_WARNING(msg) requests a warning if a function is called and + the function call is not optimized away. */ +/* Applies to: functions. */ +#if !(defined _GL_ATTRIBUTE_ERROR && defined _GL_ATTRIBUTE_WARNING) +# if _GL_HAS_ATTRIBUTE (error) +# define _GL_ATTRIBUTE_ERROR(msg) __attribute__ ((__error__ (msg))) +# define _GL_ATTRIBUTE_WARNING(msg) __attribute__ ((__warning__ (msg))) +# elif _GL_HAS_ATTRIBUTE (diagnose_if) +# define _GL_ATTRIBUTE_ERROR(msg) __attribute__ ((__diagnose_if__ (1, msg, "error"))) +# define _GL_ATTRIBUTE_WARNING(msg) __attribute__ ((__diagnose_if__ (1, msg, "warning"))) +# else +# define _GL_ATTRIBUTE_ERROR(msg) +# define _GL_ATTRIBUTE_WARNING(msg) +# endif #endif -#if _GL_HAS_ATTRIBUTE (externally_visible) -# define _GL_ATTRIBUTE_EXTERNALLY_VISIBLE __attribute__ ((externally_visible)) -#else -# define _GL_ATTRIBUTE_EXTERNALLY_VISIBLE +/* _GL_ATTRIBUTE_EXTERNALLY_VISIBLE declares that the entity should remain + visible to debuggers etc., even with '-fwhole-program'. */ +/* Applies to: functions, variables. */ +#ifndef _GL_ATTRIBUTE_EXTERNALLY_VISIBLE +# if _GL_HAS_ATTRIBUTE (externally_visible) +# define _GL_ATTRIBUTE_EXTERNALLY_VISIBLE __attribute__ ((externally_visible)) +# else +# define _GL_ATTRIBUTE_EXTERNALLY_VISIBLE +# endif #endif -/* FALLTHROUGH is special, because it always expands to something. */ -#if _GL_HAS_C_ATTRIBUTE (fallthrough) -# define _GL_ATTRIBUTE_FALLTHROUGH [[__fallthrough__]] -#elif _GL_HAS_ATTRIBUTE (fallthrough) -# define _GL_ATTRIBUTE_FALLTHROUGH __attribute__ ((__fallthrough__)) -#else -# define _GL_ATTRIBUTE_FALLTHROUGH ((void) 0) +/* _GL_ATTRIBUTE_FALLTHROUGH declares that it is not a programming mistake if + the control flow falls through to the immediately following 'case' or + 'default' label. The compiler should not warn in this case. */ +/* Applies to: Empty statement (;), inside a 'switch' statement. */ +/* Always expands to something. */ +#ifndef _GL_ATTRIBUTE_FALLTHROUGH +# ifdef __has_c_attribute +# if __has_c_attribute (__fallthrough__) +# define _GL_ATTRIBUTE_FALLTHROUGH [[__fallthrough__]] +# endif +# endif +# if !defined _GL_ATTRIBUTE_FALLTHROUGH && _GL_HAS_ATTRIBUTE (fallthrough) +# define _GL_ATTRIBUTE_FALLTHROUGH __attribute__ ((__fallthrough__)) +# endif +# ifndef _GL_ATTRIBUTE_FALLTHROUGH +# define _GL_ATTRIBUTE_FALLTHROUGH ((void) 0) +# endif #endif -#if _GL_HAS_ATTRIBUTE (format) -# define _GL_ATTRIBUTE_FORMAT(spec) __attribute__ ((__format__ spec)) -#else -# define _GL_ATTRIBUTE_FORMAT(spec) +/* _GL_ATTRIBUTE_FORMAT ((ARCHETYPE, STRING-INDEX, FIRST-TO-CHECK)) + declares that the STRING-INDEXth function argument is a format string of + style ARCHETYPE, which is one of: + printf, gnu_printf + scanf, gnu_scanf, + strftime, gnu_strftime, + strfmon, + or the same thing prefixed and suffixed with '__'. + If FIRST-TO-CHECK is not 0, arguments starting at FIRST-TO_CHECK + are suitable for the format string. */ +/* Applies to: functions. */ +#ifndef _GL_ATTRIBUTE_FORMAT +# if _GL_HAS_ATTRIBUTE (format) +# define _GL_ATTRIBUTE_FORMAT(spec) __attribute__ ((__format__ spec)) +# else +# define _GL_ATTRIBUTE_FORMAT(spec) +# endif #endif -#if _GL_HAS_ATTRIBUTE (leaf) -# define _GL_ATTRIBUTE_LEAF __attribute__ ((__leaf__)) -#else -# define _GL_ATTRIBUTE_LEAF +/* _GL_ATTRIBUTE_LEAF declares that if the function is called from some other + compilation unit, it executes code from that unit only by return or by + exception handling. This declaration lets the compiler optimize that unit + more aggressively. */ +/* Applies to: functions. */ +#ifndef _GL_ATTRIBUTE_LEAF +# if _GL_HAS_ATTRIBUTE (leaf) +# define _GL_ATTRIBUTE_LEAF __attribute__ ((__leaf__)) +# else +# define _GL_ATTRIBUTE_LEAF +# endif #endif +/* _GL_ATTRIBUTE_MALLOC declares that the function returns a pointer to freshly + allocated memory. */ +/* Applies to: functions. */ +#ifndef _GL_ATTRIBUTE_MALLOC +# if _GL_HAS_ATTRIBUTE (malloc) +# define _GL_ATTRIBUTE_MALLOC __attribute__ ((__malloc__)) +# else +# define _GL_ATTRIBUTE_MALLOC +# endif +#endif + +/* _GL_ATTRIBUTE_MAY_ALIAS declares that pointers to the type may point to the + same storage as pointers to other types. Thus this declaration disables + strict aliasing optimization. */ +/* Applies to: types. */ /* Oracle Studio 12.6 mishandles may_alias despite __has_attribute OK. */ -#if _GL_HAS_ATTRIBUTE (may_alias) && !defined __SUNPRO_C -# define _GL_ATTRIBUTE_MAY_ALIAS __attribute__ ((__may_alias__)) -#else -# define _GL_ATTRIBUTE_MAY_ALIAS +#ifndef _GL_ATTRIBUTE_MAY_ALIAS +# if _GL_HAS_ATTRIBUTE (may_alias) && !defined __SUNPRO_C +# define _GL_ATTRIBUTE_MAY_ALIAS __attribute__ ((__may_alias__)) +# else +# define _GL_ATTRIBUTE_MAY_ALIAS +# endif #endif -#if _GL_HAS_C_ATTRIBUTE (maybe_unused) -# define _GL_ATTRIBUTE_MAYBE_UNUSED [[__maybe_unused__]] -#else -# define _GL_ATTRIBUTE_MAYBE_UNUSED _GL_ATTRIBUTE_UNUSED +/* _GL_ATTRIBUTE_MAYBE_UNUSED declares that it is not a programming mistake if + the entity is not used. The compiler should not warn if the entity is not + used. */ +/* Applies to: + - function, variable, + - struct, union, struct/union member, + - enumeration, enumeration item, + - typedef, + in C++ also: class. */ +/* In C++ and C23, this is spelled [[__maybe_unused__]]. + GCC's syntax is __attribute__ ((__unused__)). + clang supports both syntaxes. Except that with clang ≥ 6, < 10, in C++ mode, + __has_c_attribute (__maybe_unused__) yields true but the use of + [[__maybe_unused__]] nevertheless produces a warning. */ +#ifndef _GL_ATTRIBUTE_MAYBE_UNUSED +# ifndef _GL_BRACKET_BEFORE_ATTRIBUTE +# if defined __clang__ && defined __cplusplus +# if !defined __apple_build_version__ && __clang_major__ >= 10 +# define _GL_ATTRIBUTE_MAYBE_UNUSED [[__maybe_unused__]] +# endif +# elif defined __has_c_attribute +# if __has_c_attribute (__maybe_unused__) +# define _GL_ATTRIBUTE_MAYBE_UNUSED [[__maybe_unused__]] +# endif +# endif +# endif +# ifndef _GL_ATTRIBUTE_MAYBE_UNUSED +# define _GL_ATTRIBUTE_MAYBE_UNUSED _GL_ATTRIBUTE_UNUSED +# endif #endif +/* Alternative spelling of this macro, for convenience and for + compatibility with glibc/include/libc-symbols.h. */ +#define _GL_UNUSED _GL_ATTRIBUTE_MAYBE_UNUSED /* Earlier spellings of this macro. */ #define _UNUSED_PARAMETER_ _GL_ATTRIBUTE_MAYBE_UNUSED -#if _GL_HAS_ATTRIBUTE (malloc) -# define _GL_ATTRIBUTE_MALLOC __attribute__ ((__malloc__)) -#else -# define _GL_ATTRIBUTE_MALLOC -#endif - -#if _GL_HAS_C_ATTRIBUTE (nodiscard) -# define _GL_ATTRIBUTE_NODISCARD [[__nodiscard__]] -#elif _GL_HAS_ATTRIBUTE (warn_unused_result) -# define _GL_ATTRIBUTE_NODISCARD __attribute__ ((__warn_unused_result__)) -#else -# define _GL_ATTRIBUTE_NODISCARD +/* _GL_ATTRIBUTE_NODISCARD declares that the caller of the function should not + discard the return value. The compiler may warn if the caller does not use + the return value, unless the caller uses something like ignore_value. */ +/* Applies to: function, enumeration, class. */ +#ifndef _GL_ATTRIBUTE_NODISCARD +# ifndef _GL_BRACKET_BEFORE_ATTRIBUTE +# if defined __clang__ && defined __cplusplus + /* With clang up to 15.0.6 (at least), in C++ mode, [[__nodiscard__]] produces + a warning. + The 1000 below means a yet unknown threshold. When clang++ version X + starts supporting [[__nodiscard__]] without warning about it, you can + replace the 1000 with X. */ +# if __clang_major__ >= 1000 +# define _GL_ATTRIBUTE_NODISCARD [[__nodiscard__]] +# endif +# elif defined __has_c_attribute +# if __has_c_attribute (__nodiscard__) +# define _GL_ATTRIBUTE_NODISCARD [[__nodiscard__]] +# endif +# endif +# endif +# if !defined _GL_ATTRIBUTE_NODISCARD && _GL_HAS_ATTRIBUTE (warn_unused_result) +# define _GL_ATTRIBUTE_NODISCARD __attribute__ ((__warn_unused_result__)) +# endif +# ifndef _GL_ATTRIBUTE_NODISCARD +# define _GL_ATTRIBUTE_NODISCARD +# endif #endif -#if _GL_HAS_ATTRIBUTE (noinline) -# define _GL_ATTRIBUTE_NOINLINE __attribute__ ((__noinline__)) -#else -# define _GL_ATTRIBUTE_NOINLINE +/* _GL_ATTRIBUTE_NOINLINE tells that the compiler should not inline the + function. */ +/* Applies to: functions. */ +#ifndef _GL_ATTRIBUTE_NOINLINE +# if _GL_HAS_ATTRIBUTE (noinline) +# define _GL_ATTRIBUTE_NOINLINE __attribute__ ((__noinline__)) +# else +# define _GL_ATTRIBUTE_NOINLINE +# endif #endif -#if _GL_HAS_ATTRIBUTE (nonnull) -# define _GL_ATTRIBUTE_NONNULL(args) __attribute__ ((__nonnull__ args)) -#else -# define _GL_ATTRIBUTE_NONNULL(args) +/* _GL_ATTRIBUTE_NONNULL ((N1, N2,...)) declares that the arguments N1, N2,... + must not be NULL. + _GL_ATTRIBUTE_NONNULL () declares that all pointer arguments must not be + null. */ +/* Applies to: functions. */ +#ifndef _GL_ATTRIBUTE_NONNULL +# if _GL_HAS_ATTRIBUTE (nonnull) +# define _GL_ATTRIBUTE_NONNULL(args) __attribute__ ((__nonnull__ args)) +# else +# define _GL_ATTRIBUTE_NONNULL(args) +# endif #endif -#if _GL_HAS_ATTRIBUTE (nonstring) -# define _GL_ATTRIBUTE_NONSTRING __attribute__ ((__nonstring__)) -#else -# define _GL_ATTRIBUTE_NONSTRING +/* _GL_ATTRIBUTE_NONSTRING declares that the contents of a character array is + not meant to be NUL-terminated. */ +/* Applies to: struct/union members and variables that are arrays of element + type '[[un]signed] char'. */ +#ifndef _GL_ATTRIBUTE_NONSTRING +# if _GL_HAS_ATTRIBUTE (nonstring) +# define _GL_ATTRIBUTE_NONSTRING __attribute__ ((__nonstring__)) +# else +# define _GL_ATTRIBUTE_NONSTRING +# endif #endif /* There is no _GL_ATTRIBUTE_NORETURN; use _Noreturn instead. */ -#if _GL_HAS_ATTRIBUTE (nothrow) && !defined __cplusplus -# define _GL_ATTRIBUTE_NOTHROW __attribute__ ((__nothrow__)) -#else -# define _GL_ATTRIBUTE_NOTHROW -#endif - -#if _GL_HAS_ATTRIBUTE (packed) -# define _GL_ATTRIBUTE_PACKED __attribute__ ((__packed__)) -#else -# define _GL_ATTRIBUTE_PACKED +/* _GL_ATTRIBUTE_NOTHROW declares that the function does not throw exceptions. + */ +/* Applies to: functions. */ +#ifndef _GL_ATTRIBUTE_NOTHROW +# if _GL_HAS_ATTRIBUTE (nothrow) && !defined __cplusplus +# define _GL_ATTRIBUTE_NOTHROW __attribute__ ((__nothrow__)) +# else +# define _GL_ATTRIBUTE_NOTHROW +# endif #endif -#if _GL_HAS_ATTRIBUTE (pure) -# define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__)) -#else -# define _GL_ATTRIBUTE_PURE +/* _GL_ATTRIBUTE_PACKED declares: + For struct members: The member has the smallest possible alignment. + For struct, union, class: All members have the smallest possible alignment, + minimizing the memory required. */ +/* Applies to: struct members, struct, union, + in C++ also: class. */ +#ifndef _GL_ATTRIBUTE_PACKED +# if _GL_HAS_ATTRIBUTE (packed) +# define _GL_ATTRIBUTE_PACKED __attribute__ ((__packed__)) +# else +# define _GL_ATTRIBUTE_PACKED +# endif #endif -#if _GL_HAS_ATTRIBUTE (returns_nonnull) -# define _GL_ATTRIBUTE_RETURNS_NONNULL __attribute__ ((__returns_nonnull__)) -#else -# define _GL_ATTRIBUTE_RETURNS_NONNULL +/* _GL_ATTRIBUTE_PURE declares that It is OK for a compiler to omit duplicate + calls to the function with the same arguments if observable state is not + changed between calls. + This attribute is safe for a function that does not affect + observable state, and always returns exactly once. + (This attribute is looser than _GL_ATTRIBUTE_CONST.) */ +/* Applies to: functions. */ +#ifndef _GL_ATTRIBUTE_PURE +# if _GL_HAS_ATTRIBUTE (pure) +# define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__)) +# else +# define _GL_ATTRIBUTE_PURE +# endif #endif -#if _GL_HAS_ATTRIBUTE (sentinel) -# define _GL_ATTRIBUTE_SENTINEL(pos) __attribute__ ((__sentinel__ pos)) -#else -# define _GL_ATTRIBUTE_SENTINEL(pos) +/* _GL_ATTRIBUTE_RETURNS_NONNULL declares that the function's return value is + a non-NULL pointer. */ +/* Applies to: functions. */ +#ifndef _GL_ATTRIBUTE_RETURNS_NONNULL +# if _GL_HAS_ATTRIBUTE (returns_nonnull) +# define _GL_ATTRIBUTE_RETURNS_NONNULL __attribute__ ((__returns_nonnull__)) +# else +# define _GL_ATTRIBUTE_RETURNS_NONNULL +# endif #endif -#if _GL_HAS_ATTRIBUTE (unused) -# define _GL_ATTRIBUTE_UNUSED __attribute__ ((__unused__)) -#else -# define _GL_ATTRIBUTE_UNUSED +/* _GL_ATTRIBUTE_SENTINEL(pos) declares that the variadic function expects a + trailing NULL argument. + _GL_ATTRIBUTE_SENTINEL () - The last argument is NULL (requires C99). + _GL_ATTRIBUTE_SENTINEL ((N)) - The (N+1)st argument from the end is NULL. */ +/* Applies to: functions. */ +#ifndef _GL_ATTRIBUTE_SENTINEL +# if _GL_HAS_ATTRIBUTE (sentinel) +# define _GL_ATTRIBUTE_SENTINEL(pos) __attribute__ ((__sentinel__ pos)) +# else +# define _GL_ATTRIBUTE_SENTINEL(pos) +# endif #endif -/* Earlier spellings of this macro. */ -#define _GL_UNUSED _GL_ATTRIBUTE_UNUSED - -/* To support C++ as well as C, use _GL_UNUSED_LABEL with trailing ';'. */ -#if !defined __cplusplus || _GL_GNUC_PREREQ (4, 5) -# define _GL_UNUSED_LABEL _GL_ATTRIBUTE_UNUSED -#else -# define _GL_UNUSED_LABEL +/* A helper macro. Don't use it directly. */ +#ifndef _GL_ATTRIBUTE_UNUSED +# if _GL_HAS_ATTRIBUTE (unused) +# define _GL_ATTRIBUTE_UNUSED __attribute__ ((__unused__)) +# else +# define _GL_ATTRIBUTE_UNUSED +# endif #endif -/* Please see the Gnulib manual for how to use these macros. - - Suppress extern inline with HP-UX cc, as it appears to be broken; see - . - - Suppress extern inline with Sun C in standards-conformance mode, as it - mishandles inline functions that call each other. E.g., for 'inline void f - (void) { } inline void g (void) { f (); }', c99 incorrectly complains - 'reference to static identifier "f" in extern inline function'. - This bug was observed with Sun C 5.12 SunOS_i386 2011/11/16. - - Suppress extern inline (with or without __attribute__ ((__gnu_inline__))) - on configurations that mistakenly use 'static inline' to implement - functions or macros in standard C headers like . For example, - if isdigit is mistakenly implemented via a static inline function, - a program containing an extern inline function that calls isdigit - may not work since the C standard prohibits extern inline functions - from calling static functions (ISO C 99 section 6.7.4.(3). - This bug is known to occur on: - - OS X 10.8 and earlier; see: - https://lists.gnu.org/r/bug-gnulib/2012-12/msg00023.html - - DragonFly; see - http://muscles.dragonflybsd.org/bulk/clang-master-potential/20141111_102002/logs/ah-tty-0.3.12.log - - FreeBSD; see: - https://lists.gnu.org/r/bug-gnulib/2014-07/msg00104.html - - OS X 10.9 has a macro __header_inline indicating the bug is fixed for C and - for clang but remains for g++; see . - Assume DragonFly and FreeBSD will be similar. - - GCC 4.3 and above with -std=c99 or -std=gnu99 implements ISO C99 - inline semantics, unless -fgnu89-inline is used. It defines a macro - __GNUC_STDC_INLINE__ to indicate this situation or a macro - __GNUC_GNU_INLINE__ to indicate the opposite situation. - GCC 4.2 with -std=c99 or -std=gnu99 implements the GNU C inline - semantics but warns, unless -fgnu89-inline is used: - warning: C99 inline functions are not supported; using GNU89 - warning: to disable this warning use -fgnu89-inline or the gnu_inline function attribute - It defines a macro __GNUC_GNU_INLINE__ to indicate this situation. - */ -#if (((defined __APPLE__ && defined __MACH__) \ - || defined __DragonFly__ || defined __FreeBSD__) \ - && (defined __header_inline \ - ? (defined __cplusplus && defined __GNUC_STDC_INLINE__ \ - && ! defined __clang__) \ - : ((! defined _DONT_USE_CTYPE_INLINE_ \ - && (defined __GNUC__ || defined __cplusplus)) \ - || (defined _FORTIFY_SOURCE && 0 < _FORTIFY_SOURCE \ - && defined __GNUC__ && ! defined __cplusplus)))) -# define _GL_EXTERN_INLINE_STDHEADER_BUG -#endif -#if ((__GNUC__ \ - ? defined __GNUC_STDC_INLINE__ && __GNUC_STDC_INLINE__ \ - : (199901L <= __STDC_VERSION__ \ - && !defined __HP_cc \ - && !defined __PGI \ - && !(defined __SUNPRO_C && __STDC__))) \ - && !defined _GL_EXTERN_INLINE_STDHEADER_BUG) -# define _GL_INLINE inline -# define _GL_EXTERN_INLINE extern inline -# define _GL_EXTERN_INLINE_IN_USE -#elif (2 < __GNUC__ + (7 <= __GNUC_MINOR__) && !defined __STRICT_ANSI__ \ - && !defined _GL_EXTERN_INLINE_STDHEADER_BUG) -# if defined __GNUC_GNU_INLINE__ && __GNUC_GNU_INLINE__ - /* __gnu_inline__ suppresses a GCC 4.2 diagnostic. */ -# define _GL_INLINE extern inline __attribute__ ((__gnu_inline__)) +/* _GL_UNUSED_LABEL; declares that it is not a programming mistake if the + immediately preceding label is not used. The compiler should not warn + if the label is not used. */ +/* Applies to: label (both in C and C++). */ +/* Note that g++ < 4.5 does not support the '__attribute__ ((__unused__)) ;' + syntax. But clang does. */ +#ifndef _GL_UNUSED_LABEL +# if !(defined __cplusplus && !_GL_GNUC_PREREQ (4, 5)) || defined __clang__ +# define _GL_UNUSED_LABEL _GL_ATTRIBUTE_UNUSED # else -# define _GL_INLINE extern inline +# define _GL_UNUSED_LABEL # endif -# define _GL_EXTERN_INLINE extern -# define _GL_EXTERN_INLINE_IN_USE -#else -# define _GL_INLINE static _GL_UNUSED -# define _GL_EXTERN_INLINE static _GL_UNUSED #endif -/* In GCC 4.6 (inclusive) to 5.1 (exclusive), - suppress bogus "no previous prototype for 'FOO'" - and "no previous declaration for 'FOO'" diagnostics, - when FOO is an inline function in the header; see - and - . */ -#if __GNUC__ == 4 && 6 <= __GNUC_MINOR__ -# if defined __GNUC_STDC_INLINE__ && __GNUC_STDC_INLINE__ -# define _GL_INLINE_HEADER_CONST_PRAGMA -# else -# define _GL_INLINE_HEADER_CONST_PRAGMA \ - _Pragma ("GCC diagnostic ignored \"-Wsuggest-attribute=const\"") -# endif -# define _GL_INLINE_HEADER_BEGIN \ - _Pragma ("GCC diagnostic push") \ - _Pragma ("GCC diagnostic ignored \"-Wmissing-prototypes\"") \ - _Pragma ("GCC diagnostic ignored \"-Wmissing-declarations\"") \ - _GL_INLINE_HEADER_CONST_PRAGMA -# define _GL_INLINE_HEADER_END \ - _Pragma ("GCC diagnostic pop") + +/* In C++, there is the concept of "language linkage", that encompasses + name mangling and function calling conventions. + The following macros start and end a block of "C" linkage. */ +#ifdef __cplusplus +# define _GL_BEGIN_C_LINKAGE extern "C" { +# define _GL_END_C_LINKAGE } #else -# define _GL_INLINE_HEADER_BEGIN -# define _GL_INLINE_HEADER_END +# define _GL_BEGIN_C_LINKAGE +# define _GL_END_C_LINKAGE #endif -/* Define to `int' if doesn't define. */ + +/* Define as 'int' if doesn't define. */ #undef gid_t /* A replacement for va_copy, if needed. */ #define gl_va_copy(a,b) ((a) = (b)) -/* Define to `__inline__' or `__inline' if that's what the C compiler +/* Define to '__inline__' or '__inline' if that's what the C compiler calls it, or to nothing if 'inline' is not supported under any name. */ #ifndef __cplusplus #undef inline @@ -2225,9 +2570,6 @@ # define __GNUC_STDC_INLINE__ 1 #endif -/* Define to 1 if the compiler is checking for lint. */ -#undef lint - /* Define to a type if does not define. */ #undef mbstate_t @@ -2250,7 +2592,7 @@ /* Define to the real name of the mktime_internal function. */ #undef mktime_internal -/* Define to `int' if does not define. */ +/* Define to 'int' if does not define. */ #undef mode_t /* Define to the name of the strftime replacement function. */ @@ -2259,7 +2601,7 @@ /* Define to the type of st_nlink in struct stat, or a supertype. */ #undef nlink_t -/* Define to `long int' if does not define. */ +/* Define to 'long int' if does not define. */ #undef off_t /* Define as a signed integer type capable of holding a process identifier. */ @@ -2329,7 +2671,7 @@ # define __restrict__ #endif -/* Define to `unsigned int' if does not define. */ +/* Define as 'unsigned int' if doesn't define. */ #undef size_t /* type to use in place of socklen_t if not defined */ @@ -2342,7 +2684,7 @@ sigaltstack */ #undef stack_t -/* Define to `int' if doesn't define. */ +/* Define as 'int' if doesn't define. */ #undef uid_t @@ -2364,5 +2706,167 @@ /* Define as a macro for copying va_list variables. */ #undef va_copy -/* Define as `fork' if `vfork' does not work. */ +/* Define as 'fork' if 'vfork' does not work. */ #undef vfork + +#if !defined HAVE_C_ALIGNASOF && __cplusplus < 201103 && !defined alignof +# if HAVE_STDALIGN_H +# include +# endif + +/* ISO C23 alignas and alignof for platforms that lack it. + + References: + ISO C23 (latest free draft + ) + sections 6.5.3.4, 6.7.5, 7.15. + C++11 (latest free draft + ) + section 18.10. */ + +/* alignof (TYPE), also known as _Alignof (TYPE), yields the alignment + requirement of a structure member (i.e., slot or field) that is of + type TYPE, as an integer constant expression. + + This differs from GCC's and clang's __alignof__ operator, which can + yield a better-performing alignment for an object of that type. For + example, on x86 with GCC and on Linux/x86 with clang, + __alignof__ (double) and __alignof__ (long long) are 8, whereas + alignof (double) and alignof (long long) are 4 unless the option + '-malign-double' is used. + + The result cannot be used as a value for an 'enum' constant, if you + want to be portable to HP-UX 10.20 cc and AIX 3.2.5 xlc. */ + +/* GCC releases before GCC 4.9 had a bug in _Alignof. See GCC bug 52023 + . + clang versions < 8.0.0 have the same bug. */ +# if (!defined __STDC_VERSION__ || __STDC_VERSION__ < 201112 \ + || (defined __GNUC__ && __GNUC__ < 4 + (__GNUC_MINOR__ < 9) \ + && !defined __clang__) \ + || (defined __clang__ && __clang_major__ < 8)) +# undef/**/_Alignof +# ifdef __cplusplus +# if (201103 <= __cplusplus || defined _MSC_VER) +# define _Alignof(type) alignof (type) +# else + template struct __alignof_helper { char __a; __t __b; }; +# define _Alignof(type) offsetof (__alignof_helper, __b) +# define _GL_STDALIGN_NEEDS_STDDEF 1 +# endif +# else +# if (defined __GNUC__ && 4 <= __GNUC__) || defined __clang__ +# define _Alignof(type) __builtin_offsetof (struct { char __a; type __b; }, __b) +# else +# define _Alignof(type) offsetof (struct { char __a; type __b; }, __b) +# define _GL_STDALIGN_NEEDS_STDDEF 1 +# endif +# endif +# endif +# if ! (defined __cplusplus && (201103 <= __cplusplus || defined _MSC_VER)) +# undef/**/alignof +# define alignof _Alignof +# endif + +/* alignas (A), also known as _Alignas (A), aligns a variable or type + to the alignment A, where A is an integer constant expression. For + example: + + int alignas (8) foo; + struct s { int a; int alignas (8) bar; }; + + aligns the address of FOO and the offset of BAR to be multiples of 8. + + A should be a power of two that is at least the type's alignment + and at most the implementation's alignment limit. This limit is + 2**28 on typical GNUish hosts, and 2**13 on MSVC. To be portable + to MSVC through at least version 10.0, A should be an integer + constant, as MSVC does not support expressions such as 1 << 3. + To be portable to Sun C 5.11, do not align auto variables to + anything stricter than their default alignment. + + The following C23 requirements are not supported here: + + - If A is zero, alignas has no effect. + - alignas can be used multiple times; the strictest one wins. + - alignas (TYPE) is equivalent to alignas (alignof (TYPE)). + + */ +# if !defined __STDC_VERSION__ || __STDC_VERSION__ < 201112 +# if defined __cplusplus && (201103 <= __cplusplus || defined _MSC_VER) +# define _Alignas(a) alignas (a) +# elif (!defined __attribute__ \ + && ((defined __APPLE__ && defined __MACH__ \ + ? 4 < __GNUC__ + (1 <= __GNUC_MINOR__) \ + : __GNUC__ && !defined __ibmxl__) \ + || (4 <= __clang_major__) \ + || (__ia64 && (61200 <= __HP_cc || 61200 <= __HP_aCC)) \ + || __ICC || 0x590 <= __SUNPRO_C || 0x0600 <= __xlC__)) +# define _Alignas(a) __attribute__ ((__aligned__ (a))) +# elif 1300 <= _MSC_VER +# define _Alignas(a) __declspec (align (a)) +# endif +# endif +# if !HAVE_STDALIGN_H +# if ((defined _Alignas \ + && !(defined __cplusplus \ + && (201103 <= __cplusplus || defined _MSC_VER))) \ + || (defined __STDC_VERSION__ && 201112 <= __STDC_VERSION__)) +# define alignas _Alignas +# endif +# endif + +# if _GL_STDALIGN_NEEDS_STDDEF +# include +# endif +#endif + +#ifndef HAVE_C_BOOL +# if !defined __cplusplus && !defined __bool_true_false_are_defined +# if HAVE_STDBOOL_H +# include +# else +# if defined __SUNPRO_C +# error " is not usable with this configuration. To make it usable, add -D_STDC_C99= to $CC." +# else +# error " does not exist on this platform. Use gnulib module 'stdbool-c99' instead of gnulib module 'stdbool'." +# endif +# endif +# endif +# if !true +# define true (!false) +# endif +#endif + +#if defined __cplusplus && HAVE_CXX_NULLPTR < 0 +# include +# undef/**/nullptr +#endif +#ifndef nullptr +# if !defined __cplusplus && !defined HAVE_C_NULLPTR +# define nullptr ((void *) 0) +# elif defined __cplusplus && HAVE_CXX_NULLPTR <= 0 +# if 3 <= __GNUG__ +# define nullptr __null +# else +# define nullptr 0L +# endif +# endif +#endif + +#if (!defined HAVE_C_STATIC_ASSERT && !defined assert \ + && (!defined __cplusplus \ + || (__cpp_static_assert < 201411 \ + && __GNUG__ < 6 && __clang_major__ < 6))) + #include + #undef/**/assert + #ifdef __sgi + #undef/**/__ASSERT_H__ + #endif + /* Solaris 11.4 defines static_assert as a macro with 2 arguments. + We need it also to be invocable with a single argument. */ + #if defined __sun && (__STDC_VERSION__ - 0 >= 201112L) && !defined __cplusplus + #undef/**/static_assert + #define static_assert _Static_assert + #endif +#endif diff --git a/lib/ctype.in.h b/lib/ctype.in.h index 70ad70b..ec43126 100644 --- a/lib/ctype.in.h +++ b/lib/ctype.in.h @@ -1,6 +1,6 @@ /* A substitute for ISO C99 , for platforms on which it is incomplete. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -36,6 +36,11 @@ #ifndef _@GUARD_PREFIX@_CTYPE_H #define _@GUARD_PREFIX@_CTYPE_H +/* This file uses GNULIB_POSIXCHECK, HAVE_RAW_DECL_*. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + /* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */ /* The definition of _GL_WARN_ON_USE is copied here. */ diff --git a/lib/diffseq.h b/lib/diffseq.h index 1cac430..c9375cd 100644 --- a/lib/diffseq.h +++ b/lib/diffseq.h @@ -1,11 +1,11 @@ /* Analyze differences between two vectors. - Copyright (C) 1988-1989, 1992-1995, 2001-2004, 2006-2021 Free Software + Copyright (C) 1988-1989, 1992-1995, 2001-2004, 2006-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -48,6 +48,10 @@ OFFSET A signed integer type sufficient to hold the difference between two indices. Usually something like ptrdiff_t. + OFFSET_MAX (Optional) The maximum value of OFFSET (e.g., + PTRDIFF_MAX). If omitted, it is inferred in a + way portable to the vast majority of C platforms, + as they lack padding bits. EXTRA_CONTEXT_FIELDS Declarations of fields for 'struct context'. NOTE_DELETE(ctxt, xoff) Record the removal of the object xvec[xoff]. NOTE_INSERT(ctxt, yoff) Record the insertion of the object yvec[yoff]. @@ -70,13 +74,14 @@ Before including this file, you also need to include: #include - #include #include "minmax.h" */ /* Maximum value of type OFFSET. */ -#define OFFSET_MAX \ - ((((OFFSET)1 << (sizeof (OFFSET) * CHAR_BIT - 2)) - 1) * 2 + 1) +#ifndef OFFSET_MAX +# define OFFSET_MAX \ + ((((OFFSET) 1 << (sizeof (OFFSET) * CHAR_BIT - 2)) - 1) * 2 + 1) +#endif /* Default to no early abort. */ #ifndef EARLY_ABORT diff --git a/lib/dirname-lgpl.c b/lib/dirname-lgpl.c index 95f9c99..e9454af 100644 --- a/lib/dirname-lgpl.c +++ b/lib/dirname-lgpl.c @@ -1,6 +1,6 @@ /* dirname.c -- return all but the last element in a file name - Copyright (C) 1990, 1998, 2000-2001, 2003-2006, 2009-2021 Free Software + Copyright (C) 1990, 1998, 2000-2001, 2003-2006, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify diff --git a/lib/dirname.c b/lib/dirname.c index d8b07d3..e72f713 100644 --- a/lib/dirname.c +++ b/lib/dirname.c @@ -1,11 +1,11 @@ /* dirname.c -- return all but the last element in a file name - Copyright (C) 1990, 1998, 2000-2001, 2003-2006, 2009-2021 Free Software + Copyright (C) 1990, 1998, 2000-2001, 2003-2006, 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/lib/dirname.h b/lib/dirname.h index 492a438..0344f1c 100644 --- a/lib/dirname.h +++ b/lib/dirname.h @@ -1,6 +1,6 @@ /* Take file names apart into directory and base names. - Copyright (C) 1998, 2001, 2003-2006, 2009-2021 Free Software Foundation, + Copyright (C) 1998, 2001, 2003-2006, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify @@ -19,8 +19,13 @@ #ifndef DIRNAME_H_ # define DIRNAME_H_ 1 -# include -# include +/* This file uses _GL_ATTRIBUTE_MALLOC, _GL_ATTRIBUTE_PURE, + _GL_ATTRIBUTE_RETURNS_NONNULL. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + +# include # include "filename.h" # include "basename-lgpl.h" @@ -33,11 +38,16 @@ extern "C" { #endif # if GNULIB_DIRNAME -char *base_name (char const *file) _GL_ATTRIBUTE_MALLOC; -char *dir_name (char const *file); +char *base_name (char const *file) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE + _GL_ATTRIBUTE_RETURNS_NONNULL; +char *dir_name (char const *file) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE + _GL_ATTRIBUTE_RETURNS_NONNULL; # endif -char *mdir_name (char const *file); +char *mdir_name (char const *file) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE; size_t dir_len (char const *file) _GL_ATTRIBUTE_PURE; bool strip_trailing_slashes (char *file); diff --git a/lib/dup2.c b/lib/dup2.c index 53e5552..7d197ca 100644 --- a/lib/dup2.c +++ b/lib/dup2.c @@ -1,6 +1,6 @@ /* Duplicate an open file descriptor to a specified file descriptor. - Copyright (C) 1999, 2004-2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 1999, 2004-2007, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/dynarray.h b/lib/dynarray.h index ec64273..9155910 100644 --- a/lib/dynarray.h +++ b/lib/dynarray.h @@ -1,5 +1,5 @@ /* Type-safe arrays which grow dynamically. - Copyright 2021 Free Software Foundation, Inc. + Copyright 2021-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/errno.in.h b/lib/errno.in.h index 3cad9e2..3dda9c2 100644 --- a/lib/errno.in.h +++ b/lib/errno.in.h @@ -1,6 +1,6 @@ /* A POSIX-like . - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/error.c b/lib/error.c index f89dcc5..ef43728 100644 --- a/lib/error.c +++ b/lib/error.c @@ -1,5 +1,5 @@ /* Error handler for noninteractive utilities - Copyright (C) 1990-1998, 2000-2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 1990-1998, 2000-2007, 2009-2023 Free Software Foundation, Inc. This file is part of the GNU C Library. This file is free software: you can redistribute it and/or modify @@ -42,8 +42,6 @@ # define USE_UNLOCKED_IO 0 # define _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD(a, b) # define _GL_ARG_NONNULL(a) -#else -# include "getprogname.h" #endif #if USE_UNLOCKED_IO diff --git a/lib/error.h b/lib/error.h deleted file mode 100644 index 814715e..0000000 --- a/lib/error.h +++ /dev/null @@ -1,66 +0,0 @@ -/* Declaration for error-reporting function - Copyright (C) 1995-1997, 2003, 2006, 2008-2021 Free Software Foundation, - Inc. - This file is part of the GNU C Library. - - This file is free software: you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as - published by the Free Software Foundation; either version 2.1 of the - License, or (at your option) any later version. - - This file is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public License - along with this program. If not, see . */ - -#ifndef _ERROR_H -#define _ERROR_H 1 - -/* Get _GL_ATTRIBUTE_SPEC_PRINTF_STANDARD, _GL_ATTRIBUTE_SPEC_PRINTF_SYSTEM. */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Print a message with 'fprintf (stderr, FORMAT, ...)'; - if ERRNUM is nonzero, follow it with ": " and strerror (ERRNUM). - If STATUS is nonzero, terminate the program with 'exit (STATUS)'. */ - -extern void error (int __status, int __errnum, const char *__format, ...) -#if GNULIB_VFPRINTF_POSIX - _GL_ATTRIBUTE_FORMAT ((_GL_ATTRIBUTE_SPEC_PRINTF_STANDARD, 3, 4)) -#else - _GL_ATTRIBUTE_FORMAT ((_GL_ATTRIBUTE_SPEC_PRINTF_SYSTEM, 3, 4)) -#endif - ; - -extern void error_at_line (int __status, int __errnum, const char *__fname, - unsigned int __lineno, const char *__format, ...) -#if GNULIB_VFPRINTF_POSIX - _GL_ATTRIBUTE_FORMAT ((_GL_ATTRIBUTE_SPEC_PRINTF_STANDARD, 5, 6)) -#else - _GL_ATTRIBUTE_FORMAT ((_GL_ATTRIBUTE_SPEC_PRINTF_SYSTEM, 5, 6)) -#endif - ; - -/* If NULL, error will flush stdout, then print on stderr the program - name, a colon and a space. Otherwise, error will call this - function without parameters instead. */ -extern void (*error_print_progname) (void); - -/* This variable is incremented each time 'error' is called. */ -extern unsigned int error_message_count; - -/* Sometimes we want to have at most one error per line. This - variable controls whether this mode is selected or not. */ -extern int error_one_per_line; - -#ifdef __cplusplus -} -#endif - -#endif /* error.h */ diff --git a/lib/error.in.h b/lib/error.in.h new file mode 100644 index 0000000..9a520f1 --- /dev/null +++ b/lib/error.in.h @@ -0,0 +1,123 @@ +/* Declarations for error-reporting functions. + Copyright (C) 1995-1997, 2003, 2006, 2008-2023 Free Software Foundation, + Inc. + This file is part of the GNU C Library. + + This file is free software: you can redistribute it and/or modify + it under the terms of the GNU Lesser General Public License as + published by the Free Software Foundation; either version 2.1 of the + License, or (at your option) any later version. + + This file is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#ifndef _@GUARD_PREFIX@_ERROR_H + +#if __GNUC__ >= 3 +@PRAGMA_SYSTEM_HEADER@ +#endif + +/* The include_next requires a split double-inclusion guard. */ +#if @HAVE_ERROR_H@ +# @INCLUDE_NEXT@ @NEXT_ERROR_H@ +#endif + +#ifndef _@GUARD_PREFIX@_ERROR_H +#define _@GUARD_PREFIX@_ERROR_H + +/* This file uses _GL_ATTRIBUTE_FORMAT. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + +/* Get _GL_ATTRIBUTE_SPEC_PRINTF_STANDARD, _GL_ATTRIBUTE_SPEC_PRINTF_SYSTEM. */ +#include + +/* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */ + +#if GNULIB_VFPRINTF_POSIX +# define _GL_ATTRIBUTE_SPEC_PRINTF_ERROR _GL_ATTRIBUTE_SPEC_PRINTF_STANDARD +#else +# define _GL_ATTRIBUTE_SPEC_PRINTF_ERROR _GL_ATTRIBUTE_SPEC_PRINTF_SYSTEM +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +/* Print a message with 'fprintf (stderr, FORMAT, ...)'; + if ERRNUM is nonzero, follow it with ": " and strerror (ERRNUM). + If STATUS is nonzero, terminate the program with 'exit (STATUS)'. */ +#if @REPLACE_ERROR@ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef error +# define error rpl_error +# endif +_GL_FUNCDECL_RPL (error, void, + (int __status, int __errnum, const char *__format, ...) + _GL_ATTRIBUTE_FORMAT ((_GL_ATTRIBUTE_SPEC_PRINTF_ERROR, 3, 4))); +_GL_CXXALIAS_RPL (error, void, + (int __status, int __errnum, const char *__format, ...)); +#else +# if ! @HAVE_ERROR@ +_GL_FUNCDECL_SYS (error, void, + (int __status, int __errnum, const char *__format, ...) + _GL_ATTRIBUTE_FORMAT ((_GL_ATTRIBUTE_SPEC_PRINTF_ERROR, 3, 4))); +# endif +_GL_CXXALIAS_SYS (error, void, + (int __status, int __errnum, const char *__format, ...)); +#endif +#if __GLIBC__ >= 2 +_GL_CXXALIASWARN (error); +#endif + +/* Likewise. If FILENAME is non-NULL, include FILENAME:LINENO: in the + message. */ +#if @REPLACE_ERROR_AT_LINE@ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef error_at_line +# define error_at_line rpl_error_at_line +# endif +_GL_FUNCDECL_RPL (error_at_line, void, + (int __status, int __errnum, const char *__filename, + unsigned int __lineno, const char *__format, ...) + _GL_ATTRIBUTE_FORMAT ((_GL_ATTRIBUTE_SPEC_PRINTF_ERROR, 5, 6))); +_GL_CXXALIAS_RPL (error_at_line, void, + (int __status, int __errnum, const char *__filename, + unsigned int __lineno, const char *__format, ...)); +#else +# if ! @HAVE_ERROR_AT_LINE@ +_GL_FUNCDECL_SYS (error_at_line, void, + (int __status, int __errnum, const char *__filename, + unsigned int __lineno, const char *__format, ...) + _GL_ATTRIBUTE_FORMAT ((_GL_ATTRIBUTE_SPEC_PRINTF_ERROR, 5, 6))); +# endif +_GL_CXXALIAS_SYS (error_at_line, void, + (int __status, int __errnum, const char *__filename, + unsigned int __lineno, const char *__format, ...)); +#endif +_GL_CXXALIASWARN (error_at_line); + +/* If NULL, error will flush stdout, then print on stderr the program + name, a colon and a space. Otherwise, error will call this + function without parameters instead. */ +extern void (*error_print_progname) (void); + +/* This variable is incremented each time 'error' is called. */ +extern unsigned int error_message_count; + +/* Sometimes we want to have at most one error per line. This + variable controls whether this mode is selected or not. */ +extern int error_one_per_line; + +#ifdef __cplusplus +} +#endif + +#endif /* _@GUARD_PREFIX@_ERROR_H */ +#endif /* _@GUARD_PREFIX@_ERROR_H */ diff --git a/lib/exclude.c b/lib/exclude.c index 417ab23..7bd0ec8 100644 --- a/lib/exclude.c +++ b/lib/exclude.c @@ -1,11 +1,11 @@ /* exclude.c -- exclude file names - Copyright (C) 1992-1994, 1997, 1999-2007, 2009-2021 Free Software + Copyright (C) 1992-1994, 1997, 1999-2007, 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -23,8 +23,6 @@ #include -#include - #include #include #include @@ -39,7 +37,6 @@ #include "mbuiter.h" #include "fnmatch.h" #include "xalloc.h" -#include "verify.h" #include "filename.h" #if GNULIB_EXCLUDE_SINGLE_THREAD @@ -57,10 +54,10 @@ # define FNM_LEADING_DIR 0 #endif -verify (((EXCLUDE_ANCHORED | EXCLUDE_INCLUDE | EXCLUDE_WILDCARDS) - & (FNM_PATHNAME | FNM_NOESCAPE | FNM_PERIOD | FNM_LEADING_DIR - | FNM_CASEFOLD | FNM_EXTMATCH)) - == 0); +static_assert (((EXCLUDE_ANCHORED | EXCLUDE_INCLUDE | EXCLUDE_WILDCARDS) + & (FNM_PATHNAME | FNM_NOESCAPE | FNM_PERIOD | FNM_LEADING_DIR + | FNM_CASEFOLD | FNM_EXTMATCH)) + == 0); /* Exclusion patterns are grouped into a singly-linked list of @@ -602,7 +599,7 @@ add_exclude (struct exclude *ex, char const *pattern, int options) /* Use ADD_FUNC to append to EX the patterns in FILE_NAME, each with OPTIONS. LINE_END terminates each pattern in the file. If LINE_END is a space character, ignore trailing spaces and empty - lines in FP. Return -1 on failure, 0 on success. */ + lines in FP. Return -1 (setting errno) on failure, 0 on success. */ int add_exclude_fp (void (*add_func) (struct exclude *, char const *, int, void *), @@ -674,19 +671,16 @@ add_exclude_file (void (*add_func) (struct exclude *, char const *, int), struct exclude *ex, char const *file_name, int options, char line_end) { - bool use_stdin = file_name[0] == '-' && !file_name[1]; - FILE *in; - int rc = 0; + if (strcmp (file_name, "-") == 0) + return add_exclude_fp (call_addfn, ex, stdin, options, line_end, &add_func); - if (use_stdin) - in = stdin; - else if (! (in = fopen (file_name, "re"))) + FILE *in = fopen (file_name, "re"); + if (!in) return -1; - - rc = add_exclude_fp (call_addfn, ex, in, options, line_end, &add_func); - - if (!use_stdin && fclose (in) != 0) - rc = -1; - + int rc = add_exclude_fp (call_addfn, ex, in, options, line_end, &add_func); + int e = errno; + if (fclose (in) != 0) + return -1; + errno = e; return rc; } diff --git a/lib/exclude.h b/lib/exclude.h index 9ecfbc9..c91e043 100644 --- a/lib/exclude.h +++ b/lib/exclude.h @@ -1,11 +1,11 @@ /* exclude.h -- declarations for excluding file names - Copyright (C) 1992-1994, 1997, 1999, 2001-2003, 2005-2006, 2009-2021 Free + Copyright (C) 1992-1994, 1997, 1999, 2001-2003, 2005-2006, 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -19,7 +19,12 @@ #ifndef _GL_EXCLUDE_H #define _GL_EXCLUDE_H 1 -#include +/* This file uses _GL_ATTRIBUTE_DEALLOC, _GL_ATTRIBUTE_MALLOC, + _GL_ATTRIBUTE_NONNULL, _GL_ATTRIBUTE_PURE, _GL_ATTRIBUTE_RETURNS_NONNULL. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + #include /* Written by Paul Eggert @@ -48,8 +53,11 @@ struct exclude; bool fnmatch_pattern_has_wildcards (const char *, int) _GL_ATTRIBUTE_PURE; -struct exclude *new_exclude (void) _GL_ATTRIBUTE_MALLOC; -void free_exclude (struct exclude *); +void free_exclude (struct exclude *) + _GL_ATTRIBUTE_NONNULL ((1)); +struct exclude *new_exclude (void) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_RETURNS_NONNULL + _GL_ATTRIBUTE_DEALLOC (free_exclude, 1); void add_exclude (struct exclude *, char const *, int); int add_exclude_file (void (*) (struct exclude *, char const *, int), struct exclude *, char const *, int, char); diff --git a/lib/exitfail.c b/lib/exitfail.c index ebc1f58..d67a130 100644 --- a/lib/exitfail.c +++ b/lib/exitfail.c @@ -1,6 +1,6 @@ /* Failure exit status - Copyright (C) 2002-2003, 2005-2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2002-2003, 2005-2007, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/exitfail.h b/lib/exitfail.h index 4add9e0..85a6af6 100644 --- a/lib/exitfail.h +++ b/lib/exitfail.h @@ -1,6 +1,6 @@ /* Failure exit status - Copyright (C) 2002, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2002, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/fcntl.c b/lib/fcntl.c index c744eb9..e220800 100644 --- a/lib/fcntl.c +++ b/lib/fcntl.c @@ -1,6 +1,6 @@ /* Provide file descriptor control. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/fcntl.in.h b/lib/fcntl.in.h index 26dedc3..d0bb85f 100644 --- a/lib/fcntl.in.h +++ b/lib/fcntl.in.h @@ -1,6 +1,6 @@ /* Like , but with non-working flags defined to 0. - Copyright (C) 2006-2021 Free Software Foundation, Inc. + Copyright (C) 2006-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -74,6 +74,11 @@ #ifndef _@GUARD_PREFIX@_FCNTL_H #define _@GUARD_PREFIX@_FCNTL_H +/* This file uses GNULIB_POSIXCHECK, HAVE_RAW_DECL_*. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + #ifndef __GLIBC__ /* Avoid namespace pollution on glibc systems. */ # include #endif @@ -435,6 +440,10 @@ _GL_WARN_ON_USE (openat, "openat is not portable - " # define AT_EACCESS 4 #endif +/* Ignore this flag if not supported. */ +#ifndef AT_NO_AUTOMOUNT +# define AT_NO_AUTOMOUNT 0 +#endif #endif /* _@GUARD_PREFIX@_FCNTL_H */ #endif /* _@GUARD_PREFIX@_FCNTL_H */ diff --git a/lib/fd-hook.c b/lib/fd-hook.c index 75b1626..3626115 100644 --- a/lib/fd-hook.c +++ b/lib/fd-hook.c @@ -1,5 +1,5 @@ /* Hook for making file descriptor functions close(), ioctl() extensible. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2009. This file is free software: you can redistribute it and/or modify diff --git a/lib/fd-hook.h b/lib/fd-hook.h index 98e2a52..6bf3c24 100644 --- a/lib/fd-hook.h +++ b/lib/fd-hook.h @@ -1,5 +1,5 @@ /* Hook for making file descriptor functions close(), ioctl() extensible. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/file-type.c b/lib/file-type.c index af7c10a..359b4b8 100644 --- a/lib/file-type.c +++ b/lib/file-type.c @@ -1,11 +1,11 @@ /* Return a string describing the type of a file. - Copyright (C) 1993-1994, 2001-2002, 2004-2006, 2009-2021 Free Software + Copyright (C) 1993-1994, 2001-2002, 2004-2006, 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/lib/file-type.h b/lib/file-type.h index 90a4c44..2c5a8e9 100644 --- a/lib/file-type.h +++ b/lib/file-type.h @@ -1,11 +1,11 @@ /* Return a string describing the type of a file. - Copyright (C) 1993-1994, 2001-2002, 2004-2005, 2009-2021 Free Software + Copyright (C) 1993-1994, 2001-2002, 2004-2005, 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -21,6 +21,11 @@ #ifndef FILE_TYPE_H # define FILE_TYPE_H 1 +/* This file uses _GL_ATTRIBUTE_PURE. */ +# if !_GL_CONFIG_H_INCLUDED +# error "Please include config.h first." +# endif + # include # include diff --git a/lib/filename.h b/lib/filename.h index dafe3df..a2400a9 100644 --- a/lib/filename.h +++ b/lib/filename.h @@ -1,5 +1,5 @@ /* Basic filename support macros. - Copyright (C) 2001-2004, 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2001-2023 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/filenamecat-lgpl.c b/lib/filenamecat-lgpl.c index d52dc80..6d7ed84 100644 --- a/lib/filenamecat-lgpl.c +++ b/lib/filenamecat-lgpl.c @@ -1,6 +1,6 @@ /* Concatenate two arbitrary file names. - Copyright (C) 1996-2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 1996-2007, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/filenamecat.c b/lib/filenamecat.c index 8180acc..d6c8828 100644 --- a/lib/filenamecat.c +++ b/lib/filenamecat.c @@ -1,10 +1,10 @@ /* Concatenate two arbitrary file names. - Copyright (C) 1996-2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 1996-2007, 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/lib/filenamecat.h b/lib/filenamecat.h index e2ff466..29a4daa 100644 --- a/lib/filenamecat.h +++ b/lib/filenamecat.h @@ -1,6 +1,6 @@ /* Concatenate two arbitrary file names. - Copyright (C) 1996-1997, 2003, 2005, 2007, 2009-2021 Free Software + Copyright (C) 1996-1997, 2003, 2005, 2007, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify @@ -18,10 +18,20 @@ /* Written by Jim Meyering. */ +/* This file uses _GL_ATTRIBUTE_MALLOC, _GL_ATTRIBUTE_RETURNS_NONNULL. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + +#include + #if GNULIB_FILENAMECAT char *file_name_concat (char const *dir, char const *base, - char **base_in_result); + char **base_in_result) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE + _GL_ATTRIBUTE_RETURNS_NONNULL; #endif char *mfile_name_concat (char const *dir, char const *base, - char **base_in_result); + char **base_in_result) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE; diff --git a/lib/flexmember.h b/lib/flexmember.h index 1b19a2b..8c5915e 100644 --- a/lib/flexmember.h +++ b/lib/flexmember.h @@ -1,6 +1,6 @@ /* Sizes of structs with flexible array members. - Copyright 2016-2021 Free Software Foundation, Inc. + Copyright 2016-2023 Free Software Foundation, Inc. This file is part of the GNU C Library. @@ -20,6 +20,11 @@ Written by Paul Eggert. */ +/* This file uses _Alignof. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + #include /* Nonzero multiple of alignment of TYPE, suitable for FLEXSIZEOF below. diff --git a/lib/fnmatch.c b/lib/fnmatch.c index b8a71f1..32cfb48 100644 --- a/lib/fnmatch.c +++ b/lib/fnmatch.c @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2021 Free Software Foundation, Inc. +/* Copyright (C) 1991-2023 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -30,6 +30,7 @@ #include #include #include +#include #include #if defined _LIBC || HAVE_ALLOCA # include @@ -37,7 +38,6 @@ #include #include #include -#include /* We need some of the locale data (the collation sequence information) but there is no interface to get this information in general. Therefore @@ -64,7 +64,7 @@ extern int fnmatch (const char *pattern, const char *string, int flags); #endif #ifdef _LIBC -# if __GNUC__ >= 7 +# if __glibc_has_attribute (__fallthrough__) # define FALLTHROUGH __attribute__ ((__fallthrough__)) # else # define FALLTHROUGH ((void) 0) @@ -73,7 +73,6 @@ extern int fnmatch (const char *pattern, const char *string, int flags); # include "attribute.h" #endif -#include #include #ifdef _LIBC diff --git a/lib/fnmatch.in.h b/lib/fnmatch.in.h index 56596ee..144143b 100644 --- a/lib/fnmatch.in.h +++ b/lib/fnmatch.in.h @@ -1,5 +1,5 @@ /* Substitute for and wrapper around . - Copyright (C) 1991-1993, 1996-1999, 2001-2003, 2005, 2007, 2009-2021 Free + Copyright (C) 1991-1993, 1996-1999, 2001-2003, 2005, 2007, 2009-2023 Free Software Foundation, Inc. This file is part of the GNU C Library. @@ -32,6 +32,11 @@ #ifndef _@GUARD_PREFIX@_FNMATCH_H #define _@GUARD_PREFIX@_FNMATCH_H +/* This file uses GNULIB_POSIXCHECK, HAVE_RAW_DECL_*. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + /* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */ /* The definition of _GL_ARG_NONNULL is copied here. */ diff --git a/lib/fnmatch_loop.c b/lib/fnmatch_loop.c index 7f938af..68a3b7a 100644 --- a/lib/fnmatch_loop.c +++ b/lib/fnmatch_loop.c @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2021 Free Software Foundation, Inc. +/* Copyright (C) 1991-2023 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -1039,8 +1039,8 @@ EXT (INT opt, const CHAR *pattern, const CHAR *string, const CHAR *string_end, idx_t slen = FLEXSIZEOF (struct patternlist, str, 0); \ idx_t new_used = alloca_used + slen; \ idx_t plensize; \ - if (INT_MULTIPLY_WRAPV (plen, sizeof (CHAR), &plensize) \ - || INT_ADD_WRAPV (new_used, plensize, &new_used)) \ + if (ckd_mul (&plensize, plen, sizeof (CHAR)) \ + || ckd_add (&new_used, new_used, plensize)) \ { \ retval = -2; \ goto out; \ diff --git a/lib/fopen.c b/lib/fopen.c index cebcdac..e1e4cdb 100644 --- a/lib/fopen.c +++ b/lib/fopen.c @@ -1,5 +1,5 @@ /* Open a stream to a file. - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -39,7 +39,6 @@ orig_fopen (const char *filename, const char *mode) #include #include -#include #include #include #include @@ -226,5 +225,9 @@ rpl_fopen (const char *filename, const char *mode) } #endif + /* open_direction is sometimes used, sometimes unused. + Silence gcc's warning about this situation. */ + (void) open_direction; + return orig_fopen (filename, mode); } diff --git a/lib/free.c b/lib/free.c index 780f03d..372a6b0 100644 --- a/lib/free.c +++ b/lib/free.c @@ -1,6 +1,6 @@ /* Make free() preserve errno. - Copyright (C) 2003, 2006, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2003, 2006, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/freopen.c b/lib/freopen.c index 845df85..646aa7c 100644 --- a/lib/freopen.c +++ b/lib/freopen.c @@ -1,9 +1,9 @@ /* Open a stream to a file. - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as - published by the Free Software Foundation; either version 3 of the + published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This file is distributed in the hope that it will be useful, diff --git a/lib/fstat.c b/lib/fstat.c index 512c688..6a23500 100644 --- a/lib/fstat.c +++ b/lib/fstat.c @@ -1,5 +1,5 @@ /* fstat() replacement. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/getdtablesize.c b/lib/getdtablesize.c index 5006c2d..ac2d175 100644 --- a/lib/getdtablesize.c +++ b/lib/getdtablesize.c @@ -1,5 +1,5 @@ /* getdtablesize() function: Return maximum possible file descriptor value + 1. - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2008. This file is free software: you can redistribute it and/or modify diff --git a/lib/getopt-cdefs.in.h b/lib/getopt-cdefs.in.h index 33e3d4b..e76c78c 100644 --- a/lib/getopt-cdefs.in.h +++ b/lib/getopt-cdefs.in.h @@ -1,5 +1,5 @@ /* getopt-on-non-glibc compatibility macros. - Copyright (C) 1989-2021 Free Software Foundation, Inc. + Copyright (C) 1989-2023 Free Software Foundation, Inc. This file is part of gnulib. Unlike most of the getopt implementation, it is NOT shared with the GNU C Library. diff --git a/lib/getopt-core.h b/lib/getopt-core.h index ceb14d0..c5dd493 100644 --- a/lib/getopt-core.h +++ b/lib/getopt-core.h @@ -1,5 +1,5 @@ /* Declarations for getopt (basic, portable features only). - Copyright (C) 1989-2021 Free Software Foundation, Inc. + Copyright (C) 1989-2023 Free Software Foundation, Inc. This file is part of the GNU C Library and is also part of gnulib. Patches to this file should be submitted to both projects. diff --git a/lib/getopt-ext.h b/lib/getopt-ext.h index f82a8c6..d37c293 100644 --- a/lib/getopt-ext.h +++ b/lib/getopt-ext.h @@ -1,5 +1,5 @@ /* Declarations for getopt (GNU extensions). - Copyright (C) 1989-2021 Free Software Foundation, Inc. + Copyright (C) 1989-2023 Free Software Foundation, Inc. This file is part of the GNU C Library and is also part of gnulib. Patches to this file should be submitted to both projects. diff --git a/lib/getopt-pfx-core.h b/lib/getopt-pfx-core.h index b1733a3..095e393 100644 --- a/lib/getopt-pfx-core.h +++ b/lib/getopt-pfx-core.h @@ -1,5 +1,5 @@ /* getopt (basic, portable features) gnulib wrapper header. - Copyright (C) 1989-2021 Free Software Foundation, Inc. + Copyright (C) 1989-2023 Free Software Foundation, Inc. This file is part of gnulib. Unlike most of the getopt implementation, it is NOT shared with the GNU C Library. @@ -47,7 +47,7 @@ # define optind __GETOPT_ID (optind) # define optopt __GETOPT_ID (optopt) -/* Work around a a problem on macOS, which declares getopt with a +/* Work around a problem on macOS, which declares getopt with a trailing __DARWIN_ALIAS(getopt) that would expand to something like __asm("_" "rpl_getopt" "$UNIX2003") were it not for the following hack to suppress the macOS declaration . */ diff --git a/lib/getopt-pfx-ext.h b/lib/getopt-pfx-ext.h index b9a14ba..8578d72 100644 --- a/lib/getopt-pfx-ext.h +++ b/lib/getopt-pfx-ext.h @@ -1,5 +1,5 @@ /* getopt (GNU extensions) gnulib wrapper header. - Copyright (C) 1989-2021 Free Software Foundation, Inc. + Copyright (C) 1989-2023 Free Software Foundation, Inc. This file is part of gnulib. Unlike most of the getopt implementation, it is NOT shared with the GNU C Library. diff --git a/lib/getopt.c b/lib/getopt.c index b106989..1e2441c 100644 --- a/lib/getopt.c +++ b/lib/getopt.c @@ -1,5 +1,5 @@ /* Getopt for GNU. - Copyright (C) 1987-2021 Free Software Foundation, Inc. + Copyright (C) 1987-2023 Free Software Foundation, Inc. This file is part of the GNU C Library and is also part of gnulib. Patches to this file should be submitted to both projects. @@ -378,8 +378,8 @@ process_long_option (int argc, char **argv, const char *optstring, /* Initialize internal data upon the first call to getopt. */ static const char * -_getopt_initialize (int argc _GL_UNUSED, - char **argv _GL_UNUSED, const char *optstring, +_getopt_initialize (_GL_UNUSED int argc, + _GL_UNUSED char **argv, const char *optstring, struct _getopt_data *d, int posixly_correct) { /* Start processing options with ARGV-element 1 (since ARGV-element 0 diff --git a/lib/getopt.in.h b/lib/getopt.in.h index bf884f0..0867d36 100644 --- a/lib/getopt.in.h +++ b/lib/getopt.in.h @@ -1,5 +1,5 @@ /* Declarations for getopt. - Copyright (C) 1989-2021 Free Software Foundation, Inc. + Copyright (C) 1989-2023 Free Software Foundation, Inc. This file is part of gnulib. Unlike most of the getopt implementation, it is NOT shared with the GNU C Library, which supplies a different version of diff --git a/lib/getopt1.c b/lib/getopt1.c index 5a92806..49323aa 100644 --- a/lib/getopt1.c +++ b/lib/getopt1.c @@ -1,5 +1,5 @@ /* getopt_long and getopt_long_only entry points for GNU getopt. - Copyright (C) 1987-2021 Free Software Foundation, Inc. + Copyright (C) 1987-2023 Free Software Foundation, Inc. This file is part of the GNU C Library and is also part of gnulib. Patches to this file should be submitted to both projects. diff --git a/lib/getopt_int.h b/lib/getopt_int.h index 91254e4..4d9e24b 100644 --- a/lib/getopt_int.h +++ b/lib/getopt_int.h @@ -1,5 +1,5 @@ /* Internal declarations for getopt. - Copyright (C) 1989-2021 Free Software Foundation, Inc. + Copyright (C) 1989-2023 Free Software Foundation, Inc. This file is part of the GNU C Library and is also part of gnulib. Patches to this file should be submitted to both projects. diff --git a/lib/getpagesize.c b/lib/getpagesize.c index b7493ec..08bb33f 100644 --- a/lib/getpagesize.c +++ b/lib/getpagesize.c @@ -1,6 +1,6 @@ /* getpagesize emulation for systems where it cannot be done in a C macro. - Copyright (C) 2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2007, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/getprogname.c b/lib/getprogname.c index 9a80281..279d79f 100644 --- a/lib/getprogname.c +++ b/lib/getprogname.c @@ -1,5 +1,5 @@ /* Program name management. - Copyright (C) 2016-2021 Free Software Foundation, Inc. + Copyright (C) 2016-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by @@ -16,11 +16,10 @@ #include -/* Specification. */ -#include "getprogname.h" +/* Specification. Also get __argv declaration. */ +#include #include /* get program_invocation_name declaration */ -#include /* get __argv declaration */ #ifdef _AIX # include @@ -53,13 +52,12 @@ #if defined __SCO_VERSION__ || defined __sysv5__ # include -# include # include #endif #include "basename-lgpl.h" -#ifndef HAVE_GETPROGNAME /* not Mac OS X, FreeBSD, NetBSD, OpenBSD >= 5.4, Cygwin */ +#ifndef HAVE_GETPROGNAME /* not Mac OS X, FreeBSD, NetBSD, OpenBSD >= 5.4, Solaris >= 11, Cygwin, Android API level >= 21 */ char const * getprogname (void) { diff --git a/lib/getprogname.h b/lib/getprogname.h index eb12dcd..13314f2 100644 --- a/lib/getprogname.h +++ b/lib/getprogname.h @@ -1,5 +1,5 @@ /* Program name management. - Copyright (C) 2016-2021 Free Software Foundation, Inc. + Copyright (C) 2016-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by @@ -19,22 +19,8 @@ #include -#ifdef __cplusplus -extern "C" { -#endif - -/* Return the base name of the executing program. - On native Windows this will usually end in ".exe" or ".EXE". */ -#ifndef HAVE_GETPROGNAME -extern char const *getprogname (void) -# ifdef HAVE_DECL_PROGRAM_INVOCATION_NAME - _GL_ATTRIBUTE_PURE -# endif - ; -#endif - -#ifdef __cplusplus -} +#if __GNUC__ || (__clang_major__ >= 4) +# warning "The include file getprogname.h is deprecated. Use instead." #endif #endif diff --git a/lib/getrandom.c b/lib/getrandom.c index a186c4d..19bb342 100644 --- a/lib/getrandom.c +++ b/lib/getrandom.c @@ -1,6 +1,6 @@ /* Obtain a series of random bytes. - Copyright 2020-2021 Free Software Foundation, Inc. + Copyright 2020-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -23,7 +23,6 @@ #include #include -#include #include #if defined _WIN32 && ! defined __CYGWIN__ diff --git a/lib/gettext.h b/lib/gettext.h index f1c7a24..d0462c4 100644 --- a/lib/gettext.h +++ b/lib/gettext.h @@ -1,5 +1,5 @@ /* Convenience header for conditional use of GNU . - Copyright (C) 1995-1998, 2000-2002, 2004-2006, 2009-2021 Free Software + Copyright (C) 1995-1998, 2000-2002, 2004-2006, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify @@ -138,7 +138,7 @@ #define dcnpgettext(Domainname, Msgctxt, Msgid, MsgidPlural, N, Category) \ npgettext_aux (Domainname, Msgctxt GETTEXT_CONTEXT_GLUE Msgid, Msgid, MsgidPlural, N, Category) -#ifdef __GNUC__ +#if defined __GNUC__ || defined __clang__ __inline #else #ifdef __cplusplus @@ -157,7 +157,7 @@ pgettext_aux (const char *domain, return translation; } -#ifdef __GNUC__ +#if defined __GNUC__ || defined __clang__ __inline #else #ifdef __cplusplus @@ -191,9 +191,8 @@ npgettext_aux (const char *domain, or may have security implications due to non-deterministic stack usage. */ #if (!defined GNULIB_NO_VLA \ - && (((__GNUC__ >= 3 || __GNUG__ >= 2) && !defined __STRICT_ANSI__) \ - /* || (__STDC_VERSION__ == 199901L && !defined __HP_cc) - || (__STDC_VERSION__ >= 201112L && !defined __STDC_NO_VLA__) */ )) + && defined __STDC_VERSION__ && 199901L <= __STDC_VERSION__ \ + && !defined __STDC_NO_VLA__) # define _LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS 1 #else # define _LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS 0 @@ -208,7 +207,7 @@ npgettext_aux (const char *domain, #define dpgettext_expr(Domainname, Msgctxt, Msgid) \ dcpgettext_expr (Domainname, Msgctxt, Msgid, LC_MESSAGES) -#ifdef __GNUC__ +#if defined __GNUC__ || defined __clang__ __inline #else #ifdef __cplusplus @@ -255,7 +254,7 @@ dcpgettext_expr (const char *domain, #define dnpgettext_expr(Domainname, Msgctxt, Msgid, MsgidPlural, N) \ dcnpgettext_expr (Domainname, Msgctxt, Msgid, MsgidPlural, N, LC_MESSAGES) -#ifdef __GNUC__ +#if defined __GNUC__ || defined __clang__ __inline #else #ifdef __cplusplus diff --git a/lib/gettime.c b/lib/gettime.c index 8f28a32..ec40ff9 100644 --- a/lib/gettime.c +++ b/lib/gettime.c @@ -1,10 +1,10 @@ /* gettime -- get the system clock - Copyright (C) 2002, 2004-2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2002, 2004-2007, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as - published by the Free Software Foundation; either version 3 of the + published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This file is distributed in the hope that it will be useful, @@ -30,11 +30,13 @@ gettime (struct timespec *ts) { #if defined CLOCK_REALTIME && HAVE_CLOCK_GETTIME clock_gettime (CLOCK_REALTIME, ts); +#elif defined HAVE_TIMESPEC_GET + timespec_get (ts, TIME_UTC); #else struct timeval tv; gettimeofday (&tv, NULL); - ts->tv_sec = tv.tv_sec; - ts->tv_nsec = tv.tv_usec * 1000; + *ts = (struct timespec) { .tv_sec = tv.tv_sec, + .tv_nsec = tv.tv_usec * 1000 }; #endif } diff --git a/lib/gettimeofday.c b/lib/gettimeofday.c index 2a222fc..c71629c 100644 --- a/lib/gettimeofday.c +++ b/lib/gettimeofday.c @@ -1,6 +1,6 @@ /* Provide gettimeofday for systems that don't have it or for which it's broken. - Copyright (C) 2001-2003, 2005-2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2001-2003, 2005-2007, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -113,8 +113,10 @@ gettimeofday (struct timeval *restrict tv, void *restrict tz) ULONGLONG since_1970 = since_1601 - (ULONGLONG) 134774 * (ULONGLONG) 86400 * (ULONGLONG) 10000000; ULONGLONG microseconds_since_1970 = since_1970 / (ULONGLONG) 10; - tv->tv_sec = microseconds_since_1970 / (ULONGLONG) 1000000; - tv->tv_usec = microseconds_since_1970 % (ULONGLONG) 1000000; + *tv = (struct timeval) { + .tv_sec = microseconds_since_1970 / (ULONGLONG) 1000000, + .tv_usec = microseconds_since_1970 % (ULONGLONG) 1000000 + }; return 0; @@ -127,10 +129,7 @@ gettimeofday (struct timeval *restrict tv, void *restrict tz) struct timeval otv; int result = gettimeofday (&otv, (struct timezone *) tz); if (result == 0) - { - tv->tv_sec = otv.tv_sec; - tv->tv_usec = otv.tv_usec; - } + *tv = otv; # else int result = gettimeofday (tv, (struct timezone *) tz); # endif @@ -143,8 +142,7 @@ gettimeofday (struct timeval *restrict tv, void *restrict tz) # error "Only 1-second nominal clock resolution found. Is that intended?" \ "If so, compile with the -DOK_TO_USE_1S_CLOCK option." # endif - tv->tv_sec = time (NULL); - tv->tv_usec = 0; + *tv = (struct timeval) { .tv_sec = time (NULL), .tv_usec = 0 }; return 0; diff --git a/lib/glthread/lock.c b/lib/glthread/lock.c index 44335e3..82fb755 100644 --- a/lib/glthread/lock.c +++ b/lib/glthread/lock.c @@ -1,5 +1,5 @@ /* Locking in multithreaded situations. - Copyright (C) 2005-2021 Free Software Foundation, Inc. + Copyright (C) 2005-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/glthread/lock.h b/lib/glthread/lock.h index cc4c519..805cd1c 100644 --- a/lib/glthread/lock.h +++ b/lib/glthread/lock.h @@ -1,5 +1,5 @@ /* Locking in multithreaded situations. - Copyright (C) 2005-2021 Free Software Foundation, Inc. + Copyright (C) 2005-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -77,6 +77,14 @@ #ifndef _LOCK_H #define _LOCK_H +/* This file uses HAVE_THREADS_H, HAVE_PTHREAD_RWLOCK, + HAVE_PTHREAD_RWLOCK_RDLOCK_PREFER_WRITER, + PTHREAD_RWLOCK_WRITER_NONRECURSIVE_INITIALIZER_NP, + HAVE_PTHREAD_MUTEX_RECURSIVE. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + #include #include diff --git a/lib/glthread/threadlib.c b/lib/glthread/threadlib.c index 793bc69..5ecf827 100644 --- a/lib/glthread/threadlib.c +++ b/lib/glthread/threadlib.c @@ -1,5 +1,5 @@ /* Multithreading primitives. - Copyright (C) 2005-2021 Free Software Foundation, Inc. + Copyright (C) 2005-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/gnulib.mk b/lib/gnulib.mk index e7c7e10..efa902f 100644 --- a/lib/gnulib.mk +++ b/lib/gnulib.mk @@ -1,10 +1,10 @@ ## DO NOT EDIT! GENERATED AUTOMATICALLY! ## Process this file with automake to produce Makefile.in. -# Copyright (C) 2002-2021 Free Software Foundation, Inc. +# Copyright (C) 2002-2023 Free Software Foundation, Inc. # # This file is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or +# the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This file is distributed in the hope that it will be useful, @@ -39,6 +39,7 @@ # --avoid=setlocale \ # announce-gen \ # argmatch \ +# attribute \ # binary-io \ # c-stack \ # config-h \ @@ -50,10 +51,11 @@ # exclude \ # exitfail \ # extensions \ +# extern-inline \ # fcntl \ -# fdl \ # file-type \ # filenamecat \ +# flexmember \ # fnmatch-gnu \ # getopt-gnu \ # gettext-h \ @@ -73,25 +75,33 @@ # maintainer-makefile \ # manywarnings \ # mbrtowc \ +# mempcpy \ # mkstemp \ # mktime \ # nstrftime \ +# nullptr \ +# perl \ # progname \ # propername \ +# raise \ # rawmemchr \ # readme-release \ # regex \ # sh-quote \ # signal \ +# sigprocmask \ # stat \ # stat-macros \ # stat-time \ +# stdbool \ # stdint \ +# stpcpy \ # strcase \ # strptime \ # strtoimax \ # sys_wait \ # system-quote \ +# time_rz \ # unistd \ # unlocked-io \ # update-copyright \ @@ -105,7 +115,7 @@ # xreadlink \ # xstdopen \ # xstrtoimax \ -# xvasprintf +# year2038 MOSTLYCLEANFILES += core *.stackdump @@ -114,6 +124,7 @@ MOSTLYCLEANFILES += core *.stackdump noinst_LIBRARIES += libdiffutils.a libdiffutils_a_SOURCES = +libdiffutils_a_CFLAGS = $(AM_CFLAGS) $(GL_CFLAG_GNULIB_WARNINGS) libdiffutils_a_LIBADD = $(gl_LIBOBJS) libdiffutils_a_DEPENDENCIES = $(gl_LIBOBJS) EXTRA_libdiffutils_a_SOURCES = @@ -135,11 +146,10 @@ BUILT_SOURCES += $(ALLOCA_H) # doesn't have one that works with the given compiler. if GL_GENERATE_ALLOCA_H alloca.h: alloca.in.h $(top_builddir)/config.status - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''HAVE_ALLOCA_H''@|$(HAVE_ALLOCA_H)|g' < $(srcdir)/alloca.in.h; \ - } > $@-t && \ - mv -f $@-t $@ + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''HAVE_ALLOCA_H''@|$(HAVE_ALLOCA_H)|g' \ + $(srcdir)/alloca.in.h > $@-t + $(AM_V_at)mv $@-t $@ else alloca.h: $(top_builddir)/config.status rm -f $@ @@ -181,6 +191,37 @@ EXTRA_DIST += argmatch.h ## end gnulib module argmatch +## begin gnulib module assert-h + +BUILT_SOURCES += $(ASSERT_H) + +# We need the following in order to create when the system +# doesn't have one that works with the given compiler. +if GL_GENERATE_ASSERT_H +assert.h: assert.in.h verify.h $(top_builddir)/config.status + $(gl_V_at){ $(SED_HEADER_STDOUT) \ + -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_ASSERT_H''@|$(NEXT_ASSERT_H)|g' \ + < $(srcdir)/assert.in.h && \ + sed -e '/@assert.h omit start@/,/@assert.h omit end@/d' \ + -e 's|_gl_verify|_gl_static_assert|g' \ + -e 's|_GL_VERIFY|_GL_STATIC_ASSERT|g' \ + -e 's|_GL\(_STATIC_ASSERT_H\)|_GL\1|g' \ + < $(srcdir)/verify.h; \ + } > $@-t + $(AM_V_at)mv $@-t $@ +else +assert.h: $(top_builddir)/config.status + rm -f $@ +endif +MOSTLYCLEANFILES += assert.h assert.h-t + +EXTRA_DIST += assert.in.h verify.h + +## end gnulib module assert-h + ## begin gnulib module assure @@ -217,10 +258,9 @@ libdiffutils_a_SOURCES += bitrotate.h bitrotate.c ## begin gnulib module btowc - -EXTRA_DIST += btowc.c - -EXTRA_libdiffutils_a_SOURCES += btowc.c +if GL_COND_OBJ_BTOWC +libdiffutils_a_SOURCES += btowc.c +endif ## end gnulib module btowc @@ -285,10 +325,9 @@ EXTRA_DIST += cloexec.h ## begin gnulib module close - -EXTRA_DIST += close.c - -EXTRA_libdiffutils_a_SOURCES += close.c +if GL_COND_OBJ_CLOSE +libdiffutils_a_SOURCES += close.c +endif ## end gnulib module close @@ -299,9 +338,8 @@ BUILT_SOURCES += ctype.h # We need the following in order to create when the system # doesn't have one that works with the given compiler. ctype.h: ctype.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ @@ -310,9 +348,8 @@ ctype.h: ctype.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H) -e 's/@''HAVE_ISBLANK''@/$(HAVE_ISBLANK)/g' \ -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ - < $(srcdir)/ctype.in.h; \ - } > $@-t && \ - mv $@-t $@ + $(srcdir)/ctype.in.h > $@-t + $(AM_V_at)mv $@-t $@ MOSTLYCLEANFILES += ctype.h ctype.h-t EXTRA_DIST += ctype.in.h @@ -352,49 +389,12 @@ EXTRA_DIST += $(top_srcdir)/build-aux/do-release-commit-and-tag ## begin gnulib module dup2 - -EXTRA_DIST += dup2.c - -EXTRA_libdiffutils_a_SOURCES += dup2.c +if GL_COND_OBJ_DUP2 +libdiffutils_a_SOURCES += dup2.c +endif ## end gnulib module dup2 -## begin gnulib module dynarray - -BUILT_SOURCES += malloc/dynarray.gl.h malloc/dynarray-skeleton.gl.h - -malloc/dynarray.gl.h: malloc/dynarray.h - $(AM_V_at)$(MKDIR_P) malloc - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e '/libc_hidden_proto/d' < $(srcdir)/malloc/dynarray.h; \ - } > $@-t && \ - mv $@-t $@ -MOSTLYCLEANFILES += malloc/dynarray.gl.h malloc/dynarray.gl.h-t - -malloc/dynarray-skeleton.gl.h: malloc/dynarray-skeleton.c - $(AM_V_at)$(MKDIR_P) malloc - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|||g' \ - -e 's|__attribute_maybe_unused__|_GL_ATTRIBUTE_MAYBE_UNUSED|g' \ - -e 's|__attribute_nonnull__|_GL_ATTRIBUTE_NONNULL|g' \ - -e 's|__attribute_warn_unused_result__|_GL_ATTRIBUTE_NODISCARD|g' \ - -e 's|__glibc_likely|_GL_LIKELY|g' \ - -e 's|__glibc_unlikely|_GL_UNLIKELY|g' \ - < $(srcdir)/malloc/dynarray-skeleton.c; \ - } > $@-t && \ - mv $@-t $@ -MOSTLYCLEANFILES += malloc/dynarray-skeleton.gl.h malloc/dynarray-skeleton.gl.h-t - -libdiffutils_a_SOURCES += malloc/dynarray_at_failure.c malloc/dynarray_emplace_enlarge.c malloc/dynarray_finalize.c malloc/dynarray_resize.c malloc/dynarray_resize_clear.c - -EXTRA_DIST += dynarray.h malloc/dynarray-skeleton.c malloc/dynarray.h - -EXTRA_libdiffutils_a_SOURCES += malloc/dynarray-skeleton.c - -## end gnulib module dynarray - ## begin gnulib module errno BUILT_SOURCES += $(ERRNO_H) @@ -403,9 +403,8 @@ BUILT_SOURCES += $(ERRNO_H) # doesn't have one that is POSIX compliant. if GL_GENERATE_ERRNO_H errno.h: errno.in.h $(top_builddir)/config.status - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ @@ -416,9 +415,8 @@ errno.h: errno.in.h $(top_builddir)/config.status -e 's|@''ENOLINK_VALUE''@|$(ENOLINK_VALUE)|g' \ -e 's|@''EOVERFLOW_HIDDEN''@|$(EOVERFLOW_HIDDEN)|g' \ -e 's|@''EOVERFLOW_VALUE''@|$(EOVERFLOW_VALUE)|g' \ - < $(srcdir)/errno.in.h; \ - } > $@-t && \ - mv $@-t $@ + $(srcdir)/errno.in.h > $@-t + $(AM_V_at)mv $@-t $@ else errno.h: $(top_builddir)/config.status rm -f $@ @@ -431,12 +429,42 @@ EXTRA_DIST += errno.in.h ## begin gnulib module error +if GL_COND_OBJ_ERROR +libdiffutils_a_SOURCES += error.c +endif -EXTRA_DIST += error.c error.h +## end gnulib module error -EXTRA_libdiffutils_a_SOURCES += error.c +## begin gnulib module error-h -## end gnulib module error +BUILT_SOURCES += $(ERROR_H) + +# We need the following in order to create when the system +# doesn't have one that works. +if GL_GENERATE_ERROR_H +error.h: error.in.h $(top_builddir)/config.status $(CXXDEFS_H) + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ + -e 's|@''HAVE_ERROR_H''@|$(HAVE_ERROR_H)|g' \ + -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ + -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''NEXT_ERROR_H''@|$(NEXT_ERROR_H)|g' \ + -e 's|@''HAVE_ERROR''@|$(HAVE_ERROR)|g' \ + -e 's|@''HAVE_ERROR_AT_LINE''@|$(HAVE_ERROR_AT_LINE)|g' \ + -e 's|@''REPLACE_ERROR''@|$(REPLACE_ERROR)|g' \ + -e 's|@''REPLACE_ERROR_AT_LINE''@|$(REPLACE_ERROR_AT_LINE)|g' \ + -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ + $(srcdir)/error.in.h > $@-t + $(AM_V_at)mv $@-t $@ +else +error.h: $(top_builddir)/config.status + rm -f $@ +endif +MOSTLYCLEANFILES += error.h error.h-t + +EXTRA_DIST += error.in.h + +## end gnulib module error-h ## begin gnulib module exclude @@ -456,10 +484,9 @@ EXTRA_DIST += exitfail.h ## begin gnulib module fcntl - -EXTRA_DIST += fcntl.c - -EXTRA_libdiffutils_a_SOURCES += fcntl.c +if GL_COND_OBJ_FCNTL +libdiffutils_a_SOURCES += fcntl.c +endif ## end gnulib module fcntl @@ -470,9 +497,8 @@ BUILT_SOURCES += fcntl.h # We need the following in order to create when the system # doesn't have one that works with the given compiler. fcntl.h: fcntl.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ @@ -493,9 +519,8 @@ fcntl.h: fcntl.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) -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)/fcntl.in.h; \ - } > $@-t && \ - mv $@-t $@ + $(srcdir)/fcntl.in.h > $@-t + $(AM_V_at)mv $@-t $@ MOSTLYCLEANFILES += fcntl.h fcntl.h-t EXTRA_DIST += fcntl.in.h @@ -546,37 +571,6 @@ EXTRA_DIST += flexmember.h ## end gnulib module flexmember -## begin gnulib module float - -BUILT_SOURCES += $(FLOAT_H) - -# We need the following in order to create when the system -# doesn't have one that works with the given compiler. -if GL_GENERATE_FLOAT_H -float.h: float.in.h $(top_builddir)/config.status - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ - sed -e 's|@''GUARD_PREFIX''@|GL|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_FLOAT_H''@|$(NEXT_FLOAT_H)|g' \ - -e 's|@''REPLACE_ITOLD''@|$(REPLACE_ITOLD)|g' \ - < $(srcdir)/float.in.h; \ - } > $@-t && \ - mv $@-t $@ -else -float.h: $(top_builddir)/config.status - rm -f $@ -endif -MOSTLYCLEANFILES += float.h float.h-t - -EXTRA_DIST += float.c float.in.h itold.c - -EXTRA_libdiffutils_a_SOURCES += float.c itold.c - -## end gnulib module float - ## begin gnulib module fnmatch @@ -602,9 +596,8 @@ BUILT_SOURCES += $(FNMATCH_H) # We need the following in order to create . if GL_GENERATE_FNMATCH_H fnmatch.h: fnmatch.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's|@''HAVE_FNMATCH_H''@|$(HAVE_FNMATCH_H)|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ @@ -616,9 +609,8 @@ fnmatch.h: fnmatch.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL -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)/fnmatch.in.h; \ - } > $@-t && \ - mv $@-t $@ + $(srcdir)/fnmatch.in.h > $@-t + $(AM_V_at)mv $@-t $@ else fnmatch.h: $(top_builddir)/config.status rm -f $@ @@ -649,31 +641,51 @@ EXTRA_libdiffutils_a_SOURCES += fopen.c ## begin gnulib module free-posix - -EXTRA_DIST += free.c - -EXTRA_libdiffutils_a_SOURCES += free.c +if GL_COND_OBJ_FREE +libdiffutils_a_SOURCES += free.c +endif ## end gnulib module free-posix ## begin gnulib module freopen - -EXTRA_DIST += freopen.c - -EXTRA_libdiffutils_a_SOURCES += freopen.c +if GL_COND_OBJ_FREOPEN +libdiffutils_a_SOURCES += freopen.c +endif ## end gnulib module freopen ## begin gnulib module fstat +if GL_COND_OBJ_FSTAT +libdiffutils_a_SOURCES += fstat.c +endif -EXTRA_DIST += fstat.c stat-w32.c stat-w32.h +EXTRA_DIST += stat-w32.c stat-w32.h -EXTRA_libdiffutils_a_SOURCES += fstat.c stat-w32.c +EXTRA_libdiffutils_a_SOURCES += stat-w32.c ## end gnulib module fstat +## begin gnulib module gen-header + +# In 'sed', replace the pattern space with a "DO NOT EDIT" comment. +SED_HEADER_NOEDIT = s,.*,/* DO NOT EDIT! GENERATED AUTOMATICALLY! */, + +# '$(SED_HEADER_STDOUT) -e "..."' runs 'sed' but first outputs "DO NOT EDIT". +SED_HEADER_STDOUT = sed -e 1h -e '1$(SED_HEADER_NOEDIT)' -e 1G + +# '$(SED_HEADER_TO_AT_t) FILE' copies FILE to $@-t, prepending a leading +# "DO_NOT_EDIT". Although this could be done more simply via: +# SED_HEADER_TO_AT_t = $(SED_HEADER_STDOUT) > $@-t +# the -n and 'w' avoid a fork+exec, at least when GNU Make is used. +SED_HEADER_TO_AT_t = $(SED_HEADER_STDOUT) -n -e 'w $@-t' + +# Use $(gl_V_at) instead of $(AM_V_GEN) or $(AM_V_at) on a line that +gl_V_at = $(AM_V_GEN) + +## end gnulib module gen-header + ## begin gnulib module gendocs @@ -683,10 +695,9 @@ EXTRA_DIST += $(top_srcdir)/build-aux/gendocs.sh ## begin gnulib module getdtablesize - -EXTRA_DIST += getdtablesize.c - -EXTRA_libdiffutils_a_SOURCES += getdtablesize.c +if GL_COND_OBJ_GETDTABLESIZE +libdiffutils_a_SOURCES += getdtablesize.c +endif ## end gnulib module getdtablesize @@ -696,57 +707,67 @@ BUILT_SOURCES += $(GETOPT_H) $(GETOPT_CDEFS_H) # We need the following in order to create when the system # doesn't have one that works with the given compiler. +if GL_GENERATE_GETOPT_H getopt.h: getopt.in.h $(top_builddir)/config.status $(ARG_NONNULL_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's|@''HAVE_GETOPT_H''@|$(HAVE_GETOPT_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_GETOPT_H''@|$(NEXT_GETOPT_H)|g' \ -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ - < $(srcdir)/getopt.in.h; \ - } > $@-t && \ - mv -f $@-t $@ + $(srcdir)/getopt.in.h > $@-t + $(AM_V_at)mv $@-t $@ +else +getopt.h: $(top_builddir)/config.status + rm -f $@ +endif +if GL_GENERATE_GETOPT_CDEFS_H getopt-cdefs.h: getopt-cdefs.in.h $(top_builddir)/config.status - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''HAVE_SYS_CDEFS_H''@|$(HAVE_SYS_CDEFS_H)|g' \ - < $(srcdir)/getopt-cdefs.in.h; \ - } > $@-t && \ - mv -f $@-t $@ + $(AM_V_GEN)$(SED_HEADER_STDOUT) \ + -e 's|@''HAVE_SYS_CDEFS_H''@|$(HAVE_SYS_CDEFS_H)|g' \ + $(srcdir)/getopt-cdefs.in.h > $@-t + $(AM_V_at)mv $@-t $@ +else +getopt-cdefs.h: $(top_builddir)/config.status + rm -f $@ +endif MOSTLYCLEANFILES += getopt.h getopt.h-t getopt-cdefs.h getopt-cdefs.h-t -EXTRA_DIST += getopt-cdefs.in.h getopt-core.h getopt-ext.h getopt-pfx-core.h getopt-pfx-ext.h getopt.c getopt.in.h getopt1.c getopt_int.h +if GL_COND_OBJ_GETOPT +libdiffutils_a_SOURCES += getopt.c getopt1.c +endif -EXTRA_libdiffutils_a_SOURCES += getopt.c getopt1.c +EXTRA_DIST += getopt-cdefs.in.h getopt-core.h getopt-ext.h getopt-pfx-core.h getopt-pfx-ext.h getopt.in.h getopt_int.h ## end gnulib module getopt-posix ## begin gnulib module getpagesize - -EXTRA_DIST += getpagesize.c - -EXTRA_libdiffutils_a_SOURCES += getpagesize.c +if GL_COND_OBJ_GETPAGESIZE +libdiffutils_a_SOURCES += getpagesize.c +endif ## end gnulib module getpagesize ## begin gnulib module getprogname -libdiffutils_a_SOURCES += getprogname.h getprogname.c +if GL_COND_OBJ_GETPROGNAME +libdiffutils_a_SOURCES += getprogname.c +endif + +EXTRA_DIST += getprogname.h ## end gnulib module getprogname ## begin gnulib module getrandom - -EXTRA_DIST += getrandom.c - -EXTRA_libdiffutils_a_SOURCES += getrandom.c +if GL_COND_OBJ_GETRANDOM +libdiffutils_a_SOURCES += getrandom.c +endif ## end gnulib module getrandom @@ -764,10 +785,9 @@ libdiffutils_a_SOURCES += gettime.c ## begin gnulib module gettimeofday - -EXTRA_DIST += gettimeofday.c - -EXTRA_libdiffutils_a_SOURCES += gettimeofday.c +if GL_COND_OBJ_GETTIMEOFDAY +libdiffutils_a_SOURCES += gettimeofday.c +endif ## end gnulib module gettimeofday @@ -785,6 +805,39 @@ EXTRA_DIST += $(top_srcdir)/build-aux/gitlog-to-changelog ## end gnulib module gitlog-to-changelog +## begin gnulib module glibc-internal/dynarray + +BUILT_SOURCES += malloc/dynarray.gl.h malloc/dynarray-skeleton.gl.h + +malloc/dynarray.gl.h: malloc/dynarray.h + $(AM_V_GEN)$(MKDIR_P) '%reldir%/malloc' + $(AM_V_at)$(SED_HEADER_STDOUT) \ + -e '/libc_hidden_proto/d' \ + $(srcdir)/malloc/dynarray.h > $@-t + $(AM_V_at)mv $@-t $@ +MOSTLYCLEANFILES += malloc/dynarray.gl.h malloc/dynarray.gl.h-t + +malloc/dynarray-skeleton.gl.h: malloc/dynarray-skeleton.c + $(AM_V_GEN)$(MKDIR_P) '%reldir%/malloc' + $(AM_V_at)$(SED_HEADER_STDOUT) \ + -e 's|||g' \ + -e 's|__attribute_maybe_unused__|_GL_ATTRIBUTE_MAYBE_UNUSED|g' \ + -e 's|__attribute_nonnull__|_GL_ATTRIBUTE_NONNULL|g' \ + -e 's|__attribute_warn_unused_result__|_GL_ATTRIBUTE_NODISCARD|g' \ + -e 's|__glibc_likely|_GL_LIKELY|g' \ + -e 's|__glibc_unlikely|_GL_UNLIKELY|g' \ + $(srcdir)/malloc/dynarray-skeleton.c > $@-t + $(AM_V_at)mv $@-t $@ +MOSTLYCLEANFILES += malloc/dynarray-skeleton.gl.h malloc/dynarray-skeleton.gl.h-t + +libdiffutils_a_SOURCES += malloc/dynarray_at_failure.c malloc/dynarray_emplace_enlarge.c malloc/dynarray_finalize.c malloc/dynarray_resize.c malloc/dynarray_resize_clear.c + +EXTRA_DIST += dynarray.h malloc/dynarray-skeleton.c malloc/dynarray.h + +EXTRA_libdiffutils_a_SOURCES += malloc/dynarray-skeleton.c + +## end gnulib module glibc-internal/dynarray + ## begin gnulib module gnu-make ##Sample usage of gnu-make module: @@ -869,9 +922,8 @@ BUILT_SOURCES += $(ICONV_H) # doesn't have one that works with the given compiler. if GL_GENERATE_ICONV_H iconv.h: iconv.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ @@ -884,9 +936,8 @@ iconv.h: iconv.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) -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)/iconv.in.h; \ - } > $@-t && \ - mv $@-t $@ + $(srcdir)/iconv.in.h > $@-t + $(AM_V_at)mv $@-t $@ else iconv.h: $(top_builddir)/config.status rm -f $@ @@ -899,6 +950,13 @@ EXTRA_DIST += iconv.in.h ## begin gnulib module iconv_open +if GL_COND_OBJ_ICONV_OPEN +libdiffutils_a_SOURCES += iconv_open.c +endif +if GL_COND_OBJ_ICONV +libdiffutils_a_SOURCES += iconv.c iconv_close.c +endif + $(srcdir)/iconv_open-aix.h: $(srcdir)/iconv_open-aix.gperf $(V_GPERF)$(GPERF) -m 10 $(srcdir)/iconv_open-aix.gperf > $(srcdir)/iconv_open-aix.h-t && \ mv $(srcdir)/iconv_open-aix.h-t $(srcdir)/iconv_open-aix.h @@ -922,9 +980,7 @@ MOSTLYCLEANFILES += iconv_open-aix.h-t iconv_open-hpux.h-t iconv_open-irix.h MAINTAINERCLEANFILES += iconv_open-aix.h iconv_open-hpux.h iconv_open-irix.h iconv_open-osf.h iconv_open-solaris.h iconv_open-zos.h EXTRA_DIST += iconv_open-aix.h iconv_open-hpux.h iconv_open-irix.h iconv_open-osf.h iconv_open-solaris.h iconv_open-zos.h -EXTRA_DIST += iconv.c iconv_close.c iconv_open-aix.gperf iconv_open-hpux.gperf iconv_open-irix.gperf iconv_open-osf.gperf iconv_open-solaris.gperf iconv_open-zos.gperf iconv_open.c - -EXTRA_libdiffutils_a_SOURCES += iconv.c iconv_close.c iconv_open.c +EXTRA_DIST += iconv_open-aix.gperf iconv_open-hpux.gperf iconv_open-irix.gperf iconv_open-osf.gperf iconv_open-solaris.gperf iconv_open-zos.gperf ## end gnulib module iconv_open @@ -944,7 +1000,7 @@ EXTRA_DIST += ignore-value.h ## begin gnulib module intprops -EXTRA_DIST += intprops.h +EXTRA_DIST += intprops-internal.h intprops.h ## end gnulib module intprops @@ -965,9 +1021,8 @@ BUILT_SOURCES += inttypes.h # We need the following in order to create when the system # doesn't have one that works with the given compiler. inttypes.h: inttypes.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H) $(ARG_NONNULL_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's/@''HAVE_INTTYPES_H''@/$(HAVE_INTTYPES_H)/g' \ + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's/@''HAVE_INTTYPES_H''@/$(HAVE_INTTYPES_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' \ @@ -983,6 +1038,8 @@ inttypes.h: inttypes.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_U -e 's/@''HAVE_DECL_STRTOIMAX''@/$(HAVE_DECL_STRTOIMAX)/g' \ -e 's/@''HAVE_DECL_STRTOUMAX''@/$(HAVE_DECL_STRTOUMAX)/g' \ -e 's/@''HAVE_IMAXDIV_T''@/$(HAVE_IMAXDIV_T)/g' \ + -e 's/@''REPLACE_IMAXABS''@/$(REPLACE_IMAXABS)/g' \ + -e 's/@''REPLACE_IMAXDIV''@/$(REPLACE_IMAXDIV)/g' \ -e 's/@''REPLACE_STRTOIMAX''@/$(REPLACE_STRTOIMAX)/g' \ -e 's/@''REPLACE_STRTOUMAX''@/$(REPLACE_STRTOUMAX)/g' \ -e 's/@''INT32_MAX_LT_INTMAX_MAX''@/$(INT32_MAX_LT_INTMAX_MAX)/g' \ @@ -992,9 +1049,8 @@ inttypes.h: inttypes.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_U -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)/inttypes.in.h; \ - } > $@-t && \ - mv $@-t $@ + $(srcdir)/inttypes.in.h > $@-t + $(AM_V_at)mv $@-t $@ MOSTLYCLEANFILES += inttypes.h inttypes.h-t EXTRA_DIST += inttypes.in.h @@ -1003,37 +1059,33 @@ EXTRA_DIST += inttypes.in.h ## begin gnulib module isblank - -EXTRA_DIST += isblank.c - -EXTRA_libdiffutils_a_SOURCES += isblank.c +if GL_COND_OBJ_ISBLANK +libdiffutils_a_SOURCES += isblank.c +endif ## end gnulib module isblank ## begin gnulib module iswblank - -EXTRA_DIST += iswblank.c - -EXTRA_libdiffutils_a_SOURCES += iswblank.c +if GL_COND_OBJ_ISWBLANK +libdiffutils_a_SOURCES += iswblank.c +endif ## end gnulib module iswblank ## begin gnulib module iswdigit - -EXTRA_DIST += iswdigit.c - -EXTRA_libdiffutils_a_SOURCES += iswdigit.c +if GL_COND_OBJ_ISWDIGIT +libdiffutils_a_SOURCES += iswdigit.c +endif ## end gnulib module iswdigit ## begin gnulib module iswxdigit - -EXTRA_DIST += iswxdigit.c - -EXTRA_libdiffutils_a_SOURCES += iswxdigit.c +if GL_COND_OBJ_ISWXDIGIT +libdiffutils_a_SOURCES += iswxdigit.c +endif ## end gnulib module iswxdigit @@ -1044,9 +1096,8 @@ BUILT_SOURCES += langinfo.h # We need the following in order to create an empty placeholder for # when the system doesn't have one. langinfo.h: langinfo.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's|@''HAVE_LANGINFO_H''@|$(HAVE_LANGINFO_H)|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ @@ -1062,9 +1113,8 @@ langinfo.h: langinfo.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_U -e 's|@''REPLACE_NL_LANGINFO''@|$(REPLACE_NL_LANGINFO)|g' \ -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ - < $(srcdir)/langinfo.in.h; \ - } > $@-t && \ - mv $@-t $@ + $(srcdir)/langinfo.in.h > $@-t + $(AM_V_at)mv $@-t $@ MOSTLYCLEANFILES += langinfo.h langinfo.h-t EXTRA_DIST += langinfo.in.h @@ -1086,16 +1136,14 @@ BUILT_SOURCES += $(LIMITS_H) # doesn't have one that is compatible with GNU. if GL_GENERATE_LIMITS_H limits.h: limits.in.h $(top_builddir)/config.status - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|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_LIMITS_H''@|$(NEXT_LIMITS_H)|g' \ - < $(srcdir)/limits.in.h; \ - } > $@-t && \ - mv $@-t $@ + $(srcdir)/limits.in.h > $@-t + $(AM_V_at)mv $@-t $@ else limits.h: $(top_builddir)/config.status rm -f $@ @@ -1121,9 +1169,8 @@ BUILT_SOURCES += locale.h # We need the following in order to create when the system # doesn't have one that provides all definitions. locale.h: locale.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ @@ -1147,9 +1194,8 @@ locale.h: locale.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H -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)/locale.in.h; \ - } > $@-t && \ - mv $@-t $@ + $(srcdir)/locale.in.h > $@-t + $(AM_V_at)mv $@-t $@ MOSTLYCLEANFILES += locale.h locale.h-t EXTRA_DIST += locale.in.h @@ -1158,10 +1204,9 @@ EXTRA_DIST += locale.in.h ## begin gnulib module localeconv - -EXTRA_DIST += localeconv.c - -EXTRA_libdiffutils_a_SOURCES += localeconv.c +if GL_COND_OBJ_LOCALECONV +libdiffutils_a_SOURCES += localeconv.c +endif ## end gnulib module localeconv @@ -1173,10 +1218,9 @@ libdiffutils_a_SOURCES += glthread/lock.h glthread/lock.c ## begin gnulib module lstat - -EXTRA_DIST += lstat.c - -EXTRA_libdiffutils_a_SOURCES += lstat.c +if GL_COND_OBJ_LSTAT +libdiffutils_a_SOURCES += lstat.c +endif ## end gnulib module lstat @@ -1228,10 +1272,13 @@ libdiffutils_a_SOURCES += mbiter.h mbiter.c ## begin gnulib module mbrtowc +if GL_COND_OBJ_MBRTOWC +libdiffutils_a_SOURCES += mbrtowc.c +endif -EXTRA_DIST += lc-charset-dispatch.c lc-charset-dispatch.h mbrtowc-impl-utf8.h mbrtowc-impl.h mbrtowc.c mbtowc-lock.c mbtowc-lock.h windows-initguard.h +EXTRA_DIST += lc-charset-dispatch.c lc-charset-dispatch.h mbrtowc-impl-utf8.h mbrtowc-impl.h mbtowc-lock.c mbtowc-lock.h windows-initguard.h -EXTRA_libdiffutils_a_SOURCES += lc-charset-dispatch.c mbrtowc.c mbtowc-lock.c +EXTRA_libdiffutils_a_SOURCES += lc-charset-dispatch.c mbtowc-lock.c ## end gnulib module mbrtowc @@ -1243,10 +1290,9 @@ libdiffutils_a_SOURCES += mbscasecmp.c ## begin gnulib module mbsinit - -EXTRA_DIST += mbsinit.c - -EXTRA_libdiffutils_a_SOURCES += mbsinit.c +if GL_COND_OBJ_MBSINIT +libdiffutils_a_SOURCES += mbsinit.c +endif ## end gnulib module mbsinit @@ -1258,10 +1304,13 @@ libdiffutils_a_SOURCES += mbslen.c ## begin gnulib module mbsrtowcs +if GL_COND_OBJ_MBSRTOWCS +libdiffutils_a_SOURCES += mbsrtowcs.c +endif -EXTRA_DIST += mbsrtowcs-impl.h mbsrtowcs-state.c mbsrtowcs.c +EXTRA_DIST += mbsrtowcs-impl.h mbsrtowcs-state.c -EXTRA_libdiffutils_a_SOURCES += mbsrtowcs-state.c mbsrtowcs.c +EXTRA_libdiffutils_a_SOURCES += mbsrtowcs-state.c ## end gnulib module mbsrtowcs @@ -1275,10 +1324,11 @@ EXTRA_DIST += str-kmp.h ## begin gnulib module mbtowc +if GL_COND_OBJ_MBTOWC +libdiffutils_a_SOURCES += mbtowc.c +endif -EXTRA_DIST += mbtowc-impl.h mbtowc.c - -EXTRA_libdiffutils_a_SOURCES += mbtowc.c +EXTRA_DIST += mbtowc-impl.h ## end gnulib module mbtowc @@ -1290,19 +1340,19 @@ libdiffutils_a_SOURCES += mbuiter.h mbuiter.c ## begin gnulib module memchr +if GL_COND_OBJ_MEMCHR +libdiffutils_a_SOURCES += memchr.c +endif -EXTRA_DIST += memchr.c memchr.valgrind - -EXTRA_libdiffutils_a_SOURCES += memchr.c +EXTRA_DIST += memchr.valgrind ## end gnulib module memchr ## begin gnulib module mempcpy - -EXTRA_DIST += mempcpy.c - -EXTRA_libdiffutils_a_SOURCES += mempcpy.c +if GL_COND_OBJ_MEMPCPY +libdiffutils_a_SOURCES += mempcpy.c +endif ## end gnulib module mempcpy @@ -1314,19 +1364,17 @@ libdiffutils_a_SOURCES += minmax.h ## begin gnulib module mkdir - -EXTRA_DIST += mkdir.c - -EXTRA_libdiffutils_a_SOURCES += mkdir.c +if GL_COND_OBJ_MKDIR +libdiffutils_a_SOURCES += mkdir.c +endif ## end gnulib module mkdir ## begin gnulib module mkstemp - -EXTRA_DIST += mkstemp.c - -EXTRA_libdiffutils_a_SOURCES += mkstemp.c +if GL_COND_OBJ_MKSTEMP +libdiffutils_a_SOURCES += mkstemp.c +endif ## end gnulib module mkstemp @@ -1350,28 +1398,34 @@ EXTRA_libdiffutils_a_SOURCES += mktime.c ## begin gnulib module msvc-inval +if GL_COND_OBJ_MSVC_INVAL +libdiffutils_a_SOURCES += msvc-inval.c +endif -EXTRA_DIST += msvc-inval.c msvc-inval.h - -EXTRA_libdiffutils_a_SOURCES += msvc-inval.c +EXTRA_DIST += msvc-inval.h ## end gnulib module msvc-inval ## begin gnulib module msvc-nothrow +if GL_COND_OBJ_MSVC_NOTHROW +libdiffutils_a_SOURCES += msvc-nothrow.c +endif -EXTRA_DIST += msvc-nothrow.c msvc-nothrow.h - -EXTRA_libdiffutils_a_SOURCES += msvc-nothrow.c +EXTRA_DIST += msvc-nothrow.h ## end gnulib module msvc-nothrow ## begin gnulib module nl_langinfo +if GL_COND_OBJ_NL_LANGINFO +libdiffutils_a_SOURCES += nl_langinfo.c +endif +if GL_COND_OBJ_NL_LANGINFO_LOCK +libdiffutils_a_SOURCES += nl_langinfo-lock.c +endif -EXTRA_DIST += nl_langinfo-lock.c nl_langinfo.c windows-initguard.h - -EXTRA_libdiffutils_a_SOURCES += nl_langinfo-lock.c nl_langinfo.c +EXTRA_DIST += windows-initguard.h ## end gnulib module nl_langinfo @@ -1385,10 +1439,9 @@ EXTRA_DIST += strftime.h ## begin gnulib module open - -EXTRA_DIST += open.c - -EXTRA_libdiffutils_a_SOURCES += open.c +if GL_COND_OBJ_OPEN +libdiffutils_a_SOURCES += open.c +endif ## end gnulib module open @@ -1428,28 +1481,27 @@ EXTRA_DIST += quote.h quotearg.h ## begin gnulib module raise - -EXTRA_DIST += raise.c - -EXTRA_libdiffutils_a_SOURCES += raise.c +if GL_COND_OBJ_RAISE +libdiffutils_a_SOURCES += raise.c +endif ## end gnulib module raise ## begin gnulib module rawmemchr +if GL_COND_OBJ_RAWMEMCHR +libdiffutils_a_SOURCES += rawmemchr.c +endif -EXTRA_DIST += rawmemchr.c rawmemchr.valgrind - -EXTRA_libdiffutils_a_SOURCES += rawmemchr.c +EXTRA_DIST += rawmemchr.valgrind ## end gnulib module rawmemchr ## begin gnulib module readlink - -EXTRA_DIST += readlink.c - -EXTRA_libdiffutils_a_SOURCES += readlink.c +if GL_COND_OBJ_READLINK +libdiffutils_a_SOURCES += readlink.c +endif ## end gnulib module readlink @@ -1473,38 +1525,40 @@ EXTRA_libdiffutils_a_SOURCES += realloc.c ## begin gnulib module reallocarray - -EXTRA_DIST += reallocarray.c - -EXTRA_libdiffutils_a_SOURCES += reallocarray.c +if GL_COND_OBJ_REALLOCARRAY +libdiffutils_a_SOURCES += reallocarray.c +endif ## end gnulib module reallocarray ## begin gnulib module regex +if GL_COND_OBJ_REGEX +libdiffutils_a_SOURCES += regex.c +endif -EXTRA_DIST += regcomp.c regex.c regex.h regex_internal.c regex_internal.h regexec.c +EXTRA_DIST += regcomp.c regex.h regex_internal.c regex_internal.h regexec.c -EXTRA_libdiffutils_a_SOURCES += regcomp.c regex.c regex_internal.c regexec.c +EXTRA_libdiffutils_a_SOURCES += regcomp.c regex_internal.c regexec.c ## end gnulib module regex ## begin gnulib module setenv - -EXTRA_DIST += setenv.c - -EXTRA_libdiffutils_a_SOURCES += setenv.c +if GL_COND_OBJ_SETENV +libdiffutils_a_SOURCES += setenv.c +endif ## end gnulib module setenv ## begin gnulib module setlocale-null libdiffutils_a_SOURCES += setlocale_null.c +if GL_COND_OBJ_SETLOCALE_LOCK +libdiffutils_a_SOURCES += setlocale-lock.c +endif -EXTRA_DIST += setlocale-lock.c setlocale_null.h windows-initguard.h - -EXTRA_libdiffutils_a_SOURCES += setlocale-lock.c +EXTRA_DIST += setlocale_null.h windows-initguard.h ## end gnulib module setlocale-null @@ -1521,9 +1575,8 @@ BUILT_SOURCES += signal.h # We need the following in order to create when the system # doesn't have a complete one. signal.h: signal.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ @@ -1547,26 +1600,30 @@ signal.h: signal.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H -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)/signal.in.h; \ - } > $@-t && \ - mv $@-t $@ + $(srcdir)/signal.in.h > $@-t + $(AM_V_at)mv $@-t $@ MOSTLYCLEANFILES += signal.h signal.h-t EXTRA_DIST += signal.in.h ## end gnulib module signal-h +## begin gnulib module sigprocmask + +if GL_COND_OBJ_SIGPROCMASK +libdiffutils_a_SOURCES += sigprocmask.c +endif + +## end gnulib module sigprocmask + ## begin gnulib module sigsegv BUILT_SOURCES += $(SIGSEGV_H) if GL_GENERATE_SIGSEGV_H sigsegv.h: sigsegv.in.h $(top_builddir)/config.status - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - cat $(srcdir)/sigsegv.in.h; \ - } > $@-t && \ - mv $@-t $@ + $(gl_V_at)$(SED_HEADER_TO_AT_t) $(srcdir)/sigsegv.in.h + $(AM_V_at)mv $@-t $@ else sigsegv.h: $(top_builddir)/config.status rm -f $@ @@ -1581,12 +1638,6 @@ EXTRA_DIST += sigsegv.in.h stackvma.h ## end gnulib module sigsegv -## begin gnulib module size_max - -libdiffutils_a_SOURCES += size_max.h - -## end gnulib module size_max - ## begin gnulib module snippet/_Noreturn # Because this Makefile snippet defines a variable used by other @@ -1637,10 +1688,13 @@ EXTRA_DIST += warn-on-use.h ## begin gnulib module stat +if GL_COND_OBJ_STAT +libdiffutils_a_SOURCES += stat.c +endif -EXTRA_DIST += stat-w32.c stat-w32.h stat.c +EXTRA_DIST += stat-w32.c stat-w32.h -EXTRA_libdiffutils_a_SOURCES += stat-w32.c stat.c +EXTRA_libdiffutils_a_SOURCES += stat-w32.c ## end gnulib module stat @@ -1659,29 +1713,6 @@ EXTRA_DIST += stat-time.h ## end gnulib module stat-time -## begin gnulib module stdalign - -BUILT_SOURCES += $(STDALIGN_H) - -# We need the following in order to create when the system -# doesn't have one that works. -if GL_GENERATE_STDALIGN_H -stdalign.h: stdalign.in.h $(top_builddir)/config.status - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - cat $(srcdir)/stdalign.in.h; \ - } > $@-t && \ - mv $@-t $@ -else -stdalign.h: $(top_builddir)/config.status - rm -f $@ -endif -MOSTLYCLEANFILES += stdalign.h stdalign.h-t - -EXTRA_DIST += stdalign.in.h - -## end gnulib module stdalign - ## begin gnulib module stdarg BUILT_SOURCES += $(STDARG_H) @@ -1690,16 +1721,14 @@ BUILT_SOURCES += $(STDARG_H) # doesn't have one that works with the given compiler. if GL_GENERATE_STDARG_H stdarg.h: stdarg.in.h $(top_builddir)/config.status - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|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_STDARG_H''@|$(NEXT_STDARG_H)|g' \ - < $(srcdir)/stdarg.in.h; \ - } > $@-t && \ - mv $@-t $@ + $(srcdir)/stdarg.in.h > $@-t + $(AM_V_at)mv $@-t $@ else stdarg.h: $(top_builddir)/config.status rm -f $@ @@ -1710,28 +1739,26 @@ EXTRA_DIST += stdarg.in.h ## end gnulib module stdarg -## begin gnulib module stdbool +## begin gnulib module stdckdint -BUILT_SOURCES += $(STDBOOL_H) +BUILT_SOURCES += $(STDCKDINT_H) -# We need the following in order to create when the system -# doesn't have one that works. -if GL_GENERATE_STDBOOL_H -stdbool.h: stdbool.in.h $(top_builddir)/config.status - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's/@''HAVE__BOOL''@/$(HAVE__BOOL)/g' < $(srcdir)/stdbool.in.h; \ - } > $@-t && \ - mv $@-t $@ +# We need the following in order to create when the system +# doesn't have one that works with the given compiler. +if GL_GENERATE_STDCKDINT_H +stdckdint.h: stdckdint.in.h $(top_builddir)/config.status + $(gl_V_at)$(SED_HEADER_STDOUT) \ + $(srcdir)/stdckdint.in.h > $@-t + $(AM_V_at)mv $@-t $@ else -stdbool.h: $(top_builddir)/config.status +stdckdint.h: $(top_builddir)/config.status rm -f $@ endif -MOSTLYCLEANFILES += stdbool.h stdbool.h-t +MOSTLYCLEANFILES += stdckdint.h stdckdint.h-t -EXTRA_DIST += stdbool.in.h +EXTRA_DIST += intprops-internal.h stdckdint.in.h -## end gnulib module stdbool +## end gnulib module stdckdint ## begin gnulib module stddef @@ -1741,9 +1768,8 @@ BUILT_SOURCES += $(STDDEF_H) # doesn't have one that works with the given compiler. if GL_GENERATE_STDDEF_H stddef.h: stddef.in.h $(top_builddir)/config.status - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ @@ -1751,9 +1777,8 @@ stddef.h: stddef.in.h $(top_builddir)/config.status -e 's|@''HAVE_MAX_ALIGN_T''@|$(HAVE_MAX_ALIGN_T)|g' \ -e 's|@''HAVE_WCHAR_T''@|$(HAVE_WCHAR_T)|g' \ -e 's|@''REPLACE_NULL''@|$(REPLACE_NULL)|g' \ - < $(srcdir)/stddef.in.h; \ - } > $@-t && \ - mv $@-t $@ + $(srcdir)/stddef.in.h > $@-t + $(AM_V_at)mv $@-t $@ else stddef.h: $(top_builddir)/config.status rm -f $@ @@ -1772,9 +1797,8 @@ BUILT_SOURCES += $(STDINT_H) # doesn't have one that works with the given compiler. if GL_GENERATE_STDINT_H stdint.h: stdint.in.h $(top_builddir)/config.status - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's/@''HAVE_STDINT_H''@/$(HAVE_STDINT_H)/g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ @@ -1801,9 +1825,8 @@ stdint.h: stdint.in.h $(top_builddir)/config.status -e 's/@''HAVE_SIGNED_WINT_T''@/$(HAVE_SIGNED_WINT_T)/g' \ -e 's/@''WINT_T_SUFFIX''@/$(WINT_T_SUFFIX)/g' \ -e 's/@''GNULIBHEADERS_OVERRIDE_WINT_T''@/$(GNULIBHEADERS_OVERRIDE_WINT_T)/g' \ - < $(srcdir)/stdint.in.h; \ - } > $@-t && \ - mv $@-t $@ + $(srcdir)/stdint.in.h > $@-t + $(AM_V_at)mv $@-t $@ else stdint.h: $(top_builddir)/config.status rm -f $@ @@ -1821,9 +1844,8 @@ BUILT_SOURCES += stdio.h # We need the following in order to create when the system # doesn't have one that works with the given compiler. stdio.h: stdio.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ @@ -1835,6 +1857,7 @@ stdio.h: stdio.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) -e 's/@''GNULIB_FGETC''@/$(GL_GNULIB_FGETC)/g' \ -e 's/@''GNULIB_FGETS''@/$(GL_GNULIB_FGETS)/g' \ -e 's/@''GNULIB_FOPEN''@/$(GL_GNULIB_FOPEN)/g' \ + -e 's/@''GNULIB_FOPEN_GNU''@/$(GL_GNULIB_FOPEN_GNU)/g' \ -e 's/@''GNULIB_FPRINTF''@/$(GL_GNULIB_FPRINTF)/g' \ -e 's/@''GNULIB_FPRINTF_POSIX''@/$(GL_GNULIB_FPRINTF_POSIX)/g' \ -e 's/@''GNULIB_FPURGE''@/$(GL_GNULIB_FPURGE)/g' \ @@ -1894,7 +1917,9 @@ stdio.h: stdio.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) -e 's|@''HAVE_DECL_FTELLO''@|$(HAVE_DECL_FTELLO)|g' \ -e 's|@''HAVE_DECL_GETDELIM''@|$(HAVE_DECL_GETDELIM)|g' \ -e 's|@''HAVE_DECL_GETLINE''@|$(HAVE_DECL_GETLINE)|g' \ + -e 's|@''HAVE_DECL_GETW''@|$(HAVE_DECL_GETW)|g' \ -e 's|@''HAVE_DECL_OBSTACK_PRINTF''@|$(HAVE_DECL_OBSTACK_PRINTF)|g' \ + -e 's|@''HAVE_DECL_PUTW''@|$(HAVE_DECL_PUTW)|g' \ -e 's|@''HAVE_DECL_SNPRINTF''@|$(HAVE_DECL_SNPRINTF)|g' \ -e 's|@''HAVE_DECL_VSNPRINTF''@|$(HAVE_DECL_VSNPRINTF)|g' \ -e 's|@''HAVE_DPRINTF''@|$(HAVE_DPRINTF)|g' \ @@ -1910,6 +1935,7 @@ stdio.h: stdio.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) -e 's|@''REPLACE_FDOPEN''@|$(REPLACE_FDOPEN)|g' \ -e 's|@''REPLACE_FFLUSH''@|$(REPLACE_FFLUSH)|g' \ -e 's|@''REPLACE_FOPEN''@|$(REPLACE_FOPEN)|g' \ + -e 's|@''REPLACE_FOPEN_FOR_FOPEN_GNU''@|$(REPLACE_FOPEN_FOR_FOPEN_GNU)|g' \ -e 's|@''REPLACE_FPRINTF''@|$(REPLACE_FPRINTF)|g' \ -e 's|@''REPLACE_FPURGE''@|$(REPLACE_FPURGE)|g' \ -e 's|@''REPLACE_FREOPEN''@|$(REPLACE_FREOPEN)|g' \ @@ -1940,11 +1966,18 @@ stdio.h: stdio.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) -e 's|@''ASM_SYMBOL_PREFIX''@|$(ASM_SYMBOL_PREFIX)|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)'; \ - } > $@-t && \ - mv $@-t $@ + -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ + > $@-t + $(AM_V_at)mv $@-t $@ MOSTLYCLEANFILES += stdio.h stdio.h-t +if GL_COND_OBJ_STDIO_READ +libdiffutils_a_SOURCES += stdio-read.c +endif +if GL_COND_OBJ_STDIO_WRITE +libdiffutils_a_SOURCES += stdio-write.c +endif + EXTRA_DIST += stdio.in.h ## end gnulib module stdio @@ -1957,9 +1990,8 @@ BUILT_SOURCES += stdlib.h # doesn't have one that works with the given compiler. stdlib.h: stdlib.in.h $(top_builddir)/config.status $(CXXDEFS_H) \ $(_NORETURN_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ @@ -1967,13 +1999,17 @@ stdlib.h: stdlib.in.h $(top_builddir)/config.status $(CXXDEFS_H) \ -e 's/@''GNULIB__EXIT''@/$(GL_GNULIB__EXIT)/g' \ -e 's/@''GNULIB_ALIGNED_ALLOC''@/$(GL_GNULIB_ALIGNED_ALLOC)/g' \ -e 's/@''GNULIB_ATOLL''@/$(GL_GNULIB_ATOLL)/g' \ + -e 's/@''GNULIB_CALLOC_GNU''@/$(GL_GNULIB_CALLOC_GNU)/g' \ -e 's/@''GNULIB_CALLOC_POSIX''@/$(GL_GNULIB_CALLOC_POSIX)/g' \ -e 's/@''GNULIB_CANONICALIZE_FILE_NAME''@/$(GL_GNULIB_CANONICALIZE_FILE_NAME)/g' \ -e 's/@''GNULIB_FREE_POSIX''@/$(GL_GNULIB_FREE_POSIX)/g' \ -e 's/@''GNULIB_GETLOADAVG''@/$(GL_GNULIB_GETLOADAVG)/g' \ + -e 's/@''GNULIB_GETPROGNAME''@/$(GL_GNULIB_GETPROGNAME)/g' \ -e 's/@''GNULIB_GETSUBOPT''@/$(GL_GNULIB_GETSUBOPT)/g' \ -e 's/@''GNULIB_GRANTPT''@/$(GL_GNULIB_GRANTPT)/g' \ + -e 's/@''GNULIB_MALLOC_GNU''@/$(GL_GNULIB_MALLOC_GNU)/g' \ -e 's/@''GNULIB_MALLOC_POSIX''@/$(GL_GNULIB_MALLOC_POSIX)/g' \ + -e 's/@''GNULIB_MBSTOWCS''@/$(GL_GNULIB_MBSTOWCS)/g' \ -e 's/@''GNULIB_MBTOWC''@/$(GL_GNULIB_MBTOWC)/g' \ -e 's/@''GNULIB_MKDTEMP''@/$(GL_GNULIB_MKDTEMP)/g' \ -e 's/@''GNULIB_MKOSTEMP''@/$(GL_GNULIB_MKOSTEMP)/g' \ @@ -1988,6 +2024,7 @@ stdlib.h: stdlib.in.h $(top_builddir)/config.status $(CXXDEFS_H) \ -e 's/@''GNULIB_QSORT_R''@/$(GL_GNULIB_QSORT_R)/g' \ -e 's/@''GNULIB_RANDOM''@/$(GL_GNULIB_RANDOM)/g' \ -e 's/@''GNULIB_RANDOM_R''@/$(GL_GNULIB_RANDOM_R)/g' \ + -e 's/@''GNULIB_REALLOC_GNU''@/$(GL_GNULIB_REALLOC_GNU)/g' \ -e 's/@''GNULIB_REALLOC_POSIX''@/$(GL_GNULIB_REALLOC_POSIX)/g' \ -e 's/@''GNULIB_REALLOCARRAY''@/$(GL_GNULIB_REALLOCARRAY)/g' \ -e 's/@''GNULIB_REALPATH''@/$(GL_GNULIB_REALPATH)/g' \ @@ -2018,6 +2055,8 @@ stdlib.h: stdlib.in.h $(top_builddir)/config.status $(CXXDEFS_H) \ -e 's|@''HAVE_DECL_FCVT''@|$(HAVE_DECL_FCVT)|g' \ -e 's|@''HAVE_DECL_GCVT''@|$(HAVE_DECL_GCVT)|g' \ -e 's|@''HAVE_DECL_GETLOADAVG''@|$(HAVE_DECL_GETLOADAVG)|g' \ + -e 's|@''HAVE_DECL_PROGRAM_INVOCATION_NAME''@|$(HAVE_DECL_PROGRAM_INVOCATION_NAME)|g' \ + -e 's|@''HAVE_GETPROGNAME''@|$(HAVE_GETPROGNAME)|g' \ -e 's|@''HAVE_GETSUBOPT''@|$(HAVE_GETSUBOPT)|g' \ -e 's|@''HAVE_GRANTPT''@|$(HAVE_GRANTPT)|g' \ -e 's|@''HAVE_INITSTATE''@|$(HAVE_INITSTATE)|g' \ @@ -2053,22 +2092,34 @@ stdlib.h: stdlib.in.h $(top_builddir)/config.status $(CXXDEFS_H) \ -e 's|@''HAVE_SYS_LOADAVG_H''@|$(HAVE_SYS_LOADAVG_H)|g' \ -e 's|@''HAVE_UNLOCKPT''@|$(HAVE_UNLOCKPT)|g' \ -e 's|@''HAVE_DECL_UNSETENV''@|$(HAVE_DECL_UNSETENV)|g' \ + -e 's|@''REPLACE__EXIT''@|$(REPLACE__EXIT)|g' \ -e 's|@''REPLACE_ALIGNED_ALLOC''@|$(REPLACE_ALIGNED_ALLOC)|g' \ - -e 's|@''REPLACE_CALLOC''@|$(REPLACE_CALLOC)|g' \ + -e 's|@''REPLACE_CALLOC_FOR_CALLOC_GNU''@|$(REPLACE_CALLOC_FOR_CALLOC_GNU)|g' \ + -e 's|@''REPLACE_CALLOC_FOR_CALLOC_POSIX''@|$(REPLACE_CALLOC_FOR_CALLOC_POSIX)|g' \ -e 's|@''REPLACE_CANONICALIZE_FILE_NAME''@|$(REPLACE_CANONICALIZE_FILE_NAME)|g' \ -e 's|@''REPLACE_FREE''@|$(REPLACE_FREE)|g' \ + -e 's|@''REPLACE_GETLOADAVG''@|$(REPLACE_GETLOADAVG)|g' \ + -e 's|@''REPLACE_GETPROGNAME''@|$(REPLACE_GETPROGNAME)|g' \ + -e 's|@''REPLACE_GETSUBOPT''@|$(REPLACE_GETSUBOPT)|g' \ -e 's|@''REPLACE_INITSTATE''@|$(REPLACE_INITSTATE)|g' \ - -e 's|@''REPLACE_MALLOC''@|$(REPLACE_MALLOC)|g' \ + -e 's|@''REPLACE_MALLOC_FOR_MALLOC_GNU''@|$(REPLACE_MALLOC_FOR_MALLOC_GNU)|g' \ + -e 's|@''REPLACE_MALLOC_FOR_MALLOC_POSIX''@|$(REPLACE_MALLOC_FOR_MALLOC_POSIX)|g' \ + -e 's|@''REPLACE_MB_CUR_MAX''@|$(REPLACE_MB_CUR_MAX)|g' \ + -e 's|@''REPLACE_MBSTOWCS''@|$(REPLACE_MBSTOWCS)|g' \ -e 's|@''REPLACE_MBTOWC''@|$(REPLACE_MBTOWC)|g' \ + -e 's|@''REPLACE_MKOSTEMP''@|$(REPLACE_MKOSTEMP)|g' \ + -e 's|@''REPLACE_MKOSTEMPS''@|$(REPLACE_MKOSTEMPS)|g' \ -e 's|@''REPLACE_MKSTEMP''@|$(REPLACE_MKSTEMP)|g' \ -e 's|@''REPLACE_POSIX_MEMALIGN''@|$(REPLACE_POSIX_MEMALIGN)|g' \ + -e 's|@''REPLACE_POSIX_OPENPT''@|$(REPLACE_POSIX_OPENPT)|g' \ -e 's|@''REPLACE_PTSNAME''@|$(REPLACE_PTSNAME)|g' \ -e 's|@''REPLACE_PTSNAME_R''@|$(REPLACE_PTSNAME_R)|g' \ -e 's|@''REPLACE_PUTENV''@|$(REPLACE_PUTENV)|g' \ -e 's|@''REPLACE_QSORT_R''@|$(REPLACE_QSORT_R)|g' \ -e 's|@''REPLACE_RANDOM''@|$(REPLACE_RANDOM)|g' \ -e 's|@''REPLACE_RANDOM_R''@|$(REPLACE_RANDOM_R)|g' \ - -e 's|@''REPLACE_REALLOC''@|$(REPLACE_REALLOC)|g' \ + -e 's|@''REPLACE_REALLOC_FOR_REALLOC_GNU''@|$(REPLACE_REALLOC_FOR_REALLOC_GNU)|g' \ + -e 's|@''REPLACE_REALLOC_FOR_REALLOC_POSIX''@|$(REPLACE_REALLOC_FOR_REALLOC_POSIX)|g' \ -e 's|@''REPLACE_REALLOCARRAY''@|$(REPLACE_REALLOCARRAY)|g' \ -e 's|@''REPLACE_REALPATH''@|$(REPLACE_REALPATH)|g' \ -e 's|@''REPLACE_SETENV''@|$(REPLACE_SETENV)|g' \ @@ -2084,9 +2135,9 @@ stdlib.h: stdlib.in.h $(top_builddir)/config.status $(CXXDEFS_H) \ -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ -e '/definition of _Noreturn/r $(_NORETURN_H)' \ -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ - -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)'; \ - } > $@-t && \ - mv $@-t $@ + -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ + > $@-t + $(AM_V_at)mv $@-t $@ MOSTLYCLEANFILES += stdlib.h stdlib.h-t EXTRA_DIST += stdlib.in.h @@ -2101,12 +2152,22 @@ EXTRA_DIST += stdopen.h ## end gnulib module stdopen -## begin gnulib module strcase +## begin gnulib module stpcpy + +if GL_COND_OBJ_STPCPY +libdiffutils_a_SOURCES += stpcpy.c +endif +## end gnulib module stpcpy -EXTRA_DIST += strcasecmp.c strncasecmp.c +## begin gnulib module strcase -EXTRA_libdiffutils_a_SOURCES += strcasecmp.c strncasecmp.c +if GL_COND_OBJ_STRCASECMP +libdiffutils_a_SOURCES += strcasecmp.c +endif +if GL_COND_OBJ_STRNCASECMP +libdiffutils_a_SOURCES += strncasecmp.c +endif ## end gnulib module strcase @@ -2119,19 +2180,19 @@ EXTRA_DIST += streq.h ## begin gnulib module strerror - -EXTRA_DIST += strerror.c - -EXTRA_libdiffutils_a_SOURCES += strerror.c +if GL_COND_OBJ_STRERROR +libdiffutils_a_SOURCES += strerror.c +endif ## end gnulib module strerror ## begin gnulib module strerror-override +if GL_COND_OBJ_STRERROR_OVERRIDE +libdiffutils_a_SOURCES += strerror-override.c +endif -EXTRA_DIST += strerror-override.c strerror-override.h - -EXTRA_libdiffutils_a_SOURCES += strerror-override.c +EXTRA_DIST += strerror-override.h ## end gnulib module strerror-override @@ -2150,9 +2211,8 @@ BUILT_SOURCES += string.h # We need the following in order to create when the system # doesn't have one that works with the given compiler. string.h: string.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ @@ -2178,6 +2238,7 @@ string.h: string.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H -e 's/@''GNULIB_MEMMEM''@/$(GL_GNULIB_MEMMEM)/g' \ -e 's/@''GNULIB_MEMPCPY''@/$(GL_GNULIB_MEMPCPY)/g' \ -e 's/@''GNULIB_MEMRCHR''@/$(GL_GNULIB_MEMRCHR)/g' \ + -e 's/@''GNULIB_MEMSET_EXPLICIT''@/$(GL_GNULIB_MEMSET_EXPLICIT)/g' \ -e 's/@''GNULIB_RAWMEMCHR''@/$(GL_GNULIB_RAWMEMCHR)/g' \ -e 's/@''GNULIB_STPCPY''@/$(GL_GNULIB_STPCPY)/g' \ -e 's/@''GNULIB_STPNCPY''@/$(GL_GNULIB_STPNCPY)/g' \ @@ -2200,6 +2261,7 @@ string.h: string.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H -e 's/@''GNULIB_STRVERSCMP''@/$(GL_GNULIB_STRVERSCMP)/g' \ -e 's/@''GNULIB_MDA_MEMCCPY''@/$(GL_GNULIB_MDA_MEMCCPY)/g' \ -e 's/@''GNULIB_MDA_STRDUP''@/$(GL_GNULIB_MDA_STRDUP)/g' \ + -e 's/@''GNULIB_FREE_POSIX''@/$(GL_GNULIB_FREE_POSIX)/g' \ < $(srcdir)/string.in.h | \ sed -e 's|@''HAVE_EXPLICIT_BZERO''@|$(HAVE_EXPLICIT_BZERO)|g' \ -e 's|@''HAVE_FFSL''@|$(HAVE_FFSL)|g' \ @@ -2208,6 +2270,7 @@ string.h: string.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H -e 's|@''HAVE_DECL_MEMMEM''@|$(HAVE_DECL_MEMMEM)|g' \ -e 's|@''HAVE_MEMPCPY''@|$(HAVE_MEMPCPY)|g' \ -e 's|@''HAVE_DECL_MEMRCHR''@|$(HAVE_DECL_MEMRCHR)|g' \ + -e 's|@''HAVE_MEMSET_EXPLICIT''@|$(HAVE_MEMSET_EXPLICIT)|g' \ -e 's|@''HAVE_RAWMEMCHR''@|$(HAVE_RAWMEMCHR)|g' \ -e 's|@''HAVE_STPCPY''@|$(HAVE_STPCPY)|g' \ -e 's|@''HAVE_STPNCPY''@|$(HAVE_STPNCPY)|g' \ @@ -2228,6 +2291,9 @@ string.h: string.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H -e 's|@''REPLACE_FFSLL''@|$(REPLACE_FFSLL)|g' \ -e 's|@''REPLACE_MEMCHR''@|$(REPLACE_MEMCHR)|g' \ -e 's|@''REPLACE_MEMMEM''@|$(REPLACE_MEMMEM)|g' \ + -e 's|@''REPLACE_MEMPCPY''@|$(REPLACE_MEMPCPY)|g' \ + -e 's|@''REPLACE_FREE''@|$(REPLACE_FREE)|g' \ + -e 's|@''REPLACE_STPCPY''@|$(REPLACE_STPCPY)|g' \ -e 's|@''REPLACE_STPNCPY''@|$(REPLACE_STPNCPY)|g' \ -e 's|@''REPLACE_STRCHRNUL''@|$(REPLACE_STRCHRNUL)|g' \ -e 's|@''REPLACE_STRDUP''@|$(REPLACE_STRDUP)|g' \ @@ -2244,10 +2310,9 @@ string.h: string.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H -e 's|@''UNDEFINE_STRTOK_R''@|$(UNDEFINE_STRTOK_R)|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)/string.in.h; \ - } > $@-t && \ - mv $@-t $@ + -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ + > $@-t + $(AM_V_at)mv $@-t $@ MOSTLYCLEANFILES += string.h string.h-t EXTRA_DIST += string.in.h @@ -2261,9 +2326,8 @@ BUILT_SOURCES += strings.h # We need the following in order to create 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) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|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' \ @@ -2276,9 +2340,8 @@ strings.h: strings.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE -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 && \ - mv $@-t $@ + $(srcdir)/strings.in.h > $@-t + $(AM_V_at)mv $@-t $@ MOSTLYCLEANFILES += strings.h strings.h-t EXTRA_DIST += strings.in.h @@ -2287,10 +2350,9 @@ EXTRA_DIST += strings.in.h ## begin gnulib module strnlen - -EXTRA_DIST += strnlen.c - -EXTRA_libdiffutils_a_SOURCES += strnlen.c +if GL_COND_OBJ_STRNLEN +libdiffutils_a_SOURCES += strnlen.c +endif ## end gnulib module strnlen @@ -2302,28 +2364,29 @@ libdiffutils_a_SOURCES += strnlen1.h strnlen1.c ## begin gnulib module strptime - -EXTRA_DIST += strptime.c - -EXTRA_libdiffutils_a_SOURCES += strptime.c +if GL_COND_OBJ_STRPTIME +libdiffutils_a_SOURCES += strptime.c +endif ## end gnulib module strptime ## begin gnulib module strtoimax - -EXTRA_DIST += strtoimax.c - -EXTRA_libdiffutils_a_SOURCES += strtoimax.c +if GL_COND_OBJ_STRTOIMAX +libdiffutils_a_SOURCES += strtoimax.c +endif ## end gnulib module strtoimax ## begin gnulib module strtoll +if GL_COND_OBJ_STRTOLL +libdiffutils_a_SOURCES += strtoll.c +endif -EXTRA_DIST += strtol.c strtoll.c +EXTRA_DIST += strtol.c -EXTRA_libdiffutils_a_SOURCES += strtol.c strtoll.c +EXTRA_libdiffutils_a_SOURCES += strtol.c ## end gnulib module strtoll @@ -2334,10 +2397,9 @@ BUILT_SOURCES += sys/random.h # We need the following in order to create when the system # doesn't have one. sys/random.h: sys_random.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_at)$(MKDIR_P) sys - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(AM_V_GEN)$(MKDIR_P) '%reldir%/sys' + $(AM_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ @@ -2349,9 +2411,8 @@ sys/random.h: sys_random.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_N -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)/sys_random.in.h; \ - } > $@-t && \ - mv -f $@-t $@ + $(srcdir)/sys_random.in.h > $@-t + $(AM_V_at)mv $@-t $@ MOSTLYCLEANFILES += sys/random.h sys/random.h-t MOSTLYCLEANDIRS += sys @@ -2366,16 +2427,16 @@ BUILT_SOURCES += sys/stat.h # We need the following in order to create when the system # has one that is incomplete. sys/stat.h: sys_stat.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_at)$(MKDIR_P) sys - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(AM_V_GEN)$(MKDIR_P) '%reldir%/sys' + $(AM_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|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_SYS_STAT_H''@|$(NEXT_SYS_STAT_H)|g' \ -e 's|@''WINDOWS_64_BIT_ST_SIZE''@|$(WINDOWS_64_BIT_ST_SIZE)|g' \ -e 's|@''WINDOWS_STAT_TIMESPEC''@|$(WINDOWS_STAT_TIMESPEC)|g' \ + -e 's/@''GNULIB_CHMOD''@/$(GL_GNULIB_CHMOD)/g' \ -e 's/@''GNULIB_FCHMODAT''@/$(GL_GNULIB_FCHMODAT)/g' \ -e 's/@''GNULIB_FSTAT''@/$(GL_GNULIB_FSTAT)/g' \ -e 's/@''GNULIB_FSTATAT''@/$(GL_GNULIB_FSTATAT)/g' \ @@ -2407,6 +2468,7 @@ sys/stat.h: sys_stat.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNU -e 's|@''HAVE_MKNOD''@|$(HAVE_MKNOD)|g' \ -e 's|@''HAVE_MKNODAT''@|$(HAVE_MKNODAT)|g' \ -e 's|@''HAVE_UTIMENSAT''@|$(HAVE_UTIMENSAT)|g' \ + -e 's|@''REPLACE_CHMOD''@|$(REPLACE_CHMOD)|g' \ -e 's|@''REPLACE_FCHMODAT''@|$(REPLACE_FCHMODAT)|g' \ -e 's|@''REPLACE_FSTAT''@|$(REPLACE_FSTAT)|g' \ -e 's|@''REPLACE_FSTATAT''@|$(REPLACE_FSTATAT)|g' \ @@ -2422,9 +2484,8 @@ sys/stat.h: sys_stat.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNU -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)/sys_stat.in.h; \ - } > $@-t && \ - mv $@-t $@ + $(srcdir)/sys_stat.in.h > $@-t + $(AM_V_at)mv $@-t $@ MOSTLYCLEANFILES += sys/stat.h sys/stat.h-t MOSTLYCLEANDIRS += sys @@ -2439,10 +2500,9 @@ BUILT_SOURCES += sys/time.h # We need the following in order to create when the system # doesn't have one that works with the given compiler. sys/time.h: sys_time.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_at)$(MKDIR_P) sys - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(AM_V_GEN)$(MKDIR_P) '%reldir%/sys' + $(AM_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's/@''HAVE_SYS_TIME_H''@/$(HAVE_SYS_TIME_H)/g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ @@ -2457,9 +2517,8 @@ sys/time.h: sys_time.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNU -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)/sys_time.in.h; \ - } > $@-t && \ - mv $@-t $@ + $(srcdir)/sys_time.in.h > $@-t + $(AM_V_at)mv $@-t $@ MOSTLYCLEANFILES += sys/time.h sys/time.h-t EXTRA_DIST += sys_time.in.h @@ -2473,19 +2532,17 @@ BUILT_SOURCES += sys/types.h # We need the following in order to create when the system # doesn't have one that works with the given compiler. sys/types.h: sys_types.in.h $(top_builddir)/config.status - $(AM_V_at)$(MKDIR_P) sys - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(AM_V_GEN)$(MKDIR_P) '%reldir%/sys' + $(AM_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|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_SYS_TYPES_H''@|$(NEXT_SYS_TYPES_H)|g' \ -e 's|@''WINDOWS_64_BIT_OFF_T''@|$(WINDOWS_64_BIT_OFF_T)|g' \ -e 's|@''WINDOWS_STAT_INODES''@|$(WINDOWS_STAT_INODES)|g' \ - < $(srcdir)/sys_types.in.h; \ - } > $@-t && \ - mv $@-t $@ + $(srcdir)/sys_types.in.h > $@-t + $(AM_V_at)mv $@-t $@ MOSTLYCLEANFILES += sys/types.h sys/types.h-t EXTRA_DIST += sys_types.in.h @@ -2499,10 +2556,9 @@ BUILT_SOURCES += sys/wait.h # We need the following in order to create when the system # has one that is incomplete. sys/wait.h: sys_wait.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H) - $(AM_V_at)$(MKDIR_P) sys - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(AM_V_GEN)$(MKDIR_P) '%reldir%/sys' + $(AM_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ @@ -2510,9 +2566,8 @@ sys/wait.h: sys_wait.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_U -e 's/@''GNULIB_WAITPID''@/$(GL_GNULIB_WAITPID)/g' \ -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ - < $(srcdir)/sys_wait.in.h; \ - } > $@-t && \ - mv $@-t $@ + $(srcdir)/sys_wait.in.h > $@-t + $(AM_V_at)mv $@-t $@ MOSTLYCLEANFILES += sys/wait.h sys/wait.h-t MOSTLYCLEANDIRS += sys @@ -2540,16 +2595,15 @@ libdiffutils_a_SOURCES += glthread/threadlib.c ## end gnulib module threadlib -## begin gnulib module time +## begin gnulib module time-h BUILT_SOURCES += time.h # We need the following in order to create when the system # doesn't have one that works with the given compiler. time.h: time.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ @@ -2560,8 +2614,10 @@ time.h: time.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $( -e 's/@''GNULIB_NANOSLEEP''@/$(GL_GNULIB_NANOSLEEP)/g' \ -e 's/@''GNULIB_STRFTIME''@/$(GL_GNULIB_STRFTIME)/g' \ -e 's/@''GNULIB_STRPTIME''@/$(GL_GNULIB_STRPTIME)/g' \ + -e 's/@''GNULIB_TIME''@/$(GL_GNULIB_TIME)/g' \ -e 's/@''GNULIB_TIMEGM''@/$(GL_GNULIB_TIMEGM)/g' \ -e 's/@''GNULIB_TIMESPEC_GET''@/$(GL_GNULIB_TIMESPEC_GET)/g' \ + -e 's/@''GNULIB_TIMESPEC_GETRES''@/$(GL_GNULIB_TIMESPEC_GETRES)/g' \ -e 's/@''GNULIB_TIME_R''@/$(GL_GNULIB_TIME_R)/g' \ -e 's/@''GNULIB_TIME_RZ''@/$(GL_GNULIB_TIME_RZ)/g' \ -e 's/@''GNULIB_TZSET''@/$(GL_GNULIB_TZSET)/g' \ @@ -2571,6 +2627,7 @@ time.h: time.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $( -e 's|@''HAVE_STRPTIME''@|$(HAVE_STRPTIME)|g' \ -e 's|@''HAVE_TIMEGM''@|$(HAVE_TIMEGM)|g' \ -e 's|@''HAVE_TIMESPEC_GET''@|$(HAVE_TIMESPEC_GET)|g' \ + -e 's|@''HAVE_TIMESPEC_GETRES''@|$(HAVE_TIMESPEC_GETRES)|g' \ -e 's|@''HAVE_TIMEZONE_T''@|$(HAVE_TIMEZONE_T)|g' \ -e 's|@''REPLACE_CTIME''@|$(REPLACE_CTIME)|g' \ -e 's|@''REPLACE_GMTIME''@|$(REPLACE_GMTIME)|g' \ @@ -2579,7 +2636,9 @@ time.h: time.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $( -e 's|@''REPLACE_MKTIME''@|$(REPLACE_MKTIME)|g' \ -e 's|@''REPLACE_NANOSLEEP''@|$(REPLACE_NANOSLEEP)|g' \ -e 's|@''REPLACE_STRFTIME''@|$(REPLACE_STRFTIME)|g' \ + -e 's|@''REPLACE_TIME''@|$(REPLACE_TIME)|g' \ -e 's|@''REPLACE_TIMEGM''@|$(REPLACE_TIMEGM)|g' \ + -e 's|@''REPLACE_TIMESPEC_GET''@|$(REPLACE_TIMESPEC_GET)|g' \ -e 's|@''REPLACE_TZSET''@|$(REPLACE_TZSET)|g' \ -e 's|@''PTHREAD_H_DEFINES_STRUCT_TIMESPEC''@|$(PTHREAD_H_DEFINES_STRUCT_TIMESPEC)|g' \ -e 's|@''SYS_TIME_H_DEFINES_STRUCT_TIMESPEC''@|$(SYS_TIME_H_DEFINES_STRUCT_TIMESPEC)|g' \ @@ -2589,39 +2648,39 @@ time.h: time.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $( -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)/time.in.h; \ - } > $@-t && \ - mv $@-t $@ + $(srcdir)/time.in.h > $@-t + $(AM_V_at)mv $@-t $@ MOSTLYCLEANFILES += time.h time.h-t EXTRA_DIST += time.in.h -## end gnulib module time +## end gnulib module time-h ## begin gnulib module time_r - -EXTRA_DIST += time_r.c - -EXTRA_libdiffutils_a_SOURCES += time_r.c +if GL_COND_OBJ_TIME_R +libdiffutils_a_SOURCES += time_r.c +endif ## end gnulib module time_r ## begin gnulib module time_rz +if GL_COND_OBJ_TIME_RZ +libdiffutils_a_SOURCES += time_rz.c +endif -EXTRA_DIST += time-internal.h time_rz.c - -EXTRA_libdiffutils_a_SOURCES += time_rz.c +EXTRA_DIST += time-internal.h ## end gnulib module time_rz ## begin gnulib module timegm +if GL_COND_OBJ_TIMEGM +libdiffutils_a_SOURCES += timegm.c +endif -EXTRA_DIST += mktime-internal.h timegm.c - -EXTRA_libdiffutils_a_SOURCES += timegm.c +EXTRA_DIST += mktime-internal.h ## end gnulib module timegm @@ -2643,10 +2702,9 @@ EXTRA_DIST += trim.h ## begin gnulib module tzset - -EXTRA_DIST += tzset.c - -EXTRA_libdiffutils_a_SOURCES += tzset.c +if GL_COND_OBJ_TZSET +libdiffutils_a_SOURCES += tzset.c +endif ## end gnulib module tzset @@ -2658,9 +2716,8 @@ libdiffutils_a_SOURCES += unistd.c # We need the following in order to create an empty placeholder for # when the system doesn't have one. unistd.h: unistd.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's|@''HAVE_UNISTD_H''@|$(HAVE_UNISTD_H)|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ @@ -2701,6 +2758,7 @@ unistd.h: unistd.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H -e 's/@''GNULIB_GETOPT_POSIX''@/$(GL_GNULIB_GETOPT_POSIX)/g' \ -e 's/@''GNULIB_GETPAGESIZE''@/$(GL_GNULIB_GETPAGESIZE)/g' \ -e 's/@''GNULIB_GETPASS''@/$(GL_GNULIB_GETPASS)/g' \ + -e 's/@''GNULIB_GETPASS_GNU''@/$(GL_GNULIB_GETPASS_GNU)/g' \ -e 's/@''GNULIB_GETUSERSHELL''@/$(GL_GNULIB_GETUSERSHELL)/g' \ -e 's/@''GNULIB_GROUP_MEMBER''@/$(GL_GNULIB_GROUP_MEMBER)/g' \ -e 's/@''GNULIB_ISATTY''@/$(GL_GNULIB_ISATTY)/g' \ @@ -2802,8 +2860,10 @@ unistd.h: unistd.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H sed -e 's|@''REPLACE_ACCESS''@|$(REPLACE_ACCESS)|g' \ -e 's|@''REPLACE_CHOWN''@|$(REPLACE_CHOWN)|g' \ -e 's|@''REPLACE_CLOSE''@|$(REPLACE_CLOSE)|g' \ + -e 's|@''REPLACE_COPY_FILE_RANGE''@|$(REPLACE_COPY_FILE_RANGE)|g' \ -e 's|@''REPLACE_DUP''@|$(REPLACE_DUP)|g' \ -e 's|@''REPLACE_DUP2''@|$(REPLACE_DUP2)|g' \ + -e 's|@''REPLACE_DUP3''@|$(REPLACE_DUP3)|g' \ -e 's|@''REPLACE_EXECL''@|$(REPLACE_EXECL)|g' \ -e 's|@''REPLACE_EXECLE''@|$(REPLACE_EXECLE)|g' \ -e 's|@''REPLACE_EXECLP''@|$(REPLACE_EXECLP)|g' \ @@ -2813,25 +2873,30 @@ unistd.h: unistd.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H -e 's|@''REPLACE_EXECVPE''@|$(REPLACE_EXECVPE)|g' \ -e 's|@''REPLACE_FACCESSAT''@|$(REPLACE_FACCESSAT)|g' \ -e 's|@''REPLACE_FCHOWNAT''@|$(REPLACE_FCHOWNAT)|g' \ + -e 's|@''REPLACE_FDATASYNC''@|$(REPLACE_FDATASYNC)|g' \ -e 's|@''REPLACE_FTRUNCATE''@|$(REPLACE_FTRUNCATE)|g' \ -e 's|@''REPLACE_GETCWD''@|$(REPLACE_GETCWD)|g' \ -e 's|@''REPLACE_GETDOMAINNAME''@|$(REPLACE_GETDOMAINNAME)|g' \ -e 's|@''REPLACE_GETDTABLESIZE''@|$(REPLACE_GETDTABLESIZE)|g' \ + -e 's|@''REPLACE_GETENTROPY''@|$(REPLACE_GETENTROPY)|g' \ -e 's|@''REPLACE_GETLOGIN_R''@|$(REPLACE_GETLOGIN_R)|g' \ -e 's|@''REPLACE_GETGROUPS''@|$(REPLACE_GETGROUPS)|g' \ -e 's|@''REPLACE_GETPAGESIZE''@|$(REPLACE_GETPAGESIZE)|g' \ -e 's|@''REPLACE_GETPASS''@|$(REPLACE_GETPASS)|g' \ + -e 's|@''REPLACE_GETPASS_FOR_GETPASS_GNU''@|$(REPLACE_GETPASS_FOR_GETPASS_GNU)|g' \ -e 's|@''REPLACE_ISATTY''@|$(REPLACE_ISATTY)|g' \ -e 's|@''REPLACE_LCHOWN''@|$(REPLACE_LCHOWN)|g' \ -e 's|@''REPLACE_LINK''@|$(REPLACE_LINK)|g' \ -e 's|@''REPLACE_LINKAT''@|$(REPLACE_LINKAT)|g' \ -e 's|@''REPLACE_LSEEK''@|$(REPLACE_LSEEK)|g' \ + -e 's|@''REPLACE_PIPE2''@|$(REPLACE_PIPE2)|g' \ -e 's|@''REPLACE_PREAD''@|$(REPLACE_PREAD)|g' \ -e 's|@''REPLACE_PWRITE''@|$(REPLACE_PWRITE)|g' \ -e 's|@''REPLACE_READ''@|$(REPLACE_READ)|g' \ -e 's|@''REPLACE_READLINK''@|$(REPLACE_READLINK)|g' \ -e 's|@''REPLACE_READLINKAT''@|$(REPLACE_READLINKAT)|g' \ -e 's|@''REPLACE_RMDIR''@|$(REPLACE_RMDIR)|g' \ + -e 's|@''REPLACE_SETHOSTNAME''@|$(REPLACE_SETHOSTNAME)|g' \ -e 's|@''REPLACE_SLEEP''@|$(REPLACE_SLEEP)|g' \ -e 's|@''REPLACE_SYMLINK''@|$(REPLACE_SYMLINK)|g' \ -e 's|@''REPLACE_SYMLINKAT''@|$(REPLACE_SYMLINKAT)|g' \ @@ -2846,9 +2911,9 @@ unistd.h: unistd.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H -e 's|@''UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS''@|$(UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS)|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)'; \ - } > $@-t && \ - mv $@-t $@ + -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ + > $@-t + $(AM_V_at)mv $@-t $@ MOSTLYCLEANFILES += unistd.h unistd.h-t EXTRA_DIST += unistd.in.h @@ -2860,11 +2925,8 @@ EXTRA_DIST += unistd.in.h BUILT_SOURCES += $(LIBUNISTRING_UNISTR_H) unistr.h: unistr.in.h - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - cat $(srcdir)/unistr.in.h; \ - } > $@-t && \ - mv -f $@-t $@ + $(gl_V_at)$(SED_HEADER_TO_AT_t) $(srcdir)/unistr.in.h + $(AM_V_at)mv $@-t $@ MOSTLYCLEANFILES += unistr.h unistr.h-t EXTRA_DIST += unistr.in.h @@ -2892,11 +2954,8 @@ endif BUILT_SOURCES += $(LIBUNISTRING_UNITYPES_H) unitypes.h: unitypes.in.h - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - cat $(srcdir)/unitypes.in.h; \ - } > $@-t && \ - mv -f $@-t $@ + $(gl_V_at)$(SED_HEADER_TO_AT_t) $(srcdir)/unitypes.in.h + $(AM_V_at)mv $@-t $@ MOSTLYCLEANFILES += unitypes.h unitypes.h-t EXTRA_DIST += unitypes.in.h @@ -2908,11 +2967,8 @@ EXTRA_DIST += unitypes.in.h BUILT_SOURCES += $(LIBUNISTRING_UNIWIDTH_H) uniwidth.h: uniwidth.in.h - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - cat $(srcdir)/uniwidth.in.h; \ - } > $@-t && \ - mv -f $@-t $@ + $(gl_V_at)$(SED_HEADER_TO_AT_t) $(srcdir)/uniwidth.in.h + $(AM_V_at)mv $@-t $@ MOSTLYCLEANFILES += uniwidth.h uniwidth.h-t EXTRA_DIST += localcharset.h uniwidth.in.h @@ -2925,7 +2981,7 @@ if LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH libdiffutils_a_SOURCES += uniwidth/width.c endif -EXTRA_DIST += uniwidth/cjk.h +EXTRA_DIST += unictype/bitmap.h uniwidth/cjk.h uniwidth/width0.h uniwidth/width2.h ## end gnulib module uniwidth/width @@ -2938,10 +2994,9 @@ EXTRA_DIST += unlocked-io.h ## begin gnulib module unsetenv - -EXTRA_DIST += unsetenv.c - -EXTRA_libdiffutils_a_SOURCES += unsetenv.c +if GL_COND_OBJ_UNSETENV +libdiffutils_a_SOURCES += unsetenv.c +endif ## end gnulib module unsetenv @@ -2959,24 +3014,6 @@ EXTRA_DIST += $(top_srcdir)/build-aux/useless-if-before-free ## end gnulib module useless-if-before-free -## begin gnulib module vasnprintf - - -EXTRA_DIST += asnprintf.c float+.h printf-args.c printf-args.h printf-parse.c printf-parse.h vasnprintf.c vasnprintf.h - -EXTRA_libdiffutils_a_SOURCES += asnprintf.c printf-args.c printf-parse.c vasnprintf.c - -## end gnulib module vasnprintf - -## begin gnulib module vasprintf - - -EXTRA_DIST += asprintf.c vasprintf.c - -EXTRA_libdiffutils_a_SOURCES += asprintf.c vasprintf.c - -## end gnulib module vasprintf - ## begin gnulib module vc-list-files @@ -3010,9 +3047,8 @@ BUILT_SOURCES += wchar.h # We need the following in order to create when the system # version does not work standalone. wchar.h: wchar.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ @@ -3063,6 +3099,7 @@ wchar.h: wchar.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) -e 's/@''GNULIB_WCSWIDTH''@/$(GL_GNULIB_WCSWIDTH)/g' \ -e 's/@''GNULIB_WCSFTIME''@/$(GL_GNULIB_WCSFTIME)/g' \ -e 's/@''GNULIB_MDA_WCSDUP''@/$(GL_GNULIB_MDA_WCSDUP)/g' \ + -e 's/@''GNULIB_FREE_POSIX''@/$(GL_GNULIB_FREE_POSIX)/g' \ < $(srcdir)/wchar.in.h | \ sed -e 's|@''HAVE_WINT_T''@|$(HAVE_WINT_T)|g' \ -e 's|@''HAVE_BTOWC''@|$(HAVE_BTOWC)|g' \ @@ -3111,6 +3148,7 @@ wchar.h: wchar.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) sed -e 's|@''REPLACE_MBSTATE_T''@|$(REPLACE_MBSTATE_T)|g' \ -e 's|@''REPLACE_BTOWC''@|$(REPLACE_BTOWC)|g' \ -e 's|@''REPLACE_WCTOB''@|$(REPLACE_WCTOB)|g' \ + -e 's|@''REPLACE_FREE''@|$(REPLACE_FREE)|g' \ -e 's|@''REPLACE_MBSINIT''@|$(REPLACE_MBSINIT)|g' \ -e 's|@''REPLACE_MBRTOWC''@|$(REPLACE_MBRTOWC)|g' \ -e 's|@''REPLACE_MBRLEN''@|$(REPLACE_MBRLEN)|g' \ @@ -3122,12 +3160,17 @@ wchar.h: wchar.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) -e 's|@''REPLACE_WCWIDTH''@|$(REPLACE_WCWIDTH)|g' \ -e 's|@''REPLACE_WCSWIDTH''@|$(REPLACE_WCSWIDTH)|g' \ -e 's|@''REPLACE_WCSFTIME''@|$(REPLACE_WCSFTIME)|g' \ + -e 's|@''REPLACE_WCSCMP''@|$(REPLACE_WCSCMP)|g' \ + -e 's|@''REPLACE_WCSNCMP''@|$(REPLACE_WCSNCMP)|g' \ + -e 's|@''REPLACE_WCSSTR''@|$(REPLACE_WCSSTR)|g' \ -e 's|@''REPLACE_WCSTOK''@|$(REPLACE_WCSTOK)|g' \ + -e 's|@''REPLACE_WMEMCMP''@|$(REPLACE_WMEMCMP)|g' \ + -e 's|@''REPLACE_WMEMPCPY''@|$(REPLACE_WMEMPCPY)|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)'; \ - } > $@-t && \ - mv $@-t $@ + -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ + > $@-t + $(AM_V_at)mv $@-t $@ MOSTLYCLEANFILES += wchar.h wchar.h-t EXTRA_DIST += wchar.in.h @@ -3136,10 +3179,9 @@ EXTRA_DIST += wchar.in.h ## begin gnulib module wcrtomb - -EXTRA_DIST += wcrtomb.c - -EXTRA_libdiffutils_a_SOURCES += wcrtomb.c +if GL_COND_OBJ_WCRTOMB +libdiffutils_a_SOURCES += wcrtomb.c +endif ## end gnulib module wcrtomb @@ -3151,9 +3193,8 @@ libdiffutils_a_SOURCES += wctype-h.c # We need the following in order to create when the system # doesn't have one that works with the given compiler. wctype.h: wctype.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H) - $(AM_V_GEN)rm -f $@-t $@ && \ - { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \ - sed -e 's|@''GUARD_PREFIX''@|GL|g' \ + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ -e 's/@''HAVE_WCTYPE_H''@/$(HAVE_WCTYPE_H)/g' \ -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ @@ -3180,9 +3221,8 @@ wctype.h: wctype.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H -e 's/@''REPLACE_TOWLOWER''@/$(REPLACE_TOWLOWER)/g' \ -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ - < $(srcdir)/wctype.in.h; \ - } > $@-t && \ - mv $@-t $@ + $(srcdir)/wctype.in.h > $@-t + $(AM_V_at)mv $@-t $@ MOSTLYCLEANFILES += wctype.h wctype.h-t EXTRA_DIST += wctype.in.h @@ -3191,64 +3231,67 @@ EXTRA_DIST += wctype.in.h ## begin gnulib module wcwidth - -EXTRA_DIST += wcwidth.c - -EXTRA_libdiffutils_a_SOURCES += wcwidth.c +if GL_COND_OBJ_WCWIDTH +libdiffutils_a_SOURCES += wcwidth.c +endif ## end gnulib module wcwidth ## begin gnulib module windows-mutex +if GL_COND_OBJ_WINDOWS_MUTEX +libdiffutils_a_SOURCES += windows-mutex.c +endif -EXTRA_DIST += windows-initguard.h windows-mutex.c windows-mutex.h - -EXTRA_libdiffutils_a_SOURCES += windows-mutex.c +EXTRA_DIST += windows-initguard.h windows-mutex.h ## end gnulib module windows-mutex ## begin gnulib module windows-once +if GL_COND_OBJ_WINDOWS_ONCE +libdiffutils_a_SOURCES += windows-once.c +endif -EXTRA_DIST += windows-once.c windows-once.h - -EXTRA_libdiffutils_a_SOURCES += windows-once.c +EXTRA_DIST += windows-once.h ## end gnulib module windows-once ## begin gnulib module windows-recmutex +if GL_COND_OBJ_WINDOWS_RECMUTEX +libdiffutils_a_SOURCES += windows-recmutex.c +endif -EXTRA_DIST += windows-initguard.h windows-recmutex.c windows-recmutex.h - -EXTRA_libdiffutils_a_SOURCES += windows-recmutex.c +EXTRA_DIST += windows-initguard.h windows-recmutex.h ## end gnulib module windows-recmutex ## begin gnulib module windows-rwlock +if GL_COND_OBJ_WINDOWS_RWLOCK +libdiffutils_a_SOURCES += windows-rwlock.c +endif -EXTRA_DIST += windows-initguard.h windows-rwlock.c windows-rwlock.h - -EXTRA_libdiffutils_a_SOURCES += windows-rwlock.c +EXTRA_DIST += windows-initguard.h windows-rwlock.h ## end gnulib module windows-rwlock ## begin gnulib module wmemchr +if GL_COND_OBJ_WMEMCHR +libdiffutils_a_SOURCES += wmemchr.c +endif -EXTRA_DIST += wmemchr-impl.h wmemchr.c - -EXTRA_libdiffutils_a_SOURCES += wmemchr.c +EXTRA_DIST += wmemchr-impl.h ## end gnulib module wmemchr ## begin gnulib module wmempcpy - -EXTRA_DIST += wmempcpy.c - -EXTRA_libdiffutils_a_SOURCES += wmempcpy.c +if GL_COND_OBJ_WMEMPCPY +libdiffutils_a_SOURCES += wmempcpy.c +endif ## end gnulib module wmempcpy @@ -3297,12 +3340,6 @@ EXTRA_DIST += xreadlink.h ## end gnulib module xreadlink -## begin gnulib module xsize - -libdiffutils_a_SOURCES += xsize.h xsize.c - -## end gnulib module xsize - ## begin gnulib module xstdopen libdiffutils_a_SOURCES += xstdopen.c @@ -3331,14 +3368,6 @@ EXTRA_DIST += xstrtol.h ## end gnulib module xstrtol -## begin gnulib module xvasprintf - -libdiffutils_a_SOURCES += xvasprintf.h xvasprintf.c xasprintf.c - -EXTRA_DIST += xalloc.h - -## end gnulib module xvasprintf - mostlyclean-local: mostlyclean-generic @for dir in '' $(MOSTLYCLEANDIRS); do \ @@ -3347,3 +3376,7 @@ mostlyclean-local: mostlyclean-generic fi; \ done; \ : +distclean-local: distclean-gnulib-libobjs +distclean-gnulib-libobjs: + -rm -f @gl_LIBOBJDEPS@ +maintainer-clean-local: distclean-gnulib-libobjs diff --git a/lib/hard-locale.c b/lib/hard-locale.c index 8b6802d..c01fce5 100644 --- a/lib/hard-locale.c +++ b/lib/hard-locale.c @@ -1,6 +1,6 @@ /* hard-locale.c -- Determine whether a locale is hard. - Copyright (C) 1997-1999, 2002-2004, 2006-2007, 2009-2021 Free Software + Copyright (C) 1997-1999, 2002-2004, 2006-2007, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify @@ -21,6 +21,7 @@ #include "hard-locale.h" #include +#include #include bool @@ -31,5 +32,16 @@ hard_locale (int category) if (setlocale_null_r (category, locale, sizeof (locale))) return false; - return !(strcmp (locale, "C") == 0 || strcmp (locale, "POSIX") == 0); + if (!(strcmp (locale, "C") == 0 || strcmp (locale, "POSIX") == 0)) + return true; + +#if defined __ANDROID__ + /* On Android 5.0 or newer, it is possible to set a locale that has the same + name as the "C" locale but in fact uses UTF-8 encoding. Cf. test case 2 in + . */ + if (MB_CUR_MAX > 1) + return true; +#endif + + return false; } diff --git a/lib/hard-locale.h b/lib/hard-locale.h index eba6601..5123d71 100644 --- a/lib/hard-locale.h +++ b/lib/hard-locale.h @@ -1,6 +1,6 @@ /* Determine whether a locale is hard. - Copyright (C) 1999, 2003-2004, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 1999, 2003-2004, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -18,11 +18,11 @@ #ifndef HARD_LOCALE_H_ # define HARD_LOCALE_H_ 1 -# include - /* Return true if the specified CATEGORY of the current locale is hard, i.e. different from the C or POSIX locale that has a fixed behavior. - CATEGORY must be one of the LC_* values, but not LC_ALL. */ + CATEGORY must be one of the LC_* values, but not LC_ALL. + Note: This function uses the current global locale; it ignores the + per-thread locale. */ extern bool hard_locale (int category); #endif /* HARD_LOCALE_H_ */ diff --git a/lib/hash.c b/lib/hash.c index 5f5f8fc..918aa0d 100644 --- a/lib/hash.c +++ b/lib/hash.c @@ -1,6 +1,6 @@ /* hash - hashing table processing. - Copyright (C) 1998-2004, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 1998-2004, 2006-2007, 2009-2023 Free Software Foundation, Inc. Written by Jim Meyering, 1992. diff --git a/lib/hash.h b/lib/hash.h index 230d5cd..be42e5a 100644 --- a/lib/hash.h +++ b/lib/hash.h @@ -1,5 +1,5 @@ /* hash - hashing table processing. - Copyright (C) 1998-1999, 2001, 2003, 2009-2021 Free Software Foundation, + Copyright (C) 1998-1999, 2001, 2003, 2009-2023 Free Software Foundation, Inc. Written by Jim Meyering , 1998. @@ -24,8 +24,14 @@ #ifndef HASH_H_ # define HASH_H_ +/* This file uses _GL_ATTRIBUTE_DEALLOC, _GL_ATTRIBUTE_DEPRECATED, + _GL_ATTRIBUTE_MALLOC, _GL_ATTRIBUTE_NODISCARD, _GL_ATTRIBUTE_PURE, + _GL_ATTRIBUTE_RETURNS_NONNULL. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + # include -# include # ifdef __cplusplus extern "C" { @@ -139,6 +145,12 @@ typedef size_t (*Hash_hasher) (const void *entry, size_t table_size); typedef bool (*Hash_comparator) (const void *entry1, const void *entry2); typedef void (*Hash_data_freer) (void *entry); +/* Reclaim all storage associated with a hash table. If a data_freer + function has been supplied by the user when the hash table was created, + this function applies it to the data of each entry before freeing that + entry. */ +extern void hash_free (Hash_table *table); + /* Allocate and return a new hash table, or NULL upon failure. The initial number of buckets is automatically selected so as to _guarantee_ that you may insert at least CANDIDATE different user entries before any growth of @@ -177,7 +189,8 @@ extern Hash_table *hash_initialize (size_t candidate, const Hash_tuning *tuning, Hash_hasher hasher, Hash_comparator comparator, - Hash_data_freer data_freer); + Hash_data_freer data_freer) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC (hash_free, 1); /* Same as hash_initialize, but invokes xalloc_die on memory exhaustion. */ /* This function is defined by module 'xhash'. */ @@ -186,19 +199,15 @@ extern Hash_table *hash_xinitialize (size_t candidate, const Hash_tuning *tuning, Hash_hasher hasher, Hash_comparator comparator, - Hash_data_freer data_freer); + Hash_data_freer data_freer) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC (hash_free, 1) + _GL_ATTRIBUTE_RETURNS_NONNULL; /* Make all buckets empty, placing any chained entries on the free list. Apply the user-specified function data_freer (if any) to the datas of any affected entries. */ extern void hash_clear (Hash_table *table); -/* Reclaim all storage associated with a hash table. If a data_freer - function has been supplied by the user when the hash table was created, - this function applies it to the data of each entry before freeing that - entry. */ -extern void hash_free (Hash_table *table); - /* * Insertion and deletion. */ diff --git a/lib/ialloc.c b/lib/ialloc.c index f506b84..cd44d8c 100644 --- a/lib/ialloc.c +++ b/lib/ialloc.c @@ -1,10 +1,10 @@ /* malloc with idx_t rather than size_t - Copyright 2021 Free Software Foundation, Inc. + Copyright 2021-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as - published by the Free Software Foundation; either version 3 of the + published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This file is distributed in the hope that it will be useful, diff --git a/lib/ialloc.h b/lib/ialloc.h index ebe4aaa..22f57a4 100644 --- a/lib/ialloc.h +++ b/lib/ialloc.h @@ -1,10 +1,10 @@ /* ialloc.h -- malloc with idx_t rather than size_t - Copyright 2021 Free Software Foundation, Inc. + Copyright 2021-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as - published by the Free Software Foundation; either version 3 of the + published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This file is distributed in the hope that it will be useful, @@ -18,15 +18,18 @@ #ifndef IALLOC_H_ #define IALLOC_H_ +/* This file uses _GL_INLINE_HEADER_BEGIN, _GL_INLINE, _GL_ATTRIBUTE_COLD, + _GL_ATTRIBUTE_MALLOC. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + #include "idx.h" #include #include #include -#ifndef _GL_INLINE_HEADER_BEGIN - #error "Please include config.h first." -#endif _GL_INLINE_HEADER_BEGIN #ifndef IALLOC_INLINE # define IALLOC_INLINE _GL_INLINE @@ -43,13 +46,23 @@ _gl_alloc_nomem (void) return NULL; } -IALLOC_INLINE void * +/* imalloc (size) is like malloc (size). + It returns a non-NULL pointer to size bytes of memory. + Upon failure, it returns NULL with errno set. */ +IALLOC_INLINE +_GL_ATTRIBUTE_MALLOC /*_GL_ATTRIBUTE_DEALLOC_FREE*/ +void * imalloc (idx_t s) { return s <= SIZE_MAX ? malloc (s) : _gl_alloc_nomem (); } -IALLOC_INLINE void * +/* irealloc (ptr, size) is like realloc (ptr, size). + It returns a non-NULL pointer to size bytes of memory. + Upon failure, it returns NULL with errno set. */ +IALLOC_INLINE +/*_GL_ATTRIBUTE_DEALLOC_FREE*/ +void * irealloc (void *p, idx_t s) { /* Work around GNU realloc glitch by treating a zero size as if it @@ -57,7 +70,12 @@ irealloc (void *p, idx_t s) return s <= SIZE_MAX ? realloc (p, s | !s) : _gl_alloc_nomem (); } -IALLOC_INLINE void * +/* icalloc (num, size) is like calloc (num, size). + It returns a non-NULL pointer to num * size bytes of memory. + Upon failure, it returns NULL with errno set. */ +IALLOC_INLINE +_GL_ATTRIBUTE_MALLOC /*_GL_ATTRIBUTE_DEALLOC_FREE*/ +void * icalloc (idx_t n, idx_t s) { if (SIZE_MAX < n) @@ -75,6 +93,9 @@ icalloc (idx_t n, idx_t s) return calloc (n, s); } +/* ireallocarray (ptr, num, size) is like reallocarray (ptr, num, size). + It returns a non-NULL pointer to num * size bytes of memory. + Upon failure, it returns NULL with errno set. */ IALLOC_INLINE void * ireallocarray (void *p, idx_t n, idx_t s) { @@ -91,4 +112,6 @@ ireallocarray (void *p, idx_t n, idx_t s) } #endif +_GL_INLINE_HEADER_END + #endif diff --git a/lib/iconv.c b/lib/iconv.c index bf51493..9f6f7a9 100644 --- a/lib/iconv.c +++ b/lib/iconv.c @@ -1,5 +1,5 @@ /* Character set conversion. - Copyright (C) 1999-2001, 2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 1999-2001, 2007, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/iconv.in.h b/lib/iconv.in.h index 3a2f94e..56de44c 100644 --- a/lib/iconv.in.h +++ b/lib/iconv.in.h @@ -1,6 +1,6 @@ /* A GNU-like . - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -28,6 +28,11 @@ #ifndef _@GUARD_PREFIX@_ICONV_H #define _@GUARD_PREFIX@_ICONV_H +/* This file uses GNULIB_POSIXCHECK, HAVE_RAW_DECL_*. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + /* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */ /* The definition of _GL_ARG_NONNULL is copied here. */ diff --git a/lib/iconv_close.c b/lib/iconv_close.c index 7429b92..41ea96e 100644 --- a/lib/iconv_close.c +++ b/lib/iconv_close.c @@ -1,5 +1,5 @@ /* Character set conversion. - Copyright (C) 2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2007, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/iconv_open-aix.gperf b/lib/iconv_open-aix.gperf index d073759..c1625d1 100644 --- a/lib/iconv_open-aix.gperf +++ b/lib/iconv_open-aix.gperf @@ -1,5 +1,5 @@ /* Character set conversion. - Copyright (C) 2007, 2020-2021 Free Software Foundation, Inc. + Copyright (C) 2007, 2020-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/iconv_open-hpux.gperf b/lib/iconv_open-hpux.gperf index f4664d6..691995c 100644 --- a/lib/iconv_open-hpux.gperf +++ b/lib/iconv_open-hpux.gperf @@ -1,5 +1,5 @@ /* Character set conversion. - Copyright (C) 2007, 2020-2021 Free Software Foundation, Inc. + Copyright (C) 2007, 2020-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/iconv_open-irix.gperf b/lib/iconv_open-irix.gperf index 9885d92..a6b84f9 100644 --- a/lib/iconv_open-irix.gperf +++ b/lib/iconv_open-irix.gperf @@ -1,5 +1,5 @@ /* Character set conversion. - Copyright (C) 2007, 2020-2021 Free Software Foundation, Inc. + Copyright (C) 2007, 2020-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/iconv_open-osf.gperf b/lib/iconv_open-osf.gperf index d818d79..9cffd48 100644 --- a/lib/iconv_open-osf.gperf +++ b/lib/iconv_open-osf.gperf @@ -1,5 +1,5 @@ /* Character set conversion. - Copyright (C) 2007, 2020-2021 Free Software Foundation, Inc. + Copyright (C) 2007, 2020-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/iconv_open-solaris.gperf b/lib/iconv_open-solaris.gperf index 648dd3a..c522683 100644 --- a/lib/iconv_open-solaris.gperf +++ b/lib/iconv_open-solaris.gperf @@ -1,5 +1,5 @@ /* Character set conversion. - Copyright (C) 2007, 2009, 2020-2021 Free Software Foundation, Inc. + Copyright (C) 2007, 2009, 2020-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/iconv_open-zos.gperf b/lib/iconv_open-zos.gperf index 1c3552e..f188e13 100644 --- a/lib/iconv_open-zos.gperf +++ b/lib/iconv_open-zos.gperf @@ -1,5 +1,5 @@ /* Character set conversion. - Copyright (C) 2019-2021 Free Software Foundation, Inc. + Copyright (C) 2019-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/iconv_open.c b/lib/iconv_open.c index e573556..be70de2 100644 --- a/lib/iconv_open.c +++ b/lib/iconv_open.c @@ -1,5 +1,5 @@ /* Character set conversion. - Copyright (C) 2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2007, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/idx.h b/lib/idx.h index 483587e..23020b7 100644 --- a/lib/idx.h +++ b/lib/idx.h @@ -1,5 +1,5 @@ /* A type for indices and sizes. - Copyright (C) 2020-2021 Free Software Foundation, Inc. + Copyright (C) 2020-2023 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -56,6 +56,26 @@ * Because 'size_t' is an unsigned type, and a signed type is better. See above. + Why not use 'ssize_t'? + + * 'ptrdiff_t' is more portable; it is standardized by ISO C + whereas 'ssize_t' is standardized only by POSIX. + + * 'ssize_t' is not required to be as wide as 'size_t', and some + now-obsolete POSIX platforms had 'size_t' wider than 'ssize_t'. + + * Conversely, some now-obsolete platforms had 'ptrdiff_t' wider + than 'size_t', which can be a win and conforms to POSIX. + + Won't this cause a problem with objects larger than PTRDIFF_MAX? + + * Typical modern or large platforms do not allocate such objects, + so this is not much of a problem in practice; for example, you + can safely write 'idx_t len = strlen (s);'. To port to older + small platforms where allocations larger than PTRDIFF_MAX could + in theory be a problem, you can use Gnulib's ialloc module, or + functions like ximalloc in Gnulib's xalloc module. + Why not use 'ptrdiff_t' directly? * Maintainability: When reading and modifying code, it helps to know that diff --git a/lib/ignore-value.h b/lib/ignore-value.h index 6099aba..f0b569a 100644 --- a/lib/ignore-value.h +++ b/lib/ignore-value.h @@ -1,6 +1,6 @@ /* ignore a function return without a compiler warning. -*- coding: utf-8 -*- - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/imaxtostr.c b/lib/imaxtostr.c index 6a9c6a9..1ba2fb7 100644 --- a/lib/imaxtostr.c +++ b/lib/imaxtostr.c @@ -1,6 +1,6 @@ /* Convert 'intmax_t' integer to printable string. - Copyright (C) 2004-2021 Free Software Foundation, Inc. + Copyright (C) 2004-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/intprops-internal.h b/lib/intprops-internal.h new file mode 100644 index 0000000..0467a9c --- /dev/null +++ b/lib/intprops-internal.h @@ -0,0 +1,392 @@ +/* intprops-internal.h -- properties of integer types not visible to users + + Copyright (C) 2001-2023 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 2.1 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#ifndef _GL_INTPROPS_INTERNAL_H +#define _GL_INTPROPS_INTERNAL_H + +#include + +/* Return a value with the common real type of E and V and the value of V. + Do not evaluate E. */ +#define _GL_INT_CONVERT(e, v) ((1 ? 0 : (e)) + (v)) + +/* Act like _GL_INT_CONVERT (E, -V) but work around a bug in IRIX 6.5 cc; see + . */ +#define _GL_INT_NEGATE_CONVERT(e, v) ((1 ? 0 : (e)) - (v)) + +/* The extra casts in the following macros work around compiler bugs, + e.g., in Cray C 5.0.3.0. */ + +/* True if the real type T is signed. */ +#define _GL_TYPE_SIGNED(t) (! ((t) 0 < (t) -1)) + +/* Return 1 if the real expression E, after promotion, has a + signed or floating type. Do not evaluate E. */ +#define _GL_EXPR_SIGNED(e) (_GL_INT_NEGATE_CONVERT (e, 1) < 0) + + +/* Minimum and maximum values for integer types and expressions. */ + +/* The width in bits of the integer type or expression T. + Do not evaluate T. T must not be a bit-field expression. + Padding bits are not supported; this is checked at compile-time below. */ +#define _GL_TYPE_WIDTH(t) (sizeof (t) * CHAR_BIT) + +/* The maximum and minimum values for the type of the expression E, + after integer promotion. E is not evaluated. */ +#define _GL_INT_MINIMUM(e) \ + (_GL_EXPR_SIGNED (e) \ + ? ~ _GL_SIGNED_INT_MAXIMUM (e) \ + : _GL_INT_CONVERT (e, 0)) +#define _GL_INT_MAXIMUM(e) \ + (_GL_EXPR_SIGNED (e) \ + ? _GL_SIGNED_INT_MAXIMUM (e) \ + : _GL_INT_NEGATE_CONVERT (e, 1)) +#define _GL_SIGNED_INT_MAXIMUM(e) \ + (((_GL_INT_CONVERT (e, 1) << (_GL_TYPE_WIDTH (+ (e)) - 2)) - 1) * 2 + 1) + +/* Work around OpenVMS incompatibility with C99. */ +#if !defined LLONG_MAX && defined __INT64_MAX +# define LLONG_MAX __INT64_MAX +# define LLONG_MIN __INT64_MIN +#endif + +/* This include file assumes that signed types are two's complement without + padding bits; the above macros have undefined behavior otherwise. + If this is a problem for you, please let us know how to fix it for your host. + This assumption is tested by the intprops-tests module. */ + +/* Does the __typeof__ keyword work? This could be done by + 'configure', but for now it's easier to do it by hand. */ +#if (2 <= __GNUC__ \ + || (4 <= __clang_major__) \ + || (1210 <= __IBMC__ && defined __IBM__TYPEOF__) \ + || (0x5110 <= __SUNPRO_C && !__STDC__)) +# define _GL_HAVE___TYPEOF__ 1 +#else +# define _GL_HAVE___TYPEOF__ 0 +#endif + +/* Return 1 if the integer type or expression T might be signed. Return 0 + if it is definitely unsigned. T must not be a bit-field expression. + This macro does not evaluate its argument, and expands to an + integer constant expression. */ +#if _GL_HAVE___TYPEOF__ +# define _GL_SIGNED_TYPE_OR_EXPR(t) _GL_TYPE_SIGNED (__typeof__ (t)) +#else +# define _GL_SIGNED_TYPE_OR_EXPR(t) 1 +#endif + +/* Return 1 if - A would overflow in [MIN,MAX] arithmetic. + A should not have side effects, and A's type should be an + integer with minimum value MIN and maximum MAX. */ +#define _GL_INT_NEGATE_RANGE_OVERFLOW(a, min, max) \ + ((min) < 0 ? (a) < - (max) : 0 < (a)) + +/* True if __builtin_add_overflow (A, B, P) and __builtin_sub_overflow + (A, B, P) work when P is non-null. */ +#ifdef __EDG__ +/* EDG-based compilers like nvc 22.1 cannot add 64-bit signed to unsigned + . */ +# define _GL_HAS_BUILTIN_ADD_OVERFLOW 0 +#elif defined __has_builtin +# define _GL_HAS_BUILTIN_ADD_OVERFLOW __has_builtin (__builtin_add_overflow) +/* __builtin_{add,sub}_overflow exists but is not reliable in GCC 5.x and 6.x, + see . */ +#elif 7 <= __GNUC__ +# define _GL_HAS_BUILTIN_ADD_OVERFLOW 1 +#else +# define _GL_HAS_BUILTIN_ADD_OVERFLOW 0 +#endif + +/* True if __builtin_mul_overflow (A, B, P) works when P is non-null. */ +#if defined __clang_major__ && __clang_major__ < 14 +/* Work around Clang bug . */ +# define _GL_HAS_BUILTIN_MUL_OVERFLOW 0 +#else +# define _GL_HAS_BUILTIN_MUL_OVERFLOW _GL_HAS_BUILTIN_ADD_OVERFLOW +#endif + +/* True if __builtin_add_overflow_p (A, B, C) works, and similarly for + __builtin_sub_overflow_p and __builtin_mul_overflow_p. */ +#ifdef __EDG__ +/* In EDG-based compilers like ICC 2021.3 and earlier, + __builtin_add_overflow_p etc. are not treated as integral constant + expressions even when all arguments are. */ +# define _GL_HAS_BUILTIN_OVERFLOW_P 0 +#elif defined __has_builtin +# define _GL_HAS_BUILTIN_OVERFLOW_P __has_builtin (__builtin_mul_overflow_p) +#else +# define _GL_HAS_BUILTIN_OVERFLOW_P (7 <= __GNUC__) +#endif + +#if (!defined _GL_STDCKDINT_H && 202311 <= __STDC_VERSION__ \ + && ! (_GL_HAS_BUILTIN_ADD_OVERFLOW && _GL_HAS_BUILTIN_MUL_OVERFLOW)) +# include +#endif + +/* Store the low-order bits of A + B, A - B, A * B, respectively, into *R. + Return 1 if the result overflows. Arguments should not have side + effects and A, B and *R can be of any integer type other than char, + bool, a bit-precise integer type, or an enumeration type. */ +#if _GL_HAS_BUILTIN_ADD_OVERFLOW +# define _GL_INT_ADD_WRAPV(a, b, r) __builtin_add_overflow (a, b, r) +# define _GL_INT_SUBTRACT_WRAPV(a, b, r) __builtin_sub_overflow (a, b, r) +#elif defined ckd_add && defined ckd_sub && !defined _GL_STDCKDINT_H +# define _GL_INT_ADD_WRAPV(a, b, r) ckd_add (r, + (a), + (b)) +# define _GL_INT_SUBTRACT_WRAPV(a, b, r) ckd_sub (r, + (a), + (b)) +#else +# define _GL_INT_ADD_WRAPV(a, b, r) \ + _GL_INT_OP_WRAPV (a, b, r, +, _GL_INT_ADD_RANGE_OVERFLOW) +# define _GL_INT_SUBTRACT_WRAPV(a, b, r) \ + _GL_INT_OP_WRAPV (a, b, r, -, _GL_INT_SUBTRACT_RANGE_OVERFLOW) +#endif +#if _GL_HAS_BUILTIN_MUL_OVERFLOW +# if ((9 < __GNUC__ + (3 <= __GNUC_MINOR__) \ + || (__GNUC__ == 8 && 4 <= __GNUC_MINOR__)) \ + && !defined __EDG__) +# define _GL_INT_MULTIPLY_WRAPV(a, b, r) __builtin_mul_overflow (a, b, r) +# else + /* Work around GCC bug 91450. */ +# define _GL_INT_MULTIPLY_WRAPV(a, b, r) \ + ((!_GL_SIGNED_TYPE_OR_EXPR (*(r)) && _GL_EXPR_SIGNED (a) && _GL_EXPR_SIGNED (b) \ + && _GL_INT_MULTIPLY_RANGE_OVERFLOW (a, b, 0, (__typeof__ (*(r))) -1)) \ + ? ((void) __builtin_mul_overflow (a, b, r), 1) \ + : __builtin_mul_overflow (a, b, r)) +# endif +#elif defined ckd_mul && !defined _GL_STDCKDINT_H +# define _GL_INT_MULTIPLY_WRAPV(a, b, r) ckd_mul (r, + (a), + (b)) +#else +# define _GL_INT_MULTIPLY_WRAPV(a, b, r) \ + _GL_INT_OP_WRAPV (a, b, r, *, _GL_INT_MULTIPLY_RANGE_OVERFLOW) +#endif + +/* Nonzero if this compiler has GCC bug 68193 or Clang bug 25390. See: + https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68193 + https://llvm.org/bugs/show_bug.cgi?id=25390 + For now, assume all versions of GCC-like compilers generate bogus + warnings for _Generic. This matters only for compilers that + lack relevant builtins. */ +#if __GNUC__ || defined __clang__ +# define _GL__GENERIC_BOGUS 1 +#else +# define _GL__GENERIC_BOGUS 0 +#endif + +/* Store the low-order bits of A B into *R, where OP specifies + the operation and OVERFLOW the overflow predicate. Return 1 if the + result overflows. Arguments should not have side effects, + and A, B and *R can be of any integer type other than char, bool, a + bit-precise integer type, or an enumeration type. */ +#if 201112 <= __STDC_VERSION__ && !_GL__GENERIC_BOGUS +# define _GL_INT_OP_WRAPV(a, b, r, op, overflow) \ + (_Generic \ + (*(r), \ + signed char: \ + _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \ + signed char, SCHAR_MIN, SCHAR_MAX), \ + unsigned char: \ + _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \ + unsigned char, 0, UCHAR_MAX), \ + short int: \ + _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \ + short int, SHRT_MIN, SHRT_MAX), \ + unsigned short int: \ + _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \ + unsigned short int, 0, USHRT_MAX), \ + int: \ + _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \ + int, INT_MIN, INT_MAX), \ + unsigned int: \ + _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \ + unsigned int, 0, UINT_MAX), \ + long int: \ + _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long int, \ + long int, LONG_MIN, LONG_MAX), \ + unsigned long int: \ + _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long int, \ + unsigned long int, 0, ULONG_MAX), \ + long long int: \ + _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long long int, \ + long long int, LLONG_MIN, LLONG_MAX), \ + unsigned long long int: \ + _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long long int, \ + unsigned long long int, 0, ULLONG_MAX))) +#else +/* Store the low-order bits of A B into *R, where OP specifies + the operation and OVERFLOW the overflow predicate. If *R is + signed, its type is ST with bounds SMIN..SMAX; otherwise its type + is UT with bounds U..UMAX. ST and UT are narrower than int. + Return 1 if the result overflows. Arguments should not have side + effects, and A, B and *R can be of any integer type other than + char, bool, a bit-precise integer type, or an enumeration type. */ +# if _GL_HAVE___TYPEOF__ +# define _GL_INT_OP_WRAPV_SMALLISH(a,b,r,op,overflow,st,smin,smax,ut,umax) \ + (_GL_TYPE_SIGNED (__typeof__ (*(r))) \ + ? _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, st, smin, smax) \ + : _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, ut, 0, umax)) +# else +# define _GL_INT_OP_WRAPV_SMALLISH(a,b,r,op,overflow,st,smin,smax,ut,umax) \ + (overflow (a, b, smin, smax) \ + ? (overflow (a, b, 0, umax) \ + ? (*(r) = _GL_INT_OP_WRAPV_VIA_UNSIGNED (a,b,op,unsigned,st), 1) \ + : (*(r) = _GL_INT_OP_WRAPV_VIA_UNSIGNED (a,b,op,unsigned,st)) < 0) \ + : (overflow (a, b, 0, umax) \ + ? (*(r) = _GL_INT_OP_WRAPV_VIA_UNSIGNED (a,b,op,unsigned,st)) >= 0 \ + : (*(r) = _GL_INT_OP_WRAPV_VIA_UNSIGNED (a,b,op,unsigned,st), 0))) +# endif + +# define _GL_INT_OP_WRAPV(a, b, r, op, overflow) \ + (sizeof *(r) == sizeof (signed char) \ + ? _GL_INT_OP_WRAPV_SMALLISH (a, b, r, op, overflow, \ + signed char, SCHAR_MIN, SCHAR_MAX, \ + unsigned char, UCHAR_MAX) \ + : sizeof *(r) == sizeof (short int) \ + ? _GL_INT_OP_WRAPV_SMALLISH (a, b, r, op, overflow, \ + short int, SHRT_MIN, SHRT_MAX, \ + unsigned short int, USHRT_MAX) \ + : sizeof *(r) == sizeof (int) \ + ? (_GL_EXPR_SIGNED (*(r)) \ + ? _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \ + int, INT_MIN, INT_MAX) \ + : _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \ + unsigned int, 0, UINT_MAX)) \ + : _GL_INT_OP_WRAPV_LONGISH(a, b, r, op, overflow)) +# ifdef LLONG_MAX +# define _GL_INT_OP_WRAPV_LONGISH(a, b, r, op, overflow) \ + (sizeof *(r) == sizeof (long int) \ + ? (_GL_EXPR_SIGNED (*(r)) \ + ? _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long int, \ + long int, LONG_MIN, LONG_MAX) \ + : _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long int, \ + unsigned long int, 0, ULONG_MAX)) \ + : (_GL_EXPR_SIGNED (*(r)) \ + ? _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long long int, \ + long long int, LLONG_MIN, LLONG_MAX) \ + : _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long long int, \ + unsigned long long int, 0, ULLONG_MAX))) +# else +# define _GL_INT_OP_WRAPV_LONGISH(a, b, r, op, overflow) \ + (_GL_EXPR_SIGNED (*(r)) \ + ? _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long int, \ + long int, LONG_MIN, LONG_MAX) \ + : _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long int, \ + unsigned long int, 0, ULONG_MAX)) +# endif +#endif + +/* Store the low-order bits of A B into *R, where the operation + is given by OP. Use the unsigned type UT for calculation to avoid + overflow problems. *R's type is T, with extrema TMIN and TMAX. + T can be any signed integer type other than char, bool, a + bit-precise integer type, or an enumeration type. + Return 1 if the result overflows. */ +#define _GL_INT_OP_CALC(a, b, r, op, overflow, ut, t, tmin, tmax) \ + (overflow (a, b, tmin, tmax) \ + ? (*(r) = _GL_INT_OP_WRAPV_VIA_UNSIGNED (a, b, op, ut, t), 1) \ + : (*(r) = _GL_INT_OP_WRAPV_VIA_UNSIGNED (a, b, op, ut, t), 0)) + +/* Return 1 if the integer expressions A - B and -A would overflow, + respectively. Arguments should not have side effects, + and can be any signed integer type other than char, bool, a + bit-precise integer type, or an enumeration type. + These macros are tuned for their last input argument being a constant. */ + +#if _GL_HAS_BUILTIN_OVERFLOW_P +# define _GL_INT_NEGATE_OVERFLOW(a) \ + __builtin_sub_overflow_p (0, a, (__typeof__ (- (a))) 0) +#else +# define _GL_INT_NEGATE_OVERFLOW(a) \ + _GL_INT_NEGATE_RANGE_OVERFLOW (a, _GL_INT_MINIMUM (a), _GL_INT_MAXIMUM (a)) +#endif + +/* Return the low-order bits of A B, where the operation is given + by OP. Use the unsigned type UT for calculation to avoid undefined + behavior on signed integer overflow, and convert the result to type T. + UT is at least as wide as T and is no narrower than unsigned int, + T is two's complement, and there is no padding or trap representations. + Assume that converting UT to T yields the low-order bits, as is + done in all known two's-complement C compilers. E.g., see: + https://gcc.gnu.org/onlinedocs/gcc/Integers-implementation.html + + According to the C standard, converting UT to T yields an + implementation-defined result or signal for values outside T's + range. However, code that works around this theoretical problem + runs afoul of a compiler bug in Oracle Studio 12.3 x86. See: + https://lists.gnu.org/r/bug-gnulib/2017-04/msg00049.html + As the compiler bug is real, don't try to work around the + theoretical problem. */ + +#define _GL_INT_OP_WRAPV_VIA_UNSIGNED(a, b, op, ut, t) \ + ((t) ((ut) (a) op (ut) (b))) + +/* Return true if the numeric values A + B, A - B, A * B fall outside + the range TMIN..TMAX. Arguments should not have side effects + and can be any integer type other than char, bool, + a bit-precise integer type, or an enumeration type. + TMIN should be signed and nonpositive. + TMAX should be positive, and should be signed unless TMIN is zero. */ +#define _GL_INT_ADD_RANGE_OVERFLOW(a, b, tmin, tmax) \ + ((b) < 0 \ + ? (((tmin) \ + ? ((_GL_EXPR_SIGNED (_GL_INT_CONVERT (a, (tmin) - (b))) || (b) < (tmin)) \ + && (a) < (tmin) - (b)) \ + : (a) <= -1 - (b)) \ + || ((_GL_EXPR_SIGNED (a) ? 0 <= (a) : (tmax) < (a)) && (tmax) < (a) + (b))) \ + : (a) < 0 \ + ? (((tmin) \ + ? ((_GL_EXPR_SIGNED (_GL_INT_CONVERT (b, (tmin) - (a))) || (a) < (tmin)) \ + && (b) < (tmin) - (a)) \ + : (b) <= -1 - (a)) \ + || ((_GL_EXPR_SIGNED (_GL_INT_CONVERT (a, b)) || (tmax) < (b)) \ + && (tmax) < (a) + (b))) \ + : (tmax) < (b) || (tmax) - (b) < (a)) +#define _GL_INT_SUBTRACT_RANGE_OVERFLOW(a, b, tmin, tmax) \ + (((a) < 0) == ((b) < 0) \ + ? ((a) < (b) \ + ? !(tmin) || -1 - (tmin) < (b) - (a) - 1 \ + : (tmax) < (a) - (b)) \ + : (a) < 0 \ + ? ((!_GL_EXPR_SIGNED (_GL_INT_CONVERT ((a) - (tmin), b)) && (a) - (tmin) < 0) \ + || (a) - (tmin) < (b)) \ + : ((! (_GL_EXPR_SIGNED (_GL_INT_CONVERT (tmax, b)) \ + && _GL_EXPR_SIGNED (_GL_INT_CONVERT ((tmax) + (b), a))) \ + && (tmax) <= -1 - (b)) \ + || (tmax) + (b) < (a))) +#define _GL_INT_MULTIPLY_RANGE_OVERFLOW(a, b, tmin, tmax) \ + ((b) < 0 \ + ? ((a) < 0 \ + ? (_GL_EXPR_SIGNED (_GL_INT_CONVERT (tmax, b)) \ + ? (a) < (tmax) / (b) \ + : ((_GL_INT_NEGATE_OVERFLOW (b) \ + ? _GL_INT_CONVERT (b, tmax) >> (_GL_TYPE_WIDTH (+ (b)) - 1) \ + : (tmax) / -(b)) \ + <= -1 - (a))) \ + : _GL_INT_NEGATE_OVERFLOW (_GL_INT_CONVERT (b, tmin)) && (b) == -1 \ + ? (_GL_EXPR_SIGNED (a) \ + ? 0 < (a) + (tmin) \ + : 0 < (a) && -1 - (tmin) < (a) - 1) \ + : (tmin) / (b) < (a)) \ + : (b) == 0 \ + ? 0 \ + : ((a) < 0 \ + ? (_GL_INT_NEGATE_OVERFLOW (_GL_INT_CONVERT (a, tmin)) && (a) == -1 \ + ? (_GL_EXPR_SIGNED (b) ? 0 < (b) + (tmin) : -1 - (tmin) < (b) - 1) \ + : (tmin) / (a) < (b)) \ + : (tmax) / (b) < (a))) + +#endif /* _GL_INTPROPS_INTERNAL_H */ diff --git a/lib/intprops.h b/lib/intprops.h index 9d10028..44b5e60 100644 --- a/lib/intprops.h +++ b/lib/intprops.h @@ -1,6 +1,6 @@ /* intprops.h -- properties of integer types - Copyright (C) 2001-2021 Free Software Foundation, Inc. + Copyright (C) 2001-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published @@ -15,20 +15,10 @@ You should have received a copy of the GNU Lesser General Public License along with this program. If not, see . */ -/* Written by Paul Eggert. */ - #ifndef _GL_INTPROPS_H #define _GL_INTPROPS_H -#include - -/* Return a value with the common real type of E and V and the value of V. - Do not evaluate E. */ -#define _GL_INT_CONVERT(e, v) ((1 ? 0 : (e)) + (v)) - -/* Act like _GL_INT_CONVERT (E, -V) but work around a bug in IRIX 6.5 cc; see - . */ -#define _GL_INT_NEGATE_CONVERT(e, v) ((1 ? 0 : (e)) - (v)) +#include "intprops-internal.h" /* The extra casts in the following macros work around compiler bugs, e.g., in Cray C 5.0.3.0. */ @@ -38,11 +28,11 @@ #define TYPE_IS_INTEGER(t) ((t) 1.5 == 1) /* True if the real type T is signed. */ -#define TYPE_SIGNED(t) (! ((t) 0 < (t) -1)) +#define TYPE_SIGNED(t) _GL_TYPE_SIGNED (t) /* Return 1 if the real expression E, after promotion, has a signed or floating type. Do not evaluate E. */ -#define EXPR_SIGNED(e) (_GL_INT_NEGATE_CONVERT (e, 1) < 0) +#define EXPR_SIGNED(e) _GL_EXPR_SIGNED (e) /* Minimum and maximum values for integer types and expressions. */ @@ -50,7 +40,7 @@ /* The width in bits of the integer type or expression T. Do not evaluate T. T must not be a bit-field expression. Padding bits are not supported; this is checked at compile-time below. */ -#define TYPE_WIDTH(t) (sizeof (t) * CHAR_BIT) +#define TYPE_WIDTH(t) _GL_TYPE_WIDTH (t) /* The maximum and minimum values for the integer type T. */ #define TYPE_MINIMUM(t) ((t) ~ TYPE_MAXIMUM (t)) @@ -59,51 +49,6 @@ ? (t) -1 \ : ((((t) 1 << (TYPE_WIDTH (t) - 2)) - 1) * 2 + 1))) -/* The maximum and minimum values for the type of the expression E, - after integer promotion. E is not evaluated. */ -#define _GL_INT_MINIMUM(e) \ - (EXPR_SIGNED (e) \ - ? ~ _GL_SIGNED_INT_MAXIMUM (e) \ - : _GL_INT_CONVERT (e, 0)) -#define _GL_INT_MAXIMUM(e) \ - (EXPR_SIGNED (e) \ - ? _GL_SIGNED_INT_MAXIMUM (e) \ - : _GL_INT_NEGATE_CONVERT (e, 1)) -#define _GL_SIGNED_INT_MAXIMUM(e) \ - (((_GL_INT_CONVERT (e, 1) << (TYPE_WIDTH (+ (e)) - 2)) - 1) * 2 + 1) - -/* Work around OpenVMS incompatibility with C99. */ -#if !defined LLONG_MAX && defined __INT64_MAX -# define LLONG_MAX __INT64_MAX -# define LLONG_MIN __INT64_MIN -#endif - -/* This include file assumes that signed types are two's complement without - padding bits; the above macros have undefined behavior otherwise. - If this is a problem for you, please let us know how to fix it for your host. - This assumption is tested by the intprops-tests module. */ - -/* Does the __typeof__ keyword work? This could be done by - 'configure', but for now it's easier to do it by hand. */ -#if (2 <= __GNUC__ \ - || (4 <= __clang_major__) \ - || (1210 <= __IBMC__ && defined __IBM__TYPEOF__) \ - || (0x5110 <= __SUNPRO_C && !__STDC__)) -# define _GL_HAVE___TYPEOF__ 1 -#else -# define _GL_HAVE___TYPEOF__ 0 -#endif - -/* Return 1 if the integer type or expression T might be signed. Return 0 - if it is definitely unsigned. T must not be a bit-field expression. - This macro does not evaluate its argument, and expands to an - integer constant expression. */ -#if _GL_HAVE___TYPEOF__ -# define _GL_SIGNED_TYPE_OR_EXPR(t) TYPE_SIGNED (__typeof__ (t)) -#else -# define _GL_SIGNED_TYPE_OR_EXPR(t) 1 -#endif - /* Bound on length of the string representing an unsigned integer value representable in B bits. log10 (2.0) < 146/485. The smallest value of B where this bound is not tight is 2621. */ @@ -130,12 +75,11 @@ /* Range overflow checks. The INT__RANGE_OVERFLOW macros return 1 if the corresponding C - operators might not yield numerically correct answers due to - arithmetic overflow. They do not rely on undefined or - implementation-defined behavior. Their implementations are simple - and straightforward, but they are harder to use and may be less - efficient than the INT__WRAPV, INT__OK, and - INT__OVERFLOW macros described below. + operators overflow arithmetically when given the same arguments. + These macros do not rely on undefined or implementation-defined behavior. + Although their implementations are simple and straightforward, + they are harder to use and may be less efficient than the + INT__WRAPV, INT__OK, and INT__OVERFLOW macros described below. Example usage: @@ -182,9 +126,7 @@ /* Return 1 if - A would overflow in [MIN,MAX] arithmetic. See above for restrictions. */ #define INT_NEGATE_RANGE_OVERFLOW(a, min, max) \ - ((min) < 0 \ - ? (a) < - (max) \ - : 0 < (a)) + _GL_INT_NEGATE_RANGE_OVERFLOW (a, min, max) /* Return 1 if A * B would overflow in [MIN,MAX] arithmetic. See above for restrictions. Avoid && and || as they tickle @@ -228,40 +170,6 @@ ? (a) < (min) >> (b) \ : (max) >> (b) < (a)) -/* True if __builtin_add_overflow (A, B, P) and __builtin_sub_overflow - (A, B, P) work when P is non-null. */ -/* __builtin_{add,sub}_overflow exists but is not reliable in GCC 5.x and 6.x, - see . */ -#if 7 <= __GNUC__ && !defined __ICC -# define _GL_HAS_BUILTIN_ADD_OVERFLOW 1 -#elif defined __has_builtin -# define _GL_HAS_BUILTIN_ADD_OVERFLOW __has_builtin (__builtin_add_overflow) -#else -# define _GL_HAS_BUILTIN_ADD_OVERFLOW 0 -#endif - -/* True if __builtin_mul_overflow (A, B, P) works when P is non-null. */ -#ifdef __clang__ -/* Work around Clang bug . */ -# define _GL_HAS_BUILTIN_MUL_OVERFLOW 0 -#else -# define _GL_HAS_BUILTIN_MUL_OVERFLOW _GL_HAS_BUILTIN_ADD_OVERFLOW -#endif - -/* True if __builtin_add_overflow_p (A, B, C) works, and similarly for - __builtin_sub_overflow_p and __builtin_mul_overflow_p. */ -#if defined __clang__ || defined __ICC -/* Clang 11 lacks __builtin_mul_overflow_p, and even if it did it - would presumably run afoul of Clang bug 16404. ICC 2021.1's - __builtin_add_overflow_p etc. are not treated as integral constant - expressions even when all arguments are. */ -# define _GL_HAS_BUILTIN_OVERFLOW_P 0 -#elif defined __has_builtin -# define _GL_HAS_BUILTIN_OVERFLOW_P __has_builtin (__builtin_mul_overflow_p) -#else -# define _GL_HAS_BUILTIN_OVERFLOW_P (7 <= __GNUC__) -#endif - /* The _GL*_OVERFLOW macros have the same restrictions as the *_RANGE_OVERFLOW macros, except that they do not assume that operands (e.g., A and B) have the same type as MIN and MAX. Instead, they assume @@ -348,13 +256,18 @@ Because the WRAPV macros convert the result, they report overflow in different circumstances than the OVERFLOW macros do. For example, in the typical case with 16-bit 'short' and 32-bit 'int', - if A, B and R are all of type 'short' then INT_ADD_OVERFLOW (A, B) + if A, B and *R are all of type 'short' then INT_ADD_OVERFLOW (A, B) returns false because the addition cannot overflow after A and B - are converted to 'int', whereas INT_ADD_WRAPV (A, B, &R) returns + are converted to 'int', whereas INT_ADD_WRAPV (A, B, R) returns true or false depending on whether the sum fits into 'short'. These macros are tuned for their last input argument being a constant. + A, B, and *R should be integers; they need not be the same type, + and they need not be all signed or all unsigned. + However, none of the integer types should be bit-precise, + and *R's type should not be char, bool, or an enumeration type. + Return 1 if the integer expressions A * B, A - B, -A, A * B, A / B, A % B, and A << B would overflow, respectively. */ @@ -362,12 +275,7 @@ _GL_BINARY_OP_OVERFLOW (a, b, _GL_ADD_OVERFLOW) #define INT_SUBTRACT_OVERFLOW(a, b) \ _GL_BINARY_OP_OVERFLOW (a, b, _GL_SUBTRACT_OVERFLOW) -#if _GL_HAS_BUILTIN_OVERFLOW_P -# define INT_NEGATE_OVERFLOW(a) INT_SUBTRACT_OVERFLOW (0, a) -#else -# define INT_NEGATE_OVERFLOW(a) \ - INT_NEGATE_RANGE_OVERFLOW (a, _GL_INT_MINIMUM (a), _GL_INT_MAXIMUM (a)) -#endif +#define INT_NEGATE_OVERFLOW(a) _GL_INT_NEGATE_OVERFLOW (a) #define INT_MULTIPLY_OVERFLOW(a, b) \ _GL_BINARY_OP_OVERFLOW (a, b, _GL_MULTIPLY_OVERFLOW) #define INT_DIVIDE_OVERFLOW(a, b) \ @@ -389,224 +297,9 @@ /* Store the low-order bits of A + B, A - B, A * B, respectively, into *R. Return 1 if the result overflows. See above for restrictions. */ -#if _GL_HAS_BUILTIN_ADD_OVERFLOW -# define INT_ADD_WRAPV(a, b, r) __builtin_add_overflow (a, b, r) -# define INT_SUBTRACT_WRAPV(a, b, r) __builtin_sub_overflow (a, b, r) -#else -# define INT_ADD_WRAPV(a, b, r) \ - _GL_INT_OP_WRAPV (a, b, r, +, _GL_INT_ADD_RANGE_OVERFLOW) -# define INT_SUBTRACT_WRAPV(a, b, r) \ - _GL_INT_OP_WRAPV (a, b, r, -, _GL_INT_SUBTRACT_RANGE_OVERFLOW) -#endif -#if _GL_HAS_BUILTIN_MUL_OVERFLOW -# if ((9 < __GNUC__ + (3 <= __GNUC_MINOR__) \ - || (__GNUC__ == 8 && 4 <= __GNUC_MINOR__)) \ - && !defined __ICC) -# define INT_MULTIPLY_WRAPV(a, b, r) __builtin_mul_overflow (a, b, r) -# else - /* Work around GCC bug 91450. */ -# define INT_MULTIPLY_WRAPV(a, b, r) \ - ((!_GL_SIGNED_TYPE_OR_EXPR (*(r)) && EXPR_SIGNED (a) && EXPR_SIGNED (b) \ - && _GL_INT_MULTIPLY_RANGE_OVERFLOW (a, b, 0, (__typeof__ (*(r))) -1)) \ - ? ((void) __builtin_mul_overflow (a, b, r), 1) \ - : __builtin_mul_overflow (a, b, r)) -# endif -#else -# define INT_MULTIPLY_WRAPV(a, b, r) \ - _GL_INT_OP_WRAPV (a, b, r, *, _GL_INT_MULTIPLY_RANGE_OVERFLOW) -#endif - -/* Nonzero if this compiler has GCC bug 68193 or Clang bug 25390. See: - https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68193 - https://llvm.org/bugs/show_bug.cgi?id=25390 - For now, assume all versions of GCC-like compilers generate bogus - warnings for _Generic. This matters only for compilers that - lack relevant builtins. */ -#if __GNUC__ || defined __clang__ -# define _GL__GENERIC_BOGUS 1 -#else -# define _GL__GENERIC_BOGUS 0 -#endif - -/* Store the low-order bits of A B into *R, where OP specifies - the operation and OVERFLOW the overflow predicate. Return 1 if the - result overflows. See above for restrictions. */ -#if 201112 <= __STDC_VERSION__ && !_GL__GENERIC_BOGUS -# define _GL_INT_OP_WRAPV(a, b, r, op, overflow) \ - (_Generic \ - (*(r), \ - signed char: \ - _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \ - signed char, SCHAR_MIN, SCHAR_MAX), \ - unsigned char: \ - _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \ - unsigned char, 0, UCHAR_MAX), \ - short int: \ - _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \ - short int, SHRT_MIN, SHRT_MAX), \ - unsigned short int: \ - _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \ - unsigned short int, 0, USHRT_MAX), \ - int: \ - _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \ - int, INT_MIN, INT_MAX), \ - unsigned int: \ - _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \ - unsigned int, 0, UINT_MAX), \ - long int: \ - _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long int, \ - long int, LONG_MIN, LONG_MAX), \ - unsigned long int: \ - _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long int, \ - unsigned long int, 0, ULONG_MAX), \ - long long int: \ - _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long long int, \ - long long int, LLONG_MIN, LLONG_MAX), \ - unsigned long long int: \ - _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long long int, \ - unsigned long long int, 0, ULLONG_MAX))) -#else -/* Store the low-order bits of A B into *R, where OP specifies - the operation and OVERFLOW the overflow predicate. If *R is - signed, its type is ST with bounds SMIN..SMAX; otherwise its type - is UT with bounds U..UMAX. ST and UT are narrower than int. - Return 1 if the result overflows. See above for restrictions. */ -# if _GL_HAVE___TYPEOF__ -# define _GL_INT_OP_WRAPV_SMALLISH(a,b,r,op,overflow,st,smin,smax,ut,umax) \ - (TYPE_SIGNED (__typeof__ (*(r))) \ - ? _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, st, smin, smax) \ - : _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, ut, 0, umax)) -# else -# define _GL_INT_OP_WRAPV_SMALLISH(a,b,r,op,overflow,st,smin,smax,ut,umax) \ - (overflow (a, b, smin, smax) \ - ? (overflow (a, b, 0, umax) \ - ? (*(r) = _GL_INT_OP_WRAPV_VIA_UNSIGNED (a,b,op,unsigned,st), 1) \ - : (*(r) = _GL_INT_OP_WRAPV_VIA_UNSIGNED (a,b,op,unsigned,st)) < 0) \ - : (overflow (a, b, 0, umax) \ - ? (*(r) = _GL_INT_OP_WRAPV_VIA_UNSIGNED (a,b,op,unsigned,st)) >= 0 \ - : (*(r) = _GL_INT_OP_WRAPV_VIA_UNSIGNED (a,b,op,unsigned,st), 0))) -# endif - -# define _GL_INT_OP_WRAPV(a, b, r, op, overflow) \ - (sizeof *(r) == sizeof (signed char) \ - ? _GL_INT_OP_WRAPV_SMALLISH (a, b, r, op, overflow, \ - signed char, SCHAR_MIN, SCHAR_MAX, \ - unsigned char, UCHAR_MAX) \ - : sizeof *(r) == sizeof (short int) \ - ? _GL_INT_OP_WRAPV_SMALLISH (a, b, r, op, overflow, \ - short int, SHRT_MIN, SHRT_MAX, \ - unsigned short int, USHRT_MAX) \ - : sizeof *(r) == sizeof (int) \ - ? (EXPR_SIGNED (*(r)) \ - ? _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \ - int, INT_MIN, INT_MAX) \ - : _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \ - unsigned int, 0, UINT_MAX)) \ - : _GL_INT_OP_WRAPV_LONGISH(a, b, r, op, overflow)) -# ifdef LLONG_MAX -# define _GL_INT_OP_WRAPV_LONGISH(a, b, r, op, overflow) \ - (sizeof *(r) == sizeof (long int) \ - ? (EXPR_SIGNED (*(r)) \ - ? _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long int, \ - long int, LONG_MIN, LONG_MAX) \ - : _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long int, \ - unsigned long int, 0, ULONG_MAX)) \ - : (EXPR_SIGNED (*(r)) \ - ? _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long long int, \ - long long int, LLONG_MIN, LLONG_MAX) \ - : _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long long int, \ - unsigned long long int, 0, ULLONG_MAX))) -# else -# define _GL_INT_OP_WRAPV_LONGISH(a, b, r, op, overflow) \ - (EXPR_SIGNED (*(r)) \ - ? _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long int, \ - long int, LONG_MIN, LONG_MAX) \ - : _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long int, \ - unsigned long int, 0, ULONG_MAX)) -# endif -#endif - -/* Store the low-order bits of A B into *R, where the operation - is given by OP. Use the unsigned type UT for calculation to avoid - overflow problems. *R's type is T, with extrema TMIN and TMAX. - T must be a signed integer type. Return 1 if the result overflows. */ -#define _GL_INT_OP_CALC(a, b, r, op, overflow, ut, t, tmin, tmax) \ - (overflow (a, b, tmin, tmax) \ - ? (*(r) = _GL_INT_OP_WRAPV_VIA_UNSIGNED (a, b, op, ut, t), 1) \ - : (*(r) = _GL_INT_OP_WRAPV_VIA_UNSIGNED (a, b, op, ut, t), 0)) - -/* Return the low-order bits of A B, where the operation is given - by OP. Use the unsigned type UT for calculation to avoid undefined - behavior on signed integer overflow, and convert the result to type T. - UT is at least as wide as T and is no narrower than unsigned int, - T is two's complement, and there is no padding or trap representations. - Assume that converting UT to T yields the low-order bits, as is - done in all known two's-complement C compilers. E.g., see: - https://gcc.gnu.org/onlinedocs/gcc/Integers-implementation.html - - According to the C standard, converting UT to T yields an - implementation-defined result or signal for values outside T's - range. However, code that works around this theoretical problem - runs afoul of a compiler bug in Oracle Studio 12.3 x86. See: - https://lists.gnu.org/r/bug-gnulib/2017-04/msg00049.html - As the compiler bug is real, don't try to work around the - theoretical problem. */ - -#define _GL_INT_OP_WRAPV_VIA_UNSIGNED(a, b, op, ut, t) \ - ((t) ((ut) (a) op (ut) (b))) - -/* Return true if the numeric values A + B, A - B, A * B fall outside - the range TMIN..TMAX. Arguments should be integer expressions - without side effects. TMIN should be signed and nonpositive. - TMAX should be positive, and should be signed unless TMIN is zero. */ -#define _GL_INT_ADD_RANGE_OVERFLOW(a, b, tmin, tmax) \ - ((b) < 0 \ - ? (((tmin) \ - ? ((EXPR_SIGNED (_GL_INT_CONVERT (a, (tmin) - (b))) || (b) < (tmin)) \ - && (a) < (tmin) - (b)) \ - : (a) <= -1 - (b)) \ - || ((EXPR_SIGNED (a) ? 0 <= (a) : (tmax) < (a)) && (tmax) < (a) + (b))) \ - : (a) < 0 \ - ? (((tmin) \ - ? ((EXPR_SIGNED (_GL_INT_CONVERT (b, (tmin) - (a))) || (a) < (tmin)) \ - && (b) < (tmin) - (a)) \ - : (b) <= -1 - (a)) \ - || ((EXPR_SIGNED (_GL_INT_CONVERT (a, b)) || (tmax) < (b)) \ - && (tmax) < (a) + (b))) \ - : (tmax) < (b) || (tmax) - (b) < (a)) -#define _GL_INT_SUBTRACT_RANGE_OVERFLOW(a, b, tmin, tmax) \ - (((a) < 0) == ((b) < 0) \ - ? ((a) < (b) \ - ? !(tmin) || -1 - (tmin) < (b) - (a) - 1 \ - : (tmax) < (a) - (b)) \ - : (a) < 0 \ - ? ((!EXPR_SIGNED (_GL_INT_CONVERT ((a) - (tmin), b)) && (a) - (tmin) < 0) \ - || (a) - (tmin) < (b)) \ - : ((! (EXPR_SIGNED (_GL_INT_CONVERT (tmax, b)) \ - && EXPR_SIGNED (_GL_INT_CONVERT ((tmax) + (b), a))) \ - && (tmax) <= -1 - (b)) \ - || (tmax) + (b) < (a))) -#define _GL_INT_MULTIPLY_RANGE_OVERFLOW(a, b, tmin, tmax) \ - ((b) < 0 \ - ? ((a) < 0 \ - ? (EXPR_SIGNED (_GL_INT_CONVERT (tmax, b)) \ - ? (a) < (tmax) / (b) \ - : ((INT_NEGATE_OVERFLOW (b) \ - ? _GL_INT_CONVERT (b, tmax) >> (TYPE_WIDTH (+ (b)) - 1) \ - : (tmax) / -(b)) \ - <= -1 - (a))) \ - : INT_NEGATE_OVERFLOW (_GL_INT_CONVERT (b, tmin)) && (b) == -1 \ - ? (EXPR_SIGNED (a) \ - ? 0 < (a) + (tmin) \ - : 0 < (a) && -1 - (tmin) < (a) - 1) \ - : (tmin) / (b) < (a)) \ - : (b) == 0 \ - ? 0 \ - : ((a) < 0 \ - ? (INT_NEGATE_OVERFLOW (_GL_INT_CONVERT (a, tmin)) && (a) == -1 \ - ? (EXPR_SIGNED (b) ? 0 < (b) + (tmin) : -1 - (tmin) < (b) - 1) \ - : (tmin) / (a) < (b)) \ - : (tmax) / (b) < (a))) +#define INT_ADD_WRAPV(a, b, r) _GL_INT_ADD_WRAPV (a, b, r) +#define INT_SUBTRACT_WRAPV(a, b, r) _GL_INT_SUBTRACT_WRAPV (a, b, r) +#define INT_MULTIPLY_WRAPV(a, b, r) _GL_INT_MULTIPLY_WRAPV (a, b, r) /* The following macros compute A + B, A - B, and A * B, respectively. If no overflow occurs, they set *R to the result and return 1; @@ -622,6 +315,8 @@ A, B, and *R should be integers; they need not be the same type, and they need not be all signed or all unsigned. + However, none of the integer types should be bit-precise, + and *R's type should not be char, bool, or an enumeration type. These macros work correctly on all known practical hosts, and do not rely on undefined behavior due to signed arithmetic overflow. @@ -633,8 +328,8 @@ These macros are tuned for B being a constant. */ -#define INT_ADD_OK(a, b, r) ! INT_ADD_WRAPV (a, b, r) -#define INT_SUBTRACT_OK(a, b, r) ! INT_SUBTRACT_WRAPV (a, b, r) -#define INT_MULTIPLY_OK(a, b, r) ! INT_MULTIPLY_WRAPV (a, b, r) +#define INT_ADD_OK(a, b, r) (! INT_ADD_WRAPV (a, b, r)) +#define INT_SUBTRACT_OK(a, b, r) (! INT_SUBTRACT_WRAPV (a, b, r)) +#define INT_MULTIPLY_OK(a, b, r) (! INT_MULTIPLY_WRAPV (a, b, r)) #endif /* _GL_INTPROPS_H */ diff --git a/lib/inttostr.c b/lib/inttostr.c index 2fafd1c..2999153 100644 --- a/lib/inttostr.c +++ b/lib/inttostr.c @@ -1,6 +1,6 @@ /* Convert 'int' integer to printable string. - Copyright (C) 2004-2021 Free Software Foundation, Inc. + Copyright (C) 2004-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/inttostr.h b/lib/inttostr.h index db1f8fa..7e653f2 100644 --- a/lib/inttostr.h +++ b/lib/inttostr.h @@ -1,6 +1,6 @@ /* inttostr.h -- convert integers to printable strings - Copyright (C) 2001-2006, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2001-2006, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -17,6 +17,11 @@ /* Written by Paul Eggert */ +/* This file uses _GL_ATTRIBUTE_NODISCARD. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + #include #include diff --git a/lib/inttypes.in.h b/lib/inttypes.in.h index 41cb422..2264387 100644 --- a/lib/inttypes.in.h +++ b/lib/inttypes.in.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2006-2021 Free Software Foundation, Inc. +/* Copyright (C) 2006-2023 Free Software Foundation, Inc. Written by Paul Eggert, Bruno Haible, Derek Price. This file is part of gnulib. @@ -46,6 +46,11 @@ #if ! defined INTTYPES_H && ! defined _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H #define INTTYPES_H +/* This file uses GNULIB_POSIXCHECK, HAVE_RAW_DECL_*. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + /* Include or the gnulib replacement. But avoid namespace pollution on glibc systems. */ #ifndef __GLIBC__ @@ -903,8 +908,21 @@ extern "C" { #endif #if @GNULIB_IMAXABS@ -# if !@HAVE_DECL_IMAXABS@ -extern intmax_t imaxabs (intmax_t); +# if @REPLACE_IMAXABS@ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef imaxabs +# define imaxabs rpl_imaxabs +# endif +_GL_FUNCDECL_RPL (imaxabs, intmax_t, (intmax_t x)); +_GL_CXXALIAS_RPL (imaxabs, intmax_t, (intmax_t x)); +# else +# if !@HAVE_DECL_IMAXABS@ +_GL_FUNCDECL_SYS (imaxabs, intmax_t, (intmax_t x)); +# endif +_GL_CXXALIAS_SYS (imaxabs, intmax_t, (intmax_t x)); +# endif +# if __GLIBC__ >= 2 +_GL_CXXALIASWARN (imaxabs); # endif #elif defined GNULIB_POSIXCHECK # undef imaxabs @@ -921,8 +939,21 @@ typedef struct { intmax_t quot; intmax_t rem; } imaxdiv_t; # define GNULIB_defined_imaxdiv_t 1 # endif # endif -# if !@HAVE_DECL_IMAXDIV@ -extern imaxdiv_t imaxdiv (intmax_t, intmax_t); +# if @REPLACE_IMAXDIV@ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef imaxdiv +# define imaxdiv rpl_imaxdiv +# endif +_GL_FUNCDECL_RPL (imaxdiv, imaxdiv_t, (intmax_t numer, intmax_t denom)); +_GL_CXXALIAS_RPL (imaxdiv, imaxdiv_t, (intmax_t numer, intmax_t denom)); +# else +# if !@HAVE_DECL_IMAXDIV@ +_GL_FUNCDECL_SYS (imaxdiv, imaxdiv_t, (intmax_t numer, intmax_t denom)); +# endif +_GL_CXXALIAS_SYS (imaxdiv, imaxdiv_t, (intmax_t numer, intmax_t denom)); +# endif +# if __GLIBC__ >= 2 +_GL_CXXALIASWARN (imaxdiv); # endif #elif defined GNULIB_POSIXCHECK # undef imaxdiv diff --git a/lib/isblank.c b/lib/isblank.c index 8984f37..8aad6af 100644 --- a/lib/isblank.c +++ b/lib/isblank.c @@ -1,6 +1,6 @@ /* Test whether a character is a blank. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/iswblank.c b/lib/iswblank.c index 55628ec..5540f1f 100644 --- a/lib/iswblank.c +++ b/lib/iswblank.c @@ -1,5 +1,5 @@ /* Test wide character for being blank. - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/iswdigit.c b/lib/iswdigit.c index 8ec9a6e..94db274 100644 --- a/lib/iswdigit.c +++ b/lib/iswdigit.c @@ -1,5 +1,5 @@ /* Test wide character for being a digit. - Copyright (C) 2020-2021 Free Software Foundation, Inc. + Copyright (C) 2020-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/iswxdigit.c b/lib/iswxdigit.c index fcdcdba..7ec4566 100644 --- a/lib/iswxdigit.c +++ b/lib/iswxdigit.c @@ -1,5 +1,5 @@ /* Test wide character for being a hexadecimal digit. - Copyright (C) 2020-2021 Free Software Foundation, Inc. + Copyright (C) 2020-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/langinfo.in.h b/lib/langinfo.in.h index 4873899..4cf712e 100644 --- a/lib/langinfo.in.h +++ b/lib/langinfo.in.h @@ -1,5 +1,5 @@ /* Substitute for and wrapper around . - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -34,6 +34,11 @@ #ifndef _@GUARD_PREFIX@_LANGINFO_H #define _@GUARD_PREFIX@_LANGINFO_H +/* This file uses GNULIB_POSIXCHECK, HAVE_RAW_DECL_*. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + #if !@HAVE_LANGINFO_H@ @@ -208,7 +213,9 @@ _GL_FUNCDECL_SYS (nl_langinfo, char *, (nl_item item)); # endif _GL_CXXALIAS_SYS (nl_langinfo, char *, (nl_item item)); # endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (nl_langinfo); +# endif #elif defined GNULIB_POSIXCHECK # undef nl_langinfo # if HAVE_RAW_DECL_NL_LANGINFO diff --git a/lib/lc-charset-dispatch.c b/lib/lc-charset-dispatch.c index 88a0bd3..cd74466 100644 --- a/lib/lc-charset-dispatch.c +++ b/lib/lc-charset-dispatch.c @@ -1,5 +1,5 @@ /* Dispatching based on the current locale's character encoding. - Copyright (C) 2018-2021 Free Software Foundation, Inc. + Copyright (C) 2018-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/lc-charset-dispatch.h b/lib/lc-charset-dispatch.h index 59b485d..c82b6a6 100644 --- a/lib/lc-charset-dispatch.h +++ b/lib/lc-charset-dispatch.h @@ -1,5 +1,5 @@ /* Dispatching based on the current locale's character encoding. - Copyright (C) 2018-2021 Free Software Foundation, Inc. + Copyright (C) 2018-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/libc-config.h b/lib/libc-config.h index f68749f..5f5ad01 100644 --- a/lib/libc-config.h +++ b/lib/libc-config.h @@ -1,6 +1,6 @@ /* System definitions for code taken from the GNU C Library - Copyright 2017-2021 Free Software Foundation, Inc. + Copyright 2017-2023 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public @@ -117,7 +117,11 @@ # undef __THROW # undef __THROWNL # undef __attr_access +# undef __attr_access_none +# undef __attr_dealloc +# undef __attr_dealloc_free # undef __attribute__ +# undef __attribute_alloc_align__ # undef __attribute_alloc_size__ # undef __attribute_artificial__ # undef __attribute_const__ @@ -126,28 +130,27 @@ # undef __attribute_format_arg__ # undef __attribute_format_strfmon__ # undef __attribute_malloc__ +# undef __attribute_maybe_unused__ # undef __attribute_noinline__ # undef __attribute_nonstring__ # undef __attribute_pure__ # undef __attribute_returns_twice__ # undef __attribute_used__ # undef __attribute_warn_unused_result__ -# undef __bos -# undef __bos0 # undef __errordecl # undef __extension__ # undef __extern_always_inline # undef __extern_inline # undef __flexarr +# undef __fortified_attr_access # undef __fortify_function # undef __glibc_c99_flexarr_available # undef __glibc_has_attribute # undef __glibc_has_builtin # undef __glibc_has_extension +# undef __glibc_likely # undef __glibc_macro_warning # undef __glibc_macro_warning1 -# undef __glibc_objsize -# undef __glibc_objsize0 # undef __glibc_unlikely # undef __inline # undef __ptr_t @@ -156,6 +159,19 @@ # undef __va_arg_pack # undef __va_arg_pack_len # undef __warnattr +# undef __wur +# ifndef __GNULIB_CDEFS +# undef __bos +# undef __bos0 +# undef __glibc_fortify +# undef __glibc_fortify_n +# undef __glibc_objsize +# undef __glibc_objsize0 +# undef __glibc_safe_len_cond +# undef __glibc_safe_or_unknown_len +# undef __glibc_unsafe_len +# undef __glibc_unsigned_or_positive +# endif /* Include our copy of glibc . */ # include diff --git a/lib/limits.in.h b/lib/limits.in.h index 2ecafeb..1d479c3 100644 --- a/lib/limits.in.h +++ b/lib/limits.in.h @@ -1,6 +1,6 @@ /* A GNU-like . - Copyright 2016-2021 Free Software Foundation, Inc. + Copyright 2016-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -99,7 +99,12 @@ # endif #endif -/* Macros specified by C2x and by ISO/IEC TS 18661-1:2014. */ +/* Assume no multibyte character is longer than 16 bytes. */ +#ifndef MB_LEN_MAX +# define MB_LEN_MAX 16 +#endif + +/* Macros specified by C23 and by ISO/IEC TS 18661-1:2014. */ #if (! defined ULLONG_WIDTH \ && (defined _GNU_SOURCE || defined __STDC_WANT_IEC_60559_BFP_EXT__ \ @@ -117,13 +122,28 @@ # define ULLONG_WIDTH _GL_INTEGER_WIDTH (0, ULLONG_MAX) #endif -/* Macros specified by C2x. */ +/* Macros specified by C23. */ -#if (! defined BOOL_WIDTH \ - && (defined _GNU_SOURCE \ - || (defined __STDC_VERSION__ && 201710 < __STDC_VERSION__))) -# define BOOL_MAX 1 -# define BOOL_WIDTH 1 +#if (defined _GNU_SOURCE \ + || (defined __STDC_VERSION__ && 201710 < __STDC_VERSION__)) +# if ! defined BOOL_WIDTH +# define BOOL_WIDTH 1 +# define BOOL_MAX 1 +# elif ! defined BOOL_MAX +# define BOOL_MAX ((((1U << (BOOL_WIDTH - 1)) - 1) << 1) + 1) +# endif +#endif + +/* Macro specified by POSIX. */ + +/* The maximal size_t value. Although it might not be of ssize_t type + as it should be, it's too much trouble to fix this minor detail. */ +#ifndef SSIZE_MAX +# ifdef _WIN64 +# define SSIZE_MAX LLONG_MAX +# else +# define SSIZE_MAX LONG_MAX +# endif #endif #endif /* _@GUARD_PREFIX@_LIMITS_H */ diff --git a/lib/localcharset.c b/lib/localcharset.c index 3c50858..7ed9c95 100644 --- a/lib/localcharset.c +++ b/lib/localcharset.c @@ -1,6 +1,6 @@ /* Determine a canonical name for the current locale's character encoding. - Copyright (C) 2000-2006, 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2000-2006, 2008-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/localcharset.h b/lib/localcharset.h index 0ff4954..29ee8dc 100644 --- a/lib/localcharset.h +++ b/lib/localcharset.h @@ -1,5 +1,5 @@ /* Determine a canonical name for the current locale's character encoding. - Copyright (C) 2000-2003, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2000-2003, 2009-2023 Free Software Foundation, Inc. This file is part of the GNU CHARSET Library. This file is free software: you can redistribute it and/or modify diff --git a/lib/locale.in.h b/lib/locale.in.h index 1063070..41a93c1 100644 --- a/lib/locale.in.h +++ b/lib/locale.in.h @@ -1,5 +1,5 @@ /* A POSIX . - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -44,6 +44,11 @@ #ifndef _@GUARD_PREFIX@_LOCALE_H #define _@GUARD_PREFIX@_LOCALE_H +/* This file uses GNULIB_POSIXCHECK, HAVE_RAW_DECL_*. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + /* NetBSD 5.0 mis-defines NULL. */ #include @@ -229,7 +234,7 @@ _GL_CXXALIAS_SYS (newlocale, locale_t, (int category_mask, const char *name, locale_t base)); # endif # endif -# if @HAVE_NEWLOCALE@ +# if __GLIBC__ >= 2 && @HAVE_NEWLOCALE@ _GL_CXXALIASWARN (newlocale); # endif # if @HAVE_NEWLOCALE@ || @REPLACE_NEWLOCALE@ @@ -245,23 +250,23 @@ _GL_WARN_ON_USE (newlocale, "newlocale is not portable"); #endif #if @GNULIB_DUPLOCALE@ || (@GNULIB_LOCALENAME@ && @LOCALENAME_ENHANCE_LOCALE_FUNCS@ && @HAVE_DUPLOCALE@) -# if @REPLACE_DUPLOCALE@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef duplocale -# define duplocale rpl_duplocale -# define GNULIB_defined_duplocale 1 -# endif +# if @HAVE_DUPLOCALE@ /* locale_t may be undefined if !@HAVE_DUPLOCALE@. */ +# if @REPLACE_DUPLOCALE@ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef duplocale +# define duplocale rpl_duplocale +# define GNULIB_defined_duplocale 1 +# endif _GL_FUNCDECL_RPL (duplocale, locale_t, (locale_t locale) _GL_ARG_NONNULL ((1))); _GL_CXXALIAS_RPL (duplocale, locale_t, (locale_t locale)); -# else -# if @HAVE_DUPLOCALE@ +# else _GL_CXXALIAS_SYS (duplocale, locale_t, (locale_t locale)); # endif # endif -# if @HAVE_DUPLOCALE@ +# if __GLIBC__ >= 2 && @HAVE_DUPLOCALE@ _GL_CXXALIASWARN (duplocale); # endif -# if @HAVE_DUPLOCALE@ || @REPLACE_DUPLOCALE@ +# if @HAVE_DUPLOCALE@ # ifndef HAVE_WORKING_DUPLOCALE # define HAVE_WORKING_DUPLOCALE 1 # endif @@ -290,7 +295,7 @@ _GL_CXXALIAS_RPL (freelocale, void, (locale_t locale)); _GL_CXXALIAS_SYS_CAST (freelocale, void, (locale_t locale)); # endif # endif -# if @HAVE_FREELOCALE@ +# if __GLIBC__ >= 2 && @HAVE_FREELOCALE@ _GL_CXXALIASWARN (freelocale); # endif #elif defined GNULIB_POSIXCHECK diff --git a/lib/localeconv.c b/lib/localeconv.c index 25e95a1..c1a34ba 100644 --- a/lib/localeconv.c +++ b/lib/localeconv.c @@ -1,5 +1,5 @@ /* Query locale dependent information for formatting numbers. - Copyright (C) 2012-2021 Free Software Foundation, Inc. + Copyright (C) 2012-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -19,10 +19,14 @@ /* Specification. */ #include +#include + #if HAVE_STRUCT_LCONV_DECIMAL_POINT +# define FIX_CHAR_VALUE(x) ((x) >= 0 ? (x) : CHAR_MAX) + /* Override for platforms where 'struct lconv' lacks the int_p_*, int_n_* - members. */ + members or where fields of type 'char' are set to -1 instead of CHAR_MAX. */ struct lconv * localeconv (void) @@ -41,21 +45,30 @@ localeconv (void) result.positive_sign = sys_result->positive_sign; result.negative_sign = sys_result->negative_sign; result.currency_symbol = sys_result->currency_symbol; - result.frac_digits = sys_result->frac_digits; - result.p_cs_precedes = sys_result->p_cs_precedes; - result.p_sign_posn = sys_result->p_sign_posn; - result.p_sep_by_space = sys_result->p_sep_by_space; - result.n_cs_precedes = sys_result->n_cs_precedes; - result.n_sign_posn = sys_result->n_sign_posn; - result.n_sep_by_space = sys_result->n_sep_by_space; + result.frac_digits = FIX_CHAR_VALUE (sys_result->frac_digits); + result.p_cs_precedes = FIX_CHAR_VALUE (sys_result->p_cs_precedes); + result.p_sign_posn = FIX_CHAR_VALUE (sys_result->p_sign_posn); + result.p_sep_by_space = FIX_CHAR_VALUE (sys_result->p_sep_by_space); + result.n_cs_precedes = FIX_CHAR_VALUE (sys_result->n_cs_precedes); + result.n_sign_posn = FIX_CHAR_VALUE (sys_result->n_sign_posn); + result.n_sep_by_space = FIX_CHAR_VALUE (sys_result->n_sep_by_space); result.int_curr_symbol = sys_result->int_curr_symbol; - result.int_frac_digits = sys_result->int_frac_digits; - result.int_p_cs_precedes = sys_result->p_cs_precedes; - result.int_p_sign_posn = sys_result->p_sign_posn; - result.int_p_sep_by_space = sys_result->p_sep_by_space; - result.int_n_cs_precedes = sys_result->n_cs_precedes; - result.int_n_sign_posn = sys_result->n_sign_posn; - result.int_n_sep_by_space = sys_result->n_sep_by_space; + result.int_frac_digits = FIX_CHAR_VALUE (sys_result->int_frac_digits); +# if HAVE_STRUCT_LCONV_INT_P_CS_PRECEDES + result.int_p_cs_precedes = FIX_CHAR_VALUE (sys_result->int_p_cs_precedes); + result.int_p_sign_posn = FIX_CHAR_VALUE (sys_result->int_p_sign_posn); + result.int_p_sep_by_space = FIX_CHAR_VALUE (sys_result->int_p_sep_by_space); + result.int_n_cs_precedes = FIX_CHAR_VALUE (sys_result->int_n_cs_precedes); + result.int_n_sign_posn = FIX_CHAR_VALUE (sys_result->int_n_sign_posn); + result.int_n_sep_by_space = FIX_CHAR_VALUE (sys_result->int_n_sep_by_space); +# else + result.int_p_cs_precedes = FIX_CHAR_VALUE (sys_result->p_cs_precedes); + result.int_p_sign_posn = FIX_CHAR_VALUE (sys_result->p_sign_posn); + result.int_p_sep_by_space = FIX_CHAR_VALUE (sys_result->p_sep_by_space); + result.int_n_cs_precedes = FIX_CHAR_VALUE (sys_result->n_cs_precedes); + result.int_n_sign_posn = FIX_CHAR_VALUE (sys_result->n_sign_posn); + result.int_n_sep_by_space = FIX_CHAR_VALUE (sys_result->n_sep_by_space); +# endif return &result; } @@ -64,8 +77,6 @@ localeconv (void) /* Override for platforms where 'struct lconv' is a dummy. */ -# include - struct lconv * localeconv (void) { diff --git a/lib/lstat.c b/lib/lstat.c index 7de0bf1..00a4ce2 100644 --- a/lib/lstat.c +++ b/lib/lstat.c @@ -1,6 +1,6 @@ /* Work around a bug of lstat on some systems - Copyright (C) 1997-2006, 2008-2021 Free Software Foundation, Inc. + Copyright (C) 1997-2006, 2008-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/malloc.c b/lib/malloc.c index 0d8b359..3ade35c 100644 --- a/lib/malloc.c +++ b/lib/malloc.c @@ -1,6 +1,6 @@ /* malloc() function that is glibc compatible. - Copyright (C) 1997-1998, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 1997-1998, 2006-2007, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/malloc/dynarray-skeleton.c b/lib/malloc/dynarray-skeleton.c index 48210e3..580c278 100644 --- a/lib/malloc/dynarray-skeleton.c +++ b/lib/malloc/dynarray-skeleton.c @@ -1,5 +1,5 @@ /* Type-safe arrays which grow dynamically. - Copyright (C) 2017-2021 Free Software Foundation, Inc. + Copyright (C) 2017-2023 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/malloc/dynarray.h b/lib/malloc/dynarray.h index 638c33f..a9a3b08 100644 --- a/lib/malloc/dynarray.h +++ b/lib/malloc/dynarray.h @@ -1,5 +1,5 @@ /* Type-safe arrays which grow dynamically. Shared definitions. - Copyright (C) 2017-2021 Free Software Foundation, Inc. + Copyright (C) 2017-2023 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -94,7 +94,6 @@ #ifndef _DYNARRAY_H #define _DYNARRAY_H -#include #include #include diff --git a/lib/malloc/dynarray_at_failure.c b/lib/malloc/dynarray_at_failure.c index 4f840db..ebc9310 100644 --- a/lib/malloc/dynarray_at_failure.c +++ b/lib/malloc/dynarray_at_failure.c @@ -1,5 +1,5 @@ /* Report an dynamic array index out of bounds condition. - Copyright (C) 2017-2021 Free Software Foundation, Inc. + Copyright (C) 2017-2023 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -18,11 +18,11 @@ #ifndef _LIBC # include +# include #endif #include #include -#include void __libc_dynarray_at_failure (size_t size, size_t index) @@ -32,6 +32,7 @@ __libc_dynarray_at_failure (size_t size, size_t index) __snprintf (buf, sizeof (buf), "Fatal glibc error: " "array index %zu not less than array length %zu\n", index, size); + __libc_fatal (buf); #else abort (); #endif diff --git a/lib/malloc/dynarray_emplace_enlarge.c b/lib/malloc/dynarray_emplace_enlarge.c index 0f8baf9..65aabb1 100644 --- a/lib/malloc/dynarray_emplace_enlarge.c +++ b/lib/malloc/dynarray_emplace_enlarge.c @@ -1,5 +1,5 @@ /* Increase the size of a dynamic array in preparation of an emplace operation. - Copyright (C) 2017-2021 Free Software Foundation, Inc. + Copyright (C) 2017-2023 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -22,7 +22,7 @@ #include #include -#include +#include #include #include @@ -56,7 +56,7 @@ __libc_dynarray_emplace_enlarge (struct dynarray_header *list, } size_t new_size; - if (INT_MULTIPLY_WRAPV (new_allocated, element_size, &new_size)) + if (ckd_mul (&new_size, new_allocated, element_size)) return false; void *new_array; if (list->array == scratch) diff --git a/lib/malloc/dynarray_finalize.c b/lib/malloc/dynarray_finalize.c index c33da41..673595a 100644 --- a/lib/malloc/dynarray_finalize.c +++ b/lib/malloc/dynarray_finalize.c @@ -1,5 +1,5 @@ /* Copy the dynamically-allocated area to an explicitly-sized heap allocation. - Copyright (C) 2017-2021 Free Software Foundation, Inc. + Copyright (C) 2017-2023 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/malloc/dynarray_resize.c b/lib/malloc/dynarray_resize.c index 5a57166..014f98c 100644 --- a/lib/malloc/dynarray_resize.c +++ b/lib/malloc/dynarray_resize.c @@ -1,5 +1,5 @@ /* Increase the size of a dynamic array. - Copyright (C) 2017-2021 Free Software Foundation, Inc. + Copyright (C) 2017-2023 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -22,7 +22,7 @@ #include #include -#include +#include #include #include @@ -42,7 +42,7 @@ __libc_dynarray_resize (struct dynarray_header *list, size_t size, over-allocation here. */ size_t new_size_bytes; - if (INT_MULTIPLY_WRAPV (size, element_size, &new_size_bytes)) + if (ckd_mul (&new_size_bytes, size, element_size)) { /* Overflow. */ __set_errno (ENOMEM); diff --git a/lib/malloc/dynarray_resize_clear.c b/lib/malloc/dynarray_resize_clear.c index 9c43b00..bb23c52 100644 --- a/lib/malloc/dynarray_resize_clear.c +++ b/lib/malloc/dynarray_resize_clear.c @@ -1,5 +1,5 @@ /* Increase the size of a dynamic array and clear the new part. - Copyright (C) 2017-2021 Free Software Foundation, Inc. + Copyright (C) 2017-2023 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/malloca.c b/lib/malloca.c index d7ad095..f055b1e 100644 --- a/lib/malloca.c +++ b/lib/malloca.c @@ -1,5 +1,5 @@ /* Safe automatic memory allocation. - Copyright (C) 2003, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2003, 2006-2007, 2009-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2003, 2018. This file is free software: you can redistribute it and/or modify @@ -21,9 +21,9 @@ /* Specification. */ #include "malloca.h" +#include + #include "idx.h" -#include "intprops.h" -#include "verify.h" /* The speed critical point in this file is freea() applied to an alloca() result: it must be fast, to match the speed of alloca(). The speed of @@ -39,7 +39,7 @@ /* Type for holding very small pointer differences. */ typedef unsigned char small_t; /* Verify that it is wide enough. */ -verify (2 * sa_alignment_max - 1 <= (small_t) -1); +static_assert (2 * sa_alignment_max - 1 <= (small_t) -1); void * mmalloca (size_t n) @@ -47,24 +47,29 @@ mmalloca (size_t n) #if HAVE_ALLOCA /* Allocate one more word, used to determine the address to pass to freea(), and room for the alignment ≡ sa_alignment_max mod 2*sa_alignment_max. */ - int plus = sizeof (small_t) + 2 * sa_alignment_max - 1; + uintptr_t alignment2_mask = 2 * sa_alignment_max - 1; + int plus = sizeof (small_t) + alignment2_mask; idx_t nplus; - if (!INT_ADD_WRAPV (n, plus, &nplus) && !xalloc_oversized (nplus, 1)) + if (!ckd_add (&nplus, n, plus) && !xalloc_oversized (nplus, 1)) { char *mem = (char *) malloc (nplus); if (mem != NULL) { - char *p = - (char *)((((uintptr_t)mem + sizeof (small_t) + sa_alignment_max - 1) - & ~(uintptr_t)(2 * sa_alignment_max - 1)) - + sa_alignment_max); + uintptr_t umem = (uintptr_t)mem, umemplus; + /* The ckd_add avoids signed integer overflow on + theoretical platforms where UINTPTR_MAX <= INT_MAX. */ + ckd_add (&umemplus, umem, sizeof (small_t) + sa_alignment_max - 1); + idx_t offset = ((umemplus & ~alignment2_mask) + + sa_alignment_max - umem); + void *vp = mem + offset; + small_t *p = vp; /* Here p >= mem + sizeof (small_t), and p <= mem + sizeof (small_t) + 2 * sa_alignment_max - 1 hence p + n <= mem + nplus. So, the memory range [p, p+n) lies in the allocated memory range [mem, mem + nplus). */ - ((small_t *) p)[-1] = p - mem; + p[-1] = offset; /* p ≡ sa_alignment_max mod 2*sa_alignment_max. */ return p; } diff --git a/lib/malloca.h b/lib/malloca.h index 6fa1d8b..f68ddfe 100644 --- a/lib/malloca.h +++ b/lib/malloca.h @@ -1,5 +1,5 @@ /* Safe automatic memory allocation. - Copyright (C) 2003-2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2003-2007, 2009-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2003. This file is free software: you can redistribute it and/or modify @@ -18,6 +18,12 @@ #ifndef _MALLOCA_H #define _MALLOCA_H +/* This file uses _GL_ATTRIBUTE_ALLOC_SIZE, _GL_ATTRIBUTE_DEALLOC, + _GL_ATTRIBUTE_MALLOC, HAVE_ALLOCA. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + #include #include #include @@ -51,6 +57,13 @@ extern "C" { # define safe_alloca(N) ((void) (N), NULL) #endif +/* Free a block of memory allocated through malloca(). */ +#if HAVE_ALLOCA +extern void freea (void *p); +#else +# define freea free +#endif + /* malloca(N) is a safe variant of alloca(N). It allocates N bytes of memory allocated on the stack, that must be freed using freea() before the function returns. Upon failure, it returns NULL. */ @@ -65,14 +78,9 @@ extern "C" { # define malloca(N) \ mmalloca (N) #endif -extern void * mmalloca (size_t n); - -/* Free a block of memory allocated through malloca(). */ -#if HAVE_ALLOCA -extern void freea (void *p); -#else -# define freea free -#endif +extern void *mmalloca (size_t n) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC (freea, 1) + _GL_ATTRIBUTE_ALLOC_SIZE ((1)); /* nmalloca(N,S) is an overflow-safe variant of malloca (N * S). It allocates an array of N objects, each with S bytes of memory, diff --git a/lib/mbchar.c b/lib/mbchar.c index a466257..7d5f72c 100644 --- a/lib/mbchar.c +++ b/lib/mbchar.c @@ -1,4 +1,4 @@ -/* Copyright (C) 2001, 2006, 2009-2021 Free Software Foundation, Inc. +/* Copyright (C) 2001, 2006, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/mbchar.h b/lib/mbchar.h index 704814a..a2ff1d8 100644 --- a/lib/mbchar.h +++ b/lib/mbchar.h @@ -1,5 +1,5 @@ /* Multibyte character data type. - Copyright (C) 2001, 2005-2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2001, 2005-2007, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -144,14 +144,15 @@ #ifndef _MBCHAR_H #define _MBCHAR_H 1 -#include +/* This file uses _GL_INLINE_HEADER_BEGIN, _GL_INLINE. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + #include #include #include -#ifndef _GL_INLINE_HEADER_BEGIN - #error "Please include config.h first." -#endif _GL_INLINE_HEADER_BEGIN #ifndef MBCHAR_INLINE # define MBCHAR_INLINE _GL_INLINE diff --git a/lib/mbiter.c b/lib/mbiter.c index 8c49fd7..530181a 100644 --- a/lib/mbiter.c +++ b/lib/mbiter.c @@ -1,6 +1,6 @@ /* Iterating through multibyte strings: macros for multi-byte encodings. - Copyright (C) 2012-2021 Free Software Foundation, Inc. + Copyright (C) 2012-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/mbiter.h b/lib/mbiter.h index 8337b33..7b41870 100644 --- a/lib/mbiter.h +++ b/lib/mbiter.h @@ -1,5 +1,5 @@ /* Iterating through multibyte strings: macros for multi-byte encodings. - Copyright (C) 2001, 2005, 2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2001, 2005, 2007, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -82,17 +82,18 @@ #ifndef _MBITER_H #define _MBITER_H 1 +/* This file uses _GL_INLINE_HEADER_BEGIN, _GL_INLINE. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + #include -#include #include #include #include #include "mbchar.h" -#ifndef _GL_INLINE_HEADER_BEGIN - #error "Please include config.h first." -#endif _GL_INLINE_HEADER_BEGIN #ifndef MBITER_INLINE # define MBITER_INLINE _GL_INLINE diff --git a/lib/mbrtowc-impl-utf8.h b/lib/mbrtowc-impl-utf8.h index 330fb10..4fdd65d 100644 --- a/lib/mbrtowc-impl-utf8.h +++ b/lib/mbrtowc-impl-utf8.h @@ -1,5 +1,5 @@ /* Convert multibyte character to wide character. - Copyright (C) 1999-2002, 2005-2021 Free Software Foundation, Inc. + Copyright (C) 1999-2002, 2005-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/mbrtowc-impl.h b/lib/mbrtowc-impl.h index bc3e688..e9c04ed 100644 --- a/lib/mbrtowc-impl.h +++ b/lib/mbrtowc-impl.h @@ -1,5 +1,5 @@ /* Convert multibyte character to wide character. - Copyright (C) 1999-2002, 2005-2021 Free Software Foundation, Inc. + Copyright (C) 1999-2002, 2005-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/mbrtowc.c b/lib/mbrtowc.c index 8832f6e..c1a689a 100644 --- a/lib/mbrtowc.c +++ b/lib/mbrtowc.c @@ -1,5 +1,5 @@ /* Convert multibyte character to wide character. - Copyright (C) 1999-2002, 2005-2021 Free Software Foundation, Inc. + Copyright (C) 1999-2002, 2005-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2008. This file is free software: you can redistribute it and/or modify @@ -51,11 +51,10 @@ # endif # include "attribute.h" -# include "verify.h" # include "lc-charset-dispatch.h" # include "mbtowc-lock.h" -verify (sizeof (mbstate_t) >= 4); +static_assert (sizeof (mbstate_t) >= 4); static char internal_state[4]; size_t diff --git a/lib/mbscasecmp.c b/lib/mbscasecmp.c index cad1de5..03292a5 100644 --- a/lib/mbscasecmp.c +++ b/lib/mbscasecmp.c @@ -1,11 +1,11 @@ /* Case-insensitive string comparison function. - Copyright (C) 1998-1999, 2005-2021 Free Software Foundation, Inc. + Copyright (C) 1998-1999, 2005-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2005, based on earlier glibc code. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as - published by the Free Software Foundation; either version 3 of the + published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This file is distributed in the hope that it will be useful, diff --git a/lib/mbsinit.c b/lib/mbsinit.c index f440155..6e60079 100644 --- a/lib/mbsinit.c +++ b/lib/mbsinit.c @@ -1,5 +1,5 @@ /* Test for initial conversion state. - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2008. This file is free software: you can redistribute it and/or modify @@ -20,7 +20,6 @@ /* Specification. */ #include -#include "verify.h" #if GNULIB_defined_mbstate_t @@ -39,7 +38,7 @@ - In wc -> mb direction, mbstate_t contains no information. In other words, it is always in the initial state. */ -verify (sizeof (mbstate_t) >= 4); +static_assert (sizeof (mbstate_t) >= 4); int mbsinit (const mbstate_t *ps) diff --git a/lib/mbslen.c b/lib/mbslen.c index 8517f51..54c20be 100644 --- a/lib/mbslen.c +++ b/lib/mbslen.c @@ -1,10 +1,10 @@ /* Counting the multibyte characters in a string. - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2007. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as - published by the Free Software Foundation; either version 3 of the + published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This file is distributed in the hope that it will be useful, diff --git a/lib/mbsrtowcs-impl.h b/lib/mbsrtowcs-impl.h index ab3bab5..bcf729d 100644 --- a/lib/mbsrtowcs-impl.h +++ b/lib/mbsrtowcs-impl.h @@ -1,5 +1,5 @@ /* Convert string to wide string. - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2008. This file is free software: you can redistribute it and/or modify diff --git a/lib/mbsrtowcs-state.c b/lib/mbsrtowcs-state.c index 83445fe..0949a37 100644 --- a/lib/mbsrtowcs-state.c +++ b/lib/mbsrtowcs-state.c @@ -1,5 +1,5 @@ /* Convert string to wide string. - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2008. This file is free software: you can redistribute it and/or modify diff --git a/lib/mbsrtowcs.c b/lib/mbsrtowcs.c index 64fb9ff..c20fc41 100644 --- a/lib/mbsrtowcs.c +++ b/lib/mbsrtowcs.c @@ -1,5 +1,5 @@ /* Convert string to wide string. - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2008. This file is free software: you can redistribute it and/or modify diff --git a/lib/mbsstr.c b/lib/mbsstr.c index aafe931..03fb704 100644 --- a/lib/mbsstr.c +++ b/lib/mbsstr.c @@ -1,10 +1,10 @@ /* Searching in a string. -*- coding: utf-8 -*- - Copyright (C) 2005-2021 Free Software Foundation, Inc. + Copyright (C) 2005-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2005. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as - published by the Free Software Foundation; either version 3 of the + published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This file is distributed in the hope that it will be useful, @@ -20,7 +20,6 @@ /* Specification. */ #include -#include #include /* for NULL, in case a nonstandard string.h lacks it */ #include diff --git a/lib/mbtowc-impl.h b/lib/mbtowc-impl.h index 30d715d..39b977b 100644 --- a/lib/mbtowc-impl.h +++ b/lib/mbtowc-impl.h @@ -1,5 +1,5 @@ /* Convert multibyte character to wide character. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2011. This file is free software: you can redistribute it and/or modify diff --git a/lib/mbtowc-lock.c b/lib/mbtowc-lock.c index 0f7ae6c..6ca6e10 100644 --- a/lib/mbtowc-lock.c +++ b/lib/mbtowc-lock.c @@ -1,5 +1,5 @@ /* Return the internal lock used by mbrtowc and mbrtoc32. - Copyright (C) 2019-2021 Free Software Foundation, Inc. + Copyright (C) 2019-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/mbtowc-lock.h b/lib/mbtowc-lock.h index d31b0b6..2dc22ac 100644 --- a/lib/mbtowc-lock.h +++ b/lib/mbtowc-lock.h @@ -1,5 +1,5 @@ /* Use the internal lock used by mbrtowc and mbrtoc32. - Copyright (C) 2019-2021 Free Software Foundation, Inc. + Copyright (C) 2019-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/mbtowc.c b/lib/mbtowc.c index 47b431a..8d9b06d 100644 --- a/lib/mbtowc.c +++ b/lib/mbtowc.c @@ -1,5 +1,5 @@ /* Convert multibyte character to wide character. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2011. This file is free software: you can redistribute it and/or modify diff --git a/lib/mbuiter.c b/lib/mbuiter.c index d740bb0..58dea24 100644 --- a/lib/mbuiter.c +++ b/lib/mbuiter.c @@ -1,9 +1,9 @@ /* Iterating through multibyte strings: macros for multi-byte encodings. - Copyright (C) 2012-2021 Free Software Foundation, Inc. + Copyright (C) 2012-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as - published by the Free Software Foundation; either version 3 of the + published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This file is distributed in the hope that it will be useful, diff --git a/lib/mbuiter.h b/lib/mbuiter.h index 8e87c5c..7a619f1 100644 --- a/lib/mbuiter.h +++ b/lib/mbuiter.h @@ -1,9 +1,9 @@ /* Iterating through multibyte strings: macros for multi-byte encodings. - Copyright (C) 2001, 2005, 2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2001, 2005, 2007, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as - published by the Free Software Foundation; either version 3 of the + published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This file is distributed in the hope that it will be useful, @@ -89,8 +89,12 @@ #ifndef _MBUITER_H #define _MBUITER_H 1 +/* This file uses _GL_INLINE_HEADER_BEGIN, _GL_INLINE. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + #include -#include #include #include #include @@ -99,9 +103,6 @@ #include "mbchar.h" #include "strnlen1.h" -#ifndef _GL_INLINE_HEADER_BEGIN - #error "Please include config.h first." -#endif _GL_INLINE_HEADER_BEGIN #ifndef MBUITER_INLINE # define MBUITER_INLINE _GL_INLINE diff --git a/lib/memchr.c b/lib/memchr.c index 56fd59d..8e95579 100644 --- a/lib/memchr.c +++ b/lib/memchr.c @@ -1,4 +1,4 @@ -/* Copyright (C) 1991, 1993, 1996-1997, 1999-2000, 2003-2004, 2006, 2008-2021 +/* Copyright (C) 1991, 1993, 1996-1997, 1999-2000, 2003-2004, 2006, 2008-2023 Free Software Foundation, Inc. Based on strlen implementation by Torbjorn Granlund (tege@sics.se), diff --git a/lib/memchr.valgrind b/lib/memchr.valgrind index 4f16481..97690f2 100644 --- a/lib/memchr.valgrind +++ b/lib/memchr.valgrind @@ -1,6 +1,6 @@ # Suppress a valgrind message about use of uninitialized memory in memchr(). -# Copyright (C) 2009-2021 Free Software Foundation, Inc. +# Copyright (C) 2009-2023 Free Software Foundation, Inc. # # This file is free software: you can redistribute it and/or modify # it under the terms of the GNU Lesser General Public License as diff --git a/lib/mempcpy.c b/lib/mempcpy.c index cacacdb..24a3135 100644 --- a/lib/mempcpy.c +++ b/lib/mempcpy.c @@ -1,5 +1,5 @@ /* Copy memory area and return pointer after last written byte. - Copyright (C) 2003, 2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2003, 2007, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/minmax.h b/lib/minmax.h index a03361b..0ac4019 100644 --- a/lib/minmax.h +++ b/lib/minmax.h @@ -1,5 +1,5 @@ /* MIN, MAX macros. - Copyright (C) 1995, 1998, 2001, 2003, 2005, 2009-2021 Free Software + Copyright (C) 1995, 1998, 2001, 2003, 2005, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify @@ -23,6 +23,11 @@ MIN, MAX macro redefinitions on some systems; the workaround is to #include this file as the last one among the #include list. */ +/* This file uses HAVE_MINMAX_IN_LIMITS_H, HAVE_MINMAX_IN_SYS_PARAM_H. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + /* Before we define the following symbols we get the file since otherwise we get redefinitions on some systems if is included after this file. Likewise for . diff --git a/lib/mkdir.c b/lib/mkdir.c index 2766cc7..f94aba1 100644 --- a/lib/mkdir.c +++ b/lib/mkdir.c @@ -1,7 +1,7 @@ /* On some systems, mkdir ("foo/", 0700) fails because of the trailing slash. On those systems, this wrapper removes the trailing slash. - Copyright (C) 2001, 2003, 2006, 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2001, 2003, 2006, 2008-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -48,7 +48,7 @@ /* This function is required at least for NetBSD 1.5.2. */ int -rpl_mkdir (char const *dir, mode_t mode maybe_unused) +rpl_mkdir (char const *dir, maybe_unused mode_t mode) { int ret_val; char *tmp_dir; diff --git a/lib/mkstemp.c b/lib/mkstemp.c index 6e605d8..77aadbb 100644 --- a/lib/mkstemp.c +++ b/lib/mkstemp.c @@ -1,4 +1,4 @@ -/* Copyright (C) 1998-1999, 2001, 2005-2007, 2009-2021 Free Software +/* Copyright (C) 1998-1999, 2001, 2005-2007, 2009-2023 Free Software Foundation, Inc. This file is derived from the one in the GNU C Library. diff --git a/lib/mktime-internal.h b/lib/mktime-internal.h index 7386625..709c36b 100644 --- a/lib/mktime-internal.h +++ b/lib/mktime-internal.h @@ -1,5 +1,5 @@ /* Internals of mktime and related functions - Copyright 2016-2021 Free Software Foundation, Inc. + Copyright 2016-2023 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Paul Eggert . diff --git a/lib/mktime.c b/lib/mktime.c index ae721c7..8e80bcd 100644 --- a/lib/mktime.c +++ b/lib/mktime.c @@ -1,5 +1,5 @@ /* Convert a 'struct tm' to a time_t value. - Copyright (C) 1993-2021 Free Software Foundation, Inc. + Copyright (C) 1993-2023 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Paul Eggert . @@ -46,6 +46,7 @@ #include #include #include +#include #include #include @@ -379,7 +380,7 @@ __mktime_internal (struct tm *tp, /* Invert CONVERT by probing. First assume the same offset as last time. */ - INT_SUBTRACT_WRAPV (0, off, &negative_offset_guess); + ckd_sub (&negative_offset_guess, 0, off); long_int t0 = ydhms_diff (year, yday, hour, min, sec, EPOCH_YEAR - TM_YEAR_BASE, 0, 0, 0, negative_offset_guess); @@ -429,8 +430,13 @@ __mktime_internal (struct tm *tp, time with the right value, and use its UTC offset. Heuristic: probe the adjacent timestamps in both directions, - looking for the desired isdst. This should work for all real - time zone histories in the tz database. */ + looking for the desired isdst. If none is found within a + reasonable duration bound, assume a one-hour DST difference. + This should work for all real time zone histories in the tz + database. */ + + /* +1 if we wanted standard time but got DST, -1 if the reverse. */ + int dst_difference = (isdst == 0) - (tm.tm_isdst == 0); /* Distance between probes when looking for a DST boundary. In tzdata2003a, the shortest period of DST is 601200 seconds @@ -441,12 +447,14 @@ __mktime_internal (struct tm *tp, periods when probing. */ int stride = 601200; - /* The longest period of DST in tzdata2003a is 536454000 seconds - (e.g., America/Jujuy starting 1946-10-01 01:00). The longest - period of non-DST is much longer, but it makes no real sense - to search for more than a year of non-DST, so use the DST - max. */ - int duration_max = 536454000; + /* In TZDB 2021e, the longest period of DST (or of non-DST), in + which the DST (or adjacent DST) difference is not one hour, + is 457243209 seconds: e.g., America/Cambridge_Bay with leap + seconds, starting 1965-10-31 00:00 in a switch from + double-daylight time (-05) to standard time (-07), and + continuing to 1980-04-27 02:00 in a switch from standard time + (-07) to daylight time (-06). */ + int duration_max = 457243209; /* Search in both directions, so the maximum distance is half the duration; add the stride to avoid off-by-1 problems. */ @@ -458,7 +466,7 @@ __mktime_internal (struct tm *tp, for (direction = -1; direction <= 1; direction += 2) { long_int ot; - if (! INT_ADD_WRAPV (t, delta * direction, &ot)) + if (! ckd_add (&ot, t, delta * direction)) { struct tm otm; if (! ranged_convert (convert, &ot, &otm)) @@ -483,6 +491,11 @@ __mktime_internal (struct tm *tp, } } + /* No unusual DST offset was found nearby. Assume one-hour DST. */ + t += 60 * 60 * dst_difference; + if (mktime_min <= t && t <= mktime_max && convert_time (convert, t, &tm)) + goto offset_found; + __set_errno (EOVERFLOW); return -1; } @@ -491,8 +504,8 @@ __mktime_internal (struct tm *tp, /* Set *OFFSET to the low-order bits of T - T0 - NEGATIVE_OFFSET_GUESS. This is just a heuristic to speed up the next mktime call, and correctness is unaffected if integer overflow occurs here. */ - INT_SUBTRACT_WRAPV (t, t0, offset); - INT_SUBTRACT_WRAPV (*offset, negative_offset_guess, offset); + ckd_sub (offset, t, t0); + ckd_sub (offset, *offset, negative_offset_guess); if (LEAP_SECONDS_POSSIBLE && sec_requested != tm.tm_sec) { @@ -501,7 +514,7 @@ __mktime_internal (struct tm *tp, long_int sec_adjustment = sec == 0 && tm.tm_sec == 60; sec_adjustment -= sec; sec_adjustment += sec_requested; - if (INT_ADD_WRAPV (t, sec_adjustment, &t) + if (ckd_add (&t, t, sec_adjustment) || ! (mktime_min <= t && t <= mktime_max)) { __set_errno (EOVERFLOW); diff --git a/lib/msvc-inval.c b/lib/msvc-inval.c index a23dac9..c5149a8 100644 --- a/lib/msvc-inval.c +++ b/lib/msvc-inval.c @@ -1,5 +1,5 @@ /* Invalid parameter handler for MSVC runtime libraries. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/msvc-inval.h b/lib/msvc-inval.h index e115a35..c16d880 100644 --- a/lib/msvc-inval.h +++ b/lib/msvc-inval.h @@ -1,5 +1,5 @@ /* Invalid parameter handler for MSVC runtime libraries. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -52,6 +52,11 @@ AC_DEFINE([MSVC_INVALID_PARAMETER_HANDLING], [SANE_LIBRARY_HANDLING]) */ +/* This file uses HAVE_MSVC_INVALID_PARAMETER_HANDLER. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + #define DEFAULT_HANDLING 0 #define HAIRY_LIBRARY_HANDLING 1 #define SANE_LIBRARY_HANDLING 2 diff --git a/lib/msvc-nothrow.c b/lib/msvc-nothrow.c index d3c1f54..f729fe6 100644 --- a/lib/msvc-nothrow.c +++ b/lib/msvc-nothrow.c @@ -1,6 +1,6 @@ /* Wrappers that don't throw invalid parameter notifications with MSVC runtime libraries. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/msvc-nothrow.h b/lib/msvc-nothrow.h index 057b5dd..0dd229f 100644 --- a/lib/msvc-nothrow.h +++ b/lib/msvc-nothrow.h @@ -1,6 +1,6 @@ /* Wrappers that don't throw invalid parameter notifications with MSVC runtime libraries. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -25,6 +25,11 @@ This file defines wrappers that turn such an invalid parameter notification into an error code. */ +/* This file uses HAVE_MSVC_INVALID_PARAMETER_HANDLER. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + #if defined _WIN32 && ! defined __CYGWIN__ /* Get original declaration of _get_osfhandle. */ diff --git a/lib/nl_langinfo-lock.c b/lib/nl_langinfo-lock.c index fcdf56d..e5cdcd3 100644 --- a/lib/nl_langinfo-lock.c +++ b/lib/nl_langinfo-lock.c @@ -1,5 +1,5 @@ /* Return the internal lock used by nl_langinfo. - Copyright (C) 2019-2021 Free Software Foundation, Inc. + Copyright (C) 2019-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/nl_langinfo.c b/lib/nl_langinfo.c index b481f20..f872c6d 100644 --- a/lib/nl_langinfo.c +++ b/lib/nl_langinfo.c @@ -1,6 +1,6 @@ /* nl_langinfo() replacement: query locale dependent information. - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -70,6 +70,8 @@ static char * ctype_codeset (void) { + /* This function is only used on platforms which don't have uselocale(). + Therefore we don't need to look at the per-thread locale first, here. */ static char result[2 + 10 + 1]; char buf[2 + 10 + 1]; char locale[SETLOCALE_NULL_MAX]; diff --git a/lib/nstrftime.c b/lib/nstrftime.c index 7f258e8..869c97f 100644 --- a/lib/nstrftime.c +++ b/lib/nstrftime.c @@ -1,9 +1,9 @@ -/* Copyright (C) 1991-2021 Free Software Foundation, Inc. +/* Copyright (C) 1991-2023 Free Software Foundation, Inc. This file is part of the GNU C Library. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as - published by the Free Software Foundation; either version 3 of the + published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This file is distributed in the hope that it will be useful, @@ -22,7 +22,7 @@ # define HAVE_TZNAME 1 # include "../locale/localeinfo.h" #else -# include +# include # if FPRINTFTIME # include "fprintftime.h" # else @@ -62,10 +62,10 @@ extern char *tzname[]; #endif #include +#include #include #include #include -#include #include "attribute.h" #include @@ -227,15 +227,6 @@ extern char *tzname[]; # undef __mbsrtowcs_l # define __mbsrtowcs_l(d, s, l, st, loc) __mbsrtowcs (d, s, l, st) # endif -# define widen(os, ws, l) \ - { \ - mbstate_t __st; \ - const char *__s = os; \ - memset (&__st, '\0', sizeof (__st)); \ - l = __mbsrtowcs_l (NULL, &__s, 0, &__st, loc); \ - ws = (wchar_t *) alloca ((l + 1) * sizeof (wchar_t)); \ - (void) __mbsrtowcs_l (ws, &__s, l, &__st, loc); \ - } #endif @@ -285,6 +276,14 @@ extern char *tzname[]; more reliable way to accept other sets of digits. */ #define ISDIGIT(Ch) ((unsigned int) (Ch) - L_('0') <= 9) +/* Avoid false GCC warning "'memset' specified size 18446744073709551615 exceeds + maximum object size 9223372036854775807", caused by insufficient data flow + analysis and value propagation of the 'width_add' expansion when GCC is not + optimizing. Cf. . */ +#if __GNUC__ >= 7 && !__OPTIMIZE__ +# pragma GCC diagnostic ignored "-Wstringop-overflow" +#endif + #if FPRINTFTIME static void fwrite_lowcase (FILE *fp, const CHAR_T *src, size_t len) @@ -367,10 +366,7 @@ tm_diff (const struct tm *a, const struct tm *b) #define ISO_WEEK1_WDAY 4 /* Thursday */ #define YDAY_MINIMUM (-366) static int iso_week_days (int, int); -#if defined __GNUC__ || defined __clang__ -__inline__ -#endif -static int +static __inline int iso_week_days (int yday, int wday) { /* Add enough to the first operand of % to make it nonnegative. */ @@ -428,9 +424,7 @@ my_strftime (STREAM_OR_CHAR_T *s, STRFTIME_ARG (size_t maxsize) return __strftime_internal (s, STRFTIME_ARG (maxsize) format, tp, false, 0, -1, &tzset_called extra_args LOCALE_ARG); } -#if defined _LIBC && ! FPRINTFTIME libc_hidden_def (my_strftime) -#endif /* Just like my_strftime, above, but with more parameters. UPCASE indicates that the result should be converted to upper case. @@ -656,6 +650,8 @@ __strftime_internal (STREAM_OR_CHAR_T *s, STRFTIME_ARG (size_t maxsize) #endif /* ! DO_MULTIBYTE */ + char const *percent = f; + /* Check for flags that can modify a format. */ while (1) { @@ -688,8 +684,8 @@ __strftime_internal (STREAM_OR_CHAR_T *s, STRFTIME_ARG (size_t maxsize) width = 0; do { - if (INT_MULTIPLY_WRAPV (width, 10, &width) - || INT_ADD_WRAPV (width, *f - L_('0'), &width)) + if (ckd_mul (&width, width, 10) + || ckd_add (&width, width, *f - L_('0'))) width = INT_MAX; ++f; } @@ -757,8 +753,8 @@ __strftime_internal (STREAM_OR_CHAR_T *s, STRFTIME_ARG (size_t maxsize) while (0) case L_('%'): - if (modifier != 0) - goto bad_format; + if (f - 1 != percent) + goto bad_percent; add1 (*f); break; @@ -1161,7 +1157,6 @@ __strftime_internal (STREAM_OR_CHAR_T *s, STRFTIME_ARG (size_t maxsize) case L_('q'): /* GNU extension. */ DO_SIGNED_NUMBER (1, false, ((tp->tm_mon * 11) >> 5) + 1); - break; case L_('R'): subfmt = L_("%H:%M"); @@ -1379,11 +1374,31 @@ __strftime_internal (STREAM_OR_CHAR_T *s, STRFTIME_ARG (size_t maxsize) #ifdef COMPILE_WIDE { /* The zone string is always given in multibyte form. We have - to transform it first. */ - wchar_t *wczone; - size_t len; - widen (zone, wczone, len); - cpy (len, wczone); + to convert it to wide character. */ + size_t w = pad == L_('-') || width < 0 ? 0 : width; + char const *z = zone; + mbstate_t st = {0}; + size_t len = __mbsrtowcs_l (p, &z, maxsize - i, &st, loc); + if (len == (size_t) -1) + return 0; + size_t incr = len < w ? w : len; + if (incr >= maxsize - i) + { + errno = ERANGE; + return 0; + } + if (p) + { + if (len < w) + { + size_t delta = w - len; + wmemmove (p + delta, p, len); + wchar_t wc = pad == L_('0') || pad == L_('+') ? L'0' : L' '; + wmemset (p, wc, delta); + } + p += incr; + } + i += incr; } #else cpy (strlen (zone), zone); @@ -1472,6 +1487,7 @@ __strftime_internal (STREAM_OR_CHAR_T *s, STRFTIME_ARG (size_t maxsize) } case L_('\0'): /* GNU extension: % at end of format. */ + bad_percent: --f; FALLTHROUGH; default: @@ -1479,12 +1495,7 @@ __strftime_internal (STREAM_OR_CHAR_T *s, STRFTIME_ARG (size_t maxsize) since this is most likely the right thing to do if a multibyte string has been misparsed. */ bad_format: - { - int flen; - for (flen = 1; f[1 - flen] != L_('%'); flen++) - continue; - cpy (flen, &f[1 - flen]); - } + cpy (f - percent + 1, percent); break; } } diff --git a/lib/offtostr.c b/lib/offtostr.c index b12ff2f..b02890f 100644 --- a/lib/offtostr.c +++ b/lib/offtostr.c @@ -1,6 +1,6 @@ /* Convert 'off_t' integer to printable string. - Copyright (C) 2004-2021 Free Software Foundation, Inc. + Copyright (C) 2004-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/open.c b/lib/open.c index 372cda8..7ec8fdc 100644 --- a/lib/open.c +++ b/lib/open.c @@ -1,5 +1,5 @@ /* Open a descriptor to a file. - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/pathmax.h b/lib/pathmax.h index 716f4a9..6930283 100644 --- a/lib/pathmax.h +++ b/lib/pathmax.h @@ -1,5 +1,5 @@ /* Define PATH_MAX somehow. Requires sys/types.h. - Copyright (C) 1992, 1999, 2001, 2003, 2005, 2009-2021 Free Software + Copyright (C) 1992, 1999, 2001, 2003, 2005, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify @@ -39,6 +39,11 @@ #endif */ +/* This file uses HAVE_SYS_PARAM_H. */ +# if !_GL_CONFIG_H_INCLUDED +# error "Please include config.h first." +# endif + # include # include diff --git a/lib/prepargs.c b/lib/prepargs.c deleted file mode 100644 index 3751ae0..0000000 --- a/lib/prepargs.c +++ /dev/null @@ -1,91 +0,0 @@ -/* Parse arguments from a string and prepend them to an argv. - - Copyright (C) 1999-2002, 2006, 2009-2013, 2015-2021 Free Software - Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* Written by Paul Eggert . */ - -#include - -#include "prepargs.h" -#include -#include -#include - -#include - -/* IN_CTYPE_DOMAIN (C) is nonzero if the unsigned char C can safely be given - as an argument to macros like "isspace". */ -#ifdef STDC_HEADERS -# define IN_CTYPE_DOMAIN(c) 1 -#else -# define IN_CTYPE_DOMAIN(c) ((c) <= 0177) -#endif - -#define ISSPACE(c) (IN_CTYPE_DOMAIN (c) && isspace (c)) - -/* Find the white-space-separated options specified by OPTIONS, and - using BUF to store copies of these options, set ARGV[0], ARGV[1], - etc. to the option copies. Return the number N of options found. - Do not set ARGV[N]. If ARGV is zero, do not store ARGV[0] etc. - Backslash can be used to escape whitespace (and backslashes). */ -static int -prepend_args (char const *options, char *buf, char **argv) -{ - char const *o = options; - char *b = buf; - int n = 0; - - for (;;) - { - while (ISSPACE ((unsigned char) *o)) - o++; - if (!*o) - return n; - if (argv) - argv[n] = b; - n++; - - do - if ((*b++ = *o++) == '\\' && *o) - b[-1] = *o++; - while (*o && ! ISSPACE ((unsigned char) *o)); - - *b++ = '\0'; - } -} - -/* Prepend the whitespace-separated options in OPTIONS to the argument - vector of a main program with argument count *PARGC and argument - vector *PARGV. */ -void -prepend_default_options (char const *options, int *pargc, char ***pargv) -{ - if (options) - { - char *buf = xmalloc (strlen (options) + 1); - int prepended = prepend_args (options, buf, (char **) 0); - int argc = *pargc; - char * const *argv = *pargv; - char **pp = xmalloc ((prepended + argc + 1) * sizeof *pp); - *pargc = prepended + argc; - *pargv = pp; - *pp++ = *argv++; - pp += prepend_args (options, buf, pp); - while ((*pp++ = *argv++)) - continue; - } -} diff --git a/lib/prepargs.h b/lib/prepargs.h deleted file mode 100644 index ce93ea8..0000000 --- a/lib/prepargs.h +++ /dev/null @@ -1,3 +0,0 @@ -/* Parse arguments from a string and prepend them to an argv. */ - -void prepend_default_options (char const *, int *, char ***); diff --git a/lib/progname.c b/lib/progname.c index fd7acae..ed928e0 100644 --- a/lib/progname.c +++ b/lib/progname.c @@ -1,10 +1,10 @@ /* Program name management. - Copyright (C) 2001-2003, 2005-2021 Free Software Foundation, Inc. + Copyright (C) 2001-2003, 2005-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2001. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/lib/progname.h b/lib/progname.h index bf3513d..945d169 100644 --- a/lib/progname.h +++ b/lib/progname.h @@ -1,10 +1,10 @@ /* Program name management. - Copyright (C) 2001-2004, 2006, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2001-2004, 2006, 2009-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2001. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/lib/propername.c b/lib/propername.c index 561566b..f9eae49 100644 --- a/lib/propername.c +++ b/lib/propername.c @@ -1,10 +1,10 @@ /* Localization of proper names. - Copyright (C) 2006-2021 Free Software Foundation, Inc. + Copyright (C) 2006-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2006. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -27,7 +27,6 @@ #include "propername.h" #include -#include #include #include #include diff --git a/lib/propername.h b/lib/propername.h index ee09d7c..359c8b5 100644 --- a/lib/propername.h +++ b/lib/propername.h @@ -1,10 +1,10 @@ /* Localization of proper names. -*- coding: utf-8 -*- - Copyright (C) 2006, 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2006, 2008-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2006. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/lib/quote.h b/lib/quote.h index 3204997..9ec5747 100644 --- a/lib/quote.h +++ b/lib/quote.h @@ -1,10 +1,10 @@ /* quote.h - prototypes for quote.c - Copyright (C) 1998-2001, 2003, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 1998-2001, 2003, 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/lib/quotearg.c b/lib/quotearg.c index 5704689..975bd61 100644 --- a/lib/quotearg.c +++ b/lib/quotearg.c @@ -1,10 +1,10 @@ /* quotearg.c - quote arguments for output - Copyright (C) 1998-2002, 2004-2021 Free Software Foundation, Inc. + Copyright (C) 1998-2002, 2004-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -38,7 +38,6 @@ #include #include #include -#include #include #include #include @@ -787,7 +786,6 @@ quotearg_buffer (char *buffer, size_t buffersize, return r; } -/* Equivalent to quotearg_alloc (ARG, ARGSIZE, NULL, O). */ char * quotearg_alloc (char const *arg, size_t argsize, struct quoting_options const *o) diff --git a/lib/quotearg.h b/lib/quotearg.h index ecef74f..baab586 100644 --- a/lib/quotearg.h +++ b/lib/quotearg.h @@ -1,11 +1,11 @@ /* quotearg.h - quote arguments for output - Copyright (C) 1998-2002, 2004, 2006, 2008-2021 Free Software Foundation, + Copyright (C) 1998-2002, 2004, 2006, 2008-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -21,7 +21,11 @@ #ifndef QUOTEARG_H_ # define QUOTEARG_H_ 1 -# include +/* This file uses _GL_ATTRIBUTE_MALLOC, _GL_ATTRIBUTE_RETURNS_NONNULL. */ +# if !_GL_CONFIG_H_INCLUDED +# error "Please include config.h first." +# endif + # include /* Basic quoting styles. For each style, an example is given on the @@ -279,6 +283,7 @@ struct quoting_options; struct quoting_options *clone_quoting_options (struct quoting_options *o) _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE _GL_ATTRIBUTE_RETURNS_NONNULL; + /* Get the value of O's quoting style. If O is null, use the default. */ enum quoting_style get_quoting_style (struct quoting_options const *o); @@ -333,7 +338,9 @@ size_t quotearg_buffer (char *restrict buffer, size_t buffersize, buffer. It is the caller's responsibility to free the result. The result will not contain embedded null bytes. */ char *quotearg_alloc (char const *arg, size_t argsize, - struct quoting_options const *o); + struct quoting_options const *o) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE + _GL_ATTRIBUTE_RETURNS_NONNULL; /* Like quotearg_alloc, except that the length of the result, excluding the terminating null byte, is stored into SIZE if it is @@ -342,7 +349,9 @@ char *quotearg_alloc (char const *arg, size_t argsize, backslash escapes, and the flags of O do not request elision of null bytes.*/ char *quotearg_alloc_mem (char const *arg, size_t argsize, - size_t *size, struct quoting_options const *o); + size_t *size, struct quoting_options const *o) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE + _GL_ATTRIBUTE_RETURNS_NONNULL; /* Use storage slot N to return a quoted version of the string ARG. Use the default quoting options. diff --git a/lib/raise.c b/lib/raise.c index 37c100d..506e20b 100644 --- a/lib/raise.c +++ b/lib/raise.c @@ -1,6 +1,6 @@ /* Provide a non-threads replacement for the POSIX raise function. - Copyright (C) 2002-2003, 2005-2006, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2002-2003, 2005-2006, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/rawmemchr.c b/lib/rawmemchr.c index 896d435..45c6cd3 100644 --- a/lib/rawmemchr.c +++ b/lib/rawmemchr.c @@ -1,5 +1,5 @@ /* Searching in a string. - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -22,68 +22,52 @@ /* A function definition is only needed if HAVE_RAWMEMCHR is not defined. */ #if !HAVE_RAWMEMCHR +# include +# include + + /* Find the first occurrence of C in S. */ void * rawmemchr (const void *s, int c_in) { - /* On 32-bit hardware, choosing longword to be a 32-bit unsigned - long instead of a 64-bit uintmax_t tends to give better - performance. On 64-bit hardware, unsigned long is generally 64 - bits already. Change this typedef to experiment with - performance. */ - typedef unsigned long int longword; + /* Change this typedef to experiment with performance. */ + typedef uintptr_t longword; + /* If you change the "uintptr_t", you should change UINTPTR_WIDTH to match. + This verifies that the type does not have padding bits. */ + static_assert (UINTPTR_WIDTH == UCHAR_WIDTH * sizeof (longword)); const unsigned char *char_ptr; - const longword *longword_ptr; - longword repeated_one; - longword repeated_c; - unsigned char c; - - c = (unsigned char) c_in; + unsigned char c = c_in; /* Handle the first few bytes by reading one byte at a time. Do this until CHAR_PTR is aligned on a longword boundary. */ for (char_ptr = (const unsigned char *) s; - (size_t) char_ptr % sizeof (longword) != 0; + (uintptr_t) char_ptr % alignof (longword) != 0; ++char_ptr) if (*char_ptr == c) return (void *) char_ptr; - longword_ptr = (const longword *) char_ptr; - - /* All these elucidatory comments refer to 4-byte longwords, - but the theory applies equally well to any size longwords. */ + longword const *longword_ptr = s = char_ptr; /* Compute auxiliary longword values: repeated_one is a value which has a 1 in every byte. repeated_c has c in every byte. */ - repeated_one = 0x01010101; - repeated_c = c | (c << 8); - repeated_c |= repeated_c << 16; - if (0xffffffffU < (longword) -1) - { - repeated_one |= repeated_one << 31 << 1; - repeated_c |= repeated_c << 31 << 1; - if (8 < sizeof (longword)) - { - size_t i; - - for (i = 64; i < sizeof (longword) * 8; i *= 2) - { - repeated_one |= repeated_one << i; - repeated_c |= repeated_c << i; - } - } - } + longword repeated_one = (longword) -1 / UCHAR_MAX; + longword repeated_c = repeated_one * c; + longword repeated_hibit = repeated_one * (UCHAR_MAX / 2 + 1); /* Instead of the traditional loop which tests each byte, we will - test a longword at a time. The tricky part is testing if *any of - the four* bytes in the longword in question are equal to NUL or + test a longword at a time. The tricky part is testing if any of + the bytes in the longword in question are equal to c. We first use an xor with repeated_c. This reduces the task - to testing whether *any of the four* bytes in longword1 is zero. + to testing whether any of the bytes in longword1 is zero. + + (The following comments assume 8-bit bytes, as POSIX requires; + the code's use of UCHAR_MAX should work even if bytes have more + than 8 bits.) We compute tmp = - ((longword1 - repeated_one) & ~longword1) & (repeated_one << 7). + ((longword1 - repeated_one) & ~longword1) & (repeated_one * 0x80). That is, we perform the following operations: 1. Subtract repeated_one. 2. & ~longword1. @@ -117,22 +101,20 @@ rawmemchr (const void *s, int c_in) { longword longword1 = *longword_ptr ^ repeated_c; - if ((((longword1 - repeated_one) & ~longword1) - & (repeated_one << 7)) != 0) + if ((((longword1 - repeated_one) & ~longword1) & repeated_hibit) != 0) break; longword_ptr++; } - char_ptr = (const unsigned char *) longword_ptr; + char_ptr = s = longword_ptr; /* At this point, we know that one of the sizeof (longword) bytes - starting at char_ptr is == c. On little-endian machines, we + starting at char_ptr is == c. If we knew endianness, we could determine the first such byte without any further memory accesses, just by looking at the tmp result from the last loop - iteration. But this does not work on big-endian machines. - Choose code that works in both cases. */ + iteration. However, the following simple and portable code does + not attempt this potential optimization. */ - char_ptr = (unsigned char *) longword_ptr; while (*char_ptr != c) char_ptr++; return (void *) char_ptr; diff --git a/lib/rawmemchr.valgrind b/lib/rawmemchr.valgrind index d489c32..f3e4cb0 100644 --- a/lib/rawmemchr.valgrind +++ b/lib/rawmemchr.valgrind @@ -1,6 +1,6 @@ # Suppress a valgrind message about use of uninitialized memory in rawmemchr(). -# Copyright (C) 2008-2021 Free Software Foundation, Inc. +# Copyright (C) 2008-2023 Free Software Foundation, Inc. # # This file is free software: you can redistribute it and/or modify # it under the terms of the GNU Lesser General Public License as diff --git a/lib/readlink.c b/lib/readlink.c index d4f4b08..14bbb7f 100644 --- a/lib/readlink.c +++ b/lib/readlink.c @@ -1,5 +1,5 @@ /* Read the contents of a symbolic link. - Copyright (C) 2003-2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2003-2007, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -29,8 +29,8 @@ such as DJGPP 2.03 and mingw32. */ ssize_t -readlink (char const *file, char *buf _GL_UNUSED, - size_t bufsize _GL_UNUSED) +readlink (char const *file, _GL_UNUSED char *buf, + _GL_UNUSED size_t bufsize) { struct stat statbuf; diff --git a/lib/realloc.c b/lib/realloc.c index af03f0c..1063eb0 100644 --- a/lib/realloc.c +++ b/lib/realloc.c @@ -1,6 +1,6 @@ /* realloc() function that is glibc compatible. - Copyright (C) 1997, 2003-2004, 2006-2007, 2009-2021 Free Software + Copyright (C) 1997, 2003-2004, 2006-2007, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify diff --git a/lib/reallocarray.c b/lib/reallocarray.c index 1fb2f3c..8c99250 100644 --- a/lib/reallocarray.c +++ b/lib/reallocarray.c @@ -1,6 +1,6 @@ /* reallocarray function that is glibc compatible. - Copyright (C) 2017-2021 Free Software Foundation, Inc. + Copyright (C) 2017-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -19,16 +19,15 @@ #include +#include #include #include -#include "intprops.h" - void * reallocarray (void *ptr, size_t nmemb, size_t size) { size_t nbytes; - if (INT_MULTIPLY_WRAPV (nmemb, size, &nbytes)) + if (ckd_mul (&nbytes, nmemb, size)) { errno = ENOMEM; return NULL; diff --git a/lib/regcomp.c b/lib/regcomp.c index 887e5b5..8947839 100644 --- a/lib/regcomp.c +++ b/lib/regcomp.c @@ -1,5 +1,5 @@ /* Extended regular expression matching and search library. - Copyright (C) 2002-2021 Free Software Foundation, Inc. + Copyright (C) 2002-2023 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Isamu Hasegawa . @@ -27,14 +27,10 @@ static void re_compile_fastmap_iter (regex_t *bufp, const re_dfastate_t *init_state, char *fastmap); static reg_errcode_t init_dfa (re_dfa_t *dfa, size_t pat_len); -#ifdef RE_ENABLE_I18N static void free_charset (re_charset_t *cset); -#endif /* RE_ENABLE_I18N */ static void free_workarea_compile (regex_t *preg); static reg_errcode_t create_initial_state (re_dfa_t *dfa); -#ifdef RE_ENABLE_I18N static void optimize_utf8 (re_dfa_t *dfa); -#endif static reg_errcode_t analyze (regex_t *preg); static reg_errcode_t preorder (bin_tree_t *root, reg_errcode_t (fn (void *, bin_tree_t *)), @@ -89,7 +85,6 @@ static reg_errcode_t parse_bracket_element (bracket_elem_t *elem, static reg_errcode_t parse_bracket_symbol (bracket_elem_t *elem, re_string_t *regexp, re_token_t *token); -#ifdef RE_ENABLE_I18N static reg_errcode_t build_equiv_class (bitset_t sbcset, re_charset_t *mbcset, Idx *equiv_class_alloc, @@ -100,14 +95,6 @@ static reg_errcode_t build_charclass (RE_TRANSLATE_TYPE trans, Idx *char_class_alloc, const char *class_name, reg_syntax_t syntax); -#else /* not RE_ENABLE_I18N */ -static reg_errcode_t build_equiv_class (bitset_t sbcset, - const unsigned char *name); -static reg_errcode_t build_charclass (RE_TRANSLATE_TYPE trans, - bitset_t sbcset, - const char *class_name, - reg_syntax_t syntax); -#endif /* not RE_ENABLE_I18N */ static bin_tree_t *build_charclass_op (re_dfa_t *dfa, RE_TRANSLATE_TYPE trans, const char *class_name, @@ -279,8 +266,7 @@ re_compile_fastmap (struct re_pattern_buffer *bufp) } weak_alias (__re_compile_fastmap, re_compile_fastmap) -static inline void -__attribute__ ((always_inline)) +static __always_inline void re_set_fastmap (char *fastmap, bool icase, int ch) { fastmap[ch] = 1; @@ -306,7 +292,6 @@ re_compile_fastmap_iter (regex_t *bufp, const re_dfastate_t *init_state, if (type == CHARACTER) { re_set_fastmap (fastmap, icase, dfa->nodes[node].opr.c); -#ifdef RE_ENABLE_I18N if ((bufp->syntax & RE_ICASE) && dfa->mb_cur_max > 1) { unsigned char buf[MB_LEN_MAX]; @@ -327,7 +312,6 @@ re_compile_fastmap_iter (regex_t *bufp, const re_dfastate_t *init_state, != (size_t) -1)) re_set_fastmap (fastmap, false, buf[0]); } -#endif } else if (type == SIMPLE_BRACKET) { @@ -341,13 +325,12 @@ re_compile_fastmap_iter (regex_t *bufp, const re_dfastate_t *init_state, re_set_fastmap (fastmap, icase, ch); } } -#ifdef RE_ENABLE_I18N else if (type == COMPLEX_BRACKET) { re_charset_t *cset = dfa->nodes[node].opr.mbcset; Idx i; -# ifdef _LIBC +#ifdef _LIBC /* See if we have to try all bytes which start multiple collation elements. e.g. In da_DK, we want to catch 'a' since "aa" is a valid @@ -363,7 +346,7 @@ re_compile_fastmap_iter (regex_t *bufp, const re_dfastate_t *init_state, if (table[i] < 0) re_set_fastmap (fastmap, icase, i); } -# endif /* _LIBC */ +#endif /* _LIBC */ /* See if we have to start the match at all multibyte characters, i.e. where we would not find an invalid sequence. This only @@ -371,9 +354,9 @@ re_compile_fastmap_iter (regex_t *bufp, const re_dfastate_t *init_state, sets, the SIMPLE_BRACKET again suffices. */ if (dfa->mb_cur_max > 1 && (cset->nchar_classes || cset->non_match || cset->nranges -# ifdef _LIBC +#ifdef _LIBC || cset->nequiv_classes -# endif /* _LIBC */ +#endif /* _LIBC */ )) { unsigned char c = 0; @@ -406,12 +389,7 @@ re_compile_fastmap_iter (regex_t *bufp, const re_dfastate_t *init_state, } } } -#endif /* RE_ENABLE_I18N */ - else if (type == OP_PERIOD -#ifdef RE_ENABLE_I18N - || type == OP_UTF8_PERIOD -#endif /* RE_ENABLE_I18N */ - || type == END_OF_RE) + else if (type == OP_PERIOD || type == OP_UTF8_PERIOD || type == END_OF_RE) { memset (fastmap, '\1', sizeof (char) * SBC_MAX); if (type == END_OF_RE) @@ -550,7 +528,6 @@ regerror (int errcode, const regex_t *__restrict preg, char *__restrict errbuf, weak_alias (__regerror, regerror) -#ifdef RE_ENABLE_I18N /* This static array is used for the map to single-byte characters when UTF-8 is used. Otherwise we would allocate memory just to initialize it the same all the time. UTF-8 is the preferred encoding so this is @@ -558,25 +535,24 @@ weak_alias (__regerror, regerror) static const bitset_t utf8_sb_map = { /* Set the first 128 bits. */ -# if (defined __GNUC__ || __clang_major__ >= 4) && !defined __STRICT_ANSI__ +#if (defined __GNUC__ || __clang_major__ >= 4) && !defined __STRICT_ANSI__ [0 ... 0x80 / BITSET_WORD_BITS - 1] = BITSET_WORD_MAX -# else -# if 4 * BITSET_WORD_BITS < ASCII_CHARS -# error "bitset_word_t is narrower than 32 bits" -# elif 3 * BITSET_WORD_BITS < ASCII_CHARS +#else +# if 4 * BITSET_WORD_BITS < ASCII_CHARS +# error "bitset_word_t is narrower than 32 bits" +# elif 3 * BITSET_WORD_BITS < ASCII_CHARS BITSET_WORD_MAX, BITSET_WORD_MAX, BITSET_WORD_MAX, -# elif 2 * BITSET_WORD_BITS < ASCII_CHARS +# elif 2 * BITSET_WORD_BITS < ASCII_CHARS BITSET_WORD_MAX, BITSET_WORD_MAX, -# elif 1 * BITSET_WORD_BITS < ASCII_CHARS +# elif 1 * BITSET_WORD_BITS < ASCII_CHARS BITSET_WORD_MAX, -# endif +# endif (BITSET_WORD_MAX >> (SBC_MAX % BITSET_WORD_BITS == 0 ? 0 : BITSET_WORD_BITS - SBC_MAX % BITSET_WORD_BITS)) -# endif -}; #endif +}; static void @@ -614,10 +590,8 @@ free_dfa_content (re_dfa_t *dfa) re_free (entry->array); } re_free (dfa->state_table); -#ifdef RE_ENABLE_I18N if (dfa->sb_char != utf8_sb_map) re_free (dfa->sb_char); -#endif re_free (dfa->subexp_map); #ifdef DEBUG re_free (dfa->re_str); @@ -796,11 +770,9 @@ re_compile_internal (regex_t *preg, const char * pattern, size_t length, if (__glibc_unlikely (err != REG_NOERROR)) goto re_compile_internal_free_return; -#ifdef RE_ENABLE_I18N /* If possible, do searching in single byte encoding to speed things up. */ if (dfa->is_utf8 && !(syntax & RE_ICASE) && preg->translate == NULL) optimize_utf8 (dfa); -#endif /* Then create the initial state of the dfa. */ err = create_initial_state (dfa); @@ -830,11 +802,7 @@ init_dfa (re_dfa_t *dfa, size_t pat_len) #ifndef _LIBC const char *codeset_name; #endif -#ifdef RE_ENABLE_I18N size_t max_i18n_object_size = MAX (sizeof (wchar_t), sizeof (wctype_t)); -#else - size_t max_i18n_object_size = 0; -#endif size_t max_object_size = MAX (sizeof (struct re_state_table_entry), MAX (sizeof (re_token_t), @@ -886,7 +854,6 @@ init_dfa (re_dfa_t *dfa, size_t pat_len) dfa->map_notascii = 0; #endif -#ifdef RE_ENABLE_I18N if (dfa->mb_cur_max > 1) { if (dfa->is_utf8) @@ -906,14 +873,13 @@ init_dfa (re_dfa_t *dfa, size_t pat_len) wint_t wch = __btowc (ch); if (wch != WEOF) dfa->sb_char[i] |= (bitset_word_t) 1 << j; -# ifndef _LIBC +#ifndef _LIBC if (isascii (ch) && wch != ch) dfa->map_notascii = 1; -# endif +#endif } } } -#endif if (__glibc_unlikely (dfa->nodes == NULL || dfa->state_table == NULL)) return REG_ESPACE; @@ -933,8 +899,6 @@ init_word_char (re_dfa_t *dfa) dfa->word_ops_used = 1; if (__glibc_likely (dfa->map_notascii == 0)) { - /* Avoid uint32_t and uint64_t as some non-GCC platforms lack - them, an issue when this code is used in Gnulib. */ bitset_word_t bits0 = 0x00000000; bitset_word_t bits1 = 0x03ff0000; bitset_word_t bits2 = 0x87fffffe; @@ -1074,7 +1038,6 @@ create_initial_state (re_dfa_t *dfa) return REG_NOERROR; } -#ifdef RE_ENABLE_I18N /* If it is possible to do searching in single byte encoding instead of UTF-8 to speed things up, set dfa->mb_cur_max to 1, clear is_utf8 and change DFA nodes where needed. */ @@ -1154,7 +1117,6 @@ optimize_utf8 (re_dfa_t *dfa) dfa->is_utf8 = 0; dfa->has_mb_node = dfa->nbackref > 0 || has_period; } -#endif /* Analyze the structure tree, and calculate "first", "next", "edest", "eclosure", and "inveclosure". */ @@ -1792,7 +1754,6 @@ peek_token (re_token_t *token, re_string_t *input, reg_syntax_t syntax) token->opr.c = c; token->word_char = 0; -#ifdef RE_ENABLE_I18N token->mb_partial = 0; if (input->mb_cur_max > 1 && !re_string_first_byte (input, re_string_cur_idx (input))) @@ -1801,7 +1762,6 @@ peek_token (re_token_t *token, re_string_t *input, reg_syntax_t syntax) token->mb_partial = 1; return 1; } -#endif if (c == '\\') { unsigned char c2; @@ -1814,7 +1774,6 @@ peek_token (re_token_t *token, re_string_t *input, reg_syntax_t syntax) c2 = re_string_peek_byte_case (input, 1); token->opr.c = c2; token->type = CHARACTER; -#ifdef RE_ENABLE_I18N if (input->mb_cur_max > 1) { wint_t wc = re_string_wchar_at (input, @@ -1822,7 +1781,6 @@ peek_token (re_token_t *token, re_string_t *input, reg_syntax_t syntax) token->word_char = IS_WIDE_WORD_CHAR (wc) != 0; } else -#endif token->word_char = IS_WORD_CHAR (c2) != 0; switch (c2) @@ -1928,14 +1886,12 @@ peek_token (re_token_t *token, re_string_t *input, reg_syntax_t syntax) } token->type = CHARACTER; -#ifdef RE_ENABLE_I18N if (input->mb_cur_max > 1) { wint_t wc = re_string_wchar_at (input, re_string_cur_idx (input)); token->word_char = IS_WIDE_WORD_CHAR (wc) != 0; } else -#endif token->word_char = IS_WORD_CHAR (token->opr.c); switch (c) @@ -2027,14 +1983,12 @@ peek_token_bracket (re_token_t *token, re_string_t *input, reg_syntax_t syntax) c = re_string_peek_byte (input, 0); token->opr.c = c; -#ifdef RE_ENABLE_I18N if (input->mb_cur_max > 1 && !re_string_first_byte (input, re_string_cur_idx (input))) { token->type = CHARACTER; return 1; } -#endif /* RE_ENABLE_I18N */ if (c == '\\' && (syntax & RE_BACKSLASH_ESCAPE_IN_LISTS) && re_string_cur_idx (input) + 1 < re_string_length (input)) @@ -2084,15 +2038,25 @@ peek_token_bracket (re_token_t *token, re_string_t *input, reg_syntax_t syntax) } switch (c) { - case '-': - token->type = OP_CHARSET_RANGE; - break; case ']': token->type = OP_CLOSE_BRACKET; break; case '^': token->type = OP_NON_MATCH_LIST; break; + case '-': + /* In V7 Unix grep and Unix awk and mawk, [...---...] + (3 adjacent minus signs) stands for a single minus sign. + Support that without breaking anything else. */ + if (! (re_string_cur_idx (input) + 2 < re_string_length (input) + && re_string_peek_byte (input, 1) == '-' + && re_string_peek_byte (input, 2) == '-')) + { + token->type = OP_CHARSET_RANGE; + break; + } + re_string_skip_bytes (input, 2); + FALLTHROUGH; default: token->type = CHARACTER; } @@ -2256,7 +2220,6 @@ parse_expression (re_string_t *regexp, regex_t *preg, re_token_t *token, *err = REG_ESPACE; return NULL; } -#ifdef RE_ENABLE_I18N if (dfa->mb_cur_max > 1) { while (!re_string_eoi (regexp) @@ -2273,7 +2236,6 @@ parse_expression (re_string_t *regexp, regex_t *preg, re_token_t *token, } } } -#endif break; case OP_OPEN_SUBEXP: @@ -2666,40 +2628,30 @@ parse_dup_op (bin_tree_t *elem, re_string_t *regexp, re_dfa_t *dfa, #ifndef _LIBC -# ifdef RE_ENABLE_I18N /* Convert the byte B to the corresponding wide character. In a unibyte locale, treat B as itself. In a multibyte locale, return WEOF if B is an encoding error. */ static wint_t -parse_byte (unsigned char b, re_charset_t *mbcset) +parse_byte (unsigned char b, re_dfa_t const *dfa) { - return mbcset == NULL ? b : __btowc (b); + return dfa->mb_cur_max > 1 ? __btowc (b) : b; } -# endif - /* Local function for parse_bracket_exp only used in case of NOT _LIBC. - Build the range expression which starts from START_ELEM, and ends - at END_ELEM. The result are written to MBCSET and SBCSET. - RANGE_ALLOC is the allocated size of mbcset->range_starts, and - mbcset->range_ends, is a pointer argument since we may - update it. */ +/* Local function for parse_bracket_exp used in _LIBC environment. + Build the range expression which starts from START_ELEM, and ends + at END_ELEM. The result are written to MBCSET and SBCSET. + RANGE_ALLOC is the allocated size of mbcset->range_starts, and + mbcset->range_ends, is a pointer argument since we may + update it. */ static reg_errcode_t -# ifdef RE_ENABLE_I18N -build_range_exp (const reg_syntax_t syntax, - bitset_t sbcset, - re_charset_t *mbcset, - Idx *range_alloc, - const bracket_elem_t *start_elem, - const bracket_elem_t *end_elem) -# else /* not RE_ENABLE_I18N */ -build_range_exp (const reg_syntax_t syntax, - bitset_t sbcset, - const bracket_elem_t *start_elem, - const bracket_elem_t *end_elem) -# endif /* not RE_ENABLE_I18N */ +build_range_exp (bitset_t sbcset, re_charset_t *mbcset, Idx *range_alloc, + bracket_elem_t *start_elem, bracket_elem_t *end_elem, + re_dfa_t *dfa, reg_syntax_t syntax, uint_fast32_t nrules, + const unsigned char *collseqmb, const char *collseqwc, + int_fast32_t table_size, const void *symb_table, + const unsigned char *extra) { - unsigned int start_ch, end_ch; /* Equivalence Classes and Character Classes can't be a range start/end. */ if (__glibc_unlikely (start_elem->type == EQUIV_CLASS || start_elem->type == CHAR_CLASS @@ -2715,110 +2667,88 @@ build_range_exp (const reg_syntax_t syntax, && strlen ((char *) end_elem->opr.name) > 1))) return REG_ECOLLATE; -# ifdef RE_ENABLE_I18N - { - wchar_t wc; - wint_t start_wc; - wint_t end_wc; - + unsigned int start_ch = ((start_elem->type == SB_CHAR) ? start_elem->opr.ch : ((start_elem->type == COLL_SYM) ? start_elem->opr.name[0] - : 0)); + : 0)), end_ch = ((end_elem->type == SB_CHAR) ? end_elem->opr.ch : ((end_elem->type == COLL_SYM) ? end_elem->opr.name[0] : 0)); + wint_t start_wc = ((start_elem->type == SB_CHAR || start_elem->type == COLL_SYM) - ? parse_byte (start_ch, mbcset) : start_elem->opr.wch); + ? parse_byte (start_ch, dfa) : start_elem->opr.wch), end_wc = ((end_elem->type == SB_CHAR || end_elem->type == COLL_SYM) - ? parse_byte (end_ch, mbcset) : end_elem->opr.wch); - if (start_wc == WEOF || end_wc == WEOF) - return REG_ECOLLATE; - else if (__glibc_unlikely ((syntax & RE_NO_EMPTY_RANGES) - && start_wc > end_wc)) - return REG_ERANGE; - - /* Got valid collation sequence values, add them as a new entry. - However, for !_LIBC we have no collation elements: if the - character set is single byte, the single byte character set - that we build below suffices. parse_bracket_exp passes - no MBCSET if dfa->mb_cur_max == 1. */ - if (mbcset) - { - /* Check the space of the arrays. */ - if (__glibc_unlikely (*range_alloc == mbcset->nranges)) - { - /* There is not enough space, need realloc. */ - wchar_t *new_array_start, *new_array_end; - Idx new_nranges; - - /* +1 in case of mbcset->nranges is 0. */ - new_nranges = 2 * mbcset->nranges + 1; - /* Use realloc since mbcset->range_starts and mbcset->range_ends - are NULL if *range_alloc == 0. */ - new_array_start = re_realloc (mbcset->range_starts, wchar_t, - new_nranges); - new_array_end = re_realloc (mbcset->range_ends, wchar_t, - new_nranges); + ? parse_byte (end_ch, dfa) : end_elem->opr.wch); - if (__glibc_unlikely (new_array_start == NULL - || new_array_end == NULL)) - { - re_free (new_array_start); - re_free (new_array_end); - return REG_ESPACE; - } + if (start_wc == WEOF || end_wc == WEOF) + return REG_ECOLLATE; + else if (__glibc_unlikely ((syntax & RE_NO_EMPTY_RANGES) + && start_wc > end_wc)) + return REG_ERANGE; - mbcset->range_starts = new_array_start; - mbcset->range_ends = new_array_end; - *range_alloc = new_nranges; - } + /* Got valid collation sequence values, add them as a new entry. + However, for !_LIBC we have no collation elements: if the + character set is single byte, the single byte character set + that we build below suffices. parse_bracket_exp passes + no MBCSET if dfa->mb_cur_max == 1. */ + if (dfa->mb_cur_max > 1) + { + /* Check the space of the arrays. */ + if (__glibc_unlikely (*range_alloc == mbcset->nranges)) + { + /* There is not enough space, need realloc. */ + wchar_t *new_array_start, *new_array_end; + Idx new_nranges; - mbcset->range_starts[mbcset->nranges] = start_wc; - mbcset->range_ends[mbcset->nranges++] = end_wc; - } + /* +1 in case of mbcset->nranges is 0. */ + new_nranges = 2 * mbcset->nranges + 1; + /* Use realloc since mbcset->range_starts and mbcset->range_ends + are NULL if *range_alloc == 0. */ + new_array_start = re_realloc (mbcset->range_starts, wchar_t, + new_nranges); + new_array_end = re_realloc (mbcset->range_ends, wchar_t, + new_nranges); + + if (__glibc_unlikely (new_array_start == NULL + || new_array_end == NULL)) + { + re_free (new_array_start); + re_free (new_array_end); + return REG_ESPACE; + } + + mbcset->range_starts = new_array_start; + mbcset->range_ends = new_array_end; + *range_alloc = new_nranges; + } + + mbcset->range_starts[mbcset->nranges] = start_wc; + mbcset->range_ends[mbcset->nranges++] = end_wc; + } + + /* Build the table for single byte characters. */ + for (wchar_t wc = 0; wc < SBC_MAX; ++wc) + { + if (start_wc <= wc && wc <= end_wc) + bitset_set (sbcset, wc); + } - /* Build the table for single byte characters. */ - for (wc = 0; wc < SBC_MAX; ++wc) - { - if (start_wc <= wc && wc <= end_wc) - bitset_set (sbcset, wc); - } - } -# else /* not RE_ENABLE_I18N */ - { - unsigned int ch; - start_ch = ((start_elem->type == SB_CHAR ) ? start_elem->opr.ch - : ((start_elem->type == COLL_SYM) ? start_elem->opr.name[0] - : 0)); - end_ch = ((end_elem->type == SB_CHAR ) ? end_elem->opr.ch - : ((end_elem->type == COLL_SYM) ? end_elem->opr.name[0] - : 0)); - if (start_ch > end_ch) - return REG_ERANGE; - /* Build the table for single byte characters. */ - for (ch = 0; ch < SBC_MAX; ++ch) - if (start_ch <= ch && ch <= end_ch) - bitset_set (sbcset, ch); - } -# endif /* not RE_ENABLE_I18N */ return REG_NOERROR; } #endif /* not _LIBC */ #ifndef _LIBC -/* Helper function for parse_bracket_exp only used in case of NOT _LIBC.. +/* Helper function for parse_bracket_exp only used in case of NOT _LIBC. Build the collating element which is represented by NAME. The result are written to MBCSET and SBCSET. COLL_SYM_ALLOC is the allocated size of mbcset->coll_sym, is a pointer argument since we may update it. */ static reg_errcode_t -# ifdef RE_ENABLE_I18N build_collating_symbol (bitset_t sbcset, re_charset_t *mbcset, - Idx *coll_sym_alloc, const unsigned char *name) -# else /* not RE_ENABLE_I18N */ -build_collating_symbol (bitset_t sbcset, const unsigned char *name) -# endif /* not RE_ENABLE_I18N */ + Idx *coll_sym_alloc, const unsigned char *name, + uint_fast32_t nrules, int_fast32_t table_size, + const void *symb_table, const unsigned char *extra) { size_t name_len = strlen ((const char *) name); if (__glibc_unlikely (name_len != 1)) @@ -2831,271 +2761,280 @@ build_collating_symbol (bitset_t sbcset, const unsigned char *name) } #endif /* not _LIBC */ -/* This function parse bracket expression like "[abc]", "[a-c]", - "[[.a-a.]]" etc. */ - -static bin_tree_t * -parse_bracket_exp (re_string_t *regexp, re_dfa_t *dfa, re_token_t *token, - reg_syntax_t syntax, reg_errcode_t *err) -{ #ifdef _LIBC - const unsigned char *collseqmb; - const char *collseqwc; - uint32_t nrules; - int32_t table_size; - const int32_t *symb_table; - const unsigned char *extra; - - /* Local function for parse_bracket_exp used in _LIBC environment. - Seek the collating symbol entry corresponding to NAME. - Return the index of the symbol in the SYMB_TABLE, - or -1 if not found. */ - - auto inline int32_t - __attribute__ ((always_inline)) - seek_collating_symbol_entry (const unsigned char *name, size_t name_len) - { - int32_t elem; - - for (elem = 0; elem < table_size; elem++) - if (symb_table[2 * elem] != 0) - { - int32_t idx = symb_table[2 * elem + 1]; - /* Skip the name of collating element name. */ - idx += 1 + extra[idx]; - if (/* Compare the length of the name. */ - name_len == extra[idx] - /* Compare the name. */ - && memcmp (name, &extra[idx + 1], name_len) == 0) - /* Yep, this is the entry. */ - return elem; - } - return -1; - } +/* Local function for parse_bracket_exp used in _LIBC environment. + Seek the collating symbol entry corresponding to NAME. + Return the index of the symbol in the SYMB_TABLE, + or -1 if not found. */ + +static __always_inline int32_t +seek_collating_symbol_entry (const unsigned char *name, size_t name_len, + const int32_t *symb_table, + int_fast32_t table_size, + const unsigned char *extra) +{ + int_fast32_t elem; - /* Local function for parse_bracket_exp used in _LIBC environment. - Look up the collation sequence value of BR_ELEM. - Return the value if succeeded, UINT_MAX otherwise. */ + for (elem = 0; elem < table_size; elem++) + if (symb_table[2 * elem] != 0) + { + int32_t idx = symb_table[2 * elem + 1]; + /* Skip the name of collating element name. */ + idx += 1 + extra[idx]; + if (/* Compare the length of the name. */ + name_len == extra[idx] + /* Compare the name. */ + && memcmp (name, &extra[idx + 1], name_len) == 0) + /* Yep, this is the entry. */ + return elem; + } + return -1; +} - auto inline unsigned int - __attribute__ ((always_inline)) - lookup_collation_sequence_value (bracket_elem_t *br_elem) +/* Local function for parse_bracket_exp used in _LIBC environment. + Look up the collation sequence value of BR_ELEM. + Return the value if succeeded, UINT_MAX otherwise. */ + +static __always_inline unsigned int +lookup_collation_sequence_value (bracket_elem_t *br_elem, uint32_t nrules, + const unsigned char *collseqmb, + const char *collseqwc, + int_fast32_t table_size, + const int32_t *symb_table, + const unsigned char *extra) +{ + if (br_elem->type == SB_CHAR) { - if (br_elem->type == SB_CHAR) - { - /* - if (MB_CUR_MAX == 1) - */ - if (nrules == 0) - return collseqmb[br_elem->opr.ch]; - else - { - wint_t wc = __btowc (br_elem->opr.ch); - return __collseq_table_lookup (collseqwc, wc); - } - } - else if (br_elem->type == MB_CHAR) + /* if (MB_CUR_MAX == 1) */ + if (nrules == 0) + return collseqmb[br_elem->opr.ch]; + else { - if (nrules != 0) - return __collseq_table_lookup (collseqwc, br_elem->opr.wch); + wint_t wc = __btowc (br_elem->opr.ch); + return __collseq_table_lookup (collseqwc, wc); } - else if (br_elem->type == COLL_SYM) + } + else if (br_elem->type == MB_CHAR) + { + if (nrules != 0) + return __collseq_table_lookup (collseqwc, br_elem->opr.wch); + } + else if (br_elem->type == COLL_SYM) + { + size_t sym_name_len = strlen ((char *) br_elem->opr.name); + if (nrules != 0) { - size_t sym_name_len = strlen ((char *) br_elem->opr.name); - if (nrules != 0) + int32_t elem, idx; + elem = seek_collating_symbol_entry (br_elem->opr.name, + sym_name_len, + symb_table, table_size, + extra); + if (elem != -1) { - int32_t elem, idx; - elem = seek_collating_symbol_entry (br_elem->opr.name, - sym_name_len); - if (elem != -1) - { - /* We found the entry. */ - idx = symb_table[2 * elem + 1]; - /* Skip the name of collating element name. */ - idx += 1 + extra[idx]; - /* Skip the byte sequence of the collating element. */ - idx += 1 + extra[idx]; - /* Adjust for the alignment. */ - idx = (idx + 3) & ~3; - /* Skip the multibyte collation sequence value. */ - idx += sizeof (unsigned int); - /* Skip the wide char sequence of the collating element. */ - idx += sizeof (unsigned int) * - (1 + *(unsigned int *) (extra + idx)); - /* Return the collation sequence value. */ - return *(unsigned int *) (extra + idx); - } - else if (sym_name_len == 1) - { - /* No valid character. Match it as a single byte - character. */ - return collseqmb[br_elem->opr.name[0]]; - } + /* We found the entry. */ + idx = symb_table[2 * elem + 1]; + /* Skip the name of collating element name. */ + idx += 1 + extra[idx]; + /* Skip the byte sequence of the collating element. */ + idx += 1 + extra[idx]; + /* Adjust for the alignment. */ + idx = (idx + 3) & ~3; + /* Skip the multibyte collation sequence value. */ + idx += sizeof (unsigned int); + /* Skip the wide char sequence of the collating element. */ + idx += sizeof (unsigned int) * + (1 + *(unsigned int *) (extra + idx)); + /* Return the collation sequence value. */ + return *(unsigned int *) (extra + idx); } else if (sym_name_len == 1) - return collseqmb[br_elem->opr.name[0]]; + { + /* No valid character. Match it as a single byte + character. */ + return collseqmb[br_elem->opr.name[0]]; + } } - return UINT_MAX; + else if (sym_name_len == 1) + return collseqmb[br_elem->opr.name[0]]; } + return UINT_MAX; +} - /* Local function for parse_bracket_exp used in _LIBC environment. - Build the range expression which starts from START_ELEM, and ends - at END_ELEM. The result are written to MBCSET and SBCSET. - RANGE_ALLOC is the allocated size of mbcset->range_starts, and - mbcset->range_ends, is a pointer argument since we may - update it. */ +/* Local function for parse_bracket_exp used in _LIBC environment. + Build the range expression which starts from START_ELEM, and ends + at END_ELEM. The result are written to MBCSET and SBCSET. + RANGE_ALLOC is the allocated size of mbcset->range_starts, and + mbcset->range_ends, is a pointer argument since we may + update it. */ + +static __always_inline reg_errcode_t +build_range_exp (bitset_t sbcset, re_charset_t *mbcset, Idx *range_alloc, + bracket_elem_t *start_elem, bracket_elem_t *end_elem, + re_dfa_t *dfa, reg_syntax_t syntax, uint32_t nrules, + const unsigned char *collseqmb, const char *collseqwc, + int_fast32_t table_size, const int32_t *symb_table, + const unsigned char *extra) +{ + unsigned int ch; + uint32_t start_collseq; + uint32_t end_collseq; - auto inline reg_errcode_t - __attribute__ ((always_inline)) - build_range_exp (bitset_t sbcset, re_charset_t *mbcset, int *range_alloc, - bracket_elem_t *start_elem, bracket_elem_t *end_elem) - { - unsigned int ch; - uint32_t start_collseq; - uint32_t end_collseq; - - /* Equivalence Classes and Character Classes can't be a range - start/end. */ - if (__glibc_unlikely (start_elem->type == EQUIV_CLASS - || start_elem->type == CHAR_CLASS - || end_elem->type == EQUIV_CLASS - || end_elem->type == CHAR_CLASS)) - return REG_ERANGE; + /* Equivalence Classes and Character Classes can't be a range + start/end. */ + if (__glibc_unlikely (start_elem->type == EQUIV_CLASS + || start_elem->type == CHAR_CLASS + || end_elem->type == EQUIV_CLASS + || end_elem->type == CHAR_CLASS)) + return REG_ERANGE; - /* FIXME: Implement rational ranges here, too. */ - start_collseq = lookup_collation_sequence_value (start_elem); - end_collseq = lookup_collation_sequence_value (end_elem); - /* Check start/end collation sequence values. */ - if (__glibc_unlikely (start_collseq == UINT_MAX - || end_collseq == UINT_MAX)) - return REG_ECOLLATE; - if (__glibc_unlikely ((syntax & RE_NO_EMPTY_RANGES) - && start_collseq > end_collseq)) - return REG_ERANGE; + /* FIXME: Implement rational ranges here, too. */ + start_collseq = lookup_collation_sequence_value (start_elem, nrules, collseqmb, collseqwc, + table_size, symb_table, extra); + end_collseq = lookup_collation_sequence_value (end_elem, nrules, collseqmb, collseqwc, + table_size, symb_table, extra); + /* Check start/end collation sequence values. */ + if (__glibc_unlikely (start_collseq == UINT_MAX + || end_collseq == UINT_MAX)) + return REG_ECOLLATE; + if (__glibc_unlikely ((syntax & RE_NO_EMPTY_RANGES) + && start_collseq > end_collseq)) + return REG_ERANGE; - /* Got valid collation sequence values, add them as a new entry. - However, if we have no collation elements, and the character set - is single byte, the single byte character set that we - build below suffices. */ - if (nrules > 0 || dfa->mb_cur_max > 1) + /* Got valid collation sequence values, add them as a new entry. + However, if we have no collation elements, and the character set + is single byte, the single byte character set that we + build below suffices. */ + if (nrules > 0 || dfa->mb_cur_max > 1) + { + /* Check the space of the arrays. */ + if (__glibc_unlikely (*range_alloc == mbcset->nranges)) { - /* Check the space of the arrays. */ - if (__glibc_unlikely (*range_alloc == mbcset->nranges)) - { - /* There is not enough space, need realloc. */ - uint32_t *new_array_start; - uint32_t *new_array_end; - Idx new_nranges; - - /* +1 in case of mbcset->nranges is 0. */ - new_nranges = 2 * mbcset->nranges + 1; - new_array_start = re_realloc (mbcset->range_starts, uint32_t, - new_nranges); - new_array_end = re_realloc (mbcset->range_ends, uint32_t, - new_nranges); - - if (__glibc_unlikely (new_array_start == NULL - || new_array_end == NULL)) - return REG_ESPACE; + /* There is not enough space, need realloc. */ + uint32_t *new_array_start; + uint32_t *new_array_end; + int new_nranges; - mbcset->range_starts = new_array_start; - mbcset->range_ends = new_array_end; - *range_alloc = new_nranges; - } + /* +1 in case of mbcset->nranges is 0. */ + new_nranges = 2 * mbcset->nranges + 1; + new_array_start = re_realloc (mbcset->range_starts, uint32_t, + new_nranges); + new_array_end = re_realloc (mbcset->range_ends, uint32_t, + new_nranges); - mbcset->range_starts[mbcset->nranges] = start_collseq; - mbcset->range_ends[mbcset->nranges++] = end_collseq; - } + if (__glibc_unlikely (new_array_start == NULL + || new_array_end == NULL)) + return REG_ESPACE; - /* Build the table for single byte characters. */ - for (ch = 0; ch < SBC_MAX; ch++) - { - uint32_t ch_collseq; - /* - if (MB_CUR_MAX == 1) - */ - if (nrules == 0) - ch_collseq = collseqmb[ch]; - else - ch_collseq = __collseq_table_lookup (collseqwc, __btowc (ch)); - if (start_collseq <= ch_collseq && ch_collseq <= end_collseq) - bitset_set (sbcset, ch); + mbcset->range_starts = new_array_start; + mbcset->range_ends = new_array_end; + *range_alloc = new_nranges; } - return REG_NOERROR; + + mbcset->range_starts[mbcset->nranges] = start_collseq; + mbcset->range_ends[mbcset->nranges++] = end_collseq; } - /* Local function for parse_bracket_exp used in _LIBC environment. - Build the collating element which is represented by NAME. - The result are written to MBCSET and SBCSET. - COLL_SYM_ALLOC is the allocated size of mbcset->coll_sym, is a - pointer argument since we may update it. */ + /* Build the table for single byte characters. */ + for (ch = 0; ch < SBC_MAX; ch++) + { + uint32_t ch_collseq; + /* if (MB_CUR_MAX == 1) */ + if (nrules == 0) + ch_collseq = collseqmb[ch]; + else + ch_collseq = __collseq_table_lookup (collseqwc, __btowc (ch)); + if (start_collseq <= ch_collseq && ch_collseq <= end_collseq) + bitset_set (sbcset, ch); + } + return REG_NOERROR; +} - auto inline reg_errcode_t - __attribute__ ((always_inline)) - build_collating_symbol (bitset_t sbcset, re_charset_t *mbcset, - Idx *coll_sym_alloc, const unsigned char *name) +/* Local function for parse_bracket_exp used in _LIBC environment. + Build the collating element which is represented by NAME. + The result are written to MBCSET and SBCSET. + COLL_SYM_ALLOC is the allocated size of mbcset->coll_sym, is a + pointer argument since we may update it. */ + +static __always_inline reg_errcode_t +build_collating_symbol (bitset_t sbcset, re_charset_t *mbcset, + Idx *coll_sym_alloc, const unsigned char *name, + uint_fast32_t nrules, int_fast32_t table_size, + const int32_t *symb_table, const unsigned char *extra) +{ + int32_t elem, idx; + size_t name_len = strlen ((const char *) name); + if (nrules != 0) { - int32_t elem, idx; - size_t name_len = strlen ((const char *) name); - if (nrules != 0) + elem = seek_collating_symbol_entry (name, name_len, symb_table, + table_size, extra); + if (elem != -1) { - elem = seek_collating_symbol_entry (name, name_len); - if (elem != -1) - { - /* We found the entry. */ - idx = symb_table[2 * elem + 1]; - /* Skip the name of collating element name. */ - idx += 1 + extra[idx]; - } - else if (name_len == 1) - { - /* No valid character, treat it as a normal - character. */ - bitset_set (sbcset, name[0]); - return REG_NOERROR; - } - else - return REG_ECOLLATE; - - /* Got valid collation sequence, add it as a new entry. */ - /* Check the space of the arrays. */ - if (__glibc_unlikely (*coll_sym_alloc == mbcset->ncoll_syms)) - { - /* Not enough, realloc it. */ - /* +1 in case of mbcset->ncoll_syms is 0. */ - Idx new_coll_sym_alloc = 2 * mbcset->ncoll_syms + 1; - /* Use realloc since mbcset->coll_syms is NULL - if *alloc == 0. */ - int32_t *new_coll_syms = re_realloc (mbcset->coll_syms, int32_t, - new_coll_sym_alloc); - if (__glibc_unlikely (new_coll_syms == NULL)) - return REG_ESPACE; - mbcset->coll_syms = new_coll_syms; - *coll_sym_alloc = new_coll_sym_alloc; - } - mbcset->coll_syms[mbcset->ncoll_syms++] = idx; + /* We found the entry. */ + idx = symb_table[2 * elem + 1]; + /* Skip the name of collating element name. */ + idx += 1 + extra[idx]; + } + else if (name_len == 1) + { + /* No valid character, treat it as a normal + character. */ + bitset_set (sbcset, name[0]); return REG_NOERROR; } else + return REG_ECOLLATE; + + /* Got valid collation sequence, add it as a new entry. */ + /* Check the space of the arrays. */ + if (__glibc_unlikely (*coll_sym_alloc == mbcset->ncoll_syms)) { - if (__glibc_unlikely (name_len != 1)) - return REG_ECOLLATE; - else - { - bitset_set (sbcset, name[0]); - return REG_NOERROR; - } + /* Not enough, realloc it. */ + /* +1 in case of mbcset->ncoll_syms is 0. */ + int new_coll_sym_alloc = 2 * mbcset->ncoll_syms + 1; + /* Use realloc since mbcset->coll_syms is NULL + if *alloc == 0. */ + int32_t *new_coll_syms = re_realloc (mbcset->coll_syms, int32_t, + new_coll_sym_alloc); + if (__glibc_unlikely (new_coll_syms == NULL)) + return REG_ESPACE; + mbcset->coll_syms = new_coll_syms; + *coll_sym_alloc = new_coll_sym_alloc; } + mbcset->coll_syms[mbcset->ncoll_syms++] = idx; + return REG_NOERROR; } -#endif + else + { + if (__glibc_unlikely (name_len != 1)) + return REG_ECOLLATE; + else + { + bitset_set (sbcset, name[0]); + return REG_NOERROR; + } + } +} +#endif /* _LIBC */ + +/* This function parse bracket expression like "[abc]", "[a-c]", + "[[.a-a.]]" etc. */ + +static bin_tree_t * +parse_bracket_exp (re_string_t *regexp, re_dfa_t *dfa, re_token_t *token, + reg_syntax_t syntax, reg_errcode_t *err) +{ + const unsigned char *collseqmb = NULL; + const char *collseqwc = NULL; + uint_fast32_t nrules = 0; + int_fast32_t table_size = 0; + const void *symb_table = NULL; + const unsigned char *extra = NULL; re_token_t br_token; re_bitset_ptr_t sbcset; -#ifdef RE_ENABLE_I18N re_charset_t *mbcset; Idx coll_sym_alloc = 0, range_alloc = 0, mbchar_alloc = 0; Idx equiv_class_alloc = 0, char_class_alloc = 0; -#endif /* not RE_ENABLE_I18N */ bool non_match = false; bin_tree_t *work_tree; int token_len; @@ -3111,26 +3050,17 @@ parse_bracket_exp (re_string_t *regexp, re_dfa_t *dfa, re_token_t *token, */ collseqwc = _NL_CURRENT (LC_COLLATE, _NL_COLLATE_COLLSEQWC); table_size = _NL_CURRENT_WORD (LC_COLLATE, _NL_COLLATE_SYMB_HASH_SIZEMB); - symb_table = (const int32_t *) _NL_CURRENT (LC_COLLATE, - _NL_COLLATE_SYMB_TABLEMB); + symb_table = _NL_CURRENT (LC_COLLATE, _NL_COLLATE_SYMB_TABLEMB); extra = (const unsigned char *) _NL_CURRENT (LC_COLLATE, _NL_COLLATE_SYMB_EXTRAMB); } #endif sbcset = (re_bitset_ptr_t) calloc (sizeof (bitset_t), 1); -#ifdef RE_ENABLE_I18N mbcset = (re_charset_t *) calloc (sizeof (re_charset_t), 1); -#endif /* RE_ENABLE_I18N */ -#ifdef RE_ENABLE_I18N if (__glibc_unlikely (sbcset == NULL || mbcset == NULL)) -#else - if (__glibc_unlikely (sbcset == NULL)) -#endif /* RE_ENABLE_I18N */ { re_free (sbcset); -#ifdef RE_ENABLE_I18N re_free (mbcset); -#endif *err = REG_ESPACE; return NULL; } @@ -3143,9 +3073,7 @@ parse_bracket_exp (re_string_t *regexp, re_dfa_t *dfa, re_token_t *token, } if (token->type == OP_NON_MATCH_LIST) { -#ifdef RE_ENABLE_I18N mbcset->non_match = 1; -#endif /* not RE_ENABLE_I18N */ non_match = true; if (syntax & RE_HAT_LISTS_NOT_NEWLINE) bitset_set (sbcset, '\n'); @@ -3228,18 +3156,10 @@ parse_bracket_exp (re_string_t *regexp, re_dfa_t *dfa, re_token_t *token, token_len = peek_token_bracket (token, regexp, syntax); -#ifdef _LIBC *err = build_range_exp (sbcset, mbcset, &range_alloc, - &start_elem, &end_elem); -#else -# ifdef RE_ENABLE_I18N - *err = build_range_exp (syntax, sbcset, - dfa->mb_cur_max > 1 ? mbcset : NULL, - &range_alloc, &start_elem, &end_elem); -# else - *err = build_range_exp (syntax, sbcset, &start_elem, &end_elem); -# endif -#endif /* RE_ENABLE_I18N */ + &start_elem, &end_elem, + dfa, syntax, nrules, collseqmb, collseqwc, + table_size, symb_table, extra); if (__glibc_unlikely (*err != REG_NOERROR)) goto parse_bracket_exp_free_return; } @@ -3250,7 +3170,6 @@ parse_bracket_exp (re_string_t *regexp, re_dfa_t *dfa, re_token_t *token, case SB_CHAR: bitset_set (sbcset, start_elem.opr.ch); break; -#ifdef RE_ENABLE_I18N case MB_CHAR: /* Check whether the array has enough space. */ if (__glibc_unlikely (mbchar_alloc == mbcset->nmbchars)) @@ -3268,30 +3187,24 @@ parse_bracket_exp (re_string_t *regexp, re_dfa_t *dfa, re_token_t *token, } mbcset->mbchars[mbcset->nmbchars++] = start_elem.opr.wch; break; -#endif /* RE_ENABLE_I18N */ case EQUIV_CLASS: *err = build_equiv_class (sbcset, -#ifdef RE_ENABLE_I18N mbcset, &equiv_class_alloc, -#endif /* RE_ENABLE_I18N */ start_elem.opr.name); if (__glibc_unlikely (*err != REG_NOERROR)) goto parse_bracket_exp_free_return; break; case COLL_SYM: *err = build_collating_symbol (sbcset, -#ifdef RE_ENABLE_I18N mbcset, &coll_sym_alloc, -#endif /* RE_ENABLE_I18N */ - start_elem.opr.name); + start_elem.opr.name, + nrules, table_size, symb_table, extra); if (__glibc_unlikely (*err != REG_NOERROR)) goto parse_bracket_exp_free_return; break; case CHAR_CLASS: *err = build_charclass (regexp->trans, sbcset, -#ifdef RE_ENABLE_I18N mbcset, &char_class_alloc, -#endif /* RE_ENABLE_I18N */ (const char *) start_elem.opr.name, syntax); if (__glibc_unlikely (*err != REG_NOERROR)) @@ -3317,7 +3230,6 @@ parse_bracket_exp (re_string_t *regexp, re_dfa_t *dfa, re_token_t *token, if (non_match) bitset_not (sbcset); -#ifdef RE_ENABLE_I18N /* Ensure only single byte characters are set. */ if (dfa->mb_cur_max > 1) bitset_mask (sbcset, dfa->sb_char); @@ -3361,11 +3273,8 @@ parse_bracket_exp (re_string_t *regexp, re_dfa_t *dfa, re_token_t *token, } } else -#endif /* not RE_ENABLE_I18N */ { -#ifdef RE_ENABLE_I18N free_charset (mbcset); -#endif /* Build a tree for simple bracket. */ br_token.type = SIMPLE_BRACKET; br_token.opr.sbcset = sbcset; @@ -3379,9 +3288,7 @@ parse_bracket_exp (re_string_t *regexp, re_dfa_t *dfa, re_token_t *token, *err = REG_ESPACE; parse_bracket_exp_free_return: re_free (sbcset); -#ifdef RE_ENABLE_I18N free_charset (mbcset); -#endif /* RE_ENABLE_I18N */ return NULL; } @@ -3392,7 +3299,6 @@ parse_bracket_element (bracket_elem_t *elem, re_string_t *regexp, re_token_t *token, int token_len, re_dfa_t *dfa, reg_syntax_t syntax, bool accept_hyphen) { -#ifdef RE_ENABLE_I18N int cur_char_size; cur_char_size = re_string_char_size_at (regexp, re_string_cur_idx (regexp)); if (cur_char_size > 1) @@ -3402,7 +3308,6 @@ parse_bracket_element (bracket_elem_t *elem, re_string_t *regexp, re_string_skip_bytes (regexp, cur_char_size); return REG_NOERROR; } -#endif /* RE_ENABLE_I18N */ re_string_skip_bytes (regexp, token_len); /* Skip a token. */ if (token->type == OP_OPEN_COLL_ELEM || token->type == OP_OPEN_CHAR_CLASS || token->type == OP_OPEN_EQUIV_CLASS) @@ -3475,12 +3380,8 @@ parse_bracket_symbol (bracket_elem_t *elem, re_string_t *regexp, is a pointer argument since we may update it. */ static reg_errcode_t -#ifdef RE_ENABLE_I18N build_equiv_class (bitset_t sbcset, re_charset_t *mbcset, Idx *equiv_class_alloc, const unsigned char *name) -#else /* not RE_ENABLE_I18N */ -build_equiv_class (bitset_t sbcset, const unsigned char *name) -#endif /* not RE_ENABLE_I18N */ { #ifdef _LIBC uint32_t nrules = _NL_CURRENT_WORD (LC_COLLATE, _NL_COLLATE_NRULES); @@ -3560,14 +3461,9 @@ build_equiv_class (bitset_t sbcset, const unsigned char *name) is a pointer argument since we may update it. */ static reg_errcode_t -#ifdef RE_ENABLE_I18N build_charclass (RE_TRANSLATE_TYPE trans, bitset_t sbcset, re_charset_t *mbcset, Idx *char_class_alloc, const char *class_name, reg_syntax_t syntax) -#else /* not RE_ENABLE_I18N */ -build_charclass (RE_TRANSLATE_TYPE trans, bitset_t sbcset, - const char *class_name, reg_syntax_t syntax) -#endif /* not RE_ENABLE_I18N */ { int i; const char *name = class_name; @@ -3578,7 +3474,6 @@ build_charclass (RE_TRANSLATE_TYPE trans, bitset_t sbcset, && (strcmp (name, "upper") == 0 || strcmp (name, "lower") == 0)) name = "alpha"; -#ifdef RE_ENABLE_I18N /* Check the space of the arrays. */ if (__glibc_unlikely (*char_class_alloc == mbcset->nchar_classes)) { @@ -3594,7 +3489,6 @@ build_charclass (RE_TRANSLATE_TYPE trans, bitset_t sbcset, *char_class_alloc = new_char_class_alloc; } mbcset->char_classes[mbcset->nchar_classes++] = __wctype (name); -#endif /* RE_ENABLE_I18N */ #define BUILD_CHARCLASS_LOOP(ctype_func) \ do { \ @@ -3649,10 +3543,8 @@ build_charclass_op (re_dfa_t *dfa, RE_TRANSLATE_TYPE trans, reg_errcode_t *err) { re_bitset_ptr_t sbcset; -#ifdef RE_ENABLE_I18N re_charset_t *mbcset; Idx alloc = 0; -#endif /* not RE_ENABLE_I18N */ reg_errcode_t ret; bin_tree_t *tree; @@ -3662,7 +3554,6 @@ build_charclass_op (re_dfa_t *dfa, RE_TRANSLATE_TYPE trans, *err = REG_ESPACE; return NULL; } -#ifdef RE_ENABLE_I18N mbcset = (re_charset_t *) calloc (sizeof (re_charset_t), 1); if (__glibc_unlikely (mbcset == NULL)) { @@ -3671,21 +3562,14 @@ build_charclass_op (re_dfa_t *dfa, RE_TRANSLATE_TYPE trans, return NULL; } mbcset->non_match = non_match; -#endif /* RE_ENABLE_I18N */ /* We don't care the syntax in this case. */ - ret = build_charclass (trans, sbcset, -#ifdef RE_ENABLE_I18N - mbcset, &alloc, -#endif /* RE_ENABLE_I18N */ - class_name, 0); + ret = build_charclass (trans, sbcset, mbcset, &alloc, class_name, 0); if (__glibc_unlikely (ret != REG_NOERROR)) { re_free (sbcset); -#ifdef RE_ENABLE_I18N free_charset (mbcset); -#endif /* RE_ENABLE_I18N */ *err = ret; return NULL; } @@ -3697,11 +3581,9 @@ build_charclass_op (re_dfa_t *dfa, RE_TRANSLATE_TYPE trans, if (non_match) bitset_not (sbcset); -#ifdef RE_ENABLE_I18N /* Ensure only single byte characters are set. */ if (dfa->mb_cur_max > 1) bitset_mask (sbcset, dfa->sb_char); -#endif /* Build a tree for simple bracket. */ re_token_t br_token = { .type = SIMPLE_BRACKET, .opr.sbcset = sbcset }; @@ -3709,7 +3591,6 @@ build_charclass_op (re_dfa_t *dfa, RE_TRANSLATE_TYPE trans, if (__glibc_unlikely (tree == NULL)) goto build_word_op_espace; -#ifdef RE_ENABLE_I18N if (dfa->mb_cur_max > 1) { bin_tree_t *mbc_tree; @@ -3730,15 +3611,10 @@ build_charclass_op (re_dfa_t *dfa, RE_TRANSLATE_TYPE trans, free_charset (mbcset); return tree; } -#else /* not RE_ENABLE_I18N */ - return tree; -#endif /* not RE_ENABLE_I18N */ build_word_op_espace: re_free (sbcset); -#ifdef RE_ENABLE_I18N free_charset (mbcset); -#endif /* RE_ENABLE_I18N */ *err = REG_ESPACE; return NULL; } @@ -3771,21 +3647,19 @@ fetch_number (re_string_t *input, re_token_t *token, reg_syntax_t syntax) return num; } -#ifdef RE_ENABLE_I18N static void free_charset (re_charset_t *cset) { re_free (cset->mbchars); -# ifdef _LIBC +#ifdef _LIBC re_free (cset->coll_syms); re_free (cset->equiv_classes); -# endif +#endif re_free (cset->range_starts); re_free (cset->range_ends); re_free (cset->char_classes); re_free (cset); } -#endif /* RE_ENABLE_I18N */ /* Functions for binary tree operation. */ @@ -3851,13 +3725,10 @@ mark_opt_subexp (void *extra, bin_tree_t *node) static void free_token (re_token_t *node) { -#ifdef RE_ENABLE_I18N if (node->type == COMPLEX_BRACKET && node->duplicated == 0) free_charset (node->opr.mbcset); - else -#endif /* RE_ENABLE_I18N */ - if (node->type == SIMPLE_BRACKET && node->duplicated == 0) - re_free (node->opr.sbcset); + else if (node->type == SIMPLE_BRACKET && node->duplicated == 0) + re_free (node->opr.sbcset); } /* Worker function for tree walking. Free the allocated memory inside NODE diff --git a/lib/regex.c b/lib/regex.c index 7296be0..3beb0de 100644 --- a/lib/regex.c +++ b/lib/regex.c @@ -1,5 +1,5 @@ /* Extended regular expression matching and search library. - Copyright (C) 2002-2021 Free Software Foundation, Inc. + Copyright (C) 2002-2023 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Isamu Hasegawa . @@ -24,6 +24,7 @@ # if __GNUC_PREREQ (4, 6) # pragma GCC diagnostic ignored "-Wsuggest-attribute=pure" +# pragma GCC diagnostic ignored "-Wvla" # endif # if __GNUC_PREREQ (4, 3) # pragma GCC diagnostic ignored "-Wold-style-definition" diff --git a/lib/regex.h b/lib/regex.h index 8e4ef45..9ef0252 100644 --- a/lib/regex.h +++ b/lib/regex.h @@ -1,6 +1,6 @@ /* Definitions for data structures and routines for the regular expression library. - Copyright (C) 1985, 1989-2021 Free Software Foundation, Inc. + Copyright (C) 1985, 1989-2023 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -522,6 +522,30 @@ typedef struct /* Declarations for routines. */ +#ifndef _REGEX_NELTS +# if (defined __STDC_VERSION__ && 199901L <= __STDC_VERSION__ \ + && !defined __STDC_NO_VLA__) +# define _REGEX_NELTS(n) n +# else +# define _REGEX_NELTS(n) +# endif +#endif + +#if defined __GNUC__ && 4 < __GNUC__ + (6 <= __GNUC_MINOR__) +# pragma GCC diagnostic push +# pragma GCC diagnostic ignored "-Wvla" +#endif + +#ifndef _Attr_access_ +# ifdef __attr_access +# define _Attr_access_(arg) __attr_access (arg) +# elif defined __GNUC__ && 10 <= __GNUC__ +# define _Attr_access_(x) __attribute__ ((__access__ x)) +# else +# define _Attr_access_(x) +# endif +#endif + #ifdef __USE_GNU /* Sets the current default syntax to SYNTAX, and return the old syntax. You can also simply assign to the 're_syntax_options' variable. */ @@ -536,7 +560,8 @@ extern reg_syntax_t re_set_syntax (reg_syntax_t __syntax); 'regcomp', with a malloc'ed value, or set to NULL before calling 'regfree'. */ extern const char *re_compile_pattern (const char *__pattern, size_t __length, - struct re_pattern_buffer *__buffer); + struct re_pattern_buffer *__buffer) + _Attr_access_ ((__read_only__, 1, 2)); /* Compile a fastmap for the compiled pattern in BUFFER; used to @@ -553,7 +578,8 @@ extern int re_compile_fastmap (struct re_pattern_buffer *__buffer); extern regoff_t re_search (struct re_pattern_buffer *__buffer, const char *__String, regoff_t __length, regoff_t __start, regoff_t __range, - struct re_registers *__regs); + struct re_registers *__regs) + _Attr_access_ ((__read_only__, 2, 3)); /* Like 're_search', but search in the concatenation of STRING1 and @@ -563,14 +589,17 @@ extern regoff_t re_search_2 (struct re_pattern_buffer *__buffer, const char *__string2, regoff_t __length2, regoff_t __start, regoff_t __range, struct re_registers *__regs, - regoff_t __stop); + regoff_t __stop) + _Attr_access_ ((__read_only__, 2, 3)) + _Attr_access_ ((__read_only__, 4, 5)); /* Like 're_search', but return how many characters in STRING the regexp in BUFFER matched, starting at position START. */ extern regoff_t re_match (struct re_pattern_buffer *__buffer, const char *__String, regoff_t __length, - regoff_t __start, struct re_registers *__regs); + regoff_t __start, struct re_registers *__regs) + _Attr_access_ ((__read_only__, 2, 3)); /* Relates to 're_match' as 're_search_2' relates to 're_search'. */ @@ -578,7 +607,9 @@ extern regoff_t re_match_2 (struct re_pattern_buffer *__buffer, const char *__string1, regoff_t __length1, const char *__string2, regoff_t __length2, regoff_t __start, struct re_registers *__regs, - regoff_t __stop); + regoff_t __stop) + _Attr_access_ ((__read_only__, 2, 3)) + _Attr_access_ ((__read_only__, 4, 5)); /* Set REGS to hold NUM_REGS registers, storing them in STARTS and @@ -647,14 +678,19 @@ extern int regcomp (regex_t *_Restrict_ __preg, extern int regexec (const regex_t *_Restrict_ __preg, const char *_Restrict_ __String, size_t __nmatch, - regmatch_t __pmatch[_Restrict_arr_], + regmatch_t __pmatch[_Restrict_arr_ + _REGEX_NELTS (__nmatch)], int __eflags); extern size_t regerror (int __errcode, const regex_t *_Restrict_ __preg, - char *_Restrict_ __errbuf, size_t __errbuf_size); + char *_Restrict_ __errbuf, size_t __errbuf_size) + _Attr_access_ ((__write_only__, 3, 4)); extern void regfree (regex_t *__preg); +#if defined __GNUC__ && 4 < __GNUC__ + (6 <= __GNUC_MINOR__) +# pragma GCC diagnostic pop +#endif #ifdef __cplusplus } diff --git a/lib/regex_internal.c b/lib/regex_internal.c index aefcfa2..998a19b 100644 --- a/lib/regex_internal.c +++ b/lib/regex_internal.c @@ -1,5 +1,5 @@ /* Extended regular expression matching and search library. - Copyright (C) 2002-2021 Free Software Foundation, Inc. + Copyright (C) 2002-2023 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Isamu Hasegawa . @@ -30,10 +30,8 @@ static re_dfastate_t *create_cd_newstate (const re_dfa_t *dfa, re_hashval_t hash); static reg_errcode_t re_string_realloc_buffers (re_string_t *pstr, Idx new_buf_len); -#ifdef RE_ENABLE_I18N static void build_wcs_buffer (re_string_t *pstr); static reg_errcode_t build_wcs_upper_buffer (re_string_t *pstr); -#endif /* RE_ENABLE_I18N */ static void build_upper_buffer (re_string_t *pstr); static void re_string_translate_buffer (re_string_t *pstr); static unsigned int re_string_context_at (const re_string_t *input, Idx idx, @@ -91,7 +89,6 @@ re_string_construct (re_string_t *pstr, const char *str, Idx len, if (icase) { -#ifdef RE_ENABLE_I18N if (dfa->mb_cur_max > 1) { while (1) @@ -109,16 +106,13 @@ re_string_construct (re_string_t *pstr, const char *str, Idx len, } } else -#endif /* RE_ENABLE_I18N */ build_upper_buffer (pstr); } else { -#ifdef RE_ENABLE_I18N if (dfa->mb_cur_max > 1) build_wcs_buffer (pstr); else -#endif /* RE_ENABLE_I18N */ { if (trans != NULL) re_string_translate_buffer (pstr); @@ -139,7 +133,6 @@ static reg_errcode_t __attribute_warn_unused_result__ re_string_realloc_buffers (re_string_t *pstr, Idx new_buf_len) { -#ifdef RE_ENABLE_I18N if (pstr->mb_cur_max > 1) { wint_t *new_wcs; @@ -162,7 +155,6 @@ re_string_realloc_buffers (re_string_t *pstr, Idx new_buf_len) pstr->offsets = new_offsets; } } -#endif /* RE_ENABLE_I18N */ if (pstr->mbs_allocated) { unsigned char *new_mbs = re_realloc (pstr->mbs, unsigned char, @@ -194,7 +186,6 @@ re_string_construct_common (const char *str, Idx len, re_string_t *pstr, pstr->raw_stop = pstr->stop; } -#ifdef RE_ENABLE_I18N /* Build wide character buffer PSTR->WCS. If the byte sequence of the string are: @@ -530,7 +521,6 @@ re_string_skip_chars (re_string_t *pstr, Idx new_raw_idx, wint_t *last_wc) *last_wc = wc; return rawbuf_idx; } -#endif /* RE_ENABLE_I18N */ /* Build the buffer PSTR->MBS, and apply the translation if we need. This function is used in case of REG_ICASE. */ @@ -585,10 +575,8 @@ re_string_reconstruct (re_string_t *pstr, Idx idx, int eflags) else { /* Reset buffer. */ -#ifdef RE_ENABLE_I18N if (pstr->mb_cur_max > 1) memset (&pstr->cur_state, '\0', sizeof (mbstate_t)); -#endif /* RE_ENABLE_I18N */ pstr->len = pstr->raw_len; pstr->stop = pstr->raw_stop; pstr->valid_len = 0; @@ -608,7 +596,6 @@ re_string_reconstruct (re_string_t *pstr, Idx idx, int eflags) if (__glibc_likely (offset < pstr->valid_raw_len)) { /* Yes, move them to the front of the buffer. */ -#ifdef RE_ENABLE_I18N if (__glibc_unlikely (pstr->offsets_needed)) { Idx low = 0, high = pstr->valid_len, mid; @@ -672,15 +659,12 @@ re_string_reconstruct (re_string_t *pstr, Idx idx, int eflags) } } else -#endif { pstr->tip_context = re_string_context_at (pstr, offset - 1, eflags); -#ifdef RE_ENABLE_I18N if (pstr->mb_cur_max > 1) memmove (pstr->wcs, pstr->wcs + offset, (pstr->valid_len - offset) * sizeof (wint_t)); -#endif /* RE_ENABLE_I18N */ if (__glibc_unlikely (pstr->mbs_allocated)) memmove (pstr->mbs, pstr->mbs + offset, pstr->valid_len - offset); @@ -691,7 +675,6 @@ re_string_reconstruct (re_string_t *pstr, Idx idx, int eflags) } else { -#ifdef RE_ENABLE_I18N /* No, skip all characters until IDX. */ Idx prev_valid_len = pstr->valid_len; @@ -701,9 +684,7 @@ re_string_reconstruct (re_string_t *pstr, Idx idx, int eflags) pstr->stop = pstr->raw_stop - idx + offset; pstr->offsets_needed = 0; } -#endif pstr->valid_len = 0; -#ifdef RE_ENABLE_I18N if (pstr->mb_cur_max > 1) { Idx wcs_idx; @@ -787,7 +768,6 @@ re_string_reconstruct (re_string_t *pstr, Idx idx, int eflags) pstr->valid_raw_len = pstr->valid_len; } else -#endif /* RE_ENABLE_I18N */ { int c = pstr->raw_mbs[pstr->raw_mbs_idx + offset - 1]; pstr->valid_raw_len = 0; @@ -807,7 +787,6 @@ re_string_reconstruct (re_string_t *pstr, Idx idx, int eflags) pstr->stop -= offset; /* Then build the buffers. */ -#ifdef RE_ENABLE_I18N if (pstr->mb_cur_max > 1) { if (pstr->icase) @@ -820,7 +799,6 @@ re_string_reconstruct (re_string_t *pstr, Idx idx, int eflags) build_wcs_buffer (pstr); } else -#endif /* RE_ENABLE_I18N */ if (__glibc_unlikely (pstr->mbs_allocated)) { if (pstr->icase) @@ -846,28 +824,22 @@ re_string_peek_byte_case (const re_string_t *pstr, Idx idx) if (__glibc_likely (!pstr->mbs_allocated)) return re_string_peek_byte (pstr, idx); -#ifdef RE_ENABLE_I18N if (pstr->mb_cur_max > 1 && ! re_string_is_single_byte_char (pstr, pstr->cur_idx + idx)) return re_string_peek_byte (pstr, idx); -#endif off = pstr->cur_idx + idx; -#ifdef RE_ENABLE_I18N if (pstr->offsets_needed) off = pstr->offsets[off]; -#endif ch = pstr->raw_mbs[pstr->raw_mbs_idx + off]; -#ifdef RE_ENABLE_I18N /* Ensure that e.g. for tr_TR.UTF-8 BACKSLASH DOTLESS SMALL LETTER I this function returns CAPITAL LETTER I instead of first byte of DOTLESS SMALL LETTER I. The latter would confuse the parser, since peek_byte_case doesn't advance cur_idx in any way. */ if (pstr->offsets_needed && !isascii (ch)) return re_string_peek_byte (pstr, idx); -#endif return ch; } @@ -878,7 +850,6 @@ re_string_fetch_byte_case (re_string_t *pstr) if (__glibc_likely (!pstr->mbs_allocated)) return re_string_fetch_byte (pstr); -#ifdef RE_ENABLE_I18N if (pstr->offsets_needed) { Idx off; @@ -904,7 +875,6 @@ re_string_fetch_byte_case (re_string_t *pstr) re_string_char_size_at (pstr, pstr->cur_idx)); return ch; } -#endif return pstr->raw_mbs[pstr->raw_mbs_idx + pstr->cur_idx++]; } @@ -912,10 +882,8 @@ re_string_fetch_byte_case (re_string_t *pstr) static void re_string_destruct (re_string_t *pstr) { -#ifdef RE_ENABLE_I18N re_free (pstr->wcs); re_free (pstr->offsets); -#endif /* RE_ENABLE_I18N */ if (pstr->mbs_allocated) re_free (pstr->mbs); } @@ -933,7 +901,6 @@ re_string_context_at (const re_string_t *input, Idx idx, int eflags) if (__glibc_unlikely (idx == input->len)) return ((eflags & REG_NOTEOL) ? CONTEXT_ENDBUF : CONTEXT_NEWLINE | CONTEXT_ENDBUF); -#ifdef RE_ENABLE_I18N if (input->mb_cur_max > 1) { wint_t wc; @@ -953,7 +920,6 @@ re_string_context_at (const re_string_t *input, Idx idx, int eflags) ? CONTEXT_NEWLINE : 0); } else -#endif { c = re_string_byte_at (input, idx); if (bitset_contain (input->word_char, c)) @@ -1430,32 +1396,28 @@ re_dfa_add_node (re_dfa_t *dfa, re_token_t token) if (__glibc_unlikely (new_nodes == NULL)) return -1; dfa->nodes = new_nodes; + dfa->nodes_alloc = new_nodes_alloc; new_nexts = re_realloc (dfa->nexts, Idx, new_nodes_alloc); + if (new_nexts != NULL) + dfa->nexts = new_nexts; new_indices = re_realloc (dfa->org_indices, Idx, new_nodes_alloc); + if (new_indices != NULL) + dfa->org_indices = new_indices; new_edests = re_realloc (dfa->edests, re_node_set, new_nodes_alloc); + if (new_edests != NULL) + dfa->edests = new_edests; new_eclosures = re_realloc (dfa->eclosures, re_node_set, new_nodes_alloc); + if (new_eclosures != NULL) + dfa->eclosures = new_eclosures; if (__glibc_unlikely (new_nexts == NULL || new_indices == NULL || new_edests == NULL || new_eclosures == NULL)) - { - re_free (new_nexts); - re_free (new_indices); - re_free (new_edests); - re_free (new_eclosures); - return -1; - } - dfa->nexts = new_nexts; - dfa->org_indices = new_indices; - dfa->edests = new_edests; - dfa->eclosures = new_eclosures; - dfa->nodes_alloc = new_nodes_alloc; + return -1; } dfa->nodes[dfa->nodes_len] = token; dfa->nodes[dfa->nodes_len].constraint = 0; -#ifdef RE_ENABLE_I18N dfa->nodes[dfa->nodes_len].accept_mb = ((token.type == OP_PERIOD && dfa->mb_cur_max > 1) || token.type == COMPLEX_BRACKET); -#endif dfa->nexts[dfa->nodes_len] = -1; re_node_set_init_empty (dfa->edests + dfa->nodes_len); re_node_set_init_empty (dfa->eclosures + dfa->nodes_len); @@ -1651,9 +1613,7 @@ create_ci_newstate (const re_dfa_t *dfa, const re_node_set *nodes, re_token_type_t type = node->type; if (type == CHARACTER && !node->constraint) continue; -#ifdef RE_ENABLE_I18N newstate->accept_mb |= node->accept_mb; -#endif /* RE_ENABLE_I18N */ /* If the state has the halt node, the state is a halt state. */ if (type == END_OF_RE) @@ -1705,9 +1665,7 @@ create_cd_newstate (const re_dfa_t *dfa, const re_node_set *nodes, if (type == CHARACTER && !constraint) continue; -#ifdef RE_ENABLE_I18N newstate->accept_mb |= node->accept_mb; -#endif /* RE_ENABLE_I18N */ /* If the state has the halt node, the state is a halt state. */ if (type == END_OF_RE) diff --git a/lib/regex_internal.h b/lib/regex_internal.h index 1245e78..7e35a11 100644 --- a/lib/regex_internal.h +++ b/lib/regex_internal.h @@ -1,5 +1,5 @@ /* Extended regular expression matching and search library. - Copyright (C) 2002-2021 Free Software Foundation, Inc. + Copyright (C) 2002-2023 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Isamu Hasegawa . @@ -29,7 +29,7 @@ #include #include #include -#include +#include #include #ifndef _LIBC @@ -116,10 +116,6 @@ # define gettext_noop(String) String #endif -#if (defined MB_CUR_MAX && HAVE_WCTYPE_H && HAVE_ISWCTYPE) || _LIBC -# define RE_ENABLE_I18N -#endif - /* Number of ASCII characters. */ #define ASCII_CHARS 0x80 @@ -150,9 +146,11 @@ # define __regfree regfree #endif /* not _LIBC */ -#ifndef SSIZE_MAX -# define SSIZE_MAX ((ssize_t) (SIZE_MAX / 2)) -#endif +/* Types related to integers. Unless protected by #ifdef _LIBC, the + regex code should avoid exact-width types like int32_t and uint64_t + as some non-GCC platforms lack them, an issue when this code is + used in Gnulib. */ + #ifndef ULONG_WIDTH # define ULONG_WIDTH REGEX_UINTEGER_WIDTH (ULONG_MAX) /* The number of usable bits in an unsigned integer type with maximum @@ -246,10 +244,8 @@ typedef enum SIMPLE_BRACKET = 3, OP_BACK_REF = 4, OP_PERIOD = 5, -#ifdef RE_ENABLE_I18N COMPLEX_BRACKET = 6, OP_UTF8_PERIOD = 7, -#endif /* RE_ENABLE_I18N */ /* We define EPSILON_BIT as a macro so that OP_OPEN_SUBEXP is used when the debugger shows values of this enum type. */ @@ -287,30 +283,29 @@ typedef enum } re_token_type_t; -#ifdef RE_ENABLE_I18N typedef struct { /* Multibyte characters. */ wchar_t *mbchars; +#ifdef _LIBC /* Collating symbols. */ -# ifdef _LIBC int32_t *coll_syms; -# endif +#endif +#ifdef _LIBC /* Equivalence classes. */ -# ifdef _LIBC int32_t *equiv_classes; -# endif +#endif /* Range expressions. */ -# ifdef _LIBC +#ifdef _LIBC uint32_t *range_starts; uint32_t *range_ends; -# else /* not _LIBC */ +#else wchar_t *range_starts; wchar_t *range_ends; -# endif /* not _LIBC */ +#endif /* Character classes. */ wctype_t *char_classes; @@ -333,7 +328,6 @@ typedef struct /* # of character classes. */ Idx nchar_classes; } re_charset_t; -#endif /* RE_ENABLE_I18N */ typedef struct { @@ -341,9 +335,7 @@ typedef struct { unsigned char c; /* for CHARACTER */ re_bitset_ptr_t sbcset; /* for SIMPLE_BRACKET */ -#ifdef RE_ENABLE_I18N re_charset_t *mbcset; /* for COMPLEX_BRACKET */ -#endif /* RE_ENABLE_I18N */ Idx idx; /* for BACK_REF */ re_context_type ctx_type; /* for ANCHOR */ } opr; @@ -355,12 +347,10 @@ typedef struct unsigned int constraint : 10; /* context constraint */ unsigned int duplicated : 1; unsigned int opt_subexp : 1; -#ifdef RE_ENABLE_I18N unsigned int accept_mb : 1; /* These 2 bits can be moved into the union if needed (e.g. if running out of bits; move opr.c to opr.c.c and move the flags to opr.c.flags). */ unsigned int mb_partial : 1; -#endif unsigned int word_char : 1; } re_token_t; @@ -375,12 +365,10 @@ struct re_string_t REG_ICASE, upper cases of the string are stored, otherwise MBS points the same address that RAW_MBS points. */ unsigned char *mbs; -#ifdef RE_ENABLE_I18N /* Store the wide character string which is corresponding to MBS. */ wint_t *wcs; Idx *offsets; mbstate_t cur_state; -#endif /* Index in RAW_MBS. Each character mbs[i] corresponds to raw_mbs[raw_mbs_idx + i]. */ Idx raw_mbs_idx; @@ -779,7 +767,6 @@ bitset_mask (bitset_t dest, const bitset_t src) dest[bitset_i] &= src[bitset_i]; } -#ifdef RE_ENABLE_I18N /* Functions for re_string. */ static int __attribute__ ((pure, unused)) @@ -803,15 +790,15 @@ re_string_wchar_at (const re_string_t *pstr, Idx idx) return (wint_t) pstr->wcs[idx]; } -# ifdef _LIBC -# include -# endif +#ifdef _LIBC +# include +#endif static int __attribute__ ((pure, unused)) re_string_elem_size_at (const re_string_t *pstr, Idx idx) { -# ifdef _LIBC +#ifdef _LIBC const unsigned char *p, *extra; const int32_t *table, *indirect; uint_fast32_t nrules = _NL_CURRENT_WORD (LC_COLLATE, _NL_COLLATE_NRULES); @@ -827,14 +814,13 @@ re_string_elem_size_at (const re_string_t *pstr, Idx idx) findidx (table, indirect, extra, &p, pstr->len - idx); return p - pstr->mbs - idx; } - else -# endif /* _LIBC */ - return 1; +#endif /* _LIBC */ + + return 1; } -#endif /* RE_ENABLE_I18N */ #ifdef _LIBC -# if __GNUC__ >= 7 +# if __glibc_has_attribute (__fallthrough__) # define FALLTHROUGH __attribute__ ((__fallthrough__)) # else # define FALLTHROUGH ((void) 0) diff --git a/lib/regexec.c b/lib/regexec.c index 5e4eb49..f05f38a 100644 --- a/lib/regexec.c +++ b/lib/regexec.c @@ -1,5 +1,5 @@ /* Extended regular expression matching and search library. - Copyright (C) 2002-2021 Free Software Foundation, Inc. + Copyright (C) 2002-2023 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Isamu Hasegawa . @@ -67,11 +67,9 @@ static reg_errcode_t set_regs (const regex_t *preg, bool fl_backtrack); static reg_errcode_t free_fail_stack_return (struct re_fail_stack_t *fs); -#ifdef RE_ENABLE_I18N static int sift_states_iter_mb (const re_match_context_t *mctx, re_sift_context_t *sctx, Idx node_idx, Idx str_idx, Idx max_str_idx); -#endif /* RE_ENABLE_I18N */ static reg_errcode_t sift_states_backward (const re_match_context_t *mctx, re_sift_context_t *sctx); static reg_errcode_t build_sifted_states (const re_match_context_t *mctx, @@ -123,10 +121,8 @@ static re_dfastate_t *transit_state_sb (reg_errcode_t *err, re_match_context_t *mctx, re_dfastate_t *pstate); #endif -#ifdef RE_ENABLE_I18N static reg_errcode_t transit_state_mb (re_match_context_t *mctx, re_dfastate_t *pstate); -#endif /* RE_ENABLE_I18N */ static reg_errcode_t transit_state_bkref (re_match_context_t *mctx, const re_node_set *nodes); static reg_errcode_t get_subexp (re_match_context_t *mctx, @@ -156,14 +152,12 @@ static reg_errcode_t expand_bkref_cache (re_match_context_t *mctx, re_node_set *cur_nodes, Idx cur_str, Idx subexp_num, int type); static bool build_trtable (const re_dfa_t *dfa, re_dfastate_t *state); -#ifdef RE_ENABLE_I18N static int check_node_accept_bytes (const re_dfa_t *dfa, Idx node_idx, const re_string_t *input, Idx idx); -# ifdef _LIBC +#ifdef _LIBC static unsigned int find_collation_sequence_value (const unsigned char *mbs, size_t name_len); -# endif /* _LIBC */ -#endif /* RE_ENABLE_I18N */ +#endif static Idx group_nodes_into_DFAstates (const re_dfa_t *dfa, const re_dfastate_t *state, re_node_set *states_node, @@ -191,7 +185,7 @@ static reg_errcode_t extend_buffers (re_match_context_t *mctx, int min_len); int regexec (const regex_t *__restrict preg, const char *__restrict string, - size_t nmatch, regmatch_t pmatch[], int eflags) + size_t nmatch, regmatch_t pmatch[_REGEX_NELTS (nmatch)], int eflags) { reg_errcode_t err; Idx start, length; @@ -235,7 +229,7 @@ int attribute_compat_text_section __compat_regexec (const regex_t *__restrict preg, const char *__restrict string, size_t nmatch, - regmatch_t pmatch[], int eflags) + regmatch_t pmatch[_REGEX_NELTS (nmatch)], int eflags) { return regexec (preg, string, nmatch, pmatch, eflags & (REG_NOTBOL | REG_NOTEOL)); @@ -330,7 +324,7 @@ re_search_2_stub (struct re_pattern_buffer *bufp, const char *string1, char *s = NULL; if (__glibc_unlikely ((length1 < 0 || length2 < 0 || stop < 0 - || INT_ADD_WRAPV (length1, length2, &len)))) + || ckd_add (&len, length1, length2)))) return -2; /* Concatenate the strings. */ @@ -758,10 +752,9 @@ re_search_internal (const regex_t *preg, const char *string, Idx length, offset = match_first - mctx.input.raw_mbs_idx; } - /* If MATCH_FIRST is out of the buffer, leave it as '\0'. - Note that MATCH_FIRST must not be smaller than 0. */ - ch = (match_first >= length - ? 0 : re_string_byte_at (&mctx.input, offset)); + /* Use buffer byte if OFFSET is in buffer, otherwise '\0'. */ + ch = (offset < mctx.input.valid_len + ? re_string_byte_at (&mctx.input, offset) : 0); if (fastmap[ch]) break; match_first += incr; @@ -780,12 +773,10 @@ re_search_internal (const regex_t *preg, const char *string, Idx length, if (__glibc_unlikely (err != REG_NOERROR)) goto free_return; -#ifdef RE_ENABLE_I18N - /* Don't consider this char as a possible match start if it part, - yet isn't the head, of a multibyte character. */ + /* Don't consider this char as a possible match start if it part, + yet isn't the head, of a multibyte character. */ if (!sb && !re_string_first_byte (&mctx.input, 0)) continue; -#endif /* It seems to be appropriate one, then use the matcher. */ /* We assume that the matching starts from 0. */ @@ -859,7 +850,6 @@ re_search_internal (const regex_t *preg, const char *string, Idx length, for (reg_idx = 0; reg_idx < nmatch; ++reg_idx) if (pmatch[reg_idx].rm_so != -1) { -#ifdef RE_ENABLE_I18N if (__glibc_unlikely (mctx.input.offsets_needed != 0)) { pmatch[reg_idx].rm_so = @@ -871,9 +861,6 @@ re_search_internal (const regex_t *preg, const char *string, Idx length, ? mctx.input.valid_raw_len : mctx.input.offsets[pmatch[reg_idx].rm_eo]); } -#else - DEBUG_ASSERT (mctx.input.offsets_needed == 0); -#endif pmatch[reg_idx].rm_so += match_first; pmatch[reg_idx].rm_eo += match_first; } @@ -997,8 +984,7 @@ prune_impossible_nodes (re_match_context_t *mctx) We must select appropriate initial state depending on the context, since initial states may have constraints like "\<", "^", etc.. */ -static inline re_dfastate_t * -__attribute__ ((always_inline)) +static __always_inline re_dfastate_t * acquire_init_state_context (reg_errcode_t *err, const re_match_context_t *mctx, Idx idx) { @@ -1262,12 +1248,9 @@ proceed_next_node (const re_match_context_t *mctx, Idx nregs, regmatch_t *regs, Idx naccepted = 0; re_token_type_t type = dfa->nodes[node].type; -#ifdef RE_ENABLE_I18N if (dfa->nodes[node].accept_mb) naccepted = check_node_accept_bytes (dfa, node, &mctx->input, *pidx); - else -#endif /* RE_ENABLE_I18N */ - if (type == OP_BACK_REF) + else if (type == OP_BACK_REF) { Idx subexp_idx = dfa->nodes[node].opr.idx + 1; if (subexp_idx < nregs) @@ -1325,8 +1308,8 @@ push_fail_stack (struct re_fail_stack_t *fs, Idx str_idx, Idx dest_node, re_node_set *eps_via_nodes) { reg_errcode_t err; - Idx num = fs->num++; - if (fs->num == fs->alloc) + Idx num = fs->num; + if (num == fs->alloc) { struct re_fail_stack_ent_t *new_array; new_array = re_realloc (fs->stack, struct re_fail_stack_ent_t, @@ -1341,6 +1324,7 @@ push_fail_stack (struct re_fail_stack_t *fs, Idx str_idx, Idx dest_node, fs->stack[num].regs = re_malloc (regmatch_t, 2 * nregs); if (fs->stack[num].regs == NULL) return REG_ESPACE; + fs->num = num + 1; memcpy (fs->stack[num].regs, regs, sizeof (regmatch_t) * nregs); memcpy (fs->stack[num].regs + nregs, prevregs, sizeof (regmatch_t) * nregs); err = re_node_set_init_copy (&fs->stack[num].eps_via_nodes, eps_via_nodes); @@ -1635,12 +1619,10 @@ build_sifted_states (const re_match_context_t *mctx, re_sift_context_t *sctx, bool ok; DEBUG_ASSERT (!IS_EPSILON_NODE (dfa->nodes[prev_node].type)); -#ifdef RE_ENABLE_I18N /* If the node may accept "multi byte". */ if (dfa->nodes[prev_node].accept_mb) naccepted = sift_states_iter_mb (mctx, sctx, prev_node, str_idx, sctx->last_str_idx); -#endif /* RE_ENABLE_I18N */ /* We don't check backreferences here. See update_cur_sifted_state(). */ @@ -1689,6 +1671,7 @@ clean_state_log_if_needed (re_match_context_t *mctx, Idx next_state_log_idx) if (top < next_state_log_idx) { + DEBUG_ASSERT (mctx->state_log != NULL); memset (mctx->state_log + top + 1, '\0', sizeof (re_dfastate_t *) * (next_state_log_idx - top)); mctx->state_log_top = next_state_log_idx; @@ -2177,7 +2160,6 @@ sift_states_bkref (const re_match_context_t *mctx, re_sift_context_t *sctx, } -#ifdef RE_ENABLE_I18N static int sift_states_iter_mb (const re_match_context_t *mctx, re_sift_context_t *sctx, Idx node_idx, Idx str_idx, Idx max_str_idx) @@ -2197,8 +2179,6 @@ sift_states_iter_mb (const re_match_context_t *mctx, re_sift_context_t *sctx, 'naccepted' bytes input. */ return naccepted; } -#endif /* RE_ENABLE_I18N */ - /* Functions for state transition. */ @@ -2216,7 +2196,6 @@ transit_state (reg_errcode_t *err, re_match_context_t *mctx, re_dfastate_t **trtable; unsigned char ch; -#ifdef RE_ENABLE_I18N /* If the current state can accept multibyte. */ if (__glibc_unlikely (state->accept_mb)) { @@ -2224,7 +2203,6 @@ transit_state (reg_errcode_t *err, re_match_context_t *mctx, if (__glibc_unlikely (*err != REG_NOERROR)) return NULL; } -#endif /* RE_ENABLE_I18N */ /* Then decide the next state with the single byte. */ #if 0 @@ -2445,7 +2423,6 @@ transit_state_sb (reg_errcode_t *err, re_match_context_t *mctx, } #endif -#ifdef RE_ENABLE_I18N static reg_errcode_t transit_state_mb (re_match_context_t *mctx, re_dfastate_t *pstate) { @@ -2513,7 +2490,6 @@ transit_state_mb (re_match_context_t *mctx, re_dfastate_t *pstate) } return REG_NOERROR; } -#endif /* RE_ENABLE_I18N */ static reg_errcode_t transit_state_bkref (re_match_context_t *mctx, const re_node_set *nodes) @@ -3003,9 +2979,7 @@ check_arrival_add_next_nodes (re_match_context_t *mctx, Idx str_idx, const re_dfa_t *const dfa = mctx->dfa; bool ok; Idx cur_idx; -#ifdef RE_ENABLE_I18N reg_errcode_t err = REG_NOERROR; -#endif re_node_set union_set; re_node_set_init_empty (&union_set); for (cur_idx = 0; cur_idx < cur_nodes->nelem; ++cur_idx) @@ -3014,7 +2988,6 @@ check_arrival_add_next_nodes (re_match_context_t *mctx, Idx str_idx, Idx cur_node = cur_nodes->elems[cur_idx]; DEBUG_ASSERT (!IS_EPSILON_NODE (dfa->nodes[cur_node].type)); -#ifdef RE_ENABLE_I18N /* If the node may accept "multi byte". */ if (dfa->nodes[cur_node].accept_mb) { @@ -3052,7 +3025,7 @@ check_arrival_add_next_nodes (re_match_context_t *mctx, Idx str_idx, } } } -#endif /* RE_ENABLE_I18N */ + if (naccepted || check_node_accept (mctx, dfa->nodes + cur_node, str_idx)) { @@ -3476,18 +3449,15 @@ group_nodes_into_DFAstates (const re_dfa_t *dfa, const re_dfastate_t *state, } else if (type == OP_PERIOD) { -#ifdef RE_ENABLE_I18N if (dfa->mb_cur_max > 1) bitset_merge (accepts, dfa->sb_char); else -#endif bitset_set_all (accepts); if (!(dfa->syntax & RE_DOT_NEWLINE)) bitset_clear (accepts, '\n'); if (dfa->syntax & RE_DOT_NOT_NULL) bitset_clear (accepts, '\0'); } -#ifdef RE_ENABLE_I18N else if (type == OP_UTF8_PERIOD) { if (ASCII_CHARS % BITSET_WORD_BITS == 0) @@ -3499,7 +3469,6 @@ group_nodes_into_DFAstates (const re_dfa_t *dfa, const re_dfastate_t *state, if (dfa->syntax & RE_DOT_NOT_NULL) bitset_clear (accepts, '\0'); } -#endif else continue; @@ -3530,12 +3499,10 @@ group_nodes_into_DFAstates (const re_dfa_t *dfa, const re_dfastate_t *state, bitset_empty (accepts); continue; } -#ifdef RE_ENABLE_I18N if (dfa->mb_cur_max > 1) for (j = 0; j < BITSET_WORDS; ++j) any_set |= (accepts[j] &= (dfa->word_char[j] | ~dfa->sb_char[j])); else -#endif for (j = 0; j < BITSET_WORDS; ++j) any_set |= (accepts[j] &= dfa->word_char[j]); if (!any_set) @@ -3549,12 +3516,10 @@ group_nodes_into_DFAstates (const re_dfa_t *dfa, const re_dfastate_t *state, bitset_empty (accepts); continue; } -#ifdef RE_ENABLE_I18N if (dfa->mb_cur_max > 1) for (j = 0; j < BITSET_WORDS; ++j) any_set |= (accepts[j] &= ~(dfa->word_char[j] & dfa->sb_char[j])); else -#endif for (j = 0; j < BITSET_WORDS; ++j) any_set |= (accepts[j] &= ~dfa->word_char[j]); if (!any_set) @@ -3631,7 +3596,6 @@ group_nodes_into_DFAstates (const re_dfa_t *dfa, const re_dfastate_t *state, return -1; } -#ifdef RE_ENABLE_I18N /* Check how many bytes the node 'dfa->nodes[node_idx]' accepts. Return the number of the bytes the node accepts. STR_IDX is the current index of the input string. @@ -3640,9 +3604,9 @@ group_nodes_into_DFAstates (const re_dfa_t *dfa, const re_dfastate_t *state, one collating element like '.', '[a-z]', opposite to the other nodes can only accept one byte. */ -# ifdef _LIBC -# include -# endif +#ifdef _LIBC +# include +#endif static int check_node_accept_bytes (const re_dfa_t *dfa, Idx node_idx, @@ -3726,12 +3690,12 @@ check_node_accept_bytes (const re_dfa_t *dfa, Idx node_idx, if (node->type == COMPLEX_BRACKET) { const re_charset_t *cset = node->opr.mbcset; -# ifdef _LIBC +#ifdef _LIBC const unsigned char *pin = ((const unsigned char *) re_string_get_buffer (input) + str_idx); Idx j; uint32_t nrules; -# endif /* _LIBC */ +#endif int match_len = 0; wchar_t wc = ((cset->nranges || cset->nchar_classes || cset->nmbchars) ? re_string_wchar_at (input, str_idx) : 0); @@ -3754,7 +3718,7 @@ check_node_accept_bytes (const re_dfa_t *dfa, Idx node_idx, } } -# ifdef _LIBC +#ifdef _LIBC nrules = _NL_CURRENT_WORD (LC_COLLATE, _NL_COLLATE_NRULES); if (nrules != 0) { @@ -3843,7 +3807,7 @@ check_node_accept_bytes (const re_dfa_t *dfa, Idx node_idx, } } else -# endif /* _LIBC */ +#endif /* _LIBC */ { /* match with range expression? */ for (i = 0; i < cset->nranges; ++i) @@ -3869,7 +3833,7 @@ check_node_accept_bytes (const re_dfa_t *dfa, Idx node_idx, return 0; } -# ifdef _LIBC +#ifdef _LIBC static unsigned int find_collation_sequence_value (const unsigned char *mbs, size_t mbs_len) { @@ -3927,8 +3891,7 @@ find_collation_sequence_value (const unsigned char *mbs, size_t mbs_len) return UINT_MAX; } } -# endif /* _LIBC */ -#endif /* RE_ENABLE_I18N */ +#endif /* _LIBC */ /* Check whether the node accepts the byte which is IDX-th byte of the INPUT. */ @@ -3951,12 +3914,10 @@ check_node_accept (const re_match_context_t *mctx, const re_token_t *node, return false; break; -#ifdef RE_ENABLE_I18N case OP_UTF8_PERIOD: if (ch >= ASCII_CHARS) return false; FALLTHROUGH; -#endif case OP_PERIOD: if ((ch == '\n' && !(mctx->dfa->syntax & RE_DOT_NEWLINE)) || (ch == '\0' && (mctx->dfa->syntax & RE_DOT_NOT_NULL))) @@ -4017,7 +3978,6 @@ extend_buffers (re_match_context_t *mctx, int min_len) /* Then reconstruct the buffers. */ if (pstr->icase) { -#ifdef RE_ENABLE_I18N if (pstr->mb_cur_max > 1) { ret = build_wcs_upper_buffer (pstr); @@ -4025,16 +3985,13 @@ extend_buffers (re_match_context_t *mctx, int min_len) return ret; } else -#endif /* RE_ENABLE_I18N */ build_upper_buffer (pstr); } else { -#ifdef RE_ENABLE_I18N if (pstr->mb_cur_max > 1) build_wcs_buffer (pstr); else -#endif /* RE_ENABLE_I18N */ { if (pstr->trans != NULL) re_string_translate_buffer (pstr); diff --git a/lib/setenv.c b/lib/setenv.c index 3ad3477..f0b8899 100644 --- a/lib/setenv.c +++ b/lib/setenv.c @@ -1,4 +1,4 @@ -/* Copyright (C) 1992, 1995-2003, 2005-2021 Free Software Foundation, Inc. +/* Copyright (C) 1992, 1995-2003, 2005-2023 Free Software Foundation, Inc. This file is part of the GNU C Library. This file is free software: you can redistribute it and/or modify diff --git a/lib/setlocale-lock.c b/lib/setlocale-lock.c index 53e231c..b70ba09 100644 --- a/lib/setlocale-lock.c +++ b/lib/setlocale-lock.c @@ -1,5 +1,5 @@ /* Return the internal lock used by setlocale_null_r. - Copyright (C) 2019-2021 Free Software Foundation, Inc. + Copyright (C) 2019-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/setlocale_null.c b/lib/setlocale_null.c index dbfda25..89c8a06 100644 --- a/lib/setlocale_null.c +++ b/lib/setlocale_null.c @@ -1,5 +1,5 @@ /* Query the name of the current global locale. - Copyright (C) 2019-2021 Free Software Foundation, Inc. + Copyright (C) 2019-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -173,7 +173,7 @@ setlocale_null_unlocked (int category, char *buf, size_t bufsize) #endif } -#if !(SETLOCALE_NULL_ALL_MTSAFE && SETLOCALE_NULL_ONE_MTSAFE) /* musl libc, macOS, FreeBSD, NetBSD, OpenBSD, AIX, Haiku, Cygwin */ +#if !(SETLOCALE_NULL_ALL_MTSAFE && SETLOCALE_NULL_ONE_MTSAFE) /* musl libc, macOS, FreeBSD, NetBSD, OpenBSD, AIX, Haiku, Cygwin < 3.4.6 */ /* Use a lock, so that no two threads can invoke setlocale_null_unlocked at the same time. */ @@ -198,7 +198,7 @@ setlocale_null_with_lock (int category, char *buf, size_t bufsize) return ret; } -# elif HAVE_PTHREAD_API /* musl libc, macOS, FreeBSD, NetBSD, OpenBSD, AIX, Haiku, Cygwin */ +# elif HAVE_PTHREAD_API /* musl libc, macOS, FreeBSD, NetBSD, OpenBSD, AIX, Haiku, Cygwin < 3.4.6 */ extern # if defined _WIN32 || defined __CYGWIN__ diff --git a/lib/setlocale_null.h b/lib/setlocale_null.h index 00c42e2..c740fa0 100644 --- a/lib/setlocale_null.h +++ b/lib/setlocale_null.h @@ -1,5 +1,5 @@ /* Query the name of the current global locale. - Copyright (C) 2019-2021 Free Software Foundation, Inc. + Copyright (C) 2019-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/sh-quote.c b/lib/sh-quote.c index a69ee02..a15d2cc 100644 --- a/lib/sh-quote.c +++ b/lib/sh-quote.c @@ -1,10 +1,10 @@ /* Shell quoting. - Copyright (C) 2001-2004, 2006, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2001-2004, 2006, 2009-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2001. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/lib/sh-quote.h b/lib/sh-quote.h index e543e40..8c377c4 100644 --- a/lib/sh-quote.h +++ b/lib/sh-quote.h @@ -1,10 +1,10 @@ /* Shell quoting. - Copyright (C) 2001-2002, 2004, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2001-2002, 2004, 2009-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2001. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -22,7 +22,12 @@ arguments, since Unix shells interpret characters like " ", "'", "<", ">", "$", '*', '?' etc. in a special way. */ -#include +/* This file uses _GL_ATTRIBUTE_MALLOC, _GL_ATTRIBUTE_RETURNS_NONNULL. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + +#include #ifdef __cplusplus extern "C" { @@ -36,11 +41,15 @@ extern size_t shell_quote_length (const char *string); extern char * shell_quote_copy (char *restrict p, const char *string); /* Returns the freshly allocated quoted string. */ -extern char * shell_quote (const char *string); +extern char * shell_quote (const char *string) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE + _GL_ATTRIBUTE_RETURNS_NONNULL; /* Returns a freshly allocated string containing all argument strings, quoted, separated through spaces. */ -extern char * shell_quote_argv (const char * const *argv); +extern char * shell_quote_argv (const char * const *argv) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE + _GL_ATTRIBUTE_RETURNS_NONNULL; #ifdef __cplusplus } diff --git a/lib/signal.in.h b/lib/signal.in.h index 275da8c..418d59c 100644 --- a/lib/signal.in.h +++ b/lib/signal.in.h @@ -1,6 +1,6 @@ /* A GNU-like . - Copyright (C) 2006-2021 Free Software Foundation, Inc. + Copyright (C) 2006-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -55,13 +55,26 @@ #ifndef _@GUARD_PREFIX@_SIGNAL_H #define _@GUARD_PREFIX@_SIGNAL_H -/* Mac OS X 10.3, FreeBSD 6.4, OpenBSD 3.8, OSF/1 4.0, Solaris 2.6, Android, +/* This file uses GNULIB_POSIXCHECK, HAVE_RAW_DECL_*. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + +/* For testing the OpenBSD version. */ +#if (@GNULIB_PTHREAD_SIGMASK@ || defined GNULIB_POSIXCHECK) \ + && defined __OpenBSD__ +# include +#endif + +/* Mac OS X 10.3, FreeBSD < 8.0, OpenBSD < 5.1, OSF/1 4.0, Solaris 2.6, Android, OS/2 kLIBC declare pthread_sigmask in , not in . But avoid namespace pollution on glibc systems.*/ #if (@GNULIB_PTHREAD_SIGMASK@ || defined GNULIB_POSIXCHECK) \ && ((defined __APPLE__ && defined __MACH__) \ - || defined __FreeBSD__ || defined __OpenBSD__ || defined __osf__ \ - || defined __sun || defined __ANDROID__ || defined __KLIBC__) \ + || (defined __FreeBSD__ && __FreeBSD__ < 8) \ + || (defined __OpenBSD__ && OpenBSD < 201205) \ + || defined __osf__ || defined __sun || defined __ANDROID__ \ + || defined __KLIBC__) \ && ! defined __GLIBC__ # include #endif diff --git a/gnulib-tests/sigprocmask.c b/lib/sigprocmask.c similarity index 99% rename from gnulib-tests/sigprocmask.c rename to lib/sigprocmask.c index c479204..943383e 100644 --- a/gnulib-tests/sigprocmask.c +++ b/lib/sigprocmask.c @@ -1,5 +1,5 @@ /* POSIX compatible signal blocking. - Copyright (C) 2006-2021 Free Software Foundation, Inc. + Copyright (C) 2006-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2006. This file is free software: you can redistribute it and/or modify diff --git a/lib/sigsegv.c b/lib/sigsegv.c index 998c827..8263d9b 100644 --- a/lib/sigsegv.c +++ b/lib/sigsegv.c @@ -1,5 +1,5 @@ /* Page fault handling library. - Copyright (C) 1993-2021 Free Software Foundation, Inc. + Copyright (C) 1993-2023 Free Software Foundation, Inc. Copyright (C) 2018 Nylon Chen This program is free software: you can redistribute it and/or modify @@ -61,7 +61,7 @@ int libsigsegv_version = LIBSIGSEGV_VERSION; occurred. */ -#if defined __linux__ || defined __ANDROID__ /* Linux */ +#if defined __linux__ && !defined __ANDROID__ /* Linux */ # define SIGSEGV_FAULT_HANDLER_ARGLIST int sig, siginfo_t *sip, void *ucp # define SIGSEGV_FAULT_ADDRESS sip->si_addr @@ -168,6 +168,15 @@ int libsigsegv_version = LIBSIGSEGV_VERSION; because $bsp and $bspstore never differ by more than ca. 1 KB. */ # define SIGSEGV_FAULT_BSP_POINTER ((ucontext_t *) ucp)->uc_mcontext.sc_ar_bsp +# elif defined __loongarch__ + +/* See . + Note that the 'mcontext_t' defined in + and the 'struct sigcontext' defined in + (see also ) are effectively the same. */ + +# define SIGSEGV_FAULT_STACKPOINTER ((ucontext_t *) ucp)->uc_mcontext.__gregs[3] + # elif defined __m68k__ /* See glibc/sysdeps/unix/sysv/linux/m68k/sys/ucontext.h @@ -218,11 +227,28 @@ int libsigsegv_version = LIBSIGSEGV_VERSION; # if defined __powerpc64__ || defined __powerpc64_elfv2__ /* 64-bit */ # define SIGSEGV_FAULT_STACKPOINTER ((ucontext_t *) ucp)->uc_mcontext.gp_regs[1] # else /* 32-bit */ -/* both should be equivalent */ -# if 0 -# define SIGSEGV_FAULT_STACKPOINTER ((ucontext_t *) ucp)->uc_mcontext.regs->gpr[1] +# if MUSL_LIBC +/* musl libc has a different structure of ucontext_t in + musl/arch/powerpc/bits/signal.h. */ +/* The glibc comments say: + "Different versions of the kernel have stored the registers on signal + delivery at different offsets from the ucontext struct. Programs should + thus use the uc_mcontext.uc_regs pointer to find where the registers are + actually stored." */ +# if 0 +# define SIGSEGV_FAULT_STACKPOINTER ((ucontext_t *) ucp)->uc_mcontext.gregs[1] +# else +# define SIGSEGV_FAULT_STACKPOINTER ((ucontext_t *) ucp)->uc_regs->gregs[1] +# endif # else -# define SIGSEGV_FAULT_STACKPOINTER ((ucontext_t *) ucp)->uc_mcontext.uc_regs->gregs[1] +/* Assume the structure of ucontext_t in + glibc/sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h. */ +/* Because of the union, both definitions should be equivalent. */ +# if 0 +# define SIGSEGV_FAULT_STACKPOINTER ((ucontext_t *) ucp)->uc_mcontext.regs->gpr[1] +# else +# define SIGSEGV_FAULT_STACKPOINTER ((ucontext_t *) ucp)->uc_mcontext.uc_regs->gregs[1] +# endif # endif # endif @@ -322,21 +348,80 @@ int libsigsegv_version = LIBSIGSEGV_VERSION; #endif +#if defined __ANDROID__ /* Android */ +/* A platform that supports the POSIX:2008 (XPG 7) way, without + 'struct sigcontext' nor 'ucontext_t'. */ + +# define SIGSEGV_FAULT_HANDLER_ARGLIST int sig, siginfo_t *sip, void *context +# define SIGSEGV_FAULT_ADDRESS sip->si_addr +# define SIGSEGV_FAULT_CONTEXT context +# define SIGSEGV_FAULT_ADDRESS_FROM_SIGINFO + +#endif + #if defined __GNU__ /* Hurd */ -# define SIGSEGV_FAULT_HANDLER_ARGLIST int sig, int code, struct sigcontext *scp +# define SIGSEGV_FAULT_HANDLER_ARGLIST int sig, long code, struct sigcontext *scp # define SIGSEGV_FAULT_ADDRESS (unsigned long) code # define SIGSEGV_FAULT_CONTEXT scp -# if defined __i386__ +# if defined __x86_64__ +/* 64 bit registers */ + +/* scp points to a 'struct sigcontext' (defined in + glibc/sysdeps/mach/hurd/x86_64/bits/sigcontext.h). + The registers, at the moment the signal occurred, get pushed on the kernel + stack through gnumach/x86_64/locore.S:alltraps. They are denoted by a + 'struct i386_saved_state' (defined in gnumach/i386/i386/thread.h). + Upon invocation of the Mach interface function thread_get_state + + (= __thread_get_state in glibc), defined in gnumach/kern/thread.c, + the function thread_getstatus, defined in gnumach/i386/i386/pcb.c, copies the + register values in a different arrangement into a 'struct i386_thread_state', + defined in gnumach/i386/include/mach/i386/thread_status.h. (Different + arrangement: trapno, err get dropped; different order of r8...r15; also rsp + gets set to 0.) + This 'struct i386_thread_state' is actually the 'basic' part of a + 'struct machine_thread_all_state', defined in + glibc/sysdeps/mach/x86/thread_state.h. + From there, the function _hurd_setup_sighandler, defined in + glibc/sysdeps/mach/hurd/x86/trampoline.c, + 1. sets rsp to the same value as ursp, + 2. copies the 'struct i386_thread_state' into the appropriate part of a + 'struct sigcontext', defined in + glibc/sysdeps/mach/hurd/x86_64/bits/sigcontext.h. */ +/* Both sc_rsp and sc_ursp have the same value. + It appears more reliable to use sc_ursp because sc_rsp is marked as + "not used". */ +# define SIGSEGV_FAULT_STACKPOINTER scp->sc_ursp + +# elif defined __i386__ +/* 32 bit registers */ /* scp points to a 'struct sigcontext' (defined in glibc/sysdeps/mach/hurd/i386/bits/sigcontext.h). - The registers of this struct get pushed on the stack through - gnumach/i386/i386/locore.S:trapall. */ -/* Both sc_esp and sc_uesp appear to have the same value. - It appears more reliable to use sc_uesp because it is labelled as - "old esp, if trapped from user". */ + The registers, at the moment the signal occurred, get pushed on the kernel + stack through gnumach/i386/i386/locore.S:alltraps. They are denoted by a + 'struct i386_saved_state' (defined in gnumach/i386/i386/thread.h). + Upon invocation of the Mach interface function thread_get_state + + (= __thread_get_state in glibc), defined in gnumach/kern/thread.c, + the function thread_getstatus, defined in gnumach/i386/i386/pcb.c, copies the + register values in a different arrangement into a 'struct i386_thread_state', + defined in gnumach/i386/include/mach/i386/thread_status.h. (Different + arrangement: trapno, err get dropped; also esp gets set to 0.) + This 'struct i386_thread_state' is actually the 'basic' part of a + 'struct machine_thread_all_state', defined in + glibc/sysdeps/mach/x86/thread_state.h. + From there, the function _hurd_setup_sighandler, defined in + glibc/sysdeps/mach/hurd/x86/trampoline.c, + 1. sets esp to the same value as uesp, + 2. copies the 'struct i386_thread_state' into the appropriate part of a + 'struct sigcontext', defined in + glibc/sysdeps/mach/hurd/i386/bits/sigcontext.h. */ +/* Both sc_esp and sc_uesp have the same value. + It appears more reliable to use sc_uesp because sc_esp is marked as + "not used". */ # define SIGSEGV_FAULT_STACKPOINTER scp->sc_uesp # endif @@ -511,7 +596,14 @@ int libsigsegv_version = LIBSIGSEGV_VERSION; # define SIGSEGV_FAULT_STACKPOINTER scp->sc_regs[29] -# elif defined __powerpc__ || defined __powerpc64__ +# elif defined __powerpc64__ + +/* See the definition of 'struct sigcontext' in + openbsd-src/sys/arch/powerpc64/include/signal.h. */ + +# define SIGSEGV_FAULT_STACKPOINTER scp->sc_sp + +# elif defined __powerpc__ /* See the definition of 'struct sigcontext' and 'struct trapframe' in openbsd-src/sys/arch/powerpc/include/signal.h. */ @@ -1167,7 +1259,7 @@ install_for (int sig) struct sigaction action; # ifdef SIGSEGV_FAULT_ADDRESS_FROM_SIGINFO - action.sa_sigaction = &sigsegv_handler; + action.sa_sigaction = (void (*) (int, siginfo_t *, void *)) &sigsegv_handler; # else action.sa_handler = (void (*) (int)) &sigsegv_handler; # endif diff --git a/lib/sigsegv.in.h b/lib/sigsegv.in.h index 17ad87e..40b453e 100644 --- a/lib/sigsegv.in.h +++ b/lib/sigsegv.in.h @@ -1,5 +1,5 @@ /* Page fault handling library. - Copyright (C) 1998-2021 Free Software Foundation, Inc. + Copyright (C) 1998-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -23,7 +23,7 @@ #include /* Define the fault context structure. */ -#if defined __linux__ || defined __ANDROID__ \ +#if (defined __linux__ && !defined __ANDROID__) \ || (defined __FreeBSD__ && (defined __arm__ || defined __armhf__ || defined __arm64__)) \ || defined __NetBSD__ \ || defined _AIX || defined __sun \ @@ -180,7 +180,7 @@ extern int sigsegv_leave_handler (void (*continuation) (void*, void*, void*), vo * on some platforms it is a 'struct sigcontext *', on others merely an * opaque 'void *'. */ -# if defined __linux__ || defined __ANDROID__ \ +# if (defined __linux__ && !defined __ANDROID__) \ || (defined __FreeBSD__ && (defined __arm__ || defined __armhf__ || defined __arm64__)) \ || defined __NetBSD__ \ || (defined __APPLE__ && defined __MACH__) \ diff --git a/lib/stackvma.c b/lib/stackvma.c index a810afe..1224b7b 100644 --- a/lib/stackvma.c +++ b/lib/stackvma.c @@ -1,5 +1,5 @@ /* Determine the virtual memory area of a given address. - Copyright (C) 2002-2021 Free Software Foundation, Inc. + Copyright (C) 2002-2023 Free Software Foundation, Inc. Copyright (C) 2003-2006 Paolo Bonzini This program is free software: you can redistribute it and/or modify @@ -22,6 +22,7 @@ /* On Solaris in 32-bit mode, when gnulib module 'largefile' is in use, prevent a compilation error "Cannot use procfs in the large file compilation environment" + while also preventing from not defining off_t. On Android, when targeting Android 4.4 or older with a GCC toolchain, prevent a compilation error "error: call to 'mmap' declared with attribute error: mmap is not @@ -30,7 +31,11 @@ switch to Clang." The files that we access in this compilation unit are less than 2 GB large. */ -#if defined __sun || defined __ANDROID__ +#if defined __sun && !defined _LP64 && _FILE_OFFSET_BITS == 64 +# undef _FILE_OFFSET_BITS +# define _FILE_OFFSET_BITS 32 +#endif +#ifdef __ANDROID__ # undef _FILE_OFFSET_BITS #endif @@ -46,7 +51,7 @@ || defined __FreeBSD_kernel__ || defined __FreeBSD__ || defined __DragonFly__ \ || defined __NetBSD__ \ || (defined __APPLE__ && defined __MACH__) \ - || defined __sgi || defined __sun \ + || defined _AIX || defined __sgi || defined __sun \ || defined __CYGWIN__ || defined __HAIKU__ /* This file contains the proximity test function for the simple cases, where @@ -1465,17 +1470,312 @@ sigsegv_get_vma (uintptr_t req_address, struct vma_struct *vma) return -1; } -/* -------------------------------------------------------------------------- */ +/* ----------------------------- stackvma-aix.c ----------------------------- */ #elif defined _AIX /* AIX */ +# include /* getpagesize, getpid, close, read */ +# include /* EINTR */ +# include /* open */ +# include /* memcpy */ +# include +# include /* mmap, munmap */ +# include /* prmap_t */ +# include /* uname */ + +struct callback_locals +{ + uintptr_t address; + struct vma_struct *vma; +# if STACK_DIRECTION < 0 + uintptr_t prev; +# else + int stop_at_next_vma; +# endif + int retval; +}; + +static int +callback (struct callback_locals *locals, uintptr_t start, uintptr_t end) +{ +# if STACK_DIRECTION < 0 + if (locals->address >= start && locals->address <= end - 1) + { + locals->vma->start = start; + locals->vma->end = end; + locals->vma->prev_end = locals->prev; + locals->retval = 0; + return 1; + } + locals->prev = end; +# else + if (locals->stop_at_next_vma) + { + locals->vma->next_start = start; + locals->stop_at_next_vma = 0; + return 1; + } + if (locals->address >= start && locals->address <= end - 1) + { + locals->vma->start = start; + locals->vma->end = end; + locals->retval = 0; + locals->stop_at_next_vma = 1; + return 0; + } +# endif + return 0; +} + +/* Iterate over the virtual memory areas of the current process. + If such iteration is supported, the callback is called once for every + virtual memory area, in ascending order, with the following arguments: + - LOCALS is the same argument as passed to vma_iterate. + - START is the address of the first byte in the area, page-aligned. + - END is the address of the last byte in the area plus 1, page-aligned. + Note that it may be 0 for the last area in the address space. + If the callback returns 0, the iteration continues. If it returns 1, + the iteration terminates prematurely. + This function may open file descriptors, but does not call malloc(). + Return 0 if all went well, or -1 in case of error. */ +/* This code is a simplified copy (no handling of protection flags) of the + code in gnulib's lib/vma-iter.c. */ +static int +vma_iterate (struct callback_locals *locals) +{ + /* On AIX, there is a /proc/$pic/map file, that contains records of type + prmap_t, defined in . In older versions of AIX, it lists + only the virtual memory areas that are connected to a file, not the + anonymous ones. But at least since AIX 7.1, it is well usable. */ + + char fnamebuf[6+10+4+1]; + char *fname; + int fd; + size_t memneed; + + if (pagesize == 0) + init_pagesize (); + + /* Construct fname = sprintf (fnamebuf+i, "/proc/%u/map", getpid ()). */ + fname = fnamebuf + sizeof (fnamebuf) - (4+1); + memcpy (fname, "/map", 4+1); + { + unsigned int value = getpid (); + do + *--fname = (value % 10) + '0'; + while ((value = value / 10) > 0); + } + fname -= 6; + memcpy (fname, "/proc/", 6); + + fd = open (fname, O_RDONLY | O_CLOEXEC); + if (fd < 0) + return -1; + + /* The contents of /proc//map contains a number of prmap_t entries, + then an entirely null prmap_t entry, then a heap of NUL terminated + strings. + Documentation: https://www.ibm.com/docs/en/aix/7.1?topic=files-proc-file + We read the entire contents, but look only at the prmap_t entries and + ignore the tail part. */ + + for (memneed = 2 * pagesize; ; memneed = 2 * memneed) + { + /* Allocate memneed bytes of memory. + We cannot use alloca here, because not much stack space is guaranteed. + We also cannot use malloc here, because a malloc() call may call mmap() + and thus pre-allocate available memory. + So use mmap(), and ignore the resulting VMA if it occurs among the + resulting VMAs. (Normally it doesn't, because it was allocated after + the open() call.) */ + void *auxmap; + unsigned long auxmap_start; + unsigned long auxmap_end; + ssize_t nbytes; + + auxmap = (void *) mmap ((void *) 0, memneed, PROT_READ | PROT_WRITE, + MAP_ANONYMOUS | MAP_PRIVATE, -1, 0); + if (auxmap == (void *) -1) + { + close (fd); + return -1; + } + auxmap_start = (unsigned long) auxmap; + auxmap_end = auxmap_start + memneed; + + /* Read the contents of /proc//map in a single system call. + This guarantees a consistent result (no duplicated or omitted + entries). */ + retry: + do + nbytes = read (fd, auxmap, memneed); + while (nbytes < 0 && errno == EINTR); + if (nbytes <= 0) + { + munmap (auxmap, memneed); + close (fd); + return -1; + } + if (nbytes == memneed) + { + /* Need more memory. */ + munmap (auxmap, memneed); + if (lseek (fd, 0, SEEK_SET) < 0) + { + close (fd); + return -1; + } + } + else + { + if (read (fd, (char *) auxmap + nbytes, 1) > 0) + { + /* Oops, we had a short read. Retry. */ + if (lseek (fd, 0, SEEK_SET) < 0) + { + munmap (auxmap, memneed); + close (fd); + return -1; + } + goto retry; + } + + /* We now have the entire contents of /proc//map in memory. */ + prmap_t* maps = (prmap_t *) auxmap; + + /* The entries are not sorted by address. Therefore + 1. Extract the relevant information into an array. + 2. Sort the array in ascending order. + 3. Invoke the callback. */ + typedef struct + { + uintptr_t start; + uintptr_t end; + } + vma_t; + /* Since 2 * sizeof (vma_t) <= sizeof (prmap_t), we can reuse the + same memory. */ + vma_t *vmas = (vma_t *) auxmap; + + vma_t *vp = vmas; + { + prmap_t* mp; + for (mp = maps;;) + { + unsigned long start, end; + + start = (unsigned long) mp->pr_vaddr; + end = start + mp->pr_size; + if (start == 0 && end == 0 && mp->pr_mflags == 0) + break; + /* Discard empty VMAs and kernel VMAs. */ + if (start < end && (mp->pr_mflags & MA_KERNTEXT) == 0) + { + if (start <= auxmap_start && auxmap_end - 1 <= end - 1) + { + /* Consider [start,end-1] \ [auxmap_start,auxmap_end-1] + = [start,auxmap_start-1] u [auxmap_end,end-1]. */ + if (start < auxmap_start) + { + vp->start = start; + vp->end = auxmap_start; + vp++; + } + if (auxmap_end - 1 < end - 1) + { + vp->start = auxmap_end; + vp->end = end; + vp++; + } + } + else + { + vp->start = start; + vp->end = end; + vp++; + } + } + mp++; + } + } + + size_t nvmas = vp - vmas; + /* Sort the array in ascending order. + Better not call qsort(), since it may call malloc(). + Insertion-sort is OK in this case, despite its worst-case running + time of O(N²), since the number of VMAs will rarely be larger than + 1000. */ + { + size_t i; + for (i = 1; i < nvmas; i++) + { + /* Invariant: Here vmas[0..i-1] is sorted. */ + size_t j; + for (j = i; j > 0 && vmas[j - 1].start > vmas[j].start; j--) + { + vma_t tmp = vmas[j - 1]; + vmas[j - 1] = vmas[j]; + vmas[j] = tmp; + } + /* Invariant: Here vmas[0..i] is sorted. */ + } + } + + /* Invoke the callback. */ + { + size_t i; + for (i = 0; i < nvmas; i++) + { + vma_t *vpi = &vmas[i]; + if (callback (locals, vpi->start, vpi->end)) + break; + } + } + + munmap (auxmap, memneed); + break; + } + } + + close (fd); + return 0; +} + int sigsegv_get_vma (uintptr_t address, struct vma_struct *vma) { + struct utsname u; + if (uname (&u) >= 0 + /* && strcmp (u.sysname, "AIX") == 0 */ + && !(u.version[0] >= '1' && u.version[0] <= '6' && u.version[1] == '\0')) + { + /* AIX 7 or higher. */ + struct callback_locals locals; + locals.address = address; + locals.vma = vma; +#if STACK_DIRECTION < 0 + locals.prev = 0; +#else + locals.stop_at_next_vma = 0; +#endif + locals.retval = -1; + + vma_iterate (&locals); + if (locals.retval == 0) + { +#if !(STACK_DIRECTION < 0) + if (locals.stop_at_next_vma) + vma->next_start = 0; +#endif + vma->is_near_this = simple_is_near_this; + return 0; + } + } + return mincore_get_vma (address, vma); } -/* --------------------------- stackvma-procfs.h --------------------------- */ +/* --------------------------- stackvma-procfs.c --------------------------- */ #elif defined __sgi || defined __sun /* IRIX, Solaris */ diff --git a/lib/stackvma.h b/lib/stackvma.h index 1f214a4..2ddca87 100644 --- a/lib/stackvma.h +++ b/lib/stackvma.h @@ -1,5 +1,5 @@ /* Determine the virtual memory area of a given address. - Copyright (C) 2002-2021 Free Software Foundation, Inc. + Copyright (C) 2002-2023 Free Software Foundation, Inc. Copyright (C) 2003-2006 Paolo Bonzini This program is free software: you can redistribute it and/or modify diff --git a/lib/stat-macros.h b/lib/stat-macros.h index 8c1f414..ece22a5 100644 --- a/lib/stat-macros.h +++ b/lib/stat-macros.h @@ -1,10 +1,10 @@ /* stat-related macros - Copyright (C) 1993-2021 Free Software Foundation, Inc. + Copyright (C) 1993-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published - by the Free Software Foundation; either version 3 of the License, + by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This file is distributed in the hope that it will be useful, diff --git a/lib/stat-time.c b/lib/stat-time.c index 7b92792..bc28223 100644 --- a/lib/stat-time.c +++ b/lib/stat-time.c @@ -1,6 +1,6 @@ /* stat-related time functions. - Copyright (C) 2012-2021 Free Software Foundation, Inc. + Copyright (C) 2012-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/stat-time.h b/lib/stat-time.h index fe3483d..75eb27e 100644 --- a/lib/stat-time.h +++ b/lib/stat-time.h @@ -1,6 +1,6 @@ /* stat-related time functions. - Copyright (C) 2005, 2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2005, 2007, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -20,16 +20,18 @@ #ifndef STAT_TIME_H #define STAT_TIME_H 1 -#include "intprops.h" +/* This file uses _GL_INLINE_HEADER_BEGIN, _GL_INLINE, _GL_UNUSED, + _GL_ATTRIBUTE_PURE, HAVE_STRUCT_STAT_*. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif #include +#include #include #include #include -#ifndef _GL_INLINE_HEADER_BEGIN - #error "Please include config.h first." -#endif _GL_INLINE_HEADER_BEGIN #ifndef _GL_STAT_TIME_INLINE # define _GL_STAT_TIME_INLINE _GL_INLINE @@ -102,7 +104,7 @@ get_stat_mtime_ns (struct stat const *st) /* Return the nanosecond component of *ST's birth time. */ _GL_STAT_TIME_INLINE long int _GL_ATTRIBUTE_PURE -get_stat_birthtime_ns (struct stat const *st _GL_UNUSED) +get_stat_birthtime_ns (_GL_UNUSED struct stat const *st) { # if defined HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC return STAT_TIMESPEC (st, st_birthtim).tv_nsec; @@ -120,10 +122,8 @@ get_stat_atime (struct stat const *st) #ifdef STAT_TIMESPEC return STAT_TIMESPEC (st, st_atim); #else - struct timespec t; - t.tv_sec = st->st_atime; - t.tv_nsec = get_stat_atime_ns (st); - return t; + return (struct timespec) { .tv_sec = st->st_atime, + .tv_nsec = get_stat_atime_ns (st) }; #endif } @@ -134,10 +134,8 @@ get_stat_ctime (struct stat const *st) #ifdef STAT_TIMESPEC return STAT_TIMESPEC (st, st_ctim); #else - struct timespec t; - t.tv_sec = st->st_ctime; - t.tv_nsec = get_stat_ctime_ns (st); - return t; + return (struct timespec) { .tv_sec = st->st_ctime, + .tv_nsec = get_stat_ctime_ns (st) }; #endif } @@ -148,17 +146,15 @@ get_stat_mtime (struct stat const *st) #ifdef STAT_TIMESPEC return STAT_TIMESPEC (st, st_mtim); #else - struct timespec t; - t.tv_sec = st->st_mtime; - t.tv_nsec = get_stat_mtime_ns (st); - return t; + return (struct timespec) { .tv_sec = st->st_mtime, + .tv_nsec = get_stat_mtime_ns (st) }; #endif } /* Return *ST's birth time, if available; otherwise return a value with tv_sec and tv_nsec both equal to -1. */ _GL_STAT_TIME_INLINE struct timespec _GL_ATTRIBUTE_PURE -get_stat_birthtime (struct stat const *st _GL_UNUSED) +get_stat_birthtime (_GL_UNUSED struct stat const *st) { struct timespec t; @@ -166,8 +162,8 @@ get_stat_birthtime (struct stat const *st _GL_UNUSED) || defined HAVE_STRUCT_STAT_ST_BIRTHTIM_TV_NSEC) t = STAT_TIMESPEC (st, st_birthtim); #elif defined HAVE_STRUCT_STAT_ST_BIRTHTIMENSEC - t.tv_sec = st->st_birthtime; - t.tv_nsec = st->st_birthtimensec; + t = (struct timespec) { .tv_sec = st->st_birthtime, + .tv_nsec = st->st_birthtimensec }; #elif defined _WIN32 && ! defined __CYGWIN__ /* Native Windows platforms (but not Cygwin) put the "file creation time" in st_ctime (!). See @@ -175,13 +171,11 @@ get_stat_birthtime (struct stat const *st _GL_UNUSED) # if _GL_WINDOWS_STAT_TIMESPEC t = st->st_ctim; # else - t.tv_sec = st->st_ctime; - t.tv_nsec = 0; + t = (struct timespec) { .tv_sec = st->st_ctime }; # endif #else /* Birth time is not supported. */ - t.tv_sec = -1; - t.tv_nsec = -1; + t = (struct timespec) { .tv_sec = -1, .tv_nsec = -1 }; #endif #if (defined HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC \ @@ -193,10 +187,7 @@ get_stat_birthtime (struct stat const *st _GL_UNUSED) sometimes returns junk in the birth time fields; work around this bug if it is detected. */ if (! (t.tv_sec && 0 <= t.tv_nsec && t.tv_nsec < 1000000000)) - { - t.tv_sec = -1; - t.tv_nsec = -1; - } + t = (struct timespec) { .tv_sec = -1, .tv_nsec = -1 }; #endif return t; @@ -208,7 +199,7 @@ get_stat_birthtime (struct stat const *st _GL_UNUSED) errno to EOVERFLOW if normalization overflowed. This function is intended to be private to this .h file. */ _GL_STAT_TIME_INLINE int -stat_time_normalize (int result, struct stat *st _GL_UNUSED) +stat_time_normalize (int result, _GL_UNUSED struct stat *st) { #if defined __sun && defined STAT_TIMESPEC if (result == 0) @@ -230,9 +221,8 @@ stat_time_normalize (int result, struct stat *st _GL_UNUSED) } ts->tv_nsec = r; /* Overflow is possible, as Solaris 11 stat can yield - tv_sec == TYPE_MINIMUM (time_t) && tv_nsec == -1000000000. - INT_ADD_WRAPV is OK, since time_t is signed on Solaris. */ - if (INT_ADD_WRAPV (q, ts->tv_sec, &ts->tv_sec)) + tv_sec == TYPE_MINIMUM (time_t) && tv_nsec == -1000000000. */ + if (ckd_add (&ts->tv_sec, q, ts->tv_sec)) { errno = EOVERFLOW; return -1; diff --git a/lib/stat-w32.c b/lib/stat-w32.c index 4164199..2f01197 100644 --- a/lib/stat-w32.c +++ b/lib/stat-w32.c @@ -1,5 +1,5 @@ /* Core of implementation of fstat and stat for native Windows. - Copyright (C) 2017-2021 Free Software Foundation, Inc. + Copyright (C) 2017-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -50,7 +50,6 @@ #include "stat-w32.h" #include "pathmax.h" -#include "verify.h" /* Don't assume that UNICODE is not defined. */ #undef LoadLibrary @@ -228,7 +227,7 @@ _gl_fstat_by_handle (HANDLE h, const char *path, struct stat *buf) if (GetFileInformationByHandleExFunc (h, FileIdInfo, &id, sizeof (id))) { buf->st_dev = id.VolumeSerialNumber; - verify (sizeof (ino_t) == sizeof (id.FileId)); + static_assert (sizeof (ino_t) == sizeof (id.FileId)); memcpy (&buf->st_ino, &id.FileId, sizeof (ino_t)); goto ino_done; } diff --git a/lib/stat-w32.h b/lib/stat-w32.h index 5b56c09..c673874 100644 --- a/lib/stat-w32.h +++ b/lib/stat-w32.h @@ -1,5 +1,5 @@ /* Core of implementation of fstat and stat for native Windows. - Copyright (C) 2017-2021 Free Software Foundation, Inc. + Copyright (C) 2017-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/stat.c b/lib/stat.c index bc9a767..7987e26 100644 --- a/lib/stat.c +++ b/lib/stat.c @@ -1,5 +1,5 @@ /* Work around platform bugs in stat. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -55,11 +55,9 @@ orig_stat (const char *filename, struct stat *buf) #include #include -#include #include #include "filename.h" #include "malloca.h" -#include "verify.h" #ifdef WINDOWS_NATIVE # define WIN32_LEAN_AND_MEAN diff --git a/lib/stdalign.in.h b/lib/stdalign.in.h deleted file mode 100644 index 592d58e..0000000 --- a/lib/stdalign.in.h +++ /dev/null @@ -1,127 +0,0 @@ -/* A substitute for ISO C11 . - - Copyright 2011-2021 Free Software Foundation, Inc. - - This file is free software: you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as - published by the Free Software Foundation; either version 2.1 of the - License, or (at your option) any later version. - - This file is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public License - along with this program. If not, see . */ - -/* Written by Paul Eggert and Bruno Haible. */ - -#ifndef _GL_STDALIGN_H -#define _GL_STDALIGN_H - -/* ISO C11 for platforms that lack it. - - References: - ISO C11 (latest free draft - ) - sections 6.5.3.4, 6.7.5, 7.15. - C++11 (latest free draft - ) - section 18.10. */ - -/* alignof (TYPE), also known as _Alignof (TYPE), yields the alignment - requirement of a structure member (i.e., slot or field) that is of - type TYPE, as an integer constant expression. - - This differs from GCC's and clang's __alignof__ operator, which can - yield a better-performing alignment for an object of that type. For - example, on x86 with GCC and on Linux/x86 with clang, - __alignof__ (double) and __alignof__ (long long) are 8, whereas - alignof (double) and alignof (long long) are 4 unless the option - '-malign-double' is used. - - The result cannot be used as a value for an 'enum' constant, if you - want to be portable to HP-UX 10.20 cc and AIX 3.2.5 xlc. - - Include for offsetof. */ -#include - -/* FreeBSD 9.1 , included by and lots of other - standard headers, defines conflicting implementations of _Alignas - and _Alignof that are no better than ours; override them. */ -#undef _Alignas -#undef _Alignof - -/* GCC releases before GCC 4.9 had a bug in _Alignof. See GCC bug 52023 - . - clang versions < 8.0.0 have the same bug. */ -#if (!defined __STDC_VERSION__ || __STDC_VERSION__ < 201112 \ - || (defined __GNUC__ && __GNUC__ < 4 + (__GNUC_MINOR__ < 9) \ - && !defined __clang__) \ - || (defined __clang__ && __clang_major__ < 8)) -# ifdef __cplusplus -# if 201103 <= __cplusplus -# define _Alignof(type) alignof (type) -# else - template struct __alignof_helper { char __a; __t __b; }; -# define _Alignof(type) offsetof (__alignof_helper, __b) -# endif -# else -# define _Alignof(type) offsetof (struct { char __a; type __b; }, __b) -# endif -#endif -#if ! (defined __cplusplus && 201103 <= __cplusplus) -# define alignof _Alignof -#endif -#define __alignof_is_defined 1 - -/* alignas (A), also known as _Alignas (A), aligns a variable or type - to the alignment A, where A is an integer constant expression. For - example: - - int alignas (8) foo; - struct s { int a; int alignas (8) bar; }; - - aligns the address of FOO and the offset of BAR to be multiples of 8. - - A should be a power of two that is at least the type's alignment - and at most the implementation's alignment limit. This limit is - 2**28 on typical GNUish hosts, and 2**13 on MSVC. To be portable - to MSVC through at least version 10.0, A should be an integer - constant, as MSVC does not support expressions such as 1 << 3. - To be portable to Sun C 5.11, do not align auto variables to - anything stricter than their default alignment. - - The following C11 requirements are not supported here: - - - If A is zero, alignas has no effect. - - alignas can be used multiple times; the strictest one wins. - - alignas (TYPE) is equivalent to alignas (alignof (TYPE)). - - */ - -#if !defined __STDC_VERSION__ || __STDC_VERSION__ < 201112 -# if defined __cplusplus && 201103 <= __cplusplus -# define _Alignas(a) alignas (a) -# elif (!defined __attribute__ \ - && ((defined __APPLE__ && defined __MACH__ \ - ? 4 < __GNUC__ + (1 <= __GNUC_MINOR__) \ - : __GNUC__ && !defined __ibmxl__) \ - || (4 <= __clang_major__) \ - || (__ia64 && (61200 <= __HP_cc || 61200 <= __HP_aCC)) \ - || __ICC || 0x590 <= __SUNPRO_C || 0x0600 <= __xlC__)) -# define _Alignas(a) __attribute__ ((__aligned__ (a))) -# elif 1300 <= _MSC_VER -# define _Alignas(a) __declspec (align (a)) -# endif -#endif -#if ((defined _Alignas && ! (defined __cplusplus && 201103 <= __cplusplus)) \ - || (defined __STDC_VERSION__ && 201112 <= __STDC_VERSION__)) -# define alignas _Alignas -#endif -#if defined alignas || (defined __cplusplus && 201103 <= __cplusplus) -# define __alignas_is_defined 1 -#endif - -#endif /* _GL_STDALIGN_H */ diff --git a/lib/stdarg.in.h b/lib/stdarg.in.h index 9269da2..8145216 100644 --- a/lib/stdarg.in.h +++ b/lib/stdarg.in.h @@ -1,5 +1,5 @@ /* Substitute for and wrapper around . - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -27,6 +27,11 @@ #ifndef _@GUARD_PREFIX@_STDARG_H #define _@GUARD_PREFIX@_STDARG_H +/* This file uses va_copy. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + #ifndef va_copy # define va_copy(a,b) ((a) = (b)) #endif diff --git a/lib/stdbool.in.h b/lib/stdbool.in.h deleted file mode 100644 index 2a1992d..0000000 --- a/lib/stdbool.in.h +++ /dev/null @@ -1,132 +0,0 @@ -/* Copyright (C) 2001-2003, 2006-2021 Free Software Foundation, Inc. - Written by Bruno Haible , 2001. - - This file is free software: you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as - published by the Free Software Foundation; either version 2.1 of the - License, or (at your option) any later version. - - This file is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public License - along with this program. If not, see . */ - -#ifndef _GL_STDBOOL_H -#define _GL_STDBOOL_H - -/* ISO C 99 for platforms that lack it. */ - -/* Usage suggestions: - - Programs that use should be aware of some limitations - and standards compliance issues. - - Standards compliance: - - - must be #included before 'bool', 'false', 'true' - can be used. - - - You cannot assume that sizeof (bool) == 1. - - - Programs should not undefine the macros bool, true, and false, - as C99 lists that as an "obsolescent feature". - - Limitations of this substitute, when used in a C89 environment: - - - must be #included before the '_Bool' type can be used. - - - You cannot assume that _Bool is a typedef; it might be a macro. - - - Bit-fields of type 'bool' are not supported. Portable code - should use 'unsigned int foo : 1;' rather than 'bool foo : 1;'. - - - In C99, casts and automatic conversions to '_Bool' or 'bool' are - performed in such a way that every nonzero value gets converted - to 'true', and zero gets converted to 'false'. This doesn't work - with this substitute. With this substitute, only the values 0 and 1 - give the expected result when converted to _Bool' or 'bool'. - - - C99 allows the use of (_Bool)0.0 in constant expressions, but - this substitute cannot always provide this property. - - Also, it is suggested that programs use 'bool' rather than '_Bool'; - this isn't required, but 'bool' is more common. */ - - -/* 7.16. Boolean type and values */ - -/* BeOS already #defines false 0, true 1. We use the same - definitions below, but temporarily we have to #undef them. */ -#if defined __BEOS__ && !defined __HAIKU__ -# include /* defines bool but not _Bool */ -# undef false -# undef true -#endif - -#ifdef __cplusplus -# define _Bool bool -# define bool bool -#else -# if defined __BEOS__ && !defined __HAIKU__ - /* A compiler known to have 'bool'. */ - /* If the compiler already has both 'bool' and '_Bool', we can assume they - are the same types. */ -# if !@HAVE__BOOL@ -typedef bool _Bool; -# endif -# else -# if !defined __GNUC__ - /* If @HAVE__BOOL@: - Some HP-UX cc and AIX IBM C compiler versions have compiler bugs when - the built-in _Bool type is used. See - https://gcc.gnu.org/ml/gcc-patches/2003-12/msg02303.html - https://lists.gnu.org/r/bug-coreutils/2005-11/msg00161.html - https://lists.gnu.org/r/bug-coreutils/2005-10/msg00086.html - Similar bugs are likely with other compilers as well; this file - wouldn't be used if was working. - So we override the _Bool type. - If !@HAVE__BOOL@: - Need to define _Bool ourselves. As 'signed char' or as an enum type? - Use of a typedef, with SunPRO C, leads to a stupid - "warning: _Bool is a keyword in ISO C99". - Use of an enum type, with IRIX cc, leads to a stupid - "warning(1185): enumerated type mixed with another type". - Even the existence of an enum type, without a typedef, - "Invalid enumerator. (badenum)" with HP-UX cc on Tru64. - The only benefit of the enum, debuggability, is not important - with these compilers. So use 'signed char' and no enum. */ -# define _Bool signed char -# else - /* With this compiler, trust the _Bool type if the compiler has it. */ -# if !@HAVE__BOOL@ - /* For the sake of symbolic names in gdb, define true and false as - enum constants, not only as macros. - It is tempting to write - typedef enum { false = 0, true = 1 } _Bool; - so that gdb prints values of type 'bool' symbolically. But then - values of type '_Bool' might promote to 'int' or 'unsigned int' - (see ISO C 99 6.7.2.2.(4)); however, '_Bool' must promote to 'int' - (see ISO C 99 6.3.1.1.(2)). So add a negative value to the - enum; this ensures that '_Bool' promotes to 'int'. */ -typedef enum { _Bool_must_promote_to_int = -1, false = 0, true = 1 } _Bool; -# endif -# endif -# endif -# define bool _Bool -#endif - -/* The other macros must be usable in preprocessor directives. */ -#ifdef __cplusplus -# define false false -# define true true -#else -# define false 0 -# define true 1 -#endif - -#define __bool_true_false_are_defined 1 - -#endif /* _GL_STDBOOL_H */ diff --git a/lib/stdckdint.in.h b/lib/stdckdint.in.h new file mode 100644 index 0000000..71bab5f --- /dev/null +++ b/lib/stdckdint.in.h @@ -0,0 +1,35 @@ +/* stdckdint.h -- checked integer arithmetic + + Copyright 2022-2023 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 2.1 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#ifndef _GL_STDCKDINT_H +#define _GL_STDCKDINT_H + +#include "intprops-internal.h" + +/* Store into *R the low-order bits of A + B, A - B, A * B, respectively. + Return 1 if the result overflows, 0 otherwise. + A, B, and *R can have any integer type other than char, bool, a + bit-precise integer type, or an enumeration type. + + These are like the standard macros introduced in C23, except that + arguments should not have side effects. */ + +#define ckd_add(r, a, b) ((bool) _GL_INT_ADD_WRAPV (a, b, r)) +#define ckd_sub(r, a, b) ((bool) _GL_INT_SUBTRACT_WRAPV (a, b, r)) +#define ckd_mul(r, a, b) ((bool) _GL_INT_MULTIPLY_WRAPV (a, b, r)) + +#endif /* _GL_STDCKDINT_H */ diff --git a/lib/stddef.in.h b/lib/stddef.in.h index 42290d4..431e819 100644 --- a/lib/stddef.in.h +++ b/lib/stddef.in.h @@ -1,6 +1,6 @@ /* A substitute for POSIX 2008 , for platforms that have issues. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -18,7 +18,7 @@ /* Written by Eric Blake. */ /* - * POSIX 2008 for platforms that have issues. + * POSIX 2008 and ISO C 23 for platforms that have issues. * */ @@ -37,9 +37,9 @@ remember if special invocation has ever been used to obtain wint_t, in which case we need to clean up NULL yet again. */ -# if !(defined _@GUARD_PREFIX@_STDDEF_H && defined _GL_STDDEF_WINT_T) +# if !(defined _@GUARD_PREFIX@_STDDEF_H && defined _@GUARD_PREFIX@_STDDEF_WINT_T) # ifdef __need_wint_t -# define _GL_STDDEF_WINT_T +# define _@GUARD_PREFIX@_STDDEF_WINT_T # endif # @INCLUDE_NEXT@ @NEXT_STDDEF_H@ /* On TinyCC, make sure that the macros that indicate the special invocation @@ -69,6 +69,7 @@ typedef long rpl_max_align_t; typedef long max_align_t; # define _MAX_ALIGN_T # endif +# define __CLANG_MAX_ALIGN_T_DEFINED # define GNULIB_defined_max_align_t 1 # endif # endif @@ -79,7 +80,7 @@ typedef long max_align_t; /* On NetBSD 5.0, the definition of NULL lacks proper parentheses. */ # if (@REPLACE_NULL@ \ - && (!defined _@GUARD_PREFIX@_STDDEF_H || defined _GL_STDDEF_WINT_T)) + && (!defined _@GUARD_PREFIX@_STDDEF_H || defined _@GUARD_PREFIX@_STDDEF_WINT_T)) # undef NULL # ifdef __cplusplus /* ISO C++ says that the macro NULL must expand to an integer constant @@ -100,6 +101,11 @@ typedef long max_align_t; # ifndef _@GUARD_PREFIX@_STDDEF_H # define _@GUARD_PREFIX@_STDDEF_H +/* This file uses _Noreturn. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + /* Some platforms lack wchar_t. */ #if !@HAVE_WCHAR_T@ # define wchar_t int @@ -137,11 +143,49 @@ typedef union long int __i _GL_STDDEF_ALIGNAS (long int); } rpl_max_align_t; # define max_align_t rpl_max_align_t +# define __CLANG_MAX_ALIGN_T_DEFINED # define GNULIB_defined_max_align_t 1 # endif # endif #endif +/* ISO C 23 § 7.21.1 The unreachable macro */ +#ifndef unreachable + +/* Code borrowed from verify.h. */ +# ifndef _GL_HAS_BUILTIN_UNREACHABLE +# if defined __clang_major__ && __clang_major__ < 5 +# define _GL_HAS_BUILTIN_UNREACHABLE 0 +# elif 4 < __GNUC__ + (5 <= __GNUC_MINOR__) +# define _GL_HAS_BUILTIN_UNREACHABLE 1 +# elif defined __has_builtin +# define _GL_HAS_BUILTIN_UNREACHABLE __has_builtin (__builtin_unreachable) +# else +# define _GL_HAS_BUILTIN_UNREACHABLE 0 +# endif +# endif + +# if _GL_HAS_BUILTIN_UNREACHABLE +# define unreachable() __builtin_unreachable () +# elif 1200 <= _MSC_VER +# define unreachable() __assume (0) +# else +/* Declare abort(), without including . */ +extern +# if defined __cplusplus +"C" +# endif +_Noreturn +void abort (void) +# if defined __cplusplus && (__GLIBC__ >= 2) +throw () +# endif +; +# define unreachable() abort () +# endif + +#endif + # endif /* _@GUARD_PREFIX@_STDDEF_H */ # endif /* _@GUARD_PREFIX@_STDDEF_H */ #endif /* __need_XXX */ diff --git a/lib/stdint.in.h b/lib/stdint.in.h index 85c5418..5ddc644 100644 --- a/lib/stdint.in.h +++ b/lib/stdint.in.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2001-2002, 2004-2021 Free Software Foundation, Inc. +/* Copyright (C) 2001-2002, 2004-2023 Free Software Foundation, Inc. Written by Paul Eggert, Bruno Haible, Sam Steingold, Peter Burwood. This file is part of gnulib. diff --git a/lib/stdio-read.c b/lib/stdio-read.c new file mode 100644 index 0000000..6e2984c --- /dev/null +++ b/lib/stdio-read.c @@ -0,0 +1,168 @@ +/* POSIX compatible FILE stream read function. + Copyright (C) 2008-2023 Free Software Foundation, Inc. + Written by Bruno Haible , 2011. + + This file is free software: you can redistribute it and/or modify + it under the terms of the GNU Lesser General Public License as + published by the Free Software Foundation; either version 2.1 of the + License, or (at your option) any later version. + + This file is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include + +/* Replace these functions only if module 'nonblocking' is requested. */ +#if GNULIB_NONBLOCKING + +/* On native Windows platforms, when read() is called on a non-blocking pipe + with an empty buffer, ReadFile() fails with error GetLastError() = + ERROR_NO_DATA, and read() in consequence fails with error EINVAL. This + read() function is at the basis of the function which fills the buffer of + a FILE stream. */ + +# if defined _WIN32 && ! defined __CYGWIN__ + +# include +# include + +# define WIN32_LEAN_AND_MEAN /* avoid including junk */ +# include + +# if GNULIB_MSVC_NOTHROW +# include "msvc-nothrow.h" +# else +# include +# endif + +/* Don't assume that UNICODE is not defined. */ +# undef GetNamedPipeHandleState +# define GetNamedPipeHandleState GetNamedPipeHandleStateA + +# define CALL_WITH_ERRNO_FIX(RETTYPE, EXPRESSION, FAILED) \ + if (ferror (stream)) \ + return (EXPRESSION); \ + else \ + { \ + RETTYPE ret; \ + SetLastError (0); \ + ret = (EXPRESSION); \ + if (FAILED) \ + { \ + if (GetLastError () == ERROR_NO_DATA && ferror (stream)) \ + { \ + int fd = fileno (stream); \ + if (fd >= 0) \ + { \ + HANDLE h = (HANDLE) _get_osfhandle (fd); \ + if (GetFileType (h) == FILE_TYPE_PIPE) \ + { \ + /* h is a pipe or socket. */ \ + DWORD state; \ + if (GetNamedPipeHandleState (h, &state, NULL, NULL, \ + NULL, NULL, 0) \ + && (state & PIPE_NOWAIT) != 0) \ + /* h is a pipe in non-blocking mode. \ + Change errno from EINVAL to EAGAIN. */ \ + errno = EAGAIN; \ + } \ + } \ + } \ + } \ + return ret; \ + } + +/* Enable this function definition only if gnulib's has prepared it. + Otherwise we get a function definition conflict with mingw64's . */ +# if GNULIB_SCANF +int +scanf (const char *format, ...) +{ + int retval; + va_list args; + + va_start (args, format); + retval = vfscanf (stdin, format, args); + va_end (args); + + return retval; +} +# endif + +/* Enable this function definition only if gnulib's has prepared it. + Otherwise we get a function definition conflict with mingw64's . */ +# if GNULIB_FSCANF +int +fscanf (FILE *stream, const char *format, ...) +{ + int retval; + va_list args; + + va_start (args, format); + retval = vfscanf (stream, format, args); + va_end (args); + + return retval; +} +# endif + +/* Enable this function definition only if gnulib's has prepared it. + Otherwise we get a function definition conflict with mingw64's . */ +# if GNULIB_VSCANF +int +vscanf (const char *format, va_list args) +{ + return vfscanf (stdin, format, args); +} +# endif + +/* Enable this function definition only if gnulib's has prepared it. + Otherwise we get a function definition conflict with mingw64's . */ +# if GNULIB_VFSCANF +int +vfscanf (FILE *stream, const char *format, va_list args) +#undef vfscanf +{ + CALL_WITH_ERRNO_FIX (int, vfscanf (stream, format, args), ret == EOF) +} +# endif + +int +getchar (void) +{ + return fgetc (stdin); +} + +int +fgetc (FILE *stream) +#undef fgetc +{ + CALL_WITH_ERRNO_FIX (int, fgetc (stream), ret == EOF) +} + +char * +fgets (char *s, int n, FILE *stream) +#undef fgets +{ + CALL_WITH_ERRNO_FIX (char *, fgets (s, n, stream), ret == NULL) +} + +/* We intentionally don't bother to fix gets. */ + +size_t +fread (void *ptr, size_t s, size_t n, FILE *stream) +#undef fread +{ + CALL_WITH_ERRNO_FIX (size_t, fread (ptr, s, n, stream), ret < n) +} + +# endif +#endif diff --git a/lib/stdio-write.c b/lib/stdio-write.c new file mode 100644 index 0000000..9cf36cc --- /dev/null +++ b/lib/stdio-write.c @@ -0,0 +1,206 @@ +/* POSIX compatible FILE stream write function. + Copyright (C) 2008-2023 Free Software Foundation, Inc. + Written by Bruno Haible , 2008. + + This file is free software: you can redistribute it and/or modify + it under the terms of the GNU Lesser General Public License as + published by the Free Software Foundation; either version 2.1 of the + License, or (at your option) any later version. + + This file is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include + +/* Replace these functions only if module 'nonblocking' or module 'sigpipe' is + requested. */ +#if GNULIB_NONBLOCKING || GNULIB_SIGPIPE + +/* On native Windows platforms, SIGPIPE does not exist. When write() is + called on a pipe with no readers, WriteFile() fails with error + GetLastError() = ERROR_NO_DATA, and write() in consequence fails with + error EINVAL. This write() function is at the basis of the function + which flushes the buffer of a FILE stream. */ + +# if defined _WIN32 && ! defined __CYGWIN__ + +# include +# include +# include + +# define WIN32_LEAN_AND_MEAN /* avoid including junk */ +# include + +# if GNULIB_MSVC_NOTHROW +# include "msvc-nothrow.h" +# else +# include +# endif + +/* Don't assume that UNICODE is not defined. */ +# undef GetNamedPipeHandleState +# define GetNamedPipeHandleState GetNamedPipeHandleStateA + +# if GNULIB_NONBLOCKING +# define CLEAR_ERRNO \ + errno = 0; +# define HANDLE_ENOSPC \ + if (errno == ENOSPC && ferror (stream)) \ + { \ + int fd = fileno (stream); \ + if (fd >= 0) \ + { \ + HANDLE h = (HANDLE) _get_osfhandle (fd); \ + if (GetFileType (h) == FILE_TYPE_PIPE) \ + { \ + /* h is a pipe or socket. */ \ + DWORD state; \ + if (GetNamedPipeHandleState (h, &state, NULL, NULL, \ + NULL, NULL, 0) \ + && (state & PIPE_NOWAIT) != 0) \ + /* h is a pipe in non-blocking mode. \ + Change errno from ENOSPC to EAGAIN. */ \ + errno = EAGAIN; \ + } \ + } \ + } \ + else +# else +# define CLEAR_ERRNO +# define HANDLE_ENOSPC +# endif + +# if GNULIB_SIGPIPE +# define CLEAR_LastError \ + SetLastError (0); +# define HANDLE_ERROR_NO_DATA \ + if (GetLastError () == ERROR_NO_DATA && ferror (stream)) \ + { \ + int fd = fileno (stream); \ + if (fd >= 0 \ + && GetFileType ((HANDLE) _get_osfhandle (fd)) \ + == FILE_TYPE_PIPE) \ + { \ + /* Try to raise signal SIGPIPE. */ \ + raise (SIGPIPE); \ + /* If it is currently blocked or ignored, change errno from \ + EINVAL to EPIPE. */ \ + errno = EPIPE; \ + } \ + } \ + else +# else +# define CLEAR_LastError +# define HANDLE_ERROR_NO_DATA +# endif + +# define CALL_WITH_SIGPIPE_EMULATION(RETTYPE, EXPRESSION, FAILED) \ + if (ferror (stream)) \ + return (EXPRESSION); \ + else \ + { \ + RETTYPE ret; \ + CLEAR_ERRNO \ + CLEAR_LastError \ + ret = (EXPRESSION); \ + if (FAILED) \ + { \ + HANDLE_ENOSPC \ + HANDLE_ERROR_NO_DATA \ + ; \ + } \ + return ret; \ + } + +# if !REPLACE_PRINTF_POSIX /* avoid collision with printf.c */ +int +printf (const char *format, ...) +{ + int retval; + va_list args; + + va_start (args, format); + retval = vfprintf (stdout, format, args); + va_end (args); + + return retval; +} +# endif + +# if !REPLACE_FPRINTF_POSIX /* avoid collision with fprintf.c */ +int +fprintf (FILE *stream, const char *format, ...) +{ + int retval; + va_list args; + + va_start (args, format); + retval = vfprintf (stream, format, args); + va_end (args); + + return retval; +} +# endif + +# if !REPLACE_VPRINTF_POSIX /* avoid collision with vprintf.c */ +int +vprintf (const char *format, va_list args) +{ + return vfprintf (stdout, format, args); +} +# endif + +# if !REPLACE_VFPRINTF_POSIX /* avoid collision with vfprintf.c */ +int +vfprintf (FILE *stream, const char *format, va_list args) +#undef vfprintf +{ + CALL_WITH_SIGPIPE_EMULATION (int, vfprintf (stream, format, args), ret == EOF) +} +# endif + +int +putchar (int c) +{ + return fputc (c, stdout); +} + +int +fputc (int c, FILE *stream) +#undef fputc +{ + CALL_WITH_SIGPIPE_EMULATION (int, fputc (c, stream), ret == EOF) +} + +int +fputs (const char *string, FILE *stream) +#undef fputs +{ + CALL_WITH_SIGPIPE_EMULATION (int, fputs (string, stream), ret == EOF) +} + +int +puts (const char *string) +#undef puts +{ + FILE *stream = stdout; + CALL_WITH_SIGPIPE_EMULATION (int, puts (string), ret == EOF) +} + +size_t +fwrite (const void *ptr, size_t s, size_t n, FILE *stream) +#undef fwrite +{ + CALL_WITH_SIGPIPE_EMULATION (size_t, fwrite (ptr, s, n, stream), ret < n) +} + +# endif +#endif diff --git a/lib/stdio.in.h b/lib/stdio.in.h index 20ba488..6be12c0 100644 --- a/lib/stdio.in.h +++ b/lib/stdio.in.h @@ -1,6 +1,6 @@ /* A GNU-like . - Copyright (C) 2004, 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2004, 2007-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -36,6 +36,12 @@ #ifndef _@GUARD_PREFIX@_STDIO_H +/* Suppress macOS deprecation warnings for sprintf and vsprintf. */ +#if (defined __APPLE__ && defined __MACH__) && !defined _POSIX_C_SOURCE +# define _POSIX_C_SOURCE 200809L +# define _GL_DEFINED__POSIX_C_SOURCE +#endif + #define _GL_ALREADY_INCLUDING_STDIO_H /* The include_next requires a split double-inclusion guard. */ @@ -43,9 +49,20 @@ #undef _GL_ALREADY_INCLUDING_STDIO_H +#ifdef _GL_DEFINED__POSIX_C_SOURCE +# undef _GL_DEFINED__POSIX_C_SOURCE +# undef _POSIX_C_SOURCE +#endif + #ifndef _@GUARD_PREFIX@_STDIO_H #define _@GUARD_PREFIX@_STDIO_H +/* This file uses _GL_ATTRIBUTE_DEALLOC, _GL_ATTRIBUTE_FORMAT, + _GL_ATTRIBUTE_MALLOC, GNULIB_POSIXCHECK, HAVE_RAW_DECL_*. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + /* Get va_list. Needed on many systems, including glibc 2.8. */ #include @@ -56,6 +73,52 @@ May also define off_t to a 64-bit type on native Windows. */ #include +/* Solaris 10 and NetBSD 7.0 declare renameat in , not in . */ +/* But in any case avoid namespace pollution on glibc systems. */ +#if (@GNULIB_RENAMEAT@ || defined GNULIB_POSIXCHECK) && (defined __sun || defined __NetBSD__) \ + && ! defined __GLIBC__ +# include +#endif + +/* Android 4.3 declares renameat in , not in . */ +/* But in any case avoid namespace pollution on glibc systems. */ +#if (@GNULIB_RENAMEAT@ || defined GNULIB_POSIXCHECK) && defined __ANDROID__ \ + && ! defined __GLIBC__ +# include +#endif + +/* MSVC declares 'perror' in , not in . We must include + it before we #define perror rpl_perror. */ +/* But in any case avoid namespace pollution on glibc systems. */ +#if (@GNULIB_PERROR@ || defined GNULIB_POSIXCHECK) \ + && (defined _WIN32 && ! defined __CYGWIN__) \ + && ! defined __GLIBC__ +# include +#endif + +/* MSVC declares 'remove' in , not in . We must include + it before we #define remove rpl_remove. */ +/* MSVC declares 'rename' in , not in . We must include + it before we #define rename rpl_rename. */ +/* But in any case avoid namespace pollution on glibc systems. */ +#if (@GNULIB_REMOVE@ || @GNULIB_RENAME@ || defined GNULIB_POSIXCHECK) \ + && (defined _WIN32 && ! defined __CYGWIN__) \ + && ! defined __GLIBC__ +# include +#endif + + +/* _GL_ATTRIBUTE_DEALLOC (F, I) declares that the function returns pointers + that can be freed by passing them as the Ith argument to the + function F. */ +#ifndef _GL_ATTRIBUTE_DEALLOC +# if __GNUC__ >= 11 +# define _GL_ATTRIBUTE_DEALLOC(f, i) __attribute__ ((__malloc__ (f, i))) +# else +# define _GL_ATTRIBUTE_DEALLOC(f, i) +# endif +#endif + /* The __attribute__ feature is available in gcc versions 2.5 and later. The __-protected variants of the attributes 'format' and 'printf' are accepted by gcc versions 2.6.4 (effectively 2.7) and later. @@ -70,6 +133,16 @@ # endif #endif +/* _GL_ATTRIBUTE_MALLOC declares that the function returns a pointer to freshly + allocated memory. */ +#ifndef _GL_ATTRIBUTE_MALLOC +# if __GNUC__ >= 3 || defined __clang__ +# define _GL_ATTRIBUTE_MALLOC __attribute__ ((__malloc__)) +# else +# define _GL_ATTRIBUTE_MALLOC +# endif +#endif + /* An __attribute__ __format__ specifier for a function that takes a format string and arguments, where the format string directives are the ones standardized by ISO C99 and POSIX. @@ -127,41 +200,6 @@ #define _GL_ATTRIBUTE_FORMAT_SCANF_SYSTEM(formatstring_parameter, first_argument) \ _GL_ATTRIBUTE_FORMAT ((__scanf__, formatstring_parameter, first_argument)) -/* Solaris 10 and NetBSD 7.0 declare renameat in , not in . */ -/* But in any case avoid namespace pollution on glibc systems. */ -#if (@GNULIB_RENAMEAT@ || defined GNULIB_POSIXCHECK) && (defined __sun || defined __NetBSD__) \ - && ! defined __GLIBC__ -# include -#endif - -/* Android 4.3 declares renameat in , not in . */ -/* But in any case avoid namespace pollution on glibc systems. */ -#if (@GNULIB_RENAMEAT@ || defined GNULIB_POSIXCHECK) && defined __ANDROID__ \ - && ! defined __GLIBC__ -# include -#endif - -/* MSVC declares 'perror' in , not in . We must include - it before we #define perror rpl_perror. */ -/* But in any case avoid namespace pollution on glibc systems. */ -#if (@GNULIB_PERROR@ || defined GNULIB_POSIXCHECK) \ - && (defined _WIN32 && ! defined __CYGWIN__) \ - && ! defined __GLIBC__ -# include -#endif - -/* MSVC declares 'remove' in , not in . We must include - it before we #define remove rpl_remove. */ -/* MSVC declares 'rename' in , not in . We must include - it before we #define rename rpl_rename. */ -/* But in any case avoid namespace pollution on glibc systems. */ -#if (@GNULIB_REMOVE@ || @GNULIB_RENAME@ || defined GNULIB_POSIXCHECK) \ - && (defined _WIN32 && ! defined __CYGWIN__) \ - && ! defined __GLIBC__ -# include -#endif - - /* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */ /* The definition of _GL_ARG_NONNULL is copied here. */ @@ -182,6 +220,36 @@ # undef putc_unlocked #endif + +/* Maximum number of characters produced by printing a NaN value. */ +#ifndef _PRINTF_NAN_LEN_MAX +# if defined __FreeBSD__ || defined __DragonFly__ \ + || defined __NetBSD__ \ + || (defined __APPLE__ && defined __MACH__) +/* On BSD systems, a NaN value prints as just "nan", without a sign. */ +# define _PRINTF_NAN_LEN_MAX 3 +# elif (__GLIBC__ >= 2) || MUSL_LIBC || defined __OpenBSD__ || defined __sun || defined __CYGWIN__ +/* glibc, musl libc, OpenBSD, Solaris libc, and Cygwin produce "[-]nan". */ +# define _PRINTF_NAN_LEN_MAX 4 +# elif defined _AIX +/* AIX produces "[-]NaNQ". */ +# define _PRINTF_NAN_LEN_MAX 5 +# elif defined _WIN32 && !defined __CYGWIN__ +/* On native Windows, the output can be: + - with MSVC ucrt: "[-]nan" or "[-]nan(ind)" or "[-]nan(snan)", + - with mingw: "[-]1.#IND" or "[-]1.#QNAN". */ +# define _PRINTF_NAN_LEN_MAX 10 +# elif defined __sgi +/* On IRIX, the output typically is "[-]nan0xNNNNNNNN" with 8 hexadecimal + digits. */ +# define _PRINTF_NAN_LEN_MAX 14 +# else +/* We don't know, but 32 should be a safe maximum. */ +# define _PRINTF_NAN_LEN_MAX 32 +# endif +#endif + + #if @GNULIB_DPRINTF@ # if @REPLACE_DPRINTF@ # if !(defined __cplusplus && defined GNULIB_NAMESPACE) @@ -199,7 +267,9 @@ _GL_FUNCDECL_SYS (dprintf, int, (int fd, const char *restrict format, ...) # endif _GL_CXXALIAS_SYS (dprintf, int, (int fd, const char *restrict format, ...)); # endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (dprintf); +# endif #elif defined GNULIB_POSIXCHECK # undef dprintf # if HAVE_RAW_DECL_DPRINTF @@ -260,8 +330,10 @@ _GL_CXXALIASWARN (fcloseall); # undef fdopen # define fdopen rpl_fdopen # endif -_GL_FUNCDECL_RPL (fdopen, FILE *, (int fd, const char *mode) - _GL_ARG_NONNULL ((2))); +_GL_FUNCDECL_RPL (fdopen, FILE *, + (int fd, const char *mode) + _GL_ARG_NONNULL ((2)) _GL_ATTRIBUTE_DEALLOC (fclose, 1) + _GL_ATTRIBUTE_MALLOC); _GL_CXXALIAS_RPL (fdopen, FILE *, (int fd, const char *mode)); # elif defined _WIN32 && !defined __CYGWIN__ # if !(defined __cplusplus && defined GNULIB_NAMESPACE) @@ -270,28 +342,44 @@ _GL_CXXALIAS_RPL (fdopen, FILE *, (int fd, const char *mode)); # endif _GL_CXXALIAS_MDA (fdopen, FILE *, (int fd, const char *mode)); # else +# if __GNUC__ >= 11 +/* For -Wmismatched-dealloc: Associate fdopen with fclose or rpl_fclose. */ +_GL_FUNCDECL_SYS (fdopen, FILE *, + (int fd, const char *mode) + _GL_ARG_NONNULL ((2)) _GL_ATTRIBUTE_DEALLOC (fclose, 1) + _GL_ATTRIBUTE_MALLOC); +# endif _GL_CXXALIAS_SYS (fdopen, FILE *, (int fd, const char *mode)); # endif _GL_CXXALIASWARN (fdopen); -#elif defined GNULIB_POSIXCHECK -# undef fdopen +#else +# if @GNULIB_FCLOSE@ && __GNUC__ >= 11 && !defined fdopen +/* For -Wmismatched-dealloc: Associate fdopen with fclose or rpl_fclose. */ +_GL_FUNCDECL_SYS (fdopen, FILE *, + (int fd, const char *mode) + _GL_ARG_NONNULL ((2)) _GL_ATTRIBUTE_DEALLOC (fclose, 1) + _GL_ATTRIBUTE_MALLOC); +# endif +# if defined GNULIB_POSIXCHECK +# undef fdopen /* Assume fdopen is always declared. */ _GL_WARN_ON_USE (fdopen, "fdopen on native Windows platforms is not POSIX compliant - " "use gnulib module fdopen for portability"); -#elif @GNULIB_MDA_FDOPEN@ +# elif @GNULIB_MDA_FDOPEN@ /* On native Windows, map 'fdopen' to '_fdopen', so that -loldnames is not required. In C++ with GNULIB_NAMESPACE, avoid differences between platforms by defining GNULIB_NAMESPACE::fdopen always. */ -# if defined _WIN32 && !defined __CYGWIN__ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef fdopen -# define fdopen _fdopen -# endif +# if defined _WIN32 && !defined __CYGWIN__ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef fdopen +# define fdopen _fdopen +# endif _GL_CXXALIAS_MDA (fdopen, FILE *, (int fd, const char *mode)); -# else +# else _GL_CXXALIAS_SYS (fdopen, FILE *, (int fd, const char *mode)); -# endif +# endif _GL_CXXALIASWARN (fdopen); +# endif #endif #if @GNULIB_FFLUSH@ @@ -373,28 +461,44 @@ _GL_CXXALIASWARN (fileno); #endif #if @GNULIB_FOPEN@ -# if @REPLACE_FOPEN@ +# if (@GNULIB_FOPEN@ && @REPLACE_FOPEN@) \ + || (@GNULIB_FOPEN_GNU@ && @REPLACE_FOPEN_FOR_FOPEN_GNU@) # if !(defined __cplusplus && defined GNULIB_NAMESPACE) # undef fopen # define fopen rpl_fopen # endif _GL_FUNCDECL_RPL (fopen, FILE *, (const char *restrict filename, const char *restrict mode) - _GL_ARG_NONNULL ((1, 2))); + _GL_ARG_NONNULL ((1, 2)) _GL_ATTRIBUTE_DEALLOC (fclose, 1) + _GL_ATTRIBUTE_MALLOC); _GL_CXXALIAS_RPL (fopen, FILE *, (const char *restrict filename, const char *restrict mode)); # else +# if __GNUC__ >= 11 +/* For -Wmismatched-dealloc: Associate fopen with fclose or rpl_fclose. */ +_GL_FUNCDECL_SYS (fopen, FILE *, + (const char *restrict filename, const char *restrict mode) + _GL_ARG_NONNULL ((1, 2)) _GL_ATTRIBUTE_DEALLOC (fclose, 1)); +# endif _GL_CXXALIAS_SYS (fopen, FILE *, (const char *restrict filename, const char *restrict mode)); # endif # if __GLIBC__ >= 2 _GL_CXXALIASWARN (fopen); # endif -#elif defined GNULIB_POSIXCHECK -# undef fopen +#else +# if @GNULIB_FCLOSE@ && __GNUC__ >= 11 && !defined fopen +/* For -Wmismatched-dealloc: Associate fopen with fclose or rpl_fclose. */ +_GL_FUNCDECL_SYS (fopen, FILE *, + (const char *restrict filename, const char *restrict mode) + _GL_ARG_NONNULL ((1, 2)) _GL_ATTRIBUTE_DEALLOC (fclose, 1)); +# endif +# if defined GNULIB_POSIXCHECK +# undef fopen /* Assume fopen is always declared. */ _GL_WARN_ON_USE (fopen, "fopen on native Windows platforms is not POSIX compliant - " "use gnulib module fopen for portability"); +# endif #endif #if @GNULIB_FPRINTF_POSIX@ || @GNULIB_FPRINTF@ @@ -841,7 +945,9 @@ _GL_CXXALIAS_SYS (getdelim, ssize_t, int delimiter, FILE *restrict stream)); # endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (getdelim); +# endif #elif defined GNULIB_POSIXCHECK # undef getdelim # if HAVE_RAW_DECL_GETDELIM @@ -880,7 +986,7 @@ _GL_CXXALIAS_SYS (getline, ssize_t, (char **restrict lineptr, size_t *restrict linesize, FILE *restrict stream)); # endif -# if @HAVE_DECL_GETLINE@ +# if __GLIBC__ >= 2 && @HAVE_DECL_GETLINE@ _GL_CXXALIASWARN (getline); # endif #elif defined GNULIB_POSIXCHECK @@ -910,9 +1016,17 @@ _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead"); # endif _GL_CXXALIAS_MDA (getw, int, (FILE *restrict stream)); # else +# if @HAVE_DECL_GETW@ +# if defined __APPLE__ && defined __MACH__ +/* The presence of the declaration depends on _POSIX_C_SOURCE. */ +_GL_FUNCDECL_SYS (getw, int, (FILE *restrict stream)); +# endif _GL_CXXALIAS_SYS (getw, int, (FILE *restrict stream)); +# endif # endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (getw); +# endif #endif #if @GNULIB_OBSTACK_PRINTF@ || @GNULIB_OBSTACK_PRINTF_POSIX@ @@ -1009,22 +1123,35 @@ _GL_WARN_ON_USE (perror, "perror is not always POSIX compliant - " # undef popen # define popen rpl_popen # endif -_GL_FUNCDECL_RPL (popen, FILE *, (const char *cmd, const char *mode) - _GL_ARG_NONNULL ((1, 2))); +_GL_FUNCDECL_RPL (popen, FILE *, + (const char *cmd, const char *mode) + _GL_ARG_NONNULL ((1, 2)) _GL_ATTRIBUTE_DEALLOC (pclose, 1) + _GL_ATTRIBUTE_MALLOC); _GL_CXXALIAS_RPL (popen, FILE *, (const char *cmd, const char *mode)); # else -# if !@HAVE_POPEN@ -_GL_FUNCDECL_SYS (popen, FILE *, (const char *cmd, const char *mode) - _GL_ARG_NONNULL ((1, 2))); +# if !@HAVE_POPEN@ || __GNUC__ >= 11 +_GL_FUNCDECL_SYS (popen, FILE *, + (const char *cmd, const char *mode) + _GL_ARG_NONNULL ((1, 2)) _GL_ATTRIBUTE_DEALLOC (pclose, 1) + _GL_ATTRIBUTE_MALLOC); # endif _GL_CXXALIAS_SYS (popen, FILE *, (const char *cmd, const char *mode)); # endif _GL_CXXALIASWARN (popen); -#elif defined GNULIB_POSIXCHECK -# undef popen -# if HAVE_RAW_DECL_POPEN +#else +# if @GNULIB_PCLOSE@ && __GNUC__ >= 11 && !defined popen +/* For -Wmismatched-dealloc: Associate popen with pclose or rpl_pclose. */ +_GL_FUNCDECL_SYS (popen, FILE *, + (const char *cmd, const char *mode) + _GL_ARG_NONNULL ((1, 2)) _GL_ATTRIBUTE_DEALLOC (pclose, 1) + _GL_ATTRIBUTE_MALLOC); +# endif +# if defined GNULIB_POSIXCHECK +# undef popen +# if HAVE_RAW_DECL_POPEN _GL_WARN_ON_USE (popen, "popen is buggy on some platforms - " "use gnulib module popen or pipe for more portability"); +# endif # endif #endif @@ -1139,9 +1266,17 @@ _GL_CXXALIASWARN (puts); # endif _GL_CXXALIAS_MDA (putw, int, (int w, FILE *restrict stream)); # else +# if @HAVE_DECL_PUTW@ +# if defined __APPLE__ && defined __MACH__ +/* The presence of the declaration depends on _POSIX_C_SOURCE. */ +_GL_FUNCDECL_SYS (putw, int, (int w, FILE *restrict stream)); +# endif _GL_CXXALIAS_SYS (putw, int, (int w, FILE *restrict stream)); +# endif # endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (putw); +# endif #endif #if @GNULIB_REMOVE@ @@ -1346,19 +1481,35 @@ _GL_CXXALIASWARN (tempnam); # if !(defined __cplusplus && defined GNULIB_NAMESPACE) # define tmpfile rpl_tmpfile # endif -_GL_FUNCDECL_RPL (tmpfile, FILE *, (void)); +_GL_FUNCDECL_RPL (tmpfile, FILE *, (void) + _GL_ATTRIBUTE_DEALLOC (fclose, 1) + _GL_ATTRIBUTE_MALLOC); _GL_CXXALIAS_RPL (tmpfile, FILE *, (void)); # else +# if __GNUC__ >= 11 +/* For -Wmismatched-dealloc: Associate tmpfile with fclose or rpl_fclose. */ +_GL_FUNCDECL_SYS (tmpfile, FILE *, (void) + _GL_ATTRIBUTE_DEALLOC (fclose, 1) + _GL_ATTRIBUTE_MALLOC); +# endif _GL_CXXALIAS_SYS (tmpfile, FILE *, (void)); # endif # if __GLIBC__ >= 2 _GL_CXXALIASWARN (tmpfile); # endif -#elif defined GNULIB_POSIXCHECK -# undef tmpfile -# if HAVE_RAW_DECL_TMPFILE +#else +# if @GNULIB_FCLOSE@ && __GNUC__ >= 11 && !defined tmpfile +/* For -Wmismatched-dealloc: Associate tmpfile with fclose or rpl_fclose. */ +_GL_FUNCDECL_SYS (tmpfile, FILE *, (void) + _GL_ATTRIBUTE_DEALLOC (fclose, 1) + _GL_ATTRIBUTE_MALLOC); +# endif +# if defined GNULIB_POSIXCHECK +# undef tmpfile +# if HAVE_RAW_DECL_TMPFILE _GL_WARN_ON_USE (tmpfile, "tmpfile is not usable on mingw - " "use gnulib module tmpfile for portability"); +# endif # endif #endif diff --git a/lib/stdlib.in.h b/lib/stdlib.in.h index 652062d..1479a2b 100644 --- a/lib/stdlib.in.h +++ b/lib/stdlib.in.h @@ -1,6 +1,6 @@ /* A GNU-like . - Copyright (C) 1995, 2001-2004, 2006-2021 Free Software Foundation, Inc. + Copyright (C) 1995, 2001-2004, 2006-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -37,6 +37,12 @@ #ifndef _@GUARD_PREFIX@_STDLIB_H #define _@GUARD_PREFIX@_STDLIB_H +/* This file uses _Noreturn, _GL_ATTRIBUTE_DEALLOC, _GL_ATTRIBUTE_MALLOC, + _GL_ATTRIBUTE_PURE, GNULIB_POSIXCHECK, HAVE_RAW_DECL_*. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + /* NetBSD 5.0 mis-defines NULL. */ #include @@ -67,9 +73,7 @@ # include # endif -# if !@HAVE_STRUCT_RANDOM_DATA@ || @REPLACE_RANDOM_R@ || !@HAVE_RANDOM_R@ -# include -# endif +# include # if !@HAVE_STRUCT_RANDOM_DATA@ /* Define 'struct random_data'. @@ -99,6 +103,35 @@ struct random_data # include #endif +/* _GL_ATTRIBUTE_DEALLOC (F, I) declares that the function returns pointers + that can be freed by passing them as the Ith argument to the + function F. */ +#ifndef _GL_ATTRIBUTE_DEALLOC +# if __GNUC__ >= 11 +# define _GL_ATTRIBUTE_DEALLOC(f, i) __attribute__ ((__malloc__ (f, i))) +# else +# define _GL_ATTRIBUTE_DEALLOC(f, i) +# endif +#endif + +/* _GL_ATTRIBUTE_DEALLOC_FREE declares that the function returns pointers that + can be freed via 'free'; it can be used only after declaring 'free'. */ +/* Applies to: functions. Cannot be used on inline functions. */ +#ifndef _GL_ATTRIBUTE_DEALLOC_FREE +# define _GL_ATTRIBUTE_DEALLOC_FREE _GL_ATTRIBUTE_DEALLOC (free, 1) +#endif + +/* _GL_ATTRIBUTE_MALLOC declares that the function returns a pointer to freshly + allocated memory. */ +/* Applies to: functions. */ +#ifndef _GL_ATTRIBUTE_MALLOC +# if __GNUC__ >= 3 || defined __clang__ +# define _GL_ATTRIBUTE_MALLOC __attribute__ ((__malloc__)) +# else +# define _GL_ATTRIBUTE_MALLOC +# endif +#endif + /* The __attribute__ feature is available in gcc versions 2.5 and later. The attribute __pure__ was added in gcc 2.96. */ #ifndef _GL_ATTRIBUTE_PURE @@ -135,11 +168,22 @@ struct random_data #if @GNULIB__EXIT@ /* Terminate the current process with the given return code, without running the 'atexit' handlers. */ -# if !@HAVE__EXIT@ +# if @REPLACE__EXIT@ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef _Exit +# define _Exit rpl__Exit +# endif +_GL_FUNCDECL_RPL (_Exit, _Noreturn void, (int status)); +_GL_CXXALIAS_RPL (_Exit, void, (int status)); +# else +# if !@HAVE__EXIT@ _GL_FUNCDECL_SYS (_Exit, _Noreturn void, (int status)); -# endif +# endif _GL_CXXALIAS_SYS (_Exit, void, (int status)); +# endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (_Exit); +# endif #elif defined GNULIB_POSIXCHECK # undef _Exit # if HAVE_RAW_DECL__EXIT @@ -149,6 +193,32 @@ _GL_WARN_ON_USE (_Exit, "_Exit is unportable - " #endif +#if @GNULIB_FREE_POSIX@ +# if @REPLACE_FREE@ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef free +# define free rpl_free +# endif +# if defined __cplusplus && (__GLIBC__ + (__GLIBC_MINOR__ >= 14) > 2) +_GL_FUNCDECL_RPL (free, void, (void *ptr) throw ()); +# else +_GL_FUNCDECL_RPL (free, void, (void *ptr)); +# endif +_GL_CXXALIAS_RPL (free, void, (void *ptr)); +# else +_GL_CXXALIAS_SYS (free, void, (void *ptr)); +# endif +# if __GLIBC__ >= 2 +_GL_CXXALIASWARN (free); +# endif +#elif defined GNULIB_POSIXCHECK +# undef free +/* Assume free is always declared. */ +_GL_WARN_ON_USE (free, "free is not future POSIX compliant everywhere - " + "use gnulib module free for portability"); +#endif + + /* Allocate memory with indefinite extent and specified alignment. */ #if @GNULIB_ALIGNED_ALLOC@ # if @REPLACE_ALIGNED_ALLOC@ @@ -156,21 +226,37 @@ _GL_WARN_ON_USE (_Exit, "_Exit is unportable - " # undef aligned_alloc # define aligned_alloc rpl_aligned_alloc # endif -_GL_FUNCDECL_RPL (aligned_alloc, void *, (size_t alignment, size_t size)); +_GL_FUNCDECL_RPL (aligned_alloc, void *, + (size_t alignment, size_t size) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE); _GL_CXXALIAS_RPL (aligned_alloc, void *, (size_t alignment, size_t size)); # else # if @HAVE_ALIGNED_ALLOC@ +# if __GNUC__ >= 11 +/* For -Wmismatched-dealloc: Associate aligned_alloc with free or rpl_free. */ +_GL_FUNCDECL_SYS (aligned_alloc, void *, + (size_t alignment, size_t size) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE); +# endif _GL_CXXALIAS_SYS (aligned_alloc, void *, (size_t alignment, size_t size)); # endif # endif -# if @HAVE_ALIGNED_ALLOC@ +# if (__GLIBC__ >= 2) && @HAVE_ALIGNED_ALLOC@ _GL_CXXALIASWARN (aligned_alloc); # endif -#elif defined GNULIB_POSIXCHECK -# undef aligned_alloc -# if HAVE_RAW_DECL_ALIGNED_ALLOC +#else +# if @GNULIB_FREE_POSIX@ && __GNUC__ >= 11 && !defined aligned_alloc +/* For -Wmismatched-dealloc: Associate aligned_alloc with free or rpl_free. */ +_GL_FUNCDECL_SYS (aligned_alloc, void *, + (size_t alignment, size_t size) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE); +# endif +# if defined GNULIB_POSIXCHECK +# undef aligned_alloc +# if HAVE_RAW_DECL_ALIGNED_ALLOC _GL_WARN_ON_USE (aligned_alloc, "aligned_alloc is not portable - " "use gnulib module aligned_alloc for portability"); +# endif # endif #endif @@ -193,24 +279,41 @@ _GL_WARN_ON_USE (atoll, "atoll is unportable - " #endif #if @GNULIB_CALLOC_POSIX@ -# if @REPLACE_CALLOC@ +# if (@GNULIB_CALLOC_POSIX@ && @REPLACE_CALLOC_FOR_CALLOC_POSIX@) \ + || (@GNULIB_CALLOC_GNU@ && @REPLACE_CALLOC_FOR_CALLOC_GNU@) # if !(defined __cplusplus && defined GNULIB_NAMESPACE) # undef calloc # define calloc rpl_calloc # endif -_GL_FUNCDECL_RPL (calloc, void *, (size_t nmemb, size_t size)); +_GL_FUNCDECL_RPL (calloc, void *, + (size_t nmemb, size_t size) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE); _GL_CXXALIAS_RPL (calloc, void *, (size_t nmemb, size_t size)); # else +# if __GNUC__ >= 11 +/* For -Wmismatched-dealloc: Associate calloc with free or rpl_free. */ +_GL_FUNCDECL_SYS (calloc, void *, + (size_t nmemb, size_t size) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE); +# endif _GL_CXXALIAS_SYS (calloc, void *, (size_t nmemb, size_t size)); # endif # if __GLIBC__ >= 2 _GL_CXXALIASWARN (calloc); # endif -#elif defined GNULIB_POSIXCHECK -# undef calloc +#else +# if @GNULIB_FREE_POSIX@ && __GNUC__ >= 11 && !defined calloc +/* For -Wmismatched-dealloc: Associate calloc with free or rpl_free. */ +_GL_FUNCDECL_SYS (calloc, void *, + (size_t nmemb, size_t size) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE); +# endif +# if defined GNULIB_POSIXCHECK +# undef calloc /* Assume calloc is always declared. */ _GL_WARN_ON_USE (calloc, "calloc is not POSIX compliant everywhere - " "use gnulib module calloc-posix for portability"); +# endif #endif #if @GNULIB_CANONICALIZE_FILE_NAME@ @@ -218,13 +321,17 @@ _GL_WARN_ON_USE (calloc, "calloc is not POSIX compliant everywhere - " # if !(defined __cplusplus && defined GNULIB_NAMESPACE) # define canonicalize_file_name rpl_canonicalize_file_name # endif -_GL_FUNCDECL_RPL (canonicalize_file_name, char *, (const char *name) - _GL_ARG_NONNULL ((1))); +_GL_FUNCDECL_RPL (canonicalize_file_name, char *, + (const char *name) + _GL_ARG_NONNULL ((1)) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE); _GL_CXXALIAS_RPL (canonicalize_file_name, char *, (const char *name)); # else -# if !@HAVE_CANONICALIZE_FILE_NAME@ -_GL_FUNCDECL_SYS (canonicalize_file_name, char *, (const char *name) - _GL_ARG_NONNULL ((1))); +# if !@HAVE_CANONICALIZE_FILE_NAME@ || __GNUC__ >= 11 +_GL_FUNCDECL_SYS (canonicalize_file_name, char *, + (const char *name) + _GL_ARG_NONNULL ((1)) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE); # endif _GL_CXXALIAS_SYS (canonicalize_file_name, char *, (const char *name)); # endif @@ -233,12 +340,22 @@ _GL_CXXALIAS_SYS (canonicalize_file_name, char *, (const char *name)); (!@HAVE_CANONICALIZE_FILE_NAME@ || @REPLACE_CANONICALIZE_FILE_NAME@) # endif _GL_CXXALIASWARN (canonicalize_file_name); -#elif defined GNULIB_POSIXCHECK -# undef canonicalize_file_name -# if HAVE_RAW_DECL_CANONICALIZE_FILE_NAME +#else +# if @GNULIB_FREE_POSIX@ && __GNUC__ >= 11 && !defined canonicalize_file_name +/* For -Wmismatched-dealloc: Associate canonicalize_file_name with free or + rpl_free. */ +_GL_FUNCDECL_SYS (canonicalize_file_name, char *, + (const char *name) + _GL_ARG_NONNULL ((1)) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE); +# endif +# if defined GNULIB_POSIXCHECK +# undef canonicalize_file_name +# if HAVE_RAW_DECL_CANONICALIZE_FILE_NAME _GL_WARN_ON_USE (canonicalize_file_name, "canonicalize_file_name is unportable - " "use gnulib module canonicalize-lgpl for portability"); +# endif # endif #endif @@ -288,27 +405,6 @@ _GL_CXXALIASWARN (fcvt); # endif #endif -#if @GNULIB_FREE_POSIX@ -# if @REPLACE_FREE@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef free -# define free rpl_free -# endif -_GL_FUNCDECL_RPL (free, void, (void *ptr)); -_GL_CXXALIAS_RPL (free, void, (void *ptr)); -# else -_GL_CXXALIAS_SYS (free, void, (void *ptr)); -# endif -# if __GLIBC__ >= 2 -_GL_CXXALIASWARN (free); -# endif -#elif defined GNULIB_POSIXCHECK -# undef free -/* Assume free is always declared. */ -_GL_WARN_ON_USE (free, "free is not future POSIX compliant everywhere - " - "use gnulib module free for portability"); -#endif - #if @GNULIB_MDA_GCVT@ /* On native Windows, map 'gcvt' to '_gcvt', so that -loldnames is not required. In C++ with GNULIB_NAMESPACE, avoid differences between @@ -335,12 +431,24 @@ _GL_CXXALIASWARN (gcvt); The three numbers are the load average of the last 1 minute, the last 5 minutes, and the last 15 minutes, respectively. LOADAVG is an array of NELEM numbers. */ -# if !@HAVE_DECL_GETLOADAVG@ +# if @REPLACE_GETLOADAVG@ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef getloadavg +# define getloadavg rpl_getloadavg +# endif +_GL_FUNCDECL_RPL (getloadavg, int, (double loadavg[], int nelem) + _GL_ARG_NONNULL ((1))); +_GL_CXXALIAS_RPL (getloadavg, int, (double loadavg[], int nelem)); +# else +# if !@HAVE_DECL_GETLOADAVG@ _GL_FUNCDECL_SYS (getloadavg, int, (double loadavg[], int nelem) _GL_ARG_NONNULL ((1))); -# endif +# endif _GL_CXXALIAS_SYS (getloadavg, int, (double loadavg[], int nelem)); +# endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (getloadavg); +# endif #elif defined GNULIB_POSIXCHECK # undef getloadavg # if HAVE_RAW_DECL_GETLOADAVG @@ -349,6 +457,41 @@ _GL_WARN_ON_USE (getloadavg, "getloadavg is not portable - " # endif #endif +#if @GNULIB_GETPROGNAME@ +/* Return the base name of the executing program. + On native Windows this will usually end in ".exe" or ".EXE". */ +# if @REPLACE_GETPROGNAME@ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef getprogname +# define getprogname rpl_getprogname +# endif +# if @HAVE_DECL_PROGRAM_INVOCATION_NAME@ +_GL_FUNCDECL_RPL (getprogname, const char *, (void) _GL_ATTRIBUTE_PURE); +# else +_GL_FUNCDECL_RPL (getprogname, const char *, (void)); +# endif +_GL_CXXALIAS_RPL (getprogname, const char *, (void)); +# else +# if !@HAVE_GETPROGNAME@ +# if @HAVE_DECL_PROGRAM_INVOCATION_NAME@ +_GL_FUNCDECL_SYS (getprogname, const char *, (void) _GL_ATTRIBUTE_PURE); +# else +_GL_FUNCDECL_SYS (getprogname, const char *, (void)); +# endif +# endif +_GL_CXXALIAS_SYS (getprogname, const char *, (void)); +# endif +# if __GLIBC__ >= 2 +_GL_CXXALIASWARN (getprogname); +# endif +#elif defined GNULIB_POSIXCHECK +# undef getprogname +# if HAVE_RAW_DECL_GETPROGNAME +_GL_WARN_ON_USE (getprogname, "getprogname is unportable - " + "use gnulib module getprogname for portability"); +# endif +#endif + #if @GNULIB_GETSUBOPT@ /* Assuming *OPTIONP is a comma separated list of elements of the form "token" or "token=value", getsubopt parses the first of these elements. @@ -361,14 +504,28 @@ _GL_WARN_ON_USE (getloadavg, "getloadavg is not portable - " Otherwise it returns -1, and *OPTIONP and *VALUEP are undefined. For more details see the POSIX specification. https://pubs.opengroup.org/onlinepubs/9699919799/functions/getsubopt.html */ -# if !@HAVE_GETSUBOPT@ +# if @REPLACE_GETSUBOPT@ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef getsubopt +# define getsubopt rpl_getsubopt +# endif +_GL_FUNCDECL_RPL (getsubopt, int, + (char **optionp, char *const *tokens, char **valuep) + _GL_ARG_NONNULL ((1, 2, 3))); +_GL_CXXALIAS_RPL (getsubopt, int, + (char **optionp, char *const *tokens, char **valuep)); +# else +# if !@HAVE_GETSUBOPT@ _GL_FUNCDECL_SYS (getsubopt, int, (char **optionp, char *const *tokens, char **valuep) _GL_ARG_NONNULL ((1, 2, 3))); -# endif +# endif _GL_CXXALIAS_SYS (getsubopt, int, (char **optionp, char *const *tokens, char **valuep)); +# endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (getsubopt); +# endif #elif defined GNULIB_POSIXCHECK # undef getsubopt # if HAVE_RAW_DECL_GETSUBOPT @@ -398,25 +555,87 @@ _GL_WARN_ON_USE (grantpt, "grantpt is not portable - " by never specifying a zero size), so it does not need malloc or realloc to be redefined. */ #if @GNULIB_MALLOC_POSIX@ -# if @REPLACE_MALLOC@ +# if (@GNULIB_MALLOC_POSIX@ && @REPLACE_MALLOC_FOR_MALLOC_POSIX@) \ + || (@GNULIB_MALLOC_GNU@ && @REPLACE_MALLOC_FOR_MALLOC_GNU@) # if !((defined __cplusplus && defined GNULIB_NAMESPACE) \ || _GL_USE_STDLIB_ALLOC) # undef malloc # define malloc rpl_malloc # endif -_GL_FUNCDECL_RPL (malloc, void *, (size_t size)); +_GL_FUNCDECL_RPL (malloc, void *, + (size_t size) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE); _GL_CXXALIAS_RPL (malloc, void *, (size_t size)); # else +# if __GNUC__ >= 11 +/* For -Wmismatched-dealloc: Associate malloc with free or rpl_free. */ +_GL_FUNCDECL_SYS (malloc, void *, + (size_t size) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE); +# endif _GL_CXXALIAS_SYS (malloc, void *, (size_t size)); # endif # if __GLIBC__ >= 2 _GL_CXXALIASWARN (malloc); # endif -#elif defined GNULIB_POSIXCHECK && !_GL_USE_STDLIB_ALLOC -# undef malloc +#else +# if @GNULIB_FREE_POSIX@ && __GNUC__ >= 11 && !defined malloc +/* For -Wmismatched-dealloc: Associate malloc with free or rpl_free. */ +_GL_FUNCDECL_SYS (malloc, void *, + (size_t size) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE); +# endif +# if defined GNULIB_POSIXCHECK && !_GL_USE_STDLIB_ALLOC +# undef malloc /* Assume malloc is always declared. */ _GL_WARN_ON_USE (malloc, "malloc is not POSIX compliant everywhere - " "use gnulib module malloc-posix for portability"); +# endif +#endif + +/* Return maximum number of bytes of a multibyte character. */ +#if @REPLACE_MB_CUR_MAX@ +# if !GNULIB_defined_MB_CUR_MAX +static inline +int gl_MB_CUR_MAX (void) +{ + /* Turn the value 3 to the value 4, as needed for the UTF-8 encoding. */ + return MB_CUR_MAX + (MB_CUR_MAX == 3); +} +# undef MB_CUR_MAX +# define MB_CUR_MAX gl_MB_CUR_MAX () +# define GNULIB_defined_MB_CUR_MAX 1 +# endif +#endif + +/* Convert a string to a wide string. */ +#if @GNULIB_MBSTOWCS@ +# if @REPLACE_MBSTOWCS@ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef mbstowcs +# define mbstowcs rpl_mbstowcs +# endif +_GL_FUNCDECL_RPL (mbstowcs, size_t, + (wchar_t *restrict dest, const char *restrict src, + size_t len) + _GL_ARG_NONNULL ((2))); +_GL_CXXALIAS_RPL (mbstowcs, size_t, + (wchar_t *restrict dest, const char *restrict src, + size_t len)); +# else +_GL_CXXALIAS_SYS (mbstowcs, size_t, + (wchar_t *restrict dest, const char *restrict src, + size_t len)); +# endif +# if __GLIBC__ >= 2 +_GL_CXXALIASWARN (mbstowcs); +# endif +#elif defined GNULIB_POSIXCHECK +# undef mbstowcs +# if HAVE_RAW_DECL_MBSTOWCS +_GL_WARN_ON_USE (mbstowcs, "mbstowcs is unportable - " + "use gnulib module mbstowcs for portability"); +# endif #endif /* Convert a multibyte character to a wide character. */ @@ -481,12 +700,24 @@ _GL_WARN_ON_USE (mkdtemp, "mkdtemp is unportable - " implementation. Returns the open file descriptor if successful, otherwise -1 and errno set. */ -# if !@HAVE_MKOSTEMP@ +# if @REPLACE_MKOSTEMP@ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef mkostemp +# define mkostemp rpl_mkostemp +# endif +_GL_FUNCDECL_RPL (mkostemp, int, (char * /*template*/, int /*flags*/) + _GL_ARG_NONNULL ((1))); +_GL_CXXALIAS_RPL (mkostemp, int, (char * /*template*/, int /*flags*/)); +# else +# if !@HAVE_MKOSTEMP@ _GL_FUNCDECL_SYS (mkostemp, int, (char * /*template*/, int /*flags*/) _GL_ARG_NONNULL ((1))); -# endif +# endif _GL_CXXALIAS_SYS (mkostemp, int, (char * /*template*/, int /*flags*/)); +# endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (mkostemp); +# endif #elif defined GNULIB_POSIXCHECK # undef mkostemp # if HAVE_RAW_DECL_MKOSTEMP @@ -509,14 +740,28 @@ _GL_WARN_ON_USE (mkostemp, "mkostemp is unportable - " implementation. Returns the open file descriptor if successful, otherwise -1 and errno set. */ -# if !@HAVE_MKOSTEMPS@ +# if @REPLACE_MKOSTEMPS@ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef mkostemps +# define mkostemps rpl_mkostemps +# endif +_GL_FUNCDECL_RPL (mkostemps, int, + (char * /*template*/, int /*suffixlen*/, int /*flags*/) + _GL_ARG_NONNULL ((1))); +_GL_CXXALIAS_RPL (mkostemps, int, + (char * /*template*/, int /*suffixlen*/, int /*flags*/)); +# else +# if !@HAVE_MKOSTEMPS@ _GL_FUNCDECL_SYS (mkostemps, int, (char * /*template*/, int /*suffixlen*/, int /*flags*/) _GL_ARG_NONNULL ((1))); -# endif +# endif _GL_CXXALIAS_SYS (mkostemps, int, (char * /*template*/, int /*suffixlen*/, int /*flags*/)); +# endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (mkostemps); +# endif #elif defined GNULIB_POSIXCHECK # undef mkostemps # if HAVE_RAW_DECL_MKOSTEMPS @@ -615,7 +860,7 @@ _GL_CXXALIAS_SYS (posix_memalign, int, (void **memptr, size_t alignment, size_t size)); # endif # endif -# if @HAVE_POSIX_MEMALIGN@ +# if __GLIBC__ >= 2 && @HAVE_POSIX_MEMALIGN@ _GL_CXXALIASWARN (posix_memalign); # endif #elif defined GNULIB_POSIXCHECK @@ -629,11 +874,22 @@ _GL_WARN_ON_USE (posix_memalign, "posix_memalign is not portable - " #if @GNULIB_POSIX_OPENPT@ /* Return an FD open to the master side of a pseudo-terminal. Flags should include O_RDWR, and may also include O_NOCTTY. */ -# if !@HAVE_POSIX_OPENPT@ +# if @REPLACE_POSIX_OPENPT@ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef posix_openpt +# define posix_openpt rpl_posix_openpt +# endif +_GL_FUNCDECL_RPL (posix_openpt, int, (int flags)); +_GL_CXXALIAS_RPL (posix_openpt, int, (int flags)); +# else +# if !@HAVE_POSIX_OPENPT@ _GL_FUNCDECL_SYS (posix_openpt, int, (int flags)); -# endif +# endif _GL_CXXALIAS_SYS (posix_openpt, int, (int flags)); +# endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (posix_openpt); +# endif #elif defined GNULIB_POSIXCHECK # undef posix_openpt # if HAVE_RAW_DECL_POSIX_OPENPT @@ -736,29 +992,35 @@ _GL_CXXALIASWARN (putenv); /* Sort an array of NMEMB elements, starting at address BASE, each element occupying SIZE bytes, in ascending order according to the comparison function COMPARE. */ +# ifdef __cplusplus +extern "C" { +# endif +# if !GNULIB_defined_qsort_r_fn_types +typedef int (*_gl_qsort_r_compar_fn) (void const *, void const *, void *); +# define GNULIB_defined_qsort_r_fn_types 1 +# endif +# ifdef __cplusplus +} +# endif # if @REPLACE_QSORT_R@ # if !(defined __cplusplus && defined GNULIB_NAMESPACE) # undef qsort_r # define qsort_r rpl_qsort_r # endif _GL_FUNCDECL_RPL (qsort_r, void, (void *base, size_t nmemb, size_t size, - int (*compare) (void const *, void const *, - void *), + _gl_qsort_r_compar_fn compare, void *arg) _GL_ARG_NONNULL ((1, 4))); _GL_CXXALIAS_RPL (qsort_r, void, (void *base, size_t nmemb, size_t size, - int (*compare) (void const *, void const *, - void *), + _gl_qsort_r_compar_fn compare, void *arg)); # else # if !@HAVE_QSORT_R@ _GL_FUNCDECL_SYS (qsort_r, void, (void *base, size_t nmemb, size_t size, - int (*compare) (void const *, void const *, - void *), + _gl_qsort_r_compar_fn compare, void *arg) _GL_ARG_NONNULL ((1, 4))); # endif _GL_CXXALIAS_SYS (qsort_r, void, (void *base, size_t nmemb, size_t size, - int (*compare) (void const *, void const *, - void *), + _gl_qsort_r_compar_fn compare, void *arg)); # endif _GL_CXXALIASWARN (qsort_r); @@ -796,7 +1058,9 @@ _GL_FUNCDECL_SYS (random, long, (void)); int. */ _GL_CXXALIAS_SYS_CAST (random, long, (void)); # endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (random); +# endif #elif defined GNULIB_POSIXCHECK # undef random # if HAVE_RAW_DECL_RANDOM @@ -821,7 +1085,9 @@ _GL_FUNCDECL_SYS (srandom, void, (unsigned int seed)); unsigned long seed. */ _GL_CXXALIAS_SYS_CAST (srandom, void, (unsigned int seed)); # endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (srandom); +# endif #elif defined GNULIB_POSIXCHECK # undef srandom # if HAVE_RAW_DECL_SRANDOM @@ -852,7 +1118,9 @@ _GL_FUNCDECL_SYS (initstate, char *, _GL_CXXALIAS_SYS_CAST (initstate, char *, (unsigned int seed, char *buf, size_t buf_size)); # endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (initstate); +# endif #elif defined GNULIB_POSIXCHECK # undef initstate # if HAVE_RAW_DECL_INITSTATE @@ -877,7 +1145,9 @@ _GL_FUNCDECL_SYS (setstate, char *, (char *arg_state) _GL_ARG_NONNULL ((1))); is const char *arg_state. */ _GL_CXXALIAS_SYS_CAST (setstate, char *, (char *arg_state)); # endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (setstate); +# endif #elif defined GNULIB_POSIXCHECK # undef setstate # if HAVE_RAW_DECL_SETSTATE @@ -1009,25 +1279,39 @@ _GL_WARN_ON_USE (setstate_r, "setstate_r is unportable - " #if @GNULIB_REALLOC_POSIX@ -# if @REPLACE_REALLOC@ +# if (@GNULIB_REALLOC_POSIX@ && @REPLACE_REALLOC_FOR_REALLOC_POSIX@) \ + || (@GNULIB_REALLOC_GNU@ && @REPLACE_REALLOC_FOR_REALLOC_GNU@) # if !((defined __cplusplus && defined GNULIB_NAMESPACE) \ || _GL_USE_STDLIB_ALLOC) # undef realloc # define realloc rpl_realloc # endif -_GL_FUNCDECL_RPL (realloc, void *, (void *ptr, size_t size)); +_GL_FUNCDECL_RPL (realloc, void *, (void *ptr, size_t size) + _GL_ATTRIBUTE_DEALLOC_FREE); _GL_CXXALIAS_RPL (realloc, void *, (void *ptr, size_t size)); # else +# if __GNUC__ >= 11 +/* For -Wmismatched-dealloc: Associate realloc with free or rpl_free. */ +_GL_FUNCDECL_SYS (realloc, void *, (void *ptr, size_t size) + _GL_ATTRIBUTE_DEALLOC_FREE); +# endif _GL_CXXALIAS_SYS (realloc, void *, (void *ptr, size_t size)); # endif # if __GLIBC__ >= 2 _GL_CXXALIASWARN (realloc); # endif -#elif defined GNULIB_POSIXCHECK && !_GL_USE_STDLIB_ALLOC -# undef realloc +#else +# if @GNULIB_FREE_POSIX@ && __GNUC__ >= 11 && !defined realloc +/* For -Wmismatched-dealloc: Associate realloc with free or rpl_free. */ +_GL_FUNCDECL_SYS (realloc, void *, (void *ptr, size_t size) + _GL_ATTRIBUTE_DEALLOC_FREE); +# endif +# if defined GNULIB_POSIXCHECK && !_GL_USE_STDLIB_ALLOC +# undef realloc /* Assume realloc is always declared. */ _GL_WARN_ON_USE (realloc, "realloc is not POSIX compliant everywhere - " "use gnulib module realloc-posix for portability"); +# endif #endif @@ -1049,7 +1333,9 @@ _GL_FUNCDECL_SYS (reallocarray, void *, _GL_CXXALIAS_SYS (reallocarray, void *, (void *ptr, size_t nmemb, size_t size)); # endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (reallocarray); +# endif #elif defined GNULIB_POSIXCHECK # undef reallocarray # if HAVE_RAW_DECL_REALLOCARRAY @@ -1245,7 +1531,9 @@ _GL_CXXALIAS_SYS (strtol, long, (const char *restrict string, char **restrict endptr, int base)); # endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (strtol); +# endif #elif defined GNULIB_POSIXCHECK # undef strtol # if HAVE_RAW_DECL_STRTOL @@ -1326,7 +1614,9 @@ _GL_CXXALIAS_SYS (strtoul, unsigned long, (const char *restrict string, char **restrict endptr, int base)); # endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (strtoul); +# endif #elif defined GNULIB_POSIXCHECK # undef strtoul # if HAVE_RAW_DECL_STRTOUL diff --git a/lib/stdopen.c b/lib/stdopen.c index e1db32f..e9a8e49 100644 --- a/lib/stdopen.c +++ b/lib/stdopen.c @@ -1,6 +1,6 @@ /* stdopen.c - ensure that the three standard file descriptors are in use - Copyright (C) 2005-2006, 2019-2021 Free Software Foundation, Inc. + Copyright (C) 2005-2006, 2019-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by diff --git a/lib/stdopen.h b/lib/stdopen.h index aa69c34..c6111fa 100644 --- a/lib/stdopen.h +++ b/lib/stdopen.h @@ -1,9 +1,9 @@ /* Arrange for stdin/stdout/stderr to be open. - Copyright (C) 2005-2021 Free Software Foundation, Inc. + Copyright (C) 2005-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/lib/stpcpy.c b/lib/stpcpy.c new file mode 100644 index 0000000..73c1eb7 --- /dev/null +++ b/lib/stpcpy.c @@ -0,0 +1,49 @@ +/* stpcpy.c -- copy a string and return pointer to end of new string + Copyright (C) 1992, 1995, 1997-1998, 2006, 2009-2023 Free Software + Foundation, Inc. + + NOTE: The canonical source of this file is maintained with the GNU C Library. + Bugs can be reported to bug-glibc@prep.ai.mit.edu. + + This file is free software: you can redistribute it and/or modify + it under the terms of the GNU Lesser General Public License as + published by the Free Software Foundation; either version 2.1 of the + License, or (at your option) any later version. + + This file is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +#include + +#undef __stpcpy +#ifdef _LIBC +# undef stpcpy +#endif + +#ifndef weak_alias +# define __stpcpy stpcpy +#endif + +/* Copy SRC to DEST, returning the address of the terminating '\0' in DEST. */ +char * +__stpcpy (char *dest, const char *src) +{ + register char *d = dest; + register const char *s = src; + + do + *d++ = *s; + while (*s++ != '\0'); + + return d - 1; +} +#ifdef weak_alias +weak_alias (__stpcpy, stpcpy) +#endif diff --git a/lib/str-kmp.h b/lib/str-kmp.h index 22c5701..b8821f8 100644 --- a/lib/str-kmp.h +++ b/lib/str-kmp.h @@ -1,13 +1,13 @@ /* Substring search in a NUL terminated string of UNIT elements, using the Knuth-Morris-Pratt algorithm. - Copyright (C) 2005-2021 Free Software Foundation, Inc. + Copyright (C) 2005-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2005. This file is free software. It is dual-licensed under "the GNU LGPLv3+ or the GNU GPLv2+". You can redistribute it and/or modify it under either - the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 3, or (at your + by the Free Software Foundation, either version 3, or (at your option) any later version, or - the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) diff --git a/lib/strcasecmp.c b/lib/strcasecmp.c index c714270..3a5ce3e 100644 --- a/lib/strcasecmp.c +++ b/lib/strcasecmp.c @@ -1,5 +1,5 @@ /* Case-insensitive string comparison function. - Copyright (C) 1998-1999, 2005-2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 1998-1999, 2005-2007, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/streq.h b/lib/streq.h index adabd15..712948e 100644 --- a/lib/streq.h +++ b/lib/streq.h @@ -1,5 +1,5 @@ /* Optimized string comparison. - Copyright (C) 2001-2002, 2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2001-2002, 2007, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/strerror-override.c b/lib/strerror-override.c index e76d55d..cddaa4a 100644 --- a/lib/strerror-override.c +++ b/lib/strerror-override.c @@ -1,6 +1,6 @@ /* strerror-override.c --- POSIX compatible system error routine - Copyright (C) 2010-2021 Free Software Foundation, Inc. + Copyright (C) 2010-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/strerror-override.h b/lib/strerror-override.h index 9cfc5ad..c9b3ba8 100644 --- a/lib/strerror-override.h +++ b/lib/strerror-override.h @@ -1,6 +1,6 @@ /* strerror-override.h --- POSIX compatible system error routine - Copyright (C) 2010-2021 Free Software Foundation, Inc. + Copyright (C) 2010-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -18,6 +18,11 @@ #ifndef _GL_STRERROR_OVERRIDE_H # define _GL_STRERROR_OVERRIDE_H +/* This file uses _GL_ATTRIBUTE_CONST. */ +# if !_GL_CONFIG_H_INCLUDED +# error "Please include config.h first." +# endif + # include # include diff --git a/lib/strerror.c b/lib/strerror.c index 83926df..d754f60 100644 --- a/lib/strerror.c +++ b/lib/strerror.c @@ -1,6 +1,6 @@ /* strerror.c --- POSIX compatible system error routine - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -27,7 +27,6 @@ #include "intprops.h" #include "strerror-override.h" -#include "verify.h" /* Use the system functions, not the gnulib overrides in this file. */ #undef sprintf @@ -55,7 +54,7 @@ strerror (int n) if (!msg || !*msg) { static char const fmt[] = "Unknown error %d"; - verify (sizeof buf >= sizeof (fmt) + INT_STRLEN_BOUND (n)); + static_assert (sizeof buf >= sizeof (fmt) + INT_STRLEN_BOUND (n)); sprintf (buf, fmt, n); errno = EINVAL; return buf; diff --git a/lib/strftime.h b/lib/strftime.h index 790a80e..88c1f73 100644 --- a/lib/strftime.h +++ b/lib/strftime.h @@ -1,10 +1,10 @@ /* declarations for strftime.c - Copyright (C) 2002, 2004, 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2002, 2004, 2008-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as - published by the Free Software Foundation; either version 3 of the + published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This file is distributed in the hope that it will be useful, diff --git a/lib/striconv.c b/lib/striconv.c index b92bdc9..ec5e1a8 100644 --- a/lib/striconv.c +++ b/lib/striconv.c @@ -1,5 +1,5 @@ /* Charset conversion. - Copyright (C) 2001-2007, 2010-2021 Free Software Foundation, Inc. + Copyright (C) 2001-2007, 2010-2023 Free Software Foundation, Inc. Written by Bruno Haible and Simon Josefsson. This file is free software: you can redistribute it and/or modify diff --git a/lib/striconv.h b/lib/striconv.h index 69da35d..a4164da 100644 --- a/lib/striconv.h +++ b/lib/striconv.h @@ -1,5 +1,5 @@ /* Charset conversion. - Copyright (C) 2001-2004, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2001-2004, 2006-2007, 2009-2023 Free Software Foundation, Inc. Written by Bruno Haible and Simon Josefsson. This file is free software: you can redistribute it and/or modify @@ -18,7 +18,12 @@ #ifndef _STRICONV_H #define _STRICONV_H -#include +/* This file uses _GL_ATTRIBUTE_MALLOC, HAVE_ICONV. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + +#include #if HAVE_ICONV #include #endif @@ -52,7 +57,8 @@ extern int mem_cd_iconv (const char *src, size_t srclen, iconv_t cd, Allocate a malloced memory block for the result. Return value: the freshly allocated resulting NUL-terminated string if successful, otherwise NULL and errno set. */ -extern char * str_cd_iconv (const char *src, iconv_t cd); +extern char * str_cd_iconv (const char *src, iconv_t cd) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE; #endif @@ -64,7 +70,8 @@ extern char * str_cd_iconv (const char *src, iconv_t cd); Return value: the freshly allocated resulting NUL-terminated string if successful, otherwise NULL and errno set. */ extern char * str_iconv (const char *src, - const char *from_codeset, const char *to_codeset); + const char *from_codeset, const char *to_codeset) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE; #ifdef __cplusplus diff --git a/lib/string.in.h b/lib/string.in.h index cb964bc..912d0f7 100644 --- a/lib/string.in.h +++ b/lib/string.in.h @@ -1,6 +1,6 @@ /* A GNU-like . - Copyright (C) 1995-1996, 2001-2021 Free Software Foundation, Inc. + Copyright (C) 1995-1996, 2001-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -44,6 +44,12 @@ #ifndef _@GUARD_PREFIX@_STRING_H #define _@GUARD_PREFIX@_STRING_H +/* This file uses _GL_ATTRIBUTE_DEALLOC, _GL_ATTRIBUTE_MALLOC, + _GL_ATTRIBUTE_PURE, GNULIB_POSIXCHECK, HAVE_RAW_DECL_*. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + /* NetBSD 5.0 mis-defines NULL. */ #include @@ -52,16 +58,6 @@ # include #endif -/* The __attribute__ feature is available in gcc versions 2.5 and later. - The attribute __pure__ was added in gcc 2.96. */ -#ifndef _GL_ATTRIBUTE_PURE -# if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96) || defined __clang__ -# define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__)) -# else -# define _GL_ATTRIBUTE_PURE /* empty */ -# endif -#endif - /* NetBSD 5.0 declares strsignal in , not in . */ /* But in any case avoid namespace pollution on glibc systems. */ #if (@GNULIB_STRSIGNAL@ || defined GNULIB_POSIXCHECK) && defined __NetBSD__ \ @@ -69,20 +65,110 @@ # include #endif -/* AIX 7.2 declares ffsl and ffsll in , not in . */ +/* AIX 7.2 and Android 13 declare ffsl and ffsll in , not in + . */ /* But in any case avoid namespace pollution on glibc systems. */ #if ((@GNULIB_FFSL@ || @GNULIB_FFSLL@ || defined GNULIB_POSIXCHECK) \ - && defined _AIX) \ + && (defined _AIX || defined __ANDROID__)) \ && ! defined __GLIBC__ # include #endif +/* _GL_ATTRIBUTE_DEALLOC (F, I) declares that the function returns pointers + that can be freed by passing them as the Ith argument to the + function F. */ +#ifndef _GL_ATTRIBUTE_DEALLOC +# if __GNUC__ >= 11 +# define _GL_ATTRIBUTE_DEALLOC(f, i) __attribute__ ((__malloc__ (f, i))) +# else +# define _GL_ATTRIBUTE_DEALLOC(f, i) +# endif +#endif + +/* _GL_ATTRIBUTE_DEALLOC_FREE declares that the function returns pointers that + can be freed via 'free'; it can be used only after declaring 'free'. */ +/* Applies to: functions. Cannot be used on inline functions. */ +#ifndef _GL_ATTRIBUTE_DEALLOC_FREE +# if defined __cplusplus && defined __GNUC__ && !defined __clang__ +/* Work around GCC bug */ +# define _GL_ATTRIBUTE_DEALLOC_FREE \ + _GL_ATTRIBUTE_DEALLOC ((void (*) (void *)) free, 1) +# else +# define _GL_ATTRIBUTE_DEALLOC_FREE \ + _GL_ATTRIBUTE_DEALLOC (free, 1) +# endif +#endif + +/* _GL_ATTRIBUTE_MALLOC declares that the function returns a pointer to freshly + allocated memory. */ +/* Applies to: functions. */ +#ifndef _GL_ATTRIBUTE_MALLOC +# if __GNUC__ >= 3 || defined __clang__ +# define _GL_ATTRIBUTE_MALLOC __attribute__ ((__malloc__)) +# else +# define _GL_ATTRIBUTE_MALLOC +# endif +#endif + +/* The __attribute__ feature is available in gcc versions 2.5 and later. + The attribute __pure__ was added in gcc 2.96. */ +#ifndef _GL_ATTRIBUTE_PURE +# if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96) || defined __clang__ +# define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__)) +# else +# define _GL_ATTRIBUTE_PURE /* empty */ +# endif +#endif + /* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */ /* The definition of _GL_ARG_NONNULL is copied here. */ /* The definition of _GL_WARN_ON_USE is copied here. */ +/* Make _GL_ATTRIBUTE_DEALLOC_FREE work, even though may not have + been included yet. */ +#if @GNULIB_FREE_POSIX@ +# if (@REPLACE_FREE@ && !defined free \ + && !(defined __cplusplus && defined GNULIB_NAMESPACE)) +/* We can't do '#define free rpl_free' here. */ +# if defined __cplusplus && (__GLIBC__ + (__GLIBC_MINOR__ >= 14) > 2) +_GL_EXTERN_C void rpl_free (void *) throw (); +# else +_GL_EXTERN_C void rpl_free (void *); +# endif +# undef _GL_ATTRIBUTE_DEALLOC_FREE +# define _GL_ATTRIBUTE_DEALLOC_FREE _GL_ATTRIBUTE_DEALLOC (rpl_free, 1) +# else +# if defined _MSC_VER && !defined free +_GL_EXTERN_C +# if defined _DLL + __declspec (dllimport) +# endif + void __cdecl free (void *); +# else +# if defined __cplusplus && (__GLIBC__ + (__GLIBC_MINOR__ >= 14) > 2) +_GL_EXTERN_C void free (void *) throw (); +# else +_GL_EXTERN_C void free (void *); +# endif +# endif +# endif +#else +# if defined _MSC_VER && !defined free +_GL_EXTERN_C +# if defined _DLL + __declspec (dllimport) +# endif + void __cdecl free (void *); +# else +# if defined __cplusplus && (__GLIBC__ + (__GLIBC_MINOR__ >= 14) > 2) +_GL_EXTERN_C void free (void *) throw (); +# else +_GL_EXTERN_C void free (void *); +# endif +# endif +#endif /* Clear a block of memory. The compiler will not delete a call to this function, even if the block is dead after the call. */ @@ -178,10 +264,11 @@ _GL_CXXALIAS_SYS_CAST2 (memchr, void const *, (void const *__s, int __c, size_t __n)); # endif # if ((__GLIBC__ == 2 && __GLIBC_MINOR__ >= 10) && !defined __UCLIBC__) \ - && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4)) -_GL_CXXALIASWARN1 (memchr, void *, (void *__s, int __c, size_t __n)); + && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4) \ + || defined __clang__) +_GL_CXXALIASWARN1 (memchr, void *, (void *__s, int __c, size_t __n) throw ()); _GL_CXXALIASWARN1 (memchr, void const *, - (void const *__s, int __c, size_t __n)); + (void const *__s, int __c, size_t __n) throw ()); # elif __GLIBC__ >= 2 _GL_CXXALIASWARN (memchr); # endif @@ -231,16 +318,32 @@ _GL_WARN_ON_USE (memmem, "memmem is unportable and often quadratic - " /* Copy N bytes of SRC to DEST, return pointer to bytes after the last written byte. */ #if @GNULIB_MEMPCPY@ -# if ! @HAVE_MEMPCPY@ +# if @REPLACE_MEMPCPY@ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef mempcpy +# define mempcpy rpl_mempcpy +# endif +_GL_FUNCDECL_RPL (mempcpy, void *, + (void *restrict __dest, void const *restrict __src, + size_t __n) + _GL_ARG_NONNULL ((1, 2))); +_GL_CXXALIAS_RPL (mempcpy, void *, + (void *restrict __dest, void const *restrict __src, + size_t __n)); +# else +# if !@HAVE_MEMPCPY@ _GL_FUNCDECL_SYS (mempcpy, void *, (void *restrict __dest, void const *restrict __src, size_t __n) _GL_ARG_NONNULL ((1, 2))); -# endif +# endif _GL_CXXALIAS_SYS (mempcpy, void *, (void *restrict __dest, void const *restrict __src, size_t __n)); +# endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (mempcpy); +# endif #elif defined GNULIB_POSIXCHECK # undef mempcpy # if HAVE_RAW_DECL_MEMPCPY @@ -263,10 +366,11 @@ _GL_CXXALIAS_SYS_CAST2 (memrchr, void *, (void const *, int, size_t), void const *, (void const *, int, size_t)); # if ((__GLIBC__ == 2 && __GLIBC_MINOR__ >= 10) && !defined __UCLIBC__) \ - && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4)) -_GL_CXXALIASWARN1 (memrchr, void *, (void *, int, size_t)); -_GL_CXXALIASWARN1 (memrchr, void const *, (void const *, int, size_t)); -# else + && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4) \ + || defined __clang__) +_GL_CXXALIASWARN1 (memrchr, void *, (void *, int, size_t) throw ()); +_GL_CXXALIASWARN1 (memrchr, void const *, (void const *, int, size_t) throw ()); +# elif __GLIBC__ >= 2 _GL_CXXALIASWARN (memrchr); # endif #elif defined GNULIB_POSIXCHECK @@ -277,6 +381,23 @@ _GL_WARN_ON_USE (memrchr, "memrchr is unportable - " # endif #endif +/* Overwrite a block of memory. The compiler will not optimize + effects away, even if the block is dead after the call. */ +#if @GNULIB_MEMSET_EXPLICIT@ +# if ! @HAVE_MEMSET_EXPLICIT@ +_GL_FUNCDECL_SYS (memset_explicit, void *, + (void *__dest, int __c, size_t __n) _GL_ARG_NONNULL ((1))); +# endif +_GL_CXXALIAS_SYS (memset_explicit, void *, (void *__dest, int __c, size_t __n)); +_GL_CXXALIASWARN (memset_explicit); +#elif defined GNULIB_POSIXCHECK +# undef memset_explicit +# if HAVE_RAW_DECL_MEMSET_EXPLICIT +_GL_WARN_ON_USE (memset_explicit, "memset_explicit is unportable - " + "use gnulib module memset_explicit for portability"); +# endif +#endif + /* Find the first occurrence of C in S. More efficient than memchr(S,C,N), at the expense of undefined behavior if C does not occur within N bytes. */ @@ -293,9 +414,11 @@ _GL_CXXALIAS_SYS_CAST2 (rawmemchr, void *, (void const *__s, int __c_in), void const *, (void const *__s, int __c_in)); # if ((__GLIBC__ == 2 && __GLIBC_MINOR__ >= 10) && !defined __UCLIBC__) \ - && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4)) -_GL_CXXALIASWARN1 (rawmemchr, void *, (void *__s, int __c_in)); -_GL_CXXALIASWARN1 (rawmemchr, void const *, (void const *__s, int __c_in)); + && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4) \ + || defined __clang__) +_GL_CXXALIASWARN1 (rawmemchr, void *, (void *__s, int __c_in) throw ()); +_GL_CXXALIASWARN1 (rawmemchr, void const *, + (void const *__s, int __c_in) throw ()); # else _GL_CXXALIASWARN (rawmemchr); # endif @@ -309,14 +432,28 @@ _GL_WARN_ON_USE (rawmemchr, "rawmemchr is unportable - " /* Copy SRC to DST, returning the address of the terminating '\0' in DST. */ #if @GNULIB_STPCPY@ -# if ! @HAVE_STPCPY@ +# if @REPLACE_STPCPY@ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef stpcpy +# define stpcpy rpl_stpcpy +# endif +_GL_FUNCDECL_RPL (stpcpy, char *, + (char *restrict __dst, char const *restrict __src) + _GL_ARG_NONNULL ((1, 2))); +_GL_CXXALIAS_RPL (stpcpy, char *, + (char *restrict __dst, char const *restrict __src)); +# else +# if !@HAVE_STPCPY@ _GL_FUNCDECL_SYS (stpcpy, char *, (char *restrict __dst, char const *restrict __src) _GL_ARG_NONNULL ((1, 2))); -# endif +# endif _GL_CXXALIAS_SYS (stpcpy, char *, (char *restrict __dst, char const *restrict __src)); +# endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (stpcpy); +# endif #elif defined GNULIB_POSIXCHECK # undef stpcpy # if HAVE_RAW_DECL_STPCPY @@ -351,7 +488,9 @@ _GL_CXXALIAS_SYS (stpncpy, char *, (char *restrict __dst, char const *restrict __src, size_t __n)); # endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (stpncpy); +# endif #elif defined GNULIB_POSIXCHECK # undef stpncpy # if HAVE_RAW_DECL_STPNCPY @@ -397,10 +536,12 @@ _GL_CXXALIAS_SYS_CAST2 (strchrnul, char const *, (char const *__s, int __c_in)); # endif # if ((__GLIBC__ == 2 && __GLIBC_MINOR__ >= 10) && !defined __UCLIBC__) \ - && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4)) -_GL_CXXALIASWARN1 (strchrnul, char *, (char *__s, int __c_in)); -_GL_CXXALIASWARN1 (strchrnul, char const *, (char const *__s, int __c_in)); -# else + && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4) \ + || defined __clang__) +_GL_CXXALIASWARN1 (strchrnul, char *, (char *__s, int __c_in) throw ()); +_GL_CXXALIASWARN1 (strchrnul, char const *, + (char const *__s, int __c_in) throw ()); +# elif __GLIBC__ >= 2 _GL_CXXALIASWARN (strchrnul); # endif #elif defined GNULIB_POSIXCHECK @@ -418,7 +559,10 @@ _GL_WARN_ON_USE (strchrnul, "strchrnul is unportable - " # undef strdup # define strdup rpl_strdup # endif -_GL_FUNCDECL_RPL (strdup, char *, (char const *__s) _GL_ARG_NONNULL ((1))); +_GL_FUNCDECL_RPL (strdup, char *, + (char const *__s) + _GL_ARG_NONNULL ((1)) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE); _GL_CXXALIAS_RPL (strdup, char *, (char const *__s)); # elif defined _WIN32 && !defined __CYGWIN__ # if !(defined __cplusplus && defined GNULIB_NAMESPACE) @@ -431,35 +575,47 @@ _GL_CXXALIAS_MDA (strdup, char *, (char const *__s)); /* strdup exists as a function and as a macro. Get rid of the macro. */ # undef strdup # endif -# if !(@HAVE_DECL_STRDUP@ || defined strdup) -_GL_FUNCDECL_SYS (strdup, char *, (char const *__s) _GL_ARG_NONNULL ((1))); +# if (!@HAVE_DECL_STRDUP@ || __GNUC__ >= 11) && !defined strdup +_GL_FUNCDECL_SYS (strdup, char *, + (char const *__s) + _GL_ARG_NONNULL ((1)) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE); # endif _GL_CXXALIAS_SYS (strdup, char *, (char const *__s)); # endif _GL_CXXALIASWARN (strdup); -#elif defined GNULIB_POSIXCHECK -# undef strdup -# if HAVE_RAW_DECL_STRDUP +#else +# if __GNUC__ >= 11 && !defined strdup +/* For -Wmismatched-dealloc: Associate strdup with free or rpl_free. */ +_GL_FUNCDECL_SYS (strdup, char *, + (char const *__s) + _GL_ARG_NONNULL ((1)) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE); +# endif +# if defined GNULIB_POSIXCHECK +# undef strdup +# if HAVE_RAW_DECL_STRDUP _GL_WARN_ON_USE (strdup, "strdup is unportable - " "use gnulib module strdup for portability"); -# endif -#elif @GNULIB_MDA_STRDUP@ +# endif +# elif @GNULIB_MDA_STRDUP@ /* On native Windows, map 'creat' to '_creat', so that -loldnames is not required. In C++ with GNULIB_NAMESPACE, avoid differences between platforms by defining GNULIB_NAMESPACE::strdup always. */ -# if defined _WIN32 && !defined __CYGWIN__ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef strdup -# define strdup _strdup -# endif +# if defined _WIN32 && !defined __CYGWIN__ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef strdup +# define strdup _strdup +# endif _GL_CXXALIAS_MDA (strdup, char *, (char const *__s)); -# else -# if defined __cplusplus && defined GNULIB_NAMESPACE && defined strdup -# undef strdup -# endif +# else +# if defined __cplusplus && defined GNULIB_NAMESPACE && defined strdup +# undef strdup +# endif _GL_CXXALIAS_SYS (strdup, char *, (char const *__s)); -# endif +# endif _GL_CXXALIASWARN (strdup); +# endif #endif /* Append no more than N characters from SRC onto DEST. */ @@ -496,22 +652,35 @@ _GL_WARN_ON_USE (strncat, "strncat is unportable - " # undef strndup # define strndup rpl_strndup # endif -_GL_FUNCDECL_RPL (strndup, char *, (char const *__s, size_t __n) - _GL_ARG_NONNULL ((1))); +_GL_FUNCDECL_RPL (strndup, char *, + (char const *__s, size_t __n) + _GL_ARG_NONNULL ((1)) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE); _GL_CXXALIAS_RPL (strndup, char *, (char const *__s, size_t __n)); # else -# if ! @HAVE_DECL_STRNDUP@ -_GL_FUNCDECL_SYS (strndup, char *, (char const *__s, size_t __n) - _GL_ARG_NONNULL ((1))); +# if !@HAVE_DECL_STRNDUP@ || (__GNUC__ >= 11 && !defined strndup) +_GL_FUNCDECL_SYS (strndup, char *, + (char const *__s, size_t __n) + _GL_ARG_NONNULL ((1)) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE); # endif _GL_CXXALIAS_SYS (strndup, char *, (char const *__s, size_t __n)); # endif _GL_CXXALIASWARN (strndup); -#elif defined GNULIB_POSIXCHECK -# undef strndup -# if HAVE_RAW_DECL_STRNDUP +#else +# if __GNUC__ >= 11 && !defined strndup +/* For -Wmismatched-dealloc: Associate strndup with free or rpl_free. */ +_GL_FUNCDECL_SYS (strndup, char *, + (char const *__s, size_t __n) + _GL_ARG_NONNULL ((1)) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE); +# endif +# if defined GNULIB_POSIXCHECK +# undef strndup +# if HAVE_RAW_DECL_STRNDUP _GL_WARN_ON_USE (strndup, "strndup is unportable - " "use gnulib module strndup for portability"); +# endif # endif #endif @@ -571,10 +740,11 @@ _GL_CXXALIAS_SYS_CAST2 (strpbrk, char *, (char const *__s, char const *__accept), const char *, (char const *__s, char const *__accept)); # if ((__GLIBC__ == 2 && __GLIBC_MINOR__ >= 10) && !defined __UCLIBC__) \ - && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4)) -_GL_CXXALIASWARN1 (strpbrk, char *, (char *__s, char const *__accept)); + && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4) \ + || defined __clang__) +_GL_CXXALIASWARN1 (strpbrk, char *, (char *__s, char const *__accept) throw ()); _GL_CXXALIASWARN1 (strpbrk, char const *, - (char const *__s, char const *__accept)); + (char const *__s, char const *__accept) throw ()); # elif __GLIBC__ >= 2 _GL_CXXALIASWARN (strpbrk); # endif @@ -679,10 +849,12 @@ _GL_CXXALIAS_SYS_CAST2 (strstr, const char *, (const char *haystack, const char *needle)); # endif # if ((__GLIBC__ == 2 && __GLIBC_MINOR__ >= 10) && !defined __UCLIBC__) \ - && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4)) -_GL_CXXALIASWARN1 (strstr, char *, (char *haystack, const char *needle)); + && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4) \ + || defined __clang__) +_GL_CXXALIASWARN1 (strstr, char *, + (char *haystack, const char *needle) throw ()); _GL_CXXALIASWARN1 (strstr, const char *, - (const char *haystack, const char *needle)); + (const char *haystack, const char *needle) throw ()); # elif __GLIBC__ >= 2 _GL_CXXALIASWARN (strstr); # endif @@ -728,11 +900,13 @@ _GL_CXXALIAS_SYS_CAST2 (strcasestr, const char *, (const char *haystack, const char *needle)); # endif # if ((__GLIBC__ == 2 && __GLIBC_MINOR__ >= 10) && !defined __UCLIBC__) \ - && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4)) -_GL_CXXALIASWARN1 (strcasestr, char *, (char *haystack, const char *needle)); + && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4) \ + || defined __clang__) +_GL_CXXALIASWARN1 (strcasestr, char *, + (char *haystack, const char *needle) throw ()); _GL_CXXALIASWARN1 (strcasestr, const char *, - (const char *haystack, const char *needle)); -# else + (const char *haystack, const char *needle) throw ()); +# elif __GLIBC__ >= 2 _GL_CXXALIASWARN (strcasestr); # endif #elif defined GNULIB_POSIXCHECK @@ -836,7 +1010,9 @@ _GL_FUNCDECL_SYS (mbslen, size_t, (const char *string) _GL_ARG_NONNULL ((1))); _GL_CXXALIAS_SYS (mbslen, size_t, (const char *string)); # endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (mbslen); +# endif #endif #if @GNULIB_MBSNLEN@ @@ -1078,7 +1254,7 @@ _GL_FUNCDECL_SYS (strerror_r, int, (int errnum, char *buf, size_t buflen) # endif _GL_CXXALIAS_SYS (strerror_r, int, (int errnum, char *buf, size_t buflen)); # endif -# if @HAVE_DECL_STRERROR_R@ +# if __GLIBC__ >= 2 && @HAVE_DECL_STRERROR_R@ _GL_CXXALIASWARN (strerror_r); # endif #elif defined GNULIB_POSIXCHECK diff --git a/lib/strings.in.h b/lib/strings.in.h index 07aed18..929329d 100644 --- a/lib/strings.in.h +++ b/lib/strings.in.h @@ -1,6 +1,6 @@ /* A substitute . - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -36,6 +36,11 @@ #ifndef _@GUARD_PREFIX@_STRINGS_H #define _@GUARD_PREFIX@_STRINGS_H +/* This file uses GNULIB_POSIXCHECK, HAVE_RAW_DECL_*. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + #if ! @HAVE_DECL_STRNCASECMP@ /* Get size_t. */ # include diff --git a/lib/stripslash.c b/lib/stripslash.c index 99bfbe6..fe46a9c 100644 --- a/lib/stripslash.c +++ b/lib/stripslash.c @@ -1,6 +1,6 @@ /* stripslash.c -- remove redundant trailing slashes from a file name - Copyright (C) 1990, 2001, 2003-2006, 2009-2021 Free Software Foundation, + Copyright (C) 1990, 2001, 2003-2006, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify diff --git a/lib/strncasecmp.c b/lib/strncasecmp.c index ccc0170..c5c2cd3 100644 --- a/lib/strncasecmp.c +++ b/lib/strncasecmp.c @@ -1,5 +1,5 @@ /* strncasecmp.c -- case insensitive string comparator - Copyright (C) 1998-1999, 2005-2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 1998-1999, 2005-2007, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/strnlen.c b/lib/strnlen.c index ded06ce..09c010e 100644 --- a/lib/strnlen.c +++ b/lib/strnlen.c @@ -1,5 +1,5 @@ /* Find the length of STRING, but scan at most MAXLEN characters. - Copyright (C) 2005-2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2005-2007, 2009-2023 Free Software Foundation, Inc. Written by Simon Josefsson. This file is free software: you can redistribute it and/or modify diff --git a/lib/strnlen1.c b/lib/strnlen1.c index ac12576..25866c5 100644 --- a/lib/strnlen1.c +++ b/lib/strnlen1.c @@ -1,5 +1,5 @@ /* Find the length of STRING + 1, but scan at most MAXLEN bytes. - Copyright (C) 2005-2006, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2005-2006, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/strnlen1.h b/lib/strnlen1.h index 2d69299..02dcd4c 100644 --- a/lib/strnlen1.h +++ b/lib/strnlen1.h @@ -1,5 +1,5 @@ /* Find the length of STRING + 1, but scan at most MAXLEN bytes. - Copyright (C) 2005, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2005, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -17,6 +17,11 @@ #ifndef _STRNLEN1_H #define _STRNLEN1_H +/* This file uses _GL_ATTRIBUTE_PURE. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + #include diff --git a/lib/strptime.c b/lib/strptime.c index 7745f10..23f9ec6 100644 --- a/lib/strptime.c +++ b/lib/strptime.c @@ -1,4 +1,4 @@ -/* Copyright (C) 2002, 2004-2005, 2007, 2009-2021 Free Software Foundation, +/* Copyright (C) 2002, 2004-2005, 2007, 2009-2023 Free Software Foundation, Inc. This file is part of the GNU C Library. @@ -29,9 +29,9 @@ #include #include #include -#include #ifdef _LIBC +# include # include "../locale/localeinfo.h" #endif @@ -684,7 +684,7 @@ __strptime_internal (rp, fmt, tm, decided, era_cnt LOCALE_PARAM) specify hours. If fours digits are used, minutes are also specified. */ { - bool neg _GL_UNUSED; + _GL_UNUSED bool neg; int n; val = 0; diff --git a/lib/strtoimax.c b/lib/strtoimax.c index bf8534a..f7977e2 100644 --- a/lib/strtoimax.c +++ b/lib/strtoimax.c @@ -1,11 +1,11 @@ /* Convert string representation of a number into an intmax_t value. - Copyright (C) 1999, 2001-2004, 2006, 2009-2021 Free Software Foundation, + Copyright (C) 1999, 2001-2004, 2006, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as - published by the Free Software Foundation; either version 3 of the + published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This file is distributed in the hope that it will be useful, @@ -25,8 +25,6 @@ #include -#include "verify.h" - #ifdef UNSIGNED # ifndef HAVE_DECL_STRTOULL "this configure-time declaration test was not run" @@ -62,8 +60,8 @@ long long int strtoll (char const *, char **, int); Int Strtoimax (char const *ptr, char **endptr, int base) { - verify (sizeof (Int) == sizeof (Unsigned long int) - || sizeof (Int) == sizeof (Unsigned long long int)); + static_assert (sizeof (Int) == sizeof (Unsigned long int) + || sizeof (Int) == sizeof (Unsigned long long int)); if (sizeof (Int) != sizeof (Unsigned long int)) return Strtoll (ptr, endptr, base); diff --git a/lib/strtol.c b/lib/strtol.c index c49321b..b93483d 100644 --- a/lib/strtol.c +++ b/lib/strtol.c @@ -1,6 +1,6 @@ /* Convert string representation of a number into an integer value. - Copyright (C) 1991-1992, 1994-1999, 2003, 2005-2007, 2009-2021 Free Software + Copyright (C) 1991-1992, 1994-1999, 2003, 2005-2007, 2009-2023 Free Software Foundation, Inc. NOTE: The canonical source of this file is maintained with the GNU C @@ -8,7 +8,7 @@ This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as - published by the Free Software Foundation; either version 3 of the + published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This file is distributed in the hope that it will be useful, @@ -288,6 +288,11 @@ INTERNAL (strtol) (const STRING_TYPE *nptr, STRING_TYPE **endptr, s += 2; base = 16; } + else if ((base == 0 || base == 2) && TOUPPER (s[1]) == L_('B')) + { + s += 2; + base = 2; + } else if (base == 0) base = 8; } @@ -378,11 +383,14 @@ INTERNAL (strtol) (const STRING_TYPE *nptr, STRING_TYPE **endptr, noconv: /* We must handle a special case here: the base is 0 or 16 and the first two characters are '0' and 'x', but the rest are no - hexadecimal digits. This is no error case. We return 0 and - ENDPTR points to the 'x'. */ + hexadecimal digits. Likewise when the base is 0 or 2 and the + first two characters are '0' and 'b', but the rest are no binary + digits. This is no error case. We return 0 and ENDPTR points to + the 'x' or 'b'. */ if (endptr != NULL) { - if (save - nptr >= 2 && TOUPPER (save[-1]) == L_('X') + if (save - nptr >= 2 + && (TOUPPER (save[-1]) == L_('X') || TOUPPER (save[-1]) == L_('B')) && save[-2] == L_('0')) *endptr = (STRING_TYPE *) &save[-1]; else diff --git a/lib/strtoll.c b/lib/strtoll.c index 8e6f93f..9fdfa19 100644 --- a/lib/strtoll.c +++ b/lib/strtoll.c @@ -1,11 +1,11 @@ /* Function to parse a 'long long int' from text. - Copyright (C) 1995-1997, 1999, 2001, 2009-2021 Free Software Foundation, + Copyright (C) 1995-1997, 1999, 2001, 2009-2023 Free Software Foundation, Inc. This file is part of the GNU C Library. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as - published by the Free Software Foundation; either version 3 of the + published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This file is distributed in the hope that it will be useful, diff --git a/lib/sys_random.in.h b/lib/sys_random.in.h index 1abd6c5..b240033 100644 --- a/lib/sys_random.in.h +++ b/lib/sys_random.in.h @@ -1,5 +1,5 @@ /* Substitute for . - Copyright (C) 2020-2021 Free Software Foundation, Inc. + Copyright (C) 2020-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -23,8 +23,10 @@ #if @HAVE_SYS_RANDOM_H@ -/* On uClibc, assumes prior inclusion of . */ -# if defined __UCLIBC__ +/* On uClibc < 1.0.35, assumes prior inclusion of . + Do not use __UCLIBC__ here, as it might not be defined yet. + But avoid namespace pollution on glibc systems. */ +# ifndef __GLIBC__ # include # endif /* On Mac OS X 10.5, assumes prior inclusion of . @@ -43,6 +45,11 @@ #ifndef _@GUARD_PREFIX@_SYS_RANDOM_H #define _@GUARD_PREFIX@_SYS_RANDOM_H +/* This file uses GNULIB_POSIXCHECK, HAVE_RAW_DECL_*. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + #include /* Define the GRND_* constants. */ @@ -82,7 +89,9 @@ _GL_FUNCDECL_SYS (getrandom, ssize_t, _GL_CXXALIAS_SYS (getrandom, ssize_t, (void *buffer, size_t length, unsigned int flags)); # endif +# if __GLIBC__ + (__GLIBC_MINOR__ >= 25) > 2 _GL_CXXALIASWARN (getrandom); +# endif #elif defined GNULIB_POSIXCHECK # undef getrandom # if HAVE_RAW_DECL_GETRANDOM diff --git a/lib/sys_stat.in.h b/lib/sys_stat.in.h index babe3db..ad4da17 100644 --- a/lib/sys_stat.in.h +++ b/lib/sys_stat.in.h @@ -1,5 +1,5 @@ /* Provide a more complete sys/stat.h header file. - Copyright (C) 2005-2021 Free Software Foundation, Inc. + Copyright (C) 2005-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -25,6 +25,13 @@ #endif @PRAGMA_COLUMNS@ +/* This file uses #include_next of a system file that defines time_t. + For the 'year2038' module to work right, needs to have been + included before. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + #if defined __need_system_sys_stat_h /* Special invocation convention. */ @@ -48,6 +55,11 @@ #ifndef _@GUARD_PREFIX@_SYS_STAT_H #define _@GUARD_PREFIX@_SYS_STAT_H +/* This file uses GNULIB_POSIXCHECK, HAVE_RAW_DECL_*. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + /* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */ /* The definition of _GL_ARG_NONNULL is copied here. */ @@ -391,7 +403,33 @@ struct stat #endif -#if @GNULIB_MDA_CHMOD@ +#if @GNULIB_CHMOD@ +# if @REPLACE_CHMOD@ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef chmod +# define chmod rpl_chmod +# endif +_GL_FUNCDECL_RPL (chmod, int, (const char *filename, mode_t mode) + _GL_ARG_NONNULL ((1))); +_GL_CXXALIAS_RPL (chmod, int, (const char *filename, mode_t mode)); +# elif defined _WIN32 && !defined __CYGWIN__ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef chmod +# define chmod _chmod +# endif +/* Need to cast, because in mingw the last argument is 'int mode'. */ +_GL_CXXALIAS_MDA_CAST (chmod, int, (const char *filename, mode_t mode)); +# else +_GL_CXXALIAS_SYS (chmod, int, (const char *filename, mode_t mode)); +# endif +_GL_CXXALIASWARN (chmod); +#elif defined GNULIB_POSIXCHECK +# undef chmod +# if HAVE_RAW_DECL_CHMOD +_GL_WARN_ON_USE (chmod, "chmod has portability problems - " + "use gnulib module chmod for portability"); +# endif +#elif @GNULIB_MDA_CHMOD@ /* On native Windows, map 'chmod' to '_chmod', so that -loldnames is not required. In C++ with GNULIB_NAMESPACE, avoid differences between platforms by defining GNULIB_NAMESPACE::chmod always. */ @@ -523,7 +561,7 @@ _GL_FUNCDECL_SYS (futimens, int, (int fd, struct timespec const times[2])); # endif _GL_CXXALIAS_SYS (futimens, int, (int fd, struct timespec const times[2])); # endif -# if @HAVE_FUTIMENS@ +# if __GLIBC__ >= 2 && @HAVE_FUTIMENS@ _GL_CXXALIASWARN (futimens); # endif #elif defined GNULIB_POSIXCHECK @@ -570,44 +608,6 @@ _GL_WARN_ON_USE (lchmod, "lchmod is unportable - " #endif -#if @GNULIB_LSTAT@ -# if ! @HAVE_LSTAT@ -/* mingw does not support symlinks, therefore it does not have lstat. But - without links, stat does just fine. */ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# define lstat stat -# endif -_GL_CXXALIAS_RPL_1 (lstat, stat, int, - (const char *restrict name, struct stat *restrict buf)); -# elif @REPLACE_LSTAT@ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef lstat -# define lstat rpl_lstat -# endif -_GL_FUNCDECL_RPL (lstat, int, - (const char *restrict name, struct stat *restrict buf) - _GL_ARG_NONNULL ((1, 2))); -_GL_CXXALIAS_RPL (lstat, int, - (const char *restrict name, struct stat *restrict buf)); -# else -_GL_CXXALIAS_SYS (lstat, int, - (const char *restrict name, struct stat *restrict buf)); -# endif -# if @HAVE_LSTAT@ -_GL_CXXALIASWARN (lstat); -# endif -#elif @GNULIB_OVERRIDES_STRUCT_STAT@ -# undef lstat -# define lstat lstat_used_without_requesting_gnulib_module_lstat -#elif defined GNULIB_POSIXCHECK -# undef lstat -# if HAVE_RAW_DECL_LSTAT -_GL_WARN_ON_USE (lstat, "lstat is unportable - " - "use gnulib module lstat for portability"); -# endif -#endif - - #if @GNULIB_MKDIR@ # if @REPLACE_MKDIR@ # if !(defined __cplusplus && defined GNULIB_NAMESPACE) @@ -728,7 +728,9 @@ _GL_FUNCDECL_SYS (mkfifoat, int, (int fd, char const *file, mode_t mode) # endif _GL_CXXALIAS_SYS (mkfifoat, int, (int fd, char const *file, mode_t mode)); # endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (mkfifoat); +# endif #elif defined GNULIB_POSIXCHECK # undef mkfifoat # if HAVE_RAW_DECL_MKFIFOAT @@ -785,7 +787,9 @@ _GL_FUNCDECL_SYS (mknodat, int, _GL_CXXALIAS_SYS (mknodat, int, (int fd, char const *file, mode_t mode, dev_t dev)); # endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (mknodat); +# endif #elif defined GNULIB_POSIXCHECK # undef mknodat # if HAVE_RAW_DECL_MKNODAT @@ -869,6 +873,44 @@ _GL_WARN_ON_USE (stat, "stat is unportable - " #endif +#if @GNULIB_LSTAT@ +# if ! @HAVE_LSTAT@ +/* mingw does not support symlinks, therefore it does not have lstat. But + without links, stat does just fine. */ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# define lstat stat +# endif +_GL_CXXALIAS_RPL_1 (lstat, stat, int, + (const char *restrict name, struct stat *restrict buf)); +# elif @REPLACE_LSTAT@ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef lstat +# define lstat rpl_lstat +# endif +_GL_FUNCDECL_RPL (lstat, int, + (const char *restrict name, struct stat *restrict buf) + _GL_ARG_NONNULL ((1, 2))); +_GL_CXXALIAS_RPL (lstat, int, + (const char *restrict name, struct stat *restrict buf)); +# else +_GL_CXXALIAS_SYS (lstat, int, + (const char *restrict name, struct stat *restrict buf)); +# endif +# if @HAVE_LSTAT@ +_GL_CXXALIASWARN (lstat); +# endif +#elif @GNULIB_OVERRIDES_STRUCT_STAT@ +# undef lstat +# define lstat lstat_used_without_requesting_gnulib_module_lstat +#elif defined GNULIB_POSIXCHECK +# undef lstat +# if HAVE_RAW_DECL_LSTAT +_GL_WARN_ON_USE (lstat, "lstat is unportable - " + "use gnulib module lstat for portability"); +# endif +#endif + + #if @GNULIB_MDA_UMASK@ /* On native Windows, map 'umask' to '_umask', so that -loldnames is not required. In C++ with GNULIB_NAMESPACE, avoid differences between @@ -911,7 +953,7 @@ _GL_FUNCDECL_SYS (utimensat, int, (int fd, char const *name, _GL_CXXALIAS_SYS (utimensat, int, (int fd, char const *name, struct timespec const times[2], int flag)); # endif -# if @HAVE_UTIMENSAT@ +# if __GLIBC__ >= 2 && @HAVE_UTIMENSAT@ _GL_CXXALIASWARN (utimensat); # endif #elif defined GNULIB_POSIXCHECK diff --git a/lib/sys_time.in.h b/lib/sys_time.in.h index 8035fbe..59cce14 100644 --- a/lib/sys_time.in.h +++ b/lib/sys_time.in.h @@ -1,6 +1,6 @@ /* Provide a more complete sys/time.h. - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -24,6 +24,13 @@ #endif @PRAGMA_COLUMNS@ +/* This file uses #include_next of a system file that defines time_t. + For the 'year2038' module to work right, needs to have been + included before. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + /* On Cygwin and on many BSDish systems, includes itself recursively via . Simply delegate to the system's header in this case; it is a no-op. @@ -41,6 +48,11 @@ #ifndef _@GUARD_PREFIX@_SYS_TIME_H #define _@GUARD_PREFIX@_SYS_TIME_H +/* This file uses GNULIB_POSIXCHECK, HAVE_RAW_DECL_*. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + #if ! @HAVE_SYS_TIME_H@ # include #endif diff --git a/lib/sys_types.in.h b/lib/sys_types.in.h index 2079d72..ea77e14 100644 --- a/lib/sys_types.in.h +++ b/lib/sys_types.in.h @@ -1,6 +1,6 @@ /* Provide a more complete sys/types.h. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -20,6 +20,13 @@ #endif @PRAGMA_COLUMNS@ +/* This file uses #include_next of a system file that defines time_t. + For the 'year2038' module to work right, needs to have been + included before. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + #if defined _WIN32 && !defined __CYGWIN__ \ && (defined __need_off_t || defined __need___off64_t \ || defined __need_ssize_t || defined __need_time_t) diff --git a/lib/sys_wait.in.h b/lib/sys_wait.in.h index 446c66b..79dc139 100644 --- a/lib/sys_wait.in.h +++ b/lib/sys_wait.in.h @@ -1,5 +1,5 @@ /* A POSIX-like . - Copyright (C) 2001-2003, 2005-2021 Free Software Foundation, Inc. + Copyright (C) 2001-2003, 2005-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -30,6 +30,11 @@ #ifndef _@GUARD_PREFIX@_SYS_WAIT_H #define _@GUARD_PREFIX@_SYS_WAIT_H +/* This file uses GNULIB_POSIXCHECK, HAVE_RAW_DECL_*. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + /* Get pid_t. */ #include diff --git a/lib/system-quote.c b/lib/system-quote.c index 89c2303..54e891d 100644 --- a/lib/system-quote.c +++ b/lib/system-quote.c @@ -1,10 +1,10 @@ /* Quoting for a system command. - Copyright (C) 2012-2021 Free Software Foundation, Inc. + Copyright (C) 2012-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2012. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -20,7 +20,6 @@ /* Specification. */ #include "system-quote.h" -#include #include #include @@ -258,7 +257,7 @@ system_quote (enum system_command_interpreter interpreter, case SCI_SYSTEM: case SCI_WINDOWS_CMD: { - size_t length = system_quote_length (interpreter, string); + size_t length = system_quote_length (interpreter, string) + 1; char *quoted = XNMALLOC (length, char); system_quote_copy (quoted, interpreter, string); return quoted; diff --git a/lib/system-quote.h b/lib/system-quote.h index f378950..870a5c1 100644 --- a/lib/system-quote.h +++ b/lib/system-quote.h @@ -1,10 +1,10 @@ /* Quoting for a system command. - Copyright (C) 2001-2021 Free Software Foundation, Inc. + Copyright (C) 2001-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2012. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -46,7 +46,12 @@ is to truncate the entire command line. */ -#include +/* This file uses _GL_ATTRIBUTE_MALLOC, _GL_ATTRIBUTE_RETURNS_NONNULL. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + +#include #ifdef __cplusplus extern "C" { @@ -84,13 +89,17 @@ extern char * /* Returns the freshly allocated quoted string. */ extern char * system_quote (enum system_command_interpreter interpreter, - const char *string); + const char *string) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE + _GL_ATTRIBUTE_RETURNS_NONNULL; /* Returns a freshly allocated string containing all argument strings, quoted, separated through spaces. */ extern char * system_quote_argv (enum system_command_interpreter interpreter, - char * const *argv); + char * const *argv) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE + _GL_ATTRIBUTE_RETURNS_NONNULL; #ifdef __cplusplus } diff --git a/lib/tempname.c b/lib/tempname.c index 5f804b3..bf362db 100644 --- a/lib/tempname.c +++ b/lib/tempname.c @@ -1,4 +1,4 @@ -/* Copyright (C) 1991-2021 Free Software Foundation, Inc. +/* Copyright (C) 1991-2023 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -20,16 +20,9 @@ # include "tempname.h" #endif -#include -#include -#include - #include #include -#ifndef P_tmpdir -# define P_tmpdir "/tmp" -#endif #ifndef TMP_MAX # define TMP_MAX 238328 #endif @@ -43,27 +36,23 @@ # error report this to bug-gnulib@gnu.org #endif -#include #include #include #include -#include #include #include #include #include #if _LIBC -# define struct_stat64 struct stat64 -# define __secure_getenv __libc_secure_getenv +# define struct_stat64 struct __stat64_t64 #else # define struct_stat64 struct stat # define __gen_tempname gen_tempname # define __mkdir mkdir # define __open open -# define __lstat64(file, buf) lstat (file, buf) -# define __stat64(file, buf) stat (file, buf) +# define __lstat64_time64(file, buf) lstat (file, buf) # define __getrandom getrandom # define __clock_gettime64 clock_gettime # define __timespec64 timespec @@ -77,94 +66,56 @@ typedef uint_fast64_t random_value; #define BASE_62_DIGITS 10 /* 62**10 < UINT_FAST64_MAX */ #define BASE_62_POWER (62LL * 62 * 62 * 62 * 62 * 62 * 62 * 62 * 62 * 62) +/* Return the result of mixing the entropy from R and S. + Assume that R and S are not particularly random, + and that the result should look randomish to an untrained eye. */ + static random_value -random_bits (random_value var, bool use_getrandom) +mix_random_values (random_value r, random_value s) { - random_value r; - /* Without GRND_NONBLOCK it can be blocked for minutes on some systems. */ - if (use_getrandom && __getrandom (&r, sizeof r, GRND_NONBLOCK) == sizeof r) - return r; -#if _LIBC || (defined CLOCK_MONOTONIC && HAVE_CLOCK_GETTIME) - /* Add entropy if getrandom did not work. */ - struct __timespec64 tv; - __clock_gettime64 (CLOCK_MONOTONIC, &tv); - var ^= tv.tv_nsec; -#endif - return 2862933555777941757 * var + 3037000493; + /* As this code is used only when high-quality randomness is neither + available nor necessary, there is no need for fancier polynomials + such as those in the Linux kernel's 'random' driver. */ + return (2862933555777941757 * r + 3037000493) ^ s; } -#if _LIBC -/* Return nonzero if DIR is an existent directory. */ -static int -direxists (const char *dir) -{ - struct_stat64 buf; - return __stat64 (dir, &buf) == 0 && S_ISDIR (buf.st_mode); -} +/* Set *R to a random value. + Return true if *R is set to high-quality value taken from getrandom. + Otherwise return false, falling back to a low-quality *R that might + depend on S. -/* Path search algorithm, for tmpnam, tmpfile, etc. If DIR is - non-null and exists, uses it; otherwise uses the first of $TMPDIR, - P_tmpdir, /tmp that exists. Copies into TMPL a template suitable - for use with mk[s]temp. Will fail (-1) if DIR is non-null and - doesn't exist, none of the searched dirs exists, or there's not - enough space in TMPL. */ -int -__path_search (char *tmpl, size_t tmpl_len, const char *dir, const char *pfx, - int try_tmpdir) + This function returns false only when getrandom fails. + On GNU systems this should happen only early in the boot process, + when the fallback should be good enough for programs using tempname + because any attacker likely has root privileges already. */ + +static bool +random_bits (random_value *r, random_value s) { - const char *d; - size_t dlen, plen; + /* Without GRND_NONBLOCK it can be blocked for minutes on some systems. */ + if (__getrandom (r, sizeof *r, GRND_NONBLOCK) == sizeof *r) + return true; - if (!pfx || !pfx[0]) - { - pfx = "file"; - plen = 4; - } - else - { - plen = strlen (pfx); - if (plen > 5) - plen = 5; - } + /* If getrandom did not work, use ersatz entropy based on low-order + clock bits. On GNU systems getrandom should fail only + early in booting, when ersatz should be good enough. + Do not use ASLR-based entropy, as that would leak ASLR info into + the resulting file name which is typically public. - if (try_tmpdir) - { - d = __secure_getenv ("TMPDIR"); - if (d != NULL && direxists (d)) - dir = d; - else if (dir != NULL && direxists (dir)) - /* nothing */ ; - else - dir = NULL; - } - if (dir == NULL) - { - if (direxists (P_tmpdir)) - dir = P_tmpdir; - else if (strcmp (P_tmpdir, "/tmp") != 0 && direxists ("/tmp")) - dir = "/tmp"; - else - { - __set_errno (ENOENT); - return -1; - } - } + Of course we are in a state of sin here. */ - dlen = strlen (dir); - while (dlen > 1 && dir[dlen - 1] == '/') - dlen--; /* remove trailing slashes */ + random_value v = s; - /* check we have room for "${dir}/${pfx}XXXXXX\0" */ - if (tmpl_len < dlen + 1 + plen + 6 + 1) - { - __set_errno (EINVAL); - return -1; - } +#if _LIBC || (defined CLOCK_REALTIME && HAVE_CLOCK_GETTIME) + struct __timespec64 tv; + __clock_gettime64 (CLOCK_REALTIME, &tv); + v = mix_random_values (v, tv.tv_sec); + v = mix_random_values (v, tv.tv_nsec); +#endif - sprintf (tmpl, "%.*s/%.*sXXXXXX", (int) dlen, dir, (int) plen, pfx); - return 0; + *r = mix_random_values (v, clock ()); + return false; } -#endif /* _LIBC */ #if _LIBC static int try_tempname_len (char *, int, void *, int (*) (char *, void *), @@ -181,17 +132,17 @@ try_file (char *tmpl, void *flags) } static int -try_dir (char *tmpl, void *flags _GL_UNUSED) +try_dir (char *tmpl, _GL_UNUSED void *flags) { return __mkdir (tmpl, S_IRUSR | S_IWUSR | S_IXUSR); } static int -try_nocreate (char *tmpl, void *flags _GL_UNUSED) +try_nocreate (char *tmpl, _GL_UNUSED void *flags) { struct_stat64 st; - if (__lstat64 (tmpl, &st) == 0 || errno == EOVERFLOW) + if (__lstat64_time64 (tmpl, &st) == 0 || errno == EOVERFLOW) __set_errno (EEXIST); return errno == ENOENT ? 0 : -1; } @@ -213,7 +164,7 @@ static const char letters[] = and return a read-write fd. The file is mode 0600. __GT_DIR: create a directory, which will be mode 0700. - We use a clever algorithm to get hard-to-predict names. */ + */ #ifdef _LIBC static #endif @@ -261,25 +212,17 @@ try_tempname_len (char *tmpl, int suffixlen, void *args, unsigned int attempts = ATTEMPTS_MIN; #endif - /* A random variable. The initial value is used only the for fallback path - on 'random_bits' on 'getrandom' failure. Its initial value tries to use - some entropy from the ASLR and ignore possible bits from the stack - alignment. */ - random_value v = ((uintptr_t) &v) / alignof (max_align_t); + /* A random variable. */ + random_value v = 0; - /* How many random base-62 digits can currently be extracted from V. */ + /* A value derived from the random variable, and how many random + base-62 digits can currently be extracted from VDIGBUF. */ + random_value vdigbuf; int vdigits = 0; - /* Whether to consume entropy when acquiring random bits. On the - first try it's worth the entropy cost with __GT_NOCREATE, which - is inherently insecure and can use the entropy to make it a bit - less secure. On the (rare) second and later attempts it might - help against DoS attacks. */ - bool use_getrandom = tryfunc == try_nocreate; - - /* Least unfair value for V. If V is less than this, V can generate - BASE_62_DIGITS digits fairly. Otherwise it might be biased. */ - random_value const unfair_min + /* Least biased value for V. If V is less than this, V can generate + BASE_62_DIGITS unbiased digits. Otherwise the digits are biased. */ + random_value const biased_min = RANDOM_VALUE_MAX - RANDOM_VALUE_MAX % BASE_62_POWER; len = strlen (tmpl); @@ -299,18 +242,16 @@ try_tempname_len (char *tmpl, int suffixlen, void *args, { if (vdigits == 0) { - do - { - v = random_bits (v, use_getrandom); - use_getrandom = true; - } - while (unfair_min <= v); + /* Worry about bias only if the bits are high quality. */ + while (random_bits (&v, v) && biased_min <= v) + continue; + vdigbuf = v; vdigits = BASE_62_DIGITS; } - XXXXXX[i] = letters[v % 62]; - v /= 62; + XXXXXX[i] = letters[vdigbuf % 62]; + vdigbuf /= 62; vdigits--; } diff --git a/lib/tempname.h b/lib/tempname.h index 795bb49..36a5138 100644 --- a/lib/tempname.h +++ b/lib/tempname.h @@ -1,6 +1,6 @@ /* Create a temporary file or directory. - Copyright (C) 2006, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2006, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -48,7 +48,7 @@ extern "C" { and return a read-write fd. The file is mode 0600. GT_DIR: create a directory, which will be mode 0700. - We use a clever algorithm to get hard-to-predict names. */ + */ extern int gen_tempname (char *tmpl, int suffixlen, int flags, int kind); /* Similar, except X_SUFFIX_LEN gives the number of Xs. */ extern int gen_tempname_len (char *tmpl, int suffixlen, int flags, int kind, diff --git a/lib/time-internal.h b/lib/time-internal.h index 6bbd0a7..51423c9 100644 --- a/lib/time-internal.h +++ b/lib/time-internal.h @@ -1,10 +1,10 @@ /* Time internal interface - Copyright 2015-2021 Free Software Foundation, Inc. + Copyright 2015-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as - published by the Free Software Foundation; either version 3 of the + published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This file is distributed in the hope that it will be useful, diff --git a/lib/time.in.h b/lib/time.in.h index a73fe59..06428ad 100644 --- a/lib/time.in.h +++ b/lib/time.in.h @@ -1,6 +1,6 @@ /* A more-standard . - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -20,6 +20,13 @@ #endif @PRAGMA_COLUMNS@ +/* This file uses #include_next of a system file that defines time_t. + For the 'year2038' module to work right, needs to have been + included before. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + /* Don't get in the way of glibc when it includes time.h merely to declare a few standard symbols, rather than to declare all the symbols. (However, skip this for MinGW as it treats __need_time_t @@ -45,6 +52,12 @@ # @INCLUDE_NEXT@ @NEXT_TIME_H@ +/* This file uses _GL_ATTRIBUTE_DEPRECATED, GNULIB_POSIXCHECK, + HAVE_RAW_DECL_*. */ +# if !_GL_CONFIG_H_INCLUDED +# error "Please include config.h first." +# endif + /* NetBSD 5.0 mis-defines NULL. */ # include @@ -112,12 +125,51 @@ struct __time_t_must_be_integral { /* Set *TS to the current time, and return BASE. Upon failure, return 0. */ # if @GNULIB_TIMESPEC_GET@ -# if ! @HAVE_TIMESPEC_GET@ +# if @REPLACE_TIMESPEC_GET@ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef timespec_get +# define timespec_get rpl_timespec_get +# endif +_GL_FUNCDECL_RPL (timespec_get, int, (struct timespec *ts, int base) + _GL_ARG_NONNULL ((1))); +_GL_CXXALIAS_RPL (timespec_get, int, (struct timespec *ts, int base)); +# else +# if !@HAVE_TIMESPEC_GET@ _GL_FUNCDECL_SYS (timespec_get, int, (struct timespec *ts, int base) _GL_ARG_NONNULL ((1))); -# endif +# endif _GL_CXXALIAS_SYS (timespec_get, int, (struct timespec *ts, int base)); +# endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (timespec_get); +# endif +# endif + +/* Set *TS to the current time resolution, and return BASE. + Upon failure, return 0. */ +# if @GNULIB_TIMESPEC_GETRES@ +# if ! @HAVE_TIMESPEC_GETRES@ +_GL_FUNCDECL_SYS (timespec_getres, int, (struct timespec *ts, int base) + _GL_ARG_NONNULL ((1))); +# endif +_GL_CXXALIAS_SYS (timespec_getres, int, (struct timespec *ts, int base)); +_GL_CXXALIASWARN (timespec_getres); +# endif + +/* Return the number of seconds that have elapsed since the Epoch. */ +# if @GNULIB_TIME@ +# if @REPLACE_TIME@ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# define time rpl_time +# endif +_GL_FUNCDECL_RPL (time, time_t, (time_t *__tp)); +_GL_CXXALIAS_RPL (time, time_t, (time_t *__tp)); +# else +_GL_CXXALIAS_SYS (time, time_t, (time_t *__tp)); +# endif +# if __GLIBC__ >= 2 +_GL_CXXALIASWARN (time); +# endif # endif /* Sleep for at least RQTP seconds unless interrupted, If interrupted, @@ -304,6 +356,9 @@ _GL_CXXALIASWARN (strptime); # if !(defined __cplusplus && defined GNULIB_NAMESPACE) # define ctime rpl_ctime # endif +# ifndef __cplusplus +_GL_ATTRIBUTE_DEPRECATED +# endif _GL_FUNCDECL_RPL (ctime, char *, (time_t const *__tp) _GL_ARG_NONNULL ((1))); _GL_CXXALIAS_RPL (ctime, char *, (time_t const *__tp)); @@ -411,7 +466,9 @@ _GL_FUNCDECL_SYS (timegm, time_t, (struct tm *__tm) _GL_ARG_NONNULL ((1))); # endif _GL_CXXALIAS_SYS (timegm, time_t, (struct tm *__tm)); # endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (timegm); +# endif # endif /* Encourage applications to avoid unsafe functions that can overrun @@ -424,8 +481,10 @@ _GL_WARN_ON_USE (asctime, "asctime can overrun buffers in some cases - " # endif # if defined GNULIB_POSIXCHECK # undef asctime_r +# if HAVE_RAW_DECL_ASCTIME_R _GL_WARN_ON_USE (asctime_r, "asctime_r can overrun buffers in some cases - " "better use strftime (or even sprintf) instead"); +# endif # endif # if defined GNULIB_POSIXCHECK # undef ctime @@ -434,8 +493,10 @@ _GL_WARN_ON_USE (ctime, "ctime can overrun buffers in some cases - " # endif # if defined GNULIB_POSIXCHECK # undef ctime_r +# if HAVE_RAW_DECL_CTIME_R _GL_WARN_ON_USE (ctime_r, "ctime_r can overrun buffers in some cases - " "better use strftime (or even sprintf) instead"); +# endif # endif #endif diff --git a/lib/time_r.c b/lib/time_r.c index 88d3c1c..97be4fd 100644 --- a/lib/time_r.c +++ b/lib/time_r.c @@ -1,6 +1,6 @@ /* Reentrant time functions like localtime_r. - Copyright (C) 2003, 2006-2007, 2010-2021 Free Software Foundation, Inc. + Copyright (C) 2003, 2006-2007, 2010-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/time_rz.c b/lib/time_rz.c index e772244..da0d57b 100644 --- a/lib/time_rz.c +++ b/lib/time_rz.c @@ -1,10 +1,10 @@ /* Time zone functions such as tzalloc and localtime_rz - Copyright 2015-2021 Free Software Foundation, Inc. + Copyright 2015-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as - published by the Free Software Foundation; either version 3 of the + published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This file is distributed in the hope that it will be useful, @@ -27,7 +27,6 @@ #include #include -#include #include #include #include diff --git a/lib/timegm.c b/lib/timegm.c index 7e723e1..b47025a 100644 --- a/lib/timegm.c +++ b/lib/timegm.c @@ -1,6 +1,6 @@ /* Convert UTC calendar time to simple time. Like mktime but assumes UTC. - Copyright (C) 1994-2021 Free Software Foundation, Inc. + Copyright (C) 1994-2023 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or diff --git a/lib/timespec.c b/lib/timespec.c index 957b5fb..5f7ffbd 100644 --- a/lib/timespec.c +++ b/lib/timespec.c @@ -1,10 +1,10 @@ /* Inline functions for . - Copyright (C) 2012-2021 Free Software Foundation, Inc. + Copyright (C) 2012-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as - published by the Free Software Foundation; either version 3 of the + published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This file is distributed in the hope that it will be useful, diff --git a/lib/timespec.h b/lib/timespec.h index 94a5db7..e94da75 100644 --- a/lib/timespec.h +++ b/lib/timespec.h @@ -1,11 +1,11 @@ /* timespec -- System time interface - Copyright (C) 2000, 2002, 2004-2005, 2007, 2009-2021 Free Software + Copyright (C) 2000, 2002, 2004-2005, 2007, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as - published by the Free Software Foundation; either version 3 of the + published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This file is distributed in the hope that it will be useful, @@ -19,11 +19,14 @@ #if ! defined TIMESPEC_H #define TIMESPEC_H -#include - -#ifndef _GL_INLINE_HEADER_BEGIN +/* This file uses _GL_INLINE_HEADER_BEGIN, _GL_INLINE, _GL_ATTRIBUTE_CONST, + _GL_ATTRIBUTE_PURE, _GL_CMP. */ +#if !_GL_CONFIG_H_INCLUDED #error "Please include config.h first." #endif + +#include + _GL_INLINE_HEADER_BEGIN #ifndef _GL_TIMESPEC_INLINE # define _GL_TIMESPEC_INLINE _GL_INLINE @@ -52,10 +55,7 @@ enum { LOG10_TIMESPEC_RESOLUTION = LOG10_TIMESPEC_HZ }; _GL_TIMESPEC_INLINE struct timespec make_timespec (time_t s, long int ns) { - struct timespec r; - r.tv_sec = s; - r.tv_nsec = ns; - return r; + return (struct timespec) { .tv_sec = s, .tv_nsec = ns }; } /* Return negative, zero, positive if A < B, A == B, A > B, respectively. */ @@ -88,6 +88,7 @@ timespectod (struct timespec a) return a.tv_sec + a.tv_nsec / 1e9; } +long int gettime_res (void); struct timespec current_timespec (void); void gettime (struct timespec *) _GL_ARG_NONNULL ((1)); int settime (struct timespec const *) _GL_ARG_NONNULL ((1)); diff --git a/lib/trim.c b/lib/trim.c index 30e7d5b..d33dd13 100644 --- a/lib/trim.c +++ b/lib/trim.c @@ -1,9 +1,9 @@ /* Removes leading and/or trailing whitespaces - Copyright (C) 2006-2021 Free Software Foundation, Inc. + Copyright (C) 2006-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -30,13 +30,6 @@ #include "mbiter.h" #include "xalloc.h" -/* Use this to suppress gcc's "...may be used before initialized" warnings. */ -#if defined GCC_LINT || defined lint -# define IF_LINT(Code) Code -#else -# define IF_LINT(Code) /* empty */ -#endif - char * trim2 (const char *s, int how) { @@ -65,42 +58,21 @@ trim2 (const char *s, int how) /* Trim trailing whitespaces. */ if (how != TRIM_LEADING) { - unsigned int state = 0; - char *r IF_LINT (= NULL); /* used only while state = 2 */ + char *start_of_spaces = NULL; mbi_init (i, d, strlen (d)); for (; mbi_avail (i); mbi_advance (i)) - { - if (state == 0 && mb_isspace (mbi_cur (i))) - continue; - - if (state == 0 && !mb_isspace (mbi_cur (i))) - { - state = 1; - continue; - } - - if (state == 1 && !mb_isspace (mbi_cur (i))) - continue; - - if (state == 1 && mb_isspace (mbi_cur (i))) - { - state = 2; - r = (char *) mbi_cur_ptr (i); - } - else if (state == 2 && mb_isspace (mbi_cur (i))) - { - /* empty */ - } - else - { - state = 1; - } - } - - if (state == 2) - *r = '\0'; + if (mb_isspace (mbi_cur (i))) + { + if (start_of_spaces == NULL) + start_of_spaces = (char *) mbi_cur_ptr (i); + } + else + start_of_spaces = NULL; + + if (start_of_spaces != NULL) + *start_of_spaces = '\0'; } } else diff --git a/lib/trim.h b/lib/trim.h index dc886e5..a8040ef 100644 --- a/lib/trim.h +++ b/lib/trim.h @@ -1,9 +1,9 @@ /* Removes leading and/or trailing whitespaces - Copyright (C) 2006, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2006, 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -16,6 +16,13 @@ /* Written by Davide Angelocola */ +/* This file uses _GL_ATTRIBUTE_MALLOC, _GL_ATTRIBUTE_RETURNS_NONNULL. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + +#include + /* Trim mode. */ #define TRIM_TRAILING 0 #define TRIM_LEADING 1 @@ -30,4 +37,6 @@ /* Removes leading whitespaces. */ #define trim_leading(s) trim2(s, TRIM_LEADING) -char *trim2 (const char *, int); +char *trim2 (const char *, int) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE + _GL_ATTRIBUTE_RETURNS_NONNULL; diff --git a/lib/tzset.c b/lib/tzset.c index 7fd4936..88fc047 100644 --- a/lib/tzset.c +++ b/lib/tzset.c @@ -1,10 +1,10 @@ /* Provide tzset for systems that don't have it or for which it's broken. - Copyright (C) 2001-2003, 2005-2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2001-2003, 2005-2007, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as - published by the Free Software Foundation; either version 3 of the + published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This file is distributed in the hope that it will be useful, diff --git a/lib/uinttostr.c b/lib/uinttostr.c index 46537eb..682eba5 100644 --- a/lib/uinttostr.c +++ b/lib/uinttostr.c @@ -1,6 +1,6 @@ /* Convert 'unsigned int' integer to printable string. - Copyright (C) 2006-2021 Free Software Foundation, Inc. + Copyright (C) 2006-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/umaxtostr.c b/lib/umaxtostr.c index f8a7abc..cd81e46 100644 --- a/lib/umaxtostr.c +++ b/lib/umaxtostr.c @@ -1,6 +1,6 @@ /* Convert 'uintmax_t' integer to printable string. - Copyright (C) 2004-2021 Free Software Foundation, Inc. + Copyright (C) 2004-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/unictype/bitmap.h b/lib/unictype/bitmap.h new file mode 100644 index 0000000..9da85c1 --- /dev/null +++ b/lib/unictype/bitmap.h @@ -0,0 +1,48 @@ +/* Three-level bitmap lookup. + Copyright (C) 2000-2002, 2005-2007, 2009-2023 Free Software Foundation, Inc. + Written by Bruno Haible , 2000-2002. + + This file is free software: you can redistribute it and/or modify + it under the terms of the GNU Lesser General Public License as + published by the Free Software Foundation; either version 2.1 of the + License, or (at your option) any later version. + + This file is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +static inline int bitmap_lookup (const void *table, ucs4_t uc); + +/* These values are currently hardcoded into gen-uni-tables.c, function + output_predicate(). */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 + +static inline int +bitmap_lookup (const void *table, ucs4_t uc) +{ + unsigned int index1 = uc >> header_0; + if (index1 < ((const int *) table)[0]) + { + int lookup1 = ((const int *) table)[1 + index1]; + if (lookup1 >= 0) + { + unsigned int index2 = (uc >> header_2) & header_3; + int lookup2 = ((const short *) table)[lookup1 + index2]; + if (lookup2 >= 0) + { + unsigned int index3 = (uc >> 5) & header_4; + unsigned int lookup3 = ((const unsigned int *) table)[lookup2 + index3]; + + return (lookup3 >> (uc & 0x1f)) & 1; + } + } + } + return 0; +} diff --git a/lib/unistd.c b/lib/unistd.c index 0763456..be7a825 100644 --- a/lib/unistd.c +++ b/lib/unistd.c @@ -1,6 +1,6 @@ /* Inline functions for . - Copyright (C) 2012-2021 Free Software Foundation, Inc. + Copyright (C) 2012-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/unistd.in.h b/lib/unistd.in.h index 73c882f..2ae040a 100644 --- a/lib/unistd.in.h +++ b/lib/unistd.in.h @@ -1,5 +1,5 @@ /* Substitute for and wrapper around . - Copyright (C) 2003-2021 Free Software Foundation, Inc. + Copyright (C) 2003-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -40,6 +40,24 @@ # undef _GL_INCLUDING_UNISTD_H #endif +/* Avoid lseek bugs in FreeBSD, macOS . + This bug is fixed after FreeBSD 13; see . + Use macOS "9999" to stand for a future fixed macOS version. */ +#if defined __FreeBSD__ && __FreeBSD__ < 14 +# undef SEEK_DATA +# undef SEEK_HOLE +#elif defined __APPLE__ && defined __MACH__ && defined SEEK_DATA +# ifdef __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ +# include +# endif +# if (!defined MAC_OS_X_VERSION_MIN_REQUIRED \ + || MAC_OS_X_VERSION_MIN_REQUIRED < 99990000) +# include /* It also defines the two macros. */ +# undef SEEK_DATA +# undef SEEK_HOLE +# endif +#endif + /* Get all possible declarations of gethostname(). */ #if @GNULIB_GETHOSTNAME@ && @UNISTD_H_HAVE_WINSOCK2_H@ \ && !defined _GL_INCLUDING_WINSOCK2_H @@ -51,6 +69,12 @@ #if !defined _@GUARD_PREFIX@_UNISTD_H && !defined _GL_INCLUDING_WINSOCK2_H #define _@GUARD_PREFIX@_UNISTD_H +/* This file uses _GL_INLINE_HEADER_BEGIN, _GL_INLINE, GNULIB_POSIXCHECK, + HAVE_RAW_DECL_*. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + /* NetBSD 5.0 mis-defines NULL. Also get size_t. */ /* But avoid namespace pollution on glibc systems. */ #ifndef __GLIBC__ @@ -152,9 +176,6 @@ # include #endif -#ifndef _GL_INLINE_HEADER_BEGIN - #error "Please include config.h first." -#endif _GL_INLINE_HEADER_BEGIN #ifndef _GL_UNISTD_INLINE # define _GL_UNISTD_INLINE _GL_INLINE @@ -415,16 +436,30 @@ _GL_CXXALIASWARN (close); #if @GNULIB_COPY_FILE_RANGE@ -# if !@HAVE_COPY_FILE_RANGE@ +# if @REPLACE_COPY_FILE_RANGE@ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef copy_file_range +# define copy_file_range rpl_copy_file_range +# endif +_GL_FUNCDECL_RPL (copy_file_range, ssize_t, (int ifd, off_t *ipos, + int ofd, off_t *opos, + size_t len, unsigned flags)); +_GL_CXXALIAS_RPL (copy_file_range, ssize_t, (int ifd, off_t *ipos, + int ofd, off_t *opos, + size_t len, unsigned flags)); +# else +# if !@HAVE_COPY_FILE_RANGE@ _GL_FUNCDECL_SYS (copy_file_range, ssize_t, (int ifd, off_t *ipos, int ofd, off_t *opos, size_t len, unsigned flags)); +# endif _GL_CXXALIAS_SYS (copy_file_range, ssize_t, (int ifd, off_t *ipos, int ofd, off_t *opos, size_t len, unsigned flags)); # endif _GL_CXXALIASWARN (copy_file_range); #elif defined GNULIB_POSIXCHECK +# undef copy_file_range # if HAVE_RAW_DECL_COPY_FILE_RANGE _GL_WARN_ON_USE (copy_file_range, "copy_file_range is unportable - " @@ -527,17 +562,22 @@ _GL_CXXALIASWARN (dup2); Return newfd if successful, otherwise -1 and errno set. See the Linux man page at . */ -# if @HAVE_DUP3@ +# if @REPLACE_DUP3@ # if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef dup3 # define dup3 rpl_dup3 # endif _GL_FUNCDECL_RPL (dup3, int, (int oldfd, int newfd, int flags)); _GL_CXXALIAS_RPL (dup3, int, (int oldfd, int newfd, int flags)); # else +# if !@HAVE_DUP3@ _GL_FUNCDECL_SYS (dup3, int, (int oldfd, int newfd, int flags)); +# endif _GL_CXXALIAS_SYS (dup3, int, (int oldfd, int newfd, int flags)); # endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (dup3); +# endif #elif defined GNULIB_POSIXCHECK # undef dup3 # if HAVE_RAW_DECL_DUP3 @@ -856,7 +896,9 @@ _GL_FUNCDECL_SYS (execvpe, int, _GL_CXXALIAS_SYS (execvpe, int, (const char *program, char * const *argv, char * const *env)); # endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (execvpe); +# endif #elif defined GNULIB_POSIXCHECK # undef execvpe # if HAVE_RAW_DECL_EXECVPE @@ -911,7 +953,9 @@ _GL_FUNCDECL_SYS (faccessat, int, _GL_CXXALIAS_SYS (faccessat, int, (int fd, char const *file, int mode, int flag)); # endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (faccessat); +# endif #elif defined GNULIB_POSIXCHECK # undef faccessat # if HAVE_RAW_DECL_FACCESSAT @@ -988,11 +1032,22 @@ _GL_WARN_ON_USE (fchownat, "fchownat is not portable - " Return 0 if successful, otherwise -1 and errno set. See POSIX:2008 specification . */ -# if !@HAVE_FDATASYNC@ || !@HAVE_DECL_FDATASYNC@ +# if @REPLACE_FDATASYNC@ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef fdatasync +# define fdatasync rpl_fdatasync +# endif +_GL_FUNCDECL_RPL (fdatasync, int, (int fd)); +_GL_CXXALIAS_RPL (fdatasync, int, (int fd)); +# else +# if !@HAVE_FDATASYNC@|| !@HAVE_DECL_FDATASYNC@ _GL_FUNCDECL_SYS (fdatasync, int, (int fd)); -# endif +# endif _GL_CXXALIAS_SYS (fdatasync, int, (int fd)); +# endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (fdatasync); +# endif #elif defined GNULIB_POSIXCHECK # undef fdatasync # if HAVE_RAW_DECL_FDATASYNC @@ -1039,7 +1094,9 @@ _GL_FUNCDECL_SYS (ftruncate, int, (int fd, off_t length)); # endif _GL_CXXALIAS_SYS (ftruncate, int, (int fd, off_t length)); # endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (ftruncate); +# endif #elif defined GNULIB_POSIXCHECK # undef ftruncate # if HAVE_RAW_DECL_FTRUNCATE @@ -1129,7 +1186,9 @@ _GL_FUNCDECL_SYS (getdomainname, int, (char *name, size_t len) # endif _GL_CXXALIAS_SYS (getdomainname, int, (char *name, size_t len)); # endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (getdomainname); +# endif #elif defined GNULIB_POSIXCHECK # undef getdomainname # if HAVE_RAW_DECL_GETDOMAINNAME @@ -1169,11 +1228,22 @@ _GL_WARN_ON_USE (getdtablesize, "getdtablesize is unportable - " #if @GNULIB_GETENTROPY@ /* Fill a buffer with random bytes. */ -# if !@HAVE_GETENTROPY@ +# if @REPLACE_GETENTROPY@ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef getentropy +# define getentropy rpl_getentropy +# endif +_GL_FUNCDECL_RPL (getentropy, int, (void *buffer, size_t length)); +_GL_CXXALIAS_RPL (getentropy, int, (void *buffer, size_t length)); +# else +# if !@HAVE_GETENTROPY@ _GL_FUNCDECL_SYS (getentropy, int, (void *buffer, size_t length)); -# endif +# endif _GL_CXXALIAS_SYS (getentropy, int, (void *buffer, size_t length)); +# endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (getentropy); +# endif #elif defined GNULIB_POSIXCHECK # undef getentropy # if HAVE_RAW_DECL_GETENTROPY @@ -1307,7 +1377,9 @@ _GL_FUNCDECL_SYS (getlogin_r, int, (char *name, size_t size) int size. */ _GL_CXXALIAS_SYS_CAST (getlogin_r, int, (char *name, size_t size)); # endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (getlogin_r); +# endif #elif defined GNULIB_POSIXCHECK # undef getlogin_r # if HAVE_RAW_DECL_GETLOGIN_R @@ -1409,7 +1481,8 @@ _GL_WARN_ON_USE (getpagesize, "getpagesize is unportable - " Read a password from /dev/tty or stdin. Function getpass() from module 'getpass-gnu': Read a password of arbitrary length from /dev/tty or stdin. */ -# if @REPLACE_GETPASS@ +# if (@GNULIB_GETPASS@ && @REPLACE_GETPASS@) \ + || (@GNULIB_GETPASS_GNU@ && @REPLACE_GETPASS_FOR_GETPASS_GNU@) # if !(defined __cplusplus && defined GNULIB_NAMESPACE) # undef getpass # define getpass rpl_getpass @@ -1644,7 +1717,9 @@ _GL_CXXALIAS_SYS (linkat, int, (int fd1, const char *path1, int fd2, const char *path2, int flag)); # endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (linkat); +# endif #elif defined GNULIB_POSIXCHECK # undef linkat # if HAVE_RAW_DECL_LINKAT @@ -1725,8 +1800,9 @@ _GL_WARN_ON_USE (pipe, "pipe is unportable - " Return 0 upon success, or -1 with errno set upon failure. See also the Linux man page at . */ -# if @HAVE_PIPE2@ +# if @REPLACE_PIPE2@ # if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef pipe2 # define pipe2 rpl_pipe2 # endif _GL_FUNCDECL_RPL (pipe2, int, (int fd[2], int flags) _GL_ARG_NONNULL ((1))); @@ -1735,7 +1811,9 @@ _GL_CXXALIAS_RPL (pipe2, int, (int fd[2], int flags)); _GL_FUNCDECL_SYS (pipe2, int, (int fd[2], int flags) _GL_ARG_NONNULL ((1))); _GL_CXXALIAS_SYS (pipe2, int, (int fd[2], int flags)); # endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (pipe2); +# endif #elif defined GNULIB_POSIXCHECK # undef pipe2 # if HAVE_RAW_DECL_PIPE2 @@ -1770,7 +1848,9 @@ _GL_FUNCDECL_SYS (pread, ssize_t, _GL_CXXALIAS_SYS (pread, ssize_t, (int fd, void *buf, size_t bufsize, off_t offset)); # endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (pread); +# endif #elif defined GNULIB_POSIXCHECK # undef pread # if HAVE_RAW_DECL_PREAD @@ -1805,7 +1885,9 @@ _GL_FUNCDECL_SYS (pwrite, ssize_t, _GL_CXXALIAS_SYS (pwrite, ssize_t, (int fd, const void *buf, size_t bufsize, off_t offset)); # endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (pwrite); +# endif #elif defined GNULIB_POSIXCHECK # undef pwrite # if HAVE_RAW_DECL_PWRITE @@ -1919,7 +2001,9 @@ _GL_CXXALIAS_SYS (readlinkat, ssize_t, (int fd, char const *restrict file, char *restrict buf, size_t len)); # endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (readlinkat); +# endif #elif defined GNULIB_POSIXCHECK # undef readlinkat # if HAVE_RAW_DECL_READLINKAT @@ -1979,15 +2063,27 @@ _GL_CXXALIASWARN (rmdir); Platforms with no ability to set the hostname return -1 and set errno = ENOSYS. */ -# if !@HAVE_SETHOSTNAME@ || !@HAVE_DECL_SETHOSTNAME@ +# if @REPLACE_SETHOSTNAME@ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef sethostname +# define sethostname rpl_sethostname +# endif +_GL_FUNCDECL_RPL (sethostname, int, (const char *name, size_t len) + _GL_ARG_NONNULL ((1))); +_GL_CXXALIAS_RPL (sethostname, int, (const char *name, size_t len)); +# else +# if !@HAVE_SETHOSTNAME@ || !@HAVE_DECL_SETHOSTNAME@ _GL_FUNCDECL_SYS (sethostname, int, (const char *name, size_t len) _GL_ARG_NONNULL ((1))); -# endif +# endif /* Need to cast, because on Solaris 11 2011-10, Mac OS X 10.5, IRIX 6.5 and FreeBSD 6.4 the second parameter is int. On Solaris 11 2011-10, the first parameter is not const. */ _GL_CXXALIAS_SYS_CAST (sethostname, int, (const char *name, size_t len)); +# endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (sethostname); +# endif #elif defined GNULIB_POSIXCHECK # undef sethostname # if HAVE_RAW_DECL_SETHOSTNAME @@ -2040,7 +2136,7 @@ _GL_CXXALIAS_MDA_CAST (swab, void, (char *from, char *to, int n)); # else # if defined __hpux /* HP-UX */ _GL_CXXALIAS_SYS (swab, void, (const char *from, char *to, int n)); -# elif defined __sun && !defined _XPG4 /* Solaris */ +# elif defined __sun && (defined __SunOS_5_10 || defined __XOPEN_OR_POSIX) && !defined _XPG4 /* Solaris */ _GL_CXXALIAS_SYS (swab, void, (const char *from, char *to, ssize_t n)); # else _GL_CXXALIAS_SYS (swab, void, (const void *from, void *to, ssize_t n)); @@ -2096,7 +2192,9 @@ _GL_FUNCDECL_SYS (symlinkat, int, _GL_CXXALIAS_SYS (symlinkat, int, (char const *contents, int fd, char const *file)); # endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (symlinkat); +# endif #elif defined GNULIB_POSIXCHECK # undef symlinkat # if HAVE_RAW_DECL_SYMLINKAT @@ -2126,7 +2224,9 @@ _GL_FUNCDECL_SYS (truncate, int, (const char *filename, off_t length) # endif _GL_CXXALIAS_SYS (truncate, int, (const char *filename, off_t length)); # endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (truncate); +# endif #elif defined GNULIB_POSIXCHECK # undef truncate # if HAVE_RAW_DECL_TRUNCATE @@ -2156,7 +2256,9 @@ _GL_FUNCDECL_SYS (ttyname_r, int, _GL_CXXALIAS_SYS (ttyname_r, int, (int fd, char *buf, size_t buflen)); # endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (ttyname_r); +# endif #elif defined GNULIB_POSIXCHECK # undef ttyname_r # if HAVE_RAW_DECL_TTYNAME_R diff --git a/lib/unistr.in.h b/lib/unistr.in.h index ed65777..d85ad51 100644 --- a/lib/unistr.in.h +++ b/lib/unistr.in.h @@ -1,5 +1,5 @@ /* Elementary Unicode string functions. - Copyright (C) 2001-2002, 2005-2021 Free Software Foundation, Inc. + Copyright (C) 2001-2002, 2005-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -25,6 +25,9 @@ /* Get size_t, ptrdiff_t. */ #include +/* Get free(). */ +#include + #ifdef __cplusplus extern "C" { #endif @@ -624,11 +627,14 @@ extern int /* Duplicate S, returning an identical malloc'd string. */ /* Similar to strdup(), wcsdup(). */ extern uint8_t * - u8_strdup (const uint8_t *s); + u8_strdup (const uint8_t *s) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE; extern uint16_t * - u16_strdup (const uint16_t *s); + u16_strdup (const uint16_t *s) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE; extern uint32_t * - u32_strdup (const uint32_t *s); + u32_strdup (const uint32_t *s) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE; /* Find the first occurrence of UC in STR. */ /* Similar to strchr(), wcschr(). */ diff --git a/lib/unistr/u8-mbtoucr.c b/lib/unistr/u8-mbtoucr.c index 77a6cac..d090511 100644 --- a/lib/unistr/u8-mbtoucr.c +++ b/lib/unistr/u8-mbtoucr.c @@ -1,5 +1,5 @@ /* Look at first character in UTF-8 string, returning an error code. - Copyright (C) 1999-2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 1999-2002, 2006-2007, 2009-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2001. This file is free software: you can redistribute it and/or modify diff --git a/lib/unistr/u8-uctomb-aux.c b/lib/unistr/u8-uctomb-aux.c index 2be1cfb..6deeeb7 100644 --- a/lib/unistr/u8-uctomb-aux.c +++ b/lib/unistr/u8-uctomb-aux.c @@ -1,5 +1,5 @@ /* Conversion UCS-4 to UTF-8. - Copyright (C) 2002, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2002, 2006-2007, 2009-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2002. This file is free software: you can redistribute it and/or modify diff --git a/lib/unistr/u8-uctomb.c b/lib/unistr/u8-uctomb.c index e2577c6..58de19b 100644 --- a/lib/unistr/u8-uctomb.c +++ b/lib/unistr/u8-uctomb.c @@ -1,5 +1,5 @@ /* Store a character in UTF-8 string. - Copyright (C) 2002, 2005-2006, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2002, 2005-2006, 2009-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2002. This file is free software: you can redistribute it and/or modify diff --git a/lib/unitypes.in.h b/lib/unitypes.in.h index 82ee0de..d3a4c67 100644 --- a/lib/unitypes.in.h +++ b/lib/unitypes.in.h @@ -1,5 +1,5 @@ /* Elementary types and macros for the GNU UniString library. - Copyright (C) 2002, 2005-2006, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2002, 2005-2006, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/uniwidth.in.h b/lib/uniwidth.in.h index 0859254..66829e4 100644 --- a/lib/uniwidth.in.h +++ b/lib/uniwidth.in.h @@ -1,5 +1,5 @@ /* Display width functions. - Copyright (C) 2001-2002, 2005, 2007, 2009-2021 Free Software Foundation, + Copyright (C) 2001-2002, 2005, 2007, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify diff --git a/lib/uniwidth/cjk.h b/lib/uniwidth/cjk.h index 1853ceb..98f7e92 100644 --- a/lib/uniwidth/cjk.h +++ b/lib/uniwidth/cjk.h @@ -1,5 +1,5 @@ /* Test for CJK encoding. - Copyright (C) 2001-2002, 2005-2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2001-2002, 2005-2007, 2009-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2002. This file is free software: you can redistribute it and/or modify diff --git a/lib/uniwidth/width.c b/lib/uniwidth/width.c index 9ba07d3..c9d4d1d 100644 --- a/lib/uniwidth/width.c +++ b/lib/uniwidth/width.c @@ -1,5 +1,5 @@ /* Determine display width of Unicode character. - Copyright (C) 2001-2002, 2006-2021 Free Software Foundation, Inc. + Copyright (C) 2001-2002, 2006-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2002. This file is free software: you can redistribute it and/or modify @@ -22,400 +22,43 @@ #include "cjk.h" -/* - * Non-spacing attribute table. - * Consists of: - * - Non-spacing characters; generated from PropList.txt or - * "grep '^[^;]*;[^;]*;[^;]*;[^;]*;NSM;' UnicodeData.txt" - * - Format control characters; generated from - * "grep '^[^;]*;[^;]*;Cf;' UnicodeData.txt" - * - Zero width characters; generated from - * "grep '^[^;]*;ZERO WIDTH ' UnicodeData.txt" +/* The non-spacing attribute table consists of: + * Non-spacing characters; generated from PropList.txt or + "grep '^[^;]*;[^;]*;[^;]*;[^;]*;NSM;' UnicodeData.txt" + * Format control characters; generated from + "grep '^[^;]*;[^;]*;Cf;' UnicodeData.txt" + * Zero width characters; generated from + "grep '^[^;]*;ZERO WIDTH ' UnicodeData.txt" + * Hangul Jamo characters that have conjoining behaviour: + - jungseong = syllable-middle vowels + - jongseong = syllable-final consonants + Rationale: + 1) These characters act like combining characters. They have no + equivalent in legacy character sets. Therefore the EastAsianWidth.txt + file does not really matter for them; UAX #11 East Asian Width + makes it clear that it focus + is on compatibility with traditional Japanese layout. + By contrast, the same glyphs without conjoining behaviour are available + in the U+3130..U+318F block, and these characters are mapped to legacy + character sets, and traditional Japanese layout matters for them. + 2) glibc does the same thing, see + + */ -static const unsigned char nonspacing_table_data[38*64] = { - /* 0x0000-0x01ff */ - 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, /* 0x0000-0x003f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, /* 0x0040-0x007f */ - 0xff, 0xff, 0xff, 0xff, 0x00, 0x20, 0x00, 0x00, /* 0x0080-0x00bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x00c0-0x00ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0100-0x013f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0140-0x017f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0180-0x01bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x01c0-0x01ff */ - /* 0x0200-0x03ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0200-0x023f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0240-0x027f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0280-0x02bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x02c0-0x02ff */ - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, /* 0x0300-0x033f */ - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, /* 0x0340-0x037f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0380-0x03bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x03c0-0x03ff */ - /* 0x0400-0x05ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0400-0x043f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0440-0x047f */ - 0xf8, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0480-0x04bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x04c0-0x04ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0500-0x053f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0540-0x057f */ - 0x00, 0x00, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xbf, /* 0x0580-0x05bf */ - 0xb6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x05c0-0x05ff */ - /* 0x0600-0x07ff */ - 0x3f, 0x00, 0xff, 0x17, 0x00, 0x00, 0x00, 0x00, /* 0x0600-0x063f */ - 0x00, 0xf8, 0xff, 0xff, 0x00, 0x00, 0x01, 0x00, /* 0x0640-0x067f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0680-0x06bf */ - 0x00, 0x00, 0xc0, 0xbf, 0x9f, 0x3d, 0x00, 0x00, /* 0x06c0-0x06ff */ - 0x00, 0x80, 0x02, 0x00, 0x00, 0x00, 0xff, 0xff, /* 0x0700-0x073f */ - 0xff, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0740-0x077f */ - 0x00, 0x00, 0x00, 0x00, 0xc0, 0xff, 0x01, 0x00, /* 0x0780-0x07bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x0f, 0x00, /* 0x07c0-0x07ff */ - /* 0x0800-0x09ff */ - 0x00, 0x00, 0xc0, 0xfb, 0xef, 0x3e, 0x00, 0x00, /* 0x0800-0x083f */ - 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x00, /* 0x0840-0x087f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0880-0x08bf */ - 0x00, 0x00, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, /* 0x08c0-0x08ff */ - 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, /* 0x0900-0x093f */ - 0xfe, 0x21, 0xfe, 0x00, 0x0c, 0x00, 0x00, 0x00, /* 0x0940-0x097f */ - 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, /* 0x0980-0x09bf */ - 0x1e, 0x20, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, /* 0x09c0-0x09ff */ - /* 0x0a00-0x0bff */ - 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, /* 0x0a00-0x0a3f */ - 0x86, 0x39, 0x02, 0x00, 0x00, 0x00, 0x23, 0x00, /* 0x0a40-0x0a7f */ - 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, /* 0x0a80-0x0abf */ - 0xbe, 0x21, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, /* 0x0ac0-0x0aff */ - 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, /* 0x0b00-0x0b3f */ - 0x1e, 0x20, 0x40, 0x00, 0x0c, 0x00, 0x00, 0x00, /* 0x0b40-0x0b7f */ - 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0b80-0x0bbf */ - 0x01, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0bc0-0x0bff */ - /* 0x0c00-0x0dff */ - 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, /* 0x0c00-0x0c3f */ - 0xc1, 0x3d, 0x60, 0x00, 0x0c, 0x00, 0x00, 0x00, /* 0x0c40-0x0c7f */ - 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, /* 0x0c80-0x0cbf */ - 0x00, 0x30, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, /* 0x0cc0-0x0cff */ - 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0d00-0x0d3f */ - 0x1e, 0x20, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, /* 0x0d40-0x0d7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0d80-0x0dbf */ - 0x00, 0x04, 0x5c, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0dc0-0x0dff */ - /* 0x0e00-0x0fff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf2, 0x07, /* 0x0e00-0x0e3f */ - 0x80, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0e40-0x0e7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf2, 0x1b, /* 0x0e80-0x0ebf */ - 0x00, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0ec0-0x0eff */ - 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0xa0, 0x02, /* 0x0f00-0x0f3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x7f, /* 0x0f40-0x0f7f */ - 0xdf, 0xe0, 0xff, 0xfe, 0xff, 0xff, 0xff, 0x1f, /* 0x0f80-0x0fbf */ - 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0fc0-0x0fff */ - /* 0x1000-0x11ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfd, 0x66, /* 0x1000-0x103f */ - 0x00, 0x00, 0x00, 0xc3, 0x01, 0x00, 0x1e, 0x00, /* 0x1040-0x107f */ - 0x64, 0x20, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, /* 0x1080-0x10bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10c0-0x10ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1100-0x113f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1140-0x117f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1180-0x11bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11c0-0x11ff */ - /* 0x1200-0x13ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1200-0x123f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1240-0x127f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1280-0x12bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x12c0-0x12ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1300-0x133f */ - 0x00, 0x00, 0x00, 0xe0, 0x00, 0x00, 0x00, 0x00, /* 0x1340-0x137f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1380-0x13bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x13c0-0x13ff */ - /* 0x1600-0x17ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1600-0x163f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1640-0x167f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1680-0x16bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16c0-0x16ff */ - 0x00, 0x00, 0x1c, 0x00, 0x00, 0x00, 0x1c, 0x00, /* 0x1700-0x173f */ - 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x0c, 0x00, /* 0x1740-0x177f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0x3f, /* 0x1780-0x17bf */ - 0x40, 0xfe, 0x0f, 0x20, 0x00, 0x00, 0x00, 0x00, /* 0x17c0-0x17ff */ - /* 0x1800-0x19ff */ - 0x00, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1800-0x183f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1840-0x187f */ - 0x60, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, /* 0x1880-0x18bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18c0-0x18ff */ - 0x00, 0x00, 0x00, 0x00, 0x87, 0x01, 0x04, 0x0e, /* 0x1900-0x193f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1940-0x197f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1980-0x19bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x19c0-0x19ff */ - /* 0x1a00-0x1bff */ - 0x00, 0x00, 0x80, 0x09, 0x00, 0x00, 0x00, 0x00, /* 0x1a00-0x1a3f */ - 0x00, 0x00, 0x40, 0x7f, 0xe5, 0x1f, 0xf8, 0x9f, /* 0x1a40-0x1a7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x7f, /* 0x1a80-0x1abf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1ac0-0x1aff */ - 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x17, /* 0x1b00-0x1b3f */ - 0x04, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x0f, 0x00, /* 0x1b40-0x1b7f */ - 0x03, 0x00, 0x00, 0x00, 0x3c, 0x3b, 0x00, 0x00, /* 0x1b80-0x1bbf */ - 0x00, 0x00, 0x00, 0x00, 0x40, 0xa3, 0x03, 0x00, /* 0x1bc0-0x1bff */ - /* 0x1c00-0x1dff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xcf, 0x00, /* 0x1c00-0x1c3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1c40-0x1c7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1c80-0x1cbf */ - 0x00, 0x00, 0xf7, 0xff, 0xfd, 0x21, 0x10, 0x03, /* 0x1cc0-0x1cff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d00-0x1d3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d40-0x1d7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d80-0x1dbf */ - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0xf8, /* 0x1dc0-0x1dff */ - /* 0x2000-0x21ff */ - 0x00, 0xf8, 0x00, 0x00, 0x00, 0x7c, 0x00, 0x00, /* 0x2000-0x203f */ - 0x00, 0x00, 0x00, 0x00, 0xdf, 0xff, 0x00, 0x00, /* 0x2040-0x207f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x2080-0x20bf */ - 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x01, 0x00, /* 0x20c0-0x20ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x2100-0x213f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x2140-0x217f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x2180-0x21bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x21c0-0x21ff */ - /* 0x2c00-0x2dff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x2c00-0x2c3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x2c40-0x2c7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x2c80-0x2cbf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x03, 0x00, /* 0x2cc0-0x2cff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x2d00-0x2d3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, /* 0x2d40-0x2d7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x2d80-0x2dbf */ - 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, /* 0x2dc0-0x2dff */ - /* 0x3000-0x31ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x00, /* 0x3000-0x303f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x3040-0x307f */ - 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, /* 0x3080-0x30bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30c0-0x30ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x3100-0x313f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x3140-0x317f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x3180-0x31bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x31c0-0x31ff */ - /* 0xa600-0xa7ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa600-0xa63f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xf7, 0x3f, /* 0xa640-0xa67f */ - 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, /* 0xa680-0xa6bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, /* 0xa6c0-0xa6ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa700-0xa73f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa740-0xa77f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa780-0xa7bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa7c0-0xa7ff */ - /* 0xa800-0xa9ff */ - 0x44, 0x08, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, /* 0xa800-0xa83f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa840-0xa87f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa880-0xa8bf */ - 0x30, 0x00, 0x00, 0x00, 0xff, 0xff, 0x03, 0x00, /* 0xa8c0-0xa8ff */ - 0x00, 0x00, 0x00, 0x00, 0xc0, 0x3f, 0x00, 0x00, /* 0xa900-0xa93f */ - 0x80, 0xff, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa940-0xa97f */ - 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc8, 0x13, /* 0xa980-0xa9bf */ - 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, /* 0xa9c0-0xa9ff */ - /* 0xaa00-0xabff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x7e, 0x66, 0x00, /* 0xaa00-0xaa3f */ - 0x08, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, /* 0xaa40-0xaa7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9d, 0xc1, /* 0xaa80-0xaabf */ - 0x02, 0x00, 0x00, 0x00, 0x00, 0x30, 0x40, 0x00, /* 0xaac0-0xaaff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xab00-0xab3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xab40-0xab7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xab80-0xabbf */ - 0x00, 0x00, 0x00, 0x00, 0x20, 0x21, 0x00, 0x00, /* 0xabc0-0xabff */ - /* 0xfa00-0xfbff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xfa00-0xfa3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xfa40-0xfa7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xfa80-0xfabf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xfac0-0xfaff */ - 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, /* 0xfb00-0xfb3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xfb40-0xfb7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xfb80-0xfbbf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xfbc0-0xfbff */ - /* 0xfe00-0xffff */ - 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, /* 0xfe00-0xfe3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xfe40-0xfe7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xfe80-0xfebf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, /* 0xfec0-0xfeff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xff00-0xff3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xff40-0xff7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xff80-0xffbf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, /* 0xffc0-0xffff */ - /* 0x10000-0x101ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10000-0x1003f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10040-0x1007f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10080-0x100bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x100c0-0x100ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10100-0x1013f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10140-0x1017f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10180-0x101bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, /* 0x101c0-0x101ff */ - /* 0x10200-0x103ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10200-0x1023f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10240-0x1027f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10280-0x102bf */ - 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, /* 0x102c0-0x102ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10300-0x1033f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x07, /* 0x10340-0x1037f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10380-0x103bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x103c0-0x103ff */ - /* 0x10a00-0x10bff */ - 0x6e, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x87, /* 0x10a00-0x10a3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10a40-0x10a7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10a80-0x10abf */ - 0x00, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, /* 0x10ac0-0x10aff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10b00-0x10b3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10b40-0x10b7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10b80-0x10bbf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10bc0-0x10bff */ - /* 0x11000-0x111ff */ - 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, /* 0x11000-0x1103f */ - 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, /* 0x11040-0x1107f */ - 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x26, /* 0x11080-0x110bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x110c0-0x110ff */ - 0x07, 0x00, 0x00, 0x00, 0x80, 0xef, 0x1f, 0x00, /* 0x11100-0x1113f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, /* 0x11140-0x1117f */ - 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x7f, /* 0x11180-0x111bf */ - 0x00, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x111c0-0x111ff */ - /* 0x11200-0x113ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xd3, 0x40, /* 0x11200-0x1123f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11240-0x1127f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11280-0x112bf */ - 0x00, 0x00, 0x00, 0x80, 0xf8, 0x07, 0x00, 0x00, /* 0x112c0-0x112ff */ - 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, /* 0x11300-0x1133f */ - 0x01, 0x00, 0x00, 0x00, 0xc0, 0x1f, 0x1f, 0x00, /* 0x11340-0x1137f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11380-0x113bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x113c0-0x113ff */ - /* 0x11400-0x115ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, /* 0x11400-0x1143f */ - 0x5c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11440-0x1147f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x85, /* 0x11480-0x114bf */ - 0x0d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x114c0-0x114ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11500-0x1153f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11540-0x1157f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0xb0, /* 0x11580-0x115bf */ - 0x01, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, /* 0x115c0-0x115ff */ - /* 0x11600-0x117ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xa7, /* 0x11600-0x1163f */ - 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11640-0x1167f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0xbf, 0x00, /* 0x11680-0x116bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x116c0-0x116ff */ - 0x00, 0x00, 0x00, 0xe0, 0xbc, 0x0f, 0x00, 0x00, /* 0x11700-0x1173f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11740-0x1177f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11780-0x117bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x117c0-0x117ff */ - /* 0x11c00-0x11dff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x3f, /* 0x11c00-0x11c3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11c40-0x11c7f */ - 0x00, 0x00, 0xfc, 0xff, 0xff, 0xfc, 0x6d, 0x00, /* 0x11c80-0x11cbf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11cc0-0x11cff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11d00-0x11d3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11d40-0x11d7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11d80-0x11dbf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11dc0-0x11dff */ - /* 0x16a00-0x16bff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16a00-0x16a3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16a40-0x16a7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16a80-0x16abf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x00, /* 0x16ac0-0x16aff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x00, /* 0x16b00-0x16b3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16b40-0x16b7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16b80-0x16bbf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16bc0-0x16bff */ - /* 0x16e00-0x16fff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16e00-0x16e3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16e40-0x16e7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16e80-0x16ebf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16ec0-0x16eff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16f00-0x16f3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16f40-0x16f7f */ - 0x00, 0x80, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16f80-0x16fbf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16fc0-0x16fff */ - /* 0x1bc00-0x1bdff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1bc00-0x1bc3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1bc40-0x1bc7f */ - 0x00, 0x00, 0x00, 0x60, 0x0f, 0x00, 0x00, 0x00, /* 0x1bc80-0x1bcbf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1bcc0-0x1bcff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1bd00-0x1bd3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1bd40-0x1bd7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1bd80-0x1bdbf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1bdc0-0x1bdff */ - /* 0x1d000-0x1d1ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d000-0x1d03f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d040-0x1d07f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d080-0x1d0bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d0c0-0x1d0ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d100-0x1d13f */ - 0x00, 0x00, 0x00, 0x00, 0x80, 0x03, 0xf8, 0xff, /* 0x1d140-0x1d17f */ - 0xe7, 0x0f, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x00, /* 0x1d180-0x1d1bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d1c0-0x1d1ff */ - /* 0x1d200-0x1d3ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d200-0x1d23f */ - 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d240-0x1d27f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d280-0x1d2bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d2c0-0x1d2ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d300-0x1d33f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d340-0x1d37f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d380-0x1d3bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d3c0-0x1d3ff */ - /* 0x1da00-0x1dbff */ - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xf8, /* 0x1da00-0x1da3f */ - 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x20, 0x00, /* 0x1da40-0x1da7f */ - 0x10, 0x00, 0x00, 0xf8, 0xfe, 0xff, 0x00, 0x00, /* 0x1da80-0x1dabf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1dac0-0x1daff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1db00-0x1db3f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1db40-0x1db7f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1db80-0x1dbbf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1dbc0-0x1dbff */ - /* 0x1e000-0x1e1ff */ - 0x7f, 0xff, 0xff, 0xf9, 0xdb, 0x07, 0x00, 0x00, /* 0x1e000-0x1e03f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e040-0x1e07f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e080-0x1e0bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e0c0-0x1e0ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e100-0x1e13f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e140-0x1e17f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e180-0x1e1bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e1c0-0x1e1ff */ - /* 0x1e800-0x1e9ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e800-0x1e83f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e840-0x1e87f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e880-0x1e8bf */ - 0x00, 0x00, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e8c0-0x1e8ff */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e900-0x1e93f */ - 0xf0, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e940-0x1e97f */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e980-0x1e9bf */ - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 /* 0x1e9c0-0x1e9ff */ -}; -static const signed char nonspacing_table_ind[248] = { - 0, 1, 2, 3, 4, 5, 6, 7, /* 0x0000-0x0fff */ - 8, 9, -1, 10, 11, 12, 13, -1, /* 0x1000-0x1fff */ - 14, -1, -1, -1, -1, -1, 15, -1, /* 0x2000-0x2fff */ - 16, -1, -1, -1, -1, -1, -1, -1, /* 0x3000-0x3fff */ - -1, -1, -1, -1, -1, -1, -1, -1, /* 0x4000-0x4fff */ - -1, -1, -1, -1, -1, -1, -1, -1, /* 0x5000-0x5fff */ - -1, -1, -1, -1, -1, -1, -1, -1, /* 0x6000-0x6fff */ - -1, -1, -1, -1, -1, -1, -1, -1, /* 0x7000-0x7fff */ - -1, -1, -1, -1, -1, -1, -1, -1, /* 0x8000-0x8fff */ - -1, -1, -1, -1, -1, -1, -1, -1, /* 0x9000-0x9fff */ - -1, -1, -1, 17, 18, 19, -1, -1, /* 0xa000-0xafff */ - -1, -1, -1, -1, -1, -1, -1, -1, /* 0xb000-0xbfff */ - -1, -1, -1, -1, -1, -1, -1, -1, /* 0xc000-0xcfff */ - -1, -1, -1, -1, -1, -1, -1, -1, /* 0xd000-0xdfff */ - -1, -1, -1, -1, -1, -1, -1, -1, /* 0xe000-0xefff */ - -1, -1, -1, -1, -1, 20, -1, 21, /* 0xf000-0xffff */ - 22, 23, -1, -1, -1, 24, -1, -1, /* 0x10000-0x10fff */ - 25, 26, 27, 28, -1, -1, 29, -1, /* 0x11000-0x11fff */ - -1, -1, -1, -1, -1, -1, -1, -1, /* 0x12000-0x12fff */ - -1, -1, -1, -1, -1, -1, -1, -1, /* 0x13000-0x13fff */ - -1, -1, -1, -1, -1, -1, -1, -1, /* 0x14000-0x14fff */ - -1, -1, -1, -1, -1, -1, -1, -1, /* 0x15000-0x15fff */ - -1, -1, -1, -1, -1, 30, -1, 31, /* 0x16000-0x16fff */ - -1, -1, -1, -1, -1, -1, -1, -1, /* 0x17000-0x17fff */ - -1, -1, -1, -1, -1, -1, -1, -1, /* 0x18000-0x18fff */ - -1, -1, -1, -1, -1, -1, -1, -1, /* 0x19000-0x19fff */ - -1, -1, -1, -1, -1, -1, -1, -1, /* 0x1a000-0x1afff */ - -1, -1, -1, -1, -1, -1, 32, -1, /* 0x1b000-0x1bfff */ - -1, -1, -1, -1, -1, -1, -1, -1, /* 0x1c000-0x1cfff */ - 33, 34, -1, -1, -1, 35, -1, -1, /* 0x1d000-0x1dfff */ - 36, -1, -1, -1, 37, -1, -1, -1 /* 0x1e000-0x1efff */ -}; +#include "uniwidth/width0.h" + +#include "uniwidth/width2.h" +#include "unictype/bitmap.h" + +#define SIZEOF(a) (sizeof(a) / sizeof(a[0])) + /* Determine number of column positions required for UC. */ int uc_width (ucs4_t uc, const char *encoding) { /* Test for non-spacing or control character. */ - if ((uc >> 9) < 248) + if ((uc >> 9) < SIZEOF (nonspacing_table_ind)) { int ind = nonspacing_table_ind[uc >> 9]; if (ind >= 0) @@ -440,24 +83,8 @@ uc_width (ucs4_t uc, const char *encoding) return 0; } } - /* Test for double-width character. - * Generated from "grep '^[^;]\{4,5\};[WF]' EastAsianWidth.txt" - * and "grep '^[^;]\{4,5\};[^WF]' EastAsianWidth.txt" - */ - if (uc >= 0x1100 - && ((uc < 0x1160) /* Hangul Jamo */ - || (uc >= 0x2329 && uc < 0x232b) /* Angle Brackets */ - || (uc >= 0x2e80 && uc < 0xa4d0 /* CJK ... Yi */ - && !(uc == 0x303f) && !(uc >= 0x4dc0 && uc < 0x4e00)) - || (uc >= 0xac00 && uc < 0xd7a4) /* Hangul Syllables */ - || (uc >= 0xf900 && uc < 0xfb00) /* CJK Compatibility Ideographs */ - || (uc >= 0xfe10 && uc < 0xfe20) /* Presentation Forms for Vertical */ - || (uc >= 0xfe30 && uc < 0xfe70) /* CJK Compatibility Forms */ - || (uc >= 0xff00 && uc < 0xff61) /* Fullwidth Forms */ - || (uc >= 0xffe0 && uc < 0xffe7) /* Fullwidth Signs */ - || (uc >= 0x20000 && uc <= 0x2ffff) /* Supplementary Ideographic Plane */ - || (uc >= 0x30000 && uc <= 0x3ffff) /* Tertiary Ideographic Plane */ - ) ) + /* Test for double-width character. */ + if (bitmap_lookup (&u_width2, uc)) return 2; /* In ancient CJK encodings, Cyrillic and most other characters are double-width as well. */ diff --git a/lib/uniwidth/width0.h b/lib/uniwidth/width0.h new file mode 100644 index 0000000..0c1713a --- /dev/null +++ b/lib/uniwidth/width0.h @@ -0,0 +1,486 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Table of non-spacing or control characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 15.0.0. */ + +/* Copyright (C) 2000-2022 Free Software Foundation, Inc. + + This file is free software: you can redistribute it and/or modify + it under the terms of the GNU Lesser General Public License as + published by the Free Software Foundation; either version 2.1 of the + License, or (at your option) any later version. + + This file is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +static const unsigned char nonspacing_table_data[48*64] = { + /* 0x0000-0x01ff */ + 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, /* 0x0000-0x003f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, /* 0x0040-0x007f */ + 0xff, 0xff, 0xff, 0xff, 0x00, 0x20, 0x00, 0x00, /* 0x0080-0x00bf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x00c0-0x00ff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0100-0x013f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0140-0x017f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0180-0x01bf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x01c0-0x01ff */ + /* 0x0200-0x03ff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0200-0x023f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0240-0x027f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0280-0x02bf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x02c0-0x02ff */ + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, /* 0x0300-0x033f */ + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, /* 0x0340-0x037f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0380-0x03bf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x03c0-0x03ff */ + /* 0x0400-0x05ff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0400-0x043f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0440-0x047f */ + 0xf8, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0480-0x04bf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x04c0-0x04ff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0500-0x053f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0540-0x057f */ + 0x00, 0x00, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xbf, /* 0x0580-0x05bf */ + 0xb6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x05c0-0x05ff */ + /* 0x0600-0x07ff */ + 0x3f, 0x00, 0xff, 0x17, 0x00, 0x00, 0x00, 0x00, /* 0x0600-0x063f */ + 0x00, 0xf8, 0xff, 0xff, 0x00, 0x00, 0x01, 0x00, /* 0x0640-0x067f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0680-0x06bf */ + 0x00, 0x00, 0xc0, 0xbf, 0x9f, 0x3d, 0x00, 0x00, /* 0x06c0-0x06ff */ + 0x00, 0x80, 0x02, 0x00, 0x00, 0x00, 0xff, 0xff, /* 0x0700-0x073f */ + 0xff, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0740-0x077f */ + 0x00, 0x00, 0x00, 0x00, 0xc0, 0xff, 0x01, 0x00, /* 0x0780-0x07bf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x0f, 0x20, /* 0x07c0-0x07ff */ + /* 0x0800-0x09ff */ + 0x00, 0x00, 0xc0, 0xfb, 0xef, 0x3e, 0x00, 0x00, /* 0x0800-0x083f */ + 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x00, /* 0x0840-0x087f */ + 0x00, 0x00, 0x03, 0xff, 0x00, 0x00, 0x00, 0x00, /* 0x0880-0x08bf */ + 0x00, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, /* 0x08c0-0x08ff */ + 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, /* 0x0900-0x093f */ + 0xfe, 0x21, 0xfe, 0x00, 0x0c, 0x00, 0x00, 0x00, /* 0x0940-0x097f */ + 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, /* 0x0980-0x09bf */ + 0x1e, 0x20, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x40, /* 0x09c0-0x09ff */ + /* 0x0a00-0x0bff */ + 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, /* 0x0a00-0x0a3f */ + 0x86, 0x39, 0x02, 0x00, 0x00, 0x00, 0x23, 0x00, /* 0x0a40-0x0a7f */ + 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, /* 0x0a80-0x0abf */ + 0xbe, 0x21, 0x00, 0x00, 0x0c, 0x00, 0x00, 0xfc, /* 0x0ac0-0x0aff */ + 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, /* 0x0b00-0x0b3f */ + 0x1e, 0x20, 0x60, 0x00, 0x0c, 0x00, 0x00, 0x00, /* 0x0b40-0x0b7f */ + 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0b80-0x0bbf */ + 0x01, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0bc0-0x0bff */ + /* 0x0c00-0x0dff */ + 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, /* 0x0c00-0x0c3f */ + 0xc1, 0x3d, 0x60, 0x00, 0x0c, 0x00, 0x00, 0x00, /* 0x0c40-0x0c7f */ + 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, /* 0x0c80-0x0cbf */ + 0x00, 0x30, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, /* 0x0cc0-0x0cff */ + 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, /* 0x0d00-0x0d3f */ + 0x1e, 0x20, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, /* 0x0d40-0x0d7f */ + 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0d80-0x0dbf */ + 0x00, 0x04, 0x5c, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0dc0-0x0dff */ + /* 0x0e00-0x0fff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf2, 0x07, /* 0x0e00-0x0e3f */ + 0x80, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0e40-0x0e7f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf2, 0x1f, /* 0x0e80-0x0ebf */ + 0x00, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0ec0-0x0eff */ + 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0xa0, 0x02, /* 0x0f00-0x0f3f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x7f, /* 0x0f40-0x0f7f */ + 0xdf, 0xe0, 0xff, 0xfe, 0xff, 0xff, 0xff, 0x1f, /* 0x0f80-0x0fbf */ + 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0fc0-0x0fff */ + /* 0x1000-0x11ff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfd, 0x66, /* 0x1000-0x103f */ + 0x00, 0x00, 0x00, 0xc3, 0x01, 0x00, 0x1e, 0x00, /* 0x1040-0x107f */ + 0x64, 0x20, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, /* 0x1080-0x10bf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10c0-0x10ff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1100-0x113f */ + 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, /* 0x1140-0x117f */ + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, /* 0x1180-0x11bf */ + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, /* 0x11c0-0x11ff */ + /* 0x1200-0x13ff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1200-0x123f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1240-0x127f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1280-0x12bf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x12c0-0x12ff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1300-0x133f */ + 0x00, 0x00, 0x00, 0xe0, 0x00, 0x00, 0x00, 0x00, /* 0x1340-0x137f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1380-0x13bf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x13c0-0x13ff */ + /* 0x1600-0x17ff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1600-0x163f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1640-0x167f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1680-0x16bf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16c0-0x16ff */ + 0x00, 0x00, 0x1c, 0x00, 0x00, 0x00, 0x0c, 0x00, /* 0x1700-0x173f */ + 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x0c, 0x00, /* 0x1740-0x177f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0x3f, /* 0x1780-0x17bf */ + 0x40, 0xfe, 0x0f, 0x20, 0x00, 0x00, 0x00, 0x00, /* 0x17c0-0x17ff */ + /* 0x1800-0x19ff */ + 0x00, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1800-0x183f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1840-0x187f */ + 0x60, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, /* 0x1880-0x18bf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x18c0-0x18ff */ + 0x00, 0x00, 0x00, 0x00, 0x87, 0x01, 0x04, 0x0e, /* 0x1900-0x193f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1940-0x197f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1980-0x19bf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x19c0-0x19ff */ + /* 0x1a00-0x1bff */ + 0x00, 0x00, 0x80, 0x09, 0x00, 0x00, 0x00, 0x00, /* 0x1a00-0x1a3f */ + 0x00, 0x00, 0x40, 0x7f, 0xe5, 0x1f, 0xf8, 0x9f, /* 0x1a40-0x1a7f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, /* 0x1a80-0x1abf */ + 0xff, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1ac0-0x1aff */ + 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x17, /* 0x1b00-0x1b3f */ + 0x04, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x0f, 0x00, /* 0x1b40-0x1b7f */ + 0x03, 0x00, 0x00, 0x00, 0x3c, 0x3b, 0x00, 0x00, /* 0x1b80-0x1bbf */ + 0x00, 0x00, 0x00, 0x00, 0x40, 0xa3, 0x03, 0x00, /* 0x1bc0-0x1bff */ + /* 0x1c00-0x1dff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xcf, 0x00, /* 0x1c00-0x1c3f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1c40-0x1c7f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1c80-0x1cbf */ + 0x00, 0x00, 0xf7, 0xff, 0xfd, 0x21, 0x10, 0x03, /* 0x1cc0-0x1cff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d00-0x1d3f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d40-0x1d7f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d80-0x1dbf */ + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, /* 0x1dc0-0x1dff */ + /* 0x2000-0x21ff */ + 0x00, 0xf8, 0x00, 0x00, 0x00, 0x7c, 0x00, 0x00, /* 0x2000-0x203f */ + 0x00, 0x00, 0x00, 0x00, 0xdf, 0xff, 0x00, 0x00, /* 0x2040-0x207f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x2080-0x20bf */ + 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x01, 0x00, /* 0x20c0-0x20ff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x2100-0x213f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x2140-0x217f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x2180-0x21bf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x21c0-0x21ff */ + /* 0x2c00-0x2dff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x2c00-0x2c3f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x2c40-0x2c7f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x2c80-0x2cbf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x03, 0x00, /* 0x2cc0-0x2cff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x2d00-0x2d3f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, /* 0x2d40-0x2d7f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x2d80-0x2dbf */ + 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, /* 0x2dc0-0x2dff */ + /* 0x3000-0x31ff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x00, /* 0x3000-0x303f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x3040-0x307f */ + 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, /* 0x3080-0x30bf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x30c0-0x30ff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x3100-0x313f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x3140-0x317f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x3180-0x31bf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x31c0-0x31ff */ + /* 0xa600-0xa7ff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa600-0xa63f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xf7, 0x3f, /* 0xa640-0xa67f */ + 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, /* 0xa680-0xa6bf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, /* 0xa6c0-0xa6ff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa700-0xa73f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa740-0xa77f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa780-0xa7bf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa7c0-0xa7ff */ + /* 0xa800-0xa9ff */ + 0x44, 0x08, 0x00, 0x00, 0x60, 0x10, 0x00, 0x00, /* 0xa800-0xa83f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa840-0xa87f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa880-0xa8bf */ + 0x30, 0x00, 0x00, 0x00, 0xff, 0xff, 0x03, 0x80, /* 0xa8c0-0xa8ff */ + 0x00, 0x00, 0x00, 0x00, 0xc0, 0x3f, 0x00, 0x00, /* 0xa900-0xa93f */ + 0x80, 0xff, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa940-0xa97f */ + 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc8, 0x33, /* 0xa980-0xa9bf */ + 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, /* 0xa9c0-0xa9ff */ + /* 0xaa00-0xabff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x7e, 0x66, 0x00, /* 0xaa00-0xaa3f */ + 0x08, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, /* 0xaa40-0xaa7f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9d, 0xc1, /* 0xaa80-0xaabf */ + 0x02, 0x00, 0x00, 0x00, 0x00, 0x30, 0x40, 0x00, /* 0xaac0-0xaaff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xab00-0xab3f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xab40-0xab7f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xab80-0xabbf */ + 0x00, 0x00, 0x00, 0x00, 0x20, 0x21, 0x00, 0x00, /* 0xabc0-0xabff */ + /* 0xd600-0xd7ff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd600-0xd63f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd640-0xd67f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd680-0xd6bf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd6c0-0xd6ff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd700-0xd73f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xd740-0xd77f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, /* 0xd780-0xd7bf */ + 0x7f, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, /* 0xd7c0-0xd7ff */ + /* 0xfa00-0xfbff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xfa00-0xfa3f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xfa40-0xfa7f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xfa80-0xfabf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xfac0-0xfaff */ + 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, /* 0xfb00-0xfb3f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xfb40-0xfb7f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xfb80-0xfbbf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xfbc0-0xfbff */ + /* 0xfe00-0xffff */ + 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, /* 0xfe00-0xfe3f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xfe40-0xfe7f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xfe80-0xfebf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, /* 0xfec0-0xfeff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xff00-0xff3f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xff40-0xff7f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xff80-0xffbf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, /* 0xffc0-0xffff */ + /* 0x10000-0x101ff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10000-0x1003f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10040-0x1007f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10080-0x100bf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x100c0-0x100ff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10100-0x1013f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10140-0x1017f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10180-0x101bf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, /* 0x101c0-0x101ff */ + /* 0x10200-0x103ff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10200-0x1023f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10240-0x1027f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10280-0x102bf */ + 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, /* 0x102c0-0x102ff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10300-0x1033f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x07, /* 0x10340-0x1037f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10380-0x103bf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x103c0-0x103ff */ + /* 0x10a00-0x10bff */ + 0x6e, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x87, /* 0x10a00-0x10a3f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10a40-0x10a7f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10a80-0x10abf */ + 0x00, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, /* 0x10ac0-0x10aff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10b00-0x10b3f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10b40-0x10b7f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10b80-0x10bbf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10bc0-0x10bff */ + /* 0x10c00-0x10dff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10c00-0x10c3f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10c40-0x10c7f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10c80-0x10cbf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10cc0-0x10cff */ + 0x00, 0x00, 0x00, 0x00, 0xf0, 0x00, 0x00, 0x00, /* 0x10d00-0x10d3f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10d40-0x10d7f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10d80-0x10dbf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10dc0-0x10dff */ + /* 0x10e00-0x10fff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10e00-0x10e3f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10e40-0x10e7f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, /* 0x10e80-0x10ebf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, /* 0x10ec0-0x10eff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10f00-0x10f3f */ + 0xc0, 0xff, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10f40-0x10f7f */ + 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10f80-0x10fbf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10fc0-0x10fff */ + /* 0x11000-0x111ff */ + 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, /* 0x11000-0x1103f */ + 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x19, 0x80, /* 0x11040-0x1107f */ + 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x26, /* 0x11080-0x110bf */ + 0x04, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x110c0-0x110ff */ + 0x07, 0x00, 0x00, 0x00, 0x80, 0xef, 0x1f, 0x00, /* 0x11100-0x1113f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, /* 0x11140-0x1117f */ + 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x7f, /* 0x11180-0x111bf */ + 0x00, 0x9e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x111c0-0x111ff */ + /* 0x11200-0x113ff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xd3, 0x40, /* 0x11200-0x1123f */ + 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11240-0x1127f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11280-0x112bf */ + 0x00, 0x00, 0x00, 0x80, 0xf8, 0x07, 0x00, 0x00, /* 0x112c0-0x112ff */ + 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, /* 0x11300-0x1133f */ + 0x01, 0x00, 0x00, 0x00, 0xc0, 0x1f, 0x1f, 0x00, /* 0x11340-0x1137f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11380-0x113bf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x113c0-0x113ff */ + /* 0x11400-0x115ff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, /* 0x11400-0x1143f */ + 0x5c, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, /* 0x11440-0x1147f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x85, /* 0x11480-0x114bf */ + 0x0d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x114c0-0x114ff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11500-0x1153f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11540-0x1157f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0xb0, /* 0x11580-0x115bf */ + 0x01, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, /* 0x115c0-0x115ff */ + /* 0x11600-0x117ff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xa7, /* 0x11600-0x1163f */ + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11640-0x1167f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0xbf, 0x00, /* 0x11680-0x116bf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x116c0-0x116ff */ + 0x00, 0x00, 0x00, 0xe0, 0xbc, 0x0f, 0x00, 0x00, /* 0x11700-0x1173f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11740-0x1177f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11780-0x117bf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x117c0-0x117ff */ + /* 0x11800-0x119ff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xff, 0x06, /* 0x11800-0x1183f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11840-0x1187f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11880-0x118bf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x118c0-0x118ff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x58, /* 0x11900-0x1193f */ + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11940-0x1197f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11980-0x119bf */ + 0x00, 0x00, 0xf0, 0x0c, 0x01, 0x00, 0x00, 0x00, /* 0x119c0-0x119ff */ + /* 0x11a00-0x11bff */ + 0x7e, 0x06, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x79, /* 0x11a00-0x11a3f */ + 0x80, 0x00, 0x7e, 0x0e, 0x00, 0x00, 0x00, 0x00, /* 0x11a40-0x11a7f */ + 0x00, 0xfc, 0x7f, 0x03, 0x00, 0x00, 0x00, 0x00, /* 0x11a80-0x11abf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11ac0-0x11aff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11b00-0x11b3f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11b40-0x11b7f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11b80-0x11bbf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11bc0-0x11bff */ + /* 0x11c00-0x11dff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x3f, /* 0x11c00-0x11c3f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11c40-0x11c7f */ + 0x00, 0x00, 0xfc, 0xff, 0xff, 0xfc, 0x6d, 0x00, /* 0x11c80-0x11cbf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11cc0-0x11cff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7e, 0xb4, /* 0x11d00-0x11d3f */ + 0xbf, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11d40-0x11d7f */ + 0x00, 0x00, 0xa3, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11d80-0x11dbf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11dc0-0x11dff */ + /* 0x11e00-0x11fff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11e00-0x11e3f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11e40-0x11e7f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11e80-0x11ebf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, /* 0x11ec0-0x11eff */ + 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x07, /* 0x11f00-0x11f3f */ + 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11f40-0x11f7f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11f80-0x11fbf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11fc0-0x11fff */ + /* 0x13400-0x135ff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, /* 0x13400-0x1343f */ + 0x81, 0xff, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x13440-0x1347f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x13480-0x134bf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x134c0-0x134ff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x13500-0x1353f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x13540-0x1357f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x13580-0x135bf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x135c0-0x135ff */ + /* 0x16a00-0x16bff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16a00-0x16a3f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16a40-0x16a7f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16a80-0x16abf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x00, /* 0x16ac0-0x16aff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x00, /* 0x16b00-0x16b3f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16b40-0x16b7f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16b80-0x16bbf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16bc0-0x16bff */ + /* 0x16e00-0x16fff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16e00-0x16e3f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16e40-0x16e7f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16e80-0x16ebf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16ec0-0x16eff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16f00-0x16f3f */ + 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16f40-0x16f7f */ + 0x00, 0x80, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16f80-0x16fbf */ + 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, /* 0x16fc0-0x16fff */ + /* 0x1bc00-0x1bdff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1bc00-0x1bc3f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1bc40-0x1bc7f */ + 0x00, 0x00, 0x00, 0x60, 0x0f, 0x00, 0x00, 0x00, /* 0x1bc80-0x1bcbf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1bcc0-0x1bcff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1bd00-0x1bd3f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1bd40-0x1bd7f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1bd80-0x1bdbf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1bdc0-0x1bdff */ + /* 0x1ce00-0x1cfff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1ce00-0x1ce3f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1ce40-0x1ce7f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1ce80-0x1cebf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1cec0-0x1ceff */ + 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0xff, 0xff, /* 0x1cf00-0x1cf3f */ + 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1cf40-0x1cf7f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1cf80-0x1cfbf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1cfc0-0x1cfff */ + /* 0x1d000-0x1d1ff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d000-0x1d03f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d040-0x1d07f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d080-0x1d0bf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d0c0-0x1d0ff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d100-0x1d13f */ + 0x00, 0x00, 0x00, 0x00, 0x80, 0x03, 0xf8, 0xff, /* 0x1d140-0x1d17f */ + 0xe7, 0x0f, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x00, /* 0x1d180-0x1d1bf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d1c0-0x1d1ff */ + /* 0x1d200-0x1d3ff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d200-0x1d23f */ + 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d240-0x1d27f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d280-0x1d2bf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d2c0-0x1d2ff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d300-0x1d33f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d340-0x1d37f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d380-0x1d3bf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d3c0-0x1d3ff */ + /* 0x1da00-0x1dbff */ + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xf8, /* 0x1da00-0x1da3f */ + 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x20, 0x00, /* 0x1da40-0x1da7f */ + 0x10, 0x00, 0x00, 0xf8, 0xfe, 0xff, 0x00, 0x00, /* 0x1da80-0x1dabf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1dac0-0x1daff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1db00-0x1db3f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1db40-0x1db7f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1db80-0x1dbbf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1dbc0-0x1dbff */ + /* 0x1e000-0x1e1ff */ + 0x7f, 0xff, 0xff, 0xf9, 0xdb, 0x07, 0x00, 0x00, /* 0x1e000-0x1e03f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e040-0x1e07f */ + 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e080-0x1e0bf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e0c0-0x1e0ff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x00, /* 0x1e100-0x1e13f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e140-0x1e17f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e180-0x1e1bf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e1c0-0x1e1ff */ + /* 0x1e200-0x1e3ff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e200-0x1e23f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e240-0x1e27f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, /* 0x1e280-0x1e2bf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x00, 0x00, /* 0x1e2c0-0x1e2ff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e300-0x1e33f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e340-0x1e37f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e380-0x1e3bf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e3c0-0x1e3ff */ + /* 0x1e400-0x1e5ff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e400-0x1e43f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e440-0x1e47f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e480-0x1e4bf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x00, 0x00, /* 0x1e4c0-0x1e4ff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e500-0x1e53f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e540-0x1e57f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e580-0x1e5bf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e5c0-0x1e5ff */ + /* 0x1e800-0x1e9ff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e800-0x1e83f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e840-0x1e87f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e880-0x1e8bf */ + 0x00, 0x00, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e8c0-0x1e8ff */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e900-0x1e93f */ + 0xf0, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e940-0x1e97f */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e980-0x1e9bf */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 /* 0x1e9c0-0x1e9ff */ +}; +static const signed char nonspacing_table_ind[248] = { + 0, 1, 2, 3, 4, 5, 6, 7, /* 0x0000-0x0fff */ + 8, 9, -1, 10, 11, 12, 13, -1, /* 0x1000-0x1fff */ + 14, -1, -1, -1, -1, -1, 15, -1, /* 0x2000-0x2fff */ + 16, -1, -1, -1, -1, -1, -1, -1, /* 0x3000-0x3fff */ + -1, -1, -1, -1, -1, -1, -1, -1, /* 0x4000-0x4fff */ + -1, -1, -1, -1, -1, -1, -1, -1, /* 0x5000-0x5fff */ + -1, -1, -1, -1, -1, -1, -1, -1, /* 0x6000-0x6fff */ + -1, -1, -1, -1, -1, -1, -1, -1, /* 0x7000-0x7fff */ + -1, -1, -1, -1, -1, -1, -1, -1, /* 0x8000-0x8fff */ + -1, -1, -1, -1, -1, -1, -1, -1, /* 0x9000-0x9fff */ + -1, -1, -1, 17, 18, 19, -1, -1, /* 0xa000-0xafff */ + -1, -1, -1, -1, -1, -1, -1, -1, /* 0xb000-0xbfff */ + -1, -1, -1, -1, -1, -1, -1, -1, /* 0xc000-0xcfff */ + -1, -1, -1, 20, -1, -1, -1, -1, /* 0xd000-0xdfff */ + -1, -1, -1, -1, -1, -1, -1, -1, /* 0xe000-0xefff */ + -1, -1, -1, -1, -1, 21, -1, 22, /* 0xf000-0xffff */ + 23, 24, -1, -1, -1, 25, 26, 27, /* 0x10000-0x10fff */ + 28, 29, 30, 31, 32, 33, 34, 35, /* 0x11000-0x11fff */ + -1, -1, -1, -1, -1, -1, -1, -1, /* 0x12000-0x12fff */ + -1, -1, 36, -1, -1, -1, -1, -1, /* 0x13000-0x13fff */ + -1, -1, -1, -1, -1, -1, -1, -1, /* 0x14000-0x14fff */ + -1, -1, -1, -1, -1, -1, -1, -1, /* 0x15000-0x15fff */ + -1, -1, -1, -1, -1, 37, -1, 38, /* 0x16000-0x16fff */ + -1, -1, -1, -1, -1, -1, -1, -1, /* 0x17000-0x17fff */ + -1, -1, -1, -1, -1, -1, -1, -1, /* 0x18000-0x18fff */ + -1, -1, -1, -1, -1, -1, -1, -1, /* 0x19000-0x19fff */ + -1, -1, -1, -1, -1, -1, -1, -1, /* 0x1a000-0x1afff */ + -1, -1, -1, -1, -1, -1, 39, -1, /* 0x1b000-0x1bfff */ + -1, -1, -1, -1, -1, -1, -1, 40, /* 0x1c000-0x1cfff */ + 41, 42, -1, -1, -1, 43, -1, -1, /* 0x1d000-0x1dfff */ + 44, 45, 46, -1, 47, -1, -1, -1 /* 0x1e000-0x1efff */ +}; diff --git a/lib/uniwidth/width2.h b/lib/uniwidth/width2.h new file mode 100644 index 0000000..19c8c02 --- /dev/null +++ b/lib/uniwidth/width2.h @@ -0,0 +1,541 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Width 2 property of Unicode characters. */ +/* Generated automatically by gen-uni-tables.c for Unicode 15.0.0. */ + +/* Copyright (C) 2000-2022 Free Software Foundation, Inc. + + This file is free software: you can redistribute it and/or modify + it under the terms of the GNU Lesser General Public License as + published by the Free Software Foundation; either version 2.1 of the + License, or (at your option) any later version. + + This file is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[4]; + short level2[3 << 7]; + unsigned int level3[28 << 4]; + } +u_width2 = +{ + { 4 }, + { + 5 * sizeof (int) / sizeof (short) + 0, + 5 * sizeof (int) / sizeof (short) + 128, + 5 * sizeof (int) / sizeof (short) + 256, + 5 * sizeof (int) / sizeof (short) + 256 + }, + { + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 5 + 384 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 5 + 384 * sizeof (short) / sizeof (int) + 16, + 5 + 384 * sizeof (short) / sizeof (int) + 32, + 5 + 384 * sizeof (short) / sizeof (int) + 48, + -1, + 5 + 384 * sizeof (short) / sizeof (int) + 64, + -1, + 5 + 384 * sizeof (short) / sizeof (int) + 80, + 5 + 384 * sizeof (short) / sizeof (int) + 96, + 5 + 384 * sizeof (short) / sizeof (int) + 112, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 144, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 160, + -1, + 5 + 384 * sizeof (short) / sizeof (int) + 176, + -1, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 192, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 5 + 384 * sizeof (short) / sizeof (int) + 208, + 5 + 384 * sizeof (short) / sizeof (int) + 224, + -1, + 5 + 384 * sizeof (short) / sizeof (int) + 240, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 5 + 384 * sizeof (short) / sizeof (int) + 256, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 272, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 288, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 5 + 384 * sizeof (short) / sizeof (int) + 304, + 5 + 384 * sizeof (short) / sizeof (int) + 320, + 5 + 384 * sizeof (short) / sizeof (int) + 336, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 5 + 384 * sizeof (short) / sizeof (int) + 352, + 5 + 384 * sizeof (short) / sizeof (int) + 368, + 5 + 384 * sizeof (short) / sizeof (int) + 384, + 5 + 384 * sizeof (short) / sizeof (int) + 400, + 5 + 384 * sizeof (short) / sizeof (int) + 416, + 5 + 384 * sizeof (short) / sizeof (int) + 432, + -1, + -1, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128, + 5 + 384 * sizeof (short) / sizeof (int) + 128 + }, + { + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x0C000000U, 0x00000600U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00091E00U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x60000000U, + 0x00300000U, 0x00000000U, 0x000FFF00U, 0x80000000U, + 0x00080000U, 0x60000C02U, 0x00104030U, 0x242C0400U, + 0x00000C20U, 0x00000100U, 0x00B85000U, 0x00000000U, + 0x00E00000U, 0x80010000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x18000000U, 0x00000000U, 0x00210000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0x7FFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFF00FFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x0000FFFFU, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x1FFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0x0000000FU, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFF0000U, 0xFFFF0000U, 0xFFFFFFFFU, 0x0000FFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x00000001U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x0000007FU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x0003000FU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x00FFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x003FFFFFU, 0x00000000U, + 0x000001FFU, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x6FEF0000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0x00000007U, 0x00070000U, 0xFFFF00F0U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x0FFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000010U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00008000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x07FE4000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFBFE001U, 0xFFFFFFFFU, 0xDFFFFFFFU, + 0x000FFFFFU, 0xFFFFFFFFU, 0x000F87FFU, 0xFF11FFFFU, + 0xFFFFFFFFU, 0x7FFFFFFFU, 0xFFFFFFFDU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0x9FFFFFFFU, + 0xFFFFFFFFU, 0x3FFFFFFFU, 0xFFFF7800U, 0x040000FFU, + 0x00600000U, 0x00000010U, 0x00000000U, 0xF8000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0x0000FFFFU, 0x00000000U, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xE0E7103FU, 0x1FF01800U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00010FFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0xFFFFF000U, 0xF7FFFFFFU, 0xFFFFFFBFU, 0xFFFFFFFFU, + 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, 0xFFFFFFFFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x1F1F0000U, + 0xFFFF007FU, 0x07FF1FFFU, 0x03FF003FU, 0x007F00FFU, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U, + 0x00000000U, 0x00000000U, 0x00000000U, 0x00000000U + } +}; diff --git a/lib/unlocked-io.h b/lib/unlocked-io.h index ca184b3..4830df4 100644 --- a/lib/unlocked-io.h +++ b/lib/unlocked-io.h @@ -1,10 +1,10 @@ /* Prefer faster, non-thread-safe stdio functions if available. - Copyright (C) 2001-2004, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2001-2004, 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -31,6 +31,11 @@ the *_unlocked functions directly. On hosts that lack those functions, invoke the non-thread-safe versions instead. */ +/* This file uses HAVE_DECL_*_UNLOCKED. */ +# if !_GL_CONFIG_H_INCLUDED +# error "Please include config.h first." +# endif + # include # if HAVE_DECL_CLEARERR_UNLOCKED || defined clearerr_unlocked diff --git a/lib/unsetenv.c b/lib/unsetenv.c index b2e910e..e548949 100644 --- a/lib/unsetenv.c +++ b/lib/unsetenv.c @@ -1,4 +1,4 @@ -/* Copyright (C) 1992, 1995-2002, 2005-2021 Free Software Foundation, Inc. +/* Copyright (C) 1992, 1995-2002, 2005-2023 Free Software Foundation, Inc. This file is part of the GNU C Library. This file is free software: you can redistribute it and/or modify diff --git a/lib/vasprintf.c b/lib/vasprintf.c deleted file mode 100644 index fe8b14f..0000000 --- a/lib/vasprintf.c +++ /dev/null @@ -1,50 +0,0 @@ -/* Formatted output to strings. - Copyright (C) 1999, 2002, 2006-2021 Free Software Foundation, Inc. - - This file is free software: you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as - published by the Free Software Foundation; either version 2.1 of the - License, or (at your option) any later version. - - This file is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public License - along with this program. If not, see . */ - -#include - -/* Specification. */ -#ifdef IN_LIBASPRINTF -# include "vasprintf.h" -#else -# include -#endif - -#include -#include -#include - -#include "vasnprintf.h" - -int -vasprintf (char **resultp, const char *format, va_list args) -{ - size_t length; - char *result = vasnprintf (NULL, &length, format, args); - if (result == NULL) - return -1; - - if (length > INT_MAX) - { - free (result); - errno = EOVERFLOW; - return -1; - } - - *resultp = result; - /* Return the number of resulting bytes, excluding the trailing NUL. */ - return length; -} diff --git a/lib/verify.h b/lib/verify.h index a8ca59b..e4af915 100644 --- a/lib/verify.h +++ b/lib/verify.h @@ -1,6 +1,6 @@ /* Compile-time assert-like macros. - Copyright (C) 2005-2006, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2005-2006, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -25,19 +25,19 @@ works as per C11. This is supported by GCC 4.6.0+ and by clang 4+. Define _GL_HAVE__STATIC_ASSERT1 to 1 if _Static_assert (R) works as - per C2x. This is supported by GCC 9.1+. + per C23. This is supported by GCC 9.1+. Support compilers claiming conformance to the relevant standard, and also support GCC when not pedantic. If we were willing to slow 'configure' down we could also use it with other compilers, but since this affects only the quality of diagnostics, why bother? */ #ifndef __cplusplus -# if (201112L <= __STDC_VERSION__ \ +# if (201112 <= __STDC_VERSION__ \ || (!defined __STRICT_ANSI__ \ - && (4 < __GNUC__ + (6 <= __GNUC_MINOR__) || 4 <= __clang_major__))) + && (4 < __GNUC__ + (6 <= __GNUC_MINOR__) || 5 <= __clang_major__))) # define _GL_HAVE__STATIC_ASSERT 1 # endif -# if (202000L <= __STDC_VERSION__ \ +# if (202311 <= __STDC_VERSION__ \ || (!defined __STRICT_ANSI__ && 9 <= __GNUC__)) # define _GL_HAVE__STATIC_ASSERT1 1 # endif @@ -202,12 +202,12 @@ template This macro requires three or more arguments but uses at most the first two, so that the _Static_assert macro optionally defined below supports - both the C11 two-argument syntax and the C2x one-argument syntax. + both the C11 two-argument syntax and the C23 one-argument syntax. Unfortunately, unlike C11, this implementation must appear as an ordinary declaration, and cannot appear inside struct { ... }. */ -#if 200410 <= __cpp_static_assert +#if 202311 <= __STDC_VERSION__ || 200410 <= __cpp_static_assert # define _GL_VERIFY(R, DIAGNOSTIC, ...) static_assert (R, DIAGNOSTIC) #elif defined _GL_HAVE__STATIC_ASSERT # define _GL_VERIFY(R, DIAGNOSTIC, ...) _Static_assert (R, DIAGNOSTIC) @@ -215,22 +215,75 @@ template # define _GL_VERIFY(R, DIAGNOSTIC, ...) \ extern int (*_GL_GENSYM (_gl_verify_function) (void)) \ [_GL_VERIFY_TRUE (R, DIAGNOSTIC)] +# if 4 < __GNUC__ + (6 <= __GNUC_MINOR__) +# pragma GCC diagnostic ignored "-Wnested-externs" +# endif #endif /* _GL_STATIC_ASSERT_H is defined if this code is copied into assert.h. */ #ifdef _GL_STATIC_ASSERT_H -# if !defined _GL_HAVE__STATIC_ASSERT1 && !defined _Static_assert -# define _Static_assert(...) \ - _GL_VERIFY (__VA_ARGS__, "static assertion failed", -) +/* Define _Static_assert if needed. */ +/* With clang ≥ 3.8.0 in C++ mode, _Static_assert already works and accepts + 1 or 2 arguments. We better don't override it, because clang's standard + C++ library uses static_assert inside classes in several places, and our + replacement via _GL_VERIFY does not work in these contexts. */ +# if (defined __cplusplus && defined __clang__ \ + && (4 <= __clang_major__ + (8 <= __clang_minor__))) +# if 5 <= __clang_major__ +/* Avoid "warning: 'static_assert' with no message is a C++17 extension". */ +# pragma clang diagnostic ignored "-Wc++17-extensions" +# else +/* Avoid "warning: static_assert with no message is a C++1z extension". */ +# pragma clang diagnostic ignored "-Wc++1z-extensions" +# endif +# elif !defined _GL_HAVE__STATIC_ASSERT1 && !defined _Static_assert +# if !defined _MSC_VER || defined __clang__ +# define _Static_assert(...) \ + _GL_VERIFY (__VA_ARGS__, "static assertion failed", -) +# else +# if defined __cplusplus && _MSC_VER >= 1910 + /* In MSVC 14.1 or newer, static_assert accepts one or two arguments, + but _Static_assert is not defined. */ +# define _Static_assert static_assert +# else + /* Work around MSVC preprocessor incompatibility with ISO C; see + . */ +# define _Static_assert(R, ...) \ + _GL_VERIFY ((R), "static assertion failed", -) +# endif +# endif # endif -# if __cpp_static_assert < 201411 && !defined static_assert -# define static_assert _Static_assert /* C11 requires this #define. */ +/* Define static_assert if needed. */ +# if (!defined static_assert \ + && __STDC_VERSION__ < 202311 \ + && (!defined __cplusplus \ + || (__cpp_static_assert < 201411 \ + && __GNUG__ < 6 && __clang_major__ < 6 && _MSC_VER < 1910))) +# if defined __cplusplus && _MSC_VER >= 1900 && !defined __clang__ +/* MSVC 14 in C++ mode supports the two-arguments static_assert but not + the one-argument static_assert, and it does not support _Static_assert. + We have to play preprocessor tricks to distinguish the two cases. + Since the MSVC preprocessor is not ISO C compliant (see above),. + the solution is specific to MSVC. */ +# define _GL_EXPAND(x) x +# define _GL_SA1(a1) static_assert ((a1), "static assertion failed") +# define _GL_SA2 static_assert +# define _GL_SA3 static_assert +# define _GL_SA_PICK(x1,x2,x3,x4,...) x4 +# define static_assert(...) _GL_EXPAND(_GL_SA_PICK(__VA_ARGS__,_GL_SA3,_GL_SA2,_GL_SA1)) (__VA_ARGS__) +/* Avoid "fatal error C1189: #error: The C++ Standard Library forbids macroizing keywords." */ +# define _ALLOW_KEYWORD_MACROS 1 +# else +# define static_assert _Static_assert /* C11 requires this #define. */ +# endif # endif #endif /* @assert.h omit start@ */ -#if 3 < __GNUC__ + (3 < __GNUC_MINOR__ + (4 <= __GNUC_PATCHLEVEL__)) +#if defined __clang_major__ && __clang_major__ < 5 +# define _GL_HAS_BUILTIN_TRAP 0 +#elif 3 < __GNUC__ + (3 < __GNUC_MINOR__ + (4 <= __GNUC_PATCHLEVEL__)) # define _GL_HAS_BUILTIN_TRAP 1 #elif defined __has_builtin # define _GL_HAS_BUILTIN_TRAP __has_builtin (__builtin_trap) @@ -238,12 +291,16 @@ template # define _GL_HAS_BUILTIN_TRAP 0 #endif -#if 4 < __GNUC__ + (5 <= __GNUC_MINOR__) -# define _GL_HAS_BUILTIN_UNREACHABLE 1 -#elif defined __has_builtin -# define _GL_HAS_BUILTIN_UNREACHABLE __has_builtin (__builtin_unreachable) -#else -# define _GL_HAS_BUILTIN_UNREACHABLE 0 +#ifndef _GL_HAS_BUILTIN_UNREACHABLE +# if defined __clang_major__ && __clang_major__ < 5 +# define _GL_HAS_BUILTIN_UNREACHABLE 0 +# elif 4 < __GNUC__ + (5 <= __GNUC_MINOR__) +# define _GL_HAS_BUILTIN_UNREACHABLE 1 +# elif defined __has_builtin +# define _GL_HAS_BUILTIN_UNREACHABLE __has_builtin (__builtin_unreachable) +# else +# define _GL_HAS_BUILTIN_UNREACHABLE 0 +# endif #endif /* Each of these macros verifies that its argument R is nonzero. To @@ -300,13 +357,16 @@ template # define assume(R) ((R) ? (void) 0 : __builtin_unreachable ()) #elif 1200 <= _MSC_VER # define assume(R) __assume (R) +#elif 202311 <= __STDC_VERSION__ +# include +# define assume(R) ((R) ? (void) 0 : unreachable ()) #elif (defined GCC_LINT || defined lint) && _GL_HAS_BUILTIN_TRAP /* Doing it this way helps various packages when configured with --enable-gcc-warnings, which compiles with -Dlint. It's nicer - when 'assume' silences warnings even with older GCCs. */ + if 'assume' silences warnings with GCC 3.4 through GCC 4.4.7 (2012). */ # define assume(R) ((R) ? (void) 0 : __builtin_trap ()) #else - /* Some tools grok NOTREACHED, e.g., Oracle Studio 12.6. */ + /* Some older tools grok NOTREACHED, e.g., Oracle Studio 12.6 (2017). */ # define assume(R) ((R) ? (void) 0 : /*NOTREACHED*/ (void) 0) #endif diff --git a/lib/version-etc-fsf.c b/lib/version-etc-fsf.c index e27ab14..a34996d 100644 --- a/lib/version-etc-fsf.c +++ b/lib/version-etc-fsf.c @@ -1,9 +1,9 @@ /* Variable with FSF copyright information, for version-etc. - Copyright (C) 1999-2006, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 1999-2006, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as - published by the Free Software Foundation; either version 3 of the + published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This file is distributed in the hope that it will be useful, diff --git a/lib/version-etc.c b/lib/version-etc.c index ce4ef45..8e3b573 100644 --- a/lib/version-etc.c +++ b/lib/version-etc.c @@ -1,9 +1,9 @@ /* Print --version and bug-reporting information in a consistent format. - Copyright (C) 1999-2021 Free Software Foundation, Inc. + Copyright (C) 1999-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as - published by the Free Software Foundation; either version 3 of the + published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This file is distributed in the hope that it will be useful, @@ -37,7 +37,7 @@ # define PACKAGE PACKAGE_TARNAME #endif -enum { COPYRIGHT_YEAR = 2021 }; +enum { COPYRIGHT_YEAR = 2023 }; /* The three functions below display the --version information the standard way. diff --git a/lib/version-etc.h b/lib/version-etc.h index 3f04732..2313d98 100644 --- a/lib/version-etc.h +++ b/lib/version-etc.h @@ -1,9 +1,9 @@ /* Print --version and bug-reporting information in a consistent format. - Copyright (C) 1999, 2003, 2005, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 1999, 2003, 2005, 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as - published by the Free Software Foundation; either version 3 of the + published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This file is distributed in the hope that it will be useful, @@ -19,9 +19,19 @@ #ifndef VERSION_ETC_H # define VERSION_ETC_H 1 +/* This file uses _GL_ATTRIBUTE_SENTINEL. */ +# if !_GL_CONFIG_H_INCLUDED +# error "Please include config.h first." +# endif + # include # include +# ifdef __cplusplus +extern "C" +{ +# endif + extern const char version_etc_copyright[]; /* The three functions below display the --version information in the @@ -66,4 +76,8 @@ extern void version_etc (FILE *stream, /* Display the usual "Report bugs to" stanza. */ extern void emit_bug_reporting_address (void); +# ifdef __cplusplus +} +# endif + #endif /* VERSION_ETC_H */ diff --git a/lib/warn-on-use.h b/lib/warn-on-use.h index 612937a..3075603 100644 --- a/lib/warn-on-use.h +++ b/lib/warn-on-use.h @@ -1,5 +1,5 @@ /* A C macro for emitting warnings if a function is used. - Copyright (C) 2010-2021 Free Software Foundation, Inc. + Copyright (C) 2010-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published @@ -84,20 +84,20 @@ # if 4 < __GNUC__ || (__GNUC__ == 4 && 3 <= __GNUC_MINOR__) /* A compiler attribute is available in gcc versions 4.3.0 and later. */ # define _GL_WARN_ON_USE(function, message) \ -extern __typeof__ (function) function __attribute__ ((__warning__ (message))) +_GL_WARN_EXTERN_C __typeof__ (function) function __attribute__ ((__warning__ (message))) # define _GL_WARN_ON_USE_ATTRIBUTE(message) \ __attribute__ ((__warning__ (message))) # elif __clang_major__ >= 4 /* Another compiler attribute is available in clang. */ # define _GL_WARN_ON_USE(function, message) \ -extern __typeof__ (function) function \ +_GL_WARN_EXTERN_C __typeof__ (function) function \ __attribute__ ((__diagnose_if__ (1, message, "warning"))) # define _GL_WARN_ON_USE_ATTRIBUTE(message) \ __attribute__ ((__diagnose_if__ (1, message, "warning"))) # elif __GNUC__ >= 3 && GNULIB_STRICT_CHECKING /* Verify the existence of the function. */ # define _GL_WARN_ON_USE(function, message) \ -extern __typeof__ (function) function +_GL_WARN_EXTERN_C __typeof__ (function) function # define _GL_WARN_ON_USE_ATTRIBUTE(message) # else /* Unsupported. */ # define _GL_WARN_ON_USE(function, message) \ diff --git a/lib/wchar.in.h b/lib/wchar.in.h index 919a5a3..69fa2f8 100644 --- a/lib/wchar.in.h +++ b/lib/wchar.in.h @@ -1,6 +1,6 @@ /* A substitute for ISO C99 , for platforms that have issues. - Copyright (C) 2007-2021 Free Software Foundation, Inc. + Copyright (C) 2007-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -84,6 +84,48 @@ #ifndef _@GUARD_PREFIX@_WCHAR_H #define _@GUARD_PREFIX@_WCHAR_H +/* This file uses _GL_ATTRIBUTE_DEALLOC, _GL_ATTRIBUTE_MALLOC, + _GL_ATTRIBUTE_PURE, GNULIB_POSIXCHECK, HAVE_RAW_DECL_*. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + +/* _GL_ATTRIBUTE_DEALLOC (F, I) declares that the function returns pointers + that can be freed by passing them as the Ith argument to the + function F. */ +#ifndef _GL_ATTRIBUTE_DEALLOC +# if __GNUC__ >= 11 +# define _GL_ATTRIBUTE_DEALLOC(f, i) __attribute__ ((__malloc__ (f, i))) +# else +# define _GL_ATTRIBUTE_DEALLOC(f, i) +# endif +#endif + +/* _GL_ATTRIBUTE_DEALLOC_FREE declares that the function returns pointers that + can be freed via 'free'; it can be used only after declaring 'free'. */ +/* Applies to: functions. Cannot be used on inline functions. */ +#ifndef _GL_ATTRIBUTE_DEALLOC_FREE +# if defined __cplusplus && defined __GNUC__ && !defined __clang__ +/* Work around GCC bug */ +# define _GL_ATTRIBUTE_DEALLOC_FREE \ + _GL_ATTRIBUTE_DEALLOC ((void (*) (void *)) free, 1) +# else +# define _GL_ATTRIBUTE_DEALLOC_FREE \ + _GL_ATTRIBUTE_DEALLOC (free, 1) +# endif +#endif + +/* _GL_ATTRIBUTE_MALLOC declares that the function returns a pointer to freshly + allocated memory. */ +/* Applies to: functions. */ +#ifndef _GL_ATTRIBUTE_MALLOC +# if __GNUC__ >= 3 || defined __clang__ +# define _GL_ATTRIBUTE_MALLOC __attribute__ ((__malloc__)) +# else +# define _GL_ATTRIBUTE_MALLOC +# endif +#endif + /* The __attribute__ feature is available in gcc versions 2.5 and later. The attribute __pure__ was added in gcc 2.96. */ #ifndef _GL_ATTRIBUTE_PURE @@ -146,6 +188,49 @@ typedef int rpl_mbstate_t; # endif #endif +/* Make _GL_ATTRIBUTE_DEALLOC_FREE work, even though may not have + been included yet. */ +#if @GNULIB_FREE_POSIX@ +# if (@REPLACE_FREE@ && !defined free \ + && !(defined __cplusplus && defined GNULIB_NAMESPACE)) +/* We can't do '#define free rpl_free' here. */ +# if defined __cplusplus && (__GLIBC__ + (__GLIBC_MINOR__ >= 14) > 2) +_GL_EXTERN_C void rpl_free (void *) throw (); +# else +_GL_EXTERN_C void rpl_free (void *); +# endif +# undef _GL_ATTRIBUTE_DEALLOC_FREE +# define _GL_ATTRIBUTE_DEALLOC_FREE _GL_ATTRIBUTE_DEALLOC (rpl_free, 1) +# else +# if defined _MSC_VER && !defined free +_GL_EXTERN_C +# if defined _DLL + __declspec (dllimport) +# endif + void __cdecl free (void *); +# else +# if defined __cplusplus && (__GLIBC__ + (__GLIBC_MINOR__ >= 14) > 2) +_GL_EXTERN_C void free (void *) throw (); +# else +_GL_EXTERN_C void free (void *); +# endif +# endif +# endif +#else +# if defined _MSC_VER && !defined free +_GL_EXTERN_C +# if defined _DLL + __declspec (dllimport) +# endif + void __cdecl free (void *); +# else +# if defined __cplusplus && (__GLIBC__ + (__GLIBC_MINOR__ >= 14) > 2) +_GL_EXTERN_C void free (void *) throw (); +# else +_GL_EXTERN_C void free (void *); +# endif +# endif +#endif /* Convert a single-byte character to a wide character. */ #if @GNULIB_BTOWC@ @@ -366,7 +451,9 @@ _GL_CXXALIAS_SYS (mbsnrtowcs, size_t, const char **restrict srcp, size_t srclen, size_t len, mbstate_t *restrict ps)); # endif +# if __GLIBC__ >= 2 _GL_CXXALIASWARN (mbsnrtowcs); +# endif #elif defined GNULIB_POSIXCHECK # undef mbsnrtowcs # if HAVE_RAW_DECL_MBSNRTOWCS @@ -554,13 +641,25 @@ _GL_WARN_ON_USE (wmemchr, "wmemchr is unportable - " /* Compare N wide characters of S1 and S2. */ #if @GNULIB_WMEMCMP@ -# if !@HAVE_WMEMCMP@ +# if @REPLACE_WMEMCMP@ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef wmemcmp +# define wmemcmp rpl_wmemcmp +# endif +_GL_FUNCDECL_RPL (wmemcmp, int, + (const wchar_t *s1, const wchar_t *s2, size_t n) + _GL_ATTRIBUTE_PURE); +_GL_CXXALIAS_RPL (wmemcmp, int, + (const wchar_t *s1, const wchar_t *s2, size_t n)); +# else +# if !@HAVE_WMEMCMP@ _GL_FUNCDECL_SYS (wmemcmp, int, (const wchar_t *s1, const wchar_t *s2, size_t n) _GL_ATTRIBUTE_PURE); -# endif +# endif _GL_CXXALIAS_SYS (wmemcmp, int, (const wchar_t *s1, const wchar_t *s2, size_t n)); +# endif # if __GLIBC__ >= 2 _GL_CXXALIASWARN (wmemcmp); # endif @@ -619,14 +718,27 @@ _GL_WARN_ON_USE (wmemmove, "wmemmove is unportable - " /* Copy N wide characters of SRC to DEST. Return pointer to wide characters after the last written wide character. */ #if @GNULIB_WMEMPCPY@ -# if !@HAVE_WMEMPCPY@ +# if @REPLACE_WMEMPCPY@ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef wmempcpy +# define wmempcpy rpl_wmempcpy +# endif +_GL_FUNCDECL_RPL (wmempcpy, wchar_t *, + (wchar_t *restrict dest, + const wchar_t *restrict src, size_t n)); +_GL_CXXALIAS_RPL (wmempcpy, wchar_t *, + (wchar_t *restrict dest, + const wchar_t *restrict src, size_t n)); +# else +# if !@HAVE_WMEMPCPY@ _GL_FUNCDECL_SYS (wmempcpy, wchar_t *, (wchar_t *restrict dest, const wchar_t *restrict src, size_t n)); -# endif +# endif _GL_CXXALIAS_SYS (wmempcpy, wchar_t *, (wchar_t *restrict dest, const wchar_t *restrict src, size_t n)); +# endif # if __GLIBC__ >= 2 _GL_CXXALIASWARN (wmempcpy); # endif @@ -677,7 +789,10 @@ _GL_WARN_ON_USE (wcslen, "wcslen is unportable - " /* Return the number of wide characters in S, but at most MAXLEN. */ #if @GNULIB_WCSNLEN@ -# if !@HAVE_WCSNLEN@ +/* On Solaris 11.3, the header files declare the function in the std:: + namespace, not in the global namespace. So, force a declaration in + the global namespace. */ +# if !@HAVE_WCSNLEN@ || (defined __sun && defined __cplusplus) _GL_FUNCDECL_SYS (wcsnlen, size_t, (const wchar_t *s, size_t maxlen) _GL_ATTRIBUTE_PURE); # endif @@ -714,7 +829,10 @@ _GL_WARN_ON_USE (wcscpy, "wcscpy is unportable - " /* Copy SRC to DEST, returning the address of the terminating L'\0' in DEST. */ #if @GNULIB_WCPCPY@ -# if !@HAVE_WCPCPY@ +/* On Solaris 11.3, the header files declare the function in the std:: + namespace, not in the global namespace. So, force a declaration in + the global namespace. */ +# if !@HAVE_WCPCPY@ || (defined __sun && defined __cplusplus) _GL_FUNCDECL_SYS (wcpcpy, wchar_t *, (wchar_t *restrict dest, const wchar_t *restrict src)); # endif @@ -755,7 +873,10 @@ _GL_WARN_ON_USE (wcsncpy, "wcsncpy is unportable - " /* Copy no more than N characters of SRC to DEST, returning the address of the last character written into DEST. */ #if @GNULIB_WCPNCPY@ -# if !@HAVE_WCPNCPY@ +/* On Solaris 11.3, the header files declare the function in the std:: + namespace, not in the global namespace. So, force a declaration in + the global namespace. */ +# if !@HAVE_WCPNCPY@ || (defined __sun && defined __cplusplus) _GL_FUNCDECL_SYS (wcpncpy, wchar_t *, (wchar_t *restrict dest, const wchar_t *restrict src, size_t n)); @@ -817,11 +938,21 @@ _GL_WARN_ON_USE (wcsncat, "wcsncat is unportable - " /* Compare S1 and S2. */ #if @GNULIB_WCSCMP@ -# if !@HAVE_WCSCMP@ +# if @REPLACE_WCSCMP@ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef wcscmp +# define wcscmp rpl_wcscmp +# endif +_GL_FUNCDECL_RPL (wcscmp, int, (const wchar_t *s1, const wchar_t *s2) + _GL_ATTRIBUTE_PURE); +_GL_CXXALIAS_RPL (wcscmp, int, (const wchar_t *s1, const wchar_t *s2)); +# else +# if !@HAVE_WCSCMP@ _GL_FUNCDECL_SYS (wcscmp, int, (const wchar_t *s1, const wchar_t *s2) _GL_ATTRIBUTE_PURE); -# endif +# endif _GL_CXXALIAS_SYS (wcscmp, int, (const wchar_t *s1, const wchar_t *s2)); +# endif # if __GLIBC__ >= 2 _GL_CXXALIASWARN (wcscmp); # endif @@ -836,13 +967,25 @@ _GL_WARN_ON_USE (wcscmp, "wcscmp is unportable - " /* Compare no more than N wide characters of S1 and S2. */ #if @GNULIB_WCSNCMP@ -# if !@HAVE_WCSNCMP@ +# if @REPLACE_WCSNCMP@ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef wcsncmp +# define wcsncmp rpl_wcsncmp +# endif +_GL_FUNCDECL_RPL (wcsncmp, int, + (const wchar_t *s1, const wchar_t *s2, size_t n) + _GL_ATTRIBUTE_PURE); +_GL_CXXALIAS_RPL (wcsncmp, int, + (const wchar_t *s1, const wchar_t *s2, size_t n)); +# else +# if !@HAVE_WCSNCMP@ _GL_FUNCDECL_SYS (wcsncmp, int, (const wchar_t *s1, const wchar_t *s2, size_t n) _GL_ATTRIBUTE_PURE); -# endif +# endif _GL_CXXALIAS_SYS (wcsncmp, int, (const wchar_t *s1, const wchar_t *s2, size_t n)); +# endif # if __GLIBC__ >= 2 _GL_CXXALIASWARN (wcsncmp); # endif @@ -857,7 +1000,10 @@ _GL_WARN_ON_USE (wcsncmp, "wcsncmp is unportable - " /* Compare S1 and S2, ignoring case. */ #if @GNULIB_WCSCASECMP@ -# if !@HAVE_WCSCASECMP@ +/* On Solaris 11.3, the header files declare the function in the std:: + namespace, not in the global namespace. So, force a declaration in + the global namespace. */ +# if !@HAVE_WCSCASECMP@ || (defined __sun && defined __cplusplus) _GL_FUNCDECL_SYS (wcscasecmp, int, (const wchar_t *s1, const wchar_t *s2) _GL_ATTRIBUTE_PURE); # endif @@ -874,7 +1020,10 @@ _GL_WARN_ON_USE (wcscasecmp, "wcscasecmp is unportable - " /* Compare no more than N chars of S1 and S2, ignoring case. */ #if @GNULIB_WCSNCASECMP@ -# if !@HAVE_WCSNCASECMP@ +/* On Solaris 11.3, the header files declare the function in the std:: + namespace, not in the global namespace. So, force a declaration in + the global namespace. */ +# if !@HAVE_WCSNCASECMP@ || (defined __sun && defined __cplusplus) _GL_FUNCDECL_SYS (wcsncasecmp, int, (const wchar_t *s1, const wchar_t *s2, size_t n) _GL_ATTRIBUTE_PURE); @@ -941,36 +1090,51 @@ _GL_WARN_ON_USE (wcsxfrm, "wcsxfrm is unportable - " # endif _GL_CXXALIAS_MDA (wcsdup, wchar_t *, (const wchar_t *s)); # else -# if !@HAVE_WCSDUP@ -_GL_FUNCDECL_SYS (wcsdup, wchar_t *, (const wchar_t *s)); +/* On Solaris 11.3, the header files declare the function in the std:: + namespace, not in the global namespace. So, force a declaration in + the global namespace. */ +# if !@HAVE_WCSDUP@ || (defined __sun && defined __cplusplus) || __GNUC__ >= 11 +_GL_FUNCDECL_SYS (wcsdup, wchar_t *, + (const wchar_t *s) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE); # endif _GL_CXXALIAS_SYS (wcsdup, wchar_t *, (const wchar_t *s)); # endif _GL_CXXALIASWARN (wcsdup); -#elif defined GNULIB_POSIXCHECK -# undef wcsdup -# if HAVE_RAW_DECL_WCSDUP +#else +# if __GNUC__ >= 11 && !defined wcsdup +/* For -Wmismatched-dealloc: Associate wcsdup with free or rpl_free. */ +_GL_FUNCDECL_SYS (wcsdup, wchar_t *, + (const wchar_t *s) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE); +# endif +# if defined GNULIB_POSIXCHECK +# undef wcsdup +# if HAVE_RAW_DECL_WCSDUP _GL_WARN_ON_USE (wcsdup, "wcsdup is unportable - " "use gnulib module wcsdup for portability"); -# endif -#elif @GNULIB_MDA_WCSDUP@ +# endif +# elif @GNULIB_MDA_WCSDUP@ /* On native Windows, map 'wcsdup' to '_wcsdup', so that -loldnames is not required. In C++ with GNULIB_NAMESPACE, avoid differences between platforms by defining GNULIB_NAMESPACE::wcsdup always. */ -# if defined _WIN32 && !defined __CYGWIN__ -# if !(defined __cplusplus && defined GNULIB_NAMESPACE) -# undef wcsdup -# define wcsdup _wcsdup -# endif +# if defined _WIN32 && !defined __CYGWIN__ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef wcsdup +# define wcsdup _wcsdup +# endif _GL_CXXALIAS_MDA (wcsdup, wchar_t *, (const wchar_t *s)); -# else -_GL_FUNCDECL_SYS (wcsdup, wchar_t *, (const wchar_t *s)); -# if @HAVE_DECL_WCSDUP@ +# else +_GL_FUNCDECL_SYS (wcsdup, wchar_t *, + (const wchar_t *s) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE); +# if @HAVE_DECL_WCSDUP@ _GL_CXXALIAS_SYS (wcsdup, wchar_t *, (const wchar_t *s)); +# endif # endif -# endif -# if (defined _WIN32 && !defined __CYGWIN__) || @HAVE_DECL_WCSDUP@ +# if (defined _WIN32 && !defined __CYGWIN__) || @HAVE_DECL_WCSDUP@ _GL_CXXALIASWARN (wcsdup); +# endif # endif #endif @@ -1110,12 +1274,25 @@ _GL_WARN_ON_USE (wcspbrk, "wcspbrk is unportable - " /* Find the first occurrence of NEEDLE in HAYSTACK. */ #if @GNULIB_WCSSTR@ -# if !@HAVE_WCSSTR@ +# if @REPLACE_WCSSTR@ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef wcsstr +# define wcsstr rpl_wcsstr +# endif +_GL_FUNCDECL_RPL (wcsstr, wchar_t *, + (const wchar_t *restrict haystack, + const wchar_t *restrict needle) + _GL_ATTRIBUTE_PURE); +_GL_CXXALIAS_RPL (wcsstr, wchar_t *, + (const wchar_t *restrict haystack, + const wchar_t *restrict needle)); +# else +# if !@HAVE_WCSSTR@ _GL_FUNCDECL_SYS (wcsstr, wchar_t *, (const wchar_t *restrict haystack, const wchar_t *restrict needle) _GL_ATTRIBUTE_PURE); -# endif +# endif /* On some systems, this function is defined as an overloaded function: extern "C++" { const wchar_t * std::wcsstr (const wchar_t *, const wchar_t *); @@ -1126,6 +1303,7 @@ _GL_CXXALIAS_SYS_CAST2 (wcsstr, (const wchar_t *restrict, const wchar_t *restrict), const wchar_t *, (const wchar_t *restrict, const wchar_t *restrict)); +# endif # if ((__GLIBC__ == 2 && __GLIBC_MINOR__ >= 10) && !defined __UCLIBC__) \ && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4)) _GL_CXXALIASWARN1 (wcsstr, wchar_t *, diff --git a/lib/wcrtomb.c b/lib/wcrtomb.c index 5c9fd79..48a6c8e 100644 --- a/lib/wcrtomb.c +++ b/lib/wcrtomb.c @@ -1,5 +1,5 @@ /* Convert wide character to multibyte character. - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2008. This file is free software: you can redistribute it and/or modify diff --git a/lib/wctype-h.c b/lib/wctype-h.c index 150221d..7d3e14a 100644 --- a/lib/wctype-h.c +++ b/lib/wctype-h.c @@ -1,6 +1,6 @@ /* Inline functions for . - Copyright (C) 2012-2021 Free Software Foundation, Inc. + Copyright (C) 2012-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/wctype.in.h b/lib/wctype.in.h index 652d811..227fdac 100644 --- a/lib/wctype.in.h +++ b/lib/wctype.in.h @@ -1,6 +1,6 @@ /* A substitute for ISO C99 , for platforms that lack it. - Copyright (C) 2006-2021 Free Software Foundation, Inc. + Copyright (C) 2006-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -44,6 +44,12 @@ #ifndef _@GUARD_PREFIX@_WCTYPE_H +/* This file uses _GL_INLINE_HEADER_BEGIN, _GL_INLINE, GNULIB_POSIXCHECK, + HAVE_RAW_DECL_*. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + #if @HAVE_WINT_T@ /* Solaris 2.5 has a bug: must be included before . */ # include @@ -68,9 +74,6 @@ #ifndef _@GUARD_PREFIX@_WCTYPE_H #define _@GUARD_PREFIX@_WCTYPE_H -#ifndef _GL_INLINE_HEADER_BEGIN - #error "Please include config.h first." -#endif _GL_INLINE_HEADER_BEGIN #ifndef _GL_WCTYPE_INLINE # define _GL_WCTYPE_INLINE _GL_INLINE diff --git a/lib/wcwidth.c b/lib/wcwidth.c index 7f11211..1d03665 100644 --- a/lib/wcwidth.c +++ b/lib/wcwidth.c @@ -1,5 +1,5 @@ /* Determine the number of screen columns needed for a character. - Copyright (C) 2006-2007, 2010-2021 Free Software Foundation, Inc. + Copyright (C) 2006-2007, 2010-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/windows-initguard.h b/lib/windows-initguard.h index 7999b23..9d36f53 100644 --- a/lib/windows-initguard.h +++ b/lib/windows-initguard.h @@ -1,5 +1,5 @@ /* Init guards, somewhat like spinlocks (native Windows implementation). - Copyright (C) 2005-2021 Free Software Foundation, Inc. + Copyright (C) 2005-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/windows-mutex.c b/lib/windows-mutex.c index 2edfeaa..ab7258c 100644 --- a/lib/windows-mutex.c +++ b/lib/windows-mutex.c @@ -1,5 +1,5 @@ /* Plain mutexes (native Windows implementation). - Copyright (C) 2005-2021 Free Software Foundation, Inc. + Copyright (C) 2005-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/windows-mutex.h b/lib/windows-mutex.h index 5ecf9f8..039eb70 100644 --- a/lib/windows-mutex.h +++ b/lib/windows-mutex.h @@ -1,5 +1,5 @@ /* Plain mutexes (native Windows implementation). - Copyright (C) 2005-2021 Free Software Foundation, Inc. + Copyright (C) 2005-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/windows-once.c b/lib/windows-once.c index 8dcd37c..0d28281 100644 --- a/lib/windows-once.c +++ b/lib/windows-once.c @@ -1,5 +1,5 @@ /* Once-only control (native Windows implementation). - Copyright (C) 2005-2021 Free Software Foundation, Inc. + Copyright (C) 2005-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/windows-once.h b/lib/windows-once.h index 58632f9..5488568 100644 --- a/lib/windows-once.h +++ b/lib/windows-once.h @@ -1,5 +1,5 @@ /* Once-only control (native Windows implementation). - Copyright (C) 2005-2021 Free Software Foundation, Inc. + Copyright (C) 2005-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/windows-recmutex.c b/lib/windows-recmutex.c index cfc94b4..a8ce9a0 100644 --- a/lib/windows-recmutex.c +++ b/lib/windows-recmutex.c @@ -1,5 +1,5 @@ /* Plain recursive mutexes (native Windows implementation). - Copyright (C) 2005-2021 Free Software Foundation, Inc. + Copyright (C) 2005-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/windows-recmutex.h b/lib/windows-recmutex.h index 174fe73..08ff459 100644 --- a/lib/windows-recmutex.h +++ b/lib/windows-recmutex.h @@ -1,5 +1,5 @@ /* Plain recursive mutexes (native Windows implementation). - Copyright (C) 2005-2021 Free Software Foundation, Inc. + Copyright (C) 2005-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/windows-rwlock.c b/lib/windows-rwlock.c index d63936c..7cbd7bb 100644 --- a/lib/windows-rwlock.c +++ b/lib/windows-rwlock.c @@ -1,5 +1,5 @@ /* Read-write locks (native Windows implementation). - Copyright (C) 2005-2021 Free Software Foundation, Inc. + Copyright (C) 2005-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/windows-rwlock.h b/lib/windows-rwlock.h index 280c9f2..fe8381e 100644 --- a/lib/windows-rwlock.h +++ b/lib/windows-rwlock.h @@ -1,5 +1,5 @@ /* Read-write locks (native Windows implementation). - Copyright (C) 2005-2021 Free Software Foundation, Inc. + Copyright (C) 2005-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/wmemchr-impl.h b/lib/wmemchr-impl.h index 9cb4b20..96b9ad3 100644 --- a/lib/wmemchr-impl.h +++ b/lib/wmemchr-impl.h @@ -1,5 +1,5 @@ /* Search wide character array for a wide character. - Copyright (C) 1999, 2011-2021 Free Software Foundation, Inc. + Copyright (C) 1999, 2011-2023 Free Software Foundation, Inc. Written by Bruno Haible , 1999. This file is free software: you can redistribute it and/or modify diff --git a/lib/wmemchr.c b/lib/wmemchr.c index 78742e2..5d28247 100644 --- a/lib/wmemchr.c +++ b/lib/wmemchr.c @@ -1,5 +1,5 @@ /* Search wide character array for a wide character. - Copyright (C) 2011-2021 Free Software Foundation, Inc. + Copyright (C) 2011-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2011. This file is free software: you can redistribute it and/or modify diff --git a/lib/wmempcpy.c b/lib/wmempcpy.c index 1d7588a..6803ecb 100644 --- a/lib/wmempcpy.c +++ b/lib/wmempcpy.c @@ -1,5 +1,5 @@ /* Copy wide character array, return pointer after last written wide character. - Copyright (C) 2020-2021 Free Software Foundation, Inc. + Copyright (C) 2020-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/xalloc-die.c b/lib/xalloc-die.c index 1bf0a9e..7605eee 100644 --- a/lib/xalloc-die.c +++ b/lib/xalloc-die.c @@ -1,11 +1,11 @@ /* Report a memory allocation failure and exit. - Copyright (C) 1997-2000, 2002-2004, 2006, 2009-2021 Free Software + Copyright (C) 1997-2000, 2002-2004, 2006, 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/lib/xalloc-oversized.h b/lib/xalloc-oversized.h index 4184f33..5dbdfb5 100644 --- a/lib/xalloc-oversized.h +++ b/lib/xalloc-oversized.h @@ -1,6 +1,6 @@ /* xalloc-oversized.h -- memory allocation size checking - Copyright (C) 1990-2000, 2003-2004, 2006-2021 Free Software Foundation, Inc. + Copyright (C) 1990-2000, 2003-2004, 2006-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as diff --git a/lib/xalloc.h b/lib/xalloc.h index 05e2daa..0a951e1 100644 --- a/lib/xalloc.h +++ b/lib/xalloc.h @@ -1,10 +1,10 @@ /* xalloc.h -- malloc with out-of-memory checking - Copyright (C) 1990-2000, 2003-2004, 2006-2021 Free Software Foundation, Inc. + Copyright (C) 1990-2000, 2003-2004, 2006-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -18,18 +18,20 @@ #ifndef XALLOC_H_ #define XALLOC_H_ +/* This file uses _GL_INLINE_HEADER_BEGIN, _GL_INLINE, _Noreturn, + _GL_ATTRIBUTE_ALLOC_SIZE, _GL_ATTRIBUTE_MALLOC, + _GL_ATTRIBUTE_RETURNS_NONNULL. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + #include #include -#include #if GNULIB_XALLOC # include "idx.h" -# include "intprops.h" #endif -#ifndef _GL_INLINE_HEADER_BEGIN - #error "Please include config.h first." -#endif _GL_INLINE_HEADER_BEGIN #ifndef XALLOC_INLINE # define XALLOC_INLINE _GL_INLINE @@ -60,6 +62,9 @@ void *xmalloc (size_t s) void *ximalloc (idx_t s) _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE _GL_ATTRIBUTE_ALLOC_SIZE ((1)) _GL_ATTRIBUTE_RETURNS_NONNULL; +void *xinmalloc (idx_t n, idx_t s) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE + _GL_ATTRIBUTE_ALLOC_SIZE ((1, 2)) _GL_ATTRIBUTE_RETURNS_NONNULL; void *xzalloc (size_t s) _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE _GL_ATTRIBUTE_ALLOC_SIZE ((1)) _GL_ATTRIBUTE_RETURNS_NONNULL; @@ -128,14 +133,9 @@ char *xstrdup (char const *str) /* Allocate an array of N objects, each with S bytes of memory, dynamically, with error checking. S must be nonzero. */ -XALLOC_INLINE void *xnmalloc (size_t n, size_t s) +void *xnmalloc (size_t n, size_t s) _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE _GL_ATTRIBUTE_ALLOC_SIZE ((1, 2)) _GL_ATTRIBUTE_RETURNS_NONNULL; -XALLOC_INLINE void * -xnmalloc (size_t n, size_t s) -{ - return xreallocarray (NULL, n, s); -} /* FIXME: Deprecate this in favor of xreallocarray? */ /* Change the size of an allocated block of memory P to an array of N @@ -152,14 +152,9 @@ xnrealloc (void *p, size_t n, size_t s) /* Return a pointer to a new buffer of N bytes. This is like xmalloc, except it returns char *. */ -XALLOC_INLINE char *xcharalloc (size_t n) +char *xcharalloc (size_t n) _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE _GL_ATTRIBUTE_ALLOC_SIZE ((1)) _GL_ATTRIBUTE_RETURNS_NONNULL; -XALLOC_INLINE char * -xcharalloc (size_t n) -{ - return XNMALLOC (n, char); -} #endif /* GNULIB_XALLOC */ diff --git a/lib/xfreopen.c b/lib/xfreopen.c index b9e3883..e776ff7 100644 --- a/lib/xfreopen.c +++ b/lib/xfreopen.c @@ -1,5 +1,5 @@ /* Open a file, reusing a given stream, with error checking. - Copyright (C) 2008-2021 Free Software Foundation, Inc. + Copyright (C) 2008-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by diff --git a/lib/xfreopen.h b/lib/xfreopen.h index adfb9b9..dc124c3 100644 --- a/lib/xfreopen.h +++ b/lib/xfreopen.h @@ -1,9 +1,9 @@ /* Open a file, reusing a given stream, with error checking. - Copyright (C) 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2009-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published - by the Free Software Foundation; either version 3 of the License, + by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This file is distributed in the hope that it will be useful, diff --git a/lib/xmalloc.c b/lib/xmalloc.c index 81bb427..289cbd0 100644 --- a/lib/xmalloc.c +++ b/lib/xmalloc.c @@ -1,10 +1,10 @@ /* xmalloc.c -- malloc with out of memory checking - Copyright (C) 1990-2000, 2002-2006, 2008-2021 Free Software Foundation, Inc. + Copyright (C) 1990-2000, 2002-2006, 2008-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -22,10 +22,11 @@ #include "xalloc.h" #include "ialloc.h" -#include "intprops.h" #include "minmax.h" +#include #include +#include #include static void * _GL_ATTRIBUTE_PURE @@ -50,6 +51,12 @@ ximalloc (idx_t s) return nonnull (imalloc (s)); } +char * +xcharalloc (size_t n) +{ + return XNMALLOC (n, char); +} + /* Change the size of an allocated block of memory P to S bytes, with error checking. */ @@ -86,6 +93,21 @@ xireallocarray (void *p, idx_t n, idx_t s) return nonnull (ireallocarray (p, n, s)); } +/* Allocate an array of N objects, each with S bytes of memory, + dynamically, with error checking. S must be nonzero. */ + +void * +xnmalloc (size_t n, size_t s) +{ + return xreallocarray (NULL, n, s); +} + +void * +xinmalloc (idx_t n, idx_t s) +{ + return xireallocarray (NULL, n, s); +} + /* If P is null, allocate a block of at least *PS bytes; otherwise, reallocate P so that it contains more than *PS bytes. *PS must be nonzero unless P is null. Set *PS to the new block's size, and @@ -174,7 +196,7 @@ x2nrealloc (void *p, size_t *pn, size_t s) else { /* Set N = floor (1.5 * N) + 1 to make progress even if N == 0. */ - if (INT_ADD_WRAPV (n, (n >> 1) + 1, &n)) + if (ckd_add (&n, n, (n >> 1) + 1)) xalloc_die (); } @@ -215,7 +237,7 @@ xpalloc (void *pa, idx_t *pn, idx_t n_incr_min, ptrdiff_t n_max, idx_t s) N_MAX, and what the C language can represent safely. */ idx_t n; - if (INT_ADD_WRAPV (n0, n0 >> 1, &n)) + if (ckd_add (&n, n0, n0 >> 1)) n = IDX_MAX; if (0 <= n_max && n_max < n) n = n_max; @@ -230,7 +252,7 @@ xpalloc (void *pa, idx_t *pn, idx_t n_incr_min, ptrdiff_t n_max, idx_t s) size_t nbytes; #endif idx_t adjusted_nbytes - = (INT_MULTIPLY_WRAPV (n, s, &nbytes) + = (ckd_mul (&nbytes, n, s) ? MIN (IDX_MAX, SIZE_MAX) : nbytes < DEFAULT_MXFAST ? DEFAULT_MXFAST : 0); if (adjusted_nbytes) @@ -242,9 +264,9 @@ xpalloc (void *pa, idx_t *pn, idx_t n_incr_min, ptrdiff_t n_max, idx_t s) if (! pa) *pn = 0; if (n - n0 < n_incr_min - && (INT_ADD_WRAPV (n0, n_incr_min, &n) + && (ckd_add (&n, n0, n_incr_min) || (0 <= n_max && n_max < n) - || INT_MULTIPLY_WRAPV (n, s, &nbytes))) + || ckd_mul (&nbytes, n, s))) xalloc_die (); pa = xrealloc (pa, nbytes); *pn = n; diff --git a/lib/xmalloca.c b/lib/xmalloca.c index 82db671..329ebd0 100644 --- a/lib/xmalloca.c +++ b/lib/xmalloca.c @@ -1,10 +1,10 @@ /* Safe automatic memory allocation with out of memory checking. - Copyright (C) 2003, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2003, 2006-2007, 2009-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2003. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/lib/xmalloca.h b/lib/xmalloca.h index dbc6486..9ef41c6 100644 --- a/lib/xmalloca.h +++ b/lib/xmalloca.h @@ -1,10 +1,10 @@ /* Safe automatic memory allocation with out of memory checking. - Copyright (C) 2003, 2005, 2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2003, 2005, 2007, 2009-2023 Free Software Foundation, Inc. Written by Bruno Haible , 2003. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -18,6 +18,12 @@ #ifndef _XMALLOCA_H #define _XMALLOCA_H +/* This file uses _GL_ATTRIBUTE_ALLOC_SIZE, _GL_ATTRIBUTE_DEALLOC, + _GL_ATTRIBUTE_MALLOC, _GL_ATTRIBUTE_RETURNS_NONNULL, HAVE_ALLOCA. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + #include "malloca.h" #include "xalloc.h" #include "xalloc-oversized.h" @@ -39,7 +45,9 @@ extern "C" { + (2 * sa_alignment_max - 1)) \ & ~(uintptr_t)(2 * sa_alignment_max - 1)) \ : xmmalloca (N)) -extern void * xmmalloca (size_t n); +extern void * xmmalloca (size_t n) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC (freea, 1) + _GL_ATTRIBUTE_ALLOC_SIZE ((1)) _GL_ATTRIBUTE_RETURNS_NONNULL; #else # define xmalloca(N) \ xmalloc (N) diff --git a/lib/xreadlink.c b/lib/xreadlink.c index d9348b5..de7755d 100644 --- a/lib/xreadlink.c +++ b/lib/xreadlink.c @@ -1,10 +1,10 @@ /* xreadlink.c -- readlink wrapper to return the link name in malloc'd storage - Copyright (C) 2001, 2003-2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2001, 2003-2007, 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/lib/xreadlink.h b/lib/xreadlink.h index ef749ba..44f848f 100644 --- a/lib/xreadlink.h +++ b/lib/xreadlink.h @@ -1,11 +1,11 @@ /* Reading symbolic links without size limitation. - Copyright (C) 2001, 2003-2004, 2007, 2009-2021 Free Software Foundation, + Copyright (C) 2001, 2003-2004, 2007, 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -18,8 +18,17 @@ /* Written by Jim Meyering */ -extern char *xreadlink (char const *filename); +/* This file uses _GL_ATTRIBUTE_MALLOC. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + +#include + +extern char *xreadlink (char const *filename) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE; #if GNULIB_XREADLINKAT -extern char *xreadlinkat (int fd, char const *filename); +extern char *xreadlinkat (int fd, char const *filename) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE; #endif diff --git a/lib/xstdopen.c b/lib/xstdopen.c index 7473f1d..76d4781 100644 --- a/lib/xstdopen.c +++ b/lib/xstdopen.c @@ -1,9 +1,9 @@ /* Ensure that stdin, stdout, stderr are open. - Copyright (C) 2019-2021 Free Software Foundation, Inc. + Copyright (C) 2019-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/lib/xstdopen.h b/lib/xstdopen.h index 9531052..c317bff 100644 --- a/lib/xstdopen.h +++ b/lib/xstdopen.h @@ -1,9 +1,9 @@ /* Ensure that stdin, stdout, stderr are open. - Copyright (C) 2019-2021 Free Software Foundation, Inc. + Copyright (C) 2019-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/lib/xstriconv.c b/lib/xstriconv.c index 687a00b..77b7ac0 100644 --- a/lib/xstriconv.c +++ b/lib/xstriconv.c @@ -1,10 +1,10 @@ /* Charset conversion with out-of-memory checking. - Copyright (C) 2001-2004, 2006, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2001-2004, 2006, 2009-2023 Free Software Foundation, Inc. Written by Bruno Haible. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, diff --git a/lib/xstriconv.h b/lib/xstriconv.h index 1f69fa3..5a3a663 100644 --- a/lib/xstriconv.h +++ b/lib/xstriconv.h @@ -1,10 +1,10 @@ /* Charset conversion with out-of-memory checking. - Copyright (C) 2001-2004, 2006-2007, 2009-2021 Free Software Foundation, Inc. + Copyright (C) 2001-2004, 2006-2007, 2009-2023 Free Software Foundation, Inc. Written by Bruno Haible and Simon Josefsson. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -18,7 +18,12 @@ #ifndef _XSTRICONV_H #define _XSTRICONV_H -#include +/* This file uses _GL_ATTRIBUTE_MALLOC, HAVE_ICONV. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + +#include #if HAVE_ICONV #include #endif @@ -54,7 +59,8 @@ extern int xmem_cd_iconv (const char *src, size_t srclen, iconv_t cd, Upon memory allocation failure, report the error and exit. Return value: the freshly allocated resulting NUL-terminated string if successful, otherwise NULL and errno set. */ -extern char * xstr_cd_iconv (const char *src, iconv_t cd); +extern char * xstr_cd_iconv (const char *src, iconv_t cd) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE; #endif @@ -67,7 +73,8 @@ extern char * xstr_cd_iconv (const char *src, iconv_t cd); Return value: the freshly allocated resulting NUL-terminated string if successful, otherwise NULL and errno set. */ extern char * xstr_iconv (const char *src, - const char *from_codeset, const char *to_codeset); + const char *from_codeset, const char *to_codeset) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE; #ifdef __cplusplus diff --git a/lib/xstrtoimax.c b/lib/xstrtoimax.c index 17bd54c..1064bc3 100644 --- a/lib/xstrtoimax.c +++ b/lib/xstrtoimax.c @@ -1,10 +1,10 @@ /* A more useful interface to strtoimax. - Copyright (C) 2001-2021 Free Software Foundation, Inc. + Copyright (C) 2001-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published - by the Free Software Foundation; either version 3 of the License, + by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This file is distributed in the hope that it will be useful, @@ -20,4 +20,5 @@ #define __xstrtol xstrtoimax #define STRTOL_T_MINIMUM INTMAX_MIN #define STRTOL_T_MAXIMUM INTMAX_MAX +#define XSTRTOL_INCLUDE_INTTYPES_H 1 #include "xstrtol.c" diff --git a/lib/xstrtol.c b/lib/xstrtol.c index 2eab22a..6a8e042 100644 --- a/lib/xstrtol.c +++ b/lib/xstrtol.c @@ -1,11 +1,11 @@ /* A more useful interface to strtol. - Copyright (C) 1995-1996, 1998-2001, 2003-2007, 2009-2021 Free Software + Copyright (C) 1995-1996, 1998-2001, 2003-2007, 2009-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -37,27 +37,29 @@ #include #include #include +#include #include #include -#include "assure.h" +#if XSTRTOL_INCLUDE_INTTYPES_H +# include +#endif -#define TYPE_SIGNED(t) (! ((t) 0 < (t) -1)) +#include "assure.h" +#include "intprops.h" static strtol_error bkm_scale (__strtol_t *x, int scale_factor) { - if (TYPE_SIGNED (__strtol_t) && *x < STRTOL_T_MINIMUM / scale_factor) - { - *x = STRTOL_T_MINIMUM; - return LONGINT_OVERFLOW; - } - if (STRTOL_T_MAXIMUM / scale_factor < *x) + __strtol_t scaled; + if (ckd_mul (&scaled, *x, scale_factor)) { - *x = STRTOL_T_MAXIMUM; + *x = *x < 0 ? TYPE_MINIMUM (__strtol_t) : TYPE_MAXIMUM (__strtol_t); return LONGINT_OVERFLOW; } - *x *= scale_factor; + + *x = scaled; + return LONGINT_OK; } @@ -139,7 +141,7 @@ __xstrtol (const char *s, char **ptr, int strtol_base, switch (**p) { case 'E': case 'G': case 'g': case 'k': case 'K': case 'M': case 'm': - case 'P': case 'T': case 't': case 'Y': case 'Z': + case 'P': case 'Q': case 'R': case 'T': case 't': case 'Y': case 'Z': /* The "valid suffix" '0' is a special flag meaning that an optional second suffix is allowed, which can change @@ -204,6 +206,14 @@ __xstrtol (const char *s, char **ptr, int strtol_base, overflow = bkm_scale_by_power (&tmp, base, 5); break; + case 'Q': /* quetta or 2**100 */ + overflow = bkm_scale_by_power (&tmp, base, 10); + break; + + case 'R': /* ronna or 2**90 */ + overflow = bkm_scale_by_power (&tmp, base, 9); + break; + case 'T': /* tera or tebi */ case 't': /* 't' is undocumented; for compatibility only */ overflow = bkm_scale_by_power (&tmp, base, 4); diff --git a/lib/xstrtol.h b/lib/xstrtol.h index b873033..f70119a 100644 --- a/lib/xstrtol.h +++ b/lib/xstrtol.h @@ -1,11 +1,11 @@ /* A more useful interface to strtol. - Copyright (C) 1995-1996, 1998-1999, 2001-2004, 2006-2021 Free Software + Copyright (C) 1995-1996, 1998-1999, 2001-2004, 2006-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or + the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -19,7 +19,8 @@ #ifndef XSTRTOL_H_ # define XSTRTOL_H_ 1 -# include +/* Get intmax_t, uintmax_t. */ +# include # ifndef _STRTOL_ERROR enum strtol_error diff --git a/lib/xstrtoul.c b/lib/xstrtoul.c index c705a4c..33c38d4 100644 --- a/lib/xstrtoul.c +++ b/lib/xstrtoul.c @@ -1,10 +1,10 @@ /* Convert string to 'unsigned long', with error checking. - Copyright (C) 1994-2021 Free Software Foundation, Inc. + Copyright (C) 1994-2023 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published - by the Free Software Foundation; either version 3 of the License, + by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This file is distributed in the hope that it will be useful, diff --git a/lib/xvasprintf.c b/lib/xvasprintf.c deleted file mode 100644 index 7bf9c09..0000000 --- a/lib/xvasprintf.c +++ /dev/null @@ -1,110 +0,0 @@ -/* vasprintf and asprintf with out-of-memory checking. - Copyright (C) 1999, 2002-2004, 2006-2021 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#include - -/* Specification. */ -#include "xvasprintf.h" - -#include -#include -#include -#include - -#include "xalloc.h" - -/* Checked size_t computations. */ -#include "xsize.h" - -static char * -xstrcat (size_t argcount, va_list args) -{ - char *result; - va_list ap; - size_t totalsize; - size_t i; - char *p; - - /* Determine the total size. */ - totalsize = 0; - va_copy (ap, args); - for (i = argcount; i > 0; i--) - { - const char *next = va_arg (ap, const char *); - totalsize = xsum (totalsize, strlen (next)); - } - va_end (ap); - - /* Test for overflow in the summing pass above or in (totalsize + 1) below. - Also, don't return a string longer than INT_MAX, for consistency with - vasprintf(). */ - if (totalsize == SIZE_MAX || totalsize > INT_MAX) - { - errno = EOVERFLOW; - return NULL; - } - - /* Allocate and fill the result string. */ - result = XNMALLOC (totalsize + 1, char); - p = result; - for (i = argcount; i > 0; i--) - { - const char *next = va_arg (args, const char *); - size_t len = strlen (next); - memcpy (p, next, len); - p += len; - } - *p = '\0'; - - return result; -} - -char * -xvasprintf (const char *format, va_list args) -{ - char *result; - - /* Recognize the special case format = "%s...%s". It is a frequently used - idiom for string concatenation and needs to be fast. We don't want to - have a separate function xstrcat() for this purpose. */ - { - size_t argcount = 0; - const char *f; - - for (f = format;;) - { - if (*f == '\0') - /* Recognized the special case of string concatenation. */ - return xstrcat (argcount, args); - if (*f != '%') - break; - f++; - if (*f != 's') - break; - f++; - argcount++; - } - } - - if (vasprintf (&result, format, args) < 0) - { - if (errno == ENOMEM) - xalloc_die (); - return NULL; - } - - return result; -} diff --git a/lib/xvasprintf.h b/lib/xvasprintf.h deleted file mode 100644 index 4da42c6..0000000 --- a/lib/xvasprintf.h +++ /dev/null @@ -1,46 +0,0 @@ -/* vasprintf and asprintf with out-of-memory checking. - Copyright (C) 2002-2004, 2006-2021 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -#ifndef _XVASPRINTF_H -#define _XVASPRINTF_H - -/* Get va_list. */ -#include - -/* Get _GL_ATTRIBUTE_SPEC_PRINTF_STANDARD. */ -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Write formatted output to a string dynamically allocated with malloc(), - and return it. Upon [ENOMEM] memory allocation error, call xalloc_die. - On some other error - - [EOVERFLOW] resulting string length is > INT_MAX, - - [EINVAL] invalid format string, - - [EILSEQ] error during conversion between wide and multibyte characters, - return NULL. */ -extern char *xasprintf (const char *format, ...) - _GL_ATTRIBUTE_FORMAT ((_GL_ATTRIBUTE_SPEC_PRINTF_STANDARD, 1, 2)); -extern char *xvasprintf (const char *format, va_list args) - _GL_ATTRIBUTE_FORMAT ((_GL_ATTRIBUTE_SPEC_PRINTF_STANDARD, 1, 0)); - -#ifdef __cplusplus -} -#endif - -#endif /* _XVASPRINTF_H */ diff --git a/m4/00gnulib.m4 b/m4/00gnulib.m4 index 9ba1743..7fe03e0 100644 --- a/m4/00gnulib.m4 +++ b/m4/00gnulib.m4 @@ -1,5 +1,5 @@ # 00gnulib.m4 serial 8 -dnl Copyright (C) 2009-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/__inline.m4 b/m4/__inline.m4 index b28cc6a..acf8668 100644 --- a/m4/__inline.m4 +++ b/m4/__inline.m4 @@ -1,5 +1,5 @@ # Test for __inline keyword -dnl Copyright 2017-2021 Free Software Foundation, Inc. +dnl Copyright 2017-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/absolute-header.m4 b/m4/absolute-header.m4 index 52d80d0..e794764 100644 --- a/m4/absolute-header.m4 +++ b/m4/absolute-header.m4 @@ -1,5 +1,5 @@ # absolute-header.m4 serial 17 -dnl Copyright (C) 2006-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2006-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/alloca.m4 b/m4/alloca.m4 index ba2f679..c685fac 100644 --- a/m4/alloca.m4 +++ b/m4/alloca.m4 @@ -1,5 +1,5 @@ -# alloca.m4 serial 20 -dnl Copyright (C) 2002-2004, 2006-2007, 2009-2021 Free Software Foundation, +# alloca.m4 serial 21 +dnl Copyright (C) 2002-2004, 2006-2007, 2009-2023 Free Software Foundation, dnl Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -26,17 +26,15 @@ AC_DEFUN([gl_FUNC_ALLOCA], AC_DEFINE([HAVE_ALLOCA], [1], [Define to 1 if you have 'alloca' after including , a header that may be supplied by this distribution.]) - ALLOCA_H=alloca.h + GL_GENERATE_ALLOCA_H=true else dnl alloca exists as a library function, i.e. it is slow and probably dnl a memory leak. Don't define HAVE_ALLOCA in this case. - ALLOCA_H= + GL_GENERATE_ALLOCA_H=false fi else - ALLOCA_H=alloca.h + GL_GENERATE_ALLOCA_H=true fi - AC_SUBST([ALLOCA_H]) - AM_CONDITIONAL([GL_GENERATE_ALLOCA_H], [test -n "$ALLOCA_H"]) if test $ac_cv_working_alloca_h = yes; then HAVE_ALLOCA_H=1 diff --git a/m4/arpa_inet_h.m4 b/m4/arpa_inet_h.m4 index a3ba256..fa5fe83 100644 --- a/m4/arpa_inet_h.m4 +++ b/m4/arpa_inet_h.m4 @@ -1,5 +1,5 @@ # arpa_inet_h.m4 serial 17 -dnl Copyright (C) 2006, 2008-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2006, 2008-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/asm-underscore.m4 b/m4/asm-underscore.m4 index 93b98be..65ae55a 100644 --- a/m4/asm-underscore.m4 +++ b/m4/asm-underscore.m4 @@ -1,5 +1,5 @@ # asm-underscore.m4 serial 5 -dnl Copyright (C) 2010-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2010-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/assert_h.m4 b/m4/assert_h.m4 new file mode 100644 index 0000000..d255855 --- /dev/null +++ b/m4/assert_h.m4 @@ -0,0 +1,73 @@ +# assert-h.m4 +dnl Copyright (C) 2011-2023 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. + +dnl From Paul Eggert. + +AC_DEFUN([gl_ASSERT_H], +[ + AC_CACHE_CHECK([for static_assert], [gl_cv_static_assert], + [gl_save_CFLAGS=$CFLAGS + for gl_working in "yes, a keyword" "yes, an macro"; do + AS_CASE([$gl_working], + [*assert.h*], [CFLAGS="$gl_save_CFLAGS -DINCLUDE_ASSERT_H"]) + + AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM( + [[#if defined __clang__ && __STDC_VERSION__ < 202311 + #pragma clang diagnostic error "-Wc2x-extensions" + #pragma clang diagnostic error "-Wc++1z-extensions" + #endif + #ifdef INCLUDE_ASSERT_H + #include + #endif + static_assert (2 + 2 == 4, "arithmetic does not work"); + static_assert (2 + 2 == 4); + ]], + [[ + static_assert (sizeof (char) == 1, "sizeof does not work"); + static_assert (sizeof (char) == 1); + ]])], + [gl_cv_static_assert=$gl_working], + [gl_cv_static_assert=no]) + CFLAGS=$gl_save_CFLAGS + test "$gl_cv_static_assert" != no && break + done]) + + GL_GENERATE_ASSERT_H=false + AS_CASE([$gl_cv_static_assert], + [yes*keyword*], + [AC_DEFINE([HAVE_C_STATIC_ASSERT], [1], + [Define to 1 if the static_assert keyword works.])], + [no], + [GL_GENERATE_ASSERT_H=true + gl_NEXT_HEADERS([assert.h])]) + + dnl The "zz" puts this toward config.h's end, to avoid potential + dnl collisions with other definitions. + dnl #undef assert so that programs are not tempted to use it without + dnl specifically including assert.h. + dnl #undef __ASSERT_H__ so that on IRIX, when programs later include + dnl , this include actually defines assert. + dnl Break the #undef_s apart with a comment so that 'configure' does + dnl not comment them out. + AH_VERBATIM([zzstatic_assert], +[#if (!defined HAVE_C_STATIC_ASSERT && !defined assert \ + && (!defined __cplusplus \ + || (__cpp_static_assert < 201411 \ + && __GNUG__ < 6 && __clang_major__ < 6))) + #include + #undef/**/assert + #ifdef __sgi + #undef/**/__ASSERT_H__ + #endif + /* Solaris 11.4 defines static_assert as a macro with 2 arguments. + We need it also to be invocable with a single argument. */ + #if defined __sun && (__STDC_VERSION__ - 0 >= 201112L) && !defined __cplusplus + #undef/**/static_assert + #define static_assert _Static_assert + #endif +#endif]) +]) diff --git a/m4/atoll.m4 b/m4/atoll.m4 index 8b46626..8ab3bc9 100644 --- a/m4/atoll.m4 +++ b/m4/atoll.m4 @@ -1,5 +1,5 @@ # atoll.m4 serial 3 -dnl Copyright (C) 2008-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2008-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/btowc.m4 b/m4/btowc.m4 index d2b2fe8..1cd100a 100644 --- a/m4/btowc.m4 +++ b/m4/btowc.m4 @@ -1,5 +1,5 @@ -# btowc.m4 serial 12 -dnl Copyright (C) 2008-2021 Free Software Foundation, Inc. +# btowc.m4 serial 13 +dnl Copyright (C) 2008-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -88,6 +88,49 @@ int main () fi ]) + dnl On mingw, in the C locale, btowc is inconsistent with mbrtowc: + dnl mbrtowc avoids calling MultiByteToWideChar when MB_CUR_MAX is 1 and + dnl ___lc_codepage_func() is 0, but btowc is lacking this special case. + AC_CHECK_FUNCS_ONCE([mbrtowc]) + AC_CACHE_CHECK([whether btowc is consistent with mbrtowc in the C locale], + [gl_cv_func_btowc_consistent], + [ + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ +#include +#include +#include +int main () +{ +#if HAVE_MBRTOWC + wint_t wc1 = btowc (0x80); + wchar_t wc2 = (wchar_t) 0xbadface; + char buf[1] = { 0x80 }; + mbstate_t state; + memset (&state, 0, sizeof (mbstate_t)); + if (mbrtowc (&wc2, buf, 1, &state) != 1 || wc1 != wc2) + return 1; +#endif + return 0; +}]])], + [gl_cv_func_btowc_consistent=yes], + [gl_cv_func_btowc_consistent=no], + [case "$host_os" in + # Guess no on mingw. + mingw*) AC_EGREP_CPP([Problem], [ +#ifdef __MINGW32__ + Problem +#endif + ], + [gl_cv_func_btowc_consistent="guessing no"], + [gl_cv_func_btowc_consistent="guessing yes"]) + ;; + # Guess yes otherwise. + *) gl_cv_func_btowc_consistent="guessing yes" ;; + esac + ]) + ]) + case "$gl_cv_func_btowc_nul" in *yes) ;; *) REPLACE_BTOWC=1 ;; @@ -96,10 +139,22 @@ int main () *yes) ;; *) REPLACE_BTOWC=1 ;; esac + case "$gl_cv_func_btowc_consistent" in + *yes) ;; + *) REPLACE_BTOWC=1 ;; + esac + if test $REPLACE_BTOWC = 0; then + gl_MBRTOWC_C_LOCALE + case "$gl_cv_func_mbrtowc_C_locale_sans_EILSEQ" in + *yes) ;; + *) REPLACE_BTOWC=1 ;; + esac + fi fi ]) # Prerequisites of lib/btowc.c. AC_DEFUN([gl_PREREQ_BTOWC], [ : + AC_CHECK_FUNCS_ONCE([mbrtowc]) ]) diff --git a/m4/builtin-expect.m4 b/m4/builtin-expect.m4 index c584116..531ed48 100644 --- a/m4/builtin-expect.m4 +++ b/m4/builtin-expect.m4 @@ -1,6 +1,6 @@ dnl Check for __builtin_expect. -dnl Copyright 2016-2021 Free Software Foundation, Inc. +dnl Copyright 2016-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/c-bool.m4 b/m4/c-bool.m4 new file mode 100644 index 0000000..f614371 --- /dev/null +++ b/m4/c-bool.m4 @@ -0,0 +1,51 @@ +# Check for bool that conforms to C2023. + +dnl Copyright 2022-2023 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. + +AC_DEFUN([gl_C_BOOL], +[ + AC_CACHE_CHECK([for bool, true, false], [gl_cv_c_bool], + [AC_COMPILE_IFELSE( + [AC_LANG_SOURCE([[ + #if true == false + #error "true == false" + #endif + extern bool b; + bool b = true == false;]])], + [gl_cv_c_bool=yes], + [gl_cv_c_bool=no])]) + if test "$gl_cv_c_bool" = yes; then + AC_DEFINE([HAVE_C_BOOL], [1], + [Define to 1 if bool, true and false work as per C2023.]) + fi + + AC_CHECK_HEADERS_ONCE([stdbool.h]) + + dnl The "zz" puts this toward config.h's end, to avoid potential + dnl collisions with other definitions. + dnl If 'bool', 'true' and 'false' do not work, arrange for them to work. + dnl In C, this means including if it is not already included. + dnl However, if the preprocessor mistakenly treats 'true' as 0, + dnl define it to a bool expression equal to 1; this is needed in + dnl Sun C++ 5.11 (Oracle Solaris Studio 12.2, 2010) and older. + AH_VERBATIM([zzbool], +[#ifndef HAVE_C_BOOL +# if !defined __cplusplus && !defined __bool_true_false_are_defined +# if HAVE_STDBOOL_H +# include +# else +# if defined __SUNPRO_C +# error " is not usable with this configuration. To make it usable, add -D_STDC_C99= to $CC." +# else +# error " does not exist on this platform. Use gnulib module 'stdbool-c99' instead of gnulib module 'stdbool'." +# endif +# endif +# endif +# if !true +# define true (!false) +# endif +#endif]) +]) diff --git a/m4/c-stack.m4 b/m4/c-stack.m4 index 7cccb06..5f6c5d2 100644 --- a/m4/c-stack.m4 +++ b/m4/c-stack.m4 @@ -1,21 +1,20 @@ # Check prerequisites for compiling lib/c-stack.c. -# Copyright (C) 2002-2004, 2008-2021 Free Software Foundation, Inc. +# Copyright (C) 2002-2004, 2008-2023 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # Written by Paul Eggert. -# serial 23 +# serial 25 AC_DEFUN([gl_C_STACK], [ dnl 'c-stack' needs -lsigsegv if and only if the 'sigsegv' module needs it. - if test "$with_libsigsegv" = yes; then - if test "$gl_cv_lib_sigsegv" = yes; then - AC_SUBST([LIBCSTACK], [$LIBSIGSEGV]) - AC_SUBST([LTLIBCSTACK], [$LTLIBSIGSEGV]) - fi + AC_REQUIRE([gl_SIGSEGV]) + if test $gl_sigsegv_uses_libsigsegv = yes; then + AC_SUBST([LIBCSTACK], [$LIBSIGSEGV]) + AC_SUBST([LTLIBCSTACK], [$LTLIBSIGSEGV]) fi ]) diff --git a/m4/calloc.m4 b/m4/calloc.m4 index fe12b15..3789cbf 100644 --- a/m4/calloc.m4 +++ b/m4/calloc.m4 @@ -1,6 +1,6 @@ -# calloc.m4 serial 27 +# calloc.m4 serial 30 -# Copyright (C) 2004-2021 Free Software Foundation, Inc. +# Copyright (C) 2004-2023 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -36,14 +36,14 @@ AC_DEFUN([_AC_FUNC_CALLOC_IF], [ac_cv_func_calloc_0_nonnull=no]) else case "$host_os" in - # Guess yes on glibc systems. - *-gnu* | gnu*) ac_cv_func_calloc_0_nonnull="guessing yes" ;; - # Guess yes on musl systems. - *-musl*) ac_cv_func_calloc_0_nonnull="guessing yes" ;; - # Guess yes on native Windows. - mingw*) ac_cv_func_calloc_0_nonnull="guessing yes" ;; - # If we don't know, obey --enable-cross-guesses. - *) ac_cv_func_calloc_0_nonnull="$gl_cross_guess_normal" ;; + # Guess yes on glibc systems. + *-gnu* | gnu*) ac_cv_func_calloc_0_nonnull="guessing yes" ;; + # Guess yes on musl systems. + *-musl* | midipix*) ac_cv_func_calloc_0_nonnull="guessing yes" ;; + # Guess yes on native Windows. + mingw*) ac_cv_func_calloc_0_nonnull="guessing yes" ;; + # If we don't know, obey --enable-cross-guesses. + *) ac_cv_func_calloc_0_nonnull="$gl_cross_guess_normal" ;; esac fi ]) @@ -58,8 +58,9 @@ AC_DEFUN([gl_FUNC_CALLOC_GNU], [ AC_REQUIRE([gl_STDLIB_H_DEFAULTS]) AC_REQUIRE([gl_FUNC_CALLOC_POSIX]) - if test $REPLACE_CALLOC = 0; then - _AC_FUNC_CALLOC_IF([], [REPLACE_CALLOC=1]) + REPLACE_CALLOC_FOR_CALLOC_GNU="$REPLACE_CALLOC_FOR_CALLOC_POSIX" + if test $REPLACE_CALLOC_FOR_CALLOC_GNU = 0; then + _AC_FUNC_CALLOC_IF([], [REPLACE_CALLOC_FOR_CALLOC_GNU=1]) fi ])# gl_FUNC_CALLOC_GNU @@ -72,8 +73,8 @@ AC_DEFUN([gl_FUNC_CALLOC_POSIX], [ AC_REQUIRE([gl_STDLIB_H_DEFAULTS]) AC_REQUIRE([gl_FUNC_MALLOC_POSIX]) - if test $REPLACE_MALLOC = 1; then - REPLACE_CALLOC=1 + if test $REPLACE_MALLOC_FOR_MALLOC_POSIX = 1; then + REPLACE_CALLOC_FOR_CALLOC_POSIX=1 fi dnl Although in theory we should also test for size_t overflow, dnl in practice testing for ptrdiff_t overflow suffices diff --git a/m4/clock_time.m4 b/m4/clock_time.m4 index c3b9e7e..d624a73 100644 --- a/m4/clock_time.m4 +++ b/m4/clock_time.m4 @@ -1,13 +1,14 @@ -# clock_time.m4 serial 10 -dnl Copyright (C) 2002-2006, 2009-2021 Free Software Foundation, Inc. +# clock_time.m4 serial 12 +dnl Copyright (C) 2002-2006, 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. -# Check for clock_gettime and clock_settime, and set LIB_CLOCK_GETTIME. +# Check for clock_getres, clock_gettime and clock_settime, +# and set CLOCK_TIME_LIB. # For a program named, say foo, you should add a line like the following # in the corresponding Makefile.am file: -# foo_LDADD = $(LDADD) $(LIB_CLOCK_GETTIME) +# foo_LDADD = $(LDADD) $(CLOCK_TIME_LIB) AC_DEFUN([gl_CLOCK_TIME], [ @@ -20,12 +21,15 @@ AC_DEFUN([gl_CLOCK_TIME], # Save and restore LIBS so e.g., -lrt, isn't added to it. Otherwise, *all* # programs in the package would end up linked with that potentially-shared # library, inducing unnecessary run-time overhead. - LIB_CLOCK_GETTIME= - AC_SUBST([LIB_CLOCK_GETTIME]) + CLOCK_TIME_LIB= + AC_SUBST([CLOCK_TIME_LIB]) gl_saved_libs=$LIBS AC_SEARCH_LIBS([clock_gettime], [rt posix4], [test "$ac_cv_search_clock_gettime" = "none required" || - LIB_CLOCK_GETTIME=$ac_cv_search_clock_gettime]) - AC_CHECK_FUNCS([clock_gettime clock_settime]) + CLOCK_TIME_LIB=$ac_cv_search_clock_gettime]) + AC_CHECK_FUNCS([clock_getres clock_gettime clock_settime]) LIBS=$gl_saved_libs + # For backward compatibility. + LIB_CLOCK_GETTIME="$CLOCK_TIME_LIB" + AC_SUBST([LIB_CLOCK_GETTIME]) ]) diff --git a/m4/close.m4 b/m4/close.m4 index 77a5047..0feabd6 100644 --- a/m4/close.m4 +++ b/m4/close.m4 @@ -1,10 +1,10 @@ -# close.m4 serial 9 -dnl Copyright (C) 2008-2021 Free Software Foundation, Inc. +# close.m4 serial 10 +dnl Copyright (C) 2008-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. -AC_DEFUN([gl_FUNC_CLOSE], +AC_DEFUN_ONCE([gl_FUNC_CLOSE], [ AC_REQUIRE([gl_UNISTD_H_DEFAULTS]) m4_ifdef([gl_MSVC_INVAL], [ diff --git a/m4/codeset.m4 b/m4/codeset.m4 index 629f4ee..5804f47 100644 --- a/m4/codeset.m4 +++ b/m4/codeset.m4 @@ -1,5 +1,5 @@ # codeset.m4 serial 5 (gettext-0.18.2) -dnl Copyright (C) 2000-2002, 2006, 2008-2014, 2016, 2019-2021 Free Software +dnl Copyright (C) 2000-2002, 2006, 2008-2014, 2016, 2019-2023 Free Software dnl Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, diff --git a/m4/config-h.m4 b/m4/config-h.m4 index b3be47b..185a3e4 100644 --- a/m4/config-h.m4 +++ b/m4/config-h.m4 @@ -1,6 +1,6 @@ # Say that -DHAVE_CONFIG_H is not needed. -dnl Copyright (C) 2006, 2009-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2006, 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/ctype_h.m4 b/m4/ctype_h.m4 index efdae45..219f2ed 100644 --- a/m4/ctype_h.m4 +++ b/m4/ctype_h.m4 @@ -1,5 +1,5 @@ # ctype_h.m4 serial 9 -dnl Copyright (C) 2009-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/double-slash-root.m4 b/m4/double-slash-root.m4 index c9bbcef..1776e5e 100644 --- a/m4/double-slash-root.m4 +++ b/m4/double-slash-root.m4 @@ -1,5 +1,5 @@ # double-slash-root.m4 serial 4 -*- Autoconf -*- -dnl Copyright (C) 2006, 2008-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2006, 2008-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/dup2.m4 b/m4/dup2.m4 index 0753a32..e1cc73e 100644 --- a/m4/dup2.m4 +++ b/m4/dup2.m4 @@ -1,5 +1,5 @@ #serial 27 -dnl Copyright (C) 2002, 2005, 2007, 2009-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2002, 2005, 2007, 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/eealloc.m4 b/m4/eealloc.m4 index 002f0c8..cb3e08f 100644 --- a/m4/eealloc.m4 +++ b/m4/eealloc.m4 @@ -1,5 +1,5 @@ # eealloc.m4 serial 3 -dnl Copyright (C) 2003, 2009-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2003, 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/environ.m4 b/m4/environ.m4 index ae53291..741dfc5 100644 --- a/m4/environ.m4 +++ b/m4/environ.m4 @@ -1,5 +1,5 @@ # environ.m4 serial 8 -dnl Copyright (C) 2001-2004, 2006-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2001-2004, 2006-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/errno_h.m4 b/m4/errno_h.m4 index 51dfe92..4c70d22 100644 --- a/m4/errno_h.m4 +++ b/m4/errno_h.m4 @@ -1,5 +1,5 @@ -# errno_h.m4 serial 13 -dnl Copyright (C) 2004, 2006, 2008-2021 Free Software Foundation, Inc. +# errno_h.m4 serial 14 +dnl Copyright (C) 2004, 2006, 2008-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -68,13 +68,11 @@ booboo [gl_cv_header_errno_h_complete=yes]) ]) if test $gl_cv_header_errno_h_complete = yes; then - ERRNO_H='' + GL_GENERATE_ERRNO_H=false else gl_NEXT_HEADERS([errno.h]) - ERRNO_H='errno.h' + GL_GENERATE_ERRNO_H=true fi - AC_SUBST([ERRNO_H]) - AM_CONDITIONAL([GL_GENERATE_ERRNO_H], [test -n "$ERRNO_H"]) gl_REPLACE_ERRNO_VALUE([EMULTIHOP]) gl_REPLACE_ERRNO_VALUE([ENOLINK]) gl_REPLACE_ERRNO_VALUE([EOVERFLOW]) @@ -88,7 +86,7 @@ booboo # Set the variables EOVERFLOW_HIDDEN and EOVERFLOW_VALUE. AC_DEFUN([gl_REPLACE_ERRNO_VALUE], [ - if test -n "$ERRNO_H"; then + if $GL_GENERATE_ERRNO_H; then AC_CACHE_CHECK([for ]$1[ value], [gl_cv_header_errno_h_]$1, [ AC_EGREP_CPP([yes],[ #include diff --git a/m4/error.m4 b/m4/error.m4 index 77f67f7..93a7558 100644 --- a/m4/error.m4 +++ b/m4/error.m4 @@ -1,6 +1,6 @@ -#serial 14 +#serial 16 -# Copyright (C) 1996-1998, 2001-2004, 2009-2021 Free Software Foundation, Inc. +# Copyright (C) 1996-1998, 2001-2004, 2009-2023 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -8,20 +8,15 @@ AC_DEFUN([gl_ERROR], [ - dnl We don't use AC_FUNC_ERROR_AT_LINE any more, because it is no longer - dnl maintained in Autoconf and because it invokes AC_LIBOBJ. - AC_CACHE_CHECK([for error_at_line], [ac_cv_lib_error_at_line], - [AC_LINK_IFELSE( - [AC_LANG_PROGRAM( - [[#include ]], - [[error_at_line (0, 0, "", 0, "an error occurred");]])], - [ac_cv_lib_error_at_line=yes], - [ac_cv_lib_error_at_line=no])]) ]) # Prerequisites of lib/error.c. AC_DEFUN([gl_PREREQ_ERROR], [ + dnl Use system extensions on Android, so that AC_FUNC_STRERROR_R + dnl discovers the GNU API for strerror_r on Android API level 23 and later. + AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS]) + AC_REQUIRE([AC_FUNC_STRERROR_R]) : ]) diff --git a/m4/error_h.m4 b/m4/error_h.m4 new file mode 100644 index 0000000..f38e4ea --- /dev/null +++ b/m4/error_h.m4 @@ -0,0 +1,125 @@ +# error_h.m4 serial 3 +dnl Copyright (C) 1996-2023 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. + +dnl From Bruno Haible. +dnl Provide a working "error.h". + +AC_DEFUN_ONCE([gl_ERROR_H], +[ + AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles + + gl_CHECK_NEXT_HEADERS([error.h]) + if test $ac_cv_header_error_h = yes; then + HAVE_ERROR_H=1 + else + HAVE_ERROR_H=0 + fi + AC_SUBST([HAVE_ERROR_H]) + + REPLACE_ERROR=0 + + gl_CHECK_FUNCS_ANDROID([error], [[#include ]]) + if test $ac_cv_func_error = yes; then + HAVE_ERROR=1 + else + HAVE_ERROR=0 + case "$gl_cv_onwards_func_error" in + future*) REPLACE_ERROR=1 ;; + esac + fi + + dnl We don't use AC_FUNC_ERROR_AT_LINE any more, because it is no longer + dnl maintained in Autoconf and because it invokes AC_LIBOBJ. + dnl We need to notice a missing declaration, like gl_CHECK_FUNCS_ANDROID does. + AC_CHECK_DECL([error_at_line], , , [[#include ]]) + if test $ac_cv_have_decl_error_at_line = yes; then + AC_CACHE_CHECK([for error_at_line], [ac_cv_lib_error_at_line], + [AC_LINK_IFELSE( + [AC_LANG_PROGRAM( + [[#include ]], + [[error_at_line (0, 0, "", 0, "an error occurred");]])], + [ac_cv_lib_error_at_line=yes], + [ac_cv_lib_error_at_line=no])]) + else + ac_cv_lib_error_at_line=no + fi + if test $ac_cv_lib_error_at_line = yes; then + HAVE_ERROR_AT_LINE=1 + else + HAVE_ERROR_AT_LINE=0 + fi + REPLACE_ERROR_AT_LINE=0 + + if test $ac_cv_func_error = yes && test $ac_cv_lib_error_at_line = yes; then + dnl On Android 11, when error_print_progname is set, the output of the + dnl error() function contains an extra space. + AC_CACHE_CHECK([for working error function], + [gl_cv_func_working_error], + [if test $cross_compiling != yes; then + AC_LINK_IFELSE( + [AC_LANG_PROGRAM([[ + #include + static void print_no_progname (void) {} + ]], [[ + error_print_progname = print_no_progname; + error (0, 0, "foo"); + ]]) + ], + [rm -f conftest.out + if test -s conftest$ac_exeext \ + && ./conftest$ac_exeext 2> conftest.out; then + if grep ' ' conftest.out >/dev/null; then + gl_cv_func_working_error=no + else + gl_cv_func_working_error=yes + fi + else + gl_cv_func_working_error=no + fi + rm -f conftest.out + ], + [gl_cv_func_working_error=no]) + else + AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM([[ + #include + ]], [[ + error (0, 0, "foo"); + ]]) + ], + [case "$host_os" in + # Guess yes on glibc systems. + *-gnu* | gnu*) gl_cv_func_working_error="guessing yes" ;; + # Guess no on Android. + linux*-android*) gl_cv_func_working_error="guessing no" ;; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_working_error="$gl_cross_guess_normal" ;; + esac + ], + [gl_cv_func_working_error=no]) + fi + ]) + case "$gl_cv_func_working_error" in + *no) + REPLACE_ERROR=1 + REPLACE_ERROR_AT_LINE=1 + ;; + esac + fi + + if test $HAVE_ERROR = 0 || test $REPLACE_ERROR = 1 \ + || test $HAVE_ERROR_AT_LINE = 0 || test $REPLACE_ERROR_AT_LINE = 1; then + dnl Provide a substitute file. + GL_GENERATE_ERROR_H=true + else + GL_GENERATE_ERROR_H=false + fi + + AC_SUBST([HAVE_ERROR]) + AC_SUBST([HAVE_ERROR_AT_LINE]) + AC_SUBST([REPLACE_ERROR]) + AC_SUBST([REPLACE_ERROR_AT_LINE]) +]) diff --git a/m4/exponentd.m4 b/m4/exponentd.m4 index fb136f4..163114b 100644 --- a/m4/exponentd.m4 +++ b/m4/exponentd.m4 @@ -1,9 +1,9 @@ -# exponentd.m4 serial 3 -dnl Copyright (C) 2007-2008, 2010-2021 Free Software Foundation, Inc. +# exponentd.m4 serial 4 +dnl Copyright (C) 2007-2008, 2010-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. -AC_DEFUN([gl_DOUBLE_EXPONENT_LOCATION], +AC_DEFUN_ONCE([gl_DOUBLE_EXPONENT_LOCATION], [ AC_CACHE_CHECK([where to find the exponent in a 'double'], [gl_cv_cc_double_expbit0], diff --git a/m4/extensions.m4 b/m4/extensions.m4 index 5792a95..5336b8d 100644 --- a/m4/extensions.m4 +++ b/m4/extensions.m4 @@ -1,7 +1,7 @@ -# serial 22 -*- Autoconf -*- +# serial 23 -*- Autoconf -*- # Enable extensions on systems that normally disable them. -# Copyright (C) 2003, 2006-2021 Free Software Foundation, Inc. +# Copyright (C) 2003, 2006-2023 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -31,7 +31,7 @@ m4_ifndef([AC_CHECK_INCLUDES_DEFAULT], # its dependencies. This will ensure that the gl_USE_SYSTEM_EXTENSIONS # invocation occurs in gl_EARLY, not in gl_INIT. -m4_version_prereq([2.70.1], [], [ +m4_version_prereq([2.72], [], [ # AC_USE_SYSTEM_EXTENSIONS # ------------------------ @@ -113,11 +113,15 @@ AH_VERBATIM([USE_SYSTEM_EXTENSIONS], #ifndef __STDC_WANT_IEC_60559_DFP_EXT__ # undef __STDC_WANT_IEC_60559_DFP_EXT__ #endif +/* Enable extensions specified by C23 Annex F. */ +#ifndef __STDC_WANT_IEC_60559_EXT__ +# undef __STDC_WANT_IEC_60559_EXT__ +#endif /* Enable extensions specified by ISO/IEC TS 18661-4:2015. */ #ifndef __STDC_WANT_IEC_60559_FUNCS_EXT__ # undef __STDC_WANT_IEC_60559_FUNCS_EXT__ #endif -/* Enable extensions specified by ISO/IEC TS 18661-3:2015. */ +/* Enable extensions specified by C23 Annex H and ISO/IEC TS 18661-3:2015. */ #ifndef __STDC_WANT_IEC_60559_TYPES_EXT__ # undef __STDC_WANT_IEC_60559_TYPES_EXT__ #endif @@ -187,6 +191,7 @@ dnl it should only be defined when necessary. AC_DEFINE([__STDC_WANT_IEC_60559_ATTRIBS_EXT__]) AC_DEFINE([__STDC_WANT_IEC_60559_BFP_EXT__]) AC_DEFINE([__STDC_WANT_IEC_60559_DFP_EXT__]) + AC_DEFINE([__STDC_WANT_IEC_60559_EXT__]) AC_DEFINE([__STDC_WANT_IEC_60559_FUNCS_EXT__]) AC_DEFINE([__STDC_WANT_IEC_60559_TYPES_EXT__]) AC_DEFINE([__STDC_WANT_LIB_EXT2__]) diff --git a/m4/extern-inline.m4 b/m4/extern-inline.m4 index a2acf12..f9894d7 100644 --- a/m4/extern-inline.m4 +++ b/m4/extern-inline.m4 @@ -1,13 +1,28 @@ dnl 'extern inline' a la ISO C99. -dnl Copyright 2012-2021 Free Software Foundation, Inc. +dnl Copyright 2012-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. AC_DEFUN([gl_EXTERN_INLINE], [ - AH_VERBATIM([extern_inline], + AC_CACHE_CHECK([whether ctype.h defines __header_inline], + [gl_cv_have___header_inline], + [AC_PREPROC_IFELSE( + [AC_LANG_SOURCE([[#include + #ifndef __header_inline + #error " does not define __header_inline" + #endif + ]])], + [gl_cv_have___header_inline=yes], + [gl_cv_have___header_inline=no])]) + if test "$gl_cv_have___header_inline" = yes; then + AC_DEFINE([HAVE___HEADER_INLINE], [1], + [Define to 1 if ctype.h defines __header_inline.]) + fi + + AH_VERBATIM([HAVE___HEADER_INLINE_1], [/* Please see the Gnulib manual for how to use these macros. Suppress extern inline with HP-UX cc, as it appears to be broken; see @@ -17,7 +32,8 @@ AC_DEFUN([gl_EXTERN_INLINE], mishandles inline functions that call each other. E.g., for 'inline void f (void) { } inline void g (void) { f (); }', c99 incorrectly complains 'reference to static identifier "f" in extern inline function'. - This bug was observed with Sun C 5.12 SunOS_i386 2011/11/16. + This bug was observed with Oracle Developer Studio 12.6 + (Sun C 5.15 SunOS_sparc 2017/05/30). Suppress extern inline (with or without __attribute__ ((__gnu_inline__))) on configurations that mistakenly use 'static inline' to implement @@ -53,7 +69,7 @@ AC_DEFUN([gl_EXTERN_INLINE], */ #if (((defined __APPLE__ && defined __MACH__) \ || defined __DragonFly__ || defined __FreeBSD__) \ - && (defined __header_inline \ + && (defined HAVE___HEADER_INLINE \ ? (defined __cplusplus && defined __GNUC_STDC_INLINE__ \ && ! defined __clang__) \ : ((! defined _DONT_USE_CTYPE_INLINE_ \ @@ -63,7 +79,8 @@ AC_DEFUN([gl_EXTERN_INLINE], # define _GL_EXTERN_INLINE_STDHEADER_BUG #endif #if ((__GNUC__ \ - ? defined __GNUC_STDC_INLINE__ && __GNUC_STDC_INLINE__ \ + ? (defined __GNUC_STDC_INLINE__ && __GNUC_STDC_INLINE__ \ + && !defined __PCC__) \ : (199901L <= __STDC_VERSION__ \ && !defined __HP_cc \ && !defined __PGI \ @@ -73,6 +90,7 @@ AC_DEFUN([gl_EXTERN_INLINE], # define _GL_EXTERN_INLINE extern inline # define _GL_EXTERN_INLINE_IN_USE #elif (2 < __GNUC__ + (7 <= __GNUC_MINOR__) && !defined __STRICT_ANSI__ \ + && !defined __PCC__ \ && !defined _GL_EXTERN_INLINE_STDHEADER_BUG) # if defined __GNUC_GNU_INLINE__ && __GNUC_GNU_INLINE__ /* __gnu_inline__ suppresses a GCC 4.2 diagnostic. */ @@ -83,8 +101,8 @@ AC_DEFUN([gl_EXTERN_INLINE], # define _GL_EXTERN_INLINE extern # define _GL_EXTERN_INLINE_IN_USE #else -# define _GL_INLINE static _GL_UNUSED -# define _GL_EXTERN_INLINE static _GL_UNUSED +# define _GL_INLINE _GL_UNUSED static +# define _GL_EXTERN_INLINE _GL_UNUSED static #endif /* In GCC 4.6 (inclusive) to 5.1 (exclusive), diff --git a/m4/fclose.m4 b/m4/fclose.m4 new file mode 100644 index 0000000..e9291f0 --- /dev/null +++ b/m4/fclose.m4 @@ -0,0 +1,98 @@ +# fclose.m4 serial 11 +dnl Copyright (C) 2008-2023 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. + +AC_DEFUN_ONCE([gl_FUNC_FCLOSE], +[ + AC_REQUIRE([gl_STDIO_H_DEFAULTS]) + AC_REQUIRE([AC_CANONICAL_HOST]) + + gl_FUNC_FFLUSH_STDIN + case "$gl_cv_func_fflush_stdin" in + *yes) ;; + *) REPLACE_FCLOSE=1 ;; + esac + + AC_REQUIRE([gl_FUNC_CLOSE]) + if test $REPLACE_CLOSE = 1; then + REPLACE_FCLOSE=1 + fi + + case "$host_os" in + openedition) REPLACE_FCLOSE=1 ;; + esac + + if test $REPLACE_FCLOSE = 0; then + gl_FUNC_FCLOSE_STDIN + case "$gl_cv_func_fclose_stdin" in + *yes) ;; + *) REPLACE_FCLOSE=1 ;; + esac + fi +]) + +dnl Determine whether fclose works on input streams. +dnl Sets gl_cv_func_fclose_stdin. + +AC_DEFUN([gl_FUNC_FCLOSE_STDIN], +[ + AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles + AC_CHECK_HEADERS_ONCE([unistd.h]) + AC_CACHE_CHECK([whether fclose works on input streams], + [gl_cv_func_fclose_stdin], + [echo hello world > conftest.txt + AC_RUN_IFELSE( + [AC_LANG_PROGRAM( + [[#include + #include + #if HAVE_UNISTD_H + # include + #else /* on Windows with MSVC */ + # include + #endif + ]GL_MDA_DEFINES], + [[int fd; + int fd2; + FILE *fp; + fd = open ("conftest.txt", O_RDONLY); + if (fd < 0) + return 1; + if (lseek (fd, 1, SEEK_SET) != 1) + return 2; + fd2 = dup (fd); + if (fd2 < 0) + return 3; + fp = fdopen (fd2, "r"); + if (fp == NULL) + return 4; + if (fgetc (fp) != 'e') + { fclose (fp); return 5; } + /* This fclose() call should reposition the underlying file + descriptor. */ + if (fclose (fp) != 0) + return 6; + if (lseek (fd2, 0, SEEK_CUR) != -1) /* should fail with EBADF */ + return 7; + /* Verify the file position. */ + if (lseek (fd, 0, SEEK_CUR) != 2) + return 8; + return 0; + ]])], + [gl_cv_func_fclose_stdin=yes], + [gl_cv_func_fclose_stdin=no], + [case "$host_os" in + # Guess no on glibc systems. + *-gnu* | gnu*) gl_cv_func_fclose_stdin="guessing no" ;; + # Guess yes on musl systems. + *-musl* | midipix*) gl_cv_func_fclose_stdin="guessing yes" ;; + # Guess no on native Windows. + mingw*) gl_cv_func_fclose_stdin="guessing no" ;; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_fclose_stdin="$gl_cross_guess_normal" ;; + esac + ]) + rm conftest.txt + ]) +]) diff --git a/m4/fcntl-o.m4 b/m4/fcntl-o.m4 index 7c459ad..59d558b 100644 --- a/m4/fcntl-o.m4 +++ b/m4/fcntl-o.m4 @@ -1,5 +1,5 @@ # fcntl-o.m4 serial 7 -dnl Copyright (C) 2006, 2009-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2006, 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/fcntl.m4 b/m4/fcntl.m4 index f626434..524a99a 100644 --- a/m4/fcntl.m4 +++ b/m4/fcntl.m4 @@ -1,5 +1,5 @@ # fcntl.m4 serial 11 -dnl Copyright (C) 2009-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/fcntl_h.m4 b/m4/fcntl_h.m4 index aba4473..68f4e64 100644 --- a/m4/fcntl_h.m4 +++ b/m4/fcntl_h.m4 @@ -1,6 +1,6 @@ # serial 20 # Configure fcntl.h. -dnl Copyright (C) 2006-2007, 2009-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2006-2007, 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/fdopen.m4 b/m4/fdopen.m4 index e41ed63..6b3909b 100644 --- a/m4/fdopen.m4 +++ b/m4/fdopen.m4 @@ -1,5 +1,5 @@ # fdopen.m4 serial 5 -dnl Copyright (C) 2011-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2011-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/fflush.m4 b/m4/fflush.m4 new file mode 100644 index 0000000..3e3c890 --- /dev/null +++ b/m4/fflush.m4 @@ -0,0 +1,100 @@ +# fflush.m4 serial 18 + +# Copyright (C) 2007-2023 Free Software Foundation, Inc. +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +dnl From Eric Blake + +dnl Find out how to obey POSIX semantics of fflush(stdin) discarding +dnl unread input on seekable streams, rather than C99 undefined semantics. + +AC_DEFUN([gl_FUNC_FFLUSH], +[ + AC_REQUIRE([gl_STDIO_H_DEFAULTS]) + gl_FUNC_FFLUSH_STDIN + case "$gl_cv_func_fflush_stdin" in + *yes) ;; + *) REPLACE_FFLUSH=1 ;; + esac +]) + +dnl Determine whether fflush works on input streams. +dnl Sets gl_cv_func_fflush_stdin. + +AC_DEFUN([gl_FUNC_FFLUSH_STDIN], +[ + AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles + AC_CHECK_HEADERS_ONCE([unistd.h]) + AC_CACHE_CHECK([whether fflush works on input streams], + [gl_cv_func_fflush_stdin], + [echo hello world > conftest.txt + AC_RUN_IFELSE([AC_LANG_PROGRAM( + [[ +#include +#if HAVE_UNISTD_H +# include +#else /* on Windows with MSVC */ +# include +#endif + ]GL_MDA_DEFINES], + [[FILE *f = fopen ("conftest.txt", "r"); + char buffer[10]; + int fd; + int c; + if (f == NULL) + return 1; + fd = fileno (f); + if (fd < 0 || fread (buffer, 1, 5, f) != 5) + { fclose (f); return 2; } + /* For deterministic results, ensure f read a bigger buffer. */ + if (lseek (fd, 0, SEEK_CUR) == 5) + { fclose (f); return 3; } + /* POSIX requires fflush-fseek to set file offset of fd. This fails + on BSD systems and on mingw. */ + if (fflush (f) != 0 || fseek (f, 0, SEEK_CUR) != 0) + { fclose (f); return 4; } + if (lseek (fd, 0, SEEK_CUR) != 5) + { fclose (f); return 5; } + /* Verify behaviour of fflush after ungetc. See + */ + /* Verify behaviour of fflush after a backup ungetc. This fails on + mingw. */ + c = fgetc (f); + ungetc (c, f); + fflush (f); + if (fgetc (f) != c) + { fclose (f); return 6; } + /* Verify behaviour of fflush after a non-backup ungetc. This fails + on glibc 2.8 and on BSD systems. */ + c = fgetc (f); + ungetc ('@', f); + fflush (f); + if (fgetc (f) != c) + { fclose (f); return 7; } + fclose (f); + return 0; + ]])], + [gl_cv_func_fflush_stdin=yes], + [gl_cv_func_fflush_stdin=no], + [case "$host_os" in + # Guess no on native Windows. + mingw*) gl_cv_func_fflush_stdin="guessing no" ;; + *) gl_cv_func_fflush_stdin=cross ;; + esac + ]) + rm conftest.txt + ]) + case "$gl_cv_func_fflush_stdin" in + *yes) gl_func_fflush_stdin=1 ;; + *no) gl_func_fflush_stdin=0 ;; + *) gl_func_fflush_stdin='(-1)' ;; + esac + AC_DEFINE_UNQUOTED([FUNC_FFLUSH_STDIN], [$gl_func_fflush_stdin], + [Define to 1 if fflush is known to work on stdin as per POSIX.1-2008, + 0 if fflush is known to not work, -1 if unknown.]) +]) + +# Prerequisites of lib/fflush.c. +AC_DEFUN([gl_PREREQ_FFLUSH], [:]) diff --git a/m4/filenamecat.m4 b/m4/filenamecat.m4 index e6eac12..3dab236 100644 --- a/m4/filenamecat.m4 +++ b/m4/filenamecat.m4 @@ -1,5 +1,5 @@ -# filenamecat.m4 serial 11 -dnl Copyright (C) 2002-2006, 2009-2021 Free Software Foundation, Inc. +# filenamecat.m4 serial 12 +dnl Copyright (C) 2002-2006, 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -12,5 +12,5 @@ AC_DEFUN([gl_FILE_NAME_CONCAT], AC_DEFUN([gl_FILE_NAME_CONCAT_LGPL], [ dnl Prerequisites of lib/filenamecat-lgpl.c. - AC_CHECK_FUNCS_ONCE([mempcpy]) + gl_CHECK_FUNCS_ANDROID([mempcpy], [[#include ]]) ]) diff --git a/m4/flexmember.m4 b/m4/flexmember.m4 index 49b1c75..13f7e87 100644 --- a/m4/flexmember.m4 +++ b/m4/flexmember.m4 @@ -1,7 +1,7 @@ # serial 5 # Check for flexible array member support. -# Copyright (C) 2006, 2009-2021 Free Software Foundation, Inc. +# Copyright (C) 2006, 2009-2023 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. diff --git a/m4/float_h.m4 b/m4/float_h.m4 index ba38a28..2f0c9c4 100644 --- a/m4/float_h.m4 +++ b/m4/float_h.m4 @@ -1,5 +1,5 @@ -# float_h.m4 serial 12 -dnl Copyright (C) 2007, 2009-2021 Free Software Foundation, Inc. +# float_h.m4 serial 13 +dnl Copyright (C) 2007, 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -8,18 +8,18 @@ AC_DEFUN([gl_FLOAT_H], [ AC_REQUIRE([AC_PROG_CC]) AC_REQUIRE([AC_CANONICAL_HOST]) - FLOAT_H= + GL_GENERATE_FLOAT_H=false REPLACE_FLOAT_LDBL=0 case "$host_os" in aix* | beos* | openbsd* | mirbsd* | irix*) - FLOAT_H=float.h + GL_GENERATE_FLOAT_H=true ;; freebsd* | dragonfly*) case "$host_cpu" in changequote(,)dnl i[34567]86 ) changequote([,])dnl - FLOAT_H=float.h + GL_GENERATE_FLOAT_H=true ;; x86_64 ) # On x86_64 systems, the C compiler may still be generating @@ -33,21 +33,21 @@ changequote([,])dnl #endif ]])], [], - [FLOAT_H=float.h]) + [GL_GENERATE_FLOAT_H=true]) ;; esac ;; linux*) case "$host_cpu" in powerpc*) - FLOAT_H=float.h + GL_GENERATE_FLOAT_H=true ;; esac ;; esac case "$host_os" in aix* | freebsd* | dragonfly* | linux*) - if test -n "$FLOAT_H"; then + if $GL_GENERATE_FLOAT_H; then REPLACE_FLOAT_LDBL=1 fi ;; @@ -95,14 +95,12 @@ int main () REPLACE_ITOLD=1 dnl We add the workaround to but also to , dnl to increase the chances that the fix function gets pulled in. - FLOAT_H=float.h + GL_GENERATE_FLOAT_H=true ;; esac - if test -n "$FLOAT_H"; then + if $GL_GENERATE_FLOAT_H; then gl_NEXT_HEADERS([float.h]) fi - AC_SUBST([FLOAT_H]) - AM_CONDITIONAL([GL_GENERATE_FLOAT_H], [test -n "$FLOAT_H"]) AC_SUBST([REPLACE_ITOLD]) ]) diff --git a/m4/fnmatch.m4 b/m4/fnmatch.m4 index 81589ca..895db13 100644 --- a/m4/fnmatch.m4 +++ b/m4/fnmatch.m4 @@ -1,6 +1,6 @@ -# Check for fnmatch - serial 15. -*- coding: utf-8 -*- +# Check for fnmatch - serial 16. -*- coding: utf-8 -*- -# Copyright (C) 2000-2007, 2009-2021 Free Software Foundation, Inc. +# Copyright (C) 2000-2007, 2009-2023 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -119,10 +119,10 @@ AC_DEFUN([gl_FUNC_FNMATCH_POSIX], [eval "$gl_fnmatch_cache_var=yes"], [eval "$gl_fnmatch_cache_var=no"], [case "$host_os" in - # Guess yes on musl systems. - *-musl*) eval "$gl_fnmatch_cache_var=\"guessing yes\"" ;; - # Guess no otherwise, even on glibc systems. - *) eval "$gl_fnmatch_cache_var=\"guessing no\"" ;; + # Guess yes on musl systems. + *-musl* | midipix*) eval "$gl_fnmatch_cache_var=\"guessing yes\"" ;; + # Guess no otherwise, even on glibc systems. + *) eval "$gl_fnmatch_cache_var=\"guessing no\"" ;; esac ]) ]) diff --git a/m4/fnmatch_h.m4 b/m4/fnmatch_h.m4 index e9bcb66..40a62b6 100644 --- a/m4/fnmatch_h.m4 +++ b/m4/fnmatch_h.m4 @@ -1,5 +1,5 @@ -# fnmatch_h.m4 serial 7 -dnl Copyright (C) 2009-2021 Free Software Foundation, Inc. +# fnmatch_h.m4 serial 8 +dnl Copyright (C) 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -27,20 +27,18 @@ AC_DEFUN_ONCE([gl_FNMATCH_H], AC_SUBST([HAVE_FNMATCH_H]) m4_ifdef([gl_POSIXCHECK], - [FNMATCH_H=fnmatch.h], - [FNMATCH_H='' + [GL_GENERATE_FNMATCH_H=true], + [GL_GENERATE_FNMATCH_H=false if m4_ifdef([gl_ANSI_CXX], [test "$CXX" != no], [false]); then dnl Override always, to support the C++ GNULIB_NAMESPACE. - FNMATCH_H=fnmatch.h + GL_GENERATE_FNMATCH_H=true else if test $ac_cv_header_fnmatch_h != yes; then dnl Provide a substitute file. - FNMATCH_H=fnmatch.h + GL_GENERATE_FNMATCH_H=true fi fi ]) - AC_SUBST([FNMATCH_H]) - AM_CONDITIONAL([GL_GENERATE_FNMATCH_H], [test -n "$FNMATCH_H"]) dnl Check for declarations of anything we want to poison if the dnl corresponding gnulib module is not in use. @@ -53,8 +51,7 @@ dnl Unconditionally enables the replacement of . AC_DEFUN([gl_REPLACE_FNMATCH_H], [ gl_FNMATCH_H_REQUIRE_DEFAULTS - FNMATCH_H='fnmatch.h' - AM_CONDITIONAL([GL_GENERATE_FNMATCH_H], [test -n "$FNMATCH_H"]) + GL_GENERATE_FNMATCH_H=true ]) # gl_FNMATCH_MODULE_INDICATOR([modulename]) diff --git a/m4/fopen.m4 b/m4/fopen.m4 index 4ed7dce..7daa4ca 100644 --- a/m4/fopen.m4 +++ b/m4/fopen.m4 @@ -1,10 +1,10 @@ -# fopen.m4 serial 12 -dnl Copyright (C) 2007-2021 Free Software Foundation, Inc. +# fopen.m4 serial 15 +dnl Copyright (C) 2007-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. -AC_DEFUN([gl_FUNC_FOPEN], +AC_DEFUN([gl_FUNC_FOPEN_ITSELF], [ AC_REQUIRE([gl_STDIO_H_DEFAULTS]) AC_REQUIRE([AC_CANONICAL_HOST]) @@ -58,6 +58,15 @@ changequote([,])dnl esac ]) +AC_DEFUN([gl_FUNC_FOPEN], +[ + AC_REQUIRE([gl_FUNC_FOPEN_ITSELF]) + AC_REQUIRE([gl_FUNC_FCLOSE]) + if test $REPLACE_FCLOSE = 1; then + REPLACE_FOPEN=1 + fi +]) + AC_DEFUN([gl_FUNC_FOPEN_GNU], [ AC_REQUIRE([gl_FUNC_FOPEN]) @@ -87,7 +96,7 @@ int main () [gl_cv_func_fopen_mode_x=no], [case "$host_os" in # Guess yes on glibc and musl systems. - linux*-gnu* | gnu* | kfreebsd*-gnu | *-musl*) + linux*-gnu* | gnu* | kfreebsd*-gnu | *-musl* | midipix*) gl_cv_func_fopen_mode_x="guessing yes" ;; # If we don't know, obey --enable-cross-guesses. *) @@ -124,7 +133,7 @@ int main () [gl_cv_func_fopen_mode_e=no], [case "$host_os" in # Guess yes on glibc and musl systems. - linux*-gnu* | gnu* | kfreebsd*-gnu | *-musl*) + linux*-gnu* | gnu* | kfreebsd*-gnu | *-musl* | midipix*) gl_cv_func_fopen_mode_e="guessing yes" ;; # Guess no on native Windows. mingw*) @@ -136,11 +145,12 @@ int main () ]) rm -f conftest.x ]) + REPLACE_FOPEN_FOR_FOPEN_GNU="$REPLACE_FOPEN" case "$gl_cv_func_fopen_mode_x" in - *no) REPLACE_FOPEN=1 ;; + *no) REPLACE_FOPEN_FOR_FOPEN_GNU=1 ;; esac case "$gl_cv_func_fopen_mode_e" in - *no) REPLACE_FOPEN=1 ;; + *no) REPLACE_FOPEN_FOR_FOPEN_GNU=1 ;; esac ]) diff --git a/m4/fpieee.m4 b/m4/fpieee.m4 index 3f16957..706b331 100644 --- a/m4/fpieee.m4 +++ b/m4/fpieee.m4 @@ -1,5 +1,5 @@ # fpieee.m4 serial 2 -*- coding: utf-8 -*- -dnl Copyright (C) 2007, 2009-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2007, 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/free.m4 b/m4/free.m4 index a7923b9..0389dea 100644 --- a/m4/free.m4 +++ b/m4/free.m4 @@ -1,5 +1,5 @@ # free.m4 serial 6 -# Copyright (C) 2003-2005, 2009-2021 Free Software Foundation, Inc. +# Copyright (C) 2003-2005, 2009-2023 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. diff --git a/m4/freopen.m4 b/m4/freopen.m4 index d5a3512..459f8c4 100644 --- a/m4/freopen.m4 +++ b/m4/freopen.m4 @@ -1,5 +1,5 @@ # freopen.m4 serial 7 -dnl Copyright (C) 2007-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2007-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/fstat.m4 b/m4/fstat.m4 index cdaca80..7cb2edb 100644 --- a/m4/fstat.m4 +++ b/m4/fstat.m4 @@ -1,5 +1,5 @@ # fstat.m4 serial 8 -dnl Copyright (C) 2011-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2011-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/ftruncate.m4 b/m4/ftruncate.m4 index 4a3eca6..cbb5f42 100644 --- a/m4/ftruncate.m4 +++ b/m4/ftruncate.m4 @@ -1,8 +1,8 @@ -# serial 21 +# serial 23 # See if we need to emulate a missing ftruncate function using _chsize. -# Copyright (C) 2000-2001, 2003-2007, 2009-2021 Free Software Foundation, Inc. +# Copyright (C) 2000-2001, 2003-2007, 2009-2023 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -10,7 +10,7 @@ AC_DEFUN([gl_FUNC_FTRUNCATE], [ AC_REQUIRE([gl_UNISTD_H_DEFAULTS]) - AC_CHECK_FUNCS_ONCE([ftruncate]) + gl_CHECK_FUNCS_ANDROID([ftruncate], [[#include ]]) if test $ac_cv_func_ftruncate = yes; then m4_ifdef([gl_LARGEFILE], [ AC_REQUIRE([AC_CANONICAL_HOST]) @@ -30,6 +30,9 @@ AC_DEFUN([gl_FUNC_FTRUNCATE], ]) else HAVE_FTRUNCATE=0 + case "$gl_cv_onwards_func_ftruncate" in + future*) REPLACE_FTRUNCATE=1 ;; + esac fi ]) diff --git a/m4/getcwd.m4 b/m4/getcwd.m4 index 6ec7a94..e95db05 100644 --- a/m4/getcwd.m4 +++ b/m4/getcwd.m4 @@ -1,12 +1,12 @@ # getcwd.m4 - check for working getcwd that is compatible with glibc -# Copyright (C) 2001, 2003-2007, 2009-2021 Free Software Foundation, Inc. +# Copyright (C) 2001, 2003-2007, 2009-2023 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # Written by Paul Eggert. -# serial 19 +# serial 20 AC_DEFUN([gl_FUNC_GETCWD_NULL], [ @@ -53,6 +53,8 @@ AC_DEFUN([gl_FUNC_GETCWD_NULL], *-gnu* | gnu*) gl_cv_func_getcwd_null="guessing yes";; # Guess yes on musl systems. *-musl*) gl_cv_func_getcwd_null="guessing yes";; + # Guess yes on systems that emulate the Linux system calls. + midipix*) gl_cv_func_getcwd_null="guessing yes";; # Guess yes on Cygwin. cygwin*) gl_cv_func_getcwd_null="guessing yes";; # If we don't know, obey --enable-cross-guesses. diff --git a/m4/getdtablesize.m4 b/m4/getdtablesize.m4 index 8fbc941..8bcda90 100644 --- a/m4/getdtablesize.m4 +++ b/m4/getdtablesize.m4 @@ -1,5 +1,5 @@ # getdtablesize.m4 serial 8 -dnl Copyright (C) 2008-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2008-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/getopt.m4 b/m4/getopt.m4 index bb95c5e..7981a09 100644 --- a/m4/getopt.m4 +++ b/m4/getopt.m4 @@ -1,5 +1,5 @@ -# getopt.m4 serial 47 -dnl Copyright (C) 2002-2006, 2008-2021 Free Software Foundation, Inc. +# getopt.m4 serial 48 +dnl Copyright (C) 2002-2006, 2008-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -21,6 +21,8 @@ AC_DEFUN([gl_FUNC_GETOPT_POSIX], REPLACE_GETOPT=1 fi ]) + GL_GENERATE_GETOPT_H=false + GL_GENERATE_GETOPT_CDEFS_H=false if test $REPLACE_GETOPT = 1; then dnl Arrange for getopt.h to be created. gl_GETOPT_SUBSTITUTE_HEADER @@ -374,8 +376,6 @@ AC_DEFUN([gl_GETOPT_SUBSTITUTE_HEADER], AC_DEFINE([__GETOPT_PREFIX], [[rpl_]], [Define to rpl_ if the getopt replacement functions and variables should be used.]) - GETOPT_H=getopt.h - GETOPT_CDEFS_H=getopt-cdefs.h - AC_SUBST([GETOPT_H]) - AC_SUBST([GETOPT_CDEFS_H]) + GL_GENERATE_GETOPT_H=true + GL_GENERATE_GETOPT_CDEFS_H=true ]) diff --git a/m4/getpagesize.m4 b/m4/getpagesize.m4 index 7e61801..79925a7 100644 --- a/m4/getpagesize.m4 +++ b/m4/getpagesize.m4 @@ -1,5 +1,5 @@ # getpagesize.m4 serial 10 -dnl Copyright (C) 2002, 2004-2005, 2007, 2009-2021 Free Software Foundation, +dnl Copyright (C) 2002, 2004-2005, 2007, 2009-2023 Free Software Foundation, dnl Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, diff --git a/m4/getprogname.m4 b/m4/getprogname.m4 index 65917d6..2b741f5 100644 --- a/m4/getprogname.m4 +++ b/m4/getprogname.m4 @@ -1,16 +1,33 @@ # getprogname.m4 - check for getprogname or replacements for it -# Copyright (C) 2016-2021 Free Software Foundation, Inc. +# Copyright (C) 2016-2023 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 4 +# serial 8 AC_DEFUN([gl_FUNC_GETPROGNAME], [ - AC_CHECK_FUNCS_ONCE([getprogname getexecname]) + AC_REQUIRE([gl_STDLIB_H_DEFAULTS]) AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS]) + gl_CHECK_FUNCS_ANDROID([getprogname], [[#include ]]) + if test $ac_cv_func_getprogname = no; then + HAVE_GETPROGNAME=0 + case "$gl_cv_onwards_func_getprogname" in + future*) REPLACE_GETPROGNAME=1 ;; + esac + fi + AC_CHECK_DECLS([program_invocation_name], + [], + [HAVE_DECL_PROGRAM_INVOCATION_NAME=0], + [[#include ]]) +]) + +AC_DEFUN([gl_PREREQ_GETPROGNAME], +[ + AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS]) + AC_CHECK_FUNCS_ONCE([getexecname]) ac_found=0 AC_CHECK_DECLS([program_invocation_name], [ac_found=1], [], [#include ]) diff --git a/m4/getrandom.m4 b/m4/getrandom.m4 index 5f174dc..7b7f9ce 100644 --- a/m4/getrandom.m4 +++ b/m4/getrandom.m4 @@ -1,5 +1,5 @@ -# getrandom.m4 serial 8 -dnl Copyright 2020-2021 Free Software Foundation, Inc. +# getrandom.m4 serial 11 +dnl Copyright 2020-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -9,9 +9,18 @@ dnl Written by Paul Eggert. AC_DEFUN([gl_FUNC_GETRANDOM], [ AC_REQUIRE([gl_SYS_RANDOM_H_DEFAULTS]) - AC_CHECK_FUNCS_ONCE([getrandom]) + gl_CHECK_FUNCS_ANDROID([getrandom], + [[/* Additional includes are needed before on uClibc + and Mac OS X. */ + #include + #include + #include + ]]) if test "$ac_cv_func_getrandom" != yes; then HAVE_GETRANDOM=0 + case "$gl_cv_onwards_func_getrandom" in + future*) REPLACE_GETRANDOM=1 ;; + esac else dnl On Solaris 11.4 the return type is 'int', not 'ssize_t'. AC_CACHE_CHECK([whether getrandom is compatible with its GNU+BSD signature], @@ -56,13 +65,16 @@ AC_DEFUN([gl_FUNC_GETRANDOM], if test $gl_cv_lib_assume_bcrypt = yes; then AC_DEFINE([HAVE_LIB_BCRYPT], [1], [Define to 1 if the bcrypt library is guaranteed to be present.]) - LIB_GETRANDOM='-lbcrypt' + GETRANDOM_LIB='-lbcrypt' else - LIB_GETRANDOM='-ladvapi32' + GETRANDOM_LIB='-ladvapi32' fi ;; *) - LIB_GETRANDOM= ;; + GETRANDOM_LIB= ;; esac + AC_SUBST([GETRANDOM_LIB]) + dnl For backward compatibility. + LIB_GETRANDOM="$GETRANDOM_LIB" AC_SUBST([LIB_GETRANDOM]) ]) diff --git a/m4/gettime.m4 b/m4/gettime.m4 index de7c330..ec1f97e 100644 --- a/m4/gettime.m4 +++ b/m4/gettime.m4 @@ -1,5 +1,5 @@ -# gettime.m4 serial 9 -dnl Copyright (C) 2002, 2004-2006, 2009-2021 Free Software Foundation, Inc. +# gettime.m4 serial 14 +dnl Copyright (C) 2002, 2004-2006, 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -9,5 +9,60 @@ AC_DEFUN([gl_GETTIME], dnl Prerequisites of lib/gettime.c. AC_REQUIRE([gl_CLOCK_TIME]) AC_REQUIRE([gl_TIMESPEC]) - AC_CHECK_FUNCS_ONCE([gettimeofday]) + + AC_REQUIRE([gl_CHECK_FUNC_TIMESPEC_GET]) + if test $gl_cv_func_timespec_get = yes; then + AC_DEFINE([HAVE_TIMESPEC_GET], [1], + [Define if you have the timespec_get function.]) + fi +]) + +dnl Tests whether the function timespec_get exists. +dnl Sets gl_cv_func_timespec_get and gl_cv_onwards_func_timespec_get. +AC_DEFUN([gl_CHECK_FUNC_TIMESPEC_GET], +[ + AC_REQUIRE([AC_CANONICAL_HOST]) + + dnl Persuade OpenBSD to declare timespec_get(). + AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS]) + + dnl We can't use AC_CHECK_FUNC here, because timespec_get() is defined as a + dnl static inline function in on MSVC 14. + dnl But at the same time, we need to notice a missing declaration, like + dnl gl_CHECK_FUNCS_ANDROID does. + AC_CHECK_DECL([timespec_get], , , [[#include ]]) + AC_CACHE_CHECK([for timespec_get], [gl_cv_onwards_func_timespec_get], + [if test $ac_cv_have_decl_timespec_get = yes; then + AC_LINK_IFELSE( + [AC_LANG_PROGRAM( + [[#include + struct timespec ts; + ]], + [[return timespec_get (&ts, 0);]]) + ], + [gl_cv_onwards_func_timespec_get=yes], + [gl_cv_onwards_func_timespec_get=no]) + else + gl_cv_onwards_func_timespec_get=no + fi + case "$host_os" in + linux*-android*) + if test $gl_cv_onwards_func_timespec_get = no; then + gl_cv_onwards_func_timespec_get='future OS version' + fi + ;; + esac + ]) + case "$gl_cv_onwards_func_timespec_get" in + future*) gl_cv_func_timespec_get=no ;; + *) gl_cv_func_timespec_get=$gl_cv_onwards_func_timespec_get ;; + esac +]) + +AC_DEFUN([gl_GETTIME_RES], +[ + dnl Prerequisites of lib/gettime-res.c. + AC_REQUIRE([gl_CLOCK_TIME]) + AC_REQUIRE([gl_TIMESPEC]) + AC_CHECK_FUNCS_ONCE([timespec_getres]) ]) diff --git a/m4/gettimeofday.m4 b/m4/gettimeofday.m4 index 37c5440..5051d61 100644 --- a/m4/gettimeofday.m4 +++ b/m4/gettimeofday.m4 @@ -1,6 +1,6 @@ # serial 29 -# Copyright (C) 2001-2003, 2005, 2007, 2009-2021 Free Software Foundation, Inc. +# Copyright (C) 2001-2003, 2005, 2007, 2009-2023 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. diff --git a/m4/gnu-make.m4 b/m4/gnu-make.m4 index 9a5b676..6f7c306 100644 --- a/m4/gnu-make.m4 +++ b/m4/gnu-make.m4 @@ -1,6 +1,6 @@ # Determine whether recent-enough GNU Make is being used. -# Copyright (C) 2007, 2009-2021 Free Software Foundation, Inc. +# Copyright (C) 2007, 2009-2023 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, diff --git a/m4/gnulib-common.m4 b/m4/gnulib-common.m4 index 2872ecd..a2b53d3 100644 --- a/m4/gnulib-common.m4 +++ b/m4/gnulib-common.m4 @@ -1,5 +1,5 @@ -# gnulib-common.m4 serial 66 -dnl Copyright (C) 2007-2021 Free Software Foundation, Inc. +# gnulib-common.m4 serial 87 +dnl Copyright (C) 2007-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -15,6 +15,10 @@ AC_DEFUN([gl_COMMON], [ AC_REQUIRE([gl_ZZGNULIB]) ]) AC_DEFUN([gl_COMMON_BODY], [ + AH_VERBATIM([0witness], +[/* Witness that has been included. */ +#define _GL_CONFIG_H_INCLUDED 1 +]) AH_VERBATIM([_GL_GNUC_PREREQ], [/* True if the compiler says it groks GNU C version MAJOR.MINOR. */ #if defined __GNUC__ && defined __GNUC_MINOR__ @@ -38,6 +42,11 @@ AC_DEFUN([gl_COMMON_BODY], [ AIX system header files and several gnulib header files use precisely this syntax with 'extern'. */ # define _Noreturn [[noreturn]] +# elif (defined __clang__ && __clang_major__ < 16 \ + && defined _GL_WORK_AROUND_LLVM_BUG_59792) + /* Compile with -D_GL_WORK_AROUND_LLVM_BUG_59792 to work around + that rare LLVM bug, though you may get many false-alarm warnings. */ +# define _Noreturn # elif ((!defined __cplusplus || defined __clang__) \ && (201112 <= (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) \ || (!defined __STRICT_ANSI__ \ @@ -69,7 +78,9 @@ AC_DEFUN([gl_COMMON_BODY], [ [/* Attributes. */ #if (defined __has_attribute \ && (!defined __clang_minor__ \ - || 3 < __clang_major__ + (5 <= __clang_minor__))) + || (defined __apple_build_version__ \ + ? 6000000 <= __apple_build_version__ \ + : 5 <= __clang_major__))) # define _GL_HAS_ATTRIBUTE(attr) __has_attribute (__##attr##__) #else # define _GL_HAS_ATTRIBUTE(attr) _GL_ATTR_##attr @@ -85,12 +96,12 @@ AC_DEFUN([gl_COMMON_BODY], [ # define _GL_ATTR_fallthrough _GL_GNUC_PREREQ (7, 0) # define _GL_ATTR_format _GL_GNUC_PREREQ (2, 7) # define _GL_ATTR_leaf _GL_GNUC_PREREQ (4, 6) +# define _GL_ATTR_malloc _GL_GNUC_PREREQ (3, 0) # ifdef _ICC # define _GL_ATTR_may_alias 0 # else # define _GL_ATTR_may_alias _GL_GNUC_PREREQ (3, 3) # endif -# define _GL_ATTR_malloc _GL_GNUC_PREREQ (3, 0) # define _GL_ATTR_noinline _GL_GNUC_PREREQ (3, 1) # define _GL_ATTR_nonnull _GL_GNUC_PREREQ (3, 3) # define _GL_ATTR_nonstring _GL_GNUC_PREREQ (8, 0) @@ -103,203 +114,454 @@ AC_DEFUN([gl_COMMON_BODY], [ # define _GL_ATTR_warn_unused_result _GL_GNUC_PREREQ (3, 4) #endif -#ifdef __has_c_attribute -# define _GL_HAS_C_ATTRIBUTE(attr) __has_c_attribute (__##attr##__) -#else -# define _GL_HAS_C_ATTRIBUTE(attr) 0 +/* Disable GCC -Wpedantic if using __has_c_attribute and this is not C23+. */ +#if (defined __has_c_attribute && _GL_GNUC_PREREQ (4, 6) \ + && (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) <= 201710) +# pragma GCC diagnostic ignored "-Wpedantic" #endif -]dnl There is no _GL_ATTRIBUTE_ALIGNED; use stdalign's _Alignas instead. -[ -#if _GL_HAS_ATTRIBUTE (alloc_size) -# define _GL_ATTRIBUTE_ALLOC_SIZE(args) __attribute__ ((__alloc_size__ args)) +/* Define if, in a function declaration, the attributes in bracket syntax + [[...]] must come before the attributes in __attribute__((...)) syntax. + If this is defined, it is best to avoid the bracket syntax, so that the + various _GL_ATTRIBUTE_* can be cumulated on the same declaration in any + order. */ +#ifdef __cplusplus +# if defined __clang__ +# define _GL_BRACKET_BEFORE_ATTRIBUTE 1 +# endif #else -# define _GL_ATTRIBUTE_ALLOC_SIZE(args) +# if defined __GNUC__ && !defined __clang__ +# define _GL_BRACKET_BEFORE_ATTRIBUTE 1 +# endif +#endif +]dnl There is no _GL_ATTRIBUTE_ALIGNED; use stdalign's alignas instead. +[ +/* _GL_ATTRIBUTE_ALLOC_SIZE ((N)) declares that the Nth argument of the function + is the size of the returned memory block. + _GL_ATTRIBUTE_ALLOC_SIZE ((M, N)) declares that the Mth argument multiplied + by the Nth argument of the function is the size of the returned memory block. + */ +/* Applies to: function, pointer to function, function types. */ +#ifndef _GL_ATTRIBUTE_ALLOC_SIZE +# if _GL_HAS_ATTRIBUTE (alloc_size) +# define _GL_ATTRIBUTE_ALLOC_SIZE(args) __attribute__ ((__alloc_size__ args)) +# else +# define _GL_ATTRIBUTE_ALLOC_SIZE(args) +# endif #endif -#if _GL_HAS_ATTRIBUTE (always_inline) -# define _GL_ATTRIBUTE_ALWAYS_INLINE __attribute__ ((__always_inline__)) -#else -# define _GL_ATTRIBUTE_ALWAYS_INLINE +/* _GL_ATTRIBUTE_ALWAYS_INLINE tells that the compiler should always inline the + function and report an error if it cannot do so. */ +/* Applies to: function. */ +#ifndef _GL_ATTRIBUTE_ALWAYS_INLINE +# if _GL_HAS_ATTRIBUTE (always_inline) +# define _GL_ATTRIBUTE_ALWAYS_INLINE __attribute__ ((__always_inline__)) +# else +# define _GL_ATTRIBUTE_ALWAYS_INLINE +# endif #endif -#if _GL_HAS_ATTRIBUTE (artificial) -# define _GL_ATTRIBUTE_ARTIFICIAL __attribute__ ((__artificial__)) -#else -# define _GL_ATTRIBUTE_ARTIFICIAL +/* _GL_ATTRIBUTE_ARTIFICIAL declares that the function is not important to show + in stack traces when debugging. The compiler should omit the function from + stack traces. */ +/* Applies to: function. */ +#ifndef _GL_ATTRIBUTE_ARTIFICIAL +# if _GL_HAS_ATTRIBUTE (artificial) +# define _GL_ATTRIBUTE_ARTIFICIAL __attribute__ ((__artificial__)) +# else +# define _GL_ATTRIBUTE_ARTIFICIAL +# endif #endif +/* _GL_ATTRIBUTE_COLD declares that the function is rarely executed. */ +/* Applies to: functions. */ /* Avoid __attribute__ ((cold)) on MinGW; see thread starting at . Also, Oracle Studio 12.6 requires 'cold' not '__cold__'. */ -#if _GL_HAS_ATTRIBUTE (cold) && !defined __MINGW32__ -# ifndef __SUNPRO_C -# define _GL_ATTRIBUTE_COLD __attribute__ ((__cold__)) +#ifndef _GL_ATTRIBUTE_COLD +# if _GL_HAS_ATTRIBUTE (cold) && !defined __MINGW32__ +# ifndef __SUNPRO_C +# define _GL_ATTRIBUTE_COLD __attribute__ ((__cold__)) +# else +# define _GL_ATTRIBUTE_COLD __attribute__ ((cold)) +# endif # else -# define _GL_ATTRIBUTE_COLD __attribute__ ((cold)) +# define _GL_ATTRIBUTE_COLD # endif -#else -# define _GL_ATTRIBUTE_COLD #endif -#if _GL_HAS_ATTRIBUTE (const) -# define _GL_ATTRIBUTE_CONST __attribute__ ((__const__)) -#else -# define _GL_ATTRIBUTE_CONST +/* _GL_ATTRIBUTE_CONST declares that it is OK for a compiler to omit duplicate + calls to the function with the same arguments. + This attribute is safe for a function that neither depends on nor affects + observable state, and always returns exactly once - e.g., does not loop + forever, and does not call longjmp. + (This attribute is stricter than _GL_ATTRIBUTE_PURE.) */ +/* Applies to: functions. */ +#ifndef _GL_ATTRIBUTE_CONST +# if _GL_HAS_ATTRIBUTE (const) +# define _GL_ATTRIBUTE_CONST __attribute__ ((__const__)) +# else +# define _GL_ATTRIBUTE_CONST +# endif #endif -/* _GL_ATTRIBUTE_DEALLOC (F, I) is for functions returning pointers +/* _GL_ATTRIBUTE_DEALLOC (F, I) declares that the function returns pointers that can be freed by passing them as the Ith argument to the - function F. _GL_ATTRIBUTE_DEALLOC_FREE is for functions that - return pointers that can be freed via 'free'; it can be used - only after including stdlib.h. */ -#if _GL_GNUC_PREREQ (11, 0) -# define _GL_ATTRIBUTE_DEALLOC(f, i) __attribute__ ((__malloc__ (f, i))) -#else -# define _GL_ATTRIBUTE_DEALLOC(f, i) + function F. + _GL_ATTRIBUTE_DEALLOC_FREE declares that the function returns pointers that + can be freed via 'free'; it can be used only after declaring 'free'. */ +/* Applies to: functions. Cannot be used on inline functions. */ +#ifndef _GL_ATTRIBUTE_DEALLOC +# if _GL_GNUC_PREREQ (11, 0) +# define _GL_ATTRIBUTE_DEALLOC(f, i) __attribute__ ((__malloc__ (f, i))) +# else +# define _GL_ATTRIBUTE_DEALLOC(f, i) +# endif +#endif +/* If gnulib's or has already defined this macro, continue + to use this earlier definition, since may not have been included + yet. */ +#ifndef _GL_ATTRIBUTE_DEALLOC_FREE +# if defined __cplusplus && defined __GNUC__ && !defined __clang__ +/* Work around GCC bug */ +# define _GL_ATTRIBUTE_DEALLOC_FREE \ + _GL_ATTRIBUTE_DEALLOC ((void (*) (void *)) free, 1) +# else +# define _GL_ATTRIBUTE_DEALLOC_FREE \ + _GL_ATTRIBUTE_DEALLOC (free, 1) +# endif #endif -#define _GL_ATTRIBUTE_DEALLOC_FREE _GL_ATTRIBUTE_DEALLOC (free, 1) -#if _GL_HAS_C_ATTRIBUTE (deprecated) -# define _GL_ATTRIBUTE_DEPRECATED [[__deprecated__]] -#elif _GL_HAS_ATTRIBUTE (deprecated) -# define _GL_ATTRIBUTE_DEPRECATED __attribute__ ((__deprecated__)) -#else -# define _GL_ATTRIBUTE_DEPRECATED +/* _GL_ATTRIBUTE_DEPRECATED: Declares that an entity is deprecated. + The compiler may warn if the entity is used. */ +/* Applies to: + - function, variable, + - struct, union, struct/union member, + - enumeration, enumeration item, + - typedef, + in C++ also: namespace, class, template specialization. */ +#ifndef _GL_ATTRIBUTE_DEPRECATED +# ifndef _GL_BRACKET_BEFORE_ATTRIBUTE +# ifdef __has_c_attribute +# if __has_c_attribute (__deprecated__) +# define _GL_ATTRIBUTE_DEPRECATED [[__deprecated__]] +# endif +# endif +# endif +# if !defined _GL_ATTRIBUTE_DEPRECATED && _GL_HAS_ATTRIBUTE (deprecated) +# define _GL_ATTRIBUTE_DEPRECATED __attribute__ ((__deprecated__)) +# endif +# ifndef _GL_ATTRIBUTE_DEPRECATED +# define _GL_ATTRIBUTE_DEPRECATED +# endif #endif -#if _GL_HAS_ATTRIBUTE (error) -# define _GL_ATTRIBUTE_ERROR(msg) __attribute__ ((__error__ (msg))) -# define _GL_ATTRIBUTE_WARNING(msg) __attribute__ ((__warning__ (msg))) -#elif _GL_HAS_ATTRIBUTE (diagnose_if) -# define _GL_ATTRIBUTE_ERROR(msg) __attribute__ ((__diagnose_if__ (1, msg, "error"))) -# define _GL_ATTRIBUTE_WARNING(msg) __attribute__ ((__diagnose_if__ (1, msg, "warning"))) -#else -# define _GL_ATTRIBUTE_ERROR(msg) -# define _GL_ATTRIBUTE_WARNING(msg) +/* _GL_ATTRIBUTE_ERROR(msg) requests an error if a function is called and + the function call is not optimized away. + _GL_ATTRIBUTE_WARNING(msg) requests a warning if a function is called and + the function call is not optimized away. */ +/* Applies to: functions. */ +#if !(defined _GL_ATTRIBUTE_ERROR && defined _GL_ATTRIBUTE_WARNING) +# if _GL_HAS_ATTRIBUTE (error) +# define _GL_ATTRIBUTE_ERROR(msg) __attribute__ ((__error__ (msg))) +# define _GL_ATTRIBUTE_WARNING(msg) __attribute__ ((__warning__ (msg))) +# elif _GL_HAS_ATTRIBUTE (diagnose_if) +# define _GL_ATTRIBUTE_ERROR(msg) __attribute__ ((__diagnose_if__ (1, msg, "error"))) +# define _GL_ATTRIBUTE_WARNING(msg) __attribute__ ((__diagnose_if__ (1, msg, "warning"))) +# else +# define _GL_ATTRIBUTE_ERROR(msg) +# define _GL_ATTRIBUTE_WARNING(msg) +# endif #endif -#if _GL_HAS_ATTRIBUTE (externally_visible) -# define _GL_ATTRIBUTE_EXTERNALLY_VISIBLE __attribute__ ((externally_visible)) -#else -# define _GL_ATTRIBUTE_EXTERNALLY_VISIBLE +/* _GL_ATTRIBUTE_EXTERNALLY_VISIBLE declares that the entity should remain + visible to debuggers etc., even with '-fwhole-program'. */ +/* Applies to: functions, variables. */ +#ifndef _GL_ATTRIBUTE_EXTERNALLY_VISIBLE +# if _GL_HAS_ATTRIBUTE (externally_visible) +# define _GL_ATTRIBUTE_EXTERNALLY_VISIBLE __attribute__ ((externally_visible)) +# else +# define _GL_ATTRIBUTE_EXTERNALLY_VISIBLE +# endif #endif -/* FALLTHROUGH is special, because it always expands to something. */ -#if _GL_HAS_C_ATTRIBUTE (fallthrough) -# define _GL_ATTRIBUTE_FALLTHROUGH [[__fallthrough__]] -#elif _GL_HAS_ATTRIBUTE (fallthrough) -# define _GL_ATTRIBUTE_FALLTHROUGH __attribute__ ((__fallthrough__)) -#else -# define _GL_ATTRIBUTE_FALLTHROUGH ((void) 0) +/* _GL_ATTRIBUTE_FALLTHROUGH declares that it is not a programming mistake if + the control flow falls through to the immediately following 'case' or + 'default' label. The compiler should not warn in this case. */ +/* Applies to: Empty statement (;), inside a 'switch' statement. */ +/* Always expands to something. */ +#ifndef _GL_ATTRIBUTE_FALLTHROUGH +# ifdef __has_c_attribute +# if __has_c_attribute (__fallthrough__) +# define _GL_ATTRIBUTE_FALLTHROUGH [[__fallthrough__]] +# endif +# endif +# if !defined _GL_ATTRIBUTE_FALLTHROUGH && _GL_HAS_ATTRIBUTE (fallthrough) +# define _GL_ATTRIBUTE_FALLTHROUGH __attribute__ ((__fallthrough__)) +# endif +# ifndef _GL_ATTRIBUTE_FALLTHROUGH +# define _GL_ATTRIBUTE_FALLTHROUGH ((void) 0) +# endif #endif -#if _GL_HAS_ATTRIBUTE (format) -# define _GL_ATTRIBUTE_FORMAT(spec) __attribute__ ((__format__ spec)) -#else -# define _GL_ATTRIBUTE_FORMAT(spec) +/* _GL_ATTRIBUTE_FORMAT ((ARCHETYPE, STRING-INDEX, FIRST-TO-CHECK)) + declares that the STRING-INDEXth function argument is a format string of + style ARCHETYPE, which is one of: + printf, gnu_printf + scanf, gnu_scanf, + strftime, gnu_strftime, + strfmon, + or the same thing prefixed and suffixed with '__'. + If FIRST-TO-CHECK is not 0, arguments starting at FIRST-TO_CHECK + are suitable for the format string. */ +/* Applies to: functions. */ +#ifndef _GL_ATTRIBUTE_FORMAT +# if _GL_HAS_ATTRIBUTE (format) +# define _GL_ATTRIBUTE_FORMAT(spec) __attribute__ ((__format__ spec)) +# else +# define _GL_ATTRIBUTE_FORMAT(spec) +# endif #endif -#if _GL_HAS_ATTRIBUTE (leaf) -# define _GL_ATTRIBUTE_LEAF __attribute__ ((__leaf__)) -#else -# define _GL_ATTRIBUTE_LEAF +/* _GL_ATTRIBUTE_LEAF declares that if the function is called from some other + compilation unit, it executes code from that unit only by return or by + exception handling. This declaration lets the compiler optimize that unit + more aggressively. */ +/* Applies to: functions. */ +#ifndef _GL_ATTRIBUTE_LEAF +# if _GL_HAS_ATTRIBUTE (leaf) +# define _GL_ATTRIBUTE_LEAF __attribute__ ((__leaf__)) +# else +# define _GL_ATTRIBUTE_LEAF +# endif #endif +/* _GL_ATTRIBUTE_MALLOC declares that the function returns a pointer to freshly + allocated memory. */ +/* Applies to: functions. */ +#ifndef _GL_ATTRIBUTE_MALLOC +# if _GL_HAS_ATTRIBUTE (malloc) +# define _GL_ATTRIBUTE_MALLOC __attribute__ ((__malloc__)) +# else +# define _GL_ATTRIBUTE_MALLOC +# endif +#endif + +/* _GL_ATTRIBUTE_MAY_ALIAS declares that pointers to the type may point to the + same storage as pointers to other types. Thus this declaration disables + strict aliasing optimization. */ +/* Applies to: types. */ /* Oracle Studio 12.6 mishandles may_alias despite __has_attribute OK. */ -#if _GL_HAS_ATTRIBUTE (may_alias) && !defined __SUNPRO_C -# define _GL_ATTRIBUTE_MAY_ALIAS __attribute__ ((__may_alias__)) -#else -# define _GL_ATTRIBUTE_MAY_ALIAS +#ifndef _GL_ATTRIBUTE_MAY_ALIAS +# if _GL_HAS_ATTRIBUTE (may_alias) && !defined __SUNPRO_C +# define _GL_ATTRIBUTE_MAY_ALIAS __attribute__ ((__may_alias__)) +# else +# define _GL_ATTRIBUTE_MAY_ALIAS +# endif #endif -#if _GL_HAS_C_ATTRIBUTE (maybe_unused) -# define _GL_ATTRIBUTE_MAYBE_UNUSED [[__maybe_unused__]] -#else -# define _GL_ATTRIBUTE_MAYBE_UNUSED _GL_ATTRIBUTE_UNUSED +/* _GL_ATTRIBUTE_MAYBE_UNUSED declares that it is not a programming mistake if + the entity is not used. The compiler should not warn if the entity is not + used. */ +/* Applies to: + - function, variable, + - struct, union, struct/union member, + - enumeration, enumeration item, + - typedef, + in C++ also: class. */ +/* In C++ and C23, this is spelled [[__maybe_unused__]]. + GCC's syntax is __attribute__ ((__unused__)). + clang supports both syntaxes. Except that with clang ≥ 6, < 10, in C++ mode, + __has_c_attribute (__maybe_unused__) yields true but the use of + [[__maybe_unused__]] nevertheless produces a warning. */ +#ifndef _GL_ATTRIBUTE_MAYBE_UNUSED +# ifndef _GL_BRACKET_BEFORE_ATTRIBUTE +# if defined __clang__ && defined __cplusplus +# if !defined __apple_build_version__ && __clang_major__ >= 10 +# define _GL_ATTRIBUTE_MAYBE_UNUSED [[__maybe_unused__]] +# endif +# elif defined __has_c_attribute +# if __has_c_attribute (__maybe_unused__) +# define _GL_ATTRIBUTE_MAYBE_UNUSED [[__maybe_unused__]] +# endif +# endif +# endif +# ifndef _GL_ATTRIBUTE_MAYBE_UNUSED +# define _GL_ATTRIBUTE_MAYBE_UNUSED _GL_ATTRIBUTE_UNUSED +# endif #endif +/* Alternative spelling of this macro, for convenience and for + compatibility with glibc/include/libc-symbols.h. */ +#define _GL_UNUSED _GL_ATTRIBUTE_MAYBE_UNUSED /* Earlier spellings of this macro. */ #define _UNUSED_PARAMETER_ _GL_ATTRIBUTE_MAYBE_UNUSED -#if _GL_HAS_ATTRIBUTE (malloc) -# define _GL_ATTRIBUTE_MALLOC __attribute__ ((__malloc__)) -#else -# define _GL_ATTRIBUTE_MALLOC -#endif - -#if _GL_HAS_C_ATTRIBUTE (nodiscard) -# define _GL_ATTRIBUTE_NODISCARD [[__nodiscard__]] -#elif _GL_HAS_ATTRIBUTE (warn_unused_result) -# define _GL_ATTRIBUTE_NODISCARD __attribute__ ((__warn_unused_result__)) -#else -# define _GL_ATTRIBUTE_NODISCARD +/* _GL_ATTRIBUTE_NODISCARD declares that the caller of the function should not + discard the return value. The compiler may warn if the caller does not use + the return value, unless the caller uses something like ignore_value. */ +/* Applies to: function, enumeration, class. */ +#ifndef _GL_ATTRIBUTE_NODISCARD +# ifndef _GL_BRACKET_BEFORE_ATTRIBUTE +# if defined __clang__ && defined __cplusplus + /* With clang up to 15.0.6 (at least), in C++ mode, [[__nodiscard__]] produces + a warning. + The 1000 below means a yet unknown threshold. When clang++ version X + starts supporting [[__nodiscard__]] without warning about it, you can + replace the 1000 with X. */ +# if __clang_major__ >= 1000 +# define _GL_ATTRIBUTE_NODISCARD [[__nodiscard__]] +# endif +# elif defined __has_c_attribute +# if __has_c_attribute (__nodiscard__) +# define _GL_ATTRIBUTE_NODISCARD [[__nodiscard__]] +# endif +# endif +# endif +# if !defined _GL_ATTRIBUTE_NODISCARD && _GL_HAS_ATTRIBUTE (warn_unused_result) +# define _GL_ATTRIBUTE_NODISCARD __attribute__ ((__warn_unused_result__)) +# endif +# ifndef _GL_ATTRIBUTE_NODISCARD +# define _GL_ATTRIBUTE_NODISCARD +# endif #endif -#if _GL_HAS_ATTRIBUTE (noinline) -# define _GL_ATTRIBUTE_NOINLINE __attribute__ ((__noinline__)) -#else -# define _GL_ATTRIBUTE_NOINLINE +/* _GL_ATTRIBUTE_NOINLINE tells that the compiler should not inline the + function. */ +/* Applies to: functions. */ +#ifndef _GL_ATTRIBUTE_NOINLINE +# if _GL_HAS_ATTRIBUTE (noinline) +# define _GL_ATTRIBUTE_NOINLINE __attribute__ ((__noinline__)) +# else +# define _GL_ATTRIBUTE_NOINLINE +# endif #endif -#if _GL_HAS_ATTRIBUTE (nonnull) -# define _GL_ATTRIBUTE_NONNULL(args) __attribute__ ((__nonnull__ args)) -#else -# define _GL_ATTRIBUTE_NONNULL(args) +/* _GL_ATTRIBUTE_NONNULL ((N1, N2,...)) declares that the arguments N1, N2,... + must not be NULL. + _GL_ATTRIBUTE_NONNULL () declares that all pointer arguments must not be + null. */ +/* Applies to: functions. */ +#ifndef _GL_ATTRIBUTE_NONNULL +# if _GL_HAS_ATTRIBUTE (nonnull) +# define _GL_ATTRIBUTE_NONNULL(args) __attribute__ ((__nonnull__ args)) +# else +# define _GL_ATTRIBUTE_NONNULL(args) +# endif #endif -#if _GL_HAS_ATTRIBUTE (nonstring) -# define _GL_ATTRIBUTE_NONSTRING __attribute__ ((__nonstring__)) -#else -# define _GL_ATTRIBUTE_NONSTRING +/* _GL_ATTRIBUTE_NONSTRING declares that the contents of a character array is + not meant to be NUL-terminated. */ +/* Applies to: struct/union members and variables that are arrays of element + type '[[un]signed] char'. */ +#ifndef _GL_ATTRIBUTE_NONSTRING +# if _GL_HAS_ATTRIBUTE (nonstring) +# define _GL_ATTRIBUTE_NONSTRING __attribute__ ((__nonstring__)) +# else +# define _GL_ATTRIBUTE_NONSTRING +# endif #endif /* There is no _GL_ATTRIBUTE_NORETURN; use _Noreturn instead. */ -#if _GL_HAS_ATTRIBUTE (nothrow) && !defined __cplusplus -# define _GL_ATTRIBUTE_NOTHROW __attribute__ ((__nothrow__)) -#else -# define _GL_ATTRIBUTE_NOTHROW +/* _GL_ATTRIBUTE_NOTHROW declares that the function does not throw exceptions. + */ +/* Applies to: functions. */ +#ifndef _GL_ATTRIBUTE_NOTHROW +# if _GL_HAS_ATTRIBUTE (nothrow) && !defined __cplusplus +# define _GL_ATTRIBUTE_NOTHROW __attribute__ ((__nothrow__)) +# else +# define _GL_ATTRIBUTE_NOTHROW +# endif #endif -#if _GL_HAS_ATTRIBUTE (packed) -# define _GL_ATTRIBUTE_PACKED __attribute__ ((__packed__)) -#else -# define _GL_ATTRIBUTE_PACKED +/* _GL_ATTRIBUTE_PACKED declares: + For struct members: The member has the smallest possible alignment. + For struct, union, class: All members have the smallest possible alignment, + minimizing the memory required. */ +/* Applies to: struct members, struct, union, + in C++ also: class. */ +#ifndef _GL_ATTRIBUTE_PACKED +# if _GL_HAS_ATTRIBUTE (packed) +# define _GL_ATTRIBUTE_PACKED __attribute__ ((__packed__)) +# else +# define _GL_ATTRIBUTE_PACKED +# endif #endif -#if _GL_HAS_ATTRIBUTE (pure) -# define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__)) -#else -# define _GL_ATTRIBUTE_PURE +/* _GL_ATTRIBUTE_PURE declares that It is OK for a compiler to omit duplicate + calls to the function with the same arguments if observable state is not + changed between calls. + This attribute is safe for a function that does not affect + observable state, and always returns exactly once. + (This attribute is looser than _GL_ATTRIBUTE_CONST.) */ +/* Applies to: functions. */ +#ifndef _GL_ATTRIBUTE_PURE +# if _GL_HAS_ATTRIBUTE (pure) +# define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__)) +# else +# define _GL_ATTRIBUTE_PURE +# endif #endif -#if _GL_HAS_ATTRIBUTE (returns_nonnull) -# define _GL_ATTRIBUTE_RETURNS_NONNULL __attribute__ ((__returns_nonnull__)) -#else -# define _GL_ATTRIBUTE_RETURNS_NONNULL +/* _GL_ATTRIBUTE_RETURNS_NONNULL declares that the function's return value is + a non-NULL pointer. */ +/* Applies to: functions. */ +#ifndef _GL_ATTRIBUTE_RETURNS_NONNULL +# if _GL_HAS_ATTRIBUTE (returns_nonnull) +# define _GL_ATTRIBUTE_RETURNS_NONNULL __attribute__ ((__returns_nonnull__)) +# else +# define _GL_ATTRIBUTE_RETURNS_NONNULL +# endif #endif -#if _GL_HAS_ATTRIBUTE (sentinel) -# define _GL_ATTRIBUTE_SENTINEL(pos) __attribute__ ((__sentinel__ pos)) -#else -# define _GL_ATTRIBUTE_SENTINEL(pos) +/* _GL_ATTRIBUTE_SENTINEL(pos) declares that the variadic function expects a + trailing NULL argument. + _GL_ATTRIBUTE_SENTINEL () - The last argument is NULL (requires C99). + _GL_ATTRIBUTE_SENTINEL ((N)) - The (N+1)st argument from the end is NULL. */ +/* Applies to: functions. */ +#ifndef _GL_ATTRIBUTE_SENTINEL +# if _GL_HAS_ATTRIBUTE (sentinel) +# define _GL_ATTRIBUTE_SENTINEL(pos) __attribute__ ((__sentinel__ pos)) +# else +# define _GL_ATTRIBUTE_SENTINEL(pos) +# endif #endif -#if _GL_HAS_ATTRIBUTE (unused) -# define _GL_ATTRIBUTE_UNUSED __attribute__ ((__unused__)) -#else -# define _GL_ATTRIBUTE_UNUSED +/* A helper macro. Don't use it directly. */ +#ifndef _GL_ATTRIBUTE_UNUSED +# if _GL_HAS_ATTRIBUTE (unused) +# define _GL_ATTRIBUTE_UNUSED __attribute__ ((__unused__)) +# else +# define _GL_ATTRIBUTE_UNUSED +# endif #endif -/* Earlier spellings of this macro. */ -#define _GL_UNUSED _GL_ATTRIBUTE_UNUSED ]dnl There is no _GL_ATTRIBUTE_VISIBILITY; see m4/visibility.m4 instead. [ -/* To support C++ as well as C, use _GL_UNUSED_LABEL with trailing ';'. */ -#if !defined __cplusplus || _GL_GNUC_PREREQ (4, 5) -# define _GL_UNUSED_LABEL _GL_ATTRIBUTE_UNUSED +/* _GL_UNUSED_LABEL; declares that it is not a programming mistake if the + immediately preceding label is not used. The compiler should not warn + if the label is not used. */ +/* Applies to: label (both in C and C++). */ +/* Note that g++ < 4.5 does not support the '__attribute__ ((__unused__)) ;' + syntax. But clang does. */ +#ifndef _GL_UNUSED_LABEL +# if !(defined __cplusplus && !_GL_GNUC_PREREQ (4, 5)) || defined __clang__ +# define _GL_UNUSED_LABEL _GL_ATTRIBUTE_UNUSED +# else +# define _GL_UNUSED_LABEL +# endif +#endif +]) + AH_VERBATIM([c_linkage], +[/* In C++, there is the concept of "language linkage", that encompasses + name mangling and function calling conventions. + The following macros start and end a block of "C" linkage. */ +#ifdef __cplusplus +# define _GL_BEGIN_C_LINKAGE extern "C" { +# define _GL_END_C_LINKAGE } #else -# define _GL_UNUSED_LABEL +# define _GL_BEGIN_C_LINKAGE +# define _GL_END_C_LINKAGE #endif ]) AH_VERBATIM([async_safe], @@ -357,7 +619,7 @@ AC_DEFUN([gl_COMMON_BODY], [ dnl gl_cross_guess_normal (to be used when 'yes' is good and 'no' is bad), dnl gl_cross_guess_inverted (to be used when 'no' is good and 'yes' is bad). AC_ARG_ENABLE([cross-guesses], - [AS_HELP_STRING([--enable-cross-guesses={conservative|risky}], + [AS_HELP_STRING([[--enable-cross-guesses={conservative|risky}]], [specify policy for cross-compilation guesses])], [if test "x$enableval" != xconservative && test "x$enableval" != xrisky; then AC_MSG_WARN([invalid argument supplied to --enable-cross-guesses]) @@ -689,6 +951,24 @@ AC_DEFUN([gl_CACHE_VAL_SILENT], ]) ]) +# gl_CONDITIONAL(conditional, condition) +# is like AM_CONDITIONAL(conditional, condition), except that it does not +# produce an error +# configure: error: conditional "..." was never defined. +# Usually this means the macro was only invoked conditionally. +# when only invoked conditionally. Instead, in that case, both the _TRUE +# and the _FALSE case are disabled. +AC_DEFUN([gl_CONDITIONAL], +[ + pushdef([AC_CONFIG_COMMANDS_PRE], [:])dnl + AM_CONDITIONAL([$1], [$2]) + popdef([AC_CONFIG_COMMANDS_PRE])dnl + if test -z "${[$1]_TRUE}" && test -z "${[$1]_FALSE}"; then + [$1]_TRUE='#' + [$1]_FALSE='#' + fi +]) + # gl_CC_ALLOW_WARNINGS # sets and substitutes a variable GL_CFLAG_ALLOW_WARNINGS, to a $(CC) option # that reverts a preceding '-Werror' option, if available. @@ -755,6 +1035,338 @@ AC_DEFUN([gl_CXX_ALLOW_WARNINGS], AC_SUBST([GL_CXXFLAG_ALLOW_WARNINGS]) ]) +# gl_CC_GNULIB_WARNINGS +# sets and substitutes a variable GL_CFLAG_GNULIB_WARNINGS, to a $(CC) option +# set that enables or disables warnings as suitable for the Gnulib coding style. +AC_DEFUN([gl_CC_GNULIB_WARNINGS], +[ + AC_REQUIRE([gl_CC_ALLOW_WARNINGS]) + dnl Assume that the compiler supports -Wno-* options only if it also supports + dnl -Wno-error. + GL_CFLAG_GNULIB_WARNINGS='' + if test -n "$GL_CFLAG_ALLOW_WARNINGS"; then + dnl Enable these warning options: + dnl + dnl GCC clang + dnl -Wno-cast-qual >= 3 >= 3.9 + dnl -Wno-conversion >= 3 >= 3.9 + dnl -Wno-float-conversion >= 4.9 >= 3.9 + dnl -Wno-float-equal >= 3 >= 3.9 + dnl -Wimplicit-fallthrough >= 7 >= 3.9 + dnl -Wno-missing-field-initializers >= 4.0, < 11 + dnl -Wno-pedantic >= 4.8 >= 3.9 + dnl -Wno-sign-compare >= 3 >= 3.9 + dnl -Wno-sign-conversion >= 4.3 >= 3.9 + dnl -Wno-type-limits >= 4.3 >= 3.9 + dnl -Wno-undef >= 3 >= 3.9 + dnl -Wno-unsuffixed-float-constants >= 4.5 + dnl -Wno-unused-function >= 3 >= 3.9 + dnl -Wno-unused-parameter >= 3 >= 3.9 + dnl + cat > conftest.c <<\EOF + #if __GNUC__ >= 3 || (__clang_major__ + (__clang_minor__ >= 9) > 3) + -Wno-cast-qual + -Wno-conversion + -Wno-float-equal + -Wno-sign-compare + -Wno-undef + -Wno-unused-function + -Wno-unused-parameter + #endif + #if __GNUC__ + (__GNUC_MINOR__ >= 9) > 4 || (__clang_major__ + (__clang_minor__ >= 9) > 3) + -Wno-float-conversion + #endif + #if __GNUC__ >= 7 || (__clang_major__ + (__clang_minor__ >= 9) > 3) + -Wimplicit-fallthrough + #endif + #if __GNUC__ >= 4 && __GNUC__ < 11 && !defined __clang__ + -Wno-missing-field-initializers + #endif + #if __GNUC__ + (__GNUC_MINOR__ >= 8) > 4 || (__clang_major__ + (__clang_minor__ >= 9) > 3) + -Wno-pedantic + #endif + #if __GNUC__ + (__GNUC_MINOR__ >= 3) > 4 || (__clang_major__ + (__clang_minor__ >= 9) > 3) + -Wno-sign-conversion + -Wno-type-limits + #endif + #if __GNUC__ + (__GNUC_MINOR__ >= 5) > 4 + -Wno-unsuffixed-float-constants + #endif +EOF + gl_command="$CC $CFLAGS $CPPFLAGS -E conftest.c > conftest.out" + if AC_TRY_EVAL([gl_command]); then + gl_options=`grep -v '#' conftest.out` + for word in $gl_options; do + GL_CFLAG_GNULIB_WARNINGS="$GL_CFLAG_GNULIB_WARNINGS $word" + done + fi + rm -f conftest.c conftest.out + fi + AC_SUBST([GL_CFLAG_GNULIB_WARNINGS]) +]) + +dnl gl_CONDITIONAL_HEADER([foo.h]) +dnl takes a shell variable GL_GENERATE_FOO_H (with value true or false) as input +dnl and produces +dnl - an AC_SUBSTed variable FOO_H that is either a file name or empty, based +dnl on whether GL_GENERATE_FOO_H is true or false, +dnl - an Automake conditional GL_GENERATE_FOO_H that evaluates to the value of +dnl the shell variable GL_GENERATE_FOO_H. +AC_DEFUN([gl_CONDITIONAL_HEADER], +[ + m4_pushdef([gl_header_name], AS_TR_SH(m4_toupper($1))) + m4_pushdef([gl_generate_var], [GL_GENERATE_]AS_TR_SH(m4_toupper($1))) + m4_pushdef([gl_generate_cond], [GL_GENERATE_]AS_TR_SH(m4_toupper($1))) + case "$gl_generate_var" in + false) gl_header_name='' ;; + true) + dnl It is OK to use a .h file in lib/ from within tests/, but not vice + dnl versa. + if test -z "$gl_header_name"; then + gl_header_name="${gl_source_base_prefix}$1" + fi + ;; + *) echo "*** gl_generate_var is not set correctly" 1>&2; exit 1 ;; + esac + AC_SUBST(gl_header_name) + gl_CONDITIONAL(gl_generate_cond, [$gl_generate_var]) + m4_popdef([gl_generate_cond]) + m4_popdef([gl_generate_var]) + m4_popdef([gl_header_name]) +]) + +dnl Preparations for gl_CHECK_FUNCS_MACOS. +AC_DEFUN([gl_PREPARE_CHECK_FUNCS_MACOS], +[ + AC_REQUIRE([AC_CANONICAL_HOST]) + AC_REQUIRE([gl_COMPILER_CLANG]) + AC_CACHE_CHECK([for compiler option needed when checking for future declarations], + [gl_cv_compiler_check_future_option], + [case "$host_os" in + dnl This is only needed on macOS. + darwin*) + if test $gl_cv_compiler_clang = yes; then + dnl Test whether the compiler supports the option + dnl '-Werror=unguarded-availability-new'. + save_ac_compile="$ac_compile" + ac_compile="$ac_compile -Werror=unguarded-availability-new" + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]],[[]])], + [gl_cv_compiler_check_future_option='-Werror=unguarded-availability-new'], + [gl_cv_compiler_check_future_option=none]) + ac_compile="$save_ac_compile" + else + gl_cv_compiler_check_future_option=none + fi + ;; + *) gl_cv_compiler_check_future_option=none ;; + esac + ]) +]) + +dnl Pieces of the expansion of +dnl gl_CHECK_FUNCS_ANDROID +dnl gl_CHECK_FUNCS_MACOS +dnl gl_CHECK_FUNCS_ANDROID_MACOS + +AC_DEFUN([gl_CHECK_FUNCS_DEFAULT_CASE], +[ + *) + AC_CHECK_FUNC([$1]) + [gl_cv_onwards_func_][$1]=$[ac_cv_func_][$1] + ;; +]) + +AC_DEFUN([gl_CHECK_FUNCS_CASE_FOR_ANDROID], +[ + linux*-android*) + AC_CHECK_DECL([$1], , , [$2]) + if test $[ac_cv_have_decl_][$1] = yes; then + AC_CHECK_FUNC([[$1]]) + if test $[ac_cv_func_][$1] = yes; then + [gl_cv_onwards_func_][$1]=yes + else + dnl The function is declared but does not exist. This should not + dnl happen normally. But anyway, we know that a future version + dnl of Android will have the function. + [gl_cv_onwards_func_][$1]='future OS version' + fi + else + [gl_cv_onwards_func_][$1]='future OS version' + fi + ;; +]) + +AC_DEFUN([gl_CHECK_FUNCS_CASE_FOR_MACOS], +[ + darwin*) + if test "x$gl_cv_compiler_check_future_option" != "xnone"; then + dnl Use a compile test, not a link test. + save_ac_compile="$ac_compile" + ac_compile="$ac_compile $gl_cv_compiler_check_future_option" + save_ac_compile_for_check_decl="$ac_compile_for_check_decl" + ac_compile_for_check_decl="$ac_compile_for_check_decl $gl_cv_compiler_check_future_option" + unset [ac_cv_have_decl_][$1] + AC_CHECK_DECL([$1], , , [$2]) + ac_compile="$save_ac_compile" + ac_compile_for_check_decl="$save_ac_compile_for_check_decl" + [ac_cv_func_][$1]="$[ac_cv_have_decl_][$1]" + if test $[ac_cv_func_][$1] = yes; then + [gl_cv_onwards_func_][$1]=yes + else + unset [ac_cv_have_decl_][$1] + AC_CHECK_DECL([$1], , , [$2]) + if test $[ac_cv_have_decl_][$1] = yes; then + [gl_cv_onwards_func_][$1]='future OS version' + else + [gl_cv_onwards_func_][$1]=no + fi + fi + else + AC_CHECK_FUNC([$1]) + [gl_cv_onwards_func_][$1]=$[ac_cv_func_][$1] + fi + ;; +]) + +AC_DEFUN([gl_CHECK_FUNCS_SET_RESULTS], +[ + case "$[gl_cv_onwards_func_][$1]" in + future*) [ac_cv_func_][$1]=no ;; + *) [ac_cv_func_][$1]=$[gl_cv_onwards_func_][$1] ;; + esac + if test $[ac_cv_func_][$1] = yes; then + AC_DEFINE([HAVE_]m4_translit([[$1]], + [abcdefghijklmnopqrstuvwxyz], + [ABCDEFGHIJKLMNOPQRSTUVWXYZ]), + [1], [Define to 1 if you have the `$1' function.]) + fi +]) + +dnl gl_CHECK_FUNCS_ANDROID([func], [[#include ]]) +dnl is like AC_CHECK_FUNCS([func]), taking into account a portability problem +dnl on Android. +dnl +dnl When code is compiled on Android, it is in the context of a certain +dnl "Android API level", which indicates the minimum version of Android on +dnl which the app can be installed. In other words, you don't compile for a +dnl specific version of Android. You compile for all versions of Android, +dnl onwards from the given API level. +dnl Thus, the question "does the OS have the function func" has three possible +dnl answers: +dnl - yes, in all versions starting from the given API level, +dnl - no, in no version, +dnl - not in the given API level, but in a later version of Android. +dnl +dnl In detail, this works as follows: +dnl If func was added to Android API level, say, 28, then the libc.so has the +dnl symbol func always, whereas the header file declares func +dnl conditionally: +dnl #if __ANDROID_API__ >= 28 +dnl ... func (...) __INTRODUCED_IN(28); +dnl #endif +dnl Thus, when compiling with "clang -target armv7a-unknown-linux-android28", +dnl the function func is declared and exists in libc. +dnl Whereas when compiling with "clang -target armv7a-unknown-linux-android27", +dnl the function func is not declared but exists in libc. +dnl +dnl This macro sets two variables: +dnl - gl_cv_onwards_func_ to yes / no / "future OS version" +dnl - ac_cv_func_ to yes / no / no +dnl The first variable allows to distinguish all three cases. +dnl The second variable is set, so that an invocation +dnl gl_CHECK_FUNCS_ANDROID([func], [[#include ]]) +dnl can be used as a drop-in replacement for +dnl AC_CHECK_FUNCS([func]). +AC_DEFUN([gl_CHECK_FUNCS_ANDROID], +[ + AC_REQUIRE([AC_CANONICAL_HOST]) + AC_CACHE_CHECK([for [$1]], + [[gl_cv_onwards_func_][$1]], + [gl_SILENT([ + case "$host_os" in + gl_CHECK_FUNCS_CASE_FOR_ANDROID([$1], [$2]) + gl_CHECK_FUNCS_DEFAULT_CASE([$1]) + esac + ]) + ]) + gl_CHECK_FUNCS_SET_RESULTS([$1]) +]) + +dnl gl_CHECK_FUNCS_MACOS([func], [[#include ]]) +dnl is like AC_CHECK_FUNCS([func]), taking into account a portability problem +dnl on macOS. +dnl +dnl When code is compiled on macOS, it is in the context of a certain minimum +dnl macOS version, that can be set through the option '-mmacosx-version-min='. +dnl In other words, you don't compile for a specific version of macOS. You +dnl compile for all versions of macOS, onwards from the given version. +dnl Thus, the question "does the OS have the function func" has three possible +dnl answers: +dnl - yes, in all versions starting from the given version, +dnl - no, in no version, +dnl - not in the given version, but in a later version of macOS. +dnl +dnl In detail, this works as follows: +dnl If func was added to, say, macOS version 13, then the libc has the +dnl symbol func always, whereas the header file declares func +dnl conditionally with a special availability attribute: +dnl ... func (...) __attribute__((availability(macos,introduced=13.0))); +dnl Thus, when compiling with "clang mmacosx-version-min=13", there is no +dnl warning about the use of func, and the resulting binary +dnl - runs fine on macOS 13, +dnl - aborts with a dyld "Symbol not found" message on macOS 12. +dnl Whereas, when compiling with "clang mmacosx-version-min=12", there is a +dnl warning: 'func' is only available on macOS 13.0 or newer +dnl [-Wunguarded-availability-new], +dnl and the resulting binary +dnl - runs fine on macOS 13, +dnl - crashes with a SIGSEGV (signal 11) on macOS 12. +dnl +dnl This macro sets two variables: +dnl - gl_cv_onwards_func_ to yes / no / "future OS version" +dnl - ac_cv_func_ to yes / no / no +dnl The first variable allows to distinguish all three cases. +dnl The second variable is set, so that an invocation +dnl gl_CHECK_FUNCS_MACOS([func], [[#include ]]) +dnl can be used as a drop-in replacement for +dnl AC_CHECK_FUNCS([func]). +AC_DEFUN([gl_CHECK_FUNCS_MACOS], +[ + AC_REQUIRE([AC_CANONICAL_HOST]) + AC_REQUIRE([gl_PREPARE_CHECK_FUNCS_MACOS]) + AC_CACHE_CHECK([for [$1]], + [[gl_cv_onwards_func_][$1]], + [gl_SILENT([ + case "$host_os" in + gl_CHECK_FUNCS_CASE_FOR_MACOS([$1], [$2]) + gl_CHECK_FUNCS_DEFAULT_CASE([$1]) + esac + ]) + ]) + gl_CHECK_FUNCS_SET_RESULTS([$1]) +]) + +dnl gl_CHECK_FUNCS_ANDROID_MACOS([func], [[#include ]]) +dnl is like AC_CHECK_FUNCS([func]), taking into account a portability problem +dnl on Android and on macOS. +dnl It is the combination of gl_CHECK_FUNCS_ANDROID and gl_CHECK_FUNCS_MACOS. +AC_DEFUN([gl_CHECK_FUNCS_ANDROID_MACOS], +[ + AC_REQUIRE([AC_CANONICAL_HOST]) + AC_REQUIRE([gl_PREPARE_CHECK_FUNCS_MACOS]) + AC_CACHE_CHECK([for [$1]], + [[gl_cv_onwards_func_][$1]], + [gl_SILENT([ + case "$host_os" in + gl_CHECK_FUNCS_CASE_FOR_ANDROID([$1], [$2]) + gl_CHECK_FUNCS_CASE_FOR_MACOS([$1], [$2]) + gl_CHECK_FUNCS_DEFAULT_CASE([$1]) + esac + ]) + ]) + gl_CHECK_FUNCS_SET_RESULTS([$1]) +]) + dnl Expands to some code for use in .c programs that, on native Windows, defines dnl the Microsoft deprecated alias function names to the underscore-prefixed dnl actual function names. With this macro, these function names are available diff --git a/m4/gnulib-comp.m4 b/m4/gnulib-comp.m4 index 211d39f..66c0a8d 100644 --- a/m4/gnulib-comp.m4 +++ b/m4/gnulib-comp.m4 @@ -1,9 +1,9 @@ # DO NOT EDIT! GENERATED AUTOMATICALLY! -# Copyright (C) 2002-2021 Free Software Foundation, Inc. +# Copyright (C) 2002-2023 Free Software Foundation, Inc. # # This file is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or +# the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This file is distributed in the hope that it will be useful, @@ -42,10 +42,11 @@ AC_DEFUN([gl_EARLY], AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS]) AC_REQUIRE([gl_PROG_AR_RANLIB]) - AC_REQUIRE([AM_PROG_CC_C_O]) # Code from module absolute-header: # Code from module accept: # Code from module accept-tests: + # Code from module alignasof: + # Code from module alignasof-tests: # Code from module alloca: # Code from module alloca-opt: # Code from module alloca-opt-tests: @@ -57,6 +58,8 @@ AC_DEFUN([gl_EARLY], # Code from module argmatch-tests: # Code from module arpa_inet: # Code from module arpa_inet-tests: + # Code from module assert-h: + # Code from module assert-h-tests: # Code from module assure: # Code from module atoll: # Code from module attribute: @@ -77,6 +80,8 @@ AC_DEFUN([gl_EARLY], # Code from module c-strcase: # Code from module c-strcase-tests: # Code from module c-strcaseeq: + # Code from module c-strcasestr: + # Code from module c-strcasestr-tests: # Code from module c99: # Code from module calloc-gnu: # Code from module calloc-gnu-tests: @@ -101,13 +106,13 @@ AC_DEFUN([gl_EARLY], # Code from module dtotimespec: # Code from module dup2: # Code from module dup2-tests: - # Code from module dynarray: - # Code from module dynarray-tests: # Code from module environ: # Code from module environ-tests: # Code from module errno: # Code from module errno-tests: # Code from module error: + # Code from module error-h: + # Code from module error-tests: # Code from module exclude: # Code from module exclude-tests: # Code from module exitfail: @@ -118,7 +123,6 @@ AC_DEFUN([gl_EARLY], # Code from module fcntl-h-tests: # Code from module fcntl-tests: # Code from module fd-hook: - # Code from module fdl: # Code from module fdopen: # Code from module fdopen-tests: # Code from module fgetc-tests: @@ -153,6 +157,7 @@ AC_DEFUN([gl_EARLY], # Code from module ftruncate: # Code from module ftruncate-tests: # Code from module fwrite-tests: + # Code from module gen-header: # Code from module gendocs: # Code from module getcwd-lgpl: # Code from module getcwd-lgpl-tests: @@ -173,6 +178,8 @@ AC_DEFUN([gl_EARLY], # Code from module gettimeofday-tests: # Code from module git-version-gen: # Code from module gitlog-to-changelog: + # Code from module glibc-internal/dynarray: + # Code from module glibc-internal/dynarray-tests: # Code from module gnu-make: # Code from module gnu-web-doc-update: # Code from module gnumakefile: @@ -219,7 +226,7 @@ AC_DEFUN([gl_EARLY], # Code from module langinfo-tests: # Code from module largefile: AC_REQUIRE([AC_SYS_LARGEFILE]) - AC_REQUIRE([gl_YEAR2038_EARLY]) + # Code from module largefile-tests: # Code from module libc-config: # Code from module limits-h: # Code from module limits-h-tests: @@ -277,16 +284,21 @@ AC_DEFUN([gl_EARLY], # Code from module nocrash: # Code from module nstrftime: # Code from module nstrftime-tests: + # Code from module nullptr: + # Code from module nullptr-tests: # Code from module open: # Code from module open-tests: # Code from module pathmax: # Code from module pathmax-tests: + # Code from module perl: # Code from module perror: # Code from module perror-tests: # Code from module pipe-posix: # Code from module pipe-posix-tests: # Code from module progname: # Code from module propername: + # Code from module pselect: + # Code from module pselect-tests: # Code from module pthread-h: gl_ANYTHREADLIB_EARLY # Code from module pthread-h-tests: @@ -326,8 +338,6 @@ AC_DEFUN([gl_EARLY], # Code from module setsockopt-tests: # Code from module sh-quote: # Code from module sh-quote-tests: - # Code from module sigaction: - # Code from module sigaction-tests: # Code from module signal: # Code from module signal-h: # Code from module signal-h-tests: @@ -356,8 +366,6 @@ AC_DEFUN([gl_EARLY], # Code from module stat-time: # Code from module stat-time-tests: # Code from module std-gnu11: - # Code from module stdalign: - # Code from module stdalign-tests: # Code from module stdarg: dnl Some compilers (e.g., AIX 5.3 cc) need to be in c99 mode dnl for the builtin va_copy to work. gl_PROG_CC_C99 arranges for this. @@ -365,15 +373,19 @@ AC_DEFUN([gl_EARLY], # Code from module stdarg-tests: # Code from module stdbool: # Code from module stdbool-tests: + # Code from module stdckdint: + # Code from module stdckdint-tests: # Code from module stddef: # Code from module stddef-tests: # Code from module stdint: # Code from module stdint-tests: # Code from module stdio: + gl_STDIO_H_EARLY # Code from module stdio-tests: # Code from module stdlib: # Code from module stdlib-tests: # Code from module stdopen: + # Code from module stpcpy: # Code from module strcase: # Code from module streq: # Code from module strerror: @@ -424,6 +436,8 @@ AC_DEFUN([gl_EARLY], # Code from module threadlib: gl_THREADLIB_EARLY # Code from module time: + # Code from module time-h: + # Code from module time-h-tests: # Code from module time-tests: # Code from module time_r: # Code from module time_rz: @@ -433,6 +447,7 @@ AC_DEFUN([gl_EARLY], # Code from module timespec-sub: # Code from module timespec-tests: # Code from module trim: + # Code from module trim-tests: # Code from module tzset: # Code from module unistd: # Code from module unistd-tests: @@ -452,10 +467,9 @@ AC_DEFUN([gl_EARLY], # Code from module update-copyright: # Code from module update-copyright-tests: # Code from module useless-if-before-free: + # Code from module vararrays: # Code from module vasnprintf: # Code from module vasnprintf-tests: - # Code from module vasprintf: - # Code from module vasprintf-tests: # Code from module vc-list-files: # Code from module vc-list-files-tests: # Code from module verify: @@ -498,14 +512,16 @@ AC_DEFUN([gl_EARLY], # Code from module xstrtol: # Code from module xstrtol-error: # Code from module xstrtol-tests: - # Code from module xvasprintf: - # Code from module xvasprintf-tests: + # Code from module year2038: + AC_REQUIRE([AC_SYS_YEAR2038]) + # Code from module year2038-tests: ]) # This macro should be invoked from ./configure.ac, in the section # "Check for header files, types and library functions". AC_DEFUN([gl_INIT], [ + AC_CONFIG_LIBOBJ_DIR([gnulib-tests]) AM_CONDITIONAL([GL_COND_LIBTOOL], [false]) gl_cond_libtool=false gl_libdeps= @@ -520,76 +536,84 @@ AC_DEFUN([gl_INIT], m4_pushdef([GL_MODULE_INDICATOR_PREFIX], [GL]) gl_COMMON gl_source_base='lib' + gl_source_base_prefix= + gl_ALIGNASOF gl_FUNC_ALLOCA + gl_CONDITIONAL_HEADER([alloca.h]) + AC_PROG_MKDIR_P + gl_ASSERT_H + gl_CONDITIONAL_HEADER([assert.h]) + AC_PROG_MKDIR_P gl_FUNC_BTOWC - if test $HAVE_BTOWC = 0 || test $REPLACE_BTOWC = 1; then - AC_LIBOBJ([btowc]) + gl_CONDITIONAL([GL_COND_OBJ_BTOWC], + [test $HAVE_BTOWC = 0 || test $REPLACE_BTOWC = 1]) + AM_COND_IF([GL_COND_OBJ_BTOWC], [ gl_PREREQ_BTOWC - fi + ]) gl_WCHAR_MODULE_INDICATOR([btowc]) gl___BUILTIN_EXPECT gl_C_STACK gl_FUNC_CALLOC_GNU - if test $REPLACE_CALLOC = 1; then + if test $REPLACE_CALLOC_FOR_CALLOC_GNU = 1; then AC_LIBOBJ([calloc]) fi + gl_STDLIB_MODULE_INDICATOR([calloc-gnu]) gl_FUNC_CALLOC_POSIX - if test $REPLACE_CALLOC = 1; then + if test $REPLACE_CALLOC_FOR_CALLOC_POSIX = 1; then AC_LIBOBJ([calloc]) fi gl_STDLIB_MODULE_INDICATOR([calloc-posix]) AC_REQUIRE([AC_C_RESTRICT]) - AC_CHECK_FUNCS_ONCE([readlinkat]) + gl_CHECK_FUNCS_ANDROID([readlinkat], [[#include ]]) gl_CLOCK_TIME gl_MODULE_INDICATOR_FOR_TESTS([cloexec]) gl_FUNC_CLOSE - if test $REPLACE_CLOSE = 1; then - AC_LIBOBJ([close]) - fi + gl_CONDITIONAL([GL_COND_OBJ_CLOSE], [test $REPLACE_CLOSE = 1]) gl_UNISTD_MODULE_INDICATOR([close]) gl_CONFIG_H gl_CTYPE_H gl_CTYPE_H_REQUIRE_DEFAULTS + AC_PROG_MKDIR_P gl_MODULE_INDICATOR([dirname]) gl_DOUBLE_SLASH_ROOT gl_FUNC_DUP2 - if test $REPLACE_DUP2 = 1; then - AC_LIBOBJ([dup2]) + gl_CONDITIONAL([GL_COND_OBJ_DUP2], [test $REPLACE_DUP2 = 1]) + AM_COND_IF([GL_COND_OBJ_DUP2], [ gl_PREREQ_DUP2 - fi + ]) gl_UNISTD_MODULE_INDICATOR([dup2]) - AC_PROG_MKDIR_P gl_ENVIRON gl_UNISTD_MODULE_INDICATOR([environ]) gl_HEADER_ERRNO_H + gl_CONDITIONAL_HEADER([errno.h]) + AC_PROG_MKDIR_P + AC_REQUIRE([gl_ERROR_H]) gl_ERROR - if test $ac_cv_lib_error_at_line = no; then - AC_LIBOBJ([error]) + gl_CONDITIONAL([GL_COND_OBJ_ERROR], [test $GL_GENERATE_ERROR_H = true]) + AM_COND_IF([GL_COND_OBJ_ERROR], [ gl_PREREQ_ERROR - fi + ]) m4_ifdef([AM_XGETTEXT_OPTION], [AM_][XGETTEXT_OPTION([--flag=error:3:c-format]) AM_][XGETTEXT_OPTION([--flag=error_at_line:5:c-format])]) + gl_ERROR_H + gl_CONDITIONAL_HEADER([error.h]) + AC_PROG_MKDIR_P AC_REQUIRE([gl_EXTERN_INLINE]) gl_FUNC_FCNTL - if test $HAVE_FCNTL = 0 || test $REPLACE_FCNTL = 1; then - AC_LIBOBJ([fcntl]) - fi + gl_CONDITIONAL([GL_COND_OBJ_FCNTL], + [test $HAVE_FCNTL = 0 || test $REPLACE_FCNTL = 1]) gl_FCNTL_MODULE_INDICATOR([fcntl]) gl_FCNTL_H gl_FCNTL_H_REQUIRE_DEFAULTS + AC_PROG_MKDIR_P gl_FILE_NAME_CONCAT gl_MODULE_INDICATOR([filenamecat]) gl_FILE_NAME_CONCAT_LGPL AC_C_FLEXIBLE_ARRAY_MEMBER - gl_FLOAT_H - if test $REPLACE_FLOAT_LDBL = 1; then - AC_LIBOBJ([float]) - fi - if test $REPLACE_ITOLD = 1; then - AC_LIBOBJ([itold]) - fi gl_FUNC_FNMATCH_POSIX + dnl Because of gl_REPLACE_FNMATCH_H: + gl_CONDITIONAL_HEADER([fnmatch.h]) if test $HAVE_FNMATCH = 0 || test $REPLACE_FNMATCH = 1; then AC_LIBOBJ([fnmatch]) gl_PREREQ_FNMATCH @@ -603,6 +627,8 @@ AC_DEFUN([gl_INIT], gl_MODULE_INDICATOR([fnmatch-gnu]) gl_FNMATCH_H gl_FNMATCH_H_REQUIRE_DEFAULTS + gl_CONDITIONAL_HEADER([fnmatch.h]) + AC_PROG_MKDIR_P gl_FUNC_FOPEN if test $REPLACE_FOPEN = 1; then AC_LIBOBJ([fopen]) @@ -610,74 +636,83 @@ AC_DEFUN([gl_INIT], fi gl_STDIO_MODULE_INDICATOR([fopen]) gl_FUNC_FOPEN_GNU - if test $REPLACE_FOPEN = 1; then + if test $REPLACE_FOPEN_FOR_FOPEN_GNU = 1; then AC_LIBOBJ([fopen]) gl_PREREQ_FOPEN fi gl_MODULE_INDICATOR([fopen-gnu]) + gl_STDIO_MODULE_INDICATOR([fopen-gnu]) gl_FUNC_FREE - if test $REPLACE_FREE = 1; then - AC_LIBOBJ([free]) + gl_CONDITIONAL([GL_COND_OBJ_FREE], [test $REPLACE_FREE = 1]) + AM_COND_IF([GL_COND_OBJ_FREE], [ gl_PREREQ_FREE - fi + ]) gl_STDLIB_MODULE_INDICATOR([free-posix]) gl_FUNC_FREOPEN - if test $REPLACE_FREOPEN = 1; then - AC_LIBOBJ([freopen]) + gl_CONDITIONAL([GL_COND_OBJ_FREOPEN], [test $REPLACE_FREOPEN = 1]) + AM_COND_IF([GL_COND_OBJ_FREOPEN], [ gl_PREREQ_FREOPEN - fi + ]) gl_STDIO_MODULE_INDICATOR([freopen]) gl_FUNC_FSTAT - if test $REPLACE_FSTAT = 1; then - AC_LIBOBJ([fstat]) + gl_CONDITIONAL([GL_COND_OBJ_FSTAT], [test $REPLACE_FSTAT = 1]) + AM_COND_IF([GL_COND_OBJ_FSTAT], [ case "$host_os" in mingw*) AC_LIBOBJ([stat-w32]) ;; esac gl_PREREQ_FSTAT - fi + ]) gl_SYS_STAT_MODULE_INDICATOR([fstat]) gl_FUNC_GETDTABLESIZE - if test $HAVE_GETDTABLESIZE = 0 || test $REPLACE_GETDTABLESIZE = 1; then - AC_LIBOBJ([getdtablesize]) + gl_CONDITIONAL([GL_COND_OBJ_GETDTABLESIZE], + [test $HAVE_GETDTABLESIZE = 0 || test $REPLACE_GETDTABLESIZE = 1]) + AM_COND_IF([GL_COND_OBJ_GETDTABLESIZE], [ gl_PREREQ_GETDTABLESIZE - fi + ]) gl_UNISTD_MODULE_INDICATOR([getdtablesize]) gl_FUNC_GETOPT_GNU dnl Because of the way gl_FUNC_GETOPT_GNU is implemented (the gl_getopt_required dnl mechanism), there is no need to do any AC_LIBOBJ or AC_SUBST here; they are dnl done in the getopt-posix module. gl_FUNC_GETOPT_POSIX - if test $REPLACE_GETOPT = 1; then - AC_LIBOBJ([getopt]) - AC_LIBOBJ([getopt1]) + gl_CONDITIONAL_HEADER([getopt.h]) + gl_CONDITIONAL_HEADER([getopt-cdefs.h]) + AC_PROG_MKDIR_P + gl_CONDITIONAL([GL_COND_OBJ_GETOPT], [test $REPLACE_GETOPT = 1]) + AM_COND_IF([GL_COND_OBJ_GETOPT], [ dnl Define the substituted variable GNULIB_UNISTD_H_GETOPT to 1. gl_UNISTD_H_REQUIRE_DEFAULTS gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_UNISTD_H_GETOPT], [1]) - fi + ]) gl_UNISTD_MODULE_INDICATOR([getopt-posix]) gl_FUNC_GETPAGESIZE - if test $REPLACE_GETPAGESIZE = 1; then - AC_LIBOBJ([getpagesize]) - fi + gl_CONDITIONAL([GL_COND_OBJ_GETPAGESIZE], [test $REPLACE_GETPAGESIZE = 1]) gl_UNISTD_MODULE_INDICATOR([getpagesize]) gl_FUNC_GETPROGNAME + gl_CONDITIONAL([GL_COND_OBJ_GETPROGNAME], + [test $HAVE_GETPROGNAME = 0 || test $REPLACE_GETPROGNAME = 1]) + AM_COND_IF([GL_COND_OBJ_GETPROGNAME], [ + gl_PREREQ_GETPROGNAME + ]) + gl_STDLIB_MODULE_INDICATOR([getprogname]) AC_REQUIRE([AC_CANONICAL_HOST]) gl_FUNC_GETRANDOM - if test $HAVE_GETRANDOM = 0 || test $REPLACE_GETRANDOM = 1; then - AC_LIBOBJ([getrandom]) - fi + gl_CONDITIONAL([GL_COND_OBJ_GETRANDOM], + [test $HAVE_GETRANDOM = 0 || test $REPLACE_GETRANDOM = 1]) gl_SYS_RANDOM_MODULE_INDICATOR([getrandom]) AC_SUBST([LIBINTL]) AC_SUBST([LTLIBINTL]) gl_GETTIME gl_FUNC_GETTIMEOFDAY - if test $HAVE_GETTIMEOFDAY = 0 || test $REPLACE_GETTIMEOFDAY = 1; then - AC_LIBOBJ([gettimeofday]) + gl_CONDITIONAL([GL_COND_OBJ_GETTIMEOFDAY], + [test $HAVE_GETTIMEOFDAY = 0 || test $REPLACE_GETTIMEOFDAY = 1]) + AM_COND_IF([GL_COND_OBJ_GETTIMEOFDAY], [ gl_PREREQ_GETTIMEOFDAY - fi + ]) gl_SYS_TIME_MODULE_INDICATOR([gettimeofday]) + AC_PROG_MKDIR_P gl_GNU_MAKE # Autoconf 2.61a.99 and earlier don't support linking a file only # in VPATH builds. But since GNUmakefile is for maintainer use @@ -690,7 +725,10 @@ AC_DEFUN([gl_INIT], [AC_CONFIG_LINKS([$GNUmakefile:$GNUmakefile], [], [GNUmakefile=$GNUmakefile])]) AC_REQUIRE([gl_FUNC_SETLOCALE_NULL]) - LIB_HARD_LOCALE="$LIB_SETLOCALE_NULL" + HARD_LOCALE_LIB="$SETLOCALE_NULL_LIB" + AC_SUBST([HARD_LOCALE_LIB]) + dnl For backward compatibility. + LIB_HARD_LOCALE="$HARD_LOCALE_LIB" AC_SUBST([LIB_HARD_LOCALE]) AC_DEFUN([gl_HAVE_MODULE_HAVELIB]) AC_REQUIRE([gl_HOST_CPU_C_ABI]) @@ -699,87 +737,75 @@ AC_DEFUN([gl_INIT], [gl_ICONV_MODULE_INDICATOR([iconv])]) gl_ICONV_H gl_ICONV_H_REQUIRE_DEFAULTS + gl_CONDITIONAL_HEADER([iconv.h]) + AC_PROG_MKDIR_P gl_FUNC_ICONV_OPEN - if test $REPLACE_ICONV_OPEN = 1; then - AC_LIBOBJ([iconv_open]) - fi - if test $REPLACE_ICONV = 1; then - AC_LIBOBJ([iconv]) - AC_LIBOBJ([iconv_close]) - fi + dnl Because of gl_REPLACE_ICONV_H: + gl_CONDITIONAL_HEADER([iconv.h]) + gl_CONDITIONAL([GL_COND_OBJ_ICONV_OPEN], [test $REPLACE_ICONV_OPEN = 1]) + gl_CONDITIONAL([GL_COND_OBJ_ICONV], [test $REPLACE_ICONV = 1]) gl_INLINE gl_INTTOSTR gl_INTTYPES_H gl_INTTYPES_INCOMPLETE gl_INTTYPES_H_REQUIRE_DEFAULTS + AC_PROG_MKDIR_P gl_FUNC_ISBLANK - if test $HAVE_ISBLANK = 0; then - AC_LIBOBJ([isblank]) - fi + gl_CONDITIONAL([GL_COND_OBJ_ISBLANK], [test $HAVE_ISBLANK = 0]) gl_MODULE_INDICATOR([isblank]) gl_CTYPE_MODULE_INDICATOR([isblank]) gl_FUNC_ISWBLANK - if test $HAVE_ISWCNTRL = 0 || test $REPLACE_ISWCNTRL = 1; then - : - else - if test $HAVE_ISWBLANK = 0 || test $REPLACE_ISWBLANK = 1; then - AC_LIBOBJ([iswblank]) - fi - fi + gl_CONDITIONAL([GL_COND_OBJ_ISWBLANK], + [! { test $HAVE_ISWCNTRL = 0 || test $REPLACE_ISWCNTRL = 1; } && { test $HAVE_ISWBLANK = 0 || test $REPLACE_ISWBLANK = 1; }]) gl_WCTYPE_MODULE_INDICATOR([iswblank]) gl_FUNC_ISWDIGIT - if test $HAVE_ISWCNTRL = 0 || test $REPLACE_ISWCNTRL = 1; then - : - else - if test $REPLACE_ISWDIGIT = 1; then - AC_LIBOBJ([iswdigit]) - fi - fi + gl_CONDITIONAL([GL_COND_OBJ_ISWDIGIT], + [! { test $HAVE_ISWCNTRL = 0 || test $REPLACE_ISWCNTRL = 1; } && test $REPLACE_ISWDIGIT = 1]) gl_WCTYPE_MODULE_INDICATOR([iswdigit]) gl_FUNC_ISWXDIGIT - if test $HAVE_ISWCNTRL = 0 || test $REPLACE_ISWCNTRL = 1; then - : - else - if test $REPLACE_ISWXDIGIT = 1; then - AC_LIBOBJ([iswxdigit]) - fi - fi + gl_CONDITIONAL([GL_COND_OBJ_ISWXDIGIT], + [! { test $HAVE_ISWCNTRL = 0 || test $REPLACE_ISWCNTRL = 1; } && test $REPLACE_ISWXDIGIT = 1]) gl_WCTYPE_MODULE_INDICATOR([iswxdigit]) gl_LANGINFO_H gl_LANGINFO_H_REQUIRE_DEFAULTS + AC_PROG_MKDIR_P AC_REQUIRE([gl_LARGEFILE]) gl___INLINE gl_LIMITS_H + gl_CONDITIONAL_HEADER([limits.h]) + AC_PROG_MKDIR_P gl_LOCALCHARSET dnl For backward compatibility. Some packages still use this. LOCALCHARSET_TESTS_ENVIRONMENT= AC_SUBST([LOCALCHARSET_TESTS_ENVIRONMENT]) gl_LOCALE_H gl_LOCALE_H_REQUIRE_DEFAULTS + AC_PROG_MKDIR_P gl_FUNC_LOCALECONV - if test $REPLACE_LOCALECONV = 1; then - AC_LIBOBJ([localeconv]) + gl_CONDITIONAL([GL_COND_OBJ_LOCALECONV], [test $REPLACE_LOCALECONV = 1]) + AM_COND_IF([GL_COND_OBJ_LOCALECONV], [ gl_PREREQ_LOCALECONV - fi + ]) gl_LOCALE_MODULE_INDICATOR([localeconv]) gl_LOCK gl_MODULE_INDICATOR([lock]) gl_FUNC_LSTAT - if test $REPLACE_LSTAT = 1; then - AC_LIBOBJ([lstat]) + gl_CONDITIONAL([GL_COND_OBJ_LSTAT], [test $REPLACE_LSTAT = 1]) + AM_COND_IF([GL_COND_OBJ_LSTAT], [ gl_PREREQ_LSTAT - fi + ]) gl_SYS_STAT_MODULE_INDICATOR([lstat]) AC_CONFIG_COMMANDS_PRE([m4_ifdef([AH_HEADER], [AC_SUBST([CONFIG_INCLUDE], m4_defn([AH_HEADER]))])]) AC_REQUIRE([AC_PROG_SED]) AC_REQUIRE([AC_PROG_GREP]) gl_FUNC_MALLOC_GNU - if test $REPLACE_MALLOC = 1; then + if test $REPLACE_MALLOC_FOR_MALLOC_GNU = 1; then AC_LIBOBJ([malloc]) fi + gl_STDLIB_MODULE_INDICATOR([malloc-gnu]) AC_REQUIRE([gl_FUNC_MALLOC_POSIX]) - if test $REPLACE_MALLOC = 1; then + if test $REPLACE_MALLOC_FOR_MALLOC_POSIX = 1; then AC_LIBOBJ([malloc]) fi gl_STDLIB_MODULE_INDICATOR([malloc-posix]) @@ -787,63 +813,67 @@ AC_DEFUN([gl_INIT], gl_MBCHAR gl_MBITER gl_FUNC_MBRTOWC - if test $HAVE_MBRTOWC = 0 || test $REPLACE_MBRTOWC = 1; then - AC_LIBOBJ([mbrtowc]) + gl_CONDITIONAL([GL_COND_OBJ_MBRTOWC], + [test $HAVE_MBRTOWC = 0 || test $REPLACE_MBRTOWC = 1]) + AM_COND_IF([GL_COND_OBJ_MBRTOWC], [ if test $REPLACE_MBSTATE_T = 1; then AC_LIBOBJ([lc-charset-dispatch]) AC_LIBOBJ([mbtowc-lock]) gl_PREREQ_MBTOWC_LOCK fi gl_PREREQ_MBRTOWC - fi + ]) gl_WCHAR_MODULE_INDICATOR([mbrtowc]) gl_STRING_MODULE_INDICATOR([mbscasecmp]) gl_FUNC_MBSINIT - if test $HAVE_MBSINIT = 0 || test $REPLACE_MBSINIT = 1; then - AC_LIBOBJ([mbsinit]) + gl_CONDITIONAL([GL_COND_OBJ_MBSINIT], + [test $HAVE_MBSINIT = 0 || test $REPLACE_MBSINIT = 1]) + AM_COND_IF([GL_COND_OBJ_MBSINIT], [ gl_PREREQ_MBSINIT - fi + ]) gl_WCHAR_MODULE_INDICATOR([mbsinit]) gl_FUNC_MBSLEN gl_STRING_MODULE_INDICATOR([mbslen]) gl_FUNC_MBSRTOWCS - if test $HAVE_MBSRTOWCS = 0 || test $REPLACE_MBSRTOWCS = 1; then - AC_LIBOBJ([mbsrtowcs]) + gl_CONDITIONAL([GL_COND_OBJ_MBSRTOWCS], + [test $HAVE_MBSRTOWCS = 0 || test $REPLACE_MBSRTOWCS = 1]) + AM_COND_IF([GL_COND_OBJ_MBSRTOWCS], [ AC_LIBOBJ([mbsrtowcs-state]) gl_PREREQ_MBSRTOWCS - fi + ]) gl_WCHAR_MODULE_INDICATOR([mbsrtowcs]) gl_STRING_MODULE_INDICATOR([mbsstr]) gl_FUNC_MBTOWC - if test $HAVE_MBTOWC = 0 || test $REPLACE_MBTOWC = 1; then - AC_LIBOBJ([mbtowc]) + gl_CONDITIONAL([GL_COND_OBJ_MBTOWC], + [test $HAVE_MBTOWC = 0 || test $REPLACE_MBTOWC = 1]) + AM_COND_IF([GL_COND_OBJ_MBTOWC], [ gl_PREREQ_MBTOWC - fi + ]) gl_STDLIB_MODULE_INDICATOR([mbtowc]) gl_MBITER gl_FUNC_MEMCHR - if test $REPLACE_MEMCHR = 1; then - AC_LIBOBJ([memchr]) + gl_CONDITIONAL([GL_COND_OBJ_MEMCHR], [test $REPLACE_MEMCHR = 1]) + AM_COND_IF([GL_COND_OBJ_MEMCHR], [ gl_PREREQ_MEMCHR - fi + ]) gl_STRING_MODULE_INDICATOR([memchr]) gl_FUNC_MEMPCPY - if test $HAVE_MEMPCPY = 0; then - AC_LIBOBJ([mempcpy]) + gl_CONDITIONAL([GL_COND_OBJ_MEMPCPY], + [test $HAVE_MEMPCPY = 0 || test $REPLACE_MEMPCPY = 1]) + AM_COND_IF([GL_COND_OBJ_MEMPCPY], [ gl_PREREQ_MEMPCPY - fi + ]) gl_STRING_MODULE_INDICATOR([mempcpy]) gl_MINMAX gl_FUNC_MKDIR - if test $REPLACE_MKDIR = 1; then - AC_LIBOBJ([mkdir]) - fi + gl_CONDITIONAL([GL_COND_OBJ_MKDIR], [test $REPLACE_MKDIR = 1]) gl_SYS_STAT_MODULE_INDICATOR([mkdir]) gl_FUNC_MKSTEMP - if test $HAVE_MKSTEMP = 0 || test $REPLACE_MKSTEMP = 1; then - AC_LIBOBJ([mkstemp]) + gl_CONDITIONAL([GL_COND_OBJ_MKSTEMP], + [test $HAVE_MKSTEMP = 0 || test $REPLACE_MKSTEMP = 1]) + AM_COND_IF([GL_COND_OBJ_MKSTEMP], [ gl_PREREQ_MKSTEMP - fi + ]) gl_STDLIB_MODULE_INDICATOR([mkstemp]) gl_FUNC_MKTIME if test $REPLACE_MKTIME = 1; then @@ -857,32 +887,32 @@ AC_DEFUN([gl_INIT], gl_PREREQ_MKTIME fi AC_REQUIRE([gl_MSVC_INVAL]) - if test $HAVE_MSVC_INVALID_PARAMETER_HANDLER = 1; then - AC_LIBOBJ([msvc-inval]) - fi + gl_CONDITIONAL([GL_COND_OBJ_MSVC_INVAL], + [test $HAVE_MSVC_INVALID_PARAMETER_HANDLER = 1]) AC_REQUIRE([gl_MSVC_NOTHROW]) - if test $HAVE_MSVC_INVALID_PARAMETER_HANDLER = 1; then - AC_LIBOBJ([msvc-nothrow]) - fi + gl_CONDITIONAL([GL_COND_OBJ_MSVC_NOTHROW], + [test $HAVE_MSVC_INVALID_PARAMETER_HANDLER = 1]) gl_MODULE_INDICATOR([msvc-nothrow]) gl_MULTIARCH gl_FUNC_NL_LANGINFO - if test $HAVE_NL_LANGINFO = 0 || test $REPLACE_NL_LANGINFO = 1; then - AC_LIBOBJ([nl_langinfo]) - fi + gl_CONDITIONAL([GL_COND_OBJ_NL_LANGINFO], + [test $HAVE_NL_LANGINFO = 0 || test $REPLACE_NL_LANGINFO = 1]) + gl_CONDITIONAL([GL_COND_OBJ_NL_LANGINFO_LOCK], + [test $REPLACE_NL_LANGINFO = 1 && test $NL_LANGINFO_MTSAFE = 0]) if test $REPLACE_NL_LANGINFO = 1 && test $NL_LANGINFO_MTSAFE = 0; then - AC_LIBOBJ([nl_langinfo-lock]) gl_PREREQ_NL_LANGINFO_LOCK fi gl_LANGINFO_MODULE_INDICATOR([nl_langinfo]) gl_FUNC_GNU_STRFTIME + gl_NULLPTR gl_FUNC_OPEN - if test $REPLACE_OPEN = 1; then - AC_LIBOBJ([open]) + gl_CONDITIONAL([GL_COND_OBJ_OPEN], [test $REPLACE_OPEN = 1]) + AM_COND_IF([GL_COND_OBJ_OPEN], [ gl_PREREQ_OPEN - fi + ]) gl_FCNTL_MODULE_INDICATOR([open]) gl_PATHMAX + gl_PERL AC_CHECK_DECLS([program_invocation_name], [], [], [#include ]) AC_CHECK_DECLS([program_invocation_short_name], [], [], [#include ]) m4_ifdef([AM_XGETTEXT_OPTION], @@ -891,77 +921,85 @@ AC_DEFUN([gl_INIT], gl_QUOTE gl_QUOTEARG gl_FUNC_RAISE - if test $HAVE_RAISE = 0 || test $REPLACE_RAISE = 1; then - AC_LIBOBJ([raise]) + gl_CONDITIONAL([GL_COND_OBJ_RAISE], + [test $HAVE_RAISE = 0 || test $REPLACE_RAISE = 1]) + AM_COND_IF([GL_COND_OBJ_RAISE], [ gl_PREREQ_RAISE - fi + ]) gl_SIGNAL_MODULE_INDICATOR([raise]) gl_FUNC_RAWMEMCHR - if test $HAVE_RAWMEMCHR = 0; then - AC_LIBOBJ([rawmemchr]) + gl_CONDITIONAL([GL_COND_OBJ_RAWMEMCHR], [test $HAVE_RAWMEMCHR = 0]) + AM_COND_IF([GL_COND_OBJ_RAWMEMCHR], [ gl_PREREQ_RAWMEMCHR - fi + ]) gl_STRING_MODULE_INDICATOR([rawmemchr]) gl_FUNC_READLINK - if test $HAVE_READLINK = 0 || test $REPLACE_READLINK = 1; then - AC_LIBOBJ([readlink]) + gl_CONDITIONAL([GL_COND_OBJ_READLINK], + [test $HAVE_READLINK = 0 || test $REPLACE_READLINK = 1]) + AM_COND_IF([GL_COND_OBJ_READLINK], [ gl_PREREQ_READLINK - fi + ]) gl_UNISTD_MODULE_INDICATOR([readlink]) gl_FUNC_REALLOC_GNU - if test $REPLACE_REALLOC = 1; then + if test $REPLACE_REALLOC_FOR_REALLOC_GNU = 1; then AC_LIBOBJ([realloc]) fi + gl_STDLIB_MODULE_INDICATOR([realloc-gnu]) gl_FUNC_REALLOC_POSIX - if test $REPLACE_REALLOC = 1; then + if test $REPLACE_REALLOC_FOR_REALLOC_POSIX = 1; then AC_LIBOBJ([realloc]) fi gl_STDLIB_MODULE_INDICATOR([realloc-posix]) gl_FUNC_REALLOCARRAY - if test $HAVE_REALLOCARRAY = 0 || test $REPLACE_REALLOCARRAY = 1; then - AC_LIBOBJ([reallocarray]) + gl_CONDITIONAL([GL_COND_OBJ_REALLOCARRAY], + [test $HAVE_REALLOCARRAY = 0 || test $REPLACE_REALLOCARRAY = 1]) + AM_COND_IF([GL_COND_OBJ_REALLOCARRAY], [ gl_PREREQ_REALLOCARRAY - fi + ]) gl_MODULE_INDICATOR([reallocarray]) gl_STDLIB_MODULE_INDICATOR([reallocarray]) gl_REGEX - if test $ac_use_included_regex = yes; then - AC_LIBOBJ([regex]) + gl_CONDITIONAL([GL_COND_OBJ_REGEX], [test $ac_use_included_regex = yes]) + AM_COND_IF([GL_COND_OBJ_REGEX], [ gl_PREREQ_REGEX - fi + ]) gl_FUNC_SETENV - if test $HAVE_SETENV = 0 || test $REPLACE_SETENV = 1; then - AC_LIBOBJ([setenv]) - fi + gl_CONDITIONAL([GL_COND_OBJ_SETENV], + [test $HAVE_SETENV = 0 || test $REPLACE_SETENV = 1]) gl_STDLIB_MODULE_INDICATOR([setenv]) gl_FUNC_SETLOCALE_NULL - if test $SETLOCALE_NULL_ALL_MTSAFE = 0 || test $SETLOCALE_NULL_ONE_MTSAFE = 0; then - AC_LIBOBJ([setlocale-lock]) + gl_CONDITIONAL([GL_COND_OBJ_SETLOCALE_LOCK], + [test $SETLOCALE_NULL_ALL_MTSAFE = 0 || test $SETLOCALE_NULL_ONE_MTSAFE = 0]) + AM_COND_IF([GL_COND_OBJ_SETLOCALE_LOCK], [ gl_PREREQ_SETLOCALE_LOCK - fi + ]) gl_LOCALE_MODULE_INDICATOR([setlocale_null]) AC_REQUIRE([AC_C_RESTRICT]) gl_SIGNAL_H gl_SIGNAL_H_REQUIRE_DEFAULTS - AC_ARG_WITH([libsigsegv], - [AS_HELP_STRING([--with-libsigsegv], - [use the GNU libsigsegv library, when present, instead of the gnulib module 'sigsegv'])]) - SIGSEGV_H=sigsegv.h - if test "$with_libsigsegv" = yes; then - gl_LIBSIGSEGV - if test "$gl_cv_lib_sigsegv" = yes; then - SIGSEGV_H= - fi + AC_PROG_MKDIR_P + gl_SIGNALBLOCKING + gl_CONDITIONAL([GL_COND_OBJ_SIGPROCMASK], [test $HAVE_POSIX_SIGNALBLOCKING = 0]) + AM_COND_IF([GL_COND_OBJ_SIGPROCMASK], [ + gl_PREREQ_SIGPROCMASK + ]) + gl_SIGNAL_MODULE_INDICATOR([sigprocmask]) + AC_REQUIRE([gl_SIGSEGV]) + if test $gl_sigsegv_uses_libsigsegv = yes; then + GL_GENERATE_SIGSEGV_H=false + else + GL_GENERATE_SIGSEGV_H=true fi - AC_SUBST([SIGSEGV_H]) - AM_CONDITIONAL([GL_GENERATE_SIGSEGV_H], [test -n "$SIGSEGV_H"]) - if test -n "$SIGSEGV_H"; then + gl_CONDITIONAL_HEADER([sigsegv.h]) + AC_PROG_MKDIR_P + if $GL_GENERATE_SIGSEGV_H; then dnl Persuade glibc to declare macros designating register dnl indices: REG_RSP on x86_64, REG_ESP on i386. dnl Persuade Solaris OpenIndiana to include , dnl which declares macros designating register indices, such as ESP on i386. dnl Persuade Solaris OpenIndiana to declare mincore(). AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS]) + gl_MUSL_LIBC AC_REQUIRE([AC_CANONICAL_HOST]) case "$host_os" in solaris2.11) @@ -977,29 +1015,46 @@ AC_DEFUN([gl_INIT], SV_SIGALTSTACK AC_CHECK_FUNCS_ONCE([getrlimit]) fi - gl_SIZE_MAX gt_TYPE_SSIZE_T gl_FUNC_STAT - if test $REPLACE_STAT = 1; then - AC_LIBOBJ([stat]) + gl_CONDITIONAL([GL_COND_OBJ_STAT], [test $REPLACE_STAT = 1]) + AM_COND_IF([GL_COND_OBJ_STAT], [ case "$host_os" in mingw*) AC_LIBOBJ([stat-w32]) ;; esac gl_PREREQ_STAT - fi + ]) gl_SYS_STAT_MODULE_INDICATOR([stat]) gl_STAT_TIME gl_STAT_BIRTHTIME - gl_STDALIGN_H gl_STDARG_H - AM_STDBOOL_H + gl_CONDITIONAL_HEADER([stdarg.h]) + AC_PROG_MKDIR_P + gl_C_BOOL + AC_CHECK_HEADERS_ONCE([stdckdint.h]) + if test $ac_cv_header_stdckdint_h = yes; then + GL_GENERATE_STDCKDINT_H=false + else + GL_GENERATE_STDCKDINT_H=true + fi + gl_CONDITIONAL_HEADER([stdckdint.h]) + AC_PROG_MKDIR_P gl_STDDEF_H gl_STDDEF_H_REQUIRE_DEFAULTS + gl_CONDITIONAL_HEADER([stddef.h]) + AC_PROG_MKDIR_P gl_STDINT_H + gl_CONDITIONAL_HEADER([stdint.h]) + dnl Because of gl_REPLACE_LIMITS_H: + gl_CONDITIONAL_HEADER([limits.h]) + AC_PROG_MKDIR_P gl_STDIO_H gl_STDIO_H_REQUIRE_DEFAULTS + AC_PROG_MKDIR_P + gl_CONDITIONAL([GL_COND_OBJ_STDIO_READ], [test $REPLACE_STDIO_READ_FUNCS = 1]) + gl_CONDITIONAL([GL_COND_OBJ_STDIO_WRITE], [test $REPLACE_STDIO_WRITE_FUNCS = 1]) dnl No need to create extra modules for these functions. Everyone who uses dnl likely needs them. gl_STDIO_MODULE_INDICATOR([fscanf]) @@ -1025,58 +1080,70 @@ AC_DEFUN([gl_INIT], gl_STDIO_MODULE_INDICATOR([fwrite]) gl_STDLIB_H gl_STDLIB_H_REQUIRE_DEFAULTS + AC_PROG_MKDIR_P + gl_FUNC_STPCPY + gl_CONDITIONAL([GL_COND_OBJ_STPCPY], + [test $HAVE_STPCPY = 0 || test $REPLACE_STPCPY = 1]) + AM_COND_IF([GL_COND_OBJ_STPCPY], [ + gl_PREREQ_STPCPY + ]) + gl_STRING_MODULE_INDICATOR([stpcpy]) gl_STRCASE - if test $HAVE_STRCASECMP = 0; then - AC_LIBOBJ([strcasecmp]) + gl_CONDITIONAL([GL_COND_OBJ_STRCASECMP], [test $HAVE_STRCASECMP = 0]) + AM_COND_IF([GL_COND_OBJ_STRCASECMP], [ gl_PREREQ_STRCASECMP - fi - if test $HAVE_STRNCASECMP = 0; then - AC_LIBOBJ([strncasecmp]) + ]) + gl_CONDITIONAL([GL_COND_OBJ_STRNCASECMP], [test $HAVE_STRNCASECMP = 0]) + AM_COND_IF([GL_COND_OBJ_STRNCASECMP], [ gl_PREREQ_STRNCASECMP - fi + ]) gl_FUNC_STRERROR - if test $REPLACE_STRERROR = 1; then - AC_LIBOBJ([strerror]) - fi + gl_CONDITIONAL([GL_COND_OBJ_STRERROR], [test $REPLACE_STRERROR = 1]) gl_MODULE_INDICATOR([strerror]) gl_STRING_MODULE_INDICATOR([strerror]) AC_REQUIRE([gl_HEADER_ERRNO_H]) AC_REQUIRE([gl_FUNC_STRERROR_0]) - if test -n "$ERRNO_H" || test $REPLACE_STRERROR_0 = 1; then - AC_LIBOBJ([strerror-override]) + gl_CONDITIONAL([GL_COND_OBJ_STRERROR_OVERRIDE], + [test -n "$ERRNO_H" || test $REPLACE_STRERROR_0 = 1]) + AM_COND_IF([GL_COND_OBJ_STRERROR_OVERRIDE], [ gl_PREREQ_SYS_H_WINSOCK2 - fi + ]) if test $gl_cond_libtool = false; then gl_ltlibdeps="$gl_ltlibdeps $LTLIBICONV" gl_libdeps="$gl_libdeps $LIBICONV" fi gl_STRING_H gl_STRING_H_REQUIRE_DEFAULTS + AC_PROG_MKDIR_P gl_STRINGS_H gl_STRINGS_H_REQUIRE_DEFAULTS + AC_PROG_MKDIR_P gl_FUNC_STRNLEN - if test $HAVE_DECL_STRNLEN = 0 || test $REPLACE_STRNLEN = 1; then - AC_LIBOBJ([strnlen]) + gl_CONDITIONAL([GL_COND_OBJ_STRNLEN], + [test $HAVE_DECL_STRNLEN = 0 || test $REPLACE_STRNLEN = 1]) + AM_COND_IF([GL_COND_OBJ_STRNLEN], [ gl_PREREQ_STRNLEN - fi + ]) gl_STRING_MODULE_INDICATOR([strnlen]) gl_FUNC_STRPTIME - if test $HAVE_STRPTIME = 0; then - AC_LIBOBJ([strptime]) + gl_CONDITIONAL([GL_COND_OBJ_STRPTIME], [test $HAVE_STRPTIME = 0]) + AM_COND_IF([GL_COND_OBJ_STRPTIME], [ gl_PREREQ_STRPTIME - fi + ]) gl_TIME_MODULE_INDICATOR([strptime]) gl_FUNC_STRTOIMAX - if test $HAVE_DECL_STRTOIMAX = 0 || test $REPLACE_STRTOIMAX = 1; then - AC_LIBOBJ([strtoimax]) + gl_CONDITIONAL([GL_COND_OBJ_STRTOIMAX], + [test $HAVE_DECL_STRTOIMAX = 0 || test $REPLACE_STRTOIMAX = 1]) + AM_COND_IF([GL_COND_OBJ_STRTOIMAX], [ gl_PREREQ_STRTOIMAX - fi + ]) gl_INTTYPES_MODULE_INDICATOR([strtoimax]) gl_FUNC_STRTOLL - if test $HAVE_STRTOLL = 0 || test $REPLACE_STRTOLL = 1; then - AC_LIBOBJ([strtoll]) + gl_CONDITIONAL([GL_COND_OBJ_STRTOLL], + [test $HAVE_STRTOLL = 0 || test $REPLACE_STRTOLL = 1]) + AM_COND_IF([GL_COND_OBJ_STRTOLL], [ gl_PREREQ_STRTOLL - fi + ]) gl_STDLIB_MODULE_INDICATOR([strtoll]) gl_SYS_RANDOM_H gl_SYS_RANDOM_H_REQUIRE_DEFAULTS @@ -1099,37 +1166,39 @@ AC_DEFUN([gl_INIT], AC_REQUIRE([gl_THREADLIB]) gl_TIME_H gl_TIME_H_REQUIRE_DEFAULTS + AC_PROG_MKDIR_P gl_TIME_R - if test $HAVE_LOCALTIME_R = 0 || test $REPLACE_LOCALTIME_R = 1; then - AC_LIBOBJ([time_r]) + gl_CONDITIONAL([GL_COND_OBJ_TIME_R], + [test $HAVE_LOCALTIME_R = 0 || test $REPLACE_LOCALTIME_R = 1]) + AM_COND_IF([GL_COND_OBJ_TIME_R], [ gl_PREREQ_TIME_R - fi + ]) gl_TIME_MODULE_INDICATOR([time_r]) gl_TIME_RZ - if test $HAVE_TIMEZONE_T = 0; then - AC_LIBOBJ([time_rz]) - fi + gl_CONDITIONAL([GL_COND_OBJ_TIME_RZ], [test $HAVE_TIMEZONE_T = 0]) gl_TIME_MODULE_INDICATOR([time_rz]) gl_FUNC_TIMEGM - if test $HAVE_TIMEGM = 0 || test $REPLACE_TIMEGM = 1; then - AC_LIBOBJ([timegm]) + gl_CONDITIONAL([GL_COND_OBJ_TIMEGM], + [test $HAVE_TIMEGM = 0 || test $REPLACE_TIMEGM = 1]) + AM_COND_IF([GL_COND_OBJ_TIMEGM], [ gl_PREREQ_TIMEGM - fi + ]) gl_TIME_MODULE_INDICATOR([timegm]) gl_TIMESPEC gl_FUNC_TZSET - if test $REPLACE_TZSET = 1; then - AC_LIBOBJ([tzset]) - fi + gl_CONDITIONAL([GL_COND_OBJ_TZSET], [test $REPLACE_TZSET = 1]) gl_TIME_MODULE_INDICATOR([tzset]) gl_UNISTD_H gl_UNISTD_H_REQUIRE_DEFAULTS + AC_PROG_MKDIR_P gl_LIBUNISTRING_LIBHEADER([0.9.11], [unistr.h]) + AC_PROG_MKDIR_P gl_MODULE_INDICATOR([unistr/u8-mbtoucr]) gl_LIBUNISTRING_MODULE([0.9], [unistr/u8-mbtoucr]) gl_MODULE_INDICATOR([unistr/u8-uctomb]) gl_LIBUNISTRING_MODULE([0.9], [unistr/u8-uctomb]) gl_LIBUNISTRING_LIBHEADER([0.9.11], [unitypes.h]) + AC_PROG_MKDIR_P AH_VERBATIM([unitypes_restrict], [ /* This definition is a duplicate of the one in unitypes.h. It is here so that we can cope with an older version of unitypes.h @@ -1146,7 +1215,8 @@ AC_DEFUN([gl_INIT], # endif ]) gl_LIBUNISTRING_LIBHEADER([0.9.11], [uniwidth.h]) - gl_LIBUNISTRING_MODULE([0.9.8], [uniwidth/width]) + AC_PROG_MKDIR_P + gl_LIBUNISTRING_MODULE([1.1], [uniwidth/width]) AC_DEFINE([GNULIB_STDIO_SINGLE_THREAD], [1], [Define to 1 if you want the FILE stream functions getc, putc, etc. to use unlocked I/O if available, throughout the package. @@ -1159,77 +1229,57 @@ AC_DEFUN([gl_INIT], [An alias of GNULIB_STDIO_SINGLE_THREAD.]) gl_FUNC_GLIBC_UNLOCKED_IO gl_FUNC_UNSETENV - if test $HAVE_UNSETENV = 0 || test $REPLACE_UNSETENV = 1; then - AC_LIBOBJ([unsetenv]) + gl_CONDITIONAL([GL_COND_OBJ_UNSETENV], + [test $HAVE_UNSETENV = 0 || test $REPLACE_UNSETENV = 1]) + AM_COND_IF([GL_COND_OBJ_UNSETENV], [ gl_PREREQ_UNSETENV - fi + ]) gl_STDLIB_MODULE_INDICATOR([unsetenv]) - AC_REQUIRE([AC_C_RESTRICT]) - gl_FUNC_VASNPRINTF - gl_FUNC_VASPRINTF - gl_STDIO_MODULE_INDICATOR([vasprintf]) - m4_ifdef([AM_XGETTEXT_OPTION], - [AM_][XGETTEXT_OPTION([--flag=asprintf:2:c-format]) - AM_][XGETTEXT_OPTION([--flag=vasprintf:2:c-format])]) + AC_C_VARARRAYS gl_VERSION_ETC gl_WCHAR_H gl_WCHAR_H_REQUIRE_DEFAULTS + AC_PROG_MKDIR_P gl_FUNC_WCRTOMB - if test $HAVE_WCRTOMB = 0 || test $REPLACE_WCRTOMB = 1; then - AC_LIBOBJ([wcrtomb]) + gl_CONDITIONAL([GL_COND_OBJ_WCRTOMB], + [test $HAVE_WCRTOMB = 0 || test $REPLACE_WCRTOMB = 1]) + AM_COND_IF([GL_COND_OBJ_WCRTOMB], [ gl_PREREQ_WCRTOMB - fi + ]) gl_WCHAR_MODULE_INDICATOR([wcrtomb]) gl_WCTYPE_H gl_WCTYPE_H_REQUIRE_DEFAULTS + AC_PROG_MKDIR_P gl_FUNC_WCWIDTH - if test $HAVE_WCWIDTH = 0 || test $REPLACE_WCWIDTH = 1; then - AC_LIBOBJ([wcwidth]) + gl_CONDITIONAL([GL_COND_OBJ_WCWIDTH], + [test $HAVE_WCWIDTH = 0 || test $REPLACE_WCWIDTH = 1]) + AM_COND_IF([GL_COND_OBJ_WCWIDTH], [ gl_PREREQ_WCWIDTH - fi + ]) gl_WCHAR_MODULE_INDICATOR([wcwidth]) AC_REQUIRE([AC_CANONICAL_HOST]) - case "$host_os" in - mingw*) - AC_LIBOBJ([windows-mutex]) - ;; - esac + gl_CONDITIONAL([GL_COND_OBJ_WINDOWS_MUTEX], + [case "$host_os" in mingw*) true;; *) false;; esac]) AC_REQUIRE([AC_CANONICAL_HOST]) - case "$host_os" in - mingw*) - AC_LIBOBJ([windows-once]) - ;; - esac + gl_CONDITIONAL([GL_COND_OBJ_WINDOWS_ONCE], + [case "$host_os" in mingw*) true;; *) false;; esac]) AC_REQUIRE([AC_CANONICAL_HOST]) - case "$host_os" in - mingw*) - AC_LIBOBJ([windows-recmutex]) - ;; - esac + gl_CONDITIONAL([GL_COND_OBJ_WINDOWS_RECMUTEX], + [case "$host_os" in mingw*) true;; *) false;; esac]) AC_REQUIRE([AC_CANONICAL_HOST]) - case "$host_os" in - mingw*) - AC_LIBOBJ([windows-rwlock]) - ;; - esac + gl_CONDITIONAL([GL_COND_OBJ_WINDOWS_RWLOCK], + [case "$host_os" in mingw*) true;; *) false;; esac]) gl_FUNC_WMEMCHR - if test $HAVE_WMEMCHR = 0; then - AC_LIBOBJ([wmemchr]) - fi + gl_CONDITIONAL([GL_COND_OBJ_WMEMCHR], [test $HAVE_WMEMCHR = 0]) gl_WCHAR_MODULE_INDICATOR([wmemchr]) gl_FUNC_WMEMPCPY - if test $HAVE_WMEMPCPY = 0; then - AC_LIBOBJ([wmempcpy]) - fi + gl_CONDITIONAL([GL_COND_OBJ_WMEMPCPY], + [test $HAVE_WMEMPCPY = 0 || test $REPLACE_WMEMPCPY = 1]) gl_WCHAR_MODULE_INDICATOR([wmempcpy]) gl_XALLOC gl_MODULE_INDICATOR([xalloc]) gl_MODULE_INDICATOR([xalloc-die]) - gl_XSIZE gl_XSTRTOL - gl_XVASPRINTF - m4_ifdef([AM_XGETTEXT_OPTION], - [AM_][XGETTEXT_OPTION([--flag=xasprintf:1:c-format])]) # End of code from modules m4_ifval(gl_LIBSOURCES_LIST, [ m4_syscmd([test ! -d ]m4_defn([gl_LIBSOURCES_DIR])[ || @@ -1252,16 +1302,28 @@ AC_DEFUN([gl_INIT], AC_CONFIG_COMMANDS_PRE([ gl_libobjs= gl_ltlibobjs= + gl_libobjdeps= if test -n "$gl_LIBOBJS"; then # Remove the extension. +changequote(,)dnl sed_drop_objext='s/\.o$//;s/\.obj$//' + sed_dirname1='s,//*,/,g' + sed_dirname2='s,\(.\)/$,\1,' + sed_dirname3='s,^[^/]*$,.,' + sed_dirname4='s,\(.\)/[^/]*$,\1,' + sed_basename1='s,.*/,,' +changequote([, ])dnl for i in `for i in $gl_LIBOBJS; do echo "$i"; done | sed -e "$sed_drop_objext" | sort | uniq`; do gl_libobjs="$gl_libobjs $i.$ac_objext" gl_ltlibobjs="$gl_ltlibobjs $i.lo" + i_dir=`echo "$i" | sed -e "$sed_dirname1" -e "$sed_dirname2" -e "$sed_dirname3" -e "$sed_dirname4"` + i_base=`echo "$i" | sed -e "$sed_basename1"` + gl_libobjdeps="$gl_libobjdeps $i_dir/\$(DEPDIR)/$i_base.Po" done fi AC_SUBST([gl_LIBOBJS], [$gl_libobjs]) AC_SUBST([gl_LTLIBOBJS], [$gl_ltlibobjs]) + AC_SUBST([gl_LIBOBJDEPS], [$gl_libobjdeps]) ]) gltests_libdeps= gltests_ltlibdeps= @@ -1276,6 +1338,7 @@ AC_DEFUN([gl_INIT], AC_REQUIRE([gl_CC_ALLOW_WARNINGS]) AC_REQUIRE([gl_CXX_ALLOW_WARNINGS]) gl_source_base='gnulib-tests' + gl_source_base_prefix= changequote(,)dnl gltests_WITNESS=IN_`echo "${PACKAGE-$PACKAGE_TARNAME}" | LC_ALL=C tr abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ | LC_ALL=C sed -e 's/[^A-Z0-9_]/_/g'`_GNULIB_TESTS changequote([, ])dnl @@ -1283,64 +1346,62 @@ changequote([, ])dnl gl_module_indicator_condition=$gltests_WITNESS m4_pushdef([gl_MODULE_INDICATOR_CONDITION], [$gl_module_indicator_condition]) AC_REQUIRE([gl_SYS_SOCKET_H]) - if test "$ac_cv_header_winsock2_h" = yes; then - AC_LIBOBJ([accept]) - fi + gl_CONDITIONAL([GL_COND_OBJ_ACCEPT], [test "$ac_cv_header_winsock2_h" = yes]) gl_SYS_SOCKET_MODULE_INDICATOR([accept]) gl_ARPA_INET_H gl_ARPA_INET_H_REQUIRE_DEFAULTS AC_PROG_MKDIR_P gl_FUNC_ATOLL - if test $HAVE_ATOLL = 0; then - AC_LIBOBJ([atoll]) + gl_CONDITIONAL([GL_COND_OBJ_ATOLL], [test $HAVE_ATOLL = 0]) + AM_COND_IF([GL_COND_OBJ_ATOLL], [ gl_PREREQ_ATOLL - fi + ]) gl_STDLIB_MODULE_INDICATOR([atoll]) AC_REQUIRE([gl_SYS_SOCKET_H]) - if test "$ac_cv_header_winsock2_h" = yes; then - AC_LIBOBJ([bind]) - fi + gl_CONDITIONAL([GL_COND_OBJ_BIND], [test "$ac_cv_header_winsock2_h" = yes]) gl_SYS_SOCKET_MODULE_INDICATOR([bind]) gt_LOCALE_FR gt_LOCALE_FR_UTF8 gt_LOCALE_FR gt_LOCALE_TR_UTF8 AC_REQUIRE([gl_SYS_SOCKET_H]) - if test "$ac_cv_header_winsock2_h" = yes; then - AC_LIBOBJ([connect]) - fi + gl_CONDITIONAL([GL_COND_OBJ_CONNECT], [test "$ac_cv_header_winsock2_h" = yes]) gl_SYS_SOCKET_MODULE_INDICATOR([connect]) gl_FUNC_FDOPEN - if test $REPLACE_FDOPEN = 1; then - AC_LIBOBJ([fdopen]) + gl_CONDITIONAL([GL_COND_OBJ_FDOPEN], [test $REPLACE_FDOPEN = 1]) + AM_COND_IF([GL_COND_OBJ_FDOPEN], [ gl_PREREQ_FDOPEN - fi + ]) gl_STDIO_MODULE_INDICATOR([fdopen]) + gl_FLOAT_H + gl_CONDITIONAL_HEADER([float.h]) + AC_PROG_MKDIR_P + gl_CONDITIONAL([GL_COND_OBJ_FLOAT], [test $REPLACE_FLOAT_LDBL = 1]) + gl_CONDITIONAL([GL_COND_OBJ_ITOLD], [test $REPLACE_ITOLD = 1]) gl_FUNC_FTRUNCATE - if test $HAVE_FTRUNCATE = 0 || test $REPLACE_FTRUNCATE = 1; then - AC_LIBOBJ([ftruncate]) + gl_CONDITIONAL([GL_COND_OBJ_FTRUNCATE], + [test $HAVE_FTRUNCATE = 0 || test $REPLACE_FTRUNCATE = 1]) + AM_COND_IF([GL_COND_OBJ_FTRUNCATE], [ gl_PREREQ_FTRUNCATE - fi + ]) gl_UNISTD_MODULE_INDICATOR([ftruncate]) gl_FUNC_GETCWD_LGPL - if test $REPLACE_GETCWD = 1; then - AC_LIBOBJ([getcwd-lgpl]) - fi + gl_CONDITIONAL([GL_COND_OBJ_GETCWD_LGPL], [test $REPLACE_GETCWD = 1]) gl_UNISTD_MODULE_INDICATOR([getcwd]) gl_MUSL_LIBC dnl Distinguish OpenBSD >= 6.2 from OpenBSD < 6.2. - AC_CHECK_FUNCS_ONCE([duplocale]) + gl_CHECK_FUNCS_ANDROID([duplocale], [[#include ]]) gl_FUNC_INET_PTON - if test $HAVE_INET_PTON = 0 || test $REPLACE_INET_PTON = 1; then - AC_LIBOBJ([inet_pton]) + gl_CONDITIONAL([GL_COND_OBJ_INET_PTON], + [test $HAVE_INET_PTON = 0 || test $REPLACE_INET_PTON = 1]) + AM_COND_IF([GL_COND_OBJ_INET_PTON], [ gl_PREREQ_INET_PTON - fi + ]) gl_ARPA_INET_MODULE_INDICATOR([inet_pton]) AC_C_BIGENDIAN gl_FUNC_IOCTL - if test $HAVE_IOCTL = 0 || test $REPLACE_IOCTL = 1; then - AC_LIBOBJ([ioctl]) - fi + gl_CONDITIONAL([GL_COND_OBJ_IOCTL], + [test $HAVE_IOCTL = 0 || test $REPLACE_IOCTL = 1]) gl_SYS_IOCTL_MODULE_INDICATOR([ioctl]) gt_LOCALE_FR gt_LOCALE_FR_UTF8 @@ -1351,11 +1412,9 @@ changequote([, ])dnl gt_LOCALE_JA gt_LOCALE_ZH_CN AC_REQUIRE([gl_SYS_SOCKET_H]) - if test "$ac_cv_header_winsock2_h" = yes; then - AC_LIBOBJ([listen]) - fi + gl_CONDITIONAL([GL_COND_OBJ_LISTEN], [test "$ac_cv_header_winsock2_h" = yes]) gl_SYS_SOCKET_MODULE_INDICATOR([listen]) - AC_CHECK_FUNCS_ONCE([newlocale]) + gl_CHECK_FUNCS_ANDROID([newlocale], [[#include ]]) gt_LOCALE_FR gt_LOCALE_FR_UTF8 gt_LOCALE_JA @@ -1373,44 +1432,46 @@ changequote([, ])dnl AC_CHECK_HEADERS_ONCE([sys/mman.h]) AC_CHECK_FUNCS_ONCE([mprotect]) gl_FUNC_NANOSLEEP - if test $HAVE_NANOSLEEP = 0 || test $REPLACE_NANOSLEEP = 1; then - AC_LIBOBJ([nanosleep]) - gl_PREREQ_NANOSLEEP - fi + gl_CONDITIONAL([GL_COND_OBJ_NANOSLEEP], + [test $HAVE_NANOSLEEP = 0 || test $REPLACE_NANOSLEEP = 1]) gl_TIME_MODULE_INDICATOR([nanosleep]) AC_CHECK_DECLS_ONCE([alarm]) gl_HEADER_NETINET_IN + gl_CONDITIONAL_HEADER([netinet/in.h]) AC_PROG_MKDIR_P gt_LOCALE_FR gt_LOCALE_FR_UTF8 + gt_FUNC_USELOCALE gl_FUNC_PERROR - if test $REPLACE_PERROR = 1; then - AC_LIBOBJ([perror]) - fi + gl_CONDITIONAL([GL_COND_OBJ_PERROR], [test $REPLACE_PERROR = 1]) gl_STRING_MODULE_INDICATOR([perror]) gl_FUNC_PIPE - if test $HAVE_PIPE = 0; then - AC_LIBOBJ([pipe]) - fi + gl_CONDITIONAL([GL_COND_OBJ_PIPE], [test $HAVE_PIPE = 0]) gl_UNISTD_MODULE_INDICATOR([pipe]) + gl_FUNC_PSELECT + gl_CONDITIONAL([GL_COND_OBJ_PSELECT], + [test $HAVE_PSELECT = 0 || test $REPLACE_PSELECT = 1]) + gl_SYS_SELECT_MODULE_INDICATOR([pselect]) + AC_CHECK_HEADERS_ONCE([sys/wait.h]) gl_PTHREAD_H gl_PTHREAD_H_REQUIRE_DEFAULTS + AC_PROG_MKDIR_P gl_PTHREAD_THREAD - if test $HAVE_PTHREAD_CREATE = 0 || test $REPLACE_PTHREAD_CREATE = 1; then - AC_LIBOBJ([pthread-thread]) - fi + gl_CONDITIONAL([GL_COND_OBJ_PTHREAD_THREAD], + [test $HAVE_PTHREAD_CREATE = 0 || test $REPLACE_PTHREAD_CREATE = 1]) gl_PTHREAD_MODULE_INDICATOR([pthread-thread]) gl_FUNC_PTHREAD_SIGMASK - if test $HAVE_PTHREAD_SIGMASK = 0 || test $REPLACE_PTHREAD_SIGMASK = 1; then - AC_LIBOBJ([pthread_sigmask]) + gl_CONDITIONAL([GL_COND_OBJ_PTHREAD_SIGMASK], + [test $HAVE_PTHREAD_SIGMASK = 0 || test $REPLACE_PTHREAD_SIGMASK = 1]) + AM_COND_IF([GL_COND_OBJ_PTHREAD_SIGMASK], [ gl_PREREQ_PTHREAD_SIGMASK - fi + ]) gl_SIGNAL_MODULE_INDICATOR([pthread_sigmask]) gl_FUNC_PUTENV - if test $REPLACE_PUTENV = 1; then - AC_LIBOBJ([putenv]) + gl_CONDITIONAL([GL_COND_OBJ_PUTENV], [test $REPLACE_PUTENV = 1]) + AM_COND_IF([GL_COND_OBJ_PUTENV], [ gl_PREREQ_PUTENV - fi + ]) gl_STDLIB_MODULE_INDICATOR([putenv]) dnl Check for prerequisites for memory fence checks. dnl FIXME: zerosize-ptr.h requires these: make a module for it @@ -1423,44 +1484,28 @@ changequote([, ])dnl AC_CHECK_FUNCS_ONCE([mprotect]) gl_SCHED_H gl_SCHED_H_REQUIRE_DEFAULTS + AC_PROG_MKDIR_P gl_FUNC_SELECT - if test $REPLACE_SELECT = 1; then - AC_LIBOBJ([select]) - fi + gl_CONDITIONAL([GL_COND_OBJ_SELECT], [test $REPLACE_SELECT = 1]) gl_SYS_SELECT_MODULE_INDICATOR([select]) AC_CHECK_HEADERS_ONCE([sys/wait.h]) AC_REQUIRE([gl_SYS_SOCKET_H]) - if test "$ac_cv_header_winsock2_h" = yes; then - AC_LIBOBJ([setsockopt]) - fi + gl_CONDITIONAL([GL_COND_OBJ_SETSOCKOPT], + [test "$ac_cv_header_winsock2_h" = yes]) gl_SYS_SOCKET_MODULE_INDICATOR([setsockopt]) - gl_SIGACTION - if test $HAVE_SIGACTION = 0; then - AC_LIBOBJ([sigaction]) - gl_PREREQ_SIGACTION - fi - gl_SIGNAL_MODULE_INDICATOR([sigaction]) - gl_SIGNALBLOCKING - if test $HAVE_POSIX_SIGNALBLOCKING = 0; then - AC_LIBOBJ([sigprocmask]) - gl_PREREQ_SIGPROCMASK - fi - gl_SIGNAL_MODULE_INDICATOR([sigprocmask]) AC_CHECK_FUNCS_ONCE([setrlimit]) gl_FUNC_MMAP_ANON + gl_SIZE_MAX gl_FUNC_SLEEP - if test $HAVE_SLEEP = 0 || test $REPLACE_SLEEP = 1; then - AC_LIBOBJ([sleep]) - fi + gl_CONDITIONAL([GL_COND_OBJ_SLEEP], + [test $HAVE_SLEEP = 0 || test $REPLACE_SLEEP = 1]) gl_UNISTD_MODULE_INDICATOR([sleep]) AC_CHECK_DECLS_ONCE([alarm]) gl_FUNC_SNPRINTF gl_STDIO_MODULE_INDICATOR([snprintf]) gl_MODULE_INDICATOR([snprintf]) AC_REQUIRE([gl_SYS_SOCKET_H]) - if test "$ac_cv_header_winsock2_h" = yes; then - AC_LIBOBJ([socket]) - fi + gl_CONDITIONAL([GL_COND_OBJ_SOCKET], [test "$ac_cv_header_winsock2_h" = yes]) # When this module is used, sockets may actually occur as file descriptors, # hence it is worth warning if the modules 'close' and 'ioctl' are not used. m4_ifdef([gl_UNISTD_H_DEFAULTS], [gl_UNISTD_H_REQUIRE_DEFAULTS]) @@ -1476,11 +1521,12 @@ changequote([, ])dnl gl_TYPE_SOCKLEN_T AC_REQUIRE([gt_TYPE_WCHAR_T]) AC_REQUIRE([gt_TYPE_WINT_T]) + gl_DOUBLE_EXPONENT_LOCATION gl_FUNC_STRERROR_R - if test $HAVE_DECL_STRERROR_R = 0 || test $REPLACE_STRERROR_R = 1; then + AS_IF([test $HAVE_DECL_STRERROR_R = 0 || test $REPLACE_STRERROR_R = 1], [ AC_LIBOBJ([strerror_r]) gl_PREREQ_STRERROR_R - fi + ]) gl_STRING_MODULE_INDICATOR([strerror_r]) dnl For the modules argp, error. gl_MODULE_INDICATOR([strerror_r-posix]) @@ -1489,9 +1535,8 @@ changequote([, ])dnl AC_CHECK_HEADERS_ONCE([sys/mman.h]) AC_CHECK_FUNCS_ONCE([mprotect]) gl_FUNC_SYMLINK - if test $HAVE_SYMLINK = 0 || test $REPLACE_SYMLINK = 1; then - AC_LIBOBJ([symlink]) - fi + gl_CONDITIONAL([GL_COND_OBJ_SYMLINK], + [test $HAVE_SYMLINK = 0 || test $REPLACE_SYMLINK = 1]) gl_UNISTD_MODULE_INDICATOR([symlink]) gl_SYS_IOCTL_H gl_SYS_IOCTL_H_REQUIRE_DEFAULTS @@ -1507,8 +1552,16 @@ changequote([, ])dnl gl_SYS_UIO_H_REQUIRE_DEFAULTS AC_PROG_MKDIR_P gl_THREAD + gl_FUNC_TIME + gl_CONDITIONAL([GL_COND_OBJ_TIME], [test $REPLACE_TIME = 1]) + AM_COND_IF([GL_COND_OBJ_TIME], [ + gl_PREREQ_TIME + ]) + gl_TIME_MODULE_INDICATOR([time]) abs_aux_dir=`cd "$ac_aux_dir"; pwd` AC_SUBST([abs_aux_dir]) + AC_REQUIRE([AC_C_RESTRICT]) + gl_FUNC_VASNPRINTF abs_aux_dir=`cd "$ac_aux_dir"; pwd` AC_SUBST([abs_aux_dir]) gt_LOCALE_FR @@ -1516,29 +1569,25 @@ changequote([, ])dnl gt_LOCALE_JA gt_LOCALE_ZH_CN gl_FUNC_WCTOB - if test $HAVE_WCTOB = 0 || test $REPLACE_WCTOB = 1; then - AC_LIBOBJ([wctob]) + gl_CONDITIONAL([GL_COND_OBJ_WCTOB], + [test $HAVE_WCTOB = 0 || test $REPLACE_WCTOB = 1]) + AM_COND_IF([GL_COND_OBJ_WCTOB], [ gl_PREREQ_WCTOB - fi + ]) gl_WCHAR_MODULE_INDICATOR([wctob]) gl_FUNC_WCTOMB - if test $REPLACE_WCTOMB = 1; then - AC_LIBOBJ([wctomb]) + gl_CONDITIONAL([GL_COND_OBJ_WCTOMB], [test $REPLACE_WCTOMB = 1]) + AM_COND_IF([GL_COND_OBJ_WCTOMB], [ gl_PREREQ_WCTOMB - fi + ]) gl_STDLIB_MODULE_INDICATOR([wctomb]) AC_REQUIRE([AC_CANONICAL_HOST]) - case "$host_os" in - mingw*) - AC_LIBOBJ([windows-thread]) - ;; - esac + gl_CONDITIONAL([GL_COND_OBJ_WINDOWS_THREAD], + [case "$host_os" in mingw*) true;; *) false;; esac]) AC_REQUIRE([AC_CANONICAL_HOST]) - case "$host_os" in - mingw*) - AC_LIBOBJ([windows-tls]) - ;; - esac + gl_CONDITIONAL([GL_COND_OBJ_WINDOWS_TLS], + [case "$host_os" in mingw*) true;; *) false;; esac]) + gl_XSIZE m4_popdef([gl_MODULE_INDICATOR_CONDITION]) m4_ifval(gltests_LIBSOURCES_LIST, [ m4_syscmd([test ! -d ]m4_defn([gltests_LIBSOURCES_DIR])[ || @@ -1561,17 +1610,30 @@ changequote([, ])dnl AC_CONFIG_COMMANDS_PRE([ gltests_libobjs= gltests_ltlibobjs= + gltests_libobjdeps= if test -n "$gltests_LIBOBJS"; then # Remove the extension. +changequote(,)dnl sed_drop_objext='s/\.o$//;s/\.obj$//' + sed_dirname1='s,//*,/,g' + sed_dirname2='s,\(.\)/$,\1,' + sed_dirname3='s,^[^/]*$,.,' + sed_dirname4='s,\(.\)/[^/]*$,\1,' + sed_basename1='s,.*/,,' +changequote([, ])dnl for i in `for i in $gltests_LIBOBJS; do echo "$i"; done | sed -e "$sed_drop_objext" | sort | uniq`; do gltests_libobjs="$gltests_libobjs $i.$ac_objext" gltests_ltlibobjs="$gltests_ltlibobjs $i.lo" + i_dir=`echo "$i" | sed -e "$sed_dirname1" -e "$sed_dirname2" -e "$sed_dirname3" -e "$sed_dirname4"` + i_base=`echo "$i" | sed -e "$sed_basename1"` + gltests_libobjdeps="$gltests_libobjdeps $i_dir/\$(DEPDIR)/$i_base.Po" done fi AC_SUBST([gltests_LIBOBJS], [$gltests_libobjs]) AC_SUBST([gltests_LTLIBOBJS], [$gltests_ltlibobjs]) + AC_SUBST([gltests_LIBOBJDEPS], [$gltests_libobjdeps]) ]) + AC_REQUIRE([gl_CC_GNULIB_WARNINGS]) LIBDIFFUTILS_LIBDEPS="$gl_libdeps" AC_SUBST([LIBDIFFUTILS_LIBDEPS]) LIBDIFFUTILS_LTLIBDEPS="$gl_ltlibdeps" @@ -1648,7 +1710,6 @@ AC_DEFUN([gl_FILE_LIST], [ build-aux/update-copyright build-aux/useless-if-before-free build-aux/vc-list-files - doc/fdl.texi doc/gendocs_template doc/gendocs_template_min lib/_Noreturn.h @@ -1661,8 +1722,7 @@ AC_DEFUN([gl_FILE_LIST], [ lib/arg-nonnull.h lib/argmatch.c lib/argmatch.h - lib/asnprintf.c - lib/asprintf.c + lib/assert.in.h lib/assure.h lib/attribute.h lib/basename-lgpl.c @@ -1698,7 +1758,7 @@ AC_DEFUN([gl_FILE_LIST], [ lib/dynarray.h lib/errno.in.h lib/error.c - lib/error.h + lib/error.in.h lib/exclude.c lib/exclude.h lib/exitfail.c @@ -1714,9 +1774,6 @@ AC_DEFUN([gl_FILE_LIST], [ lib/filenamecat.c lib/filenamecat.h lib/flexmember.h - lib/float+.h - lib/float.c - lib/float.in.h lib/fnmatch.c lib/fnmatch.in.h lib/fnmatch_loop.c @@ -1763,6 +1820,7 @@ AC_DEFUN([gl_FILE_LIST], [ lib/idx.h lib/ignore-value.h lib/imaxtostr.c + lib/intprops-internal.h lib/intprops.h lib/inttostr.c lib/inttostr.h @@ -1771,7 +1829,6 @@ AC_DEFUN([gl_FILE_LIST], [ lib/iswblank.c lib/iswdigit.c lib/iswxdigit.c - lib/itold.c lib/langinfo.in.h lib/lc-charset-dispatch.c lib/lc-charset-dispatch.h @@ -1830,10 +1887,6 @@ AC_DEFUN([gl_FILE_LIST], [ lib/offtostr.c lib/open.c lib/pathmax.h - lib/printf-args.c - lib/printf-args.h - lib/printf-parse.c - lib/printf-parse.h lib/progname.c lib/progname.h lib/propername.c @@ -1860,9 +1913,9 @@ AC_DEFUN([gl_FILE_LIST], [ lib/sh-quote.c lib/sh-quote.h lib/signal.in.h + lib/sigprocmask.c lib/sigsegv.c lib/sigsegv.in.h - lib/size_max.h lib/stackvma.c lib/stackvma.h lib/stat-macros.h @@ -1871,15 +1924,17 @@ AC_DEFUN([gl_FILE_LIST], [ lib/stat-w32.c lib/stat-w32.h lib/stat.c - lib/stdalign.in.h lib/stdarg.in.h - lib/stdbool.in.h + lib/stdckdint.in.h lib/stddef.in.h lib/stdint.in.h + lib/stdio-read.c + lib/stdio-write.c lib/stdio.in.h lib/stdlib.in.h lib/stdopen.c lib/stdopen.h + lib/stpcpy.c lib/str-kmp.h lib/strcasecmp.c lib/streq.h @@ -1921,6 +1976,7 @@ AC_DEFUN([gl_FILE_LIST], [ lib/tzset.c lib/uinttostr.c lib/umaxtostr.c + lib/unictype/bitmap.h lib/unistd.c lib/unistd.in.h lib/unistr.in.h @@ -1931,11 +1987,10 @@ AC_DEFUN([gl_FILE_LIST], [ lib/uniwidth.in.h lib/uniwidth/cjk.h lib/uniwidth/width.c + lib/uniwidth/width0.h + lib/uniwidth/width2.h lib/unlocked-io.h lib/unsetenv.c - lib/vasnprintf.c - lib/vasnprintf.h - lib/vasprintf.c lib/verify.h lib/version-etc-fsf.c lib/version-etc.c @@ -1961,7 +2016,6 @@ AC_DEFUN([gl_FILE_LIST], [ lib/xalloc-die.c lib/xalloc-oversized.h lib/xalloc.h - lib/xasprintf.c lib/xfreopen.c lib/xfreopen.h lib/xmalloc.c @@ -1969,8 +2023,6 @@ AC_DEFUN([gl_FILE_LIST], [ lib/xmalloca.h lib/xreadlink.c lib/xreadlink.h - lib/xsize.c - lib/xsize.h lib/xstdopen.c lib/xstdopen.h lib/xstriconv.c @@ -1979,17 +2031,17 @@ AC_DEFUN([gl_FILE_LIST], [ lib/xstrtol.c lib/xstrtol.h lib/xstrtoul.c - lib/xvasprintf.c - lib/xvasprintf.h m4/00gnulib.m4 m4/__inline.m4 m4/absolute-header.m4 m4/alloca.m4 m4/arpa_inet_h.m4 m4/asm-underscore.m4 + m4/assert_h.m4 m4/atoll.m4 m4/btowc.m4 m4/builtin-expect.m4 + m4/c-bool.m4 m4/c-stack.m4 m4/calloc.m4 m4/clock_time.m4 @@ -2003,13 +2055,16 @@ AC_DEFUN([gl_FILE_LIST], [ m4/environ.m4 m4/errno_h.m4 m4/error.m4 + m4/error_h.m4 m4/exponentd.m4 m4/extensions.m4 m4/extern-inline.m4 + m4/fclose.m4 m4/fcntl-o.m4 m4/fcntl.m4 m4/fcntl_h.m4 m4/fdopen.m4 + m4/fflush.m4 m4/filenamecat.m4 m4/flexmember.m4 m4/float_h.m4 @@ -2038,6 +2093,7 @@ AC_DEFUN([gl_FILE_LIST], [ m4/include_next.m4 m4/inet_pton.m4 m4/inline.m4 + m4/intl-thread-locale.m4 m4/intmax_t.m4 m4/inttostr.m4 m4/inttypes.m4 @@ -2094,15 +2150,18 @@ AC_DEFUN([gl_FILE_LIST], [ m4/nl_langinfo.m4 m4/nocrash.m4 m4/nstrftime.m4 + m4/nullptr.m4 m4/off_t.m4 m4/open-cloexec.m4 m4/open-slash.m4 m4/open.m4 m4/pathmax.m4 + m4/perl.m4 m4/perror.m4 m4/pid_t.m4 m4/pipe.m4 m4/printf.m4 + m4/pselect.m4 m4/pthread-thread.m4 m4/pthread_h.m4 m4/pthread_rwlock_rdlock.m4 @@ -2120,10 +2179,10 @@ AC_DEFUN([gl_FILE_LIST], [ m4/select.m4 m4/setenv.m4 m4/setlocale_null.m4 - m4/sigaction.m4 m4/sigaltstack.m4 m4/signal_h.m4 m4/signalblocking.m4 + m4/sigsegv.m4 m4/size_max.m4 m4/sleep.m4 m4/snprintf.m4 @@ -2138,12 +2197,12 @@ AC_DEFUN([gl_FILE_LIST], [ m4/std-gnu11.m4 m4/stdalign.m4 m4/stdarg.m4 - m4/stdbool.m4 m4/stddef_h.m4 m4/stdint.m4 m4/stdint_h.m4 m4/stdio_h.m4 m4/stdlib_h.m4 + m4/stpcpy.m4 m4/strcase.m4 m4/strerror.m4 m4/strerror_r.m4 @@ -2166,6 +2225,7 @@ AC_DEFUN([gl_FILE_LIST], [ m4/tempname.m4 m4/thread.m4 m4/threadlib.m4 + m4/time.m4 m4/time_h.m4 m4/time_r.m4 m4/time_rz.m4 @@ -2175,8 +2235,8 @@ AC_DEFUN([gl_FILE_LIST], [ m4/tzset.m4 m4/unistd_h.m4 m4/unlocked-io.m4 + m4/vararrays.m4 m4/vasnprintf.m4 - m4/vasprintf.m4 m4/version-etc.m4 m4/visibility.m4 m4/warn-on-use.m4 @@ -2194,22 +2254,23 @@ AC_DEFUN([gl_FILE_LIST], [ m4/xalloc.m4 m4/xsize.m4 m4/xstrtol.m4 - m4/xvasprintf.m4 - m4/year2038.m4 m4/zzgnulib.m4 tests/altstack-util.h tests/init.sh tests/locale.c tests/macros.h tests/mmap-anon-util.h + tests/nan.h tests/nap.h tests/signature.h tests/test-accept.c + tests/test-alignasof.c tests/test-alloca-opt.c tests/test-areadlink.c tests/test-areadlink.h tests/test-argmatch.c tests/test-arpa_inet.c + tests/test-assert.c tests/test-binary-io.c tests/test-binary-io.sh tests/test-bind.c @@ -2217,12 +2278,14 @@ AC_DEFUN([gl_FILE_LIST], [ tests/test-btowc.c tests/test-btowc1.sh tests/test-btowc2.sh + tests/test-btowc3.sh tests/test-c-ctype.c tests/test-c-stack.c tests/test-c-stack.sh tests/test-c-stack2.sh tests/test-c-strcase.sh tests/test-c-strcasecmp.c + tests/test-c-strcasestr.c tests/test-c-strncasecmp.c tests/test-calloc-gnu.c tests/test-cloexec.c @@ -2234,6 +2297,8 @@ AC_DEFUN([gl_FILE_LIST], [ tests/test-dynarray.c tests/test-environ.c tests/test-errno.c + tests/test-error.c + tests/test-error.sh tests/test-exclude.c tests/test-exclude1.sh tests/test-exclude2.sh @@ -2290,6 +2355,7 @@ AC_DEFUN([gl_FILE_LIST], [ tests/test-iswxdigit.c tests/test-iswxdigit.sh tests/test-langinfo.c + tests/test-largefile.c tests/test-limits-h.c tests/test-listen.c tests/test-localcharset.c @@ -2322,6 +2388,7 @@ AC_DEFUN([gl_FILE_LIST], [ tests/test-mbsrtowcs2.sh tests/test-mbsrtowcs3.sh tests/test-mbsrtowcs4.sh + tests/test-mbsrtowcs5.sh tests/test-mbsstr1.c tests/test-mbsstr2.c tests/test-mbsstr2.sh @@ -2333,9 +2400,12 @@ AC_DEFUN([gl_FILE_LIST], [ tests/test-nanosleep.c tests/test-netinet_in.c tests/test-nl_langinfo-mt.c - tests/test-nl_langinfo.c - tests/test-nl_langinfo.sh + tests/test-nl_langinfo1.c + tests/test-nl_langinfo1.sh + tests/test-nl_langinfo2.c + tests/test-nl_langinfo2.sh tests/test-nstrftime.c + tests/test-nullptr.c tests/test-open.c tests/test-open.h tests/test-pathmax.c @@ -2343,6 +2413,7 @@ AC_DEFUN([gl_FILE_LIST], [ tests/test-perror.sh tests/test-perror2.c tests/test-pipe.c + tests/test-pselect.c tests/test-pthread-thread.c tests/test-pthread.c tests/test-pthread_sigmask1.c @@ -2369,7 +2440,6 @@ AC_DEFUN([gl_FILE_LIST], [ tests/test-setlocale_null.c tests/test-setsockopt.c tests/test-sh-quote.c - tests/test-sigaction.c tests/test-signal-h.c tests/test-sigprocmask.c tests/test-sigsegv-catch-segv1.c @@ -2382,8 +2452,8 @@ AC_DEFUN([gl_FILE_LIST], [ tests/test-stat-time.c tests/test-stat.c tests/test-stat.h - tests/test-stdalign.c tests/test-stdbool.c + tests/test-stdckdint.c tests/test-stddef.c tests/test-stdint.c tests/test-stdio.c @@ -2410,13 +2480,17 @@ AC_DEFUN([gl_FILE_LIST], [ tests/test-sys_wait.h tests/test-thread_create.c tests/test-thread_self.c + tests/test-time-h.c tests/test-time.c tests/test-timespec.c + tests/test-trim.c + tests/test-trim1.sh + tests/test-trim2.sh + tests/test-trim3.sh tests/test-unistd.c tests/test-unsetenv.c tests/test-update-copyright.sh tests/test-vasnprintf.c - tests/test-vasprintf.c tests/test-vc-list-files-cvs.sh tests/test-vc-list-files-git.sh tests/test-verify-try.c @@ -2446,7 +2520,7 @@ AC_DEFUN([gl_FILE_LIST], [ tests/test-xstrtol.c tests/test-xstrtol.sh tests/test-xstrtoul.c - tests/test-xvasprintf.c + tests/test-year2038.c tests/unistr/test-u8-mbtoucr.c tests/unistr/test-u8-uctomb.c tests/uniwidth/test-uc_width.c @@ -2458,12 +2532,18 @@ AC_DEFUN([gl_FILE_LIST], [ tests=lib/alloca.c tests=lib/arg-nonnull.h tests=lib/arpa_inet.in.h + tests=lib/asnprintf.c tests=lib/atoll.c tests=lib/bind.c tests=lib/c++defs.h + tests=lib/c-strcasestr.c + tests=lib/c-strcasestr.h tests=lib/connect.c tests=lib/dtotimespec.c tests=lib/fdopen.c + tests=lib/float+.h + tests=lib/float.c + tests=lib/float.in.h tests=lib/fpucw.h tests=lib/ftruncate.c tests=lib/getcwd-lgpl.c @@ -2473,11 +2553,17 @@ AC_DEFUN([gl_FILE_LIST], [ tests=lib/hash-pjw.h tests=lib/inet_pton.c tests=lib/ioctl.c + tests=lib/itold.c tests=lib/listen.c tests=lib/nanosleep.c tests=lib/netinet_in.in.h tests=lib/perror.c tests=lib/pipe.c + tests=lib/printf-args.c + tests=lib/printf-args.h + tests=lib/printf-parse.c + tests=lib/printf-parse.h + tests=lib/pselect.c tests=lib/pthread-thread.c tests=lib/pthread.in.h tests=lib/pthread_sigmask.c @@ -2486,15 +2572,13 @@ AC_DEFUN([gl_FILE_LIST], [ tests=lib/sched.in.h tests=lib/select.c tests=lib/setsockopt.c - tests=lib/sig-handler.c - tests=lib/sig-handler.h - tests=lib/sigaction.c - tests=lib/sigprocmask.c + tests=lib/size_max.h tests=lib/sleep.c tests=lib/snprintf.c tests=lib/socket.c tests=lib/sockets.c tests=lib/sockets.h + tests=lib/str-two-way.h tests=lib/strerror_r.c tests=lib/symlink.c tests=lib/sys_ioctl.in.h @@ -2502,8 +2586,11 @@ AC_DEFUN([gl_FILE_LIST], [ tests=lib/sys_socket.c tests=lib/sys_socket.in.h tests=lib/sys_uio.in.h + tests=lib/time.c tests=lib/timespec-add.c tests=lib/timespec-sub.c + tests=lib/vasnprintf.c + tests=lib/vasnprintf.h tests=lib/w32sock.h tests=lib/warn-on-use.h tests=lib/wctob.c @@ -2513,6 +2600,8 @@ AC_DEFUN([gl_FILE_LIST], [ tests=lib/windows-thread.h tests=lib/windows-tls.c tests=lib/windows-tls.h + tests=lib/xsize.c + tests=lib/xsize.h tests=lib/xstrtol-error.c tests=lib/xstrtol-error.h top/GNUmakefile diff --git a/m4/host-cpu-c-abi.m4 b/m4/host-cpu-c-abi.m4 index 64e28b1..134f228 100644 --- a/m4/host-cpu-c-abi.m4 +++ b/m4/host-cpu-c-abi.m4 @@ -1,5 +1,5 @@ -# host-cpu-c-abi.m4 serial 14 -dnl Copyright (C) 2002-2021 Free Software Foundation, Inc. +# host-cpu-c-abi.m4 serial 15 +dnl Copyright (C) 2002-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -382,6 +382,9 @@ EOF #ifndef __ia64__ #undef __ia64__ #endif +#ifndef __loongarch64__ +#undef __loongarch64__ +#endif #ifndef __m68k__ #undef __m68k__ #endif diff --git a/m4/iconv.m4 b/m4/iconv.m4 index d0e61de..ff5d526 100644 --- a/m4/iconv.m4 +++ b/m4/iconv.m4 @@ -1,5 +1,5 @@ -# iconv.m4 serial 24 -dnl Copyright (C) 2000-2002, 2007-2014, 2016-2021 Free Software Foundation, +# iconv.m4 serial 26 +dnl Copyright (C) 2000-2002, 2007-2014, 2016-2023 Free Software Foundation, dnl Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -234,12 +234,6 @@ AC_DEFUN([AM_ICONV_LINK], dnl Define AM_ICONV using AC_DEFUN_ONCE, in order to avoid warnings like dnl "warning: AC_REQUIRE: `AM_ICONV' was expanded before it was required". -dnl This is tricky because of the way 'aclocal' is implemented: -dnl - It requires defining an auxiliary macro whose name ends in AC_DEFUN. -dnl Otherwise aclocal's initial scan pass would miss the macro definition. -dnl - It requires a line break inside the AC_DEFUN_ONCE and AC_DEFUN expansions. -dnl Otherwise aclocal would emit many "Use of uninitialized value $1" -dnl warnings. AC_DEFUN_ONCE([AM_ICONV], [ AM_ICONV_LINK @@ -280,4 +274,20 @@ size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, si ICONV_CONST="const" fi ]) + + dnl A summary result, for those packages which want to print a summary at the + dnl end of the configuration. + if test "$am_func_iconv" = yes; then + if test -n "$LIBICONV"; then + am_cv_func_iconv_summary='yes, in libiconv' + else + am_cv_func_iconv_summary='yes, in libc' + fi + else + if test "$am_cv_func_iconv" = yes; then + am_cv_func_iconv_summary='not working, consider installing GNU libiconv' + else + am_cv_func_iconv_summary='no, consider installing GNU libiconv' + fi + fi ]) diff --git a/m4/iconv_h.m4 b/m4/iconv_h.m4 index 2940988..40c985e 100644 --- a/m4/iconv_h.m4 +++ b/m4/iconv_h.m4 @@ -1,5 +1,5 @@ -# iconv_h.m4 serial 15 -dnl Copyright (C) 2007-2021 Free Software Foundation, Inc. +# iconv_h.m4 serial 16 +dnl Copyright (C) 2007-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -8,8 +8,8 @@ AC_DEFUN_ONCE([gl_ICONV_H], [ AC_REQUIRE([gl_ICONV_H_DEFAULTS]) - dnl Execute this unconditionally, because ICONV_H may be set by other - dnl modules, after this code is executed. + dnl Execute this unconditionally, because GL_GENERATE_ICONV_H may be set to + dnl true by other modules, after this code is executed. gl_CHECK_NEXT_HEADERS([iconv.h]) dnl Check for declarations of anything we want to poison if the @@ -25,8 +25,7 @@ dnl Unconditionally enables the replacement of . AC_DEFUN([gl_REPLACE_ICONV_H], [ gl_ICONV_H_REQUIRE_DEFAULTS - ICONV_H='iconv.h' - AM_CONDITIONAL([GL_GENERATE_ICONV_H], [test -n "$ICONV_H"]) + GL_GENERATE_ICONV_H=true ]) # gl_ICONV_MODULE_INDICATOR([modulename]) @@ -60,13 +59,12 @@ AC_DEFUN([gl_ICONV_H_DEFAULTS], REPLACE_ICONV=0; AC_SUBST([REPLACE_ICONV]) REPLACE_ICONV_OPEN=0; AC_SUBST([REPLACE_ICONV_OPEN]) REPLACE_ICONV_UTF=0; AC_SUBST([REPLACE_ICONV_UTF]) - ICONV_H=''; AC_SUBST([ICONV_H]) + GL_GENERATE_ICONV_H=false m4_ifdef([gl_POSIXCHECK], - [ICONV_H='iconv.h'], + [GL_GENERATE_ICONV_H=true], [if m4_ifdef([gl_ANSI_CXX], [test "$CXX" != no], [false]); then dnl Override always, to support the C++ GNULIB_NAMESPACE. - ICONV_H='iconv.h' + GL_GENERATE_ICONV_H=true fi ]) - AM_CONDITIONAL([GL_GENERATE_ICONV_H], [test -n "$ICONV_H"]) ]) diff --git a/m4/iconv_open.m4 b/m4/iconv_open.m4 index 61b6af4..8a27709 100644 --- a/m4/iconv_open.m4 +++ b/m4/iconv_open.m4 @@ -1,5 +1,5 @@ # iconv_open.m4 serial 16 -dnl Copyright (C) 2007-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2007-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/include_next.m4 b/m4/include_next.m4 index bdd542b..9f19215 100644 --- a/m4/include_next.m4 +++ b/m4/include_next.m4 @@ -1,5 +1,5 @@ # include_next.m4 serial 26 -dnl Copyright (C) 2006-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2006-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -193,9 +193,9 @@ AC_DEFUN([gl_NEXT_HEADERS_INTERNAL], if test AS_VAR_GET([gl_header_exists]) = yes; then AS_VAR_POPDEF([gl_header_exists]) ]) - gl_ABSOLUTE_HEADER_ONE(gl_HEADER_NAME) - AS_VAR_COPY([gl_header], [gl_cv_absolute_]AS_TR_SH(gl_HEADER_NAME)) - AS_VAR_SET([gl_next_header], ['"'$gl_header'"']) + gl_ABSOLUTE_HEADER_ONE(gl_HEADER_NAME) + AS_VAR_COPY([gl_header], [gl_cv_absolute_]AS_TR_SH(gl_HEADER_NAME)) + AS_VAR_SET([gl_next_header], ['"'$gl_header'"']) m4_if([$2], [check], [else AS_VAR_SET([gl_next_header], ['<'gl_HEADER_NAME'>']) diff --git a/m4/inet_pton.m4 b/m4/inet_pton.m4 index 1979179..94695c1 100644 --- a/m4/inet_pton.m4 +++ b/m4/inet_pton.m4 @@ -1,5 +1,5 @@ # inet_pton.m4 serial 19 -dnl Copyright (C) 2006, 2008-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2006, 2008-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/inline.m4 b/m4/inline.m4 index 04fc774..dbbb811 100644 --- a/m4/inline.m4 +++ b/m4/inline.m4 @@ -1,5 +1,5 @@ # inline.m4 serial 4 -dnl Copyright (C) 2006, 2009-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2006, 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/intl-thread-locale.m4 b/m4/intl-thread-locale.m4 new file mode 100644 index 0000000..90bc3b1 --- /dev/null +++ b/m4/intl-thread-locale.m4 @@ -0,0 +1,219 @@ +# intl-thread-locale.m4 serial 10 +dnl Copyright (C) 2015-2023 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. +dnl +dnl This file can be used in projects which are not available under +dnl the GNU General Public License or the GNU Lesser General Public +dnl License but which still want to provide support for the GNU gettext +dnl functionality. +dnl Please note that the actual code of the GNU gettext library is covered +dnl by the GNU Lesser General Public License, and the rest of the GNU +dnl gettext package is covered by the GNU General Public License. +dnl They are *not* in the public domain. + +dnl Check how to retrieve the name of a per-thread locale (POSIX locale_t). +dnl Sets gt_nameless_locales. +AC_DEFUN([gt_INTL_THREAD_LOCALE_NAME], +[ + AC_REQUIRE([AC_CANONICAL_HOST]) + + dnl Persuade Solaris to define 'locale_t'. + AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS]) + + dnl Test whether uselocale() exists and works at all. + gt_FUNC_USELOCALE + + dnl On OpenBSD >= 6.2, the locale_t type and the uselocale(), newlocale(), + dnl duplocale(), freelocale() functions exist but are effectively useless, + dnl because the locale_t value depends only on the LC_CTYPE category of the + dnl locale and furthermore contains only one bit of information (it + dnl distinguishes the "C" locale from the *.UTF-8 locales). See + dnl . + dnl In the setlocale() implementation they have thought about the programs + dnl that use the API ("Even though only LC_CTYPE has any effect in the + dnl OpenBSD base system, store complete information about the global locale, + dnl such that third-party software can access it"), but for uselocale() + dnl they did not think about the programs. + dnl In this situation, even the HAVE_NAMELESS_LOCALES support does not work. + dnl So, define HAVE_FAKE_LOCALES and disable all locale_t support. + case "$gt_cv_func_uselocale_works" in + *yes) + AC_CHECK_HEADERS_ONCE([xlocale.h]) + AC_CACHE_CHECK([for fake locale system (OpenBSD)], + [gt_cv_locale_fake], + [AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ +#include +#if HAVE_XLOCALE_H +# include +#endif +int main () +{ + locale_t loc1, loc2; + if (setlocale (LC_ALL, "de_DE.UTF-8") == NULL) return 1; + if (setlocale (LC_ALL, "fr_FR.UTF-8") == NULL) return 1; + loc1 = newlocale (LC_ALL_MASK, "de_DE.UTF-8", (locale_t)0); + loc2 = newlocale (LC_ALL_MASK, "fr_FR.UTF-8", (locale_t)0); + return !(loc1 == loc2); +}]])], + [gt_cv_locale_fake=yes], + [gt_cv_locale_fake=no], + [dnl Guess the locale system is fake only on OpenBSD. + case "$host_os" in + openbsd*) gt_cv_locale_fake="guessing yes" ;; + *) gt_cv_locale_fake="guessing no" ;; + esac + ]) + ]) + ;; + *) gt_cv_locale_fake=no ;; + esac + case "$gt_cv_locale_fake" in + *yes) + gt_fake_locales=yes + AC_DEFINE([HAVE_FAKE_LOCALES], [1], + [Define if the locale_t type contains insufficient information, as on OpenBSD.]) + ;; + *) + gt_fake_locales=no + ;; + esac + + case "$gt_cv_func_uselocale_works" in + *yes) + AC_CACHE_CHECK([for Solaris 11.4 locale system], + [gt_cv_locale_solaris114], + [case "$host_os" in + solaris*) + dnl Test whether defines locale_t as a typedef of + dnl 'struct _LC_locale_t **' (whereas Illumos defines it as a + dnl typedef of 'struct _locale *'). + dnl Another possible test would be to include + dnl and test whether it defines the _LC_core_data_locale_t type. + dnl This type was added in Solaris 11.4. + AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM([[ + #include + struct _LC_locale_t *x; + locale_t y; + ]], + [[*y = x;]])], + [gt_cv_locale_solaris114=yes], + [gt_cv_locale_solaris114=no]) + ;; + *) gt_cv_locale_solaris114=no ;; + esac + ]) + ;; + *) gt_cv_locale_solaris114=no ;; + esac + if test $gt_cv_locale_solaris114 = yes; then + AC_DEFINE([HAVE_SOLARIS114_LOCALES], [1], + [Define if the locale_t type is as on Solaris 11.4.]) + fi + + dnl Solaris 12 will maybe provide getlocalename_l. If it does, it will + dnl improve the implementation of gl_locale_name_thread(), by removing + dnl the use of undocumented structures. + case "$gt_cv_func_uselocale_works" in + *yes) + AC_CHECK_FUNCS([getlocalename_l]) + ;; + esac + + dnl This code is for platforms where the locale_t type does not provide access + dnl to the name of each locale category. This code has the drawback that it + dnl requires the gnulib overrides of 'newlocale', 'duplocale', 'freelocale', + dnl which is a problem for GNU libunistring. Therefore try hard to avoid + dnl enabling this code! + gt_nameless_locales=no + case "$host_os" in + dnl It's needed on AIX 7.2. + aix*) + gt_nameless_locales=yes + AC_DEFINE([HAVE_NAMELESS_LOCALES], [1], + [Define if the locale_t type does not contain the name of each locale category.]) + ;; + esac + + dnl We cannot support uselocale() on platforms where the locale_t type is + dnl fake. So, set + dnl gt_good_uselocale = gt_working_uselocale && !gt_fake_locales. + if test $gt_working_uselocale = yes && test $gt_fake_locales = no; then + gt_good_uselocale=yes + AC_DEFINE([HAVE_GOOD_USELOCALE], [1], + [Define if the uselocale exists, may be safely called, and returns sufficient information.]) + else + gt_good_uselocale=no + fi + + dnl Set gt_localename_enhances_locale_funcs to indicate whether localename.c + dnl overrides newlocale(), duplocale(), freelocale() to keep track of locale + dnl names. + if test $gt_good_uselocale = yes && test $gt_nameless_locales = yes; then + gt_localename_enhances_locale_funcs=yes + LOCALENAME_ENHANCE_LOCALE_FUNCS=1 + AC_DEFINE([LOCALENAME_ENHANCE_LOCALE_FUNCS], [1], + [Define if localename.c overrides newlocale(), duplocale(), freelocale().]) + else + gt_localename_enhances_locale_funcs=no + fi +]) + +dnl Tests whether uselocale() exists and is usable. +dnl Sets gt_working_uselocale and defines HAVE_WORKING_USELOCALE. +AC_DEFUN([gt_FUNC_USELOCALE], +[ + AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles + + dnl Persuade glibc and Solaris to define 'locale_t'. + AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS]) + + gl_CHECK_FUNCS_ANDROID([uselocale], [[#include ]]) + + dnl On AIX 7.2, the uselocale() function is not documented and leads to + dnl crashes in subsequent setlocale() invocations. + dnl In 2019, some versions of z/OS lack the locale_t type and have a broken + dnl uselocale function. + if test $ac_cv_func_uselocale = yes; then + AC_CHECK_HEADERS_ONCE([xlocale.h]) + AC_CACHE_CHECK([whether uselocale works], + [gt_cv_func_uselocale_works], + [AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ +#include +#if HAVE_XLOCALE_H +# include +#endif +locale_t loc1; +int main () +{ + uselocale (NULL); + setlocale (LC_ALL, "en_US.UTF-8"); + return 0; +}]])], + [gt_cv_func_uselocale_works=yes], + [gt_cv_func_uselocale_works=no], + [# Guess no on AIX and z/OS, yes otherwise. + case "$host_os" in + aix* | openedition*) gt_cv_func_uselocale_works="guessing no" ;; + *) gt_cv_func_uselocale_works="guessing yes" ;; + esac + ]) + ]) + else + gt_cv_func_uselocale_works=no + fi + case "$gt_cv_func_uselocale_works" in + *yes) + gt_working_uselocale=yes + AC_DEFINE([HAVE_WORKING_USELOCALE], [1], + [Define if the uselocale function exists and may safely be called.]) + ;; + *) + gt_working_uselocale=no + ;; + esac +]) diff --git a/m4/intmax_t.m4 b/m4/intmax_t.m4 index 63c4b41..ef32e1b 100644 --- a/m4/intmax_t.m4 +++ b/m4/intmax_t.m4 @@ -1,5 +1,5 @@ # intmax_t.m4 serial 9 -dnl Copyright (C) 1997-2004, 2006-2007, 2009-2021 Free Software Foundation, +dnl Copyright (C) 1997-2004, 2006-2007, 2009-2023 Free Software Foundation, dnl Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, diff --git a/m4/inttostr.m4 b/m4/inttostr.m4 index 8a50d50..0297ddd 100644 --- a/m4/inttostr.m4 +++ b/m4/inttostr.m4 @@ -1,5 +1,5 @@ #serial 8 -dnl Copyright (C) 2004-2006, 2009-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2004-2006, 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/inttypes.m4 b/m4/inttypes.m4 index 64b1de5..e7efbe9 100644 --- a/m4/inttypes.m4 +++ b/m4/inttypes.m4 @@ -1,5 +1,5 @@ -# inttypes.m4 serial 35 -dnl Copyright (C) 2006-2021 Free Software Foundation, Inc. +# inttypes.m4 serial 37 +dnl Copyright (C) 2006-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -36,7 +36,7 @@ AC_DEFUN_ONCE([gl_INTTYPES_INCOMPLETE], AC_DEFUN([gl_INTTYPES_PRI_SCN], [ PRIPTR_PREFIX= - if test -n "$STDINT_H"; then + if $GL_GENERATE_STDINT_H; then dnl Using the gnulib . It defines intptr_t to 'long' or dnl 'long long', depending on _WIN64. AC_COMPILE_IFELSE( @@ -170,6 +170,10 @@ AC_DEFUN([gl_INTTYPES_H_DEFAULTS], HAVE_DECL_STRTOIMAX=1; AC_SUBST([HAVE_DECL_STRTOIMAX]) HAVE_DECL_STRTOUMAX=1; AC_SUBST([HAVE_DECL_STRTOUMAX]) HAVE_IMAXDIV_T=1; AC_SUBST([HAVE_IMAXDIV_T]) + HAVE_IMAXABS=1; AC_SUBST([HAVE_IMAXABS]) + HAVE_IMAXDIV=1; AC_SUBST([HAVE_IMAXDIV]) + REPLACE_IMAXABS=0; AC_SUBST([REPLACE_IMAXABS]) + REPLACE_IMAXDIV=0; AC_SUBST([REPLACE_IMAXDIV]) REPLACE_STRTOIMAX=0; AC_SUBST([REPLACE_STRTOIMAX]) REPLACE_STRTOUMAX=0; AC_SUBST([REPLACE_STRTOUMAX]) INT32_MAX_LT_INTMAX_MAX=1; AC_SUBST([INT32_MAX_LT_INTMAX_MAX]) diff --git a/m4/inttypes_h.m4 b/m4/inttypes_h.m4 index 672a93e..68c60e9 100644 --- a/m4/inttypes_h.m4 +++ b/m4/inttypes_h.m4 @@ -1,5 +1,5 @@ # inttypes_h.m4 serial 10 -dnl Copyright (C) 1997-2004, 2006, 2008-2021 Free Software Foundation, Inc. +dnl Copyright (C) 1997-2004, 2006, 2008-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/ioctl.m4 b/m4/ioctl.m4 index efd29f3..83036c3 100644 --- a/m4/ioctl.m4 +++ b/m4/ioctl.m4 @@ -1,5 +1,5 @@ # ioctl.m4 serial 6 -dnl Copyright (C) 2008-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2008-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/isblank.m4 b/m4/isblank.m4 index e77e1a8..809eab4 100644 --- a/m4/isblank.m4 +++ b/m4/isblank.m4 @@ -1,5 +1,5 @@ # isblank.m4 serial 3 -dnl Copyright (C) 2009-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/iswblank.m4 b/m4/iswblank.m4 index 84fd838..b1220b1 100644 --- a/m4/iswblank.m4 +++ b/m4/iswblank.m4 @@ -1,5 +1,5 @@ -# iswblank.m4 serial 5 -dnl Copyright (C) 2011-2021 Free Software Foundation, Inc. +# iswblank.m4 serial 7 +dnl Copyright (C) 2011-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -10,14 +10,18 @@ AC_DEFUN([gl_FUNC_ISWBLANK], AC_REQUIRE([gl_WCTYPE_H]) dnl Persuade glibc to declare iswblank(). AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS]) - AC_CHECK_FUNCS_ONCE([iswblank]) + gl_CHECK_FUNCS_ANDROID([iswblank], [[#include ]]) AC_CHECK_DECLS([iswblank], , , [[ #include #include ]]) if test $ac_cv_func_iswblank = no; then HAVE_ISWBLANK=0 - if test $ac_cv_have_decl_iswblank = yes; then + if test $ac_cv_have_decl_iswblank = yes \ + || case "$gl_cv_onwards_func_iswblank" in \ + future*) true ;; \ + *) false ;; \ + esac; then REPLACE_ISWBLANK=1 fi fi diff --git a/m4/iswdigit.m4 b/m4/iswdigit.m4 index de4ffce..0df7b30 100644 --- a/m4/iswdigit.m4 +++ b/m4/iswdigit.m4 @@ -1,5 +1,5 @@ # iswdigit.m4 serial 3 -dnl Copyright (C) 2020-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2020-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/iswxdigit.m4 b/m4/iswxdigit.m4 index f96d735..3f952f0 100644 --- a/m4/iswxdigit.m4 +++ b/m4/iswxdigit.m4 @@ -1,5 +1,5 @@ # iswxdigit.m4 serial 3 -dnl Copyright (C) 2020-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2020-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/langinfo_h.m4 b/m4/langinfo_h.m4 index 87959f7..b17a526 100644 --- a/m4/langinfo_h.m4 +++ b/m4/langinfo_h.m4 @@ -1,5 +1,5 @@ # langinfo_h.m4 serial 12 -dnl Copyright (C) 2009-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/largefile.m4 b/m4/largefile.m4 index fbde5e6..a2adb53 100644 --- a/m4/largefile.m4 +++ b/m4/largefile.m4 @@ -1,7 +1,7 @@ # Enable large files on systems where this is not the default. # Enable support for files on Linux file systems with 64-bit inode numbers. -# Copyright 1992-1996, 1998-2021 Free Software Foundation, Inc. +# Copyright 1992-1996, 1998-2023 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -10,8 +10,9 @@ # It does not set _LARGEFILE_SOURCE=1 on HP-UX/ia64 32-bit, although this # setting of _LARGEFILE_SOURCE is needed so that declares fseeko # and ftello in C++ mode as well. +# This problem occurs in Autoconf 2.71 and earlier, which lack AC_SYS_YEAR2038. AC_DEFUN([gl_SET_LARGEFILE_SOURCE], -[ + m4_ifndef([AC_SYS_YEAR2038], [[ AC_REQUIRE([AC_CANONICAL_HOST]) AC_FUNC_FSEEKO case "$host_os" in @@ -20,56 +21,255 @@ AC_DEFUN([gl_SET_LARGEFILE_SOURCE], [Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2).]) ;; esac + ]]) +) + +m4_ifndef([AC_SYS_YEAR2038_RECOMMENDED], [ +# Support AC_SYS_YEAR2038_RECOMMENDED and related macros, even if +# Autoconf 2.71 or earlier. This code is taken from Autoconf master. + +# _AC_SYS_YEAR2038_TEST_CODE +# -------------------------- +# C code used to probe for time_t that can represent time points more +# than 2**31 - 1 seconds after the epoch. With the usual Unix epoch, +# these correspond to dates after 2038-01-18 22:14:07 +0000 (Gregorian), +# hence the name. +AC_DEFUN([_AC_SYS_YEAR2038_TEST_CODE], +[[ + #include + /* Check that time_t can represent 2**32 - 1 correctly. */ + #define LARGE_TIME_T \\ + ((time_t) (((time_t) 1 << 30) - 1 + 3 * ((time_t) 1 << 30))) + int verify_time_t_range[(LARGE_TIME_T / 65537 == 65535 + && LARGE_TIME_T % 65537 == 0) + ? 1 : -1]; +]]) + +# _AC_SYS_YEAR2038_OPTIONS +# ------------------------ +# List of known ways to enable support for large time_t. If you change +# this list you probably also need to change the AS_CASE at the end of +# _AC_SYS_YEAR2038_PROBE. +m4_define([_AC_SYS_YEAR2038_OPTIONS], m4_normalize( + ["none needed"] dnl 64-bit and newer 32-bit Unix + ["-D_TIME_BITS=64"] dnl glibc 2.34 with some 32-bit ABIs + ["-D__MINGW_USE_VC2005_COMPAT"] dnl 32-bit MinGW + ["-U_USE_32_BIT_TIME_T -D__MINGW_USE_VC2005_COMPAT"] + dnl 32-bit MinGW (misconfiguration) +)) + +# _AC_SYS_YEAR2038_PROBE +# ---------------------- +# Subroutine of AC_SYS_YEAR2038. Probe for time_t that can represent +# time points more than 2**31 - 1 seconds after the epoch (dates after +# 2038-01-18, see above) and set the cache variable ac_cv_sys_year2038_opts +# to one of the values in the _AC_SYS_YEAR2038_OPTIONS list, or to +# "support not detected" if none of them worked. Then, set compilation +# options and #defines as necessary to enable large time_t support. +# +# Note that we do not test whether mktime, localtime, etc. handle +# large values of time_t correctly, as that would require use of +# AC_TRY_RUN. Note also that some systems only support large time_t +# together with large off_t. +# +# If you change this macro you may also need to change +# _AC_SYS_YEAR2038_OPTIONS. +AC_DEFUN([_AC_SYS_YEAR2038_PROBE], +[AC_CACHE_CHECK([for $CC option for timestamps after 2038], + [ac_cv_sys_year2038_opts], + [ac_save_CPPFLAGS="$CPPFLAGS" + ac_opt_found=no + for ac_opt in _AC_SYS_YEAR2038_OPTIONS; do + AS_IF([test x"$ac_opt" != x"none needed"], + [CPPFLAGS="$ac_save_CPPFLAGS $ac_opt"]) + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([_AC_SYS_YEAR2038_TEST_CODE])], + [ac_cv_sys_year2038_opts="$ac_opt" + ac_opt_found=yes]) + test $ac_opt_found = no || break + done + CPPFLAGS="$ac_save_CPPFLAGS" + test $ac_opt_found = yes || ac_cv_sys_year2038_opts="support not detected"]) + +ac_have_year2038=yes +AS_CASE([$ac_cv_sys_year2038_opts], + ["none needed"], [], + ["support not detected"], + [ac_have_year2038=no], + + ["-D_TIME_BITS=64"], + [AC_DEFINE([_TIME_BITS], [64], + [Number of bits in time_t, on hosts where this is settable.])], + + ["-D__MINGW_USE_VC2005_COMPAT"], + [AC_DEFINE([__MINGW_USE_VC2005_COMPAT], [1], + [Define to 1 on platforms where this makes time_t a 64-bit type.])], + + ["-U_USE_32_BIT_TIME_T"*], + [AC_MSG_FAILURE(m4_text_wrap( + [the 'time_t' type is currently forced to be 32-bit. + It will stop working after mid-January 2038. + Remove _USE_32BIT_TIME_T from the compiler flags.], + [], [], [55]))], + + [AC_MSG_ERROR( + [internal error: bad value for \$ac_cv_sys_year2038_opts])]) ]) -# Work around a problem in Autoconf through at least 2.71 on glibc 2.34+ -# with _TIME_BITS. Also, work around a problem in autoconf <= 2.69: -# AC_SYS_LARGEFILE does not configure for large inodes on Mac OS X 10.5, -# or configures them incorrectly in some cases. -m4_version_prereq([2.70], [], [ +# _AC_SYS_YEAR2038_ENABLE +# ----------------------- +# Depending on which of the YEAR2038 macros was used, add either an +# --enable-year2038 or a --disable-year2038 to +# the configure script. This is expanded very late and +# therefore there cannot be any code in the AC_ARG_ENABLE. The +# default value for 'enable_year2038' is emitted unconditionally +# because the generated code always looks at this variable. +m4_define([_AC_SYS_YEAR2038_ENABLE], +[m4_divert_text([DEFAULTS], + m4_provide_if([AC_SYS_YEAR2038], + [enable_year2038=yes], + [enable_year2038=no]))]dnl +[AC_ARG_ENABLE([year2038], + m4_provide_if([AC_SYS_YEAR2038], + [AS_HELP_STRING([--disable-year2038], + [don't support timestamps after 2038])], + [AS_HELP_STRING([--enable-year2038], + [support timestamps after 2038])]))]) -# _AC_SYS_LARGEFILE_TEST_INCLUDES -# ------------------------------- -m4_define([_AC_SYS_LARGEFILE_TEST_INCLUDES], -[#include +# AC_SYS_YEAR2038 +# --------------- +# Attempt to detect and activate support for large time_t. +# On systems where time_t is not always 64 bits, this probe can be +# skipped by passing the --disable-year2038 option to configure. +AC_DEFUN([AC_SYS_YEAR2038], +[AC_REQUIRE([AC_SYS_LARGEFILE])dnl +AS_IF([test "$enable_year2038,$ac_have_year2038,$cross_compiling" = yes,no,no], + [# If we're not cross compiling and 'touch' works with a large + # timestamp, then we can presume the system supports wider time_t + # *somehow* and we just weren't able to detect it. One common + # case that we deliberately *don't* probe for is a system that + # supports both 32- and 64-bit ABIs but only the 64-bit ABI offers + # wide time_t. (It would be inappropriate for us to override an + # intentional use of -m32.) Error out, demanding use of + # --disable-year2038 if this is intentional. + AS_IF([TZ=UTC0 touch -t 210602070628.15 conftest.time 2>/dev/null], + [AS_CASE([`TZ=UTC0 LC_ALL=C ls -l conftest.time 2>/dev/null`], + [*'Feb 7 2106'* | *'Feb 7 17:10'*], + [AC_MSG_FAILURE(m4_text_wrap( + [this system appears to support timestamps after mid-January 2038, + but no mechanism for enabling wide 'time_t' was detected. + Did you mean to build a 64-bit binary? (E.g., 'CC="${CC} -m64"'.) + To proceed with 32-bit time_t, configure with '--disable-year2038'.], + [], [], [55]))])])])]) + +# AC_SYS_YEAR2038_RECOMMENDED +# --------------------------- +# Same as AC_SYS_YEAR2038, but recommend support for large time_t. +# If we cannot find any way to make time_t capable of representing +# values larger than 2**31 - 1, error out unless --disable-year2038 is given. +AC_DEFUN([AC_SYS_YEAR2038_RECOMMENDED], +[AC_REQUIRE([AC_SYS_YEAR2038])dnl +AS_IF([test "$enable_year2038,$ac_have_year2038" = yes,no], + [AC_MSG_FAILURE(m4_text_wrap( + [could not enable timestamps after mid-January 2038. + This package recommends support for these later timestamps. + However, to proceed with signed 32-bit time_t even though it + will fail then, configure with '--disable-year2038'.], + [], [], [55]))])]) + +# _AC_SYS_LARGEFILE_TEST_CODE +# --------------------------- +# C code used to probe for large file support. +m4_define([_AC_SYS_LARGEFILE_TEST_CODE], +[@%:@include /* Check that off_t can represent 2**63 - 1 correctly. We can't simply define LARGE_OFF_T to be 9223372036854775807, since some C++ compilers masquerading as C compilers incorrectly reject 9223372036854775807. */ -#define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31)) +@%:@define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31)) int off_t_is_large[[(LARGE_OFF_T % 2147483629 == 721 - && LARGE_OFF_T % 2147483647 == 1) - ? 1 : -1]];[]dnl + && LARGE_OFF_T % 2147483647 == 1) + ? 1 : -1]];[]dnl ]) -])# m4_version_prereq 2.70 - - -# _AC_SYS_LARGEFILE_MACRO_VALUE(C-MACRO, VALUE, -# CACHE-VAR, -# DESCRIPTION, -# PROLOGUE, [FUNCTION-BODY]) -# -------------------------------------------------------- -m4_define([_AC_SYS_LARGEFILE_MACRO_VALUE], -[AC_CACHE_CHECK([for $1 value needed for large files], [$3], -[while :; do - m4_ifval([$6], [AC_LINK_IFELSE], [AC_COMPILE_IFELSE])( - [AC_LANG_PROGRAM([$5], [$6])], - [$3=no; break]) - m4_ifval([$6], [AC_LINK_IFELSE], [AC_COMPILE_IFELSE])( - [AC_LANG_PROGRAM([#undef $1 -#define $1 $2 -$5], [$6])], - [$3=$2; break]) - $3=unknown - break -done]) -case $$3 in #( - no | unknown) ;; - *) AC_DEFINE_UNQUOTED([$1], [$$3], [$4]);; -esac -rm -rf conftest*[]dnl -])# _AC_SYS_LARGEFILE_MACRO_VALUE +# Defined by Autoconf 2.71 and circa 2022 Gnulib unwisely depended on it. +m4_define([_AC_SYS_LARGEFILE_TEST_INCLUDES], [_AC_SYS_LARGEFILE_TEST_CODE]) + +# _AC_SYS_LARGEFILE_OPTIONS +# ------------------------- +# List of known ways to enable support for large files. If you change +# this list you probably also need to change the AS_CASE at the end of +# _AC_SYS_LARGEFILE_PROBE. +m4_define([_AC_SYS_LARGEFILE_OPTIONS], m4_normalize( + ["none needed"] dnl Most current systems + ["-D_FILE_OFFSET_BITS=64"] dnl X/Open LFS spec + ["-D_LARGE_FILES=1"] dnl 32-bit AIX 4.2.1+, 32-bit z/OS + ["-n32"] dnl 32-bit IRIX 6, SGI cc (obsolete) +)) + +# _AC_SYS_LARGEFILE_PROBE +# ----------------------- +# Subroutine of AC_SYS_LARGEFILE. Probe for large file support and set +# the cache variable ac_cv_sys_largefile_opts to one of the values in +# the _AC_SYS_LARGEFILE_OPTIONS list, or to "support not detected" if +# none of the options in that list worked. Then, set compilation +# options and #defines as necessary to enable large file support. +# +# If large file support is not detected, the behavior depends on which of +# the top-level AC_SYS_LARGEFILE macros was used (see below). +# +# If you change this macro you may also need to change +# _AC_SYS_LARGEFILE_OPTIONS. +AC_DEFUN([_AC_SYS_LARGEFILE_PROBE], +[AC_CACHE_CHECK([for $CC option to enable large file support], + [ac_cv_sys_largefile_opts], + [ac_save_CC="$CC" + ac_opt_found=no + for ac_opt in _AC_SYS_LARGEFILE_OPTIONS; do + AS_IF([test x"$ac_opt" != x"none needed"], + [CC="$ac_save_CC $ac_opt"]) + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([_AC_SYS_LARGEFILE_TEST_CODE])], + [ac_cv_sys_largefile_opts="$ac_opt" + ac_opt_found=yes]) + test $ac_opt_found = no || break + done + CC="$ac_save_CC" + dnl Gnulib implements large file support for native Windows, based on the + dnl variables WINDOWS_64_BIT_OFF_T, WINDOWS_64_BIT_ST_SIZE. + m4_ifdef([gl_LARGEFILE], [ + AC_REQUIRE([AC_CANONICAL_HOST]) + if test $ac_opt_found != yes; then + AS_CASE([$host_os], + [mingw*], + [ac_cv_sys_largefile_opts="supported through gnulib" + ac_opt_found=yes] + ) + fi + ]) + test $ac_opt_found = yes || ac_cv_sys_largefile_opts="support not detected"]) + +ac_have_largefile=yes +AS_CASE([$ac_cv_sys_largefile_opts], + ["none needed"], [], + ["supported through gnulib"], [], + ["support not detected"], + [ac_have_largefile=no], + + ["-D_FILE_OFFSET_BITS=64"], + [AC_DEFINE([_FILE_OFFSET_BITS], [64], + [Number of bits in a file offset, on hosts where this is settable.])], + + ["-D_LARGE_FILES=1"], + [AC_DEFINE([_LARGE_FILES], [1], + [Define to 1 on platforms where this makes off_t a 64-bit type.])], + + ["-n32"], + [CC="$CC -n32"], + + [AC_MSG_ERROR( + [internal error: bad value for \$ac_cv_sys_largefile_opts])]) +AS_IF([test "$enable_year2038" != no], + [_AC_SYS_YEAR2038_PROBE]) +AC_CONFIG_COMMANDS_PRE([_AC_SYS_YEAR2038_ENABLE])]) # AC_SYS_LARGEFILE # ---------------- @@ -81,43 +281,12 @@ rm -rf conftest*[]dnl # to have a 64-bit inode number cannot be accessed by 32-bit applications on # Linux x86/x86_64. This can occur with file systems such as XFS and NFS. AC_DEFUN([AC_SYS_LARGEFILE], -[AC_ARG_ENABLE(largefile, - [ --disable-largefile omit support for large files]) -AS_IF([test "$enable_largefile" != no], - [AC_CACHE_CHECK([for special C compiler options needed for large files], - ac_cv_sys_largefile_CC, - [ac_cv_sys_largefile_CC=no - if test "$GCC" != yes; then - ac_save_CC=$CC - while :; do - # IRIX 6.2 and later do not support large files by default, - # so use the C compiler's -n32 option if that helps. - AC_LANG_CONFTEST([AC_LANG_PROGRAM([_AC_SYS_LARGEFILE_TEST_INCLUDES])]) - AC_COMPILE_IFELSE([], [break]) - CC="$CC -n32" - AC_COMPILE_IFELSE([], [ac_cv_sys_largefile_CC=' -n32'; break]) - break - done - CC=$ac_save_CC - rm -f conftest.$ac_ext - fi]) - if test "$ac_cv_sys_largefile_CC" != no; then - CC=$CC$ac_cv_sys_largefile_CC - fi - - _AC_SYS_LARGEFILE_MACRO_VALUE(_FILE_OFFSET_BITS, 64, - ac_cv_sys_file_offset_bits, - [Number of bits in a file offset, on hosts where this is settable.], - [_AC_SYS_LARGEFILE_TEST_INCLUDES]) - AS_CASE([$ac_cv_sys_file_offset_bits], - [unknown], - [_AC_SYS_LARGEFILE_MACRO_VALUE([_LARGE_FILES], [1], - [ac_cv_sys_large_files], - [Define for large files, on AIX-style hosts.], - [_AC_SYS_LARGEFILE_TEST_INCLUDES])], - [64], - [gl_YEAR2038_BODY([])])]) -])# AC_SYS_LARGEFILE +[AC_ARG_ENABLE([largefile], + [AS_HELP_STRING([--disable-largefile], + [omit support for large files])])dnl +AS_IF([test "$enable_largefile,$enable_year2038" != no,no], + [_AC_SYS_LARGEFILE_PROBE])]) +])# m4_ifndef AC_SYS_YEAR2038_RECOMMENDED # Enable large files on systems where this is implemented by Gnulib, not by the # system headers. diff --git a/m4/lib-ld.m4 b/m4/lib-ld.m4 index 076358d..acc6127 100644 --- a/m4/lib-ld.m4 +++ b/m4/lib-ld.m4 @@ -1,5 +1,5 @@ -# lib-ld.m4 serial 10 -dnl Copyright (C) 1996-2003, 2009-2021 Free Software Foundation, Inc. +# lib-ld.m4 serial 11 +dnl Copyright (C) 1996-2003, 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -29,7 +29,7 @@ AC_DEFUN([AC_LIB_PROG_LD], AC_REQUIRE([AC_CANONICAL_HOST])dnl AC_ARG_WITH([gnu-ld], - [AS_HELP_STRING([--with-gnu-ld], + [AS_HELP_STRING([[--with-gnu-ld]], [assume the C compiler uses GNU ld [default=no]])], [test "$withval" = no || with_gnu_ld=yes], [with_gnu_ld=no])dnl diff --git a/m4/lib-link.m4 b/m4/lib-link.m4 index 787efab..653e34f 100644 --- a/m4/lib-link.m4 +++ b/m4/lib-link.m4 @@ -1,5 +1,5 @@ -# lib-link.m4 serial 32 -dnl Copyright (C) 2001-2021 Free Software Foundation, Inc. +# lib-link.m4 serial 33 +dnl Copyright (C) 2001-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -196,8 +196,8 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY], eval additional_libdir3=\"$exec_prefix/$acl_libdirstem3\" ]) AC_ARG_WITH(PACK[-prefix], -[[ --with-]]PACK[[-prefix[=DIR] search for ]PACKLIBS[ in DIR/include and DIR/lib - --without-]]PACK[[-prefix don't search for ]PACKLIBS[ in includedir and libdir]], +[[ --with-]]PACK[[-prefix[=DIR] search for ]]PACKLIBS[[ in DIR/include and DIR/lib + --without-]]PACK[[-prefix don't search for ]]PACKLIBS[[ in includedir and libdir]], [ if test "X$withval" = "Xno"; then use_additional=no diff --git a/m4/lib-prefix.m4 b/m4/lib-prefix.m4 index 3c94db0..aefe7f7 100644 --- a/m4/lib-prefix.m4 +++ b/m4/lib-prefix.m4 @@ -1,5 +1,5 @@ -# lib-prefix.m4 serial 19 -dnl Copyright (C) 2001-2005, 2008-2021 Free Software Foundation, Inc. +# lib-prefix.m4 serial 20 +dnl Copyright (C) 2001-2005, 2008-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -174,7 +174,7 @@ AC_DEFUN([AC_LIB_PREPARE_MULTILIB], AC_CACHE_CHECK([for ELF binary format], [gl_cv_elf], [AC_EGREP_CPP([Extensible Linking Format], - [#ifdef __ELF__ + [#if defined __ELF__ || (defined __linux__ && defined __EDG__) Extensible Linking Format #endif ], diff --git a/m4/libsigsegv.m4 b/m4/libsigsegv.m4 index 3255235..2819a4d 100644 --- a/m4/libsigsegv.m4 +++ b/m4/libsigsegv.m4 @@ -1,5 +1,5 @@ # libsigsegv.m4 serial 4 -dnl Copyright (C) 2002-2003, 2008-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2002-2003, 2008-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/libunistring-base.m4 b/m4/libunistring-base.m4 index 657bc0d..6dd184a 100644 --- a/m4/libunistring-base.m4 +++ b/m4/libunistring-base.m4 @@ -1,5 +1,5 @@ -# libunistring-base.m4 serial 5 -dnl Copyright (C) 2010-2021 Free Software Foundation, Inc. +# libunistring-base.m4 serial 8 +dnl Copyright (C) 2010-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -18,16 +18,47 @@ dnl You have to bump the VERSION argument to the next projected version dnl number each time you make a change that affects the behaviour of the dnl functions defined in Module (even if the sources of Module itself do not dnl change). +dnl +dnl This macro invocation must not occur in macros that are AC_REQUIREd. AC_DEFUN([gl_LIBUNISTRING_MODULE], [ AC_REQUIRE([gl_LIBUNISTRING_LIB_PREPARE]) dnl Use the variables HAVE_LIBUNISTRING, LIBUNISTRING_VERSION from dnl gl_LIBUNISTRING_CORE if that macro has been run. - AM_CONDITIONAL(AS_TR_CPP([LIBUNISTRING_COMPILE_$2]), + gl_CONDITIONAL(AS_TR_CPP([LIBUNISTRING_COMPILE_$2]), [gl_LIBUNISTRING_VERSION_CMP([$1])]) ]) +dnl gl_LIBUNISTRING_MODULE_WITH_VARIABLE([VERSION], [Module]) +dnl is like gl_LIBUNISTRING_MODULE([VERSION], [Module]), except that it also +dnl defines an AC_SUBSTed autoconf variable GNULIB_$MODULE_DLL_VARIABLE. +dnl What's the expansion of this autoconf variable? +dnl - When building libunistring, it expands to LIBUNISTRING_DLL_VARIABLE. +dnl (This is necessary because this token must be present in the .h files +dnl when the .h files get installed.) +dnl - When building gnulib or application code it expands to +dnl - LIBUNISTRING_DLL_VARIABLE by default, +dnl - empty if the automake conditional LIBUNISTRING_COMPILE_$MODULE +dnl evaluates to true. +dnl (This is necessary because when the conditional evaluates to false, +dnl the application code expects to use the declared variable from the +dnl installed libunistring; it's in this case that the +dnl LIBUNISTRING_DLL_VARIABLE macro from the installed +dnl must be used.) +dnl +dnl This macro invocation must not occur in macros that are AC_REQUIREd. + +AC_DEFUN([gl_LIBUNISTRING_MODULE_WITH_VARIABLE], +[ + gl_LIBUNISTRING_MODULE([$1], [$2]) + m4_ifndef([gl_IN_LIBUNISTRING], + [if test -z "${AS_TR_CPP([LIBUNISTRING_COMPILE_$2])_TRUE}"; then + GL_MODULE_INDICATOR_PREFIX[]_GNULIB_[]AS_TR_CPP([$2_DLL_VARIABLE])= + fi + ]) +]) + dnl gl_LIBUNISTRING_LIBHEADER([VERSION], [HeaderFile]) dnl Declares that HeaderFile should be created, unless we are linking dnl with libunistring and its version is >= the given VERSION. @@ -51,7 +82,11 @@ AC_DEFUN([gl_LIBUNISTRING_LIBHEADER], dnl Use the variables HAVE_LIBUNISTRING, LIBUNISTRING_VERSION from dnl gl_LIBUNISTRING_CORE if that macro has been run. if gl_LIBUNISTRING_VERSION_CMP([$1]); then - LIBUNISTRING_[]AS_TR_CPP([$2])='$2' + dnl It is OK to use a .h file in lib/ from within tests/, but not vice + dnl versa. + if test -z "$LIBUNISTRING_[]AS_TR_CPP([$2])"; then + LIBUNISTRING_[]AS_TR_CPP([$2])="${gl_source_base_prefix}$2" + fi else LIBUNISTRING_[]AS_TR_CPP([$2])= fi @@ -91,6 +126,26 @@ changequote([,]) LIBUNISTRING_VERSION_MINOR=`echo "$LIBUNISTRING_VERSION" | sed -n -e "$gl_libunistring_sed_extract_minor"` LIBUNISTRING_VERSION_SUBMINOR=`echo "$LIBUNISTRING_VERSION" | sed -n -e "$gl_libunistring_sed_extract_subminor"` fi + + dnl Determine whether from an installed libunistring + dnl is available. + m4_ifdef([gl_IN_LIBUNISTRING], + [dnl In libunistring, all .h files that declare variables need to + dnl #include . This references the file + dnl unistring/woe32dll.h in libunistring. + HAVE_UNISTRING_WOE32DLL_H=1 + ], + [dnl In gnulib or in applications, we need a #include + dnl if and only if an installed libunistring is available. + if test "$HAVE_LIBUNISTRING" = yes; then + AC_CHECK_HEADERS([unistring/woe32dll.h], + [HAVE_UNISTRING_WOE32DLL_H=1], + [HAVE_UNISTRING_WOE32DLL_H=0]) + else + HAVE_UNISTRING_WOE32DLL_H=0 + fi + ]) + AC_SUBST([HAVE_UNISTRING_WOE32DLL_H]) ]) dnl gl_LIBUNISTRING_VERSION_CMP([VERSION]) diff --git a/m4/limits-h.m4 b/m4/limits-h.m4 index 00c9fe9..6a5983e 100644 --- a/m4/limits-h.m4 +++ b/m4/limits-h.m4 @@ -1,6 +1,6 @@ dnl Check whether limits.h has needed features. -dnl Copyright 2016-2021 Free Software Foundation, Inc. +dnl Copyright 2016-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -23,22 +23,32 @@ AC_DEFUN_ONCE([gl_LIMITS_H], int wb = WORD_BIT; int ullw = ULLONG_WIDTH; int bw = BOOL_WIDTH; + int bm = BOOL_MAX; + int mblm = MB_LEN_MAX; ]])], [gl_cv_header_limits_width=yes], [gl_cv_header_limits_width=no])]) - if test "$gl_cv_header_limits_width" = yes; then - LIMITS_H= - else - LIMITS_H=limits.h - fi - AC_SUBST([LIMITS_H]) - AM_CONDITIONAL([GL_GENERATE_LIMITS_H], [test -n "$LIMITS_H"]) + GL_GENERATE_LIMITS_H=true + AS_IF([test "$gl_cv_header_limits_width" = yes], + [AC_CACHE_CHECK([whether limits.h has SSIZE_MAX], + [gl_cv_header_limits_ssize_max], + [AC_COMPILE_IFELSE( + [AC_LANG_SOURCE( + [[#include + #ifndef SSIZE_MAX + #error "SSIZE_MAX is not defined" + #endif + ]])], + [gl_cv_header_limits_ssize_max=yes], + [gl_cv_header_limits_ssize_max=no])]) + if test "$gl_cv_header_limits_ssize_max" = yes; then + GL_GENERATE_LIMITS_H=false + fi]) ]) dnl Unconditionally enables the replacement of . AC_DEFUN([gl_REPLACE_LIMITS_H], [ AC_REQUIRE([gl_LIMITS_H]) - LIMITS_H='limits.h' - AM_CONDITIONAL([GL_GENERATE_LIMITS_H], [test -n "$LIMITS_H"]) + GL_GENERATE_LIMITS_H=true ]) diff --git a/m4/localcharset.m4 b/m4/localcharset.m4 index 04389fc..15b6b2a 100644 --- a/m4/localcharset.m4 +++ b/m4/localcharset.m4 @@ -1,5 +1,5 @@ # localcharset.m4 serial 8 -dnl Copyright (C) 2002, 2004, 2006, 2009-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2002, 2004, 2006, 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/locale-fr.m4 b/m4/locale-fr.m4 index b61df7e..5e13f39 100644 --- a/m4/locale-fr.m4 +++ b/m4/locale-fr.m4 @@ -1,5 +1,5 @@ -# locale-fr.m4 serial 20 -dnl Copyright (C) 2003, 2005-2021 Free Software Foundation, Inc. +# locale-fr.m4 serial 21 +dnl Copyright (C) 2003, 2005-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -7,7 +7,7 @@ dnl with or without modifications, as long as this notice is preserved. dnl From Bruno Haible. dnl Determine the name of a french locale with traditional encoding. -AC_DEFUN([gt_LOCALE_FR], +AC_DEFUN_ONCE([gt_LOCALE_FR], [ AC_REQUIRE([AC_CANONICAL_HOST]) AC_REQUIRE([AM_LANGINFO_CODESET]) @@ -137,7 +137,7 @@ int main () { ]) dnl Determine the name of a french locale with UTF-8 encoding. -AC_DEFUN([gt_LOCALE_FR_UTF8], +AC_DEFUN_ONCE([gt_LOCALE_FR_UTF8], [ AC_REQUIRE([AM_LANGINFO_CODESET]) AC_CACHE_CHECK([for a french Unicode locale], [gt_cv_locale_fr_utf8], [ diff --git a/m4/locale-ja.m4 b/m4/locale-ja.m4 index cd94288..f6ca327 100644 --- a/m4/locale-ja.m4 +++ b/m4/locale-ja.m4 @@ -1,5 +1,5 @@ -# locale-ja.m4 serial 15 -dnl Copyright (C) 2003, 2005-2021 Free Software Foundation, Inc. +# locale-ja.m4 serial 16 +dnl Copyright (C) 2003, 2005-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -7,7 +7,7 @@ dnl with or without modifications, as long as this notice is preserved. dnl From Bruno Haible. dnl Determine the name of a japanese locale with EUC-JP encoding. -AC_DEFUN([gt_LOCALE_JA], +AC_DEFUN_ONCE([gt_LOCALE_JA], [ AC_REQUIRE([AC_CANONICAL_HOST]) AC_REQUIRE([AM_LANGINFO_CODESET]) diff --git a/m4/locale-tr.m4 b/m4/locale-tr.m4 index ecb8b60..d34df05 100644 --- a/m4/locale-tr.m4 +++ b/m4/locale-tr.m4 @@ -1,5 +1,5 @@ -# locale-tr.m4 serial 13 -dnl Copyright (C) 2003, 2005-2021 Free Software Foundation, Inc. +# locale-tr.m4 serial 14 +dnl Copyright (C) 2003, 2005-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -7,7 +7,7 @@ dnl with or without modifications, as long as this notice is preserved. dnl From Bruno Haible. dnl Determine the name of a turkish locale with UTF-8 encoding. -AC_DEFUN([gt_LOCALE_TR_UTF8], +AC_DEFUN_ONCE([gt_LOCALE_TR_UTF8], [ AC_REQUIRE([AC_CANONICAL_HOST]) AC_REQUIRE([AM_LANGINFO_CODESET]) diff --git a/m4/locale-zh.m4 b/m4/locale-zh.m4 index 1228be8..94c5459 100644 --- a/m4/locale-zh.m4 +++ b/m4/locale-zh.m4 @@ -1,5 +1,5 @@ -# locale-zh.m4 serial 15 -dnl Copyright (C) 2003, 2005-2021 Free Software Foundation, Inc. +# locale-zh.m4 serial 16 +dnl Copyright (C) 2003, 2005-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -7,7 +7,7 @@ dnl with or without modifications, as long as this notice is preserved. dnl From Bruno Haible. dnl Determine the name of a chinese locale with GB18030 encoding. -AC_DEFUN([gt_LOCALE_ZH_CN], +AC_DEFUN_ONCE([gt_LOCALE_ZH_CN], [ AC_REQUIRE([AC_CANONICAL_HOST]) AC_REQUIRE([AM_LANGINFO_CODESET]) diff --git a/m4/locale_h.m4 b/m4/locale_h.m4 index 444a381..a33a0a4 100644 --- a/m4/locale_h.m4 +++ b/m4/locale_h.m4 @@ -1,5 +1,5 @@ # locale_h.m4 serial 28 -dnl Copyright (C) 2007, 2009-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2007, 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/localeconv.m4 b/m4/localeconv.m4 index e29c7c3..374dcbf 100644 --- a/m4/localeconv.m4 +++ b/m4/localeconv.m4 @@ -1,5 +1,5 @@ -# localeconv.m4 serial 1 -dnl Copyright (C) 2012-2021 Free Software Foundation, Inc. +# localeconv.m4 serial 2 +dnl Copyright (C) 2012-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -8,10 +8,45 @@ AC_DEFUN([gl_FUNC_LOCALECONV], [ AC_REQUIRE([gl_LOCALE_H_DEFAULTS]) AC_REQUIRE([gl_LOCALE_H]) + AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles if test $REPLACE_STRUCT_LCONV = 1; then REPLACE_LOCALECONV=1 fi + if test $REPLACE_LOCALECONV = 0; then + dnl Test whether fields of type 'char' are filled correctly. + dnl This test fails on mingw 5.0.3. + AC_CACHE_CHECK([whether localeconv works], + [gl_cv_func_localeconv_works], + [AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ + #include + #include + int main () + { + struct lconv *l = localeconv (); + return l->frac_digits != CHAR_MAX && l->frac_digits < 0; + } + ]])], + [gl_cv_func_localeconv_works=yes], + [gl_cv_func_localeconv_works=no], + [case "$host_os" in + # Guess yes on glibc systems. + *-gnu* | gnu*) gl_cv_func_localeconv_works="guessing yes" ;; + # Guess yes on musl systems. + *-musl* | midipix*) gl_cv_func_localeconv_works="guessing yes" ;; + # Guess no on native Windows. + mingw*) gl_cv_func_localeconv_works="guessing no" ;; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_localeconv_works="$gl_cross_guess_normal" ;; + esac + ]) + ]) + case "$gl_cv_func_localeconv_works" in + *yes) ;; + *) REPLACE_LOCALECONV=1 ;; + esac + fi ]) # Prerequisites of lib/localeconv.c. @@ -19,4 +54,6 @@ AC_DEFUN([gl_PREREQ_LOCALECONV], [ AC_CHECK_MEMBERS([struct lconv.decimal_point], [], [], [[#include ]]) + AC_CHECK_MEMBERS([struct lconv.int_p_cs_precedes], [], [], + [[#include ]]) ]) diff --git a/m4/lock.m4 b/m4/lock.m4 index d68c12d..88cf557 100644 --- a/m4/lock.m4 +++ b/m4/lock.m4 @@ -1,5 +1,5 @@ # lock.m4 serial 14 -dnl Copyright (C) 2005-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2005-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/lstat.m4 b/m4/lstat.m4 index 62e9db2..2bc4669 100644 --- a/m4/lstat.m4 +++ b/m4/lstat.m4 @@ -1,6 +1,6 @@ -# serial 33 +# serial 34 -# Copyright (C) 1997-2001, 2003-2021 Free Software Foundation, Inc. +# Copyright (C) 1997-2001, 2003-2023 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -56,6 +56,9 @@ AC_DEFUN([gl_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK], linux-* | linux) # Guess yes on Linux systems. gl_cv_func_lstat_dereferences_slashed_symlink="guessing yes" ;; + midipix*) + # Guess yes on systems that emulate the Linux system calls. + gl_cv_func_lstat_dereferences_slashed_symlink="guessing yes" ;; *-gnu* | gnu*) # Guess yes on glibc systems. gl_cv_func_lstat_dereferences_slashed_symlink="guessing yes" ;; diff --git a/m4/malloc.m4 b/m4/malloc.m4 index 972e808..bc58017 100644 --- a/m4/malloc.m4 +++ b/m4/malloc.m4 @@ -1,5 +1,5 @@ -# malloc.m4 serial 27 -dnl Copyright (C) 2007, 2009-2021 Free Software Foundation, Inc. +# malloc.m4 serial 29 +dnl Copyright (C) 2007, 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -25,7 +25,7 @@ AC_DEFUN([_AC_FUNC_MALLOC_IF], [case "$host_os" in # Guess yes on platforms where we know the result. *-gnu* | freebsd* | netbsd* | openbsd* | bitrig* \ - | gnu* | *-musl* | midnightbsd* \ + | gnu* | *-musl* | midipix* | midnightbsd* \ | hpux* | solaris* | cygwin* | mingw* | msys* ) ac_cv_func_malloc_0_nonnull="guessing yes" ;; # If we don't know, obey --enable-cross-guesses. @@ -43,8 +43,9 @@ AC_DEFUN([gl_FUNC_MALLOC_GNU], [ AC_REQUIRE([gl_STDLIB_H_DEFAULTS]) AC_REQUIRE([gl_FUNC_MALLOC_POSIX]) - if test $REPLACE_MALLOC = 0; then - _AC_FUNC_MALLOC_IF([], [REPLACE_MALLOC=1]) + REPLACE_MALLOC_FOR_MALLOC_GNU="$REPLACE_MALLOC_FOR_MALLOC_POSIX" + if test $REPLACE_MALLOC_FOR_MALLOC_GNU = 0; then + _AC_FUNC_MALLOC_IF([], [REPLACE_MALLOC_FOR_MALLOC_GNU=1]) fi ]) @@ -56,7 +57,7 @@ AC_DEFUN([gl_FUNC_MALLOC_PTRDIFF], [ AC_REQUIRE([gl_STDLIB_H_DEFAULTS]) AC_REQUIRE([gl_CHECK_MALLOC_PTRDIFF]) - test "$gl_cv_malloc_ptrdiff" = yes || REPLACE_MALLOC=1 + test "$gl_cv_malloc_ptrdiff" = yes || REPLACE_MALLOC_FOR_MALLOC_POSIX=1 ]) # Test whether malloc, realloc, calloc refuse to create objects @@ -109,7 +110,7 @@ AC_DEFUN([gl_FUNC_MALLOC_POSIX], AC_DEFINE([HAVE_MALLOC_POSIX], [1], [Define if malloc, realloc, and calloc set errno on allocation failure.]) else - REPLACE_MALLOC=1 + REPLACE_MALLOC_FOR_MALLOC_POSIX=1 fi ]) diff --git a/m4/malloca.m4 b/m4/malloca.m4 index 06ed2c6..1d777eb 100644 --- a/m4/malloca.m4 +++ b/m4/malloca.m4 @@ -1,5 +1,5 @@ # malloca.m4 serial 2 -dnl Copyright (C) 2003-2004, 2006-2007, 2009-2021 Free Software Foundation, +dnl Copyright (C) 2003-2004, 2006-2007, 2009-2023 Free Software Foundation, dnl Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, diff --git a/m4/manywarnings.m4 b/m4/manywarnings.m4 index 53ab153..13db996 100644 --- a/m4/manywarnings.m4 +++ b/m4/manywarnings.m4 @@ -1,5 +1,5 @@ -# manywarnings.m4 serial 21 -dnl Copyright (C) 2008-2021 Free Software Foundation, Inc. +# manywarnings.m4 serial 23 +dnl Copyright (C) 2008-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -46,8 +46,7 @@ AC_DEFUN([gl_MANYWARN_ALL_GCC(C)], dnl First, check for some issues that only occur when combining multiple dnl gcc warning categories. AC_REQUIRE([AC_PROG_CC]) - if test -n "$GCC"; then - + AS_IF([test -n "$GCC"], [ dnl Check if -Wextra -Werror -Wno-missing-field-initializers is supported dnl with the current $CC $CFLAGS $CPPFLAGS. AC_CACHE_CHECK([whether -Wno-missing-field-initializers is supported], @@ -61,7 +60,7 @@ AC_DEFUN([gl_MANYWARN_ALL_GCC(C)], CFLAGS="$gl_save_CFLAGS" ]) - if test "$gl_cv_cc_nomfi_supported" = yes; then + AS_IF([test "$gl_cv_cc_nomfi_supported" = yes], [ dnl Now check whether -Wno-missing-field-initializers is needed dnl for the { 0, } construct. AC_CACHE_CHECK([whether -Wno-missing-field-initializers is needed], @@ -82,7 +81,7 @@ AC_DEFUN([gl_MANYWARN_ALL_GCC(C)], [gl_cv_cc_nomfi_needed=yes]) CFLAGS="$gl_save_CFLAGS" ]) - fi + ]) dnl Next, check if -Werror -Wuninitialized is useful with the dnl user's choice of $CFLAGS; some versions of gcc warn that it @@ -97,8 +96,7 @@ AC_DEFUN([gl_MANYWARN_ALL_GCC(C)], [gl_cv_cc_uninitialized_supported=no]) CFLAGS="$gl_save_CFLAGS" ]) - - fi + ]) # List all gcc warning categories. # To compare this list to your installed GCC's, run this Bash command: @@ -109,7 +107,7 @@ AC_DEFUN([gl_MANYWARN_ALL_GCC(C)], # <(LC_ALL=C gcc --help=warnings | sed -n 's/^ \(-[^ ]*\) .*/\1/p' | sort) $1= - for gl_manywarn_item in -fanalyzer -fno-common \ + for gl_manywarn_item in -fanalyzer -fstrict-flex-arrays \ -Wall \ -Warith-conversion \ -Wbad-function-cast \ @@ -137,6 +135,7 @@ AC_DEFUN([gl_MANYWARN_ALL_GCC(C)], -Wpointer-arith \ -Wshadow \ -Wstack-protector \ + -Wstrict-flex-arrays \ -Wstrict-overflow \ -Wstrict-prototypes \ -Wsuggest-attribute=cold \ @@ -167,23 +166,30 @@ AC_DEFUN([gl_MANYWARN_ALL_GCC(C)], # them here so that the above 'comm' command doesn't report a false match. gl_AS_VAR_APPEND([$1], [' -Warray-bounds=2']) gl_AS_VAR_APPEND([$1], [' -Wattribute-alias=2']) + gl_AS_VAR_APPEND([$1], [' -Wbidi-chars=any,ucn']) gl_AS_VAR_APPEND([$1], [' -Wformat-overflow=2']) gl_AS_VAR_APPEND([$1], [' -Wformat=2']) gl_AS_VAR_APPEND([$1], [' -Wformat-truncation=2']) gl_AS_VAR_APPEND([$1], [' -Wimplicit-fallthrough=5']) gl_AS_VAR_APPEND([$1], [' -Wshift-overflow=2']) + gl_AS_VAR_APPEND([$1], [' -Wuse-after-free=3']) gl_AS_VAR_APPEND([$1], [' -Wunused-const-variable=2']) gl_AS_VAR_APPEND([$1], [' -Wvla-larger-than=4031']) # These are needed for older GCC versions. - if test -n "$GCC"; then - case `($CC --version) 2>/dev/null` in + if test -n "$GCC" && gl_gcc_version=`($CC --version) 2>/dev/null`; then + case $gl_gcc_version in 'gcc (GCC) '[[0-3]].* | \ 'gcc (GCC) '4.[[0-7]].*) gl_AS_VAR_APPEND([$1], [' -fdiagnostics-show-option']) gl_AS_VAR_APPEND([$1], [' -funit-at-a-time']) ;; esac + case $gl_gcc_version in + 'gcc (GCC) '[[0-9]].*) + gl_AS_VAR_APPEND([$1], [' -fno-common']) + ;; + esac fi # Disable specific options as needed. @@ -195,15 +201,9 @@ AC_DEFUN([gl_MANYWARN_ALL_GCC(C)], gl_AS_VAR_APPEND([$1], [' -Wno-uninitialized']) fi - # Some warnings have too many false alarms in GCC 10.1. - # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93695 - gl_AS_VAR_APPEND([$1], [' -Wno-analyzer-double-free']) - # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94458 + # This warning have too many false alarms in GCC 11.2.1. + # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101713 gl_AS_VAR_APPEND([$1], [' -Wno-analyzer-malloc-leak']) - # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94851 - gl_AS_VAR_APPEND([$1], [' -Wno-analyzer-null-dereference']) - # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95758 - gl_AS_VAR_APPEND([$1], [' -Wno-analyzer-use-after-free']) AC_LANG_POP([C]) ]) diff --git a/m4/mbchar.m4 b/m4/mbchar.m4 index b6842bb..aed40a5 100644 --- a/m4/mbchar.m4 +++ b/m4/mbchar.m4 @@ -1,5 +1,5 @@ # mbchar.m4 serial 9 -dnl Copyright (C) 2005-2007, 2009-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2005-2007, 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/mbiter.m4 b/m4/mbiter.m4 index 0d57379..8e879dc 100644 --- a/m4/mbiter.m4 +++ b/m4/mbiter.m4 @@ -1,5 +1,5 @@ # mbiter.m4 serial 7 -dnl Copyright (C) 2005, 2008-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2005, 2008-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/mbrtowc.m4 b/m4/mbrtowc.m4 index 1d4e73d..893faff 100644 --- a/m4/mbrtowc.m4 +++ b/m4/mbrtowc.m4 @@ -1,5 +1,5 @@ -# mbrtowc.m4 serial 38 -*- coding: utf-8 -*- -dnl Copyright (C) 2001-2002, 2004-2005, 2008-2021 Free Software Foundation, +# mbrtowc.m4 serial 40 -*- coding: utf-8 -*- +dnl Copyright (C) 2001-2002, 2004-2005, 2008-2023 Free Software Foundation, dnl Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -91,20 +91,23 @@ AC_DEFUN([gl_FUNC_MBRTOWC], fi if test $REPLACE_MBSTATE_T = 1; then case "$host_os" in - mingw*) LIB_MBRTOWC= ;; + mingw*) MBRTOWC_LIB= ;; *) gl_WEAK_SYMBOLS case "$gl_cv_have_weak" in - *yes) LIB_MBRTOWC= ;; - *) LIB_MBRTOWC="$LIBPTHREAD" ;; + *yes) MBRTOWC_LIB= ;; + *) MBRTOWC_LIB="$LIBPTHREAD" ;; esac ;; esac else - LIB_MBRTOWC= + MBRTOWC_LIB= fi - dnl LIB_MBRTOWC is expected to be '-pthread' or '-lpthread' on AIX + dnl MBRTOWC_LIB is expected to be '-pthread' or '-lpthread' on AIX dnl with gcc or xlc, and empty otherwise. + AC_SUBST([MBRTOWC_LIB]) + dnl For backward compatibility. + LIB_MBRTOWC="$MBRTOWC_LIB" AC_SUBST([LIB_MBRTOWC]) ]) @@ -114,7 +117,7 @@ dnl Result is REPLACE_MBSTATE_T. dnl When this is set to 1, we replace both mbsinit() and mbrtowc(), in order to dnl avoid inconsistencies. -AC_DEFUN([gl_MBSTATE_T_BROKEN], +AC_DEFUN_ONCE([gl_MBSTATE_T_BROKEN], [ AC_REQUIRE([gl_WCHAR_H_DEFAULTS]) AC_REQUIRE([AC_CANONICAL_HOST]) @@ -709,6 +712,10 @@ dnl Test whether mbrtowc reports encoding errors in the C locale. dnl Although POSIX was never intended to allow this, the GNU C Library dnl and other implementations do it. See: dnl https://sourceware.org/bugzilla/show_bug.cgi?id=19932 +dnl POSIX has now clarified it: +dnl +dnl says: "In the POSIX locale an [EILSEQ] error cannot occur since all byte +dnl values are valid characters." AC_DEFUN([gl_MBRTOWC_C_LOCALE], [ diff --git a/m4/mbsinit.m4 b/m4/mbsinit.m4 index dc6e10d..c388a8b 100644 --- a/m4/mbsinit.m4 +++ b/m4/mbsinit.m4 @@ -1,5 +1,5 @@ # mbsinit.m4 serial 9 -dnl Copyright (C) 2008, 2010-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2008, 2010-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/mbslen.m4 b/m4/mbslen.m4 index 0801fdf..a9e0ed2 100644 --- a/m4/mbslen.m4 +++ b/m4/mbslen.m4 @@ -1,5 +1,5 @@ # mbslen.m4 serial 3 -dnl Copyright (C) 2010-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2010-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/mbsrtowcs.m4 b/m4/mbsrtowcs.m4 index cf8e962..4f2e88c 100644 --- a/m4/mbsrtowcs.m4 +++ b/m4/mbsrtowcs.m4 @@ -1,5 +1,5 @@ -# mbsrtowcs.m4 serial 14 -dnl Copyright (C) 2008-2021 Free Software Foundation, Inc. +# mbsrtowcs.m4 serial 15 +dnl Copyright (C) 2008-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -32,6 +32,13 @@ AC_DEFUN([gl_FUNC_MBSRTOWCS], *yes) ;; *) REPLACE_MBSRTOWCS=1 ;; esac + if test $REPLACE_MBSRTOWCS = 0; then + gl_MBRTOWC_C_LOCALE + case "$gl_cv_func_mbrtowc_C_locale_sans_EILSEQ" in + *yes) ;; + *) REPLACE_MBSRTOWCS=1 ;; + esac + fi fi fi ]) diff --git a/m4/mbstate_t.m4 b/m4/mbstate_t.m4 index e7fe358..dcd66b9 100644 --- a/m4/mbstate_t.m4 +++ b/m4/mbstate_t.m4 @@ -1,5 +1,5 @@ # mbstate_t.m4 serial 14 -dnl Copyright (C) 2000-2002, 2008-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2000-2002, 2008-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/mbtowc.m4 b/m4/mbtowc.m4 index 7fc74c9..02ed6eb 100644 --- a/m4/mbtowc.m4 +++ b/m4/mbtowc.m4 @@ -1,5 +1,5 @@ -# mbtowc.m4 serial 3 -dnl Copyright (C) 2011-2021 Free Software Foundation, Inc. +# mbtowc.m4 serial 5 +dnl Copyright (C) 2011-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -8,9 +8,12 @@ AC_DEFUN([gl_FUNC_MBTOWC], [ AC_REQUIRE([gl_STDLIB_H_DEFAULTS]) - AC_CHECK_FUNCS([mbtowc]) + gl_CHECK_FUNCS_ANDROID([mbtowc], [[#include ]]) if test $ac_cv_func_mbtowc = no; then HAVE_MBTOWC=0 + case "$gl_cv_onwards_func_mbtowc" in + future*) REPLACE_MBTOWC=1 ;; + esac else if false; then REPLACE_MBTOWC=1 diff --git a/m4/memchr.m4 b/m4/memchr.m4 index ca08192..4f1aed0 100644 --- a/m4/memchr.m4 +++ b/m4/memchr.m4 @@ -1,5 +1,5 @@ # memchr.m4 serial 18 -dnl Copyright (C) 2002-2004, 2009-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2002-2004, 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/mempcpy.m4 b/m4/mempcpy.m4 index f9d9ec8..612b77b 100644 --- a/m4/mempcpy.m4 +++ b/m4/mempcpy.m4 @@ -1,5 +1,5 @@ -# mempcpy.m4 serial 12 -dnl Copyright (C) 2003-2004, 2006-2007, 2009-2021 Free Software Foundation, +# mempcpy.m4 serial 14 +dnl Copyright (C) 2003-2004, 2006-2007, 2009-2023 Free Software Foundation, dnl Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -14,9 +14,12 @@ AC_DEFUN([gl_FUNC_MEMPCPY], AC_REQUIRE([AC_C_RESTRICT]) AC_REQUIRE([gl_STRING_H_DEFAULTS]) - AC_CHECK_FUNCS([mempcpy]) + gl_CHECK_FUNCS_ANDROID([mempcpy], [[#include ]]) if test $ac_cv_func_mempcpy = no; then HAVE_MEMPCPY=0 + case "$gl_cv_onwards_func_mempcpy" in + future*) REPLACE_MEMPCPY=1 ;; + esac fi ]) diff --git a/m4/minmax.m4 b/m4/minmax.m4 index e21a687..fd09846 100644 --- a/m4/minmax.m4 +++ b/m4/minmax.m4 @@ -1,5 +1,5 @@ # minmax.m4 serial 4 -dnl Copyright (C) 2005, 2009-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2005, 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/mkdir.m4 b/m4/mkdir.m4 index 031fd29..c2bc4da 100644 --- a/m4/mkdir.m4 +++ b/m4/mkdir.m4 @@ -1,6 +1,6 @@ -# serial 17 +# serial 18 -# Copyright (C) 2001, 2003-2004, 2006, 2008-2021 Free Software Foundation, Inc. +# Copyright (C) 2001, 2003-2004, 2006, 2008-2023 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -27,6 +27,8 @@ AC_DEFUN([gl_FUNC_MKDIR], [case "$host_os" in # Guess yes on Linux systems. linux-* | linux) gl_cv_func_mkdir_trailing_slash_works="guessing yes" ;; + # Guess yes on systems that emulate the Linux system calls. + midipix*) gl_cv_func_mkdir_trailing_slash_works="guessing yes" ;; # Guess yes on glibc systems. *-gnu* | gnu*) gl_cv_func_mkdir_trailing_slash_works="guessing yes" ;; # Guess yes on MSVC, no on mingw. @@ -67,6 +69,8 @@ AC_DEFUN([gl_FUNC_MKDIR], *-gnu* | gnu*) gl_cv_func_mkdir_trailing_dot_works="guessing yes" ;; # Guess yes on musl systems. *-musl*) gl_cv_func_mkdir_trailing_dot_works="guessing yes" ;; + # Guess yes on systems that emulate the Linux system calls. + midipix*) gl_cv_func_mkdir_trailing_dot_works="guessing yes" ;; # Guess no on native Windows. mingw*) gl_cv_func_mkdir_trailing_dot_works="guessing no" ;; # If we don't know, obey --enable-cross-guesses. diff --git a/m4/mkstemp.m4 b/m4/mkstemp.m4 index 9318fa6..d4a15ea 100644 --- a/m4/mkstemp.m4 +++ b/m4/mkstemp.m4 @@ -1,6 +1,6 @@ -#serial 28 +#serial 29 -# Copyright (C) 2001, 2003-2007, 2009-2021 Free Software Foundation, Inc. +# Copyright (C) 2001, 2003-2007, 2009-2023 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -58,14 +58,14 @@ AC_DEFUN([gl_FUNC_MKSTEMP], [gl_cv_func_working_mkstemp=yes], [gl_cv_func_working_mkstemp=no], [case "$host_os" in - # Guess yes on glibc systems. - *-gnu* | gnu*) gl_cv_func_working_mkstemp="guessing yes" ;; - # Guess yes on musl systems. - *-musl*) gl_cv_func_working_mkstemp="guessing yes" ;; - # Guess no on native Windows. - mingw*) gl_cv_func_working_mkstemp="guessing no" ;; - # If we don't know, obey --enable-cross-guesses. - *) gl_cv_func_working_mkstemp="$gl_cross_guess_normal" ;; + # Guess yes on glibc systems. + *-gnu* | gnu*) gl_cv_func_working_mkstemp="guessing yes" ;; + # Guess yes on musl systems. + *-musl* | midipix*) gl_cv_func_working_mkstemp="guessing yes" ;; + # Guess no on native Windows. + mingw*) gl_cv_func_working_mkstemp="guessing no" ;; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_working_mkstemp="$gl_cross_guess_normal" ;; esac ]) rm -rf conftest.mkstemp diff --git a/m4/mktime.m4 b/m4/mktime.m4 index 721189a..e9d31f3 100644 --- a/m4/mktime.m4 +++ b/m4/mktime.m4 @@ -1,5 +1,5 @@ -# serial 36 -dnl Copyright (C) 2002-2003, 2005-2007, 2009-2021 Free Software Foundation, +# serial 37 +dnl Copyright (C) 2002-2003, 2005-2007, 2009-2023 Free Software Foundation, dnl Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -82,7 +82,8 @@ spring_forward_gap () instead of "TZ=America/Vancouver" in order to detect the bug even on systems that don't support the Olson extension, or don't have the full zoneinfo tables installed. */ - putenv ("TZ=PST8PDT,M4.1.0,M10.5.0"); + if (putenv ("TZ=PST8PDT,M4.1.0,M10.5.0") != 0) + return -1; tm.tm_year = 98; tm.tm_mon = 3; @@ -170,7 +171,8 @@ year_2050_test () instead of "TZ=America/Vancouver" in order to detect the bug even on systems that don't support the Olson extension, or don't have the full zoneinfo tables installed. */ - putenv ("TZ=PST8PDT,M4.1.0,M10.5.0"); + if (putenv ("TZ=PST8PDT,M4.1.0,M10.5.0") != 0) + return -1; t = mktime (&tm); @@ -181,6 +183,25 @@ year_2050_test () || (0 < t && answer - 120 <= t && t <= answer + 120)); } +static int +indiana_test () +{ + if (putenv ("TZ=America/Indiana/Indianapolis") != 0) + return -1; + struct tm tm; + tm.tm_year = 1986 - 1900; tm.tm_mon = 4 - 1; tm.tm_mday = 28; + tm.tm_hour = 16; tm.tm_min = 24; tm.tm_sec = 50; tm.tm_isdst = 0; + time_t std = mktime (&tm); + if (! (std == 515107490 || std == 515107503)) + return 1; + + /* This platform supports TZDB, either without or with leap seconds. + Return true if GNU Bug#48085 is absent. */ + tm.tm_isdst = 1; + time_t dst = mktime (&tm); + return std - dst == 60 * 60; +} + int main () { @@ -236,7 +257,7 @@ main () result |= 16; if (! spring_forward_gap ()) result |= 32; - if (! year_2050_test ()) + if (! year_2050_test () || ! indiana_test ()) result |= 64; return result; }]])], diff --git a/m4/mmap-anon.m4 b/m4/mmap-anon.m4 index e47aa2d..d07d26e 100644 --- a/m4/mmap-anon.m4 +++ b/m4/mmap-anon.m4 @@ -1,5 +1,5 @@ # mmap-anon.m4 serial 12 -dnl Copyright (C) 2005, 2007, 2009-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2005, 2007, 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/mode_t.m4 b/m4/mode_t.m4 index 3bd4b89..82197c0 100644 --- a/m4/mode_t.m4 +++ b/m4/mode_t.m4 @@ -1,5 +1,5 @@ # mode_t.m4 serial 2 -dnl Copyright (C) 2009-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/msvc-inval.m4 b/m4/msvc-inval.m4 index 3ba5b4e..8d9d21b 100644 --- a/m4/msvc-inval.m4 +++ b/m4/msvc-inval.m4 @@ -1,5 +1,5 @@ # msvc-inval.m4 serial 1 -dnl Copyright (C) 2011-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2011-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/msvc-nothrow.m4 b/m4/msvc-nothrow.m4 index aae25ce..0263e49 100644 --- a/m4/msvc-nothrow.m4 +++ b/m4/msvc-nothrow.m4 @@ -1,5 +1,5 @@ # msvc-nothrow.m4 serial 1 -dnl Copyright (C) 2011-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2011-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/multiarch.m4 b/m4/multiarch.m4 index f1678d9..3ba5b0f 100644 --- a/m4/multiarch.m4 +++ b/m4/multiarch.m4 @@ -1,5 +1,5 @@ # multiarch.m4 serial 9 -dnl Copyright (C) 2008-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2008-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/musl.m4 b/m4/musl.m4 index 60bd62a..e28a3fe 100644 --- a/m4/musl.m4 +++ b/m4/musl.m4 @@ -1,5 +1,5 @@ -# musl.m4 serial 3 -dnl Copyright (C) 2019-2021 Free Software Foundation, Inc. +# musl.m4 serial 4 +dnl Copyright (C) 2019-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -13,6 +13,8 @@ AC_DEFUN_ONCE([gl_MUSL_LIBC], [ AC_REQUIRE([AC_CANONICAL_HOST]) case "$host_os" in - *-musl*) AC_DEFINE([MUSL_LIBC], [1], [Define to 1 on musl libc.]) ;; + *-musl* | midipix*) + AC_DEFINE([MUSL_LIBC], [1], [Define to 1 on musl libc.]) + ;; esac ]) diff --git a/m4/nanosleep.m4 b/m4/nanosleep.m4 index baebe88..e21a3e3 100644 --- a/m4/nanosleep.m4 +++ b/m4/nanosleep.m4 @@ -1,11 +1,11 @@ -# serial 40 +# serial 43 dnl From Jim Meyering. dnl Check for the nanosleep function. dnl If not found, use the supplied replacement. dnl -# Copyright (C) 1999-2001, 2003-2021 Free Software Foundation, Inc. +# Copyright (C) 1999-2001, 2003-2023 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -19,20 +19,17 @@ AC_DEFUN([gl_FUNC_NANOSLEEP], dnl Persuade glibc and Solaris to declare nanosleep. AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS]) - AC_CHECK_HEADERS_ONCE([sys/time.h]) - AC_REQUIRE([gl_FUNC_SELECT]) - AC_CHECK_DECLS_ONCE([alarm]) nanosleep_save_libs=$LIBS # Solaris 2.5.1 needs -lposix4 to get the nanosleep function. # Solaris 7 prefers the library name -lrt to the obsolescent name -lposix4. - LIB_NANOSLEEP= - AC_SUBST([LIB_NANOSLEEP]) + NANOSLEEP_LIB= + AC_SUBST([NANOSLEEP_LIB]) AC_SEARCH_LIBS([nanosleep], [rt posix4], [test "$ac_cv_search_nanosleep" = "none required" || - LIB_NANOSLEEP=$ac_cv_search_nanosleep]) + NANOSLEEP_LIB=$ac_cv_search_nanosleep]) if test "x$ac_cv_search_nanosleep" != xno; then dnl The system has a nanosleep function. @@ -53,9 +50,6 @@ AC_DEFUN([gl_FUNC_NANOSLEEP], #include #include #include - #if HAVE_SYS_TIME_H - #include - #endif #include #include #define TYPE_SIGNED(t) (! ((t) 0 < (t) -1)) @@ -106,15 +100,22 @@ AC_DEFUN([gl_FUNC_NANOSLEEP], #else /* A simpler test for native Windows. */ if (nanosleep (&ts_sleep, &ts_remaining) < 0) return 3; + /* Test for 32-bit mingw bug: negative nanosecond values do not + cause failure. */ + ts_sleep.tv_sec = 1; + ts_sleep.tv_nsec = -1; + if (nanosleep (&ts_sleep, &ts_remaining) != -1) + return 7; #endif return 0; }]])], [gl_cv_func_nanosleep=yes], - [case $? in dnl ( - 4|5|6) gl_cv_func_nanosleep='no (mishandles large arguments)';; dnl ( - *) gl_cv_func_nanosleep=no;; + [case $? in + 4|5|6) gl_cv_func_nanosleep='no (mishandles large arguments)' ;; + 7) gl_cv_func_nanosleep='no (mishandles negative tv_nsec)' ;; + *) gl_cv_func_nanosleep=no ;; esac], - [case "$host_os" in dnl (( + [case "$host_os" in linux*) # Guess it halfway works when the kernel is Linux. gl_cv_func_nanosleep='guessing no (mishandles large arguments)' ;; mingw*) # Guess no on native Windows. @@ -135,15 +136,6 @@ AC_DEFUN([gl_FUNC_NANOSLEEP], AC_DEFINE([HAVE_BUG_BIG_NANOSLEEP], [1], [Define to 1 if nanosleep mishandles large arguments.]) ;; - *) - # The replacement uses select(). Add $LIBSOCKET to $LIB_NANOSLEEP. - for ac_lib in $LIBSOCKET; do - case " $LIB_NANOSLEEP " in - *" $ac_lib "*) ;; - *) LIB_NANOSLEEP="$LIB_NANOSLEEP $ac_lib";; - esac - done - ;; esac ;; esac @@ -151,11 +143,8 @@ AC_DEFUN([gl_FUNC_NANOSLEEP], HAVE_NANOSLEEP=0 fi LIBS=$nanosleep_save_libs -]) -# Prerequisites of lib/nanosleep.c. -AC_DEFUN([gl_PREREQ_NANOSLEEP], -[ - AC_CHECK_HEADERS_ONCE([sys/select.h]) - gl_PREREQ_SIG_HANDLER_H + # For backward compatibility. + LIB_NANOSLEEP="$NANOSLEEP_LIB" + AC_SUBST([LIB_NANOSLEEP]) ]) diff --git a/m4/netinet_in_h.m4 b/m4/netinet_in_h.m4 index c555596..7115419 100644 --- a/m4/netinet_in_h.m4 +++ b/m4/netinet_in_h.m4 @@ -1,5 +1,5 @@ -# netinet_in_h.m4 serial 5 -dnl Copyright (C) 2006-2021 Free Software Foundation, Inc. +# netinet_in_h.m4 serial 6 +dnl Copyright (C) 2006-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -14,9 +14,9 @@ AC_DEFUN([gl_HEADER_NETINET_IN], [gl_cv_header_netinet_in_h_selfcontained=no]) ]) if test $gl_cv_header_netinet_in_h_selfcontained = yes; then - NETINET_IN_H='' + GL_GENERATE_NETINET_IN_H=false else - NETINET_IN_H='netinet/in.h' + GL_GENERATE_NETINET_IN_H=true AC_CHECK_HEADERS([netinet/in.h]) gl_CHECK_NEXT_HEADERS([netinet/in.h]) if test $ac_cv_header_netinet_in_h = yes; then @@ -26,6 +26,4 @@ AC_DEFUN([gl_HEADER_NETINET_IN], fi AC_SUBST([HAVE_NETINET_IN_H]) fi - AC_SUBST([NETINET_IN_H]) - AM_CONDITIONAL([GL_GENERATE_NETINET_IN_H], [test -n "$NETINET_IN_H"]) ]) diff --git a/m4/nl_langinfo.m4 b/m4/nl_langinfo.m4 index 6ad32c8..7648d52 100644 --- a/m4/nl_langinfo.m4 +++ b/m4/nl_langinfo.m4 @@ -1,5 +1,5 @@ -# nl_langinfo.m4 serial 8 -dnl Copyright (C) 2009-2021 Free Software Foundation, Inc. +# nl_langinfo.m4 serial 11 +dnl Copyright (C) 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -8,7 +8,7 @@ AC_DEFUN([gl_FUNC_NL_LANGINFO], [ AC_REQUIRE([gl_LANGINFO_H_DEFAULTS]) AC_REQUIRE([gl_LANGINFO_H]) - AC_CHECK_FUNCS_ONCE([nl_langinfo]) + gl_CHECK_FUNCS_ANDROID([nl_langinfo], [[#include ]]) AC_REQUIRE([AC_CANONICAL_HOST]) AC_REQUIRE([gl_FUNC_SETLOCALE_NULL]) AC_REQUIRE([gl_PTHREADLIB]) @@ -60,9 +60,12 @@ AC_DEFUN([gl_FUNC_NL_LANGINFO], fi else HAVE_NL_LANGINFO=0 + case "$gl_cv_onwards_func_nl_langinfo" in + future*) REPLACE_NL_LANGINFO=1 ;; + esac fi if test $HAVE_NL_LANGINFO = 0 || test $HAVE_LANGINFO_CODESET = 0; then - LIB_NL_LANGINFO="$LIB_SETLOCALE_NULL" + LIB_NL_LANGINFO="$SETLOCALE_NULL_LIB" else LIB_NL_LANGINFO= fi diff --git a/m4/nocrash.m4 b/m4/nocrash.m4 index 27412cd..6a76638 100644 --- a/m4/nocrash.m4 +++ b/m4/nocrash.m4 @@ -1,5 +1,5 @@ # nocrash.m4 serial 5 -dnl Copyright (C) 2005, 2009-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2005, 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/nstrftime.m4 b/m4/nstrftime.m4 index b510554..04c0b63 100644 --- a/m4/nstrftime.m4 +++ b/m4/nstrftime.m4 @@ -1,6 +1,6 @@ # serial 37 -# Copyright (C) 1996-1997, 1999-2007, 2009-2021 Free Software Foundation, Inc. +# Copyright (C) 1996-1997, 1999-2007, 2009-2023 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, diff --git a/m4/nullptr.m4 b/m4/nullptr.m4 new file mode 100644 index 0000000..1f8ab51 --- /dev/null +++ b/m4/nullptr.m4 @@ -0,0 +1,62 @@ +# Check for nullptr that conforms to C23 and C++11. + +dnl Copyright 2023 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. + +AC_DEFUN([gl_NULLPTR], +[ + m4_provide_if([AC_PROG_CC], + [AC_LANG_PUSH([C]) + AC_CACHE_CHECK([for C nullptr], [gl_cv_c_nullptr], + [AC_COMPILE_IFELSE( + [AC_LANG_SOURCE([[int *p = nullptr;]])], + [gl_cv_c_nullptr=yes], + [gl_cv_c_nullptr=no])]) + gl_c_nullptr=$gl_cv_c_nullptr + AC_LANG_POP([C])], + [gl_c_nullptr=no]) + if test "$gl_c_nullptr" = yes; then + AC_DEFINE([HAVE_C_NULLPTR], [1], + [Define to 1 if C nullptr is known to work.]) + fi + + m4_provide_if([AC_PROG_CXX], + [AC_LANG_PUSH([C++]) + AC_CACHE_CHECK([for C++ nullptr], [gl_cv_cxx_nullptr], + [AC_COMPILE_IFELSE( + [AC_LANG_SOURCE([[int *p = nullptr;]])], + [gl_cv_cxx_nullptr=yes], + [AC_COMPILE_IFELSE( + [AC_LANG_SOURCE([[#include + int *p = nullptr;]])], + [gl_cv_cxx_nullptr="yes, but it is a macro"], + [gl_cv_cxx_nullptr=no])])]) + AS_CASE([$gl_cv_cxx_nullptr], + [yes], [gl_have_cxx_nullptr=1], + [yes*], [gl_have_cxx_nullptr="(-1)"], + [gl_have_cxx_nullptr=0]) + AC_DEFINE_UNQUOTED([HAVE_CXX_NULLPTR], [$gl_have_cxx_nullptr], + [Define to 1 if C++ nullptr works, 0 if not, + (-1) if it is a macro.]) + AC_LANG_POP([C++])]) +]) + + AH_VERBATIM([zznullptr], +[#if defined __cplusplus && HAVE_CXX_NULLPTR < 0 +# include +# undef/**/nullptr +#endif +#ifndef nullptr +# if !defined __cplusplus && !defined HAVE_C_NULLPTR +# define nullptr ((void *) 0) +# elif defined __cplusplus && HAVE_CXX_NULLPTR <= 0 +# if 3 <= __GNUG__ +# define nullptr __null +# else +# define nullptr 0L +# endif +# endif +#endif]) +]) diff --git a/m4/off_t.m4 b/m4/off_t.m4 index bdec43c..880f347 100644 --- a/m4/off_t.m4 +++ b/m4/off_t.m4 @@ -1,5 +1,5 @@ # off_t.m4 serial 1 -dnl Copyright (C) 2012-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2012-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/open-cloexec.m4 b/m4/open-cloexec.m4 index 542a90f..fd572fc 100644 --- a/m4/open-cloexec.m4 +++ b/m4/open-cloexec.m4 @@ -1,6 +1,6 @@ # Test whether O_CLOEXEC is defined. -dnl Copyright 2017-2021 Free Software Foundation, Inc. +dnl Copyright 2017-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/open-slash.m4 b/m4/open-slash.m4 index e619039..1f731f8 100644 --- a/m4/open-slash.m4 +++ b/m4/open-slash.m4 @@ -1,5 +1,5 @@ # open-slash.m4 serial 2 -dnl Copyright (C) 2007-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2007-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/open.m4 b/m4/open.m4 index c634386..94fa2bb 100644 --- a/m4/open.m4 +++ b/m4/open.m4 @@ -1,5 +1,5 @@ # open.m4 serial 15 -dnl Copyright (C) 2007-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2007-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/pathmax.m4 b/m4/pathmax.m4 index e67c656..6d47d2c 100644 --- a/m4/pathmax.m4 +++ b/m4/pathmax.m4 @@ -1,5 +1,5 @@ # pathmax.m4 serial 11 -dnl Copyright (C) 2002-2003, 2005-2006, 2009-2021 Free Software Foundation, +dnl Copyright (C) 2002-2003, 2005-2006, 2009-2023 Free Software Foundation, dnl Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, diff --git a/m4/perl.m4 b/m4/perl.m4 new file mode 100644 index 0000000..d9ff790 --- /dev/null +++ b/m4/perl.m4 @@ -0,0 +1,53 @@ +# serial 11 + +dnl From Jim Meyering. +dnl Find a new-enough version of Perl. + +# Copyright (C) 1998-2001, 2003-2004, 2007, 2009-2023 Free Software Foundation, +# Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +AC_DEFUN([gl_PERL], +[ + dnl FIXME: don't hard-code 5.005 +AC_CACHE_CHECK([for Perl 5.005 or newer], + [gl_cv_prog_perl], + [ + if test "${PERL+set}" = set; then + # 'PERL' is set in the user's environment. + candidate_perl_names="$PERL" + perl_specified=yes + else + candidate_perl_names='perl perl5' + perl_specified=no + fi + + gl_cv_prog_perl=no + for perl in $candidate_perl_names; do + # Run test in a subshell; some versions of sh will print an error if + # an executable is not found, even if stderr is redirected. + if ( $perl -e 'require 5.005; use File::Compare; use warnings;' ) > /dev/null 2>&1; then + gl_cv_prog_perl=$perl + break + fi + done + ]) + +if test "$gl_cv_prog_perl" != no; then + PERL=$gl_cv_prog_perl +else + PERL="$am_missing_run perl" + AC_MSG_WARN([ +WARNING: You don't seem to have perl5.005 or newer installed, or you lack + a usable version of the Perl File::Compare module. As a result, + you may be unable to run a few tests or to regenerate certain + files if you modify the sources from which they are derived. +] ) +fi + +AC_SUBST([PERL]) + +]) diff --git a/m4/perror.m4 b/m4/perror.m4 index 9f2ac2d..9842b24 100644 --- a/m4/perror.m4 +++ b/m4/perror.m4 @@ -1,5 +1,5 @@ -# perror.m4 serial 9 -dnl Copyright (C) 2008-2021 Free Software Foundation, Inc. +# perror.m4 serial 12 +dnl Copyright (C) 2008-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -10,12 +10,12 @@ AC_DEFUN([gl_FUNC_PERROR], AC_REQUIRE([gl_HEADER_ERRNO_H]) AC_REQUIRE([gl_FUNC_STRERROR_R]) AC_REQUIRE([gl_FUNC_STRERROR_0]) - AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles + AC_REQUIRE([AC_CANONICAL_HOST]) dnl We intentionally do not check for the broader REPLACE_STRERROR_R, dnl since on glibc systems, strerror_r is replaced only for signature dnl issues, and perror is just fine. Rather, we only want to dnl replace perror if strerror_r was replaced for a content fix. - if test "$ERRNO_H:$REPLACE_STRERROR_0" != :0; then + if test "$GL_GENERATE_ERRNO_H:$REPLACE_STRERROR_0" != false:0; then dnl The system's perror() cannot know about the new errno values we add dnl to , or any fix for strerror(0). Replace it. REPLACE_PERROR=1 @@ -48,12 +48,12 @@ AC_DEFUN([gl_FUNC_PERROR], rm -rf conftest.txt1 conftest.txt2], [gl_cv_func_perror_works=no], [case "$host_os" in - # Guess yes on musl systems. - *-musl*) gl_cv_func_perror_works="guessing yes" ;; - # Guess yes on native Windows. - mingw*) gl_cv_func_perror_works="guessing yes" ;; - # Otherwise obey --enable-cross-guesses. - *) gl_cv_func_perror_works="$gl_cross_guess_normal" ;; + # Guess yes on musl systems. + *-musl* | midipix*) gl_cv_func_perror_works="guessing yes" ;; + # Guess yes on native Windows. + mingw*) gl_cv_func_perror_works="guessing yes" ;; + # Otherwise obey --enable-cross-guesses. + *) gl_cv_func_perror_works="$gl_cross_guess_normal" ;; esac ]) ]) @@ -68,4 +68,9 @@ AC_DEFUN([gl_FUNC_PERROR], REPLACE_PERROR=1 ;; esac + dnl Does perror clobber the strerror buffer? + case "$host_os" in + # Yes on Android 11. + linux*-android*) REPLACE_PERROR=1 ;; + esac ]) diff --git a/m4/pipe.m4 b/m4/pipe.m4 index 89d666d..1ad6688 100644 --- a/m4/pipe.m4 +++ b/m4/pipe.m4 @@ -1,5 +1,5 @@ # pipe.m4 serial 2 -dnl Copyright (C) 2010-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2010-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/printf.m4 b/m4/printf.m4 index 284c7c5..efb85a5 100644 --- a/m4/printf.m4 +++ b/m4/printf.m4 @@ -1,5 +1,5 @@ -# printf.m4 serial 73 -dnl Copyright (C) 2003, 2007-2021 Free Software Foundation, Inc. +# printf.m4 serial 82 +dnl Copyright (C) 2003, 2007-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -63,7 +63,7 @@ changequote(,)dnl # Guess yes on glibc systems. *-gnu* | gnu*) gl_cv_func_printf_sizes_c99="guessing yes";; # Guess yes on musl systems. - *-musl*) gl_cv_func_printf_sizes_c99="guessing yes";; + *-musl* | midipix*) gl_cv_func_printf_sizes_c99="guessing yes";; # Guess yes on FreeBSD >= 5. freebsd[1-4].*) gl_cv_func_printf_sizes_c99="guessing no";; freebsd* | kfreebsd*) gl_cv_func_printf_sizes_c99="guessing yes";; @@ -101,6 +101,92 @@ changequote([,])dnl ]) ]) +dnl Test whether the *printf family of functions supports the 'w8', 'w16', +dnl 'w32', 'w64', 'wf8', 'wf16', 'wf32', 'wf64' size specifiers. (ISO C23) +dnl Result is gl_cv_func_printf_sizes_c23. + +AC_DEFUN([gl_PRINTF_SIZES_C23], +[ + AC_REQUIRE([AC_PROG_CC]) + AC_REQUIRE([gl_AC_HEADER_STDINT_H]) + AC_REQUIRE([gl_AC_HEADER_INTTYPES_H]) + AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles + AC_CACHE_CHECK([whether printf supports size specifiers as in C23], + [gl_cv_func_printf_sizes_c23], + [ + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ +#include +#include +#include +#include +#if HAVE_STDINT_H_WITH_UINTMAX +# include +#endif +#if HAVE_INTTYPES_H_WITH_UINTMAX +# include +#endif +static char buf[100]; +int main () +{ + int result = 0; + buf[0] = '\0'; + if (sprintf (buf, "%w8u %d", (uint8_t) 123, 33, 44, 55) < 0 + || strcmp (buf, "123 33") != 0) + result |= 1; + buf[0] = '\0'; + if (sprintf (buf, "%wf8u %d", (uint_fast8_t) 123, 33, 44, 55) < 0 + || strcmp (buf, "123 33") != 0) + result |= 1; + buf[0] = '\0'; + if (sprintf (buf, "%w16u %d", (uint16_t) 12345, 33, 44, 55) < 0 + || strcmp (buf, "12345 33") != 0) + result |= 2; + buf[0] = '\0'; + if (sprintf (buf, "%wf16u %d", (uint_fast16_t) 12345, 33, 44, 55) < 0 + || strcmp (buf, "12345 33") != 0) + result |= 2; + buf[0] = '\0'; + if (sprintf (buf, "%w32u %d", (uint32_t) 12345671, 33, 44, 55) < 0 + || strcmp (buf, "12345671 33") != 0) + result |= 4; + buf[0] = '\0'; + if (sprintf (buf, "%wf32u %d", (uint_fast32_t) 12345671, 33, 44, 55) < 0 + || strcmp (buf, "12345671 33") != 0) + result |= 4; +#if HAVE_STDINT_H_WITH_UINTMAX || HAVE_INTTYPES_H_WITH_UINTMAX + buf[0] = '\0'; + if (sprintf (buf, "%w64u %d", (uint64_t) 12345671, 33, 44, 55) < 0 + || strcmp (buf, "12345671 33") != 0) + result |= 8; + buf[0] = '\0'; + if (sprintf (buf, "%wf64u %d", (uint_fast64_t) 12345671, 33, 44, 55) < 0 + || strcmp (buf, "12345671 33") != 0) + result |= 8; +#else + result |= 8; +#endif + return result; +}]])], + [gl_cv_func_printf_sizes_c23=yes], + [gl_cv_func_printf_sizes_c23=no], + [ + case "$host_os" in + # Guess no on glibc systems. + *-gnu* | gnu*) gl_cv_func_printf_sizes_c23="guessing no";; + # Guess no on musl systems. + *-musl* | midipix*) gl_cv_func_printf_sizes_c23="guessing no";; + # Guess no on Android. + linux*-android*) gl_cv_func_printf_sizes_c23="guessing no";; + # Guess no on native Windows. + mingw*) gl_cv_func_printf_sizes_c23="guessing no";; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_printf_sizes_c23="$gl_cross_guess_normal";; + esac + ]) + ]) +]) + dnl Test whether the *printf family of functions supports 'long double' dnl arguments together with the 'L' size specifier. (ISO C99, POSIX:2001) dnl Result is gl_cv_func_printf_long_double. @@ -244,7 +330,7 @@ changequote(,)dnl # Guess yes on glibc systems. *-gnu* | gnu*) gl_cv_func_printf_infinite="guessing yes";; # Guess yes on musl systems. - *-musl*) gl_cv_func_printf_infinite="guessing yes";; + *-musl* | midipix*) gl_cv_func_printf_infinite="guessing yes";; # Guess yes on FreeBSD >= 6. freebsd[1-5].*) gl_cv_func_printf_infinite="guessing no";; freebsd* | kfreebsd*) gl_cv_func_printf_infinite="guessing yes";; @@ -467,7 +553,7 @@ changequote(,)dnl # Guess yes on glibc systems. *-gnu* | gnu*) gl_cv_func_printf_infinite_long_double="guessing yes";; # Guess yes on musl systems. - *-musl*) gl_cv_func_printf_infinite_long_double="guessing yes";; + *-musl* | midipix*) gl_cv_func_printf_infinite_long_double="guessing yes";; # Guess yes on FreeBSD >= 6. freebsd[1-5].*) gl_cv_func_printf_infinite_long_double="guessing no";; freebsd* | kfreebsd*) gl_cv_func_printf_infinite_long_double="guessing yes";; @@ -591,7 +677,7 @@ int main () [gl_cv_func_printf_directive_a="guessing no"]) ;; # Guess yes on musl systems. - *-musl*) gl_cv_func_printf_directive_a="guessing yes";; + *-musl* | midipix*) gl_cv_func_printf_directive_a="guessing yes";; # Guess no on Android. linux*-android*) gl_cv_func_printf_directive_a="guessing no";; # Guess no on native Windows. @@ -603,6 +689,116 @@ int main () ]) ]) +dnl Test whether the *printf family of functions supports the 'b' conversion +dnl specifier for binary output of integers. +dnl (ISO C23) +dnl Result is gl_cv_func_printf_directive_b. + +AC_DEFUN([gl_PRINTF_DIRECTIVE_B], +[ + AC_REQUIRE([AC_PROG_CC]) + AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles + AC_CACHE_CHECK([whether printf supports the 'b' directive], + [gl_cv_func_printf_directive_b], + [ + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ +#include +#include +static char buf[100]; +int main () +{ + int result = 0; + if (sprintf (buf, "%b %d", 12345, 33, 44, 55) < 0 + || strcmp (buf, "11000000111001 33") != 0) + result |= 1; + return result; +}]])], + [gl_cv_func_printf_directive_b=yes], + [gl_cv_func_printf_directive_b=no], + [ + case "$host_os" in + # Guess yes on glibc >= 2.35 systems. + *-gnu* | gnu*) + AC_EGREP_CPP([Lucky], [ + #include + #ifdef __GNU_LIBRARY__ + #if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 35) || (__GLIBC__ > 2) + Lucky user + #endif + #endif + ], + [gl_cv_func_printf_directive_uppercase_b="guessing yes"], + [gl_cv_func_printf_directive_uppercase_b="guessing no"]) + ;; + # Guess no on musl systems. + *-musl* | midipix*) gl_cv_func_printf_directive_b="guessing no";; + # Guess no on Android. + linux*-android*) gl_cv_func_printf_directive_b="guessing no";; + # Guess no on native Windows. + mingw*) gl_cv_func_printf_directive_b="guessing no";; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_printf_directive_b="$gl_cross_guess_normal";; + esac + ]) + ]) +]) + +dnl Test whether the *printf family of functions supports the 'B' conversion +dnl specifier for binary output of integers. +dnl (GNU, encouraged by ISO C23 § 7.23.6.1) +dnl Result is gl_cv_func_printf_directive_uppercase_b. + +AC_DEFUN([gl_PRINTF_DIRECTIVE_UPPERCASE_B], +[ + AC_REQUIRE([AC_PROG_CC]) + AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles + AC_CACHE_CHECK([whether printf supports the 'B' directive], + [gl_cv_func_printf_directive_uppercase_b], + [ + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ +#include +#include +static char buf[100]; +int main () +{ + int result = 0; + if (sprintf (buf, "%#B %d", 12345, 33, 44, 55) < 0 + || strcmp (buf, "0B11000000111001 33") != 0) + result |= 1; + return result; +}]])], + [gl_cv_func_printf_directive_uppercase_b=yes], + [gl_cv_func_printf_directive_uppercase_b=no], + [ + case "$host_os" in + # Guess yes on glibc >= 2.35 systems. + *-gnu* | gnu*) + AC_EGREP_CPP([Lucky], [ + #include + #ifdef __GNU_LIBRARY__ + #if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 35) || (__GLIBC__ > 2) + Lucky user + #endif + #endif + ], + [gl_cv_func_printf_directive_uppercase_b="guessing yes"], + [gl_cv_func_printf_directive_uppercase_b="guessing no"]) + ;; + # Guess no on musl systems. + *-musl* | midipix*) gl_cv_func_printf_directive_uppercase_b="guessing no";; + # Guess no on Android. + linux*-android*) gl_cv_func_printf_directive_uppercase_b="guessing no";; + # Guess no on native Windows. + mingw*) gl_cv_func_printf_directive_uppercase_b="guessing no";; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_printf_directive_uppercase_b="$gl_cross_guess_normal";; + esac + ]) + ]) +]) + dnl Test whether the *printf family of functions supports the %F format dnl directive. (ISO C99, POSIX:2001) dnl Result is gl_cv_func_printf_directive_f. @@ -643,7 +839,7 @@ changequote(,)dnl # Guess yes on glibc systems. *-gnu* | gnu*) gl_cv_func_printf_directive_f="guessing yes";; # Guess yes on musl systems. - *-musl*) gl_cv_func_printf_directive_f="guessing yes";; + *-musl* | midipix*) gl_cv_func_printf_directive_f="guessing yes";; # Guess yes on FreeBSD >= 6. freebsd[1-5].*) gl_cv_func_printf_directive_f="guessing no";; freebsd* | kfreebsd*) gl_cv_func_printf_directive_f="guessing yes";; @@ -829,11 +1025,58 @@ changequote([,])dnl ]) ]) +dnl Test whether the *printf family of functions supports the %lc format +dnl directive and in particular, when the argument is a null wide character, +dnl whether the functions don't produce a NUL byte. +dnl Result is gl_cv_func_printf_directive_lc. + +AC_DEFUN([gl_PRINTF_DIRECTIVE_LC], +[ + AC_REQUIRE([AC_PROG_CC]) + AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles + AC_CACHE_CHECK([whether printf supports the 'lc' directive correctly], + [gl_cv_func_printf_directive_lc], + [ + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ +#include +#include +#include +int main () +{ + int result = 0; + char buf[100]; + /* This test fails on glibc 2.35, FreeBSD 13.1, NetBSD 9.0, OpenBSD 7.2, + macOS 12.5, AIX 7.2, Solaris 11.4. + glibc 2.35 bug: */ + { + buf[0] = '\0'; + if (sprintf (buf, "%lc%lc%lc", (wint_t) 'a', (wint_t) 0, (wint_t) 'z') < 0 + || strcmp (buf, "az") != 0) + result |= 1; + } + return result; +}]])], + [gl_cv_func_printf_directive_lc=yes], + [gl_cv_func_printf_directive_lc=no], + [ +changequote(,)dnl + case "$host_os" in + # Guess yes on musl libc. + *-musl* | midipix*) gl_cv_func_printf_directive_lc="guessing yes";; + # Guess no otherwise. + *) gl_cv_func_printf_directive_lc="guessing no";; + esac +changequote([,])dnl + ]) + ]) +]) + dnl Test whether the *printf family of functions supports POSIX/XSI format dnl strings with positions. (POSIX:2001) dnl Result is gl_cv_func_printf_positions. -AC_DEFUN([gl_PRINTF_POSITIONS], +AC_DEFUN_ONCE([gl_PRINTF_POSITIONS], [ AC_REQUIRE([AC_PROG_CC]) AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles @@ -990,18 +1233,18 @@ int main () [ changequote(,)dnl case "$host_os" in - # Guess yes on glibc systems. - *-gnu* | gnu*) gl_cv_func_printf_flag_zero="guessing yes";; - # Guess yes on musl systems. - *-musl*) gl_cv_func_printf_flag_zero="guessing yes";; - # Guess yes on BeOS. - beos*) gl_cv_func_printf_flag_zero="guessing yes";; - # Guess no on Android. - linux*-android*) gl_cv_func_printf_flag_zero="guessing no";; - # Guess no on native Windows. - mingw*) gl_cv_func_printf_flag_zero="guessing no";; - # If we don't know, obey --enable-cross-guesses. - *) gl_cv_func_printf_flag_zero="$gl_cross_guess_normal";; + # Guess yes on glibc systems. + *-gnu* | gnu*) gl_cv_func_printf_flag_zero="guessing yes";; + # Guess yes on musl systems. + *-musl* | midipix*) gl_cv_func_printf_flag_zero="guessing yes";; + # Guess yes on BeOS. + beos*) gl_cv_func_printf_flag_zero="guessing yes";; + # Guess no on Android. + linux*-android*) gl_cv_func_printf_flag_zero="guessing no";; + # Guess no on native Windows. + mingw*) gl_cv_func_printf_flag_zero="guessing no";; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_printf_flag_zero="$gl_cross_guess_normal";; esac changequote([,])dnl ]) @@ -1239,7 +1482,7 @@ changequote(,)dnl # Guess yes on glibc systems. *-gnu* | gnu*) gl_cv_func_snprintf_truncation_c99="guessing yes";; # Guess yes on musl systems. - *-musl*) gl_cv_func_snprintf_truncation_c99="guessing yes";; + *-musl* | midipix*) gl_cv_func_snprintf_truncation_c99="guessing yes";; # Guess yes on FreeBSD >= 5. freebsd[1-4].*) gl_cv_func_snprintf_truncation_c99="guessing no";; freebsd* | kfreebsd*) gl_cv_func_snprintf_truncation_c99="guessing yes";; @@ -1344,7 +1587,7 @@ changequote(,)dnl # Guess yes on glibc systems. *-gnu* | gnu*) gl_cv_func_snprintf_retval_c99="guessing yes";; # Guess yes on musl systems. - *-musl*) gl_cv_func_snprintf_retval_c99="guessing yes";; + *-musl* | midipix*) gl_cv_func_snprintf_retval_c99="guessing yes";; # Guess yes on FreeBSD >= 5. freebsd[1-4].*) gl_cv_func_snprintf_retval_c99="guessing no";; freebsd* | kfreebsd*) gl_cv_func_snprintf_retval_c99="guessing yes";; @@ -1447,7 +1690,7 @@ int main () ;; changequote(,)dnl # Guess yes on musl systems. - *-musl*) gl_cv_func_snprintf_directive_n="guessing yes";; + *-musl* | midipix*) gl_cv_func_snprintf_directive_n="guessing yes";; # Guess yes on FreeBSD >= 5. freebsd[1-4].*) gl_cv_func_snprintf_directive_n="guessing no";; freebsd* | kfreebsd*) gl_cv_func_snprintf_directive_n="guessing yes";; @@ -1604,7 +1847,7 @@ changequote(,)dnl # Guess yes on glibc systems. *-gnu* | gnu*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; # Guess yes on musl systems. - *-musl*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; + *-musl* | midipix*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; # Guess yes on FreeBSD >= 5. freebsd[1-4].*) gl_cv_func_vsnprintf_zerosize_c99="guessing no";; freebsd* | kfreebsd*) gl_cv_func_vsnprintf_zerosize_c99="guessing yes";; @@ -1641,88 +1884,227 @@ changequote([,])dnl ]) ]) +dnl Test whether the swprintf function works correctly when it produces output +dnl that contains null wide characters. +dnl Result is gl_cv_func_swprintf_works. + +AC_DEFUN([gl_SWPRINTF_WORKS], +[ + AC_REQUIRE([AC_PROG_CC]) + AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles + AC_CHECK_FUNCS_ONCE([swprintf]) + AC_CACHE_CHECK([whether swprintf works], + [gl_cv_func_swprintf_works], + [ + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ +#ifndef __USE_MINGW_ANSI_STDIO +# define __USE_MINGW_ANSI_STDIO 1 +#endif +#include +#include +int main() +{ + int result = 0; + { /* This test fails on musl, FreeBSD, NetBSD, OpenBSD, macOS, AIX. */ + wchar_t buf[5] = { 0xBEEF, 0xBEEF, 0xBEEF, 0xBEEF, 0xBEEF }; + int ret = swprintf (buf, 4, L"%cz", '\0'); + /* Expected result: + ret = 2, buf[0] = 0x0, buf[1] = 0x7a, buf[2] = 0x0, buf[3] = 0xbeef + musl libc 1.2.3: + ret = 2, buf[0] = 0x0, buf[1] = 0x0, buf[2] = 0x0, buf[3] = 0x0 + Reported at . + FreeBSD 13.1, NetBSD 9.0, OpenBSD 7.2, macOS 12.5, AIX 7.2: + ret = 2, buf[0] = 0x0, buf[1] = 0xbeef, buf[2] = 0xbeef, buf[3] = 0xbeef + */ + if (ret < 0 || buf[1] != 'z') + result |= 1; + } + { /* This test fails on mingw. */ + wchar_t buf[2]; + int ret = swprintf (buf, 2, L"%lc", (wint_t)0); + /* Expected: ret = 1 + mingw: ret = 0 + */ + if (ret != 1) + result |= 2; + } + return result; +}]])], + [gl_cv_func_swprintf_works=yes], + [gl_cv_func_swprintf_works=no], + [case "$host_os" in + # Guess yes on glibc systems. + *-gnu* | gnu*) gl_cv_func_swprintf_works="guessing yes";; + # Guess no on musl systems. + *-musl* | midipix*) gl_cv_func_swprintf_works="guessing yes";; + # Guess no on FreeBSD, NetBSD, OpenBSD, macOS, AIX. + freebsd* | midnightbsd* | netbsd* | openbsd* | darwin* | aix*) + gl_cv_func_swprintf_works="guessing no";; + # Guess no on native Windows. + mingw* | pw*) gl_cv_func_swprintf_works="guessing no";; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_swprintf_works="$gl_cross_guess_normal";; + esac + ]) + ]) +]) + +dnl Test whether the *wprintf family of functions supports the 'a' and 'A' +dnl conversion specifier for hexadecimal output of 'long double' numbers. +dnl (ISO C99, POSIX:2001) +dnl Result is gl_cv_func_swprintf_directive_la. + +AC_DEFUN([gl_SWPRINTF_DIRECTIVE_LA], +[ + AC_REQUIRE([AC_PROG_CC]) + AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles + AC_CACHE_CHECK([whether swprintf supports the 'La' and 'LA' directives], + [gl_cv_func_swprintf_directive_la], + [ + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ +#include +#include +static wchar_t buf[100]; +int main () +{ + int result = 0; + /* This catches a glibc 2.15 and Haiku 2022 bug. */ + if (swprintf (buf, sizeof (buf) / sizeof (wchar_t), + L"%La %d", 3.1416015625L, 33, 44, 55) < 0 + || (wcscmp (buf, L"0x1.922p+1 33") != 0 + && wcscmp (buf, L"0x3.244p+0 33") != 0 + && wcscmp (buf, L"0x6.488p-1 33") != 0 + && wcscmp (buf, L"0xc.91p-2 33") != 0)) + result |= 1; + return result; +}]])], + [gl_cv_func_swprintf_directive_la=yes], + [gl_cv_func_swprintf_directive_la=no], + [case "$host_os" in + # Guess yes on glibc >= 2.17 systems. + *-gnu* | gnu*) + AC_EGREP_CPP([Unlucky], [ + #include + #ifdef __GNU_LIBRARY__ + #if ((__GLIBC__ == 2 && __GLIBC_MINOR__ >= 16) || (__GLIBC__ > 2)) && !defined __UCLIBC__ + Unlucky + #endif + #endif + ], + [gl_cv_func_swprintf_directive_la="guessing yes"], + [gl_cv_func_swprintf_directive_la="guessing no"]) + ;; + # Guess yes on musl systems. + *-musl* | midipix*) gl_cv_func_swprintf_directive_la="guessing yes";; + # Guess yes on Android. + linux*-android*) gl_cv_func_swprintf_directive_la="guessing no";; + # Guess yes on native Windows. + mingw*) gl_cv_func_swprintf_directive_la="guessing no";; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_swprintf_directive_la="$gl_cross_guess_normal";; + esac + ]) + ]) +]) + dnl The results of these tests on various platforms are: dnl dnl 1 = gl_PRINTF_SIZES_C99 -dnl 2 = gl_PRINTF_LONG_DOUBLE -dnl 3 = gl_PRINTF_INFINITE -dnl 4 = gl_PRINTF_INFINITE_LONG_DOUBLE -dnl 5 = gl_PRINTF_DIRECTIVE_A -dnl 6 = gl_PRINTF_DIRECTIVE_F -dnl 7 = gl_PRINTF_DIRECTIVE_N -dnl 8 = gl_PRINTF_DIRECTIVE_LS -dnl 9 = gl_PRINTF_POSITIONS -dnl 10 = gl_PRINTF_FLAG_GROUPING -dnl 11 = gl_PRINTF_FLAG_LEFTADJUST -dnl 12 = gl_PRINTF_FLAG_ZERO -dnl 13 = gl_PRINTF_PRECISION -dnl 14 = gl_PRINTF_ENOMEM -dnl 15 = gl_SNPRINTF_PRESENCE -dnl 16 = gl_SNPRINTF_TRUNCATION_C99 -dnl 17 = gl_SNPRINTF_RETVAL_C99 -dnl 18 = gl_SNPRINTF_DIRECTIVE_N -dnl 19 = gl_SNPRINTF_SIZE1 -dnl 20 = gl_VSNPRINTF_ZEROSIZE_C99 +dnl 2 = gl_PRINTF_SIZES_C23 +dnl 3 = gl_PRINTF_LONG_DOUBLE +dnl 4 = gl_PRINTF_INFINITE +dnl 5 = gl_PRINTF_INFINITE_LONG_DOUBLE +dnl 6 = gl_PRINTF_DIRECTIVE_A +dnl 7 = gl_PRINTF_DIRECTIVE_B +dnl 8 = gl_PRINTF_DIRECTIVE_UPPERCASE_B +dnl 9 = gl_PRINTF_DIRECTIVE_F +dnl 10 = gl_PRINTF_DIRECTIVE_N +dnl 11 = gl_PRINTF_DIRECTIVE_LS +dnl 12 = gl_PRINTF_DIRECTIVE_LC +dnl 13 = gl_PRINTF_POSITIONS +dnl 14 = gl_PRINTF_FLAG_GROUPING +dnl 15 = gl_PRINTF_FLAG_LEFTADJUST +dnl 16 = gl_PRINTF_FLAG_ZERO +dnl 17 = gl_PRINTF_PRECISION +dnl 18 = gl_PRINTF_ENOMEM +dnl 19 = gl_SNPRINTF_PRESENCE +dnl 20 = gl_SNPRINTF_TRUNCATION_C99 +dnl 21 = gl_SNPRINTF_RETVAL_C99 +dnl 22 = gl_SNPRINTF_DIRECTIVE_N +dnl 23 = gl_SNPRINTF_SIZE1 +dnl 24 = gl_VSNPRINTF_ZEROSIZE_C99 +dnl 25 = gl_SWPRINTF_WORKS +dnl 26 = gl_SWPRINTF_DIRECTIVE_LA dnl dnl 1 = checking whether printf supports size specifiers as in C99... -dnl 2 = checking whether printf supports 'long double' arguments... -dnl 3 = checking whether printf supports infinite 'double' arguments... -dnl 4 = checking whether printf supports infinite 'long double' arguments... -dnl 5 = checking whether printf supports the 'a' and 'A' directives... -dnl 6 = checking whether printf supports the 'F' directive... -dnl 7 = checking whether printf supports the 'n' directive... -dnl 8 = checking whether printf supports the 'ls' directive... -dnl 9 = checking whether printf supports POSIX/XSI format strings with positions... -dnl 10 = checking whether printf supports the grouping flag... -dnl 11 = checking whether printf supports the left-adjust flag correctly... -dnl 12 = checking whether printf supports the zero flag correctly... -dnl 13 = checking whether printf supports large precisions... -dnl 14 = checking whether printf survives out-of-memory conditions... -dnl 15 = checking for snprintf... -dnl 16 = checking whether snprintf truncates the result as in C99... -dnl 17 = checking whether snprintf returns a byte count as in C99... -dnl 18 = checking whether snprintf fully supports the 'n' directive... -dnl 19 = checking whether snprintf respects a size of 1... -dnl 20 = checking whether vsnprintf respects a zero size as in C99... +dnl 2 = checking whether printf supports size specifiers as in C23... +dnl 3 = checking whether printf supports 'long double' arguments... +dnl 4 = checking whether printf supports infinite 'double' arguments... +dnl 5 = checking whether printf supports infinite 'long double' arguments... +dnl 6 = checking whether printf supports the 'a' and 'A' directives... +dnl 7 = checking whether printf supports the 'b' directive... +dnl 8 = checking whether printf supports the 'B' directive... +dnl 9 = checking whether printf supports the 'F' directive... +dnl 10 = checking whether printf supports the 'n' directive... +dnl 11 = checking whether printf supports the 'ls' directive... +dnl 12 = checking whether printf supports the 'lc' directive correctly... +dnl 13 = checking whether printf supports POSIX/XSI format strings with positions... +dnl 14 = checking whether printf supports the grouping flag... +dnl 15 = checking whether printf supports the left-adjust flag correctly... +dnl 16 = checking whether printf supports the zero flag correctly... +dnl 17 = checking whether printf supports large precisions... +dnl 18 = checking whether printf survives out-of-memory conditions... +dnl 19 = checking for snprintf... +dnl 20 = checking whether snprintf truncates the result as in C99... +dnl 21 = checking whether snprintf returns a byte count as in C99... +dnl 22 = checking whether snprintf fully supports the 'n' directive... +dnl 23 = checking whether snprintf respects a size of 1... +dnl 24 = checking whether vsnprintf respects a zero size as in C99... +dnl 25 = checking whether swprintf works... +dnl 26 = checking whether swprintf supports the 'La' and 'LA' directives... dnl dnl . = yes, # = no. dnl -dnl 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 -dnl glibc 2.5 . . . . . . . . . . . . . . . . . . . . -dnl glibc 2.3.6 . . . . # . . . . . . . . . . . . . . . -dnl FreeBSD 13.0 . . . . # . . . . . . . . # . . . . . . -dnl FreeBSD 5.4, 6.1 . . . . # . . . . . . # . # . . . . . . -dnl Mac OS X 10.13.5 . . . # # . # . . . . . . . . . . # . . -dnl Mac OS X 10.5.8 . . . # # . . . . . . # . . . . . . . . -dnl Mac OS X 10.3.9 . . . . # . . . . . . # . # . . . . . . -dnl OpenBSD 6.0, 6.7 . . . . # . . . . . . . . # . . . . . . -dnl OpenBSD 3.9, 4.0 . . # # # # . # . # . # . # . . . . . . -dnl Cygwin 1.7.0 (2009) . . . # . . . ? . . . . . ? . . . . . . -dnl Cygwin 1.5.25 (2008) . . . # # . . # . . . . . # . . . . . . -dnl Cygwin 1.5.19 (2006) # . . # # # . # . # . # # # . . . . . . -dnl Solaris 11.4 . . # # # . . # . . . # . . . . . . . . -dnl Solaris 11.3 . . . . # . . # . . . . . . . . . . . . -dnl Solaris 11.0 . . # # # . . # . . . # . . . . . . . . -dnl Solaris 10 . . # # # . . # . . . # # . . . . . . . -dnl Solaris 2.6 ... 9 # . # # # # . # . . . # # . . . # . . . -dnl Solaris 2.5.1 # . # # # # . # . . . # . . # # # # # # -dnl AIX 7.1 . . # # # . . . . . . # # . . . . . . . -dnl AIX 5.2 . . # # # . . . . . . # . . . . . . . . -dnl AIX 4.3.2, 5.1 # . # # # # . . . . . # . . . . # . . . -dnl HP-UX 11.31 . . . . # . . . . . . # . . . . # # . . -dnl HP-UX 11.{00,11,23} # . . . # # . . . . . # . . . . # # . # -dnl HP-UX 10.20 # . # . # # . ? . . # # . . . . # # ? # -dnl IRIX 6.5 # . # # # # . # . . . # . . . . # . . . -dnl OSF/1 5.1 # . # # # # . . . . . # . . . . # . . # -dnl OSF/1 4.0d # . # # # # . . . . . # . . # # # # # # -dnl NetBSD 9.0 . . . . # . . . . . . . . . . . . . . . -dnl NetBSD 5.0 . . . # # . . . . . . # . # . . . . . . -dnl NetBSD 4.0 . ? ? ? ? ? . ? . ? ? ? ? ? . . . ? ? ? -dnl NetBSD 3.0 . . . . # # . ? # # ? # . # . . . . . . -dnl Haiku . . . # # # . # . . . . . ? . . ? . . . -dnl BeOS # # . # # # . ? # . ? . # ? . . ? . . . -dnl Android 4.3 . . # # # # # # . # . # . # . . . # . . -dnl old mingw / msvcrt # # # # # # . . # # . # # ? . # # # . . -dnl MSVC 9 # # # # # # # . # # . # # ? # # # # . . -dnl mingw 2009-2011 . # . # . . . . # # . . . ? . . . . . . -dnl mingw-w64 2011 # # # # # # . . # # . # # ? . # # # . . +dnl 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 +dnl musl libc 1.2.3 . # . . . . # # . . . . . . . . . . . . . . . . # . +dnl glibc 2.35 . # . . . . . . . . . # . . . . . . . . . . . . . . +dnl glibc 2.5 . # . . . . # # . . . # . . . . . . . . . . . . . # +dnl glibc 2.3.6 . # . . . # # # . . . # . . . . . . . . . . . . . # +dnl FreeBSD 13.0 . # . . . # # # . . . # . . . . . # . . . . . . # . +dnl FreeBSD 5.4, 6.1 . # . . . # # # . . . # . . . # . # . . . . . . # ? +dnl Mac OS X 10.13.5 . # . . # # # # . # . # . . . . . . . . . # . . # ? +dnl Mac OS X 10.5.8 . # . . # # # # . . . # . . . # . . . . . . . . # ? +dnl Mac OS X 10.3.9 . # . . . # # # . . . # . . . # . # . . . . . . # ? +dnl OpenBSD 6.0, 6.7 . # . . . # # # . . . # . . . . . # . . . . . . # . +dnl OpenBSD 3.9, 4.0 . # . # # # # # # . # # . # . # . # . . . . . . # ? +dnl Cygwin 1.7.0 (2009) . # . . # . # # . . ? ? . . . . . ? . . . . . . ? ? +dnl Cygwin 1.5.25 (2008) . # . . # # # # . . # ? . . . . . # . . . . . . ? ? +dnl Cygwin 1.5.19 (2006) # # . . # # # # # . # ? . # . # # # . . . . . . ? ? +dnl Solaris 11.4 . # . # # # # # . . # # . . . # . . . . . . . . . ? +dnl Solaris 11.3 . # . . . # # # . . # # . . . . . . . . . . . . . ? +dnl Solaris 11.0 . # . # # # # # . . # # . . . # . . . . . . . . ? ? +dnl Solaris 10 . # . # # # # # . . # # . . . # # . . . . . . . ? ? +dnl Solaris 2.6 ... 9 # # . # # # # # # . # # . . . # # . . . # . . . ? ? +dnl Solaris 2.5.1 # # . # # # # # # . # # . . . # . . # # # # # # ? ? +dnl AIX 7.1 . # . # # # # # . . . # . . . # # . . . . . . . # . +dnl AIX 5.2 . # . # # # # # . . . # . . . # . . . . . . . . # ? +dnl AIX 4.3.2, 5.1 # # . # # # # # # . . # . . . # . . . . # . . . # ? +dnl HP-UX 11.31 . # . . . # # # . . . ? . . . # . . . . # # . . ? ? +dnl HP-UX 11.{00,11,23} # # . . . # # # # . . ? . . . # . . . . # # . # ? ? +dnl HP-UX 10.20 # # . # . # # # # . ? ? . . # # . . . . # # ? # ? ? +dnl IRIX 6.5 # # . # # # # # # . # # . . . # . . . . # . . . # ? +dnl OSF/1 5.1 # # . # # # # # # . . ? . . . # . . . . # . . # ? ? +dnl OSF/1 4.0d # # . # # # # # # . . ? . . . # . . # # # # # # ? ? +dnl NetBSD 9.0 . # . . . # # # . . . # . . . . . . . . . . . . # . +dnl NetBSD 5.0 . # . . # # # # . . . # . . . # . # . . . . . . # ? +dnl NetBSD 4.0 . # ? ? ? ? # # ? . ? # . ? ? ? ? ? . . . ? ? ? # ? +dnl NetBSD 3.0 . # . . . # # # # . ? # # # ? # . # . . . . . . # ? +dnl Haiku . # . . # # # # # . # ? . . . . . ? . . ? . . . . # +dnl BeOS # # # . # # # # # . ? ? # . ? . # ? . . ? . . . ? ? +dnl Android 4.3 . # . # # # # # # # # ? . # . # . # . . . # . . ? ? +dnl old mingw / msvcrt # # # # # # # # # . . ? # # . # # ? . # # # . . # ? +dnl MSVC 9 # # # # # # # # # # . ? # # . # # ? # # # # . . # ? +dnl mingw 2009-2011 . # # . # . # # . . . ? # # . . . ? . . . . . . # ? +dnl mingw-w64 2011 # # # # # # # # # . . ? # # . # # ? . # # # . . # ? diff --git a/m4/pselect.m4 b/m4/pselect.m4 new file mode 100644 index 0000000..6c3d1b8 --- /dev/null +++ b/m4/pselect.m4 @@ -0,0 +1,75 @@ +# pselect.m4 serial 11 +dnl Copyright (C) 2011-2023 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. + +AC_DEFUN([gl_FUNC_PSELECT], +[ + AC_REQUIRE([gl_SYS_SELECT_H]) + AC_REQUIRE([AC_C_RESTRICT]) + AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles + AC_CHECK_FUNCS_ONCE([pselect]) + + if test $ac_cv_func_pselect = yes; then + AC_CACHE_CHECK([whether signature of pselect conforms to POSIX], + [gl_cv_sig_pselect], + [AC_LINK_IFELSE( + [AC_LANG_PROGRAM( + [[#include + ]], + [[int (*p) (int, fd_set *, fd_set *, fd_set *restrict, + struct timespec const *restrict, + sigset_t const *restrict) = pselect; + return !p;]])], + [gl_cv_sig_pselect=yes], + [gl_cv_sig_pselect=no])]) + + dnl On FreeBSD 8.2, pselect() doesn't always reject bad fds. + AC_CACHE_CHECK([whether pselect detects invalid fds], + [gl_cv_func_pselect_detects_ebadf], + [ + AC_RUN_IFELSE([AC_LANG_PROGRAM([[ +#include +#include +#if HAVE_SYS_SELECT_H +# include +#endif +#include +#include +]GL_MDA_DEFINES], +[[ + fd_set set; + dup2(0, 16); + FD_ZERO(&set); + FD_SET(16, &set); + close(16); + struct timespec timeout; + timeout.tv_sec = 0; + timeout.tv_nsec = 5000; + return pselect (17, &set, NULL, NULL, &timeout, NULL) != -1 || errno != EBADF; +]])], [gl_cv_func_pselect_detects_ebadf=yes], + [gl_cv_func_pselect_detects_ebadf=no], + [ + case "$host_os" in + # Guess yes on Linux systems. + linux-* | linux) gl_cv_func_pselect_detects_ebadf="guessing yes" ;; + # Guess yes on systems that emulate the Linux system calls. + midipix*) gl_cv_func_pselect_detects_ebadf="guessing yes" ;; + # Guess yes on glibc systems. + *-gnu* | gnu*) gl_cv_func_pselect_detects_ebadf="guessing yes" ;; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_pselect_detects_ebadf="$gl_cross_guess_normal" ;; + esac + ]) + ]) + case $gl_cv_func_pselect_detects_ebadf in + *yes) ;; + *) REPLACE_PSELECT=1 ;; + esac + fi + + if test $ac_cv_func_pselect = no || test $gl_cv_sig_pselect = no; then + REPLACE_PSELECT=1 + fi +]) diff --git a/m4/pthread-thread.m4 b/m4/pthread-thread.m4 index 949186d..aafd979 100644 --- a/m4/pthread-thread.m4 +++ b/m4/pthread-thread.m4 @@ -1,5 +1,5 @@ # pthread-thread.m4 serial 2 -dnl Copyright (C) 2019-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2019-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/pthread_h.m4 b/m4/pthread_h.m4 index 62a6ca8..0d536fc 100644 --- a/m4/pthread_h.m4 +++ b/m4/pthread_h.m4 @@ -1,5 +1,5 @@ # pthread_h.m4 serial 8 -dnl Copyright (C) 2009-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/pthread_rwlock_rdlock.m4 b/m4/pthread_rwlock_rdlock.m4 index a5fbead..66b29f8 100644 --- a/m4/pthread_rwlock_rdlock.m4 +++ b/m4/pthread_rwlock_rdlock.m4 @@ -1,5 +1,5 @@ -# pthread_rwlock_rdlock.m4 serial 4 -dnl Copyright (C) 2017-2021 Free Software Foundation, Inc. +# pthread_rwlock_rdlock.m4 serial 5 +dnl Copyright (C) 2017-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -156,22 +156,22 @@ main () [gl_cv_pthread_rwlock_rdlock_prefer_writer=yes], [gl_cv_pthread_rwlock_rdlock_prefer_writer=no], [case "$host_os" in - # Guess no on glibc systems. - *-gnu* | gnu*) gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing no" ;; - # Guess no on musl systems. - *-musl*) gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing no" ;; - # Guess no on bionic systems. - *-android*) gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing no" ;; - # Guess yes on native Windows with the mingw-w64 winpthreads library. - # Guess no on native Windows with the gnulib windows-rwlock module. - mingw*) if test "$gl_use_threads" = yes || test "$gl_use_threads" = posix; then - gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing yes" - else - gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing no" - fi - ;; - # If we don't know, obey --enable-cross-guesses. - *) gl_cv_pthread_rwlock_rdlock_prefer_writer="$gl_cross_guess_normal" ;; + # Guess no on glibc systems. + *-gnu* | gnu*) gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing no" ;; + # Guess no on musl systems. + *-musl* | midipix*) gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing no" ;; + # Guess no on bionic systems. + *-android*) gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing no" ;; + # Guess yes on native Windows with the mingw-w64 winpthreads library. + # Guess no on native Windows with the gnulib windows-rwlock module. + mingw*) if test "$gl_use_threads" = yes || test "$gl_use_threads" = posix; then + gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing yes" + else + gl_cv_pthread_rwlock_rdlock_prefer_writer="guessing no" + fi + ;; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_pthread_rwlock_rdlock_prefer_writer="$gl_cross_guess_normal" ;; esac ]) LIBS="$save_LIBS" diff --git a/m4/pthread_sigmask.m4 b/m4/pthread_sigmask.m4 index ff7fa96..2779528 100644 --- a/m4/pthread_sigmask.m4 +++ b/m4/pthread_sigmask.m4 @@ -1,5 +1,5 @@ -# pthread_sigmask.m4 serial 21 -dnl Copyright (C) 2011-2021 Free Software Foundation, Inc. +# pthread_sigmask.m4 serial 22 +dnl Copyright (C) 2011-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -24,7 +24,7 @@ AC_DEFUN([gl_FUNC_PTHREAD_SIGMASK], [gl_cv_func_pthread_sigmask_macro=no]) ]) - LIB_PTHREAD_SIGMASK= + PTHREAD_SIGMASK_LIB= if test $gl_cv_func_pthread_sigmask_macro = yes; then dnl pthread_sigmask is a dummy macro. @@ -62,7 +62,7 @@ AC_DEFUN([gl_FUNC_PTHREAD_SIGMASK], ]) if test $gl_cv_func_pthread_sigmask_in_LIBMULTITHREAD = yes; then dnl pthread_sigmask is available with -pthread or -lpthread. - LIB_PTHREAD_SIGMASK="$LIBMULTITHREAD" + PTHREAD_SIGMASK_LIB="$LIBMULTITHREAD" else dnl pthread_sigmask is not available at all. HAVE_PTHREAD_SIGMASK=0 @@ -101,6 +101,9 @@ AC_DEFUN([gl_FUNC_PTHREAD_SIGMASK], ]) fi + AC_SUBST([PTHREAD_SIGMASK_LIB]) + dnl For backward compatibility. + LIB_PTHREAD_SIGMASK="$PTHREAD_SIGMASK_LIB" AC_SUBST([LIB_PTHREAD_SIGMASK]) dnl We don't need a variable LTLIB_PTHREAD_SIGMASK, because when dnl "$gl_threads_api" = posix, $LTLIBMULTITHREAD and $LIBMULTITHREAD are the @@ -114,7 +117,7 @@ AC_DEFUN([gl_FUNC_PTHREAD_SIGMASK], dnl On FreeBSD 13.0, MidnightBSD 1.1, HP-UX 11.31, Solaris 9, in programs dnl that are not linked with -lpthread, the pthread_sigmask() function dnl always returns 0 and has no effect. - if test -z "$LIB_PTHREAD_SIGMASK"; then + if test -z "$PTHREAD_SIGMASK_LIB"; then case " $LIBS " in *' -pthread '*) ;; *' -lpthread '*) ;; @@ -162,7 +165,7 @@ AC_DEFUN([gl_FUNC_PTHREAD_SIGMASK], [gl_cv_func_pthread_sigmask_return_works], [ gl_save_LIBS="$LIBS" - LIBS="$LIBS $LIB_PTHREAD_SIGMASK" + LIBS="$LIBS $PTHREAD_SIGMASK_LIB" AC_RUN_IFELSE( [AC_LANG_SOURCE([[ #include @@ -208,13 +211,14 @@ int main () gl_cv_func_pthread_sigmask_unblock_works="guessing yes";; esac m4_ifdef([gl_][THREADLIB], - [dnl Link against $LIBMULTITHREAD, not only $LIB_PTHREAD_SIGMASK. + [dnl Link against $LIBMULTITHREAD, not only $PTHREAD_SIGMASK_LIB. dnl Otherwise we get a false positive on those platforms where dnl $gl_cv_func_pthread_sigmask_in_libc_works is "no". gl_save_LIBS=$LIBS LIBS="$LIBS $LIBMULTITHREAD"]) AC_RUN_IFELSE( [AC_LANG_SOURCE([[ +#include #include #include #include @@ -230,14 +234,16 @@ sigint_handler (int sig) int main () { sigset_t set; - int pid = getpid (); + pid_t pid = getpid (); char command[80]; + if (LONG_MAX < pid) + return 6; signal (SIGINT, sigint_handler); sigemptyset (&set); sigaddset (&set, SIGINT); if (!(pthread_sigmask (SIG_BLOCK, &set, NULL) == 0)) return 1; - sprintf (command, "sh -c 'sleep 1; kill -%d %d' &", SIGINT, pid); + sprintf (command, "sh -c 'sleep 1; kill -INT %ld' &", (long) pid); if (!(system (command) == 0)) return 2; sleep (2); diff --git a/m4/putenv.m4 b/m4/putenv.m4 index 919984d..d37a602 100644 --- a/m4/putenv.m4 +++ b/m4/putenv.m4 @@ -1,5 +1,5 @@ -# putenv.m4 serial 25 -dnl Copyright (C) 2002-2021 Free Software Foundation, Inc. +# putenv.m4 serial 26 +dnl Copyright (C) 2002-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -38,14 +38,14 @@ AC_DEFUN([gl_FUNC_PUTENV], [gl_cv_func_svid_putenv=no], [dnl When crosscompiling, assume putenv is broken. case "$host_os" in - # Guess yes on glibc systems. - *-gnu* | gnu*) gl_cv_func_svid_putenv="guessing yes" ;; - # Guess yes on musl systems. - *-musl*) gl_cv_func_svid_putenv="guessing yes" ;; - # Guess no on native Windows. - mingw*) gl_cv_func_svid_putenv="guessing no" ;; - # If we don't know, obey --enable-cross-guesses. - *) gl_cv_func_svid_putenv="$gl_cross_guess_normal" ;; + # Guess yes on glibc systems. + *-gnu* | gnu*) gl_cv_func_svid_putenv="guessing yes" ;; + # Guess yes on musl systems. + *-musl* | midipix*) gl_cv_func_svid_putenv="guessing yes" ;; + # Guess no on native Windows. + mingw*) gl_cv_func_svid_putenv="guessing no" ;; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_svid_putenv="$gl_cross_guess_normal" ;; esac ]) ]) diff --git a/m4/quote.m4 b/m4/quote.m4 index be205c0..551437f 100644 --- a/m4/quote.m4 +++ b/m4/quote.m4 @@ -1,5 +1,5 @@ # quote.m4 serial 6 -dnl Copyright (C) 2002-2003, 2005-2006, 2009-2021 Free Software Foundation, +dnl Copyright (C) 2002-2003, 2005-2006, 2009-2023 Free Software Foundation, dnl Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, diff --git a/m4/quotearg.m4 b/m4/quotearg.m4 index 19067f5..15e4aa6 100644 --- a/m4/quotearg.m4 +++ b/m4/quotearg.m4 @@ -1,5 +1,5 @@ # quotearg.m4 serial 10 -dnl Copyright (C) 2002, 2004-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2002, 2004-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/raise.m4 b/m4/raise.m4 index 4bf0ca9..f20c439 100644 --- a/m4/raise.m4 +++ b/m4/raise.m4 @@ -1,5 +1,5 @@ # raise.m4 serial 4 -dnl Copyright (C) 2011-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2011-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/rawmemchr.m4 b/m4/rawmemchr.m4 index 452fab1..a48d829 100644 --- a/m4/rawmemchr.m4 +++ b/m4/rawmemchr.m4 @@ -1,5 +1,5 @@ # rawmemchr.m4 serial 3 -dnl Copyright (C) 2003, 2007-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2003, 2007-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/readlink.m4 b/m4/readlink.m4 index 352788c..f1d41d2 100644 --- a/m4/readlink.m4 +++ b/m4/readlink.m4 @@ -1,5 +1,5 @@ -# readlink.m4 serial 16 -dnl Copyright (C) 2003, 2007, 2009-2021 Free Software Foundation, Inc. +# readlink.m4 serial 17 +dnl Copyright (C) 2003, 2007, 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -38,6 +38,9 @@ AC_DEFUN([gl_FUNC_READLINK], # Guess yes on Linux or glibc systems. linux-* | linux | *-gnu* | gnu*) gl_cv_func_readlink_trailing_slash="guessing yes" ;; + # Guess yes on systems that emulate the Linux system calls. + midipix*) + gl_cv_func_readlink_trailing_slash="guessing yes" ;; # Guess no on AIX or HP-UX. aix* | hpux*) gl_cv_func_readlink_trailing_slash="guessing no" ;; @@ -75,6 +78,9 @@ AC_DEFUN([gl_FUNC_READLINK], # Guess yes on Linux or glibc systems. linux-* | linux | *-gnu* | gnu*) gl_cv_func_readlink_truncate="guessing yes" ;; + # Guess yes on systems that emulate the Linux system calls. + midipix*) + gl_cv_func_readlink_truncate="guessing yes" ;; # Guess no on AIX or HP-UX. aix* | hpux*) gl_cv_func_readlink_truncate="guessing no" ;; diff --git a/m4/realloc.m4 b/m4/realloc.m4 index 0abc418..2605391 100644 --- a/m4/realloc.m4 +++ b/m4/realloc.m4 @@ -1,5 +1,5 @@ -# realloc.m4 serial 24 -dnl Copyright (C) 2007, 2009-2021 Free Software Foundation, Inc. +# realloc.m4 serial 27 +dnl Copyright (C) 2007, 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -25,7 +25,7 @@ AC_DEFUN([_AC_FUNC_REALLOC_IF], [case "$host_os" in # Guess yes on platforms where we know the result. *-gnu* | freebsd* | netbsd* | openbsd* | bitrig* \ - | gnu* | *-musl* | midnightbsd* \ + | gnu* | *-musl* | midipix* | midnightbsd* \ | hpux* | solaris* | cygwin* | mingw* | msys* ) ac_cv_func_realloc_0_nonnull="guessing yes" ;; # If we don't know, obey --enable-cross-guesses. @@ -43,8 +43,8 @@ AC_DEFUN([gl_FUNC_REALLOC_GNU], [ AC_REQUIRE([gl_STDLIB_H_DEFAULTS]) AC_REQUIRE([gl_FUNC_REALLOC_POSIX]) - if test $REPLACE_REALLOC = 0; then - _AC_FUNC_REALLOC_IF([], [REPLACE_REALLOC=1]) + if test $REPLACE_REALLOC_FOR_REALLOC_GNU = 0; then + _AC_FUNC_REALLOC_IF([], [REPLACE_REALLOC_FOR_REALLOC_GNU=1]) fi ])# gl_FUNC_REALLOC_GNU @@ -57,7 +57,7 @@ AC_DEFUN([gl_FUNC_REALLOC_POSIX], [ AC_REQUIRE([gl_STDLIB_H_DEFAULTS]) AC_REQUIRE([gl_FUNC_MALLOC_POSIX]) - if test $REPLACE_MALLOC = 1; then - REPLACE_REALLOC=1 + if test $REPLACE_MALLOC_FOR_MALLOC_POSIX = 1; then + REPLACE_REALLOC_FOR_REALLOC_POSIX=1 fi ]) diff --git a/m4/reallocarray.m4 b/m4/reallocarray.m4 index 9d8a626..6a5b5ab 100644 --- a/m4/reallocarray.m4 +++ b/m4/reallocarray.m4 @@ -1,5 +1,5 @@ -# reallocarray.m4 serial 3 -dnl Copyright (C) 2017-2021 Free Software Foundation, Inc. +# reallocarray.m4 serial 5 +dnl Copyright (C) 2017-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -11,9 +11,12 @@ AC_DEFUN([gl_FUNC_REALLOCARRAY], AC_REQUIRE([gl_STDLIB_H_DEFAULTS]) AC_REQUIRE([gl_CHECK_MALLOC_PTRDIFF]) - AC_CHECK_FUNCS([reallocarray]) + gl_CHECK_FUNCS_ANDROID([reallocarray], [[#include ]]) if test "$ac_cv_func_reallocarray" = no; then HAVE_REALLOCARRAY=0 + case "$gl_cv_onwards_func_reallocarray" in + future*) REPLACE_REALLOCARRAY=1 ;; + esac elif test "$gl_cv_malloc_ptrdiff" = no; then REPLACE_REALLOCARRAY=1 fi diff --git a/m4/regex.m4 b/m4/regex.m4 index 1c7e562..7acadc4 100644 --- a/m4/regex.m4 +++ b/m4/regex.m4 @@ -1,6 +1,6 @@ -# serial 73 +# serial 74 -# Copyright (C) 1996-2001, 2003-2021 Free Software Foundation, Inc. +# Copyright (C) 1996-2001, 2003-2023 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -15,7 +15,7 @@ AC_DEFUN([gl_REGEX], [ AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles AC_ARG_WITH([included-regex], - [AS_HELP_STRING([--without-included-regex], + [AS_HELP_STRING([[--without-included-regex]], [don't compile regex; this is the default on systems with recent-enough versions of the GNU C Library (use with caution on other systems).])]) diff --git a/m4/sched_h.m4 b/m4/sched_h.m4 index a840e3d..980d256 100644 --- a/m4/sched_h.m4 +++ b/m4/sched_h.m4 @@ -1,5 +1,5 @@ # sched_h.m4 serial 15 -dnl Copyright (C) 2008-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2008-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/select.m4 b/m4/select.m4 index 72c068f..88861af 100644 --- a/m4/select.m4 +++ b/m4/select.m4 @@ -1,5 +1,5 @@ -# select.m4 serial 13 -dnl Copyright (C) 2009-2021 Free Software Foundation, Inc. +# select.m4 serial 15 +dnl Copyright (C) 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -77,6 +77,8 @@ changequote([,])dnl case "$host_os" in # Guess yes on Linux systems. linux-* | linux) gl_cv_func_select_detects_ebadf="guessing yes" ;; + # Guess yes on systems that emulate the Linux system calls. + midipix*) gl_cv_func_select_detects_ebadf="guessing yes" ;; # Guess yes on glibc systems. *-gnu* | gnu*) gl_cv_func_select_detects_ebadf="guessing yes" ;; # If we don't know, obey --enable-cross-guesses. @@ -91,7 +93,7 @@ changequote([,])dnl fi dnl Determine the needed libraries. - LIB_SELECT="$LIBSOCKET" + SELECT_LIB="$LIBSOCKET" if test $REPLACE_SELECT = 1; then case "$host_os" in mingw*) @@ -109,9 +111,12 @@ main () return 0; }]])], [], - [LIB_SELECT="$LIB_SELECT -luser32"]) + [SELECT_LIB="$SELECT_LIB -luser32"]) ;; esac fi + AC_SUBST([SELECT_LIB]) + dnl For backward compatibility. + LIB_SELECT="$LIB_SELECT" AC_SUBST([LIB_SELECT]) ]) diff --git a/m4/setenv.m4 b/m4/setenv.m4 index f79a278..ef068ad 100644 --- a/m4/setenv.m4 +++ b/m4/setenv.m4 @@ -1,5 +1,5 @@ -# setenv.m4 serial 30 -dnl Copyright (C) 2001-2004, 2006-2021 Free Software Foundation, Inc. +# setenv.m4 serial 32 +dnl Copyright (C) 2001-2004, 2006-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -35,12 +35,12 @@ AC_DEFUN([gl_FUNC_SETENV], ]])], [gl_cv_func_setenv_works=yes], [gl_cv_func_setenv_works=no], [case "$host_os" in - # Guess yes on glibc systems. - *-gnu* | gnu*) gl_cv_func_setenv_works="guessing yes" ;; - # Guess yes on musl systems. - *-musl*) gl_cv_func_setenv_works="guessing yes" ;; - # If we don't know, obey --enable-cross-guesses. - *) gl_cv_func_setenv_works="$gl_cross_guess_normal" ;; + # Guess yes on glibc systems. + *-gnu* | gnu*) gl_cv_func_setenv_works="guessing yes" ;; + # Guess yes on musl systems. + *-musl* | midipix*) gl_cv_func_setenv_works="guessing yes" ;; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_setenv_works="$gl_cross_guess_normal" ;; esac ])]) case "$gl_cv_func_setenv_works" in @@ -155,7 +155,7 @@ AC_DEFUN([gl_PREREQ_SETENV], AC_REQUIRE([gl_ENVIRON]) AC_CHECK_HEADERS_ONCE([unistd.h]) AC_CHECK_HEADERS([search.h]) - AC_CHECK_FUNCS([tsearch]) + gl_CHECK_FUNCS_ANDROID([tsearch], [[#include ]]) ]) # Prerequisites of lib/unsetenv.c. diff --git a/m4/setlocale_null.m4 b/m4/setlocale_null.m4 index 2c958ed..1105d69 100644 --- a/m4/setlocale_null.m4 +++ b/m4/setlocale_null.m4 @@ -1,5 +1,5 @@ -# setlocale_null.m4 serial 5 -dnl Copyright (C) 2019-2021 Free Software Foundation, Inc. +# setlocale_null.m4 serial 8 +dnl Copyright (C) 2019-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -13,9 +13,23 @@ AC_DEFUN([gl_FUNC_SETLOCALE_NULL], AC_CACHE_CHECK([whether setlocale (LC_ALL, NULL) is multithread-safe], [gl_cv_func_setlocale_null_all_mtsafe], [case "$host_os" in - # Guess no on musl libc, macOS, FreeBSD, NetBSD, OpenBSD, AIX, Haiku, Cygwin. - *-musl* | darwin* | freebsd* | midnightbsd* | netbsd* | openbsd* | aix* | haiku* | cygwin*) + # Guess no on musl libc, macOS, FreeBSD, NetBSD, OpenBSD, AIX, Haiku. + *-musl* | midipix* | darwin* | freebsd* | midnightbsd* | netbsd* | openbsd* | aix* | haiku*) gl_cv_func_setlocale_null_all_mtsafe=no ;; + # Guess no on Cygwin < 3.4.6. + cygwin*) + AC_EGREP_CPP([Lucky user], + [ +#if defined __CYGWIN__ + #include + #if CYGWIN_VERSION_DLL_COMBINED >= CYGWIN_VERSION_DLL_MAKE_COMBINED (3004, 6) + Lucky user + #endif +#endif + ], + [gl_cv_func_setlocale_null_all_mtsafe=yes], + [gl_cv_func_setlocale_null_all_mtsafe=no]) + ;; # Guess yes on glibc, HP-UX, IRIX, Solaris, native Windows. *-gnu* | gnu* | hpux* | irix* | solaris* | mingw*) gl_cv_func_setlocale_null_all_mtsafe=yes ;; @@ -48,7 +62,7 @@ AC_DEFUN([gl_FUNC_SETLOCALE_NULL], openbsd* | aix*) gl_cv_func_setlocale_null_one_mtsafe=no ;; # Guess yes on glibc, musl libc, macOS, FreeBSD, NetBSD, HP-UX, IRIX, Solaris, Haiku, Cygwin, native Windows. - *-gnu* | gnu* | *-musl* | darwin* | freebsd* | midnightbsd* | netbsd* | hpux* | irix* | solaris* | haiku* | cygwin* | mingw*) + *-gnu* | gnu* | *-musl* | midipix* | darwin* | freebsd* | midnightbsd* | netbsd* | hpux* | irix* | solaris* | haiku* | cygwin* | mingw*) gl_cv_func_setlocale_null_one_mtsafe=yes ;; # If we don't know, obey --enable-cross-guesses. *) @@ -74,20 +88,23 @@ AC_DEFUN([gl_FUNC_SETLOCALE_NULL], dnl Determine link dependencies of lib/setlocale_null.c and lib/setlocale-lock.c. if test $SETLOCALE_NULL_ALL_MTSAFE = 0 || test $SETLOCALE_NULL_ONE_MTSAFE = 0; then case "$host_os" in - mingw*) LIB_SETLOCALE_NULL= ;; + mingw*) SETLOCALE_NULL_LIB= ;; *) gl_WEAK_SYMBOLS case "$gl_cv_have_weak" in - *yes) LIB_SETLOCALE_NULL= ;; - *) LIB_SETLOCALE_NULL="$LIBPTHREAD" ;; + *yes) SETLOCALE_NULL_LIB= ;; + *) SETLOCALE_NULL_LIB="$LIBPTHREAD" ;; esac ;; esac else - LIB_SETLOCALE_NULL= + SETLOCALE_NULL_LIB= fi - dnl LIB_SETLOCALE_NULL is expected to be '-pthread' or '-lpthread' on AIX + dnl SETLOCALE_NULL_LIB is expected to be '-pthread' or '-lpthread' on AIX dnl with gcc or xlc, and empty otherwise. + AC_SUBST([SETLOCALE_NULL_LIB]) + dnl For backward compatibility. + LIB_SETLOCALE_NULL="$SETLOCALE_NULL_LIB" AC_SUBST([LIB_SETLOCALE_NULL]) ]) diff --git a/m4/sigaction.m4 b/m4/sigaction.m4 deleted file mode 100644 index a8c1d15..0000000 --- a/m4/sigaction.m4 +++ /dev/null @@ -1,40 +0,0 @@ -# sigaction.m4 serial 7 -dnl Copyright (C) 2008-2021 Free Software Foundation, Inc. -dnl This file is free software; the Free Software Foundation -dnl gives unlimited permission to copy and/or distribute it, -dnl with or without modifications, as long as this notice is preserved. - -# Determine if sigaction interface is present. -AC_DEFUN([gl_SIGACTION], -[ - AC_REQUIRE([gl_SIGNAL_H_DEFAULTS]) - AC_CHECK_FUNCS_ONCE([sigaction]) - if test $ac_cv_func_sigaction = yes; then - AC_CHECK_MEMBERS([struct sigaction.sa_sigaction], , , - [[#include ]]) - if test $ac_cv_member_struct_sigaction_sa_sigaction = no; then - HAVE_STRUCT_SIGACTION_SA_SIGACTION=0 - fi - else - HAVE_SIGACTION=0 - fi -]) - -# Prerequisites of the part of lib/signal.in.h and of lib/sigaction.c. -AC_DEFUN([gl_PREREQ_SIGACTION], -[ - AC_REQUIRE([gl_SIGNAL_H_DEFAULTS]) - AC_REQUIRE([AC_C_RESTRICT]) - AC_REQUIRE([AC_TYPE_UID_T]) - AC_REQUIRE([gl_PREREQ_SIG_HANDLER_H]) - AC_CHECK_FUNCS_ONCE([sigaltstack siginterrupt]) - AC_CHECK_TYPES([siginfo_t], [], [], [[ -#include - ]]) - if test $ac_cv_type_siginfo_t = no; then - HAVE_SIGINFO_T=0 - fi -]) - -# Prerequisites of lib/sig-handler.h. -AC_DEFUN([gl_PREREQ_SIG_HANDLER_H], [:]) diff --git a/m4/sigaltstack.m4 b/m4/sigaltstack.m4 index 6dbd677..03180fc 100644 --- a/m4/sigaltstack.m4 +++ b/m4/sigaltstack.m4 @@ -1,5 +1,5 @@ # sigaltstack.m4 serial 15 -dnl Copyright (C) 2002-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2002-2023 Free Software Foundation, Inc. dnl This file is free software, distributed under the terms of the GNU dnl General Public License. As a special exception to the GNU General dnl Public License, this file may be distributed as part of a program diff --git a/m4/signal_h.m4 b/m4/signal_h.m4 index 8b93880..cdd6812 100644 --- a/m4/signal_h.m4 +++ b/m4/signal_h.m4 @@ -1,5 +1,5 @@ # signal_h.m4 serial 22 -dnl Copyright (C) 2007-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2007-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/signalblocking.m4 b/m4/signalblocking.m4 index bfd76b7..81cc91a 100644 --- a/m4/signalblocking.m4 +++ b/m4/signalblocking.m4 @@ -1,5 +1,5 @@ # signalblocking.m4 serial 17 -dnl Copyright (C) 2001-2002, 2006-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2001-2002, 2006-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/sigsegv.m4 b/m4/sigsegv.m4 new file mode 100644 index 0000000..b576bb0 --- /dev/null +++ b/m4/sigsegv.m4 @@ -0,0 +1,20 @@ +# sigsegv.m4 serial 2 +dnl Copyright (C) 2021-2023 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. + +dnl From Bruno Haible. + +AC_DEFUN_ONCE([gl_SIGSEGV], +[ + AC_ARG_WITH([libsigsegv], + [AS_HELP_STRING([[--with-libsigsegv]], + [use the GNU libsigsegv library, when present, instead of the gnulib module 'sigsegv'])]) + if test "$with_libsigsegv" = yes; then + gl_LIBSIGSEGV + gl_sigsegv_uses_libsigsegv="$gl_cv_lib_sigsegv" + else + gl_sigsegv_uses_libsigsegv=no + fi +]) diff --git a/m4/size_max.m4 b/m4/size_max.m4 index 1d41ce9..0763366 100644 --- a/m4/size_max.m4 +++ b/m4/size_max.m4 @@ -1,5 +1,5 @@ # size_max.m4 serial 12 -dnl Copyright (C) 2003, 2005-2006, 2008-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2003, 2005-2006, 2008-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/sleep.m4 b/m4/sleep.m4 index 49a2dcb..269b73b 100644 --- a/m4/sleep.m4 +++ b/m4/sleep.m4 @@ -1,5 +1,5 @@ -# sleep.m4 serial 11 -dnl Copyright (C) 2007-2021 Free Software Foundation, Inc. +# sleep.m4 serial 12 +dnl Copyright (C) 2007-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -50,6 +50,8 @@ handle_alarm (int sig) *-gnu* | gnu*) gl_cv_func_sleep_works="guessing yes" ;; # Guess yes on musl systems. *-musl*) gl_cv_func_sleep_works="guessing yes" ;; + # Guess yes on systems that emulate the Linux system calls. + midipix*) gl_cv_func_sleep_works="guessing yes" ;; # Guess no on native Windows. mingw*) gl_cv_func_sleep_works="guessing no" ;; # If we don't know, obey --enable-cross-guesses. diff --git a/m4/snprintf.m4 b/m4/snprintf.m4 index 8520994..4b5fbdb 100644 --- a/m4/snprintf.m4 +++ b/m4/snprintf.m4 @@ -1,5 +1,5 @@ # snprintf.m4 serial 7 -dnl Copyright (C) 2002-2004, 2007-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2002-2004, 2007-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/socketlib.m4 b/m4/socketlib.m4 index 0f8a082..a556af1 100644 --- a/m4/socketlib.m4 +++ b/m4/socketlib.m4 @@ -1,5 +1,5 @@ # socketlib.m4 serial 3 -dnl Copyright (C) 2008-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2008-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/sockets.m4 b/m4/sockets.m4 index 02b43b6..ed9cb87 100644 --- a/m4/sockets.m4 +++ b/m4/sockets.m4 @@ -1,5 +1,5 @@ # sockets.m4 serial 7 -dnl Copyright (C) 2008-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2008-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/socklen.m4 b/m4/socklen.m4 index eca1d1b..1c63a85 100644 --- a/m4/socklen.m4 +++ b/m4/socklen.m4 @@ -1,5 +1,5 @@ # socklen.m4 serial 11 -dnl Copyright (C) 2005-2007, 2009-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2005-2007, 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/sockpfaf.m4 b/m4/sockpfaf.m4 index 17e14c7..6c6dc2f 100644 --- a/m4/sockpfaf.m4 +++ b/m4/sockpfaf.m4 @@ -1,5 +1,5 @@ # sockpfaf.m4 serial 10 -dnl Copyright (C) 2004, 2006, 2009-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2004, 2006, 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/ssize_t.m4 b/m4/ssize_t.m4 index f0ed509..1c12c33 100644 --- a/m4/ssize_t.m4 +++ b/m4/ssize_t.m4 @@ -1,5 +1,5 @@ # ssize_t.m4 serial 5 (gettext-0.18.2) -dnl Copyright (C) 2001-2003, 2006, 2010-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2001-2003, 2006, 2010-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/stack-direction.m4 b/m4/stack-direction.m4 index 9328725..7378d68 100644 --- a/m4/stack-direction.m4 +++ b/m4/stack-direction.m4 @@ -1,5 +1,5 @@ -# stack-direction.m4 serial 7 -dnl Copyright (C) 2002-2021 Free Software Foundation, Inc. +# stack-direction.m4 serial 11 +dnl Copyright (C) 2002-2023 Free Software Foundation, Inc. dnl This file is free software, distributed under the terms of the GNU dnl General Public License. As a special exception to the GNU General dnl Public License, this file may be distributed as part of a program @@ -18,42 +18,62 @@ AC_DEFUN([SV_STACK_DIRECTION], a29k | \ aarch64* | \ alpha* | \ - arc | \ + arc | arceb | arc32 | arc64 | \ arm* | strongarm* | xscale* | \ avr | avr32 | \ bfin | \ c1 | c2 | c32 | c34 | c38 | \ clipper | \ + cr16 | \ cris | \ + csky | \ d30v | \ + epiphany | \ elxsi | \ fr30 | \ + frv | \ + ft32 | \ h8300 | \ i?86 | x86_64 | \ i860 | \ ia64 | \ + iq2000 | \ + lm32 | \ + loongarch* | \ + m32c | \ m32r | \ m68* | \ m88k | \ mcore | \ - microblaze | \ + microblaze* | \ mips* | \ mmix | \ mn10200 | \ mn10300 | \ - nios2 | \ + moxie | \ + msp430 | \ nds32* | \ + nios2 | nios2eb | nios2el | \ ns32k | \ + nvptx | \ + or1k | \ pdp11 | \ pj* | \ powerpc* | rs6000 | \ + pru | \ riscv* | \ + rl78 | \ romp | \ + rx | \ s390* | \ sh* | \ sparc* | \ + tic6x | \ + tilegx | \ + tilepro | \ v850 | \ vax | \ + visium | \ xtensa) sv_cv_stack_direction=-1 ;; c4x | \ @@ -78,7 +98,7 @@ find_stack_direction (int *addr, int depth) return dir + dummy; } int -main (int argc, char *argv[]) +main (int argc, char *argv[[]]) { printf ("%d\n", find_stack_direction (NULL, argc + 20)); return 0; diff --git a/m4/stat-time.m4 b/m4/stat-time.m4 index df1c2a7..40993d5 100644 --- a/m4/stat-time.m4 +++ b/m4/stat-time.m4 @@ -1,6 +1,6 @@ # Checks for stat-related time functions. -# Copyright (C) 1998-1999, 2001, 2003, 2005-2007, 2009-2021 Free Software +# Copyright (C) 1998-1999, 2001, 2003, 2005-2007, 2009-2023 Free Software # Foundation, Inc. # This file is free software; the Free Software Foundation diff --git a/m4/stat.m4 b/m4/stat.m4 index 9bcdb72..6d1628c 100644 --- a/m4/stat.m4 +++ b/m4/stat.m4 @@ -1,6 +1,6 @@ -# serial 18 +# serial 19 -# Copyright (C) 2009-2021 Free Software Foundation, Inc. +# Copyright (C) 2009-2023 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -45,6 +45,8 @@ AC_DEFUN([gl_FUNC_STAT], [case "$host_os" in # Guess yes on Linux systems. linux-* | linux) gl_cv_func_stat_file_slash="guessing yes" ;; + # Guess yes on systems that emulate the Linux system calls. + midipix*) gl_cv_func_stat_file_slash="guessing yes" ;; # Guess yes on glibc systems. *-gnu* | gnu*) gl_cv_func_stat_file_slash="guessing yes" ;; # If we don't know, obey --enable-cross-guesses. diff --git a/m4/stdalign.m4 b/m4/stdalign.m4 index e22d7f7..1a236d6 100644 --- a/m4/stdalign.m4 +++ b/m4/stdalign.m4 @@ -1,20 +1,28 @@ -# Check for stdalign.h that conforms to C11. +# Check for alignas and alignof that conform to C23. -dnl Copyright 2011-2021 Free Software Foundation, Inc. +dnl Copyright 2011-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. +dnl Written by Paul Eggert and Bruno Haible. + # Prepare for substituting if it is not supported. -AC_DEFUN([gl_STDALIGN_H], +AC_DEFUN([gl_ALIGNASOF], [ - AC_CACHE_CHECK([for working stdalign.h], + AC_CACHE_CHECK([for alignas and alignof], [gl_cv_header_working_stdalign_h], - [AC_COMPILE_IFELSE( + [gl_save_CFLAGS=$CFLAGS + for gl_working in "yes, keywords" "yes, macros"; do + AS_CASE([$gl_working], + [*stdalign.h*], [CFLAGS="$gl_save_CFLAGS -DINCLUDE_STDALIGN_H"]) + AC_COMPILE_IFELSE( [AC_LANG_PROGRAM( [[#include - #include + #ifdef INCLUDE_STDALIGN_H + #include + #endif #include /* Test that alignof yields a result consistent with offsetof. @@ -30,7 +38,7 @@ AC_DEFUN([gl_STDALIGN_H], char test_long[ao (long int) % _Alignof (long int) == 0 ? 1 : -1]; char test_alignof[alignof (double) == _Alignof (double) ? 1 : -1]; - /* Test _Alignas only on platforms where gnulib can help. */ + /* Test alignas only on platforms where gnulib can help. */ #if \ ((defined __cplusplus && 201103 <= __cplusplus) \ || (__TINYC__ && defined __attribute__) \ @@ -45,15 +53,148 @@ AC_DEFUN([gl_STDALIGN_H], ? 1 : -1]; #endif ]])], - [gl_cv_header_working_stdalign_h=yes], - [gl_cv_header_working_stdalign_h=no])]) + [gl_cv_header_working_stdalign_h=$gl_working], + [gl_cv_header_working_stdalign_h=no]) + + CFLAGS=$gl_save_CFLAGS + test "$gl_cv_header_working_stdalign_h" != no && break + done]) + + AS_CASE([$gl_cv_header_working_stdalign_h], + [yes*keyword*], + [AC_DEFINE([HAVE_C_ALIGNASOF], [1], + [Define to 1 if the alignas and alignof keywords work.])]) + + dnl The "zz" puts this toward config.h's end, to avoid potential + dnl collisions with other definitions. + AH_VERBATIM([zzalignas], +[#if !defined HAVE_C_ALIGNASOF && __cplusplus < 201103 && !defined alignof +# if HAVE_STDALIGN_H +# include +# endif + +/* ISO C23 alignas and alignof for platforms that lack it. + + References: + ISO C23 (latest free draft + ) + sections 6.5.3.4, 6.7.5, 7.15. + C++11 (latest free draft + ) + section 18.10. */ + +/* alignof (TYPE), also known as _Alignof (TYPE), yields the alignment + requirement of a structure member (i.e., slot or field) that is of + type TYPE, as an integer constant expression. + + This differs from GCC's and clang's __alignof__ operator, which can + yield a better-performing alignment for an object of that type. For + example, on x86 with GCC and on Linux/x86 with clang, + __alignof__ (double) and __alignof__ (long long) are 8, whereas + alignof (double) and alignof (long long) are 4 unless the option + '-malign-double' is used. + + The result cannot be used as a value for an 'enum' constant, if you + want to be portable to HP-UX 10.20 cc and AIX 3.2.5 xlc. */ + +/* GCC releases before GCC 4.9 had a bug in _Alignof. See GCC bug 52023 + . + clang versions < 8.0.0 have the same bug. */ +# if (!defined __STDC_VERSION__ || __STDC_VERSION__ < 201112 \ + || (defined __GNUC__ && __GNUC__ < 4 + (__GNUC_MINOR__ < 9) \ + && !defined __clang__) \ + || (defined __clang__ && __clang_major__ < 8)) +# undef/**/_Alignof +# ifdef __cplusplus +# if (201103 <= __cplusplus || defined _MSC_VER) +# define _Alignof(type) alignof (type) +# else + template struct __alignof_helper { char __a; __t __b; }; +# define _Alignof(type) offsetof (__alignof_helper, __b) +# define _GL_STDALIGN_NEEDS_STDDEF 1 +# endif +# else +# if (defined __GNUC__ && 4 <= __GNUC__) || defined __clang__ +# define _Alignof(type) __builtin_offsetof (struct { char __a; type __b; }, __b) +# else +# define _Alignof(type) offsetof (struct { char __a; type __b; }, __b) +# define _GL_STDALIGN_NEEDS_STDDEF 1 +# endif +# endif +# endif +# if ! (defined __cplusplus && (201103 <= __cplusplus || defined _MSC_VER)) +# undef/**/alignof +# define alignof _Alignof +# endif + +/* alignas (A), also known as _Alignas (A), aligns a variable or type + to the alignment A, where A is an integer constant expression. For + example: - if test $gl_cv_header_working_stdalign_h = yes; then - STDALIGN_H='' + int alignas (8) foo; + struct s { int a; int alignas (8) bar; }; + + aligns the address of FOO and the offset of BAR to be multiples of 8. + + A should be a power of two that is at least the type's alignment + and at most the implementation's alignment limit. This limit is + 2**28 on typical GNUish hosts, and 2**13 on MSVC. To be portable + to MSVC through at least version 10.0, A should be an integer + constant, as MSVC does not support expressions such as 1 << 3. + To be portable to Sun C 5.11, do not align auto variables to + anything stricter than their default alignment. + + The following C23 requirements are not supported here: + + - If A is zero, alignas has no effect. + - alignas can be used multiple times; the strictest one wins. + - alignas (TYPE) is equivalent to alignas (alignof (TYPE)). + + */ +# if !defined __STDC_VERSION__ || __STDC_VERSION__ < 201112 +# if defined __cplusplus && (201103 <= __cplusplus || defined _MSC_VER) +# define _Alignas(a) alignas (a) +# elif (!defined __attribute__ \ + && ((defined __APPLE__ && defined __MACH__ \ + ? 4 < __GNUC__ + (1 <= __GNUC_MINOR__) \ + : __GNUC__ && !defined __ibmxl__) \ + || (4 <= __clang_major__) \ + || (__ia64 && (61200 <= __HP_cc || 61200 <= __HP_aCC)) \ + || __ICC || 0x590 <= __SUNPRO_C || 0x0600 <= __xlC__)) +# define _Alignas(a) __attribute__ ((__aligned__ (a))) +# elif 1300 <= _MSC_VER +# define _Alignas(a) __declspec (align (a)) +# endif +# endif +# if !HAVE_STDALIGN_H +# if ((defined _Alignas \ + && !(defined __cplusplus \ + && (201103 <= __cplusplus || defined _MSC_VER))) \ + || (defined __STDC_VERSION__ && 201112 <= __STDC_VERSION__)) +# define alignas _Alignas +# endif +# endif + +# if _GL_STDALIGN_NEEDS_STDDEF +# include +# endif +#endif]) +]) + +AC_DEFUN([gl_STDALIGN_H], +[ + AC_REQUIRE([gl_ALIGNASOF]) + if test "$gl_cv_header_working_stdalign_h" = no; then + GL_GENERATE_STDALIGN_H=true else - STDALIGN_H='stdalign.h' + GL_GENERATE_STDALIGN_H=false fi - AC_SUBST([STDALIGN_H]) - AM_CONDITIONAL([GL_GENERATE_STDALIGN_H], [test -n "$STDALIGN_H"]) + gl_CHECK_NEXT_HEADERS([stdalign.h]) + if test $ac_cv_header_stdalign_h = yes; then + HAVE_STDALIGN_H=1 + else + HAVE_STDALIGN_H=0 + fi + AC_SUBST([HAVE_STDALIGN_H]) ]) diff --git a/m4/stdarg.m4 b/m4/stdarg.m4 index 0b5fb63..94787cc 100644 --- a/m4/stdarg.m4 +++ b/m4/stdarg.m4 @@ -1,5 +1,5 @@ -# stdarg.m4 serial 7 -dnl Copyright (C) 2006, 2008-2021 Free Software Foundation, Inc. +# stdarg.m4 serial 8 +dnl Copyright (C) 2006, 2008-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -9,7 +9,7 @@ dnl Provide a working va_copy in combination with . AC_DEFUN([gl_STDARG_H], [ - STDARG_H='' + GL_GENERATE_STDARG_H=false NEXT_STDARG_H='' AC_CACHE_CHECK([for va_copy], [gl_cv_func_va_copy], @@ -40,7 +40,7 @@ void (*func) (va_list, va_list) = va_copy; ], [gl_aixcc=yes], [gl_aixcc=no]) if test $gl_aixcc = yes; then dnl Provide a substitute file. - STDARG_H=stdarg.h + GL_GENERATE_STDARG_H=true gl_NEXT_HEADERS([stdarg.h]) dnl Fallback for the case when contains only macro definitions. if test "$gl_cv_next_stdarg_h" = '""'; then @@ -72,7 +72,5 @@ error, bail out fi fi fi - AC_SUBST([STDARG_H]) - AM_CONDITIONAL([GL_GENERATE_STDARG_H], [test -n "$STDARG_H"]) AC_SUBST([NEXT_STDARG_H]) ]) diff --git a/m4/stdbool.m4 b/m4/stdbool.m4 deleted file mode 100644 index 3169779..0000000 --- a/m4/stdbool.m4 +++ /dev/null @@ -1,122 +0,0 @@ -# Check for stdbool.h that conforms to C99. - -dnl Copyright (C) 2002-2006, 2009-2021 Free Software Foundation, Inc. -dnl This file is free software; the Free Software Foundation -dnl gives unlimited permission to copy and/or distribute it, -dnl with or without modifications, as long as this notice is preserved. - -#serial 8 - -# Prepare for substituting if it is not supported. - -AC_DEFUN([AM_STDBOOL_H], -[ - AC_REQUIRE([AC_CHECK_HEADER_STDBOOL]) - AC_REQUIRE([AC_CANONICAL_HOST]) - - dnl On some platforms, does not exist or does not conform to C99. - dnl On Solaris 10 with CC=cc CXX=CC, exists but is not usable - dnl in C++ mode (and no exists). In this case, we use our - dnl replacement, also in C mode (for binary compatibility between C and C++). - if test "$ac_cv_header_stdbool_h" = yes; then - case "$host_os" in - solaris*) - if test -z "$GCC"; then - STDBOOL_H='stdbool.h' - else - STDBOOL_H='' - fi - ;; - *) - STDBOOL_H='' - ;; - esac - else - STDBOOL_H='stdbool.h' - fi - AC_SUBST([STDBOOL_H]) - AM_CONDITIONAL([GL_GENERATE_STDBOOL_H], [test -n "$STDBOOL_H"]) - - if test "$ac_cv_type__Bool" = yes; then - HAVE__BOOL=1 - else - HAVE__BOOL=0 - fi - AC_SUBST([HAVE__BOOL]) -]) - -# AM_STDBOOL_H will be renamed to gl_STDBOOL_H in the future. -AC_DEFUN([gl_STDBOOL_H], [AM_STDBOOL_H]) - -# This version of the macro is needed in autoconf <= 2.68. - -AC_DEFUN([AC_CHECK_HEADER_STDBOOL], - [AC_CACHE_CHECK([for stdbool.h that conforms to C99], - [ac_cv_header_stdbool_h], - [AC_COMPILE_IFELSE( - [AC_LANG_PROGRAM( - [[ - #include - - #ifdef __cplusplus - typedef bool Bool; - #else - typedef _Bool Bool; - #ifndef bool - "error: bool is not defined" - #endif - #ifndef false - "error: false is not defined" - #endif - #if false - "error: false is not 0" - #endif - #ifndef true - "error: true is not defined" - #endif - #if true != 1 - "error: true is not 1" - #endif - #endif - - #ifndef __bool_true_false_are_defined - "error: __bool_true_false_are_defined is not defined" - #endif - - struct s { Bool s: 1; Bool t; bool u: 1; bool v; } s; - - char a[true == 1 ? 1 : -1]; - char b[false == 0 ? 1 : -1]; - char c[__bool_true_false_are_defined == 1 ? 1 : -1]; - char d[(bool) 0.5 == true ? 1 : -1]; - /* See body of main program for 'e'. */ - char f[(Bool) 0.0 == false ? 1 : -1]; - char g[true]; - char h[sizeof (Bool)]; - char i[sizeof s.t]; - enum { j = false, k = true, l = false * true, m = true * 256 }; - /* The following fails for - HP aC++/ANSI C B3910B A.05.55 [Dec 04 2003]. */ - Bool n[m]; - char o[sizeof n == m * sizeof n[0] ? 1 : -1]; - char p[-1 - (Bool) 0 < 0 && -1 - (bool) 0 < 0 ? 1 : -1]; - /* Catch a bug in an HP-UX C compiler. See - https://gcc.gnu.org/ml/gcc-patches/2003-12/msg02303.html - https://lists.gnu.org/r/bug-coreutils/2005-11/msg00161.html - */ - Bool q = true; - Bool *pq = &q; - bool *qq = &q; - ]], - [[ - bool e = &s; - *pq |= q; *pq |= ! q; - *qq |= q; *qq |= ! q; - /* Refer to every declared value, to avoid compiler optimizations. */ - return (!a + !b + !c + !d + !e + !f + !g + !h + !i + !!j + !k + !!l - + !m + !n + !o + !p + !q + !pq + !qq); - ]])], - [ac_cv_header_stdbool_h=yes], - [ac_cv_header_stdbool_h=no])]) - AC_CHECK_TYPES([_Bool]) -]) diff --git a/m4/stddef_h.m4 b/m4/stddef_h.m4 index 1303d2e..aa01221 100644 --- a/m4/stddef_h.m4 +++ b/m4/stddef_h.m4 @@ -1,5 +1,5 @@ -# stddef_h.m4 serial 11 -dnl Copyright (C) 2009-2021 Free Software Foundation, Inc. +# stddef_h.m4 serial 14 +dnl Copyright (C) 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -14,7 +14,7 @@ AC_DEFUN_ONCE([gl_STDDEF_H], dnl Persuade OpenBSD to declare max_align_t. AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS]) - STDDEF_H= + GL_GENERATE_STDDEF_H=false dnl Test whether the type max_align_t exists and whether its alignment dnl "is as great as is supported by the implementation in all contexts". @@ -22,7 +22,14 @@ AC_DEFUN_ONCE([gl_STDDEF_H], [gl_cv_type_max_align_t], [AC_COMPILE_IFELSE( [AC_LANG_PROGRAM( - [[#include + [[/* On FreeBSD 12.0/x86, max_align_t defined by has + the correct alignment with the default (wrong) definition of + _Alignof, but a wrong alignment as soon as we activate an + ISO C compliant _Alignof definition. */ + #if ((defined __GNUC__ && 4 <= __GNUC__) || defined __clang__) && !defined __cplusplus + #define _Alignof(type) __builtin_offsetof (struct { char __a; type __b; }, __b) + #endif + #include unsigned int s = sizeof (max_align_t); #if defined __GNUC__ || defined __clang__ || defined __IBM__ALIGNOF__ int check1[2 * (__alignof__ (double) <= __alignof__ (max_align_t)) - 1]; @@ -41,12 +48,12 @@ AC_DEFUN_ONCE([gl_STDDEF_H], ]) if test $gl_cv_type_max_align_t = no; then HAVE_MAX_ALIGN_T=0 - STDDEF_H=stddef.h + GL_GENERATE_STDDEF_H=true fi if test $gt_cv_c_wchar_t = no; then HAVE_WCHAR_T=0 - STDDEF_H=stddef.h + GL_GENERATE_STDDEF_H=true fi AC_CACHE_CHECK([whether NULL can be used in arbitrary expressions], @@ -58,12 +65,25 @@ AC_DEFUN_ONCE([gl_STDDEF_H], [gl_cv_decl_null_works=no])]) if test $gl_cv_decl_null_works = no; then REPLACE_NULL=1 - STDDEF_H=stddef.h + GL_GENERATE_STDDEF_H=true + fi + + AC_CACHE_CHECK([for unreachable], + [gl_cv_func_unreachable], + [AC_LINK_IFELSE( + [AC_LANG_PROGRAM( + [[#include + ]], + [[unreachable (); + ]])], + [gl_cv_func_unreachable=yes], + [gl_cv_func_unreachable=no]) + ]) + if test $gl_cv_func_unreachable = no; then + GL_GENERATE_STDDEF_H=true fi - AC_SUBST([STDDEF_H]) - AM_CONDITIONAL([GL_GENERATE_STDDEF_H], [test -n "$STDDEF_H"]) - if test -n "$STDDEF_H"; then + if $GL_GENERATE_STDDEF_H; then gl_NEXT_HEADERS([stddef.h]) fi ]) diff --git a/m4/stdint.m4 b/m4/stdint.m4 index 2eb1652..d6961b0 100644 --- a/m4/stdint.m4 +++ b/m4/stdint.m4 @@ -1,5 +1,5 @@ -# stdint.m4 serial 60 -dnl Copyright (C) 2001-2021 Free Software Foundation, Inc. +# stdint.m4 serial 61 +dnl Copyright (C) 2001-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -296,7 +296,7 @@ static const char *macro_values[] = HAVE_C99_STDINT_H=0 HAVE_SYS_BITYPES_H=0 HAVE_SYS_INTTYPES_H=0 - STDINT_H=stdint.h + GL_GENERATE_STDINT_H=true case "$gl_cv_header_working_stdint_h" in *yes) HAVE_C99_STDINT_H=1 @@ -341,7 +341,7 @@ int32_t i32 = INT32_C (0x7fffffff); ]])], [gl_cv_header_stdint_width=yes])]) if test "$gl_cv_header_stdint_width" = yes; then - STDINT_H= + GL_GENERATE_STDINT_H=false fi ;; *) @@ -364,8 +364,6 @@ int32_t i32 = INT32_C (0x7fffffff); AC_SUBST([HAVE_C99_STDINT_H]) AC_SUBST([HAVE_SYS_BITYPES_H]) AC_SUBST([HAVE_SYS_INTTYPES_H]) - AC_SUBST([STDINT_H]) - AM_CONDITIONAL([GL_GENERATE_STDINT_H], [test -n "$STDINT_H"]) ]) dnl gl_STDINT_BITSIZEOF(TYPES, INCLUDES) diff --git a/m4/stdint_h.m4 b/m4/stdint_h.m4 index 18aa50a..70349f6 100644 --- a/m4/stdint_h.m4 +++ b/m4/stdint_h.m4 @@ -1,5 +1,5 @@ # stdint_h.m4 serial 9 -dnl Copyright (C) 1997-2004, 2006, 2008-2021 Free Software Foundation, Inc. +dnl Copyright (C) 1997-2004, 2006, 2008-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/stdio_h.m4 b/m4/stdio_h.m4 index e704383..dbfa0d5 100644 --- a/m4/stdio_h.m4 +++ b/m4/stdio_h.m4 @@ -1,12 +1,22 @@ -# stdio_h.m4 serial 56 -dnl Copyright (C) 2007-2021 Free Software Foundation, Inc. +# stdio_h.m4 serial 63 +dnl Copyright (C) 2007-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. -AC_DEFUN_ONCE([gl_STDIO_H], +AC_DEFUN([gl_STDIO_H_EARLY], [ - AC_REQUIRE([gl_STDIO_H_DEFAULTS]) + dnl Defining __USE_MINGW_ANSI_STDIO to 1 must be done early, because + dnl the results of several configure tests depend on it: The tests + dnl - checking whether snprintf returns a byte count as in C99... + dnl - checking whether snprintf truncates the result as in C99... + dnl - checking whether printf supports the 'F' directive... + dnl - checking whether printf supports the grouping flag... + dnl - checking whether printf supports the zero flag correctly... + dnl - checking whether printf supports infinite 'double' arguments... + dnl - checking whether printf supports large precisions... + dnl report 'yes' if __USE_MINGW_ANSI_STDIO is 1 but 'no' if + dnl __USE_MINGW_ANSI_STDIO is not set. AH_VERBATIM([MINGW_ANSI_STDIO], [/* Use GNU style printf and scanf. */ #ifndef __USE_MINGW_ANSI_STDIO @@ -14,6 +24,11 @@ AC_DEFUN_ONCE([gl_STDIO_H], #endif ]) AC_DEFINE([__USE_MINGW_ANSI_STDIO]) +]) + +AC_DEFUN_ONCE([gl_STDIO_H], +[ + AC_REQUIRE([gl_STDIO_H_DEFAULTS]) gl_NEXT_HEADERS([stdio.h]) dnl Determine whether __USE_MINGW_ANSI_STDIO makes printf and @@ -40,41 +55,35 @@ AC_DEFUN_ONCE([gl_STDIO_H], attribute "__gnu_printf__" instead of "__printf__"]) fi - dnl This ifdef is necessary to avoid an error "missing file lib/stdio-read.c" - dnl "expected source file, required through AC_LIBSOURCES, not found". It is - dnl also an optimization, to avoid performing a configure check whose result - dnl is not used. But it does not make the test of GNULIB_STDIO_H_NONBLOCKING - dnl or GNULIB_NONBLOCKING redundant. + dnl For defining _PRINTF_NAN_LEN_MAX. + gl_MUSL_LIBC + + dnl This ifdef is an optimization, to avoid performing a configure check whose + dnl result is not used. But it does not make the test of + dnl GNULIB_STDIO_H_NONBLOCKING or GNULIB_NONBLOCKING redundant. m4_ifdef([gl_NONBLOCKING_IO], [ gl_NONBLOCKING_IO if test $gl_cv_have_nonblocking != yes; then REPLACE_STDIO_READ_FUNCS=1 - AC_LIBOBJ([stdio-read]) fi ]) - dnl This ifdef is necessary to avoid an error "missing file lib/stdio-write.c" - dnl "expected source file, required through AC_LIBSOURCES, not found". It is - dnl also an optimization, to avoid performing a configure check whose result - dnl is not used. But it does not make the test of GNULIB_STDIO_H_SIGPIPE or - dnl GNULIB_SIGPIPE redundant. + dnl This ifdef is an optimization, to avoid performing a configure check whose + dnl result is not used. But it does not make the test of + dnl GNULIB_STDIO_H_SIGPIPE or GNULIB_SIGPIPE redundant. m4_ifdef([gl_SIGNAL_SIGPIPE], [ gl_SIGNAL_SIGPIPE if test $gl_cv_header_signal_h_SIGPIPE != yes; then REPLACE_STDIO_WRITE_FUNCS=1 - AC_LIBOBJ([stdio-write]) fi ]) - dnl This ifdef is necessary to avoid an error "missing file lib/stdio-write.c" - dnl "expected source file, required through AC_LIBSOURCES, not found". It is - dnl also an optimization, to avoid performing a configure check whose result - dnl is not used. But it does not make the test of GNULIB_STDIO_H_NONBLOCKING - dnl or GNULIB_NONBLOCKING redundant. + dnl This ifdef is an optimization, to avoid performing a configure check whose + dnl result is not used. But it does not make the test of + dnl GNULIB_STDIO_H_NONBLOCKING or GNULIB_NONBLOCKING redundant. m4_ifdef([gl_NONBLOCKING_IO], [ gl_NONBLOCKING_IO if test $gl_cv_have_nonblocking != yes; then REPLACE_STDIO_WRITE_FUNCS=1 - AC_LIBOBJ([stdio-write]) fi ]) @@ -91,6 +100,16 @@ AC_DEFUN_ONCE([gl_STDIO_H], if test $ac_cv_have_decl_fcloseall = no; then HAVE_DECL_FCLOSEALL=0 fi + + AC_CHECK_DECLS_ONCE([getw]) + if test $ac_cv_have_decl_getw = no; then + HAVE_DECL_GETW=0 + fi + + AC_CHECK_DECLS_ONCE([putw]) + if test $ac_cv_have_decl_putw = no; then + HAVE_DECL_PUTW=0 + fi ]) # gl_STDIO_MODULE_INDICATOR([modulename]) @@ -119,6 +138,7 @@ AC_DEFUN([gl_STDIO_H_REQUIRE_DEFAULTS], gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FGETC]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FGETS]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FOPEN]) + gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FOPEN_GNU]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FPRINTF]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FPRINTF_POSIX]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FPURGE]) @@ -186,7 +206,9 @@ AC_DEFUN([gl_STDIO_H_DEFAULTS], HAVE_DECL_FTELLO=1; AC_SUBST([HAVE_DECL_FTELLO]) HAVE_DECL_GETDELIM=1; AC_SUBST([HAVE_DECL_GETDELIM]) HAVE_DECL_GETLINE=1; AC_SUBST([HAVE_DECL_GETLINE]) + HAVE_DECL_GETW=1; AC_SUBST([HAVE_DECL_GETW]) HAVE_DECL_OBSTACK_PRINTF=1; AC_SUBST([HAVE_DECL_OBSTACK_PRINTF]) + HAVE_DECL_PUTW=1; AC_SUBST([HAVE_DECL_PUTW]) HAVE_DECL_SNPRINTF=1; AC_SUBST([HAVE_DECL_SNPRINTF]) HAVE_DECL_VSNPRINTF=1; AC_SUBST([HAVE_DECL_VSNPRINTF]) HAVE_DPRINTF=1; AC_SUBST([HAVE_DPRINTF]) @@ -202,6 +224,7 @@ AC_DEFUN([gl_STDIO_H_DEFAULTS], REPLACE_FDOPEN=0; AC_SUBST([REPLACE_FDOPEN]) REPLACE_FFLUSH=0; AC_SUBST([REPLACE_FFLUSH]) REPLACE_FOPEN=0; AC_SUBST([REPLACE_FOPEN]) + REPLACE_FOPEN_FOR_FOPEN_GNU=0; AC_SUBST([REPLACE_FOPEN_FOR_FOPEN_GNU]) REPLACE_FPRINTF=0; AC_SUBST([REPLACE_FPRINTF]) REPLACE_FPURGE=0; AC_SUBST([REPLACE_FPURGE]) REPLACE_FREOPEN=0; AC_SUBST([REPLACE_FREOPEN]) diff --git a/m4/stdlib_h.m4 b/m4/stdlib_h.m4 index 9c1d1c7..f47c1eb 100644 --- a/m4/stdlib_h.m4 +++ b/m4/stdlib_h.m4 @@ -1,5 +1,5 @@ -# stdlib_h.m4 serial 63 -dnl Copyright (C) 2007-2021 Free Software Foundation, Inc. +# stdlib_h.m4 serial 75 +dnl Copyright (C) 2007-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -23,15 +23,58 @@ AC_DEFUN_ONCE([gl_STDLIB_H], # include #endif ]], [_Exit aligned_alloc atoll canonicalize_file_name free - getloadavg getsubopt grantpt - initstate initstate_r mbtowc mkdtemp mkostemp mkostemps mkstemp mkstemps - posix_memalign posix_openpt ptsname ptsname_r qsort_r + getloadavg getprogname getsubopt grantpt + initstate initstate_r mbstowcs mbtowc mkdtemp mkostemp mkostemps mkstemp + mkstemps posix_memalign posix_openpt ptsname ptsname_r qsort_r random random_r reallocarray realpath rpmatch secure_getenv setenv setstate setstate_r srandom srandom_r strtod strtol strtold strtoll strtoul strtoull unlockpt unsetenv]) AC_REQUIRE([AC_C_RESTRICT]) + dnl Test whether MB_CUR_MAX needs to be overridden. + dnl On Solaris 10, in UTF-8 locales, its value is 3 but needs to be 4. + dnl Fortunately, we can do this because on this platform MB_LEN_MAX is 5. + AC_REQUIRE([AC_CANONICAL_HOST]) + AC_REQUIRE([gt_LOCALE_FR_UTF8]) + AC_CACHE_CHECK([whether MB_CUR_MAX is correct], + [gl_cv_macro_MB_CUR_MAX_good], + [ + dnl Initial guess, used when cross-compiling or when no suitable locale + dnl is present. +changequote(,)dnl + case "$host_os" in + # Guess no on Solaris. + solaris*) gl_cv_macro_MB_CUR_MAX_good="guessing no" ;; + # Guess yes otherwise. + *) gl_cv_macro_MB_CUR_MAX_good="guessing yes" ;; + esac +changequote([,])dnl + if test $LOCALE_FR_UTF8 != none; then + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ +#include +#include +int main () +{ + int result = 0; + if (setlocale (LC_ALL, "$LOCALE_FR_UTF8") != NULL) + { + if (MB_CUR_MAX < 4) + result |= 1; + } + return result; +}]])], + [gl_cv_macro_MB_CUR_MAX_good=yes], + [gl_cv_macro_MB_CUR_MAX_good=no], + [:]) + fi + ]) + case "$gl_cv_macro_MB_CUR_MAX_good" in + *yes) ;; + *) REPLACE_MB_CUR_MAX=1 ;; + esac + AC_CHECK_DECLS_ONCE([ecvt]) if test $ac_cv_have_decl_ecvt = no; then HAVE_DECL_ECVT=0 @@ -68,13 +111,17 @@ AC_DEFUN([gl_STDLIB_H_REQUIRE_DEFAULTS], gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB__EXIT]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ALIGNED_ALLOC]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ATOLL]) + gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_CALLOC_GNU]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_CALLOC_POSIX]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_CANONICALIZE_FILE_NAME]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FREE_POSIX]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_GETLOADAVG]) + gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_GETPROGNAME]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_GETSUBOPT]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_GRANTPT]) + gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MALLOC_GNU]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MALLOC_POSIX]) + gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MBSTOWCS]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MBTOWC]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MKDTEMP]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MKOSTEMP]) @@ -90,6 +137,7 @@ AC_DEFUN([gl_STDLIB_H_REQUIRE_DEFAULTS], gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_RANDOM]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_RANDOM_R]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_REALLOCARRAY]) + gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_REALLOC_GNU]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_REALLOC_POSIX]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_REALPATH]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_RPMATCH]) @@ -127,6 +175,8 @@ AC_DEFUN([gl_STDLIB_H_DEFAULTS], HAVE_DECL_FCVT=1; AC_SUBST([HAVE_DECL_FCVT]) HAVE_DECL_GCVT=1; AC_SUBST([HAVE_DECL_GCVT]) HAVE_DECL_GETLOADAVG=1; AC_SUBST([HAVE_DECL_GETLOADAVG]) + HAVE_DECL_PROGRAM_INVOCATION_NAME=1; AC_SUBST([HAVE_DECL_PROGRAM_INVOCATION_NAME]) + HAVE_GETPROGNAME=1; AC_SUBST([HAVE_GETPROGNAME]) HAVE_GETSUBOPT=1; AC_SUBST([HAVE_GETSUBOPT]) HAVE_GRANTPT=1; AC_SUBST([HAVE_GRANTPT]) HAVE_INITSTATE=1; AC_SUBST([HAVE_INITSTATE]) @@ -163,22 +213,34 @@ AC_DEFUN([gl_STDLIB_H_DEFAULTS], HAVE_SYS_LOADAVG_H=0; AC_SUBST([HAVE_SYS_LOADAVG_H]) HAVE_UNLOCKPT=1; AC_SUBST([HAVE_UNLOCKPT]) HAVE_DECL_UNSETENV=1; AC_SUBST([HAVE_DECL_UNSETENV]) + REPLACE__EXIT=0; AC_SUBST([REPLACE__EXIT]) REPLACE_ALIGNED_ALLOC=0; AC_SUBST([REPLACE_ALIGNED_ALLOC]) - REPLACE_CALLOC=0; AC_SUBST([REPLACE_CALLOC]) + REPLACE_CALLOC_FOR_CALLOC_GNU=0; AC_SUBST([REPLACE_CALLOC_FOR_CALLOC_GNU]) + REPLACE_CALLOC_FOR_CALLOC_POSIX=0; AC_SUBST([REPLACE_CALLOC_FOR_CALLOC_POSIX]) REPLACE_CANONICALIZE_FILE_NAME=0; AC_SUBST([REPLACE_CANONICALIZE_FILE_NAME]) REPLACE_FREE=0; AC_SUBST([REPLACE_FREE]) + REPLACE_GETLOADAVG=0; AC_SUBST([REPLACE_GETLOADAVG]) + REPLACE_GETPROGNAME=0; AC_SUBST([REPLACE_GETPROGNAME]) + REPLACE_GETSUBOPT=0; AC_SUBST([REPLACE_GETSUBOPT]) REPLACE_INITSTATE=0; AC_SUBST([REPLACE_INITSTATE]) - REPLACE_MALLOC=0; AC_SUBST([REPLACE_MALLOC]) + REPLACE_MALLOC_FOR_MALLOC_GNU=0; AC_SUBST([REPLACE_MALLOC_FOR_MALLOC_GNU]) + REPLACE_MALLOC_FOR_MALLOC_POSIX=0; AC_SUBST([REPLACE_MALLOC_FOR_MALLOC_POSIX]) + REPLACE_MB_CUR_MAX=0; AC_SUBST([REPLACE_MB_CUR_MAX]) + REPLACE_MBSTOWCS=0; AC_SUBST([REPLACE_MBSTOWCS]) REPLACE_MBTOWC=0; AC_SUBST([REPLACE_MBTOWC]) + REPLACE_MKOSTEMP=0; AC_SUBST([REPLACE_MKOSTEMP]) + REPLACE_MKOSTEMPS=0; AC_SUBST([REPLACE_MKOSTEMPS]) REPLACE_MKSTEMP=0; AC_SUBST([REPLACE_MKSTEMP]) REPLACE_POSIX_MEMALIGN=0; AC_SUBST([REPLACE_POSIX_MEMALIGN]) + REPLACE_POSIX_OPENPT=0; AC_SUBST([REPLACE_POSIX_OPENPT]) REPLACE_PTSNAME=0; AC_SUBST([REPLACE_PTSNAME]) REPLACE_PTSNAME_R=0; AC_SUBST([REPLACE_PTSNAME_R]) REPLACE_PUTENV=0; AC_SUBST([REPLACE_PUTENV]) REPLACE_QSORT_R=0; AC_SUBST([REPLACE_QSORT_R]) REPLACE_RANDOM=0; AC_SUBST([REPLACE_RANDOM]) REPLACE_RANDOM_R=0; AC_SUBST([REPLACE_RANDOM_R]) - REPLACE_REALLOC=0; AC_SUBST([REPLACE_REALLOC]) + REPLACE_REALLOC_FOR_REALLOC_GNU=0; AC_SUBST([REPLACE_REALLOC_FOR_REALLOC_GNU]) + REPLACE_REALLOC_FOR_REALLOC_POSIX=0; AC_SUBST([REPLACE_REALLOC_FOR_REALLOC_POSIX]) REPLACE_REALLOCARRAY=0; AC_SUBST([REPLACE_REALLOCARRAY]) REPLACE_REALPATH=0; AC_SUBST([REPLACE_REALPATH]) REPLACE_SETENV=0; AC_SUBST([REPLACE_SETENV]) diff --git a/m4/stpcpy.m4 b/m4/stpcpy.m4 new file mode 100644 index 0000000..f3acbee --- /dev/null +++ b/m4/stpcpy.m4 @@ -0,0 +1,28 @@ +# stpcpy.m4 serial 11 +dnl Copyright (C) 2002, 2007, 2009-2023 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. + +AC_DEFUN([gl_FUNC_STPCPY], +[ + dnl Persuade glibc to declare stpcpy(). + AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS]) + + dnl The stpcpy() declaration in lib/string.in.h uses 'restrict'. + AC_REQUIRE([AC_C_RESTRICT]) + + AC_REQUIRE([gl_STRING_H_DEFAULTS]) + gl_CHECK_FUNCS_ANDROID([stpcpy], [[#include ]]) + if test $ac_cv_func_stpcpy = no; then + HAVE_STPCPY=0 + case "$gl_cv_onwards_func_stpcpy" in + future*) REPLACE_STPCPY=1 ;; + esac + fi +]) + +# Prerequisites of lib/stpcpy.c. +AC_DEFUN([gl_PREREQ_STPCPY], [ + : +]) diff --git a/m4/strcase.m4 b/m4/strcase.m4 index ea88283..3cf740d 100644 --- a/m4/strcase.m4 +++ b/m4/strcase.m4 @@ -1,5 +1,5 @@ # strcase.m4 serial 12 -dnl Copyright (C) 2002, 2005-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2002, 2005-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/strerror.m4 b/m4/strerror.m4 index 438ba92..9f1dddd 100644 --- a/m4/strerror.m4 +++ b/m4/strerror.m4 @@ -1,5 +1,5 @@ -# strerror.m4 serial 22 -dnl Copyright (C) 2002, 2007-2021 Free Software Foundation, Inc. +# strerror.m4 serial 24 +dnl Copyright (C) 2002, 2007-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -13,7 +13,7 @@ AC_DEFUN([gl_FUNC_STRERROR], m4_ifdef([gl_FUNC_STRERROR_R_WORKS], [ AC_REQUIRE([gl_FUNC_STRERROR_R_WORKS]) ]) - if test "$ERRNO_H:$REPLACE_STRERROR_0" = :0; then + if test "$GL_GENERATE_ERRNO_H:$REPLACE_STRERROR_0" = false:0; then AC_CACHE_CHECK([for working strerror function], [gl_cv_func_working_strerror], [AC_RUN_IFELSE( @@ -24,12 +24,12 @@ AC_DEFUN([gl_FUNC_STRERROR], [gl_cv_func_working_strerror=yes], [gl_cv_func_working_strerror=no], [case "$host_os" in - # Guess yes on glibc systems. - *-gnu* | gnu*) gl_cv_func_working_strerror="guessing yes" ;; - # Guess yes on musl systems. - *-musl*) gl_cv_func_working_strerror="guessing yes" ;; - # If we don't know, obey --enable-cross-guesses. - *) gl_cv_func_working_strerror="$gl_cross_guess_normal" ;; + # Guess yes on glibc systems. + *-gnu* | gnu*) gl_cv_func_working_strerror="guessing yes" ;; + # Guess yes on musl systems. + *-musl* | midipix*) gl_cv_func_working_strerror="guessing yes" ;; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_working_strerror="$gl_cross_guess_normal" ;; esac ]) ]) @@ -80,14 +80,14 @@ AC_DEFUN([gl_FUNC_STRERROR_0], [gl_cv_func_strerror_0_works=yes], [gl_cv_func_strerror_0_works=no], [case "$host_os" in - # Guess yes on glibc systems. - *-gnu* | gnu*) gl_cv_func_strerror_0_works="guessing yes" ;; - # Guess yes on musl systems. - *-musl*) gl_cv_func_strerror_0_works="guessing yes" ;; - # Guess yes on native Windows. - mingw*) gl_cv_func_strerror_0_works="guessing yes" ;; - # If we don't know, obey --enable-cross-guesses. - *) gl_cv_func_strerror_0_works="$gl_cross_guess_normal" ;; + # Guess yes on glibc systems. + *-gnu* | gnu*) gl_cv_func_strerror_0_works="guessing yes" ;; + # Guess yes on musl systems. + *-musl* | midipix*) gl_cv_func_strerror_0_works="guessing yes" ;; + # Guess yes on native Windows. + mingw*) gl_cv_func_strerror_0_works="guessing yes" ;; + # If we don't know, obey --enable-cross-guesses. + *) gl_cv_func_strerror_0_works="$gl_cross_guess_normal" ;; esac ]) ]) diff --git a/m4/strerror_r.m4 b/m4/strerror_r.m4 index 0689e46..d790ba8 100644 --- a/m4/strerror_r.m4 +++ b/m4/strerror_r.m4 @@ -1,5 +1,5 @@ -# strerror_r.m4 serial 21 -dnl Copyright (C) 2002, 2007-2021 Free Software Foundation, Inc. +# strerror_r.m4 serial 26 +dnl Copyright (C) 2002, 2007-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -9,9 +9,6 @@ AC_DEFUN([gl_FUNC_STRERROR_R], AC_REQUIRE([gl_STRING_H_DEFAULTS]) AC_REQUIRE([gl_FUNC_STRERROR_R_WORKS]) - dnl Persuade Solaris to declare strerror_r(). - AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS]) - dnl Some systems don't declare strerror_r() if _THREAD_SAFE and _REENTRANT dnl are not defined. AC_CHECK_DECLS_ONCE([strerror_r]) @@ -20,7 +17,7 @@ AC_DEFUN([gl_FUNC_STRERROR_R], fi if test $ac_cv_func_strerror_r = yes; then - if test "$ERRNO_H:$REPLACE_STRERROR_0" = :0; then + if test "$GL_GENERATE_ERRNO_H:$REPLACE_STRERROR_0" = false:0; then if test $gl_cv_func_strerror_r_posix_signature = yes; then case "$gl_cv_func_strerror_r_works" in dnl The system's strerror_r has bugs. Replace it. @@ -40,9 +37,10 @@ AC_DEFUN([gl_FUNC_STRERROR_R], # Prerequisites of lib/strerror_r.c. AC_DEFUN([gl_PREREQ_STRERROR_R], [ + AC_REQUIRE([AC_FUNC_STRERROR_R]) dnl glibc >= 2.3.4 and cygwin 1.7.9 have a function __xpg_strerror_r. AC_CHECK_FUNCS_ONCE([__xpg_strerror_r]) - AC_CHECK_FUNCS_ONCE([catgets]) + gl_CHECK_FUNCS_ANDROID([catgets], [[#include ]]) AC_CHECK_FUNCS_ONCE([snprintf]) ]) @@ -52,11 +50,16 @@ AC_DEFUN([gl_FUNC_STRERROR_R_WORKS], [ AC_REQUIRE([gl_HEADER_ERRNO_H]) AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles + + dnl Persuade Android to use the GNU strerror_r API, + dnl and Solaris to declare strerror_r. + AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS]) + AC_REQUIRE([gl_FUNC_STRERROR_0]) - AC_CHECK_FUNCS_ONCE([strerror_r]) + gl_CHECK_FUNCS_ANDROID([strerror_r], [[#include ]]) if test $ac_cv_func_strerror_r = yes; then - if test "$ERRNO_H:$REPLACE_STRERROR_0" = :0; then + if test "$GL_GENERATE_ERRNO_H:$REPLACE_STRERROR_0" = false:0; then dnl The POSIX prototype is: int strerror_r (int, char *, size_t); dnl glibc, Cygwin: char *strerror_r (int, char *, size_t); dnl AIX 5.1, OSF/1 5.1: int strerror_r (int, char *, int); @@ -169,5 +172,9 @@ changequote([,])dnl fi fi fi + else + case "$gl_cv_onwards_func_strerror_r" in + future*) REPLACE_STRERROR_R=1 ;; + esac fi ]) diff --git a/m4/string_h.m4 b/m4/string_h.m4 index 80d1e58..7f51391 100644 --- a/m4/string_h.m4 +++ b/m4/string_h.m4 @@ -1,11 +1,11 @@ # Configure a GNU-like replacement for . -# Copyright (C) 2007-2021 Free Software Foundation, Inc. +# Copyright (C) 2007-2023 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 32 +# serial 37 # Written by Paul Eggert. @@ -21,7 +21,8 @@ AC_DEFUN_ONCE([gl_STRING_H], dnl guaranteed by C89. gl_WARN_ON_USE_PREPARE([[#include ]], - [ffsl ffsll memmem mempcpy memrchr rawmemchr stpcpy stpncpy strchrnul + [explicit_bzero ffsl ffsll memmem mempcpy memrchr memset_explicit + rawmemchr stpcpy stpncpy strchrnul strdup strncat strndup strnlen strpbrk strsep strcasestr strtok_r strerror_r strerrorname_np sigabbrev_np sigdescr_np strsignal strverscmp]) @@ -54,6 +55,7 @@ AC_DEFUN([gl_STRING_H_REQUIRE_DEFAULTS], gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MEMMEM]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MEMPCPY]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MEMRCHR]) + gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MEMSET_EXPLICIT]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_RAWMEMCHR]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STPCPY]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STPNCPY]) @@ -93,6 +95,8 @@ AC_DEFUN([gl_STRING_H_REQUIRE_DEFAULTS], gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_STRDUP], [1]) ]) m4_require(GL_MODULE_INDICATOR_PREFIX[_STRING_H_MODULE_INDICATOR_DEFAULTS]) + dnl Make sure the shell variable for GNULIB_FREE_POSIX is initialized. + gl_STDLIB_H_REQUIRE_DEFAULTS AC_REQUIRE([gl_STRING_H_DEFAULTS]) ]) @@ -105,6 +109,7 @@ AC_DEFUN([gl_STRING_H_DEFAULTS], HAVE_FFSLL=1; AC_SUBST([HAVE_FFSLL]) HAVE_DECL_MEMMEM=1; AC_SUBST([HAVE_DECL_MEMMEM]) HAVE_MEMPCPY=1; AC_SUBST([HAVE_MEMPCPY]) + HAVE_MEMSET_EXPLICIT=1; AC_SUBST([HAVE_MEMSET_EXPLICIT]) HAVE_DECL_MEMRCHR=1; AC_SUBST([HAVE_DECL_MEMRCHR]) HAVE_RAWMEMCHR=1; AC_SUBST([HAVE_RAWMEMCHR]) HAVE_STPCPY=1; AC_SUBST([HAVE_STPCPY]) @@ -126,6 +131,8 @@ AC_DEFUN([gl_STRING_H_DEFAULTS], REPLACE_FFSLL=0; AC_SUBST([REPLACE_FFSLL]) REPLACE_MEMCHR=0; AC_SUBST([REPLACE_MEMCHR]) REPLACE_MEMMEM=0; AC_SUBST([REPLACE_MEMMEM]) + REPLACE_MEMPCPY=0; AC_SUBST([REPLACE_MEMPCPY]) + REPLACE_STPCPY=0; AC_SUBST([REPLACE_STPCPY]) REPLACE_STPNCPY=0; AC_SUBST([REPLACE_STPNCPY]) REPLACE_STRCHRNUL=0; AC_SUBST([REPLACE_STRCHRNUL]) REPLACE_STRDUP=0; AC_SUBST([REPLACE_STRDUP]) diff --git a/m4/strings_h.m4 b/m4/strings_h.m4 index 69de32a..4c41221 100644 --- a/m4/strings_h.m4 +++ b/m4/strings_h.m4 @@ -1,7 +1,7 @@ # Configure a replacement for . # serial 9 -# Copyright (C) 2007, 2009-2021 Free Software Foundation, Inc. +# Copyright (C) 2007, 2009-2023 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. diff --git a/m4/strnlen.m4 b/m4/strnlen.m4 index 1d4f106..d2cac59 100644 --- a/m4/strnlen.m4 +++ b/m4/strnlen.m4 @@ -1,5 +1,5 @@ # strnlen.m4 serial 14 -dnl Copyright (C) 2002-2003, 2005-2007, 2009-2021 Free Software Foundation, +dnl Copyright (C) 2002-2003, 2005-2007, 2009-2023 Free Software Foundation, dnl Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, diff --git a/m4/strptime.m4 b/m4/strptime.m4 index 982fec8..e5d995e 100644 --- a/m4/strptime.m4 +++ b/m4/strptime.m4 @@ -1,5 +1,5 @@ # strptime.m4 serial 8 -dnl Copyright (C) 2007, 2009-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2007, 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/strtoimax.m4 b/m4/strtoimax.m4 index d767d57..db5cfb7 100644 --- a/m4/strtoimax.m4 +++ b/m4/strtoimax.m4 @@ -1,5 +1,5 @@ # strtoimax.m4 serial 16 -dnl Copyright (C) 2002-2004, 2006, 2009-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2002-2004, 2006, 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/strtoll.m4 b/m4/strtoll.m4 index 14455dc..ec09609 100644 --- a/m4/strtoll.m4 +++ b/m4/strtoll.m4 @@ -1,5 +1,5 @@ -# strtoll.m4 serial 9 -dnl Copyright (C) 2002, 2004, 2006, 2008-2021 Free Software Foundation, Inc. +# strtoll.m4 serial 10 +dnl Copyright (C) 2002, 2004, 2006, 2008-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -24,15 +24,26 @@ AC_DEFUN([gl_FUNC_STRTOLL], if (term != input + 1) result |= 1; } + /* This test fails on pre-C23 platforms. */ + { + const char input[] = "0b1"; + (void) strtoll (input, &term, 2); + if (term != input + 3) + result |= 2; + } return result; ]]) ], [gl_cv_func_strtoll_works=yes], [gl_cv_func_strtoll_works=no], [case "$host_os" in - # Guess no on native Windows. - mingw*) gl_cv_func_strtoll_works="guessing no" ;; - *) gl_cv_func_strtoll_works="$gl_cross_guess_normal" ;; + # Guess no on native Windows. + mingw*) gl_cv_func_strtoll_works="guessing no" ;; + # Guess no on glibc systems. + *-gnu* | gnu*) gl_cv_func_strtoll_works="guessing no" ;; + # Guess no on musl systems. + *-musl* | midipix*) gl_cv_func_strtoll_works="guessing no" ;; + *) gl_cv_func_strtoll_works="$gl_cross_guess_normal" ;; esac ]) ]) diff --git a/m4/symlink.m4 b/m4/symlink.m4 index 209dece..52d6c11 100644 --- a/m4/symlink.m4 +++ b/m4/symlink.m4 @@ -1,7 +1,7 @@ -# serial 9 +# serial 10 # See if we need to provide symlink replacement. -dnl Copyright (C) 2009-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -38,6 +38,8 @@ AC_DEFUN([gl_FUNC_SYMLINK], [case "$host_os" in # Guess yes on Linux systems. linux-* | linux) gl_cv_func_symlink_works="guessing yes" ;; + # Guess yes on systems that emulate the Linux system calls. + midipix*) gl_cv_func_symlink_works="guessing yes" ;; # Guess yes on glibc systems. *-gnu* | gnu*) gl_cv_func_symlink_works="guessing yes" ;; # If we don't know, obey --enable-cross-guesses. diff --git a/m4/sys_ioctl_h.m4 b/m4/sys_ioctl_h.m4 index cd00410..80f0510 100644 --- a/m4/sys_ioctl_h.m4 +++ b/m4/sys_ioctl_h.m4 @@ -1,5 +1,5 @@ # sys_ioctl_h.m4 serial 15 -dnl Copyright (C) 2008-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2008-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/sys_random_h.m4 b/m4/sys_random_h.m4 index 37bc316..01d5fee 100644 --- a/m4/sys_random_h.m4 +++ b/m4/sys_random_h.m4 @@ -1,5 +1,5 @@ # sys_random_h.m4 serial 8 -dnl Copyright (C) 2020-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2020-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/sys_select_h.m4 b/m4/sys_select_h.m4 index 2e7d140..4ec5ed7 100644 --- a/m4/sys_select_h.m4 +++ b/m4/sys_select_h.m4 @@ -1,5 +1,5 @@ # sys_select_h.m4 serial 23 -dnl Copyright (C) 2006-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2006-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/sys_socket_h.m4 b/m4/sys_socket_h.m4 index 5676a0d..98a1041 100644 --- a/m4/sys_socket_h.m4 +++ b/m4/sys_socket_h.m4 @@ -1,5 +1,5 @@ -# sys_socket_h.m4 serial 28 -dnl Copyright (C) 2005-2021 Free Software Foundation, Inc. +# sys_socket_h.m4 serial 29 +dnl Copyright (C) 2005-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -22,6 +22,7 @@ AC_DEFUN_ONCE([gl_SYS_SOCKET_H], ;; esac + GL_GENERATE_SYS_SOCKET_H=false AC_CACHE_CHECK([whether is self-contained], [gl_cv_header_sys_socket_h_selfcontained], [ @@ -44,7 +45,7 @@ AC_DEFUN_ONCE([gl_SYS_SOCKET_H], [gl_cv_header_sys_socket_h_shut=no]) ]) if test $gl_cv_header_sys_socket_h_shut = no; then - SYS_SOCKET_H='sys/socket.h' + GL_GENERATE_SYS_SOCKET_H=true fi fi fi @@ -83,7 +84,7 @@ AC_DEFUN_ONCE([gl_SYS_SOCKET_H], fi if test $HAVE_STRUCT_SOCKADDR_STORAGE = 0 || test $HAVE_SA_FAMILY_T = 0 \ || test $HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY = 0; then - SYS_SOCKET_H='sys/socket.h' + GL_GENERATE_SYS_SOCKET_H=true fi gl_PREREQ_SYS_H_WINSOCK2 diff --git a/m4/sys_stat_h.m4 b/m4/sys_stat_h.m4 index ac91d42..ca57398 100644 --- a/m4/sys_stat_h.m4 +++ b/m4/sys_stat_h.m4 @@ -1,5 +1,5 @@ -# sys_stat_h.m4 serial 41 -*- Autoconf -*- -dnl Copyright (C) 2006-2021 Free Software Foundation, Inc. +# sys_stat_h.m4 serial 42 -*- Autoconf -*- +dnl Copyright (C) 2006-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -46,7 +46,7 @@ AC_DEFUN_ONCE([gl_SYS_STAT_H], dnl Check for declarations of anything we want to poison if the dnl corresponding gnulib module is not in use. gl_WARN_ON_USE_PREPARE([[#include - ]], [fchmodat fstat fstatat futimens getumask lchmod lstat + ]], [chmod fchmodat fstat fstatat futimens getumask lchmod lstat mkdirat mkfifo mkfifoat mknod mknodat stat utimensat]) AC_REQUIRE([AC_C_RESTRICT]) @@ -72,6 +72,7 @@ AC_DEFUN([gl_SYS_STAT_H_REQUIRE_DEFAULTS], [ m4_defun(GL_MODULE_INDICATOR_PREFIX[_SYS_STAT_H_MODULE_INDICATOR_DEFAULTS], [ gl_UNISTD_H_REQUIRE_DEFAULTS dnl for REPLACE_FCHDIR + gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_CHMOD]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FCHMODAT]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FSTAT]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FSTATAT]) @@ -112,6 +113,7 @@ AC_DEFUN([gl_SYS_STAT_H_DEFAULTS], HAVE_MKNOD=1; AC_SUBST([HAVE_MKNOD]) HAVE_MKNODAT=1; AC_SUBST([HAVE_MKNODAT]) HAVE_UTIMENSAT=1; AC_SUBST([HAVE_UTIMENSAT]) + REPLACE_CHMOD=0; AC_SUBST([REPLACE_CHMOD]) REPLACE_FCHMODAT=0; AC_SUBST([REPLACE_FCHMODAT]) REPLACE_FSTAT=0; AC_SUBST([REPLACE_FSTAT]) REPLACE_FSTATAT=0; AC_SUBST([REPLACE_FSTATAT]) diff --git a/m4/sys_time_h.m4 b/m4/sys_time_h.m4 index c425a96..45a1f8b 100644 --- a/m4/sys_time_h.m4 +++ b/m4/sys_time_h.m4 @@ -1,7 +1,7 @@ # Configure a replacement for . # serial 12 -# Copyright (C) 2007, 2009-2021 Free Software Foundation, Inc. +# Copyright (C) 2007, 2009-2023 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. diff --git a/m4/sys_types_h.m4 b/m4/sys_types_h.m4 index 6dd6fee..627671f 100644 --- a/m4/sys_types_h.m4 +++ b/m4/sys_types_h.m4 @@ -1,5 +1,5 @@ # sys_types_h.m4 serial 13 -dnl Copyright (C) 2011-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2011-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/sys_uio_h.m4 b/m4/sys_uio_h.m4 index fa176e0..93a65d2 100644 --- a/m4/sys_uio_h.m4 +++ b/m4/sys_uio_h.m4 @@ -1,5 +1,5 @@ # sys_uio_h.m4 serial 3 -dnl Copyright (C) 2011-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2011-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/sys_wait_h.m4 b/m4/sys_wait_h.m4 index d7c412a..36b4293 100644 --- a/m4/sys_wait_h.m4 +++ b/m4/sys_wait_h.m4 @@ -1,5 +1,5 @@ # sys_wait_h.m4 serial 9 -dnl Copyright (C) 2008-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2008-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/tempname.m4 b/m4/tempname.m4 index 14c796d..abed799 100644 --- a/m4/tempname.m4 +++ b/m4/tempname.m4 @@ -1,6 +1,6 @@ #serial 5 -# Copyright (C) 2006-2007, 2009-2021 Free Software Foundation, Inc. +# Copyright (C) 2006-2007, 2009-2023 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. diff --git a/m4/thread.m4 b/m4/thread.m4 index 8ec9cc3..9c63df3 100644 --- a/m4/thread.m4 +++ b/m4/thread.m4 @@ -1,5 +1,5 @@ -# thread.m4 serial 3 -dnl Copyright (C) 2008-2021 Free Software Foundation, Inc. +# thread.m4 serial 4 +dnl Copyright (C) 2008-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -11,7 +11,7 @@ AC_DEFUN([gl_THREAD], if test $gl_threads_api = posix; then gl_save_LIBS="$LIBS" LIBS="$LIBS $LIBMULTITHREAD" - AC_CHECK_FUNCS([pthread_atfork]) + gl_CHECK_FUNCS_ANDROID([pthread_atfork], [[#include ]]) LIBS="$gl_save_LIBS" fi ]) diff --git a/m4/threadlib.m4 b/m4/threadlib.m4 index 37b797c..1fc5777 100644 --- a/m4/threadlib.m4 +++ b/m4/threadlib.m4 @@ -1,5 +1,5 @@ -# threadlib.m4 serial 31 -dnl Copyright (C) 2005-2021 Free Software Foundation, Inc. +# threadlib.m4 serial 38 +dnl Copyright (C) 2005-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -84,38 +84,49 @@ AC_DEFUN([gl_WEAK_SYMBOLS], AC_REQUIRE([AC_CANONICAL_HOST]) AC_CACHE_CHECK([whether imported symbols can be declared weak], [gl_cv_have_weak], - [gl_cv_have_weak=no - dnl First, test whether the compiler accepts it syntactically. - AC_LINK_IFELSE( - [AC_LANG_PROGRAM( - [[extern void xyzzy (); + [case "$host_os" in + cygwin* | mingw*) + dnl On Cygwin 3.2.0 with gcc 10.2, and likewise on mingw 10.0.0 with + dnl gcc 11.3, the test below would succeed, but programs that use + dnl pthread_in_use() with weak symbol references crash miserably at + dnl runtime. + gl_cv_have_weak="guessing no" + ;; + *) + gl_cv_have_weak=no + dnl First, test whether the compiler accepts it syntactically. + AC_LINK_IFELSE( + [AC_LANG_PROGRAM( + [[extern void xyzzy (); #pragma weak xyzzy]], - [[xyzzy();]])], - [gl_cv_have_weak=maybe]) - if test $gl_cv_have_weak = maybe; then - dnl Second, test whether it actually works. On Cygwin 1.7.2, with - dnl gcc 4.3, symbols declared weak always evaluate to the address 0. - AC_RUN_IFELSE( - [AC_LANG_SOURCE([[ + [[xyzzy();]])], + [gl_cv_have_weak=maybe]) + if test $gl_cv_have_weak = maybe; then + dnl Second, test whether it actually works. On Cygwin 1.7.2, with + dnl gcc 4.3, symbols declared weak always evaluate to the address 0. + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ #include #pragma weak fputs int main () { return (fputs == NULL); }]])], - [gl_cv_have_weak=yes], - [gl_cv_have_weak=no], - [dnl When cross-compiling, assume that only ELF platforms support - dnl weak symbols. - AC_EGREP_CPP([Extensible Linking Format], - [#ifdef __ELF__ - Extensible Linking Format - #endif - ], - [gl_cv_have_weak="guessing yes"], - [gl_cv_have_weak="guessing no"]) - ]) - fi + [gl_cv_have_weak=yes], + [gl_cv_have_weak=no], + [dnl When cross-compiling, assume that only ELF platforms support + dnl weak symbols. + AC_EGREP_CPP([Extensible Linking Format], + [#ifdef __ELF__ + Extensible Linking Format + #endif + ], + [gl_cv_have_weak="guessing yes"], + [gl_cv_have_weak="guessing no"]) + ]) + fi + ;; + esac dnl But when linking statically, weak symbols don't work. case " $LDFLAGS " in *" -static "*) gl_cv_have_weak=no ;; @@ -164,7 +175,7 @@ dnl Sets the variable LIBPMULTITHREAD, for programs that really need dnl multithread functionality. The difference between LIBPTHREAD and dnl LIBPMULTITHREAD is that on platforms supporting weak symbols, typically dnl LIBPTHREAD is empty whereas LIBPMULTITHREAD is not. -dnl Sets the variable LIB_SCHED_YIELD to the linker options needed to use the +dnl Sets the variable SCHED_YIELD_LIB to the linker options needed to use the dnl sched_yield() function. dnl Adds to CPPFLAGS the flag -D_REENTRANT or -D_THREAD_SAFE if needed for dnl multithread-safe programs. @@ -251,7 +262,9 @@ AC_DEFUN([gl_PTHREADLIB_BODY], # On Solaris 10 or newer, this test is no longer needed, because # libc contains the fully functional pthread functions. case "$host_os" in +changequote(,)dnl solaris | solaris2.[1-9] | solaris2.[1-9].* | hpux*) +changequote([,])dnl AC_DEFINE([PTHREAD_IN_USE_DETECTION_HARD], [1], [Define if the pthread_in_use() detection is hard.]) esac @@ -287,13 +300,16 @@ AC_DEFUN([gl_PTHREADLIB_BODY], [AC_LANG_PROGRAM( [[#include ]], [[sched_yield ();]])], - [LIB_SCHED_YIELD= + [SCHED_YIELD_LIB= ], [dnl Solaris 7...10 has sched_yield in librt, not in libpthread or libc. - AC_CHECK_LIB([rt], [sched_yield], [LIB_SCHED_YIELD=-lrt], + AC_CHECK_LIB([rt], [sched_yield], [SCHED_YIELD_LIB=-lrt], [dnl Solaris 2.5.1, 2.6 has sched_yield in libposix4, not librt. - AC_CHECK_LIB([posix4], [sched_yield], [LIB_SCHED_YIELD=-lposix4])]) + AC_CHECK_LIB([posix4], [sched_yield], [SCHED_YIELD_LIB=-lposix4])]) ]) + AC_SUBST([SCHED_YIELD_LIB]) + dnl For backward compatibility. + LIB_SCHED_YIELD="$SCHED_YIELD_LIB" AC_SUBST([LIB_SCHED_YIELD]) gl_pthreadlib_body_done=done @@ -339,7 +355,7 @@ AC_DEFUN([gl_STDTHREADLIB_BODY], dnl on libpthread (for the symbol 'pthread_mutexattr_gettype'). dnl glibc >= 2.34, AIX >= 7.1, and Solaris >= 11.4 have thrd_create in dnl libc. - AC_CHECK_FUNCS([thrd_create]) + gl_CHECK_FUNCS_ANDROID([thrd_create], [[#include ]]) if test $ac_cv_func_thrd_create = yes; then LIBSTDTHREAD= else @@ -352,7 +368,7 @@ AC_DEFUN([gl_STDTHREADLIB_BODY], fi else dnl Libraries needed by thrd.c, mtx.c, cnd.c, tss.c. - LIBSTDTHREAD="$LIBPMULTITHREAD $LIB_SCHED_YIELD" + LIBSTDTHREAD="$LIBPMULTITHREAD $SCHED_YIELD_LIB" fi ;; esac @@ -423,10 +439,12 @@ AC_DEFUN([gl_THREADLIB_EARLY_BODY], m4_ifdef([gl_THREADLIB_DEFAULT_NO], [m4_divert_text([DEFAULTS], [gl_use_threads_default=no])], [m4_divert_text([DEFAULTS], [gl_use_threads_default=])]) - m4_divert_text([DEFAULTS], [gl_use_winpthreads_default=]) + dnl gl_use_winpthreads_default defaults to 'no', because in mingw 10, like + dnl in mingw 5, the use of libwinpthread still makes test-pthread-tss crash. + m4_divert_text([DEFAULTS], [gl_use_winpthreads_default=no]) AC_ARG_ENABLE([threads], -AS_HELP_STRING([--enable-threads={isoc|posix|isoc+posix|windows}], [specify multithreading API])m4_ifdef([gl_THREADLIB_DEFAULT_NO], [], [ -AS_HELP_STRING([--disable-threads], [build without multithread safety])]), +AS_HELP_STRING([[--enable-threads={isoc|posix|isoc+posix|windows}]], [specify multithreading API])m4_ifdef([gl_THREADLIB_DEFAULT_NO], [], [ +AS_HELP_STRING([[--disable-threads]], [build without multithread safety])]), [gl_use_threads=$enableval], [if test -n "$gl_use_threads_default"; then gl_use_threads="$gl_use_threads_default" @@ -589,7 +607,8 @@ dnl ------------------- dnl Sets the gl_THREADLIB default so that on mingw, a dependency to the dnl libwinpthread DLL (mingw-w64 winpthreads library) is avoided. dnl The user can still override it at installation time, by using the -dnl configure option '--enable-threads'. +dnl configure option '--enable-threads=posix'. +dnl As of 2023, this is now the default. AC_DEFUN([gl_AVOID_WINPTHREAD], [ m4_divert_text([INIT_PREPARE], [gl_use_winpthreads_default=no]) diff --git a/m4/time.m4 b/m4/time.m4 new file mode 100644 index 0000000..4c4e411 --- /dev/null +++ b/m4/time.m4 @@ -0,0 +1,48 @@ +# time.m4 serial 3 +dnl Copyright (C) 2023 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. + +dnl From Bruno Haible. + +AC_DEFUN([gl_FUNC_TIME], +[ + AC_REQUIRE([AC_CANONICAL_HOST]) + dnl glibc has the bug https://sourceware.org/bugzilla/show_bug.cgi?id=30200 . + AC_CACHE_CHECK([whether time() works], + [gl_cv_func_time_works], + [dnl Guess that it works except on + dnl - glibc >= 2.31 with Linux. And binaries produced on glibc < 2.31 + dnl need to run fine on newer glibc versions as well; therefore ignore + dnl __GLIBC_MINOR__. + dnl - AIX, + dnl - native Windows. + case "$host_os" in + linux*-gnu*) + AC_EGREP_CPP([Unlucky], [ + #include + #ifdef __GNU_LIBRARY__ + #if __GLIBC__ == 2 + Unlucky GNU user + #endif + #endif + ], + [gl_cv_func_time_works="guessing no"], + [gl_cv_func_time_works="guessing yes"]) + ;; + aix*) gl_cv_func_time_works="guessing no";; + mingw*) gl_cv_func_time_works="guessing no";; + *) gl_cv_func_time_works="guessing yes";; + esac + ]) + case "$gl_cv_func_time_works" in + *no) REPLACE_TIME=1 ;; + esac +]) + +# Prerequisites of lib/time.c. +AC_DEFUN([gl_PREREQ_TIME], +[ + : +]) diff --git a/m4/time_h.m4 b/m4/time_h.m4 index b57474b..51d553a 100644 --- a/m4/time_h.m4 +++ b/m4/time_h.m4 @@ -1,8 +1,8 @@ # Configure a more-standard replacement for . -# Copyright (C) 2000-2001, 2003-2007, 2009-2021 Free Software Foundation, Inc. +# Copyright (C) 2000-2001, 2003-2007, 2009-2023 Free Software Foundation, Inc. -# serial 18 +# serial 22 # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -19,6 +19,12 @@ AC_DEFUN_ONCE([gl_TIME_H], gl_NEXT_HEADERS([time.h]) AC_REQUIRE([gl_CHECK_TYPE_STRUCT_TIMESPEC]) + dnl Check for declarations of anything we want to poison if the + dnl corresponding gnulib module is not in use. + gl_WARN_ON_USE_PREPARE([[ +#include + ]], [asctime_r ctime_r]) + AC_REQUIRE([AC_C_RESTRICT]) AC_CACHE_CHECK([for TIME_UTC in ], @@ -131,8 +137,10 @@ AC_DEFUN([gl_TIME_H_REQUIRE_DEFAULTS], gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_NANOSLEEP]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STRFTIME]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STRPTIME]) + gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_TIME]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_TIMEGM]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_TIMESPEC_GET]) + gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_TIMESPEC_GETRES]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_TIME_R]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_TIME_RZ]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_TZSET]) @@ -151,6 +159,7 @@ AC_DEFUN([gl_TIME_H_DEFAULTS], HAVE_STRPTIME=1; AC_SUBST([HAVE_STRPTIME]) HAVE_TIMEGM=1; AC_SUBST([HAVE_TIMEGM]) HAVE_TIMESPEC_GET=1; AC_SUBST([HAVE_TIMESPEC_GET]) + HAVE_TIMESPEC_GETRES=1; AC_SUBST([HAVE_TIMESPEC_GETRES]) dnl Even GNU libc does not have timezone_t yet. HAVE_TIMEZONE_T=0; AC_SUBST([HAVE_TIMEZONE_T]) dnl If another module says to replace or to not replace, do that. @@ -161,7 +170,9 @@ AC_DEFUN([gl_TIME_H_DEFAULTS], REPLACE_MKTIME=GNULIB_PORTCHECK; AC_SUBST([REPLACE_MKTIME]) REPLACE_NANOSLEEP=GNULIB_PORTCHECK; AC_SUBST([REPLACE_NANOSLEEP]) REPLACE_STRFTIME=GNULIB_PORTCHECK; AC_SUBST([REPLACE_STRFTIME]) + REPLACE_TIME=0; AC_SUBST([REPLACE_TIME]) REPLACE_TIMEGM=GNULIB_PORTCHECK; AC_SUBST([REPLACE_TIMEGM]) + REPLACE_TIMESPEC_GET=GNULIB_PORTCHECK; AC_SUBST([REPLACE_TIMESPEC_GET]) REPLACE_TZSET=GNULIB_PORTCHECK; AC_SUBST([REPLACE_TZSET]) dnl Hack so that the time module doesn't depend on the sys_time module. diff --git a/m4/time_r.m4 b/m4/time_r.m4 index 2d49b64..adce438 100644 --- a/m4/time_r.m4 +++ b/m4/time_r.m4 @@ -1,6 +1,6 @@ dnl Reentrant time functions: localtime_r, gmtime_r. -dnl Copyright (C) 2003, 2006-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2003, 2006-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/time_rz.m4 b/m4/time_rz.m4 index c5e85dc..d13bc06 100644 --- a/m4/time_rz.m4 +++ b/m4/time_rz.m4 @@ -1,6 +1,6 @@ dnl Time zone functions: tzalloc, localtime_rz, etc. -dnl Copyright (C) 2015-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2015-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/timegm.m4 b/m4/timegm.m4 index 58123be..8ab265e 100644 --- a/m4/timegm.m4 +++ b/m4/timegm.m4 @@ -1,5 +1,5 @@ -# timegm.m4 serial 13 -dnl Copyright (C) 2003, 2007, 2009-2021 Free Software Foundation, Inc. +# timegm.m4 serial 15 +dnl Copyright (C) 2003, 2007, 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -9,7 +9,7 @@ AC_DEFUN([gl_FUNC_TIMEGM], AC_REQUIRE([gl_TIME_H_DEFAULTS]) AC_REQUIRE([gl_FUNC_MKTIME_WORKS]) REPLACE_TIMEGM=0 - AC_CHECK_FUNCS_ONCE([timegm]) + gl_CHECK_FUNCS_ANDROID([timegm], [[#include ]]) if test $ac_cv_func_timegm = yes; then if test "$gl_cv_func_working_mktime" != yes; then # Assume that timegm is buggy if mktime is. @@ -17,6 +17,9 @@ AC_DEFUN([gl_FUNC_TIMEGM], fi else HAVE_TIMEGM=0 + case "$gl_cv_onwards_func_timegm" in + future*) REPLACE_TIMEGM=1 ;; + esac fi ]) diff --git a/m4/timespec.m4 b/m4/timespec.m4 index 40307d4..95f475f 100644 --- a/m4/timespec.m4 +++ b/m4/timespec.m4 @@ -1,6 +1,6 @@ #serial 15 -# Copyright (C) 2000-2001, 2003-2007, 2009-2021 Free Software Foundation, Inc. +# Copyright (C) 2000-2001, 2003-2007, 2009-2023 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, diff --git a/m4/tm_gmtoff.m4 b/m4/tm_gmtoff.m4 index 2743999..bc41de3 100644 --- a/m4/tm_gmtoff.m4 +++ b/m4/tm_gmtoff.m4 @@ -1,5 +1,5 @@ # tm_gmtoff.m4 serial 3 -dnl Copyright (C) 2002, 2009-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2002, 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/tzset.m4 b/m4/tzset.m4 index 8a4f285..72e935f 100644 --- a/m4/tzset.m4 +++ b/m4/tzset.m4 @@ -1,6 +1,6 @@ # serial 16 -# Copyright (C) 2003, 2007, 2009-2021 Free Software Foundation, Inc. +# Copyright (C) 2003, 2007, 2009-2023 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. diff --git a/m4/unistd_h.m4 b/m4/unistd_h.m4 index 0ce4ea4..1c96158 100644 --- a/m4/unistd_h.m4 +++ b/m4/unistd_h.m4 @@ -1,5 +1,5 @@ -# unistd_h.m4 serial 89 -dnl Copyright (C) 2006-2021 Free Software Foundation, Inc. +# unistd_h.m4 serial 94 +dnl Copyright (C) 2006-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -112,6 +112,7 @@ AC_DEFUN([gl_UNISTD_H_REQUIRE_DEFAULTS], gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_GETOPT_POSIX]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_GETPAGESIZE]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_GETPASS]) + gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_GETPASS_GNU]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_GETUSERSHELL]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_GROUP_MEMBER]) gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ISATTY]) @@ -170,98 +171,105 @@ AC_DEFUN([gl_UNISTD_H_REQUIRE_DEFAULTS], AC_DEFUN([gl_UNISTD_H_DEFAULTS], [ dnl Assume proper GNU behavior unless another module says otherwise. - HAVE_CHOWN=1; AC_SUBST([HAVE_CHOWN]) - HAVE_COPY_FILE_RANGE=1; AC_SUBST([HAVE_COPY_FILE_RANGE]) - HAVE_DUP3=1; AC_SUBST([HAVE_DUP3]) - HAVE_EUIDACCESS=1; AC_SUBST([HAVE_EUIDACCESS]) - HAVE_EXECVPE=1; AC_SUBST([HAVE_EXECVPE]) - HAVE_FACCESSAT=1; AC_SUBST([HAVE_FACCESSAT]) - HAVE_FCHDIR=1; AC_SUBST([HAVE_FCHDIR]) - HAVE_FCHOWNAT=1; AC_SUBST([HAVE_FCHOWNAT]) - HAVE_FDATASYNC=1; AC_SUBST([HAVE_FDATASYNC]) - HAVE_FSYNC=1; AC_SUBST([HAVE_FSYNC]) - HAVE_FTRUNCATE=1; AC_SUBST([HAVE_FTRUNCATE]) - HAVE_GETDTABLESIZE=1; AC_SUBST([HAVE_GETDTABLESIZE]) - HAVE_GETENTROPY=1; AC_SUBST([HAVE_GETENTROPY]) - HAVE_GETGROUPS=1; AC_SUBST([HAVE_GETGROUPS]) - HAVE_GETHOSTNAME=1; AC_SUBST([HAVE_GETHOSTNAME]) - HAVE_GETLOGIN=1; AC_SUBST([HAVE_GETLOGIN]) - HAVE_GETPAGESIZE=1; AC_SUBST([HAVE_GETPAGESIZE]) - HAVE_GETPASS=1; AC_SUBST([HAVE_GETPASS]) - HAVE_GROUP_MEMBER=1; AC_SUBST([HAVE_GROUP_MEMBER]) - HAVE_LCHOWN=1; AC_SUBST([HAVE_LCHOWN]) - HAVE_LINK=1; AC_SUBST([HAVE_LINK]) - HAVE_LINKAT=1; AC_SUBST([HAVE_LINKAT]) - HAVE_PIPE=1; AC_SUBST([HAVE_PIPE]) - HAVE_PIPE2=1; AC_SUBST([HAVE_PIPE2]) - HAVE_PREAD=1; AC_SUBST([HAVE_PREAD]) - HAVE_PWRITE=1; AC_SUBST([HAVE_PWRITE]) - HAVE_READLINK=1; AC_SUBST([HAVE_READLINK]) - HAVE_READLINKAT=1; AC_SUBST([HAVE_READLINKAT]) - HAVE_SETHOSTNAME=1; AC_SUBST([HAVE_SETHOSTNAME]) - HAVE_SLEEP=1; AC_SUBST([HAVE_SLEEP]) - HAVE_SYMLINK=1; AC_SUBST([HAVE_SYMLINK]) - HAVE_SYMLINKAT=1; AC_SUBST([HAVE_SYMLINKAT]) - HAVE_UNLINKAT=1; AC_SUBST([HAVE_UNLINKAT]) - HAVE_USLEEP=1; AC_SUBST([HAVE_USLEEP]) - HAVE_DECL_ENVIRON=1; AC_SUBST([HAVE_DECL_ENVIRON]) - HAVE_DECL_EXECVPE=1; AC_SUBST([HAVE_DECL_EXECVPE]) - HAVE_DECL_FCHDIR=1; AC_SUBST([HAVE_DECL_FCHDIR]) - HAVE_DECL_FDATASYNC=1; AC_SUBST([HAVE_DECL_FDATASYNC]) - HAVE_DECL_GETDOMAINNAME=1; AC_SUBST([HAVE_DECL_GETDOMAINNAME]) - HAVE_DECL_GETLOGIN=1; AC_SUBST([HAVE_DECL_GETLOGIN]) - HAVE_DECL_GETLOGIN_R=1; AC_SUBST([HAVE_DECL_GETLOGIN_R]) - HAVE_DECL_GETPAGESIZE=1; AC_SUBST([HAVE_DECL_GETPAGESIZE]) - HAVE_DECL_GETUSERSHELL=1; AC_SUBST([HAVE_DECL_GETUSERSHELL]) - HAVE_DECL_SETHOSTNAME=1; AC_SUBST([HAVE_DECL_SETHOSTNAME]) - HAVE_DECL_TRUNCATE=1; AC_SUBST([HAVE_DECL_TRUNCATE]) - HAVE_DECL_TTYNAME_R=1; AC_SUBST([HAVE_DECL_TTYNAME_R]) - HAVE_OS_H=0; AC_SUBST([HAVE_OS_H]) - HAVE_SYS_PARAM_H=0; AC_SUBST([HAVE_SYS_PARAM_H]) - REPLACE_ACCESS=0; AC_SUBST([REPLACE_ACCESS]) - REPLACE_CHOWN=0; AC_SUBST([REPLACE_CHOWN]) - REPLACE_CLOSE=0; AC_SUBST([REPLACE_CLOSE]) - REPLACE_DUP=0; AC_SUBST([REPLACE_DUP]) - REPLACE_DUP2=0; AC_SUBST([REPLACE_DUP2]) - REPLACE_EXECL=0; AC_SUBST([REPLACE_EXECL]) - REPLACE_EXECLE=0; AC_SUBST([REPLACE_EXECLE]) - REPLACE_EXECLP=0; AC_SUBST([REPLACE_EXECLP]) - REPLACE_EXECV=0; AC_SUBST([REPLACE_EXECV]) - REPLACE_EXECVE=0; AC_SUBST([REPLACE_EXECVE]) - REPLACE_EXECVP=0; AC_SUBST([REPLACE_EXECVP]) - REPLACE_EXECVPE=0; AC_SUBST([REPLACE_EXECVPE]) - REPLACE_FACCESSAT=0; AC_SUBST([REPLACE_FACCESSAT]) - REPLACE_FCHOWNAT=0; AC_SUBST([REPLACE_FCHOWNAT]) - REPLACE_FTRUNCATE=0; AC_SUBST([REPLACE_FTRUNCATE]) - REPLACE_GETCWD=0; AC_SUBST([REPLACE_GETCWD]) - REPLACE_GETDOMAINNAME=0; AC_SUBST([REPLACE_GETDOMAINNAME]) - REPLACE_GETDTABLESIZE=0; AC_SUBST([REPLACE_GETDTABLESIZE]) - REPLACE_GETLOGIN_R=0; AC_SUBST([REPLACE_GETLOGIN_R]) - REPLACE_GETGROUPS=0; AC_SUBST([REPLACE_GETGROUPS]) - REPLACE_GETPAGESIZE=0; AC_SUBST([REPLACE_GETPAGESIZE]) - REPLACE_GETPASS=0; AC_SUBST([REPLACE_GETPASS]) - REPLACE_ISATTY=0; AC_SUBST([REPLACE_ISATTY]) - REPLACE_LCHOWN=0; AC_SUBST([REPLACE_LCHOWN]) - REPLACE_LINK=0; AC_SUBST([REPLACE_LINK]) - REPLACE_LINKAT=0; AC_SUBST([REPLACE_LINKAT]) - REPLACE_LSEEK=0; AC_SUBST([REPLACE_LSEEK]) - REPLACE_PREAD=0; AC_SUBST([REPLACE_PREAD]) - REPLACE_PWRITE=0; AC_SUBST([REPLACE_PWRITE]) - REPLACE_READ=0; AC_SUBST([REPLACE_READ]) - REPLACE_READLINK=0; AC_SUBST([REPLACE_READLINK]) - REPLACE_READLINKAT=0; AC_SUBST([REPLACE_READLINKAT]) - REPLACE_RMDIR=0; AC_SUBST([REPLACE_RMDIR]) - REPLACE_SLEEP=0; AC_SUBST([REPLACE_SLEEP]) - REPLACE_SYMLINK=0; AC_SUBST([REPLACE_SYMLINK]) - REPLACE_SYMLINKAT=0; AC_SUBST([REPLACE_SYMLINKAT]) - REPLACE_TRUNCATE=0; AC_SUBST([REPLACE_TRUNCATE]) - REPLACE_TTYNAME_R=0; AC_SUBST([REPLACE_TTYNAME_R]) - REPLACE_UNLINK=0; AC_SUBST([REPLACE_UNLINK]) - REPLACE_UNLINKAT=0; AC_SUBST([REPLACE_UNLINKAT]) - REPLACE_USLEEP=0; AC_SUBST([REPLACE_USLEEP]) - REPLACE_WRITE=0; AC_SUBST([REPLACE_WRITE]) - UNISTD_H_HAVE_SYS_RANDOM_H=0; AC_SUBST([UNISTD_H_HAVE_SYS_RANDOM_H]) - UNISTD_H_HAVE_WINSOCK2_H=0; AC_SUBST([UNISTD_H_HAVE_WINSOCK2_H]) + HAVE_CHOWN=1; AC_SUBST([HAVE_CHOWN]) + HAVE_COPY_FILE_RANGE=1; AC_SUBST([HAVE_COPY_FILE_RANGE]) + HAVE_DUP3=1; AC_SUBST([HAVE_DUP3]) + HAVE_EUIDACCESS=1; AC_SUBST([HAVE_EUIDACCESS]) + HAVE_EXECVPE=1; AC_SUBST([HAVE_EXECVPE]) + HAVE_FACCESSAT=1; AC_SUBST([HAVE_FACCESSAT]) + HAVE_FCHDIR=1; AC_SUBST([HAVE_FCHDIR]) + HAVE_FCHOWNAT=1; AC_SUBST([HAVE_FCHOWNAT]) + HAVE_FDATASYNC=1; AC_SUBST([HAVE_FDATASYNC]) + HAVE_FSYNC=1; AC_SUBST([HAVE_FSYNC]) + HAVE_FTRUNCATE=1; AC_SUBST([HAVE_FTRUNCATE]) + HAVE_GETDTABLESIZE=1; AC_SUBST([HAVE_GETDTABLESIZE]) + HAVE_GETENTROPY=1; AC_SUBST([HAVE_GETENTROPY]) + HAVE_GETGROUPS=1; AC_SUBST([HAVE_GETGROUPS]) + HAVE_GETHOSTNAME=1; AC_SUBST([HAVE_GETHOSTNAME]) + HAVE_GETLOGIN=1; AC_SUBST([HAVE_GETLOGIN]) + HAVE_GETPAGESIZE=1; AC_SUBST([HAVE_GETPAGESIZE]) + HAVE_GETPASS=1; AC_SUBST([HAVE_GETPASS]) + HAVE_GROUP_MEMBER=1; AC_SUBST([HAVE_GROUP_MEMBER]) + HAVE_LCHOWN=1; AC_SUBST([HAVE_LCHOWN]) + HAVE_LINK=1; AC_SUBST([HAVE_LINK]) + HAVE_LINKAT=1; AC_SUBST([HAVE_LINKAT]) + HAVE_PIPE=1; AC_SUBST([HAVE_PIPE]) + HAVE_PIPE2=1; AC_SUBST([HAVE_PIPE2]) + HAVE_PREAD=1; AC_SUBST([HAVE_PREAD]) + HAVE_PWRITE=1; AC_SUBST([HAVE_PWRITE]) + HAVE_READLINK=1; AC_SUBST([HAVE_READLINK]) + HAVE_READLINKAT=1; AC_SUBST([HAVE_READLINKAT]) + HAVE_SETHOSTNAME=1; AC_SUBST([HAVE_SETHOSTNAME]) + HAVE_SLEEP=1; AC_SUBST([HAVE_SLEEP]) + HAVE_SYMLINK=1; AC_SUBST([HAVE_SYMLINK]) + HAVE_SYMLINKAT=1; AC_SUBST([HAVE_SYMLINKAT]) + HAVE_UNLINKAT=1; AC_SUBST([HAVE_UNLINKAT]) + HAVE_USLEEP=1; AC_SUBST([HAVE_USLEEP]) + HAVE_DECL_ENVIRON=1; AC_SUBST([HAVE_DECL_ENVIRON]) + HAVE_DECL_EXECVPE=1; AC_SUBST([HAVE_DECL_EXECVPE]) + HAVE_DECL_FCHDIR=1; AC_SUBST([HAVE_DECL_FCHDIR]) + HAVE_DECL_FDATASYNC=1; AC_SUBST([HAVE_DECL_FDATASYNC]) + HAVE_DECL_GETDOMAINNAME=1; AC_SUBST([HAVE_DECL_GETDOMAINNAME]) + HAVE_DECL_GETLOGIN=1; AC_SUBST([HAVE_DECL_GETLOGIN]) + HAVE_DECL_GETLOGIN_R=1; AC_SUBST([HAVE_DECL_GETLOGIN_R]) + HAVE_DECL_GETPAGESIZE=1; AC_SUBST([HAVE_DECL_GETPAGESIZE]) + HAVE_DECL_GETUSERSHELL=1; AC_SUBST([HAVE_DECL_GETUSERSHELL]) + HAVE_DECL_SETHOSTNAME=1; AC_SUBST([HAVE_DECL_SETHOSTNAME]) + HAVE_DECL_TRUNCATE=1; AC_SUBST([HAVE_DECL_TRUNCATE]) + HAVE_DECL_TTYNAME_R=1; AC_SUBST([HAVE_DECL_TTYNAME_R]) + HAVE_OS_H=0; AC_SUBST([HAVE_OS_H]) + HAVE_SYS_PARAM_H=0; AC_SUBST([HAVE_SYS_PARAM_H]) + REPLACE_ACCESS=0; AC_SUBST([REPLACE_ACCESS]) + REPLACE_CHOWN=0; AC_SUBST([REPLACE_CHOWN]) + REPLACE_CLOSE=0; AC_SUBST([REPLACE_CLOSE]) + REPLACE_COPY_FILE_RANGE=0; AC_SUBST([REPLACE_COPY_FILE_RANGE]) + REPLACE_DUP=0; AC_SUBST([REPLACE_DUP]) + REPLACE_DUP2=0; AC_SUBST([REPLACE_DUP2]) + REPLACE_DUP3=0; AC_SUBST([REPLACE_DUP3]) + REPLACE_EXECL=0; AC_SUBST([REPLACE_EXECL]) + REPLACE_EXECLE=0; AC_SUBST([REPLACE_EXECLE]) + REPLACE_EXECLP=0; AC_SUBST([REPLACE_EXECLP]) + REPLACE_EXECV=0; AC_SUBST([REPLACE_EXECV]) + REPLACE_EXECVE=0; AC_SUBST([REPLACE_EXECVE]) + REPLACE_EXECVP=0; AC_SUBST([REPLACE_EXECVP]) + REPLACE_EXECVPE=0; AC_SUBST([REPLACE_EXECVPE]) + REPLACE_FACCESSAT=0; AC_SUBST([REPLACE_FACCESSAT]) + REPLACE_FCHOWNAT=0; AC_SUBST([REPLACE_FCHOWNAT]) + REPLACE_FDATASYNC=0; AC_SUBST([REPLACE_FDATASYNC]) + REPLACE_FTRUNCATE=0; AC_SUBST([REPLACE_FTRUNCATE]) + REPLACE_GETCWD=0; AC_SUBST([REPLACE_GETCWD]) + REPLACE_GETDOMAINNAME=0; AC_SUBST([REPLACE_GETDOMAINNAME]) + REPLACE_GETDTABLESIZE=0; AC_SUBST([REPLACE_GETDTABLESIZE]) + REPLACE_GETENTROPY=0; AC_SUBST([REPLACE_GETENTROPY]) + REPLACE_GETLOGIN_R=0; AC_SUBST([REPLACE_GETLOGIN_R]) + REPLACE_GETGROUPS=0; AC_SUBST([REPLACE_GETGROUPS]) + REPLACE_GETPAGESIZE=0; AC_SUBST([REPLACE_GETPAGESIZE]) + REPLACE_GETPASS=0; AC_SUBST([REPLACE_GETPASS]) + REPLACE_GETPASS_FOR_GETPASS_GNU=0; AC_SUBST([REPLACE_GETPASS_FOR_GETPASS_GNU]) + REPLACE_ISATTY=0; AC_SUBST([REPLACE_ISATTY]) + REPLACE_LCHOWN=0; AC_SUBST([REPLACE_LCHOWN]) + REPLACE_LINK=0; AC_SUBST([REPLACE_LINK]) + REPLACE_LINKAT=0; AC_SUBST([REPLACE_LINKAT]) + REPLACE_LSEEK=0; AC_SUBST([REPLACE_LSEEK]) + REPLACE_PIPE2=0; AC_SUBST([REPLACE_PIPE2]) + REPLACE_PREAD=0; AC_SUBST([REPLACE_PREAD]) + REPLACE_PWRITE=0; AC_SUBST([REPLACE_PWRITE]) + REPLACE_READ=0; AC_SUBST([REPLACE_READ]) + REPLACE_READLINK=0; AC_SUBST([REPLACE_READLINK]) + REPLACE_READLINKAT=0; AC_SUBST([REPLACE_READLINKAT]) + REPLACE_RMDIR=0; AC_SUBST([REPLACE_RMDIR]) + REPLACE_SETHOSTNAME=0; AC_SUBST([REPLACE_SETHOSTNAME]) + REPLACE_SLEEP=0; AC_SUBST([REPLACE_SLEEP]) + REPLACE_SYMLINK=0; AC_SUBST([REPLACE_SYMLINK]) + REPLACE_SYMLINKAT=0; AC_SUBST([REPLACE_SYMLINKAT]) + REPLACE_TRUNCATE=0; AC_SUBST([REPLACE_TRUNCATE]) + REPLACE_TTYNAME_R=0; AC_SUBST([REPLACE_TTYNAME_R]) + REPLACE_UNLINK=0; AC_SUBST([REPLACE_UNLINK]) + REPLACE_UNLINKAT=0; AC_SUBST([REPLACE_UNLINKAT]) + REPLACE_USLEEP=0; AC_SUBST([REPLACE_USLEEP]) + REPLACE_WRITE=0; AC_SUBST([REPLACE_WRITE]) + UNISTD_H_HAVE_SYS_RANDOM_H=0; AC_SUBST([UNISTD_H_HAVE_SYS_RANDOM_H]) + UNISTD_H_HAVE_WINSOCK2_H=0; AC_SUBST([UNISTD_H_HAVE_WINSOCK2_H]) UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS=0; AC_SUBST([UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS]) ]) diff --git a/m4/unlocked-io.m4 b/m4/unlocked-io.m4 index b689020..407c0ba 100644 --- a/m4/unlocked-io.m4 +++ b/m4/unlocked-io.m4 @@ -1,6 +1,6 @@ # unlocked-io.m4 serial 16 -# Copyright (C) 1998-2006, 2009-2021 Free Software Foundation, Inc. +# Copyright (C) 1998-2006, 2009-2023 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, diff --git a/m4/vasnprintf.m4 b/m4/vasnprintf.m4 index 483bba9..639b29a 100644 --- a/m4/vasnprintf.m4 +++ b/m4/vasnprintf.m4 @@ -1,5 +1,5 @@ -# vasnprintf.m4 serial 38 -dnl Copyright (C) 2002-2004, 2006-2021 Free Software Foundation, Inc. +# vasnprintf.m4 serial 49 +dnl Copyright (C) 2002-2004, 2006-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -29,6 +29,15 @@ AC_DEFUN([gl_REPLACE_VASNPRINTF], gl_PREREQ_ASNPRINTF ]) +AC_DEFUN([gl_FUNC_VASNWPRINTF], +[ + AC_LIBOBJ([printf-args]) + gl_PREREQ_PRINTF_ARGS + gl_PREREQ_PRINTF_PARSE + gl_PREREQ_VASNWPRINTF + gl_PREREQ_ASNPRINTF +]) + # Prerequisites of lib/printf-args.h, lib/printf-args.c. AC_DEFUN([gl_PREREQ_PRINTF_ARGS], [ @@ -37,6 +46,7 @@ AC_DEFUN([gl_PREREQ_PRINTF_ARGS], ]) # Prerequisites of lib/printf-parse.h, lib/printf-parse.c. +# Prerequisites of lib/wprintf-parse.h, lib/wprintf-parse.c. AC_DEFUN([gl_PREREQ_PRINTF_PARSE], [ AC_REQUIRE([gl_FEATURES_H]) @@ -50,19 +60,13 @@ AC_DEFUN([gl_PREREQ_PRINTF_PARSE], AC_REQUIRE([gt_AC_TYPE_INTMAX_T]) ]) -# Prerequisites of lib/vasnprintf.c. +# Prerequisites of lib/vasnprintf.c if !WIDE_CHAR_VERSION. AC_DEFUN_ONCE([gl_PREREQ_VASNPRINTF], [ - AC_REQUIRE([AC_FUNC_ALLOCA]) - AC_REQUIRE([gt_TYPE_WCHAR_T]) - AC_REQUIRE([gt_TYPE_WINT_T]) - AC_CHECK_FUNCS([snprintf strnlen wcslen wcsnlen mbrtowc wcrtomb]) + AC_CHECK_FUNCS([snprintf strnlen wcrtomb]) dnl Use the _snprintf function only if it is declared (because on NetBSD it dnl is defined as a weak alias of snprintf; we prefer to use the latter). AC_CHECK_DECLS([_snprintf], , , [[#include ]]) - dnl Knowing DBL_EXPBIT0_WORD and DBL_EXPBIT0_BIT enables an optimization - dnl in the code for NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_DOUBLE. - AC_REQUIRE([gl_DOUBLE_EXPONENT_LOCATION]) dnl We can avoid a lot of code by assuming that snprintf's return value dnl conforms to ISO C99. So check that. AC_REQUIRE([gl_SNPRINTF_RETVAL_C99]) @@ -84,6 +88,55 @@ AC_DEFUN_ONCE([gl_PREREQ_VASNPRINTF], terminated.]) ;; esac + gl_PREREQ_VASNXPRINTF +]) + +# Prerequisites of lib/vasnwprintf.c. +AC_DEFUN_ONCE([gl_PREREQ_VASNWPRINTF], +[ + AC_CHECK_FUNCS_ONCE([swprintf wcsnlen mbrtowc]) + AC_CHECK_DECLS([_snwprintf], , , [[#include ]]) + AC_CHECK_DECLS([wcsnlen], , , [[#include ]]) + gl_SWPRINTF_WORKS + case "$gl_cv_func_swprintf_works" in + *yes) + AC_DEFINE([HAVE_WORKING_SWPRINTF], [1], + [Define if the swprintf function works correctly when it produces output + that contains null wide characters.]) + ;; + esac + gl_MBRTOWC_C_LOCALE + case "$gl_cv_func_mbrtowc_C_locale_sans_EILSEQ" in + *yes) ;; + *) + AC_DEFINE([NEED_WPRINTF_DIRECTIVE_C], [1], + [Define if the vasnwprintf implementation needs special code for + the 'c' directive.]) + ;; + esac + gl_SWPRINTF_DIRECTIVE_LA + case "$gl_cv_func_swprintf_directive_la" in + *yes) ;; + *) + AC_DEFINE([NEED_WPRINTF_DIRECTIVE_LA], [1], + [Define if the vasnwprintf implementation needs special code for + the 'a' directive with 'long double' arguments.]) + ;; + esac + gl_MUSL_LIBC + gl_PREREQ_VASNXPRINTF +]) + +# Common prerequisites of lib/vasnprintf.c and lib/vasnwprintf.c. +AC_DEFUN_ONCE([gl_PREREQ_VASNXPRINTF], +[ + AC_REQUIRE([AC_FUNC_ALLOCA]) + AC_REQUIRE([gt_TYPE_WCHAR_T]) + AC_REQUIRE([gt_TYPE_WINT_T]) + AC_CHECK_FUNCS([wcslen]) + dnl Knowing DBL_EXPBIT0_WORD and DBL_EXPBIT0_BIT enables an optimization + dnl in the code for NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_DOUBLE. + AC_REQUIRE([gl_DOUBLE_EXPONENT_LOCATION]) ]) # Extra prerequisites of lib/vasnprintf.c for supporting 'long double' @@ -152,7 +205,22 @@ AC_DEFUN([gl_PREREQ_VASNPRINTF_DIRECTIVE_A], AC_DEFINE([NEED_PRINTF_DIRECTIVE_A], [1], [Define if the vasnprintf implementation needs special code for the 'a' and 'A' directives.]) - AC_CHECK_FUNCS([nl_langinfo]) + gl_CHECK_FUNCS_ANDROID([nl_langinfo], [[#include ]]) + ;; + esac +]) + +# Extra prerequisites of lib/vasnprintf.c for supporting the 'b' directive. +AC_DEFUN([gl_PREREQ_VASNPRINTF_DIRECTIVE_B], +[ + AC_REQUIRE([gl_PRINTF_DIRECTIVE_B]) + case "$gl_cv_func_printf_directive_b" in + *yes) + ;; + *) + AC_DEFINE([NEED_PRINTF_DIRECTIVE_B], [1], + [Define if the vasnprintf implementation needs special code for + the 'b' directive.]) ;; esac ]) @@ -187,6 +255,21 @@ AC_DEFUN([gl_PREREQ_VASNPRINTF_DIRECTIVE_LS], esac ]) +# Extra prerequisites of lib/vasnprintf.c for supporting the 'lc' directive. +AC_DEFUN([gl_PREREQ_VASNPRINTF_DIRECTIVE_LC], +[ + AC_REQUIRE([gl_PRINTF_DIRECTIVE_LC]) + case "$gl_cv_func_printf_directive_lc" in + *yes) + ;; + *) + AC_DEFINE([NEED_PRINTF_DIRECTIVE_LC], [1], + [Define if the vasnprintf implementation needs special code for + the 'lc' directive.]) + ;; + esac +]) + # Extra prerequisites of lib/vasnprintf.c for supporting the ' flag. AC_DEFUN([gl_PREREQ_VASNPRINTF_FLAG_GROUPING], [ @@ -276,15 +359,17 @@ AC_DEFUN([gl_PREREQ_VASNPRINTF_ENOMEM], ]) # Prerequisites of lib/vasnprintf.c including all extras for POSIX compliance. -AC_DEFUN([gl_PREREQ_VASNPRINTF_WITH_EXTRAS], +AC_DEFUN([gl_PREREQ_VASNPRINTF_WITH_POSIX_EXTRAS], [ AC_REQUIRE([gl_PREREQ_VASNPRINTF]) gl_PREREQ_VASNPRINTF_LONG_DOUBLE gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE gl_PREREQ_VASNPRINTF_DIRECTIVE_A + gl_PREREQ_VASNPRINTF_DIRECTIVE_B gl_PREREQ_VASNPRINTF_DIRECTIVE_F gl_PREREQ_VASNPRINTF_DIRECTIVE_LS + gl_PREREQ_VASNPRINTF_DIRECTIVE_LC gl_PREREQ_VASNPRINTF_FLAG_GROUPING gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST gl_PREREQ_VASNPRINTF_FLAG_ZERO @@ -292,7 +377,34 @@ AC_DEFUN([gl_PREREQ_VASNPRINTF_WITH_EXTRAS], gl_PREREQ_VASNPRINTF_ENOMEM ]) +# Extra prerequisites of lib/vasnprintf.c for supporting the 'B' directive. +AC_DEFUN([gl_PREREQ_VASNPRINTF_DIRECTIVE_UPPERCASE_B], +[ + AC_REQUIRE([gl_PRINTF_DIRECTIVE_UPPERCASE_B]) + case "$gl_cv_func_printf_directive_uppercase_b" in + *yes) + ;; + *) + AC_DEFINE([NEED_PRINTF_DIRECTIVE_UPPERCASE_B], [1], + [Define if the vasnprintf implementation needs special code for + the 'B' directive.]) + ;; + esac +]) + +# Prerequisites of lib/vasnprintf.c including all extras for POSIX compliance +# and GNU compatibility. +AC_DEFUN([gl_PREREQ_VASNPRINTF_WITH_GNU_EXTRAS], +[ + gl_PREREQ_VASNPRINTF_WITH_POSIX_EXTRAS + AC_DEFINE([SUPPORT_GNU_PRINTF_DIRECTIVES], [1], + [Define if the vasnprintf implementation should support GNU compatible + printf directives.]) + gl_PREREQ_VASNPRINTF_DIRECTIVE_UPPERCASE_B +]) + # Prerequisites of lib/asnprintf.c. +# Prerequisites of lib/asnwprintf.c. AC_DEFUN([gl_PREREQ_ASNPRINTF], [ ]) diff --git a/m4/vasprintf.m4 b/m4/vasprintf.m4 deleted file mode 100644 index a26de84..0000000 --- a/m4/vasprintf.m4 +++ /dev/null @@ -1,46 +0,0 @@ -# vasprintf.m4 serial 6 -dnl Copyright (C) 2002-2003, 2006-2007, 2009-2021 Free Software Foundation, -dnl Inc. -dnl This file is free software; the Free Software Foundation -dnl gives unlimited permission to copy and/or distribute it, -dnl with or without modifications, as long as this notice is preserved. - -AC_DEFUN([gl_FUNC_VASPRINTF], -[ - AC_CHECK_FUNCS([vasprintf]) - if test $ac_cv_func_vasprintf = no; then - gl_REPLACE_VASPRINTF - fi -]) - -AC_DEFUN([gl_REPLACE_VASPRINTF], -[ - AC_LIBOBJ([vasprintf]) - AC_LIBOBJ([asprintf]) - AC_REQUIRE([gl_STDIO_H_DEFAULTS]) - if test $ac_cv_func_vasprintf = yes; then - REPLACE_VASPRINTF=1 - else - HAVE_VASPRINTF=0 - fi - gl_PREREQ_VASPRINTF_H - gl_PREREQ_VASPRINTF - gl_PREREQ_ASPRINTF -]) - -# Prerequisites of the vasprintf portion of lib/stdio.h. -AC_DEFUN([gl_PREREQ_VASPRINTF_H], -[ - dnl Persuade glibc to declare asprintf() and vasprintf(). - AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS]) -]) - -# Prerequisites of lib/vasprintf.c. -AC_DEFUN([gl_PREREQ_VASPRINTF], -[ -]) - -# Prerequisites of lib/asprintf.c. -AC_DEFUN([gl_PREREQ_ASPRINTF], -[ -]) diff --git a/m4/version-etc.m4 b/m4/version-etc.m4 index ca7fd24..a948ef6 100644 --- a/m4/version-etc.m4 +++ b/m4/version-etc.m4 @@ -1,5 +1,5 @@ -# version-etc.m4 serial 1 -# Copyright (C) 2009-2021 Free Software Foundation, Inc. +# version-etc.m4 serial 2 +# Copyright (C) 2009-2023 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -8,7 +8,7 @@ dnl $1 - configure flag and define name dnl $2 - human readable description m4_define([gl_VERSION_ETC_FLAG], [dnl - AC_ARG_WITH([$1], [AS_HELP_STRING([--with-$1], [$2])], + AC_ARG_WITH([$1], [AS_HELP_STRING([[--with-]$1], [$2])], [dnl case $withval in yes|no) ;; diff --git a/m4/visibility.m4 b/m4/visibility.m4 index d161bd7..f0468e8 100644 --- a/m4/visibility.m4 +++ b/m4/visibility.m4 @@ -1,5 +1,5 @@ # visibility.m4 serial 8 -dnl Copyright (C) 2005, 2008, 2010-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2005, 2008, 2010-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/warn-on-use.m4 b/m4/warn-on-use.m4 index 04edfe8..10649c5 100644 --- a/m4/warn-on-use.m4 +++ b/m4/warn-on-use.m4 @@ -1,5 +1,5 @@ -# warn-on-use.m4 serial 9 -dnl Copyright (C) 2010-2021 Free Software Foundation, Inc. +# warn-on-use.m4 serial 10 +dnl Copyright (C) 2010-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -32,17 +32,30 @@ AC_DEFUN([gl_WARN_ON_USE_PREPARE], undefining macros.])])dnl for gl_func in m4_flatten([$2]); do AS_VAR_PUSHDEF([gl_Symbol], [gl_cv_have_raw_decl_$gl_func])dnl + dnl As a workaround to implicit built-in function declarations in + dnl clang (e.g. strndup), reference ac_compile_for_check_decl instead + dnl of ac_compile. If, for whatever reason, the override of AC_PROG_CC + dnl in zzgnulib.m4 is inactive, use the original ac_compile. + ac_save_ac_compile="$ac_compile" + if test -n "$ac_compile_for_check_decl"; then + ac_compile="$ac_compile_for_check_decl" + fi AC_CACHE_CHECK([whether $gl_func is declared without a macro], [gl_Symbol], [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([$1], [[#undef $gl_func (void) $gl_func;]])], [AS_VAR_SET([gl_Symbol], [yes])], [AS_VAR_SET([gl_Symbol], [no])])]) + ac_compile="$ac_save_ac_compile" AS_VAR_IF([gl_Symbol], [yes], [AC_DEFINE_UNQUOTED(AS_TR_CPP([HAVE_RAW_DECL_$gl_func]), [1]) - dnl shortcut - if the raw declaration exists, then set a cache - dnl variable to allow skipping any later AC_CHECK_DECL efforts - eval ac_cv_have_decl_$gl_func=yes]) + dnl Shortcut for an AC_CHECK_DECL invocation that may come later: + dnl If the raw declaration exists with the given includes, then + dnl AC_CHECK_DECL with its many includes would see it as well. + dnl So, set a cache variable to allow skipping any later + dnl AC_CHECK_DECL invocation for $gl_func. + eval "ac_cv_have_decl_$gl_func=yes" + ]) AS_VAR_POPDEF([gl_Symbol])dnl done ]) diff --git a/m4/warnings.m4 b/m4/warnings.m4 index 9e24d89..063bc5c 100644 --- a/m4/warnings.m4 +++ b/m4/warnings.m4 @@ -1,5 +1,5 @@ # warnings.m4 serial 16 -dnl Copyright (C) 2008-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2008-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/wchar_h.m4 b/m4/wchar_h.m4 index 818b319..442932b 100644 --- a/m4/wchar_h.m4 +++ b/m4/wchar_h.m4 @@ -1,13 +1,13 @@ dnl A placeholder for ISO C99 , for platforms that have issues. -dnl Copyright (C) 2007-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2007-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. dnl Written by Eric Blake. -# wchar_h.m4 serial 53 +# wchar_h.m4 serial 60 AC_DEFUN_ONCE([gl_WCHAR_H], [ @@ -189,6 +189,8 @@ AC_DEFUN([gl_WCHAR_H_REQUIRE_DEFAULTS], gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_WCSDUP], [1]) ]) m4_require(GL_MODULE_INDICATOR_PREFIX[_WCHAR_H_MODULE_INDICATOR_DEFAULTS]) + dnl Make sure the shell variable for GNULIB_FREE_POSIX is initialized. + gl_STDLIB_H_REQUIRE_DEFAULTS AC_REQUIRE([gl_WCHAR_H_DEFAULTS]) ]) @@ -251,5 +253,10 @@ AC_DEFUN([gl_WCHAR_H_DEFAULTS], REPLACE_WCWIDTH=0; AC_SUBST([REPLACE_WCWIDTH]) REPLACE_WCSWIDTH=0; AC_SUBST([REPLACE_WCSWIDTH]) REPLACE_WCSFTIME=0; AC_SUBST([REPLACE_WCSFTIME]) + REPLACE_WCSCMP=0; AC_SUBST([REPLACE_WCSCMP]) + REPLACE_WCSNCMP=0; AC_SUBST([REPLACE_WCSNCMP]) + REPLACE_WCSSTR=0; AC_SUBST([REPLACE_WCSSTR]) REPLACE_WCSTOK=0; AC_SUBST([REPLACE_WCSTOK]) + REPLACE_WMEMCMP=0; AC_SUBST([REPLACE_WMEMCMP]) + REPLACE_WMEMPCPY=0; AC_SUBST([REPLACE_WMEMPCPY]) ]) diff --git a/m4/wchar_t.m4 b/m4/wchar_t.m4 index 34db10e..50bde08 100644 --- a/m4/wchar_t.m4 +++ b/m4/wchar_t.m4 @@ -1,5 +1,5 @@ # wchar_t.m4 serial 4 (gettext-0.18.2) -dnl Copyright (C) 2002-2003, 2008-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2002-2003, 2008-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/wcrtomb.m4 b/m4/wcrtomb.m4 index cd96f11..d51b36e 100644 --- a/m4/wcrtomb.m4 +++ b/m4/wcrtomb.m4 @@ -1,5 +1,5 @@ # wcrtomb.m4 serial 17 -dnl Copyright (C) 2008-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2008-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/wctob.m4 b/m4/wctob.m4 index 159b609..90042a5 100644 --- a/m4/wctob.m4 +++ b/m4/wctob.m4 @@ -1,5 +1,5 @@ # wctob.m4 serial 13 -dnl Copyright (C) 2008-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2008-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/wctomb.m4 b/m4/wctomb.m4 index 2da8b26..2e22310 100644 --- a/m4/wctomb.m4 +++ b/m4/wctomb.m4 @@ -1,5 +1,5 @@ # wctomb.m4 serial 2 -dnl Copyright (C) 2011-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2011-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/wctype_h.m4 b/m4/wctype_h.m4 index 7d74212..6856a73 100644 --- a/m4/wctype_h.m4 +++ b/m4/wctype_h.m4 @@ -2,7 +2,7 @@ dnl A placeholder for ISO C99 , for platforms that lack it. -dnl Copyright (C) 2006-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2006-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/wcwidth.m4 b/m4/wcwidth.m4 index 2ac2a51..e7829e9 100644 --- a/m4/wcwidth.m4 +++ b/m4/wcwidth.m4 @@ -1,5 +1,5 @@ -# wcwidth.m4 serial 34 -dnl Copyright (C) 2006-2021 Free Software Foundation, Inc. +# wcwidth.m4 serial 36 +dnl Copyright (C) 2006-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -41,9 +41,9 @@ AC_DEFUN([gl_FUNC_WCWIDTH], if test $ac_cv_func_wcwidth = yes || test $gl_cv_func_wcwidth_macro = yes; then HAVE_WCWIDTH=1 dnl On Mac OS X 10.3, wcwidth(0x0301) (COMBINING ACUTE ACCENT) returns 1. - dnl On NetBSD 9.0, OpenBSD 5.0, MidnightBSD 1.1, + dnl On macOS 12.5, NetBSD 9.0, OpenBSD 5.0, MidnightBSD 1.1, dnl wcwidth(0x05B0) (HEBREW POINT SHEVA) returns 1. - dnl On NetBSD 9.0, MidnightBSD 1.1, OSF/1 5.1, + dnl On macOS 12.5, NetBSD 9.0, MidnightBSD 1.1, OSF/1 5.1, dnl wcwidth(0x200B) (ZERO WIDTH SPACE) returns 1. dnl On OpenBSD 5.8, wcwidth(0xFF1A) (FULLWIDTH COLON) returns 0. dnl This leads to bugs in 'ls' (coreutils). @@ -86,13 +86,13 @@ int main () [ changequote(,)dnl case "$host_os" in - # Guess yes on glibc systems. - *-gnu* | gnu*) gl_cv_func_wcwidth_works="guessing yes";; - # Guess yes on musl systems. - *-musl*) gl_cv_func_wcwidth_works="guessing yes";; - # Guess yes on AIX 7 systems. - aix[7-9]*) gl_cv_func_wcwidth_works="guessing yes";; - *) gl_cv_func_wcwidth_works="$gl_cross_guess_normal";; + # Guess yes on glibc systems. + *-gnu* | gnu*) gl_cv_func_wcwidth_works="guessing yes";; + # Guess yes on musl systems. + *-musl* | midipix*) gl_cv_func_wcwidth_works="guessing yes";; + # Guess yes on AIX 7 systems. + aix[7-9]*) gl_cv_func_wcwidth_works="guessing yes";; + *) gl_cv_func_wcwidth_works="$gl_cross_guess_normal";; esac changequote([,])dnl ]) diff --git a/m4/wint_t.m4 b/m4/wint_t.m4 index a49c508..dfd743b 100644 --- a/m4/wint_t.m4 +++ b/m4/wint_t.m4 @@ -1,5 +1,5 @@ # wint_t.m4 serial 11 -dnl Copyright (C) 2003, 2007-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2003, 2007-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/wmemchr.m4 b/m4/wmemchr.m4 index a5b4eb7..ac414fb 100644 --- a/m4/wmemchr.m4 +++ b/m4/wmemchr.m4 @@ -1,5 +1,5 @@ # wmemchr.m4 serial 5 -dnl Copyright (C) 2011-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2011-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/wmempcpy.m4 b/m4/wmempcpy.m4 index 9d774ae..abf1df3 100644 --- a/m4/wmempcpy.m4 +++ b/m4/wmempcpy.m4 @@ -1,5 +1,5 @@ -# wmempcpy.m4 serial 1 -dnl Copyright (C) 2020-2021 Free Software Foundation, Inc. +# wmempcpy.m4 serial 3 +dnl Copyright (C) 2020-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -14,8 +14,11 @@ AC_DEFUN([gl_FUNC_WMEMPCPY], dnl The wmempcpy() declaration in lib/wchar.in.h uses 'restrict'. AC_REQUIRE([AC_C_RESTRICT]) - AC_CHECK_FUNCS_ONCE([wmempcpy]) + gl_CHECK_FUNCS_ANDROID([wmempcpy], [[#include ]]) if test $ac_cv_func_wmempcpy = no; then HAVE_WMEMPCPY=0 + case "$gl_cv_onwards_func_wmempcpy" in + future*) REPLACE_WMEMPCPY=1 ;; + esac fi ]) diff --git a/m4/xalloc.m4 b/m4/xalloc.m4 index 8fabf1c..fc56f59 100644 --- a/m4/xalloc.m4 +++ b/m4/xalloc.m4 @@ -1,5 +1,5 @@ # xalloc.m4 serial 18 -dnl Copyright (C) 2002-2006, 2009-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2002-2006, 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/xsize.m4 b/m4/xsize.m4 index 64e8a4f..649db9c 100644 --- a/m4/xsize.m4 +++ b/m4/xsize.m4 @@ -1,5 +1,5 @@ # xsize.m4 serial 5 -dnl Copyright (C) 2003-2004, 2008-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2003-2004, 2008-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/xstrtol.m4 b/m4/xstrtol.m4 index e6cdef5..dc41261 100644 --- a/m4/xstrtol.m4 +++ b/m4/xstrtol.m4 @@ -1,5 +1,5 @@ #serial 11 -dnl Copyright (C) 2002-2007, 2009-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2002-2007, 2009-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/m4/xvasprintf.m4 b/m4/xvasprintf.m4 deleted file mode 100644 index 20a1a06..0000000 --- a/m4/xvasprintf.m4 +++ /dev/null @@ -1,8 +0,0 @@ -# xvasprintf.m4 serial 2 -dnl Copyright (C) 2006, 2009-2021 Free Software Foundation, Inc. -dnl This file is free software; the Free Software Foundation -dnl gives unlimited permission to copy and/or distribute it, -dnl with or without modifications, as long as this notice is preserved. - -dnl Prerequisites of lib/xvasprintf.c. -AC_DEFUN([gl_XVASPRINTF], [:]) diff --git a/m4/year2038.m4 b/m4/year2038.m4 deleted file mode 100644 index ad7f303..0000000 --- a/m4/year2038.m4 +++ /dev/null @@ -1,112 +0,0 @@ -# year2038.m4 serial 5 -dnl Copyright (C) 2017-2021 Free Software Foundation, Inc. -dnl This file is free software; the Free Software Foundation -dnl gives unlimited permission to copy and/or distribute it, -dnl with or without modifications, as long as this notice is preserved. - -dnl Attempt to ensure that 'time_t' is a 64-bit type -dnl and that the functions time(), stat(), etc. return 64-bit times. - -AC_DEFUN([gl_YEAR2038_EARLY], -[ - AC_REQUIRE([AC_CANONICAL_HOST]) - case "$host_os" in - mingw*) - AC_DEFINE([__MINGW_USE_VC2005_COMPAT], [1], - [For 64-bit time_t on 32-bit mingw.]) - ;; - esac -]) - -# gl_YEAR2038_TEST_INCLUDES -# ------------------------- -AC_DEFUN([gl_YEAR2038_TEST_INCLUDES], -[[ - #include - /* Check that time_t can represent 2**63 - 1 correctly. - We can't simply define LARGE_TIME_T to be 9223372036854775807, - since some C++ compilers masquerading as C compilers - incorrectly reject 9223372036854775807. */ - #define LARGE_TIME_T (((time_t) 1 << 31 << 31) - 1 + ((time_t) 1 << 31 << 31)) - int verify_time_t_range[(LARGE_TIME_T % 2147483629 == 721 - && LARGE_TIME_T % 2147483647 == 1) - ? 1 : -1]; -]]) - -# gl_YEAR2038_BODY(REQUIRE-64-BIT) ----------------------------------- -AC_DEFUN([gl_YEAR2038_BODY], -[ - AC_ARG_ENABLE([year2038], - [ --disable-year2038 omit support for timestamps past the year 2038]) - AS_IF([test "$enable_year2038" != no], - [ - dnl On many systems, time_t is already a 64-bit type. - dnl On those systems where time_t is still 32-bit, it requires kernel - dnl and libc support to make it 64-bit. For glibc 2.34 and later on Linux, - dnl defining _TIME_BITS=64 and _FILE_OFFSET_BITS=64 is needed on x86 and ARM. - dnl - dnl On native Windows, the system include files define types __time32_t - dnl and __time64_t. By default, time_t is an alias of - dnl - __time32_t on 32-bit mingw, - dnl - __time64_t on 64-bit mingw and on MSVC (since MSVC 8). - dnl But when compiling with -D__MINGW_USE_VC2005_COMPAT, time_t is an - dnl alias of __time64_t. - dnl And when compiling with -D_USE_32BIT_TIME_T, time_t is an alias of - dnl __time32_t. - AC_CACHE_CHECK([for 64-bit time_t], [gl_cv_type_time_t_64], - [AC_COMPILE_IFELSE( - [AC_LANG_SOURCE([gl_YEAR2038_TEST_INCLUDES])], - [gl_cv_type_time_t_64=yes], [gl_cv_type_time_t_64=no]) - ]) - if test "$gl_cv_type_time_t_64" = no; then - AC_CACHE_CHECK([for 64-bit time_t with _TIME_BITS=64], - [gl_cv_type_time_t_bits_macro], - [AC_COMPILE_IFELSE( - [AC_LANG_SOURCE([[#define _TIME_BITS 64 - #define _FILE_OFFSET_BITS 64 - ]gl_YEAR2038_TEST_INCLUDES])], - [gl_cv_type_time_t_bits_macro=yes], - [gl_cv_type_time_t_bits_macro=no]) - ]) - if test "$gl_cv_type_time_t_bits_macro" = yes; then - AC_DEFINE([_TIME_BITS], [64], - [Number of bits in a timestamp, on hosts where this is settable.]) - dnl AC_SYS_LARGFILE also defines this; it's OK if we do too. - AC_DEFINE([_FILE_OFFSET_BITS], [64], - [Number of bits in a file offset, on hosts where this is settable.]) - gl_cv_type_time_t_64=yes - fi - fi - if test $gl_cv_type_time_t_64 = no; then - AC_COMPILE_IFELSE( - [AC_LANG_SOURCE( - [[#ifdef _USE_32BIT_TIME_T - int ok; - #else - error fail - #endif - ]])], - [AC_MSG_FAILURE([This package requires a 64-bit 'time_t' type. Remove _USE_32BIT_TIME_T from the compiler flags.])], - [# If not cross-compiling and $1 says we should check, - # and 'touch' works with a large timestamp, then evidently 64-bit time_t - # is desired and supported, so fail and ask the builder to fix the - # problem. Otherwise, just warn the builder. - m4_ifval([$1], - [if test $cross_compiling = no \ - && TZ=UTC0 touch -t 210602070628.16 conftest.time 2>/dev/null; then - rm -f conftest.time - AC_MSG_FAILURE([This package requires a 64-bit 'time_t' type, which your system appears to support. You might try configuring with 'CPPFLAGS="-m64" LDFLAGS="-m64"'. To build with a 32-bit time_t anyway (not recommended), configure with '--disable-year2038'.]) - fi]) - if test "$gl_warned_about_64_bit_time_t" != yes; then - AC_MSG_WARN([This package requires a 64-bit 'time_t' type if there is any way to access timestamps outside the year range 1901-2038 on your platform. Perhaps you should configure with 'CPPFLAGS="-m64" LDFLAGS="-m64"'?]) - gl_warned_about_64_bit_time_t=yes - fi - ]) - fi]) -]) - -AC_DEFUN([gl_YEAR2038], -[ - gl_YEAR2038_BODY([require-64-bit]) -]) diff --git a/m4/zzgnulib.m4 b/m4/zzgnulib.m4 index b953384..362102b 100644 --- a/m4/zzgnulib.m4 +++ b/m4/zzgnulib.m4 @@ -1,5 +1,5 @@ # zzgnulib.m4 serial 1 -dnl Copyright (C) 2020-2021 Free Software Foundation, Inc. +dnl Copyright (C) 2020-2023 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. diff --git a/maint.mk b/maint.mk index 044254b..44f3db9 100644 --- a/maint.mk +++ b/maint.mk @@ -2,7 +2,7 @@ # This Makefile fragment tries to be general-purpose enough to be # used by many projects via the gnulib maintainer-makefile module. -## Copyright (C) 2001-2021 Free Software Foundation, Inc. +## Copyright (C) 2001-2023 Free Software Foundation, Inc. ## ## This program is free software: you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by @@ -64,10 +64,10 @@ VC_LIST = $(srcdir)/$(_build-aux)/vc-list-files -C $(srcdir) # You can override this variable in cfg.mk if your gnulib submodule lives # in a different location. -gnulib_dir ?= $(shell if test -d $(srcdir)/gnulib; then \ - echo $(srcdir)/gnulib; \ +gnulib_dir ?= $(shell if test -n "$(GNULIB_SRCDIR)" && test -f "$(GNULIB_SRCDIR)/gnulib-tool"; then \ + echo "$(GNULIB_SRCDIR)"; \ else \ - echo ${GNULIB_SRCDIR}; \ + echo $(srcdir)/gnulib; \ fi) # You can override this variable in cfg.mk to set your own regexp @@ -473,7 +473,7 @@ sc_error_message_uppercase: @$(VC_LIST_EXCEPT) \ | xargs $(GREP) -nEA2 '[^rp]error *\(' /dev/null \ | $(GREP) -E '"[A-Z]' \ - | $(GREP) -vE '"FATAL|"WARNING|"Java|"C#|PRIuMAX' \ + | $(GREP) -vE '"FATAL|"WARNING|"Java|"C#|"PRI' \ && { echo '$(ME): found capitalized error message' 1>&2; \ exit 1; } \ || : @@ -622,9 +622,9 @@ sc_prohibit_xalloc_without_use: $(_sc_header_without_use) # Extract function names: -# perl -lne '/^(?:extern )?(?:void|char) \*?(\w+) *\(/ and print $1' lib/hash.h +# perl -lne '/^(?:extern )?(?:void|char|Hash_table) \*?(\w+) *\(/ and print $1' lib/hash.h _hash_re = \ -clear|delete|free|get_(first|next)|insert|lookup|print_statistics|reset_tuning +hash_(re(set_tuning|move)|xin(itialize|sert)|in(itialize|sert)|get_(firs|nex)t|print_statistics|(delet|fre)e|lookup|clear) _hash_fn = \<($(_hash_re)) *\( _hash_struct = (struct )?\<[Hh]ash_(table|tuning)\> sc_prohibit_hash_without_use: @@ -765,7 +765,7 @@ sc_prohibit_dirent_without_use: # Prohibit the inclusion of verify.h without an actual use. sc_prohibit_verify_without_use: @h='verify.h' \ - re='\<(verify(true|expr)?|assume|static_assert) *\(' \ + re='\<(verify(_expr)?|assume) *\(' \ $(_sc_header_without_use) # Don't include xfreopen.h unless you use one of its functions. @@ -823,7 +823,7 @@ sc_trailing_blank: # Match lines like the following, but where there is only one space # between the options and the description: # -D, --all-repeated[=delimit-method] print all duplicate lines\n -longopt_re = --[a-z][0-9A-Za-z-]*(\[?=[0-9A-Za-z-]*\]?)? +longopt_re = --[a-z][0-9A-Za-z-]*(\[?=[0-9A-Za-z-]*]?)? sc_two_space_separator_in_usage: @prohibit='^ *(-[A-Za-z],)? $(longopt_re) [^ ].*\\$$' \ halt='help2man requires at least two spaces between an option and its description'\ @@ -1031,7 +1031,7 @@ perl_filename_lineno_text_ = \ -e ' }' prohibit_doubled_words_ = \ - the then in an on if is it but for or at and do to + the then in an on if is it but for or at and do to can # expand the regex before running the check to avoid using expensive captures prohibit_doubled_word_expanded_ = \ $(join $(prohibit_doubled_words_),$(addprefix \s+,$(prohibit_doubled_words_))) @@ -1256,6 +1256,12 @@ sc_makefile_path_separator_check: halt=$(msg) \ $(_sc_search_regexp) +sc_makefile_DISTCHECK_CONFIGURE_FLAGS: + @prohibit='^DISTCHECK_CONFIGURE_FLAGS' \ + in_vc_files='akefile|\.mk$$' \ + halt="use AM_DISTCHECK_CONFIGURE_FLAGS" \ + $(_sc_search_regexp) + # Check that 'make alpha' will not fail at the end of the process, # i.e., when pkg-M.N.tar.xz already exists (either in "." or in ../release) # and is read-only. @@ -1286,7 +1292,7 @@ sc_copyright_check: in_vc_files=$(sample-test) \ halt='out of date copyright in $(sample-test); update it' \ $(_sc_search_regexp) - @require='Copyright @copyright\{\} .*'$$(date +%Y) \ + @require='Copyright @copyright\{} .*'$$(date +%Y) \ in_vc_files=$(texi) \ halt='out of date copyright in $(texi); update it' \ $(_sc_search_regexp) @@ -1367,6 +1373,10 @@ sc_vulnerable_makefile_CVE-2012-3386: ' see https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2012-3386 for details') \ $(_sc_search_regexp) +sc_unportable_grep_q: + @prohibit='grep -q' halt="unportable 'grep -q', use >/dev/null instead" \ + $(_sc_search_regexp) + vc-diff-check: $(AM_V_GEN)(unset CDPATH; cd $(srcdir) && $(VC) diff) > vc-diffs || : $(AM_V_at)if test -s vc-diffs; then \ @@ -1390,7 +1400,12 @@ gpg_key_ID ?= \ $$(cd $(srcdir) \ && git cat-file tag v$(VERSION) \ | $(gpgv) --status-fd 1 --keyring /dev/null - - 2>/dev/null \ - | $(AWK) '/^\[GNUPG:\] ERRSIG / {print $$3; exit}') + | $(AWK) '/^\[GNUPG:] ERRSIG / {print $$3; exit}') +gpg_key_email ?= \ + $$(gpg --list-key --with-colons $(gpg_key_ID) 2>/dev/null \ + | $(AWK) -F: '/^uid/ {print $$10; exit}' \ + | $(SED) -n 's/.*<\(.*\)>/\1/p') +gpg_keyring_url ?= https://savannah.gnu.org/project/release-gpgkeys.php?group=$(PACKAGE)&download=1 translation_project_ ?= coordinator@translationproject.org @@ -1421,12 +1436,15 @@ announcement: NEWS ChangeLog $(rel-files) --prev=$(PREV_VERSION) \ --curr=$(VERSION) \ --gpg-key-id=$(gpg_key_ID) \ + $$(test -n "$(gpg_key_email)" && \ + echo --gpg-key-email="$(gpg_key_email)") \ + $$(test -n "$(gpg_keyring_url)" && \ + echo --gpg-keyring-url="$(gpg_keyring_url)") \ --srcdir=$(srcdir) \ --news=$(srcdir)/NEWS \ --bootstrap-tools=$(bootstrap-tools) \ $$(case ,$(bootstrap-tools), in (*,gnulib,*) \ echo --gnulib-version=$(gnulib-version);; esac) \ - --no-print-checksums \ $(addprefix --url-dir=, $(url_dir_list)) .PHONY: release-commit @@ -1523,7 +1541,7 @@ alpha beta stable: $(local-check) writable-files $(submodule-checks) release: $(AM_V_GEN)$(MAKE) _version - $(AM_V_GEN)$(MAKE) $(release-type) + $(AM_V_at)$(MAKE) $(release-type) # Override this in cfg.mk if you follow different procedures. release-prep-hook ?= release-prep @@ -1632,12 +1650,32 @@ refresh-po: ls $(PODIR)/*.po | $(SED) 's/\.po//;s,$(PODIR)/,,' | \ sort >> $(PODIR)/LINGUAS - # Running indent once is not idempotent, but running it twice is. +# Indentation + +indent_args ?= -ppi 1 +C_SOURCES ?= $$($(VC_LIST_EXCEPT) | grep '\.[ch]\(.in\)\?$$') INDENT_SOURCES ?= $(C_SOURCES) +exclude_file_name_regexp--indent ?= $(exclude_file_name_regexp--sc_indent) + .PHONY: indent -indent: - indent $(INDENT_SOURCES) - indent $(INDENT_SOURCES) +indent: # Running indent once is not idempotent, but running it twice is. + $(AM_V_GEN)indent $(indent_args) $(INDENT_SOURCES) && \ + indent $(indent_args) $(INDENT_SOURCES) + +sc_indent: + @if ! indent --version 2> /dev/null | grep 'GNU indent' > /dev/null; then \ + echo 1>&2 '$(ME): sc_indent: GNU indent is missing'; \ + else \ + fail=0; files="$(INDENT_SOURCES)"; \ + for f in $$files; do \ + indent $(indent_args) -st $$f \ + | indent $(indent_args) -st - \ + | diff -u $$f - || fail=1; \ + done; \ + test $$fail = 1 && \ + { echo 1>&2 '$(ME): code format error, try "make indent"'; \ + exit 1; } || :; \ + fi # If you want to set UPDATE_COPYRIGHT_* environment variables, # put the assignments in this variable. @@ -1683,9 +1721,8 @@ sc_tight_scope: tight-scope.mk exit $$fail tight-scope.mk: $(ME) - @rm -f $@ $@-t @perl -ne '/^# TS-start/.../^# TS-end/ and print' $(srcdir)/$(ME) > $@-t - @chmod a=r $@-t && mv $@-t $@ + @mv $@-t $@ ifeq (a,b) # TS-start @@ -1716,8 +1753,8 @@ _gl_TS_unmarked_extern_vars ?= # a macro like this: GLOBAL(type, var_name, initializer), then you # can override this definition to automatically extract those names: # export _gl_TS_var_match = \ -# /^(?:$(_gl_TS_extern)) .*?\**(\w+)(\[.*?\])?;/ || /\bGLOBAL\(.*?,\s*(.*?),/ -_gl_TS_var_match ?= /^(?:$(_gl_TS_extern)) .*?(\w+)(\[.*?\])?;/ +# /^(?:$(_gl_TS_extern)) .*?\**(\w+)(\[.*?])?;/ || /\bGLOBAL\(.*?,\s*(.*?),/ +_gl_TS_var_match ?= /^(?:$(_gl_TS_extern)) .*?(\w+)(\[.*?])?;/ # The names of object files in (or relative to) $(_gl_TS_dir). _gl_TS_obj_files ?= *.$(OBJEXT) diff --git a/man/Makefile.am b/man/Makefile.am index 73073d8..26e0f82 100644 --- a/man/Makefile.am +++ b/man/Makefile.am @@ -1,6 +1,6 @@ # Automakefile for GNU diffutils man pages -# Copyright (C) 2002, 2009-2013, 2015-2021 Free Software Foundation, Inc. +# Copyright (C) 2002, 2009-2013, 2015-2023 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff --git a/man/Makefile.in b/man/Makefile.in index 6968f6a..9b5c84b 100644 --- a/man/Makefile.in +++ b/man/Makefile.in @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.16d from Makefile.am. +# Makefile.in generated by automake 1.16i from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2021 Free Software Foundation, Inc. +# Copyright (C) 1994-2023 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -16,7 +16,7 @@ # Automakefile for GNU diffutils man pages -# Copyright (C) 2002, 2009-2013, 2015-2021 Free Software Foundation, Inc. +# Copyright (C) 2002, 2009-2013, 2015-2023 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -86,6 +86,8 @@ am__make_running_with_option = \ test $$has_opt = yes am__make_dryrun = (target_option=n; $(am__make_running_with_option)) am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +am__rm_f = rm -f $(am__rm_f_notfound) +am__rm_rf = rm -rf $(am__rm_f_notfound) pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ @@ -110,19 +112,22 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/__inline.m4 \ $(top_srcdir)/m4/absolute-header.m4 $(top_srcdir)/m4/alloca.m4 \ $(top_srcdir)/m4/arpa_inet_h.m4 \ - $(top_srcdir)/m4/asm-underscore.m4 $(top_srcdir)/m4/atoll.m4 \ + $(top_srcdir)/m4/asm-underscore.m4 \ + $(top_srcdir)/m4/assert_h.m4 $(top_srcdir)/m4/atoll.m4 \ $(top_srcdir)/m4/btowc.m4 $(top_srcdir)/m4/builtin-expect.m4 \ - $(top_srcdir)/m4/c-stack.m4 $(top_srcdir)/m4/calloc.m4 \ - $(top_srcdir)/m4/clock_time.m4 $(top_srcdir)/m4/close.m4 \ - $(top_srcdir)/m4/codeset.m4 $(top_srcdir)/m4/config-h.m4 \ - $(top_srcdir)/m4/ctype_h.m4 \ + $(top_srcdir)/m4/c-bool.m4 $(top_srcdir)/m4/c-stack.m4 \ + $(top_srcdir)/m4/calloc.m4 $(top_srcdir)/m4/clock_time.m4 \ + $(top_srcdir)/m4/close.m4 $(top_srcdir)/m4/codeset.m4 \ + $(top_srcdir)/m4/config-h.m4 $(top_srcdir)/m4/ctype_h.m4 \ $(top_srcdir)/m4/double-slash-root.m4 $(top_srcdir)/m4/dup2.m4 \ $(top_srcdir)/m4/eealloc.m4 $(top_srcdir)/m4/environ.m4 \ $(top_srcdir)/m4/errno_h.m4 $(top_srcdir)/m4/error.m4 \ - $(top_srcdir)/m4/exponentd.m4 $(top_srcdir)/m4/extensions.m4 \ - $(top_srcdir)/m4/extern-inline.m4 $(top_srcdir)/m4/fcntl-o.m4 \ - $(top_srcdir)/m4/fcntl.m4 $(top_srcdir)/m4/fcntl_h.m4 \ - $(top_srcdir)/m4/fdopen.m4 $(top_srcdir)/m4/filenamecat.m4 \ + $(top_srcdir)/m4/error_h.m4 $(top_srcdir)/m4/exponentd.m4 \ + $(top_srcdir)/m4/extensions.m4 \ + $(top_srcdir)/m4/extern-inline.m4 $(top_srcdir)/m4/fclose.m4 \ + $(top_srcdir)/m4/fcntl-o.m4 $(top_srcdir)/m4/fcntl.m4 \ + $(top_srcdir)/m4/fcntl_h.m4 $(top_srcdir)/m4/fdopen.m4 \ + $(top_srcdir)/m4/fflush.m4 $(top_srcdir)/m4/filenamecat.m4 \ $(top_srcdir)/m4/flexmember.m4 $(top_srcdir)/m4/float_h.m4 \ $(top_srcdir)/m4/fnmatch.m4 $(top_srcdir)/m4/fnmatch_h.m4 \ $(top_srcdir)/m4/fopen.m4 $(top_srcdir)/m4/fpieee.m4 \ @@ -138,15 +143,16 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/host-cpu-c-abi.m4 $(top_srcdir)/m4/iconv.m4 \ $(top_srcdir)/m4/iconv_h.m4 $(top_srcdir)/m4/iconv_open.m4 \ $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inet_pton.m4 \ - $(top_srcdir)/m4/inline.m4 $(top_srcdir)/m4/intlmacosx.m4 \ - $(top_srcdir)/m4/intmax_t.m4 $(top_srcdir)/m4/inttostr.m4 \ - $(top_srcdir)/m4/inttypes.m4 $(top_srcdir)/m4/inttypes_h.m4 \ - $(top_srcdir)/m4/ioctl.m4 $(top_srcdir)/m4/isblank.m4 \ - $(top_srcdir)/m4/iswblank.m4 $(top_srcdir)/m4/iswdigit.m4 \ - $(top_srcdir)/m4/iswxdigit.m4 $(top_srcdir)/m4/langinfo_h.m4 \ - $(top_srcdir)/m4/largefile.m4 $(top_srcdir)/m4/lib-ld.m4 \ - $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ - $(top_srcdir)/m4/libsigsegv.m4 \ + $(top_srcdir)/m4/inline.m4 \ + $(top_srcdir)/m4/intl-thread-locale.m4 \ + $(top_srcdir)/m4/intlmacosx.m4 $(top_srcdir)/m4/intmax_t.m4 \ + $(top_srcdir)/m4/inttostr.m4 $(top_srcdir)/m4/inttypes.m4 \ + $(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/ioctl.m4 \ + $(top_srcdir)/m4/isblank.m4 $(top_srcdir)/m4/iswblank.m4 \ + $(top_srcdir)/m4/iswdigit.m4 $(top_srcdir)/m4/iswxdigit.m4 \ + $(top_srcdir)/m4/langinfo_h.m4 $(top_srcdir)/m4/largefile.m4 \ + $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ + $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libsigsegv.m4 \ $(top_srcdir)/m4/libunistring-base.m4 \ $(top_srcdir)/m4/limits-h.m4 $(top_srcdir)/m4/localcharset.m4 \ $(top_srcdir)/m4/locale-fr.m4 $(top_srcdir)/m4/locale-ja.m4 \ @@ -168,11 +174,13 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/netinet_in_h.m4 \ $(top_srcdir)/m4/nl_langinfo.m4 $(top_srcdir)/m4/nls.m4 \ $(top_srcdir)/m4/nocrash.m4 $(top_srcdir)/m4/nstrftime.m4 \ - $(top_srcdir)/m4/off_t.m4 $(top_srcdir)/m4/open-cloexec.m4 \ + $(top_srcdir)/m4/nullptr.m4 $(top_srcdir)/m4/off_t.m4 \ + $(top_srcdir)/m4/open-cloexec.m4 \ $(top_srcdir)/m4/open-slash.m4 $(top_srcdir)/m4/open.m4 \ - $(top_srcdir)/m4/pathmax.m4 $(top_srcdir)/m4/perror.m4 \ - $(top_srcdir)/m4/pipe.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/printf.m4 $(top_srcdir)/m4/progtest.m4 \ + $(top_srcdir)/m4/pathmax.m4 $(top_srcdir)/m4/perl.m4 \ + $(top_srcdir)/m4/perror.m4 $(top_srcdir)/m4/pipe.m4 \ + $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/printf.m4 \ + $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/pselect.m4 \ $(top_srcdir)/m4/pthread-thread.m4 \ $(top_srcdir)/m4/pthread_h.m4 \ $(top_srcdir)/m4/pthread_rwlock_rdlock.m4 \ @@ -183,9 +191,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/reallocarray.m4 $(top_srcdir)/m4/regex.m4 \ $(top_srcdir)/m4/sched_h.m4 $(top_srcdir)/m4/select.m4 \ $(top_srcdir)/m4/setenv.m4 $(top_srcdir)/m4/setlocale_null.m4 \ - $(top_srcdir)/m4/sigaction.m4 $(top_srcdir)/m4/sigaltstack.m4 \ - $(top_srcdir)/m4/signal_h.m4 \ - $(top_srcdir)/m4/signalblocking.m4 \ + $(top_srcdir)/m4/sigaltstack.m4 $(top_srcdir)/m4/signal_h.m4 \ + $(top_srcdir)/m4/signalblocking.m4 $(top_srcdir)/m4/sigsegv.m4 \ $(top_srcdir)/m4/size_max.m4 $(top_srcdir)/m4/sleep.m4 \ $(top_srcdir)/m4/snprintf.m4 $(top_srcdir)/m4/socketlib.m4 \ $(top_srcdir)/m4/sockets.m4 $(top_srcdir)/m4/socklen.m4 \ @@ -193,9 +200,9 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/stack-direction.m4 \ $(top_srcdir)/m4/stat-time.m4 $(top_srcdir)/m4/stat.m4 \ $(top_srcdir)/m4/stdalign.m4 $(top_srcdir)/m4/stdarg.m4 \ - $(top_srcdir)/m4/stdbool.m4 $(top_srcdir)/m4/stddef_h.m4 \ - $(top_srcdir)/m4/stdint.m4 $(top_srcdir)/m4/stdint_h.m4 \ - $(top_srcdir)/m4/stdio_h.m4 $(top_srcdir)/m4/stdlib_h.m4 \ + $(top_srcdir)/m4/stddef_h.m4 $(top_srcdir)/m4/stdint.m4 \ + $(top_srcdir)/m4/stdint_h.m4 $(top_srcdir)/m4/stdio_h.m4 \ + $(top_srcdir)/m4/stdlib_h.m4 $(top_srcdir)/m4/stpcpy.m4 \ $(top_srcdir)/m4/strcase.m4 $(top_srcdir)/m4/strerror.m4 \ $(top_srcdir)/m4/strerror_r.m4 $(top_srcdir)/m4/string_h.m4 \ $(top_srcdir)/m4/strings_h.m4 $(top_srcdir)/m4/strnlen.m4 \ @@ -209,12 +216,12 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/sys_types_h.m4 $(top_srcdir)/m4/sys_uio_h.m4 \ $(top_srcdir)/m4/sys_wait_h.m4 $(top_srcdir)/m4/tempname.m4 \ $(top_srcdir)/m4/thread.m4 $(top_srcdir)/m4/threadlib.m4 \ - $(top_srcdir)/m4/time_h.m4 $(top_srcdir)/m4/time_r.m4 \ - $(top_srcdir)/m4/time_rz.m4 $(top_srcdir)/m4/timegm.m4 \ - $(top_srcdir)/m4/timespec.m4 $(top_srcdir)/m4/tm_gmtoff.m4 \ - $(top_srcdir)/m4/tzset.m4 $(top_srcdir)/m4/unistd_h.m4 \ - $(top_srcdir)/m4/unlocked-io.m4 $(top_srcdir)/m4/vasnprintf.m4 \ - $(top_srcdir)/m4/vasprintf.m4 $(top_srcdir)/m4/version-etc.m4 \ + $(top_srcdir)/m4/time.m4 $(top_srcdir)/m4/time_h.m4 \ + $(top_srcdir)/m4/time_r.m4 $(top_srcdir)/m4/time_rz.m4 \ + $(top_srcdir)/m4/timegm.m4 $(top_srcdir)/m4/timespec.m4 \ + $(top_srcdir)/m4/tm_gmtoff.m4 $(top_srcdir)/m4/tzset.m4 \ + $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/unlocked-io.m4 \ + $(top_srcdir)/m4/vasnprintf.m4 $(top_srcdir)/m4/version-etc.m4 \ $(top_srcdir)/m4/visibility.m4 $(top_srcdir)/m4/warn-on-use.m4 \ $(top_srcdir)/m4/warnings.m4 $(top_srcdir)/m4/wchar_h.m4 \ $(top_srcdir)/m4/wchar_t.m4 $(top_srcdir)/m4/wcrtomb.m4 \ @@ -223,7 +230,6 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/wint_t.m4 $(top_srcdir)/m4/wmemchr.m4 \ $(top_srcdir)/m4/wmempcpy.m4 $(top_srcdir)/m4/xalloc.m4 \ $(top_srcdir)/m4/xsize.m4 $(top_srcdir)/m4/xstrtol.m4 \ - $(top_srcdir)/m4/xvasprintf.m4 $(top_srcdir)/m4/year2038.m4 \ $(top_srcdir)/m4/zzgnulib.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) @@ -273,10 +279,9 @@ am__base_list = \ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' am__uninstall_files_from_dir = { \ - test -z "$$files" \ - || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ - || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ - $(am__cd) "$$dir" && rm -f $$files; }; \ + { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ + || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ + $(am__cd) "$$dir" && echo $$files | $(am__xargs_n) 40 $(am__rm_f); }; \ } man1dir = $(mandir)/man1 am__installdirs = "$(DESTDIR)$(man1dir)" @@ -293,6 +298,7 @@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APPLE_UNIVERSAL_BUILD = @APPLE_UNIVERSAL_BUILD@ AR = @AR@ ARFLAGS = @ARFLAGS@ +ASSERT_H = @ASSERT_H@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ @@ -306,6 +312,7 @@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CFLAG_VISIBILITY = @CFLAG_VISIBILITY@ +CLOCK_TIME_LIB = @CLOCK_TIME_LIB@ CONFIG_INCLUDE = @CONFIG_INCLUDE@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ @@ -317,7 +324,6 @@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ -EGREP = @EGREP@ EMULTIHOP_HIDDEN = @EMULTIHOP_HIDDEN@ EMULTIHOP_VALUE = @EMULTIHOP_VALUE@ ENOLINK_HIDDEN = @ENOLINK_HIDDEN@ @@ -325,14 +331,17 @@ ENOLINK_VALUE = @ENOLINK_VALUE@ EOVERFLOW_HIDDEN = @EOVERFLOW_HIDDEN@ EOVERFLOW_VALUE = @EOVERFLOW_VALUE@ ERRNO_H = @ERRNO_H@ +ERROR_H = @ERROR_H@ ETAGS = @ETAGS@ EXEEXT = @EXEEXT@ FLOAT_H = @FLOAT_H@ FNMATCH_H = @FNMATCH_H@ GETOPT_CDEFS_H = @GETOPT_CDEFS_H@ GETOPT_H = @GETOPT_H@ +GETRANDOM_LIB = @GETRANDOM_LIB@ GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ GL_CFLAG_ALLOW_WARNINGS = @GL_CFLAG_ALLOW_WARNINGS@ +GL_CFLAG_GNULIB_WARNINGS = @GL_CFLAG_GNULIB_WARNINGS@ GL_CXXFLAG_ALLOW_WARNINGS = @GL_CXXFLAG_ALLOW_WARNINGS@ GL_GNULIB_ACCEPT = @GL_GNULIB_ACCEPT@ GL_GNULIB_ACCEPT4 = @GL_GNULIB_ACCEPT4@ @@ -341,9 +350,11 @@ GL_GNULIB_ALIGNED_ALLOC = @GL_GNULIB_ALIGNED_ALLOC@ GL_GNULIB_ATOLL = @GL_GNULIB_ATOLL@ GL_GNULIB_BIND = @GL_GNULIB_BIND@ GL_GNULIB_BTOWC = @GL_GNULIB_BTOWC@ +GL_GNULIB_CALLOC_GNU = @GL_GNULIB_CALLOC_GNU@ GL_GNULIB_CALLOC_POSIX = @GL_GNULIB_CALLOC_POSIX@ GL_GNULIB_CANONICALIZE_FILE_NAME = @GL_GNULIB_CANONICALIZE_FILE_NAME@ GL_GNULIB_CHDIR = @GL_GNULIB_CHDIR@ +GL_GNULIB_CHMOD = @GL_GNULIB_CHMOD@ GL_GNULIB_CHOWN = @GL_GNULIB_CHOWN@ GL_GNULIB_CLOSE = @GL_GNULIB_CLOSE@ GL_GNULIB_CONNECT = @GL_GNULIB_CONNECT@ @@ -381,6 +392,7 @@ GL_GNULIB_FGETC = @GL_GNULIB_FGETC@ GL_GNULIB_FGETS = @GL_GNULIB_FGETS@ GL_GNULIB_FNMATCH = @GL_GNULIB_FNMATCH@ GL_GNULIB_FOPEN = @GL_GNULIB_FOPEN@ +GL_GNULIB_FOPEN_GNU = @GL_GNULIB_FOPEN_GNU@ GL_GNULIB_FPRINTF = @GL_GNULIB_FPRINTF@ GL_GNULIB_FPRINTF_POSIX = @GL_GNULIB_FPRINTF_POSIX@ GL_GNULIB_FPURGE = @GL_GNULIB_FPURGE@ @@ -416,7 +428,9 @@ GL_GNULIB_GETLOGIN_R = @GL_GNULIB_GETLOGIN_R@ GL_GNULIB_GETOPT_POSIX = @GL_GNULIB_GETOPT_POSIX@ GL_GNULIB_GETPAGESIZE = @GL_GNULIB_GETPAGESIZE@ GL_GNULIB_GETPASS = @GL_GNULIB_GETPASS@ +GL_GNULIB_GETPASS_GNU = @GL_GNULIB_GETPASS_GNU@ GL_GNULIB_GETPEERNAME = @GL_GNULIB_GETPEERNAME@ +GL_GNULIB_GETPROGNAME = @GL_GNULIB_GETPROGNAME@ GL_GNULIB_GETRANDOM = @GL_GNULIB_GETRANDOM@ GL_GNULIB_GETSOCKNAME = @GL_GNULIB_GETSOCKNAME@ GL_GNULIB_GETSOCKOPT = @GL_GNULIB_GETSOCKOPT@ @@ -448,6 +462,7 @@ GL_GNULIB_LOCALENAME = @GL_GNULIB_LOCALENAME@ GL_GNULIB_LOCALTIME = @GL_GNULIB_LOCALTIME@ GL_GNULIB_LSEEK = @GL_GNULIB_LSEEK@ GL_GNULIB_LSTAT = @GL_GNULIB_LSTAT@ +GL_GNULIB_MALLOC_GNU = @GL_GNULIB_MALLOC_GNU@ GL_GNULIB_MALLOC_POSIX = @GL_GNULIB_MALLOC_POSIX@ GL_GNULIB_MBRLEN = @GL_GNULIB_MBRLEN@ GL_GNULIB_MBRTOWC = @GL_GNULIB_MBRTOWC@ @@ -468,6 +483,7 @@ GL_GNULIB_MBSSEP = @GL_GNULIB_MBSSEP@ GL_GNULIB_MBSSPN = @GL_GNULIB_MBSSPN@ GL_GNULIB_MBSSTR = @GL_GNULIB_MBSSTR@ GL_GNULIB_MBSTOK_R = @GL_GNULIB_MBSTOK_R@ +GL_GNULIB_MBSTOWCS = @GL_GNULIB_MBSTOWCS@ GL_GNULIB_MBTOWC = @GL_GNULIB_MBTOWC@ GL_GNULIB_MDA_ACCESS = @GL_GNULIB_MDA_ACCESS@ GL_GNULIB_MDA_CHDIR = @GL_GNULIB_MDA_CHDIR@ @@ -514,6 +530,7 @@ GL_GNULIB_MEMCHR = @GL_GNULIB_MEMCHR@ GL_GNULIB_MEMMEM = @GL_GNULIB_MEMMEM@ GL_GNULIB_MEMPCPY = @GL_GNULIB_MEMPCPY@ GL_GNULIB_MEMRCHR = @GL_GNULIB_MEMRCHR@ +GL_GNULIB_MEMSET_EXPLICIT = @GL_GNULIB_MEMSET_EXPLICIT@ GL_GNULIB_MKDIR = @GL_GNULIB_MKDIR@ GL_GNULIB_MKDIRAT = @GL_GNULIB_MKDIRAT@ GL_GNULIB_MKDTEMP = @GL_GNULIB_MKDTEMP@ @@ -570,6 +587,7 @@ GL_GNULIB_READ = @GL_GNULIB_READ@ GL_GNULIB_READLINK = @GL_GNULIB_READLINK@ GL_GNULIB_READLINKAT = @GL_GNULIB_READLINKAT@ GL_GNULIB_REALLOCARRAY = @GL_GNULIB_REALLOCARRAY@ +GL_GNULIB_REALLOC_GNU = @GL_GNULIB_REALLOC_GNU@ GL_GNULIB_REALLOC_POSIX = @GL_GNULIB_REALLOC_POSIX@ GL_GNULIB_REALPATH = @GL_GNULIB_REALPATH@ GL_GNULIB_RECV = @GL_GNULIB_RECV@ @@ -633,8 +651,10 @@ GL_GNULIB_STRVERSCMP = @GL_GNULIB_STRVERSCMP@ GL_GNULIB_SYMLINK = @GL_GNULIB_SYMLINK@ GL_GNULIB_SYMLINKAT = @GL_GNULIB_SYMLINKAT@ GL_GNULIB_SYSTEM_POSIX = @GL_GNULIB_SYSTEM_POSIX@ +GL_GNULIB_TIME = @GL_GNULIB_TIME@ GL_GNULIB_TIMEGM = @GL_GNULIB_TIMEGM@ GL_GNULIB_TIMESPEC_GET = @GL_GNULIB_TIMESPEC_GET@ +GL_GNULIB_TIMESPEC_GETRES = @GL_GNULIB_TIMESPEC_GETRES@ GL_GNULIB_TIME_R = @GL_GNULIB_TIME_R@ GL_GNULIB_TIME_RZ = @GL_GNULIB_TIME_RZ@ GL_GNULIB_TMPFILE = @GL_GNULIB_TMPFILE@ @@ -708,6 +728,7 @@ GNULIBHEADERS_OVERRIDE_WINT_T = @GNULIBHEADERS_OVERRIDE_WINT_T@ GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@ GNULIB_WARN_CFLAGS = @GNULIB_WARN_CFLAGS@ GREP = @GREP@ +HARD_LOCALE_LIB = @HARD_LOCALE_LIB@ HAVE_ACCEPT4 = @HAVE_ACCEPT4@ HAVE_ALIGNED_ALLOC = @HAVE_ALIGNED_ALLOC@ HAVE_ALLOCA_H = @HAVE_ALLOCA_H@ @@ -738,6 +759,7 @@ HAVE_DECL_GETLOGIN = @HAVE_DECL_GETLOGIN@ HAVE_DECL_GETLOGIN_R = @HAVE_DECL_GETLOGIN_R@ HAVE_DECL_GETPAGESIZE = @HAVE_DECL_GETPAGESIZE@ HAVE_DECL_GETUSERSHELL = @HAVE_DECL_GETUSERSHELL@ +HAVE_DECL_GETW = @HAVE_DECL_GETW@ HAVE_DECL_IMAXABS = @HAVE_DECL_IMAXABS@ HAVE_DECL_IMAXDIV = @HAVE_DECL_IMAXDIV@ HAVE_DECL_INET_NTOP = @HAVE_DECL_INET_NTOP@ @@ -747,6 +769,8 @@ HAVE_DECL_LOCALTIME_R = @HAVE_DECL_LOCALTIME_R@ HAVE_DECL_MEMMEM = @HAVE_DECL_MEMMEM@ HAVE_DECL_MEMRCHR = @HAVE_DECL_MEMRCHR@ HAVE_DECL_OBSTACK_PRINTF = @HAVE_DECL_OBSTACK_PRINTF@ +HAVE_DECL_PROGRAM_INVOCATION_NAME = @HAVE_DECL_PROGRAM_INVOCATION_NAME@ +HAVE_DECL_PUTW = @HAVE_DECL_PUTW@ HAVE_DECL_SETENV = @HAVE_DECL_SETENV@ HAVE_DECL_SETHOSTNAME = @HAVE_DECL_SETHOSTNAME@ HAVE_DECL_SETSTATE = @HAVE_DECL_SETSTATE@ @@ -770,6 +794,9 @@ HAVE_DECL_WCWIDTH = @HAVE_DECL_WCWIDTH@ HAVE_DPRINTF = @HAVE_DPRINTF@ HAVE_DUP3 = @HAVE_DUP3@ HAVE_DUPLOCALE = @HAVE_DUPLOCALE@ +HAVE_ERROR = @HAVE_ERROR@ +HAVE_ERROR_AT_LINE = @HAVE_ERROR_AT_LINE@ +HAVE_ERROR_H = @HAVE_ERROR_H@ HAVE_EUIDACCESS = @HAVE_EUIDACCESS@ HAVE_EXECVPE = @HAVE_EXECVPE@ HAVE_EXPLICIT_BZERO = @HAVE_EXPLICIT_BZERO@ @@ -800,12 +827,15 @@ HAVE_GETLOGIN = @HAVE_GETLOGIN@ HAVE_GETOPT_H = @HAVE_GETOPT_H@ HAVE_GETPAGESIZE = @HAVE_GETPAGESIZE@ HAVE_GETPASS = @HAVE_GETPASS@ +HAVE_GETPROGNAME = @HAVE_GETPROGNAME@ HAVE_GETRANDOM = @HAVE_GETRANDOM@ HAVE_GETSUBOPT = @HAVE_GETSUBOPT@ HAVE_GETTIMEOFDAY = @HAVE_GETTIMEOFDAY@ HAVE_GETUMASK = @HAVE_GETUMASK@ HAVE_GRANTPT = @HAVE_GRANTPT@ HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@ +HAVE_IMAXABS = @HAVE_IMAXABS@ +HAVE_IMAXDIV = @HAVE_IMAXDIV@ HAVE_IMAXDIV_T = @HAVE_IMAXDIV_T@ HAVE_INITSTATE = @HAVE_INITSTATE@ HAVE_INTTYPES_H = @HAVE_INTTYPES_H@ @@ -833,6 +863,7 @@ HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@ HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@ HAVE_MBTOWC = @HAVE_MBTOWC@ HAVE_MEMPCPY = @HAVE_MEMPCPY@ +HAVE_MEMSET_EXPLICIT = @HAVE_MEMSET_EXPLICIT@ HAVE_MKDIRAT = @HAVE_MKDIRAT@ HAVE_MKDTEMP = @HAVE_MKDTEMP@ HAVE_MKFIFO = @HAVE_MKFIFO@ @@ -990,9 +1021,11 @@ HAVE_SYS_TYPES_H = @HAVE_SYS_TYPES_H@ HAVE_SYS_UIO_H = @HAVE_SYS_UIO_H@ HAVE_TIMEGM = @HAVE_TIMEGM@ HAVE_TIMESPEC_GET = @HAVE_TIMESPEC_GET@ +HAVE_TIMESPEC_GETRES = @HAVE_TIMESPEC_GETRES@ HAVE_TIMEZONE_T = @HAVE_TIMEZONE_T@ HAVE_TYPE_VOLATILE_SIG_ATOMIC_T = @HAVE_TYPE_VOLATILE_SIG_ATOMIC_T@ HAVE_UNISTD_H = @HAVE_UNISTD_H@ +HAVE_UNISTRING_WOE32DLL_H = @HAVE_UNISTRING_WOE32DLL_H@ HAVE_UNLINKAT = @HAVE_UNLINKAT@ HAVE_UNLOCKPT = @HAVE_UNLOCKPT@ HAVE_USLEEP = @HAVE_USLEEP@ @@ -1042,7 +1075,6 @@ HAVE_WMEMPCPY = @HAVE_WMEMPCPY@ HAVE_WMEMSET = @HAVE_WMEMSET@ HAVE_WS2TCPIP_H = @HAVE_WS2TCPIP_H@ HAVE_XLOCALE_H = @HAVE_XLOCALE_H@ -HAVE__BOOL = @HAVE__BOOL@ HAVE__EXIT = @HAVE__EXIT@ HELP2MAN = @HELP2MAN@ HOST_CPU = @HOST_CPU@ @@ -1108,15 +1140,20 @@ LTLIBOBJS = @LTLIBOBJS@ LTLIBSIGSEGV = @LTLIBSIGSEGV@ LTLIBTHREAD = @LTLIBTHREAD@ MAKEINFO = @MAKEINFO@ +MBRTOWC_LIB = @MBRTOWC_LIB@ MKDIR_P = @MKDIR_P@ MSGFMT = @MSGFMT@ MSGFMT_015 = @MSGFMT_015@ MSGMERGE = @MSGMERGE@ +NANOSLEEP_LIB = @NANOSLEEP_LIB@ NETINET_IN_H = @NETINET_IN_H@ NEXT_ARPA_INET_H = @NEXT_ARPA_INET_H@ +NEXT_ASSERT_H = @NEXT_ASSERT_H@ NEXT_AS_FIRST_DIRECTIVE_ARPA_INET_H = @NEXT_AS_FIRST_DIRECTIVE_ARPA_INET_H@ +NEXT_AS_FIRST_DIRECTIVE_ASSERT_H = @NEXT_AS_FIRST_DIRECTIVE_ASSERT_H@ NEXT_AS_FIRST_DIRECTIVE_CTYPE_H = @NEXT_AS_FIRST_DIRECTIVE_CTYPE_H@ NEXT_AS_FIRST_DIRECTIVE_ERRNO_H = @NEXT_AS_FIRST_DIRECTIVE_ERRNO_H@ +NEXT_AS_FIRST_DIRECTIVE_ERROR_H = @NEXT_AS_FIRST_DIRECTIVE_ERROR_H@ NEXT_AS_FIRST_DIRECTIVE_FCNTL_H = @NEXT_AS_FIRST_DIRECTIVE_FCNTL_H@ NEXT_AS_FIRST_DIRECTIVE_FLOAT_H = @NEXT_AS_FIRST_DIRECTIVE_FLOAT_H@ NEXT_AS_FIRST_DIRECTIVE_FNMATCH_H = @NEXT_AS_FIRST_DIRECTIVE_FNMATCH_H@ @@ -1152,6 +1189,7 @@ NEXT_AS_FIRST_DIRECTIVE_WCHAR_H = @NEXT_AS_FIRST_DIRECTIVE_WCHAR_H@ NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H = @NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H@ NEXT_CTYPE_H = @NEXT_CTYPE_H@ NEXT_ERRNO_H = @NEXT_ERRNO_H@ +NEXT_ERROR_H = @NEXT_ERROR_H@ NEXT_FCNTL_H = @NEXT_FCNTL_H@ NEXT_FLOAT_H = @NEXT_FLOAT_H@ NEXT_FNMATCH_H = @NEXT_FNMATCH_H@ @@ -1194,27 +1232,35 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ POSUB = @POSUB@ PRAGMA_COLUMNS = @PRAGMA_COLUMNS@ PRAGMA_SYSTEM_HEADER = @PRAGMA_SYSTEM_HEADER@ PRIPTR_PREFIX = @PRIPTR_PREFIX@ PR_PROGRAM = @PR_PROGRAM@ PTHREAD_H_DEFINES_STRUCT_TIMESPEC = @PTHREAD_H_DEFINES_STRUCT_TIMESPEC@ +PTHREAD_SIGMASK_LIB = @PTHREAD_SIGMASK_LIB@ PTRDIFF_T_SUFFIX = @PTRDIFF_T_SUFFIX@ RANLIB = @RANLIB@ REPLACE_ACCESS = @REPLACE_ACCESS@ REPLACE_ALIGNED_ALLOC = @REPLACE_ALIGNED_ALLOC@ REPLACE_BTOWC = @REPLACE_BTOWC@ -REPLACE_CALLOC = @REPLACE_CALLOC@ +REPLACE_CALLOC_FOR_CALLOC_GNU = @REPLACE_CALLOC_FOR_CALLOC_GNU@ +REPLACE_CALLOC_FOR_CALLOC_POSIX = @REPLACE_CALLOC_FOR_CALLOC_POSIX@ REPLACE_CANONICALIZE_FILE_NAME = @REPLACE_CANONICALIZE_FILE_NAME@ +REPLACE_CHMOD = @REPLACE_CHMOD@ REPLACE_CHOWN = @REPLACE_CHOWN@ REPLACE_CLOSE = @REPLACE_CLOSE@ +REPLACE_COPY_FILE_RANGE = @REPLACE_COPY_FILE_RANGE@ REPLACE_CREAT = @REPLACE_CREAT@ REPLACE_CTIME = @REPLACE_CTIME@ REPLACE_DPRINTF = @REPLACE_DPRINTF@ REPLACE_DUP = @REPLACE_DUP@ REPLACE_DUP2 = @REPLACE_DUP2@ +REPLACE_DUP3 = @REPLACE_DUP3@ REPLACE_DUPLOCALE = @REPLACE_DUPLOCALE@ +REPLACE_ERROR = @REPLACE_ERROR@ +REPLACE_ERROR_AT_LINE = @REPLACE_ERROR_AT_LINE@ REPLACE_EXECL = @REPLACE_EXECL@ REPLACE_EXECLE = @REPLACE_EXECLE@ REPLACE_EXECLP = @REPLACE_EXECLP@ @@ -1227,11 +1273,13 @@ REPLACE_FCHMODAT = @REPLACE_FCHMODAT@ REPLACE_FCHOWNAT = @REPLACE_FCHOWNAT@ REPLACE_FCLOSE = @REPLACE_FCLOSE@ REPLACE_FCNTL = @REPLACE_FCNTL@ +REPLACE_FDATASYNC = @REPLACE_FDATASYNC@ REPLACE_FDOPEN = @REPLACE_FDOPEN@ REPLACE_FFLUSH = @REPLACE_FFLUSH@ REPLACE_FFSLL = @REPLACE_FFSLL@ REPLACE_FNMATCH = @REPLACE_FNMATCH@ REPLACE_FOPEN = @REPLACE_FOPEN@ +REPLACE_FOPEN_FOR_FOPEN_GNU = @REPLACE_FOPEN_FOR_FOPEN_GNU@ REPLACE_FPRINTF = @REPLACE_FPRINTF@ REPLACE_FPURGE = @REPLACE_FPURGE@ REPLACE_FREE = @REPLACE_FREE@ @@ -1249,17 +1297,24 @@ REPLACE_GETCWD = @REPLACE_GETCWD@ REPLACE_GETDELIM = @REPLACE_GETDELIM@ REPLACE_GETDOMAINNAME = @REPLACE_GETDOMAINNAME@ REPLACE_GETDTABLESIZE = @REPLACE_GETDTABLESIZE@ +REPLACE_GETENTROPY = @REPLACE_GETENTROPY@ REPLACE_GETGROUPS = @REPLACE_GETGROUPS@ REPLACE_GETLINE = @REPLACE_GETLINE@ +REPLACE_GETLOADAVG = @REPLACE_GETLOADAVG@ REPLACE_GETLOGIN_R = @REPLACE_GETLOGIN_R@ REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@ REPLACE_GETPASS = @REPLACE_GETPASS@ +REPLACE_GETPASS_FOR_GETPASS_GNU = @REPLACE_GETPASS_FOR_GETPASS_GNU@ +REPLACE_GETPROGNAME = @REPLACE_GETPROGNAME@ REPLACE_GETRANDOM = @REPLACE_GETRANDOM@ +REPLACE_GETSUBOPT = @REPLACE_GETSUBOPT@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@ REPLACE_GMTIME = @REPLACE_GMTIME@ REPLACE_ICONV = @REPLACE_ICONV@ REPLACE_ICONV_OPEN = @REPLACE_ICONV_OPEN@ REPLACE_ICONV_UTF = @REPLACE_ICONV_UTF@ +REPLACE_IMAXABS = @REPLACE_IMAXABS@ +REPLACE_IMAXDIV = @REPLACE_IMAXDIV@ REPLACE_INET_NTOP = @REPLACE_INET_NTOP@ REPLACE_INET_PTON = @REPLACE_INET_PTON@ REPLACE_INITSTATE = @REPLACE_INITSTATE@ @@ -1278,21 +1333,27 @@ REPLACE_LOCALTIME = @REPLACE_LOCALTIME@ REPLACE_LOCALTIME_R = @REPLACE_LOCALTIME_R@ REPLACE_LSEEK = @REPLACE_LSEEK@ REPLACE_LSTAT = @REPLACE_LSTAT@ -REPLACE_MALLOC = @REPLACE_MALLOC@ +REPLACE_MALLOC_FOR_MALLOC_GNU = @REPLACE_MALLOC_FOR_MALLOC_GNU@ +REPLACE_MALLOC_FOR_MALLOC_POSIX = @REPLACE_MALLOC_FOR_MALLOC_POSIX@ REPLACE_MBRLEN = @REPLACE_MBRLEN@ REPLACE_MBRTOWC = @REPLACE_MBRTOWC@ REPLACE_MBSINIT = @REPLACE_MBSINIT@ REPLACE_MBSNRTOWCS = @REPLACE_MBSNRTOWCS@ REPLACE_MBSRTOWCS = @REPLACE_MBSRTOWCS@ REPLACE_MBSTATE_T = @REPLACE_MBSTATE_T@ +REPLACE_MBSTOWCS = @REPLACE_MBSTOWCS@ REPLACE_MBTOWC = @REPLACE_MBTOWC@ +REPLACE_MB_CUR_MAX = @REPLACE_MB_CUR_MAX@ REPLACE_MEMCHR = @REPLACE_MEMCHR@ REPLACE_MEMMEM = @REPLACE_MEMMEM@ +REPLACE_MEMPCPY = @REPLACE_MEMPCPY@ REPLACE_MKDIR = @REPLACE_MKDIR@ REPLACE_MKFIFO = @REPLACE_MKFIFO@ REPLACE_MKFIFOAT = @REPLACE_MKFIFOAT@ REPLACE_MKNOD = @REPLACE_MKNOD@ REPLACE_MKNODAT = @REPLACE_MKNODAT@ +REPLACE_MKOSTEMP = @REPLACE_MKOSTEMP@ +REPLACE_MKOSTEMPS = @REPLACE_MKOSTEMPS@ REPLACE_MKSTEMP = @REPLACE_MKSTEMP@ REPLACE_MKTIME = @REPLACE_MKTIME@ REPLACE_NANOSLEEP = @REPLACE_NANOSLEEP@ @@ -1303,8 +1364,10 @@ REPLACE_OBSTACK_PRINTF = @REPLACE_OBSTACK_PRINTF@ REPLACE_OPEN = @REPLACE_OPEN@ REPLACE_OPENAT = @REPLACE_OPENAT@ REPLACE_PERROR = @REPLACE_PERROR@ +REPLACE_PIPE2 = @REPLACE_PIPE2@ REPLACE_POPEN = @REPLACE_POPEN@ REPLACE_POSIX_MEMALIGN = @REPLACE_POSIX_MEMALIGN@ +REPLACE_POSIX_OPENPT = @REPLACE_POSIX_OPENPT@ REPLACE_PREAD = @REPLACE_PREAD@ REPLACE_PRINTF = @REPLACE_PRINTF@ REPLACE_PSELECT = @REPLACE_PSELECT@ @@ -1371,8 +1434,9 @@ REPLACE_RANDOM_R = @REPLACE_RANDOM_R@ REPLACE_READ = @REPLACE_READ@ REPLACE_READLINK = @REPLACE_READLINK@ REPLACE_READLINKAT = @REPLACE_READLINKAT@ -REPLACE_REALLOC = @REPLACE_REALLOC@ REPLACE_REALLOCARRAY = @REPLACE_REALLOCARRAY@ +REPLACE_REALLOC_FOR_REALLOC_GNU = @REPLACE_REALLOC_FOR_REALLOC_GNU@ +REPLACE_REALLOC_FOR_REALLOC_POSIX = @REPLACE_REALLOC_FOR_REALLOC_POSIX@ REPLACE_REALPATH = @REPLACE_REALPATH@ REPLACE_REMOVE = @REPLACE_REMOVE@ REPLACE_RENAME = @REPLACE_RENAME@ @@ -1381,6 +1445,7 @@ REPLACE_RMDIR = @REPLACE_RMDIR@ REPLACE_SCHED_YIELD = @REPLACE_SCHED_YIELD@ REPLACE_SELECT = @REPLACE_SELECT@ REPLACE_SETENV = @REPLACE_SETENV@ +REPLACE_SETHOSTNAME = @REPLACE_SETHOSTNAME@ REPLACE_SETLOCALE = @REPLACE_SETLOCALE@ REPLACE_SETSTATE = @REPLACE_SETSTATE@ REPLACE_SLEEP = @REPLACE_SLEEP@ @@ -1389,6 +1454,7 @@ REPLACE_SPRINTF = @REPLACE_SPRINTF@ REPLACE_STAT = @REPLACE_STAT@ REPLACE_STDIO_READ_FUNCS = @REPLACE_STDIO_READ_FUNCS@ REPLACE_STDIO_WRITE_FUNCS = @REPLACE_STDIO_WRITE_FUNCS@ +REPLACE_STPCPY = @REPLACE_STPCPY@ REPLACE_STPNCPY = @REPLACE_STPNCPY@ REPLACE_STRCASESTR = @REPLACE_STRCASESTR@ REPLACE_STRCHRNUL = @REPLACE_STRCHRNUL@ @@ -1415,7 +1481,9 @@ REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@ REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@ REPLACE_SYMLINK = @REPLACE_SYMLINK@ REPLACE_SYMLINKAT = @REPLACE_SYMLINKAT@ +REPLACE_TIME = @REPLACE_TIME@ REPLACE_TIMEGM = @REPLACE_TIMEGM@ +REPLACE_TIMESPEC_GET = @REPLACE_TIMESPEC_GET@ REPLACE_TMPFILE = @REPLACE_TMPFILE@ REPLACE_TOWLOWER = @REPLACE_TOWLOWER@ REPLACE_TRUNCATE = @REPLACE_TRUNCATE@ @@ -1433,25 +1501,33 @@ REPLACE_VPRINTF = @REPLACE_VPRINTF@ REPLACE_VSNPRINTF = @REPLACE_VSNPRINTF@ REPLACE_VSPRINTF = @REPLACE_VSPRINTF@ REPLACE_WCRTOMB = @REPLACE_WCRTOMB@ +REPLACE_WCSCMP = @REPLACE_WCSCMP@ REPLACE_WCSFTIME = @REPLACE_WCSFTIME@ +REPLACE_WCSNCMP = @REPLACE_WCSNCMP@ REPLACE_WCSNRTOMBS = @REPLACE_WCSNRTOMBS@ REPLACE_WCSRTOMBS = @REPLACE_WCSRTOMBS@ +REPLACE_WCSSTR = @REPLACE_WCSSTR@ REPLACE_WCSTOK = @REPLACE_WCSTOK@ REPLACE_WCSWIDTH = @REPLACE_WCSWIDTH@ REPLACE_WCTOB = @REPLACE_WCTOB@ REPLACE_WCTOMB = @REPLACE_WCTOMB@ REPLACE_WCWIDTH = @REPLACE_WCWIDTH@ +REPLACE_WMEMCMP = @REPLACE_WMEMCMP@ +REPLACE_WMEMPCPY = @REPLACE_WMEMPCPY@ REPLACE_WRITE = @REPLACE_WRITE@ +REPLACE__EXIT = @REPLACE__EXIT@ +SCHED_YIELD_LIB = @SCHED_YIELD_LIB@ SED = @SED@ +SELECT_LIB = @SELECT_LIB@ +SETLOCALE_NULL_LIB = @SETLOCALE_NULL_LIB@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SIGSEGV_H = @SIGSEGV_H@ SIG_ATOMIC_T_SUFFIX = @SIG_ATOMIC_T_SUFFIX@ SIZE_T_SUFFIX = @SIZE_T_SUFFIX@ SRC_VERSION_C = @SRC_VERSION_C@ -STDALIGN_H = @STDALIGN_H@ STDARG_H = @STDARG_H@ -STDBOOL_H = @STDBOOL_H@ +STDCKDINT_H = @STDCKDINT_H@ STDDEF_H = @STDDEF_H@ STDINT_H = @STDINT_H@ STRIP = @STRIP@ @@ -1489,8 +1565,10 @@ ac_ct_CC = @ac_ct_CC@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ +am__rm_f_notfound = @am__rm_f_notfound@ am__tar = @am__tar@ am__untar = @am__untar@ +am__xargs_n = @am__xargs_n@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ @@ -1503,8 +1581,10 @@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ +gl_LIBOBJDEPS = @gl_LIBOBJDEPS@ gl_LIBOBJS = @gl_LIBOBJS@ gl_LTLIBOBJS = @gl_LTLIBOBJS@ +gltests_LIBOBJDEPS = @gltests_LIBOBJDEPS@ gltests_LIBOBJS = @gltests_LIBOBJS@ gltests_LTLIBOBJS = @gltests_LTLIBOBJS@ gltests_WITNESS = @gltests_WITNESS@ @@ -1688,13 +1768,13 @@ mostlyclean-generic: clean-generic: distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + -$(am__rm_f) $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || $(am__rm_f) $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." - -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES) + -$(am__rm_f) $(MAINTAINERCLEANFILES) clean: clean-am clean-am: clean-generic mostlyclean-am diff --git a/man/cmp.1 b/man/cmp.1 index 2f364d7..a9ea06a 100644 --- a/man/cmp.1 +++ b/man/cmp.1 @@ -1,5 +1,5 @@ .\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.40.4. -.TH CMP "1" "August 2021" "diffutils 3.8" "User Commands" +.TH CMP "1" "May 2023" "diffutils 3.10" "User Commands" .SH NAME cmp \- compare two files byte by byte .SH SYNOPSIS @@ -53,13 +53,15 @@ GNU diffutils home page: .br General help using GNU software: .SH COPYRIGHT -Copyright \(co 2021 Free Software Foundation, Inc. +Copyright \(co 2023 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later . .br This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. .SH "SEE ALSO" -diff(1), diff3(1), sdiff(1) +.BR diff (1), +.BR diff3 (1), +.BR sdiff (1) .PP The full documentation for .B cmp diff --git a/man/cmp.x b/man/cmp.x index 5c9ef82..a50d33c 100644 --- a/man/cmp.x +++ b/man/cmp.x @@ -1,2 +1,4 @@ [SEE ALSO] -diff(1), diff3(1), sdiff(1) +.BR diff (1), +.BR diff3 (1), +.BR sdiff (1) diff --git a/man/diff.1 b/man/diff.1 index 5fbf246..c32cbd8 100644 --- a/man/diff.1 +++ b/man/diff.1 @@ -1,5 +1,5 @@ .\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.40.4. -.TH DIFF "1" "August 2021" "diffutils 3.8" "User Commands" +.TH DIFF "1" "May 2023" "diffutils 3.10" "User Commands" .SH NAME diff \- compare files line by line .SH SYNOPSIS @@ -245,13 +245,17 @@ GNU diffutils home page: .br General help using GNU software: .SH COPYRIGHT -Copyright \(co 2021 Free Software Foundation, Inc. +Copyright \(co 2023 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later . .br This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. .SH "SEE ALSO" -wdiff(1), cmp(1), diff3(1), sdiff(1), patch(1) +.BR wdiff (1), +.BR cmp (1), +.BR diff3 (1), +.BR sdiff (1), +.BR patch (1) .PP The full documentation for .B diff diff --git a/man/diff.x b/man/diff.x index fdb69d2..6efb3ab 100644 --- a/man/diff.x +++ b/man/diff.x @@ -1,2 +1,6 @@ [SEE ALSO] -wdiff(1), cmp(1), diff3(1), sdiff(1), patch(1) +.BR wdiff (1), +.BR cmp (1), +.BR diff3 (1), +.BR sdiff (1), +.BR patch (1) diff --git a/man/diff3.1 b/man/diff3.1 index 6522b94..9bd8342 100644 --- a/man/diff3.1 +++ b/man/diff3.1 @@ -1,5 +1,5 @@ .\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.40.4. -.TH DIFF3 "1" "August 2021" "diffutils 3.8" "User Commands" +.TH DIFF3 "1" "May 2023" "diffutils 3.10" "User Commands" .SH NAME diff3 \- compare three files line by line .SH SYNOPSIS @@ -79,13 +79,15 @@ GNU diffutils home page: .br General help using GNU software: .SH COPYRIGHT -Copyright \(co 2021 Free Software Foundation, Inc. +Copyright \(co 2023 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later . .br This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. .SH "SEE ALSO" -cmp(1), diff(1), sdiff(1) +.BR cmp (1), +.BR diff (1), +.BR sdiff (1) .PP The full documentation for .B diff3 diff --git a/man/diff3.x b/man/diff3.x index 0751208..e748e64 100644 --- a/man/diff3.x +++ b/man/diff3.x @@ -1,2 +1,4 @@ [SEE ALSO] -cmp(1), diff(1), sdiff(1) +.BR cmp (1), +.BR diff (1), +.BR sdiff (1) diff --git a/man/help2man b/man/help2man index 49a76e5..7f83481 100755 --- a/man/help2man +++ b/man/help2man @@ -1,7 +1,7 @@ #!/usr/bin/perl -w # Generate a short man page from --help and --version output. -# Copyright (C) 1997-2005, 2009-2011, 2013, 2015-2021 Free Software Foundation, +# Copyright (C) 1997-2005, 2009-2011, 2013, 2015-2023 Free Software Foundation, # Inc. # This program is free software; you can redistribute it and/or modify diff --git a/man/sdiff.1 b/man/sdiff.1 index 5a83d6b..c349f6f 100644 --- a/man/sdiff.1 +++ b/man/sdiff.1 @@ -1,5 +1,5 @@ .\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.40.4. -.TH SDIFF "1" "August 2021" "diffutils 3.8" "User Commands" +.TH SDIFF "1" "May 2023" "diffutils 3.10" "User Commands" .SH NAME sdiff \- side-by-side merge of file differences .SH SYNOPSIS @@ -81,13 +81,15 @@ GNU diffutils home page: .br General help using GNU software: .SH COPYRIGHT -Copyright \(co 2021 Free Software Foundation, Inc. +Copyright \(co 2023 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later . .br This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. .SH "SEE ALSO" -cmp(1), diff(1), diff3(1) +.BR cmp (1), +.BR diff (1), +.BR diff3 (1) .PP The full documentation for .B sdiff diff --git a/man/sdiff.x b/man/sdiff.x index fdc9c3e..e2b5482 100644 --- a/man/sdiff.x +++ b/man/sdiff.x @@ -1,2 +1,4 @@ [SEE ALSO] -cmp(1), diff(1), diff3(1) +.BR cmp (1), +.BR diff (1), +.BR diff3 (1) diff --git a/po/LINGUAS b/po/LINGUAS index c69cf8d..3a9a3b9 100644 --- a/po/LINGUAS +++ b/po/LINGUAS @@ -16,6 +16,8 @@ hu id it ja +ka +ko lv ms nb diff --git a/po/Makevars b/po/Makevars index 80c7cf4..6ff6607 100644 --- a/po/Makevars +++ b/po/Makevars @@ -9,7 +9,7 @@ top_builddir = .. # These options get passed to xgettext. XGETTEXT_OPTIONS = --keyword=_ --keyword=N_ \ - \ + \ --flag=_:1:pass-c-format\ --flag=N_:1:pass-c-format\ --flag=error:3:c-format --flag=error_at_line:5:c-format\ @@ -18,7 +18,6 @@ XGETTEXT_OPTIONS = --keyword=_ --keyword=N_ \ --flag=asprintf:2:c-format\ --from-code=UTF-8\ --flag=message:1:c-format\ - --flag=message5:1:c-format\ --flag=try_help:1:c-format\ --flag=vasprintf:2:c-format\ --flag=vasnprintf:3:c-format\ diff --git a/po/POTFILES.in b/po/POTFILES.in index b4f8ef8..ccb9a85 100644 --- a/po/POTFILES.in +++ b/po/POTFILES.in @@ -1,6 +1,6 @@ # List of files that contain translatable strings. -# Copyright (C) 2001-2002, 2009-2013, 2015-2021 Free Software Foundation, Inc. +# Copyright (C) 2001-2002, 2009-2013, 2015-2023 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff --git a/po/bg.po b/po/bg.po index 5c7607f..200fa29 100644 --- a/po/bg.po +++ b/po/bg.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: diffutils 3.7.41\n" "Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n" -"POT-Creation-Date: 2021-08-01 18:56-0700\n" +"POT-Creation-Date: 2023-05-21 01:51-0700\n" "PO-Revision-Date: 2021-07-20 18:17+0200\n" "Last-Translator: Alexander Shopov \n" "Language-Team: Bulgarian \n" @@ -18,29 +18,29 @@ msgstr "" "X-Bugs: Report translation errors to the Language-Team address.\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: lib/argmatch.c:132 +#: lib/argmatch.c:145 #, c-format msgid "invalid argument %s for %s" msgstr "аргументът „%s“ на опцията „%s“ е неправилен" -#: lib/argmatch.c:133 +#: lib/argmatch.c:146 #, c-format msgid "ambiguous argument %s for %s" msgstr "аргументът „%s“ на опцията „%s“ не е еднозначен" -#: lib/argmatch.c:152 lib/argmatch.h:223 +#: lib/argmatch.c:165 lib/argmatch.h:242 msgid "Valid arguments are:" msgstr "Възможните аргументи са:" -#: lib/c-stack.c:187 +#: lib/c-stack.c:186 msgid "program error" msgstr "програмна грешка" -#: lib/c-stack.c:188 +#: lib/c-stack.c:187 msgid "stack overflow" msgstr "препълване на стека" -#: lib/error.c:195 +#: lib/error.c:193 msgid "Unknown system error" msgstr "Неизвестна системна грешка" @@ -196,83 +196,83 @@ msgstr "%s: опцията изисква аргумент — „%c“\n" #. If you don't know what to put here, please see #. #. and use glyphs suitable for your language. -#: lib/quotearg.c:355 +#: lib/quotearg.c:354 msgid "`" msgstr "„" -#: lib/quotearg.c:356 +#: lib/quotearg.c:355 msgid "'" msgstr "“" -#: lib/regcomp.c:135 +#: lib/regcomp.c:122 msgid "Success" msgstr "Успех" -#: lib/regcomp.c:138 +#: lib/regcomp.c:125 msgid "No match" msgstr "Няма съвпадения" -#: lib/regcomp.c:141 +#: lib/regcomp.c:128 msgid "Invalid regular expression" msgstr "Неправилен регулярен израз" -#: lib/regcomp.c:144 +#: lib/regcomp.c:131 msgid "Invalid collation character" msgstr "Неправилен знак за подредба" -#: lib/regcomp.c:147 +#: lib/regcomp.c:134 msgid "Invalid character class name" msgstr "Неправилно име на клас знаци" -#: lib/regcomp.c:150 +#: lib/regcomp.c:137 msgid "Trailing backslash" msgstr "Самотна „\\“ накрая" -#: lib/regcomp.c:153 +#: lib/regcomp.c:140 msgid "Invalid back reference" msgstr "Неправилна препратка към съвпадение" -#: lib/regcomp.c:156 +#: lib/regcomp.c:143 msgid "Unmatched [, [^, [:, [., or [=" msgstr "„[“, „[^“, „[:“, „[.“ или „[=“ без еш" -#: lib/regcomp.c:159 +#: lib/regcomp.c:146 msgid "Unmatched ( or \\(" msgstr "„(“ или „\\(“ без еш" -#: lib/regcomp.c:162 +#: lib/regcomp.c:149 msgid "Unmatched \\{" msgstr "„\\{“ без еш" -#: lib/regcomp.c:165 +#: lib/regcomp.c:152 msgid "Invalid content of \\{\\}" msgstr "Неправилно съдържание в „\\{\\}“" -#: lib/regcomp.c:168 +#: lib/regcomp.c:155 msgid "Invalid range end" msgstr "Неправилен край на диапазон" -#: lib/regcomp.c:171 +#: lib/regcomp.c:158 msgid "Memory exhausted" msgstr "Паметта свърши" -#: lib/regcomp.c:174 +#: lib/regcomp.c:161 msgid "Invalid preceding regular expression" msgstr "Предхождащият регулярен израз е неправилен" -#: lib/regcomp.c:177 +#: lib/regcomp.c:164 msgid "Premature end of regular expression" msgstr "Ранен край на регулярен израз" -#: lib/regcomp.c:180 +#: lib/regcomp.c:167 msgid "Regular expression too big" msgstr "Регулярният израз е прекалено голям" -#: lib/regcomp.c:183 +#: lib/regcomp.c:170 msgid "Unmatched ) or \\)" msgstr "„)“ или „\\)“ без еш" -#: lib/regcomp.c:676 +#: lib/regcomp.c:650 msgid "No previous regular expression" msgstr "Няма предхождащ регулярен израз" @@ -469,17 +469,17 @@ msgstr "Уеб страница на „%s“: <%s>\n" msgid "General help using GNU software: <%s>\n" msgstr "Обща помощ за програмите на GNU: <%s>\n" -#: src/analyze.c:454 src/diff.c:1406 +#: src/analyze.c:455 src/diff.c:1478 #, c-format msgid "Files %s and %s differ\n" msgstr "Файловете „%s“ и „%s“ се различават\n" -#: src/analyze.c:455 +#: src/analyze.c:456 #, c-format msgid "Binary files %s and %s differ\n" msgstr "Двоичните файлове „%s“ и „%s“ се различават\n" -#: src/analyze.c:706 src/diff3.c:1470 src/util.c:1254 +#: src/analyze.c:707 src/diff3.c:1457 src/util.c:1354 msgid "No newline at end of file" msgstr "Липсва нов ред в края на файла" @@ -493,42 +493,43 @@ msgstr "Torbjorn Granlund" msgid "David MacKenzie" msgstr "David MacKenzie" -#: src/cmp.c:120 src/diff.c:879 src/diff3.c:467 src/sdiff.c:160 +#: src/cmp.c:124 src/diff.c:939 src/diff3.c:465 src/sdiff.c:159 #, c-format msgid "Try '%s --help' for more information." msgstr "Вижте „%s --help“ за повече информация." -#: src/cmp.c:138 +#: src/cmp.c:142 #, c-format msgid "invalid --ignore-initial value '%s'" msgstr "неправилна стойност „%s“ за опцията „--ignore-initial“" -#: src/cmp.c:148 +#: src/cmp.c:152 #, c-format msgid "options -l and -s are incompatible" msgstr "опциите „-l“ и „-s“ са несъвместими" -#: src/cmp.c:156 src/diff.c:887 src/diff3.c:474 src/sdiff.c:168 src/sdiff.c:316 -#: src/sdiff.c:323 src/sdiff.c:876 src/util.c:852 src/util.c:952 src/util.c:959 +#: src/cmp.c:160 src/diff.c:947 src/diff3.c:472 src/sdiff.c:167 src/sdiff.c:314 +#: src/sdiff.c:321 src/sdiff.c:873 src/util.c:952 src/util.c:1052 +#: src/util.c:1059 msgid "write failed" msgstr "неуспешен запис" -#: src/cmp.c:158 src/diff.c:889 src/diff.c:1471 src/diff3.c:476 src/sdiff.c:170 +#: src/cmp.c:162 src/diff.c:949 src/diff.c:1543 src/diff3.c:474 src/sdiff.c:169 msgid "standard output" msgstr "стандартен изход" -#: src/cmp.c:162 +#: src/cmp.c:166 msgid "-b, --print-bytes print differing bytes" msgstr "-b, --print-bytes извеждане на различаващите се байтове" -#: src/cmp.c:163 +#: src/cmp.c:167 msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs" msgstr "" "-i, --ignore-initial=ПРЕСКАЧАНЕ\n" " ПРЕСКАЧАНЕ на този брой байтове и от двата\n" " входа" -#: src/cmp.c:164 +#: src/cmp.c:168 msgid "" "-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n" " first SKIP2 bytes of FILE2" @@ -537,7 +538,7 @@ msgstr "" " прескачане на съответния брой байтове —\n" " ПРЕСКАЧАНЕ_1 от ФАЙЛ_1, ПРЕСКАЧАНЕ_2 от ФАЙЛ_2" -#: src/cmp.c:166 +#: src/cmp.c:170 msgid "" "-l, --verbose output byte numbers and differing byte values" msgstr "" @@ -545,32 +546,32 @@ msgstr "" "различните\n" " байтове" -#: src/cmp.c:167 +#: src/cmp.c:171 msgid "-n, --bytes=LIMIT compare at most LIMIT bytes" msgstr "-n, --bytes=БРОЙ сравняване на максимум този БРОЙ байтове" -#: src/cmp.c:168 +#: src/cmp.c:172 msgid "-s, --quiet, --silent suppress all normal output" msgstr "-s, --quiet, --silent без извеждане на обичайната информация" -#: src/cmp.c:169 +#: src/cmp.c:173 msgid " --help display this help and exit" msgstr " --help извеждане на тази помощ и изход" -#: src/cmp.c:170 +#: src/cmp.c:174 msgid "-v, --version output version information and exit" msgstr "-v, --version извеждане на версията и изход" -#: src/cmp.c:179 +#: src/cmp.c:183 #, c-format msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n" msgstr "Употреба: %s [ОПЦИЯ]… ФАЙЛ_1 [ФАЙЛ_1 [ПРЕСКАЧАНЕ_1 [ПРЕСКАЧАНЕ_2]]]\n" -#: src/cmp.c:181 +#: src/cmp.c:185 msgid "Compare two files byte by byte." msgstr "Побайтово сравнение на два файла" -#: src/cmp.c:183 +#: src/cmp.c:187 msgid "" "The optional SKIP1 and SKIP2 specify the number of bytes to skip\n" "at the beginning of each file (zero by default)." @@ -579,7 +580,7 @@ msgstr "" "байтове,\n" "които да се прескочат от началото на всеки файл (броенето почва от 0)." -#: src/cmp.c:186 src/diff.c:999 src/diff3.c:514 src/sdiff.c:211 +#: src/cmp.c:190 src/diff.c:1059 src/diff3.c:512 src/sdiff.c:210 msgid "" "Mandatory arguments to long options are mandatory for short options too.\n" msgstr "" @@ -587,7 +588,7 @@ msgstr "" "късите\n" "варианти.\n" -#: src/cmp.c:192 +#: src/cmp.c:196 msgid "" "SKIP values may be followed by the following multiplicative suffixes:\n" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" @@ -598,144 +599,144 @@ msgstr "" "kB: 1000, K: 1024, MB: 1 000 000, M: 1 048 576,\n" "GB: 1 000 000 000, G: 1 073 741 824 и т.н. за „T“, „P“, „E“, „Z“ и „Y“." -#: src/cmp.c:195 +#: src/cmp.c:199 msgid "If a FILE is '-' or missing, read standard input." msgstr "Ако името на ФАЙЛ е „-“ или липсва, се чете от стандартния вход." -#: src/cmp.c:196 src/diff.c:987 src/sdiff.c:221 +#: src/cmp.c:200 src/diff.c:1047 src/sdiff.c:220 msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble." msgstr "Изходният код е 0 при еднаквост, 1 при разлика и 2 при грешка." -#: src/cmp.c:243 +#: src/cmp.c:247 #, c-format msgid "invalid --bytes value '%s'" msgstr "неправилен аргумент „%s“ за опцията „--bytes“" -#: src/cmp.c:269 src/diff.c:797 src/diff3.c:361 src/sdiff.c:567 +#: src/cmp.c:273 src/diff.c:857 src/diff3.c:368 src/sdiff.c:564 #, c-format msgid "missing operand after '%s'" msgstr "липсва операнд след „%s“" -#: src/cmp.c:281 src/diff.c:799 src/diff3.c:363 src/sdiff.c:569 +#: src/cmp.c:285 src/diff.c:859 src/diff3.c:370 src/sdiff.c:566 #, c-format msgid "extra operand '%s'" msgstr "излишен операнд след „%s“" -#: src/cmp.c:507 +#: src/cmp.c:521 #, c-format msgid "%s %s differ: byte %s, line %s\n" msgstr "„%s“ и „%s“ се различават: байт %s, ред %s\n" -#: src/cmp.c:523 +#: src/cmp.c:537 #, c-format msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n" msgstr "„%s“ и „%s“ се различават: байт %s, ред %s е %3o %s %3o %s\n" -#: src/cmp.c:580 +#: src/cmp.c:594 #, c-format msgid "cmp: EOF on %s which is empty\n" msgstr "cmp: „EOF“ в празния „%s“\n" -#: src/cmp.c:594 +#: src/cmp.c:608 #, c-format msgid "cmp: EOF on %s after byte %s, line %s\n" msgstr "cmp: „EOF“ в „%s“ след байт %s, ред %s\n" -#: src/cmp.c:595 +#: src/cmp.c:609 #, c-format msgid "cmp: EOF on %s after byte %s, in line %s\n" msgstr "cmp: „EOF“ в „%s“ след байт %s, на ред %s\n" -#: src/cmp.c:601 +#: src/cmp.c:615 #, c-format msgid "cmp: EOF on %s after byte %s\n" msgstr "cmp: „EOF“ в „%s“ след байт %s\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:51 +#: src/diff.c:50 msgid "Paul Eggert" msgstr "Paul Eggert" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:52 +#: src/diff.c:51 msgid "Mike Haertel" msgstr "Mike Haertel" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:53 +#: src/diff.c:52 msgid "David Hayes" msgstr "David Hayes" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:54 +#: src/diff.c:53 msgid "Richard Stallman" msgstr "Richard Stallman" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:55 +#: src/diff.c:54 msgid "Len Tower" msgstr "Len Tower" -#: src/diff.c:355 +#: src/diff.c:365 #, c-format msgid "invalid context length '%s'" msgstr "неправилен размер на контекста „%s“" -#: src/diff.c:438 +#: src/diff.c:487 #, c-format msgid "pagination not supported on this host" msgstr "страницирането не се поддържа на този компютър" -#: src/diff.c:453 src/diff3.c:341 +#: src/diff.c:502 src/diff3.c:348 #, c-format msgid "too many file label options" msgstr "прекалено много операции за етикети на файл" -#: src/diff.c:530 +#: src/diff.c:579 #, c-format msgid "invalid width '%s'" msgstr "неправилна широчина „%s“" -#: src/diff.c:534 +#: src/diff.c:583 msgid "conflicting width options" msgstr "опциите за широчина са в конфликт" -#: src/diff.c:559 +#: src/diff.c:608 #, c-format msgid "invalid horizon length '%s'" msgstr "неправилен обхват на хоризонта: „%s“" -#: src/diff.c:615 +#: src/diff.c:664 #, c-format msgid "invalid tabsize '%s'" msgstr "неправилен размер на табулатора: „%s“" -#: src/diff.c:619 +#: src/diff.c:668 msgid "conflicting tabsize options" msgstr "противоречиви опции за размера на табулацията" -#: src/diff.c:774 +#: src/diff.c:834 msgid "--from-file and --to-file both specified" msgstr "указани са и двете опции „--from-file“ и „--to-file“" -#: src/diff.c:893 +#: src/diff.c:953 msgid " --normal output a normal diff (the default)" msgstr "" " --normal извеждане на разликите по обичайния начин\n" " (стандартно)" -#: src/diff.c:894 +#: src/diff.c:954 msgid "-q, --brief report only when files differ" msgstr "" "-q, --brief извеждане на информация само при различни " "файлове" -#: src/diff.c:895 +#: src/diff.c:955 msgid "-s, --report-identical-files report when two files are the same" msgstr "" "-s, --report-identical-files извеждане на информация при еднакви файлове" -#: src/diff.c:896 +#: src/diff.c:956 msgid "" "-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context" msgstr "" @@ -744,7 +745,7 @@ msgstr "" "контекст\n" " (стандартно е 3)" -#: src/diff.c:897 +#: src/diff.c:957 msgid "" "-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context" msgstr "" @@ -753,44 +754,44 @@ msgstr "" "контекст\n" " (стандартно е 3)" -#: src/diff.c:898 +#: src/diff.c:958 msgid "-e, --ed output an ed script" msgstr "-e, --ed извеждане на скрипт на „ed“" -#: src/diff.c:899 +#: src/diff.c:959 msgid "-n, --rcs output an RCS format diff" msgstr "-n, --rcs разлика във формат „RCS“" -#: src/diff.c:900 +#: src/diff.c:960 msgid "-y, --side-by-side output in two columns" msgstr "-y, --side-by-side изход в 2 колони" -#: src/diff.c:901 +#: src/diff.c:961 msgid "" "-W, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-W, --width=БРОЙ извеждане на максимум този БРОЙ знаци на ред\n" " (стандартно е 130)" -#: src/diff.c:902 +#: src/diff.c:962 msgid "" " --left-column output only the left column of common lines" msgstr "" " --left-column извеждане само на лявата страна при еднакви " "редове" -#: src/diff.c:903 +#: src/diff.c:963 msgid " --suppress-common-lines do not output common lines" msgstr " --suppress-common-lines без извеждане на еднаквите редове" -#: src/diff.c:905 +#: src/diff.c:965 msgid "-p, --show-c-function show which C function each change is in" msgstr "" "-p, --show-c-function указване на имената на функциите на „C“, в " "които\n" " има промени" -#: src/diff.c:906 +#: src/diff.c:966 msgid "-F, --show-function-line=RE show the most recent line matching RE" msgstr "" "-F, --show-function-line=РЕГУЛЯРЕН_ИЗРАЗ\n" @@ -798,7 +799,7 @@ msgstr "" "този\n" " РЕГУЛЯРЕН_ИЗРАЗ" -#: src/diff.c:907 +#: src/diff.c:967 msgid "" " --label LABEL use LABEL instead of file name and timestamp\n" " (can be repeated)" @@ -806,18 +807,18 @@ msgstr "" " --label ЕТИКЕТ ползване на този ЕТИКЕТ вместо име на файл и\n" " момент във времето (може да го повторите)" -#: src/diff.c:910 +#: src/diff.c:970 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "" "-t, --expand-tabs заместване на табулациите с интервали в изхода" -#: src/diff.c:911 +#: src/diff.c:971 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T, --initial-tab подравняване на табулациите чрез добавяне на\n" " табулация отпред" -#: src/diff.c:912 +#: src/diff.c:972 msgid "" " --tabsize=NUM tab stops every NUM (default 8) print columns" msgstr "" @@ -825,33 +826,33 @@ msgstr "" "този\n" " брой знаци на ред" -#: src/diff.c:913 +#: src/diff.c:973 msgid "" " --suppress-blank-empty suppress space or tab before empty output lines" msgstr "" " --suppress-blank-empty без извеждане на интервал или табулация пред\n" " празни редове" -#: src/diff.c:914 +#: src/diff.c:974 msgid "-l, --paginate pass output through 'pr' to paginate it" msgstr "" "-l, --paginate извеждане през командата „pr“ за странициране" -#: src/diff.c:916 +#: src/diff.c:976 msgid "" "-r, --recursive recursively compare any subdirectories found" msgstr "-r, --recursive рекурсивно сравнение на директориите" -#: src/diff.c:917 +#: src/diff.c:977 msgid " --no-dereference don't follow symbolic links" msgstr " --no-dereference без следване на символните връзки" -#: src/diff.c:918 +#: src/diff.c:978 msgid "-N, --new-file treat absent files as empty" msgstr "" "-N, --new-file липсващите файлове да се обработват като празни" -#: src/diff.c:919 +#: src/diff.c:979 msgid " --unidirectional-new-file treat absent first files as empty" msgstr "" " --unidirectional-new-file \n" @@ -859,14 +860,14 @@ msgstr "" "като\n" " празни" -#: src/diff.c:920 +#: src/diff.c:980 msgid " --ignore-file-name-case ignore case when comparing file names" msgstr "" " --ignore-file-name-case без разлика главни/малки при сравнение на " "имена\n" " на файлове" -#: src/diff.c:921 +#: src/diff.c:981 msgid " --no-ignore-file-name-case consider case when comparing file names" msgstr "" " --no-ignore-file-name-case\n" @@ -874,21 +875,21 @@ msgstr "" "имена\n" " на файлове" -#: src/diff.c:922 +#: src/diff.c:982 msgid "-x, --exclude=PAT exclude files that match PAT" msgstr "" "-x, --exclude=ШАБЛОН прескачане на файловете с имена напасващи " "този\n" " ШАБЛОН" -#: src/diff.c:923 +#: src/diff.c:983 msgid "" "-X, --exclude-from=FILE exclude files that match any pattern in FILE" msgstr "" "-X, --exclude-from=ФАЙЛ прескачане на файловете с имена напасващи на\n" " някой от шаблоните в този ФАЙЛ" -#: src/diff.c:924 +#: src/diff.c:984 msgid "" "-S, --starting-file=FILE start with FILE when comparing directories" msgstr "" @@ -896,7 +897,7 @@ msgstr "" "този\n" " файл" -#: src/diff.c:925 +#: src/diff.c:985 msgid "" " --from-file=FILE1 compare FILE1 to all operands;\n" " FILE1 can be a directory" @@ -904,7 +905,7 @@ msgstr "" " --from-file=ФАЙЛ_1 сравняване на ФАЙЛ_1 с всички аргументи.\n" " ФАЙЛ_1 може да е и директория" -#: src/diff.c:927 +#: src/diff.c:987 msgid "" " --to-file=FILE2 compare all operands to FILE2;\n" " FILE2 can be a directory" @@ -912,7 +913,7 @@ msgstr "" " --to-file=ФАЙЛ_2 сравняване на всички аргументи с ФАЙЛ_1.\n" " ФАЙЛ_2 може да е и директория" -#: src/diff.c:930 +#: src/diff.c:990 msgid "" "-i, --ignore-case ignore case differences in file contents" msgstr "" @@ -920,35 +921,35 @@ msgstr "" "на\n" " файловете" -#: src/diff.c:931 +#: src/diff.c:991 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E, --ignore-tab-expansion без значение на замяната на табулации с\n" " интервали" -#: src/diff.c:932 +#: src/diff.c:992 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "" "-Z, --ignore-trailing-space без значение на празните знаци в края на\n" " редовете" -#: src/diff.c:933 +#: src/diff.c:993 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "" "-b, --ignore-space-change без значение на промяната в празните знаци" -#: src/diff.c:934 +#: src/diff.c:994 msgid "-w, --ignore-all-space ignore all white space" msgstr "-w, --ignore-all-space без значение на всички празни знаци" -#: src/diff.c:935 +#: src/diff.c:995 msgid "" "-B, --ignore-blank-lines ignore changes where lines are all blank" msgstr "" "-B, --ignore-blank-lines без значение на промяната на празните редове" -#: src/diff.c:936 +#: src/diff.c:996 msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE" msgstr "" "-I, --ignore-matching-lines=РЕГУЛЯРЕН_ИЗРАЗ\n" @@ -956,41 +957,41 @@ msgstr "" "напасващи\n" " този РЕГУЛЯРЕН_ИЗРАЗ" -#: src/diff.c:938 +#: src/diff.c:998 msgid "-a, --text treat all files as text" msgstr "" "-a, --text всички файлове да се обработят като текст" -#: src/diff.c:939 +#: src/diff.c:999 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr изтриване на последващите знаци „\\r“ на входа" -#: src/diff.c:941 +#: src/diff.c:1001 msgid " --binary read and write data in binary mode" msgstr "" " --binary четене и запис на данните в двоичен режим" -#: src/diff.c:944 +#: src/diff.c:1004 msgid "" "-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs" msgstr "" "-D, --ifdef=ИМЕ сливане чрез ползване на директиви „#ifdef ИМЕ“" -#: src/diff.c:945 +#: src/diff.c:1005 msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT" msgstr "" " --ВИД_ГР-group-format=ФМТ_ГР\n" " форматиране на този ВИД_ГРупи на входа с този\n" " ФорМаТ_за_ГРупи" -#: src/diff.c:946 +#: src/diff.c:1006 msgid " --line-format=LFMT format all input lines with LFMT" msgstr "" " --line-format=ФМТ_РД форматиране на всички входни редови с този\n" " ФорМаТ_за_РеДове" -#: src/diff.c:947 +#: src/diff.c:1007 msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT" msgstr "" " --ВИД_РД-line-format=ФМТ_РД\n" @@ -998,7 +999,7 @@ msgstr "" "този\n" " ФорМаТ_за_РеДове" -#: src/diff.c:948 +#: src/diff.c:1008 msgid "" " These format options provide fine-grained control over the output\n" " of diff, generalizing -D/--ifdef." @@ -1006,7 +1007,7 @@ msgstr "" " Тези опции дават повече контрол върху изведената информация, все едно \n" " „-D/--ifdef“ на стероиди" -#: src/diff.c:950 +#: src/diff.c:1010 msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'." msgstr "" " ВИД_РД е „old“ (стара), „new“ (нова) или „unchanged“ (непроменена).\n" @@ -1014,7 +1015,7 @@ msgstr "" "„changed“\n" " (променена)." -#: src/diff.c:951 +#: src/diff.c:1011 msgid "" " GFMT (only) may contain:\n" " %< lines from FILE1\n" @@ -1044,7 +1045,7 @@ msgstr "" " M L+1\n" " %(A=B?T:E) Ако A е равно на B, то T, в противен случай — E" -#: src/diff.c:963 +#: src/diff.c:1023 msgid "" " LFMT (only) may contain:\n" " %L contents of line\n" @@ -1057,7 +1058,7 @@ msgstr "" " %[-][ШИР][.[ТЧНС]]{doxX}n форматиращ низ на printf за номерата на\n" " входните редове" -#: src/diff.c:967 +#: src/diff.c:1027 msgid "" " Both GFMT and LFMT may contain:\n" " %% %\n" @@ -1071,11 +1072,11 @@ msgstr "" " %c'\\OOO' знак с този осмичен номер\n" " C знакът „C“ (останалите знаци представляват себе си)" -#: src/diff.c:973 +#: src/diff.c:1033 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "-d, --minimal търсене на по-малки разлики" -#: src/diff.c:974 +#: src/diff.c:1034 msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix" msgstr "" " --horizon-lines=БРОЙ без прескачане на този БРОЙ еднакви редове в\n" @@ -1083,14 +1084,14 @@ msgstr "" "откриване\n" " на по-малки разлики" -#: src/diff.c:975 +#: src/diff.c:1035 msgid "" " --speed-large-files assume large files and many scattered small changes" msgstr "" " --speed-large-files обработване на файловете все едно са големи с\n" " множество разпръснати, малки разлики" -#: src/diff.c:976 +#: src/diff.c:1036 msgid "" " --color[=WHEN] color output; WHEN is 'never', 'always', or " "'auto';\n" @@ -1102,7 +1103,7 @@ msgstr "" "стандартно).\n" " Без аргумент е същото като „--color='auto'“" -#: src/diff.c:978 +#: src/diff.c:1038 msgid "" " --palette=PALETTE the colors to use when --color is active; PALETTE " "is\n" @@ -1112,22 +1113,22 @@ msgstr "" " ПАЛИТРАта е списък с разделител „:“ от\n" " възможностите на „terminfo“" -#: src/diff.c:981 +#: src/diff.c:1041 msgid " --help display this help and exit" msgstr " --help извеждане на тази помощ и изход" -#: src/diff.c:982 +#: src/diff.c:1042 msgid "-v, --version output version information and exit" msgstr "-v, --version извеждане на версията и изход" -#: src/diff.c:984 +#: src/diff.c:1044 msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'." msgstr "" "ФАЙЛовете са „ФАЙЛ_1 ФАЙЛ_2“, „ДИРЕКТОРИЯ_1 ДИРЕКТОРИЯ_2“, „ДИРЕКТОРИЯ ФАЙЛ“ " "или\n" "„ФАЙЛ ДИРЕКТОРИЯ“." -#: src/diff.c:985 +#: src/diff.c:1045 msgid "" "If --from-file or --to-file is given, there are no restrictions on FILE(s)." msgstr "" @@ -1135,93 +1136,93 @@ msgstr "" "ограничения\n" "за ФАЙЛовете." -#: src/diff.c:986 src/diff3.c:533 src/sdiff.c:220 +#: src/diff.c:1046 src/diff3.c:531 src/sdiff.c:219 msgid "If a FILE is '-', read standard input." msgstr "Ако за ФАЙЛ е използвано „-“, се чете от стандартния вход." -#: src/diff.c:996 +#: src/diff.c:1056 #, c-format msgid "Usage: %s [OPTION]... FILES\n" msgstr "Употреба: %s [ОПЦИЯ]… ФАЙЛ…\n" -#: src/diff.c:997 +#: src/diff.c:1057 msgid "Compare FILES line by line." msgstr "Поредово сравнение на ФАЙЛовете" -#: src/diff.c:1034 +#: src/diff.c:1094 #, c-format msgid "conflicting %s option value '%s'" msgstr "противоречив аргумент към опцията „%s“: „%s“" -#: src/diff.c:1047 +#: src/diff.c:1107 #, c-format msgid "conflicting output style options" msgstr "противоречащи си опции за стила на изведената информация" -#: src/diff.c:1063 +#: src/diff.c:1123 #, c-format msgid "invalid color '%s'" msgstr "неправилен цвят „%s“" -#: src/diff.c:1119 src/diff.c:1329 +#: src/diff.c:1197 src/diff.c:1401 #, c-format msgid "Only in %s: %s\n" msgstr "Само в „%s“: %s\n" -#: src/diff.c:1253 +#: src/diff.c:1325 msgid "cannot compare '-' to a directory" msgstr "„-“ не може да се сравни с директория" -#: src/diff.c:1288 +#: src/diff.c:1360 msgid "-D option not supported with directories" msgstr "опцията „-D“ не се поддържа с директории" -#: src/diff.c:1297 +#: src/diff.c:1369 #, c-format msgid "Common subdirectories: %s and %s\n" msgstr "Общи поддиректории: „%s“ и „%s“\n" -#: src/diff.c:1339 src/diff.c:1389 +#: src/diff.c:1411 src/diff.c:1461 #, c-format msgid "File %s is a %s while file %s is a %s\n" msgstr "Файл „%s“ е %s, а файл „%s“ е %s\n" -#: src/diff.c:1375 +#: src/diff.c:1447 #, c-format msgid "Symbolic links %s and %s differ\n" msgstr "Символните връзки „%s“ и „%s“ се различават\n" -#: src/diff.c:1462 +#: src/diff.c:1534 #, c-format msgid "Files %s and %s are identical\n" msgstr "Файловете „%s“ и „%s“ са еднакви\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff3.c:43 +#: src/diff3.c:51 msgid "Randy Smith" msgstr "Randy Smith" -#: src/diff3.c:356 +#: src/diff3.c:363 #, c-format msgid "incompatible options" msgstr "несъвместими опции" -#: src/diff3.c:396 +#: src/diff3.c:403 msgid "'-' specified for more than one input file" msgstr "„-“ е указан за повече от един от входните файлове" -#: src/diff3.c:447 src/diff3.c:1295 src/diff3.c:1698 src/diff3.c:1753 -#: src/sdiff.c:308 src/sdiff.c:846 src/sdiff.c:857 +#: src/diff3.c:445 src/diff3.c:1284 src/diff3.c:1683 src/diff3.c:1738 +#: src/sdiff.c:306 src/sdiff.c:843 src/sdiff.c:854 msgid "read failed" msgstr "неуспешно прочитане" -#: src/diff3.c:480 +#: src/diff3.c:478 msgid "-A, --show-all output all changes, bracketing conflicts" msgstr "" "-A, --show-all извеждане на всички промени, конфликтите се\n" " заграждат" -#: src/diff3.c:482 +#: src/diff3.c:480 msgid "" "-e, --ed output ed script incorporating changes\n" " from OLDFILE to YOURFILE into MYFILE" @@ -1231,11 +1232,11 @@ msgstr "" " от ПЪРВОНАЧАЛНия_ФАЙЛ спрямо ЧУЖДия_ФАЙЛ в " "МОЯ_ФАЙЛ" -#: src/diff3.c:484 +#: src/diff3.c:482 msgid "-E, --show-overlap like -e, but bracket conflicts" msgstr "-E, --show-overlap като „-e“, но конфликтите се заграждат" -#: src/diff3.c:485 +#: src/diff3.c:483 msgid "" "-3, --easy-only like -e, but incorporate only nonoverlapping " "changes" @@ -1244,7 +1245,7 @@ msgstr "" "не\n" " се припокриват" -#: src/diff3.c:486 +#: src/diff3.c:484 msgid "" "-x, --overlap-only like -e, but incorporate only overlapping changes" msgstr "" @@ -1252,18 +1253,18 @@ msgstr "" "се\n" " припокриват" -#: src/diff3.c:487 +#: src/diff3.c:485 msgid "-X like -x, but bracket conflicts" msgstr "-X като „-x“, но конфликтите се заграждат" -#: src/diff3.c:488 +#: src/diff3.c:486 msgid "-i append 'w' and 'q' commands to ed scripts" msgstr "" "-i добавяне на командите „w“ и „q“ към скриптовете " "за\n" " „ed“" -#: src/diff3.c:490 +#: src/diff3.c:488 msgid "" "-m, --merge output actual merged file, according to\n" " -A if no other options are given" @@ -1272,26 +1273,26 @@ msgstr "" "при\n" " опцията „-A“ (ако не са зададени други опции)" -#: src/diff3.c:493 +#: src/diff3.c:491 msgid "-a, --text treat all files as text" msgstr "-a, --text всички файлове да се считат за текст" -#: src/diff3.c:494 +#: src/diff3.c:492 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr изтриване на последващите знаци „\\r“ на входа" -#: src/diff3.c:495 +#: src/diff3.c:493 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T, --initial-tab подравняване на табулациите чрез добавяне на\n" " табулация отпред" -#: src/diff3.c:496 +#: src/diff3.c:494 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr " --diff-program=ПРОГРАМА сравнение на файловете с тази ПРОГРАМА" -#: src/diff3.c:497 +#: src/diff3.c:495 msgid "" "-L, --label=LABEL use LABEL instead of file name\n" " (can be repeated up to three times)" @@ -1299,24 +1300,24 @@ msgstr "" "-L, --label=ЕТИКЕТ ползване на този ЕТИКЕТ вместо име на файл\n" " (може да го повторите до три пъти)" -#: src/diff3.c:500 +#: src/diff3.c:498 msgid " --help display this help and exit" msgstr " --help извеждане на тази помощ и изход" -#: src/diff3.c:501 +#: src/diff3.c:499 msgid "-v, --version output version information and exit" msgstr "-v, --version извеждане не версията и изход" -#: src/diff3.c:510 +#: src/diff3.c:508 #, c-format msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n" msgstr "Употреба: %s [ОПЦИЯ]… МОЙ_ФАЙЛ ПЪРВОНАЧАЛЕН_ФАЙЛ ЧУЖД_ФАЙЛ\n" -#: src/diff3.c:512 +#: src/diff3.c:510 msgid "Compare three files line by line." msgstr "Поредово сравняване на три файла" -#: src/diff3.c:522 +#: src/diff3.c:520 msgid "" "\n" "The default output format is a somewhat human-readable representation of\n" @@ -1339,54 +1340,54 @@ msgstr "" "се извежда директно слетият резултат. Когато входът е необичаен, това\n" "дава по-добър резултат отколкото „ed“.\n" -#: src/diff3.c:534 +#: src/diff3.c:532 msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble." msgstr "Изходният код е 0 при успех, 1 при конфликт и 2 при грешка." -#: src/diff3.c:727 +#: src/diff3.c:725 msgid "internal error: screwup in format of diff blocks" msgstr "вътрешна грешка: неправилен формат на разликите" -#: src/diff3.c:1022 +#: src/diff3.c:1015 #, c-format msgid "%s: diff failed: " msgstr "%s: неуспешно изпълнение: " -#: src/diff3.c:1044 +#: src/diff3.c:1037 msgid "internal error: invalid diff type in process_diff" msgstr "вътрешна грешка: неправилен вид на разликата в „process_diff“" -#: src/diff3.c:1069 +#: src/diff3.c:1060 msgid "invalid diff format; invalid change separator" msgstr "неправилен формат на разликата: грешен разделител на разлика" -#: src/diff3.c:1305 +#: src/diff3.c:1294 msgid "invalid diff format; incomplete last line" msgstr "неправилен формат на разликата: последният ред не е завършен" -#: src/diff3.c:1329 src/sdiff.c:276 src/util.c:969 +#: src/diff3.c:1318 src/sdiff.c:274 src/util.c:1069 #, c-format msgid "subsidiary program '%s' could not be invoked" msgstr "допълнителната програма „%s“ не може да бъде стартирана" -#: src/diff3.c:1354 +#: src/diff3.c:1343 msgid "invalid diff format; incorrect leading line chars" msgstr "неправилен формат на разликата: грешни знаци в началото на реда" -#: src/diff3.c:1427 +#: src/diff3.c:1416 msgid "internal error: invalid diff type passed to output" msgstr "вътрешна грешка: зададен е неправилен вид на изхода" -#: src/diff3.c:1700 src/diff3.c:1757 +#: src/diff3.c:1685 src/diff3.c:1742 msgid "input file shrank" msgstr "входен файл се смали" -#: src/dir.c:156 +#: src/dir.c:154 #, c-format msgid "cannot compare file names '%s' and '%s'" msgstr "файловете „%s“ и „%s“ не може да се сравнят" -#: src/dir.c:225 +#: src/dir.c:223 #, c-format msgid "%s: recursive directory loop" msgstr "%s: зацикляне при рекурсивна обработка на директориите" @@ -1396,46 +1397,46 @@ msgstr "%s: зацикляне при рекурсивна обработка н msgid "Thomas Lord" msgstr "Thomas Lord" -#: src/sdiff.c:174 +#: src/sdiff.c:173 msgid "" "-o, --output=FILE operate interactively, sending output to FILE" msgstr "" "-o, --output=ФАЙЛ интерактивен режим, изходът отива в този ФАЙЛ" -#: src/sdiff.c:176 +#: src/sdiff.c:175 msgid "" "-i, --ignore-case consider upper- and lower-case to be the same" msgstr "-i, --ignore-case пренебрегване на регистъра на буквите" -#: src/sdiff.c:177 +#: src/sdiff.c:176 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E, --ignore-tab-expansion пренебрегване на промените поради заместване " "на\n" " табулациите с интервали" -#: src/sdiff.c:178 +#: src/sdiff.c:177 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "" "-Z, --ignore-trailing-space пренебрегване на празните знаци в края на реда" -#: src/sdiff.c:179 +#: src/sdiff.c:178 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "" "-b, --ignore-space-change пренебрегване на промените в празните знаци" -#: src/sdiff.c:180 +#: src/sdiff.c:179 msgid "-W, --ignore-all-space ignore all white space" msgstr "-W, --ignore-all-space пренебрегване на всички празни знаци" -#: src/sdiff.c:181 +#: src/sdiff.c:180 msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank" msgstr "" "-B, --ignore-blank-lines пренебрегване на промени, които са от празни " "редове" -#: src/sdiff.c:182 +#: src/sdiff.c:181 msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE" msgstr "" "-I, --ignore-matching-lines=РЕГУЛЯРЕН_ИЗРАЗ\n" @@ -1443,16 +1444,16 @@ msgstr "" "които\n" " напасват на този РЕГУЛЯРЕН_ИЗРАЗ" -#: src/sdiff.c:183 +#: src/sdiff.c:182 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr махане на последващите знаци „\\r“ на входа" -#: src/sdiff.c:184 +#: src/sdiff.c:183 msgid "-a, --text treat all files as text" msgstr "-a, --text всички файлове да се считат за текст" -#: src/sdiff.c:186 +#: src/sdiff.c:185 msgid "" "-w, --width=NUM output at most NUM (default 130) print columns" msgstr "" @@ -1460,23 +1461,23 @@ msgstr "" "ред\n" " (стандартно е 130)" -#: src/sdiff.c:187 +#: src/sdiff.c:186 msgid "" "-l, --left-column output only the left column of common lines" msgstr "" "-l, --left-column извеждане само на лявата колона от еднаквите " "редове" -#: src/sdiff.c:188 +#: src/sdiff.c:187 msgid "-s, --suppress-common-lines do not output common lines" msgstr "-s, --suppress-common-lines без извеждане на еднаквите редове" -#: src/sdiff.c:190 +#: src/sdiff.c:189 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "" "-t, --expand-tabs табулациите да се заменят с интервали на изхода" -#: src/sdiff.c:191 +#: src/sdiff.c:190 msgid "" " --tabsize=NUM tab stops at every NUM (default 8) print columns" msgstr "" @@ -1484,11 +1485,11 @@ msgstr "" "знаци\n" " (стандартно е 8)" -#: src/sdiff.c:193 +#: src/sdiff.c:192 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "-d, --minimal опит промените да се сведат до по-малки" -#: src/sdiff.c:194 +#: src/sdiff.c:193 msgid "" "-H, --speed-large-files assume large files, many scattered small changes" msgstr "" @@ -1496,36 +1497,36 @@ msgstr "" "малки\n" " промени" -#: src/sdiff.c:195 +#: src/sdiff.c:194 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr " --diff-program=ПРОГРАМА сравнение на файловете с тази ПРОГРАМА" -#: src/sdiff.c:197 +#: src/sdiff.c:196 msgid " --help display this help and exit" msgstr " --help извеждане на тази помощ и изход" -#: src/sdiff.c:198 +#: src/sdiff.c:197 msgid "-v, --version output version information and exit" msgstr "-v, --version извеждане на версията и изход" -#: src/sdiff.c:207 +#: src/sdiff.c:206 #, c-format msgid "Usage: %s [OPTION]... FILE1 FILE2\n" msgstr "Употреба: %s [ОПЦИЯ]… ФАЙЛ_1 ФАЙЛ_2\n" -#: src/sdiff.c:209 +#: src/sdiff.c:208 msgid "Side-by-side merge of differences between FILE1 and FILE2." msgstr "Успоредно сливане на разликите във ФАЙЛ_1 и ФАЙЛ_2" -#: src/sdiff.c:330 +#: src/sdiff.c:328 msgid "cannot interactively merge standard input" msgstr "стандартният вход не може да се слива интерактивно" -#: src/sdiff.c:597 +#: src/sdiff.c:594 msgid "both files to be compared are directories" msgstr "и двата подадени файла са директории" -#: src/sdiff.c:820 +#: src/sdiff.c:817 msgid "" "ed:\tEdit then use both versions, each decorated with a header.\n" "eb:\tEdit then use both versions.\n" @@ -1549,12 +1550,12 @@ msgstr "" "v: Включване на общите редове и допълнителни подробности\n" "q: Изход от програмата\n" -#: src/util.c:662 +#: src/util.c:755 #, c-format msgid "unrecognized prefix: %s" msgstr "непознат префикс: %s" -#: src/util.c:692 +#: src/util.c:785 #, c-format msgid "unparsable value for --palette" msgstr "непознат аргумент към опцията „--palette“" diff --git a/po/ca.po b/po/ca.po index 837c027..ab50f2f 100644 --- a/po/ca.po +++ b/po/ca.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: diffutils 2.8.7\n" "Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n" -"POT-Creation-Date: 2021-08-01 18:56-0700\n" +"POT-Creation-Date: 2023-05-21 01:51-0700\n" "PO-Revision-Date: 2004-04-21 13:33+0200\n" "Last-Translator: Ernest Adrogué Calveras \n" "Language-Team: Catalan \n" @@ -17,29 +17,29 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "X-Bugs: Report translation errors to the Language-Team address.\n" -#: lib/argmatch.c:132 +#: lib/argmatch.c:145 #, c-format msgid "invalid argument %s for %s" msgstr "" -#: lib/argmatch.c:133 +#: lib/argmatch.c:146 #, c-format msgid "ambiguous argument %s for %s" msgstr "" -#: lib/argmatch.c:152 lib/argmatch.h:223 +#: lib/argmatch.c:165 lib/argmatch.h:242 msgid "Valid arguments are:" msgstr "" -#: lib/c-stack.c:187 +#: lib/c-stack.c:186 msgid "program error" msgstr "error del programa" -#: lib/c-stack.c:188 +#: lib/c-stack.c:187 msgid "stack overflow" msgstr "desbordament de pila" -#: lib/error.c:195 +#: lib/error.c:193 msgid "Unknown system error" msgstr "Error no identificat del sistema" @@ -199,85 +199,85 @@ msgstr "%s: l'opci #. If you don't know what to put here, please see #. #. and use glyphs suitable for your language. -#: lib/quotearg.c:355 +#: lib/quotearg.c:354 msgid "`" msgstr "" -#: lib/quotearg.c:356 +#: lib/quotearg.c:355 msgid "'" msgstr "" -#: lib/regcomp.c:135 +#: lib/regcomp.c:122 msgid "Success" msgstr "Succés" -#: lib/regcomp.c:138 +#: lib/regcomp.c:125 msgid "No match" msgstr "Cap resultat" -#: lib/regcomp.c:141 +#: lib/regcomp.c:128 msgid "Invalid regular expression" msgstr "L'expressió regular no és vàlida" -#: lib/regcomp.c:144 +#: lib/regcomp.c:131 msgid "Invalid collation character" msgstr "El caràcter de col·lació no és vàlid" -#: lib/regcomp.c:147 +#: lib/regcomp.c:134 msgid "Invalid character class name" msgstr "El nom de la classe de caràcter no és vàlid" # al final o al principi? eac -#: lib/regcomp.c:150 +#: lib/regcomp.c:137 msgid "Trailing backslash" msgstr "Hi ha una barra invertida al final" -#: lib/regcomp.c:153 +#: lib/regcomp.c:140 msgid "Invalid back reference" msgstr "Hi ha una referència cap enrera no vàlida" -#: lib/regcomp.c:156 +#: lib/regcomp.c:143 #, fuzzy msgid "Unmatched [, [^, [:, [., or [=" msgstr "Hi ha un signe [ o ^[ desaparellat" -#: lib/regcomp.c:159 +#: lib/regcomp.c:146 msgid "Unmatched ( or \\(" msgstr "Hi ha un signe ( o \\( desaparellat" -#: lib/regcomp.c:162 +#: lib/regcomp.c:149 msgid "Unmatched \\{" msgstr "Hi ha un signe \\{ desaparellat" -#: lib/regcomp.c:165 +#: lib/regcomp.c:152 msgid "Invalid content of \\{\\}" msgstr "El contingut de \\{\\} no és vàlid" -#: lib/regcomp.c:168 +#: lib/regcomp.c:155 msgid "Invalid range end" msgstr "El límit superior de l'interval no vàlid" -#: lib/regcomp.c:171 +#: lib/regcomp.c:158 msgid "Memory exhausted" msgstr "Memòria exhaurida" -#: lib/regcomp.c:174 +#: lib/regcomp.c:161 msgid "Invalid preceding regular expression" msgstr "L'expressió regular precedent no és vàlida" -#: lib/regcomp.c:177 +#: lib/regcomp.c:164 msgid "Premature end of regular expression" msgstr "Final prematur de l'expressió regular" -#: lib/regcomp.c:180 +#: lib/regcomp.c:167 msgid "Regular expression too big" msgstr "L'expressió regular és massa gran" -#: lib/regcomp.c:183 +#: lib/regcomp.c:170 msgid "Unmatched ) or \\)" msgstr "Hi ha un signe ) o \\) desaparellat" -#: lib/regcomp.c:676 +#: lib/regcomp.c:650 msgid "No previous regular expression" msgstr "No hi ha cap expressió regular prèvia" @@ -470,17 +470,17 @@ msgstr "" msgid "General help using GNU software: <%s>\n" msgstr "" -#: src/analyze.c:454 src/diff.c:1406 +#: src/analyze.c:455 src/diff.c:1478 #, c-format msgid "Files %s and %s differ\n" msgstr "Els fitxers %s i %s difereixen\n" -#: src/analyze.c:455 +#: src/analyze.c:456 #, fuzzy, c-format msgid "Binary files %s and %s differ\n" msgstr "Els fitxers %s i %s difereixen\n" -#: src/analyze.c:706 src/diff3.c:1470 src/util.c:1254 +#: src/analyze.c:707 src/diff3.c:1457 src/util.c:1354 msgid "No newline at end of file" msgstr "No hi ha cap caràcter de salt de línia al final del fitxer" @@ -494,41 +494,42 @@ msgstr "Torbjorn Granlund" msgid "David MacKenzie" msgstr "" -#: src/cmp.c:120 src/diff.c:879 src/diff3.c:467 src/sdiff.c:160 +#: src/cmp.c:124 src/diff.c:939 src/diff3.c:465 src/sdiff.c:159 #, fuzzy, c-format msgid "Try '%s --help' for more information." msgstr "Proveu «%s --help» per obtenir més informació." -#: src/cmp.c:138 +#: src/cmp.c:142 #, fuzzy, c-format msgid "invalid --ignore-initial value '%s'" msgstr "el valor «%s» per l'opció --ignore-initial no és vàlid" -#: src/cmp.c:148 +#: src/cmp.c:152 #, c-format msgid "options -l and -s are incompatible" msgstr "les opcions -l i -s són incompatibles" -#: src/cmp.c:156 src/diff.c:887 src/diff3.c:474 src/sdiff.c:168 src/sdiff.c:316 -#: src/sdiff.c:323 src/sdiff.c:876 src/util.c:852 src/util.c:952 src/util.c:959 +#: src/cmp.c:160 src/diff.c:947 src/diff3.c:472 src/sdiff.c:167 src/sdiff.c:314 +#: src/sdiff.c:321 src/sdiff.c:873 src/util.c:952 src/util.c:1052 +#: src/util.c:1059 msgid "write failed" msgstr "error d'escriptura" -#: src/cmp.c:158 src/diff.c:889 src/diff.c:1471 src/diff3.c:476 src/sdiff.c:170 +#: src/cmp.c:162 src/diff.c:949 src/diff.c:1543 src/diff3.c:474 src/sdiff.c:169 msgid "standard output" msgstr "sortida estàndard" -#: src/cmp.c:162 +#: src/cmp.c:166 #, fuzzy msgid "-b, --print-bytes print differing bytes" msgstr "-b --print-bytes Mostra els octets que difereixen." -#: src/cmp.c:163 +#: src/cmp.c:167 #, fuzzy msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs" msgstr "-i SALT --ignore-initial=SALT Ignora els primers SALT octets." -#: src/cmp.c:164 +#: src/cmp.c:168 #, fuzzy msgid "" "-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n" @@ -536,40 +537,40 @@ msgid "" msgstr "" " Ignora els primers SALT1 octets de FITXER1 i els primers SALT2 de FITXER2." -#: src/cmp.c:166 +#: src/cmp.c:170 #, fuzzy msgid "" "-l, --verbose output byte numbers and differing byte values" msgstr "-l --verbose Mostra la posició i valor dels octets que difereixen." -#: src/cmp.c:167 +#: src/cmp.c:171 #, fuzzy msgid "-n, --bytes=LIMIT compare at most LIMIT bytes" msgstr "-n LÍMIT --bytes=LÍMIT Compara com a màxim LÍMIT octets." -#: src/cmp.c:168 +#: src/cmp.c:172 msgid "-s, --quiet, --silent suppress all normal output" msgstr "" -#: src/cmp.c:169 +#: src/cmp.c:173 msgid " --help display this help and exit" msgstr "" -#: src/cmp.c:170 +#: src/cmp.c:174 #, fuzzy msgid "-v, --version output version information and exit" msgstr "-v --version Mostra la versió del programa." -#: src/cmp.c:179 +#: src/cmp.c:183 #, c-format msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n" msgstr "Mode d'ús: %s [OPCIÓ]... FITXER1 [FITXER2 [SALT1 [SALT2]]]\n" -#: src/cmp.c:181 +#: src/cmp.c:185 msgid "Compare two files byte by byte." msgstr "Compara dos fitxers octet a octet." -#: src/cmp.c:183 +#: src/cmp.c:187 #, fuzzy msgid "" "The optional SKIP1 and SKIP2 specify the number of bytes to skip\n" @@ -577,12 +578,12 @@ msgid "" msgstr "" "SALT1 i SALT2 són el nombre d'octets que es passen per alt de cada fitxer." -#: src/cmp.c:186 src/diff.c:999 src/diff3.c:514 src/sdiff.c:211 +#: src/cmp.c:190 src/diff.c:1059 src/diff3.c:512 src/sdiff.c:210 msgid "" "Mandatory arguments to long options are mandatory for short options too.\n" msgstr "" -#: src/cmp.c:192 +#: src/cmp.c:196 msgid "" "SKIP values may be followed by the following multiplicative suffixes:\n" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" @@ -592,218 +593,218 @@ msgstr "" "kB per 1000, K per 1024, MB per 1.000.000, M per 1.048.576, GB per\n" "1.000.000.000, G per 1.073.741.824, i així amb T, P, E, Z i Y." -#: src/cmp.c:195 +#: src/cmp.c:199 #, fuzzy msgid "If a FILE is '-' or missing, read standard input." msgstr "Si un FITXER és «-» o falta, llegeix l'entrada estàndard." -#: src/cmp.c:196 src/diff.c:987 src/sdiff.c:221 +#: src/cmp.c:200 src/diff.c:1047 src/sdiff.c:220 msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble." msgstr "" "L'estat de sortida és 0 si les entrades són iguals, 1 si són diferents\n" "i 2 en cas d'error." -#: src/cmp.c:243 +#: src/cmp.c:247 #, fuzzy, c-format msgid "invalid --bytes value '%s'" msgstr "el valor «%s» per l'opció --bytes no és vàlid" -#: src/cmp.c:269 src/diff.c:797 src/diff3.c:361 src/sdiff.c:567 +#: src/cmp.c:273 src/diff.c:857 src/diff3.c:368 src/sdiff.c:564 #, fuzzy, c-format msgid "missing operand after '%s'" msgstr "falta un operand després de «%s»" -#: src/cmp.c:281 src/diff.c:799 src/diff3.c:363 src/sdiff.c:569 +#: src/cmp.c:285 src/diff.c:859 src/diff3.c:370 src/sdiff.c:566 #, fuzzy, c-format msgid "extra operand '%s'" msgstr "sobra l'operand «%s»" # mirar el comentari del codi font -#: src/cmp.c:507 +#: src/cmp.c:521 #, c-format msgid "%s %s differ: byte %s, line %s\n" msgstr "%s i %s difereixen: octet %s, línia %s\n" -#: src/cmp.c:523 +#: src/cmp.c:537 #, c-format msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n" msgstr "%s i %s difereixen: l'octet %s, línia %s, és %3o %s %3o %s\n" -#: src/cmp.c:580 +#: src/cmp.c:594 #, fuzzy, c-format msgid "cmp: EOF on %s which is empty\n" msgstr "cmp: final de fitxer a %s\n" # mirar el comentari del codi font -#: src/cmp.c:594 +#: src/cmp.c:608 #, fuzzy, c-format msgid "cmp: EOF on %s after byte %s, line %s\n" msgstr "%s i %s difereixen: octet %s, línia %s\n" # mirar el comentari del codi font -#: src/cmp.c:595 +#: src/cmp.c:609 #, fuzzy, c-format msgid "cmp: EOF on %s after byte %s, in line %s\n" msgstr "%s i %s difereixen: octet %s, línia %s\n" -#: src/cmp.c:601 +#: src/cmp.c:615 #, fuzzy, c-format msgid "cmp: EOF on %s after byte %s\n" msgstr "cmp: final de fitxer a %s\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:51 +#: src/diff.c:50 msgid "Paul Eggert" msgstr "" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:52 +#: src/diff.c:51 msgid "Mike Haertel" msgstr "" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:53 +#: src/diff.c:52 msgid "David Hayes" msgstr "" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:54 +#: src/diff.c:53 msgid "Richard Stallman" msgstr "" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:55 +#: src/diff.c:54 msgid "Len Tower" msgstr "" -#: src/diff.c:355 +#: src/diff.c:365 #, fuzzy, c-format msgid "invalid context length '%s'" msgstr "el nombre de línies de context «%s» no és vàlid" -#: src/diff.c:438 +#: src/diff.c:487 #, c-format msgid "pagination not supported on this host" msgstr "aquest sistema no suporta paginació" -#: src/diff.c:453 src/diff3.c:341 +#: src/diff.c:502 src/diff3.c:348 #, c-format msgid "too many file label options" msgstr "massa opcions d'etiqueta de fitxer" -#: src/diff.c:530 +#: src/diff.c:579 #, fuzzy, c-format msgid "invalid width '%s'" msgstr "l'amplada «%s» no és vàlida" -#: src/diff.c:534 +#: src/diff.c:583 msgid "conflicting width options" msgstr "opcions d'amplada incompatibles" -#: src/diff.c:559 +#: src/diff.c:608 #, fuzzy, c-format msgid "invalid horizon length '%s'" msgstr "el nombre de línies d'horitzó «%s» no és vàlid" -#: src/diff.c:615 +#: src/diff.c:664 #, fuzzy, c-format msgid "invalid tabsize '%s'" msgstr "la distància de tabulació «%s» no és vàlida" -#: src/diff.c:619 +#: src/diff.c:668 msgid "conflicting tabsize options" msgstr "opcions de distància de tabulació incompatibles" -#: src/diff.c:774 +#: src/diff.c:834 msgid "--from-file and --to-file both specified" msgstr "heu especificat les opcions --from-file i --to-file al mateix temps" -#: src/diff.c:893 +#: src/diff.c:953 #, fuzzy msgid " --normal output a normal diff (the default)" msgstr "--normal Genera un diff normal." -#: src/diff.c:894 +#: src/diff.c:954 #, fuzzy msgid "-q, --brief report only when files differ" msgstr "-q --brief Indica només si els fitxers difereixen o no." -#: src/diff.c:895 +#: src/diff.c:955 #, fuzzy msgid "-s, --report-identical-files report when two files are the same" msgstr "-s --report-identical-files Avisa quan dos fitxers són idèntics." -#: src/diff.c:896 +#: src/diff.c:956 msgid "" "-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context" msgstr "" -#: src/diff.c:897 +#: src/diff.c:957 #, fuzzy msgid "" "-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context" msgstr "" "-w NÚM --width=NÚM No més de NÚM (130 per omissió) caràcters per línia." -#: src/diff.c:898 +#: src/diff.c:958 #, fuzzy msgid "-e, --ed output an ed script" msgstr "-e --ed Genera un script ed." -#: src/diff.c:899 +#: src/diff.c:959 #, fuzzy msgid "-n, --rcs output an RCS format diff" msgstr "-n --rcs Genera un diff en format RCS." -#: src/diff.c:900 +#: src/diff.c:960 msgid "-y, --side-by-side output in two columns" msgstr "" -#: src/diff.c:901 +#: src/diff.c:961 #, fuzzy msgid "" "-W, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-w NÚM --width=NÚM No més de NÚM (130 per omissió) caràcters per línia." -#: src/diff.c:902 +#: src/diff.c:962 #, fuzzy msgid "" " --left-column output only the left column of common lines" msgstr "" "-l --left-column Només escriu les línies en comú a la columna esquerra." -#: src/diff.c:903 +#: src/diff.c:963 #, fuzzy msgid " --suppress-common-lines do not output common lines" msgstr "-s --suppress-common-lines No mostra les línies en comú." -#: src/diff.c:905 +#: src/diff.c:965 msgid "-p, --show-c-function show which C function each change is in" msgstr "" -#: src/diff.c:906 +#: src/diff.c:966 msgid "-F, --show-function-line=RE show the most recent line matching RE" msgstr "" -#: src/diff.c:907 +#: src/diff.c:967 msgid "" " --label LABEL use LABEL instead of file name and timestamp\n" " (can be repeated)" msgstr "" -#: src/diff.c:910 +#: src/diff.c:970 #, fuzzy msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "-t --expand-tabs Expandeix les tabulacions de la sortida a espais." -#: src/diff.c:911 +#: src/diff.c:971 #, fuzzy msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T --initial-tab Alinea el text de cada línia amb un caràcter de tabulació." -#: src/diff.c:912 +#: src/diff.c:972 #, fuzzy msgid "" " --tabsize=NUM tab stops every NUM (default 8) print columns" @@ -811,40 +812,40 @@ msgstr "" "--tabsize=NÚM Estableix la distància de tabulació en NÚM (8 per omissió)\n" " caràcters." -#: src/diff.c:913 +#: src/diff.c:973 msgid "" " --suppress-blank-empty suppress space or tab before empty output lines" msgstr "" -#: src/diff.c:914 +#: src/diff.c:974 #, fuzzy msgid "-l, --paginate pass output through 'pr' to paginate it" msgstr "-l --paginate Pagina la sortida amb el programa «pr»." -#: src/diff.c:916 +#: src/diff.c:976 #, fuzzy msgid "" "-r, --recursive recursively compare any subdirectories found" msgstr "" "-r --recursive Compara recursivament qualsevol subdirectori existent." -#: src/diff.c:917 +#: src/diff.c:977 msgid " --no-dereference don't follow symbolic links" msgstr "" -#: src/diff.c:918 +#: src/diff.c:978 #, fuzzy msgid "-N, --new-file treat absent files as empty" msgstr "-N --new-file Considera els fitxers inexistents com si fóssin buits." -#: src/diff.c:919 +#: src/diff.c:979 #, fuzzy msgid " --unidirectional-new-file treat absent first files as empty" msgstr "" "--unidirectional-new-file Tracta els fitxers primers inexistents com si\n" " fóssin buits." -#: src/diff.c:920 +#: src/diff.c:980 #, fuzzy msgid " --ignore-file-name-case ignore case when comparing file names" msgstr "" @@ -852,19 +853,19 @@ msgstr "" "en\n" " els noms dels fitxers." -#: src/diff.c:921 +#: src/diff.c:981 #, fuzzy msgid " --no-ignore-file-name-case consider case when comparing file names" msgstr "" "--no-ignore-file-name-case Té en compte diferències entre majúscules i\n" " minúscules en comparar noms de fitxers." -#: src/diff.c:922 +#: src/diff.c:982 #, fuzzy msgid "-x, --exclude=PAT exclude files that match PAT" msgstr "-x PAT --exclude=PAT Exclou fitxers que coincideixen amb PAT." -#: src/diff.c:923 +#: src/diff.c:983 #, fuzzy msgid "" "-X, --exclude-from=FILE exclude files that match any pattern in FILE" @@ -872,7 +873,7 @@ msgstr "" "-X FITXER --exclude-from=FITXER Exclou fitxers que coincideixen amb\n" " qualsevol patró de FITXER." -#: src/diff.c:924 +#: src/diff.c:984 #, fuzzy msgid "" "-S, --starting-file=FILE start with FILE when comparing directories" @@ -880,7 +881,7 @@ msgstr "" "-S FITXER --starting-file=FITXER Comença per FITXER quan es comparen\n" " directoris." -#: src/diff.c:925 +#: src/diff.c:985 #, fuzzy msgid "" " --from-file=FILE1 compare FILE1 to all operands;\n" @@ -889,7 +890,7 @@ msgstr "" "--from-file=FITXER1 Compara FITXER1 amb tots els operands. FITXER1 pot ser\n" " un directori." -#: src/diff.c:927 +#: src/diff.c:987 #, fuzzy msgid "" " --to-file=FILE2 compare all operands to FILE2;\n" @@ -898,66 +899,66 @@ msgstr "" "--to-file=FITXER1 Compara tots els operands amb FITXER2. FITXER2 pot ser\n" " un directori." -#: src/diff.c:930 +#: src/diff.c:990 #, fuzzy msgid "" "-i, --ignore-case ignore case differences in file contents" msgstr "-i --ignore-case Ignora diferències entre majúscules i minúscules." -#: src/diff.c:931 +#: src/diff.c:991 #, fuzzy msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E --ignore-tab-expansion Ignora canvis provocats per la distància de\n" " tabulació." -#: src/diff.c:932 +#: src/diff.c:992 #, fuzzy msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "-w --ignore-all-space Ignora tot l'espai en blanc." -#: src/diff.c:933 +#: src/diff.c:993 #, fuzzy msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "" "-b --ignore-space-change Ignora canvis en la quantitat d'espai en blanc." -#: src/diff.c:934 +#: src/diff.c:994 #, fuzzy msgid "-w, --ignore-all-space ignore all white space" msgstr "-w --ignore-all-space Ignora tot l'espai en blanc." -#: src/diff.c:935 +#: src/diff.c:995 #, fuzzy msgid "" "-B, --ignore-blank-lines ignore changes where lines are all blank" msgstr "-B --ignore-blank-lines Ignora canvis en línies que estan en blanc." -#: src/diff.c:936 +#: src/diff.c:996 #, fuzzy msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE" msgstr "" "-I ER --ignore-matching-lines=ER Ignora canvis en línies que continguin ER." -#: src/diff.c:938 +#: src/diff.c:998 #, fuzzy msgid "-a, --text treat all files as text" msgstr "-a --text Tracta tots els fitxers com a text." -#: src/diff.c:939 +#: src/diff.c:999 #, fuzzy msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" "--strip-trailing-cr Treu els caràcters finals de retorn de carro de " "l'entrada." -#: src/diff.c:941 +#: src/diff.c:1001 #, fuzzy msgid " --binary read and write data in binary mode" msgstr "--binary Escriu i llegeix dades en mode binari." -#: src/diff.c:944 +#: src/diff.c:1004 #, fuzzy msgid "" "-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs" @@ -966,30 +967,30 @@ msgstr "" " amb directives `#ifdef NOM'." # `grups' o `grups de línies' (no queda prou clar) -#: src/diff.c:945 +#: src/diff.c:1005 #, fuzzy msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT" msgstr "" "--TIPUSG-group-format=FMTG Similar, però formata els grups TIPUSG amb FMTG." -#: src/diff.c:946 +#: src/diff.c:1006 #, fuzzy msgid " --line-format=LFMT format all input lines with LFMT" msgstr "--line-format=FMTL Similar, però formata totes les línies amb FMTL." -#: src/diff.c:947 +#: src/diff.c:1007 #, fuzzy msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT" msgstr "" "--TIPUSL-line-format=FMTL Similar, però formata les línies TIPUSL amb FMTL." -#: src/diff.c:948 +#: src/diff.c:1008 msgid "" " These format options provide fine-grained control over the output\n" " of diff, generalizing -D/--ifdef." msgstr "" -#: src/diff.c:950 +#: src/diff.c:1010 #, fuzzy msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'." msgstr "" @@ -997,7 +998,7 @@ msgstr "" "«unchanged» (inalterades).\n" " TIPUSG pot ser qualsevol TIPUSL o bé «changed» (alterades)." -#: src/diff.c:951 +#: src/diff.c:1011 #, fuzzy msgid "" " GFMT (only) may contain:\n" @@ -1027,7 +1028,7 @@ msgstr "" " E F-1\n" " M L+1" -#: src/diff.c:963 +#: src/diff.c:1023 #, fuzzy msgid "" " LFMT (only) may contain:\n" @@ -1041,7 +1042,7 @@ msgstr "" " %[-][AMPLADA][.[PRECISIÓ]]{doxX}n espec. estil printf pel nombre de " "línia" -#: src/diff.c:967 +#: src/diff.c:1027 #, fuzzy msgid "" " Both GFMT and LFMT may contain:\n" @@ -1055,17 +1056,17 @@ msgstr "" " %c'C' el caràcter C\n" " %c'\\OOO' el caràcter de codi octal OOO" -#: src/diff.c:973 +#: src/diff.c:1033 #, fuzzy msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "-d --minimal Intenta trobar canvis mínims." -#: src/diff.c:974 +#: src/diff.c:1034 #, fuzzy msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix" msgstr "--horizon-lines=NÚM No descarta NÚM línies amb prefix i sufix comú." -#: src/diff.c:975 +#: src/diff.c:1035 #, fuzzy msgid "" " --speed-large-files assume large files and many scattered small changes" @@ -1073,135 +1074,135 @@ msgstr "" "-H --speed-large-files Assumeix fitxers grans i molts canvis petits " "dispersos." -#: src/diff.c:976 +#: src/diff.c:1036 msgid "" " --color[=WHEN] color output; WHEN is 'never', 'always', or " "'auto';\n" " plain --color means --color='auto'" msgstr "" -#: src/diff.c:978 +#: src/diff.c:1038 msgid "" " --palette=PALETTE the colors to use when --color is active; PALETTE " "is\n" " a colon-separated list of terminfo capabilities" msgstr "" -#: src/diff.c:981 +#: src/diff.c:1041 msgid " --help display this help and exit" msgstr "" -#: src/diff.c:982 +#: src/diff.c:1042 #, fuzzy msgid "-v, --version output version information and exit" msgstr "-v --version Mostra la versió del programa." -#: src/diff.c:984 +#: src/diff.c:1044 #, fuzzy msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'." msgstr "" "FITXERS és «FITXER1 FITXER2» o «DIR1 DIR2» o «DIR FITXER...» o «FITXER... " "DIR»." -#: src/diff.c:985 +#: src/diff.c:1045 #, fuzzy msgid "" "If --from-file or --to-file is given, there are no restrictions on FILE(s)." msgstr "" "Amb les opcions --from-file o --to-file no hi ha restriccions de FITXERS." -#: src/diff.c:986 src/diff3.c:533 src/sdiff.c:220 +#: src/diff.c:1046 src/diff3.c:531 src/sdiff.c:219 #, fuzzy msgid "If a FILE is '-', read standard input." msgstr "Si FITXER és «-», llegeix l'entrada estàndard." -#: src/diff.c:996 +#: src/diff.c:1056 #, c-format msgid "Usage: %s [OPTION]... FILES\n" msgstr "Mode d'ús: %s [OPCIÓ]... FITXERS\n" -#: src/diff.c:997 +#: src/diff.c:1057 #, fuzzy msgid "Compare FILES line by line." msgstr "Compara fitxers línia per línia." -#: src/diff.c:1034 +#: src/diff.c:1094 #, fuzzy, c-format msgid "conflicting %s option value '%s'" msgstr "el valor «%s» per l'opció %s és conflictiu" -#: src/diff.c:1047 +#: src/diff.c:1107 #, c-format msgid "conflicting output style options" msgstr "opcions d'estil de sortida conflictives" -#: src/diff.c:1063 +#: src/diff.c:1123 #, fuzzy, c-format msgid "invalid color '%s'" msgstr "el nombre de línies de context «%s» no és vàlid" -#: src/diff.c:1119 src/diff.c:1329 +#: src/diff.c:1197 src/diff.c:1401 #, c-format msgid "Only in %s: %s\n" msgstr "Només a %s: %s\n" -#: src/diff.c:1253 +#: src/diff.c:1325 #, fuzzy msgid "cannot compare '-' to a directory" msgstr "no es pot comparar «-» amb un directori" -#: src/diff.c:1288 +#: src/diff.c:1360 msgid "-D option not supported with directories" msgstr "l'opció -D no funciona amb directoris" -#: src/diff.c:1297 +#: src/diff.c:1369 #, c-format msgid "Common subdirectories: %s and %s\n" msgstr "Subdirectoris comuns: %s i %s\n" -#: src/diff.c:1339 src/diff.c:1389 +#: src/diff.c:1411 src/diff.c:1461 #, c-format msgid "File %s is a %s while file %s is a %s\n" msgstr "El fitxer %s és un %s mentre que el fitxer %s és un %s\n" -#: src/diff.c:1375 +#: src/diff.c:1447 #, fuzzy, c-format msgid "Symbolic links %s and %s differ\n" msgstr "Els fitxers %s i %s difereixen\n" -#: src/diff.c:1462 +#: src/diff.c:1534 #, c-format msgid "Files %s and %s are identical\n" msgstr "Els fitxers %s i %s són idèntics\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff3.c:43 +#: src/diff3.c:51 msgid "Randy Smith" msgstr "" -#: src/diff3.c:356 +#: src/diff3.c:363 #, c-format msgid "incompatible options" msgstr "opcions incompatibles" -#: src/diff3.c:396 +#: src/diff3.c:403 #, fuzzy msgid "'-' specified for more than one input file" msgstr "heu especificat «-» per més d'un fitxer d'entrada" -#: src/diff3.c:447 src/diff3.c:1295 src/diff3.c:1698 src/diff3.c:1753 -#: src/sdiff.c:308 src/sdiff.c:846 src/sdiff.c:857 +#: src/diff3.c:445 src/diff3.c:1284 src/diff3.c:1683 src/diff3.c:1738 +#: src/sdiff.c:306 src/sdiff.c:843 src/sdiff.c:854 msgid "read failed" msgstr "lectura fallida" -#: src/diff3.c:480 +#: src/diff3.c:478 #, fuzzy msgid "-A, --show-all output all changes, bracketing conflicts" msgstr "" "-A --show-all Mostra tots els canvis, senyalant els conflictes amb " "separadors." -#: src/diff3.c:482 +#: src/diff3.c:480 #, fuzzy msgid "" "-e, --ed output ed script incorporating changes\n" @@ -1209,7 +1210,7 @@ msgid "" msgstr "" "-e --ed Mostra els canvis no comuns de FITXER-VELL a FITXER2 en FITXER1." -#: src/diff3.c:484 +#: src/diff3.c:482 #, fuzzy msgid "-E, --show-overlap like -e, but bracket conflicts" msgstr "" @@ -1217,82 +1218,82 @@ msgstr "" "amb\n" " separadors." -#: src/diff3.c:485 +#: src/diff3.c:483 #, fuzzy msgid "" "-3, --easy-only like -e, but incorporate only nonoverlapping " "changes" msgstr "-3 --easy-only Mostra els canvis no comuns i no solapats." -#: src/diff3.c:486 +#: src/diff3.c:484 #, fuzzy msgid "" "-x, --overlap-only like -e, but incorporate only overlapping changes" msgstr "-x --overlap-only Mostra els canvis solapats." -#: src/diff3.c:487 +#: src/diff3.c:485 msgid "-X like -x, but bracket conflicts" msgstr "" -#: src/diff3.c:488 +#: src/diff3.c:486 #, fuzzy msgid "-i append 'w' and 'q' commands to ed scripts" msgstr "-i Afegeix les instruccions «w» i «q» a l'script ed." -#: src/diff3.c:490 +#: src/diff3.c:488 msgid "" "-m, --merge output actual merged file, according to\n" " -A if no other options are given" msgstr "" -#: src/diff3.c:493 +#: src/diff3.c:491 #, fuzzy msgid "-a, --text treat all files as text" msgstr "-a --text Tracta tots els fitxers com a text." -#: src/diff3.c:494 +#: src/diff3.c:492 #, fuzzy msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" "--strip-trailing-cr Treu els caràcters finals de retorn de carro de " "l'entrada." -#: src/diff3.c:495 +#: src/diff3.c:493 #, fuzzy msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T --initial-tab Alinea el text de cada línia amb un caràcter de tabulació." -#: src/diff3.c:496 +#: src/diff3.c:494 #, fuzzy msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr "--diff-program=PROGRAMA Usa PROGRAMA per comparar fitxers." -#: src/diff3.c:497 +#: src/diff3.c:495 msgid "" "-L, --label=LABEL use LABEL instead of file name\n" " (can be repeated up to three times)" msgstr "" -#: src/diff3.c:500 +#: src/diff3.c:498 msgid " --help display this help and exit" msgstr "" -#: src/diff3.c:501 +#: src/diff3.c:499 #, fuzzy msgid "-v, --version output version information and exit" msgstr "-v --version Mostra la versió del programa." -#: src/diff3.c:510 +#: src/diff3.c:508 #, c-format msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n" msgstr "Mode d'ús: %s [OPCIÓ]... FITXER1 FITXER-VELL FITXER2\n" -#: src/diff3.c:512 +#: src/diff3.c:510 msgid "Compare three files line by line." msgstr "Compara tres fitxers línia per línia." -#: src/diff3.c:522 +#: src/diff3.c:520 msgid "" "\n" "The default output format is a somewhat human-readable representation of\n" @@ -1306,56 +1307,56 @@ msgid "" "robust than using ed.\n" msgstr "" -#: src/diff3.c:534 +#: src/diff3.c:532 msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble." msgstr "" "L'estat de sortida és 0 si s'acaba amb èxit, 1 si hi ha conflictes\n" "i 2 en cas d'error." -#: src/diff3.c:727 +#: src/diff3.c:725 msgid "internal error: screwup in format of diff blocks" msgstr "error intern: format dels blocs diff desmanegat" -#: src/diff3.c:1022 +#: src/diff3.c:1015 #, c-format msgid "%s: diff failed: " msgstr "%s: diff ha fallat: " -#: src/diff3.c:1044 +#: src/diff3.c:1037 msgid "internal error: invalid diff type in process_diff" msgstr "error intern: tipus de diff invàlid en process_diff" -#: src/diff3.c:1069 +#: src/diff3.c:1060 msgid "invalid diff format; invalid change separator" msgstr "el format diff no és vàlid: el separador de canvis no és vàlid" -#: src/diff3.c:1305 +#: src/diff3.c:1294 msgid "invalid diff format; incomplete last line" msgstr "el format diff no és vàlid: l'última línia està incompleta" -#: src/diff3.c:1329 src/sdiff.c:276 src/util.c:969 +#: src/diff3.c:1318 src/sdiff.c:274 src/util.c:1069 #, fuzzy, c-format msgid "subsidiary program '%s' could not be invoked" msgstr "no s'ha pogut invocar el programa subsidiari «%s»" -#: src/diff3.c:1354 +#: src/diff3.c:1343 msgid "invalid diff format; incorrect leading line chars" msgstr "el format diff no és vàlid: caràcters invàlids al principi de línia" -#: src/diff3.c:1427 +#: src/diff3.c:1416 msgid "internal error: invalid diff type passed to output" msgstr "error intern: tipus de diff no vàlid passat a la sortida" -#: src/diff3.c:1700 src/diff3.c:1757 +#: src/diff3.c:1685 src/diff3.c:1742 msgid "input file shrank" msgstr "el fitxer d'entrada s'ha encongit" -#: src/dir.c:156 +#: src/dir.c:154 #, fuzzy, c-format msgid "cannot compare file names '%s' and '%s'" msgstr "no es poden comparar els noms de fitxer «%s» i «%s»" -#: src/dir.c:225 +#: src/dir.c:223 #, c-format msgid "%s: recursive directory loop" msgstr "" @@ -1365,7 +1366,7 @@ msgstr "" msgid "Thomas Lord" msgstr "" -#: src/sdiff.c:174 +#: src/sdiff.c:173 #, fuzzy msgid "" "-o, --output=FILE operate interactively, sending output to FILE" @@ -1373,84 +1374,84 @@ msgstr "" "-o FITXER --output=FITXER Opera interactivament, i envia la sortida a " "FITXER." -#: src/sdiff.c:176 +#: src/sdiff.c:175 #, fuzzy msgid "" "-i, --ignore-case consider upper- and lower-case to be the same" msgstr "-i --ignore-case No distingeix entre majúscules i minúscules." -#: src/sdiff.c:177 +#: src/sdiff.c:176 #, fuzzy msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E --ignore-tab-expansion Ignora canvis provocats per la distància de\n" " tabulació." -#: src/sdiff.c:178 +#: src/sdiff.c:177 #, fuzzy msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "-w --ignore-all-space Ignora tot l'espai en blanc." -#: src/sdiff.c:179 +#: src/sdiff.c:178 #, fuzzy msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "" "-b --ignore-space-change Ignora canvis en la quantitat d'espai en blanc." -#: src/sdiff.c:180 +#: src/sdiff.c:179 #, fuzzy msgid "-W, --ignore-all-space ignore all white space" msgstr "-W --ignore-all-space Ignora tot l'espai en blanc." -#: src/sdiff.c:181 +#: src/sdiff.c:180 #, fuzzy msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank" msgstr "-B --ignore-blank-lines Ignora canvis en línies que estan en blanc." -#: src/sdiff.c:182 +#: src/sdiff.c:181 #, fuzzy msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE" msgstr "" "-I ER --ignore-matching-lines=ER Ignora canvis en línies que continguin ER." -#: src/sdiff.c:183 +#: src/sdiff.c:182 #, fuzzy msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" "--strip-trailing-cr Treu els caràcters finals de retorn de carro de " "l'entrada." -#: src/sdiff.c:184 +#: src/sdiff.c:183 #, fuzzy msgid "-a, --text treat all files as text" msgstr "-a --text Tracta tots els fitxers com a text." -#: src/sdiff.c:186 +#: src/sdiff.c:185 #, fuzzy msgid "" "-w, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-w NÚM --width=NÚM No més de NÚM (130 per omissió) caràcters per línia." -#: src/sdiff.c:187 +#: src/sdiff.c:186 #, fuzzy msgid "" "-l, --left-column output only the left column of common lines" msgstr "" "-l --left-column Només escriu les línies en comú a la columna esquerra." -#: src/sdiff.c:188 +#: src/sdiff.c:187 #, fuzzy msgid "-s, --suppress-common-lines do not output common lines" msgstr "-s --suppress-common-lines No mostra les línies en comú." -#: src/sdiff.c:190 +#: src/sdiff.c:189 #, fuzzy msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "-t --expand-tabs Expandeix les tabulacions de la sortida a espais." -#: src/sdiff.c:191 +#: src/sdiff.c:190 #, fuzzy msgid "" " --tabsize=NUM tab stops at every NUM (default 8) print columns" @@ -1458,12 +1459,12 @@ msgstr "" "--tabsize=NÚM Estableix la distància de tabulació en NÚM (8 per omissió)\n" " caràcters." -#: src/sdiff.c:193 +#: src/sdiff.c:192 #, fuzzy msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "-d --minimal Intenta trobar canvis mínims." -#: src/sdiff.c:194 +#: src/sdiff.c:193 #, fuzzy msgid "" "-H, --speed-large-files assume large files, many scattered small changes" @@ -1471,39 +1472,39 @@ msgstr "" "-H --speed-large-files Assumeix fitxers grans i molts canvis petits " "dispersos." -#: src/sdiff.c:195 +#: src/sdiff.c:194 #, fuzzy msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr "--diff-program=PROGRAMA Usa PROGRAMA per comparar fitxers." -#: src/sdiff.c:197 +#: src/sdiff.c:196 msgid " --help display this help and exit" msgstr "" -#: src/sdiff.c:198 +#: src/sdiff.c:197 #, fuzzy msgid "-v, --version output version information and exit" msgstr "-v --version Mostra la versió del programa." -#: src/sdiff.c:207 +#: src/sdiff.c:206 #, c-format msgid "Usage: %s [OPTION]... FILE1 FILE2\n" msgstr "Mode d'ús: %s [OPCIÓ]... FITXER1 FITXER2\n" -#: src/sdiff.c:209 +#: src/sdiff.c:208 #, fuzzy msgid "Side-by-side merge of differences between FILE1 and FILE2." msgstr "Combina diferències entre fitxers en dues columnes" -#: src/sdiff.c:330 +#: src/sdiff.c:328 msgid "cannot interactively merge standard input" msgstr "no es pot combinar interactivament l'entrada estàndard" -#: src/sdiff.c:597 +#: src/sdiff.c:594 msgid "both files to be compared are directories" msgstr "ambdós fitxers són directoris" -#: src/sdiff.c:820 +#: src/sdiff.c:817 #, fuzzy msgid "" "ed:\tEdit then use both versions, each decorated with a header.\n" @@ -1528,12 +1529,12 @@ msgstr "" "v:\tInclou les línies comunes i informa amb loquacitat\n" "q:\tSurt.\n" -#: src/util.c:662 +#: src/util.c:755 #, fuzzy, c-format msgid "unrecognized prefix: %s" msgstr "%s: opció no reconeguda «--%s»\n" -#: src/util.c:692 +#: src/util.c:785 #, c-format msgid "unparsable value for --palette" msgstr "" diff --git a/po/cs.po b/po/cs.po index 774c62e..e980513 100644 --- a/po/cs.po +++ b/po/cs.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: diffutils 3.7.41\n" "Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n" -"POT-Creation-Date: 2021-08-01 18:56-0700\n" +"POT-Creation-Date: 2023-05-21 01:51-0700\n" "PO-Revision-Date: 2021-07-20 18:23+02:00\n" "Last-Translator: Petr Pisar \n" "Language-Team: Czech \n" @@ -18,29 +18,29 @@ msgstr "" "Content-Transfer-Encoding: 8-bit\n" "X-Bugs: Report translation errors to the Language-Team address.\n" -#: lib/argmatch.c:132 +#: lib/argmatch.c:145 #, c-format msgid "invalid argument %s for %s" msgstr "neplatný argument „%s“ pro %s" -#: lib/argmatch.c:133 +#: lib/argmatch.c:146 #, c-format msgid "ambiguous argument %s for %s" msgstr "nejednoznačný argument %s pro %s" -#: lib/argmatch.c:152 lib/argmatch.h:223 +#: lib/argmatch.c:165 lib/argmatch.h:242 msgid "Valid arguments are:" msgstr "Platné argumenty jsou:" -#: lib/c-stack.c:187 +#: lib/c-stack.c:186 msgid "program error" msgstr "chyba programu" -#: lib/c-stack.c:188 +#: lib/c-stack.c:187 msgid "stack overflow" msgstr "přetečení zásobníku" -#: lib/error.c:195 +#: lib/error.c:193 msgid "Unknown system error" msgstr "Neznámá chyba systému" @@ -196,83 +196,83 @@ msgstr "%s: přepínač vyžaduje argument – „%c“\n" #. If you don't know what to put here, please see #. #. and use glyphs suitable for your language. -#: lib/quotearg.c:355 +#: lib/quotearg.c:354 msgid "`" msgstr "„" -#: lib/quotearg.c:356 +#: lib/quotearg.c:355 msgid "'" msgstr "“" -#: lib/regcomp.c:135 +#: lib/regcomp.c:122 msgid "Success" msgstr "Hotovo" -#: lib/regcomp.c:138 +#: lib/regcomp.c:125 msgid "No match" msgstr "Žádná shoda" -#: lib/regcomp.c:141 +#: lib/regcomp.c:128 msgid "Invalid regular expression" msgstr "Neplatný regulární výraz" -#: lib/regcomp.c:144 +#: lib/regcomp.c:131 msgid "Invalid collation character" msgstr "Neplatný znak porovnání" -#: lib/regcomp.c:147 +#: lib/regcomp.c:134 msgid "Invalid character class name" msgstr "Neplatné jméno třídy znaků" -#: lib/regcomp.c:150 +#: lib/regcomp.c:137 msgid "Trailing backslash" msgstr "Koncové zpětné lomítko" -#: lib/regcomp.c:153 +#: lib/regcomp.c:140 msgid "Invalid back reference" msgstr "Neplatný zpětný odkaz" -#: lib/regcomp.c:156 +#: lib/regcomp.c:143 msgid "Unmatched [, [^, [:, [., or [=" msgstr "Nepárová [, [^, [:, [. nebo [=" -#: lib/regcomp.c:159 +#: lib/regcomp.c:146 msgid "Unmatched ( or \\(" msgstr "Nepárová ( nebo \\(" -#: lib/regcomp.c:162 +#: lib/regcomp.c:149 msgid "Unmatched \\{" msgstr "Nepárová \\{" -#: lib/regcomp.c:165 +#: lib/regcomp.c:152 msgid "Invalid content of \\{\\}" msgstr "Neplatný obsah \\{\\}" -#: lib/regcomp.c:168 +#: lib/regcomp.c:155 msgid "Invalid range end" msgstr "Neplatný konec rozsahu" -#: lib/regcomp.c:171 +#: lib/regcomp.c:158 msgid "Memory exhausted" msgstr "Paměť vyčerpána" -#: lib/regcomp.c:174 +#: lib/regcomp.c:161 msgid "Invalid preceding regular expression" msgstr "Neplatný předchozí regulární výraz" -#: lib/regcomp.c:177 +#: lib/regcomp.c:164 msgid "Premature end of regular expression" msgstr "Předčasný konec regulárního výrazu" -#: lib/regcomp.c:180 +#: lib/regcomp.c:167 msgid "Regular expression too big" msgstr "Regulární výraz je příliÅ¡ dlouhý" -#: lib/regcomp.c:183 +#: lib/regcomp.c:170 msgid "Unmatched ) or \\)" msgstr "Nepárová ) nebo \\)" -#: lib/regcomp.c:676 +#: lib/regcomp.c:650 msgid "No previous regular expression" msgstr "Předchozí regulární výraz neexistuje" @@ -474,17 +474,17 @@ msgstr "Domovská stránka %s: <%s>\n" msgid "General help using GNU software: <%s>\n" msgstr "Obecná pomoc při používání softwaru GNU: <%s>\n" -#: src/analyze.c:454 src/diff.c:1406 +#: src/analyze.c:455 src/diff.c:1478 #, c-format msgid "Files %s and %s differ\n" msgstr "Soubory %s a %s jsou různé\n" -#: src/analyze.c:455 +#: src/analyze.c:456 #, c-format msgid "Binary files %s and %s differ\n" msgstr "Binární soubory %s a %s jsou rozdílné\n" -#: src/analyze.c:706 src/diff3.c:1470 src/util.c:1254 +#: src/analyze.c:707 src/diff3.c:1457 src/util.c:1354 msgid "No newline at end of file" msgstr "Chybí znak konce řádku na konci souboru" @@ -498,39 +498,40 @@ msgstr "Torbjorn Granlund" msgid "David MacKenzie" msgstr "David MacKenzie" -#: src/cmp.c:120 src/diff.c:879 src/diff3.c:467 src/sdiff.c:160 +#: src/cmp.c:124 src/diff.c:939 src/diff3.c:465 src/sdiff.c:159 #, c-format msgid "Try '%s --help' for more information." msgstr "Více informací získáte příkazem „%s --help“." -#: src/cmp.c:138 +#: src/cmp.c:142 #, c-format msgid "invalid --ignore-initial value '%s'" msgstr "neplatná hodnota --ignore-inital „%s“" -#: src/cmp.c:148 +#: src/cmp.c:152 #, c-format msgid "options -l and -s are incompatible" msgstr "přepínače -l a -s nejsou kompatibilní" -#: src/cmp.c:156 src/diff.c:887 src/diff3.c:474 src/sdiff.c:168 src/sdiff.c:316 -#: src/sdiff.c:323 src/sdiff.c:876 src/util.c:852 src/util.c:952 src/util.c:959 +#: src/cmp.c:160 src/diff.c:947 src/diff3.c:472 src/sdiff.c:167 src/sdiff.c:314 +#: src/sdiff.c:321 src/sdiff.c:873 src/util.c:952 src/util.c:1052 +#: src/util.c:1059 msgid "write failed" msgstr "zápis selhal" -#: src/cmp.c:158 src/diff.c:889 src/diff.c:1471 src/diff3.c:476 src/sdiff.c:170 +#: src/cmp.c:162 src/diff.c:949 src/diff.c:1543 src/diff3.c:474 src/sdiff.c:169 msgid "standard output" msgstr "standardní výstup" -#: src/cmp.c:162 +#: src/cmp.c:166 msgid "-b, --print-bytes print differing bytes" msgstr "-b --print-bytes vypíše rozdílné bajty" -#: src/cmp.c:163 +#: src/cmp.c:167 msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs" msgstr "-i, --ignore-initial=N přeskočí prvních N bajtů obou vstupů" -#: src/cmp.c:164 +#: src/cmp.c:168 msgid "" "-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n" " first SKIP2 bytes of FILE2" @@ -538,37 +539,37 @@ msgstr "" "-i, --ignore-initial=N1:N2 přeskočí prvních N1 bajtů SOUBORU1 a\n" " prvních N2 bajtů SOUBORU2" -#: src/cmp.c:166 +#: src/cmp.c:170 msgid "" "-l, --verbose output byte numbers and differing byte values" msgstr "-l --verbose vypíše pozice a hodnoty rozdílných bajtů" -#: src/cmp.c:167 +#: src/cmp.c:171 msgid "-n, --bytes=LIMIT compare at most LIMIT bytes" msgstr "-n, --bytes=LIMIT porovná nejvýše LIMIT bajtů" -#: src/cmp.c:168 +#: src/cmp.c:172 msgid "-s, --quiet, --silent suppress all normal output" msgstr "-s, --quiet, --silent potlačí veÅ¡kerý běžný výstup" -#: src/cmp.c:169 +#: src/cmp.c:173 msgid " --help display this help and exit" msgstr " --help zobrazí tuto nápovědu a skončí" -#: src/cmp.c:170 +#: src/cmp.c:174 msgid "-v, --version output version information and exit" msgstr "-v --version vypíše údaje o verzi a skončí" -#: src/cmp.c:179 +#: src/cmp.c:183 #, c-format msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n" msgstr "Použití: %s [PŘEPÍNAČ]… SOUBOR1 [SOUBOR2 [N1 [N2]]]\n" -#: src/cmp.c:181 +#: src/cmp.c:185 msgid "Compare two files byte by byte." msgstr "Porovnává dva soubory bajt po bajtu." -#: src/cmp.c:183 +#: src/cmp.c:187 msgid "" "The optional SKIP1 and SKIP2 specify the number of bytes to skip\n" "at the beginning of each file (zero by default)." @@ -576,13 +577,13 @@ msgstr "" "Volitelné argumenty N1 a N2 udávají počet bajtů, které budou přeskočeny\n" "na začátku každého souboru (výchozí je nula)." -#: src/cmp.c:186 src/diff.c:999 src/diff3.c:514 src/sdiff.c:211 +#: src/cmp.c:190 src/diff.c:1059 src/diff3.c:512 src/sdiff.c:210 msgid "" "Mandatory arguments to long options are mandatory for short options too.\n" msgstr "" "Povinné argumenty dlouhých přepínačů jsou též povinné u krátkých forem.\n" -#: src/cmp.c:192 +#: src/cmp.c:196 msgid "" "SKIP values may be followed by the following multiplicative suffixes:\n" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" @@ -592,141 +593,141 @@ msgstr "" "kB 1000, K 1024, MB 1 000 000, M 1 048 576,\n" "GB 1 000 000 000, G 1 073 741 824 a stejně tak i pro T, P, E, Z, Y." -#: src/cmp.c:195 +#: src/cmp.c:199 msgid "If a FILE is '-' or missing, read standard input." msgstr "Pokud SOUBOR je „-“ nebo nebo chybí, bude čten standardní vstup." -#: src/cmp.c:196 src/diff.c:987 src/sdiff.c:221 +#: src/cmp.c:200 src/diff.c:1047 src/sdiff.c:220 msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble." msgstr "" "Návratový kód je roven 0 pokud jsou vstupy shodné, 1 pokud se liší a 2 při " "chybě." -#: src/cmp.c:243 +#: src/cmp.c:247 #, c-format msgid "invalid --bytes value '%s'" msgstr "neplatná hodnota přepínače --bytes „%s“" -#: src/cmp.c:269 src/diff.c:797 src/diff3.c:361 src/sdiff.c:567 +#: src/cmp.c:273 src/diff.c:857 src/diff3.c:368 src/sdiff.c:564 #, c-format msgid "missing operand after '%s'" msgstr "po „%s“ chybí operand" -#: src/cmp.c:281 src/diff.c:799 src/diff3.c:363 src/sdiff.c:569 +#: src/cmp.c:285 src/diff.c:859 src/diff3.c:370 src/sdiff.c:566 #, c-format msgid "extra operand '%s'" msgstr "operand „%s“ je nadbytečný" -#: src/cmp.c:507 +#: src/cmp.c:521 #, c-format msgid "%s %s differ: byte %s, line %s\n" msgstr "%s %s se liší: bajt %s, řádek %s\n" -#: src/cmp.c:523 +#: src/cmp.c:537 #, c-format msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n" msgstr "%s %s se liší: bajt %s, řádek %s je %3o %s %3o %s\n" -#: src/cmp.c:580 +#: src/cmp.c:594 #, c-format msgid "cmp: EOF on %s which is empty\n" msgstr "cmp: konec souboru v %s, který je prázdný\n" -#: src/cmp.c:594 +#: src/cmp.c:608 #, c-format msgid "cmp: EOF on %s after byte %s, line %s\n" msgstr "cmp: konec souboru v %s po bajtu %s, řádek %s\n" -#: src/cmp.c:595 +#: src/cmp.c:609 #, c-format msgid "cmp: EOF on %s after byte %s, in line %s\n" msgstr "cmp: konec souboru v %s po bajtu %s na řádku %s\n" -#: src/cmp.c:601 +#: src/cmp.c:615 #, c-format msgid "cmp: EOF on %s after byte %s\n" msgstr "cmp: konec souboru v %s po bajtu %s\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:51 +#: src/diff.c:50 msgid "Paul Eggert" msgstr "Paul Eggert" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:52 +#: src/diff.c:51 msgid "Mike Haertel" msgstr "Mike Haertel" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:53 +#: src/diff.c:52 msgid "David Hayes" msgstr "David Hayes" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:54 +#: src/diff.c:53 msgid "Richard Stallman" msgstr "Richard Stallman" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:55 +#: src/diff.c:54 msgid "Len Tower" msgstr "Len Tower" -#: src/diff.c:355 +#: src/diff.c:365 #, c-format msgid "invalid context length '%s'" msgstr "neplatná délka kontextu „%s“" -#: src/diff.c:438 +#: src/diff.c:487 #, c-format msgid "pagination not supported on this host" msgstr "přestránkování není na tomto počítači podporováno" -#: src/diff.c:453 src/diff3.c:341 +#: src/diff.c:502 src/diff3.c:348 #, c-format msgid "too many file label options" msgstr "příliÅ¡ mnoho přepínačů popisu souboru" -#: src/diff.c:530 +#: src/diff.c:579 #, c-format msgid "invalid width '%s'" msgstr "nesprávná délka „%s“" -#: src/diff.c:534 +#: src/diff.c:583 msgid "conflicting width options" msgstr "konfliktní volby šířky výstupu" -#: src/diff.c:559 +#: src/diff.c:608 #, c-format msgid "invalid horizon length '%s'" msgstr "neplatná výška obzoru „%s“" -#: src/diff.c:615 +#: src/diff.c:664 #, c-format msgid "invalid tabsize '%s'" msgstr "nesprávná hodnota --tabsize „%s“" -#: src/diff.c:619 +#: src/diff.c:668 msgid "conflicting tabsize options" msgstr "konfliktní přepínače tabsize" -#: src/diff.c:774 +#: src/diff.c:834 msgid "--from-file and --to-file both specified" msgstr "parametry --from-file i to-file použity najednou" -#: src/diff.c:893 +#: src/diff.c:953 msgid " --normal output a normal diff (the default)" msgstr " --normal normálním formát výstupu diff (výchozí)" -#: src/diff.c:894 +#: src/diff.c:954 msgid "-q, --brief report only when files differ" msgstr "-q --brief výstup pouze při rozdílných souborech" -#: src/diff.c:895 +#: src/diff.c:955 msgid "-s, --report-identical-files report when two files are the same" msgstr "-s --report-identical-files hlásí shodné soubory" -#: src/diff.c:896 +#: src/diff.c:956 msgid "" "-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context" msgstr "" @@ -734,7 +735,7 @@ msgstr "" " vypíše POČET (výchozí je 3) řádků\n" " kopírovaného kontextu" -#: src/diff.c:897 +#: src/diff.c:957 msgid "" "-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context" msgstr "" @@ -742,45 +743,45 @@ msgstr "" " vypíše POČET (výchozí je 3) řádků\n" " unifikovaného kontextu" -#: src/diff.c:898 +#: src/diff.c:958 msgid "-e, --ed output an ed script" msgstr "-e --ed vypíše skript pro ed" -#: src/diff.c:899 +#: src/diff.c:959 msgid "-n, --rcs output an RCS format diff" msgstr "-n --rcs vypíše rozdíl ve formátu RCS" -#: src/diff.c:900 +#: src/diff.c:960 msgid "-y, --side-by-side output in two columns" msgstr "-y, --side-by-side vypíše ve dvou sloupcích" -#: src/diff.c:901 +#: src/diff.c:961 msgid "" "-W, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-W, --width=POČET vypíše nejvýše POČET (výchozí je 130)\n" " tiskových sloupců" -#: src/diff.c:902 +#: src/diff.c:962 msgid "" " --left-column output only the left column of common lines" msgstr "" " --left-column vypíše pouze levý sloupec společných řádků" -#: src/diff.c:903 +#: src/diff.c:963 msgid " --suppress-common-lines do not output common lines" msgstr " --suppress-common-lines nevypisuje shodné řádky" -#: src/diff.c:905 +#: src/diff.c:965 msgid "-p, --show-c-function show which C function each change is in" msgstr "" "-p, --show-c-function ukáže, ve které funkci C se změna nachází" -#: src/diff.c:906 +#: src/diff.c:966 msgid "-F, --show-function-line=RE show the most recent line matching RE" msgstr "-F, --show-function-line=RV ukáže poslední řádek odpovídající RV" -#: src/diff.c:907 +#: src/diff.c:967 msgid "" " --label LABEL use LABEL instead of file name and timestamp\n" " (can be repeated)" @@ -789,84 +790,84 @@ msgstr "" "údaje\n" " (lze opakovat)" -#: src/diff.c:910 +#: src/diff.c:970 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "-t, --expand-tabs ve výstupu převede tabulátory na mezery" -#: src/diff.c:911 +#: src/diff.c:971 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "-T, --initial-tab na začátek řádků se vloží tabulátor" -#: src/diff.c:912 +#: src/diff.c:972 msgid "" " --tabsize=NUM tab stops every NUM (default 8) print columns" msgstr "" " --tabsize=POČET tabulátor zastavuje každých POČET\n" " (výchozí je 8) tiskových sloupců" -#: src/diff.c:913 +#: src/diff.c:973 msgid "" " --suppress-blank-empty suppress space or tab before empty output lines" msgstr "" " --suppress-blank-empty potlačí mezeru nebo tabulátor před prázdnými\n" "   řádky výstupu" -#: src/diff.c:914 +#: src/diff.c:974 msgid "-l, --paginate pass output through 'pr' to paginate it" msgstr "" "-l, --paginate výstup projde přes „pr“ pro přestránkování" -#: src/diff.c:916 +#: src/diff.c:976 msgid "" "-r, --recursive recursively compare any subdirectories found" msgstr "" "-r --recursive rekurzivně porovná vÅ¡echny nalezené " "podadresáře" -#: src/diff.c:917 +#: src/diff.c:977 msgid " --no-dereference don't follow symbolic links" msgstr " --no-dereference nenásleduje symbolické odkazy" -#: src/diff.c:918 +#: src/diff.c:978 msgid "-N, --new-file treat absent files as empty" msgstr "" "-N, --new-file neexistující soubory považuje za prázdné" -#: src/diff.c:919 +#: src/diff.c:979 msgid " --unidirectional-new-file treat absent first files as empty" msgstr "" " --unidirectional-new-file neexistující soubory z prvního adresáře\n" " považuje za prázdné" -#: src/diff.c:920 +#: src/diff.c:980 msgid " --ignore-file-name-case ignore case when comparing file names" msgstr "" " --ignore-file-name-case ignoruje velikost písmen v názvech souborů" -#: src/diff.c:921 +#: src/diff.c:981 msgid " --no-ignore-file-name-case consider case when comparing file names" msgstr "" " --no-ignore-file-name-case bere v potaz velikost písmen v názvech " "souborů" -#: src/diff.c:922 +#: src/diff.c:982 msgid "-x, --exclude=PAT exclude files that match PAT" msgstr "-x, --exclude=VZOR vynechá soubory odpovídající VZORU" -#: src/diff.c:923 +#: src/diff.c:983 msgid "" "-X, --exclude-from=FILE exclude files that match any pattern in FILE" msgstr "" "-X, --exclude-from=SOUBOR vynechá soubory, které odpovídají\n" " libovolnému vzoru ze SOUBORU" -#: src/diff.c:924 +#: src/diff.c:984 msgid "" "-S, --starting-file=FILE start with FILE when comparing directories" msgstr "" "-S, --starting-file=SOUBOR při porovnávání adresářů začne SOUBOREM" -#: src/diff.c:925 +#: src/diff.c:985 msgid "" " --from-file=FILE1 compare FILE1 to all operands;\n" " FILE1 can be a directory" @@ -874,7 +875,7 @@ msgstr "" " --from-file=SOUBOR1 porovná SOUBOR1 se vÅ¡emi operandy,\n" " SOUBOR1 může být adresář" -#: src/diff.c:927 +#: src/diff.c:987 msgid "" " --to-file=FILE2 compare all operands to FILE2;\n" " FILE2 can be a directory" @@ -882,77 +883,77 @@ msgstr "" " --to-file=SOUBOR2 porovná vÅ¡echny operandy se SOUBOREM2,\n" " SOUBOR2 může být adresář" -#: src/diff.c:930 +#: src/diff.c:990 msgid "" "-i, --ignore-case ignore case differences in file contents" msgstr "" "-i, --ignore-case ignoruje velikost písmen v obsahu souborů" -#: src/diff.c:931 +#: src/diff.c:991 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "-E, --ignore-tab-expansion ignoruje změny v odsazení tabulátorem" -#: src/diff.c:932 +#: src/diff.c:992 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "-Z, --ignore-trailing-space ignoruje bílá místa na konci řádku" -#: src/diff.c:933 +#: src/diff.c:993 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "-b, --ignore-space-change ignoruje změny v počtu bílých míst" -#: src/diff.c:934 +#: src/diff.c:994 msgid "-w, --ignore-all-space ignore all white space" msgstr "-w, --ignore-all-space ignoruje vÅ¡echna bílá místa" -#: src/diff.c:935 +#: src/diff.c:995 msgid "" "-B, --ignore-blank-lines ignore changes where lines are all blank" msgstr "" "-B, --ignore-blank-lines ignoruje změny v případě prázdných řádků" -#: src/diff.c:936 +#: src/diff.c:996 msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE" msgstr "" "-I, --ignore-matching-lines=RV ignoruje změny na vÅ¡ech řádcích\n" " odpovídajících RV" -#: src/diff.c:938 +#: src/diff.c:998 msgid "-a, --text treat all files as text" msgstr "-a, --text pokládá vÅ¡echny soubory za text" -#: src/diff.c:939 +#: src/diff.c:999 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr " --strip-trailing-cr odstraní ukončovací znak CR na vstupu" -#: src/diff.c:941 +#: src/diff.c:1001 msgid " --binary read and write data in binary mode" msgstr "" " --binary data čte a zapisuje data v binárním režimu" -#: src/diff.c:944 +#: src/diff.c:1004 msgid "" "-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs" msgstr "" "-D, --ifdef=NÁZEV vypíše sloučený soubor s rozdíly „#ifdef " "NÁZEV“" -#: src/diff.c:945 +#: src/diff.c:1005 msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT" msgstr "" " --GTYPE-group-format=GFMT formátuje vstupní skupiny GTYPE podle FMTS" -#: src/diff.c:946 +#: src/diff.c:1006 msgid " --line-format=LFMT format all input lines with LFMT" msgstr "" " --line-format=LFMT formátuje vÅ¡echny vstupní řádky podle LFMT" -#: src/diff.c:947 +#: src/diff.c:1007 msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT" msgstr "" " --LTYPE-line-format=LFMT formátuje vstupní řádky LTYPE podle LFMT" -#: src/diff.c:948 +#: src/diff.c:1008 msgid "" " These format options provide fine-grained control over the output\n" " of diff, generalizing -D/--ifdef." @@ -960,13 +961,13 @@ msgstr "" " Tyto formátovací přepínače poskytují jemnou kontrolu nad výstupem diffu\n" " a zobecňují -D/--ifdef." -#: src/diff.c:950 +#: src/diff.c:1010 msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'." msgstr "" " LTYPE je „old“ (starý), „new“ (nový) nebo „unchanged“ (nezměněn). GTYPE\n" " je LTYPE nebo „changed“ (změněn)." -#: src/diff.c:951 +#: src/diff.c:1011 msgid "" " GFMT (only) may contain:\n" " %< lines from FILE1\n" @@ -994,7 +995,7 @@ msgstr "" " M L+1\n" " %(A=B?T:E) pokud A se rovná B, tak T, jinak E" -#: src/diff.c:963 +#: src/diff.c:1023 msgid "" " LFMT (only) may contain:\n" " %L contents of line\n" @@ -1008,7 +1009,7 @@ msgstr "" "vstupního\n" " řádku" -#: src/diff.c:967 +#: src/diff.c:1027 msgid "" " Both GFMT and LFMT may contain:\n" " %% %\n" @@ -1022,24 +1023,24 @@ msgstr "" " %c'\\000' znak s osmičkovým kódem 000\n" " C znak C (ostatní znaky zastupují samy sebe)" -#: src/diff.c:973 +#: src/diff.c:1033 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "-d, --minimal pokusí se nalézt nejmenší sadu změn" -#: src/diff.c:974 +#: src/diff.c:1034 msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix" msgstr "" " --horizon-lines=POČET\n" " ponechá POČET shodných řádků předpony a přípony" -#: src/diff.c:975 +#: src/diff.c:1035 msgid "" " --speed-large-files assume large files and many scattered small changes" msgstr "" " --speed-large-files předpokládá velké soubory a mnoho rozptýlených\n" " drobných změn" -#: src/diff.c:976 +#: src/diff.c:1036 msgid "" " --color[=WHEN] color output; WHEN is 'never', 'always', or " "'auto';\n" @@ -1050,7 +1051,7 @@ msgstr "" " nebo „auto“ (výchozí); samotné --color znamená\n" " --color=auto" -#: src/diff.c:978 +#: src/diff.c:1038 msgid "" " --palette=PALETTE the colors to use when --color is active; PALETTE " "is\n" @@ -1060,113 +1061,113 @@ msgstr "" "PALETA\n" " je dvojtečkou oddělený seznam schopností terminfa" -#: src/diff.c:981 +#: src/diff.c:1041 msgid " --help display this help and exit" msgstr " --help zobrazí tuto nápovědu a skončí" -#: src/diff.c:982 +#: src/diff.c:1042 msgid "-v, --version output version information and exit" msgstr "-v, --version vypíše údaje o verzi a skončí" -#: src/diff.c:984 +#: src/diff.c:1044 msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'." msgstr "" "SOUBORY jsou „SOUBOR1 SOUBOR2“ nebo „ADRESÁŘ1 ADRESÁŘ2' nebo\n" "„ADRESÁŘ SOUBOR“ nebo „SOUBOR ADRESÁŘ“." -#: src/diff.c:985 +#: src/diff.c:1045 msgid "" "If --from-file or --to-file is given, there are no restrictions on FILE(s)." msgstr "" "Pokud je uveden --from-file nebo --to-file, pak nejsou u SOUBORÅ® žádná " "omezení." -#: src/diff.c:986 src/diff3.c:533 src/sdiff.c:220 +#: src/diff.c:1046 src/diff3.c:531 src/sdiff.c:219 msgid "If a FILE is '-', read standard input." msgstr "Pokud SOUBOR bude „-“, bude čten standardní vstup." -#: src/diff.c:996 +#: src/diff.c:1056 #, c-format msgid "Usage: %s [OPTION]... FILES\n" msgstr "Použití: %s [PŘEPÍNAČ]… SOUBORY\n" -#: src/diff.c:997 +#: src/diff.c:1057 msgid "Compare FILES line by line." msgstr "Porovnává SOUBORY řádek po řádku." -#: src/diff.c:1034 +#: src/diff.c:1094 #, c-format msgid "conflicting %s option value '%s'" msgstr "konfliktní hodnota „%2$s“ přepínače „%1$s“" -#: src/diff.c:1047 +#: src/diff.c:1107 #, c-format msgid "conflicting output style options" msgstr "konfliktní přepínače pro styl výstupu" -#: src/diff.c:1063 +#: src/diff.c:1123 #, c-format msgid "invalid color '%s'" msgstr "neplatná barva „%s“" -#: src/diff.c:1119 src/diff.c:1329 +#: src/diff.c:1197 src/diff.c:1401 #, c-format msgid "Only in %s: %s\n" msgstr "Pouze v %s: %s\n" -#: src/diff.c:1253 +#: src/diff.c:1325 msgid "cannot compare '-' to a directory" msgstr "„-“ s adresářem nelze porovnat" -#: src/diff.c:1288 +#: src/diff.c:1360 msgid "-D option not supported with directories" msgstr "-D přepínač nepodporuje práci s adresáři" -#: src/diff.c:1297 +#: src/diff.c:1369 #, c-format msgid "Common subdirectories: %s and %s\n" msgstr "Společné podadresáře: %s a %s\n" -#: src/diff.c:1339 src/diff.c:1389 +#: src/diff.c:1411 src/diff.c:1461 #, c-format msgid "File %s is a %s while file %s is a %s\n" msgstr "Soubor %s je %s zatímco soubor %s je %s\n" -#: src/diff.c:1375 +#: src/diff.c:1447 #, c-format msgid "Symbolic links %s and %s differ\n" msgstr "Symbolické odkazy %s a %s se liší\n" -#: src/diff.c:1462 +#: src/diff.c:1534 #, c-format msgid "Files %s and %s are identical\n" msgstr "Soubory %s a %s jsou identické\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff3.c:43 +#: src/diff3.c:51 msgid "Randy Smith" msgstr "Randy Smith" -#: src/diff3.c:356 +#: src/diff3.c:363 #, c-format msgid "incompatible options" msgstr "nekompatibilní přepínače" -#: src/diff3.c:396 +#: src/diff3.c:403 msgid "'-' specified for more than one input file" msgstr "„-“ zadáno pro více než jeden vstupní soubor" -#: src/diff3.c:447 src/diff3.c:1295 src/diff3.c:1698 src/diff3.c:1753 -#: src/sdiff.c:308 src/sdiff.c:846 src/sdiff.c:857 +#: src/diff3.c:445 src/diff3.c:1284 src/diff3.c:1683 src/diff3.c:1738 +#: src/sdiff.c:306 src/sdiff.c:843 src/sdiff.c:854 msgid "read failed" msgstr "čtení selhalo" -#: src/diff3.c:480 +#: src/diff3.c:478 msgid "-A, --show-all output all changes, bracketing conflicts" msgstr "" "-A, --show-all vypíše vÅ¡echny rozdíly, konflikty v závorkách" -#: src/diff3.c:482 +#: src/diff3.c:480 msgid "" "-e, --ed output ed script incorporating changes\n" " from OLDFILE to YOURFILE into MYFILE" @@ -1174,32 +1175,32 @@ msgstr "" "-e, --ed vypíše ed skript zahrnující změny mezi\n" " STARÝM_SOUBOREM a VAŠÍM_SOUBOREM do MÉHO_SOUBORU" -#: src/diff3.c:484 +#: src/diff3.c:482 msgid "-E, --show-overlap like -e, but bracket conflicts" msgstr "-E, --show-overlap jako -e, ale konflikty umístí do závorek" -#: src/diff3.c:485 +#: src/diff3.c:483 msgid "" "-3, --easy-only like -e, but incorporate only nonoverlapping " "changes" msgstr "" "-3, --easy-only jako -e, ale zahrne jen nepřekrývající se změny" -#: src/diff3.c:486 +#: src/diff3.c:484 msgid "" "-x, --overlap-only like -e, but incorporate only overlapping changes" msgstr "" "-x, --overlap-only jako -e, ale zahrne jen překrývající se změny" -#: src/diff3.c:487 +#: src/diff3.c:485 msgid "-X like -x, but bracket conflicts" msgstr "-X jako -x, ale konflikty umístí do závorek" -#: src/diff3.c:488 +#: src/diff3.c:486 msgid "-i append 'w' and 'q' commands to ed scripts" msgstr "-i přidá příkazy „w“ a „q“ do skriptů pro ed" -#: src/diff3.c:490 +#: src/diff3.c:488 msgid "" "-m, --merge output actual merged file, according to\n" " -A if no other options are given" @@ -1208,23 +1209,23 @@ msgstr "" "li\n" " uvedeny další přepínače" -#: src/diff3.c:493 +#: src/diff3.c:491 msgid "-a, --text treat all files as text" msgstr "-a, --text pokládá vÅ¡echny soubory za text" -#: src/diff3.c:494 +#: src/diff3.c:492 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr " --strip-trailing-cr odstraní ukončovací znak CR na vstupu" -#: src/diff3.c:495 +#: src/diff3.c:493 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "-T, --initial-tab na začátek řádků se vloží tabulátor" -#: src/diff3.c:496 +#: src/diff3.c:494 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr " --diff-program=PROGRAM použije PROGRAM k porovnání souborů" -#: src/diff3.c:497 +#: src/diff3.c:495 msgid "" "-L, --label=LABEL use LABEL instead of file name\n" " (can be repeated up to three times)" @@ -1232,24 +1233,24 @@ msgstr "" "-L, --label=NÁZEV použije NÁZEV namísto názvu souboru\n" " (lze opakovat až třikrát)" -#: src/diff3.c:500 +#: src/diff3.c:498 msgid " --help display this help and exit" msgstr " --help zobrazí tuto nápovědu a skončí" -#: src/diff3.c:501 +#: src/diff3.c:499 msgid "-v, --version output version information and exit" msgstr "-v, --version vypíše údaje o verzi a skončí" -#: src/diff3.c:510 +#: src/diff3.c:508 #, c-format msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n" msgstr "Použití: %s [PŘEPÍNAČ]… MÅ®J_SOUBOR STARÝ_SOUBOR VÁŠ_SOUBOR\n" -#: src/diff3.c:512 +#: src/diff3.c:510 msgid "Compare three files line by line." msgstr "Porovnání tří souborů řádek po řádku." -#: src/diff3.c:522 +#: src/diff3.c:520 msgid "" "\n" "The default output format is a somewhat human-readable representation of\n" @@ -1273,54 +1274,54 @@ msgstr "" "vlastní spojený soubor. V případě neobvyklého vstupu, je toto spolehlivější\n" "způsob než použití programu ed.\n" -#: src/diff3.c:534 +#: src/diff3.c:532 msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble." msgstr "Návratová hodnota je 0 při úspěchu, 1 při konfliktu a 2 při chybě." -#: src/diff3.c:727 +#: src/diff3.c:725 msgid "internal error: screwup in format of diff blocks" msgstr "vnitřní chyba: chyba ve formátu diff bloků" -#: src/diff3.c:1022 +#: src/diff3.c:1015 #, c-format msgid "%s: diff failed: " msgstr "%s: diff selhal: " -#: src/diff3.c:1044 +#: src/diff3.c:1037 msgid "internal error: invalid diff type in process_diff" msgstr "vnitřní chyba: nesprávný typ diffu v process_diff" -#: src/diff3.c:1069 +#: src/diff3.c:1060 msgid "invalid diff format; invalid change separator" msgstr "neplatný formát diff souboru; neplatný oddělovač změny" -#: src/diff3.c:1305 +#: src/diff3.c:1294 msgid "invalid diff format; incomplete last line" msgstr "neplatný formát diff souboru; nekompletní poslední řádek" -#: src/diff3.c:1329 src/sdiff.c:276 src/util.c:969 +#: src/diff3.c:1318 src/sdiff.c:274 src/util.c:1069 #, c-format msgid "subsidiary program '%s' could not be invoked" msgstr "pomocný program „%s“ nebylo možné zavolat" -#: src/diff3.c:1354 +#: src/diff3.c:1343 msgid "invalid diff format; incorrect leading line chars" msgstr "neplatný formát diff souboru; nesprávné úvodní znaky na řádku" -#: src/diff3.c:1427 +#: src/diff3.c:1416 msgid "internal error: invalid diff type passed to output" msgstr "vnitřní chyba: nesprávný typ diffu pro výstup" -#: src/diff3.c:1700 src/diff3.c:1757 +#: src/diff3.c:1685 src/diff3.c:1742 msgid "input file shrank" msgstr "vstupní soubor se zmenÅ¡il" -#: src/dir.c:156 +#: src/dir.c:154 #, c-format msgid "cannot compare file names '%s' and '%s'" msgstr "nelze porovnat názvy souborů „%s“ a „%s“" -#: src/dir.c:225 +#: src/dir.c:223 #, c-format msgid "%s: recursive directory loop" msgstr "%s: smyčka v rekurzi adresářů" @@ -1330,54 +1331,54 @@ msgstr "%s: smyčka v rekurzi adresářů" msgid "Thomas Lord" msgstr "Thomas Lord" -#: src/sdiff.c:174 +#: src/sdiff.c:173 msgid "" "-o, --output=FILE operate interactively, sending output to FILE" msgstr "" "-o, --output=SOUBOR interaktivní režim, výstup půjde do SOUBORU" -#: src/sdiff.c:176 +#: src/sdiff.c:175 msgid "" "-i, --ignore-case consider upper- and lower-case to be the same" msgstr "-i, --ignore-case nerozliÅ¡uje velká a malá písmena" -#: src/sdiff.c:177 +#: src/sdiff.c:176 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "-E, --ignore-tab-expansion ignoruje změny v odsazení tabulátorem" -#: src/sdiff.c:178 +#: src/sdiff.c:177 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "" "-Z, --ignore-trailing-space ignoruje vÅ¡echny bílé znaky na konci řádku" -#: src/sdiff.c:179 +#: src/sdiff.c:178 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "-b, --ignore-space-change ignoruje změny v počtu bílých znaků" -#: src/sdiff.c:180 +#: src/sdiff.c:179 msgid "-W, --ignore-all-space ignore all white space" msgstr "-W, --ignore-all-space ignoruje vÅ¡echny bílé znaky" -#: src/sdiff.c:181 +#: src/sdiff.c:180 msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank" msgstr "-B, --ignore-blank-lines ignoruje změny v případě prázdných řádků" -#: src/sdiff.c:182 +#: src/sdiff.c:181 msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE" msgstr "" "-I, --ignore-matching-lines=RV ignoruje změny na vÅ¡ech řádcích\n" " odpovídajících RV" -#: src/sdiff.c:183 +#: src/sdiff.c:182 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr " --strip-trailing-cr odstraní ukončovací znak CR na vstupu" -#: src/sdiff.c:184 +#: src/sdiff.c:183 msgid "-a, --text treat all files as text" msgstr "-a, --text pokládá vÅ¡echny soubory za text" -#: src/sdiff.c:186 +#: src/sdiff.c:185 msgid "" "-w, --width=NUM output at most NUM (default 130) print columns" msgstr "" @@ -1385,21 +1386,21 @@ msgstr "" "tiskových\n" " sloupců" -#: src/sdiff.c:187 +#: src/sdiff.c:186 msgid "" "-l, --left-column output only the left column of common lines" msgstr "" "-l, --left-column vypíše pouze levý sloupec společných řádků" -#: src/sdiff.c:188 +#: src/sdiff.c:187 msgid "-s, --suppress-common-lines do not output common lines" msgstr "-s, --suppress-common-lines nevypisuje společné řádky" -#: src/sdiff.c:190 +#: src/sdiff.c:189 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "-t, --expand-tabs ve výstupu převede tabulátory na mezery" -#: src/sdiff.c:191 +#: src/sdiff.c:190 msgid "" " --tabsize=NUM tab stops at every NUM (default 8) print columns" msgstr "" @@ -1407,47 +1408,47 @@ msgstr "" "8)\n" " tiskových sloupců" -#: src/sdiff.c:193 +#: src/sdiff.c:192 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "-d, --minimal pokusí se nalézt nejmenší sadu změn" -#: src/sdiff.c:194 +#: src/sdiff.c:193 msgid "" "-H, --speed-large-files assume large files, many scattered small changes" msgstr "" "-H, --speed-large-files předpokládá velké soubory a mnoho rozptýlených\n" " drobných změn" -#: src/sdiff.c:195 +#: src/sdiff.c:194 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr " --diff-program=PROGRAM použije PROGRAM k porovnání souborů" -#: src/sdiff.c:197 +#: src/sdiff.c:196 msgid " --help display this help and exit" msgstr " --help zobrazí tuto nápovědu a skončí" -#: src/sdiff.c:198 +#: src/sdiff.c:197 msgid "-v, --version output version information and exit" msgstr "-v, --version vypíše údaje o verzi a skončí" -#: src/sdiff.c:207 +#: src/sdiff.c:206 #, c-format msgid "Usage: %s [OPTION]... FILE1 FILE2\n" msgstr "Použití: %s [PŘEPÍNAČ]… SOUBOR1 SOUBOR2\n" -#: src/sdiff.c:209 +#: src/sdiff.c:208 msgid "Side-by-side merge of differences between FILE1 and FILE2." msgstr "Spojí změny mezi SOUBOREM1 a SOUBOREM2 v režimu „vedle sebe“." -#: src/sdiff.c:330 +#: src/sdiff.c:328 msgid "cannot interactively merge standard input" msgstr "interaktivně nelze standardní vstup sloučit" -#: src/sdiff.c:597 +#: src/sdiff.c:594 msgid "both files to be compared are directories" msgstr "oba soubory k porovnání jsou adresáři" -#: src/sdiff.c:820 +#: src/sdiff.c:817 msgid "" "ed:\tEdit then use both versions, each decorated with a header.\n" "eb:\tEdit then use both versions.\n" @@ -1471,12 +1472,12 @@ msgstr "" "v:\tUpozorní na vložení společných řádků.\n" "q:\tUkončení.\n" -#: src/util.c:662 +#: src/util.c:755 #, c-format msgid "unrecognized prefix: %s" msgstr "nerozpoznaná předpona: %s" -#: src/util.c:692 +#: src/util.c:785 #, c-format msgid "unparsable value for --palette" msgstr "nerozebratelná hodnota pro přepínač --pellete" diff --git a/po/da.po b/po/da.po index 6dcf725..1c5a211 100644 --- a/po/da.po +++ b/po/da.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: diffutils-3.5.25\n" "Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n" -"POT-Creation-Date: 2021-08-01 18:56-0700\n" +"POT-Creation-Date: 2023-05-21 01:51-0700\n" "PO-Revision-Date: 2017-11-14 14:26+0100\n" "Last-Translator: Ask Hjorth Larsen \n" "Language-Team: Danish \n" @@ -20,29 +20,29 @@ msgstr "" "X-Bugs: Report translation errors to the Language-Team address.\n" "X-Generator: KBabel 0.9.5\n" -#: lib/argmatch.c:132 +#: lib/argmatch.c:145 #, c-format msgid "invalid argument %s for %s" msgstr "ugyldigt argument %s til %s" -#: lib/argmatch.c:133 +#: lib/argmatch.c:146 #, c-format msgid "ambiguous argument %s for %s" msgstr "flertydigt argument %s til %s" -#: lib/argmatch.c:152 lib/argmatch.h:223 +#: lib/argmatch.c:165 lib/argmatch.h:242 msgid "Valid arguments are:" msgstr "Gyldige argumenter er:" -#: lib/c-stack.c:187 +#: lib/c-stack.c:186 msgid "program error" msgstr "programfejl" -#: lib/c-stack.c:188 +#: lib/c-stack.c:187 msgid "stack overflow" msgstr "stakoverløb" -#: lib/error.c:195 +#: lib/error.c:193 msgid "Unknown system error" msgstr "Ukendt systemfejl" @@ -199,83 +199,83 @@ msgstr "%s: tilvalg kræver et argument -- \"%c\"\n" #. If you don't know what to put here, please see #. #. and use glyphs suitable for your language. -#: lib/quotearg.c:355 +#: lib/quotearg.c:354 msgid "`" msgstr "\"" -#: lib/quotearg.c:356 +#: lib/quotearg.c:355 msgid "'" msgstr "\"" -#: lib/regcomp.c:135 +#: lib/regcomp.c:122 msgid "Success" msgstr "Succes" -#: lib/regcomp.c:138 +#: lib/regcomp.c:125 msgid "No match" msgstr "Ingen match" -#: lib/regcomp.c:141 +#: lib/regcomp.c:128 msgid "Invalid regular expression" msgstr "Ugyldigt regulært udtryk" -#: lib/regcomp.c:144 +#: lib/regcomp.c:131 msgid "Invalid collation character" msgstr "Ugyldig sammenlignings-tegn" -#: lib/regcomp.c:147 +#: lib/regcomp.c:134 msgid "Invalid character class name" msgstr "Ugyldigt navn pÃ¥ tegn-klasse" -#: lib/regcomp.c:150 +#: lib/regcomp.c:137 msgid "Trailing backslash" msgstr "Efterstillet backslash" -#: lib/regcomp.c:153 +#: lib/regcomp.c:140 msgid "Invalid back reference" msgstr "Ugyldig bagud-reference" -#: lib/regcomp.c:156 +#: lib/regcomp.c:143 msgid "Unmatched [, [^, [:, [., or [=" msgstr "Uparret [, [^, [:, [. eller [=" -#: lib/regcomp.c:159 +#: lib/regcomp.c:146 msgid "Unmatched ( or \\(" msgstr "Uparret ( eller \\(" -#: lib/regcomp.c:162 +#: lib/regcomp.c:149 msgid "Unmatched \\{" msgstr "Uparret \\{" -#: lib/regcomp.c:165 +#: lib/regcomp.c:152 msgid "Invalid content of \\{\\}" msgstr "Ugyldigt indhold af \\{\\}" -#: lib/regcomp.c:168 +#: lib/regcomp.c:155 msgid "Invalid range end" msgstr "Ugyldig omrÃ¥de-afslutning" -#: lib/regcomp.c:171 +#: lib/regcomp.c:158 msgid "Memory exhausted" msgstr "Hukommelse opbrugt" -#: lib/regcomp.c:174 +#: lib/regcomp.c:161 msgid "Invalid preceding regular expression" msgstr "Ugyldigt foranstillet regulært udtryk" -#: lib/regcomp.c:177 +#: lib/regcomp.c:164 msgid "Premature end of regular expression" msgstr "For tidlig afslutning pÃ¥ regulært udtryk" -#: lib/regcomp.c:180 +#: lib/regcomp.c:167 msgid "Regular expression too big" msgstr "For stort regulært udtryk" -#: lib/regcomp.c:183 +#: lib/regcomp.c:170 msgid "Unmatched ) or \\)" msgstr "Uparret ) eller \\)" -#: lib/regcomp.c:676 +#: lib/regcomp.c:650 msgid "No previous regular expression" msgstr "Intet foranstillet regulært udtryk" @@ -476,17 +476,17 @@ msgstr "Hjemmeside for %s: <%s>\n" msgid "General help using GNU software: <%s>\n" msgstr "Generel hjælp til GNU-programmer: \n" -#: src/analyze.c:454 src/diff.c:1406 +#: src/analyze.c:455 src/diff.c:1478 #, c-format msgid "Files %s and %s differ\n" msgstr "Filerne %s og %s er forskellige\n" -#: src/analyze.c:455 +#: src/analyze.c:456 #, c-format msgid "Binary files %s and %s differ\n" msgstr "Binære filer %s og %s er forskellige\n" -#: src/analyze.c:706 src/diff3.c:1470 src/util.c:1254 +#: src/analyze.c:707 src/diff3.c:1457 src/util.c:1354 msgid "No newline at end of file" msgstr "Intet linjeskift ved filafslutning" @@ -500,41 +500,42 @@ msgstr "Torbjörn Granlund" msgid "David MacKenzie" msgstr "David MacKenzie" -#: src/cmp.c:120 src/diff.c:879 src/diff3.c:467 src/sdiff.c:160 +#: src/cmp.c:124 src/diff.c:939 src/diff3.c:465 src/sdiff.c:159 #, c-format msgid "Try '%s --help' for more information." msgstr "Prøv \"%s --help\" for mere information." -#: src/cmp.c:138 +#: src/cmp.c:142 #, c-format msgid "invalid --ignore-initial value '%s'" msgstr "ugyldig værdi \"%s\" for --ignore-initial" -#: src/cmp.c:148 +#: src/cmp.c:152 #, c-format msgid "options -l and -s are incompatible" msgstr "tilvalgene -l og -s er inkompatible" -#: src/cmp.c:156 src/diff.c:887 src/diff3.c:474 src/sdiff.c:168 src/sdiff.c:316 -#: src/sdiff.c:323 src/sdiff.c:876 src/util.c:852 src/util.c:952 src/util.c:959 +#: src/cmp.c:160 src/diff.c:947 src/diff3.c:472 src/sdiff.c:167 src/sdiff.c:314 +#: src/sdiff.c:321 src/sdiff.c:873 src/util.c:952 src/util.c:1052 +#: src/util.c:1059 msgid "write failed" msgstr "skrivning mislykkedes" -#: src/cmp.c:158 src/diff.c:889 src/diff.c:1471 src/diff3.c:476 src/sdiff.c:170 +#: src/cmp.c:162 src/diff.c:949 src/diff.c:1543 src/diff3.c:474 src/sdiff.c:169 msgid "standard output" msgstr "standard-ud" -#: src/cmp.c:162 +#: src/cmp.c:166 msgid "-b, --print-bytes print differing bytes" msgstr "-b, --print-bytes vis afvigende byte" -#: src/cmp.c:163 +#: src/cmp.c:167 msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs" msgstr "" "-i, --ignore-initial=SPRING spring de første SPRING byte over i begge\n" " input" -#: src/cmp.c:164 +#: src/cmp.c:168 msgid "" "-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n" " first SKIP2 bytes of FILE2" @@ -543,39 +544,39 @@ msgstr "" "og\n" " SPRING2 byte af FIL2 over" -#: src/cmp.c:166 +#: src/cmp.c:170 msgid "" "-l, --verbose output byte numbers and differing byte values" msgstr "" "-l, --verbose vis numre og værdier for de byte, der er " "forskellige" -#: src/cmp.c:167 +#: src/cmp.c:171 msgid "-n, --bytes=LIMIT compare at most LIMIT bytes" msgstr "-n, --bytes=GRÆNSE sammenlign højst GRÆNSE byte" -#: src/cmp.c:168 +#: src/cmp.c:172 msgid "-s, --quiet, --silent suppress all normal output" msgstr "-s, --quiet, --silent undertryk al normal udskrift" -#: src/cmp.c:169 +#: src/cmp.c:173 msgid " --help display this help and exit" msgstr " --help vis denne hjælpetekst og afslut" -#: src/cmp.c:170 +#: src/cmp.c:174 msgid "-v, --version output version information and exit" msgstr "-v, --version vis versionsoplysninger og afslut" -#: src/cmp.c:179 +#: src/cmp.c:183 #, c-format msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n" msgstr "Brug: %s [TILVALG]... FIL1 [FIL2 [SPRING1 [SPRING2]]]\n" -#: src/cmp.c:181 +#: src/cmp.c:185 msgid "Compare two files byte by byte." msgstr "Sammenlign to filer byte for byte." -#: src/cmp.c:183 +#: src/cmp.c:187 msgid "" "The optional SKIP1 and SKIP2 specify the number of bytes to skip\n" "at the beginning of each file (zero by default)." @@ -583,14 +584,14 @@ msgstr "" "De valgfri SPRING1 og SPRING2 angiver antallet af byte, der skal springes\n" "over ved begyndelsen af hver fil (normalt 0)." -#: src/cmp.c:186 src/diff.c:999 src/diff3.c:514 src/sdiff.c:211 +#: src/cmp.c:190 src/diff.c:1059 src/diff3.c:512 src/sdiff.c:210 msgid "" "Mandatory arguments to long options are mandatory for short options too.\n" msgstr "" "Obligatoriske argumenter til lange tilvalg er ogsÃ¥ obligatoriske til de " "korte.\n" -#: src/cmp.c:192 +#: src/cmp.c:196 msgid "" "SKIP values may be followed by the following multiplicative suffixes:\n" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" @@ -600,140 +601,140 @@ msgstr "" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" "GB 1,000,000,000, G 1,073,741,824, og sÃ¥ videre for T, P, E, Z, Y." -#: src/cmp.c:195 +#: src/cmp.c:199 msgid "If a FILE is '-' or missing, read standard input." msgstr "SÃ¥fremt en FIL er \"-\" eller mangler, læses fra standard-ind." -#: src/cmp.c:196 src/diff.c:987 src/sdiff.c:221 +#: src/cmp.c:200 src/diff.c:1047 src/sdiff.c:220 msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble." msgstr "" "Slutstatus er 0 hvis inddata er ens, 1 hvis ikke, og 2 hvis der er problemer." -#: src/cmp.c:243 +#: src/cmp.c:247 #, c-format msgid "invalid --bytes value '%s'" msgstr "ugyldig værdi \"%s\" for --bytes" -#: src/cmp.c:269 src/diff.c:797 src/diff3.c:361 src/sdiff.c:567 +#: src/cmp.c:273 src/diff.c:857 src/diff3.c:368 src/sdiff.c:564 #, c-format msgid "missing operand after '%s'" msgstr "manglende operand efter \"%s\"" -#: src/cmp.c:281 src/diff.c:799 src/diff3.c:363 src/sdiff.c:569 +#: src/cmp.c:285 src/diff.c:859 src/diff3.c:370 src/sdiff.c:566 #, c-format msgid "extra operand '%s'" msgstr "ekstra operand \"%s\"" -#: src/cmp.c:507 +#: src/cmp.c:521 #, c-format msgid "%s %s differ: byte %s, line %s\n" msgstr "%s %s afviger: byte %s, linje %s\n" -#: src/cmp.c:523 +#: src/cmp.c:537 #, c-format msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n" msgstr "%s %s afviger: tegn %s, linje %s er %3o %s %3o %s\n" -#: src/cmp.c:580 +#: src/cmp.c:594 #, c-format msgid "cmp: EOF on %s which is empty\n" msgstr "cmp: filafslutning pÃ¥ %s som er tom\n" -#: src/cmp.c:594 +#: src/cmp.c:608 #, c-format msgid "cmp: EOF on %s after byte %s, line %s\n" msgstr "cmp: filafslutning pÃ¥ %s efter byte %s, linje %s\n" -#: src/cmp.c:595 +#: src/cmp.c:609 #, c-format msgid "cmp: EOF on %s after byte %s, in line %s\n" msgstr "cmp: filafslutning pÃ¥ %s efter byte %s i linje %s\n" -#: src/cmp.c:601 +#: src/cmp.c:615 #, c-format msgid "cmp: EOF on %s after byte %s\n" msgstr "cmp: filafslutning pÃ¥ %s efter byte %s\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:51 +#: src/diff.c:50 msgid "Paul Eggert" msgstr "Paul Eggert" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:52 +#: src/diff.c:51 msgid "Mike Haertel" msgstr "Mike Haertel" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:53 +#: src/diff.c:52 msgid "David Hayes" msgstr "David Hayes" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:54 +#: src/diff.c:53 msgid "Richard Stallman" msgstr "Richard Stallman" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:55 +#: src/diff.c:54 msgid "Len Tower" msgstr "Len Tower" -#: src/diff.c:355 +#: src/diff.c:365 #, c-format msgid "invalid context length '%s'" msgstr "ugyldig kontekstlængde \"%s\"" -#: src/diff.c:438 +#: src/diff.c:487 #, c-format msgid "pagination not supported on this host" msgstr "paginering understøttes ikke af denne vært" -#: src/diff.c:453 src/diff3.c:341 +#: src/diff.c:502 src/diff3.c:348 #, c-format msgid "too many file label options" msgstr "for mange fil-mærke tilvalg" -#: src/diff.c:530 +#: src/diff.c:579 #, c-format msgid "invalid width '%s'" msgstr "ugyldig bredde \"%s\"" -#: src/diff.c:534 +#: src/diff.c:583 msgid "conflicting width options" msgstr "modstridende breddeangivelser" -#: src/diff.c:559 +#: src/diff.c:608 #, c-format msgid "invalid horizon length '%s'" msgstr "ugyldig horisontlængde \"%s\"" -#: src/diff.c:615 +#: src/diff.c:664 #, c-format msgid "invalid tabsize '%s'" msgstr "ugyldig tabulatorbredde \"%s\"" -#: src/diff.c:619 +#: src/diff.c:668 msgid "conflicting tabsize options" msgstr "modstridende angivelser af tabulatorbredde" -#: src/diff.c:774 +#: src/diff.c:834 msgid "--from-file and --to-file both specified" msgstr "bÃ¥de --from-file og --to-file er angivet" -#: src/diff.c:893 +#: src/diff.c:953 msgid " --normal output a normal diff (the default)" msgstr " --normal udskriv en almindelig diff (forvalg)" -#: src/diff.c:894 +#: src/diff.c:954 msgid "-q, --brief report only when files differ" msgstr "-q, --brief angiv kun nÃ¥r filerne er forskellige" -#: src/diff.c:895 +#: src/diff.c:955 msgid "-s, --report-identical-files report when two files are the same" msgstr "-s, --report-identical-files rapportér hvis to filer er ens" -#: src/diff.c:896 +#: src/diff.c:956 msgid "" "-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context" msgstr "" @@ -741,50 +742,50 @@ msgstr "" "kopieret\n" " kontekst" -#: src/diff.c:897 +#: src/diff.c:957 msgid "" "-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context" msgstr "" "-u, -U ANTAL, --unified[=ANTAL] Udskriv højst ANTAL (normalt 3) linjer\n" " forenet kontekst" -#: src/diff.c:898 +#: src/diff.c:958 msgid "-e, --ed output an ed script" msgstr "-e, --ed udskriv et ed-script" -#: src/diff.c:899 +#: src/diff.c:959 msgid "-n, --rcs output an RCS format diff" msgstr "-n, --rcs udskriv en diff i RCS-format" -#: src/diff.c:900 +#: src/diff.c:960 msgid "-y, --side-by-side output in two columns" msgstr "-y, --side-by-side udskriv i to kolonner" -#: src/diff.c:901 +#: src/diff.c:961 msgid "" "-W, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-W, --width=ANTAL udskriv højst ANTAL (normalt 130) kolonner" -#: src/diff.c:902 +#: src/diff.c:962 msgid "" " --left-column output only the left column of common lines" msgstr "" " --left-column udskriv kun venstre kolonne i fælles linjer" -#: src/diff.c:903 +#: src/diff.c:963 msgid " --suppress-common-lines do not output common lines" msgstr " --suppress-common-lines udskriv ikke fælles linjer" -#: src/diff.c:905 +#: src/diff.c:965 msgid "-p, --show-c-function show which C function each change is in" msgstr "-p, --show-c-function vis hvilken C-funktion hver ændring er i" -#: src/diff.c:906 +#: src/diff.c:966 msgid "-F, --show-function-line=RE show the most recent line matching RE" msgstr "-F, --show-function-line=RE vis den seneste linje der matcher RE" -#: src/diff.c:907 +#: src/diff.c:967 msgid "" " --label LABEL use LABEL instead of file name and timestamp\n" " (can be repeated)" @@ -792,88 +793,88 @@ msgstr "" " --label MÆRKAT brug MÆRKAT frem for filnavn og tidsstempel\n" " (kan gentages)" -#: src/diff.c:910 +#: src/diff.c:970 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "" "-t, --expand-tabs lav tabulatorer om til mellemrum i udskrift" -#: src/diff.c:911 +#: src/diff.c:971 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T, --initial-tab fÃ¥ tabulatorer pÃ¥ linje ved at forudstille en\n" " tabulator" -#: src/diff.c:912 +#: src/diff.c:972 msgid "" " --tabsize=NUM tab stops every NUM (default 8) print columns" msgstr "" " --tabsize=ANTAL tabulatorstop for hver ANTAL (normalt 8) " "kolonner" -#: src/diff.c:913 +#: src/diff.c:973 msgid "" " --suppress-blank-empty suppress space or tab before empty output lines" msgstr "" " --suppress-blank-empty intet mellemrum eller tabulator før tomme\n" " ud-linjer" -#: src/diff.c:914 +#: src/diff.c:974 msgid "-l, --paginate pass output through 'pr' to paginate it" msgstr "" "-l, --paginate led uddata gennem \"pr\" for at sideinddele det" -#: src/diff.c:916 +#: src/diff.c:976 msgid "" "-r, --recursive recursively compare any subdirectories found" msgstr "" "-r, --recursive sammenlign alle fundne underkataloger " "rekursivt" -#: src/diff.c:917 +#: src/diff.c:977 msgid " --no-dereference don't follow symbolic links" msgstr " --no-dereference følg ikke symbolske lænker" -#: src/diff.c:918 +#: src/diff.c:978 msgid "-N, --new-file treat absent files as empty" msgstr "" "-N, --new-file behandl manglende filer som var de tomme" -#: src/diff.c:919 +#: src/diff.c:979 msgid " --unidirectional-new-file treat absent first files as empty" msgstr "" " --unidirectional-new-file behandl manglende førstefiler som var de " "tomme" -#: src/diff.c:920 +#: src/diff.c:980 msgid " --ignore-file-name-case ignore case when comparing file names" msgstr "" " --ignore-file-name-case ingen forskel pÃ¥ store og smÃ¥ bogstaver ved\n" " sammenligning af filnavne" -#: src/diff.c:921 +#: src/diff.c:981 msgid " --no-ignore-file-name-case consider case when comparing file names" msgstr "" " --no-ignore-file-name-case skeln mellem store og smÃ¥ bogstaver ved\n" " sammenligning af filnavne" -#: src/diff.c:922 +#: src/diff.c:982 msgid "-x, --exclude=PAT exclude files that match PAT" msgstr "-x, --exclude=MØNSTER udelad filer, det matcher MØNSTER" -#: src/diff.c:923 +#: src/diff.c:983 msgid "" "-X, --exclude-from=FILE exclude files that match any pattern in FILE" msgstr "" "-X, --exclude-from=FIL udelad filer, der matcher ethvert mønster i " "FIL" -#: src/diff.c:924 +#: src/diff.c:984 msgid "" "-S, --starting-file=FILE start with FILE when comparing directories" msgstr "" "-S, --starting-file=FIL start med FIL, nÃ¥r der sammenlignes kataloger" -#: src/diff.c:925 +#: src/diff.c:985 msgid "" " --from-file=FILE1 compare FILE1 to all operands;\n" " FILE1 can be a directory" @@ -881,7 +882,7 @@ msgstr "" " --from-file=FIL1 sammenlign FIL1 med alle operander; FIL1 mÃ¥\n" " godt være et katalog" -#: src/diff.c:927 +#: src/diff.c:987 msgid "" " --to-file=FILE2 compare all operands to FILE2;\n" " FILE2 can be a directory" @@ -890,75 +891,75 @@ msgstr "" "mÃ¥\n" " godt være et katalog" -#: src/diff.c:930 +#: src/diff.c:990 msgid "" "-i, --ignore-case ignore case differences in file contents" msgstr "-i, --ignore-case ignorér versalforskelle i filindhold" -#: src/diff.c:931 +#: src/diff.c:991 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E, --ignore-tab-expansion ignorér ændringer der skyldes\n" " tabulatoromsætning" -#: src/diff.c:932 +#: src/diff.c:992 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "" "-Z, --ignore-trailing-space ignorér blanke tegn ved linjens afslutning" -#: src/diff.c:933 +#: src/diff.c:993 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "" "-b, --ignore-space-change ignorér ændringer i mængden af blanke tegn" -#: src/diff.c:934 +#: src/diff.c:994 msgid "-w, --ignore-all-space ignore all white space" msgstr "-w, --ignore-all-space ignorér alle blanke tegn" -#: src/diff.c:935 +#: src/diff.c:995 msgid "" "-B, --ignore-blank-lines ignore changes where lines are all blank" msgstr "-B, --ignore-blank-lines ignorér ændringer med kun tomme linjer" -#: src/diff.c:936 +#: src/diff.c:996 msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE" msgstr "" "-I, --ignore-matching-lines=MØNSTER ignorér ændringer, hvis linjer alle\n" " matcher MØNSTER" -#: src/diff.c:938 +#: src/diff.c:998 msgid "-a, --text treat all files as text" msgstr "-a, --text behandl alle filer som tekst" -#: src/diff.c:939 +#: src/diff.c:999 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr " --strip-trailing-cr fjern afsluttende vognretur i inddata" -#: src/diff.c:941 +#: src/diff.c:1001 msgid " --binary read and write data in binary mode" msgstr " --binary læs og skriv data binært" -#: src/diff.c:944 +#: src/diff.c:1004 msgid "" "-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs" msgstr "" "-D, --ifdef=NAVN udskriv flettet fil med \"#ifdef NAVN\"-" "differ" -#: src/diff.c:945 +#: src/diff.c:1005 msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT" msgstr " --GTYPE-group-format=GFMT formatér GTYPE-inputgrupper med GFMT" -#: src/diff.c:946 +#: src/diff.c:1006 msgid " --line-format=LFMT format all input lines with LFMT" msgstr " --line-format=LFMT formatér alle inputlinjer med LFMT" -#: src/diff.c:947 +#: src/diff.c:1007 msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT" msgstr " --LTYPE-line-format=LFMT formatér LTYPE-inputlinjer med LFMT" -#: src/diff.c:948 +#: src/diff.c:1008 msgid "" " These format options provide fine-grained control over the output\n" " of diff, generalizing -D/--ifdef." @@ -966,7 +967,7 @@ msgstr "" " Disse formattilvalg giver finkontrol over udskriften af diff, og\n" " generaliserer -D/--ifdef." -#: src/diff.c:950 +#: src/diff.c:1010 msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'." msgstr "" " LTYPE er \"old\" (gammel), \"new\" (ny) eller \"unchanged\" (uændret).\n" @@ -974,7 +975,7 @@ msgstr "" # hvad er PREC? Det stÃ¥r ingen steder i filen. PRÆC blev brugt i tidligere # oversættelse, sÃ¥ beholder. -Ask -#: src/diff.c:951 +#: src/diff.c:1011 msgid "" " GFMT (only) may contain:\n" " %< lines from FILE1\n" @@ -1004,7 +1005,7 @@ msgstr "" " M L+1\n" " %(A=B?T:E) hvis A lig med B sÃ¥ T, ellers E" -#: src/diff.c:963 +#: src/diff.c:1023 msgid "" " LFMT (only) may contain:\n" " %L contents of line\n" @@ -1016,7 +1017,7 @@ msgstr "" " %l indhold af linje, undtagen eventuelt følgende linjeskift\n" " %[-][BREDDE][.[PRÆC]]{doxX}n printf-angivelse for inputlinjenummer" -#: src/diff.c:967 +#: src/diff.c:1027 msgid "" " Both GFMT and LFMT may contain:\n" " %% %\n" @@ -1030,24 +1031,24 @@ msgstr "" " %c'\\OOO' tegnet med oktalkode OOO\n" " C tegnet C (andre tegn repræsenterer sig selv)" -#: src/diff.c:973 +#: src/diff.c:1033 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "" "-d, --minimal grundigt forsøg pÃ¥ at finde et mindre antal " "ændringer" -#: src/diff.c:974 +#: src/diff.c:1034 msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix" msgstr "" " --horizon-lines=ANTAL behold ANTAL linjer af fælles præfiks og suffiks" -#: src/diff.c:975 +#: src/diff.c:1035 msgid "" " --speed-large-files assume large files and many scattered small changes" msgstr "" " --speed-large-files antag store filer og mange spredte, smÃ¥ ændringer" -#: src/diff.c:976 +#: src/diff.c:1036 #, fuzzy msgid "" " --color[=WHEN] color output; WHEN is 'never', 'always', or " @@ -1058,7 +1059,7 @@ msgstr "" "\"always\"\n" " eller \"auto\" (standard)" -#: src/diff.c:978 +#: src/diff.c:1038 msgid "" " --palette=PALETTE the colors to use when --color is active; PALETTE " "is\n" @@ -1068,114 +1069,114 @@ msgstr "" "er\n" " en kolon-adskilt liste af terminfo-egenskaber" -#: src/diff.c:981 +#: src/diff.c:1041 msgid " --help display this help and exit" msgstr " --help vis denne hjælpetekst og afslut" -#: src/diff.c:982 +#: src/diff.c:1042 msgid "-v, --version output version information and exit" msgstr "-v, --version vis versionsoplysninger og afslut" -#: src/diff.c:984 +#: src/diff.c:1044 msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'." msgstr "" "FILER er \"FIL1 FIL2\" eller \"KATALOG1 KATALOG2\" eller \"KATALOG FIL\" " "eller \"FIL KATALOG\"." -#: src/diff.c:985 +#: src/diff.c:1045 msgid "" "If --from-file or --to-file is given, there are no restrictions on FILE(s)." msgstr "" "Hvis --from-file eller --to-file er givet, er der ingen restriktioner pÃ¥ " "FILer." -#: src/diff.c:986 src/diff3.c:533 src/sdiff.c:220 +#: src/diff.c:1046 src/diff3.c:531 src/sdiff.c:219 msgid "If a FILE is '-', read standard input." msgstr "SÃ¥fremt en FIL er \"-\", læses fra standard-ind." -#: src/diff.c:996 +#: src/diff.c:1056 #, c-format msgid "Usage: %s [OPTION]... FILES\n" msgstr "Brug: %s [TILVALG]... FILER\n" -#: src/diff.c:997 +#: src/diff.c:1057 msgid "Compare FILES line by line." msgstr "Sammenlign filer linjevis." -#: src/diff.c:1034 +#: src/diff.c:1094 #, c-format msgid "conflicting %s option value '%s'" msgstr "modstridende værdi for %s-tilvalget: \"%s\"" -#: src/diff.c:1047 +#: src/diff.c:1107 #, c-format msgid "conflicting output style options" msgstr "modstridende valg af uddata-stil" -#: src/diff.c:1063 +#: src/diff.c:1123 #, c-format msgid "invalid color '%s'" msgstr "ugyldig farve \"%s\"" -#: src/diff.c:1119 src/diff.c:1329 +#: src/diff.c:1197 src/diff.c:1401 #, c-format msgid "Only in %s: %s\n" msgstr "Kun i %s: %s\n" -#: src/diff.c:1253 +#: src/diff.c:1325 msgid "cannot compare '-' to a directory" msgstr "kan ikke sammenligne \"-\" med et katalog" -#: src/diff.c:1288 +#: src/diff.c:1360 msgid "-D option not supported with directories" msgstr "-D tilvalg understøttes ikke for kataloger" -#: src/diff.c:1297 +#: src/diff.c:1369 #, c-format msgid "Common subdirectories: %s and %s\n" msgstr "Identiske underkataloger: %s og %s\n" -#: src/diff.c:1339 src/diff.c:1389 +#: src/diff.c:1411 src/diff.c:1461 #, c-format msgid "File %s is a %s while file %s is a %s\n" msgstr "Filen %s er en %s mens filen %s er en %s\n" -#: src/diff.c:1375 +#: src/diff.c:1447 #, c-format msgid "Symbolic links %s and %s differ\n" msgstr "De symbolske lænker %s og %s er forskellige\n" -#: src/diff.c:1462 +#: src/diff.c:1534 #, c-format msgid "Files %s and %s are identical\n" msgstr "Filerne %s og %s er identiske\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff3.c:43 +#: src/diff3.c:51 msgid "Randy Smith" msgstr "Randy Smith" -#: src/diff3.c:356 +#: src/diff3.c:363 #, c-format msgid "incompatible options" msgstr "inkompatible tilvalg" -#: src/diff3.c:396 +#: src/diff3.c:403 msgid "'-' specified for more than one input file" msgstr "\"-\" angivet for mere end én ind-fil" -#: src/diff3.c:447 src/diff3.c:1295 src/diff3.c:1698 src/diff3.c:1753 -#: src/sdiff.c:308 src/sdiff.c:846 src/sdiff.c:857 +#: src/diff3.c:445 src/diff3.c:1284 src/diff3.c:1683 src/diff3.c:1738 +#: src/sdiff.c:306 src/sdiff.c:843 src/sdiff.c:854 msgid "read failed" msgstr "læsning mislykkedes" -#: src/diff3.c:480 +#: src/diff3.c:478 msgid "-A, --show-all output all changes, bracketing conflicts" msgstr "" "-A, --show-all udskriv alle ændringer, med konflikter i " "parenteser" -#: src/diff3.c:482 +#: src/diff3.c:480 msgid "" "-e, --ed output ed script incorporating changes\n" " from OLDFILE to YOURFILE into MYFILE" @@ -1183,11 +1184,11 @@ msgstr "" "-e, --ed udskriv et ed-script som udfører ændringerne\n" " fra GAMMELFIL til DINFIL ind i MINFIL" -#: src/diff3.c:484 +#: src/diff3.c:482 msgid "-E, --show-overlap like -e, but bracket conflicts" msgstr "-E, --show-overlap som -e, men sæt konflikter i parentes" -#: src/diff3.c:485 +#: src/diff3.c:483 msgid "" "-3, --easy-only like -e, but incorporate only nonoverlapping " "changes" @@ -1195,22 +1196,22 @@ msgstr "" "-3, --easy-only som -e, men inkludér kun ikke-overlappende " "ændringer" -#: src/diff3.c:486 +#: src/diff3.c:484 msgid "" "-x, --overlap-only like -e, but incorporate only overlapping changes" msgstr "" "-x, --overlap-only som -e, men inkludér kun overlappende ændringer" -#: src/diff3.c:487 +#: src/diff3.c:485 msgid "-X like -x, but bracket conflicts" msgstr "-X som -x, men sæt konflikter i parenteser" -#: src/diff3.c:488 +#: src/diff3.c:486 msgid "-i append 'w' and 'q' commands to ed scripts" msgstr "" "-i tilføj \"w\" og \"q\"-kommandoer til ed-script" -#: src/diff3.c:490 +#: src/diff3.c:488 msgid "" "-m, --merge output actual merged file, according to\n" " -A if no other options are given" @@ -1218,25 +1219,25 @@ msgstr "" "-m, --merge udskriv faktisk flettet fil ifølge -A\n" " hvis ingen andre tilvalg er givet" -#: src/diff3.c:493 +#: src/diff3.c:491 msgid "-a, --text treat all files as text" msgstr "-a, --text behandl alle filer som tekst" -#: src/diff3.c:494 +#: src/diff3.c:492 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr " --strip-trailing-cr fjern afsluttende vognretur i inddata" -#: src/diff3.c:495 +#: src/diff3.c:493 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T, --initial-tab fÃ¥ tabulatorer pÃ¥ linje ved at forudstille\n" " en tabulator" -#: src/diff3.c:496 +#: src/diff3.c:494 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr " --diff-program=PROGRAM brug PROGRAM til at sammenligne filerne" -#: src/diff3.c:497 +#: src/diff3.c:495 msgid "" "-L, --label=LABEL use LABEL instead of file name\n" " (can be repeated up to three times)" @@ -1244,24 +1245,24 @@ msgstr "" "-L, --label=MÆRKAT brug MÆRKAT frem for filnavn\n" " (kan gentages op til tre gange)" -#: src/diff3.c:500 +#: src/diff3.c:498 msgid " --help display this help and exit" msgstr " --help vis denne hjælpetekst og afslut" -#: src/diff3.c:501 +#: src/diff3.c:499 msgid "-v, --version output version information and exit" msgstr "-v, --version vis versionsoplysninger og afslut" -#: src/diff3.c:510 +#: src/diff3.c:508 #, c-format msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n" msgstr "Brug: %s [TILVALG]... MINFIL GAMMELFIL DINFIL\n" -#: src/diff3.c:512 +#: src/diff3.c:510 msgid "Compare three files line by line." msgstr "Sammenlign tre filer linje for linje." -#: src/diff3.c:522 +#: src/diff3.c:520 msgid "" "\n" "The default output format is a somewhat human-readable representation of\n" @@ -1287,56 +1288,56 @@ msgstr "" "end\n" "med ed.\n" -#: src/diff3.c:534 +#: src/diff3.c:532 msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble." msgstr "" "Slutstatus er 0 hvis succes, 1 hvis der er konflikter, 2 hvis der er " "problemer." -#: src/diff3.c:727 +#: src/diff3.c:725 msgid "internal error: screwup in format of diff blocks" msgstr "intern fejl: rod i formatet pÃ¥ diff blokke" -#: src/diff3.c:1022 +#: src/diff3.c:1015 #, c-format msgid "%s: diff failed: " msgstr "%s: diff fejlede: " -#: src/diff3.c:1044 +#: src/diff3.c:1037 msgid "internal error: invalid diff type in process_diff" msgstr "intern fejl: ugyldig diff type i process_diff" -#: src/diff3.c:1069 +#: src/diff3.c:1060 msgid "invalid diff format; invalid change separator" msgstr "ugyldigt diff format; ugyldig ændrings-separator" -#: src/diff3.c:1305 +#: src/diff3.c:1294 msgid "invalid diff format; incomplete last line" msgstr "ugyldigt diff format; uafsluttet sidste linje" -#: src/diff3.c:1329 src/sdiff.c:276 src/util.c:969 +#: src/diff3.c:1318 src/sdiff.c:274 src/util.c:1069 #, c-format msgid "subsidiary program '%s' could not be invoked" msgstr "hjælpeprogrammet \"%s\" kunne ikke køres" -#: src/diff3.c:1354 +#: src/diff3.c:1343 msgid "invalid diff format; incorrect leading line chars" msgstr "ugyldigt diff format; forkerte linje-begyndelses-tegn" -#: src/diff3.c:1427 +#: src/diff3.c:1416 msgid "internal error: invalid diff type passed to output" msgstr "intern fejl: ugyldig diff type sendt til uddata" -#: src/diff3.c:1700 src/diff3.c:1757 +#: src/diff3.c:1685 src/diff3.c:1742 msgid "input file shrank" msgstr "ind-fil formindskedes" -#: src/dir.c:156 +#: src/dir.c:154 #, c-format msgid "cannot compare file names '%s' and '%s'" msgstr "kan ikke sammenligne filnavnene \"%s\" og \"%s\"" -#: src/dir.c:225 +#: src/dir.c:223 #, c-format msgid "%s: recursive directory loop" msgstr "%s: rekursiv katalogløkke" @@ -1346,126 +1347,126 @@ msgstr "%s: rekursiv katalogløkke" msgid "Thomas Lord" msgstr "Thomas Lord" -#: src/sdiff.c:174 +#: src/sdiff.c:173 msgid "" "-o, --output=FILE operate interactively, sending output to FILE" msgstr "" "-o, --output=FIL arbejd interaktivt, og send uddata til FIL" -#: src/sdiff.c:176 +#: src/sdiff.c:175 msgid "" "-i, --ignore-case consider upper- and lower-case to be the same" msgstr "" "-i, --ignore-case anse store og smÃ¥ bogstaver for at være ens" -#: src/sdiff.c:177 +#: src/sdiff.c:176 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E, --ignore-tab-expansion ignorér ændringer, der skyldes " "tabulatoromsætning" -#: src/sdiff.c:178 +#: src/sdiff.c:177 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "" "-Z, --ignore-trailing-space ignorér blanke tegn ved linjens afslutning" -#: src/sdiff.c:179 +#: src/sdiff.c:178 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "" "-b, --ignore-space-change ignorér ændringer i mængden af blanke tegn" -#: src/sdiff.c:180 +#: src/sdiff.c:179 msgid "-W, --ignore-all-space ignore all white space" msgstr "-W, --ignore-all-space ignorér alle blanke tegn" -#: src/sdiff.c:181 +#: src/sdiff.c:180 msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank" msgstr "" "-B, --ignore-blank-lines ignorér ændringer med udelukkende blanke linjer" -#: src/sdiff.c:182 +#: src/sdiff.c:181 msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE" msgstr "" "-I, --ignore-matching-lines=MØNSTER ignorér ændringer, hvis linjer alle\n" " matcher MØNSTER" -#: src/sdiff.c:183 +#: src/sdiff.c:182 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr " --strip-trailing-cr fjern afsluttende vognretur i inddata" -#: src/sdiff.c:184 +#: src/sdiff.c:183 msgid "-a, --text treat all files as text" msgstr "-a, --text behandl alle filer som tekst" -#: src/sdiff.c:186 +#: src/sdiff.c:185 msgid "" "-w, --width=NUM output at most NUM (default 130) print columns" msgstr "-w, --width=ANTAL udskriv højst ANTAL (normalt 130) søjler" -#: src/sdiff.c:187 +#: src/sdiff.c:186 msgid "" "-l, --left-column output only the left column of common lines" msgstr "-l, --left-column vis kun venstre kolonne af fælles linjer" -#: src/sdiff.c:188 +#: src/sdiff.c:187 msgid "-s, --suppress-common-lines do not output common lines" msgstr "-s, --suppress-common-lines vis ingen fælles linjer" -#: src/sdiff.c:190 +#: src/sdiff.c:189 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "-t, --expand-tabs lav tabulatorer om til mellemrum i output" -#: src/sdiff.c:191 +#: src/sdiff.c:190 msgid "" " --tabsize=NUM tab stops at every NUM (default 8) print columns" msgstr "" " --tabsize=ANTAL tabulatorstop for hver ANTAL (normalt 8) " "kolonner" -#: src/sdiff.c:193 +#: src/sdiff.c:192 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "" "-d, --minimal forsøg ihærdigt at finde et mindre antal " "ændringer" -#: src/sdiff.c:194 +#: src/sdiff.c:193 msgid "" "-H, --speed-large-files assume large files, many scattered small changes" msgstr "" "-H, --speed-large-files antag store filer og mange spredte, smÃ¥ " "ændringer" -#: src/sdiff.c:195 +#: src/sdiff.c:194 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr " --diff-program=PROGRAM brug PROGRAM til at sammenligne filerne" -#: src/sdiff.c:197 +#: src/sdiff.c:196 msgid " --help display this help and exit" msgstr " --help vis denne hjælpetekst og afslut" -#: src/sdiff.c:198 +#: src/sdiff.c:197 msgid "-v, --version output version information and exit" msgstr "-v, --version vis versionsoplysninger og afslut" -#: src/sdiff.c:207 +#: src/sdiff.c:206 #, c-format msgid "Usage: %s [OPTION]... FILE1 FILE2\n" msgstr "Brug: %s [TILVALG]... FIL1 FIL2\n" -#: src/sdiff.c:209 +#: src/sdiff.c:208 msgid "Side-by-side merge of differences between FILE1 and FILE2." msgstr "Side om side-fletning af forskelle mellem FIL1 og FIL2." -#: src/sdiff.c:330 +#: src/sdiff.c:328 msgid "cannot interactively merge standard input" msgstr "kan ikke indflette standard input interaktivt" -#: src/sdiff.c:597 +#: src/sdiff.c:594 msgid "both files to be compared are directories" msgstr "begge filer der sammenlignes er kataloger" -#: src/sdiff.c:820 +#: src/sdiff.c:817 msgid "" "ed:\tEdit then use both versions, each decorated with a header.\n" "eb:\tEdit then use both versions.\n" @@ -1489,12 +1490,12 @@ msgstr "" "v:\tMedtag og vis fælles linjer.\n" "q:\tAfslut.\n" -#: src/util.c:662 +#: src/util.c:755 #, c-format msgid "unrecognized prefix: %s" msgstr "ukendt præfiks: %s" -#: src/util.c:692 +#: src/util.c:785 #, c-format msgid "unparsable value for --palette" msgstr "værdi for --palette kan ikke fortolkes" diff --git a/po/de.po b/po/de.po index 879edbb..016d33b 100644 --- a/po/de.po +++ b/po/de.po @@ -11,7 +11,7 @@ msgid "" msgstr "" "Project-Id-Version: GNU diffutils 3.7.41\n" "Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n" -"POT-Creation-Date: 2021-08-01 18:56-0700\n" +"POT-Creation-Date: 2023-05-21 01:51-0700\n" "PO-Revision-Date: 2021-07-22 11:18+0200\n" "Last-Translator: Mario Blättermann \n" "Language-Team: German \n" @@ -23,29 +23,29 @@ msgstr "" "X-Generator: Lokalize 21.04.3\n" "Plural-Forms: nplurals=2; plural=(n != 1)\n" -#: lib/argmatch.c:132 +#: lib/argmatch.c:145 #, c-format msgid "invalid argument %s for %s" msgstr "ungültiges Argument %s für %s" -#: lib/argmatch.c:133 +#: lib/argmatch.c:146 #, c-format msgid "ambiguous argument %s for %s" msgstr "Argument %s für %s ist mehrdeutig" -#: lib/argmatch.c:152 lib/argmatch.h:223 +#: lib/argmatch.c:165 lib/argmatch.h:242 msgid "Valid arguments are:" msgstr "Gültige Argumente sind:" -#: lib/c-stack.c:187 +#: lib/c-stack.c:186 msgid "program error" msgstr "Programmfehler" -#: lib/c-stack.c:188 +#: lib/c-stack.c:187 msgid "stack overflow" msgstr "Stacküberlauf" -#: lib/error.c:195 +#: lib/error.c:193 msgid "Unknown system error" msgstr "Unbekannter Systemfehler" @@ -201,83 +201,83 @@ msgstr "%s: Option verlangt ein Argument -- »%c«\n" #. If you don't know what to put here, please see #. #. and use glyphs suitable for your language. -#: lib/quotearg.c:355 +#: lib/quotearg.c:354 msgid "`" msgstr "»" -#: lib/quotearg.c:356 +#: lib/quotearg.c:355 msgid "'" msgstr "«" -#: lib/regcomp.c:135 +#: lib/regcomp.c:122 msgid "Success" msgstr "Erfolg." -#: lib/regcomp.c:138 +#: lib/regcomp.c:125 msgid "No match" msgstr "Keine Übereinstimmung." -#: lib/regcomp.c:141 +#: lib/regcomp.c:128 msgid "Invalid regular expression" msgstr "Ungültiger regulärer Ausdruck." -#: lib/regcomp.c:144 +#: lib/regcomp.c:131 msgid "Invalid collation character" msgstr "Ungültiges Sortierzeichen." -#: lib/regcomp.c:147 +#: lib/regcomp.c:134 msgid "Invalid character class name" msgstr "Ungültiger Name für Zeichenklasse." -#: lib/regcomp.c:150 +#: lib/regcomp.c:137 msgid "Trailing backslash" msgstr "Extra Backslash am Ende." -#: lib/regcomp.c:153 +#: lib/regcomp.c:140 msgid "Invalid back reference" msgstr "Ungültige Rückreferenz." -#: lib/regcomp.c:156 +#: lib/regcomp.c:143 msgid "Unmatched [, [^, [:, [., or [=" msgstr "Öffnende [, [^, [:, [. oder [= ohne schließende." -#: lib/regcomp.c:159 +#: lib/regcomp.c:146 msgid "Unmatched ( or \\(" msgstr "Öffnende ( oder \\( ohne schließende." -#: lib/regcomp.c:162 +#: lib/regcomp.c:149 msgid "Unmatched \\{" msgstr "Öffnende \\{ ohne schließende." -#: lib/regcomp.c:165 +#: lib/regcomp.c:152 msgid "Invalid content of \\{\\}" msgstr "Ungültiger Inhalt von \\{\\}." -#: lib/regcomp.c:168 +#: lib/regcomp.c:155 msgid "Invalid range end" msgstr "Ungültiges Bereichsende." -#: lib/regcomp.c:171 +#: lib/regcomp.c:158 msgid "Memory exhausted" msgstr "Speicher verbraucht." -#: lib/regcomp.c:174 +#: lib/regcomp.c:161 msgid "Invalid preceding regular expression" msgstr "Ungültiger vorhergehender regulärer Ausdruck." -#: lib/regcomp.c:177 +#: lib/regcomp.c:164 msgid "Premature end of regular expression" msgstr "Vorzeitiges Ende des regulären Ausdrucks." -#: lib/regcomp.c:180 +#: lib/regcomp.c:167 msgid "Regular expression too big" msgstr "Regulärer Ausdruck ist zu groß." -#: lib/regcomp.c:183 +#: lib/regcomp.c:170 msgid "Unmatched ) or \\)" msgstr "Schließende ) oder \\) ohne öffnende." -#: lib/regcomp.c:676 +#: lib/regcomp.c:650 msgid "No previous regular expression" msgstr "Kein vorhergehender regulärer Ausdruck." @@ -475,17 +475,17 @@ msgstr "Homepage von %s: <%s>.\n" msgid "General help using GNU software: <%s>\n" msgstr "Allgemeine Hilfe zur Benutzung von GNU-Software: <%s>\n" -#: src/analyze.c:454 src/diff.c:1406 +#: src/analyze.c:455 src/diff.c:1478 #, c-format msgid "Files %s and %s differ\n" msgstr "Dateien %s und %s sind verschieden.\n" -#: src/analyze.c:455 +#: src/analyze.c:456 #, c-format msgid "Binary files %s and %s differ\n" msgstr "Binärdateien %s und %s sind verschieden.\n" -#: src/analyze.c:706 src/diff3.c:1470 src/util.c:1254 +#: src/analyze.c:707 src/diff3.c:1457 src/util.c:1354 msgid "No newline at end of file" msgstr "Kein Zeilenumbruch am Dateiende." @@ -499,41 +499,42 @@ msgstr "Torbjörn Granlund" msgid "David MacKenzie" msgstr "David MacKenzie" -#: src/cmp.c:120 src/diff.c:879 src/diff3.c:467 src/sdiff.c:160 +#: src/cmp.c:124 src/diff.c:939 src/diff3.c:465 src/sdiff.c:159 #, c-format msgid "Try '%s --help' for more information." msgstr "»%s --help« gibt Ihnen mehr Informationen." -#: src/cmp.c:138 +#: src/cmp.c:142 #, c-format msgid "invalid --ignore-initial value '%s'" msgstr "ungültiger --ignore-initial-Wert »%s«." -#: src/cmp.c:148 +#: src/cmp.c:152 #, c-format msgid "options -l and -s are incompatible" msgstr "Die Optionen -l und -s sind inkompatibel." -#: src/cmp.c:156 src/diff.c:887 src/diff3.c:474 src/sdiff.c:168 src/sdiff.c:316 -#: src/sdiff.c:323 src/sdiff.c:876 src/util.c:852 src/util.c:952 src/util.c:959 +#: src/cmp.c:160 src/diff.c:947 src/diff3.c:472 src/sdiff.c:167 src/sdiff.c:314 +#: src/sdiff.c:321 src/sdiff.c:873 src/util.c:952 src/util.c:1052 +#: src/util.c:1059 msgid "write failed" msgstr "Schreibfehler." -#: src/cmp.c:158 src/diff.c:889 src/diff.c:1471 src/diff3.c:476 src/sdiff.c:170 +#: src/cmp.c:162 src/diff.c:949 src/diff.c:1543 src/diff3.c:474 src/sdiff.c:169 msgid "standard output" msgstr "Standardausgabe" -#: src/cmp.c:162 +#: src/cmp.c:166 msgid "-b, --print-bytes print differing bytes" msgstr "-b, --print-bytes Unterschiedliche Bytes ausgeben." -#: src/cmp.c:163 +#: src/cmp.c:167 msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs" msgstr "" "-i, --ignore-initial=SKIP\n" " Die ersten SKIP Bytes der Eingabe überspringen." -#: src/cmp.c:164 +#: src/cmp.c:168 msgid "" "-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n" " first SKIP2 bytes of FILE2" @@ -542,39 +543,39 @@ msgstr "" " Die ersten SKIP1 Bytes von DATEI1 und die\n" " ersten SKIP2 Bytes von DATEI2 überspringen." -#: src/cmp.c:166 +#: src/cmp.c:170 msgid "" "-l, --verbose output byte numbers and differing byte values" msgstr "" "-l, --verbose Bytenummern und Werte aller unterschiedlichen\n" " Bytes ausgeben." -#: src/cmp.c:167 +#: src/cmp.c:171 msgid "-n, --bytes=LIMIT compare at most LIMIT bytes" msgstr "-n, --bytes=LIMIT Höchstens LIMIT Bytes vergleichen." -#: src/cmp.c:168 +#: src/cmp.c:172 msgid "-s, --quiet, --silent suppress all normal output" msgstr "-s, --quiet, --silent Alle normalen Ausgaben unterdrücken." -#: src/cmp.c:169 +#: src/cmp.c:173 msgid " --help display this help and exit" msgstr " --help Diese Hilfe anzeigen und beenden." -#: src/cmp.c:170 +#: src/cmp.c:174 msgid "-v, --version output version information and exit" msgstr "-v, -version Versionsinformation ausgeben und beenden." -#: src/cmp.c:179 +#: src/cmp.c:183 #, c-format msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n" msgstr "Aufruf: %s [OPTION]... DATEI1 [DATEI2 [SKIP1 [SKIP2]]]\n" -#: src/cmp.c:181 +#: src/cmp.c:185 msgid "Compare two files byte by byte." msgstr "Zwei Dateien Byte für Byte vergleichen." -#: src/cmp.c:183 +#: src/cmp.c:187 msgid "" "The optional SKIP1 and SKIP2 specify the number of bytes to skip\n" "at the beginning of each file (zero by default)." @@ -582,13 +583,13 @@ msgstr "" "Die optionalen Argumente SKIP1 und SKIP2 geben die Zahl der Bytes an,\n" "die in jeder Datei übersprungen werden (standardmäßig null)." -#: src/cmp.c:186 src/diff.c:999 src/diff3.c:514 src/sdiff.c:211 +#: src/cmp.c:190 src/diff.c:1059 src/diff3.c:512 src/sdiff.c:210 msgid "" "Mandatory arguments to long options are mandatory for short options too.\n" msgstr "" "Nötige Argumente für lange Optionen sind auch für kurze Optionen nötig.\n" -#: src/cmp.c:192 +#: src/cmp.c:196 msgid "" "SKIP values may be followed by the following multiplicative suffixes:\n" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" @@ -598,170 +599,170 @@ msgstr "" "kB 1000, K 1024, MB 1.000.000, M 1.048.576,\n" "GB 1.000.000.000, G 1.073.741.824, und so weiter für T, P, E, Z, Y." -#: src/cmp.c:195 +#: src/cmp.c:199 msgid "If a FILE is '-' or missing, read standard input." msgstr "Wenn DATEI »-« ist oder fehlt, wird von der Standardeingabe gelesen." -#: src/cmp.c:196 src/diff.c:987 src/sdiff.c:221 +#: src/cmp.c:200 src/diff.c:1047 src/sdiff.c:220 msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble." msgstr "" "Der Rückgabewert des Programms ist 0, falls die Eingaben identisch\n" "sind, 1 falls sie verschieden sind und 2, falls es Probleme gab." -#: src/cmp.c:243 +#: src/cmp.c:247 #, c-format msgid "invalid --bytes value '%s'" msgstr "ungültiger --bytes-Wert »%s«" -#: src/cmp.c:269 src/diff.c:797 src/diff3.c:361 src/sdiff.c:567 +#: src/cmp.c:273 src/diff.c:857 src/diff3.c:368 src/sdiff.c:564 #, c-format msgid "missing operand after '%s'" msgstr "fehlender Operand nach »%s«" -#: src/cmp.c:281 src/diff.c:799 src/diff3.c:363 src/sdiff.c:569 +#: src/cmp.c:285 src/diff.c:859 src/diff3.c:370 src/sdiff.c:566 #, c-format msgid "extra operand '%s'" msgstr "extra Operand »%s«." -#: src/cmp.c:507 +#: src/cmp.c:521 #, c-format msgid "%s %s differ: byte %s, line %s\n" msgstr "%s %s sind verschieden: Byte %s, Zeile %s\n" -#: src/cmp.c:523 +#: src/cmp.c:537 #, c-format msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n" msgstr "%s %s sind verschieden: Zeichen %s, Zeile %s ist %3o %s %3o %s\n" -#: src/cmp.c:580 +#: src/cmp.c:594 #, c-format msgid "cmp: EOF on %s which is empty\n" msgstr "cmp: Dateiende in %s, welche leer ist.\n" -#: src/cmp.c:594 +#: src/cmp.c:608 #, c-format msgid "cmp: EOF on %s after byte %s, line %s\n" msgstr "cmp: Dateiende in %s nach Byte %s, Zeile %s\n" -#: src/cmp.c:595 +#: src/cmp.c:609 #, c-format msgid "cmp: EOF on %s after byte %s, in line %s\n" msgstr "cmp: Dateiende in %s nach Byte %s, Zeile %s\n" -#: src/cmp.c:601 +#: src/cmp.c:615 #, c-format msgid "cmp: EOF on %s after byte %s\n" msgstr "cmp: Dateiende in %s nach Byte %s\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:51 +#: src/diff.c:50 msgid "Paul Eggert" msgstr "Paul Eggert" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:52 +#: src/diff.c:51 msgid "Mike Haertel" msgstr "Mike Haertel" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:53 +#: src/diff.c:52 msgid "David Hayes" msgstr "David Hayes" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:54 +#: src/diff.c:53 msgid "Richard Stallman" msgstr "Richard Stallman" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:55 +#: src/diff.c:54 msgid "Len Tower" msgstr "Len Tower" -#: src/diff.c:355 +#: src/diff.c:365 #, c-format msgid "invalid context length '%s'" msgstr "ungültige Kontextlänge »%s«." -#: src/diff.c:438 +#: src/diff.c:487 #, c-format msgid "pagination not supported on this host" msgstr "Seitenumbruch wird auf diesem System nicht unterstützt." -#: src/diff.c:453 src/diff3.c:341 +#: src/diff.c:502 src/diff3.c:348 #, c-format msgid "too many file label options" msgstr "Zu viele Datei-Label-Optionen wurden angegeben." -#: src/diff.c:530 +#: src/diff.c:579 #, c-format msgid "invalid width '%s'" msgstr "ungültige Breite »%s«." -#: src/diff.c:534 +#: src/diff.c:583 msgid "conflicting width options" msgstr "widersprüchliche Breitenoptionen" -#: src/diff.c:559 +#: src/diff.c:608 #, c-format msgid "invalid horizon length '%s'" msgstr "ungültige Horizontlänge »%s«." -#: src/diff.c:615 +#: src/diff.c:664 #, c-format msgid "invalid tabsize '%s'" msgstr "ungültige Tabulatorbreite »%s«." -#: src/diff.c:619 +#: src/diff.c:668 msgid "conflicting tabsize options" msgstr "widersprüchliche Tabulatorbreitenoptionen." -#: src/diff.c:774 +#: src/diff.c:834 msgid "--from-file and --to-file both specified" msgstr "--from-file und --to-file sind beide angegeben." -#: src/diff.c:893 +#: src/diff.c:953 msgid " --normal output a normal diff (the default)" msgstr " --normal Ein normales Diff ausgeben (Vorgabe)." -#: src/diff.c:894 +#: src/diff.c:954 msgid "-q, --brief report only when files differ" msgstr "" "-q, --brief Nur ausgeben, ob die Dateien verschieden " "sind." -#: src/diff.c:895 +#: src/diff.c:955 msgid "-s, --report-identical-files report when two files are the same" msgstr "" "-s, --report-identical-files Zurückgeben, ob zwei Dateien gleich sind." -#: src/diff.c:896 +#: src/diff.c:956 msgid "" "-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context" msgstr "" "-c, -C ZAHL, --context[=ZAHL] ZAHL Zeilen des kopierten Kontexts ausgeben\n" " (Vorgabe: 3)." -#: src/diff.c:897 +#: src/diff.c:957 msgid "" "-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context" msgstr "" "-u, -U ZAHL, --unified[=ZAHL] ZAHL Zeilen des vereinheitlichten Kontexts\n" " ausgeben (Vorgabe: 3)." -#: src/diff.c:898 +#: src/diff.c:958 msgid "-e, --ed output an ed script" msgstr "-e, --ed Ein ed-Skript ausgeben." -#: src/diff.c:899 +#: src/diff.c:959 msgid "-n, --rcs output an RCS format diff" msgstr "-n, --rcs Im RCS-Format ausgeben." -#: src/diff.c:900 +#: src/diff.c:960 msgid "-y, --side-by-side output in two columns" msgstr "-y, --side-by-side In zwei Spalten ausgeben." -#: src/diff.c:901 +#: src/diff.c:961 msgid "" "-W, --width=NUM output at most NUM (default 130) print columns" msgstr "" @@ -769,31 +770,31 @@ msgstr "" "ausgeben\n" " (Vorgabe: 130)." -#: src/diff.c:902 +#: src/diff.c:962 msgid "" " --left-column output only the left column of common lines" msgstr "" " --left-column Nur linke Spalte der gemeinsamen Zeilen\n" " ausgeben." -#: src/diff.c:903 +#: src/diff.c:963 msgid " --suppress-common-lines do not output common lines" msgstr " --suppress-common-lines Keine gemeinsamen Zeilen ausgeben." -#: src/diff.c:905 +#: src/diff.c:965 msgid "-p, --show-c-function show which C function each change is in" msgstr "" "-p, --show-c-function Für jede Änderung zeigen, in welcher\n" " C-Funktion sie ist." -#: src/diff.c:906 +#: src/diff.c:966 msgid "-F, --show-function-line=RE show the most recent line matching RE" msgstr "" "-F, --show-function-line=RE Die vorangehende Zeile zeigen, die dem " "Muster\n" " RE entspricht." -#: src/diff.c:907 +#: src/diff.c:967 msgid "" " --label LABEL use LABEL instead of file name and timestamp\n" " (can be repeated)" @@ -802,89 +803,89 @@ msgstr "" "Zeitstempels\n" " benutzen (kann wiederholt werden)." -#: src/diff.c:910 +#: src/diff.c:970 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "" "-t, -expand-tabs Tabulatoren in der Ausgabe zu Leerzeichen\n" " ausdehnen." -#: src/diff.c:911 +#: src/diff.c:971 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T, --initial-tab Einrückungen durch vorangestellte " "Tabulatoren\n" " erzeugen." -#: src/diff.c:912 +#: src/diff.c:972 msgid "" " --tabsize=NUM tab stops every NUM (default 8) print columns" msgstr "" " --tabsize=ZAHL Tabulatorstopps sind alle ZAHL Spalten\n" " (Vorgabe: 8)." -#: src/diff.c:913 +#: src/diff.c:973 msgid "" " --suppress-blank-empty suppress space or tab before empty output lines" msgstr "" " --suppress-blank-empty Leerzeichen oder Tabulator vor leeren\n" " Ausgabezeilen verhindern." -#: src/diff.c:914 +#: src/diff.c:974 msgid "-l, --paginate pass output through 'pr' to paginate it" msgstr "" "-l, --paginate Ausgabe an »pr« zum Seitenumbruch übergeben." -#: src/diff.c:916 +#: src/diff.c:976 msgid "" "-r, --recursive recursively compare any subdirectories found" msgstr "" "-r, --recursive Rekursiv alle Unterverzeichnisse vergleichen." -#: src/diff.c:917 +#: src/diff.c:977 msgid " --no-dereference don't follow symbolic links" msgstr "" " --no-dereference Symbolischen Verknüpfungen nicht folgen." -#: src/diff.c:918 +#: src/diff.c:978 msgid "-N, --new-file treat absent files as empty" msgstr "-N, --new-file Fehlende Dateien als leer betrachten." -#: src/diff.c:919 +#: src/diff.c:979 msgid " --unidirectional-new-file treat absent first files as empty" msgstr "" " --unidirectional-new-file Fehlende erste Dateien als leer betrachten." -#: src/diff.c:920 +#: src/diff.c:980 msgid " --ignore-file-name-case ignore case when comparing file names" msgstr "" " --ignore-file-name-case Unterschiede der Groß-/Kleinschreibung von\n" " Dateinamen ignorieren." -#: src/diff.c:921 +#: src/diff.c:981 msgid " --no-ignore-file-name-case consider case when comparing file names" msgstr "" " --no-ignore-file-name-case Unterschiede der Groß-/Kleinschreibung von\n" " Dateinamen beachten." -#: src/diff.c:922 +#: src/diff.c:982 msgid "-x, --exclude=PAT exclude files that match PAT" msgstr "" "-x, --exclude=MUSTER Dateien ausschließen, die auf MUSTER passen." -#: src/diff.c:923 +#: src/diff.c:983 msgid "" "-X, --exclude-from=FILE exclude files that match any pattern in FILE" msgstr "" "-X, --exclude-from=DATEI Dateien ausschließen, die auf eines der\n" " Muster in DATEI passen." -#: src/diff.c:924 +#: src/diff.c:984 msgid "" "-S, --starting-file=FILE start with FILE when comparing directories" msgstr "" "-S, --starting-file=DATEI Beim Verzeichnisvergleich mit DATEI beginnen." -#: src/diff.c:925 +#: src/diff.c:985 msgid "" " --from-file=FILE1 compare FILE1 to all operands;\n" " FILE1 can be a directory" @@ -892,7 +893,7 @@ msgstr "" " --from-file=DATEI1 DATEI1 mit allen Operanden vergleichen.\n" " DATEI1 kann ein Verzeichnis sein." -#: src/diff.c:927 +#: src/diff.c:987 msgid "" " --to-file=FILE2 compare all operands to FILE2;\n" " FILE2 can be a directory" @@ -900,33 +901,33 @@ msgstr "" " --to-file=DATEI2 Alle Operanden mit DATEI2 vergleichen.\n" " DATEI2 kann ein Verzeichnis sein." -#: src/diff.c:930 +#: src/diff.c:990 msgid "" "-i, --ignore-case ignore case differences in file contents" msgstr "" "-i, --ignore-case Unterschiede der Groß-/Kleinschreibung\n" " im Dateiinhalt ignorieren." -#: src/diff.c:931 +#: src/diff.c:991 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E, --ignore-tab-expansion Änderungen aufgrund von Tabausdehnungen\n" " ignorieren." -#: src/diff.c:932 +#: src/diff.c:992 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "-Z, --ignore-trailing-space Leerraum am Zeilenende ignorieren." -#: src/diff.c:933 +#: src/diff.c:993 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "-b, --ignore-space-change Änderungen im Leerraum ignorieren." -#: src/diff.c:934 +#: src/diff.c:994 msgid "-w, --ignore-all-space ignore all white space" msgstr "-w, --ignore-all-space Leerraum ignorieren." -#: src/diff.c:935 +#: src/diff.c:995 msgid "" "-B, --ignore-blank-lines ignore changes where lines are all blank" msgstr "" @@ -934,49 +935,49 @@ msgstr "" "Zeilen\n" " leer sind." -#: src/diff.c:936 +#: src/diff.c:996 msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE" msgstr "" "-I, --ignore-matching-lines=RE Änderungen ignorieren, bei denen alle " "Zeilen\n" " auf das Muster RE passen." -#: src/diff.c:938 +#: src/diff.c:998 msgid "-a, --text treat all files as text" msgstr "-a, --text Alle Dateien als Text behandeln." -#: src/diff.c:939 +#: src/diff.c:999 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr Wagenrücklauf (CR) am Zeilenende beim\n" " Einlesen entfernen." -#: src/diff.c:941 +#: src/diff.c:1001 msgid " --binary read and write data in binary mode" msgstr "" " --binary Daten im Binärmodus lesen und schreiben." -#: src/diff.c:944 +#: src/diff.c:1004 msgid "" "-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs" msgstr "" "-D, --ifdef=NAME Zusammengefügte Datei mit »#ifdef NAME« in\n" " die Ausgabe mischen." -#: src/diff.c:945 +#: src/diff.c:1005 msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT" msgstr " --GTYPE-group-format=GFMT GTYPE-Eingabe mit GFMT formatieren." -#: src/diff.c:946 +#: src/diff.c:1006 msgid " --line-format=LFMT format all input lines with LFMT" msgstr "" " --line-format=LFMT Alle Eingabe-Zeilen mit LFMT formatieren." -#: src/diff.c:947 +#: src/diff.c:1007 msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT" msgstr " --LTYPE-line-format=LFMT LTYPE-Eingabe mit LFMT formatieren." -#: src/diff.c:948 +#: src/diff.c:1008 msgid "" " These format options provide fine-grained control over the output\n" " of diff, generalizing -D/--ifdef." @@ -984,13 +985,13 @@ msgstr "" " Diese Formatoptionen stellen haargenaue Kontrolle über die Eingabe\n" " von diff bereit, indem -D/--ifdef verallgemeinert wird." -#: src/diff.c:950 +#: src/diff.c:1010 msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'." msgstr "" " LTYPE kann »old«, »new« oder »unchanged« sein.\n" " GTYPE ist LTYPE oder »changed«." -#: src/diff.c:951 +#: src/diff.c:1011 msgid "" " GFMT (only) may contain:\n" " %< lines from FILE1\n" @@ -1020,7 +1021,7 @@ msgstr "" " M L+1.\n" " %(A=B?T:E) Falls A gleich B, dann T, sonst E." -#: src/diff.c:963 +#: src/diff.c:1023 msgid "" " LFMT (only) may contain:\n" " %L contents of line\n" @@ -1032,7 +1033,7 @@ msgstr "" " %l Inhalt der Zeile, ohne Zeilenumbruch am Ende.\n" " %[-][BREITE][.[PRÄZ]]{doxX}n Zeilennummer im printf-Stil." -#: src/diff.c:967 +#: src/diff.c:1027 msgid "" " Both GFMT and LFMT may contain:\n" " %% %\n" @@ -1046,27 +1047,27 @@ msgstr "" " %c'\\OOO' das Zeichen mit dem Oktalcode OOO\n" " C Das Zeichen C (andere Zeichen stellen sich selbst dar)" -#: src/diff.c:973 +#: src/diff.c:1033 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "" "-d, --minimal Intensiv nach einer kleineren Menge von " "Änderungen\n" " suchen." -#: src/diff.c:974 +#: src/diff.c:1034 msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix" msgstr "" " --horizon-lines=ZAHL ZAHL Zeilen mit gemeinsamem Präfix und Suffix\n" " behalten." -#: src/diff.c:975 +#: src/diff.c:1035 msgid "" " --speed-large-files assume large files and many scattered small changes" msgstr "" " --speed-large-files Es werden große Dateien mit vielen verstreuten,\n" " kleinen Änderungen vermutet." -#: src/diff.c:976 +#: src/diff.c:1036 msgid "" " --color[=WHEN] color output; WHEN is 'never', 'always', or " "'auto';\n" @@ -1078,7 +1079,7 @@ msgstr "" "ohne\n" " weitere Angaben bedeutet »--color='auto'«" -#: src/diff.c:978 +#: src/diff.c:1038 msgid "" " --palette=PALETTE the colors to use when --color is active; PALETTE " "is\n" @@ -1089,113 +1090,113 @@ msgstr "" " PALETTE ist eine durch Doppelpunkte getrennte\n" " Liste aus terminfo-Capabilities." -#: src/diff.c:981 +#: src/diff.c:1041 msgid " --help display this help and exit" msgstr " --help Diese Hilfe anzeigen und beenden." -#: src/diff.c:982 +#: src/diff.c:1042 msgid "-v, --version output version information and exit" msgstr "-v, -version Versionsinformation ausgeben und beenden." -#: src/diff.c:984 +#: src/diff.c:1044 msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'." msgstr "" "DATEIEN sind »DATEI1 DATEI2« oder »VERZ1 VERZ2« oder »VERZ DATEI«\n" " oder »DATEI VERZ«." -#: src/diff.c:985 +#: src/diff.c:1045 msgid "" "If --from-file or --to-file is given, there are no restrictions on FILE(s)." msgstr "" "Wenn --from-file oder --to-file angegeben werden, gibt es keine\n" " Einschränkungen für DATEI(EN)." -#: src/diff.c:986 src/diff3.c:533 src/sdiff.c:220 +#: src/diff.c:1046 src/diff3.c:531 src/sdiff.c:219 msgid "If a FILE is '-', read standard input." msgstr "Wenn DATEI »-« ist, von der Standardeingabe lesen." -#: src/diff.c:996 +#: src/diff.c:1056 #, c-format msgid "Usage: %s [OPTION]... FILES\n" msgstr "Aufruf: %s [OPTION]... DATEIEN\n" -#: src/diff.c:997 +#: src/diff.c:1057 msgid "Compare FILES line by line." msgstr "DATEIEN Zeile für Zeile vergleichen." -#: src/diff.c:1034 +#: src/diff.c:1094 #, c-format msgid "conflicting %s option value '%s'" msgstr "Widersprüchlicher %s-Optionswert »%s«." -#: src/diff.c:1047 +#: src/diff.c:1107 #, c-format msgid "conflicting output style options" msgstr "Widersprüchliche Optionen für den Ausgabestil." -#: src/diff.c:1063 +#: src/diff.c:1123 #, c-format msgid "invalid color '%s'" msgstr "Ungültige Farbe »%s«." -#: src/diff.c:1119 src/diff.c:1329 +#: src/diff.c:1197 src/diff.c:1401 #, c-format msgid "Only in %s: %s\n" msgstr "Nur in %s: %s.\n" -#: src/diff.c:1253 +#: src/diff.c:1325 msgid "cannot compare '-' to a directory" msgstr "»-« kann nicht mit Verzeichnis verglichen werden." -#: src/diff.c:1288 +#: src/diff.c:1360 msgid "-D option not supported with directories" msgstr "Option -D nicht unterstützt bei Verzeichnissen" -#: src/diff.c:1297 +#: src/diff.c:1369 #, c-format msgid "Common subdirectories: %s and %s\n" msgstr "Gemeinsame Unterverzeichnisse: %s und %s.\n" -#: src/diff.c:1339 src/diff.c:1389 +#: src/diff.c:1411 src/diff.c:1461 #, c-format msgid "File %s is a %s while file %s is a %s\n" msgstr "Datei %s ist ein %s, während Datei %s ein %s ist.\n" -#: src/diff.c:1375 +#: src/diff.c:1447 #, c-format msgid "Symbolic links %s and %s differ\n" msgstr "Symbolische Verknüpfungen %s und %s sind verschieden.\n" -#: src/diff.c:1462 +#: src/diff.c:1534 #, c-format msgid "Files %s and %s are identical\n" msgstr "Dateien %s und %s sind identisch.\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff3.c:43 +#: src/diff3.c:51 msgid "Randy Smith" msgstr "Randy Smith" -#: src/diff3.c:356 +#: src/diff3.c:363 #, c-format msgid "incompatible options" msgstr "Inkompatible Optionen." -#: src/diff3.c:396 +#: src/diff3.c:403 msgid "'-' specified for more than one input file" msgstr "»-« für mehr als eine Eingabedatei angegeben." -#: src/diff3.c:447 src/diff3.c:1295 src/diff3.c:1698 src/diff3.c:1753 -#: src/sdiff.c:308 src/sdiff.c:846 src/sdiff.c:857 +#: src/diff3.c:445 src/diff3.c:1284 src/diff3.c:1683 src/diff3.c:1738 +#: src/sdiff.c:306 src/sdiff.c:843 src/sdiff.c:854 msgid "read failed" msgstr "Lesefehler." -#: src/diff3.c:480 +#: src/diff3.c:478 msgid "-A, --show-all output all changes, bracketing conflicts" msgstr "" "-A, --show-all Alle Änderungen ausgeben, Konflikte in Klammern." -#: src/diff3.c:482 +#: src/diff3.c:480 msgid "" "-e, --ed output ed script incorporating changes\n" " from OLDFILE to YOURFILE into MYFILE" @@ -1204,11 +1205,11 @@ msgstr "" " von ALTEDATEI hin zu DEINEDATEI in\n" " MEINEDATEI integriert." -#: src/diff3.c:484 +#: src/diff3.c:482 msgid "-E, --show-overlap like -e, but bracket conflicts" msgstr "-E --show-overlap Wie -e, aber Konflikte in Klammern." -#: src/diff3.c:485 +#: src/diff3.c:483 msgid "" "-3, --easy-only like -e, but incorporate only nonoverlapping " "changes" @@ -1216,23 +1217,23 @@ msgstr "" "-3, --easy-only Wie -e, aber nur nichtüberlappende Änderungen\n" " integrieren." -#: src/diff3.c:486 +#: src/diff3.c:484 msgid "" "-x, --overlap-only like -e, but incorporate only overlapping changes" msgstr "" "-x, --overlap-only Wie -e, aber nur überlappende Änderungen\n" " integrieren." -#: src/diff3.c:487 +#: src/diff3.c:485 msgid "-X like -x, but bracket conflicts" msgstr "-X Wie -x, aber Konflikte in Klammern." -#: src/diff3.c:488 +#: src/diff3.c:486 msgid "-i append 'w' and 'q' commands to ed scripts" msgstr "" "-i An ed-Skripte »w«- und »q«-Befehle anhängen." -#: src/diff3.c:490 +#: src/diff3.c:488 msgid "" "-m, --merge output actual merged file, according to\n" " -A if no other options are given" @@ -1241,28 +1242,28 @@ msgstr "" " falls keine anderen Optionen übergeben " "wurden." -#: src/diff3.c:493 +#: src/diff3.c:491 msgid "-a, --text treat all files as text" msgstr "-a, --text Alle Dateien als Text behandeln." -#: src/diff3.c:494 +#: src/diff3.c:492 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr Wagenrücklauf (CR) am Zeilenende beim Einlesen\n" " entfernen." -#: src/diff3.c:495 +#: src/diff3.c:493 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T, --initial-tab Einrückungen durch vorangestellte Tabulatoren\n" " erzeugen." -#: src/diff3.c:496 +#: src/diff3.c:494 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr "" " --diff-program=PROGRAMM PROGRAMM zum Vergleichen von Dateien verwenden." -#: src/diff3.c:497 +#: src/diff3.c:495 msgid "" "-L, --label=LABEL use LABEL instead of file name\n" " (can be repeated up to three times)" @@ -1270,24 +1271,24 @@ msgstr "" "-L, --label=LABEL LABEL statt des Dateinamens benutzen\n" " (kann bis zu dreimal wiederholt werden)" -#: src/diff3.c:500 +#: src/diff3.c:498 msgid " --help display this help and exit" msgstr " --help Diese Hilfe anzeigen und beenden." -#: src/diff3.c:501 +#: src/diff3.c:499 msgid "-v, --version output version information and exit" msgstr "-v, --version Versionsinformation ausgeben und beenden." -#: src/diff3.c:510 +#: src/diff3.c:508 #, c-format msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n" msgstr "Aufruf: %s [OPTION]... MEINEDATEI ALTEDATEI DEINEDATEI\n" -#: src/diff3.c:512 +#: src/diff3.c:510 msgid "Compare three files line by line." msgstr "Drei Dateien Zeile für Zeile vergleichen." -#: src/diff3.c:522 +#: src/diff3.c:520 msgid "" "\n" "The default output format is a somewhat human-readable representation of\n" @@ -1311,56 +1312,56 @@ msgstr "" "intern zusammenführt und die eigentliche, zusammengeführte Datei ausgegeben\n" "wird. Für ungewöhnliche Eingaben ist dies robuster, als ed zu benutzen.\n" -#: src/diff3.c:534 +#: src/diff3.c:532 msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble." msgstr "" "Der Rückgabewert des Programms ist 0, falls es erfolgreich ist, 1 falls\n" "es Konflikte gibt und 2 falls Probleme auftreten." -#: src/diff3.c:727 +#: src/diff3.c:725 msgid "internal error: screwup in format of diff blocks" msgstr "Interner Fehler: Format für diff-Blöcke ist durcheinander." -#: src/diff3.c:1022 +#: src/diff3.c:1015 #, c-format msgid "%s: diff failed: " msgstr "%s: »diff« ist gescheitert: " -#: src/diff3.c:1044 +#: src/diff3.c:1037 msgid "internal error: invalid diff type in process_diff" msgstr "Interner Fehler: Ungültiger diff-Typ in process_diff." -#: src/diff3.c:1069 +#: src/diff3.c:1060 msgid "invalid diff format; invalid change separator" msgstr "Ungültiges Diff-Format; ungültiger Änderungstrenner." -#: src/diff3.c:1305 +#: src/diff3.c:1294 msgid "invalid diff format; incomplete last line" msgstr "Ungültiges Diff-Format; unvollständige letzte Zeile." -#: src/diff3.c:1329 src/sdiff.c:276 src/util.c:969 +#: src/diff3.c:1318 src/sdiff.c:274 src/util.c:1069 #, c-format msgid "subsidiary program '%s' could not be invoked" msgstr "Unterprogramm »%s« konnte nicht aufgerufen werden." -#: src/diff3.c:1354 +#: src/diff3.c:1343 msgid "invalid diff format; incorrect leading line chars" msgstr "Ungültiges Diff-Format; inkorrektes führendes Zeichen in Zeile." -#: src/diff3.c:1427 +#: src/diff3.c:1416 msgid "internal error: invalid diff type passed to output" msgstr "Interner Fehler: Ungültiger diff-Typ an Ausgabe übergeben." -#: src/diff3.c:1700 src/diff3.c:1757 +#: src/diff3.c:1685 src/diff3.c:1742 msgid "input file shrank" msgstr "Eingabedatei ist überraschend geschrumpft." -#: src/dir.c:156 +#: src/dir.c:154 #, c-format msgid "cannot compare file names '%s' and '%s'" msgstr "Die Dateinamen »%s« und »%s« können nicht verglichen werden." -#: src/dir.c:225 +#: src/dir.c:223 #, c-format msgid "%s: recursive directory loop" msgstr "%s: Rekursive Verzeichnisschleife" @@ -1370,101 +1371,101 @@ msgstr "%s: Rekursive Verzeichnisschleife" msgid "Thomas Lord" msgstr "Thomas Lord" -#: src/sdiff.c:174 +#: src/sdiff.c:173 msgid "" "-o, --output=FILE operate interactively, sending output to FILE" msgstr "" "-o, --output=DATEI Interaktiv arbeiten, Ausgabe in DATEI speichern." -#: src/sdiff.c:176 +#: src/sdiff.c:175 msgid "" "-i, --ignore-case consider upper- and lower-case to be the same" msgstr "" "-i, --ignore-case Nicht zwischen Groß- und Kleinschreibung " "unterscheiden." -#: src/sdiff.c:177 +#: src/sdiff.c:176 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E, --ignore-tab-expansion Änderungen aufgrund von Tabausdehnungen " "ignorieren." -#: src/sdiff.c:178 +#: src/sdiff.c:177 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "-Z, --ignore-trailing-space Leerraum am Zeilenende ignorieren." -#: src/sdiff.c:179 +#: src/sdiff.c:178 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "" "-b, --ignore-space-change Änderungen an der Größe des Leerraums " "ignorieren." -#: src/sdiff.c:180 +#: src/sdiff.c:179 msgid "-W, --ignore-all-space ignore all white space" msgstr "-W, --ignore-all-space Leerraum ignorieren." -#: src/sdiff.c:181 +#: src/sdiff.c:180 msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank" msgstr "" "-B, --ignore-blank-lines Änderungen ignorieren, bei denen alle Zeilen " "leer sind." -#: src/sdiff.c:182 +#: src/sdiff.c:181 msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE" msgstr "" "-I, --ignore-matching-lines=RE Änderungen ignorieren, bei denen alle " "Zeilen\n" " auf das Muster RE passen." -#: src/sdiff.c:183 +#: src/sdiff.c:182 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr Wagenrücklauf (CR) am Zeilenende beim Einlesen " "entfernen." -#: src/sdiff.c:184 +#: src/sdiff.c:183 msgid "-a, --text treat all files as text" msgstr "-a, --text Alle Dateien als Text betrachten." -#: src/sdiff.c:186 +#: src/sdiff.c:185 msgid "" "-w, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-w, --width=ZAHL Maximale ZAHL Druckspalten pro Zeile (Vorgabe: " "130)." -#: src/sdiff.c:187 +#: src/sdiff.c:186 msgid "" "-l, --left-column output only the left column of common lines" msgstr "" "-l, --left-column Nur linke Spalte der gemeinsamen Zeilen " "ausgeben." -#: src/sdiff.c:188 +#: src/sdiff.c:187 msgid "-s, --suppress-common-lines do not output common lines" msgstr "-s, --suppress-common-lines Keine gemeinsamen Zeilen ausgeben." -#: src/sdiff.c:190 +#: src/sdiff.c:189 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "" "-t, --expand-tabs Tabulatoren in der Ausgabe zu Leerzeichen " "ausdehnen." -#: src/sdiff.c:191 +#: src/sdiff.c:190 msgid "" " --tabsize=NUM tab stops at every NUM (default 8) print columns" msgstr "" " --tabsize=ZAHL Tabulatorstopps sind alle ZAHL Spalten " "(Vorgabe: 8)." -#: src/sdiff.c:193 +#: src/sdiff.c:192 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "" "-d, --minimal Intensiv nach einer kleineren Menge von " "Änderungen suchen." -#: src/sdiff.c:194 +#: src/sdiff.c:193 msgid "" "-H, --speed-large-files assume large files, many scattered small changes" msgstr "" @@ -1472,39 +1473,39 @@ msgstr "" "verstreuten,\n" " kleinen Änderungen vermutet." -#: src/sdiff.c:195 +#: src/sdiff.c:194 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr "" " --diff-program=PROGRAMM PROGRAMM zum Vergleichen von Dateien verwenden." -#: src/sdiff.c:197 +#: src/sdiff.c:196 msgid " --help display this help and exit" msgstr " --help Diese Hilfe anzeigen und beenden." -#: src/sdiff.c:198 +#: src/sdiff.c:197 msgid "-v, --version output version information and exit" msgstr "-v, -version Versionsinformation ausgeben und beenden." -#: src/sdiff.c:207 +#: src/sdiff.c:206 #, c-format msgid "Usage: %s [OPTION]... FILE1 FILE2\n" msgstr "Aufruf: %s [OPTION]... DATEI1 DATEI2\n" -#: src/sdiff.c:209 +#: src/sdiff.c:208 msgid "Side-by-side merge of differences between FILE1 and FILE2." msgstr "" "Nebeneinanderstehendes Zusammenbringen der Unterschiede zwischen\n" "DATEI1 und DATEI2." -#: src/sdiff.c:330 +#: src/sdiff.c:328 msgid "cannot interactively merge standard input" msgstr "Die Standardeingabe kann nicht interaktiv zusammengebracht werden." -#: src/sdiff.c:597 +#: src/sdiff.c:594 msgid "both files to be compared are directories" msgstr "Beide zu vergleichende Dateien sind Verzeichnisse." -#: src/sdiff.c:820 +#: src/sdiff.c:817 msgid "" "ed:\tEdit then use both versions, each decorated with a header.\n" "eb:\tEdit then use both versions.\n" @@ -1529,12 +1530,12 @@ msgstr "" "v:\tAusführlich gemeinsame Zeilen übernehmen.\n" "q:\tBeenden.\n" -#: src/util.c:662 +#: src/util.c:755 #, c-format msgid "unrecognized prefix: %s" msgstr "Unbekanntes Präfix: %s" -#: src/util.c:692 +#: src/util.c:785 #, c-format msgid "unparsable value for --palette" msgstr "Wert für --palette ist nicht auswertbar" diff --git a/po/diffutils.pot b/po/diffutils.pot index 6d4a7f2..1e3831e 100644 --- a/po/diffutils.pot +++ b/po/diffutils.pot @@ -6,9 +6,9 @@ #, fuzzy msgid "" msgstr "" -"Project-Id-Version: GNU diffutils 3.8\n" +"Project-Id-Version: GNU diffutils 3.10\n" "Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n" -"POT-Creation-Date: 2021-08-01 18:56-0700\n" +"POT-Creation-Date: 2023-05-21 01:51-0700\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -17,29 +17,29 @@ msgstr "" "Content-Type: text/plain; charset=CHARSET\n" "Content-Transfer-Encoding: 8bit\n" -#: lib/argmatch.c:132 +#: lib/argmatch.c:145 #, c-format msgid "invalid argument %s for %s" msgstr "" -#: lib/argmatch.c:133 +#: lib/argmatch.c:146 #, c-format msgid "ambiguous argument %s for %s" msgstr "" -#: lib/argmatch.c:152 lib/argmatch.h:223 +#: lib/argmatch.c:165 lib/argmatch.h:242 msgid "Valid arguments are:" msgstr "" -#: lib/c-stack.c:187 +#: lib/c-stack.c:186 msgid "program error" msgstr "" -#: lib/c-stack.c:188 +#: lib/c-stack.c:187 msgid "stack overflow" msgstr "" -#: lib/error.c:195 +#: lib/error.c:193 msgid "Unknown system error" msgstr "" @@ -195,83 +195,83 @@ msgstr "" #. If you don't know what to put here, please see #. #. and use glyphs suitable for your language. -#: lib/quotearg.c:355 +#: lib/quotearg.c:354 msgid "`" msgstr "" -#: lib/quotearg.c:356 +#: lib/quotearg.c:355 msgid "'" msgstr "" -#: lib/regcomp.c:135 +#: lib/regcomp.c:122 msgid "Success" msgstr "" -#: lib/regcomp.c:138 +#: lib/regcomp.c:125 msgid "No match" msgstr "" -#: lib/regcomp.c:141 +#: lib/regcomp.c:128 msgid "Invalid regular expression" msgstr "" -#: lib/regcomp.c:144 +#: lib/regcomp.c:131 msgid "Invalid collation character" msgstr "" -#: lib/regcomp.c:147 +#: lib/regcomp.c:134 msgid "Invalid character class name" msgstr "" -#: lib/regcomp.c:150 +#: lib/regcomp.c:137 msgid "Trailing backslash" msgstr "" -#: lib/regcomp.c:153 +#: lib/regcomp.c:140 msgid "Invalid back reference" msgstr "" -#: lib/regcomp.c:156 +#: lib/regcomp.c:143 msgid "Unmatched [, [^, [:, [., or [=" msgstr "" -#: lib/regcomp.c:159 +#: lib/regcomp.c:146 msgid "Unmatched ( or \\(" msgstr "" -#: lib/regcomp.c:162 +#: lib/regcomp.c:149 msgid "Unmatched \\{" msgstr "" -#: lib/regcomp.c:165 +#: lib/regcomp.c:152 msgid "Invalid content of \\{\\}" msgstr "" -#: lib/regcomp.c:168 +#: lib/regcomp.c:155 msgid "Invalid range end" msgstr "" -#: lib/regcomp.c:171 +#: lib/regcomp.c:158 msgid "Memory exhausted" msgstr "" -#: lib/regcomp.c:174 +#: lib/regcomp.c:161 msgid "Invalid preceding regular expression" msgstr "" -#: lib/regcomp.c:177 +#: lib/regcomp.c:164 msgid "Premature end of regular expression" msgstr "" -#: lib/regcomp.c:180 +#: lib/regcomp.c:167 msgid "Regular expression too big" msgstr "" -#: lib/regcomp.c:183 +#: lib/regcomp.c:170 msgid "Unmatched ) or \\)" msgstr "" -#: lib/regcomp.c:676 +#: lib/regcomp.c:650 msgid "No previous regular expression" msgstr "" @@ -446,17 +446,17 @@ msgstr "" msgid "General help using GNU software: <%s>\n" msgstr "" -#: src/analyze.c:454 src/diff.c:1406 +#: src/analyze.c:455 src/diff.c:1478 #, c-format msgid "Files %s and %s differ\n" msgstr "" -#: src/analyze.c:455 +#: src/analyze.c:456 #, c-format msgid "Binary files %s and %s differ\n" msgstr "" -#: src/analyze.c:706 src/diff3.c:1470 src/util.c:1254 +#: src/analyze.c:707 src/diff3.c:1457 src/util.c:1354 msgid "No newline at end of file" msgstr "" @@ -470,418 +470,419 @@ msgstr "" msgid "David MacKenzie" msgstr "" -#: src/cmp.c:120 src/diff.c:879 src/diff3.c:467 src/sdiff.c:160 +#: src/cmp.c:124 src/diff.c:939 src/diff3.c:465 src/sdiff.c:159 #, c-format msgid "Try '%s --help' for more information." msgstr "" -#: src/cmp.c:138 +#: src/cmp.c:142 #, c-format msgid "invalid --ignore-initial value '%s'" msgstr "" -#: src/cmp.c:148 +#: src/cmp.c:152 #, c-format msgid "options -l and -s are incompatible" msgstr "" -#: src/cmp.c:156 src/diff.c:887 src/diff3.c:474 src/sdiff.c:168 src/sdiff.c:316 -#: src/sdiff.c:323 src/sdiff.c:876 src/util.c:852 src/util.c:952 src/util.c:959 +#: src/cmp.c:160 src/diff.c:947 src/diff3.c:472 src/sdiff.c:167 src/sdiff.c:314 +#: src/sdiff.c:321 src/sdiff.c:873 src/util.c:952 src/util.c:1052 +#: src/util.c:1059 msgid "write failed" msgstr "" -#: src/cmp.c:158 src/diff.c:889 src/diff.c:1471 src/diff3.c:476 src/sdiff.c:170 +#: src/cmp.c:162 src/diff.c:949 src/diff.c:1543 src/diff3.c:474 src/sdiff.c:169 msgid "standard output" msgstr "" -#: src/cmp.c:162 +#: src/cmp.c:166 msgid "-b, --print-bytes print differing bytes" msgstr "" -#: src/cmp.c:163 +#: src/cmp.c:167 msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs" msgstr "" -#: src/cmp.c:164 +#: src/cmp.c:168 msgid "" "-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n" " first SKIP2 bytes of FILE2" msgstr "" -#: src/cmp.c:166 +#: src/cmp.c:170 msgid "" "-l, --verbose output byte numbers and differing byte values" msgstr "" -#: src/cmp.c:167 +#: src/cmp.c:171 msgid "-n, --bytes=LIMIT compare at most LIMIT bytes" msgstr "" -#: src/cmp.c:168 +#: src/cmp.c:172 msgid "-s, --quiet, --silent suppress all normal output" msgstr "" -#: src/cmp.c:169 +#: src/cmp.c:173 msgid " --help display this help and exit" msgstr "" -#: src/cmp.c:170 +#: src/cmp.c:174 msgid "-v, --version output version information and exit" msgstr "" -#: src/cmp.c:179 +#: src/cmp.c:183 #, c-format msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n" msgstr "" -#: src/cmp.c:181 +#: src/cmp.c:185 msgid "Compare two files byte by byte." msgstr "" -#: src/cmp.c:183 +#: src/cmp.c:187 msgid "" "The optional SKIP1 and SKIP2 specify the number of bytes to skip\n" "at the beginning of each file (zero by default)." msgstr "" -#: src/cmp.c:186 src/diff.c:999 src/diff3.c:514 src/sdiff.c:211 +#: src/cmp.c:190 src/diff.c:1059 src/diff3.c:512 src/sdiff.c:210 msgid "" "Mandatory arguments to long options are mandatory for short options too.\n" msgstr "" -#: src/cmp.c:192 +#: src/cmp.c:196 msgid "" "SKIP values may be followed by the following multiplicative suffixes:\n" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" "GB 1,000,000,000, G 1,073,741,824, and so on for T, P, E, Z, Y." msgstr "" -#: src/cmp.c:195 +#: src/cmp.c:199 msgid "If a FILE is '-' or missing, read standard input." msgstr "" -#: src/cmp.c:196 src/diff.c:987 src/sdiff.c:221 +#: src/cmp.c:200 src/diff.c:1047 src/sdiff.c:220 msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble." msgstr "" -#: src/cmp.c:243 +#: src/cmp.c:247 #, c-format msgid "invalid --bytes value '%s'" msgstr "" -#: src/cmp.c:269 src/diff.c:797 src/diff3.c:361 src/sdiff.c:567 +#: src/cmp.c:273 src/diff.c:857 src/diff3.c:368 src/sdiff.c:564 #, c-format msgid "missing operand after '%s'" msgstr "" -#: src/cmp.c:281 src/diff.c:799 src/diff3.c:363 src/sdiff.c:569 +#: src/cmp.c:285 src/diff.c:859 src/diff3.c:370 src/sdiff.c:566 #, c-format msgid "extra operand '%s'" msgstr "" -#: src/cmp.c:507 +#: src/cmp.c:521 #, c-format msgid "%s %s differ: byte %s, line %s\n" msgstr "" -#: src/cmp.c:523 +#: src/cmp.c:537 #, c-format msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n" msgstr "" -#: src/cmp.c:580 +#: src/cmp.c:594 #, c-format msgid "cmp: EOF on %s which is empty\n" msgstr "" -#: src/cmp.c:594 +#: src/cmp.c:608 #, c-format msgid "cmp: EOF on %s after byte %s, line %s\n" msgstr "" -#: src/cmp.c:595 +#: src/cmp.c:609 #, c-format msgid "cmp: EOF on %s after byte %s, in line %s\n" msgstr "" -#: src/cmp.c:601 +#: src/cmp.c:615 #, c-format msgid "cmp: EOF on %s after byte %s\n" msgstr "" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:51 +#: src/diff.c:50 msgid "Paul Eggert" msgstr "" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:52 +#: src/diff.c:51 msgid "Mike Haertel" msgstr "" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:53 +#: src/diff.c:52 msgid "David Hayes" msgstr "" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:54 +#: src/diff.c:53 msgid "Richard Stallman" msgstr "" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:55 +#: src/diff.c:54 msgid "Len Tower" msgstr "" -#: src/diff.c:355 +#: src/diff.c:365 #, c-format msgid "invalid context length '%s'" msgstr "" -#: src/diff.c:438 +#: src/diff.c:487 #, c-format msgid "pagination not supported on this host" msgstr "" -#: src/diff.c:453 src/diff3.c:341 +#: src/diff.c:502 src/diff3.c:348 #, c-format msgid "too many file label options" msgstr "" -#: src/diff.c:530 +#: src/diff.c:579 #, c-format msgid "invalid width '%s'" msgstr "" -#: src/diff.c:534 +#: src/diff.c:583 msgid "conflicting width options" msgstr "" -#: src/diff.c:559 +#: src/diff.c:608 #, c-format msgid "invalid horizon length '%s'" msgstr "" -#: src/diff.c:615 +#: src/diff.c:664 #, c-format msgid "invalid tabsize '%s'" msgstr "" -#: src/diff.c:619 +#: src/diff.c:668 msgid "conflicting tabsize options" msgstr "" -#: src/diff.c:774 +#: src/diff.c:834 msgid "--from-file and --to-file both specified" msgstr "" -#: src/diff.c:893 +#: src/diff.c:953 msgid " --normal output a normal diff (the default)" msgstr "" -#: src/diff.c:894 +#: src/diff.c:954 msgid "-q, --brief report only when files differ" msgstr "" -#: src/diff.c:895 +#: src/diff.c:955 msgid "-s, --report-identical-files report when two files are the same" msgstr "" -#: src/diff.c:896 +#: src/diff.c:956 msgid "" "-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context" msgstr "" -#: src/diff.c:897 +#: src/diff.c:957 msgid "" "-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context" msgstr "" -#: src/diff.c:898 +#: src/diff.c:958 msgid "-e, --ed output an ed script" msgstr "" -#: src/diff.c:899 +#: src/diff.c:959 msgid "-n, --rcs output an RCS format diff" msgstr "" -#: src/diff.c:900 +#: src/diff.c:960 msgid "-y, --side-by-side output in two columns" msgstr "" -#: src/diff.c:901 +#: src/diff.c:961 msgid "" "-W, --width=NUM output at most NUM (default 130) print columns" msgstr "" -#: src/diff.c:902 +#: src/diff.c:962 msgid "" " --left-column output only the left column of common lines" msgstr "" -#: src/diff.c:903 +#: src/diff.c:963 msgid " --suppress-common-lines do not output common lines" msgstr "" -#: src/diff.c:905 +#: src/diff.c:965 msgid "-p, --show-c-function show which C function each change is in" msgstr "" -#: src/diff.c:906 +#: src/diff.c:966 msgid "-F, --show-function-line=RE show the most recent line matching RE" msgstr "" -#: src/diff.c:907 +#: src/diff.c:967 msgid "" " --label LABEL use LABEL instead of file name and timestamp\n" " (can be repeated)" msgstr "" -#: src/diff.c:910 +#: src/diff.c:970 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "" -#: src/diff.c:911 +#: src/diff.c:971 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" -#: src/diff.c:912 +#: src/diff.c:972 msgid "" " --tabsize=NUM tab stops every NUM (default 8) print columns" msgstr "" -#: src/diff.c:913 +#: src/diff.c:973 msgid "" " --suppress-blank-empty suppress space or tab before empty output lines" msgstr "" -#: src/diff.c:914 +#: src/diff.c:974 msgid "-l, --paginate pass output through 'pr' to paginate it" msgstr "" -#: src/diff.c:916 +#: src/diff.c:976 msgid "" "-r, --recursive recursively compare any subdirectories found" msgstr "" -#: src/diff.c:917 +#: src/diff.c:977 msgid " --no-dereference don't follow symbolic links" msgstr "" -#: src/diff.c:918 +#: src/diff.c:978 msgid "-N, --new-file treat absent files as empty" msgstr "" -#: src/diff.c:919 +#: src/diff.c:979 msgid " --unidirectional-new-file treat absent first files as empty" msgstr "" -#: src/diff.c:920 +#: src/diff.c:980 msgid " --ignore-file-name-case ignore case when comparing file names" msgstr "" -#: src/diff.c:921 +#: src/diff.c:981 msgid " --no-ignore-file-name-case consider case when comparing file names" msgstr "" -#: src/diff.c:922 +#: src/diff.c:982 msgid "-x, --exclude=PAT exclude files that match PAT" msgstr "" -#: src/diff.c:923 +#: src/diff.c:983 msgid "" "-X, --exclude-from=FILE exclude files that match any pattern in FILE" msgstr "" -#: src/diff.c:924 +#: src/diff.c:984 msgid "" "-S, --starting-file=FILE start with FILE when comparing directories" msgstr "" -#: src/diff.c:925 +#: src/diff.c:985 msgid "" " --from-file=FILE1 compare FILE1 to all operands;\n" " FILE1 can be a directory" msgstr "" -#: src/diff.c:927 +#: src/diff.c:987 msgid "" " --to-file=FILE2 compare all operands to FILE2;\n" " FILE2 can be a directory" msgstr "" -#: src/diff.c:930 +#: src/diff.c:990 msgid "" "-i, --ignore-case ignore case differences in file contents" msgstr "" -#: src/diff.c:931 +#: src/diff.c:991 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" -#: src/diff.c:932 +#: src/diff.c:992 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "" -#: src/diff.c:933 +#: src/diff.c:993 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "" -#: src/diff.c:934 +#: src/diff.c:994 msgid "-w, --ignore-all-space ignore all white space" msgstr "" -#: src/diff.c:935 +#: src/diff.c:995 msgid "" "-B, --ignore-blank-lines ignore changes where lines are all blank" msgstr "" -#: src/diff.c:936 +#: src/diff.c:996 msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE" msgstr "" -#: src/diff.c:938 +#: src/diff.c:998 msgid "-a, --text treat all files as text" msgstr "" -#: src/diff.c:939 +#: src/diff.c:999 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" -#: src/diff.c:941 +#: src/diff.c:1001 msgid " --binary read and write data in binary mode" msgstr "" -#: src/diff.c:944 +#: src/diff.c:1004 msgid "" "-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs" msgstr "" -#: src/diff.c:945 +#: src/diff.c:1005 msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT" msgstr "" -#: src/diff.c:946 +#: src/diff.c:1006 msgid " --line-format=LFMT format all input lines with LFMT" msgstr "" -#: src/diff.c:947 +#: src/diff.c:1007 msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT" msgstr "" -#: src/diff.c:948 +#: src/diff.c:1008 msgid "" " These format options provide fine-grained control over the output\n" " of diff, generalizing -D/--ifdef." msgstr "" -#: src/diff.c:950 +#: src/diff.c:1010 msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'." msgstr "" -#: src/diff.c:951 +#: src/diff.c:1011 msgid "" " GFMT (only) may contain:\n" " %< lines from FILE1\n" @@ -897,7 +898,7 @@ msgid "" " %(A=B?T:E) if A equals B then T else E" msgstr "" -#: src/diff.c:963 +#: src/diff.c:1023 msgid "" " LFMT (only) may contain:\n" " %L contents of line\n" @@ -905,7 +906,7 @@ msgid "" " %[-][WIDTH][.[PREC]]{doxX}n printf-style spec for input line number" msgstr "" -#: src/diff.c:967 +#: src/diff.c:1027 msgid "" " Both GFMT and LFMT may contain:\n" " %% %\n" @@ -914,209 +915,209 @@ msgid "" " C the character C (other characters represent themselves)" msgstr "" -#: src/diff.c:973 +#: src/diff.c:1033 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "" -#: src/diff.c:974 +#: src/diff.c:1034 msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix" msgstr "" -#: src/diff.c:975 +#: src/diff.c:1035 msgid "" " --speed-large-files assume large files and many scattered small changes" msgstr "" -#: src/diff.c:976 +#: src/diff.c:1036 msgid "" " --color[=WHEN] color output; WHEN is 'never', 'always', or " "'auto';\n" " plain --color means --color='auto'" msgstr "" -#: src/diff.c:978 +#: src/diff.c:1038 msgid "" " --palette=PALETTE the colors to use when --color is active; PALETTE " "is\n" " a colon-separated list of terminfo capabilities" msgstr "" -#: src/diff.c:981 +#: src/diff.c:1041 msgid " --help display this help and exit" msgstr "" -#: src/diff.c:982 +#: src/diff.c:1042 msgid "-v, --version output version information and exit" msgstr "" -#: src/diff.c:984 +#: src/diff.c:1044 msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'." msgstr "" -#: src/diff.c:985 +#: src/diff.c:1045 msgid "" "If --from-file or --to-file is given, there are no restrictions on FILE(s)." msgstr "" -#: src/diff.c:986 src/diff3.c:533 src/sdiff.c:220 +#: src/diff.c:1046 src/diff3.c:531 src/sdiff.c:219 msgid "If a FILE is '-', read standard input." msgstr "" -#: src/diff.c:996 +#: src/diff.c:1056 #, c-format msgid "Usage: %s [OPTION]... FILES\n" msgstr "" -#: src/diff.c:997 +#: src/diff.c:1057 msgid "Compare FILES line by line." msgstr "" -#: src/diff.c:1034 +#: src/diff.c:1094 #, c-format msgid "conflicting %s option value '%s'" msgstr "" -#: src/diff.c:1047 +#: src/diff.c:1107 #, c-format msgid "conflicting output style options" msgstr "" -#: src/diff.c:1063 +#: src/diff.c:1123 #, c-format msgid "invalid color '%s'" msgstr "" -#: src/diff.c:1119 src/diff.c:1329 +#: src/diff.c:1197 src/diff.c:1401 #, c-format msgid "Only in %s: %s\n" msgstr "" -#: src/diff.c:1253 +#: src/diff.c:1325 msgid "cannot compare '-' to a directory" msgstr "" -#: src/diff.c:1288 +#: src/diff.c:1360 msgid "-D option not supported with directories" msgstr "" -#: src/diff.c:1297 +#: src/diff.c:1369 #, c-format msgid "Common subdirectories: %s and %s\n" msgstr "" -#: src/diff.c:1339 src/diff.c:1389 +#: src/diff.c:1411 src/diff.c:1461 #, c-format msgid "File %s is a %s while file %s is a %s\n" msgstr "" -#: src/diff.c:1375 +#: src/diff.c:1447 #, c-format msgid "Symbolic links %s and %s differ\n" msgstr "" -#: src/diff.c:1462 +#: src/diff.c:1534 #, c-format msgid "Files %s and %s are identical\n" msgstr "" #. This is a proper name. See the gettext manual, section Names. -#: src/diff3.c:43 +#: src/diff3.c:51 msgid "Randy Smith" msgstr "" -#: src/diff3.c:356 +#: src/diff3.c:363 #, c-format msgid "incompatible options" msgstr "" -#: src/diff3.c:396 +#: src/diff3.c:403 msgid "'-' specified for more than one input file" msgstr "" -#: src/diff3.c:447 src/diff3.c:1295 src/diff3.c:1698 src/diff3.c:1753 -#: src/sdiff.c:308 src/sdiff.c:846 src/sdiff.c:857 +#: src/diff3.c:445 src/diff3.c:1284 src/diff3.c:1683 src/diff3.c:1738 +#: src/sdiff.c:306 src/sdiff.c:843 src/sdiff.c:854 msgid "read failed" msgstr "" -#: src/diff3.c:480 +#: src/diff3.c:478 msgid "-A, --show-all output all changes, bracketing conflicts" msgstr "" -#: src/diff3.c:482 +#: src/diff3.c:480 msgid "" "-e, --ed output ed script incorporating changes\n" " from OLDFILE to YOURFILE into MYFILE" msgstr "" -#: src/diff3.c:484 +#: src/diff3.c:482 msgid "-E, --show-overlap like -e, but bracket conflicts" msgstr "" -#: src/diff3.c:485 +#: src/diff3.c:483 msgid "" "-3, --easy-only like -e, but incorporate only nonoverlapping " "changes" msgstr "" -#: src/diff3.c:486 +#: src/diff3.c:484 msgid "" "-x, --overlap-only like -e, but incorporate only overlapping changes" msgstr "" -#: src/diff3.c:487 +#: src/diff3.c:485 msgid "-X like -x, but bracket conflicts" msgstr "" -#: src/diff3.c:488 +#: src/diff3.c:486 msgid "-i append 'w' and 'q' commands to ed scripts" msgstr "" -#: src/diff3.c:490 +#: src/diff3.c:488 msgid "" "-m, --merge output actual merged file, according to\n" " -A if no other options are given" msgstr "" -#: src/diff3.c:493 +#: src/diff3.c:491 msgid "-a, --text treat all files as text" msgstr "" -#: src/diff3.c:494 +#: src/diff3.c:492 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" -#: src/diff3.c:495 +#: src/diff3.c:493 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" -#: src/diff3.c:496 +#: src/diff3.c:494 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr "" -#: src/diff3.c:497 +#: src/diff3.c:495 msgid "" "-L, --label=LABEL use LABEL instead of file name\n" " (can be repeated up to three times)" msgstr "" -#: src/diff3.c:500 +#: src/diff3.c:498 msgid " --help display this help and exit" msgstr "" -#: src/diff3.c:501 +#: src/diff3.c:499 msgid "-v, --version output version information and exit" msgstr "" -#: src/diff3.c:510 +#: src/diff3.c:508 #, c-format msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n" msgstr "" -#: src/diff3.c:512 +#: src/diff3.c:510 msgid "Compare three files line by line." msgstr "" -#: src/diff3.c:522 +#: src/diff3.c:520 msgid "" "\n" "The default output format is a somewhat human-readable representation of\n" @@ -1130,54 +1131,54 @@ msgid "" "robust than using ed.\n" msgstr "" -#: src/diff3.c:534 +#: src/diff3.c:532 msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble." msgstr "" -#: src/diff3.c:727 +#: src/diff3.c:725 msgid "internal error: screwup in format of diff blocks" msgstr "" -#: src/diff3.c:1022 +#: src/diff3.c:1015 #, c-format msgid "%s: diff failed: " msgstr "" -#: src/diff3.c:1044 +#: src/diff3.c:1037 msgid "internal error: invalid diff type in process_diff" msgstr "" -#: src/diff3.c:1069 +#: src/diff3.c:1060 msgid "invalid diff format; invalid change separator" msgstr "" -#: src/diff3.c:1305 +#: src/diff3.c:1294 msgid "invalid diff format; incomplete last line" msgstr "" -#: src/diff3.c:1329 src/sdiff.c:276 src/util.c:969 +#: src/diff3.c:1318 src/sdiff.c:274 src/util.c:1069 #, c-format msgid "subsidiary program '%s' could not be invoked" msgstr "" -#: src/diff3.c:1354 +#: src/diff3.c:1343 msgid "invalid diff format; incorrect leading line chars" msgstr "" -#: src/diff3.c:1427 +#: src/diff3.c:1416 msgid "internal error: invalid diff type passed to output" msgstr "" -#: src/diff3.c:1700 src/diff3.c:1757 +#: src/diff3.c:1685 src/diff3.c:1742 msgid "input file shrank" msgstr "" -#: src/dir.c:156 +#: src/dir.c:154 #, c-format msgid "cannot compare file names '%s' and '%s'" msgstr "" -#: src/dir.c:225 +#: src/dir.c:223 #, c-format msgid "%s: recursive directory loop" msgstr "" @@ -1187,111 +1188,111 @@ msgstr "" msgid "Thomas Lord" msgstr "" -#: src/sdiff.c:174 +#: src/sdiff.c:173 msgid "" "-o, --output=FILE operate interactively, sending output to FILE" msgstr "" -#: src/sdiff.c:176 +#: src/sdiff.c:175 msgid "" "-i, --ignore-case consider upper- and lower-case to be the same" msgstr "" -#: src/sdiff.c:177 +#: src/sdiff.c:176 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" -#: src/sdiff.c:178 +#: src/sdiff.c:177 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "" -#: src/sdiff.c:179 +#: src/sdiff.c:178 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "" -#: src/sdiff.c:180 +#: src/sdiff.c:179 msgid "-W, --ignore-all-space ignore all white space" msgstr "" -#: src/sdiff.c:181 +#: src/sdiff.c:180 msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank" msgstr "" -#: src/sdiff.c:182 +#: src/sdiff.c:181 msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE" msgstr "" -#: src/sdiff.c:183 +#: src/sdiff.c:182 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" -#: src/sdiff.c:184 +#: src/sdiff.c:183 msgid "-a, --text treat all files as text" msgstr "" -#: src/sdiff.c:186 +#: src/sdiff.c:185 msgid "" "-w, --width=NUM output at most NUM (default 130) print columns" msgstr "" -#: src/sdiff.c:187 +#: src/sdiff.c:186 msgid "" "-l, --left-column output only the left column of common lines" msgstr "" -#: src/sdiff.c:188 +#: src/sdiff.c:187 msgid "-s, --suppress-common-lines do not output common lines" msgstr "" -#: src/sdiff.c:190 +#: src/sdiff.c:189 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "" -#: src/sdiff.c:191 +#: src/sdiff.c:190 msgid "" " --tabsize=NUM tab stops at every NUM (default 8) print columns" msgstr "" -#: src/sdiff.c:193 +#: src/sdiff.c:192 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "" -#: src/sdiff.c:194 +#: src/sdiff.c:193 msgid "" "-H, --speed-large-files assume large files, many scattered small changes" msgstr "" -#: src/sdiff.c:195 +#: src/sdiff.c:194 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr "" -#: src/sdiff.c:197 +#: src/sdiff.c:196 msgid " --help display this help and exit" msgstr "" -#: src/sdiff.c:198 +#: src/sdiff.c:197 msgid "-v, --version output version information and exit" msgstr "" -#: src/sdiff.c:207 +#: src/sdiff.c:206 #, c-format msgid "Usage: %s [OPTION]... FILE1 FILE2\n" msgstr "" -#: src/sdiff.c:209 +#: src/sdiff.c:208 msgid "Side-by-side merge of differences between FILE1 and FILE2." msgstr "" -#: src/sdiff.c:330 +#: src/sdiff.c:328 msgid "cannot interactively merge standard input" msgstr "" -#: src/sdiff.c:597 +#: src/sdiff.c:594 msgid "both files to be compared are directories" msgstr "" -#: src/sdiff.c:820 +#: src/sdiff.c:817 msgid "" "ed:\tEdit then use both versions, each decorated with a header.\n" "eb:\tEdit then use both versions.\n" @@ -1305,12 +1306,12 @@ msgid "" "q:\tQuit.\n" msgstr "" -#: src/util.c:662 +#: src/util.c:755 #, c-format msgid "unrecognized prefix: %s" msgstr "" -#: src/util.c:692 +#: src/util.c:785 #, c-format msgid "unparsable value for --palette" msgstr "" diff --git a/po/el.gmo b/po/el.gmo index 9e74012d338af87da7b3633abebe0d1794e58db8..b3a1afa0b24bd7c6af20abe42a0ab40aee0918fa 100644 GIT binary patch delta 6794 zcmdVedt6jy9>?)#22cacTS9=!K}Ae~xLE>2zd6T!wYz`p{;~h;^Xkj{dCv7Y&-0uE z_RdSzmk(P#Cwlv@QIu{LrTXDD-IS`J-qusLDy4-eHHUT-j-$OiRH?D}s%fuF*+#nz zQ}F{FiD6+%HDd{0iJf=_`iCnu0@E>BDUWKPlFNpzn2o3K2274nDjy%kO#B7YF`Zt@ z@l7b(pTl*i`YTlc_n_?m9LHn)0HfnBETsJ;N(TcXm72i)RR$H=u^gqx?_d^|XiDwF z)!5DmltwAFoAyrwmCC^#gOsx456CHM=3u1~@FwhoJFyoYMEb6dVl19UIetJio%2x1 zpb~@ga44=p9!l*)Iq*H?{_0m8hQFa74jp0~AB&S{m*aTchI#lEW@8E$m+M}S6R;g+ zD!)ZfCY5CNrlA{U$4-Fb(!HZyovVfC{rw!;{P4B9oZjK5rHD;s2ye1s_&7H3?b2q)0K8T0T}lpzj{H!hrqIkeZHEXw1U zh>@2owFHY%M&KCA`H`F~9iD@7o;QKBWX=7>;xCB3z6Q;Y!TMbRM@S-ipDv7Q10PhT(RU4!(%;K%beO#Y<=h@Ko}|;W!9~ z_}a|>RaE50lTmuyfPHW&$_?9a7w$kFLd{}cy5f4&a5FaGL6jSeVE*KRvamOnVl>vE zbYz9O|31;f1}~KX_yWq4eTsZz)M;eBs7o@9AxT-<9&>EBuKZFdDI)JhUenS?# zO5|M}juptOu5L$p^4%DT$Iuf&<7iIsOC?j$VW$3@bM3fcH8>^C#H(c3Jrg|+7!d*EYW5ZE4$c4W{>5yNp@dS}5 z7s^MzJ*ov||AQzud;#UWcTv{LDeR8Fqpb2^J|c3%!KPzSMq)Y+#AXi_-y*|6HtayT z@KfdihcKG zI0mp`uh~9;v9w=8x#3y#jSQbXc{?IeE|`q+L}O8&xB>&Q8M|RCO2=-;PNr}@9<=gh zEZ{e$y#K=|(n}6ljG9~n@%WZo@qag)A5cHzTSvv>@7 zkAFZ$Ne!(rhP)AF(JaGE+>SYT3a`WzhJn#lwU~}i;wU_WS(w0ZiB4n&)Z^%(GwMky zbV!BRjoj*2fu|&P&zQvWlT{g%E*kQ z*V*VnX}^F=F}TtA`(RBY-H;vq=NpTu8W~M>2pKh%(qw#c+fe4V19>Pld4Wj4t zrCBNZsy3h(gL!N@Za+@PIEG2uOR*Er;&^=C!+1=f()C88XQfEz)Nzy!l(3YU9kmDL zxIuKd5*;WVeFK>tmAcTd-L(56@wp5`%(7CbCpaiN15BTC_{N1`E;nL+l;rT0TXF&#f$K5 zdcVGu4rIj+@g@5d3e zJ23>UcN(v681|$chvzW^=W&0PvC`PF9Sdnci{E3=D&q#fV=vl)cNrtl4`oirVFI>c z1RgRyiNk0IutKE+2{;CGu^5-2oOcX8((}O8#&5eElp(H1S+#d#0e+8pIA)D8)Jrjw z_92uH%*AVse^O0Axp6D@!<}fwPL%5&#=-a_$|8)ooAH+$xbF7-GEn=mmUiSisVvD)Q*k6g0X|F8VeHP{XlbC_s?=w19fOBbY z!V(PjY&QPJn}um?SdG%-!ze>_7G-Y3+l@td1%}fu!X&h#9M^{NcmR9icNmD4Eykh_ z#!T8H(1G)@8+tycA~*aN2Vvi>#xI#v45NJwUW)Tk=K4yC7fILm4yh`@V`!7#5i^#>L@Y<@6$qZ@yp>&w_X8fyJzZ|b1UzzRM zxW}x^^ei;%7g$W?De^XnC0)4xKNY?;>N|5wHm)Ekgf~zfCD)QVa)`)R&B_pbi|2`q z+H2%OSxzOAyiAJBjq+OBiQM-WF_#}w?lSQG_8Lc>kCU&+>nG(tlI*J~^=DHdnye&q zNGQ31Xhh0Ja*TXW))OhR`n$@!8O7sUl`K|Y>1ujCK2Cy2F!_Q=`I=nfs~JCfz!LH| z@;teTSh#o`{y-ieQut2!N`mPHZkBPlk`~_`Upa0nOeghZ9{Gu!B_9wz1-`G>uh>GQ z3?WU#M&$pby@|JwMdU(RN@XG$N~+1N)h`K2k>HW3!z&NGBOY9wt)SNTaW2{1d;Gx~JUSaHHu}rpqwEoTrzlA0|7=1ahHt zVgCRc?~{*+>%tC{kJfW$I}v{)-mV zL!>-L3dq&cpgd}z-oyE1m)Y)*!$=mn#@u$P=?33>KqHk{&5eb)j=VrB$U!odJVM5k zd?Mv_vX?wd1`;WslWq0vpj*dq%SEYV~CXA zWD?myUL;SFdx(_lh?5K_7n1-INPZ`$NKf)3`D4j{i`GeViyu?*3iSiTpZYdTCnaPu z@gtv+ndDs}!+Lh4Xm%Nu-9pEamM-cY!!8`3$4+{ao(>&2S!Eb z+Uji1idt=st+rlkblK}>Yq>?`n#)n+ZmMwF(zH?0t_*Kb>RgMbz+PpmbJ?`qNd@zh zho||Dqpr~tm)%jPB}*S_E8I4x@1*#^vN?2>|7x5z+aIpj>}b@uw6WRk(5mKC)XlbO z6?N5`(^hSFxt;dPMz>9~yX6u#j^r9e6NhV4vPw#_ipr+NYMkYsW7BL4+_pNmR&R68 zv%B54YOS)F4m8CFdK=RwS^{kK4yRjx@wQ0so9Uki^{lbi+O%q$tIBDwcRQRe@1wb) z7XK^bQxf%#ys_Pr;t~?$60XpalGBnByy5w=7E7`>|Ekkgi>9X)&af!m9vY#S7hbA& z6vkSWrk^XUDO55`<|zM9CT{S5o;Yq@Q8bTU`F?swO^mnbql?4!ZzkFGZzt_$$Clz7 z>F#e~;rghO<^Iw~{iC5_dPi-l-oNy?Rg2RbLi>7qlv({axYv{x4$kNwqW73O`Cs+E zKDCDoz=zX2ESmS>tG8L8ct)=PwpCWnpz&O#H6TF6jg8gxU!%jkAI`qV;=SIU?596c z`@FYd-ZK_G-cjOR0IUwcXhSu0~_~v-)~$T;H_>+4A9pu zba?|8g$4X~>r#(e+^TO|{IyqK^7#MP`pj8&r`1@W-WP8x?`GNM?YBC_qPOW0-l8?7 iU95*&z3m%*?-J&6^IB9mtF?byyqh)`SoBlvbN>!2@l|mE delta 6018 zcmY+|2YeJ&0>|;Un@|H9KnY1Gfj|J0ENPU477|Jzfe=DaIs}41A~p1~Gy&;hm8PO} zk)XoDoiu5l0(z7K0YyPMK`Ejl7K(Vk|IXxdcklE0@Ati#**9pgT*ufaL*-51x8y?_POb#)oBObtHEE8%>b4)|NVCJB`ePZY=)I<8k3Ic*qQU2l~g9N;TpEV{ofmJRAy4q zj{T^qQtz6|F19OhI_=BY9Q!sjrW3A4eeYY;%r#(?y0^now`47<|66uDBGQ;vw8x_Q z*%`_FYmwYxLjp!HPwJpIYQ#%14KJalxNfx7aSpbpy&hBW2F79(^Ewavp=RJZ>ibcR ztO1WheeV#?#WFF>zYbVJ@A|?8RJ#Vf&A}n4)q4vy&^mEeN4-$TZ$e$kEzH3Bj9#m} z5R>t3)c0;-OAO~KTi`(KjBDLglBwLr))>vVHAOF=4lG6u;09_&!f0rF0jh(oNZ;mn ztcj7Ftu}T-ExrP~Js-8E-o^ktfls3QJQYpJb<_x>c}8?k^DzS7MRj~0gYZ|>Kq@9$ zQ{EGG+(N91J5h`HIBEdbQQvd25LnM91S?@{4AJwSMWq}Y3a}%N$3Q%U74Qs}#mg9s z-=PNNVBU2FVYV^&6zycx73N?#4z$}ZVhHUb)If_dP|yESDm&P44(Z#>Wq!-xVGP6L zI2v!FI_|?X=?aEoWt@!la4~8CUVHyB+b>W9zKyz|fL5#{tcD4k-!!LE9Y>*F42w}6 z?MIFD3^F$JJ?dW9WudTu&2t!u^N}al>_T1fmskt6utFgWHB&86?~@GF`MRK6SCCJI zN7zh9EuObf9iBjKzl$13^)@^i7?0YXg}V1suqLj@Fg$E~6*U0A6zkU2LJcGl%VEb9 z=HH)6HXBAbxFXbmK4t}m;TNd=4^cCs*PN#QX^h4C$dhM!B2TVagu2HEP&0ASZa+fx z8^klK0X>7dfcEX&R!5`Qz&pgOw+}dtI^k{97acqzT9i*=MXZNf)$ynkrrQod&BRQs zgKwg~cNELxIaI$_?EUxLRO+!IsDpK-Em0>(K`pkfr~&jrEuN96shf)GXfBq;=EEb^#v<6Rd z>$c!gCy#F@UcYQl>dY@GuEyu_J{I7>F1+0EB%amt-y)OuJsSeMT0g4=s4twyJZzO^ z{rGIejkLqNS&!>6oKAakHVYW<<6z9|&NSl*?1gXSuy`5Z1Dr~`(zDj_OK`ZJ{|EMl zyyuKr&H-moCm!6>m<4#kHizC$(Eb{AW!o5aJ30>N!;|1g`to-J?F|FCUF^@zwFY_+ z<7tl`Wc@~L!YZ`yVja$JN;B+aY=|reGaQ@Z4rDgX4Q!4HjH(5W!Zx_w_D5vqP3#bB z>JyOh7!Pur%}QK`SCC0FqnO@8Jc{lyRGJO7c5FjU(PPv-nljAt2I>|)JDll8FU~?2 z^RDA};0(37!AJ02)WFBkiTXc)x>YeFbi>(?8c3s&G&88o8fm?HPvLpmj=QiOJxLSM}bzIs+Yf^e)76X{i za@Z1!u>;n{dsqR37g&GoMj-3cWTKv$y%>bQp)TZ!h1Q$1CI)Ca$S zpuHR2&8Xa^q7z4YtUnBTpp*7kRLA2{Q~f$>u^mC3AmnB1h4VaWMm|CpCcI(|Y!GU( zEyg4~h1y?!g)u!aaRu|AMP(TqvhgZvWKC9DzlvkAGVRsqkHwhk$CaZ7{_7g+Z${Uv z*8YhY&h}}jr)3>#$}eFaCcI`1cnxZ1@4v?UM^Z_A-7*i=K@qmX-Kc@x!+cCzYdvPW zFoAZNH>@jbf%RxlK;KMZDD5K{gqJY{f5SMe^rm%OTQ?O=$uJDWRahRkVguZT$@mqH z#G31@pWh{@6Rt!J_yE?yZ!j4B*YgJ^)LC1*zl3v{uFa) zpT+vvaD%m&vaky6HK-H4gX-`Y*2X)ijsrJZ19f2-?WX9!7s(h>f#mA>A5Y~m=}0OO zo-SXZAH(f6Usz4w=ORAmkXhsm`G|05Oc`>8sEj4WzM3_Y8Ps)Q_el}iNmTNDpKjl$ z?<1DaLFCAPH~HRNYThMb@YwtQVk+6ZiONHwCrFph`^WHr{9hTa z^B=P}@fiF5J--W|Bu>6`(%$#AZ3&-IxlN)PM_jDwFo49XU+8kv(J^`GGu3O3FH4 zh3kKt3hxJB`Ge0dNeIy!O=Sx?O1mXmU1Hc`1mJftECCE4UJQc~L5 zl{fJkai8F$KT%mqI*?jKFC~?^?bO}l8vMnDNUkD7t)mU zCC`&j$t#@S_sjP=jh@6wQi;lOGK5r9gEG;=_t~7!C3gEJrjg0y9{GgOt?wTrH&A7} zh3|77pPfi!wFZzl@(uYXX-TdUfATSzL9Ua5q#jY}XW{#kdNlO}vYMQ-x4(hI$Wh|w ztx>h5(|fI2Xl-x(q+t$k^A=qk9@o-9@Aj701H9WiR&@9`am6CC%J|voSrQcL>5!S?bQ#aW%zoll<`8kY>kFiSs&{Xe%i##~ zWMxD#5p{VL#un2_ju&=EbTc(yDRh>ZjrAl zM|J5P==AjO`-wNQ-)4uSgQxzWX5N4S7yUio4({ts$#a$}?K06RQDL4t5y9Tv;j0~d z=V5-lpTp%j-LQsdKu)4(&d35snD?iV``PCy9^H-4Ws!@$3&;GT4bux3tBYK^I1^pX z(_madDK&j9?|b8J>6lk1?4^gCiE~TQ`=x2I;HfZsEDiVU;8LE0^Jj69ZC<*~LD36# yIlPM&Epd8XOWT)q6nV$3tg0>!ZHV#iTh*$x^W;YF!?lk~d#h|t*Ch4ZlK&r*US`h# diff --git a/po/el.po b/po/el.po index 6bb6aa4..69bca2e 100644 --- a/po/el.po +++ b/po/el.po @@ -2,13 +2,13 @@ # Copyright (C) 2004 Free Software Foundation, Inc. # This file is distributed under the same license as the diffutils package. # Lefteris Dimitroulakis , 2004. -# Lefteris Dimitroulakis , 2013, 2014, 2017, 2019. +# Lefteris Dimitroulakis , 2013, 2014, 2017, 2019, 2022. msgid "" msgstr "" -"Project-Id-Version: diffutils-3.6.17\n" +"Project-Id-Version: diffutils-3.7.41\n" "Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n" -"POT-Creation-Date: 2021-08-01 18:56-0700\n" -"PO-Revision-Date: 2021-01-10 22:24+0200\n" +"POT-Creation-Date: 2023-05-21 01:51-0700\n" +"PO-Revision-Date: 2022-01-06 23:20+0200\n" "Last-Translator: Lefteris Dimitroulakis \n" "Language-Team: Greek \n" "Language: el\n" @@ -16,32 +16,32 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Bugs: Report translation errors to the Language-Team address.\n" -"X-Generator: Poedit 2.4.2\n" +"X-Generator: Poedit 2.3\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: lib/argmatch.c:132 +#: lib/argmatch.c:145 #, c-format msgid "invalid argument %s for %s" msgstr "μη έγκυρο όρισμα %s για %s" -#: lib/argmatch.c:133 +#: lib/argmatch.c:146 #, c-format msgid "ambiguous argument %s for %s" msgstr "ασαφές όρισμα %s για %s" -#: lib/argmatch.c:152 lib/argmatch.h:223 +#: lib/argmatch.c:165 lib/argmatch.h:242 msgid "Valid arguments are:" msgstr "Έγκυρο ορίσματα είναι:" -#: lib/c-stack.c:187 +#: lib/c-stack.c:186 msgid "program error" msgstr "σφάλμα προγράμματος" -#: lib/c-stack.c:188 +#: lib/c-stack.c:187 msgid "stack overflow" msgstr "υπερχείλιση στοίβας" -#: lib/error.c:195 +#: lib/error.c:193 msgid "Unknown system error" msgstr "Άγνωστο σφάλμα συστήματος" @@ -197,83 +197,83 @@ msgstr "%s: η επιλογή απαιτεί όρισμα -- «%c»\n" #. If you don't know what to put here, please see #. #. and use glyphs suitable for your language. -#: lib/quotearg.c:355 +#: lib/quotearg.c:354 msgid "`" msgstr "«" -#: lib/quotearg.c:356 +#: lib/quotearg.c:355 msgid "'" msgstr "»" -#: lib/regcomp.c:135 +#: lib/regcomp.c:122 msgid "Success" msgstr "Επιτυχία" -#: lib/regcomp.c:138 +#: lib/regcomp.c:125 msgid "No match" msgstr "Δεν υπάρχει ταίριασμα" -#: lib/regcomp.c:141 +#: lib/regcomp.c:128 msgid "Invalid regular expression" msgstr "Μη έγκυρη κανονική έκφραση" -#: lib/regcomp.c:144 +#: lib/regcomp.c:131 msgid "Invalid collation character" msgstr "Μη έγκυρος χαρακτήρας διαταξινόμησης" -#: lib/regcomp.c:147 +#: lib/regcomp.c:134 msgid "Invalid character class name" msgstr "Μη έγκυρο όνομα κλάσεως χαρακτήρων" -#: lib/regcomp.c:150 +#: lib/regcomp.c:137 msgid "Trailing backslash" msgstr "Αντιπλαγία στο τέλος" -#: lib/regcomp.c:153 +#: lib/regcomp.c:140 msgid "Invalid back reference" msgstr "Άκυρη πίσω παραπομπή" -#: lib/regcomp.c:156 +#: lib/regcomp.c:143 msgid "Unmatched [, [^, [:, [., or [=" msgstr "Δεν βρέθηκε [, [^, [:, [., or [=" -#: lib/regcomp.c:159 +#: lib/regcomp.c:146 msgid "Unmatched ( or \\(" msgstr "Δε βρέθηκε ( ή \\(" -#: lib/regcomp.c:162 +#: lib/regcomp.c:149 msgid "Unmatched \\{" msgstr "Δε βρέθηκε \\{" -#: lib/regcomp.c:165 +#: lib/regcomp.c:152 msgid "Invalid content of \\{\\}" msgstr "Το περιεχόμενο του \\{\\} είναι μη έγκυρο" -#: lib/regcomp.c:168 +#: lib/regcomp.c:155 msgid "Invalid range end" msgstr "Μη έγκυρο πέρας διαστήματος" -#: lib/regcomp.c:171 +#: lib/regcomp.c:158 msgid "Memory exhausted" msgstr "Η μνήμη εξαντλήθηκε" -#: lib/regcomp.c:174 +#: lib/regcomp.c:161 msgid "Invalid preceding regular expression" msgstr "Η προηγούμενη κανονική έκφραση είναι άκυρη" -#: lib/regcomp.c:177 +#: lib/regcomp.c:164 msgid "Premature end of regular expression" msgstr "Πρόωρο τέλος κανονικής έκφρασης" -#: lib/regcomp.c:180 +#: lib/regcomp.c:167 msgid "Regular expression too big" msgstr "Πολύ μεγάλη κανονική έκφραση" -#: lib/regcomp.c:183 +#: lib/regcomp.c:170 msgid "Unmatched ) or \\)" msgstr "Δε βρέθηκε ) ή \\)" -#: lib/regcomp.c:676 +#: lib/regcomp.c:650 msgid "No previous regular expression" msgstr "Δεν προηγήθηκε κανονική έκφραση" @@ -305,7 +305,7 @@ msgstr "αποτυχία ξανανοίγματος %s σε κατάσταση % #: lib/xstdopen.c:34 #, c-format msgid "standard file descriptors" -msgstr "" +msgstr "standard file descriptors" #: lib/version-etc.c:73 #, c-format @@ -326,18 +326,15 @@ msgstr "(C)" #. TRANSLATORS: The %s placeholder is the web address of the GPL license. #: lib/version-etc.c:88 -#, fuzzy, c-format +#, c-format msgid "" "License GPLv3+: GNU GPL version 3 or later <%s>.\n" "This is free software: you are free to change and redistribute it.\n" "There is NO WARRANTY, to the extent permitted by law.\n" msgstr "" -"\n" -"License GPLv3+: GNU GPL version 3 or later .\n" +"License GPLv3+: GNU GPL version 3 or later <%s>.\n" "This is free software: you are free to change and redistribute it.\n" "There is NO WARRANTY, to the extent permitted by law.\n" -"\n" #. TRANSLATORS: %s denotes an author name. #: lib/version-etc.c:105 @@ -452,11 +449,9 @@ msgstr "" #. "Report translation bugs to <...>\n" with the address for translation #. bugs (typically your translation team's web or email address). #: lib/version-etc.c:249 -#, fuzzy, c-format +#, c-format msgid "Report bugs to: %s\n" -msgstr "" -"\n" -"Report bugs to: %s\n" +msgstr "Report bugs to: %s\n" #: lib/version-etc.c:251 #, c-format @@ -469,21 +464,21 @@ msgid "%s home page: <%s>\n" msgstr "%s home page: <%s>\n" #: lib/version-etc.c:260 -#, fuzzy, c-format +#, c-format msgid "General help using GNU software: <%s>\n" -msgstr "General help using GNU software: \n" +msgstr "General help using GNU software: <%s>\n" -#: src/analyze.c:454 src/diff.c:1406 +#: src/analyze.c:455 src/diff.c:1478 #, c-format msgid "Files %s and %s differ\n" msgstr "Τα αρχεία %s και %s διαφέρουν\n" -#: src/analyze.c:455 +#: src/analyze.c:456 #, c-format msgid "Binary files %s and %s differ\n" msgstr "Τα δυαδικά αρχεία %s και %s διαφέρουν\n" -#: src/analyze.c:706 src/diff3.c:1470 src/util.c:1254 +#: src/analyze.c:707 src/diff3.c:1457 src/util.c:1354 msgid "No newline at end of file" msgstr "Δεν υπάρχει χαρακτήρας νέας γραμμής στο τέλος του αρχείου" @@ -497,41 +492,42 @@ msgstr "Torbjorn Granlund" msgid "David MacKenzie" msgstr "David MacKenzie" -#: src/cmp.c:120 src/diff.c:879 src/diff3.c:467 src/sdiff.c:160 +#: src/cmp.c:124 src/diff.c:939 src/diff3.c:465 src/sdiff.c:159 #, c-format msgid "Try '%s --help' for more information." msgstr "Δοκιμάστε «%s --help» για περισσότερες πληροφορίες." -#: src/cmp.c:138 +#: src/cmp.c:142 #, c-format msgid "invalid --ignore-initial value '%s'" msgstr "άκυρη τιμή --ignore-initial «%s»" -#: src/cmp.c:148 +#: src/cmp.c:152 #, c-format msgid "options -l and -s are incompatible" msgstr "οι επιλογές -l και -s είναι ασύμβατες" -#: src/cmp.c:156 src/diff.c:887 src/diff3.c:474 src/sdiff.c:168 src/sdiff.c:316 -#: src/sdiff.c:323 src/sdiff.c:876 src/util.c:852 src/util.c:952 src/util.c:959 +#: src/cmp.c:160 src/diff.c:947 src/diff3.c:472 src/sdiff.c:167 src/sdiff.c:314 +#: src/sdiff.c:321 src/sdiff.c:873 src/util.c:952 src/util.c:1052 +#: src/util.c:1059 msgid "write failed" msgstr "η εγγραφή απέτυχε" -#: src/cmp.c:158 src/diff.c:889 src/diff.c:1471 src/diff3.c:476 src/sdiff.c:170 +#: src/cmp.c:162 src/diff.c:949 src/diff.c:1543 src/diff3.c:474 src/sdiff.c:169 msgid "standard output" msgstr "κανονική έξοδος" -#: src/cmp.c:162 +#: src/cmp.c:166 msgid "-b, --print-bytes print differing bytes" msgstr "-b, --print-bytes Εμφανίζει bytes που διαφέρουν" -#: src/cmp.c:163 +#: src/cmp.c:167 msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs" msgstr "" "-i, --ignore-initial=SKIP Παράβλεψη των πρώτων SKIP bytes και των δύο " "εισόδων" -#: src/cmp.c:164 +#: src/cmp.c:168 msgid "" "-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n" " first SKIP2 bytes of FILE2" @@ -539,37 +535,37 @@ msgstr "" "-i, --ignore-initial=SKIP1:SKIP2 παράβλεψη των πρώτων SKIP1 bytes του " "αρχείου FILE1 και των πρώτων SKIP2 bytes του αρχείου FILE2" -#: src/cmp.c:166 +#: src/cmp.c:170 msgid "" "-l, --verbose output byte numbers and differing byte values" msgstr "-l --verbose Έξοδος αριθμού και τιμής όλων των bytes που διαφέρουν" -#: src/cmp.c:167 +#: src/cmp.c:171 msgid "-n, --bytes=LIMIT compare at most LIMIT bytes" msgstr "-n, --bytes=ΟΡΙΟ Σύγκριση το πολύ ΟΡΙΟ bytes" -#: src/cmp.c:168 +#: src/cmp.c:172 msgid "-s, --quiet, --silent suppress all normal output" msgstr "-s, --quiet, --silent απάλειψη κανονικής εξόδου" -#: src/cmp.c:169 +#: src/cmp.c:173 msgid " --help display this help and exit" msgstr " --help εμφάνιση αυτής εδώ της βοήθειας κι έξοδος" -#: src/cmp.c:170 +#: src/cmp.c:174 msgid "-v, --version output version information and exit" msgstr "-v, --version εμφάνιση πληροφοριών έκδοσης κι έξοδος" -#: src/cmp.c:179 +#: src/cmp.c:183 #, c-format msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n" msgstr "Χρήση: %s [ΕΠΙΛΟΓΗ]... ΑΡΧΕΙΟ1 [ΑΡΧΕΙΟ2 [SKIP1 [SKIP2]]]\n" -#: src/cmp.c:181 +#: src/cmp.c:185 msgid "Compare two files byte by byte." msgstr "Σύγκριση δύο αρχείων byte προς byte." -#: src/cmp.c:183 +#: src/cmp.c:187 msgid "" "The optional SKIP1 and SKIP2 specify the number of bytes to skip\n" "at the beginning of each file (zero by default)." @@ -577,14 +573,14 @@ msgstr "" "Οι προαιρετικές παράμετροι SKIP1 και SKIP2 καθορίζουν τον αριθμό των bytes\n" "προς παράβλεψη στην αρχή κάθε αρχείου (η προεπιλογή είναι μηδέν)." -#: src/cmp.c:186 src/diff.c:999 src/diff3.c:514 src/sdiff.c:211 +#: src/cmp.c:190 src/diff.c:1059 src/diff3.c:512 src/sdiff.c:210 msgid "" "Mandatory arguments to long options are mandatory for short options too.\n" msgstr "" "Υποχρεωτικά ορίσματα στις μακρές επιλογές είναι υποχρεωτικά και στις " "κοντέςεπιλογές επίσης.\n" -#: src/cmp.c:192 +#: src/cmp.c:196 msgid "" "SKIP values may be followed by the following multiplicative suffixes:\n" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" @@ -595,194 +591,194 @@ msgstr "" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" "GB 1,000,000,000, G 1,073,741,824, κτλ γιά T, P, E, Z, Y." -#: src/cmp.c:195 +#: src/cmp.c:199 msgid "If a FILE is '-' or missing, read standard input." msgstr "Αν ένα ΑΡΧΕΙΟ είναι «-» ή απών, τότε ανάγνωση από την κανονική είσοδο." -#: src/cmp.c:196 src/diff.c:987 src/sdiff.c:221 +#: src/cmp.c:200 src/diff.c:1047 src/sdiff.c:220 msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble." msgstr "" "Η έξοδος είναι 0 αν τα δεδομένα αρχεία είναι ίδια, 1 αν είναι διαφορετικά,\n" "2 αν υπάρχει πρόβλημα." -#: src/cmp.c:243 +#: src/cmp.c:247 #, c-format msgid "invalid --bytes value '%s'" msgstr "άκυρη τιμή «%s» για την επιλογή --bytes" -#: src/cmp.c:269 src/diff.c:797 src/diff3.c:361 src/sdiff.c:567 +#: src/cmp.c:273 src/diff.c:857 src/diff3.c:368 src/sdiff.c:564 #, c-format msgid "missing operand after '%s'" msgstr "απών τελεστέος μετά από «%s»" -#: src/cmp.c:281 src/diff.c:799 src/diff3.c:363 src/sdiff.c:569 +#: src/cmp.c:285 src/diff.c:859 src/diff3.c:370 src/sdiff.c:566 #, c-format msgid "extra operand '%s'" msgstr "συμπληρωματικός τελεστέος «%s»" -#: src/cmp.c:507 +#: src/cmp.c:521 #, c-format msgid "%s %s differ: byte %s, line %s\n" msgstr "%s %s διαφέρουν: byte %s, γραμμή %s\n" -#: src/cmp.c:523 +#: src/cmp.c:537 #, c-format msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n" msgstr "%s %s διαφέρουν: byte %s, γραμμή %s είναι %3o %s %3o %s\n" -#: src/cmp.c:580 +#: src/cmp.c:594 #, c-format msgid "cmp: EOF on %s which is empty\n" msgstr "cmp: EOF στο %s που είναι κενό\n" -#: src/cmp.c:594 +#: src/cmp.c:608 #, c-format msgid "cmp: EOF on %s after byte %s, line %s\n" msgstr "cmp: EOF στο %s μετά το byte %s, γραμμή %s\n" -#: src/cmp.c:595 +#: src/cmp.c:609 #, c-format msgid "cmp: EOF on %s after byte %s, in line %s\n" msgstr "cmp: EOF στο %s μετά το byte %s, στη γραμμή %s\n" -#: src/cmp.c:601 +#: src/cmp.c:615 #, c-format msgid "cmp: EOF on %s after byte %s\n" msgstr "cmp: EOF στο %s μετά το byte %s\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:51 +#: src/diff.c:50 msgid "Paul Eggert" msgstr "Paul Eggert" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:52 +#: src/diff.c:51 msgid "Mike Haertel" msgstr "Mike Haertel" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:53 +#: src/diff.c:52 msgid "David Hayes" msgstr "David Hayes" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:54 +#: src/diff.c:53 msgid "Richard Stallman" msgstr "Richard Stallman" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:55 +#: src/diff.c:54 msgid "Len Tower" msgstr "Len Tower" -#: src/diff.c:355 +#: src/diff.c:365 #, c-format msgid "invalid context length '%s'" msgstr "μη έγκυρο μήκος συμφραζομένων «%s»" -#: src/diff.c:438 +#: src/diff.c:487 #, c-format msgid "pagination not supported on this host" msgstr "η αρίθμηση σελίδων δεν υποστηρίζεται σ' αυτόν τον υπολογιστή" -#: src/diff.c:453 src/diff3.c:341 +#: src/diff.c:502 src/diff3.c:348 #, c-format msgid "too many file label options" msgstr "πάρα πολλές επιλογές ετικέττας αρχείου" -#: src/diff.c:530 +#: src/diff.c:579 #, c-format msgid "invalid width '%s'" msgstr "μη έγκυρο πλάτος «%s»" -#: src/diff.c:534 +#: src/diff.c:583 msgid "conflicting width options" msgstr "αντικρουόμενες επιλογές πλάτους" -#: src/diff.c:559 +#: src/diff.c:608 #, c-format msgid "invalid horizon length '%s'" msgstr "μη έγκυρο μήκος ορίζοντα «%s»" -#: src/diff.c:615 +#: src/diff.c:664 #, c-format msgid "invalid tabsize '%s'" msgstr "μη έγκυρο μήκος στηλοθέτησης `%s'" -#: src/diff.c:619 +#: src/diff.c:668 msgid "conflicting tabsize options" msgstr "αντικρουόμενες επιλογές μήκους στηλοθέτησης" -#: src/diff.c:774 +#: src/diff.c:834 msgid "--from-file and --to-file both specified" msgstr "--from-file και --to-file έχουν οριστεί αμφότερα" -#: src/diff.c:893 +#: src/diff.c:953 msgid " --normal output a normal diff (the default)" msgstr " --normal Δημιουργία ενός κανονικού `diff' (προεπιλογή)" -#: src/diff.c:894 +#: src/diff.c:954 msgid "-q, --brief report only when files differ" msgstr "-q --brief αποτέλεσμα στην έξοδο μόνο αν τ' αρχεία διαφέρουν" -#: src/diff.c:895 +#: src/diff.c:955 msgid "-s, --report-identical-files report when two files are the same" msgstr "-s, --report-identical-files Ειδοποιεί όταν δύο αρχεία είναι ίδια" -#: src/diff.c:896 +#: src/diff.c:956 msgid "" "-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context" msgstr "" "-c, -C NUM, --context[=NUM] έξοδος NUM (προεπιλογή 3) γραμμές of copied " "context" -#: src/diff.c:897 +#: src/diff.c:957 msgid "" "-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context" msgstr "" "-u, -U NUM, --unified[=NUM] έξοδος NUM (προεπιλογή 3) γραμμές of unified " "context" -#: src/diff.c:898 +#: src/diff.c:958 msgid "-e, --ed output an ed script" msgstr "-e, --ed εμφανίζει ένα ed script" -#: src/diff.c:899 +#: src/diff.c:959 msgid "-n, --rcs output an RCS format diff" msgstr "-n --rcs Δημιουργία αρχείου «diff» σε μορφή RCS" -#: src/diff.c:900 +#: src/diff.c:960 msgid "-y, --side-by-side output in two columns" msgstr "-y, --side-by-side έξοδος σε δυο στήλες" -#: src/diff.c:901 +#: src/diff.c:961 msgid "" "-W, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-W, --width=NUM output at most NUM (default 130) print columns" -#: src/diff.c:902 +#: src/diff.c:962 msgid "" " --left-column output only the left column of common lines" msgstr "" " --left-column Εμφάνιση μόνο της αριστερής στήλης των ταυτόσημων γραμμών" -#: src/diff.c:903 +#: src/diff.c:963 msgid " --suppress-common-lines do not output common lines" msgstr " --suppress-common-lines Οι ταυτόσημες γραμμές δεν εμφανίζονται" -#: src/diff.c:905 +#: src/diff.c:965 msgid "-p, --show-c-function show which C function each change is in" msgstr "" "-p, --show-c-function εμφάνιση σε ποιά συνάρτηση C βρίσκεται κάθε αλλαγή" -#: src/diff.c:906 +#: src/diff.c:966 msgid "-F, --show-function-line=RE show the most recent line matching RE" msgstr "" "-F, --show-function-line=RE εμφάνιση του πιο πρόσφατου ταιριάσματος " "γραμμής RE" -#: src/diff.c:907 +#: src/diff.c:967 msgid "" " --label LABEL use LABEL instead of file name and timestamp\n" " (can be repeated)" @@ -790,181 +786,180 @@ msgstr "" " --label=LABEL χρήση LABEL αντί ονόματος αρχείου και timestamp\n" " (μπορεί να επαναληφθεί)" -#: src/diff.c:910 +#: src/diff.c:970 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "-t, --expand-tabs Μετατροπή στηλοθετών σε διαστήματα στην έξοδο" -#: src/diff.c:911 +#: src/diff.c:971 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T, --initial-tab Στοίχιση των στηλοθετών με την επιπρόσθεση ενός στην αρχή" -#: src/diff.c:912 +#: src/diff.c:972 msgid "" " --tabsize=NUM tab stops every NUM (default 8) print columns" msgstr "" " --tabsize=NUM Ο αριθμός διαστημάτων του στηλοθέτη είναι NUM (προεπιλογή " "8) στήλες" -#: src/diff.c:913 +#: src/diff.c:973 msgid "" " --suppress-blank-empty suppress space or tab before empty output lines" msgstr "" " --suppress-blank-empty απάλειψη διαστήματος ή στ/θέτη πριν από κενές " "γραμμές στην έξοδο" -#: src/diff.c:914 +#: src/diff.c:974 msgid "-l, --paginate pass output through 'pr' to paginate it" msgstr "-l, --paginate Έξοδος δια μέσου του «pr» για αρίθμηση" -#: src/diff.c:916 +#: src/diff.c:976 msgid "" "-r, --recursive recursively compare any subdirectories found" msgstr "-r, --recursive Αναδρομική σύγκριση όσων υποκαταλόγων βρεθούν" -#: src/diff.c:917 +#: src/diff.c:977 msgid " --no-dereference don't follow symbolic links" msgstr " --no-dereference μην ακολουθείς συμβολικούς συνδέσμους" -#: src/diff.c:918 +#: src/diff.c:978 msgid "-N, --new-file treat absent files as empty" msgstr "-N, --new-file Θεωρεί τα απόντα αρχεία ως κενά" -#: src/diff.c:919 +#: src/diff.c:979 msgid " --unidirectional-new-file treat absent first files as empty" -msgstr "--unidirectional-new-file Θεωρεί τα απόντα πρώτα αρχεία ως κενά" +msgstr " --unidirectional-new-file Θεωρεί τα απόντα πρώτα αρχεία ως κενά" -#: src/diff.c:920 +#: src/diff.c:980 msgid " --ignore-file-name-case ignore case when comparing file names" msgstr "" -"--ignore-file-name-case αγνοεί τις διαφορές λόγω πεζών-κεφαλαίων\n" -"κατά τη σύγκριση ονομάτων αρχείων." +" --ignore-file-name-case αγνοεί τις διαφορές λόγω πεζών-κεφαλαίων\n" +"κατά τη σύγκριση ονομάτων αρχείων" -#: src/diff.c:921 +#: src/diff.c:981 msgid " --no-ignore-file-name-case consider case when comparing file names" msgstr "" " --no-ignore-file-name-case λαμβάνει υπ' όψιν τις διαφορές λόγω\n" " πεζών-κεφαλαίων κατά τη σύγκριση ονομάτων αρχείων" -#: src/diff.c:922 +#: src/diff.c:982 msgid "-x, --exclude=PAT exclude files that match PAT" msgstr "-x, --exclude=PAT εξαίρεση αρχείων με όνομα που ταιριάζει με PAT" -#: src/diff.c:923 +#: src/diff.c:983 msgid "" "-X, --exclude-from=FILE exclude files that match any pattern in FILE" msgstr "" "-X, --exclude-from=ΑΡΧΕΙΟ Εξαίρεση αρχείων με όνομα που ταιράζει\n" " με τα ονόματα που βρίσκονται στο ΑΡΧΕΙΟ" -#: src/diff.c:924 +#: src/diff.c:984 msgid "" "-S, --starting-file=FILE start with FILE when comparing directories" msgstr "" "-S, --starting-file=ΑΡΧΕΙΟ Εκκίνηση σύγκρισης καταλόγων από το ΑΡΧΕΙΟ" -#: src/diff.c:925 +#: src/diff.c:985 msgid "" " --from-file=FILE1 compare FILE1 to all operands;\n" " FILE1 can be a directory" msgstr "" -"--from-file=ΑΡΧΕΙΟ1 Σύγκριση ΑΡΧΕΙΟ1 με όλους τους τελεστέους·\n" +" --from-file=ΑΡΧΕΙΟ1 Σύγκριση ΑΡΧΕΙΟ1 με όλους τους τελεστέους·\n" " ΑΡΧΕΙΟ1 μπορεί να είναι κατάλογος" -#: src/diff.c:927 +#: src/diff.c:987 msgid "" " --to-file=FILE2 compare all operands to FILE2;\n" " FILE2 can be a directory" msgstr "" -"--to-file=ΑΡΧΕΙΟ2 Σύγκριση όλων των τελεστέων στο ΑΡΧΕΙΟ2·\n" +" --to-file=ΑΡΧΕΙΟ2 Σύγκριση όλων των τελεστέων στο ΑΡΧΕΙΟ2·\n" " ΑΡΧΕΙΟ2 μπορεί να είναι κατάλογος" -#: src/diff.c:930 +#: src/diff.c:990 msgid "" "-i, --ignore-case ignore case differences in file contents" msgstr "" "-i, --ignore-case Αγνοεί τις διαφορές λόγω πεζών-κεφαλαίων στα περιεχόμενα " "των αρχείων" -#: src/diff.c:931 +#: src/diff.c:991 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E, --ignore-tab-expansion Αγνοεί αλλαγές οφειλόμενες στη στηλοθέτηση" -#: src/diff.c:932 +#: src/diff.c:992 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "" "-Z, --ignore-trailing-space αγνοεί λευκά διαστήματα στο τέλος γραμμής" -#: src/diff.c:933 +#: src/diff.c:993 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "" "-b, --ignore-space-change Αγνοεί αλλαγές οφειλόμενες στον αριθμό λευκών " -"διαστημάτων." +"διαστημάτων" -#: src/diff.c:934 +#: src/diff.c:994 msgid "-w, --ignore-all-space ignore all white space" -msgstr "-w, --ignore-all-space Αγνοεί όλα τα λευκά διαστήματα." +msgstr "-w, --ignore-all-space Αγνοεί όλα τα λευκά διαστήματα" -#: src/diff.c:935 +#: src/diff.c:995 msgid "" "-B, --ignore-blank-lines ignore changes where lines are all blank" msgstr "" "-B, --ignore-blank-lines Αγνοεί αλλαγές οφειλόμενες στις λευκές γραμμές" -#: src/diff.c:936 +#: src/diff.c:996 msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE" msgstr "" "-I, --ignore-matching-lines=RE Αγνοεί αλλαγές που οι γραμμές τους \n" -" ταιριάζουν με RE." +" ταιριάζουν με RE" -#: src/diff.c:938 +#: src/diff.c:998 msgid "-a, --text treat all files as text" -msgstr "-a, --text Θεωρεί όλα τα αρχεία ως κείμενο." +msgstr "-a, --text Θεωρεί όλα τα αρχεία ως κείμενο" -#: src/diff.c:939 +#: src/diff.c:999 msgid " --strip-trailing-cr strip trailing carriage return on input" -msgstr "--strip-trailing-cr Απαλειφή του χαρακτήρα επιστροφής στην είσοδο." +msgstr " --strip-trailing-cr Απαλειφή του χαρακτήρα επιστροφής στην είσοδο" -#: src/diff.c:941 +#: src/diff.c:1001 msgid " --binary read and write data in binary mode" -msgstr "--binary Ανάγνωση και εγγραφή πληροφορίας σε δυαδική μορφή." +msgstr " --binary Ανάγνωση και εγγραφή πληροφορίας σε δυαδική μορφή" -#: src/diff.c:944 +#: src/diff.c:1004 msgid "" "-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs" msgstr "" -"-D, --ifdef=ΟΝΟΜΑ Έξοδος συγχωνευμένου αρχείου με τις διαφορές «#ifdef " -"NAME»." +"-D, --ifdef=ΟΝΟΜΑ Έξοδος συγχωνευμένου αρχείου με τις διαφορές «#ifdef NAME»" -#: src/diff.c:945 +#: src/diff.c:1005 msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT" -msgstr "--GTYPE-group-format=GFMT μορφοποίηση ομάδων εισόδου GTYPE με GFMT." +msgstr " --GTYPE-group-format=GFMT μορφοποίηση ομάδων εισόδου GTYPE με GFMT" -#: src/diff.c:946 +#: src/diff.c:1006 msgid " --line-format=LFMT format all input lines with LFMT" msgstr "" -"--line-format=LFMT μορφοποίηση όλων των γραμμών εισόδου με LFMT" +" --line-format=LFMT μορφοποίηση όλων των γραμμών εισόδου με LFMT" -#: src/diff.c:947 +#: src/diff.c:1007 msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT" -msgstr "--LTYPE-line-format=LFMT μορφοποίηση γραμμών εισόδου LTYPE με LFMT." +msgstr " --LTYPE-line-format=LFMT μορφοποίηση γραμμών εισόδου LTYPE με LFMT" -#: src/diff.c:948 +#: src/diff.c:1008 msgid "" " These format options provide fine-grained control over the output\n" " of diff, generalizing -D/--ifdef." msgstr "" -"Αυτές οι επιλογές μορφής παρέχουν λεπτομερή έλεγχο πάνω στην έξοδο\n" +" Αυτές οι επιλογές μορφής παρέχουν λεπτομερή έλεγχο πάνω στην έξοδο\n" " του diff, γενικεύοντας -D/--ifdef." -#: src/diff.c:950 +#: src/diff.c:1010 msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'." msgstr "" -"LTYPE είναι «old», «new», ή «unchanged». GTYPE είναι LTYPE ή «changed»." +" LTYPE είναι «old», «new», ή «unchanged». GTYPE είναι LTYPE ή «changed»." -#: src/diff.c:951 +#: src/diff.c:1011 msgid "" " GFMT (only) may contain:\n" " %< lines from FILE1\n" @@ -979,7 +974,7 @@ msgid "" " M L+1\n" " %(A=B?T:E) if A equals B then T else E" msgstr "" -"GFMT (μόνο) μπορεί να περιέχει:\n" +" GFMT (μόνο) μπορεί να περιέχει:\n" " %< για να δηλώνει γραμμές από το ΑΡΧΕΙΟ1\n" " %> για να δηλώνει γραμμές από το ΑΡΧΕΙΟ2\n" " %= για να δηλώνει ταυτόσημες γραμμές μεταξύ των ΑΡΧΕΙΟ1 και ΑΡΧΕΙΟ2\n" @@ -993,7 +988,7 @@ msgstr "" " M L+1\n" " %(A=B?T:E) αν A ίσον B τότε T αλλιώς E" -#: src/diff.c:963 +#: src/diff.c:1023 msgid "" " LFMT (only) may contain:\n" " %L contents of line\n" @@ -1006,7 +1001,7 @@ msgstr "" " %[-][ΠΛΑΤΟΣ][.[PREC]]{doxX}n την προδιαγραφή του αριθμού γραμμής\n" " εισόδου κατά τη μορφή της printf()" -#: src/diff.c:967 +#: src/diff.c:1027 msgid "" " Both GFMT and LFMT may contain:\n" " %% %\n" @@ -1020,32 +1015,32 @@ msgstr "" " %c'\\OOO' το χαρακτήρα με οκταδικό κωδικό OOO\n" " C το χαρακτήρα C (οι άλλοι χαρακτήρες αναπαριστούν τον εαυτόν τους)" -#: src/diff.c:973 +#: src/diff.c:1033 msgid "-d, --minimal try hard to find a smaller set of changes" -msgstr "-d --minimal προσπάθεια εύρεσης μικρότερου συνόλου διαφορών." +msgstr "-d --minimal προσπάθεια εύρεσης μικρότερου συνόλου διαφορών" -#: src/diff.c:974 +#: src/diff.c:1034 msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix" msgstr "" -"--horizon-lines=ΑΡ Διατηρεί ΑΡ γραμμές με ταυτόσημα προθέματα κι επιθέματα." +" --horizon-lines=ΑΡ Διατηρεί ΑΡ γραμμές με ταυτόσημα προθέματα κι επιθέματα" -#: src/diff.c:975 +#: src/diff.c:1035 msgid "" " --speed-large-files assume large files and many scattered small changes" msgstr "" -"--speed-large-files Υποθέτει μεγάλα αρχεία με πολλές σκόρπιες μικροαλλαγές." +" --speed-large-files Υποθέτει μεγάλα αρχεία με πολλές σκόρπιες μικροαλλαγές" -#: src/diff.c:976 -#, fuzzy +#: src/diff.c:1036 msgid "" " --color[=WHEN] color output; WHEN is 'never', 'always', or " "'auto';\n" " plain --color means --color='auto'" msgstr "" -" --color[=WHEN] χρωματίζει την έξοδο, WHEN μπορεί να είναι «ποτέ»,\n" -" «πάντα», ή «αυτόματο» (προεπιλογή)" +" --color[=WHEN] color output; WHEN is 'never', 'always', or " +"'auto';\n" +" plain --color means --color='auto'" -#: src/diff.c:978 +#: src/diff.c:1038 msgid "" " --palette=PALETTE the colors to use when --color is active; PALETTE " "is\n" @@ -1057,124 +1052,124 @@ msgstr "" " μια λίστα ικανοτήτων terminfo capabilities που χωρίζονται από " "δίστιγμα" -#: src/diff.c:981 +#: src/diff.c:1041 msgid " --help display this help and exit" msgstr " --help εμφάνιση αυτής εδώ της βοήθειας κι έξοδος" -#: src/diff.c:982 +#: src/diff.c:1042 msgid "-v, --version output version information and exit" msgstr "-v --version Εμφάνιση πληροφοριών έκδοσης κι έξοδος" -#: src/diff.c:984 +#: src/diff.c:1044 msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'." msgstr "" "ΑΡΧΕΙΑ είναι «ΑΡΧΕΙΟ1 ΑΡΧΕΙΟ2» ή «ΚΑΤ1 ΚΑΤ2» ή «ΚΑΤ ΑΡΧΕΙΟ...» ή «ΑΡΧΕΙΟ..." "ΚΑΤ»." -#: src/diff.c:985 +#: src/diff.c:1045 msgid "" "If --from-file or --to-file is given, there are no restrictions on FILE(s)." msgstr "" "Αν δίδεται το --from-file ή το --to-file, τότε δεν υπάρχει περιορισμός στα " -"ΑΡΧΕΙΑ. " +"ΑΡΧΕΙΑ." -#: src/diff.c:986 src/diff3.c:533 src/sdiff.c:220 +#: src/diff.c:1046 src/diff3.c:531 src/sdiff.c:219 msgid "If a FILE is '-', read standard input." -msgstr "Αν ένα ΑΡΧΕΙΟ είναι «-», τότε ανάγνωση από την τυπική είσοδο. " +msgstr "Αν ένα ΑΡΧΕΙΟ είναι «-», τότε ανάγνωση από την τυπική είσοδο." -#: src/diff.c:996 +#: src/diff.c:1056 #, c-format msgid "Usage: %s [OPTION]... FILES\n" msgstr "Χρήση: %s [ΕΠΙΛΟΓΗ]... ΑΡΧΕΙΑ\n" -#: src/diff.c:997 +#: src/diff.c:1057 msgid "Compare FILES line by line." msgstr "Σύγκριση αρχείων γραμμή προς γραμμή." -#: src/diff.c:1034 +#: src/diff.c:1094 #, c-format msgid "conflicting %s option value '%s'" msgstr "η επιλογή %s είναι αντικρουόμενη με την τιμή «%s»" -#: src/diff.c:1047 +#: src/diff.c:1107 #, c-format msgid "conflicting output style options" msgstr "αντικρουόμενες επιλογές για τη μορφή εξόδου" -#: src/diff.c:1063 +#: src/diff.c:1123 #, c-format msgid "invalid color '%s'" msgstr "μη έγκυρο χρώμα «%s»" -#: src/diff.c:1119 src/diff.c:1329 +#: src/diff.c:1197 src/diff.c:1401 #, c-format msgid "Only in %s: %s\n" msgstr "Μόνο στο %s: %s\n" -#: src/diff.c:1253 +#: src/diff.c:1325 msgid "cannot compare '-' to a directory" -msgstr "Αδύνατη η σύγκριση του «-» με ένα κατάλογο" +msgstr "αδύνατη η σύγκριση του «-» με ένα κατάλογο" -#: src/diff.c:1288 +#: src/diff.c:1360 msgid "-D option not supported with directories" msgstr "Η επιλογή -D δεν υποστηρίζεται για καταλόγους" -#: src/diff.c:1297 +#: src/diff.c:1369 #, c-format msgid "Common subdirectories: %s and %s\n" msgstr "Οι υποκατάλογοι %s και %s είναι ταυτόσημοι\n" -#: src/diff.c:1339 src/diff.c:1389 +#: src/diff.c:1411 src/diff.c:1461 #, c-format msgid "File %s is a %s while file %s is a %s\n" msgstr "Το αρχείο %s είναι %s ενώ το αρχείο %s είναι %s\n" -#: src/diff.c:1375 +#: src/diff.c:1447 #, c-format msgid "Symbolic links %s and %s differ\n" msgstr "Οι συμβολικοί σύνδεσμοι %s και %s διαφέρουν\n" -#: src/diff.c:1462 +#: src/diff.c:1534 #, c-format msgid "Files %s and %s are identical\n" msgstr "Τα αρχεία %s καί %s είναι πανομοιότυπα\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff3.c:43 +#: src/diff3.c:51 msgid "Randy Smith" msgstr "Randy Smith" -#: src/diff3.c:356 +#: src/diff3.c:363 #, c-format msgid "incompatible options" msgstr "ασύμβατες επιλογές" -#: src/diff3.c:396 +#: src/diff3.c:403 msgid "'-' specified for more than one input file" msgstr "«-» ορίστηκε για περισσότερα από ένα αρχεία εισόδου" -#: src/diff3.c:447 src/diff3.c:1295 src/diff3.c:1698 src/diff3.c:1753 -#: src/sdiff.c:308 src/sdiff.c:846 src/sdiff.c:857 +#: src/diff3.c:445 src/diff3.c:1284 src/diff3.c:1683 src/diff3.c:1738 +#: src/sdiff.c:306 src/sdiff.c:843 src/sdiff.c:854 msgid "read failed" msgstr "αποτυχία ανάγνωσης" -#: src/diff3.c:480 +#: src/diff3.c:478 msgid "-A, --show-all output all changes, bracketing conflicts" -msgstr "-A --show-all Έξοδος όλων των διαφορών σε αγκύλες." +msgstr "-A --show-all Έξοδος όλων των διαφορών σε αγκύλες" -#: src/diff3.c:482 +#: src/diff3.c:480 msgid "" "-e, --ed output ed script incorporating changes\n" " from OLDFILE to YOURFILE into MYFILE" msgstr "" "-e, --ed έξοδος ενός ed script που περιλαμβάνει τις αλλαγές\n" -"από OLDFILE σε YOURFILE στο MYFILE " +"από OLDFILE σε YOURFILE στο MYFILE" -#: src/diff3.c:484 +#: src/diff3.c:482 msgid "-E, --show-overlap like -e, but bracket conflicts" msgstr "-E, --show-overlap όπως -e, αλλά οι διαφορές σε αγκύλες" -#: src/diff3.c:485 +#: src/diff3.c:483 msgid "" "-3, --easy-only like -e, but incorporate only nonoverlapping " "changes" @@ -1182,22 +1177,22 @@ msgstr "" "-3, --easy-only όπως -e, αλλά περιλαμβάνει μόνο τις μη " "αλληλοεπικαλυπτόμενες αλλαγές" -#: src/diff3.c:486 +#: src/diff3.c:484 msgid "" "-x, --overlap-only like -e, but incorporate only overlapping changes" msgstr "" "-x, --overlap-only όπως -e, αλλά περιλαμβάνει μόνο τις αλληλοκαλυπτόμενες " "αλλαγές" -#: src/diff3.c:487 +#: src/diff3.c:485 msgid "-X like -x, but bracket conflicts" msgstr "-X like -x, but bracket conflicts" -#: src/diff3.c:488 +#: src/diff3.c:486 msgid "-i append 'w' and 'q' commands to ed scripts" msgstr "-i προσάρτηση των εντολών «w» και «q» στα σενάρια του «ed»" -#: src/diff3.c:490 +#: src/diff3.c:488 msgid "" "-m, --merge output actual merged file, according to\n" " -A if no other options are given" @@ -1205,50 +1200,49 @@ msgstr "" "-m, --merge έξοδος του συγχωνευμένου αρχείου σύμφωνα με την\n" " -A αν δεν δίνεται άλλη επιλογή" -#: src/diff3.c:493 +#: src/diff3.c:491 msgid "-a, --text treat all files as text" -msgstr "-a, --text Θεωρεί όλα τα αρχεία ως κείμενο." +msgstr "-a, --text Θεωρεί όλα τα αρχεία ως κείμενο" -#: src/diff3.c:494 +#: src/diff3.c:492 msgid " --strip-trailing-cr strip trailing carriage return on input" -msgstr "--strip-trailing-cr Απαλειφή του χαρακτήρα επιστροφής στην είσοδο." +msgstr " --strip-trailing-cr Απαλειφή του χαρακτήρα επιστροφής στην είσοδο" -#: src/diff3.c:495 +#: src/diff3.c:493 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" -"-T, --initial-tab στοίχιση των στηλοθετών με την επιπρόσθεση ενός στην " -"αρχή." +"-T, --initial-tab στοίχιση των στηλοθετών με την επιπρόσθεση ενός στην αρχή" -#: src/diff3.c:496 +#: src/diff3.c:494 msgid " --diff-program=PROGRAM use PROGRAM to compare files" -msgstr "--diff-program=ΠΡΟΓΡ Χρήση του ΠΡΟΓΡάμματος στη σύγκριση αρχείων." +msgstr " --diff-program=ΠΡΟΓΡ Χρήση του ΠΡΟΓΡάμματος στη σύγκριση αρχείων" -#: src/diff3.c:497 +#: src/diff3.c:495 msgid "" "-L, --label=LABEL use LABEL instead of file name\n" " (can be repeated up to three times)" msgstr "" "-L, --label=LABEL χρήση LABEL αντί ονόματος αρχείου\n" -" (μπορεί να επαναληφθεί μέχρι τρεις φορές) " +" (μπορεί να επαναληφθεί μέχρι τρεις φορές)" -#: src/diff3.c:500 +#: src/diff3.c:498 msgid " --help display this help and exit" -msgstr " --help εμφάνιση αυτής εδώ της βοήθειας κι έξοδος " +msgstr " --help εμφάνιση αυτής εδώ της βοήθειας κι έξοδος" -#: src/diff3.c:501 +#: src/diff3.c:499 msgid "-v, --version output version information and exit" msgstr "-v, --version εμφάνιση πληροφοριών έκδοσης κι έξοδος" -#: src/diff3.c:510 +#: src/diff3.c:508 #, c-format msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n" msgstr "Χρήση: %s [ΕΠΙΛΟΓΗ]... MYFILE OLDFILE YOURFILE\n" -#: src/diff3.c:512 +#: src/diff3.c:510 msgid "Compare three files line by line." msgstr "Σύγκριση τριών αρχείων γραμμή προς γραμμή." -#: src/diff3.c:522 +#: src/diff3.c:520 msgid "" "\n" "The default output format is a somewhat human-readable representation of\n" @@ -1275,54 +1269,54 @@ msgstr "" "είσοδο, αυτό είναι\n" "σταθερότερο απο την χρήση του ed.\n" -#: src/diff3.c:534 +#: src/diff3.c:532 msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble." msgstr "Σε επιτυχία η έξοδος είναι 0, σε σύγκρουση 1 και σε πρόβλημα 2." -#: src/diff3.c:727 +#: src/diff3.c:725 msgid "internal error: screwup in format of diff blocks" msgstr "εσωτερικό σφάλμα: μπέρδεμα στις μορφές των μπλοκ diff" -#: src/diff3.c:1022 +#: src/diff3.c:1015 #, c-format msgid "%s: diff failed: " msgstr "%s: αποτυχία του diff: " -#: src/diff3.c:1044 +#: src/diff3.c:1037 msgid "internal error: invalid diff type in process_diff" msgstr "εσωτερικό σφάλμα: μη έγκυρος τύπος diff στο process_diff" -#: src/diff3.c:1069 +#: src/diff3.c:1060 msgid "invalid diff format; invalid change separator" msgstr "άκυρη μορφή diff· μη έγκυρος οριοθέτης αλλαγής" -#: src/diff3.c:1305 +#: src/diff3.c:1294 msgid "invalid diff format; incomplete last line" msgstr "άκυρη μορφή diff· ασυμπλήρωτη τελευταία γραμμή" -#: src/diff3.c:1329 src/sdiff.c:276 src/util.c:969 +#: src/diff3.c:1318 src/sdiff.c:274 src/util.c:1069 #, c-format msgid "subsidiary program '%s' could not be invoked" msgstr "το υποπρόγραμμα «%s» δεν ήταν δυνατόν να κληθεί" -#: src/diff3.c:1354 +#: src/diff3.c:1343 msgid "invalid diff format; incorrect leading line chars" msgstr "άκυρη μορφή diff· λάθος χαρακτήρες στη γραμμή αποτελεσμάτων" -#: src/diff3.c:1427 +#: src/diff3.c:1416 msgid "internal error: invalid diff type passed to output" msgstr "εσωτερικό σφάλμα: μη έγκυρος τύπος diff πέρασε στην έξοδο" -#: src/diff3.c:1700 src/diff3.c:1757 +#: src/diff3.c:1685 src/diff3.c:1742 msgid "input file shrank" -msgstr "Το αρχείο εισόδου συρρικνώθηκε" +msgstr "το αρχείο εισόδου συρρικνώθηκε" -#: src/dir.c:156 +#: src/dir.c:154 #, c-format msgid "cannot compare file names '%s' and '%s'" msgstr "αδύνατη η σύγκριση των ονομάτων αρχείων «%s» και «%s»" -#: src/dir.c:225 +#: src/dir.c:223 #, c-format msgid "%s: recursive directory loop" msgstr "%s: αναδρομικός βρόχος στον κατάλογο" @@ -1332,125 +1326,125 @@ msgstr "%s: αναδρομικός βρόχος στον κατάλογο" msgid "Thomas Lord" msgstr "Thomas Lord" -#: src/sdiff.c:174 +#: src/sdiff.c:173 msgid "" "-o, --output=FILE operate interactively, sending output to FILE" msgstr "" "-o, --output=ΑΡΧΕΙΟ Αλληλεπιδραστική λειτουργία με αποστολή εξόδου στο " -"ΑΡΧΕΙΟ." +"ΑΡΧΕΙΟ" -#: src/sdiff.c:176 +#: src/sdiff.c:175 msgid "" "-i, --ignore-case consider upper- and lower-case to be the same" msgstr "-i, --ignore-case Θεωρεί πεζά-κεφαλαία ίδια" -#: src/sdiff.c:177 +#: src/sdiff.c:176 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E, --ignore-tab-expansion Αγνοεί αλλαγές οφειλόμενες στη στηλοθέτηση" -#: src/sdiff.c:178 +#: src/sdiff.c:177 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "" "-Z, --ignore-trailing-space αγνοεί το λευκό διάστημα στο τέλος γραμμής" -#: src/sdiff.c:179 +#: src/sdiff.c:178 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "" "-b --ignore-space-change αγνοεί αλλαγές οφειλόμενες στον αριθμό λευκών " "διαστημάτων" -#: src/sdiff.c:180 +#: src/sdiff.c:179 msgid "-W, --ignore-all-space ignore all white space" -msgstr "-W, --ignore-all-space Αγνοεί όλα τα λευκά διαστήματα." +msgstr "-W, --ignore-all-space Αγνοεί όλα τα λευκά διαστήματα" -#: src/sdiff.c:181 +#: src/sdiff.c:180 msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank" msgstr "" "-B, --ignore-blank-lines Αγνοεί αλλαγές οφειλόμενες στις λευκές γραμμές" -#: src/sdiff.c:182 +#: src/sdiff.c:181 msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE" msgstr "" "-I, --ignore-matching-lines=RE αγνοεί αλλαγές που οι γραμμές τους " "ταιριάζουν με RE" -#: src/sdiff.c:183 +#: src/sdiff.c:182 msgid " --strip-trailing-cr strip trailing carriage return on input" -msgstr "--strip-trailing-cr Απαλειφή του χαρακτήρα επιστροφής στην είσοδο" +msgstr " --strip-trailing-cr Απαλειφή του χαρακτήρα επιστροφής στην είσοδο" -#: src/sdiff.c:184 +#: src/sdiff.c:183 msgid "-a, --text treat all files as text" msgstr "-a --text Θεωρεί όλα τα αρχεία ως κείμενο" -#: src/sdiff.c:186 +#: src/sdiff.c:185 msgid "" "-w, --width=NUM output at most NUM (default 130) print columns" msgstr "" -"-w, --width=ΑΡ Έξοδος με το πολύ ΑΡ στήλες εκτύπωσης (προεπιλογή 130)." +"-w, --width=ΑΡ Έξοδος με το πολύ ΑΡ στήλες εκτύπωσης (προεπιλογή 130)" -#: src/sdiff.c:187 +#: src/sdiff.c:186 msgid "" "-l, --left-column output only the left column of common lines" msgstr "-l, --left-column Εμφάνιση στην αριστερή στήλη των κοινών γραμμών" -#: src/sdiff.c:188 +#: src/sdiff.c:187 msgid "-s, --suppress-common-lines do not output common lines" msgstr "-s, --suppress-common-lines Οι ταυτόσημες γραμμές δεν εμφανίζονται" -#: src/sdiff.c:190 +#: src/sdiff.c:189 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "-t, --expand-tabs Μετατροπή στηλοθετών σε διαστήματα στην έξοδο" -#: src/sdiff.c:191 +#: src/sdiff.c:190 msgid "" " --tabsize=NUM tab stops at every NUM (default 8) print columns" msgstr "" " --tabsize=ΑΡ Ο αριθμός διαστημάτων του στηλοθέτη είναι ΑΡ (προεπιλογή 8) " "στήλες" -#: src/sdiff.c:193 +#: src/sdiff.c:192 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "-d, --minimal προσπάθεια εύρεσης μικρότερου συνόλου αλλαγών" -#: src/sdiff.c:194 +#: src/sdiff.c:193 msgid "" "-H, --speed-large-files assume large files, many scattered small changes" msgstr "" "-H, --speed-large-files Υποθέτει μεγάλα αρχεία με πολλές σκόρπιες " "μικροδιαφορές" -#: src/sdiff.c:195 +#: src/sdiff.c:194 msgid " --diff-program=PROGRAM use PROGRAM to compare files" -msgstr "--diff-program=ΠΡΟΓΡ Χρήση του ΠΡΟΓΡάμματος στη σύγκριση αρχείων" +msgstr " --diff-program=ΠΡΟΓΡ Χρήση του ΠΡΟΓΡάμματος στη σύγκριση αρχείων" -#: src/sdiff.c:197 +#: src/sdiff.c:196 msgid " --help display this help and exit" -msgstr " --help εμφάνιση αυτής εδώ της βοήθειας κι έξοδος " +msgstr " --help εμφάνιση αυτής εδώ της βοήθειας κι έξοδος" -#: src/sdiff.c:198 +#: src/sdiff.c:197 msgid "-v, --version output version information and exit" msgstr "-v --version ονόμα, έκδοση κι έξοδος" -#: src/sdiff.c:207 +#: src/sdiff.c:206 #, c-format msgid "Usage: %s [OPTION]... FILE1 FILE2\n" msgstr "Χρήση: %s [ΕΠΙΛΟΓΗ]... ΑΡΧΕΙΟ1 ΑΡΧΕΙΟ2\n" -#: src/sdiff.c:209 +#: src/sdiff.c:208 msgid "Side-by-side merge of differences between FILE1 and FILE2." msgstr "Συγχώνευση δίπλα-δίπλα των διαφορών των ΑΡΧΕΙΟ1 και ΑΡΧΕΙΟ2." -#: src/sdiff.c:330 +#: src/sdiff.c:328 msgid "cannot interactively merge standard input" -msgstr "αδυνατώ να συγχωνεύσω αλληλεπιδραστικά την πρότυπη είσοδο." +msgstr "αδυνατώ να συγχωνεύσω αλληλεπιδραστικά την πρότυπη είσοδο" -#: src/sdiff.c:597 +#: src/sdiff.c:594 msgid "both files to be compared are directories" msgstr "και τα δύο προς σύγκριση αρχεία είναι κατάλογοι" -#: src/sdiff.c:820 +#: src/sdiff.c:817 msgid "" "ed:\tEdit then use both versions, each decorated with a header.\n" "eb:\tEdit then use both versions.\n" @@ -1475,28 +1469,12 @@ msgstr "" "v:\tΣυμπεριλαμβάνει τις ταυτόσημες γραμμές και το επισημαίνει.\n" "q:\tΈξοδος.\n" -#: src/util.c:662 +#: src/util.c:755 #, c-format msgid "unrecognized prefix: %s" msgstr "άγνωστο πρόθεμα: %s" -#: src/util.c:692 +#: src/util.c:785 #, c-format msgid "unparsable value for --palette" -msgstr "unparsable τιμή για --palette " - -#, c-format -#~ msgid "invalid %s%s argument '%s'" -#~ msgstr "μη έγκυρο %s%s όρισμα «%s»" - -#, c-format -#~ msgid "invalid suffix in %s%s argument '%s'" -#~ msgstr "μη έγκυρη κατάληξη «%s» στο όρισμα %s%s" - -#, c-format -#~ msgid "%s%s argument '%s' too large" -#~ msgstr "%s%s όρισμα «%s» πολύ μεγάλο" - -#, c-format -#~ msgid "%s home page: \n" -#~ msgstr "%s home page: \n" +msgstr "unparsable τιμή για --palette" diff --git a/po/eo.gmo b/po/eo.gmo index 80d03ba81266103c18bdfd6239bc825f5d224cea..3f31ad0b6b0ab123255a9b97b39dda5182ee94ef 100644 GIT binary patch delta 6597 zcmZ|T30Rd?9>?(mN-C~sE`Y)d2&gOyXezjX8z2I%nTq07Uf{Cai}zks+-{m$nl(9Q zsUumMO*)x5H`|=FCdo8y8FR`qofeyNNi9vQv6=7xo|k8=dFFlk-OoAa-OhW?d0%{5 zvn=qQ)q&pA?VGMwY|R6d>WW3pm9kOZ+)i4RGCC<$PCW{TQ(xU#sbTnzWk?s=s87U! zcm@YxXsA+kI3D}sQM?12hAGt#GcZjlubM+4n}+Q;5-;K+Obb^k7oWpS{0TEKgI>z< z^HACk;09FPlo|sYQTBg@BQQBacifHn)L%sDU{It|dE8$Op&&a}qxASA%);@8Qv2~? z+{Oq@h*D}V_3P0}jlx|qO4;!$a*CSKU8z2}1Uukv48b>$zN-_Mh*waKkBFsnUJ64f z#A7w~!1c&Osr@JieuCUz{fxcvCN{wyar*c~97}x?j=-ld2hZb3?90XFx(hH5x1mhs zCG=)eNMmn0dQf)kMj4UsF&ndbYFFVB>hGgW#aMbX8rPtl_aVy2g(vvuR!v8llC>z; zKW)`R8HOR$OA{G?xzKhRWRZM^eK9miU!VZrocvDNMo0 z-b&qz<4{K6B+B`boGcwKM>)^ehw)!Y;U^m8fTf%*Cmcbkw@X!OIZi=Yy{Az++L5Iz z7s^LDegn#boJM)#FrGqIc^PJ6J<55faWHmb=OCQurI1fyEoR~w9Et{alOdXka^Mz} z4xHjgMx+B*llEei^EV^+R_8DRBUs|BS2Y-A@fBP3g(z#P9$TXKRSIn>97Y+ElPEnj z2I@JTfpOHgqFneecE+!*c9~e|P&~@eyHSqcj-Bu*%3}Tkr6V#-a(-9jMewS=6hdg2 zf?-&REpR37#D_2!GkDx~xB^?@BiJ0bVJJR>(!n=T9_Xy)HN2gA5Kkpf9ELF%=dUyW zqbbOZ??mbG9PEJiq1`UYuqpl$9MctmMhcFje;HnhmLhDgFyb~ED^*YKLxQQ%ymBPE2 zfHve+R}Y{(`Cg2~ljsen@FN8ovW~n%0T_#2F&^a!Mj)@env7An6y<{3toFB2I&uxW zVJkica(pk8wJ;Io0T-fyn=JPYXa1!Fr)ZElyn)h@_I$=<4Mby8OhgAgOF`+-cgvwDBQX`DvCd1uzsN9{hFvHZe#tuE z7{*e+jPj(NcopOZ;V6r(CrStUp{$)8Y=M(du2YP+p$FUGLX?qSjWW{SC#?gX#~>Q^ zS@qX3k@{OGH@t@ak>Rr^Z$~7`1=CQTXc)>9+b|gGusJSA>DU9fmnqzYcj4GE{x7Fj z?a0@k&`ZerQT+;d=W#w}Vv9okMI4PQsjo)fL=`ete*p_IgZdieo21^tJPaJC|0)*X z3hG;MJjU|F@=)_}p#1&cPl0=@8<>ToCh&R0`;c=~+(doD`6%!I3n(|bf>SVIlKuz9 z3gi-MKgxL_cXAD!jnaMrpT?n+m3o#D_!_ryfAuI=kq%@`z;#Wv#Rr~4s zN$e<3x(|6c)p3S?8!Azb+lcbSmyuah!;19~uSKR?eTZ^i^h~}XIN$QUnT-EZ8hY6D zob9yy0eRKcuvvOd+>3*#A3>ShX0!DTCLn{PHX?7Xx{9n*l~JP4UxCA@AHghaZ7Rj` zQH97dQCm!}{y&41&r*xxqe^6AxiKJc)654y7X@b^4PWXPJ%$?FHBxohT!_7&Gx1jKz!S zmBr9uf$r%z>_oj1({UN5;j7piub@mt)IvSy`6we*i!uTmF&tk;Spz4q37*An_zkwl zW{dQi3R}eZ%c9DrK`v~^Ubr6Rz}Hab^tiSEJM2L{VzItqHp<#5L+QwBl*Re1wf{KE z$bFBp27;F8KXPr+8Ni2Z3FF^|9V<{S{1`UHL)a0Iq73opC?j#*GU0ALq{V2^{vh_m z-PjFJqMUynegnP7GS6=QJE;4fI9>Gc1cRjQV1X z#0?mYFQKfFPb@E>T<<2zeLCEur!Ey`M7&ce$Ra60c?(=9BjQDw!wuLRpGG-u56X!L zP;PV>WrRMq_FuBvZ=!U(&2nuR%GAW6+$RrN#9nn51?iy|WG!jj4q1hIlm$JCd{1~`)XPM+cgSn<{tu#1OyntLdysrirc33P?QN^f zTciGIm3!kI9`jUsq2{My7 z$T1?*5XcZ*!he(Qu34wC|_u`Ak%-1jFjn;+SJuTef6PJU9}}M79e= z7F**c>*8MWFY;HyYpnvfcoJSEPZQbJYy5x8t)ic0G7kMIK5Dg|x@GTF$~B~#TqoDa z8S)sJOnxSO(EJ-KSz9jp}L^6atL!9I&i6MU?vTY`{{*wMTz;epoNmj#R%h8sr zFvyyxw_xIjk=544@(=#^fXYA;Xf@{J z2GT%mH3LwKQQW zj!=G`G^P9$W{~mZPSS*&B{Rs!M7HC^L)Q8Bb{rg-J=CmQj#s(H3LHzlWwO0CBkpAo$7i7w&MHB~md!$?Zf7pOLE z4tHa1us+atzH@X`Y_{nzUA8Kt+^niGYTb56nUP&E$#6SMJ@afXGu;>z>mK53Ij}Oo zJH|fSbhu3;d+eCGX$k56<0u<+#cg*wj5O&)mCa+i{3j&`Pb{ae{8#ES&0DTm=d3lj zv~Kn|joIZkN118Z93_U!EU~*iF8i!nk7?LFatV_oxkf=@f-yO3{P?VbiBl2{&hnI- zhB@D3Iy^>=>8iGSJZ6b8tBwxLOAhwcrWXbTnKe$A$G0~ls8zdCdzERFnC{swdyU8G za{Hdk4i9MBKe=zpx_5K3LQ+$b`V2@)>0_j(r1u?=)F;gsmD@j{N#EpD-?Y(v0&}gI z$;-{kZ=9J*nJk-OR@uv(8HVgJOt+`@f9J-qHSGG;+{C%<)l5(0bQo@XnZsUc`|bR! zJKs6nw`I(+n52W7^(5K+v*a{*ETeXT-KcRn%UrfjhecNzy*+2tANNtJyTtKya$q#JX8yN^yZ)Y}{f>+MFRtwK*-iPK>> zXvuaY2al{=z+7^%f{_KelZ@;vnY-M=L}p0tU1e4nHpaoMWJ$>knr@a3bHsk5$~;)_ ztY99`%qa>OXp?!YZR|}_wcYKka2U3#bR*UsJl@*taoI|0>4?Ml@BVd;+$7&X_rX?e XD~uAS+itoXwbiD}S>e0x?HKSMO7rD8 delta 5707 zcmYk=34Bdg0>|<5l8_Ke5QzkNL=u{WL{ucPyu=zwEJbVIN=g%3(V}?P*tN!JtHu_s zZFKWmw3b?iwzk%cTDs6N4T|YZRf|?T^ZUPZ^J(wr^MBuS?z{KgbIv{Y<}r71z|uJZ z-b*!tRvETHmoas*MTjv2DCbw#USsxz8#9Xfd)S_O!w6$?u+VWEW>CL{tuQ{)n5j4f z)A1s<#IQQXJc3;?4QFC!W4vZ3g^uj_8K4)V+NQbxYQv+P~@4;}eZ(OMN1$ zot=ryzZS`N>}Y}U%##`zfa>w{*ag2pO>v`S+i)N3M7u@JCcfs%F?J z?}s{W3D(A)s73rSssmS1=LN73SkER3!>}Dj>G|(Tp%OcaF&Ce~>Ua>V;28|TOIQc5 zp*rMZ-ZcWZV+z)y?m>;P560p!r#>H}sINeEbO%<~^M8cG+w3@tv~5b5-(Wn1Zu}T0 z;0;v61DPg`U=-HCX&8sgP#y3&-+$!zIjY0APy-5W%R0hHY{B(S7KOSv9`#~ahH7XZ zs;6g=zM1Q&d)taNx4t>Z9bmQl!?|(tfh+cD=`fyCe1mwvx{g5ZuEJfYp{ivC^;M5 z_8-Cu)IW0Sr!k58XQ=CV19;tON~&W`OhPr}L5-w4YNTUPBPhWTT!HG)EBG$AZVUFs zL0#>eaaW%80diMOPQHE7%}3U!Iff;A{wo&P7tb=}2{R`!3q!iu9~K>uHq1=yfyZ$^ zMt3*nQQU~!C36RP*O*KWq6sqzv+*#l#h{)nSS;m(C(+!&Og;b2X+}dC3`9 zFMEMZ)QQV*AzpU&kLt~nLVYj3!N^DS;r9adnvdHK?8YMM75du6I04hCuR`6rQ&^kp zn=2Gz@IE%hI`kp|yP)dhF%j2e5}rUUx_hYeYWBCk3(`>MrDFgNL7g`oAH(ISfs`Sq zn)Ct8KbHRyTL z9={TG!ArOVn~kz-XfJ9J|A^{%^U?PA#B|J|eiS=n$W!+C9$pGs?TfJ`9>ezdE9!*o zBHoTT4>jTo*bbwL?eB#C*oOLQ)c5Bx59^Gvi*O|Bd>^J^@L0QsvakVl?|)v-dL!0vkVVUql{MhYK(k`=Q#Kfe+zotcF`r zkKY~))$@OfLJT`D`giacViffX6YYrH7)Cu4cVRy2IS!m;e^;7Z3miRO|EY`sDORZjm20Mmtj*}gC0DNaTxlHz2~V|hx$0Ijf*f7H((lm zfz7bmvv%s+p>AyvYKB&#S0mp|K~r@eHAO#QAO=pcfA52_2K6{h!d9roGZJ-A7vRI_ zLmhVsbql|DzOO#juC3On>y1Rs*!-!?zk0Hj9a@AZoddo{O3an$a2P#vRj{|0Wbpv7;W|MKusU!;UZ!HH8J( z3TL1i+=Uw94XlHeX4>;&QMWP!{fiOZ)cZM3!zk)&P&2X1OF>g{4z)<`J65J+>PR%! z$5hn4>w$U-rl8iy9IS#bpk`z(>K5+85IlxD?i18`U!ksZ&Drn0=j^CB%l0_JF&1@8 znxQVx8?}0ep*pq@)$lshTG)XRcpBA#t5_L-a&*n+9YK9Q(Nm%}hqL|+i`4u^a*6Kw z5~6Jrd4+tginA@nd1MYbLynQPB$!+#+9r}6{*vuLK4q<)`(y>#Nwkghe=_>=EtSF( zh-OVgUkra%`48Juy8cJbju)^8 zd535U132k4YWv#%`TNIb6mOBF-*=f0D32o7$v=qhvlegp_C1C7iI4PjcKXMk;Z$lm ziZ`9|IDE`0m!oIiMd$W7JAT6MZwr1(+Bx+Q96;JS^<6lSTp)TEXq!xSlN8dDX#0vxC)wm}qV1^WUvH|r zOL)^Mi%gP64wByFENMl;Nj-9n{DrW2{cpcT zl$wwNGKrLLQz@Jy&pA6{%fG;}8z(|Cz<-a;JU+yO3$*4mm++){G$E5^b+r{GSW>>`ER{ zZ769@{z*=eHslHkA|H}j>eX%&;46!a zZs1GE9PRRDweIHft!?vDsPFaMFjr8^rm5*G4|mNDOU+15Nlk8^?oMr$nVON9lIp9K um+lHoX`1fqmY))^vMjQeFSh%sSYOP, 2001, 2002, 2003, 2004. -# Felipe Castro , 2013, 2018, 2019. +# Felipe Castro , 2013, 2018, 2019, 2021. # msgid "" msgstr "" -"Project-Id-Version: GNU diffutils 3.6.17\n" +"Project-Id-Version: GNU diffutils 3.7.41\n" "Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n" -"POT-Creation-Date: 2021-08-01 18:56-0700\n" -"PO-Revision-Date: 2019-01-27 18:19+0100\n" +"POT-Creation-Date: 2023-05-21 01:51-0700\n" +"PO-Revision-Date: 2021-08-10 21:48-0300\n" "Last-Translator: Felipe Castro \n" "Language-Team: Esperanto \n" "Language: eo\n" @@ -17,31 +17,31 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Bugs: Report translation errors to the Language-Team address.\n" -"X-Generator: Poedit 2.0.7\n" +"X-Generator: Poedit 2.4.2\n" -#: lib/argmatch.c:132 +#: lib/argmatch.c:145 #, c-format msgid "invalid argument %s for %s" msgstr "malvalida argumento %s por %s" -#: lib/argmatch.c:133 +#: lib/argmatch.c:146 #, c-format msgid "ambiguous argument %s for %s" msgstr "plursenca argumento %s por %s" -#: lib/argmatch.c:152 lib/argmatch.h:223 +#: lib/argmatch.c:165 lib/argmatch.h:242 msgid "Valid arguments are:" msgstr "Validaj argumentoj estas:" -#: lib/c-stack.c:187 +#: lib/c-stack.c:186 msgid "program error" msgstr "program-eraro" -#: lib/c-stack.c:188 +#: lib/c-stack.c:187 msgid "stack overflow" msgstr "stako tro granda" -#: lib/error.c:195 +#: lib/error.c:193 msgid "Unknown system error" msgstr "Nekonata sistemeraro" @@ -197,83 +197,83 @@ msgstr "%s: la modifilo postulas argumenton -- '%c'\n" #. If you don't know what to put here, please see #. #. and use glyphs suitable for your language. -#: lib/quotearg.c:355 +#: lib/quotearg.c:354 msgid "`" msgstr "‘" -#: lib/quotearg.c:356 +#: lib/quotearg.c:355 msgid "'" msgstr "’" -#: lib/regcomp.c:135 +#: lib/regcomp.c:122 msgid "Success" msgstr "Sukceso" -#: lib/regcomp.c:138 +#: lib/regcomp.c:125 msgid "No match" msgstr "Nenia trafo" -#: lib/regcomp.c:141 +#: lib/regcomp.c:128 msgid "Invalid regular expression" msgstr "Malvalida regulesprimo" -#: lib/regcomp.c:144 +#: lib/regcomp.c:131 msgid "Invalid collation character" msgstr "Malvalida ordiga signo" -#: lib/regcomp.c:147 +#: lib/regcomp.c:134 msgid "Invalid character class name" msgstr "Malvalida nomo de signoklaso" -#: lib/regcomp.c:150 +#: lib/regcomp.c:137 msgid "Trailing backslash" msgstr "Vosta retroklino" -#: lib/regcomp.c:153 +#: lib/regcomp.c:140 msgid "Invalid back reference" msgstr "Malvalida retroreferenco" -#: lib/regcomp.c:156 +#: lib/regcomp.c:143 msgid "Unmatched [, [^, [:, [., or [=" msgstr "Neparigita [, [^, [:, [., aÅ­ [=" -#: lib/regcomp.c:159 +#: lib/regcomp.c:146 msgid "Unmatched ( or \\(" msgstr "Neparigita ( aÅ­ \\(" -#: lib/regcomp.c:162 +#: lib/regcomp.c:149 msgid "Unmatched \\{" msgstr "Neparigita \\{" -#: lib/regcomp.c:165 +#: lib/regcomp.c:152 msgid "Invalid content of \\{\\}" msgstr "Malvalida kunteksto de \\{\\}" -#: lib/regcomp.c:168 +#: lib/regcomp.c:155 msgid "Invalid range end" msgstr "Malvalida intervalo-fino" -#: lib/regcomp.c:171 +#: lib/regcomp.c:158 msgid "Memory exhausted" msgstr "Memoro estas elĉerpita" -#: lib/regcomp.c:174 +#: lib/regcomp.c:161 msgid "Invalid preceding regular expression" msgstr "Malvalida antaÅ­a regulesprimo" -#: lib/regcomp.c:177 +#: lib/regcomp.c:164 msgid "Premature end of regular expression" msgstr "Neatendita fino de regulesprimo" -#: lib/regcomp.c:180 +#: lib/regcomp.c:167 msgid "Regular expression too big" msgstr "Regula esprimo tro grandas" -#: lib/regcomp.c:183 +#: lib/regcomp.c:170 msgid "Unmatched ) or \\)" msgstr "Neparigita ) aÅ­ \\)" -#: lib/regcomp.c:676 +#: lib/regcomp.c:650 msgid "No previous regular expression" msgstr "Mankas antaÅ­a regulesprimo" @@ -305,7 +305,7 @@ msgstr "malsukcesis remalfermi %s per reĝimo %s" #: lib/xstdopen.c:34 #, c-format msgid "standard file descriptors" -msgstr "" +msgstr "normaj dosiernumeroj" #: lib/version-etc.c:73 #, c-format @@ -326,19 +326,16 @@ msgstr "©" #. TRANSLATORS: The %s placeholder is the web address of the GPL license. #: lib/version-etc.c:88 -#, fuzzy, c-format +#, c-format msgid "" "License GPLv3+: GNU GPL version 3 or later <%s>.\n" "This is free software: you are free to change and redistribute it.\n" "There is NO WARRANTY, to the extent permitted by law.\n" msgstr "" -"\n" -"Permeso GPLv3+: GNU GPL versio 3 aÅ­ posta .\n" +"Permeso GPLv3+: GNU GPL versio 3 aÅ­ posta <%s>.\n" "Tio ĉi estas libera programaro: vi estas libera por ŝanĝi kaj redisdoni " "ĝin.\n" "Ekzistas NENIU GARANTIO, laÅ­ plej amplekse permesate de la leĝoj.\n" -"\n" #. TRANSLATORS: %s denotes an author name. #: lib/version-etc.c:105 @@ -453,12 +450,10 @@ msgstr "" #. "Report translation bugs to <...>\n" with the address for translation #. bugs (typically your translation team's web or email address). #: lib/version-etc.c:249 -#, fuzzy, c-format +#, c-format msgid "Report bugs to: %s\n" msgstr "" -"\n" "Raportu program-misojn al: %s\n" -"\n" "Raportu tradukajn misojn al: \n" #: lib/version-etc.c:251 @@ -472,22 +467,21 @@ msgid "%s home page: <%s>\n" msgstr "%s hejm-paĝo: <%s>\n" #: lib/version-etc.c:260 -#, fuzzy, c-format +#, c-format msgid "General help using GNU software: <%s>\n" -msgstr "" -"Ĝenerala helpo por uzi programaron GNU: \n" +msgstr "Ĝenerala helpo por uzi programaron GNU: <%s>\n" -#: src/analyze.c:454 src/diff.c:1406 +#: src/analyze.c:455 src/diff.c:1478 #, c-format msgid "Files %s and %s differ\n" msgstr "Dosieroj %s kaj %s estas malsamaj\n" -#: src/analyze.c:455 +#: src/analyze.c:456 #, c-format msgid "Binary files %s and %s differ\n" msgstr "Ciferecaj dosieroj %s kaj %s estas malsamaj\n" -#: src/analyze.c:706 src/diff3.c:1470 src/util.c:1254 +#: src/analyze.c:707 src/diff3.c:1457 src/util.c:1354 msgid "No newline at end of file" msgstr "Mankas linifino ĉe fino de dosiero" @@ -501,41 +495,42 @@ msgstr "Torbjorn GRANLUND" msgid "David MacKenzie" msgstr "David MACKENZIE" -#: src/cmp.c:120 src/diff.c:879 src/diff3.c:467 src/sdiff.c:160 +#: src/cmp.c:124 src/diff.c:939 src/diff3.c:465 src/sdiff.c:159 #, c-format msgid "Try '%s --help' for more information." msgstr "Provu '%s --help' por pli da informoj." -#: src/cmp.c:138 +#: src/cmp.c:142 #, c-format msgid "invalid --ignore-initial value '%s'" msgstr "malvalida valoro '%s' de --ignore-initial" -#: src/cmp.c:148 +#: src/cmp.c:152 #, c-format msgid "options -l and -s are incompatible" msgstr "modifiloj -l kaj -s malakordas" -#: src/cmp.c:156 src/diff.c:887 src/diff3.c:474 src/sdiff.c:168 src/sdiff.c:316 -#: src/sdiff.c:323 src/sdiff.c:876 src/util.c:852 src/util.c:952 src/util.c:959 +#: src/cmp.c:160 src/diff.c:947 src/diff3.c:472 src/sdiff.c:167 src/sdiff.c:314 +#: src/sdiff.c:321 src/sdiff.c:873 src/util.c:952 src/util.c:1052 +#: src/util.c:1059 msgid "write failed" msgstr "skriberaro" -#: src/cmp.c:158 src/diff.c:889 src/diff.c:1471 src/diff3.c:476 src/sdiff.c:170 +#: src/cmp.c:162 src/diff.c:949 src/diff.c:1543 src/diff3.c:474 src/sdiff.c:169 msgid "standard output" msgstr "normala eligo" -#: src/cmp.c:162 +#: src/cmp.c:166 msgid "-b, --print-bytes print differing bytes" msgstr "-b, --print-bytes eligi malsamajn bajtojn" -#: src/cmp.c:163 +#: src/cmp.c:167 msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs" msgstr "" "-i N --ignore-initial=SALTO preterpasi la unuajn SALTO bajtojn de ambaÅ­ " "enigoj" -#: src/cmp.c:164 +#: src/cmp.c:168 msgid "" "-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n" " first SKIP2 bytes of FILE2" @@ -544,39 +539,39 @@ msgstr "" " DOSIERO1 kaj la unuajn SALT2 bajtojn\n" " de DOSIERO2" -#: src/cmp.c:166 +#: src/cmp.c:170 msgid "" "-l, --verbose output byte numbers and differing byte values" msgstr "" "-l, --verbose montri numerojn kaj valorojn de ĉiuj malsamaj " "bajtoj" -#: src/cmp.c:167 +#: src/cmp.c:171 msgid "-n, --bytes=LIMIT compare at most LIMIT bytes" msgstr "-n, --bytes=LIMO kompari maksimume LIMO bajtojn" -#: src/cmp.c:168 +#: src/cmp.c:172 msgid "-s, --quiet, --silent suppress all normal output" msgstr "-s, --quiet, --silent forkaŝi ĉiun normalan eligon" -#: src/cmp.c:169 +#: src/cmp.c:173 msgid " --help display this help and exit" msgstr " --help montri ĉi tiun helpon kaj eliri" -#: src/cmp.c:170 +#: src/cmp.c:174 msgid "-v, --version output version information and exit" msgstr "-v, --version eligi informon pri versio kaj eliri" -#: src/cmp.c:179 +#: src/cmp.c:183 #, c-format msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n" msgstr "Uzmaniero: %s [MODIFILO]... DOSIERO1 [DOSIERO2 [SALT1 [SALT2]]]\n" -#: src/cmp.c:181 +#: src/cmp.c:185 msgid "Compare two files byte by byte." msgstr "Kompari du dosierojn bajton post bajto." -#: src/cmp.c:183 +#: src/cmp.c:187 msgid "" "The optional SKIP1 and SKIP2 specify the number of bytes to skip\n" "at the beginning of each file (zero by default)." @@ -584,13 +579,13 @@ msgstr "" "La nedevigaj SALT1 kaj SALT2 indikas la nombron da bajtoj por salti\n" "en la komenco de ĉiu dosiero (aprioras nulo)." -#: src/cmp.c:186 src/diff.c:999 src/diff3.c:514 src/sdiff.c:211 +#: src/cmp.c:190 src/diff.c:1059 src/diff3.c:512 src/sdiff.c:210 msgid "" "Mandatory arguments to long options are mandatory for short options too.\n" msgstr "" "Nepraj argumentoj por longaj modifiloj ankaÅ­ nepras por la mallongaj.\n" -#: src/cmp.c:192 +#: src/cmp.c:196 msgid "" "SKIP values may be followed by the following multiplicative suffixes:\n" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" @@ -600,192 +595,192 @@ msgstr "" "kB 1000, K 1024, MB 1 000 000, M 1 048 576,\n" "GB 1 000 000 000, G 1 073 741 824, kaj tiel plu por T, P, E, Z, Y." -#: src/cmp.c:195 +#: src/cmp.c:199 msgid "If a FILE is '-' or missing, read standard input." msgstr "Se DOSIERO estas '-' aÅ­ mankas, legi la normalan enigon." -#: src/cmp.c:196 src/diff.c:987 src/sdiff.c:221 +#: src/cmp.c:200 src/diff.c:1047 src/sdiff.c:220 msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble." msgstr "" "Elig-valoro estas 0 se enigoj estas samaj, 1 se malsamaj, 2 se problemaj." -#: src/cmp.c:243 +#: src/cmp.c:247 #, c-format msgid "invalid --bytes value '%s'" msgstr "malvalida valoro '%s' de --bytes" -#: src/cmp.c:269 src/diff.c:797 src/diff3.c:361 src/sdiff.c:567 +#: src/cmp.c:273 src/diff.c:857 src/diff3.c:368 src/sdiff.c:564 #, c-format msgid "missing operand after '%s'" msgstr "mankas argumento post '%s'" -#: src/cmp.c:281 src/diff.c:799 src/diff3.c:363 src/sdiff.c:569 +#: src/cmp.c:285 src/diff.c:859 src/diff3.c:370 src/sdiff.c:566 #, c-format msgid "extra operand '%s'" msgstr "superflua argumento '%s'" -#: src/cmp.c:507 +#: src/cmp.c:521 #, c-format msgid "%s %s differ: byte %s, line %s\n" msgstr "%s %s malsamas: bajto %s, linio %s\n" -#: src/cmp.c:523 +#: src/cmp.c:537 #, c-format msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n" msgstr "%s %s malsamas: bajto %s, linio %s estas %3o %s %3o %s\n" -#: src/cmp.c:580 +#: src/cmp.c:594 #, c-format msgid "cmp: EOF on %s which is empty\n" msgstr "cmp: EOF ĉe %s, kiu malplenas\n" -#: src/cmp.c:594 +#: src/cmp.c:608 #, c-format msgid "cmp: EOF on %s after byte %s, line %s\n" msgstr "cmp: EOF ĉe %s post bajto %s, linio %s\n" -#: src/cmp.c:595 +#: src/cmp.c:609 #, c-format msgid "cmp: EOF on %s after byte %s, in line %s\n" msgstr "cmp: EOF ĉe %s post bajto %s, en linio %s\n" -#: src/cmp.c:601 +#: src/cmp.c:615 #, c-format msgid "cmp: EOF on %s after byte %s\n" msgstr "cmp: EOF ĉe %s post bajto %s\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:51 +#: src/diff.c:50 msgid "Paul Eggert" msgstr "Paul EGGERT" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:52 +#: src/diff.c:51 msgid "Mike Haertel" msgstr "Mike HAERTEL" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:53 +#: src/diff.c:52 msgid "David Hayes" msgstr "David HAYES" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:54 +#: src/diff.c:53 msgid "Richard Stallman" msgstr "Richard STALLMANN" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:55 +#: src/diff.c:54 msgid "Len Tower" msgstr "Len TOWER" -#: src/diff.c:355 +#: src/diff.c:365 #, c-format msgid "invalid context length '%s'" msgstr "malvalida longo '%s' de kunteksto" -#: src/diff.c:438 +#: src/diff.c:487 #, c-format msgid "pagination not supported on this host" msgstr "dispaĝigo ne eblas kun ĉi tiu sistemo" -#: src/diff.c:453 src/diff3.c:341 +#: src/diff.c:502 src/diff3.c:348 #, c-format msgid "too many file label options" msgstr "tro multe da dosier-etikedaj modifiloj" -#: src/diff.c:530 +#: src/diff.c:579 #, c-format msgid "invalid width '%s'" msgstr "malvalida larĝo '%s'" -#: src/diff.c:534 +#: src/diff.c:583 msgid "conflicting width options" msgstr "malakordaj modifiloj pri larĝo" -#: src/diff.c:559 +#: src/diff.c:608 #, c-format msgid "invalid horizon length '%s'" msgstr "malvalida horizonta longo '%s'" -#: src/diff.c:615 +#: src/diff.c:664 #, c-format msgid "invalid tabsize '%s'" msgstr "malvalida TAB-larĝo '%s'" -#: src/diff.c:619 +#: src/diff.c:668 msgid "conflicting tabsize options" msgstr "malkongruaj modifiloj pri TAB-larĝo" -#: src/diff.c:774 +#: src/diff.c:834 msgid "--from-file and --to-file both specified" msgstr "--from-file kaj --to-file ambaÅ­ specifitaj" -#: src/diff.c:893 +#: src/diff.c:953 msgid " --normal output a normal diff (the default)" msgstr " --normal montri normalan malsamon (aprioras)" -#: src/diff.c:894 +#: src/diff.c:954 msgid "-q, --brief report only when files differ" msgstr "-q, --brief montri nur kiam la dosieroj malsamas" -#: src/diff.c:895 +#: src/diff.c:955 msgid "-s, --report-identical-files report when two files are the same" msgstr "-s, --report-identical-files montri kiam du dosieroj samas" -#: src/diff.c:896 +#: src/diff.c:956 msgid "" "-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context" msgstr "" "-c, -C NUM, --context[=NUM] montri NUM (aprioras 3) liniojn da kopiita " "kunteksto" -#: src/diff.c:897 +#: src/diff.c:957 msgid "" "-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context" msgstr "" "-u, -U NUM, --unified[=NUM] montri NUM (aprioras 3) liniojn da unuigita " "kunteksto" -#: src/diff.c:898 +#: src/diff.c:958 msgid "-e, --ed output an ed script" msgstr "-e, --ed montri ed-skripton" -#: src/diff.c:899 +#: src/diff.c:959 msgid "-n, --rcs output an RCS format diff" msgstr "-n, --rcs montri malsamon laÅ­ RCS-formo" -#: src/diff.c:900 +#: src/diff.c:960 msgid "-y, --side-by-side output in two columns" msgstr "-y, --side-by-side montri en du kolumnoj" -#: src/diff.c:901 +#: src/diff.c:961 msgid "" "-W, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-W, --width=NUM montri maksimume NUM (aprioras 130) kolumnojn" -#: src/diff.c:902 +#: src/diff.c:962 msgid "" " --left-column output only the left column of common lines" msgstr "" " --left-column montri nur la maldekstran kolumnon de komunaj " "linioj" -#: src/diff.c:903 +#: src/diff.c:963 msgid " --suppress-common-lines do not output common lines" msgstr " --suppress-common-lines ne montri komunajn liniojn" -#: src/diff.c:905 +#: src/diff.c:965 msgid "-p, --show-c-function show which C function each change is in" msgstr "-p, --show-c-function montri en kiu C-funkcio ĉiu ŝanĝo estas" -#: src/diff.c:906 +#: src/diff.c:966 msgid "-F, --show-function-line=RE show the most recent line matching RE" msgstr "" "-F, --show-function-line=RE montri la plej freŝa linio kongruanta al RE" -#: src/diff.c:907 +#: src/diff.c:967 msgid "" " --label LABEL use LABEL instead of file name and timestamp\n" " (can be repeated)" @@ -794,84 +789,84 @@ msgstr "" "tempindiko\n" " (povas esti ripetata)" -#: src/diff.c:910 +#: src/diff.c:970 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "-t, --expand-tabs etendigi tabojn al spacoj en la eligo" -#: src/diff.c:911 +#: src/diff.c:971 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "-T, --initial-tab ĝustigi tabojn per antaÅ­meto de tabo" -#: src/diff.c:912 +#: src/diff.c:972 msgid "" " --tabsize=NUM tab stops every NUM (default 8) print columns" msgstr "" " --tabsize=NUM tab-lokoj estas post ĉiuj NUM (aprioras 8) " "kolumnoj" -#: src/diff.c:913 +#: src/diff.c:973 msgid "" " --suppress-blank-empty suppress space or tab before empty output lines" msgstr "" " --suppress-blank-empty forkaŝi spacon aŭ tabon antaÅ­ malplenaj " "eligitaj linioj" -#: src/diff.c:914 +#: src/diff.c:974 msgid "-l, --paginate pass output through 'pr' to paginate it" msgstr "" "-l, --paginate pasigi la eligon tra 'pr' por enpaĝigi ĝin" -#: src/diff.c:916 +#: src/diff.c:976 msgid "" "-r, --recursive recursively compare any subdirectories found" msgstr "" "-r, --recursive rikure kompari trovitajn subdosierujojn" -#: src/diff.c:917 +#: src/diff.c:977 msgid " --no-dereference don't follow symbolic links" msgstr " --no-dereference ne sekvi simbolajn ligojn" -#: src/diff.c:918 +#: src/diff.c:978 msgid "-N, --new-file treat absent files as empty" msgstr "" "-N, --new-file trakti mankantajn dosierojn kiel malplenajn" -#: src/diff.c:919 +#: src/diff.c:979 msgid " --unidirectional-new-file treat absent first files as empty" msgstr "" " --unidirectional-new-file trakti mankantajn unuajn dosierojn kiel " "malplenajn" -#: src/diff.c:920 +#: src/diff.c:980 msgid " --ignore-file-name-case ignore case when comparing file names" msgstr "" " --ignore-file-name-case preteratenti usklecon dum komparo de " "dosiernomoj" -#: src/diff.c:921 +#: src/diff.c:981 msgid " --no-ignore-file-name-case consider case when comparing file names" msgstr "" " --no-ignore-file-name-case konsideri usklecon dum komparo de dosiernomoj" -#: src/diff.c:922 +#: src/diff.c:982 msgid "-x, --exclude=PAT exclude files that match PAT" msgstr "" "-x, --exclude=ŜABLONO forigi dosierojn, kiuj kongruas kun ŜABLONO" -#: src/diff.c:923 +#: src/diff.c:983 msgid "" "-X, --exclude-from=FILE exclude files that match any pattern in FILE" msgstr "" "-X, --exclude-from=DOSIERO forigi dosierojn, kiuj kongruas kun iu " "ŝablono en DOSIERO" -#: src/diff.c:924 +#: src/diff.c:984 msgid "" "-S, --starting-file=FILE start with FILE when comparing directories" msgstr "" "-S, --starting-file=DOSIERO komenci per DOSIERO, komparante dosierujojn" -#: src/diff.c:925 +#: src/diff.c:985 msgid "" " --from-file=FILE1 compare FILE1 to all operands;\n" " FILE1 can be a directory" @@ -879,7 +874,7 @@ msgstr "" " --from-file=DOSIERO1 kompari DOSIERO1 kun ĉiuj argumentoj;\n" " DOSIERO1 povas esti dosierujo" -#: src/diff.c:927 +#: src/diff.c:987 msgid "" " --to-file=FILE2 compare all operands to FILE2;\n" " FILE2 can be a directory" @@ -887,78 +882,78 @@ msgstr "" " --to-file=DOSIERO2 kompari ĉiujn argumentojn kun DOSIERO2;\n" " DOSIERO2 povas esti dosierujo" -#: src/diff.c:930 +#: src/diff.c:990 msgid "" "-i, --ignore-case ignore case differences in file contents" msgstr "" "-i, --ignore-case preteratenti malsamojn en uskleco en " "dosierenhavo" -#: src/diff.c:931 +#: src/diff.c:991 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E, --ignore-tab-expansion preteratenti ŝanĝojn kaÅ­zatajn de tab-" "etendigo" -#: src/diff.c:932 +#: src/diff.c:992 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "-Z, --ignore-trailing-space preteratenti blank-spacon ĉe linifino" -#: src/diff.c:933 +#: src/diff.c:993 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "" "-b, --ignore-space-change preteratenti ŝanĝojn en kvanto da blank-spaco" -#: src/diff.c:934 +#: src/diff.c:994 msgid "-w, --ignore-all-space ignore all white space" msgstr "-w, --ignore-all-space preteratenti ĉiun blankan spacon" -#: src/diff.c:935 +#: src/diff.c:995 msgid "" "-B, --ignore-blank-lines ignore changes where lines are all blank" msgstr "" "-B, --ignore-blank-lines preteratenti ŝanĝojn, kie linioj estas ĉiuj " "malplenaj" -#: src/diff.c:936 +#: src/diff.c:996 msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE" msgstr "" "-I, --ignore-matching-lines=RE preteratenti ŝanĝojn, kie ĉiuj linioj " "kongruas al RE" -#: src/diff.c:938 +#: src/diff.c:998 msgid "-a, --text treat all files as text" msgstr "-a, --text trakti ĉiujn dosierojn kiel tekstajn" -#: src/diff.c:939 +#: src/diff.c:999 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr " --strip-trailing-cr forigi linifinan CR ĉe enigo" -#: src/diff.c:941 +#: src/diff.c:1001 msgid " --binary read and write data in binary mode" msgstr " --binary legi kaj skribi datumaron ciferece" -#: src/diff.c:944 +#: src/diff.c:1004 msgid "" "-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs" msgstr "" "-D, --ifdef=NOMO montri kunfanditan dosieron kun malsamoj " "'#ifdef NOMO'" -#: src/diff.c:945 +#: src/diff.c:1005 msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT" msgstr " --GTYPE-group-format=GFMT enformigi enig-grupojn GTYPE per GFMT" -#: src/diff.c:946 +#: src/diff.c:1006 msgid " --line-format=LFMT format all input lines with LFMT" msgstr " --line-format=LFMT enformigi ĉiujn enigliniojn per LFMT" -#: src/diff.c:947 +#: src/diff.c:1007 msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT" msgstr " --LTYPE-line-format=LFMT enformigi enig-grupojn LTYPE per LFMT" -#: src/diff.c:948 +#: src/diff.c:1008 msgid "" " These format options provide fine-grained control over the output\n" " of diff, generalizing -D/--ifdef." @@ -966,12 +961,12 @@ msgstr "" " Tiuj enformigaj modifiloj provizas rafinitan regadon pri la eligo\n" " de diff, ĝeneraliganta -D/--ifdef." -#: src/diff.c:950 +#: src/diff.c:1010 msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'." msgstr "" " LTYPE estas 'old', 'new' aÅ­ 'unchanged'. GTYPE estas LTYPE aÅ­ 'changed'." -#: src/diff.c:951 +#: src/diff.c:1011 msgid "" " GFMT (only) may contain:\n" " %< lines from FILE1\n" @@ -999,7 +994,7 @@ msgstr "" " M L+1\n" " %(A=B?T:E) se A egalas al B, do T, male E" -#: src/diff.c:963 +#: src/diff.c:1023 msgid "" " LFMT (only) may contain:\n" " %L contents of line\n" @@ -1011,7 +1006,7 @@ msgstr "" " %l enhavo linio, sen eventuala linifino\n" " %[-][LARĜO][.[PREC]]{doxX}n printf-stila indiko de lininumero" -#: src/diff.c:967 +#: src/diff.c:1027 msgid "" " Both GFMT and LFMT may contain:\n" " %% %\n" @@ -1025,34 +1020,33 @@ msgstr "" " %c'\\000' la signo kun okuma kodo OOO\n" " C la signo C (aliaj signoj reprezentas ili mem)" -#: src/diff.c:973 +#: src/diff.c:1033 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "-d, --minimal strebe serĉi pli etan aron da ŝanĝoj" -#: src/diff.c:974 +#: src/diff.c:1034 msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix" msgstr "" " --horizon-lines=NUM teni NUM liniojn de la komuna prefikso kaj sufikso" -#: src/diff.c:975 +#: src/diff.c:1035 msgid "" " --speed-large-files assume large files and many scattered small changes" msgstr "" " --speed-large-files atendi grandajn dosierojn kaj multajn disajn " "ŝanĝetojn" -#: src/diff.c:976 -#, fuzzy +#: src/diff.c:1036 msgid "" " --color[=WHEN] color output; WHEN is 'never', 'always', or " "'auto';\n" " plain --color means --color='auto'" msgstr "" -" --color[=KIAM] kolorigi la eligon; KIAM povas esti 'never', " -"'always',\n" -" aÅ­ 'auto' (aprioras)" +" --color[=KIAM] kolora eligo; KIAM estu 'never', 'always' aÅ­ " +"'auto';\n" +" simpla --color signifas --color='auto'" -#: src/diff.c:978 +#: src/diff.c:1038 msgid "" " --palette=PALETTE the colors to use when --color is active; PALETTE " "is\n" @@ -1062,113 +1056,113 @@ msgstr "" "PALETRO\n" " estas kom-apartita listo de kapabloj de terminfo" -#: src/diff.c:981 +#: src/diff.c:1041 msgid " --help display this help and exit" msgstr " --help montri ĉi tiun helpon kaj eliri" -#: src/diff.c:982 +#: src/diff.c:1042 msgid "-v, --version output version information and exit" msgstr "-v, --version montri informon pri versio kaj eliri" -#: src/diff.c:984 +#: src/diff.c:1044 msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'." msgstr "" "DOSIEROJ estas 'DOSIERO1 DOSIERO2' aÅ­ 'UJO1 UJO2' aÅ­ 'UJA DOSIERO' aÅ­ " "'DOSIERA UJO'." -#: src/diff.c:985 +#: src/diff.c:1045 msgid "" "If --from-file or --to-file is given, there are no restrictions on FILE(s)." msgstr "" "Se --from-file aÅ­ --to-file estas donita, ne estas limigoj por DOSIERO(j)." -#: src/diff.c:986 src/diff3.c:533 src/sdiff.c:220 +#: src/diff.c:1046 src/diff3.c:531 src/sdiff.c:219 msgid "If a FILE is '-', read standard input." msgstr "Se DOSIERO estas '-', legi la ĉefenigujon." -#: src/diff.c:996 +#: src/diff.c:1056 #, c-format msgid "Usage: %s [OPTION]... FILES\n" msgstr "Uzmaniero: %s [MODIFILO]... DOSIEROJ\n" -#: src/diff.c:997 +#: src/diff.c:1057 msgid "Compare FILES line by line." msgstr "Kompari DOSIEROJn linion post linio." -#: src/diff.c:1034 +#: src/diff.c:1094 #, c-format msgid "conflicting %s option value '%s'" msgstr "malakorda valoro de opcio %s: '%s'" -#: src/diff.c:1047 +#: src/diff.c:1107 #, c-format msgid "conflicting output style options" msgstr "malakordaj modifiloj pri elig-stilo" -#: src/diff.c:1063 +#: src/diff.c:1123 #, c-format msgid "invalid color '%s'" msgstr "malvalida koloro '%s'" -#: src/diff.c:1119 src/diff.c:1329 +#: src/diff.c:1197 src/diff.c:1401 #, c-format msgid "Only in %s: %s\n" msgstr "Nur en %s: %s\n" -#: src/diff.c:1253 +#: src/diff.c:1325 msgid "cannot compare '-' to a directory" msgstr "ne eblas kompari '-' al dosierujo" -#: src/diff.c:1288 +#: src/diff.c:1360 msgid "-D option not supported with directories" msgstr "modifilo -D ne estas subtenata kun dosierujoj" -#: src/diff.c:1297 +#: src/diff.c:1369 #, c-format msgid "Common subdirectories: %s and %s\n" msgstr "Komunaj subdosierujoj: %s kaj %s\n" -#: src/diff.c:1339 src/diff.c:1389 +#: src/diff.c:1411 src/diff.c:1461 #, c-format msgid "File %s is a %s while file %s is a %s\n" msgstr "Dosiero %s estas %s, dum dosiero %s estas %s\n" -#: src/diff.c:1375 +#: src/diff.c:1447 #, c-format msgid "Symbolic links %s and %s differ\n" msgstr "Simbolaj ligoj %s kaj %s malsamas\n" -#: src/diff.c:1462 +#: src/diff.c:1534 #, c-format msgid "Files %s and %s are identical\n" msgstr "Dosieroj %s kaj %s samas\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff3.c:43 +#: src/diff3.c:51 msgid "Randy Smith" msgstr "Randy SMITH" -#: src/diff3.c:356 +#: src/diff3.c:363 #, c-format msgid "incompatible options" msgstr "malkongruaj modifiloj" -#: src/diff3.c:396 +#: src/diff3.c:403 msgid "'-' specified for more than one input file" msgstr "'-' indikita por pli ol unu enigdosiero" -#: src/diff3.c:447 src/diff3.c:1295 src/diff3.c:1698 src/diff3.c:1753 -#: src/sdiff.c:308 src/sdiff.c:846 src/sdiff.c:857 +#: src/diff3.c:445 src/diff3.c:1284 src/diff3.c:1683 src/diff3.c:1738 +#: src/sdiff.c:306 src/sdiff.c:843 src/sdiff.c:854 msgid "read failed" msgstr "lego fiaskis" -#: src/diff3.c:480 +#: src/diff3.c:478 msgid "-A, --show-all output all changes, bracketing conflicts" msgstr "" "-A, --show-all montri ĉiujn ŝanĝojn, kun konfliktoj inter " "krampoj" -#: src/diff3.c:482 +#: src/diff3.c:480 msgid "" "-e, --ed output ed script incorporating changes\n" " from OLDFILE to YOURFILE into MYFILE" @@ -1176,11 +1170,11 @@ msgstr "" "-e, --ed montri ed-skripton enkorpigantan ŝanĝojn\n" " de PRADOSIERO al VIADOSIERO en MIADOSIEROn" -#: src/diff3.c:484 +#: src/diff3.c:482 msgid "-E, --show-overlap like -e, but bracket conflicts" msgstr "-E, --show-overlap kiel -e, sed kun konfliktoj inter krampoj" -#: src/diff3.c:485 +#: src/diff3.c:483 msgid "" "-3, --easy-only like -e, but incorporate only nonoverlapping " "changes" @@ -1188,23 +1182,23 @@ msgstr "" "-3, --easy-only kiel -e, sed enkorpigi nur ne-interkovriĝantajn " "ŝanĝojn" -#: src/diff3.c:486 +#: src/diff3.c:484 msgid "" "-x, --overlap-only like -e, but incorporate only overlapping changes" msgstr "" "-x, --overlap-only kiel -e, sed enkorpigi nur interkovriĝantajn " "ŝanĝojn" -#: src/diff3.c:487 +#: src/diff3.c:485 msgid "-X like -x, but bracket conflicts" msgstr "-X kiel -x, sed kun konfliktoj inter krampoj" -#: src/diff3.c:488 +#: src/diff3.c:486 msgid "-i append 'w' and 'q' commands to ed scripts" msgstr "" "-i aldoni la komandojn 'w' kaj 'q' al ed-skriptoj" -#: src/diff3.c:490 +#: src/diff3.c:488 msgid "" "-m, --merge output actual merged file, according to\n" " -A if no other options are given" @@ -1212,23 +1206,23 @@ msgstr "" "-m, --merge montri veran kunfanditan dosieron, akorde al\n" " -A se neniu alia modifilo ĉeestas" -#: src/diff3.c:493 +#: src/diff3.c:491 msgid "-a, --text treat all files as text" msgstr "-a, --text trakti ĉiujn dosierojn kiel tekstajn" -#: src/diff3.c:494 +#: src/diff3.c:492 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr " --strip-trailing-cr forigi linifinan CR ĉe enigo" -#: src/diff3.c:495 +#: src/diff3.c:493 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "-T, --initial-tab ĝustigi tabojn per antaÅ­meto de tabo" -#: src/diff3.c:496 +#: src/diff3.c:494 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr " --diff-program=PROGRAMO uzi PROGRAMOn por kompari dosierojn" -#: src/diff3.c:497 +#: src/diff3.c:495 msgid "" "-L, --label=LABEL use LABEL instead of file name\n" " (can be repeated up to three times)" @@ -1236,24 +1230,24 @@ msgstr "" "-L, --label=ETIKEDO uzi ETIKEDOn anstataÅ­ dosiernomo\n" " (povas esti ripetata ĝis 3 fojoj)" -#: src/diff3.c:500 +#: src/diff3.c:498 msgid " --help display this help and exit" msgstr " --help montri ĉi tiun helpon kaj eliri" -#: src/diff3.c:501 +#: src/diff3.c:499 msgid "-v, --version output version information and exit" msgstr "-v, --version eligi informon pri versio kaj eliri" -#: src/diff3.c:510 +#: src/diff3.c:508 #, c-format msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n" msgstr "Uzmaniero: %s [MODIFILO]... MIADOSIERO PRADOSIERO VIADOSIERO\n" -#: src/diff3.c:512 +#: src/diff3.c:510 msgid "Compare three files line by line." msgstr "Kompari tri dosierojn linion post linio." -#: src/diff3.c:522 +#: src/diff3.c:520 msgid "" "\n" "The default output format is a somewhat human-readable representation of\n" @@ -1277,54 +1271,54 @@ msgstr "" "eligu la veran kunfanditan dosieron. Por ne-ordinara enigo, tio ĉi estas\n" "pli fortika ol la uzo de ed.\n" -#: src/diff3.c:534 +#: src/diff3.c:532 msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble." msgstr "Elig-valoro estas 0 por sukceso, 1 por konfliktoj, 2 por problemo." -#: src/diff3.c:727 +#: src/diff3.c:725 msgid "internal error: screwup in format of diff blocks" msgstr "interna eraro: fuŝo en formato de diff-blokoj" -#: src/diff3.c:1022 +#: src/diff3.c:1015 #, c-format msgid "%s: diff failed: " msgstr "%s: diff malsukcesis: " -#: src/diff3.c:1044 +#: src/diff3.c:1037 msgid "internal error: invalid diff type in process_diff" msgstr "interna eraro: malvalida diff-speco en process_diff" -#: src/diff3.c:1069 +#: src/diff3.c:1060 msgid "invalid diff format; invalid change separator" msgstr "malvalida diff-formato; malvalida ŝanĝ-apartigilo" -#: src/diff3.c:1305 +#: src/diff3.c:1294 msgid "invalid diff format; incomplete last line" msgstr "malvalida diff-formato; malkompleta lasta linio" -#: src/diff3.c:1329 src/sdiff.c:276 src/util.c:969 +#: src/diff3.c:1318 src/sdiff.c:274 src/util.c:1069 #, c-format msgid "subsidiary program '%s' could not be invoked" msgstr "ne eblis alvoki la subprogramon '%s'" -#: src/diff3.c:1354 +#: src/diff3.c:1343 msgid "invalid diff format; incorrect leading line chars" msgstr "malvalida diff-formato; malĝusta signo en antaÅ­a linio" -#: src/diff3.c:1427 +#: src/diff3.c:1416 msgid "internal error: invalid diff type passed to output" msgstr "interna eraro: malvalida diff-speco donita al eligo" -#: src/diff3.c:1700 src/diff3.c:1757 +#: src/diff3.c:1685 src/diff3.c:1742 msgid "input file shrank" msgstr "enigdosiero ŝrumpis" -#: src/dir.c:156 +#: src/dir.c:154 #, c-format msgid "cannot compare file names '%s' and '%s'" msgstr "ne eblas kompari dosiernomojn '%s' kaj '%s'" -#: src/dir.c:225 +#: src/dir.c:223 #, c-format msgid "%s: recursive directory loop" msgstr "%s: rikura dosieruja ciklo" @@ -1334,128 +1328,128 @@ msgstr "%s: rikura dosieruja ciklo" msgid "Thomas Lord" msgstr "Thomas LORD" -#: src/sdiff.c:174 +#: src/sdiff.c:173 msgid "" "-o, --output=FILE operate interactively, sending output to FILE" msgstr "" "-o, --output=DOSIERO funkcii interage, sendante eligon al DOSIERO" -#: src/sdiff.c:176 +#: src/sdiff.c:175 msgid "" "-i, --ignore-case consider upper- and lower-case to be the same" msgstr "" "-i, --ignore-case konsideri majusklojn kaj minusklojn kiel samajn" -#: src/sdiff.c:177 +#: src/sdiff.c:176 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E, --ignore-tab-expansion preteratenti ŝanĝojn kaÅ­zatajn de tab-etendigo" -#: src/sdiff.c:178 +#: src/sdiff.c:177 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "" "-Z, --ignore-trailing-space preteratenti ĉiun blank-spacon ĉe linifino" -#: src/sdiff.c:179 +#: src/sdiff.c:178 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "" "-b, --ignore-space-change preteratenti ŝanĝojn en la kvanto da blank-" "spaco" -#: src/sdiff.c:180 +#: src/sdiff.c:179 msgid "-W, --ignore-all-space ignore all white space" msgstr "-W, --ignore-all-space preteratenti ĉiun blank-spacon" -#: src/sdiff.c:181 +#: src/sdiff.c:180 msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank" msgstr "" "-B, --ignore-blank-lines preteratenti ŝanĝojn, kie linioj estas ĉiuj " "malplenaj" -#: src/sdiff.c:182 +#: src/sdiff.c:181 msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE" msgstr "" "-I, --ignore-matching-lines=RE preteratenti ŝanĝojn, kie ĉiuj linioj " "kongruas al RE" -#: src/sdiff.c:183 +#: src/sdiff.c:182 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr " --strip-trailing-cr forigi linifinan CR ĉe enigo" -#: src/sdiff.c:184 +#: src/sdiff.c:183 msgid "-a, --text treat all files as text" msgstr "-a, --text trakti ĉiujn dosierojn kiel tekstajn" -#: src/sdiff.c:186 +#: src/sdiff.c:185 msgid "" "-w, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-w, --width=NUM montri maksimume NUM (aprioras 130) kolumnojn" -#: src/sdiff.c:187 +#: src/sdiff.c:186 msgid "" "-l, --left-column output only the left column of common lines" msgstr "" "-l, --left-column montri nur la maldekstran kolumnon de komunaj " "linioj" -#: src/sdiff.c:188 +#: src/sdiff.c:187 msgid "-s, --suppress-common-lines do not output common lines" msgstr "-s, --suppress-common-lines ne eligi komunajn liniojn" -#: src/sdiff.c:190 +#: src/sdiff.c:189 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "-t, --expand-tabs etendigi tabojn al spacoj en la eligo" -#: src/sdiff.c:191 +#: src/sdiff.c:190 msgid "" " --tabsize=NUM tab stops at every NUM (default 8) print columns" msgstr "" " --tabsize=NUM tab-lokoj estas post ĉiu NUM (aprioras 8) " "kolumnoj" -#: src/sdiff.c:193 +#: src/sdiff.c:192 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "-d, --minimal strebe serĉi pli etan aron da ŝanĝoj" -#: src/sdiff.c:194 +#: src/sdiff.c:193 msgid "" "-H, --speed-large-files assume large files, many scattered small changes" msgstr "" "-H, --speed-large-files atendi grandajn dosierojn kaj multajn disajn " "ŝanĝetojn" -#: src/sdiff.c:195 +#: src/sdiff.c:194 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr " --diff-program=PROGRAMO uzi PROGRAMOn por kompari dosierojn" -#: src/sdiff.c:197 +#: src/sdiff.c:196 msgid " --help display this help and exit" msgstr " --help montri ĉi tiun helpon kaj eliri" -#: src/sdiff.c:198 +#: src/sdiff.c:197 msgid "-v, --version output version information and exit" msgstr "-v, --version montri informon pri versio kaj eliri" -#: src/sdiff.c:207 +#: src/sdiff.c:206 #, c-format msgid "Usage: %s [OPTION]... FILE1 FILE2\n" msgstr "Uzmaniero: %s [MODIFILO]... DOSIERO1 DOSIERO2\n" -#: src/sdiff.c:209 +#: src/sdiff.c:208 msgid "Side-by-side merge of differences between FILE1 and FILE2." msgstr "Apuda kunfando de malsamoj inter DOSIERO1 kaj DOSIERO2." -#: src/sdiff.c:330 +#: src/sdiff.c:328 msgid "cannot interactively merge standard input" msgstr "ne eblas interage kunfandi la ĉefenigujon" -#: src/sdiff.c:597 +#: src/sdiff.c:594 msgid "both files to be compared are directories" msgstr "ambaÅ­ komparendaj dosieroj estas dosierujoj" -#: src/sdiff.c:820 +#: src/sdiff.c:817 msgid "" "ed:\tEdit then use both versions, each decorated with a header.\n" "eb:\tEdit then use both versions.\n" @@ -1479,12 +1473,12 @@ msgstr "" "v:\tlaÅ­te transpreni komunajn liniojn.\n" "q:\tĉesi.\n" -#: src/util.c:662 +#: src/util.c:755 #, c-format msgid "unrecognized prefix: %s" msgstr "nerekonata prefikso: %s" -#: src/util.c:692 +#: src/util.c:785 #, c-format msgid "unparsable value for --palette" msgstr "neanalizebla valoro por --palette" diff --git a/po/es.gmo b/po/es.gmo index 948a436b55791ec08a57655031d4cf81bab0eb62..df4eca040786b2845971e1135f7e7d980da56c06 100644 GIT binary patch delta 8003 zcmZwL34B!5y}y&I|Py&AcQ3egs@1$k^mtDvOq{!MHnVG$;f0T%uFBwWFWFH z7JCI`69Mrlm4Y2pv9`1{YF$w4Q>q|Bt(Ag^LY1dzvG4bvdoS=_dq4j3J?Gqe&wkJF zarchM$M;1B&$ny3O>wo1P^vrL*HS45={?a>s+87AsY>z*IF9_r&Pt8Nw=HA3P)5E4 zN8km#7rS;mt%UYQh9g`v+#SufA z&o4nK{~bPts)thfuoLC}MI4W*ac0N;SU~;-lnyqFS86ittI;In#zvGLe~8&wtSNN@ zAH{>rz_bLV8pwa!Q>h7fq?b}I{04bN-QQcOLAV0j<57&kMx^iRG$!M9l;`6T>0FS+ zXc9?Sg?(`wGAMNd<-w1T_SFyAA8%n3?AynDJ{hNwFU9fr6i&n|n1e&8TrK;jY1!V5SCHCmG?nve3} zK9mle>felnnJY=_e@5zA3J zve~-7Ukp+ZA`yqLpp5Kq$Qh%qBl|^l$TFue582?V9HpXdC>=hGOp-c@vIlM<8(yXH zEe=2j@~NvWC?jvccszr_SQ0l$$dq;D8;Zb0?2bt&BN&f-@@fVq;3|{~4_f7KqIBd2 z_P{nA2J(D=l)X@bGQef1;V#RU#PJ9Z|KrG5;>xa^Tp(uN2BDTU(lzQf2a}3~5a2d)>Z$z2t;FHz^&to$R zUb6BhF`4{pC=K4g@XT=R$=4B&QeisEh{mFf*nv@4hb?h6O2@X~!z|%0+=>12!v|MT zH5MpU$OAF_Vb;`q+=EXegH}03X8FUonf#woK11ge^B)|KBWITS5QkyRRP#ifhzH1T z$L%G&ylu|0N`LQE(jDH)>i5|LDM-xDh9nQii9IHdMdqO3??k6ea%# za>l4wYL|LuT7Hev;fH53?Q(yXQh&r9*e;T#nav&uG8Ml2SRZa|o2yg}M%{1zUa!Ql zm>9J_8f53J2j&F&Tf4DR|YoA3NXrO+eaL^DsDq!~&~e52lmf zhb!A)>3zsY6(ET6&2l=ptX+(Xrv zOa4WafkiB2`EcdJp!qZV0|hd&47b_i%_tR|Lz&{fRZ8u~IXDTwMOo{y9fwqbR_~a3x+unTd);X1o6kk{C%rrcbHGSc}rYS12=*!92nxB za0vbd9;*65 z=_u=emP8v0KF3)67Dr)w7F0$!6{B$}w#Q8<4eUc1@o|*rUbgaAu^;)H7>B)RV>XUO zsb?>~iNC-+LM>fs9+@v=D*1PiKBym28d$!{Jmc4+G`t)8{9PZ5J;}RJM!Feg ziGGgK@T(Y!AD}G7Sq#rG%HC?fhWVEY^VXQVJAg9vM^Gxff*BaK*8JCT4oZG44#Sg} zg5O!?eb$+Kz=87q25gH@V-z08=Gcf&MsRemWBz4Ly&KGb5=P3t?(SmNH1bbZ1S-ATpN@b>V?wL9F&euN2#ycDz8WRybY`THS90n|5+09LbIQm zFT|rvSsI2%j8d@|r6Vg*mTV)kgfg@0Ch-ViUw^a`dr<~6f%uxJC0-=tdYkyYeE%a! z%p+t}a?v04S7NSY?z-Nz(slTED?JcpBVMuc75Hl_Enm(`D{Zru#Bt&SBAI9|-~Zhg zv#YLI1v$uahNtaOJWb3eJj7ds%tjb$+6BWX71hX5y`dRMBbSwR`r68MkD^W?vMq5s3gk1ZGGsHiLU4&cGEBY9 z!*G&2tkQFL-JMOkny4baC2kNGh{uT;#190&LE)e6Zj|LaytCd_r=4M;s2P%s(06B$^U`BTf({#AxDK!b_YYdJ#V- z%UCGe-H5Yzlm~U0ntDt5pw;K$S3AVhU=J#`Un>j z&sq5%$UzhSA5-^PWnCq;BjkFQc!~He(UXwt zBGHYQN}MMWh*UzZzYw1j9}>SI4iVw@hvFjQ87Z)?U!j}mNK7Nf5OTF6rVvMnSBV#h zorGKu5I$l6@e`sM5k>q+TqUB3{~_+a^8QTjvQ^TArFet%Nunv~r!bQ!CZ-cjh|h@o ziL-=U?-2pQ2sLyZ6*x`;wBi zB!_#6qs~vt>mySW@Fry%F$=r*tadwG9xWxse7{O}c>H#5l=)ofO6Q&liMhH*_c`2J zrS7iQYWyxwg_c`bs`1>TPRU=KJ|H9f9BGZ7 z_+4I)mM(p8I|8~d{8DOENhMw7zjB|h-&JFsw??CCvpC?@oRtnwg|0a~WtvYfbNK^4 z*MgdWuDJqIh0c@IQCKuUn~_~yoLyKlD_P^MK&7tfwE^7|(5iJ`l`9a?%d`b`bYMwp zRH!DSD59BO?ezsh4Vlf_M3=kVx>lz9ojzA}!0Ypej^)NiG##EgB+Ynd;@IfHDTC5d z1`pTL(lQ1OPZ>1KNXY9jDBG<+K&O0OZJh2YBkk8pbdN(D>2T|{smw*VEUTi*;c}-s zy;Y&vc|9VVJABSc*W%EFlhY##to0mM+PJE4e37}N;WFJpKQ+I@?J9F*YSw*C{|^hR zdGB7<6njA#ndWai!mPTzn%`C7ah1EAj{mp9#+A;o#>@GAtUejn^2ZK0yXW;Q*gsxMdToHlxM#I ztexK5p3q~{Cr8-tM9l1LC*x-Jh_PNt)9S3=hVo|~XlB3o&D@;Zt1@Q(WxMO4)CDDX zI!e!t!_GpxlRrAsi5^TA}ebk9i*>yE#4z0pE4*lK* zoIARkBhkybar^X=H0PsvEEjx*T`TSI$j({(u#xe?Br4OT61IeZ)$b$1=LE(%hk3Ws{NN=Kbmm{*uvT9~cnX3JUI zxFtK8Vt>G)m3cYvth1Iq&IzX1rA8T->(1KK`1;bXXN~h#)p$6He46g_d1Y;NkIZAW z&s*VhR5>(9hL-4$`uE4EJK%Ga)i|9l87RlB?#~KTr+R%AsXD_nPG+_by|pYN;@>}a zpQkp@}-yE{@RVKRkik9oLH4_C!^~V?PO;CP&@fTeVp-VeUCd?`%dT|_1AA7 zSeMsqinPxXt;)p|mhpqhk8PPFz#(pZH;=9#ZrAhf`d)T2y1q+>R#oE;xT^WV;zjFm z?|&}z$OgUhl##z-eGlstW3yD$xLMQ14rk*LyB_2EhN%g6ep6X$*3f=K_XisHd&(R> UBYWeER*!zR$!+(|x2fO%0>Dq>l>h($ delta 7045 zcmZwJ30PHS9>?*Q>jGk#;)b$#1Q8WbKyd*Tok=r@B)TnUffVqv^s6( zs7Z@vIhMDkWvtPxDVLf`%T_bXvalx8tTC(k{_i=5n&+AGJiq&S-}j#Lp7(vvdoJwQ zY1?+6&2uKG^*xHCm7h|fI3z%+8I*H6N~==ObyaEs_2+R6^@#3DWnii4V>p8PMI4TO zgOyr}b8r}bfJ3oU52ccD0uII%I9@4_IzS$~$f$GhQIzj5<5)}yGX`9blc>Lf!!amascg)~N!(xEM`0-q=W#U7>7~?5xCA%^m z_l;31jd~SIKL=u1f7vA8(J%!2vQE;$43rUX!3p>g$`bd9GdiAv3HuGp1rBvmA+boP;|(6w)bN#8DW>)v`q8C?`IFGJvm9Rz#yB z?M{>q9z*(8KVdk=aJSw#5oPl^&H8$jJ+&9x<1xGmJ?~MFCHWF%gmJth@=OWuQ-BM|uB`PHj=T#VnKbUc$~k{K+(AY6t~*oZO!ulfD!rXQjV_#(=L+NZIPFc^n$ zf0aTZ6f04F7#dMJI*2mTw~?`_3ng)plqH!C>zX8qx9RIcUA^80A&K>GCf8|l{D}hqMFPT-a@(IMU)HuctvDWcEKAl z3T0OhM!8|OX(`G|ti%X>5aqff7>K7(`u)`W{)&e}6b;?S8#7Hsxj_cXX3Ikvz)Y0Q zQ-QK{%TYRNz_z#zJ75#a5W}@-K^lCO6jPE<=7=KIVA*ZOlX8kg5lJ`GllJVNT zj{H`rR$Rqzj7r6!xCHr1?ZYPg1@FZjxk}xFNqNSN8Zn*v$M^t-dpW*C2l&tnGl4l|9{FCRN`f90YeOI?qNxD$KhI~b2wFcza`8Jn~K z<@fE>nI)FInVGbyn}jbv2p#IDA$FR@Z%=uVIJBX#vi*v2kT!?gHD4y z<1VGf0Oq08zeo0yN}F#CWCO}3dKbrI_yS{QrMQgxc}&B(W&AkdPLxM`31uRq7aA+v zh})Vf4-v2WB~l!5(<^_cB4R^kN8jqMf2-gyvL zQ2zvd{WE>`t=f$;psOgGe4J;oae|ma!!eW_v~?T*P!yreY!}K6LRrsLoPi^8D<WRzDnxQg>i`+<-UXJ;>u$kD$DE z{b`B1veiHjgd#!POEM`*AL)rEB;voD0dt$q#zPG@m`cMd?VKheI9E`?Q7>s){ z6px_%@|{H?UfIyi{O@eRzvt;>yH#LrRQp6~EB4C6yqZW{*SZj_0{t~-S?F#mev#zV0$bvw#^ z)}tq!!s8Tr;xUvPpGO;BMY+L$Fa*1;G&WHp%1jpEaMUpsPoVS{xXRd+{V|<-iCKRH zhf+U_aoBw|>z_;^bG7lz>rpz`gYs-&!$3TZZSfpF?8kq@D9>{9TH`;RCY0}A#%_2N zd*fM5LR*6|(BUWpSd22UJq;{T6opr5kQ+B+7Ytly?BZT1OF0JRby|Wlw_P}b>%@{#_5B9_39ttrOuAtml+hAOngx#r+!@f8h<-)bt7WZHf z?#E8}GRn+Pp$woI+u<)LGi`Ib@n<^%<-8b_0eUhh$OsEjIx4rmz#-J{Fxy|n0n|^U zoNwD`oF9sj)CZ!p7oc?PL>a(sD359#^5hgxM7fE)vh%pV@7L)!Dp^DZz;!TvW`b6{6ggM$<$dm-(O9sT8I4oQLme|J1~ztP2?Hc zxaduk)9G^u}3UO+C8lSCfFAYvVtD7-+tB;RcG&3}Yhk>_L``^`cH z-fT6R#-JaAd(Nz1#awck%q9KEb>bv)$cD=%-${i-{!T=b@8$Wor|=|sjEp2ZNE4Cc zS8_jDNnRv>Cx1TDskCAs|3=y6@$+zSdVja7D1?In(!Zx$@XZ)D- zB;{t?ZhVW3GV1|2gQS`Dzu`>sK9M&-jvDeTi6=ve9G{ToWHfn-$nmPIzr6Q9k!xfs z`73#b$Z;!~;wu>+-QiKPo>Y>%h`eU2i5wpho!m%5NFn*1SjSki@F1Qio@0E>A#!XX z<4G?vkjT+MI*^yh9wJ9?1NDXJ8EiJoLNXal4v`{qiVP=RNf`Nx{Dp9Me7|ZNDD@|k zNHwvJr4-&Hb!J1P^#!`f=j1-}4p~GF5;=Y(50mMnEr}zO$uKgD%qJ(vJ>1{-tM&nv zX~agx5IK&LQW7i`j#>lXX9}O2&H6Vufh;3e$ZDUL*D7OJXNcM2^`8zJD+mQyxOLl7E@)JF$!$A+5Y&-BNAd^T8p#z0t{K ze%_Rkll{EgQ?Iu7?#t@r*Lvu{gkk#26Em{n;}R0%1}A67t zZo8|>X|JwuCu@avS9O_veuZ{(nbWR~t#B1PoZ84LyK4#c^ct6=cA%rmJ2gAZ*0!{) zc!9(1t(!F1Pd^{rMW2(~H^6ACsM5~_hv<89qx{VVJ+DWX&@mG-3vv@Q^C+$;ue7`E z+PExf*IVbMwKa;~33(U%%-;2(1ruBPIGZ2o-COXW^_@4bD8ef1M@vGzcTWjuW%i*r zO^t15beEf$qUX}lD4k>)uGfikM7G);3J+2?ZDtF#j4Z4T}E>0zC% z^R%UAYi^?MH!I59VMbjWtHUjGGh0^W!+Bp@WAh#@DYDA?VRwX{SvuL8-qzB=z09tC z%fh0RIb6%^T4jaXypgxLG|KirCuxq_VrR`#hvuxP(u@Vx2bC3BQ{PZ_-0FV%!ZCjo z6ZOW09j&o8FFa?9HSZiZdU8?L_$j%}t!PS|H5|J(Da)#;xH5fLa8JFn>+m0sc(f~A zzvlWOz*-tsIa&{??Cozh=$?dL`lJN`-i4KYTIPTE;!D;zH@atbFt>-b(%-s0)_C1j zC#|t&R}Zu4Cu$<~rX?4xuLqTN)gQa{8LL`Sn`4cmQ2(qpw0*VP(Xuw5)<#(8`7ga- zJ@P`Wvc^&3(5f76E!vucHISfX@dM1ZXsx2Rd1_STIG8e?}K*;QQ4co3H%HThpVV;_(|Gp}sW6O0jjFNt6 z)i7%azpjezZGLYKFt=rAwCoFS=IR425A)YG;nv7{udTI;JJ;q|#Y=0WtYTlny1sz|7&zrl+Tmytxn?_*N0jA)a{sG i, 1996. # Santiago Vila Doncel , 2001, 2002, 2004, 2009, 2010, 2011, 2013, 2020. +# Alejandro Cendejas Tena , 2022. # msgid "" msgstr "" -"Project-Id-Version: GNU diffutils 3.6.17\n" +"Project-Id-Version: GNU diffutils 3.7.41\n" "Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n" -"POT-Creation-Date: 2021-08-01 18:56-0700\n" -"PO-Revision-Date: 2020-12-31 16:55+0100\n" -"Last-Translator: Santiago Vila Doncel \n" +"POT-Creation-Date: 2023-05-21 01:51-0700\n" +"PO-Revision-Date: 2022-01-27 11:07-0600\n" +"Last-Translator: Alejandro Cendejas Tena \n" "Language-Team: Spanish \n" "Language: es\n" "MIME-Version: 1.0\n" @@ -18,39 +19,47 @@ msgstr "" "Content-Transfer-Encoding: 8-bit\n" "X-Bugs: Report translation errors to the Language-Team address.\n" -#: lib/argmatch.c:132 +# (AC): Colegas traductores al español: He cambiado 'fichero' por 'archivo' y +# así lo haré en todas mis traducciones. Tienen la misma longitud y el +# mismo género, así que no debería causar problemas de visualización. +# Lo hago porque en España ambos términos son correctos y de uso común, +# Pero en Latinoamérica es rarísimo escuchar/leer 'fichero' fuera de al- +# gún manual o texto "hecho en España". +# En España hay unos 47 millones de habitantes, pero tan solo en México +# hay 128 millones. Me parece aceptable usar "archivo" como estándar. +#: lib/argmatch.c:145 #, c-format msgid "invalid argument %s for %s" msgstr "argumento %s inválido para %s" -#: lib/argmatch.c:133 +#: lib/argmatch.c:146 #, c-format msgid "ambiguous argument %s for %s" msgstr "argumento %s ambiguo para %s" -#: lib/argmatch.c:152 lib/argmatch.h:223 +#: lib/argmatch.c:165 lib/argmatch.h:242 msgid "Valid arguments are:" msgstr "Los argumentos válidos son:" -#: lib/c-stack.c:187 +#: lib/c-stack.c:186 msgid "program error" msgstr "error del programa" -#: lib/c-stack.c:188 +#: lib/c-stack.c:187 msgid "stack overflow" msgstr "desbordamiento de pila" -#: lib/error.c:195 +#: lib/error.c:193 msgid "Unknown system error" msgstr "Error del sistema desconocido" #: lib/file-type.c:40 msgid "regular empty file" -msgstr "fichero regular vacío" +msgstr "archivo regular vacío" #: lib/file-type.c:40 msgid "regular file" -msgstr "fichero regular" +msgstr "archivo regular" #: lib/file-type.c:43 msgid "directory" @@ -72,23 +81,28 @@ msgstr "semáforo" msgid "shared memory object" msgstr "objeto de memoria compartido" -# ¿Alguien sabe lo que es esto? +# (SV): ¿Alguien sabe lo que es esto? +# (AC): Parece que es un tipo de memoria especificado en POSIX, pero no soy +# técnico, así que no entiendo ni sabría como traducirlo. Lo mencionan +# en el manual de mmap(3posix) pero no hay traducción a español. #: lib/file-type.c:61 msgid "typed memory object" msgstr "objeto de memoria `typed'" #: lib/file-type.c:66 msgid "block special file" -msgstr "fichero especial de bloques" +msgstr "archivo especial de bloques" #: lib/file-type.c:69 msgid "character special file" -msgstr "fichero especial de caracteres" +msgstr "archivo especial de caracteres" #: lib/file-type.c:72 msgid "contiguous data" msgstr "datos contiguos" +# (AC): ¿Debería quedarse como `fifo? Podría ser peps pero creo que fifo es +# más común #: lib/file-type.c:75 msgid "fifo" msgstr "`fifo'" @@ -99,15 +113,15 @@ msgstr "puerta" #: lib/file-type.c:81 msgid "multiplexed block special file" -msgstr "fichero especial de bloques multiplexado" +msgstr "archivo especial de bloques multiplexado" #: lib/file-type.c:84 msgid "multiplexed character special file" -msgstr "fichero especial de caracteres multiplexado" +msgstr "archivo especial de caracteres multiplexado" #: lib/file-type.c:87 msgid "multiplexed file" -msgstr "fichero multiplexado" +msgstr "archivo multiplexado" # FIXME # se podría decir algo más decente para "weird" ... pero ¿qué? @@ -116,19 +130,19 @@ msgstr "fichero multiplexado" # siempre podemos poner escachifollado ;) ipg #: lib/file-type.c:90 msgid "named file" -msgstr "fichero nombrado" +msgstr "archivo nombrado" #: lib/file-type.c:93 msgid "network special file" -msgstr "fichero especial de red" +msgstr "archivo especial de red" #: lib/file-type.c:96 msgid "migrated file with data" -msgstr "fichero migrado con datos" +msgstr "archivo migrado con datos" #: lib/file-type.c:99 msgid "migrated file without data" -msgstr "fichero migrado sin datos" +msgstr "archivo migrado sin datos" #: lib/file-type.c:102 msgid "port" @@ -139,7 +153,7 @@ msgid "socket" msgstr "`socket'" # Esto por lo visto se utiliza en un unionfs cuando la capa inferior es -# de sólo lectura y en la capa superior se borra el fichero. +# de sólo lectura y en la capa superior se borra el archivo. #: lib/file-type.c:108 msgid "whiteout" msgstr "suprimido" @@ -149,9 +163,10 @@ msgstr "suprimido" # ¿ no habitual ? em # ¡Nchts! Prefiero extraño ... no habitual me suena muy difuso # siempre podemos poner escachifollado ;) ipg +# (AC): Concuerdo con extraño. #: lib/file-type.c:110 msgid "weird file" -msgstr "fichero extraño" +msgstr "archivo extraño" #: lib/getopt.c:278 #, c-format @@ -209,38 +224,43 @@ msgstr "%s: la opción requiere un argumento -- '%c'\n" #. If you don't know what to put here, please see #. #. and use glyphs suitable for your language. -#: lib/quotearg.c:355 +#: lib/quotearg.c:354 msgid "`" msgstr "«" -#: lib/quotearg.c:356 +#: lib/quotearg.c:355 msgid "'" msgstr "»" -#: lib/regcomp.c:135 +# (AC): ¿Podría ser éxito, logrado, o algo así? Conseguido me suena muy forzado +#: lib/regcomp.c:122 msgid "Success" msgstr "Conseguido" -#: lib/regcomp.c:138 +#: lib/regcomp.c:125 msgid "No match" msgstr "No hay ninguna coincidencia" -#: lib/regcomp.c:141 +#: lib/regcomp.c:128 msgid "Invalid regular expression" msgstr "Expresión regular inválida" # Se refiere probablemente a cosas tales como que la c con la h es "ch", # aunque este ejemplo ya no es válido, pues la Real Academia dice # que para propósitos de ordenación son letras independientes. -#: lib/regcomp.c:144 +#: lib/regcomp.c:131 msgid "Invalid collation character" msgstr "Carácter de unión inválido" -#: lib/regcomp.c:147 +# (AC): Por lo que veo en otros manuales (p.ej. tr(1), isalnum(3)...) +# esta traducción debería ser "Nombre de clase de caracteres inválido" +# pues se refiere a cosas como [:alnum:] donde tal vez alguien pondría +# [:noexiste:] y esa clase de caracteres no existe. +#: lib/regcomp.c:134 msgid "Invalid character class name" -msgstr "Carácter de clase inválido" +msgstr "Nombre de clase de caracteres inválido" -#: lib/regcomp.c:150 +#: lib/regcomp.c:137 msgid "Trailing backslash" msgstr "Barra invertida al final" @@ -286,51 +306,53 @@ msgstr "Barra invertida al final" # no estoy dispuesto a matar por ello... sv # :) Gracias, pero por ahora dejaré retro-referencia, me parece más clara # en cuanto al significado preciso de la frase. ipg -#: lib/regcomp.c:153 +# (AC): Me quedaría con "referencia hacia atrás" pero veremos si alguien se +# queja de esto. +#: lib/regcomp.c:140 msgid "Invalid back reference" msgstr "Retro-referencia inválida" -#: lib/regcomp.c:156 +#: lib/regcomp.c:143 msgid "Unmatched [, [^, [:, [., or [=" msgstr "[, [^, [:, [. ó [= desemparejados" -#: lib/regcomp.c:159 +#: lib/regcomp.c:146 msgid "Unmatched ( or \\(" msgstr "( ó \\( desemparejado" -#: lib/regcomp.c:162 +#: lib/regcomp.c:149 msgid "Unmatched \\{" msgstr "\\{ desemparejado" -#: lib/regcomp.c:165 +#: lib/regcomp.c:152 msgid "Invalid content of \\{\\}" msgstr "El contenido de \\{\\} no es válido" -#: lib/regcomp.c:168 +#: lib/regcomp.c:155 msgid "Invalid range end" msgstr "Final de rango inválido" -#: lib/regcomp.c:171 +#: lib/regcomp.c:158 msgid "Memory exhausted" msgstr "Memoria agotada" -#: lib/regcomp.c:174 +#: lib/regcomp.c:161 msgid "Invalid preceding regular expression" msgstr "Expresión regular precedente inválida" -#: lib/regcomp.c:177 +#: lib/regcomp.c:164 msgid "Premature end of regular expression" msgstr "Final prematuro de la expresión regular" -#: lib/regcomp.c:180 +#: lib/regcomp.c:167 msgid "Regular expression too big" msgstr "La expresión regular es demasiado grande" -#: lib/regcomp.c:183 +#: lib/regcomp.c:170 msgid "Unmatched ) or \\)" msgstr ") ó \\) desemparejado" -#: lib/regcomp.c:676 +#: lib/regcomp.c:650 msgid "No previous regular expression" msgstr "No hay ninguna expresión regular previa" @@ -362,7 +384,7 @@ msgstr "fallo al reabrir %s con modo %s" #: lib/xstdopen.c:34 #, c-format msgid "standard file descriptors" -msgstr "" +msgstr "descriptores de archivo estándar" #: lib/version-etc.c:73 #, c-format @@ -383,18 +405,15 @@ msgstr "©" #. TRANSLATORS: The %s placeholder is the web address of the GPL license. #: lib/version-etc.c:88 -#, fuzzy, c-format +#, c-format msgid "" "License GPLv3+: GNU GPL version 3 or later <%s>.\n" "This is free software: you are free to change and redistribute it.\n" "There is NO WARRANTY, to the extent permitted by law.\n" msgstr "" -"\n" -"Licencia GPLv3+: GPL de GNU versión 3 o posterior .\n" +"Licencia GPLv3+: GPL de GNU versión 3 o posterior <%s>.\n" "Esto es software libre, usted es libre de cambiarlo y redistribuirlo.\n" "No hay NINGUNA GARANTÍA, hasta donde permite la ley.\n" -"\n" #. TRANSLATORS: %s denotes an author name. #: lib/version-etc.c:105 @@ -509,12 +528,11 @@ msgstr "" #. "Report translation bugs to <...>\n" with the address for translation #. bugs (typically your translation team's web or email address). #: lib/version-etc.c:249 -#, fuzzy, c-format +#, c-format msgid "Report bugs to: %s\n" msgstr "" -"\n" "Comunicar errores en el programa a: %s\n" -"Comunicar errores de traducción al último traductor.\n" +"Comunicar errores de traducción a .\n" #: lib/version-etc.c:251 #, c-format @@ -527,25 +545,23 @@ msgid "%s home page: <%s>\n" msgstr "Página inicial de %s: <%s>\n" #: lib/version-etc.c:260 -#, fuzzy, c-format +#, c-format msgid "General help using GNU software: <%s>\n" -msgstr "" -"Ayuda general sobre el uso de software de GNU: \n" +msgstr "Ayuda general sobre el uso de software de GNU: <%s>\n" -#: src/analyze.c:454 src/diff.c:1406 +#: src/analyze.c:455 src/diff.c:1478 #, c-format msgid "Files %s and %s differ\n" -msgstr "Los ficheros %s y %s son distintos\n" +msgstr "Los archivos %s y %s son distintos\n" -#: src/analyze.c:455 +#: src/analyze.c:456 #, c-format msgid "Binary files %s and %s differ\n" -msgstr "Los ficheros binarios %s y %s son distintos\n" +msgstr "Los archivos binarios %s y %s son distintos\n" -#: src/analyze.c:706 src/diff3.c:1470 src/util.c:1254 +#: src/analyze.c:707 src/diff3.c:1457 src/util.c:1354 msgid "No newline at end of file" -msgstr "No hay ningún carácter de nueva línea al final del fichero" +msgstr "No hay ningún carácter de nueva línea al final del archivo" #. This is a proper name. See the gettext manual, section Names. #: src/cmp.c:45 @@ -557,94 +573,95 @@ msgstr "Torbjörn Granlund" msgid "David MacKenzie" msgstr "David MacKenzie" -#: src/cmp.c:120 src/diff.c:879 src/diff3.c:467 src/sdiff.c:160 +#: src/cmp.c:124 src/diff.c:939 src/diff3.c:465 src/sdiff.c:159 #, c-format msgid "Try '%s --help' for more information." msgstr "Pruebe '%s --help' para más información." -#: src/cmp.c:138 +#: src/cmp.c:142 #, c-format msgid "invalid --ignore-initial value '%s'" msgstr "valor --ignore-initial inválido '%s'" -#: src/cmp.c:148 +#: src/cmp.c:152 #, c-format msgid "options -l and -s are incompatible" msgstr "las opciones -l y -s son incompatibles" -#: src/cmp.c:156 src/diff.c:887 src/diff3.c:474 src/sdiff.c:168 src/sdiff.c:316 -#: src/sdiff.c:323 src/sdiff.c:876 src/util.c:852 src/util.c:952 src/util.c:959 +#: src/cmp.c:160 src/diff.c:947 src/diff3.c:472 src/sdiff.c:167 src/sdiff.c:314 +#: src/sdiff.c:321 src/sdiff.c:873 src/util.c:952 src/util.c:1052 +#: src/util.c:1059 msgid "write failed" msgstr "la escritura falló" -#: src/cmp.c:158 src/diff.c:889 src/diff.c:1471 src/diff3.c:476 src/sdiff.c:170 +#: src/cmp.c:162 src/diff.c:949 src/diff.c:1543 src/diff3.c:474 src/sdiff.c:169 msgid "standard output" msgstr "salida estándar" # Muestra como caracteres los bytes que difieran # queda más claro, creo yo em # Yo no le veo diferencia (¿será por qué lo parí yo? ;) ipg -#: src/cmp.c:162 +#: src/cmp.c:166 msgid "-b, --print-bytes print differing bytes" msgstr "-b --print-bytes muestra los bytes que son distintos" -#: src/cmp.c:163 +#: src/cmp.c:167 msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs" msgstr "" "-i, --ignore-initial=SALTO salta los primeros SALTO bytes de\n" " las dos entradas" -#: src/cmp.c:164 +#: src/cmp.c:168 msgid "" "-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n" " first SKIP2 bytes of FILE2" msgstr "" "-i, --ignore-initial=SALTO1:SALTO2 salta los primeros SALTO1 bytes de " -"FICHERO1\n" +"ARCHIVO1\n" " y los primeros SALTO2 bytes de " -"FICHERO2" +"ARCHIVO2" -#: src/cmp.c:166 +#: src/cmp.c:170 msgid "" "-l, --verbose output byte numbers and differing byte values" msgstr "" "-l, --verbose muestra los números de byte y valores de todos\n" " los bytes que difieran" -#: src/cmp.c:167 +#: src/cmp.c:171 msgid "-n, --bytes=LIMIT compare at most LIMIT bytes" msgstr "-n, --bytes=LÍMITE compara como máximo LÍMITE bytes" -#: src/cmp.c:168 +#: src/cmp.c:172 msgid "-s, --quiet, --silent suppress all normal output" msgstr "-s, --quiet, --silent suprime toda la salida normal" -#: src/cmp.c:169 +#: src/cmp.c:173 msgid " --help display this help and exit" msgstr " --help muestra esta ayuda y finaliza" -#: src/cmp.c:170 +#: src/cmp.c:174 msgid "-v, --version output version information and exit" msgstr "-v, --version informa de la versión y finaliza" -#: src/cmp.c:179 +#: src/cmp.c:183 #, c-format msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n" -msgstr "Modo de empleo: %s [OPCIÓN]... FICHERO1 [FICHERO2 [SALTO1 [SALTO2]]]\n" +msgstr "Modo de empleo: %s [OPCIÓN]... ARCHIVO1 [ARCHIVO2 [SALTO1 [SALTO2]]]\n" -#: src/cmp.c:181 +#: src/cmp.c:185 msgid "Compare two files byte by byte." -msgstr "Compara dos ficheros byte por byte." +msgstr "Compara dos archivos byte por byte." -#: src/cmp.c:183 +#: src/cmp.c:187 msgid "" "The optional SKIP1 and SKIP2 specify the number of bytes to skip\n" "at the beginning of each file (zero by default)." msgstr "" "Los parámetros opcionales SALTO1 y SALTO2 especifican el número de\n" -"bytes que se saltan en cada fichero (cero por omisión)." +"bytes que se saltan en cada archivo (cero por omisión)." -#: src/cmp.c:186 src/diff.c:999 src/diff3.c:514 src/sdiff.c:211 +#: src/cmp.c:190 src/diff.c:1059 src/diff3.c:512 src/sdiff.c:210 msgid "" "Mandatory arguments to long options are mandatory for short options too.\n" msgstr "" @@ -652,7 +669,7 @@ msgstr "" "obligatorios\n" "para las opciones cortas.\n" -#: src/cmp.c:192 +#: src/cmp.c:196 msgid "" "SKIP values may be followed by the following multiplicative suffixes:\n" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" @@ -663,92 +680,92 @@ msgstr "" "kB 1.000, K 1.024, MB 1.000.000, M 1.048.576,\n" "GB 1.000.000.000, G 1.073.741.824, y así en adelante para T, P, E, Z, Y." -#: src/cmp.c:195 +#: src/cmp.c:199 msgid "If a FILE is '-' or missing, read standard input." -msgstr "Si un FICHERO es '-' o no se especifica, lee la entrada estándar." +msgstr "Si un ARCHIVO es '-' o no se especifica, lee la entrada estándar." -#: src/cmp.c:196 src/diff.c:987 src/sdiff.c:221 +#: src/cmp.c:200 src/diff.c:1047 src/sdiff.c:220 msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble." msgstr "" "El estado de salida es 0 si las entradas son iguales, 1 si son diferentes,\n" "2 en caso de problema." -#: src/cmp.c:243 +#: src/cmp.c:247 #, c-format msgid "invalid --bytes value '%s'" msgstr "valor --bytes inválido '%s'" -#: src/cmp.c:269 src/diff.c:797 src/diff3.c:361 src/sdiff.c:567 +#: src/cmp.c:273 src/diff.c:857 src/diff3.c:368 src/sdiff.c:564 #, c-format msgid "missing operand after '%s'" msgstr "falta un operando después de '%s'" -#: src/cmp.c:281 src/diff.c:799 src/diff3.c:363 src/sdiff.c:569 +#: src/cmp.c:285 src/diff.c:859 src/diff3.c:370 src/sdiff.c:566 #, c-format msgid "extra operand '%s'" msgstr "operando extra '%s'" -#: src/cmp.c:507 +#: src/cmp.c:521 #, c-format msgid "%s %s differ: byte %s, line %s\n" msgstr "%s %s son distintos: byte %s, línea %s\n" -#: src/cmp.c:523 +#: src/cmp.c:537 #, c-format msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n" msgstr "%s %s son distintos: el byte %s, en la línea %s es %3o %s %3o %s\n" -#: src/cmp.c:580 +#: src/cmp.c:594 #, c-format msgid "cmp: EOF on %s which is empty\n" -msgstr "cmp: fin de fichero encontrado en %s que está vacío\n" +msgstr "cmp: fin de archivo encontrado en %s que está vacío\n" -#: src/cmp.c:594 +#: src/cmp.c:608 #, c-format msgid "cmp: EOF on %s after byte %s, line %s\n" -msgstr "cmp: fin de fichero en %s después del byte %s, línea %s\n" +msgstr "cmp: fin de archivo en %s después del byte %s, línea %s\n" -#: src/cmp.c:595 +#: src/cmp.c:609 #, c-format msgid "cmp: EOF on %s after byte %s, in line %s\n" -msgstr "cmp: fin de fichero en %s después del byte %s, en la línea %s\n" +msgstr "cmp: fin de archivo en %s después del byte %s, en la línea %s\n" -#: src/cmp.c:601 +#: src/cmp.c:615 #, c-format msgid "cmp: EOF on %s after byte %s\n" -msgstr "cmp: fin de fichero encontrado en %s después del byte %s\n" +msgstr "cmp: fin de archivo encontrado en %s después del byte %s\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:51 +#: src/diff.c:50 msgid "Paul Eggert" msgstr "Paul Eggert" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:52 +#: src/diff.c:51 msgid "Mike Haertel" msgstr "Mike Haertel" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:53 +#: src/diff.c:52 msgid "David Hayes" msgstr "David Hayes" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:54 +#: src/diff.c:53 msgid "Richard Stallman" msgstr "Richard Stallman" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:55 +#: src/diff.c:54 msgid "Len Tower" msgstr "Len Tower" -#: src/diff.c:355 +#: src/diff.c:365 #, c-format msgid "invalid context length '%s'" msgstr "longitud de contexto inválida '%s'" -#: src/diff.c:438 +#: src/diff.c:487 #, c-format msgid "pagination not supported on this host" msgstr "este sistema no admite paginación" @@ -759,130 +776,130 @@ msgstr "este sistema no admite paginación" # encontrarle un buen significado, así que pido ayuda ;) # Ni p... idea em # La opción -L LABEL puedes usarla, una o dos veces, pero no más. A eso -# se refiere. la opción de etiqueta de fichero se ha especificado demasiadas +# se refiere. la opción de etiqueta de archivo se ha especificado demasiadas # veces. O más cortito, dejarlo como está :) em+ # Me parece que así está bien ... -#: src/diff.c:453 src/diff3.c:341 +#: src/diff.c:502 src/diff3.c:348 #, c-format msgid "too many file label options" -msgstr "demasiadas opciones de etiqueta de fichero" +msgstr "demasiadas opciones de etiqueta de archivo" -#: src/diff.c:530 +#: src/diff.c:579 #, c-format msgid "invalid width '%s'" msgstr "ancho inválido '%s'" -#: src/diff.c:534 +#: src/diff.c:583 msgid "conflicting width options" msgstr "opciones de ancho conflictivas" -#: src/diff.c:559 +#: src/diff.c:608 #, c-format msgid "invalid horizon length '%s'" msgstr "longitud del horizonte inválida '%s'" -#: src/diff.c:615 +#: src/diff.c:664 #, c-format msgid "invalid tabsize '%s'" msgstr "tamaño de tab inválido '%s'" -#: src/diff.c:619 +#: src/diff.c:668 msgid "conflicting tabsize options" msgstr "opciones de tamaño de tab conflictivas" -#: src/diff.c:774 +#: src/diff.c:834 msgid "--from-file and --to-file both specified" msgstr "se ha especificado tanto --from-file como --to-file" -#: src/diff.c:893 +#: src/diff.c:953 msgid " --normal output a normal diff (the default)" msgstr " --normal produce un diff normal (predeterminado)" -#: src/diff.c:894 +#: src/diff.c:954 msgid "-q, --brief report only when files differ" msgstr "" -"-q, --brief indica sólo si los ficheros son diferentes o no" +"-q, --brief indica sólo si los archivos son diferentes o no" -#: src/diff.c:895 +#: src/diff.c:955 msgid "-s, --report-identical-files report when two files are the same" msgstr "" -"-s, --report-identical-files notifica cuándo dos ficheros son idénticos" +"-s, --report-identical-files notifica cuándo dos archivos son idénticos" -#: src/diff.c:896 +#: src/diff.c:956 msgid "" "-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context" msgstr "" "-c, -C NÚM, --context[=NÚM] muestra NÚM (por omisión 3) líneas de contexto" -#: src/diff.c:897 +#: src/diff.c:957 msgid "" "-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context" msgstr "" "-u, -U NÚM, --unified[=NÚM] muestra NÚM (por omisión 3) línea de contexto\n" " unificado" -#: src/diff.c:898 +#: src/diff.c:958 msgid "-e, --ed output an ed script" msgstr "-e, --ed produce un script ed" -#: src/diff.c:899 +#: src/diff.c:959 msgid "-n, --rcs output an RCS format diff" msgstr "-n, --rcs produce un diff en formato RCS" -#: src/diff.c:900 +#: src/diff.c:960 msgid "-y, --side-by-side output in two columns" msgstr "-y, --side-by-side muestra en dos columnas" -#: src/diff.c:901 +#: src/diff.c:961 msgid "" "-W, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-W, --width=NÚM muestra como mucho NÚM columnas de impresión\n" " (por omisión 130)" -#: src/diff.c:902 +#: src/diff.c:962 msgid "" " --left-column output only the left column of common lines" msgstr "" " --left-column muestra sólo en la columna izquierda las " "líneas comunes" -#: src/diff.c:903 +#: src/diff.c:963 msgid " --suppress-common-lines do not output common lines" msgstr " --suppress-common-lines no muestra las líneas comunes" -#: src/diff.c:905 +#: src/diff.c:965 msgid "-p, --show-c-function show which C function each change is in" msgstr "" "-p, --show-c-function muestra en qué función C está cada cambio" -#: src/diff.c:906 +#: src/diff.c:966 msgid "-F, --show-function-line=RE show the most recent line matching RE" msgstr "" "-F, --show-function-line=ER muestra la línea más reciente que encaje con ER" -#: src/diff.c:907 +#: src/diff.c:967 msgid "" " --label LABEL use LABEL instead of file name and timestamp\n" " (can be repeated)" msgstr "" " --label ETIQUETA utiliza ETIQUETA en lugar del nombre del " -"fichero y\n" +"archivo y\n" " la marca de tiempo (se puede repetir)" # Aquí a lo mejor también: la salida -> el resultado. sv -#: src/diff.c:910 +#: src/diff.c:970 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "" "-t, --expand-tabs expande los tabuladores a espacios en la salida" -#: src/diff.c:911 +#: src/diff.c:971 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T, --initial-tab hace que los tabuladores se alineen\n" " anteponiendo uno" -#: src/diff.c:912 +#: src/diff.c:972 msgid "" " --tabsize=NUM tab stops every NUM (default 8) print columns" msgstr "" @@ -890,7 +907,7 @@ msgstr "" "NÚM columnas\n" " de impresión (por omisión, 8)" -#: src/diff.c:913 +#: src/diff.c:973 msgid "" " --suppress-blank-empty suppress space or tab before empty output lines" msgstr "" @@ -908,169 +925,170 @@ msgstr "" # Te mandaré el gettext, para que veas lo que vale un peine... sv # X'D ... no soy tan malo ... ipg # Medita de nuevo si no usas resultado em -#: src/diff.c:914 +# (AC): De acuerdo con "la salida". +#: src/diff.c:974 msgid "-l, --paginate pass output through 'pr' to paginate it" msgstr "" "-l, --paginate pasa la salida a través de 'pr' para paginarla" -#: src/diff.c:916 +#: src/diff.c:976 msgid "" "-r, --recursive recursively compare any subdirectories found" msgstr "" "-r, --recursive compara recursivamente todos los " "subdirectorios" -#: src/diff.c:917 +#: src/diff.c:977 msgid " --no-dereference don't follow symbolic links" msgstr " --no-dereference no sigue los enlaces simbólicos" -#: src/diff.c:918 +#: src/diff.c:978 msgid "-N, --new-file treat absent files as empty" msgstr "" -"-N, --new-file trata los ficheros que no existan como vacíos" +"-N, --new-file trata los archivos que no existan como vacíos" -#: src/diff.c:919 +#: src/diff.c:979 msgid " --unidirectional-new-file treat absent first files as empty" msgstr "" -" --unidirectional-new-file trata los ficheros originales que no " +" --unidirectional-new-file trata los archivos originales que no " "existan\n" " como vacíos" -#: src/diff.c:920 +#: src/diff.c:980 msgid " --ignore-file-name-case ignore case when comparing file names" msgstr "" " --ignore-file-name-case descarta las diferencias entre mayúsculas y\n" " minúsculas al comparar los nombres de los " -"ficheros" +"archivos" -#: src/diff.c:921 +#: src/diff.c:981 msgid " --no-ignore-file-name-case consider case when comparing file names" msgstr "" " --no-ignore-file-name-case considera distintas mayúsculas y minúsculas\n" -" cuando compara los nombres de los ficheros" +" cuando compara los nombres de los archivos" -#: src/diff.c:922 +#: src/diff.c:982 msgid "-x, --exclude=PAT exclude files that match PAT" msgstr "" -"-x, --exclude=PAT excluye los ficheros que coincidan con PAT" +"-x, --exclude=PAT excluye los archivos que coincidan con PAT" -#: src/diff.c:923 +#: src/diff.c:983 msgid "" "-X, --exclude-from=FILE exclude files that match any pattern in FILE" msgstr "" -"-X, --exclude-from=FICHERO excluye los ficheros que coincidan con " +"-X, --exclude-from=ARCHIVO excluye los archivos que coincidan con " "alguna\n" -" expresión regular de FICHERO" +" expresión regular de ARCHIVO" -#: src/diff.c:924 +#: src/diff.c:984 msgid "" "-S, --starting-file=FILE start with FILE when comparing directories" msgstr "" -"-S, --starting-file=FICHERO comienza por FICHERO cuando se comparan\n" +"-S, --starting-file=ARCHIVO comienza por ARCHIVO cuando se comparan\n" " directorios" -#: src/diff.c:925 +#: src/diff.c:985 msgid "" " --from-file=FILE1 compare FILE1 to all operands;\n" " FILE1 can be a directory" msgstr "" -" --from-file=FICHERO1 compara FICHERO1 con todos los operandos;\n" -" FICHERO1 puede ser un directorio" +" --from-file=ARCHIVO1 compara ARCHIVO1 con todos los operandos;\n" +" ARCHIVO1 puede ser un directorio" -#: src/diff.c:927 +#: src/diff.c:987 msgid "" " --to-file=FILE2 compare all operands to FILE2;\n" " FILE2 can be a directory" msgstr "" -" --to-file=FICHERO2 compara todos los operandos con FICHERO2;\n" -" FICHERO2 puede ser un directorio" +" --to-file=ARCHIVO2 compara todos los operandos con ARCHIVO2;\n" +" ARCHIVO2 puede ser un directorio" -#: src/diff.c:930 +#: src/diff.c:990 msgid "" "-i, --ignore-case ignore case differences in file contents" msgstr "" "-i, --ignore-case descarta las diferencias entre mayúsculas y " "minúsculas\n" -" en el contenido de los ficheros" +" en el contenido de los archivos" -#: src/diff.c:931 +#: src/diff.c:991 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E, --ignore-tab-expansion descarta cambios debidos a expansiones de " "tabs" -#: src/diff.c:932 +#: src/diff.c:992 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "" "-Z, --ignore-trailing-space descarta espacio en blanco al final de línea" -#: src/diff.c:933 +#: src/diff.c:993 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "" "-b, --ignore-space-change descarta las diferencias en la cantidad de\n" " espacio en blanco" -#: src/diff.c:934 +#: src/diff.c:994 msgid "-w, --ignore-all-space ignore all white space" msgstr "-w, --ignore-all-space descarta los espacios en blanco" -#: src/diff.c:935 +#: src/diff.c:995 msgid "" "-B, --ignore-blank-lines ignore changes where lines are all blank" msgstr "" "-B, --ignore-blank-lines descarta los cambios en líneas completamente " "vacías" -#: src/diff.c:936 +#: src/diff.c:996 msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE" msgstr "" "-I, --ignore-matching-lines=EXPR-REG descarta las líneas que coincidan con " "EXPR-REG" -#: src/diff.c:938 +#: src/diff.c:998 msgid "-a, --text treat all files as text" msgstr "" -"-a, --text trata todos los ficheros como de tipo texto" +"-a, --text trata todos los archivos como de tipo texto" -#: src/diff.c:939 +#: src/diff.c:999 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr elimina los retornos de carro finales en la " "entrada" -#: src/diff.c:941 +#: src/diff.c:1001 msgid " --binary read and write data in binary mode" msgstr "" " --binary lee y escribe los datos en modo binario" -#: src/diff.c:944 +#: src/diff.c:1004 msgid "" "-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs" msgstr "" -"-D, --ifdef=NOMBRE genera un fichero combinado que muestra las\n" +"-D, --ifdef=NOMBRE genera un archivo combinado que muestra las\n" " diferencias con '#ifdef NOMBRE'" # Propongo similar -> parecida. Ver gettext. sv # Hmmm ... prefiero similar. Antes estaba puesto `parecida' y la verdad, # no quedaba tan bien. ipg -#: src/diff.c:945 +#: src/diff.c:1005 msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT" msgstr "" " --GTYPE-group-format=GFMT formatea los grupos de entrada GTYPE con GFMT" -#: src/diff.c:946 +#: src/diff.c:1006 msgid " --line-format=LFMT format all input lines with LFMT" msgstr "" " --line-format=LFMT formatea todas las líneas de entrada con LFMT" # ídem. sv -#: src/diff.c:947 +#: src/diff.c:1007 msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT" msgstr "" " --LTYPE-line-format=LFMT formatea las líneas de entrada LTYPE con LFMT" -#: src/diff.c:948 +#: src/diff.c:1008 msgid "" " These format options provide fine-grained control over the output\n" " of diff, generalizing -D/--ifdef." @@ -1079,13 +1097,13 @@ msgstr "" "resultado\n" " de diff, generalizando -D/--ifdef." -#: src/diff.c:950 +#: src/diff.c:1010 msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'." msgstr "" " LTYPE es 'old' (antiguo), 'new' (nuevo) o 'unchanged' (sin cambios).\n" " GTYPE es como LTYPE o 'changed' (cambiado)." -#: src/diff.c:951 +#: src/diff.c:1011 msgid "" " GFMT (only) may contain:\n" " %< lines from FILE1\n" @@ -1101,9 +1119,9 @@ msgid "" " %(A=B?T:E) if A equals B then T else E" msgstr "" " GFMT (solamente) puede contener:\n" -" %< líneas del FICHERO1\n" -" %> líneas del FICHERO2\n" -" %= líneas comunes a FICHERO1 y FICHERO2\n" +" %< líneas del ARCHIVO1\n" +" %> líneas del ARCHIVO2\n" +" %= líneas comunes a ARCHIVO1 y ARCHIVO2\n" " %[-][ANCHO][.[PRECISIÓN]]{doxX}LETRA especificación printf para LETRA\n" " Las LETRAs pueden ser como siguen para grupos nuevos (en minúsculas\n" " para grupos antiguos):\n" @@ -1114,7 +1132,7 @@ msgstr "" " M L+1\n" " %(A=B?T:E) si A es igual a B entonces T en caso contrario E" -#: src/diff.c:963 +#: src/diff.c:1023 msgid "" " LFMT (only) may contain:\n" " %L contents of line\n" @@ -1128,7 +1146,7 @@ msgstr "" "el\n" " número de línea de entrada" -#: src/diff.c:967 +#: src/diff.c:1027 msgid "" " Both GFMT and LFMT may contain:\n" " %% %\n" @@ -1142,36 +1160,35 @@ msgstr "" " %c'\\OOO' el carácter con código octal OOO\n" " C el carácter C (los otros caracteres se representan a sí mismos)" -#: src/diff.c:973 +#: src/diff.c:1033 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "" "-d, --minimal se esfuerza en encontrar un grupo de cambios menor" -#: src/diff.c:974 +#: src/diff.c:1034 msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix" msgstr "" " --horizon-lines=NÚM mantiene NÚM líneas de prefijos y sufijos comunes" -#: src/diff.c:975 +#: src/diff.c:1035 msgid "" " --speed-large-files assume large files and many scattered small changes" msgstr "" -" --speed-large-files supone que los ficheros son grandes y los cambios " +" --speed-large-files supone que los archivos son grandes y los cambios " "son\n" " numerosos, pequeños y dispersos" -#: src/diff.c:976 -#, fuzzy +#: src/diff.c:1036 msgid "" " --color[=WHEN] color output; WHEN is 'never', 'always', or " "'auto';\n" " plain --color means --color='auto'" msgstr "" -" --color[=CUÁNDO] colorea la salida; CUÁNDO puede ser 'never', " -"'always',\n" -" o 'auto' (por omisión)" +" --color[=CUÁNDO] colorea la salida; CUÁNDO es 'never', 'always' o " +"'auto';\n" +" --color por sí solo significa --color='auto'" -#: src/diff.c:978 +#: src/diff.c:1038 msgid "" " --palette=PALETTE the colors to use when --color is active; PALETTE " "is\n" @@ -1182,108 +1199,108 @@ msgstr "" " una lista de capacidades de terminfo separadas " "por dos puntos" -#: src/diff.c:981 +#: src/diff.c:1041 msgid " --help display this help and exit" msgstr " --help muestra esta ayuda y finaliza" -#: src/diff.c:982 +#: src/diff.c:1042 msgid "-v, --version output version information and exit" -msgstr "-v, --version informa de la versión y finaliza" +msgstr "-v, --version muestra la versión y finaliza" -#: src/diff.c:984 +#: src/diff.c:1044 msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'." msgstr "" -"FICHEROS puede ser 'FICHERO1 FICHERO2' o 'DIRECTORIO1 DIRECTORIO2'\n" -" o 'DIRECTORIO FICHERO' o 'FICHERO DIRECTORIO'." +"ARCHIVOS puede ser 'ARCHIVO1 ARCHIVO2' o 'DIRECTORIO1 DIRECTORIO2'\n" +" o 'DIRECTORIO ARCHIVO' o 'ARCHIVO DIRECTORIO'." -#: src/diff.c:985 +#: src/diff.c:1045 msgid "" "If --from-file or --to-file is given, there are no restrictions on FILE(s)." -msgstr "Si se da --from-file o --to-file, no hay restricciones en FICHERO(s)." +msgstr "Si se da --from-file o --to-file, no hay restricciones en ARCHIVO(s)." -#: src/diff.c:986 src/diff3.c:533 src/sdiff.c:220 +#: src/diff.c:1046 src/diff3.c:531 src/sdiff.c:219 msgid "If a FILE is '-', read standard input." -msgstr "Si un FICHERO es '-', lee la entrada estándar." +msgstr "Si un ARCHIVO es '-', lee la entrada estándar." -#: src/diff.c:996 +#: src/diff.c:1056 #, c-format msgid "Usage: %s [OPTION]... FILES\n" -msgstr "Modo de empleo: %s [OPCIÓN]... FICHEROS\n" +msgstr "Modo de empleo: %s [OPCIÓN]... ARCHIVOS\n" -#: src/diff.c:997 +#: src/diff.c:1057 msgid "Compare FILES line by line." -msgstr "Compara FICHEROS línea por línea." +msgstr "Compara ARCHIVOS línea por línea." -#: src/diff.c:1034 +#: src/diff.c:1094 #, c-format msgid "conflicting %s option value '%s'" msgstr "la opción %s tiene el valor conflictivo '%s'" -#: src/diff.c:1047 +#: src/diff.c:1107 #, c-format msgid "conflicting output style options" msgstr "las especificaciones del estilo de salida son conflictivas" -#: src/diff.c:1063 +#: src/diff.c:1123 #, c-format msgid "invalid color '%s'" msgstr "color inválido '%s'" -#: src/diff.c:1119 src/diff.c:1329 +#: src/diff.c:1197 src/diff.c:1401 #, c-format msgid "Only in %s: %s\n" msgstr "Sólo en %s: %s\n" -#: src/diff.c:1253 +#: src/diff.c:1325 msgid "cannot compare '-' to a directory" msgstr "no se puede comparar '-' con un directorio" -#: src/diff.c:1288 +#: src/diff.c:1360 msgid "-D option not supported with directories" msgstr "la opción -D no se puede usar con directorios" -#: src/diff.c:1297 +#: src/diff.c:1369 #, c-format msgid "Common subdirectories: %s and %s\n" msgstr "Subdirectorios comunes: %s y %s\n" -# Nota: El segundo y el cuarto `%s' son tipos de fichero. +# Nota: El segundo y el cuarto `%s' son tipos de archivo. # Por ejemplo, "texto C", "texto FORTRAN", etc. -#: src/diff.c:1339 src/diff.c:1389 +#: src/diff.c:1411 src/diff.c:1461 #, c-format msgid "File %s is a %s while file %s is a %s\n" -msgstr "El fichero %s es un %s mientras que el %s es un %s\n" +msgstr "El archivo %s es un %s mientras que el %s es un %s\n" -#: src/diff.c:1375 +#: src/diff.c:1447 #, c-format msgid "Symbolic links %s and %s differ\n" msgstr "Los enlaces simbólicos %s y %s son distintos\n" -#: src/diff.c:1462 +#: src/diff.c:1534 #, c-format msgid "Files %s and %s are identical\n" -msgstr "Los ficheros %s y %s son idénticos\n" +msgstr "Los archivos %s y %s son idénticos\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff3.c:43 +#: src/diff3.c:51 msgid "Randy Smith" msgstr "Randy Smith" -#: src/diff3.c:356 +#: src/diff3.c:363 #, c-format msgid "incompatible options" msgstr "opciones incompatibles" -#: src/diff3.c:396 +#: src/diff3.c:403 msgid "'-' specified for more than one input file" -msgstr "se ha especificado '-' para más de un fichero de entrada" +msgstr "se ha especificado '-' para más de un archivo de entrada" -#: src/diff3.c:447 src/diff3.c:1295 src/diff3.c:1698 src/diff3.c:1753 -#: src/sdiff.c:308 src/sdiff.c:846 src/sdiff.c:857 +#: src/diff3.c:445 src/diff3.c:1284 src/diff3.c:1683 src/diff3.c:1738 +#: src/sdiff.c:306 src/sdiff.c:843 src/sdiff.c:854 msgid "read failed" msgstr "la lectura falló" -#: src/diff3.c:480 +#: src/diff3.c:478 msgid "-A, --show-all output all changes, bracketing conflicts" msgstr "" "-A, --show-all muestra todos los cambios, encerrando los " @@ -1294,27 +1311,27 @@ msgstr "" # Sí, eso pensé yo, pero no sé como ponerlo para que quede bien ... # Esto no hay quien lo entienda, piénsalo 3 minutos más si te apetece :) em+ # -# OLDFILE FICHERO-ANTIGUO -# YOURFILE TU-FICHERO -# MYFILE MI-FICHERO +# OLDFILE ARCHIVO-ANTIGUO +# YOURFILE TU-ARCHIVO +# MYFILE MI-ARCHIVO # # Pongo eso por ahora, pero espero una sugerencia mejor ;) -#: src/diff3.c:482 +#: src/diff3.c:480 msgid "" "-e, --ed output ed script incorporating changes\n" " from OLDFILE to YOURFILE into MYFILE" msgstr "" "-e, --ed muestra un `script' ed incorporando los cambios " "entre\n" -" FICHERO-ANTIGUO y TU-FICHERO a MI-FICHERO" +" ARCHIVO-ANTIGUO y TU-ARCHIVO a MI-ARCHIVO" -#: src/diff3.c:484 +#: src/diff3.c:482 msgid "-E, --show-overlap like -e, but bracket conflicts" msgstr "" "-E, --show-overlap como -e, pero encerrando los conflictos\n" " entre corchetes" -#: src/diff3.c:485 +#: src/diff3.c:483 msgid "" "-3, --easy-only like -e, but incorporate only nonoverlapping " "changes" @@ -1323,7 +1340,7 @@ msgstr "" "que\n" " no se superponen" -#: src/diff3.c:486 +#: src/diff3.c:484 msgid "" "-x, --overlap-only like -e, but incorporate only overlapping changes" msgstr "" @@ -1331,74 +1348,74 @@ msgstr "" "se\n" " solapan" -#: src/diff3.c:487 +#: src/diff3.c:485 msgid "-X like -x, but bracket conflicts" msgstr "" "-X como -x, pero encierra conflictos entre corchetes" -#: src/diff3.c:488 +#: src/diff3.c:486 msgid "-i append 'w' and 'q' commands to ed scripts" msgstr "" "-i añade las órdenes 'w' y 'q' a los scripts ed" -#: src/diff3.c:490 +#: src/diff3.c:488 msgid "" "-m, --merge output actual merged file, according to\n" " -A if no other options are given" msgstr "" -"-m, --merge muestra el fichero combinado, de acuerdo con -A " +"-m, --merge muestra el archivo combinado, de acuerdo con -A " "si\n" " no se especifica ninguna otra opción" -#: src/diff3.c:493 +#: src/diff3.c:491 msgid "-a, --text treat all files as text" msgstr "" -"-a, --text trata todos los ficheros como de tipo texto" +"-a, --text trata todos los archivos como de tipo texto" -#: src/diff3.c:494 +#: src/diff3.c:492 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr elimina los retornos de carro finales en la " "entrada" -#: src/diff3.c:495 +#: src/diff3.c:493 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T, --initial-tab hace que los tabuladores se alineen anteponiendo " "uno" -#: src/diff3.c:496 +#: src/diff3.c:494 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr "" -" --diff-program=PROGRAMA utiliza PROGRAMA para comparar los ficheros" +" --diff-program=PROGRAMA utiliza PROGRAMA para comparar los archivos" -#: src/diff3.c:497 +#: src/diff3.c:495 msgid "" "-L, --label=LABEL use LABEL instead of file name\n" " (can be repeated up to three times)" msgstr "" "-L, --label=ETIQUETA utiliza ETIQUETA en lugar del nombre del " -"fichero\n" +"archivo\n" " (se puede reperir hasta tres veces)" -#: src/diff3.c:500 +#: src/diff3.c:498 msgid " --help display this help and exit" msgstr " --help muestra esta ayuda y finaliza" -#: src/diff3.c:501 +#: src/diff3.c:499 msgid "-v, --version output version information and exit" msgstr "-v --version informa de la versión y finaliza" -#: src/diff3.c:510 +#: src/diff3.c:508 #, c-format msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n" -msgstr "Modo de empleo: %s [OPCIÓN]... MI-FICHERO FICHERO-ANTIGUO TU-FICHERO\n" +msgstr "Modo de empleo: %s [OPCIÓN]... MI-ARCHIVO ARCHIVO-ANTIGUO TU-ARCHIVO\n" -#: src/diff3.c:512 +#: src/diff3.c:510 msgid "Compare three files line by line." -msgstr "Compara tres ficheros línea por línea." +msgstr "Compara tres archivos línea por línea." -#: src/diff3.c:522 +#: src/diff3.c:520 msgid "" "\n" "The default output format is a somewhat human-readable representation of\n" @@ -1421,62 +1438,62 @@ msgstr "" "un `script' ed en lugar del resultado predeterminado.\n" "\n" "Finalmente, la opción -m (--merge) hace que diff3 realice la combinación\n" -"internamente y muestra el fichero combinado. Para ciertas entradas, esto " +"internamente y muestra el archivo combinado. Para ciertas entradas, esto " "es\n" "más robusto que usar ed.\n" -#: src/diff3.c:534 +#: src/diff3.c:532 msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble." msgstr "" "El estado de salida es 0 en caso de éxito, 1 si hay conflictos, 2 en caso " "de\n" "problema." -#: src/diff3.c:727 +#: src/diff3.c:725 msgid "internal error: screwup in format of diff blocks" msgstr "error interno: fallo en el formato de los bloques diff" -#: src/diff3.c:1022 +#: src/diff3.c:1015 #, c-format msgid "%s: diff failed: " msgstr "%s: diff falló: " -#: src/diff3.c:1044 +#: src/diff3.c:1037 msgid "internal error: invalid diff type in process_diff" msgstr "error interno: tipo de diff inválido en process_diff" -#: src/diff3.c:1069 +#: src/diff3.c:1060 msgid "invalid diff format; invalid change separator" msgstr "formato de diff inválido; separador de cambio inválido" -#: src/diff3.c:1305 +#: src/diff3.c:1294 msgid "invalid diff format; incomplete last line" msgstr "formato de diff inválido; línea final incompleta" -#: src/diff3.c:1329 src/sdiff.c:276 src/util.c:969 +#: src/diff3.c:1318 src/sdiff.c:274 src/util.c:1069 #, c-format msgid "subsidiary program '%s' could not be invoked" msgstr "no se ha podido invocar al programa subsidiario '%s'" -#: src/diff3.c:1354 +#: src/diff3.c:1343 msgid "invalid diff format; incorrect leading line chars" msgstr "" "formato de diff inválido; caracteres incorrectos al comienzo de la línea" -#: src/diff3.c:1427 +#: src/diff3.c:1416 msgid "internal error: invalid diff type passed to output" msgstr "error interno: tipo de diff inválido pasado a la salida" -#: src/diff3.c:1700 src/diff3.c:1757 +#: src/diff3.c:1685 src/diff3.c:1742 msgid "input file shrank" -msgstr "el fichero de entrada ha menguado" +msgstr "el archivo de entrada ha menguado" -#: src/dir.c:156 +#: src/dir.c:154 #, c-format msgid "cannot compare file names '%s' and '%s'" -msgstr "no se pueden comparar los nombres de fichero '%s' y '%s'" +msgstr "no se pueden comparar los nombres de archivo '%s' y '%s'" -#: src/dir.c:225 +#: src/dir.c:223 #, c-format msgid "%s: recursive directory loop" msgstr "%s: bucle de directorio recursivo" @@ -1486,29 +1503,29 @@ msgstr "%s: bucle de directorio recursivo" msgid "Thomas Lord" msgstr "Thomas Lord" -#: src/sdiff.c:174 +#: src/sdiff.c:173 msgid "" "-o, --output=FILE operate interactively, sending output to FILE" msgstr "" -"-o, --output=FICHERO opera interactivamente, enviando el resultado\n" -" al fichero FICHERO" +"-o, --output=ARCHIVO opera interactivamente, enviando el resultado\n" +" al ARCHIVO" -#: src/sdiff.c:176 +#: src/sdiff.c:175 msgid "" "-i, --ignore-case consider upper- and lower-case to be the same" msgstr "-i, --ignore-case considera iguales mayúsculas y minúsculas" -#: src/sdiff.c:177 +#: src/sdiff.c:176 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E, --ignore-tab-expansion descarta cambios debidos a expansiones de tabs" -#: src/sdiff.c:178 +#: src/sdiff.c:177 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "" "-Z, --ignore-trailing-space descarta espacio en blanco al final de línea" -#: src/sdiff.c:179 +#: src/sdiff.c:178 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "" @@ -1516,58 +1533,58 @@ msgstr "" "espacio\n" " en blanco" -#: src/sdiff.c:180 +#: src/sdiff.c:179 msgid "-W, --ignore-all-space ignore all white space" msgstr "-W, --ignore-all-space descarta todo el espacio en blanco" -#: src/sdiff.c:181 +#: src/sdiff.c:180 msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank" msgstr "" "-B, --ignore-blank-lines descarta los cambios cuyas líneas son todas " "vacías" -#: src/sdiff.c:182 +#: src/sdiff.c:181 msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE" msgstr "" "-I, --ignore-matching-lines=EXPR-REG descarta las líneas que coincidan con " "EXPR-REG" -#: src/sdiff.c:183 +#: src/sdiff.c:182 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr elimina los retornos de carro finales en la " "entrada" -#: src/sdiff.c:184 +#: src/sdiff.c:183 msgid "-a, --text treat all files as text" msgstr "" -"-a, --text trata todos los ficheros como de tipo texto" +"-a, --text trata todos los archivos como de tipo texto" -#: src/sdiff.c:186 +#: src/sdiff.c:185 msgid "" "-w, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-w, --width=NÚM muestra como mucho NÚM columnas de impresión\n" " (por omisión 130)" -#: src/sdiff.c:187 +#: src/sdiff.c:186 msgid "" "-l, --left-column output only the left column of common lines" msgstr "" "-l, --left-column muestra sólo la columna izquierda de líneas " "comunes" -#: src/sdiff.c:188 +#: src/sdiff.c:187 msgid "-s, --suppress-common-lines do not output common lines" msgstr "-s, --suppress-common-lines no muestra las líneas comunes" # Aquí a lo mejor también: la salida -> el resultado. sv -#: src/sdiff.c:190 +#: src/sdiff.c:189 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "" "-t, --expand-tabs expande los tabuladores a espacios en la salida" -#: src/sdiff.c:191 +#: src/sdiff.c:190 msgid "" " --tabsize=NUM tab stops at every NUM (default 8) print columns" msgstr "" @@ -1575,51 +1592,51 @@ msgstr "" "NÚM\n" " columnas de impresión (por omisión, 8)" -#: src/sdiff.c:193 +#: src/sdiff.c:192 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "" "-d, --minimal se esfuerza en encontrar un grupo de cambios " "menor" -#: src/sdiff.c:194 +#: src/sdiff.c:193 msgid "" "-H, --speed-large-files assume large files, many scattered small changes" msgstr "" -"-H, --speed-large-files supone que los ficheros son grandes y los " +"-H, --speed-large-files supone que los archivos son grandes y los " "cambios\n" " son numerosos, pequeños y dispersos" -#: src/sdiff.c:195 +#: src/sdiff.c:194 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr "" -" --diff-program=PROGRAMA utiliza PROGRAMA para comparar los ficheros" +" --diff-program=PROGRAMA utiliza PROGRAMA para comparar los archivos" -#: src/sdiff.c:197 +#: src/sdiff.c:196 msgid " --help display this help and exit" msgstr " --help muestra esta ayuda y finaliza" -#: src/sdiff.c:198 +#: src/sdiff.c:197 msgid "-v, --version output version information and exit" msgstr "-v, --version informa de la versión y finaliza" -#: src/sdiff.c:207 +#: src/sdiff.c:206 #, c-format msgid "Usage: %s [OPTION]... FILE1 FILE2\n" -msgstr "Modo de empleo: %s [OPCIÓN]... FICHERO1 FICHERO2\n" +msgstr "Modo de empleo: %s [OPCIÓN]... ARCHIVO1 ARCHIVO2\n" # Se admiten sugerencias. -#: src/sdiff.c:209 +#: src/sdiff.c:208 msgid "Side-by-side merge of differences between FILE1 and FILE2." msgstr "" -"Combinación a dos columnas de las diferencias entre FICHERO1 y FICHERO2." +"Combinación a dos columnas de las diferencias entre ARCHIVO1 y ARCHIVO2." -#: src/sdiff.c:330 +#: src/sdiff.c:328 msgid "cannot interactively merge standard input" msgstr "no se puede mezclar interactivamente con la entrada estándar" -#: src/sdiff.c:597 +#: src/sdiff.c:594 msgid "both files to be compared are directories" -msgstr "los dos ficheros que hay que comparar son directorios" +msgstr "los dos archivos que hay que comparar son directorios" # FIXME # ¿sugerencias para traducir mejor "verbosely"? @@ -1662,7 +1679,7 @@ msgstr "los dos ficheros que hay que comparar son directorios" # ## verbosidad # ## I. De verbo. # ## 1. (sustantivo femenino). Verborrea. -#: src/sdiff.c:820 +#: src/sdiff.c:817 msgid "" "ed:\tEdit then use both versions, each decorated with a header.\n" "eb:\tEdit then use both versions.\n" @@ -1686,29 +1703,25 @@ msgstr "" "v: Incluye líneas comunes verbosamente.\n" "q: Salir.\n" -#: src/util.c:662 +#: src/util.c:755 #, c-format msgid "unrecognized prefix: %s" msgstr "prefijo no reconocido: %s" -#: src/util.c:692 +#: src/util.c:785 #, c-format msgid "unparsable value for --palette" msgstr "valor incomprensible para --palette" -#, c-format #~ msgid "invalid %s%s argument '%s'" #~ msgstr "argumento de %s%s inválido '%s'" -#, c-format #~ msgid "invalid suffix in %s%s argument '%s'" #~ msgstr "sufijo inválido en el argumento de %s%s '%s'" -#, c-format #~ msgid "%s%s argument '%s' too large" #~ msgstr "%s%s argumento '%s' demasiado grande" -#, c-format #~ msgid "%s home page: \n" #~ msgstr "Página inicial de %s: \n" @@ -1753,7 +1766,7 @@ msgstr "valor incomprensible para --palette" #~ "-u -U NÚM --unified[=NÚM] Muestra NÚM (3 por omisión) líneas de " #~ "contexto\n" #~ " unificado.\n" -#~ " --label NOMBRE Usa NOMBRE en lugar del nombre de fichero.\n" +#~ " --label NOMBRE Usa NOMBRE en lugar del nombre de archivo.\n" #~ " -p --show-c-function Muestra en qué función C se encuentra cada " #~ "cambio.\n" #~ " -F EXPR-REG --show-function-line=EXPR-REG Muestra la línea más " @@ -1777,7 +1790,7 @@ msgstr "valor incomprensible para --palette" #~ msgid "" #~ "--speed-large-files Assume large files and many scattered small changes." #~ msgstr "" -#~ "--speed-large-files Supone que los ficheros son grandes y los cambios " +#~ "--speed-large-files Supone que los archivos son grandes y los cambios " #~ "son\n" #~ " numerosos, pequeños y dispersos." @@ -1786,12 +1799,12 @@ msgstr "valor incomprensible para --palette" #~ msgid "-m --merge Output merged file instead of ed script (default -A)." #~ msgstr "" -#~ "-m --merge Produce un fichero mezclado en lugar de un\n" +#~ "-m --merge Produce un archivo mezclado en lugar de un\n" #~ " script ed (por omisión -A)." #~ msgid "-L LABEL --label=LABEL Use LABEL instead of file name." #~ msgstr "" -#~ "-L NOMBRE --label=NOMBRE Usa NOMBRE en lugar del nombre de fichero." +#~ "-L NOMBRE --label=NOMBRE Usa NOMBRE en lugar del nombre de archivo." #~ msgid "%s: illegal option -- %c\n" #~ msgstr "%s: opción ilegal -- %c\n" @@ -1836,7 +1849,7 @@ msgstr "valor incomprensible para --palette" #~ "Este programa viene sin NINGUNA GARANTÍA, hasta donde permite la ley.\n" #~ "Se pueden redistribuir copias de este programa bajo los términos de la\n" #~ "Licencia Pública General de GNU.\n" -#~ "Para más información sobre esto, vea los ficheros llamados COPYING." +#~ "Para más información sobre esto, vea los archivos llamados COPYING." #~ msgid "Written by Torbjorn Granlund and David MacKenzie." #~ msgstr "Escrito por Torbjörn Granlund y David MacKenzie." @@ -1865,10 +1878,10 @@ msgstr "valor incomprensible para --palette" #~ msgstr "se han dado varias opciones `--to-file'" #~ msgid "regular empty executable file" -#~ msgstr "fichero regular ejecutable vacío" +#~ msgstr "archivo regular ejecutable vacío" #~ msgid "regular executable file" -#~ msgstr "fichero regular vacío" +#~ msgstr "archivo regular vacío" #~ msgid ": not found\n" #~ msgstr ": no encontrado\n" diff --git a/po/fi.po b/po/fi.po index a1a1a8b..dd14de0 100644 --- a/po/fi.po +++ b/po/fi.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: diffutils 3.7.41\n" "Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n" -"POT-Creation-Date: 2021-08-01 18:56-0700\n" +"POT-Creation-Date: 2023-05-21 01:51-0700\n" "PO-Revision-Date: 2021-07-20 12:40+0300\n" "Last-Translator: Lauri Nurmi \n" "Language-Team: Finnish \n" @@ -19,29 +19,29 @@ msgstr "" "X-Generator: Poedit 3.0\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: lib/argmatch.c:132 +#: lib/argmatch.c:145 #, c-format msgid "invalid argument %s for %s" msgstr "virheellinen argumentti %s %s:lle" -#: lib/argmatch.c:133 +#: lib/argmatch.c:146 #, c-format msgid "ambiguous argument %s for %s" msgstr "moniselitteinen argumentti %s %s:lle" -#: lib/argmatch.c:152 lib/argmatch.h:223 +#: lib/argmatch.c:165 lib/argmatch.h:242 msgid "Valid arguments are:" msgstr "Kelvolliset argumentit ovat:" -#: lib/c-stack.c:187 +#: lib/c-stack.c:186 msgid "program error" msgstr "ohjelmavirhe" -#: lib/c-stack.c:188 +#: lib/c-stack.c:187 msgid "stack overflow" msgstr "pinon ylivuoto" -#: lib/error.c:195 +#: lib/error.c:193 msgid "Unknown system error" msgstr "Tuntematon järjestelmävirhe" @@ -197,83 +197,83 @@ msgstr "%s: valitsin vaatii argumentin -- ”%c”\n" #. If you don't know what to put here, please see #. #. and use glyphs suitable for your language. -#: lib/quotearg.c:355 +#: lib/quotearg.c:354 msgid "`" msgstr "”" -#: lib/quotearg.c:356 +#: lib/quotearg.c:355 msgid "'" msgstr "”" -#: lib/regcomp.c:135 +#: lib/regcomp.c:122 msgid "Success" msgstr "Onnistui" -#: lib/regcomp.c:138 +#: lib/regcomp.c:125 msgid "No match" msgstr "Ei täsmäävyyttä" -#: lib/regcomp.c:141 +#: lib/regcomp.c:128 msgid "Invalid regular expression" msgstr "Virheellinen säännöllinen lauseke" -#: lib/regcomp.c:144 +#: lib/regcomp.c:131 msgid "Invalid collation character" msgstr "Virheellinen vertailumerkki" -#: lib/regcomp.c:147 +#: lib/regcomp.c:134 msgid "Invalid character class name" msgstr "Virheellinen merkkiluokan nimi" -#: lib/regcomp.c:150 +#: lib/regcomp.c:137 msgid "Trailing backslash" msgstr "Kenoviiva lopussa" -#: lib/regcomp.c:153 +#: lib/regcomp.c:140 msgid "Invalid back reference" msgstr "Virheellinen takaisinviittaus" -#: lib/regcomp.c:156 +#: lib/regcomp.c:143 msgid "Unmatched [, [^, [:, [., or [=" msgstr "Pariton [, [^, [:, [. tai [=" -#: lib/regcomp.c:159 +#: lib/regcomp.c:146 msgid "Unmatched ( or \\(" msgstr "Pariton ( tai \\(" -#: lib/regcomp.c:162 +#: lib/regcomp.c:149 msgid "Unmatched \\{" msgstr "Pariton \\{" -#: lib/regcomp.c:165 +#: lib/regcomp.c:152 msgid "Invalid content of \\{\\}" msgstr "Virheellinen \\{\\}:n sisältö" -#: lib/regcomp.c:168 +#: lib/regcomp.c:155 msgid "Invalid range end" msgstr "Virheellinen välin loppu" -#: lib/regcomp.c:171 +#: lib/regcomp.c:158 msgid "Memory exhausted" msgstr "Muisti lopussa" -#: lib/regcomp.c:174 +#: lib/regcomp.c:161 msgid "Invalid preceding regular expression" msgstr "Virheellinen edeltävä säännöllinen lauseke" -#: lib/regcomp.c:177 +#: lib/regcomp.c:164 msgid "Premature end of regular expression" msgstr "Ennenaikainen säännöllisen lausekkeen loppu" -#: lib/regcomp.c:180 +#: lib/regcomp.c:167 msgid "Regular expression too big" msgstr "Liian suuri säännöllinen lauseke" -#: lib/regcomp.c:183 +#: lib/regcomp.c:170 msgid "Unmatched ) or \\)" msgstr "Pariton ) tai \\)" -#: lib/regcomp.c:676 +#: lib/regcomp.c:650 msgid "No previous regular expression" msgstr "Ei edellistä säännöllistä lauseketta" @@ -469,17 +469,17 @@ msgstr "%s-kotisivu: <%s>\n" msgid "General help using GNU software: <%s>\n" msgstr "Yleisohjeita GNU-ohjelmistojen käyttöön: <%s>\n" -#: src/analyze.c:454 src/diff.c:1406 +#: src/analyze.c:455 src/diff.c:1478 #, c-format msgid "Files %s and %s differ\n" msgstr "Tiedostot %s ja %s eroavat\n" -#: src/analyze.c:455 +#: src/analyze.c:456 #, c-format msgid "Binary files %s and %s differ\n" msgstr "Binääritiedostot %s ja %s eroavat\n" -#: src/analyze.c:706 src/diff3.c:1470 src/util.c:1254 +#: src/analyze.c:707 src/diff3.c:1457 src/util.c:1354 msgid "No newline at end of file" msgstr "Ei rivinvaihtoa tiedoston lopussa" @@ -493,41 +493,42 @@ msgstr "Torbjörn Granlund" msgid "David MacKenzie" msgstr "David MacKenzie" -#: src/cmp.c:120 src/diff.c:879 src/diff3.c:467 src/sdiff.c:160 +#: src/cmp.c:124 src/diff.c:939 src/diff3.c:465 src/sdiff.c:159 #, c-format msgid "Try '%s --help' for more information." msgstr "Komento ”%s --help” antaa lisää tietoa." -#: src/cmp.c:138 +#: src/cmp.c:142 #, c-format msgid "invalid --ignore-initial value '%s'" msgstr "virheellinen arvo ”%s” valitsimelle --ignore-initial" -#: src/cmp.c:148 +#: src/cmp.c:152 #, c-format msgid "options -l and -s are incompatible" msgstr "valitsimet -l ja -s ovat yhteensopimattomat" -#: src/cmp.c:156 src/diff.c:887 src/diff3.c:474 src/sdiff.c:168 src/sdiff.c:316 -#: src/sdiff.c:323 src/sdiff.c:876 src/util.c:852 src/util.c:952 src/util.c:959 +#: src/cmp.c:160 src/diff.c:947 src/diff3.c:472 src/sdiff.c:167 src/sdiff.c:314 +#: src/sdiff.c:321 src/sdiff.c:873 src/util.c:952 src/util.c:1052 +#: src/util.c:1059 msgid "write failed" msgstr "kirjoitus epäonnistui" -#: src/cmp.c:158 src/diff.c:889 src/diff.c:1471 src/diff3.c:476 src/sdiff.c:170 +#: src/cmp.c:162 src/diff.c:949 src/diff.c:1543 src/diff3.c:474 src/sdiff.c:169 msgid "standard output" msgstr "vakiotuloste" -#: src/cmp.c:162 +#: src/cmp.c:166 msgid "-b, --print-bytes print differing bytes" msgstr "-b, --print-bytes tulosta eroavat tavut" -#: src/cmp.c:163 +#: src/cmp.c:167 msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs" msgstr "" "-i, --ignore-initial=OHITUS ohita ensimmäiset OHITUS tavua\n" " kummastakin syötteestä" -#: src/cmp.c:164 +#: src/cmp.c:168 msgid "" "-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n" " first SKIP2 bytes of FILE2" @@ -536,37 +537,37 @@ msgstr "" " tavua ja TIEDOSTO2:n ensimmäiset " "OHITUS2 tavua" -#: src/cmp.c:166 +#: src/cmp.c:170 msgid "" "-l, --verbose output byte numbers and differing byte values" msgstr "-l, --verbose tulosta tavujen sijainnit ja eroavat arvot" -#: src/cmp.c:167 +#: src/cmp.c:171 msgid "-n, --bytes=LIMIT compare at most LIMIT bytes" msgstr "-n, --bytes=RAJA vertaa enintään RAJAn verran tavuja" -#: src/cmp.c:168 +#: src/cmp.c:172 msgid "-s, --quiet, --silent suppress all normal output" msgstr "-s, --quiet, --silent vaienna kaikki tavanomainen tuloste" -#: src/cmp.c:169 +#: src/cmp.c:173 msgid " --help display this help and exit" msgstr " --help näytä tämä ohje ja poistu" -#: src/cmp.c:170 +#: src/cmp.c:174 msgid "-v, --version output version information and exit" msgstr "-v, --version näytä versiotiedot ja poistu" -#: src/cmp.c:179 +#: src/cmp.c:183 #, c-format msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n" msgstr "Käyttö: %s [VALITSIN]... TIEDOSTO1 [TIEDOSTO2 [OHITUS1 [OHITUS2]]]\n" -#: src/cmp.c:181 +#: src/cmp.c:185 msgid "Compare two files byte by byte." msgstr "Vertaa kahta tiedostoa tavu tavulta." -#: src/cmp.c:183 +#: src/cmp.c:187 msgid "" "The optional SKIP1 and SKIP2 specify the number of bytes to skip\n" "at the beginning of each file (zero by default)." @@ -574,13 +575,13 @@ msgstr "" "Valinnaiset OHITUS1 ja OHITUS2 ovat kunkin tiedoston alusta\n" "ohitettavien tavujen määrä (oletusarvoisesti nolla)." -#: src/cmp.c:186 src/diff.c:999 src/diff3.c:514 src/sdiff.c:211 +#: src/cmp.c:190 src/diff.c:1059 src/diff3.c:512 src/sdiff.c:210 msgid "" "Mandatory arguments to long options are mandatory for short options too.\n" msgstr "" "Pitkien valitsinten pakolliset argumentit ovat pakollisia myös lyhyille.\n" -#: src/cmp.c:192 +#: src/cmp.c:196 msgid "" "SKIP values may be followed by the following multiplicative suffixes:\n" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" @@ -590,148 +591,148 @@ msgstr "" "kB 1000, K 1024, MB 1 000 000, M 1 048 576,\n" "GB 1 000 000 000, G 1 073 741 824 jne. myös kertoimille T, P, E, Z, Y." -#: src/cmp.c:195 +#: src/cmp.c:199 msgid "If a FILE is '-' or missing, read standard input." msgstr "Jos TIEDOSTOa ei ole annettu, tai se on ”-”, luetaan vakiosyötettä." -#: src/cmp.c:196 src/diff.c:987 src/sdiff.c:221 +#: src/cmp.c:200 src/diff.c:1047 src/sdiff.c:220 msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble." msgstr "" "Paluuarvo on 0, jos syötteet ovat samoja, 1 jos erilaisia, " "ongelmatilanteissa 2." -#: src/cmp.c:243 +#: src/cmp.c:247 #, c-format msgid "invalid --bytes value '%s'" msgstr "virheellinen arvo ”%s” valitsimelle --bytes" -#: src/cmp.c:269 src/diff.c:797 src/diff3.c:361 src/sdiff.c:567 +#: src/cmp.c:273 src/diff.c:857 src/diff3.c:368 src/sdiff.c:564 #, c-format msgid "missing operand after '%s'" msgstr "puuttuva operandi argumentin ”%s” jälkeen" -#: src/cmp.c:281 src/diff.c:799 src/diff3.c:363 src/sdiff.c:569 +#: src/cmp.c:285 src/diff.c:859 src/diff3.c:370 src/sdiff.c:566 #, c-format msgid "extra operand '%s'" msgstr "ylimääräinen operandi ”%s”" -#: src/cmp.c:507 +#: src/cmp.c:521 #, c-format msgid "%s %s differ: byte %s, line %s\n" msgstr "%s %s eroavat: tavu %s, rivi %s\n" -#: src/cmp.c:523 +#: src/cmp.c:537 #, c-format msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n" msgstr "%s %s eroavat: tavu %s, rivi %s on %3o %s %3o %s\n" -#: src/cmp.c:580 +#: src/cmp.c:594 #, c-format msgid "cmp: EOF on %s which is empty\n" msgstr "cmp: tyhjän tiedoston %s loppu\n" -#: src/cmp.c:594 +#: src/cmp.c:608 #, c-format msgid "cmp: EOF on %s after byte %s, line %s\n" msgstr "cmp: tiedoston %s loppu tavun %s jälkeen, rivi %s\n" -#: src/cmp.c:595 +#: src/cmp.c:609 #, c-format msgid "cmp: EOF on %s after byte %s, in line %s\n" msgstr "cmp: tiedoston %s loppu tavun %s jälkeen, rivissä %s\n" -#: src/cmp.c:601 +#: src/cmp.c:615 #, c-format msgid "cmp: EOF on %s after byte %s\n" msgstr "cmp: tiedoston %s loppu tavun %s jälkeen\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:51 +#: src/diff.c:50 msgid "Paul Eggert" msgstr "Paul Eggert" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:52 +#: src/diff.c:51 msgid "Mike Haertel" msgstr "Mike Haertel" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:53 +#: src/diff.c:52 msgid "David Hayes" msgstr "David Hayes" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:54 +#: src/diff.c:53 msgid "Richard Stallman" msgstr "Richard Stallman" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:55 +#: src/diff.c:54 msgid "Len Tower" msgstr "Len Tower" -#: src/diff.c:355 +#: src/diff.c:365 #, c-format msgid "invalid context length '%s'" msgstr "virheellinen kontekstin pituus ”%s”" -#: src/diff.c:438 +#: src/diff.c:487 #, c-format msgid "pagination not supported on this host" msgstr "tämä kone ei tue sivunumerointia" -#: src/diff.c:453 src/diff3.c:341 +#: src/diff.c:502 src/diff3.c:348 #, c-format msgid "too many file label options" msgstr "liian monta tiedostonimiövalitsinta" -#: src/diff.c:530 +#: src/diff.c:579 #, c-format msgid "invalid width '%s'" msgstr "virheellinen leveys ”%s”" -#: src/diff.c:534 +#: src/diff.c:583 msgid "conflicting width options" msgstr "ristiriitaiset leveysvalinnat" -#: src/diff.c:559 +#: src/diff.c:608 #, c-format msgid "invalid horizon length '%s'" msgstr "virheellinen horisontin pituus ”%s”" -#: src/diff.c:615 +#: src/diff.c:664 #, c-format msgid "invalid tabsize '%s'" msgstr "virheellinen sarkaimen koko ”%s”" -#: src/diff.c:619 +#: src/diff.c:668 msgid "conflicting tabsize options" msgstr "ristiriitaiset sarkaimen kokovalinnat" -#: src/diff.c:774 +#: src/diff.c:834 msgid "--from-file and --to-file both specified" msgstr "sekä valitsin --from-file että --to-file on annettu" -#: src/diff.c:893 +#: src/diff.c:953 msgid " --normal output a normal diff (the default)" msgstr " --normal tulosta normaali diff (oletus)" -#: src/diff.c:894 +#: src/diff.c:954 msgid "-q, --brief report only when files differ" msgstr "-q, --brief kertoo vain, eroavatko tiedostot" -#: src/diff.c:895 +#: src/diff.c:955 msgid "-s, --report-identical-files report when two files are the same" msgstr "-s, --report-identical-files ilmoita, jos kaksi tiedostoa ovat samat" -#: src/diff.c:896 +#: src/diff.c:956 msgid "" "-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context" msgstr "" "-c, -C MÄÄRÄ, --context[=MÄÄRÄ] tulosta MÄÄRÄ riviä (oletus 3) kopioitua " "kontekstia" -#: src/diff.c:897 +#: src/diff.c:957 msgid "" "-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context" msgstr "" @@ -739,45 +740,45 @@ msgstr "" "yhtenäistettyä\n" " kontekstia" -#: src/diff.c:898 +#: src/diff.c:958 msgid "-e, --ed output an ed script" msgstr "-e, --ed tulosta ed-skripti" -#: src/diff.c:899 +#: src/diff.c:959 msgid "-n, --rcs output an RCS format diff" msgstr "-n, --rcs tulosta RCS-muotoinen diff" -#: src/diff.c:900 +#: src/diff.c:960 msgid "-y, --side-by-side output in two columns" msgstr "-y, --side-by-side tulosta kahdelle palstalle" -#: src/diff.c:901 +#: src/diff.c:961 msgid "" "-W, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-W, --width=MÄÄRÄ tulosta enintään MÄÄRÄ (oletus 130) merkkiä " "riville" -#: src/diff.c:902 +#: src/diff.c:962 msgid "" " --left-column output only the left column of common lines" msgstr "" " --left-column tulosta vain yhteisten rivien vasen palsta" -#: src/diff.c:903 +#: src/diff.c:963 msgid " --suppress-common-lines do not output common lines" msgstr " --suppress-common-lines älä tulosta yhteisiä rivejä" -#: src/diff.c:905 +#: src/diff.c:965 msgid "-p, --show-c-function show which C function each change is in" msgstr "-p, --show-c-function näytä missä C-funktiossa kukin muutos on" -#: src/diff.c:906 +#: src/diff.c:966 msgid "-F, --show-function-line=RE show the most recent line matching RE" msgstr "" "-F, --show-function-line=SL näytä viimeisin SL-lausekkeeseen täsmäävä rivi" -#: src/diff.c:907 +#: src/diff.c:967 msgid "" " --label LABEL use LABEL instead of file name and timestamp\n" " (can be repeated)" @@ -785,84 +786,84 @@ msgstr "" " --label NIMIÖ käytä NIMIÖtä tiedostonimen ja aikaleiman\n" " sijaan (voidaan toistaa)" -#: src/diff.c:910 +#: src/diff.c:970 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "" "-t, --expand-tabs laajenna sarkaimet välilyönneiksi tulosteessa" -#: src/diff.c:911 +#: src/diff.c:971 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "-T, --initial-tab kohdista sarkaimet lisäämällä sarkaimia" -#: src/diff.c:912 +#: src/diff.c:972 msgid "" " --tabsize=NUM tab stops every NUM (default 8) print columns" msgstr "" " --tabsize=KOKO sarkaimet joka KOKO. merkin välein (oletus 8)" -#: src/diff.c:913 +#: src/diff.c:973 msgid "" " --suppress-blank-empty suppress space or tab before empty output lines" msgstr "" " --suppress-blank-empty vaienna välilyönti tai sarkain tyhjien\n" " tulosterivien edeltä" -#: src/diff.c:914 +#: src/diff.c:974 msgid "-l, --paginate pass output through 'pr' to paginate it" msgstr "" "-l, --paginate ohjaa tuloste ”pr”-ohjelman läpi\n" " sivunumerointia varten" -#: src/diff.c:916 +#: src/diff.c:976 msgid "" "-r, --recursive recursively compare any subdirectories found" msgstr "" "-r, --recursive vertaa löytyneitä alihakemistoja " "rekursiivisesti" -#: src/diff.c:917 +#: src/diff.c:977 msgid " --no-dereference don't follow symbolic links" msgstr " --no-dereference älä seuraa symbolisia linkkejä" -#: src/diff.c:918 +#: src/diff.c:978 msgid "-N, --new-file treat absent files as empty" msgstr "-N, --new-file käsittele puuttuvia tiedostoja tyhjinä" -#: src/diff.c:919 +#: src/diff.c:979 msgid " --unidirectional-new-file treat absent first files as empty" msgstr "" " --unidirectional-new-file käsittele puuttuvia tiedostoja tyhjinä" -#: src/diff.c:920 +#: src/diff.c:980 msgid " --ignore-file-name-case ignore case when comparing file names" msgstr "" " --ignore-file-name-case älä huomioi kirjainkokoa tiedostonimiä\n" " verrattaessa" -#: src/diff.c:921 +#: src/diff.c:981 msgid " --no-ignore-file-name-case consider case when comparing file names" msgstr "" " --no-ignore-file-name-case huomioi kirjankoko tiedostonimiä verrattaessa" -#: src/diff.c:922 +#: src/diff.c:982 msgid "-x, --exclude=PAT exclude files that match PAT" msgstr "" "-x, --exclude=HAHMO jätä pois tiedostot, jotka täsmäävät HAHMOon" -#: src/diff.c:923 +#: src/diff.c:983 msgid "" "-X, --exclude-from=FILE exclude files that match any pattern in FILE" msgstr "" "-X, --exclude-from=TIEDOSTO jätä pois TIEDOSTOssa lueteltuihin\n" " hahmoihin täsmäävät tiedostot" -#: src/diff.c:924 +#: src/diff.c:984 msgid "" "-S, --starting-file=FILE start with FILE when comparing directories" msgstr "" "-S, --starting-file=TIEDOSTO aloita TIEDOSTOlla hakemistoja verrattaessa" -#: src/diff.c:925 +#: src/diff.c:985 msgid "" " --from-file=FILE1 compare FILE1 to all operands;\n" " FILE1 can be a directory" @@ -870,7 +871,7 @@ msgstr "" " --from-file=TIEDOSTO1 vertaa TIEDOSTO1:tä kaikkiin operandeihin;\n" " TIEDOSTO1 voi olla hakemisto" -#: src/diff.c:927 +#: src/diff.c:987 msgid "" " --to-file=FILE2 compare all operands to FILE2;\n" " FILE2 can be a directory" @@ -878,78 +879,78 @@ msgstr "" " --to-file=TIEDOSTO2 vertaa kaikkia operandeja TIEDOSTO2:een;\n" " TIEDOSTO2 voi olla hakemisto" -#: src/diff.c:930 +#: src/diff.c:990 msgid "" "-i, --ignore-case ignore case differences in file contents" msgstr "" "-i, --ignore-case älä huomioi kirjainkokoa tiedostojen " "sisällössä" -#: src/diff.c:931 +#: src/diff.c:991 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E, --ignore-tab-expansion älä huomioi sarkainten laajennuksesta\n" " johtuvia eroja" -#: src/diff.c:932 +#: src/diff.c:992 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "-Z, --ignore-trailing-space älä huomioi tyhjeitä rivin lopussa" -#: src/diff.c:933 +#: src/diff.c:993 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "" "-b, --ignore-space-change älä huomioi tyhjemerkkien määrästä johtuvia " "eroja" -#: src/diff.c:934 +#: src/diff.c:994 msgid "-w, --ignore-all-space ignore all white space" msgstr "-w --ignore-all-white-space älä huomioi tyhjemerkkejä" -#: src/diff.c:935 +#: src/diff.c:995 msgid "" "-B, --ignore-blank-lines ignore changes where lines are all blank" msgstr "-B --ignore-blank-lines älä huomioi tyhjistä riveistä johtuvia eroja" -#: src/diff.c:936 +#: src/diff.c:996 msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE" msgstr "" "-I, --ignore-matching-lines=SL älä huomioi eroavia rivejä, jotka kaikki\n" " täsmäävät säännölliseen lausekkeeseen SL" -#: src/diff.c:938 +#: src/diff.c:998 msgid "-a, --text treat all files as text" msgstr "-a --text käsittelee kaikki tiedostot tekstinä" -#: src/diff.c:939 +#: src/diff.c:999 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr " --strip-trailing-cr poista vaununpalautus syötteen lopusta" -#: src/diff.c:941 +#: src/diff.c:1001 msgid " --binary read and write data in binary mode" msgstr " --binary lue ja kirjoita dataa binääritilassa" -#: src/diff.c:944 +#: src/diff.c:1004 msgid "" "-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs" msgstr "" "-D, --ifdef=NIMI tulosta yhdistetty tiedosto ”#ifdef NIMI” -" "eroin" -#: src/diff.c:945 +#: src/diff.c:1005 msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT" msgstr "" " --GTYYPPI-group-format=GMUOTO muotoile GTYYPPIset syöteryhmät GMUOTOon" -#: src/diff.c:946 +#: src/diff.c:1006 msgid " --line-format=LFMT format all input lines with LFMT" msgstr " --line-format=LMUOTO muotoile kaikki syöterivit LMUOTOon" -#: src/diff.c:947 +#: src/diff.c:1007 msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT" msgstr " --line-format=LMUOTO muotoile LTYYPPI-syöterivit LMUOTOon" -#: src/diff.c:948 +#: src/diff.c:1008 msgid "" " These format options provide fine-grained control over the output\n" " of diff, generalizing -D/--ifdef." @@ -957,12 +958,12 @@ msgstr "" " Näillä muotoiluvalitsimilla hienosäädetään diffin tulostetta,\n" " yleistäen -D/--ifdef." -#: src/diff.c:950 +#: src/diff.c:1010 msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'." msgstr "" " LTYYPPI on ”old”, ”new” tai ”unchanged”. GTYYPPI on LTYYPPI tai ”changed”." -#: src/diff.c:951 +#: src/diff.c:1011 msgid "" " GFMT (only) may contain:\n" " %< lines from FILE1\n" @@ -992,7 +993,7 @@ msgstr "" " M L+1\n" " %(A=B?T:E) jos A yhtäkuin B niin T muuten E" -#: src/diff.c:963 +#: src/diff.c:1023 msgid "" " LFMT (only) may contain:\n" " %L contents of line\n" @@ -1004,7 +1005,7 @@ msgstr "" " %l rivin sisältö, mahdollinen jälkeinen rivinvaihto poistettuna\n" " %[-][LEVEYS][.[TARKK]]{doxX}n printf-tyylinen määritys rivinumerolle" -#: src/diff.c:967 +#: src/diff.c:1027 msgid "" " Both GFMT and LFMT may contain:\n" " %% %\n" @@ -1018,24 +1019,24 @@ msgstr "" " %c'\\OOO' yksittäinen merkki, jonka oktaalikoodi OOO\n" " C merkki C (loput merkit vastaavat itseään)" -#: src/diff.c:973 +#: src/diff.c:1033 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "-d, --minimal yritä kovin löytää pienempi muutosjoukko" -#: src/diff.c:974 +#: src/diff.c:1034 msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix" msgstr "" " --horizon-lines=MÄÄRÄ säilytä MÄÄRÄ riviä yhteisistä etu- ja " "jälkiliitteistä" -#: src/diff.c:975 +#: src/diff.c:1035 msgid "" " --speed-large-files assume large files and many scattered small changes" msgstr "" " --speed-large-files oleta suuret tiedostot, joissa paljon pieniä\n" " muutoksia ympäri tiedoston" -#: src/diff.c:976 +#: src/diff.c:1036 msgid "" " --color[=WHEN] color output; WHEN is 'never', 'always', or " "'auto';\n" @@ -1046,7 +1047,7 @@ msgstr "" " tai ”auto”; pelkkä --color on sama kuin --" "color=auto" -#: src/diff.c:978 +#: src/diff.c:1038 msgid "" " --palette=PALETTE the colors to use when --color is active; PALETTE " "is\n" @@ -1057,112 +1058,112 @@ msgstr "" " on kaksoispiste-eroteltu luettelo terminfo-" "kyvyistä" -#: src/diff.c:981 +#: src/diff.c:1041 msgid " --help display this help and exit" msgstr " --help näytä tämä ohje ja poistu" -#: src/diff.c:982 +#: src/diff.c:1042 msgid "-v, --version output version information and exit" msgstr "-v, --version näytä versiotiedot ja poistu" -#: src/diff.c:984 +#: src/diff.c:1044 msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'." msgstr "" "TIEDOSTOT ovat ”TIEDOSTO1 TIEDOSTO2” tai ”HAK1 HAK2” tai ”HAK TIEDOSTO” tai " "”TIEDOSTO HAK”." -#: src/diff.c:985 +#: src/diff.c:1045 msgid "" "If --from-file or --to-file is given, there are no restrictions on FILE(s)." msgstr "" "Jos --from-file tai --to-file on annettu, TIEDOSTO(i)lle ei ole rajoitteita." -#: src/diff.c:986 src/diff3.c:533 src/sdiff.c:220 +#: src/diff.c:1046 src/diff3.c:531 src/sdiff.c:219 msgid "If a FILE is '-', read standard input." msgstr "Jos TIEDOSTOa ei ole annettu, tai se on ”-”, luetaan vakiosyötettä." -#: src/diff.c:996 +#: src/diff.c:1056 #, c-format msgid "Usage: %s [OPTION]... FILES\n" msgstr "Käyttö: %s [VALITSIN]... TIEDOSTOT\n" -#: src/diff.c:997 +#: src/diff.c:1057 msgid "Compare FILES line by line." msgstr "Vertaa TIEDOSTOja rivi riviltä." -#: src/diff.c:1034 +#: src/diff.c:1094 #, c-format msgid "conflicting %s option value '%s'" msgstr "ristiriitainen arvo ”%2$s” valitsimelle ”%1$s”" -#: src/diff.c:1047 +#: src/diff.c:1107 #, c-format msgid "conflicting output style options" msgstr "ristiriitaiset tulostustyylin valinnat" -#: src/diff.c:1063 +#: src/diff.c:1123 #, c-format msgid "invalid color '%s'" msgstr "virheellinen väri ”%s”" -#: src/diff.c:1119 src/diff.c:1329 +#: src/diff.c:1197 src/diff.c:1401 #, c-format msgid "Only in %s: %s\n" msgstr "Vain hakemistossa %s: %s\n" -#: src/diff.c:1253 +#: src/diff.c:1325 msgid "cannot compare '-' to a directory" msgstr "”-” ei ole verrattavissa hakemistoon" -#: src/diff.c:1288 +#: src/diff.c:1360 msgid "-D option not supported with directories" msgstr "valitsin -D ei toimi hakemistojen kanssa" -#: src/diff.c:1297 +#: src/diff.c:1369 #, c-format msgid "Common subdirectories: %s and %s\n" msgstr "Yhteiset alihakemistot: %s ja %s\n" -#: src/diff.c:1339 src/diff.c:1389 +#: src/diff.c:1411 src/diff.c:1461 #, c-format msgid "File %s is a %s while file %s is a %s\n" msgstr "Tiedosto %s on %s, kun taas tiedosto %s on %s\n" -#: src/diff.c:1375 +#: src/diff.c:1447 #, c-format msgid "Symbolic links %s and %s differ\n" msgstr "Symboliset linkit %s ja %s eroavat\n" -#: src/diff.c:1462 +#: src/diff.c:1534 #, c-format msgid "Files %s and %s are identical\n" msgstr "Tiedostot %s ja %s ovat identtiset\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff3.c:43 +#: src/diff3.c:51 msgid "Randy Smith" msgstr "Randy Smith" -#: src/diff3.c:356 +#: src/diff3.c:363 #, c-format msgid "incompatible options" msgstr "yhteensopimattomat valitsimet" -#: src/diff3.c:396 +#: src/diff3.c:403 msgid "'-' specified for more than one input file" msgstr "”-” annettu useammaksi syötetiedostoksi" -#: src/diff3.c:447 src/diff3.c:1295 src/diff3.c:1698 src/diff3.c:1753 -#: src/sdiff.c:308 src/sdiff.c:846 src/sdiff.c:857 +#: src/diff3.c:445 src/diff3.c:1284 src/diff3.c:1683 src/diff3.c:1738 +#: src/sdiff.c:306 src/sdiff.c:843 src/sdiff.c:854 msgid "read failed" msgstr "lukeminen epäonnistui" -#: src/diff3.c:480 +#: src/diff3.c:478 msgid "-A, --show-all output all changes, bracketing conflicts" msgstr "" "-A, --show-all tulosta kaikki muutokset, ristiriidat merkiten" -#: src/diff3.c:482 +#: src/diff3.c:480 msgid "" "-e, --ed output ed script incorporating changes\n" " from OLDFILE to YOURFILE into MYFILE" @@ -1171,32 +1172,32 @@ msgstr "" " VANHANTIEDOSTON muutokset verrattuna " "TIEDOSTOOSI" -#: src/diff3.c:484 +#: src/diff3.c:482 msgid "-E, --show-overlap like -e, but bracket conflicts" msgstr "-E, --show-overlap kuin -e, mutta ristiriidat merkiten" -#: src/diff3.c:485 +#: src/diff3.c:483 msgid "" "-3, --easy-only like -e, but incorporate only nonoverlapping " "changes" msgstr "" "-3, --easy-only kuin -e, mutta vain ei-päällekkäiset muutokset" -#: src/diff3.c:486 +#: src/diff3.c:484 msgid "" "-x, --overlap-only like -e, but incorporate only overlapping changes" msgstr "" "-x, --overlap-only kuin -e, mutta vain päällekkäiset muutokset" -#: src/diff3.c:487 +#: src/diff3.c:485 msgid "-X like -x, but bracket conflicts" msgstr "-X kuin -x, mutta ristiriidat merkiten" -#: src/diff3.c:488 +#: src/diff3.c:486 msgid "-i append 'w' and 'q' commands to ed scripts" msgstr "-i lisää komennot ”w” ja ”q” ed-skripteihin" -#: src/diff3.c:490 +#: src/diff3.c:488 msgid "" "-m, --merge output actual merged file, according to\n" " -A if no other options are given" @@ -1204,23 +1205,23 @@ msgstr "" "-m, --merge tulosta varsinainen yhdistetty tiedosto -A:n\n" " mukaisesti ellei muita valitsimia annettu" -#: src/diff3.c:493 +#: src/diff3.c:491 msgid "-a, --text treat all files as text" msgstr "-a, --text käsittele kaikki tiedostot tekstinä" -#: src/diff3.c:494 +#: src/diff3.c:492 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr " --strip-trailing-cr poista vaununpalautus syötteen lopusta" -#: src/diff3.c:495 +#: src/diff3.c:493 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "-T, --initial-tab kohdista sarkaimet lisäämällä sarkaimia" -#: src/diff3.c:496 +#: src/diff3.c:494 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr " --diff-program=OHJELMA käytä OHJELMAa tiedostojen vertaamiseen" -#: src/diff3.c:497 +#: src/diff3.c:495 msgid "" "-L, --label=LABEL use LABEL instead of file name\n" " (can be repeated up to three times)" @@ -1228,24 +1229,24 @@ msgstr "" "-L, --label NIMIÖ käytä NIMIÖtä tiedostonimen sijaan\n" " (voidaan toistaa enintään kolmesti)" -#: src/diff3.c:500 +#: src/diff3.c:498 msgid " --help display this help and exit" msgstr " --help näytä tämä ohje ja poistu" -#: src/diff3.c:501 +#: src/diff3.c:499 msgid "-v, --version output version information and exit" msgstr "-v, --version näytä versiotiedot ja poistu" -#: src/diff3.c:510 +#: src/diff3.c:508 #, c-format msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n" msgstr "Käyttö: %s [VALITSIN]... TIEDOSTONI VANHATIEDOSTO TIEDOSTOSI\n" -#: src/diff3.c:512 +#: src/diff3.c:510 msgid "Compare three files line by line." msgstr "Vertaa kolmea tiedostoa rivi riviltä." -#: src/diff3.c:522 +#: src/diff3.c:520 msgid "" "\n" "The default output format is a somewhat human-readable representation of\n" @@ -1268,55 +1269,55 @@ msgstr "" "ja tulostamaan varsinaisen yhdistetyn tiedoston. Epätavalliselle\n" "syötteelle tämä on vankempaa kuin edin käyttäminen.\n" -#: src/diff3.c:534 +#: src/diff3.c:532 msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble." msgstr "" "Paluuarvo on onnistuessa 0, ristiriitatilanteissa 1, ja ongelmatilanteissa 2." -#: src/diff3.c:727 +#: src/diff3.c:725 msgid "internal error: screwup in format of diff blocks" msgstr "sisäinen virhe: möhläys diff-lohkojen muodossa" -#: src/diff3.c:1022 +#: src/diff3.c:1015 #, c-format msgid "%s: diff failed: " msgstr "%s: diff epäonnistui: " -#: src/diff3.c:1044 +#: src/diff3.c:1037 msgid "internal error: invalid diff type in process_diff" msgstr "sisäinen virhe: virheellinen diff-tyyppi process_diff-funktiossa" -#: src/diff3.c:1069 +#: src/diff3.c:1060 msgid "invalid diff format; invalid change separator" msgstr "virheellinen diff-muoto; virheellinen muutoserotin" -#: src/diff3.c:1305 +#: src/diff3.c:1294 msgid "invalid diff format; incomplete last line" msgstr "virheellinen diff-muoto; viimeinen rivi vajaa" -#: src/diff3.c:1329 src/sdiff.c:276 src/util.c:969 +#: src/diff3.c:1318 src/sdiff.c:274 src/util.c:1069 #, c-format msgid "subsidiary program '%s' could not be invoked" msgstr "apuohjelmaa ”%s” ei voitu käynnistää" -#: src/diff3.c:1354 +#: src/diff3.c:1343 msgid "invalid diff format; incorrect leading line chars" msgstr "virheellinen diff-muoto; väärät rivin alkumerkit" -#: src/diff3.c:1427 +#: src/diff3.c:1416 msgid "internal error: invalid diff type passed to output" msgstr "sisäinen virhe: virheellinen diff-muoto välitetty tulosteeseen" -#: src/diff3.c:1700 src/diff3.c:1757 +#: src/diff3.c:1685 src/diff3.c:1742 msgid "input file shrank" msgstr "syötetiedosto kutistui" -#: src/dir.c:156 +#: src/dir.c:154 #, c-format msgid "cannot compare file names '%s' and '%s'" msgstr "tiedostonimiä ”%s” ja ”%s” ei voi vertailla" -#: src/dir.c:225 +#: src/dir.c:223 #, c-format msgid "%s: recursive directory loop" msgstr "%s: rekursiivinen hakemistosilmukka" @@ -1326,90 +1327,90 @@ msgstr "%s: rekursiivinen hakemistosilmukka" msgid "Thomas Lord" msgstr "Thomas Lord" -#: src/sdiff.c:174 +#: src/sdiff.c:173 msgid "" "-o, --output=FILE operate interactively, sending output to FILE" msgstr "" "-o, --output=TIEDOSTO toimi vuorovaikutteisesti, tuloste TIEDOSTOon" -#: src/sdiff.c:176 +#: src/sdiff.c:175 msgid "" "-i, --ignore-case consider upper- and lower-case to be the same" msgstr "" "-i, --ignore-case käsittele isot ja pienet kirjaimet samoina" -#: src/sdiff.c:177 +#: src/sdiff.c:176 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E, --ignore-tab-expansion älä huomioi sarkainten laajennuksesta\n" " johtuvia eroja" -#: src/sdiff.c:178 +#: src/sdiff.c:177 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "-Z, --ignore-trailing-space älä huomioi tyhjeitä rivin lopussa" -#: src/sdiff.c:179 +#: src/sdiff.c:178 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "" "-b, --ignore-space-change älä huomioi tyhjemerkkien määrästä johtuvia " "eroja" -#: src/sdiff.c:180 +#: src/sdiff.c:179 msgid "-W, --ignore-all-space ignore all white space" msgstr "-W, --ignore-all-space älä huomioi tyhjiä merkkejä" -#: src/sdiff.c:181 +#: src/sdiff.c:180 msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank" msgstr "" "-B, --ignore-blank-lines älä huomioi tyhjistä riveistä johtuvia eroja" -#: src/sdiff.c:182 +#: src/sdiff.c:181 msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE" msgstr "" "-I, --ignore-matching-lines=SL älä huomioi eroavia rivejä, jotka\n" " täsmäävät säännölliseen lausekkeeseen SL" -#: src/sdiff.c:183 +#: src/sdiff.c:182 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr " --strip-trailing-cr poista vaununpalautus syötteen lopusta" -#: src/sdiff.c:184 +#: src/sdiff.c:183 msgid "-a, --text treat all files as text" msgstr "-a --text käsittele kaikki tiedostot tekstinä" -#: src/sdiff.c:186 +#: src/sdiff.c:185 msgid "" "-w, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-w, --width=MÄÄRÄ tulosta enintään MÄÄRÄ (oletus 130) merkkiä " "riville" -#: src/sdiff.c:187 +#: src/sdiff.c:186 msgid "" "-l, --left-column output only the left column of common lines" msgstr "" "-l, --left-column tulosta vain yhteisten rivien vasen palsta" -#: src/sdiff.c:188 +#: src/sdiff.c:187 msgid "-s, --suppress-common-lines do not output common lines" msgstr "-s, --suppress-common-lines älä tulosta yhteisiä rivejä" -#: src/sdiff.c:190 +#: src/sdiff.c:189 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "" "-t, --expand-tabs laajenna sarkaimet välilyönneiksi tulosteessa" -#: src/sdiff.c:191 +#: src/sdiff.c:190 msgid "" " --tabsize=NUM tab stops at every NUM (default 8) print columns" msgstr " --tabsize=KOKO sarkaimen koko on KOKO (oletus 8) merkkiä" -#: src/sdiff.c:193 +#: src/sdiff.c:192 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "-d, --minimal yritä kovin löytää pienempi muutosjoukko" -#: src/sdiff.c:194 +#: src/sdiff.c:193 msgid "" "-H, --speed-large-files assume large files, many scattered small changes" msgstr "" @@ -1417,38 +1418,38 @@ msgstr "" "muutoksia\n" " ympäri tiedoston" -#: src/sdiff.c:195 +#: src/sdiff.c:194 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr " --diff-program=OHJELMA käytä OHJELMAa tiedostojen vertaamiseen" -#: src/sdiff.c:197 +#: src/sdiff.c:196 msgid " --help display this help and exit" msgstr " --help näytä tämä ohje ja poistu" -#: src/sdiff.c:198 +#: src/sdiff.c:197 msgid "-v, --version output version information and exit" msgstr "-v, --version näytä versiotiedot ja poistu" -#: src/sdiff.c:207 +#: src/sdiff.c:206 #, c-format msgid "Usage: %s [OPTION]... FILE1 FILE2\n" msgstr "Käyttö: %s [VALITSIN]...TIEDOSTO1 TIEDOSTO2\n" -#: src/sdiff.c:209 +#: src/sdiff.c:208 msgid "Side-by-side merge of differences between FILE1 and FILE2." msgstr "" "Tiedostojen TIEDOSTO1 ja TIEDOSTO2 erojen yhdistäminen vierekkäisillä " "palstoilla." -#: src/sdiff.c:330 +#: src/sdiff.c:328 msgid "cannot interactively merge standard input" msgstr "vakiosyötettä ei voi yhdistää vuorovaikutteisesti" -#: src/sdiff.c:597 +#: src/sdiff.c:594 msgid "both files to be compared are directories" msgstr "molemmat vertailtavat tiedostot ovat hakemistoja" -#: src/sdiff.c:820 +#: src/sdiff.c:817 msgid "" "ed:\tEdit then use both versions, each decorated with a header.\n" "eb:\tEdit then use both versions.\n" @@ -1472,12 +1473,12 @@ msgstr "" "v:\tSisällytä yhteiset rivit automaattisesti, ilmoittaen.\n" "q:\tLopeta.\n" -#: src/util.c:662 +#: src/util.c:755 #, c-format msgid "unrecognized prefix: %s" msgstr "tunnistamaton etuliite: %s" -#: src/util.c:692 +#: src/util.c:785 #, c-format msgid "unparsable value for --palette" msgstr "jäsentymätön arvo valitsimelle --palette" diff --git a/po/fr.po b/po/fr.po index 02d0c58..893bbf2 100644 --- a/po/fr.po +++ b/po/fr.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: GNU diffutils 3.7.41\n" "Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n" -"POT-Creation-Date: 2021-08-01 18:56-0700\n" +"POT-Creation-Date: 2023-05-21 01:51-0700\n" "PO-Revision-Date: 2021-07-20 20:07+0200\n" "Last-Translator: Frédéric Marchal \n" "Language-Team: French \n" @@ -19,29 +19,29 @@ msgstr "" "X-Bugs: Report translation errors to the Language-Team address.\n" "Plural-Forms: nplurals=2; plural=(n >= 2);\n" -#: lib/argmatch.c:132 +#: lib/argmatch.c:145 #, c-format msgid "invalid argument %s for %s" msgstr "argument %s pas valable pour %s" -#: lib/argmatch.c:133 +#: lib/argmatch.c:146 #, c-format msgid "ambiguous argument %s for %s" msgstr "argument %s ambigu pour %s" -#: lib/argmatch.c:152 lib/argmatch.h:223 +#: lib/argmatch.c:165 lib/argmatch.h:242 msgid "Valid arguments are:" msgstr "Les arguments valables sont:" -#: lib/c-stack.c:187 +#: lib/c-stack.c:186 msgid "program error" msgstr "erreur du programme" -#: lib/c-stack.c:188 +#: lib/c-stack.c:187 msgid "stack overflow" msgstr "débordement de pile" -#: lib/error.c:195 +#: lib/error.c:193 msgid "Unknown system error" msgstr "Erreur système inconnue" @@ -198,83 +198,83 @@ msgstr "%s: l'option -- « %c » requiert un argument\n" #. If you don't know what to put here, please see #. #. and use glyphs suitable for your language. -#: lib/quotearg.c:355 +#: lib/quotearg.c:354 msgid "`" msgstr "« " -#: lib/quotearg.c:356 +#: lib/quotearg.c:355 msgid "'" msgstr " »" -#: lib/regcomp.c:135 +#: lib/regcomp.c:122 msgid "Success" msgstr "Succès" -#: lib/regcomp.c:138 +#: lib/regcomp.c:125 msgid "No match" msgstr "Pas de concordance" -#: lib/regcomp.c:141 +#: lib/regcomp.c:128 msgid "Invalid regular expression" msgstr "L'expression régulière est invalide" -#: lib/regcomp.c:144 +#: lib/regcomp.c:131 msgid "Invalid collation character" msgstr "Le caractère de regroupement est invalide" -#: lib/regcomp.c:147 +#: lib/regcomp.c:134 msgid "Invalid character class name" msgstr "Le nom d'un ensemble de caractères est invalide" -#: lib/regcomp.c:150 +#: lib/regcomp.c:137 msgid "Trailing backslash" msgstr "Barre oblique inverse à la fin" -#: lib/regcomp.c:153 +#: lib/regcomp.c:140 msgid "Invalid back reference" msgstr "La référence arrière est invalide" -#: lib/regcomp.c:156 +#: lib/regcomp.c:143 msgid "Unmatched [, [^, [:, [., or [=" msgstr "[, [^, [:, [. ou [= sans vis-à-vis" -#: lib/regcomp.c:159 +#: lib/regcomp.c:146 msgid "Unmatched ( or \\(" msgstr " ( ou \\( sans vis-à-vis" -#: lib/regcomp.c:162 +#: lib/regcomp.c:149 msgid "Unmatched \\{" msgstr "\\{ sans vis-à-vis" -#: lib/regcomp.c:165 +#: lib/regcomp.c:152 msgid "Invalid content of \\{\\}" msgstr "Le contenu de \\{\\} est invalide" -#: lib/regcomp.c:168 +#: lib/regcomp.c:155 msgid "Invalid range end" msgstr "La fin d'intervalle est invalide" -#: lib/regcomp.c:171 +#: lib/regcomp.c:158 msgid "Memory exhausted" msgstr "Mémoire épuisée" -#: lib/regcomp.c:174 +#: lib/regcomp.c:161 msgid "Invalid preceding regular expression" msgstr "L'expression régulière précédente est invalide" -#: lib/regcomp.c:177 +#: lib/regcomp.c:164 msgid "Premature end of regular expression" msgstr "Fin prématurée de l'expression régulière" -#: lib/regcomp.c:180 +#: lib/regcomp.c:167 msgid "Regular expression too big" msgstr "Expression régulière trop grande" -#: lib/regcomp.c:183 +#: lib/regcomp.c:170 msgid "Unmatched ) or \\)" msgstr ") or \\) sans vis-à-vis" -#: lib/regcomp.c:676 +#: lib/regcomp.c:650 msgid "No previous regular expression" msgstr "N'est pas précédé d'une expression régulière" @@ -474,17 +474,17 @@ msgstr "site internet de %s: <%s>\n" msgid "General help using GNU software: <%s>\n" msgstr "Aide générale sur l'utilisation des logiciels GNU: <%s>\n" -#: src/analyze.c:454 src/diff.c:1406 +#: src/analyze.c:455 src/diff.c:1478 #, c-format msgid "Files %s and %s differ\n" msgstr "Les fichiers %s et %s sont différents\n" -#: src/analyze.c:455 +#: src/analyze.c:456 #, c-format msgid "Binary files %s and %s differ\n" msgstr "Les fichiers binaires %s et %s sont différents\n" -#: src/analyze.c:706 src/diff3.c:1470 src/util.c:1254 +#: src/analyze.c:707 src/diff3.c:1457 src/util.c:1354 msgid "No newline at end of file" msgstr "Pas de fin de ligne à la fin du fichier" @@ -498,40 +498,41 @@ msgstr "Torbjorn Granlund" msgid "David MacKenzie" msgstr "David MacKenzie" -#: src/cmp.c:120 src/diff.c:879 src/diff3.c:467 src/sdiff.c:160 +#: src/cmp.c:124 src/diff.c:939 src/diff3.c:465 src/sdiff.c:159 #, c-format msgid "Try '%s --help' for more information." msgstr "Utilisez « %s --help » pour en savoir d'avantage." -#: src/cmp.c:138 +#: src/cmp.c:142 #, c-format msgid "invalid --ignore-initial value '%s'" msgstr "valeur invalide pour --ignore-initial: « %s »" -#: src/cmp.c:148 +#: src/cmp.c:152 #, c-format msgid "options -l and -s are incompatible" msgstr "options -l et -s sont incompatibles" -#: src/cmp.c:156 src/diff.c:887 src/diff3.c:474 src/sdiff.c:168 src/sdiff.c:316 -#: src/sdiff.c:323 src/sdiff.c:876 src/util.c:852 src/util.c:952 src/util.c:959 +#: src/cmp.c:160 src/diff.c:947 src/diff3.c:472 src/sdiff.c:167 src/sdiff.c:314 +#: src/sdiff.c:321 src/sdiff.c:873 src/util.c:952 src/util.c:1052 +#: src/util.c:1059 msgid "write failed" msgstr "échec d'écriture" -#: src/cmp.c:158 src/diff.c:889 src/diff.c:1471 src/diff3.c:476 src/sdiff.c:170 +#: src/cmp.c:162 src/diff.c:949 src/diff.c:1543 src/diff3.c:474 src/sdiff.c:169 msgid "standard output" msgstr "sortie standard" -#: src/cmp.c:162 +#: src/cmp.c:166 msgid "-b, --print-bytes print differing bytes" msgstr "-b, --print-bytes Afficher les octets qui diffèrent" -#: src/cmp.c:163 +#: src/cmp.c:167 msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs" msgstr "" "-i, --ignore-initial=N Escamoter les N premiers octets des entrées" -#: src/cmp.c:164 +#: src/cmp.c:168 msgid "" "-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n" " first SKIP2 bytes of FILE2" @@ -539,41 +540,41 @@ msgstr "" "-i, --ignore-initial=N1:N2 Escamoter les N1 premiers octets de FICHIER1 et " "les N2 premiers octets de FICHIER2." -#: src/cmp.c:166 +#: src/cmp.c:170 msgid "" "-l, --verbose output byte numbers and differing byte values" msgstr "" "-l, --verbose Afficher les numéros d'octets et les valeurs de " "tous les octets qui diffèrent." -#: src/cmp.c:167 +#: src/cmp.c:171 msgid "-n, --bytes=LIMIT compare at most LIMIT bytes" msgstr "-n, --bytes=LIMITE Comparer au plus LIMITE octets" -#: src/cmp.c:168 +#: src/cmp.c:172 msgid "-s, --quiet, --silent suppress all normal output" msgstr "-s, --quiet, --silent Supprimer la sortie normale" -#: src/cmp.c:169 +#: src/cmp.c:173 msgid " --help display this help and exit" msgstr " --help Afficher cette aide et terminer" -#: src/cmp.c:170 +#: src/cmp.c:174 msgid "-v, --version output version information and exit" msgstr "" "-v, --version Afficher le nom et la version du logiciel puis " "terminer" -#: src/cmp.c:179 +#: src/cmp.c:183 #, c-format msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n" msgstr "Usage: %s [OPTION]... FICHIER1 [FICHIER2 [SAUT1 [SAUT2]]]\n" -#: src/cmp.c:181 +#: src/cmp.c:185 msgid "Compare two files byte by byte." msgstr "Comparer deux fichiers octet par octet." -#: src/cmp.c:183 +#: src/cmp.c:187 msgid "" "The optional SKIP1 and SKIP2 specify the number of bytes to skip\n" "at the beginning of each file (zero by default)." @@ -582,14 +583,14 @@ msgstr "" "escamoter\n" "au début de chaque fichier (zéro par défaut)." -#: src/cmp.c:186 src/diff.c:999 src/diff3.c:514 src/sdiff.c:211 +#: src/cmp.c:190 src/diff.c:1059 src/diff3.c:512 src/sdiff.c:210 msgid "" "Mandatory arguments to long options are mandatory for short options too.\n" msgstr "" "Les paramètres requis pour les options longues sont également requis pour " "les options courtes.\n" -#: src/cmp.c:192 +#: src/cmp.c:196 msgid "" "SKIP values may be followed by the following multiplicative suffixes:\n" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" @@ -600,202 +601,202 @@ msgstr "" "kB 1000, K 1024, MB 1.000.000, M 1.048.576,\n" "GB 1.000.000.000, G 1.073.741.824, et ainsi de suite pour T, P, E, Z, Y." -#: src/cmp.c:195 +#: src/cmp.c:199 msgid "If a FILE is '-' or missing, read standard input." msgstr "Si un FICHIER est « - » ou manquant, lire sur l'entrée standard." -#: src/cmp.c:196 src/diff.c:987 src/sdiff.c:221 +#: src/cmp.c:200 src/diff.c:1047 src/sdiff.c:220 msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble." msgstr "" "Le statut de fin d'exécution est 0 si les entrées sont les mêmes, 1 si " "différentes et 2 si problématiques." -#: src/cmp.c:243 +#: src/cmp.c:247 #, c-format msgid "invalid --bytes value '%s'" msgstr "valeur invalide pour --bytes: « %s »" -#: src/cmp.c:269 src/diff.c:797 src/diff3.c:361 src/sdiff.c:567 +#: src/cmp.c:273 src/diff.c:857 src/diff3.c:368 src/sdiff.c:564 #, c-format msgid "missing operand after '%s'" msgstr "opérande manquante après « %s »" -#: src/cmp.c:281 src/diff.c:799 src/diff3.c:363 src/sdiff.c:569 +#: src/cmp.c:285 src/diff.c:859 src/diff3.c:370 src/sdiff.c:566 #, c-format msgid "extra operand '%s'" msgstr "opérande supplémentaire « %s »" -#: src/cmp.c:507 +#: src/cmp.c:521 #, c-format msgid "%s %s differ: byte %s, line %s\n" msgstr "%s %s sont différents: octet %s, ligne %s\n" -#: src/cmp.c:523 +#: src/cmp.c:537 #, c-format msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n" msgstr "%s %s diffèrent: octet %s, ligne %s est %3o %s %3o %s\n" -#: src/cmp.c:580 +#: src/cmp.c:594 #, c-format msgid "cmp: EOF on %s which is empty\n" msgstr "cmp: Fin-de-fichier (EOF) sur %s qui est vide\n" -#: src/cmp.c:594 +#: src/cmp.c:608 #, c-format msgid "cmp: EOF on %s after byte %s, line %s\n" msgstr "cmp: Fin-de-fichier (EOF) sur %s après l'octet %s, ligne %s\n" -#: src/cmp.c:595 +#: src/cmp.c:609 #, c-format msgid "cmp: EOF on %s after byte %s, in line %s\n" msgstr "cmp: Fin-de-fichier (EOF) sur %s après l'octet %s, ligne %s\n" -#: src/cmp.c:601 +#: src/cmp.c:615 #, c-format msgid "cmp: EOF on %s after byte %s\n" msgstr "cmp: Fin-de-fichier (EOF) sur %s après l'octet %s\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:51 +#: src/diff.c:50 msgid "Paul Eggert" msgstr "Paul Eggert" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:52 +#: src/diff.c:51 msgid "Mike Haertel" msgstr "Mike Haertel" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:53 +#: src/diff.c:52 msgid "David Hayes" msgstr "David Hayes" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:54 +#: src/diff.c:53 msgid "Richard Stallman" msgstr "Richard Stallman" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:55 +#: src/diff.c:54 msgid "Len Tower" msgstr "Len Tower" -#: src/diff.c:355 +#: src/diff.c:365 #, c-format msgid "invalid context length '%s'" msgstr "longueur du contexte invalide « %s »" -#: src/diff.c:438 +#: src/diff.c:487 #, c-format msgid "pagination not supported on this host" msgstr "La pagination n'est pas supporté sur cette machine" -#: src/diff.c:453 src/diff3.c:341 +#: src/diff.c:502 src/diff3.c:348 #, c-format msgid "too many file label options" msgstr "Trop de noms de fichiers dans les options" -#: src/diff.c:530 +#: src/diff.c:579 #, c-format msgid "invalid width '%s'" msgstr "largeur invalide « %s »" -#: src/diff.c:534 +#: src/diff.c:583 msgid "conflicting width options" msgstr "options de largeur conflictuelles" -#: src/diff.c:559 +#: src/diff.c:608 #, c-format msgid "invalid horizon length '%s'" msgstr "longueur d'horizon invalide « %s »" -#: src/diff.c:615 +#: src/diff.c:664 #, c-format msgid "invalid tabsize '%s'" msgstr "taille de tabulation invalide « %s »" -#: src/diff.c:619 +#: src/diff.c:668 msgid "conflicting tabsize options" msgstr "options conflictuelles de taille de tabulation" -#: src/diff.c:774 +#: src/diff.c:834 msgid "--from-file and --to-file both specified" msgstr "--from-file et --to-file ont été spécifiés ensemble" -#: src/diff.c:893 +#: src/diff.c:953 msgid " --normal output a normal diff (the default)" msgstr "" " --normal Produire un « diff » en format normal (par " "défaut)" -#: src/diff.c:894 +#: src/diff.c:954 msgid "-q, --brief report only when files differ" msgstr "" "-q, --brief Indiquer seulement si les fichiers diffèrent" -#: src/diff.c:895 +#: src/diff.c:955 msgid "-s, --report-identical-files report when two files are the same" msgstr "" "-s, --report-identical-files Indiquer si les deux fichiers sont identiques" -#: src/diff.c:896 +#: src/diff.c:956 msgid "" "-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context" msgstr "" "-c, -C N, --context[=N] Afficher N (3 par défaut) lignes du " "contexte copié" -#: src/diff.c:897 +#: src/diff.c:957 msgid "" "-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context" msgstr "" "-u, -U N, --unified[=N] Afficher N (3 par défaut) lignes dans " "le context unifié" -#: src/diff.c:898 +#: src/diff.c:958 msgid "-e, --ed output an ed script" msgstr "-e, --ed Générer un script pour « ed »" -#: src/diff.c:899 +#: src/diff.c:959 msgid "-n, --rcs output an RCS format diff" msgstr "" "-n, --rcs Générer un fichier « diff » au format RCS" -#: src/diff.c:900 +#: src/diff.c:960 msgid "-y, --side-by-side output in two columns" msgstr "-y, --side-by-side Affichage sur deux colonnes" -#: src/diff.c:901 +#: src/diff.c:961 msgid "" "-W, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-w, --width=N Limiter la sortie à au plus N colonnes " "imprimées (130 par défaut)" -#: src/diff.c:902 +#: src/diff.c:962 msgid "" " --left-column output only the left column of common lines" msgstr "" " --left-column Afficher les lignes identiques uniquement dans " "la colonne de gauche" -#: src/diff.c:903 +#: src/diff.c:963 msgid " --suppress-common-lines do not output common lines" msgstr " --suppress-common-lines Ne pas afficher les lignes identiques" -#: src/diff.c:905 +#: src/diff.c:965 msgid "-p, --show-c-function show which C function each change is in" msgstr "" "-p, --show-c-function Afficher dans quelle fonction C le changement " "se trouve" -#: src/diff.c:906 +#: src/diff.c:966 msgid "-F, --show-function-line=RE show the most recent line matching RE" msgstr "" "-F, --show-function-line=RE Montrer la ligne la plus récente correspondant " "à RE" -#: src/diff.c:907 +#: src/diff.c:967 msgid "" " --label LABEL use LABEL instead of file name and timestamp\n" " (can be repeated)" @@ -804,93 +805,93 @@ msgstr "" "et de l'horodatage\n" " (peut être répété)" -#: src/diff.c:910 +#: src/diff.c:970 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "" "-t, --expand-tabs Étaler les tabulateurs en espaces dans la " "sortie" -#: src/diff.c:911 +#: src/diff.c:971 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T, --initial-tab Aligner les tabulateurs en préfixant un " "tabulateur" -#: src/diff.c:912 +#: src/diff.c:972 msgid "" " --tabsize=NUM tab stops every NUM (default 8) print columns" msgstr "" " --tabsize=N Les balises de tabulation sont à chaque N (8 " "par défaut) colonnes" -#: src/diff.c:913 +#: src/diff.c:973 msgid "" " --suppress-blank-empty suppress space or tab before empty output lines" msgstr "" " --suppress-blank-empty Supprimer les espaces et les tabulations avant " "les lignes vides" -#: src/diff.c:914 +#: src/diff.c:974 msgid "-l, --paginate pass output through 'pr' to paginate it" msgstr "" "-l, --paginate Relayer la sortie à « pr » afin de la paginer" -#: src/diff.c:916 +#: src/diff.c:976 msgid "" "-r, --recursive recursively compare any subdirectories found" msgstr "" "-r, --recursive Comparer récursivement les sous-répertoires " "trouvés" -#: src/diff.c:917 +#: src/diff.c:977 msgid " --no-dereference don't follow symbolic links" msgstr " --no-dereference Ne pas suivre les liens symboliques" -#: src/diff.c:918 +#: src/diff.c:978 msgid "-N, --new-file treat absent files as empty" msgstr "" "-N, --new-file Traiter les fichiers absents comme des " "fichiers vides" -#: src/diff.c:919 +#: src/diff.c:979 msgid " --unidirectional-new-file treat absent first files as empty" msgstr "" " --unidirectional-new-file Traiter les premiers fichiers absents comme " "vides" -#: src/diff.c:920 +#: src/diff.c:980 msgid " --ignore-file-name-case ignore case when comparing file names" msgstr "" " --ignore-file-name-case Ignorer la casse lors de la comparaison des " "noms de fichiers" -#: src/diff.c:921 +#: src/diff.c:981 msgid " --no-ignore-file-name-case consider case when comparing file names" msgstr "" " --no-ignore-file-name-case Tenir compte de la casse lors de la " "comparaison des noms de fichiers" -#: src/diff.c:922 +#: src/diff.c:982 msgid "-x, --exclude=PAT exclude files that match PAT" msgstr "" "-x, --exclude=PAT Exclure les fichiers dont les noms concordent " "avec le PATron" -#: src/diff.c:923 +#: src/diff.c:983 msgid "" "-X, --exclude-from=FILE exclude files that match any pattern in FILE" msgstr "" "-X, --exclude-from=FICHIER Exclure les fichiers dont les noms\n" " concordent avec ceux contenus dans le FICHIER" -#: src/diff.c:924 +#: src/diff.c:984 msgid "" "-S, --starting-file=FILE start with FILE when comparing directories" msgstr "" "-S, --starting-file=FICHIER Débuter la comparaison des répertoires par le " "FICHIER" -#: src/diff.c:925 +#: src/diff.c:985 msgid "" " --from-file=FILE1 compare FILE1 to all operands;\n" " FILE1 can be a directory" @@ -898,7 +899,7 @@ msgstr "" " --from-file=FICHIER1 Comparer le FICHIER1 à toutes les opérandes.\n" " FICHIER1 peut être un répertoire" -#: src/diff.c:927 +#: src/diff.c:987 msgid "" " --to-file=FILE2 compare all operands to FILE2;\n" " FILE2 can be a directory" @@ -906,86 +907,86 @@ msgstr "" " --to-file=FICHIER2 Comparer toutes les opérandes à FICHIER2.\n" " FICHIER2 peut être un répertoire" -#: src/diff.c:930 +#: src/diff.c:990 msgid "" "-i, --ignore-case ignore case differences in file contents" msgstr "" "-i, --ignore-case Ignorer les différences de casses dans le " "contenu des fichiers" -#: src/diff.c:931 +#: src/diff.c:991 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E, --ignore-tab-expansion Ignorer les changements liés à l'expansion des " "tabulations" -#: src/diff.c:932 +#: src/diff.c:992 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "" "-Z, --ignore-trailing-space Ignorer les blancs d'espacement à la fin " "de la ligne" -#: src/diff.c:933 +#: src/diff.c:993 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "" "-b, --ignore-space-change Ignorer les changements dans le nombre " "d'espaces" -#: src/diff.c:934 +#: src/diff.c:994 msgid "-w, --ignore-all-space ignore all white space" msgstr "-w, --ignore-all-space Ignorer tout blanc d'espacement" -#: src/diff.c:935 +#: src/diff.c:995 msgid "" "-B, --ignore-blank-lines ignore changes where lines are all blank" msgstr "" "-B, --ignore-blank-lines Ignorer les changements dont toutes les lignes " "sont blanches" -#: src/diff.c:936 +#: src/diff.c:996 msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE" msgstr "" "-I, --ignore-matching-lines=RE Ignorer les différences dont toutes les\n" " lignes concordent avec l'expression régulière RE" -#: src/diff.c:938 +#: src/diff.c:998 msgid "-a, --text treat all files as text" msgstr "" "-a, --text Traiter tous les fichiers comme des textes" -#: src/diff.c:939 +#: src/diff.c:999 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr Éliminer les retours de chariot de l'entrée" -#: src/diff.c:941 +#: src/diff.c:1001 msgid " --binary read and write data in binary mode" msgstr " --binary Lire et écrire les données en binaire" -#: src/diff.c:944 +#: src/diff.c:1004 msgid "" "-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs" msgstr "" "-D, --ifdef=NOM Afficher les fichiers fusionnés en marquant les " "différences par des « #ifdef NOM »" -#: src/diff.c:945 +#: src/diff.c:1005 msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT" msgstr "" " --GTYPE-group-format=GFMT Formater les groupes d'entrée GTYPE avec GFMT" -#: src/diff.c:946 +#: src/diff.c:1006 msgid " --line-format=LFMT format all input lines with LFMT" msgstr "" " --line-format=LFMT Formater toutes les lignes d'entrée avec LFMT" -#: src/diff.c:947 +#: src/diff.c:1007 msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT" msgstr "" " --LTYPE-line-format=LFMT Formater les lignes d'entrée LTYPE avec LFMT" -#: src/diff.c:948 +#: src/diff.c:1008 msgid "" " These format options provide fine-grained control over the output\n" " of diff, generalizing -D/--ifdef." @@ -993,13 +994,13 @@ msgstr "" " Ces options de formatage fournissent un contrôle fin sur la sortie\n" " de diff et généralise -D/--ifdef." -#: src/diff.c:950 +#: src/diff.c:1010 msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'." msgstr "" " LTYPE peut être soit « old », « new », ou « unchanged ». GTYPE prend une " "des valeurs de LTYPE ou « changed »." -#: src/diff.c:951 +#: src/diff.c:1011 msgid "" " GFMT (only) may contain:\n" " %< lines from FILE1\n" @@ -1029,7 +1030,7 @@ msgstr "" " E F-1\n" " M L+1 %(A=B?T:E) si A égal B alors T sinon E" -#: src/diff.c:963 +#: src/diff.c:1023 msgid "" " LFMT (only) may contain:\n" " %L contents of line\n" @@ -1042,7 +1043,7 @@ msgstr "" " %[-][LARGEUR][.[PREC]]{doxX}n la spécification du numéro de ligne\n" " d'entrée selon le format de printf" -#: src/diff.c:967 +#: src/diff.c:1027 msgid "" " Both GFMT and LFMT may contain:\n" " %% %\n" @@ -1056,26 +1057,26 @@ msgstr "" " %c'\\OOO» le caractère dont le code octal est OOO C le " "caractère C (les autres caractères se représentent eux-mêmes)" -#: src/diff.c:973 +#: src/diff.c:1033 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "" "-d, --minimal rechercher assidûment le plus petit ensemble de " "différences" -#: src/diff.c:974 +#: src/diff.c:1034 msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix" msgstr "" " --horizon-lines=N retenir N lignes ayant des préfixes et suffixes " "identiques" -#: src/diff.c:975 +#: src/diff.c:1035 msgid "" " --speed-large-files assume large files and many scattered small changes" msgstr "" " --speed-large-files suppose de grands fichiers et de nombreux petits " "changements éparpillés" -#: src/diff.c:976 +#: src/diff.c:1036 msgid "" " --color[=WHEN] color output; WHEN is 'never', 'always', or " "'auto';\n" @@ -1086,7 +1087,7 @@ msgstr "" " --color sans argument est identique à --" "color='auto'" -#: src/diff.c:978 +#: src/diff.c:1038 msgid "" " --palette=PALETTE the colors to use when --color is active; PALETTE " "is\n" @@ -1097,116 +1098,116 @@ msgstr "" " est une liste de capacités terminfo séparées par " "des virgules" -#: src/diff.c:981 +#: src/diff.c:1041 msgid " --help display this help and exit" msgstr " --help afficher cette aide et terminer" -#: src/diff.c:982 +#: src/diff.c:1042 msgid "-v, --version output version information and exit" msgstr "" "-v, --version afficher le nom et la version du logiciel et " "terminer" -#: src/diff.c:984 +#: src/diff.c:1044 msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'." msgstr "" "FICHIERS sont « FICHIER1 FICHIER2 » ou « RÉP1 RÉP2 » ou « RÉP FICHIER » ou " "« FICHIER RÉP »." -#: src/diff.c:985 +#: src/diff.c:1045 msgid "" "If --from-file or --to-file is given, there are no restrictions on FILE(s)." msgstr "" "Si --from-file ou --to-file sont fournis, il n'y a pas de restriction sur " "les FICHIERS." -#: src/diff.c:986 src/diff3.c:533 src/sdiff.c:220 +#: src/diff.c:1046 src/diff3.c:531 src/sdiff.c:219 msgid "If a FILE is '-', read standard input." msgstr "Si un FICHIER est « - » alors lire depuis l'entrée standard." -#: src/diff.c:996 +#: src/diff.c:1056 #, c-format msgid "Usage: %s [OPTION]... FILES\n" msgstr "Usage: %s [OPTION]... FICHIERS\n" -#: src/diff.c:997 +#: src/diff.c:1057 msgid "Compare FILES line by line." msgstr "Comparer les fichiers ligne par ligne." -#: src/diff.c:1034 +#: src/diff.c:1094 #, c-format msgid "conflicting %s option value '%s'" msgstr "valeur conflictuelle de l'option %s: « %s »" -#: src/diff.c:1047 +#: src/diff.c:1107 #, c-format msgid "conflicting output style options" msgstr "options de style de sortie conflictuelles" -#: src/diff.c:1063 +#: src/diff.c:1123 #, c-format msgid "invalid color '%s'" msgstr "couleur « %s » invalide" -#: src/diff.c:1119 src/diff.c:1329 +#: src/diff.c:1197 src/diff.c:1401 #, c-format msgid "Only in %s: %s\n" msgstr "Seulement dans %s: %s\n" -#: src/diff.c:1253 +#: src/diff.c:1325 msgid "cannot compare '-' to a directory" msgstr "ne peut comparer « - » avec un répertoire" -#: src/diff.c:1288 +#: src/diff.c:1360 msgid "-D option not supported with directories" msgstr "L'option -D ne traite pas les répertoires" -#: src/diff.c:1297 +#: src/diff.c:1369 #, c-format msgid "Common subdirectories: %s and %s\n" msgstr "Les sous-répertoires %s et %s sont identiques\n" -#: src/diff.c:1339 src/diff.c:1389 +#: src/diff.c:1411 src/diff.c:1461 #, c-format msgid "File %s is a %s while file %s is a %s\n" msgstr "Le fichier %s est un %s alors que le fichier %s est un %s\n" -#: src/diff.c:1375 +#: src/diff.c:1447 #, c-format msgid "Symbolic links %s and %s differ\n" msgstr "Les liens symboliques %s et %s sont différents\n" -#: src/diff.c:1462 +#: src/diff.c:1534 #, c-format msgid "Files %s and %s are identical\n" msgstr "Les fichiers %s et %s sont identiques\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff3.c:43 +#: src/diff3.c:51 msgid "Randy Smith" msgstr "Randy Smith" -#: src/diff3.c:356 +#: src/diff3.c:363 #, c-format msgid "incompatible options" msgstr "options incompatibles" -#: src/diff3.c:396 +#: src/diff3.c:403 msgid "'-' specified for more than one input file" msgstr "« - » fourni pour plus d'un fichier d'entrée" -#: src/diff3.c:447 src/diff3.c:1295 src/diff3.c:1698 src/diff3.c:1753 -#: src/sdiff.c:308 src/sdiff.c:846 src/sdiff.c:857 +#: src/diff3.c:445 src/diff3.c:1284 src/diff3.c:1683 src/diff3.c:1738 +#: src/sdiff.c:306 src/sdiff.c:843 src/sdiff.c:854 msgid "read failed" msgstr "lecture non-réussie" -#: src/diff3.c:480 +#: src/diff3.c:478 msgid "-A, --show-all output all changes, bracketing conflicts" msgstr "" "-A, --show-all Afficher toutes les différences avec les " "conflits entre crochets" -#: src/diff3.c:482 +#: src/diff3.c:480 msgid "" "-e, --ed output ed script incorporating changes\n" " from OLDFILE to YOURFILE into MYFILE" @@ -1216,12 +1217,12 @@ msgstr "" " du fichier ORIGINAL vers le fichier MODIFIÉ\n" " vers le fichier de SORTIE" -#: src/diff3.c:484 +#: src/diff3.c:482 msgid "-E, --show-overlap like -e, but bracket conflicts" msgstr "" "-E, --show-overlap Comme -e mais les conflits sont entre crochets" -#: src/diff3.c:485 +#: src/diff3.c:483 msgid "" "-3, --easy-only like -e, but incorporate only nonoverlapping " "changes" @@ -1229,24 +1230,24 @@ msgstr "" "-3, --easy-only Comme -e mais n'inclut que les changements qui " "ne se recoupent pas" -#: src/diff3.c:486 +#: src/diff3.c:484 msgid "" "-x, --overlap-only like -e, but incorporate only overlapping changes" msgstr "" "-x, --overlap-only Comme -e mais inclut les changements qui se recoupent" -#: src/diff3.c:487 +#: src/diff3.c:485 msgid "-X like -x, but bracket conflicts" msgstr "" "-X Comme -x mais le conflits sont entre crochets" -#: src/diff3.c:488 +#: src/diff3.c:486 msgid "-i append 'w' and 'q' commands to ed scripts" msgstr "" "-i Ajouter les commandes « w » et « q » au script " "« ed »" -#: src/diff3.c:490 +#: src/diff3.c:488 msgid "" "-m, --merge output actual merged file, according to\n" " -A if no other options are given" @@ -1255,29 +1256,29 @@ msgstr "" "autre\n" " option n'est spécifiée" -#: src/diff3.c:493 +#: src/diff3.c:491 msgid "-a, --text treat all files as text" msgstr "" "-a, --text Traiter tous les fichiers comme des textes" -#: src/diff3.c:494 +#: src/diff3.c:492 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr Éliminer les retours de chariot de l'entrée" -#: src/diff3.c:495 +#: src/diff3.c:493 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T, --initial-tab Aligner les tabulateurs en préfixant un " "tabulateur" -#: src/diff3.c:496 +#: src/diff3.c:494 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr "" " --diff-program=PROG Utiliser le PROGramme pour comparer les " "fichiers" -#: src/diff3.c:497 +#: src/diff3.c:495 msgid "" "-L, --label=LABEL use LABEL instead of file name\n" " (can be repeated up to three times)" @@ -1286,26 +1287,26 @@ msgstr "" "fichier\n" " (peut être répété jusqu'à trois fois)" -#: src/diff3.c:500 +#: src/diff3.c:498 msgid " --help display this help and exit" msgstr " --help Afficher cette aide et terminer" -#: src/diff3.c:501 +#: src/diff3.c:499 msgid "-v, --version output version information and exit" msgstr "" "-v, --version Afficher le nom et la version du logiciel et " "terminer" -#: src/diff3.c:510 +#: src/diff3.c:508 #, c-format msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n" msgstr "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n" -#: src/diff3.c:512 +#: src/diff3.c:510 msgid "Compare three files line by line." msgstr "Comparer trois fichiers ligne par ligne." -#: src/diff3.c:522 +#: src/diff3.c:520 msgid "" "\n" "The default output format is a somewhat human-readable representation of\n" @@ -1331,57 +1332,57 @@ msgstr "" "plus\n" "robuste que d'utiliser ed.\n" -#: src/diff3.c:534 +#: src/diff3.c:532 msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble." msgstr "" "Le statut de fin d'exécution est 0 si réussite, 1 si en conflit et 2 si " "problématique." -#: src/diff3.c:727 +#: src/diff3.c:725 msgid "internal error: screwup in format of diff blocks" msgstr "erreur interne: mélange dans le format des blocs « diff »" -#: src/diff3.c:1022 +#: src/diff3.c:1015 #, c-format msgid "%s: diff failed: " msgstr "%s: échec de « diff » : " -#: src/diff3.c:1044 +#: src/diff3.c:1037 msgid "internal error: invalid diff type in process_diff" msgstr "erreur interne: type de « diff » invalide dans process_diff" -#: src/diff3.c:1069 +#: src/diff3.c:1060 msgid "invalid diff format; invalid change separator" msgstr "format de « diff » invalide ; séparateur de changement invalide" -#: src/diff3.c:1305 +#: src/diff3.c:1294 msgid "invalid diff format; incomplete last line" msgstr "format de « diff » invalide ; dernière ligne incomplète" -#: src/diff3.c:1329 src/sdiff.c:276 src/util.c:969 +#: src/diff3.c:1318 src/sdiff.c:274 src/util.c:1069 #, c-format msgid "subsidiary program '%s' could not be invoked" msgstr "programme subsidiaire « %s » n'a pu être invoqué" -#: src/diff3.c:1354 +#: src/diff3.c:1343 msgid "invalid diff format; incorrect leading line chars" msgstr "" "format de « diff » invalide ; caractères incorrects au début de la ligne" -#: src/diff3.c:1427 +#: src/diff3.c:1416 msgid "internal error: invalid diff type passed to output" msgstr "erreur interne : type de « diff » invalide fourni en sortie" -#: src/diff3.c:1700 src/diff3.c:1757 +#: src/diff3.c:1685 src/diff3.c:1742 msgid "input file shrank" msgstr "le fichier d'entrée a rétréci" -#: src/dir.c:156 +#: src/dir.c:154 #, c-format msgid "cannot compare file names '%s' and '%s'" msgstr "ne peut comparer les noms de fichier « %s » et « %s »" -#: src/dir.c:225 +#: src/dir.c:223 #, c-format msgid "%s: recursive directory loop" msgstr "%s: boucle récursive dans le répertoire" @@ -1391,136 +1392,136 @@ msgstr "%s: boucle récursive dans le répertoire" msgid "Thomas Lord" msgstr "Thomas Lord" -#: src/sdiff.c:174 +#: src/sdiff.c:173 msgid "" "-o, --output=FILE operate interactively, sending output to FILE" msgstr "" "-o, --output=FICHIER Agir interactivement, avec sortie sur FICHIER" -#: src/sdiff.c:176 +#: src/sdiff.c:175 msgid "" "-i, --ignore-case consider upper- and lower-case to be the same" msgstr "-i, --ignore-case Banaliser majuscules et minuscules" -#: src/sdiff.c:177 +#: src/sdiff.c:176 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E, --ignore-tab-expansion Ignorer les changements liés à l'expansion des " "tabulations" -#: src/sdiff.c:178 +#: src/sdiff.c:177 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "" "-Z, --ignore-trailing-space Ignorer les blancs d'espacement à la fin " "de la ligne" -#: src/sdiff.c:179 +#: src/sdiff.c:178 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "-b, --ignore-space-change Ignorer les changements dans l'espacement" -#: src/sdiff.c:180 +#: src/sdiff.c:179 msgid "-W, --ignore-all-space ignore all white space" msgstr "-W, --ignore-all-space Ignorer tout blanc d'espacement" -#: src/sdiff.c:181 +#: src/sdiff.c:180 msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank" msgstr "" "-B, --ignore-blank-lines Ignorer les changements dont toutes les lignes " "sont blanches" -#: src/sdiff.c:182 +#: src/sdiff.c:181 msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE" msgstr "" "-I, --ignore-matching-lines=RE Ignorer les différences dont toutes les\n" " lignes concordent avec l'expression régulière RE" -#: src/sdiff.c:183 +#: src/sdiff.c:182 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr Éliminer les retours de chariot de l'entrée" -#: src/sdiff.c:184 +#: src/sdiff.c:183 msgid "-a, --text treat all files as text" msgstr "" "-a, --text Traiter tous les fichiers comme des textes" -#: src/sdiff.c:186 +#: src/sdiff.c:185 msgid "" "-w, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-w, --width=N Limiter la sortie à au plus N colonnes " "imprimées (130 par défaut)" -#: src/sdiff.c:187 +#: src/sdiff.c:186 msgid "" "-l, --left-column output only the left column of common lines" msgstr "" "-l, --left-column Afficher uniquement la colonne de gauche des " "lignes identiques" -#: src/sdiff.c:188 +#: src/sdiff.c:187 msgid "-s, --suppress-common-lines do not output common lines" msgstr "-s, --suppress-common-lines Ne pas afficher les lignes identiques" -#: src/sdiff.c:190 +#: src/sdiff.c:189 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "" "-t, --expand-tabs Étaler les tabulateurs en espaces dans la sortie" -#: src/sdiff.c:191 +#: src/sdiff.c:190 msgid "" " --tabsize=NUM tab stops at every NUM (default 8) print columns" msgstr "" " --tabsize=N Les balises de tabulation sont à chaque N (8 " "par défaut) colonnes" -#: src/sdiff.c:193 +#: src/sdiff.c:192 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "" "-d, --minimal Rechercher assidûment le plus petit ensemble de " "différences" -#: src/sdiff.c:194 +#: src/sdiff.c:193 msgid "" "-H, --speed-large-files assume large files, many scattered small changes" msgstr "" "-H, --speed-large-files Suppose de grands fichiers et de nombreux " "petits changements éparpillés" -#: src/sdiff.c:195 +#: src/sdiff.c:194 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr "" " --diff-program=PROG Utiliser le PROGramme pour comparer les fichiers" -#: src/sdiff.c:197 +#: src/sdiff.c:196 msgid " --help display this help and exit" msgstr " --help Afficher cette aide et terminer" -#: src/sdiff.c:198 +#: src/sdiff.c:197 msgid "-v, --version output version information and exit" msgstr "" "-v, --version Afficher le nom et la version du logiciel et " "terminer" -#: src/sdiff.c:207 +#: src/sdiff.c:206 #, c-format msgid "Usage: %s [OPTION]... FILE1 FILE2\n" msgstr "Usage: %s [OPTION]... FICHIER1 FICHIER2\n" -#: src/sdiff.c:209 +#: src/sdiff.c:208 msgid "Side-by-side merge of differences between FILE1 and FILE2." msgstr "Fusion côte à côte des différences des fichiers." -#: src/sdiff.c:330 +#: src/sdiff.c:328 msgid "cannot interactively merge standard input" msgstr "ne peut fusionner l'entrée standard interactivement" -#: src/sdiff.c:597 +#: src/sdiff.c:594 msgid "both files to be compared are directories" msgstr "les deux fichiers à comparer sont des répertoires" -#: src/sdiff.c:820 +#: src/sdiff.c:817 msgid "" "ed:\tEdit then use both versions, each decorated with a header.\n" "eb:\tEdit then use both versions.\n" @@ -1545,12 +1546,12 @@ msgstr "" "v:\tInclure les lignes identiques et le signaler.\n" "q:\tQuitter.\n" -#: src/util.c:662 +#: src/util.c:755 #, c-format msgid "unrecognized prefix: %s" msgstr "préfixe non reconnu: %s" -#: src/util.c:692 +#: src/util.c:785 #, c-format msgid "unparsable value for --palette" msgstr "valeur impossible à analyser pour --palette" diff --git a/po/ga.po b/po/ga.po index 4ca4558..96b893c 100644 --- a/po/ga.po +++ b/po/ga.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: diffutils 2.8.7\n" "Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n" -"POT-Creation-Date: 2021-08-01 18:56-0700\n" +"POT-Creation-Date: 2023-05-21 01:51-0700\n" "PO-Revision-Date: 2004-12-03 13:47-0500\n" "Last-Translator: Kevin Patrick Scannell \n" "Language-Team: Irish \n" @@ -17,29 +17,29 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "X-Bugs: Report translation errors to the Language-Team address.\n" -#: lib/argmatch.c:132 +#: lib/argmatch.c:145 #, c-format msgid "invalid argument %s for %s" msgstr "" -#: lib/argmatch.c:133 +#: lib/argmatch.c:146 #, c-format msgid "ambiguous argument %s for %s" msgstr "" -#: lib/argmatch.c:152 lib/argmatch.h:223 +#: lib/argmatch.c:165 lib/argmatch.h:242 msgid "Valid arguments are:" msgstr "" -#: lib/c-stack.c:187 +#: lib/c-stack.c:186 msgid "program error" msgstr "earráid chláir" -#: lib/c-stack.c:188 +#: lib/c-stack.c:187 msgid "stack overflow" msgstr "cruach thar maoil" -#: lib/error.c:195 +#: lib/error.c:193 msgid "Unknown system error" msgstr "Earráid chórais anaithnid" @@ -201,88 +201,88 @@ msgstr "%s: n #. If you don't know what to put here, please see #. #. and use glyphs suitable for your language. -#: lib/quotearg.c:355 +#: lib/quotearg.c:354 msgid "`" msgstr "" -#: lib/quotearg.c:356 +#: lib/quotearg.c:355 msgid "'" msgstr "" -#: lib/regcomp.c:135 +#: lib/regcomp.c:122 msgid "Success" msgstr "Bua!" # #-#-#-#-# findutils-4.2.6.ga.po (findutils 4.2.6) #-#-#-#-# # ugh. Not clear what kind of things we're matching -- KPS -#: lib/regcomp.c:138 +#: lib/regcomp.c:125 msgid "No match" msgstr "Níl a leithéid ann" -#: lib/regcomp.c:141 +#: lib/regcomp.c:128 msgid "Invalid regular expression" msgstr "Slonn ionadaíochta neamhbhailí" -#: lib/regcomp.c:144 +#: lib/regcomp.c:131 msgid "Invalid collation character" msgstr "Carachtar cóimheasa neamhbhailí" -#: lib/regcomp.c:147 +#: lib/regcomp.c:134 msgid "Invalid character class name" msgstr "Aicme charachtair neamhbhailí" -#: lib/regcomp.c:150 +#: lib/regcomp.c:137 msgid "Trailing backslash" msgstr "Cúlslais ag deireadh" # #-#-#-#-# sed-4.1.1.ga.po (sed 4.1.1) #-#-#-#-# # coinage - KPS -#: lib/regcomp.c:153 +#: lib/regcomp.c:140 msgid "Invalid back reference" msgstr "Cúltagairt neamhbhailí" -#: lib/regcomp.c:156 +#: lib/regcomp.c:143 #, fuzzy msgid "Unmatched [, [^, [:, [., or [=" msgstr "[ nó [^ corr" -#: lib/regcomp.c:159 +#: lib/regcomp.c:146 msgid "Unmatched ( or \\(" msgstr "( nó \\( corr" -#: lib/regcomp.c:162 +#: lib/regcomp.c:149 msgid "Unmatched \\{" msgstr "\\{ corr" -#: lib/regcomp.c:165 +#: lib/regcomp.c:152 msgid "Invalid content of \\{\\}" msgstr "Ábhar neamhbhailí idir \\{\\}" -#: lib/regcomp.c:168 +#: lib/regcomp.c:155 msgid "Invalid range end" msgstr "Deireadh raoin neamhbhailí" -#: lib/regcomp.c:171 +#: lib/regcomp.c:158 msgid "Memory exhausted" msgstr "Cuimhne ídithe" -#: lib/regcomp.c:174 +#: lib/regcomp.c:161 msgid "Invalid preceding regular expression" msgstr "Is neamhbhailí an slonn ionadaíochta roimhe seo" -#: lib/regcomp.c:177 +#: lib/regcomp.c:164 msgid "Premature end of regular expression" msgstr "Deireadh le slonn ionadaíochta gan choinne" -#: lib/regcomp.c:180 +#: lib/regcomp.c:167 msgid "Regular expression too big" msgstr "Slonn ionadaíochta rómhór" -#: lib/regcomp.c:183 +#: lib/regcomp.c:170 msgid "Unmatched ) or \\)" msgstr ") nó \\) corr" -#: lib/regcomp.c:676 +#: lib/regcomp.c:650 msgid "No previous regular expression" msgstr "Níl aon slonn ionadaíochta roimhe seo" @@ -475,17 +475,17 @@ msgstr "" msgid "General help using GNU software: <%s>\n" msgstr "" -#: src/analyze.c:454 src/diff.c:1406 +#: src/analyze.c:455 src/diff.c:1478 #, c-format msgid "Files %s and %s differ\n" msgstr "Tá difríocht idir na comhaid %s agus %s\n" -#: src/analyze.c:455 +#: src/analyze.c:456 #, fuzzy, c-format msgid "Binary files %s and %s differ\n" msgstr "Tá difríocht idir na comhaid %s agus %s\n" -#: src/analyze.c:706 src/diff3.c:1470 src/util.c:1254 +#: src/analyze.c:707 src/diff3.c:1457 src/util.c:1354 msgid "No newline at end of file" msgstr "Gan líne nua ag an chomhadchríoch" @@ -499,84 +499,85 @@ msgstr "Torbjorn Granlund" msgid "David MacKenzie" msgstr "" -#: src/cmp.c:120 src/diff.c:879 src/diff3.c:467 src/sdiff.c:160 +#: src/cmp.c:124 src/diff.c:939 src/diff3.c:465 src/sdiff.c:159 #, fuzzy, c-format msgid "Try '%s --help' for more information." msgstr "Bain triail as `%s --help' chun tuilleadh eolais a fháil." -#: src/cmp.c:138 +#: src/cmp.c:142 #, fuzzy, c-format msgid "invalid --ignore-initial value '%s'" msgstr "luach neamhbhailí --ignore-initial `%s'" -#: src/cmp.c:148 +#: src/cmp.c:152 #, c-format msgid "options -l and -s are incompatible" msgstr "Níl na roghanna -l agus -s comhoiriúnach" -#: src/cmp.c:156 src/diff.c:887 src/diff3.c:474 src/sdiff.c:168 src/sdiff.c:316 -#: src/sdiff.c:323 src/sdiff.c:876 src/util.c:852 src/util.c:952 src/util.c:959 +#: src/cmp.c:160 src/diff.c:947 src/diff3.c:472 src/sdiff.c:167 src/sdiff.c:314 +#: src/sdiff.c:321 src/sdiff.c:873 src/util.c:952 src/util.c:1052 +#: src/util.c:1059 msgid "write failed" msgstr "teipeadh ag scríobh" -#: src/cmp.c:158 src/diff.c:889 src/diff.c:1471 src/diff3.c:476 src/sdiff.c:170 +#: src/cmp.c:162 src/diff.c:949 src/diff.c:1543 src/diff3.c:474 src/sdiff.c:169 msgid "standard output" msgstr "aschur caighdeánach" -#: src/cmp.c:162 +#: src/cmp.c:166 #, fuzzy msgid "-b, --print-bytes print differing bytes" msgstr "-b --print-bytes Taispeáin na bearta atá difriúla." -#: src/cmp.c:163 +#: src/cmp.c:167 #, fuzzy msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs" msgstr "" "-i UIMHIR --ignore-initial=UIMHIR Gabh thar an chéad UIMHIR beart " "ionchurtha." -#: src/cmp.c:164 +#: src/cmp.c:168 #, fuzzy msgid "" "-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n" " first SKIP2 bytes of FILE2" msgstr " Gabh thar an chéad SCIP1 beart as COMHAD1 agus SCIP2 as COMHAD2." -#: src/cmp.c:166 +#: src/cmp.c:170 #, fuzzy msgid "" "-l, --verbose output byte numbers and differing byte values" msgstr "" "-l --verbose Taispeáin uimhreacha agus luachanna do bhearta uile difriúla." -#: src/cmp.c:167 +#: src/cmp.c:171 #, fuzzy msgid "-n, --bytes=LIMIT compare at most LIMIT bytes" msgstr "-n TEOR --bytes=TEOR Cuir TEOR beart i gcomparáid, ar a mhéad." -#: src/cmp.c:168 +#: src/cmp.c:172 msgid "-s, --quiet, --silent suppress all normal output" msgstr "" -#: src/cmp.c:169 +#: src/cmp.c:173 msgid " --help display this help and exit" msgstr "" -#: src/cmp.c:170 +#: src/cmp.c:174 #, fuzzy msgid "-v, --version output version information and exit" msgstr "-v --version Taispeáin eolas faoin leagan." -#: src/cmp.c:179 +#: src/cmp.c:183 #, c-format msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n" msgstr "Úsáid: %s [ROGHA]... COMHAD1 [COMHAD2 [SCIPEÁIL1 [SCIPEÁIL2]]]\n" -#: src/cmp.c:181 +#: src/cmp.c:185 msgid "Compare two files byte by byte." msgstr "Cuir dhá chomhad i gcomparáid, beart le beart." -#: src/cmp.c:183 +#: src/cmp.c:187 #, fuzzy msgid "" "The optional SKIP1 and SKIP2 specify the number of bytes to skip\n" @@ -584,12 +585,12 @@ msgid "" msgstr "" "Is éard atá i SCIP1 agus SCIP2 ná líonta na mbeart a scipeáil i ngach comhad." -#: src/cmp.c:186 src/diff.c:999 src/diff3.c:514 src/sdiff.c:211 +#: src/cmp.c:190 src/diff.c:1059 src/diff3.c:512 src/sdiff.c:210 msgid "" "Mandatory arguments to long options are mandatory for short options too.\n" msgstr "" -#: src/cmp.c:192 +#: src/cmp.c:196 msgid "" "SKIP values may be followed by the following multiplicative suffixes:\n" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" @@ -599,268 +600,268 @@ msgstr "" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" "GB 1,000,000,000, G 1,073,741,824, srl. do T, P, E, Z, Y." -#: src/cmp.c:195 +#: src/cmp.c:199 #, fuzzy msgid "If a FILE is '-' or missing, read standard input." msgstr "Mura bhfuil COMHAD ann, nó más `-' é, léigh ón ionchur caighdeánach." -#: src/cmp.c:196 src/diff.c:987 src/sdiff.c:221 +#: src/cmp.c:200 src/diff.c:1047 src/sdiff.c:220 msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble." msgstr "Stádas scortha: 0 más ionann iad, 1 más difriúil, 2 má tá fadhb ann." -#: src/cmp.c:243 +#: src/cmp.c:247 #, fuzzy, c-format msgid "invalid --bytes value '%s'" msgstr "luach neamhbhailí --bytes `%s'" -#: src/cmp.c:269 src/diff.c:797 src/diff3.c:361 src/sdiff.c:567 +#: src/cmp.c:273 src/diff.c:857 src/diff3.c:368 src/sdiff.c:564 #, fuzzy, c-format msgid "missing operand after '%s'" msgstr "ní foláir argóint i ndiaidh `%s'" -#: src/cmp.c:281 src/diff.c:799 src/diff3.c:363 src/sdiff.c:569 +#: src/cmp.c:285 src/diff.c:859 src/diff3.c:370 src/sdiff.c:566 #, fuzzy, c-format msgid "extra operand '%s'" msgstr "oibreann breise `%s'" -#: src/cmp.c:507 +#: src/cmp.c:521 #, c-format msgid "%s %s differ: byte %s, line %s\n" msgstr "%s %s difriúil: beart %s, líne %s\n" -#: src/cmp.c:523 +#: src/cmp.c:537 #, c-format msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n" msgstr "%s %s difriúil: beart %s, líne %s = %3o %s %3o %s\n" -#: src/cmp.c:580 +#: src/cmp.c:594 #, fuzzy, c-format msgid "cmp: EOF on %s which is empty\n" msgstr "cmp: EOF ar %s\n" -#: src/cmp.c:594 +#: src/cmp.c:608 #, fuzzy, c-format msgid "cmp: EOF on %s after byte %s, line %s\n" msgstr "%s %s difriúil: beart %s, líne %s\n" -#: src/cmp.c:595 +#: src/cmp.c:609 #, fuzzy, c-format msgid "cmp: EOF on %s after byte %s, in line %s\n" msgstr "%s %s difriúil: beart %s, líne %s\n" -#: src/cmp.c:601 +#: src/cmp.c:615 #, fuzzy, c-format msgid "cmp: EOF on %s after byte %s\n" msgstr "cmp: EOF ar %s\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:51 +#: src/diff.c:50 msgid "Paul Eggert" msgstr "" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:52 +#: src/diff.c:51 msgid "Mike Haertel" msgstr "" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:53 +#: src/diff.c:52 msgid "David Hayes" msgstr "" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:54 +#: src/diff.c:53 msgid "Richard Stallman" msgstr "" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:55 +#: src/diff.c:54 msgid "Len Tower" msgstr "" -#: src/diff.c:355 +#: src/diff.c:365 #, fuzzy, c-format msgid "invalid context length '%s'" msgstr "Fad neamhbhailí comhthéacs `%s'" -#: src/diff.c:438 +#: src/diff.c:487 #, c-format msgid "pagination not supported on this host" msgstr "Ní thacaítear leis an uimhriú leathanach ar an óstríomhaire seo" -#: src/diff.c:453 src/diff3.c:341 +#: src/diff.c:502 src/diff3.c:348 #, c-format msgid "too many file label options" msgstr "an iomarca argóintí do lipéid chomhaid" -#: src/diff.c:530 +#: src/diff.c:579 #, fuzzy, c-format msgid "invalid width '%s'" msgstr "leithead neamhbhailí `%s'" -#: src/diff.c:534 +#: src/diff.c:583 msgid "conflicting width options" msgstr "roghanna leithid contrártha" -#: src/diff.c:559 +#: src/diff.c:608 #, fuzzy, c-format msgid "invalid horizon length '%s'" msgstr "fad léaslíne neamhbhailí `%s'" -#: src/diff.c:615 +#: src/diff.c:664 #, fuzzy, c-format msgid "invalid tabsize '%s'" msgstr "tá an mhéid tháib `%s' neamhbhailí" -#: src/diff.c:619 +#: src/diff.c:668 msgid "conflicting tabsize options" msgstr "Roghanna tábmhéid contrártha" -#: src/diff.c:774 +#: src/diff.c:834 msgid "--from-file and --to-file both specified" msgstr "tugadh --from-file agus --to-file lena chéile" -#: src/diff.c:893 +#: src/diff.c:953 #, fuzzy msgid " --normal output a normal diff (the default)" msgstr "--normal Aschuir diff coitianta." -#: src/diff.c:894 +#: src/diff.c:954 #, fuzzy msgid "-q, --brief report only when files differ" msgstr "-q --brief Ná taispeáin ach difriúil nó nach ea." -#: src/diff.c:895 +#: src/diff.c:955 #, fuzzy msgid "-s, --report-identical-files report when two files are the same" msgstr "" "-s --report-identical-files Tuairiscigh nuair atá dhá chomhad comhionanna." -#: src/diff.c:896 +#: src/diff.c:956 msgid "" "-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context" msgstr "" -#: src/diff.c:897 +#: src/diff.c:957 #, fuzzy msgid "" "-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context" msgstr "" "-w UIMH --width=UIMH UIMH colún priontála ar a mhéad (réamhshocrú=130)." -#: src/diff.c:898 +#: src/diff.c:958 #, fuzzy msgid "-e, --ed output an ed script" msgstr "-e --ed Aschuir script `ed'." -#: src/diff.c:899 +#: src/diff.c:959 #, fuzzy msgid "-n, --rcs output an RCS format diff" msgstr "-n --rcs Aschuir diff i gcruth RCS." -#: src/diff.c:900 +#: src/diff.c:960 msgid "-y, --side-by-side output in two columns" msgstr "" -#: src/diff.c:901 +#: src/diff.c:961 #, fuzzy msgid "" "-W, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-w UIMH --width=UIMH UIMH colún priontála ar a mhéad (réamhshocrú=130)." -#: src/diff.c:902 +#: src/diff.c:962 #, fuzzy msgid "" " --left-column output only the left column of common lines" msgstr "-l --left-column Ná taispeáin an colún ar dheis más ionann iad." -#: src/diff.c:903 +#: src/diff.c:963 #, fuzzy msgid " --suppress-common-lines do not output common lines" msgstr "-s --suppress-common-lines Ná taispeáin línte atá i bpáirt acu." -#: src/diff.c:905 +#: src/diff.c:965 msgid "-p, --show-c-function show which C function each change is in" msgstr "" -#: src/diff.c:906 +#: src/diff.c:966 msgid "-F, --show-function-line=RE show the most recent line matching RE" msgstr "" -#: src/diff.c:907 +#: src/diff.c:967 msgid "" " --label LABEL use LABEL instead of file name and timestamp\n" " (can be repeated)" msgstr "" -#: src/diff.c:910 +#: src/diff.c:970 #, fuzzy msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "-t --expand-tabs leathnaigh táib go spásanna san aschur." -#: src/diff.c:911 +#: src/diff.c:971 #, fuzzy msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T --initial-tab Ailínigh táib trí tháb a chur in ionad spás tosaigh." -#: src/diff.c:912 +#: src/diff.c:972 #, fuzzy msgid "" " --tabsize=NUM tab stops every NUM (default 8) print columns" msgstr "--tabsize=UIMH Tábstop gach UIMH colún (réamhshocrú=8)." -#: src/diff.c:913 +#: src/diff.c:973 msgid "" " --suppress-blank-empty suppress space or tab before empty output lines" msgstr "" -#: src/diff.c:914 +#: src/diff.c:974 #, fuzzy msgid "-l, --paginate pass output through 'pr' to paginate it" msgstr "-l --paginate uimhrigh leathanaigh le `pr'." -#: src/diff.c:916 +#: src/diff.c:976 #, fuzzy msgid "" "-r, --recursive recursively compare any subdirectories found" msgstr "-r --recursive Cuir fochomhadlanna i gcomparáid go hathchúrsach." -#: src/diff.c:917 +#: src/diff.c:977 msgid " --no-dereference don't follow symbolic links" msgstr "" -#: src/diff.c:918 +#: src/diff.c:978 #, fuzzy msgid "-N, --new-file treat absent files as empty" msgstr "-N --new-file Caith le comhad ar iarraidh mar chomhad folamh." -#: src/diff.c:919 +#: src/diff.c:979 #, fuzzy msgid " --unidirectional-new-file treat absent first files as empty" msgstr "" "--unidirectional-new-file Más ar iarraidh, caith leis an chéad chomhad\n" " mar chomhad folamh." -#: src/diff.c:920 +#: src/diff.c:980 #, fuzzy msgid " --ignore-file-name-case ignore case when comparing file names" msgstr "--ignore-file-name-case Ná bí cásíogair le hainmneacha comhaid." -#: src/diff.c:921 +#: src/diff.c:981 #, fuzzy msgid " --no-ignore-file-name-case consider case when comparing file names" msgstr "" "--no-ignore-file-name-case Bí cásíogair maidir le hainmneacha comhaid." -#: src/diff.c:922 +#: src/diff.c:982 #, fuzzy msgid "-x, --exclude=PAT exclude files that match PAT" msgstr "" "-X SLONN --exclude=SLONN Fág comhaid as má tá siad comhoiriúnacha le SLONN." -#: src/diff.c:923 +#: src/diff.c:983 #, fuzzy msgid "" "-X, --exclude-from=FILE exclude files that match any pattern in FILE" @@ -869,7 +870,7 @@ msgstr "" "haon\n" " slonn ionadaíochta as an CHOMHAD." -#: src/diff.c:924 +#: src/diff.c:984 #, fuzzy msgid "" "-S, --starting-file=FILE start with FILE when comparing directories" @@ -877,7 +878,7 @@ msgstr "" "-S COMHAD --starting-file=COMHAD Tosaigh le COMHAD agus comhadlanna á " "gcóimheas." -#: src/diff.c:925 +#: src/diff.c:985 #, fuzzy msgid "" " --from-file=FILE1 compare FILE1 to all operands;\n" @@ -885,7 +886,7 @@ msgid "" msgstr "" "--from-file=COMHAD Cuir COMHAD (nó comhadlann) i gcomparáid le gach oibreann." -#: src/diff.c:927 +#: src/diff.c:987 #, fuzzy msgid "" " --to-file=FILE2 compare all operands to FILE2;\n" @@ -893,41 +894,41 @@ msgid "" msgstr "" "--to-file=COMHAD Cuir gach oibreann i gcomparáid le COMHAD (nó comhadlann)." -#: src/diff.c:930 +#: src/diff.c:990 #, fuzzy msgid "" "-i, --ignore-case ignore case differences in file contents" msgstr "-i --ignore-case Ná bí cásíogair le hinneachar na gcomhad." -#: src/diff.c:931 +#: src/diff.c:991 #, fuzzy msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E --ignore-tab-expansion Déan neamhshuim ar athruithe ó leathnú na dtáib." -#: src/diff.c:932 +#: src/diff.c:992 #, fuzzy msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "-w --ignore-all-space Déan neamhshuim ar spás bán go hiomlán." -#: src/diff.c:933 +#: src/diff.c:993 #, fuzzy msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "-b --ignore-space-change Déan neamhshuim ar mhéid an spáis bán." -#: src/diff.c:934 +#: src/diff.c:994 #, fuzzy msgid "-w, --ignore-all-space ignore all white space" msgstr "-w --ignore-all-space Déan neamhshuim ar spás bán go hiomlán." -#: src/diff.c:935 +#: src/diff.c:995 #, fuzzy msgid "" "-B, --ignore-blank-lines ignore changes where lines are all blank" msgstr "-B --ignore-blank-lines Déan neamhshuim ar línte folmha." -#: src/diff.c:936 +#: src/diff.c:996 #, fuzzy msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE" msgstr "" @@ -935,23 +936,23 @@ msgstr "" "comhoiriúnach\n" " leis an slonn SI." -#: src/diff.c:938 +#: src/diff.c:998 #, fuzzy msgid "-a, --text treat all files as text" msgstr "-a --text Caith le gach comhad mar théacschomhad." -#: src/diff.c:939 +#: src/diff.c:999 #, fuzzy msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" "--strip-trailing-cr Dealaigh aisfhilleadh carráiste ó gach líne ionchurtha." -#: src/diff.c:941 +#: src/diff.c:1001 #, fuzzy msgid " --binary read and write data in binary mode" msgstr "--binary Léigh agus scríobh sonraí sa mhód dénártha." -#: src/diff.c:944 +#: src/diff.c:1004 #, fuzzy msgid "" "-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs" @@ -959,35 +960,35 @@ msgstr "" "-D AINM --ifdef=AINM Taispeáin comhad cumaiscthe chun na diff-aí\n" " `#ifdef AINM' a léiriú" -#: src/diff.c:945 +#: src/diff.c:1005 #, fuzzy msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT" msgstr "" "--GCINL-group-format=GFMD Taispeáin grúpaí GCINL ionchuir de réir GFMD." -#: src/diff.c:946 +#: src/diff.c:1006 #, fuzzy msgid " --line-format=LFMT format all input lines with LFMT" msgstr "--line-format=LFMD Taispeáin gach líne ionchuir de réir LFMD." -#: src/diff.c:947 +#: src/diff.c:1007 #, fuzzy msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT" msgstr "" "--LCINL-line-format=LFMD Taispeáin línte LCINL ionchuir de réir LFMD." -#: src/diff.c:948 +#: src/diff.c:1008 msgid "" " These format options provide fine-grained control over the output\n" " of diff, generalizing -D/--ifdef." msgstr "" -#: src/diff.c:950 +#: src/diff.c:1010 #, fuzzy msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'." msgstr " LCINL = `old', `new', nó `unchanged'. GCINL = LCINL nó `changed'." -#: src/diff.c:951 +#: src/diff.c:1011 #, fuzzy msgid "" " GFMT (only) may contain:\n" @@ -1015,7 +1016,7 @@ msgstr "" " E F-1\n" " M L+1" -#: src/diff.c:963 +#: src/diff.c:1023 #, fuzzy msgid "" " LFMT (only) may contain:\n" @@ -1028,7 +1029,7 @@ msgstr "" " %l ábhar na líne, gan aon líne nua\n" " %[-][LEITHEAD][.[SONRÚ]]{doxX}n sonrú do líne-uimhir mar C `printf'" -#: src/diff.c:967 +#: src/diff.c:1027 #, fuzzy msgid "" " Both GFMT and LFMT may contain:\n" @@ -1042,151 +1043,151 @@ msgstr "" " %c'C' an carachtar litriúil C\n" " %c'\\OOO' an carachtar le cód ochtnártha OOO" -#: src/diff.c:973 +#: src/diff.c:1033 #, fuzzy msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "-d --minimal Obair go crua le haghaidh níos lú athruithe." -#: src/diff.c:974 +#: src/diff.c:1034 #, fuzzy msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix" msgstr "--horizon-lines=UIMH Coinnigh UIMH líne den réimír/iarmhír choiteann." -#: src/diff.c:975 +#: src/diff.c:1035 #, fuzzy msgid "" " --speed-large-files assume large files and many scattered small changes" msgstr "" "-H --speed-large-files Comhaid móra agus go leor mionathruithe forleata." -#: src/diff.c:976 +#: src/diff.c:1036 msgid "" " --color[=WHEN] color output; WHEN is 'never', 'always', or " "'auto';\n" " plain --color means --color='auto'" msgstr "" -#: src/diff.c:978 +#: src/diff.c:1038 msgid "" " --palette=PALETTE the colors to use when --color is active; PALETTE " "is\n" " a colon-separated list of terminfo capabilities" msgstr "" -#: src/diff.c:981 +#: src/diff.c:1041 msgid " --help display this help and exit" msgstr "" -#: src/diff.c:982 +#: src/diff.c:1042 #, fuzzy msgid "-v, --version output version information and exit" msgstr "-v --version Taispeáin eolas faoin leagan." -#: src/diff.c:984 +#: src/diff.c:1044 #, fuzzy msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'." msgstr "" "COMHAID = `COMHAD1 COMHAD2' nó `COMHADLANN1 COMHADLANN2' nó `COMHADLANN " "COMHAD...' nó `COMHAD... COMHADLANN'." -#: src/diff.c:985 +#: src/diff.c:1045 #, fuzzy msgid "" "If --from-file or --to-file is given, there are no restrictions on FILE(s)." msgstr "" "Má tá --from-file nó --to-file tugtha, níl a leithéid de shrian ar COMHAID." -#: src/diff.c:986 src/diff3.c:533 src/sdiff.c:220 +#: src/diff.c:1046 src/diff3.c:531 src/sdiff.c:219 #, fuzzy msgid "If a FILE is '-', read standard input." msgstr "Más '-' é an COMHAD, léigh ón ionchur caighdeánach." -#: src/diff.c:996 +#: src/diff.c:1056 #, c-format msgid "Usage: %s [OPTION]... FILES\n" msgstr "Úsáid: %s [ROGHA]... COMHAID\n" -#: src/diff.c:997 +#: src/diff.c:1057 #, fuzzy msgid "Compare FILES line by line." msgstr "Déan comparáid idir na comhaid, líne ar líne." -#: src/diff.c:1034 +#: src/diff.c:1094 #, fuzzy, c-format msgid "conflicting %s option value '%s'" msgstr "luach contrártha don rogha %s: `%s'" -#: src/diff.c:1047 +#: src/diff.c:1107 #, c-format msgid "conflicting output style options" msgstr "roghanna contrártha le haghaidh na stíle aschuir" -#: src/diff.c:1063 +#: src/diff.c:1123 #, fuzzy, c-format msgid "invalid color '%s'" msgstr "Fad neamhbhailí comhthéacs `%s'" -#: src/diff.c:1119 src/diff.c:1329 +#: src/diff.c:1197 src/diff.c:1401 #, c-format msgid "Only in %s: %s\n" msgstr "I %s amháin: %s\n" -#: src/diff.c:1253 +#: src/diff.c:1325 #, fuzzy msgid "cannot compare '-' to a directory" msgstr "ní féidir `-' a chur i gcomparáid le comhadlann" -#: src/diff.c:1288 +#: src/diff.c:1360 msgid "-D option not supported with directories" msgstr "Níl an rogha -D ar fáil do chomhadlanna" -#: src/diff.c:1297 +#: src/diff.c:1369 #, c-format msgid "Common subdirectories: %s and %s\n" msgstr "Fochomhadlanna i gcoitianta: %s agus %s\n" -#: src/diff.c:1339 src/diff.c:1389 +#: src/diff.c:1411 src/diff.c:1461 #, c-format msgid "File %s is a %s while file %s is a %s\n" msgstr "Tá comhad %s ina %s ach tá comhad %s ina %s\n" -#: src/diff.c:1375 +#: src/diff.c:1447 #, fuzzy, c-format msgid "Symbolic links %s and %s differ\n" msgstr "Tá difríocht idir na comhaid %s agus %s\n" -#: src/diff.c:1462 +#: src/diff.c:1534 #, c-format msgid "Files %s and %s are identical\n" msgstr "Is comhionann iad na comhaid %s agus %s\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff3.c:43 +#: src/diff3.c:51 msgid "Randy Smith" msgstr "" -#: src/diff3.c:356 +#: src/diff3.c:363 #, c-format msgid "incompatible options" msgstr "roghanna neamh-chomhoiriúnacha" -#: src/diff3.c:396 +#: src/diff3.c:403 #, fuzzy msgid "'-' specified for more than one input file" msgstr "bhí `-' tugtha le haghaidh níos mó ná inchomhad amháin" -#: src/diff3.c:447 src/diff3.c:1295 src/diff3.c:1698 src/diff3.c:1753 -#: src/sdiff.c:308 src/sdiff.c:846 src/sdiff.c:857 +#: src/diff3.c:445 src/diff3.c:1284 src/diff3.c:1683 src/diff3.c:1738 +#: src/sdiff.c:306 src/sdiff.c:843 src/sdiff.c:854 msgid "read failed" msgstr "theip ar léamh" -#: src/diff3.c:480 +#: src/diff3.c:478 #, fuzzy msgid "-A, --show-all output all changes, bracketing conflicts" msgstr "" "-A --show-all Taispeáin gach athrú agus cuir coinbhleachtaí idir lúibíní." -#: src/diff3.c:482 +#: src/diff3.c:480 #, fuzzy msgid "" "-e, --ed output ed script incorporating changes\n" @@ -1195,90 +1196,90 @@ msgstr "" "-e --ed Scríobh i MOCHOMHAD na hathruithe neamhchumaiscthe ó SEANCHOMHAD " "go DOCHOMHAD." -#: src/diff3.c:484 +#: src/diff3.c:482 #, fuzzy msgid "-E, --show-overlap like -e, but bracket conflicts" msgstr "" "-E --show-overlap Taispeáin na hathruithe neamhchumaiscthe agus cuir " "coinbhleachtaí idir lúibíní." -#: src/diff3.c:485 +#: src/diff3.c:483 #, fuzzy msgid "" "-3, --easy-only like -e, but incorporate only nonoverlapping " "changes" msgstr "-3 --easy-only Taispeáin athruithe neamhchumaiscthe forluiteacha." -#: src/diff3.c:486 +#: src/diff3.c:484 #, fuzzy msgid "" "-x, --overlap-only like -e, but incorporate only overlapping changes" msgstr "-x --overlap-only Taispeáin na hathruithe forluiteacha." -#: src/diff3.c:487 +#: src/diff3.c:485 msgid "-X like -x, but bracket conflicts" msgstr "" -#: src/diff3.c:488 +#: src/diff3.c:486 #, fuzzy msgid "-i append 'w' and 'q' commands to ed scripts" msgstr "-i Cuir na horduithe `w' agus `q' le scripteanna `ed'." -#: src/diff3.c:490 +#: src/diff3.c:488 msgid "" "-m, --merge output actual merged file, according to\n" " -A if no other options are given" msgstr "" -#: src/diff3.c:493 +#: src/diff3.c:491 #, fuzzy msgid "-a, --text treat all files as text" msgstr "-a --text Caith le gach comhad mar théacschomhad." -#: src/diff3.c:494 +#: src/diff3.c:492 #, fuzzy msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" "--strip-trailing-cr Dealaigh aisfhilleadh carráiste ó gach líne ionchurtha." -#: src/diff3.c:495 +#: src/diff3.c:493 #, fuzzy msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T --initial-tab Ailínigh táib trí tháb a chur in ionad spás tosaigh." -#: src/diff3.c:496 +#: src/diff3.c:494 #, fuzzy msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr "" "--diff-program=CLÁR Bain úsáid as an CLÁR chun comhaid a chur i " "gcomparáid." -#: src/diff3.c:497 +#: src/diff3.c:495 msgid "" "-L, --label=LABEL use LABEL instead of file name\n" " (can be repeated up to three times)" msgstr "" -#: src/diff3.c:500 +#: src/diff3.c:498 msgid " --help display this help and exit" msgstr "" -#: src/diff3.c:501 +#: src/diff3.c:499 #, fuzzy msgid "-v, --version output version information and exit" msgstr "-v --version Taispeáin eolas faoin leagan." -#: src/diff3.c:510 +#: src/diff3.c:508 #, c-format msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n" msgstr "Úsáid: %s [ROGHA]... MOCHOMHAD SEANCHOMHAD DOCHOMHAD\n" -#: src/diff3.c:512 +#: src/diff3.c:510 msgid "Compare three files line by line." msgstr "Cuir trí chomhad i gcomparáid, líne ar líne." -#: src/diff3.c:522 +#: src/diff3.c:520 msgid "" "\n" "The default output format is a somewhat human-readable representation of\n" @@ -1292,56 +1293,56 @@ msgid "" "robust than using ed.\n" msgstr "" -#: src/diff3.c:534 +#: src/diff3.c:532 msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble." msgstr "Stádas scortha = 0 (rathúil), 1 (coinbhleachtaí), 2 (trioblóid)." -#: src/diff3.c:727 +#: src/diff3.c:725 msgid "internal error: screwup in format of diff blocks" msgstr "earráid inmheánach: formáid de na bloic diff trína chéile" -#: src/diff3.c:1022 +#: src/diff3.c:1015 #, c-format msgid "%s: diff failed: " msgstr "%s: theip ar diff: " -#: src/diff3.c:1044 +#: src/diff3.c:1037 msgid "internal error: invalid diff type in process_diff" msgstr "earráid inmheánach: cineál neamhbhailí diff san fheidhm process_diff" -#: src/diff3.c:1069 +#: src/diff3.c:1060 msgid "invalid diff format; invalid change separator" msgstr "formáid diff neamhbhailí; teorantóir neamhbhailí idir athruithe" -#: src/diff3.c:1305 +#: src/diff3.c:1294 msgid "invalid diff format; incomplete last line" msgstr "formáid neamhbhailí diff; líne deiridh neamhiomlán" -#: src/diff3.c:1329 src/sdiff.c:276 src/util.c:969 +#: src/diff3.c:1318 src/sdiff.c:274 src/util.c:1069 #, fuzzy, c-format msgid "subsidiary program '%s' could not be invoked" msgstr "níorbh fhéidir an fochlár `%s' a rith" -#: src/diff3.c:1354 +#: src/diff3.c:1343 msgid "invalid diff format; incorrect leading line chars" msgstr "formáid neamhbhailí diff; carachtair mhíchearta ag tosach na líne" -#: src/diff3.c:1427 +#: src/diff3.c:1416 msgid "internal error: invalid diff type passed to output" msgstr "" "earráid inmheánach: seachadadh cineál neamhbhailí diff go dtí an aschur" -#: src/diff3.c:1700 src/diff3.c:1757 +#: src/diff3.c:1685 src/diff3.c:1742 msgid "input file shrank" msgstr "crapadh an t-inchomhad" -#: src/dir.c:156 +#: src/dir.c:154 #, fuzzy, c-format msgid "cannot compare file names '%s' and '%s'" msgstr "" "ní féidir na hainmneacha comhaid `%s' agus `%s' a chur i gcomparáid le chéile" -#: src/dir.c:225 +#: src/dir.c:223 #, c-format msgid "%s: recursive directory loop" msgstr "" @@ -1351,7 +1352,7 @@ msgstr "" msgid "Thomas Lord" msgstr "" -#: src/sdiff.c:174 +#: src/sdiff.c:173 #, fuzzy msgid "" "-o, --output=FILE operate interactively, sending output to FILE" @@ -1359,40 +1360,40 @@ msgstr "" "-o COMHAD --output=COMHAD Mód idirghníomhach, ag scríobh an aschuir i " "gCOMHAD." -#: src/sdiff.c:176 +#: src/sdiff.c:175 #, fuzzy msgid "" "-i, --ignore-case consider upper- and lower-case to be the same" msgstr "-i --ignore-case Ná bí cásíogair." -#: src/sdiff.c:177 +#: src/sdiff.c:176 #, fuzzy msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E --ignore-tab-expansion Déan neamhshuim ar athruithe ó leathnú na dtáib." -#: src/sdiff.c:178 +#: src/sdiff.c:177 #, fuzzy msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "-w --ignore-all-space Déan neamhshuim ar spás bán go hiomlán." -#: src/sdiff.c:179 +#: src/sdiff.c:178 #, fuzzy msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "-b --ignore-space-change Déan neamhshuim ar mhéid an spáis bán." -#: src/sdiff.c:180 +#: src/sdiff.c:179 #, fuzzy msgid "-W, --ignore-all-space ignore all white space" msgstr "-W --ignore-all-space Déan neamhshuim ar spásanna bán go hiomlán." -#: src/sdiff.c:181 +#: src/sdiff.c:180 #, fuzzy msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank" msgstr "-B --ignore-blank-lines Déan neamhshuim ar línte folmha." -#: src/sdiff.c:182 +#: src/sdiff.c:181 #, fuzzy msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE" msgstr "" @@ -1400,93 +1401,93 @@ msgstr "" "comhoiriúnach\n" " leis an slonn SI." -#: src/sdiff.c:183 +#: src/sdiff.c:182 #, fuzzy msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" "--strip-trailing-cr Dealaigh aisfhilleadh carráiste ó gach líne ionchurtha." -#: src/sdiff.c:184 +#: src/sdiff.c:183 #, fuzzy msgid "-a, --text treat all files as text" msgstr "-a --text Caith le gach comhad mar théacschomhad." -#: src/sdiff.c:186 +#: src/sdiff.c:185 #, fuzzy msgid "" "-w, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-w UIMH --width=UIMH UIMH colún priontála ar a mhéad (réamhshocrú=130)." -#: src/sdiff.c:187 +#: src/sdiff.c:186 #, fuzzy msgid "" "-l, --left-column output only the left column of common lines" msgstr "-l --left-column Ná taispeáin an colún ar dheis más ionann iad." -#: src/sdiff.c:188 +#: src/sdiff.c:187 #, fuzzy msgid "-s, --suppress-common-lines do not output common lines" msgstr "-s --suppress-common-lines Ná taispeáin línte atá i bpáirt acu." -#: src/sdiff.c:190 +#: src/sdiff.c:189 #, fuzzy msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "-t --expand-tabs leathnaigh táib go spásanna san aschur." -#: src/sdiff.c:191 +#: src/sdiff.c:190 #, fuzzy msgid "" " --tabsize=NUM tab stops at every NUM (default 8) print columns" msgstr "--tabsize=UIMH Tábstop gach UIMH colún (réamhshocrú=8)." -#: src/sdiff.c:193 +#: src/sdiff.c:192 #, fuzzy msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "-d --minimal Obair go crua le haghaidh níos lú athruithe." -#: src/sdiff.c:194 +#: src/sdiff.c:193 #, fuzzy msgid "" "-H, --speed-large-files assume large files, many scattered small changes" msgstr "" "-H --speed-large-files Comhaid móra agus go leor mionathruithe forleata." -#: src/sdiff.c:195 +#: src/sdiff.c:194 #, fuzzy msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr "" "--diff-program=CLÁR Bain úsáid as an CLÁR chun comhaid a chur i " "gcomparáid." -#: src/sdiff.c:197 +#: src/sdiff.c:196 msgid " --help display this help and exit" msgstr "" -#: src/sdiff.c:198 +#: src/sdiff.c:197 #, fuzzy msgid "-v, --version output version information and exit" msgstr "-v --version Taispeáin eolas faoin leagan." -#: src/sdiff.c:207 +#: src/sdiff.c:206 #, c-format msgid "Usage: %s [OPTION]... FILE1 FILE2\n" msgstr "Úsáid: %s [ROGHA]... COMHAD1 COMHAD2\n" -#: src/sdiff.c:209 +#: src/sdiff.c:208 #, fuzzy msgid "Side-by-side merge of differences between FILE1 and FILE2." msgstr "Cumaisc difríochtaí idir na comhaid, taobh le taobh." -#: src/sdiff.c:330 +#: src/sdiff.c:328 msgid "cannot interactively merge standard input" msgstr "ní féidir an t-ionchur caighdeánach a chumasc go hidirghníomhach" -#: src/sdiff.c:597 +#: src/sdiff.c:594 msgid "both files to be compared are directories" msgstr "is comhadlanna iad na comhaid le cur i gcomparáid" -#: src/sdiff.c:820 +#: src/sdiff.c:817 #, fuzzy msgid "" "ed:\tEdit then use both versions, each decorated with a header.\n" @@ -1511,12 +1512,12 @@ msgstr "" "v:\tCuir comhlínte san áireamh go foclach.\n" "q:\tScoir.\n" -#: src/util.c:662 +#: src/util.c:755 #, fuzzy, c-format msgid "unrecognized prefix: %s" msgstr "%s: rogha anaithnid `--%s'\n" -#: src/util.c:692 +#: src/util.c:785 #, c-format msgid "unparsable value for --palette" msgstr "" diff --git a/po/gl.po b/po/gl.po index 4f92a38..f66b44e 100644 --- a/po/gl.po +++ b/po/gl.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: GNU diffutils 3.2\n" "Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n" -"POT-Creation-Date: 2021-08-01 18:56-0700\n" +"POT-Creation-Date: 2023-05-21 01:51-0700\n" "PO-Revision-Date: 2011-10-17 12:43+0100\n" "Last-Translator: Leandro Regueiro \n" "Language-Team: Galician \n" @@ -19,30 +19,30 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "X-Bugs: Report translation errors to the Language-Team address.\n" -#: lib/argmatch.c:132 +#: lib/argmatch.c:145 #, fuzzy, c-format msgid "invalid argument %s for %s" msgstr "o argumento «%s» de %s%s é incorrecto" -#: lib/argmatch.c:133 +#: lib/argmatch.c:146 #, c-format msgid "ambiguous argument %s for %s" msgstr "" -#: lib/argmatch.c:152 lib/argmatch.h:223 +#: lib/argmatch.c:165 lib/argmatch.h:242 #, fuzzy msgid "Valid arguments are:" msgstr "o argumento «%s» de %s%s é incorrecto" -#: lib/c-stack.c:187 +#: lib/c-stack.c:186 msgid "program error" msgstr "erro do programa" -#: lib/c-stack.c:188 +#: lib/c-stack.c:187 msgid "stack overflow" msgstr "desbordamento da pila" -#: lib/error.c:195 +#: lib/error.c:193 msgid "Unknown system error" msgstr "Produciuse un erro descoñecido do sistema" @@ -202,84 +202,84 @@ msgstr "%s: a opción require un argumento -- «%c»\n" #. If you don't know what to put here, please see #. #. and use glyphs suitable for your language. -#: lib/quotearg.c:355 +#: lib/quotearg.c:354 msgid "`" msgstr "«" -#: lib/quotearg.c:356 +#: lib/quotearg.c:355 msgid "'" msgstr "»" -#: lib/regcomp.c:135 +#: lib/regcomp.c:122 msgid "Success" msgstr "Correcto" -#: lib/regcomp.c:138 +#: lib/regcomp.c:125 msgid "No match" msgstr "Non hai coincidencias" -#: lib/regcomp.c:141 +#: lib/regcomp.c:128 msgid "Invalid regular expression" msgstr "Expresión regular incorrecta" -#: lib/regcomp.c:144 +#: lib/regcomp.c:131 msgid "Invalid collation character" msgstr "Carácter de ordenamento incorrecto" -#: lib/regcomp.c:147 +#: lib/regcomp.c:134 msgid "Invalid character class name" msgstr "Nome da clase de caracteres incorrecto" -#: lib/regcomp.c:150 +#: lib/regcomp.c:137 msgid "Trailing backslash" msgstr "Barra invertida ao final" -#: lib/regcomp.c:153 +#: lib/regcomp.c:140 msgid "Invalid back reference" msgstr "Referencia cara a atrás incorrecta" -#: lib/regcomp.c:156 +#: lib/regcomp.c:143 #, fuzzy msgid "Unmatched [, [^, [:, [., or [=" msgstr "[ ou [^ non emparellado" -#: lib/regcomp.c:159 +#: lib/regcomp.c:146 msgid "Unmatched ( or \\(" msgstr "( ou \\( non emparellado" -#: lib/regcomp.c:162 +#: lib/regcomp.c:149 msgid "Unmatched \\{" msgstr "\\{ non emparellado" -#: lib/regcomp.c:165 +#: lib/regcomp.c:152 msgid "Invalid content of \\{\\}" msgstr "O contido entre \\{\\} non é correcto" -#: lib/regcomp.c:168 +#: lib/regcomp.c:155 msgid "Invalid range end" msgstr "Final do rango incorrecto" -#: lib/regcomp.c:171 +#: lib/regcomp.c:158 msgid "Memory exhausted" msgstr "Memoria esgotada" -#: lib/regcomp.c:174 +#: lib/regcomp.c:161 msgid "Invalid preceding regular expression" msgstr "Expresión regular precedente incorrecta" -#: lib/regcomp.c:177 +#: lib/regcomp.c:164 msgid "Premature end of regular expression" msgstr "Final prematura da expresión regular" -#: lib/regcomp.c:180 +#: lib/regcomp.c:167 msgid "Regular expression too big" msgstr "Expresión regular demasiado grande" -#: lib/regcomp.c:183 +#: lib/regcomp.c:170 msgid "Unmatched ) or \\)" msgstr ") ou \\) non emparellado" -#: lib/regcomp.c:676 +#: lib/regcomp.c:650 msgid "No previous regular expression" msgstr "Non hai unha expresión regular anterior" @@ -479,17 +479,17 @@ msgstr "%s páxina web: <%s>\n" msgid "General help using GNU software: <%s>\n" msgstr "Axuda xeral ao usar software GNU: \n" -#: src/analyze.c:454 src/diff.c:1406 +#: src/analyze.c:455 src/diff.c:1478 #, c-format msgid "Files %s and %s differ\n" msgstr "Os ficheiros %s e %s son diferentes\n" -#: src/analyze.c:455 +#: src/analyze.c:456 #, c-format msgid "Binary files %s and %s differ\n" msgstr "Os ficheiros binarios %s e %s son diferentes\n" -#: src/analyze.c:706 src/diff3.c:1470 src/util.c:1254 +#: src/analyze.c:707 src/diff3.c:1457 src/util.c:1354 msgid "No newline at end of file" msgstr "Non hai un salto de liña na fin da liña" @@ -503,42 +503,43 @@ msgstr "Torbjorn Granlund" msgid "David MacKenzie" msgstr "David MacKenzie" -#: src/cmp.c:120 src/diff.c:879 src/diff3.c:467 src/sdiff.c:160 +#: src/cmp.c:124 src/diff.c:939 src/diff3.c:465 src/sdiff.c:159 #, fuzzy, c-format msgid "Try '%s --help' for more information." msgstr "Probe «%s --help» para obter máis información." -#: src/cmp.c:138 +#: src/cmp.c:142 #, fuzzy, c-format msgid "invalid --ignore-initial value '%s'" msgstr "valor de --ignore-initial «%s» non válido" -#: src/cmp.c:148 +#: src/cmp.c:152 #, c-format msgid "options -l and -s are incompatible" msgstr "as opcións -l e -s son incompatíbeis" -#: src/cmp.c:156 src/diff.c:887 src/diff3.c:474 src/sdiff.c:168 src/sdiff.c:316 -#: src/sdiff.c:323 src/sdiff.c:876 src/util.c:852 src/util.c:952 src/util.c:959 +#: src/cmp.c:160 src/diff.c:947 src/diff3.c:472 src/sdiff.c:167 src/sdiff.c:314 +#: src/sdiff.c:321 src/sdiff.c:873 src/util.c:952 src/util.c:1052 +#: src/util.c:1059 msgid "write failed" msgstr "fallou a escritura" -#: src/cmp.c:158 src/diff.c:889 src/diff.c:1471 src/diff3.c:476 src/sdiff.c:170 +#: src/cmp.c:162 src/diff.c:949 src/diff.c:1543 src/diff3.c:474 src/sdiff.c:169 msgid "standard output" msgstr "saída estándar" -#: src/cmp.c:162 +#: src/cmp.c:166 #, fuzzy msgid "-b, --print-bytes print differing bytes" msgstr "Axustar a resolución de impresión" -#: src/cmp.c:163 +#: src/cmp.c:167 #, fuzzy msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs" msgstr "" "-i N --ignore-initial=N Omitir os primeiros N bytes de entrada." -#: src/cmp.c:164 +#: src/cmp.c:168 #, fuzzy msgid "" "-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n" @@ -546,52 +547,52 @@ msgid "" msgstr "" " Omitir os primeiros N1 bytes de FICH1 e os primeiros N2 bytes de FICH2." -#: src/cmp.c:166 +#: src/cmp.c:170 #, fuzzy msgid "" "-l, --verbose output byte numbers and differing byte values" msgstr "-l --verbose Amosar os números e valores dos bytes que difiran." -#: src/cmp.c:167 +#: src/cmp.c:171 #, fuzzy msgid "-n, --bytes=LIMIT compare at most LIMIT bytes" msgstr "-n LÍMITE --bytes=LÍMITE Comparar como moito LÍMITE bytes." -#: src/cmp.c:168 +#: src/cmp.c:172 msgid "-s, --quiet, --silent suppress all normal output" msgstr "" -#: src/cmp.c:169 +#: src/cmp.c:173 msgid " --help display this help and exit" msgstr "" -#: src/cmp.c:170 +#: src/cmp.c:174 #, fuzzy msgid "-v, --version output version information and exit" msgstr "Mostrar información da versión e saír" -#: src/cmp.c:179 +#: src/cmp.c:183 #, c-format msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n" msgstr "Uso: %s [OPCIÓN]... FICH1 [FICH2 [N1 [N2]]]\n" -#: src/cmp.c:181 +#: src/cmp.c:185 msgid "Compare two files byte by byte." msgstr "Comparar dous ficheiros byte a byte." -#: src/cmp.c:183 +#: src/cmp.c:187 #, fuzzy msgid "" "The optional SKIP1 and SKIP2 specify the number of bytes to skip\n" "at the beginning of each file (zero by default)." msgstr "N1 e N2 son o número de bytes a omitir en cada ficheiro." -#: src/cmp.c:186 src/diff.c:999 src/diff3.c:514 src/sdiff.c:211 +#: src/cmp.c:190 src/diff.c:1059 src/diff3.c:512 src/sdiff.c:210 msgid "" "Mandatory arguments to long options are mandatory for short options too.\n" msgstr "" -#: src/cmp.c:192 +#: src/cmp.c:196 msgid "" "SKIP values may be followed by the following multiplicative suffixes:\n" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" @@ -601,196 +602,196 @@ msgstr "" "kB 1000, K 1024, MB 1.000.000, M 1.048.576,\n" "GB 1.000.000.000, G 1.073.741.824, e así para T, P, E, Z e Y." -#: src/cmp.c:195 +#: src/cmp.c:199 #, fuzzy msgid "If a FILE is '-' or missing, read standard input." msgstr "Se un FICHEIRO é «-» ou non se indica, lese da entrada estándar." -#: src/cmp.c:196 src/diff.c:987 src/sdiff.c:221 +#: src/cmp.c:200 src/diff.c:1047 src/sdiff.c:220 msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble." msgstr "" "O estado de saída é 0 se as entradas son iguais, 1 se son diferentes, 2 en " "caso de problema." -#: src/cmp.c:243 +#: src/cmp.c:247 #, fuzzy, c-format msgid "invalid --bytes value '%s'" msgstr "valor de --bytes «%s» non válido" -#: src/cmp.c:269 src/diff.c:797 src/diff3.c:361 src/sdiff.c:567 +#: src/cmp.c:273 src/diff.c:857 src/diff3.c:368 src/sdiff.c:564 #, fuzzy, c-format msgid "missing operand after '%s'" msgstr "falta un operando despois de «%s»" -#: src/cmp.c:281 src/diff.c:799 src/diff3.c:363 src/sdiff.c:569 +#: src/cmp.c:285 src/diff.c:859 src/diff3.c:370 src/sdiff.c:566 #, fuzzy, c-format msgid "extra operand '%s'" msgstr "operando «%s» sobrante" -#: src/cmp.c:507 +#: src/cmp.c:521 #, c-format msgid "%s %s differ: byte %s, line %s\n" msgstr "%s %s son diferentes: byte %s, liña %s\n" -#: src/cmp.c:523 +#: src/cmp.c:537 #, c-format msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n" msgstr "%s %s son diferentes: byte %s, liña %s é %3o %s %3o %s\n" -#: src/cmp.c:580 +#: src/cmp.c:594 #, fuzzy, c-format msgid "cmp: EOF on %s which is empty\n" msgstr "cmp: Fin de ficheiro en %s\n" -#: src/cmp.c:594 +#: src/cmp.c:608 #, fuzzy, c-format msgid "cmp: EOF on %s after byte %s, line %s\n" msgstr "%s %s son diferentes: byte %s, liña %s\n" -#: src/cmp.c:595 +#: src/cmp.c:609 #, fuzzy, c-format msgid "cmp: EOF on %s after byte %s, in line %s\n" msgstr "%s %s son diferentes: byte %s, liña %s\n" -#: src/cmp.c:601 +#: src/cmp.c:615 #, fuzzy, c-format msgid "cmp: EOF on %s after byte %s\n" msgstr "cmp: Fin de ficheiro en %s\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:51 +#: src/diff.c:50 msgid "Paul Eggert" msgstr "Paul Eggert" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:52 +#: src/diff.c:51 msgid "Mike Haertel" msgstr "Mike Haertel" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:53 +#: src/diff.c:52 msgid "David Hayes" msgstr "David Hayes" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:54 +#: src/diff.c:53 msgid "Richard Stallman" msgstr "Richard Stallman" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:55 +#: src/diff.c:54 msgid "Len Tower" msgstr "Len Tower" -#: src/diff.c:355 +#: src/diff.c:365 #, fuzzy, c-format msgid "invalid context length '%s'" msgstr "lonxitude do contexto «%s» non válida" -#: src/diff.c:438 +#: src/diff.c:487 #, c-format msgid "pagination not supported on this host" msgstr "a paxinación non está admitida nesta máquina" -#: src/diff.c:453 src/diff3.c:341 +#: src/diff.c:502 src/diff3.c:348 #, c-format msgid "too many file label options" msgstr "demasiadas opcións de etiquetas de ficheiro" -#: src/diff.c:530 +#: src/diff.c:579 #, fuzzy, c-format msgid "invalid width '%s'" msgstr "largo «%s» non válido" -#: src/diff.c:534 +#: src/diff.c:583 msgid "conflicting width options" msgstr "opcións de largura conflitivas" -#: src/diff.c:559 +#: src/diff.c:608 #, fuzzy, c-format msgid "invalid horizon length '%s'" msgstr "lonxitude do horizonte «%s» non válida" -#: src/diff.c:615 +#: src/diff.c:664 #, fuzzy, c-format msgid "invalid tabsize '%s'" msgstr "tamaño de tabulación «%s» non válido" -#: src/diff.c:619 +#: src/diff.c:668 msgid "conflicting tabsize options" msgstr "opcións de tamaño de tabulación conflitivas" -#: src/diff.c:774 +#: src/diff.c:834 msgid "--from-file and --to-file both specified" msgstr "Especificáronse --from-file e --to-file ao mesmo tempo" -#: src/diff.c:893 +#: src/diff.c:953 #, fuzzy msgid " --normal output a normal diff (the default)" msgstr "Aparencia predefinida no modo normal" -#: src/diff.c:894 +#: src/diff.c:954 #, fuzzy msgid "-q, --brief report only when files differ" msgstr "-q --brief Producir unha saída só se os ficheiros teñen diferencias." -#: src/diff.c:895 +#: src/diff.c:955 #, fuzzy msgid "-s, --report-identical-files report when two files are the same" msgstr "" "-s --report-identical-files Informar cando dous ficheiros son o mesmo." -#: src/diff.c:896 +#: src/diff.c:956 msgid "" "-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context" msgstr "" -#: src/diff.c:897 +#: src/diff.c:957 #, fuzzy msgid "" "-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context" msgstr "-w NÚM --width=NÚM Amosar como moito NÚM columnas (130 por omisión)." -#: src/diff.c:898 +#: src/diff.c:958 #, fuzzy msgid "-e, --ed output an ed script" msgstr "Gardar a saída da consola de Script-Fu" -#: src/diff.c:899 +#: src/diff.c:959 #, fuzzy msgid "-n, --rcs output an RCS format diff" msgstr "-n --rcs Producir un diff en formato RCS." -#: src/diff.c:900 +#: src/diff.c:960 msgid "-y, --side-by-side output in two columns" msgstr "" -#: src/diff.c:901 +#: src/diff.c:961 #, fuzzy msgid "" "-W, --width=NUM output at most NUM (default 130) print columns" msgstr "-w NÚM --width=NÚM Amosar como moito NÚM columnas (130 por omisión)." -#: src/diff.c:902 +#: src/diff.c:962 #, fuzzy msgid "" " --left-column output only the left column of common lines" msgstr "-l --left-column Amosar só a columna da esquerda nas liñas comúns." -#: src/diff.c:903 +#: src/diff.c:963 #, fuzzy msgid " --suppress-common-lines do not output common lines" msgstr "-s --suppress-common-lines Non amosar as liñas comúns." -#: src/diff.c:905 +#: src/diff.c:965 msgid "-p, --show-c-function show which C function each change is in" msgstr "" -#: src/diff.c:906 +#: src/diff.c:966 msgid "-F, --show-function-line=RE show the most recent line matching RE" msgstr "" -#: src/diff.c:907 +#: src/diff.c:967 #, fuzzy msgid "" " --label LABEL use LABEL instead of file name and timestamp\n" @@ -799,25 +800,25 @@ msgstr "" "--from-file=FICH1 Comparar FICH1 con todos os operandos. Pode ser " "directorio." -#: src/diff.c:910 +#: src/diff.c:970 #, fuzzy msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "-t --expand-tabs Expandir as tabulacións a espazos na saída." -#: src/diff.c:911 +#: src/diff.c:971 #, fuzzy msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T --initial-tab Facer que as tabulacións queden aliñadas poñendo outra\n" " tabulación ao principio da liña." -#: src/diff.c:912 +#: src/diff.c:972 #, fuzzy msgid "" " --tabsize=NUM tab stops every NUM (default 8) print columns" msgstr "--tabsize=NÚM Tabulacións de NÚM columnas (8 por omisión)." -#: src/diff.c:913 +#: src/diff.c:973 #, fuzzy msgid "" " --suppress-blank-empty suppress space or tab before empty output lines" @@ -825,53 +826,53 @@ msgstr "" "--suppress-blank-empty Suprime espazos ou tabuladores antes dunha liña " "baleira." -#: src/diff.c:914 +#: src/diff.c:974 #, fuzzy msgid "-l, --paginate pass output through 'pr' to paginate it" msgstr "-l --paginate Pasar a saída por «pr» para paxinala." -#: src/diff.c:916 +#: src/diff.c:976 #, fuzzy msgid "" "-r, --recursive recursively compare any subdirectories found" msgstr "" "-r --recursive Comparar recursivamente os subdirectorios que se atopen." -#: src/diff.c:917 +#: src/diff.c:977 msgid " --no-dereference don't follow symbolic links" msgstr "" -#: src/diff.c:918 +#: src/diff.c:978 #, fuzzy msgid "-N, --new-file treat absent files as empty" msgstr "-N --new-file Tratar os ficheiros ausentes como baleiros." -#: src/diff.c:919 +#: src/diff.c:979 #, fuzzy msgid " --unidirectional-new-file treat absent first files as empty" msgstr "" "--unidirectional-new-file Tratar os ficheiros antigos ausentes como\r\n" "a baleiros." -#: src/diff.c:920 +#: src/diff.c:980 #, fuzzy msgid " --ignore-file-name-case ignore case when comparing file names" msgstr "" "--ignore-file-name-case Ignorar maiúsculas/minúsculas no nome do ficheiro." -#: src/diff.c:921 +#: src/diff.c:981 #, fuzzy msgid " --no-ignore-file-name-case consider case when comparing file names" msgstr "" "--no-ignore-file-name-case Ter en conta as maiúsculas/minúsculas\r\n" " ao comparar os nomes dos ficheiros." -#: src/diff.c:922 +#: src/diff.c:982 #, fuzzy msgid "-x, --exclude=PAT exclude files that match PAT" msgstr "-x MOD --exclude=MOD Excluír os ficheiros que coinciden co MODelo." -#: src/diff.c:923 +#: src/diff.c:983 #, fuzzy msgid "" "-X, --exclude-from=FILE exclude files that match any pattern in FILE" @@ -879,14 +880,14 @@ msgstr "" "-X FICH --exclude-from=FICH Excluír ficheiros que coinciden con algún\r\n" " modelo do FICHeiro." -#: src/diff.c:924 +#: src/diff.c:984 #, fuzzy msgid "" "-S, --starting-file=FILE start with FILE when comparing directories" msgstr "" "-S FICH --starting-file=FICH Comezar no FICHeiro ao comparar directorios." -#: src/diff.c:925 +#: src/diff.c:985 #, fuzzy msgid "" " --from-file=FILE1 compare FILE1 to all operands;\n" @@ -895,7 +896,7 @@ msgstr "" "--from-file=FICH1 Comparar FICH1 con todos os operandos. Pode ser " "directorio." -#: src/diff.c:927 +#: src/diff.c:987 #, fuzzy msgid "" " --to-file=FILE2 compare all operands to FILE2;\n" @@ -904,36 +905,36 @@ msgstr "" "--to-file=FICH2 Comparar todos os operandos con FICH2. Pode ser un " "directorio." -#: src/diff.c:930 +#: src/diff.c:990 #, fuzzy msgid "" "-i, --ignore-case ignore case differences in file contents" msgstr "" "-i --ignore-case Ignorar maiúsculas/minúsculas no contido do ficheiro." -#: src/diff.c:931 +#: src/diff.c:991 #, fuzzy msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E --ignore-tab-expansion Ignorar os cambios pola expansión de tabulacións." -#: src/diff.c:932 +#: src/diff.c:992 #, fuzzy msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "-w --ignore-all-space Ignorar todos os espazos en branco." -#: src/diff.c:933 +#: src/diff.c:993 #, fuzzy msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "-b --ignore-space-change Ignorar os cambios na cantidade de espazos." -#: src/diff.c:934 +#: src/diff.c:994 #, fuzzy msgid "-w, --ignore-all-space ignore all white space" msgstr "Todo visíbel (ignorar patrón)" -#: src/diff.c:935 +#: src/diff.c:995 #, fuzzy msgid "" "-B, --ignore-blank-lines ignore changes where lines are all blank" @@ -941,7 +942,7 @@ msgstr "" "-B --ignore-blank-lines Ignorar os cambios que teñan todas as liñas en " "branco" -#: src/diff.c:936 +#: src/diff.c:996 #, fuzzy msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE" msgstr "" @@ -949,67 +950,67 @@ msgstr "" "todas as liñas\r\n" " conteñan EXPR-REG." -#: src/diff.c:938 +#: src/diff.c:998 #, fuzzy msgid "-a, --text treat all files as text" msgstr "-a --text Tratar todos os ficheiros como texto" -#: src/diff.c:939 +#: src/diff.c:999 #, fuzzy msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" "--strip-trailing-cr Eliminar os retornos de carro á fin das liñas de " "entrada." -#: src/diff.c:941 +#: src/diff.c:1001 #, fuzzy msgid " --binary read and write data in binary mode" msgstr "--binary Ler e escribir datos en modo binario." -#: src/diff.c:944 +#: src/diff.c:1004 #, fuzzy msgid "" "-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs" msgstr "" "-D NOME -ifdef=NOME Amosar o ficheiro mesturado con diffs «#ifdef NOME»." -#: src/diff.c:945 +#: src/diff.c:1005 #, fuzzy msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT" msgstr "" -"--GTYPE-group-format=GFMT Similar, mais formatar os grupos de entrada GTYPE" -"\r\n" +"--GTYPE-group-format=GFMT Similar, mais formatar os grupos de entrada " +"GTYPE\r\n" " con GFMT." -#: src/diff.c:946 +#: src/diff.c:1006 #, fuzzy msgid " --line-format=LFMT format all input lines with LFMT" msgstr "" "--line-format=LFMT Similar, mais formatar todas as liñas de entrada con " "LFMT." -#: src/diff.c:947 +#: src/diff.c:1007 #, fuzzy msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT" msgstr "" -"--LTYPE-line-format=LFMT Similar, mais formatar as liñas de entrada LTYPE" -"\r\n" +"--LTYPE-line-format=LFMT Similar, mais formatar as liñas de entrada " +"LTYPE\r\n" " con LFMT." -#: src/diff.c:948 +#: src/diff.c:1008 msgid "" " These format options provide fine-grained control over the output\n" " of diff, generalizing -D/--ifdef." msgstr "" -#: src/diff.c:950 +#: src/diff.c:1010 #, fuzzy msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'." msgstr "" " LTYPE é «old» (antigo), «new» (novo) ou «unchanged» (sen cambios).\r\n" " GTYPE é LTYPE ou «changed» (con cambios)." -#: src/diff.c:951 +#: src/diff.c:1011 #, fuzzy msgid "" " GFMT (only) may contain:\n" @@ -1039,7 +1040,7 @@ msgstr "" " E F-1\n" " M L+1" -#: src/diff.c:963 +#: src/diff.c:1023 #, fuzzy msgid "" " LFMT (only) may contain:\n" @@ -1052,7 +1053,7 @@ msgstr "" " %l contido da liña, excluíndo os saltos de liña finais\n" " %[-][ANCHO][.[PREC]]{doxX}n especif. estilo printf do número da liña" -#: src/diff.c:967 +#: src/diff.c:1027 #, fuzzy msgid "" " Both GFMT and LFMT may contain:\n" @@ -1066,17 +1067,17 @@ msgstr "" " %c«C» o carácter C\n" " %c«\\OOO» o carácter de código octal OOO" -#: src/diff.c:973 +#: src/diff.c:1033 #, fuzzy msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "-d --minimal Procurar atopar o conxunto de cambios máis pequeno." -#: src/diff.c:974 +#: src/diff.c:1034 #, fuzzy msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix" msgstr "--horizon-lines=NUM Manter NUM liñas do prefixo e sufixo comúns." -#: src/diff.c:975 +#: src/diff.c:1035 #, fuzzy msgid "" " --speed-large-files assume large files and many scattered small changes" @@ -1084,133 +1085,133 @@ msgstr "" "-H --speed-large-files Asumir ficheiros longos e pequenos cambios " "dispersos." -#: src/diff.c:976 +#: src/diff.c:1036 msgid "" " --color[=WHEN] color output; WHEN is 'never', 'always', or " "'auto';\n" " plain --color means --color='auto'" msgstr "" -#: src/diff.c:978 +#: src/diff.c:1038 msgid "" " --palette=PALETTE the colors to use when --color is active; PALETTE " "is\n" " a colon-separated list of terminfo capabilities" msgstr "" -#: src/diff.c:981 +#: src/diff.c:1041 msgid " --help display this help and exit" msgstr "" -#: src/diff.c:982 +#: src/diff.c:1042 #, fuzzy msgid "-v, --version output version information and exit" msgstr "Mostrar información da versión e saír" -#: src/diff.c:984 +#: src/diff.c:1044 #, fuzzy msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'." msgstr "" "Os FICHEIROS son «FICH1 FICH2», «DIR1 DIR2», «DIR FICH...» ou «FICH... DIR»." -#: src/diff.c:985 +#: src/diff.c:1045 #, fuzzy msgid "" "If --from-file or --to-file is given, there are no restrictions on FILE(s)." msgstr "" "Se se indica --from-file ou --to-file, non hai restricións nos FICHEIROS." -#: src/diff.c:986 src/diff3.c:533 src/sdiff.c:220 +#: src/diff.c:1046 src/diff3.c:531 src/sdiff.c:219 #, fuzzy msgid "If a FILE is '-', read standard input." msgstr "Se un FICHEIRO é «-», lese da entrada estándar." -#: src/diff.c:996 +#: src/diff.c:1056 #, c-format msgid "Usage: %s [OPTION]... FILES\n" msgstr "Uso: %s [OPCIÓN]... FICHEIROS\n" -#: src/diff.c:997 +#: src/diff.c:1057 #, fuzzy msgid "Compare FILES line by line." msgstr "Comparar os ficheiros liña a liña." -#: src/diff.c:1034 +#: src/diff.c:1094 #, fuzzy, c-format msgid "conflicting %s option value '%s'" msgstr "valor «%1$s» da opción %2$s conflitivo" -#: src/diff.c:1047 +#: src/diff.c:1107 #, c-format msgid "conflicting output style options" msgstr "opcións de estilo da saída conflitivas" -#: src/diff.c:1063 +#: src/diff.c:1123 #, fuzzy, c-format msgid "invalid color '%s'" msgstr "lonxitude do contexto «%s» non válida" -#: src/diff.c:1119 src/diff.c:1329 +#: src/diff.c:1197 src/diff.c:1401 #, c-format msgid "Only in %s: %s\n" msgstr "Só en %s: %s\n" -#: src/diff.c:1253 +#: src/diff.c:1325 #, fuzzy msgid "cannot compare '-' to a directory" msgstr "non se pode comparar «-» cun directorio" -#: src/diff.c:1288 +#: src/diff.c:1360 msgid "-D option not supported with directories" msgstr "A opción -D non está admitida con directorios" -#: src/diff.c:1297 +#: src/diff.c:1369 #, c-format msgid "Common subdirectories: %s and %s\n" msgstr "Subdirectorios comúns: %s e %s\n" -#: src/diff.c:1339 src/diff.c:1389 +#: src/diff.c:1411 src/diff.c:1461 #, c-format msgid "File %s is a %s while file %s is a %s\n" msgstr "O ficheiro %s é un %s mentres que o ficheiro %s é un %s\n" -#: src/diff.c:1375 +#: src/diff.c:1447 #, fuzzy, c-format msgid "Symbolic links %s and %s differ\n" msgstr "Os ficheiros %s e %s son diferentes\n" -#: src/diff.c:1462 +#: src/diff.c:1534 #, c-format msgid "Files %s and %s are identical\n" msgstr "Os ficheiros %s e %s son idénticos\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff3.c:43 +#: src/diff3.c:51 msgid "Randy Smith" msgstr "Randy Smith" -#: src/diff3.c:356 +#: src/diff3.c:363 #, c-format msgid "incompatible options" msgstr "opcións incompatíbeis" -#: src/diff3.c:396 +#: src/diff3.c:403 #, fuzzy msgid "'-' specified for more than one input file" msgstr "Especificouse «-» para máis dun ficheiro de entrada" -#: src/diff3.c:447 src/diff3.c:1295 src/diff3.c:1698 src/diff3.c:1753 -#: src/sdiff.c:308 src/sdiff.c:846 src/sdiff.c:857 +#: src/diff3.c:445 src/diff3.c:1284 src/diff3.c:1683 src/diff3.c:1738 +#: src/sdiff.c:306 src/sdiff.c:843 src/sdiff.c:854 msgid "read failed" msgstr "fallou a lectura" -#: src/diff3.c:480 +#: src/diff3.c:478 #, fuzzy msgid "-A, --show-all output all changes, bracketing conflicts" msgstr "" "-a --show-all Amosar todos os cambios, cos conflitos entre parénteses." -#: src/diff3.c:482 +#: src/diff3.c:480 #, fuzzy msgid "" "-e, --ed output ed script incorporating changes\n" @@ -1218,91 +1219,91 @@ msgid "" msgstr "" "-e --ed Produce cambios sen mesturar de FICH-ANTIGO a TEU-FICH en MEU-FICH." -#: src/diff3.c:484 +#: src/diff3.c:482 #, fuzzy msgid "-E, --show-overlap like -e, but bracket conflicts" msgstr "" "-E --show-overlap Amosar cambios sen mesturar cos conflitos entre " "parénteses." -#: src/diff3.c:485 +#: src/diff3.c:483 #, fuzzy msgid "" "-3, --easy-only like -e, but incorporate only nonoverlapping " "changes" msgstr "-3 --easy-only Amosar cambios non sobrepostos e non mesturados." -#: src/diff3.c:486 +#: src/diff3.c:484 #, fuzzy msgid "" "-x, --overlap-only like -e, but incorporate only overlapping changes" msgstr "-x --overlap-only Amosar los cambios que se superpoñen." -#: src/diff3.c:487 +#: src/diff3.c:485 msgid "-X like -x, but bracket conflicts" msgstr "" -#: src/diff3.c:488 +#: src/diff3.c:486 #, fuzzy msgid "-i append 'w' and 'q' commands to ed scripts" msgstr "-i Engadir as ordes «w» e «q» aos scripts en ed." -#: src/diff3.c:490 +#: src/diff3.c:488 msgid "" "-m, --merge output actual merged file, according to\n" " -A if no other options are given" msgstr "" -#: src/diff3.c:493 +#: src/diff3.c:491 #, fuzzy msgid "-a, --text treat all files as text" msgstr "-a --text Tratar todos os ficheiros como texto" -#: src/diff3.c:494 +#: src/diff3.c:492 #, fuzzy msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" "--strip-trailing-cr Eliminar os retornos de carro á fin das liñas de " "entrada." -#: src/diff3.c:495 +#: src/diff3.c:493 #, fuzzy msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T --initial-tab Facer que as tabulacións queden aliñadas poñendo outra\n" " tabulación ao principio da liña." -#: src/diff3.c:496 +#: src/diff3.c:494 #, fuzzy msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr "" "--diff-program=PROGRAMA Empregar o PROGRAMA para comparar os ficheiros." -#: src/diff3.c:497 +#: src/diff3.c:495 msgid "" "-L, --label=LABEL use LABEL instead of file name\n" " (can be repeated up to three times)" msgstr "" -#: src/diff3.c:500 +#: src/diff3.c:498 msgid " --help display this help and exit" msgstr "" -#: src/diff3.c:501 +#: src/diff3.c:499 #, fuzzy msgid "-v, --version output version information and exit" msgstr "Mostrar información da versión e saír" -#: src/diff3.c:510 +#: src/diff3.c:508 #, c-format msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n" msgstr "Uso: %s [OPCIÓN]... MEU-FICH ANTIGO-FICH TEU-FICH\n" -#: src/diff3.c:512 +#: src/diff3.c:510 msgid "Compare three files line by line." msgstr "Comparar tres ficheiros liña a liña." -#: src/diff3.c:522 +#: src/diff3.c:520 msgid "" "\n" "The default output format is a somewhat human-readable representation of\n" @@ -1316,56 +1317,56 @@ msgid "" "robust than using ed.\n" msgstr "" -#: src/diff3.c:534 +#: src/diff3.c:532 msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble." msgstr "" "O estado de saída é 0 se é correcto, 1 se hai conflitos, 2 en caso de " "problema." -#: src/diff3.c:727 +#: src/diff3.c:725 msgid "internal error: screwup in format of diff blocks" msgstr "erro interno: fallo no formato dos bloques diff" -#: src/diff3.c:1022 +#: src/diff3.c:1015 #, c-format msgid "%s: diff failed: " msgstr "%s: diff fallou: " -#: src/diff3.c:1044 +#: src/diff3.c:1037 msgid "internal error: invalid diff type in process_diff" msgstr "erro interno: tipo de diff non válido en process_diff" -#: src/diff3.c:1069 +#: src/diff3.c:1060 msgid "invalid diff format; invalid change separator" msgstr "formato de diff non válido; separador de cambios non válido" -#: src/diff3.c:1305 +#: src/diff3.c:1294 msgid "invalid diff format; incomplete last line" msgstr "formato de diff non válido: última liña incompleta" -#: src/diff3.c:1329 src/sdiff.c:276 src/util.c:969 +#: src/diff3.c:1318 src/sdiff.c:274 src/util.c:1069 #, fuzzy, c-format msgid "subsidiary program '%s' could not be invoked" msgstr "non foi posíbel invocar o programa subsidiario «%s»" -#: src/diff3.c:1354 +#: src/diff3.c:1343 msgid "invalid diff format; incorrect leading line chars" msgstr "formato de diff non válido: caracteres a principio de liña incorrectos" -#: src/diff3.c:1427 +#: src/diff3.c:1416 msgid "internal error: invalid diff type passed to output" msgstr "erro interno_ tipo de diff non válido pasado á saída" -#: src/diff3.c:1700 src/diff3.c:1757 +#: src/diff3.c:1685 src/diff3.c:1742 msgid "input file shrank" msgstr "o ficheiro de entrada minguou" -#: src/dir.c:156 +#: src/dir.c:154 #, fuzzy, c-format msgid "cannot compare file names '%s' and '%s'" msgstr "non se poden comparar os ficheiros «%s» e «%s»" -#: src/dir.c:225 +#: src/dir.c:223 #, c-format msgid "%s: recursive directory loop" msgstr "%s: bucle de directorio recursivo" @@ -1375,7 +1376,7 @@ msgstr "%s: bucle de directorio recursivo" msgid "Thomas Lord" msgstr "Thomas Lord" -#: src/sdiff.c:174 +#: src/sdiff.c:173 #, fuzzy msgid "" "-o, --output=FILE operate interactively, sending output to FILE" @@ -1383,43 +1384,43 @@ msgstr "" "-o FICH --output=FICH Operar interactivamente, enviando a saída ao " "FICHeiro." -#: src/sdiff.c:176 +#: src/sdiff.c:175 #, fuzzy msgid "" "-i, --ignore-case consider upper- and lower-case to be the same" msgstr "" "-i --ignore-case Ignorar as diferencias entre maiúsculas e minúsculas." -#: src/sdiff.c:177 +#: src/sdiff.c:176 #, fuzzy msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E --ignore-tab-expansion Ignorar os cambios pola expansión de tabulacións." -#: src/sdiff.c:178 +#: src/sdiff.c:177 #, fuzzy msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "-w --ignore-all-space Ignorar todos os espazos en branco." -#: src/sdiff.c:179 +#: src/sdiff.c:178 #, fuzzy msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "-b --ignore-space-change Ignorar os cambios na cantidade de espazos." -#: src/sdiff.c:180 +#: src/sdiff.c:179 #, fuzzy msgid "-W, --ignore-all-space ignore all white space" msgstr "Todo visíbel (ignorar patrón)" -#: src/sdiff.c:181 +#: src/sdiff.c:180 #, fuzzy msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank" msgstr "" "-B --ignore-blank-lines Ignorar os cambios que teñan todas as liñas en " "branco" -#: src/sdiff.c:182 +#: src/sdiff.c:181 #, fuzzy msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE" msgstr "" @@ -1427,52 +1428,52 @@ msgstr "" "todas as liñas\r\n" " conteñan EXPR-REG." -#: src/sdiff.c:183 +#: src/sdiff.c:182 #, fuzzy msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" "--strip-trailing-cr Eliminar os retornos de carro á fin das liñas de " "entrada." -#: src/sdiff.c:184 +#: src/sdiff.c:183 #, fuzzy msgid "-a, --text treat all files as text" msgstr "-a --text Tratar todos os ficheiros como texto" -#: src/sdiff.c:186 +#: src/sdiff.c:185 #, fuzzy msgid "" "-w, --width=NUM output at most NUM (default 130) print columns" msgstr "-w NÚM --width=NÚM Amosar como moito NÚM columnas (130 por omisión)." -#: src/sdiff.c:187 +#: src/sdiff.c:186 #, fuzzy msgid "" "-l, --left-column output only the left column of common lines" msgstr "-l --left-column Amosar só a columna da esquerda nas liñas comúns." -#: src/sdiff.c:188 +#: src/sdiff.c:187 #, fuzzy msgid "-s, --suppress-common-lines do not output common lines" msgstr "-s --suppress-common-lines Non amosar as liñas comúns." -#: src/sdiff.c:190 +#: src/sdiff.c:189 #, fuzzy msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "-t --expand-tabs Expandir as tabulacións a espazos na saída." -#: src/sdiff.c:191 +#: src/sdiff.c:190 #, fuzzy msgid "" " --tabsize=NUM tab stops at every NUM (default 8) print columns" msgstr "--tabsize=NÚM Tabulacións de NÚM columnas (8 por omisión)." -#: src/sdiff.c:193 +#: src/sdiff.c:192 #, fuzzy msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "-d --minimal Procurar atopar o conxunto de cambios máis pequeno." -#: src/sdiff.c:194 +#: src/sdiff.c:193 #, fuzzy msgid "" "-H, --speed-large-files assume large files, many scattered small changes" @@ -1480,40 +1481,40 @@ msgstr "" "-H --speed-large-files Asumir ficheiros longos e pequenos cambios " "dispersos." -#: src/sdiff.c:195 +#: src/sdiff.c:194 #, fuzzy msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr "" "--diff-program=PROGRAMA Empregar o PROGRAMA para comparar os ficheiros." -#: src/sdiff.c:197 +#: src/sdiff.c:196 msgid " --help display this help and exit" msgstr "" -#: src/sdiff.c:198 +#: src/sdiff.c:197 #, fuzzy msgid "-v, --version output version information and exit" msgstr "Mostrar información da versión e saír" -#: src/sdiff.c:207 +#: src/sdiff.c:206 #, c-format msgid "Usage: %s [OPTION]... FILE1 FILE2\n" msgstr "Uso: %s [OPCIÓN]... FICH1 FICH2\n" -#: src/sdiff.c:209 +#: src/sdiff.c:208 #, fuzzy msgid "Side-by-side merge of differences between FILE1 and FILE2." msgstr "Mestura en dúas columnas das diferencias entre os ficheiros." -#: src/sdiff.c:330 +#: src/sdiff.c:328 msgid "cannot interactively merge standard input" msgstr "non se pode mesturar a entrada estándar interactivamente" -#: src/sdiff.c:597 +#: src/sdiff.c:594 msgid "both files to be compared are directories" msgstr "ámbolos dous ficheiros a ser comparados son directorios" -#: src/sdiff.c:820 +#: src/sdiff.c:817 msgid "" "ed:\tEdit then use both versions, each decorated with a header.\n" "eb:\tEdit then use both versions.\n" @@ -1537,12 +1538,12 @@ msgstr "" "v: Inclúe liñas comúns de xeito detallado.\n" "q: Saír.\n" -#: src/util.c:662 +#: src/util.c:755 #, fuzzy, c-format msgid "unrecognized prefix: %s" msgstr "%s: non se recoñece a opción «--%s»\n" -#: src/util.c:692 +#: src/util.c:785 #, c-format msgid "unparsable value for --palette" msgstr "" diff --git a/po/he.po b/po/he.po index e42c600..74d86cf 100644 --- a/po/he.po +++ b/po/he.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: diffutils 2.8.3\n" "Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n" -"POT-Creation-Date: 2021-08-01 18:56-0700\n" +"POT-Creation-Date: 2023-05-21 01:51-0700\n" "PO-Revision-Date: 2002-06-17 13:03+0300\n" "Last-Translator: Eli Zaretskii \n" "Language-Team: Hebrew \n" @@ -16,29 +16,29 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "X-Bugs: Report translation errors to the Language-Team address.\n" -#: lib/argmatch.c:132 +#: lib/argmatch.c:145 #, c-format msgid "invalid argument %s for %s" msgstr "" -#: lib/argmatch.c:133 +#: lib/argmatch.c:146 #, c-format msgid "ambiguous argument %s for %s" msgstr "" -#: lib/argmatch.c:152 lib/argmatch.h:223 +#: lib/argmatch.c:165 lib/argmatch.h:242 msgid "Valid arguments are:" msgstr "" -#: lib/c-stack.c:187 +#: lib/c-stack.c:186 msgid "program error" msgstr "úéðëúá äøåîç äì÷ú" -#: lib/c-stack.c:188 +#: lib/c-stack.c:187 msgid "stack overflow" msgstr "úéðñçî úùéìâ" -#: lib/error.c:195 +#: lib/error.c:193 msgid "Unknown system error" msgstr "ääåæî-éúìá äì÷ú" @@ -198,84 +198,84 @@ msgstr "%s: #. If you don't know what to put here, please see #. #. and use glyphs suitable for your language. -#: lib/quotearg.c:355 +#: lib/quotearg.c:354 msgid "`" msgstr "" -#: lib/quotearg.c:356 +#: lib/quotearg.c:355 msgid "'" msgstr "" -#: lib/regcomp.c:135 +#: lib/regcomp.c:122 msgid "Success" msgstr "äçìöä" -#: lib/regcomp.c:138 +#: lib/regcomp.c:125 msgid "No match" msgstr "äîéàúî úæåøçî äàöîð àì" -#: lib/regcomp.c:141 +#: lib/regcomp.c:128 msgid "Invalid regular expression" msgstr "éåâù éøìåâø éåèéá" -#: lib/regcomp.c:144 +#: lib/regcomp.c:131 msgid "Invalid collation character" msgstr "òåãé-éúìá øåãéñ åú" -#: lib/regcomp.c:147 +#: lib/regcomp.c:134 msgid "Invalid character class name" msgstr "íéåú úöåá÷ ìù øëåî-éúìá íù" -#: lib/regcomp.c:150 +#: lib/regcomp.c:137 msgid "Trailing backslash" msgstr "`\\' éøåçà ïñëåìá íééúñî éøìåâø éåèéá" -#: lib/regcomp.c:153 +#: lib/regcomp.c:140 msgid "Invalid back reference" msgstr "íãå÷ éåèéá-úúì äéåâù äééðôä" -#: lib/regcomp.c:156 +#: lib/regcomp.c:143 #, fuzzy msgid "Unmatched [, [^, [:, [., or [=" msgstr "âåæ-ïá åì ïéàù [^ åà [" -#: lib/regcomp.c:159 +#: lib/regcomp.c:146 msgid "Unmatched ( or \\(" msgstr "âåæ-ïá åì ïéàù \\( åà (" -#: lib/regcomp.c:162 +#: lib/regcomp.c:149 msgid "Unmatched \\{" msgstr "âåæ-ïá åì ïéàù \\{" -#: lib/regcomp.c:165 +#: lib/regcomp.c:152 msgid "Invalid content of \\{\\}" msgstr "\\{\\} êåúá éåâù äðáî" -#: lib/regcomp.c:168 +#: lib/regcomp.c:155 msgid "Invalid range end" msgstr "íéåú íåçú ìù äéåâù äøãâä" -#: lib/regcomp.c:171 +#: lib/regcomp.c:158 msgid "Memory exhausted" msgstr "ïåøëæä øîâð" -#: lib/regcomp.c:174 +#: lib/regcomp.c:161 msgid "Invalid preceding regular expression" msgstr "íéé÷ åðéà åà éåâù íãå÷ éøìåâø éåèéá" -#: lib/regcomp.c:177 +#: lib/regcomp.c:164 msgid "Premature end of regular expression" msgstr "éãî íã÷åî íééúñî éøìåâø éåèéá" -#: lib/regcomp.c:180 +#: lib/regcomp.c:167 msgid "Regular expression too big" msgstr "éãî áëøåî åà ìåãâ éøìåâø éåèéá" -#: lib/regcomp.c:183 +#: lib/regcomp.c:170 msgid "Unmatched ) or \\)" msgstr "âåæ-ïá åì ïéàù \\) åà )" -#: lib/regcomp.c:676 +#: lib/regcomp.c:650 msgid "No previous regular expression" msgstr "íãå÷ éøìåâø éåèéá ïéà" @@ -451,17 +451,17 @@ msgstr "" msgid "General help using GNU software: <%s>\n" msgstr "" -#: src/analyze.c:454 src/diff.c:1406 +#: src/analyze.c:455 src/diff.c:1478 #, c-format msgid "Files %s and %s differ\n" msgstr "äæî äæ íéðåù `%s'-å `%s' íéöá÷ä\n" -#: src/analyze.c:455 +#: src/analyze.c:456 #, c-format msgid "Binary files %s and %s differ\n" msgstr "äæî äæ íéðåù `%s'-å `%s' íééøðéá íéöá÷\n" -#: src/analyze.c:706 src/diff3.c:1470 src/util.c:1254 +#: src/analyze.c:707 src/diff3.c:1457 src/util.c:1354 msgid "No newline at end of file" msgstr "õáå÷ä óåñá äùãç-äøåù åú øñç" @@ -475,93 +475,94 @@ msgstr "" msgid "David MacKenzie" msgstr "" -#: src/cmp.c:120 src/diff.c:879 src/diff3.c:467 src/sdiff.c:160 +#: src/cmp.c:124 src/diff.c:939 src/diff3.c:465 src/sdiff.c:159 #, fuzzy, c-format msgid "Try '%s --help' for more information." msgstr ".øúåé áø òãéî úâöäì `%s --help' ùé÷äì äñð" -#: src/cmp.c:138 +#: src/cmp.c:142 #, fuzzy, c-format msgid "invalid --ignore-initial value '%s'" msgstr "--ignore-initial ïééôàî øåáò `%s' éåâù êøò" -#: src/cmp.c:148 +#: src/cmp.c:152 #, c-format msgid "options -l and -s are incompatible" msgstr "äæ úà äæ íéøúåñ -s-å -l íéðééôàîä" -#: src/cmp.c:156 src/diff.c:887 src/diff3.c:474 src/sdiff.c:168 src/sdiff.c:316 -#: src/sdiff.c:323 src/sdiff.c:876 src/util.c:852 src/util.c:952 src/util.c:959 +#: src/cmp.c:160 src/diff.c:947 src/diff3.c:472 src/sdiff.c:167 src/sdiff.c:314 +#: src/sdiff.c:321 src/sdiff.c:873 src/util.c:952 src/util.c:1052 +#: src/util.c:1059 msgid "write failed" msgstr "äáéúëá äì÷ú" -#: src/cmp.c:158 src/diff.c:889 src/diff.c:1471 src/diff3.c:476 src/sdiff.c:170 +#: src/cmp.c:162 src/diff.c:949 src/diff.c:1543 src/diff3.c:474 src/sdiff.c:169 msgid "standard output" msgstr "éð÷ú èìô õåøòì" -#: src/cmp.c:162 +#: src/cmp.c:166 #, fuzzy msgid "-b, --print-bytes print differing bytes" msgstr " .íéäæ íðéàù íéúá âöä -b --print-bytes" -#: src/cmp.c:163 +#: src/cmp.c:167 #, fuzzy msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs" msgstr " .èì÷ä ìù íéðåùàø íéúá N ìò âìã -i N --ignore-initial=N" -#: src/cmp.c:164 +#: src/cmp.c:168 #, fuzzy msgid "" "-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n" " first SKIP2 bytes of FILE2" msgstr ".éðùä õáå÷á íéúá N2 ìòå ïåùàøä õáå÷á íéúá N1 ìò âìã" -#: src/cmp.c:166 +#: src/cmp.c:170 #, fuzzy msgid "" "-l, --verbose output byte numbers and differing byte values" msgstr ".íéäæ íðéàù íéúáä ìë ìù ãå÷å éøåãéñ 'ñî âöä -l --verbose" -#: src/cmp.c:167 +#: src/cmp.c:171 #, fuzzy msgid "-n, --bytes=LIMIT compare at most LIMIT bytes" msgstr " .íéúá N øúåéä ìëì äååùä -n N --bytes=N" -#: src/cmp.c:168 +#: src/cmp.c:172 msgid "-s, --quiet, --silent suppress all normal output" msgstr "" -#: src/cmp.c:169 +#: src/cmp.c:173 msgid " --help display this help and exit" msgstr "" -#: src/cmp.c:170 +#: src/cmp.c:174 #, fuzzy msgid "-v, --version output version information and exit" msgstr " .úéðëúä úñøéâ úà âöä -v --version" -#: src/cmp.c:179 +#: src/cmp.c:183 #, c-format msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n" msgstr " %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]] :ùåîéù ïôåà\n" -#: src/cmp.c:181 +#: src/cmp.c:185 msgid "Compare two files byte by byte." msgstr ".úéáì úéá íéöá÷ éðù äååùä" -#: src/cmp.c:183 +#: src/cmp.c:187 #, fuzzy msgid "" "The optional SKIP1 and SKIP2 specify the number of bytes to skip\n" "at the beginning of each file (zero by default)." msgstr " .íéöá÷äî ãçà ìëá âìãì ùé íäéìò íéúáä éøôñî íä SKIP2-å SKIP1" -#: src/cmp.c:186 src/diff.c:999 src/diff3.c:514 src/sdiff.c:211 +#: src/cmp.c:190 src/diff.c:1059 src/diff3.c:512 src/sdiff.c:210 msgid "" "Mandatory arguments to long options are mandatory for short options too.\n" msgstr "" -#: src/cmp.c:192 +#: src/cmp.c:196 msgid "" "SKIP values may be followed by the following multiplicative suffixes:\n" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" @@ -571,278 +572,278 @@ msgstr "" " ,M 1,048,576, MB 1,000,000 ,K 1024 ,kB 1000,\n" " .T, P, E, Z, Y øåáò äàìä ïëå ,G 1,073,741,824 ,GB 1,000,000,000" -#: src/cmp.c:195 +#: src/cmp.c:199 #, fuzzy msgid "If a FILE is '-' or missing, read standard input." msgstr " .éð÷ú èì÷ õåøòî àø÷ ,ïééåöî åðéà åà `-' åðéä FILE íà" -#: src/cmp.c:196 src/diff.c:987 src/sdiff.c:221 +#: src/cmp.c:200 src/diff.c:1047 src/sdiff.c:220 msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble." msgstr "" -#: src/cmp.c:243 +#: src/cmp.c:247 #, fuzzy, c-format msgid "invalid --bytes value '%s'" msgstr "--bytes ïééôàî øåáò `%s' éåâù êøò" -#: src/cmp.c:269 src/diff.c:797 src/diff3.c:361 src/sdiff.c:567 +#: src/cmp.c:273 src/diff.c:857 src/diff3.c:368 src/sdiff.c:564 #, fuzzy, c-format msgid "missing operand after '%s'" msgstr "`%s' éøçà øñç èðîåâøà" -#: src/cmp.c:281 src/diff.c:799 src/diff3.c:363 src/sdiff.c:569 +#: src/cmp.c:285 src/diff.c:859 src/diff3.c:370 src/sdiff.c:566 #, fuzzy, c-format msgid "extra operand '%s'" msgstr "`%s' éøçà øúåéî èðîåâøà" -#: src/cmp.c:507 +#: src/cmp.c:521 #, c-format msgid "%s %s differ: byte %s, line %s\n" msgstr "%s-å %s íéöá÷ä ïéá %s úéá ,%s äøåùî ìçä éðåù\n" -#: src/cmp.c:523 +#: src/cmp.c:537 #, c-format msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n" msgstr "%s-å %s íéöá÷ä ïéá %s úéá ,%s äøåùî ìçä %3o %s %3o %s éðåù\n" -#: src/cmp.c:580 +#: src/cmp.c:594 #, fuzzy, c-format msgid "cmp: EOF on %s which is empty\n" msgstr "cmp: %s õáå÷ óåñ\n" -#: src/cmp.c:594 +#: src/cmp.c:608 #, fuzzy, c-format msgid "cmp: EOF on %s after byte %s, line %s\n" msgstr "%s-å %s íéöá÷ä ïéá %s úéá ,%s äøåùî ìçä éðåù\n" -#: src/cmp.c:595 +#: src/cmp.c:609 #, fuzzy, c-format msgid "cmp: EOF on %s after byte %s, in line %s\n" msgstr "%s-å %s íéöá÷ä ïéá %s úéá ,%s äøåùî ìçä éðåù\n" -#: src/cmp.c:601 +#: src/cmp.c:615 #, fuzzy, c-format msgid "cmp: EOF on %s after byte %s\n" msgstr "cmp: %s õáå÷ óåñ\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:51 +#: src/diff.c:50 msgid "Paul Eggert" msgstr "" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:52 +#: src/diff.c:51 msgid "Mike Haertel" msgstr "" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:53 +#: src/diff.c:52 msgid "David Hayes" msgstr "" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:54 +#: src/diff.c:53 msgid "Richard Stallman" msgstr "" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:55 +#: src/diff.c:54 msgid "Len Tower" msgstr "" -#: src/diff.c:355 +#: src/diff.c:365 #, fuzzy, c-format msgid "invalid context length '%s'" msgstr "`%s' éåâù øù÷ä êøåà" -#: src/diff.c:438 +#: src/diff.c:487 #, c-format msgid "pagination not supported on this host" msgstr "åæ úëøòîá èìôä ãåîéòá äëéîú ïéà" -#: src/diff.c:453 src/diff3.c:341 +#: src/diff.c:502 src/diff3.c:348 #, c-format msgid "too many file label options" msgstr "íéöá÷ úéååú øåáò -L éðééôàî éãî øúåé" -#: src/diff.c:530 +#: src/diff.c:579 #, fuzzy, c-format msgid "invalid width '%s'" msgstr "`%s' éåâù äøåù áçåø" -#: src/diff.c:534 +#: src/diff.c:583 msgid "conflicting width options" msgstr "íéøúåñ äøåù áçåø éðééôàî" -#: src/diff.c:559 +#: src/diff.c:608 #, fuzzy, c-format msgid "invalid horizon length '%s'" msgstr "--horizon-lines ïééôàîá `%s' éåâù úåøåù øôñî" -#: src/diff.c:615 +#: src/diff.c:664 #, fuzzy, c-format msgid "invalid tabsize '%s'" msgstr "`%s' éåâù Tab áçåø" -#: src/diff.c:619 +#: src/diff.c:668 msgid "conflicting tabsize options" msgstr "íéøúåñ Tab áçåø éðééôàî" -#: src/diff.c:774 +#: src/diff.c:834 msgid "--from-file and --to-file both specified" msgstr "--to-file ïäå --from-file ïä úðééö" -#: src/diff.c:893 +#: src/diff.c:953 #, fuzzy msgid " --normal output a normal diff (the default)" msgstr " .ìéâø èîøåôá íééåðéù ÷ôä --normal" -#: src/diff.c:894 +#: src/diff.c:954 #, fuzzy msgid "-q, --brief report only when files differ" msgstr " .íéðåù íéöá÷ä íà øåîà ÷ø -q --brief" -#: src/diff.c:895 +#: src/diff.c:955 #, fuzzy msgid "-s, --report-identical-files report when two files are the same" msgstr "" " .íéäæ íéöá÷ ìò çååã -s --report-identical-files" -#: src/diff.c:896 +#: src/diff.c:956 msgid "" "-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context" msgstr "" -#: src/diff.c:897 +#: src/diff.c:957 #, fuzzy msgid "" "-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context" msgstr ".äøåùì (130 ç\"îøá) íéååú NUM øúåéä ìëì âöä -w NUM --width=NUM" -#: src/diff.c:898 +#: src/diff.c:958 #, fuzzy msgid "-e, --ed output an ed script" msgstr " .ed êøåò øåáò úåàøåä úîéùø ÷ôä -e --ed" -#: src/diff.c:899 +#: src/diff.c:959 #, fuzzy msgid "-n, --rcs output an RCS format diff" msgstr " .RCS èîøåôá íééåðéù ÷ôä -n --rcs" -#: src/diff.c:900 +#: src/diff.c:960 msgid "-y, --side-by-side output in two columns" msgstr "" -#: src/diff.c:901 +#: src/diff.c:961 #, fuzzy msgid "" "-W, --width=NUM output at most NUM (default 130) print columns" msgstr ".äøåùì (130 ç\"îøá) íéååú NUM øúåéä ìëì âöä -w NUM --width=NUM" -#: src/diff.c:902 +#: src/diff.c:962 #, fuzzy msgid "" " --left-column output only the left column of common lines" msgstr " .úéìàîùä úà ÷ø âöä ,úåäæ úåøåùä íà -l --left-column" -#: src/diff.c:903 +#: src/diff.c:963 #, fuzzy msgid " --suppress-common-lines do not output common lines" msgstr "" " .úåäæ úåøåù ììë âéöú ìà -s --suppress-common-lines" -#: src/diff.c:905 +#: src/diff.c:965 msgid "-p, --show-c-function show which C function each change is in" msgstr "" -#: src/diff.c:906 +#: src/diff.c:966 msgid "-F, --show-function-line=RE show the most recent line matching RE" msgstr "" -#: src/diff.c:907 +#: src/diff.c:967 msgid "" " --label LABEL use LABEL instead of file name and timestamp\n" " (can be repeated)" msgstr "" -#: src/diff.c:910 +#: src/diff.c:970 #, fuzzy msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr " .èìôá íéçååøì TAB éååú êåôä -t --expand-tabs" -#: src/diff.c:911 +#: src/diff.c:971 #, fuzzy msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr " .äøåùä éðôì TAB \"ò íé-TAB øùé -T --initial-tab" -#: src/diff.c:912 +#: src/diff.c:972 #, fuzzy msgid "" " --tabsize=NUM tab stops every NUM (default 8) print columns" msgstr " .(8 ç\"îøá) úåãåîò NUM ìë Tab --tabsize=NUM" -#: src/diff.c:913 +#: src/diff.c:973 msgid "" " --suppress-blank-empty suppress space or tab before empty output lines" msgstr "" -#: src/diff.c:914 +#: src/diff.c:974 #, fuzzy msgid "-l, --paginate pass output through 'pr' to paginate it" msgstr " .ãåîéò íùì `pr' êøã èìô áúð -l --paginate" -#: src/diff.c:916 +#: src/diff.c:976 #, fuzzy msgid "" "-r, --recursive recursively compare any subdirectories found" msgstr " .éáéñøå÷ø ïôåàá úåé÷éú-úú äååùä -r --recursive" -#: src/diff.c:917 +#: src/diff.c:977 msgid " --no-dereference don't follow symbolic links" msgstr "" -#: src/diff.c:918 +#: src/diff.c:978 #, fuzzy msgid "-N, --new-file treat absent files as empty" msgstr " .íé÷éø åéä åìéàë íéøñç íéöá÷á ìôè -N --new-file" -#: src/diff.c:919 +#: src/diff.c:979 #, fuzzy msgid " --unidirectional-new-file treat absent first files as empty" msgstr "" " .íé÷éø åéä åìéàë íéøñç íéðåùàø íéöá÷á ìôè --unidirectional-new-file" -#: src/diff.c:920 +#: src/diff.c:980 #, fuzzy msgid " --ignore-file-name-case ignore case when comparing file names" msgstr ".íéöá÷ä úåîùá úåðè÷î úåìåãâ úåéúåà ìéãáú ìà --ignore-file-name-case" -#: src/diff.c:921 +#: src/diff.c:981 #, fuzzy msgid " --no-ignore-file-name-case consider case when comparing file names" msgstr "" " .íéöá÷ä úåîùá úåðè÷î úåìåãâ úåéúåà ìéãáú --no-ignore-file-name-case" -#: src/diff.c:922 +#: src/diff.c:982 #, fuzzy msgid "-x, --exclude=PAT exclude files that match PAT" msgstr " .PAT úéðáúì íéîéàúî íäéúåîùù íéöá÷ ìò âìã -x PAT --exclude=PAT" -#: src/diff.c:923 +#: src/diff.c:983 #, fuzzy msgid "" "-X, --exclude-from=FILE exclude files that match any pattern in FILE" msgstr "" "FILE-á úåéðáúì íéîéàúî íäéúåîùù íéöá÷ ìò âìã -X FILE --exclude-from=FILE" -#: src/diff.c:924 +#: src/diff.c:984 #, fuzzy msgid "" "-S, --starting-file=FILE start with FILE when comparing directories" msgstr "" " .FILE õáå÷á úåé÷éú úàååùä ìçúä -S FILE --starting-file=FILE" -#: src/diff.c:925 +#: src/diff.c:985 #, fuzzy msgid "" " --from-file=FILE1 compare FILE1 to all operands;\n" @@ -850,7 +851,7 @@ msgid "" msgstr "" ".äé÷éú úåéäì ìåëé FILE1 .íéèðîåâøàä øàù ìëì FILE1 äååùä --from-file=FILE1" -#: src/diff.c:927 +#: src/diff.c:987 #, fuzzy msgid "" " --to-file=FILE2 compare all operands to FILE2;\n" @@ -858,96 +859,96 @@ msgid "" msgstr "" " .äé÷éú úåéäì ìåëé FILE2 .FILE2-ì íéèðîåâøàä ìë äååùä --to-file=FILE2" -#: src/diff.c:930 +#: src/diff.c:990 #, fuzzy msgid "" "-i, --ignore-case ignore case differences in file contents" msgstr ".íéöá÷ä ïëåúá úåðè÷î úåìåãâ úåéúåà ìéãáú ìà -i --ignore-case" -#: src/diff.c:931 +#: src/diff.c:991 #, fuzzy msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" " .íéçååøì TAB ïéá íéìãáäî íìòúä -E --ignore-tab-expansion" -#: src/diff.c:932 +#: src/diff.c:992 #, fuzzy msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr " .íéçååøä ìëî íìòúä -w --ignore-all-space" -#: src/diff.c:933 +#: src/diff.c:993 #, fuzzy msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr " .íéçååø úåîëá íéìãáäî íìòúä -b --ignore-space-change" -#: src/diff.c:934 +#: src/diff.c:994 #, fuzzy msgid "-w, --ignore-all-space ignore all white space" msgstr " .íéçååøä ìëî íìòúä -w --ignore-all-space" -#: src/diff.c:935 +#: src/diff.c:995 #, fuzzy msgid "" "-B, --ignore-blank-lines ignore changes where lines are all blank" msgstr " .úå÷éø íäéúåøåùù íééåðéùî íìòúä -B --ignore-blank-lines" -#: src/diff.c:936 +#: src/diff.c:996 #, fuzzy msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE" msgstr "" ".RE úéðáúì úåîéàúî íäéúåøåùù íééåðéùî íìòúä -I RE --ignore-matching-lines=RE" -#: src/diff.c:938 +#: src/diff.c:998 #, fuzzy msgid "-a, --text treat all files as text" msgstr " .èñ÷è éöá÷áë íéöá÷ä ìëá ìôè -a --text" -#: src/diff.c:939 +#: src/diff.c:999 #, fuzzy msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr " .èì÷ úøåù ìë óåñî CR éååú ÷ìñ --strip-trailing-cr" -#: src/diff.c:941 +#: src/diff.c:1001 #, fuzzy msgid " --binary read and write data in binary mode" msgstr " .éøàðéá ïôåàá áåúëå àø÷ --binary" -#: src/diff.c:944 +#: src/diff.c:1004 #, fuzzy msgid "" "-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs" msgstr "`#ifdef NAME'-á íééåðéù ãøôä ,áìåùî õáå÷ ÷ôä -D NAME --ifdef=NAME" -#: src/diff.c:945 +#: src/diff.c:1005 #, fuzzy msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT" msgstr "" "GFMT úøæòá GTYPE âåñî èì÷ úåöåá÷ èîøô êà ,ì\"ðë --GTYPE-group-format=GFMT" -#: src/diff.c:946 +#: src/diff.c:1006 #, fuzzy msgid " --line-format=LFMT format all input lines with LFMT" msgstr " .LFMT úøæòá úåøåù èîøô êà ,ì\"ðë --line-format=LFMT" -#: src/diff.c:947 +#: src/diff.c:1007 #, fuzzy msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT" msgstr "" ".LFMT úøæòá LTYPE âåñî èì÷ úåøåù èîøô êà ,ì\"ðë --LTYPE-group-format=LFMT" -#: src/diff.c:948 +#: src/diff.c:1008 msgid "" " These format options provide fine-grained control over the output\n" " of diff, generalizing -D/--ifdef." msgstr "" -#: src/diff.c:950 +#: src/diff.c:1010 #, fuzzy msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'." msgstr " .`changed' åà LTYPE åîë GTYPE .`unchanged' åà `new' ,`old' àåä LTYPE" -#: src/diff.c:951 +#: src/diff.c:1011 #, fuzzy msgid "" " GFMT (only) may contain:\n" @@ -975,7 +976,7 @@ msgstr "" " F-1 E\n" " M+1 M" -#: src/diff.c:963 +#: src/diff.c:1023 #, fuzzy msgid "" " LFMT (only) may contain:\n" @@ -988,7 +989,7 @@ msgstr "" " äøåùä óåñ åú èòîì äøåù ïëåú %l\n" "èì÷ úøåù øåáò printf ïåðâñá úæåøçî %[-][WIDTH][.[PREC]]{doxX}n" -#: src/diff.c:967 +#: src/diff.c:1027 #, fuzzy msgid "" " Both GFMT and LFMT may contain:\n" @@ -1002,238 +1003,238 @@ msgstr "" " C ããåá åú %c'C'\n" " OOO éìè÷åà ãå÷ ìòá åú %c'\\OOO'" -#: src/diff.c:973 +#: src/diff.c:1033 #, fuzzy msgid "-d, --minimal try hard to find a smaller set of changes" msgstr " .íééåðéùä úöåá÷ úà ïéè÷äì ìãúùä -d --minimal" -#: src/diff.c:974 +#: src/diff.c:1034 #, fuzzy msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix" msgstr "" ".íéöá÷ä íåéñå äìéçúá úåôúåùî úåøåù NUM øàùä --horizon-lines=NUM" -#: src/diff.c:975 +#: src/diff.c:1035 #, fuzzy msgid "" " --speed-large-files assume large files and many scattered small changes" msgstr " .íé÷çåøîå íéðè÷ íééåðéùå íéìåãâ íéöá÷ çðä -H --speed-large-files" -#: src/diff.c:976 +#: src/diff.c:1036 msgid "" " --color[=WHEN] color output; WHEN is 'never', 'always', or " "'auto';\n" " plain --color means --color='auto'" msgstr "" -#: src/diff.c:978 +#: src/diff.c:1038 msgid "" " --palette=PALETTE the colors to use when --color is active; PALETTE " "is\n" " a colon-separated list of terminfo capabilities" msgstr "" -#: src/diff.c:981 +#: src/diff.c:1041 msgid " --help display this help and exit" msgstr "" -#: src/diff.c:982 +#: src/diff.c:1042 #, fuzzy msgid "-v, --version output version information and exit" msgstr " .úéðëúä úñøéâ úà âöä -v --version" -#: src/diff.c:984 +#: src/diff.c:1044 #, fuzzy msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'." msgstr "" ".`FILE... DIR' åà `DIR FILE...' åà `DIR1 DIR2' åà `FILE1 FILE2' íä FILES" -#: src/diff.c:985 +#: src/diff.c:1045 #, fuzzy msgid "" "If --from-file or --to-file is given, there are no restrictions on FILE(s)." msgstr "" " .FILES ìò úåìáâî ïéà éæà ,--to-file åà --from-file ïééôàî ïåúð íà" -#: src/diff.c:986 src/diff3.c:533 src/sdiff.c:220 +#: src/diff.c:1046 src/diff3.c:531 src/sdiff.c:219 #, fuzzy msgid "If a FILE is '-', read standard input." msgstr "" " .éð÷úä èì÷ä õøòî àø÷ ,`-' àåä FILE íà" -#: src/diff.c:996 +#: src/diff.c:1056 #, c-format msgid "Usage: %s [OPTION]... FILES\n" msgstr "%s [OPTION]... FILES :ùåîéù ïôåà\n" -#: src/diff.c:997 +#: src/diff.c:1057 #, fuzzy msgid "Compare FILES line by line." msgstr ".äøåù äøåù íéöá÷ éðù äååùä" -#: src/diff.c:1034 +#: src/diff.c:1094 #, fuzzy, c-format msgid "conflicting %s option value '%s'" msgstr "%s ïééôàî ìù íãå÷ êøò øúåñ `%s' êøò" -#: src/diff.c:1047 +#: src/diff.c:1107 #, c-format msgid "conflicting output style options" msgstr "èìô ïåðâñ ìù íéøúåñ íéðééôàî" -#: src/diff.c:1063 +#: src/diff.c:1123 #, fuzzy, c-format msgid "invalid color '%s'" msgstr "`%s' éåâù øù÷ä êøåà" -#: src/diff.c:1119 src/diff.c:1329 +#: src/diff.c:1197 src/diff.c:1401 #, c-format msgid "Only in %s: %s\n" msgstr "%s-á ÷ø àöîð %s\n" -#: src/diff.c:1253 +#: src/diff.c:1325 #, fuzzy msgid "cannot compare '-' to a directory" msgstr "äé÷éúì `-' úååùäì úåøùôà ïéà" -#: src/diff.c:1288 +#: src/diff.c:1360 msgid "-D option not supported with directories" msgstr "úåé÷éú øåáò -D ïééôàîá äëéîú ïéà" -#: src/diff.c:1297 +#: src/diff.c:1369 #, c-format msgid "Common subdirectories: %s and %s\n" msgstr "%s-å %s :úåäæ úåé÷éú-úú\n" -#: src/diff.c:1339 src/diff.c:1389 +#: src/diff.c:1411 src/diff.c:1461 #, c-format msgid "File %s is a %s while file %s is a %s\n" msgstr "%s %s-ì %s %s úååùäì ïúéð àì\n" -#: src/diff.c:1375 +#: src/diff.c:1447 #, fuzzy, c-format msgid "Symbolic links %s and %s differ\n" msgstr "äæî äæ íéðåù `%s'-å `%s' íéöá÷ä\n" -#: src/diff.c:1462 +#: src/diff.c:1534 #, c-format msgid "Files %s and %s are identical\n" msgstr "íéäæ íðéä %s-å %s íéöá÷ä\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff3.c:43 +#: src/diff3.c:51 #, fuzzy msgid "Randy Smith" msgstr ".Randy Smith é\"ò áúëð" -#: src/diff3.c:356 +#: src/diff3.c:363 #, c-format msgid "incompatible options" msgstr "íéøúåñ íéðééôàî" -#: src/diff3.c:396 +#: src/diff3.c:403 #, fuzzy msgid "'-' specified for more than one input file" msgstr "ãçà èì÷ õáå÷î øúåé øåáò `-' úðééö" -#: src/diff3.c:447 src/diff3.c:1295 src/diff3.c:1698 src/diff3.c:1753 -#: src/sdiff.c:308 src/sdiff.c:846 src/sdiff.c:857 +#: src/diff3.c:445 src/diff3.c:1284 src/diff3.c:1683 src/diff3.c:1738 +#: src/sdiff.c:306 src/sdiff.c:843 src/sdiff.c:854 msgid "read failed" msgstr "äàéø÷á äì÷ú" -#: src/diff3.c:480 +#: src/diff3.c:478 #, fuzzy msgid "-A, --show-all output all changes, bracketing conflicts" msgstr " .íéè÷éìôðå÷ ïîñ ,íééåðéùä ìë úà âöä -A --show-all" -#: src/diff3.c:482 +#: src/diff3.c:480 #, fuzzy msgid "" "-e, --ed output ed script incorporating changes\n" " from OLDFILE to YOURFILE into MYFILE" msgstr "MYFILE êåú ìà YOURFILE-ì OLDFILE-î âåæéî àìì íééåðéù -e --ed" -#: src/diff3.c:484 +#: src/diff3.c:482 #, fuzzy msgid "-E, --show-overlap like -e, but bracket conflicts" msgstr "" " .íéè÷éìôðå÷ ïîñ ,âåæéî àìì íééåðéù âöä -E --show-overlap" -#: src/diff3.c:485 +#: src/diff3.c:483 #, fuzzy msgid "" "-3, --easy-only like -e, but incorporate only nonoverlapping " "changes" msgstr " .âåæéî àììå íéôôåç íðéàù íééåðéù âöä -3 --easy-only" -#: src/diff3.c:486 +#: src/diff3.c:484 #, fuzzy msgid "" "-x, --overlap-only like -e, but incorporate only overlapping changes" msgstr "" " .íéôôåç íééåðéù âöä -x --overlap-only" -#: src/diff3.c:487 +#: src/diff3.c:485 msgid "-X like -x, but bracket conflicts" msgstr "" -#: src/diff3.c:488 +#: src/diff3.c:486 #, fuzzy msgid "-i append 'w' and 'q' commands to ed scripts" msgstr " .ed úåãå÷ô íåéñá `q'-å `w' úåãå÷ô áåúë -i" -#: src/diff3.c:490 +#: src/diff3.c:488 msgid "" "-m, --merge output actual merged file, according to\n" " -A if no other options are given" msgstr "" -#: src/diff3.c:493 +#: src/diff3.c:491 #, fuzzy msgid "-a, --text treat all files as text" msgstr " .èñ÷è éöá÷áë íéöá÷ä ìëá ìôè -a --text" -#: src/diff3.c:494 +#: src/diff3.c:492 #, fuzzy msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr " .èì÷ úøåù ìë óåñî CR éååú ÷ìñ --strip-trailing-cr" -#: src/diff3.c:495 +#: src/diff3.c:493 #, fuzzy msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr " .äøåùä éðôì TAB \"ò íé-TAB øùé -T --initial-tab" -#: src/diff3.c:496 +#: src/diff3.c:494 #, fuzzy msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr "" " .íéöá÷ úàåùäì PROGRAM úéðëúá ùîúùä --diff-program=PROGRAM" -#: src/diff3.c:497 +#: src/diff3.c:495 msgid "" "-L, --label=LABEL use LABEL instead of file name\n" " (can be repeated up to three times)" msgstr "" -#: src/diff3.c:500 +#: src/diff3.c:498 msgid " --help display this help and exit" msgstr "" -#: src/diff3.c:501 +#: src/diff3.c:499 #, fuzzy msgid "-v, --version output version information and exit" msgstr " .úéðëúä úñøéâ úà âöä -v --version" -#: src/diff3.c:510 +#: src/diff3.c:508 #, c-format msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n" msgstr "%s [OPTION]... MYFILE OLDFILE YOURFILE :ùåîéù ïôåà\n" -#: src/diff3.c:512 +#: src/diff3.c:510 msgid "Compare three files line by line." msgstr ".úéáì úéá íéöá÷ äùìù äååùä" -#: src/diff3.c:522 +#: src/diff3.c:520 msgid "" "\n" "The default output format is a somewhat human-readable representation of\n" @@ -1247,54 +1248,54 @@ msgid "" "robust than using ed.\n" msgstr "" -#: src/diff3.c:534 +#: src/diff3.c:532 msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble." msgstr "" -#: src/diff3.c:727 +#: src/diff3.c:725 msgid "internal error: screwup in format of diff blocks" msgstr "diff éòè÷ èîøåôá äçéøî :úéîéðô äðëú úàéâù" -#: src/diff3.c:1022 +#: src/diff3.c:1015 #, c-format msgid "%s: diff failed: " msgstr "%s é\"ò diff úìòôäá äì÷ú :" -#: src/diff3.c:1044 +#: src/diff3.c:1037 msgid "internal error: invalid diff type in process_diff" msgstr "process_diff úééö÷ðåôá éåðéù ìù éåâù âåñ :úéîéðô äðëú úàéâù" -#: src/diff3.c:1069 +#: src/diff3.c:1060 msgid "invalid diff format; invalid change separator" msgstr "äéåâù íééåðéù úãøôä úæåøçî :éåðéù ìù éåâù èîøåô" -#: src/diff3.c:1305 +#: src/diff3.c:1294 msgid "invalid diff format; incomplete last line" msgstr "äîìù äðéà äðåøçà äøåù :éåðéù ìù éåâù èîøåô" -#: src/diff3.c:1329 src/sdiff.c:276 src/util.c:969 +#: src/diff3.c:1318 src/sdiff.c:274 src/util.c:1069 #, fuzzy, c-format msgid "subsidiary program '%s' could not be invoked" msgstr "äàöîð àì `%s' úéðëú-úú" -#: src/diff3.c:1354 +#: src/diff3.c:1343 msgid "invalid diff format; incorrect leading line chars" msgstr "äøåù úìéçúá íééåâù íéååú :éåðéù ìù éåâù èîøåô" -#: src/diff3.c:1427 +#: src/diff3.c:1416 msgid "internal error: invalid diff type passed to output" msgstr "èìô éëøöì éåðéù ìù éåâù âåñ :úéîéðô äðëú úàéâù" -#: src/diff3.c:1700 src/diff3.c:1757 +#: src/diff3.c:1685 src/diff3.c:1742 msgid "input file shrank" msgstr "÷îèöä èì÷ õáå÷" -#: src/dir.c:156 +#: src/dir.c:154 #, fuzzy, c-format msgid "cannot compare file names '%s' and '%s'" msgstr "`%s'-å `%s' íéöá÷ úåîù úååùäì ïúéð àì" -#: src/dir.c:225 +#: src/dir.c:223 #, c-format msgid "%s: recursive directory loop" msgstr "" @@ -1305,135 +1306,135 @@ msgstr "" msgid "Thomas Lord" msgstr ".Thomas Lord é\"ò áúëð" -#: src/sdiff.c:174 +#: src/sdiff.c:173 #, fuzzy msgid "" "-o, --output=FILE operate interactively, sending output to FILE" msgstr " .FILE-ì èìô ,úéáéè÷àøèðéà äìåòô -o FILE --output=FILE" -#: src/sdiff.c:176 +#: src/sdiff.c:175 #, fuzzy msgid "" "-i, --ignore-case consider upper- and lower-case to be the same" msgstr " .úåðè÷å úåìåãâ úåéúåà ïéá íéìãáäî íìòúä -i --ignore-case" -#: src/sdiff.c:177 +#: src/sdiff.c:176 #, fuzzy msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" " .íéçååøì TAB ïéá íéìãáäî íìòúä -E --ignore-tab-expansion" -#: src/sdiff.c:178 +#: src/sdiff.c:177 #, fuzzy msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr " .íéçååøä ìëî íìòúä -w --ignore-all-space" -#: src/sdiff.c:179 +#: src/sdiff.c:178 #, fuzzy msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr " .íéçååø úåîëá íéìãáäî íìòúä -b --ignore-space-change" -#: src/sdiff.c:180 +#: src/sdiff.c:179 #, fuzzy msgid "-W, --ignore-all-space ignore all white space" msgstr " .øçà ïáì çèùå íéçååøî íìòúä -W --ignore-all-space" -#: src/sdiff.c:181 +#: src/sdiff.c:180 #, fuzzy msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank" msgstr " .úå÷éø íäéúåøåùù íééåðéùî íìòúä -B --ignore-blank-lines" -#: src/sdiff.c:182 +#: src/sdiff.c:181 #, fuzzy msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE" msgstr "" ".RE úéðáúì úåîéàúî íäéúåøåùù íééåðéùî íìòúä -I RE --ignore-matching-lines=RE" -#: src/sdiff.c:183 +#: src/sdiff.c:182 #, fuzzy msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr " .èì÷ úøåù ìë óåñî CR éååú ÷ìñ --strip-trailing-cr" -#: src/sdiff.c:184 +#: src/sdiff.c:183 #, fuzzy msgid "-a, --text treat all files as text" msgstr " .èñ÷è éöá÷áë íéöá÷ä ìëá ìôè -a --text" -#: src/sdiff.c:186 +#: src/sdiff.c:185 #, fuzzy msgid "" "-w, --width=NUM output at most NUM (default 130) print columns" msgstr ".äøåùì (130 ç\"îøá) íéååú NUM øúåéä ìëì âöä -w NUM --width=NUM" -#: src/sdiff.c:187 +#: src/sdiff.c:186 #, fuzzy msgid "" "-l, --left-column output only the left column of common lines" msgstr " .úéìàîùä úà ÷ø âöä ,úåäæ úåøåùä íà -l --left-column" -#: src/sdiff.c:188 +#: src/sdiff.c:187 #, fuzzy msgid "-s, --suppress-common-lines do not output common lines" msgstr "" " .úåäæ úåøåù ììë âéöú ìà -s --suppress-common-lines" -#: src/sdiff.c:190 +#: src/sdiff.c:189 #, fuzzy msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr " .èìôá íéçååøì TAB éååú êåôä -t --expand-tabs" -#: src/sdiff.c:191 +#: src/sdiff.c:190 #, fuzzy msgid "" " --tabsize=NUM tab stops at every NUM (default 8) print columns" msgstr " .(8 ç\"îøá) úåãåîò NUM ìë Tab --tabsize=NUM" -#: src/sdiff.c:193 +#: src/sdiff.c:192 #, fuzzy msgid "-d, --minimal try hard to find a smaller set of changes" msgstr " .íééåðéùä úöåá÷ úà ïéè÷äì ìãúùä -d --minimal" -#: src/sdiff.c:194 +#: src/sdiff.c:193 #, fuzzy msgid "" "-H, --speed-large-files assume large files, many scattered small changes" msgstr " .íé÷çåøîå íéðè÷ íééåðéùå íéìåãâ íéöá÷ çðä -H --speed-large-files" -#: src/sdiff.c:195 +#: src/sdiff.c:194 #, fuzzy msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr "" " .íéöá÷ úàåùäì PROGRAM úéðëúá ùîúùä --diff-program=PROGRAM" -#: src/sdiff.c:197 +#: src/sdiff.c:196 msgid " --help display this help and exit" msgstr "" -#: src/sdiff.c:198 +#: src/sdiff.c:197 #, fuzzy msgid "-v, --version output version information and exit" msgstr " .úéðëúä úñøéâ úà âöä -v --version" -#: src/sdiff.c:207 +#: src/sdiff.c:206 #, c-format msgid "Usage: %s [OPTION]... FILE1 FILE2\n" msgstr "%s [OPTION]... FILE1 FILE2 :ùåîéù ïôåà\n" -#: src/sdiff.c:209 +#: src/sdiff.c:208 #, fuzzy msgid "Side-by-side merge of differences between FILE1 and FILE2." msgstr ".äæ ãöá äæ íéöá÷ ïéá íééåðéù ìù âåæéî" -#: src/sdiff.c:330 +#: src/sdiff.c:328 msgid "cannot interactively merge standard input" msgstr "éáéè÷àøèðéà ïôåàá éð÷ú èì÷ õåøò âæîì úåøùôà ïéà" -#: src/sdiff.c:597 +#: src/sdiff.c:594 msgid "both files to be compared are directories" msgstr "úåé÷éú íðéä äàååùäì íéöá÷ä éðù" -#: src/sdiff.c:820 +#: src/sdiff.c:817 #, fuzzy msgid "" "ed:\tEdit then use both versions, each decorated with a header.\n" @@ -1458,12 +1459,12 @@ msgstr "" "v -- ïúâöä êåú úåôúåùî úåøåù ÷úòä\n" "q -- äàéöé\n" -#: src/util.c:662 +#: src/util.c:755 #, fuzzy, c-format msgid "unrecognized prefix: %s" msgstr "%s úéðëú øåáò `--%s' ääåæî-éúìá ïééôàî\n" -#: src/util.c:692 +#: src/util.c:785 #, c-format msgid "unparsable value for --palette" msgstr "" diff --git a/po/hr.gmo b/po/hr.gmo index b1528aed53a0641fbf3167f4a6ce22885959a30e..501fd807719ede46fb45ff90ef5b951bfff519f8 100644 GIT binary patch delta 2638 zcmaLW3rv+|7{Kv|0~RPIrG}u$R|}sv)+YYG_x8Nc`#$f9-{JdZ zlW%8TYAo9)(l=jZPLjyu3q>vzk>3`1&RHxnkM?bN8@`8gan(i4$49Xjk6|&cs}?Cj z7t8PnPQ|PxB7~MI?8e*iMjT!v=1}U%vDti2UMdp9W;_SKK!f=gi(H9MqsAz`#LF#? zn%gVbjw3G>DaQnAj(bsaOj{;$Jyzoyd>6Oj#kC@@bLL-b*>)ct2QK4ac+2Hpa>p>A z_WC-Jv+!Ze!B25C`j(5FhGS3Vj0t=b z^=2-MHF#zG7|*4nrBS2{x1$Ek^Ltm{j(Wv=u>+4|6-JswuEE_{iPHljv#=d!<1RcK zzsCwJX!ha;P!o;q=0k75=ZJ){9OvPKcme)^8la5&^kEd|deBji`pEiF7krL$u!OAU;#GJN?nOQ6$r10NFF_qo zpw52-HBRPgFQG=%@$IPNKcgOO7Ii#ZpZ!`swARn!`B>5>!W`+uY4`=^V>Xi};<28lEAQodb z4`V#e$Fb<3u3L|pct2`F&*G{031;DOOv6$9mhZ*!sBxb|^J)6dmO;E;^;Qm`2LBdEWAU}#`YJ4=U5iC{D^9^Z*HQz$-Y@Am z9W%I+@mPx4Sc7_+AnL|Fn2Z}S2RGpv=;CBNgu20yxcB0xqn0s@I&UjZ#h39c{5j5o z8GID3PEwF z@Txiib^c=1{#B?&iK8B52Wp&`FclA??)&i#ZePa4ij?xA>7{1h{PQwO3(uU!KWo~w zis>^8&n!2i7QAWl7IvA>7tGG8Eu8BQ`J;AwI9g#Ikv3Qomo3?$naHutFbfO7IfNL{UI}J`Iz*< zJ?>M>k0|D4znz)zc_bCA8_ZiHK&|VcXi!0Qf;2^8k25?9B#kUZe3-E%)zds z+1<9)*b(qs;Yb4`1y*=vr@uSoSZy8d*H=D~oOUF>rS3?4bAjdFx8^Hf!9XP)%Z>&* zg8opumDk3m{4Xn8!!1@@#7`)@HDvb04v**#*@L=lcSk%wWtd~NI}xkVX=*AohkK@u z8`QQf@{2^nZLOrkRfXJ1>pOkJf;JiQAVZC|*}h@?h=1>7oA)_9guZi6K#1 delta 2632 zcmZY8du&uy9>DQmA3$j}trdhK&=Mln%INPK*Mxs|r=Kl3@i zbI;><&hN~(52SbfF}=4bD>XV@_-|Z*ZA%%C zz1V}7aT@MeCNdSD#F=;w%W%|k5tf!(+=>TqKVG{+%zv`3OV!XWSt*jjcDx-gqQT-{ zifqE?P}i98D=)X5sJXq42^@L1$SmB4n&S!79CPjw*@G)^JD$bAV`HPpY0msZBikOQ z~<0q~a zxe4nq1KZYe>=`t|bWjX=7>n^y)RUb;E?8>Ui6qgWgW2mvZpLl68y`gqB&D`U1O6K4 z;Yp;RlG7}*6Ys@td>{2@{HYeNjGtpI9Z8?aMtlZ!!79IZ^*c~cb_zRjSgW_eHrz&h z0_Wl{0wQy82i}3l@HYGoXXCAH-nt3YL{led=ndosMWQ$l7vfQ@!|zcSsHHxKFolb7 zOvpQ#A9cQqI`31wAFIM%;>S_P=XQAUD(ogcj3k)^8t3C&vZ}{D zxD?++J*gG*-o|=dK>R1v@#j$2xp@P(feEa^f1%F1jJIPob-YcVeJ2gA^^>SID~gLS zM#5N$A7T;aF=!H2;{SsR^LQBJu?BC%b*S^UU;+LaZ^EN^1D@^czl6hyvp0$S4M$)D9z}EE zn%K+aV6ui6vtpa>S=ta8*jl3>_#1TA8H~;umsPbZjj#Pz4%Jh zGKNvVKZs@c3RdIST}+rkW6BPZa%@Ij@Bmu)JnF;`aV%!-6uBNJV>aH3L$D6NO5^dO z-r$_weK&-e#Jf;$q#Lz-52D`4Gg&lhXnbV~a(AWlOn=$y{U@I7^BWvZ|1|zNT8xFL zFJd)XxF7XQ|G-Q+|uE5h+O45y){QjNoLWe>&Bv#p_{5I3MsIEXs% zVbr&MtgrtR>Lq@Jy3we8URBFc$2X$(Cs2#B5A`5VqptHdX5o1pfuHSj59Ljoomo9~ zdZjtO=+3;#@`~#6stT*JYWDP5WffIsM8jKV)#4iSzlMz?7x*K7$4*3@+19eC-xo|+ zw@j^Y-NoN$4!44VNYn{Bwt0H_O!tfB_okV7E9YnZ)a#m+Et%$)$ZB#X~Z5=LL41 zS$4Hu?!I7G4w^pB{I#Xjyxel5S=~}Na4G$8(VPxsy9a%D^-pm>_DA|7(-fG|KdC8D zVE!3+x4+~5wz`2qxtkS?rJK1GUTR&T+N)pP*FvvnmS!(dPWdFDLmr16+S7*k(mz^WWWN;|9bwkHd;N(Ri4PA&H3X7XK!hp6iRo6E>fsG2UUs zXCB)-e(>tLuX%58$>3hy)AV)~n4<0}`Gd0QaQr8anda_TKDz}RyCWX5tpJ@5g=}-7 Qd&5voAZfczJ%`eM1hmpp5C8xG diff --git a/po/hr.po b/po/hr.po index 6a2775e..e9043b1 100644 --- a/po/hr.po +++ b/po/hr.po @@ -3,47 +3,47 @@ # This file is distributed under the same license as the diffutils package. # # Tomislav Krznar , 2012. -# Božidar Putanec , 2019, 2021. +# Božidar Putanec , 2019, 2021, 2022. msgid "" msgstr "" -"Project-Id-Version: GNU diffutils 3.7.41\n" +"Project-Id-Version: GNU diffutils 3.8.43\n" "Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n" -"POT-Creation-Date: 2021-08-01 18:56-0700\n" -"PO-Revision-Date: 2021-07-20 12:48+0200\n" +"POT-Creation-Date: 2023-05-21 01:51-0700\n" +"PO-Revision-Date: 2023-01-01 11:49-0800\n" "Last-Translator: Božidar Putanec \n" "Language-Team: Croatian \n" "Language: hr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && " +"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" "X-Bugs: Report translation errors to the Language-Team address.\n" -"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" -"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" -"X-Generator: Poedit 3.0\n" +"X-Generator: Poedit 3.2.2\n" -#: lib/argmatch.c:132 +#: lib/argmatch.c:145 #, c-format msgid "invalid argument %s for %s" msgstr "nevaljani argument %s for %s" -#: lib/argmatch.c:133 +#: lib/argmatch.c:146 #, c-format msgid "ambiguous argument %s for %s" -msgstr "viÅ¡eznačni argument %s za %s" +msgstr "dvosmisleni argument %s za %s" -#: lib/argmatch.c:152 lib/argmatch.h:223 +#: lib/argmatch.c:165 lib/argmatch.h:242 msgid "Valid arguments are:" msgstr "Valjani argumenti su:" -#: lib/c-stack.c:187 +#: lib/c-stack.c:186 msgid "program error" -msgstr "programska greÅ¡ka" +msgstr "greÅ¡ka u programu" -#: lib/c-stack.c:188 +#: lib/c-stack.c:187 msgid "stack overflow" -msgstr "prelijevanje stȏga" +msgstr "prekoračenje stȏga" -#: lib/error.c:195 +#: lib/error.c:193 msgid "Unknown system error" msgstr "Nepoznata greÅ¡ka sustava" @@ -81,11 +81,11 @@ msgstr "nezavisni memorijski objekt" #: lib/file-type.c:66 msgid "block special file" -msgstr "specijalna blokovska datoteka (blok uređaj)" +msgstr "blok specijalna datoteka (blok uređaj)" #: lib/file-type.c:69 msgid "character special file" -msgstr "(specijalna) znak datoteka (bajt uređaj)" +msgstr "znak specijalna datoteka (bajt uređaj)" #: lib/file-type.c:72 msgid "contiguous data" @@ -101,11 +101,11 @@ msgstr "vrata" #: lib/file-type.c:81 msgid "multiplexed block special file" -msgstr "multipleksirana (specijalna) blok datoteka (blok-uređaj)" +msgstr "multipleksirana blok specijalna datoteka (blok-uređaj)" #: lib/file-type.c:84 msgid "multiplexed character special file" -msgstr "multipleksirana (specijalna) znak datoteka (bajt uređaj)" +msgstr "multipleksirana znak speijalna datoteka (bajt uređaj)" #: lib/file-type.c:87 msgid "multiplexed file" @@ -117,7 +117,7 @@ msgstr "imenovana datoteka" #: lib/file-type.c:93 msgid "network special file" -msgstr "(specijalna) mrežna datoteka (mrežni uređaj)" +msgstr "mrežna specijalna datoteka (mrežni uređaj)" #: lib/file-type.c:96 msgid "migrated file with data" @@ -146,12 +146,12 @@ msgstr "čudna datoteka" #: lib/getopt.c:278 #, c-format msgid "%s: option '%s%s' is ambiguous\n" -msgstr "%s: opcija „-%s%s“ nije jednoznačna\n" +msgstr "%s: opcija „-%s%s“ je dvosmislen\n" #: lib/getopt.c:284 #, c-format msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "%s: opcija „%s%s“ nije jednoznačna; mogućnosti su:" +msgstr "%s: opcija „%s%s“ je dvosmislena; mogućnosti su:" #: lib/getopt.c:319 #, c-format @@ -199,83 +199,83 @@ msgstr "%s: opcija zahtijeva argument -- „%c“\n" #. If you don't know what to put here, please see #. #. and use glyphs suitable for your language. -#: lib/quotearg.c:355 +#: lib/quotearg.c:354 msgid "`" msgstr "„" -#: lib/quotearg.c:356 +#: lib/quotearg.c:355 msgid "'" msgstr "“" -#: lib/regcomp.c:135 +#: lib/regcomp.c:122 msgid "Success" msgstr "Uspjeh" -#: lib/regcomp.c:138 +#: lib/regcomp.c:125 msgid "No match" msgstr "Nema podudaranja" -#: lib/regcomp.c:141 +#: lib/regcomp.c:128 msgid "Invalid regular expression" msgstr "Nevaljani regularni izraz" -#: lib/regcomp.c:144 +#: lib/regcomp.c:131 msgid "Invalid collation character" msgstr "Nevaljani znak za razvrstavanje" -#: lib/regcomp.c:147 +#: lib/regcomp.c:134 msgid "Invalid character class name" msgstr "Nevaljano ime klase znakova" -#: lib/regcomp.c:150 +#: lib/regcomp.c:137 msgid "Trailing backslash" -msgstr "Zaostala obratna kosa crta (backslash)" +msgstr "Zaostala obratna kosa crta („\\“, backslash)" -#: lib/regcomp.c:153 +#: lib/regcomp.c:140 msgid "Invalid back reference" msgstr "Nevaljana povratna referencija" -#: lib/regcomp.c:156 +#: lib/regcomp.c:143 msgid "Unmatched [, [^, [:, [., or [=" msgstr "Nesparena [, [^, [:, [., ili [=" -#: lib/regcomp.c:159 +#: lib/regcomp.c:146 msgid "Unmatched ( or \\(" msgstr "Nesparena ( ili \\(" -#: lib/regcomp.c:162 +#: lib/regcomp.c:149 msgid "Unmatched \\{" msgstr "Nesparena \\{" -#: lib/regcomp.c:165 +#: lib/regcomp.c:152 msgid "Invalid content of \\{\\}" -msgstr "Nevaljani sadržaj u \\{\\}" +msgstr "Nevaljani sadržaj \\{\\}" -#: lib/regcomp.c:168 +#: lib/regcomp.c:155 msgid "Invalid range end" msgstr "Nevaljani kraj raspona" -#: lib/regcomp.c:171 +#: lib/regcomp.c:158 msgid "Memory exhausted" msgstr "Nema dovoljno memorije" -#: lib/regcomp.c:174 +#: lib/regcomp.c:161 msgid "Invalid preceding regular expression" -msgstr "Nevaljani prethodni regularni izraz" +msgstr "Prethodni regularni izraz nije valjan" -#: lib/regcomp.c:177 +#: lib/regcomp.c:164 msgid "Premature end of regular expression" msgstr "Prerani kraj regularnog izraza" -#: lib/regcomp.c:180 +#: lib/regcomp.c:167 msgid "Regular expression too big" msgstr "Regularni izraz je prevelik" -#: lib/regcomp.c:183 +#: lib/regcomp.c:170 msgid "Unmatched ) or \\)" msgstr "Nesparena ) ili \\)" -#: lib/regcomp.c:676 +#: lib/regcomp.c:650 msgid "No previous regular expression" msgstr "Nema prethodnog regularnog izraza" @@ -473,17 +473,17 @@ msgstr "Mrežna stranica za %s: <%s>\n" msgid "General help using GNU software: <%s>\n" msgstr "Općenita pomoć za koriÅ¡tenje GNU softvera: <%s>\n" -#: src/analyze.c:454 src/diff.c:1406 +#: src/analyze.c:455 src/diff.c:1478 #, c-format msgid "Files %s and %s differ\n" msgstr "Datoteke %s i %s su različite\n" -#: src/analyze.c:455 +#: src/analyze.c:456 #, c-format msgid "Binary files %s and %s differ\n" msgstr "Binarne datoteke %s i %s se razlikuju\n" -#: src/analyze.c:706 src/diff3.c:1470 src/util.c:1254 +#: src/analyze.c:707 src/diff3.c:1457 src/util.c:1354 msgid "No newline at end of file" msgstr "Nema znaka za kraj retka (LF) na kraju datoteke" @@ -497,40 +497,41 @@ msgstr "Torbjorn Granlund" msgid "David MacKenzie" msgstr "David MacKenzie" -#: src/cmp.c:120 src/diff.c:879 src/diff3.c:467 src/sdiff.c:160 +#: src/cmp.c:124 src/diff.c:939 src/diff3.c:465 src/sdiff.c:159 #, c-format msgid "Try '%s --help' for more information." msgstr "PokuÅ¡ajte s „%s --help“ za pomoć i viÅ¡e informacija." -#: src/cmp.c:138 +#: src/cmp.c:142 #, c-format msgid "invalid --ignore-initial value '%s'" msgstr "nevaljana vrijednost „%s“ za --ignore-initial" -#: src/cmp.c:148 +#: src/cmp.c:152 #, c-format msgid "options -l and -s are incompatible" msgstr "opcije -l i -s nisu kompatibilne" -#: src/cmp.c:156 src/diff.c:887 src/diff3.c:474 src/sdiff.c:168 src/sdiff.c:316 -#: src/sdiff.c:323 src/sdiff.c:876 src/util.c:852 src/util.c:952 src/util.c:959 +#: src/cmp.c:160 src/diff.c:947 src/diff3.c:472 src/sdiff.c:167 src/sdiff.c:314 +#: src/sdiff.c:321 src/sdiff.c:873 src/util.c:952 src/util.c:1052 +#: src/util.c:1059 msgid "write failed" msgstr "pisanje nije uspjelo" -#: src/cmp.c:158 src/diff.c:889 src/diff.c:1471 src/diff3.c:476 src/sdiff.c:170 +#: src/cmp.c:162 src/diff.c:949 src/diff.c:1543 src/diff3.c:474 src/sdiff.c:169 msgid "standard output" msgstr "standardni izlaz" -#: src/cmp.c:162 +#: src/cmp.c:166 msgid "-b, --print-bytes print differing bytes" msgstr "-b, --print-bytes ispiÅ¡e različite bajtove" -#: src/cmp.c:163 +#: src/cmp.c:167 msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs" msgstr "" "-i, --ignore-initial=BROJ preskoči prvih BROJ bajtova oba ulaza" -#: src/cmp.c:164 +#: src/cmp.c:168 msgid "" "-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n" " first SKIP2 bytes of FILE2" @@ -538,40 +539,40 @@ msgstr "" "-i, --ignore-initial=SKIP1:SKIP2 preskoči prvih SKIP1 bajtova DATOTEKE1\n" " i prvih SKIP2 bajtova DATOTEKE2" -#: src/cmp.c:166 +#: src/cmp.c:170 msgid "" "-l, --verbose output byte numbers and differing byte values" msgstr "" "-l, --verbose pokaže poziciju i vrijednost različitih bajtova" -#: src/cmp.c:167 +#: src/cmp.c:171 msgid "-n, --bytes=LIMIT compare at most LIMIT bytes" msgstr "-n, --bytes=BROJ usporedi ne viÅ¡e od BROJ bajtova" -#: src/cmp.c:168 +#: src/cmp.c:172 msgid "-s, --quiet, --silent suppress all normal output" msgstr "" "-s, --quiet, --silent izostavi normalni izlaz (ispiÅ¡e samo status " "izlaza)" -#: src/cmp.c:169 +#: src/cmp.c:173 msgid " --help display this help and exit" msgstr " --help pokaže ovu pomoć i iziđe" -#: src/cmp.c:170 +#: src/cmp.c:174 msgid "-v, --version output version information and exit" -msgstr "-v, --version informacije o inačici ovog programa" +msgstr "-v, --version informira o inačici ovog programa i iziđe" -#: src/cmp.c:179 +#: src/cmp.c:183 #, c-format msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n" msgstr "Uporaba: %s [OPCIJA]... DATOTEKA1 [DATOTEKA2 [SKIP1 [SKIP2]]]\n" -#: src/cmp.c:181 +#: src/cmp.c:185 msgid "Compare two files byte by byte." msgstr "Usporedi dvije datoteke bajt po bajt." -#: src/cmp.c:183 +#: src/cmp.c:187 msgid "" "The optional SKIP1 and SKIP2 specify the number of bytes to skip\n" "at the beginning of each file (zero by default)." @@ -579,13 +580,12 @@ msgstr "" "Neobvezne vrijednosti SKIP1 i SKIP2 specificiraju broj bajtova koje treba\n" "preskočiti od početka svake datoteke (zadano 0)." -#: src/cmp.c:186 src/diff.c:999 src/diff3.c:514 src/sdiff.c:211 +#: src/cmp.c:190 src/diff.c:1059 src/diff3.c:512 src/sdiff.c:210 msgid "" "Mandatory arguments to long options are mandatory for short options too.\n" -msgstr "" -"Obvezni argumenti dugačkih opcija obvezni su također i za kratke opcije.\n" +msgstr "Obvezni argumenti za duge opcije, obvezni su i za kratke opcije.\n" -#: src/cmp.c:192 +#: src/cmp.c:196 msgid "" "SKIP values may be followed by the following multiplicative suffixes:\n" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" @@ -595,192 +595,192 @@ msgstr "" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" "GB 1,000,000,000, G 1,073,741,824, itd. za T, P, E, Z, Y." -#: src/cmp.c:195 +#: src/cmp.c:199 msgid "If a FILE is '-' or missing, read standard input." msgstr "Ako DATOTEKA nije navedena ili je „-“, čita standardni ulaz." -#: src/cmp.c:196 src/diff.c:987 src/sdiff.c:221 +#: src/cmp.c:200 src/diff.c:1047 src/sdiff.c:220 msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble." msgstr "" "Izlazni status je 0 ako su ulazi jednaki, 1 ako su različiti, 2 pri greÅ¡ki." -#: src/cmp.c:243 +#: src/cmp.c:247 #, c-format msgid "invalid --bytes value '%s'" msgstr "nevaljana vrijednost „%s“ za --bytes" -#: src/cmp.c:269 src/diff.c:797 src/diff3.c:361 src/sdiff.c:567 +#: src/cmp.c:273 src/diff.c:857 src/diff3.c:368 src/sdiff.c:564 #, c-format msgid "missing operand after '%s'" -msgstr "nedostaje operand iza „%s“" +msgstr "nema operanda iza „%s“" -#: src/cmp.c:281 src/diff.c:799 src/diff3.c:363 src/sdiff.c:569 +#: src/cmp.c:285 src/diff.c:859 src/diff3.c:370 src/sdiff.c:566 #, c-format msgid "extra operand '%s'" msgstr "suviÅ¡ni operand „%s“" -#: src/cmp.c:507 +#: src/cmp.c:521 #, c-format msgid "%s %s differ: byte %s, line %s\n" msgstr "%s %s se razlikuju: bajt %s, redak %s\n" -#: src/cmp.c:523 +#: src/cmp.c:537 #, c-format msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n" msgstr "%s %s se razlikuju: bajt %s, redak %s je %3o %s %3o %s\n" -#: src/cmp.c:580 +#: src/cmp.c:594 #, c-format msgid "cmp: EOF on %s which is empty\n" msgstr "cmp: kraj datoteke (EOF) u %s koji je prazan\n" -#: src/cmp.c:594 +#: src/cmp.c:608 #, c-format msgid "cmp: EOF on %s after byte %s, line %s\n" msgstr "cmp: kraj datoteke (EOF) u %s iza bajta %s, redak %s\n" -#: src/cmp.c:595 +#: src/cmp.c:609 #, c-format msgid "cmp: EOF on %s after byte %s, in line %s\n" msgstr "cmp: kraj datoteke (EOF) u %s iza bajta %s, u retku %s\n" -#: src/cmp.c:601 +#: src/cmp.c:615 #, c-format msgid "cmp: EOF on %s after byte %s\n" msgstr "cmp: kraj datoteke (EOF) u %s iza bajta %s\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:51 +#: src/diff.c:50 msgid "Paul Eggert" msgstr "Paul Eggert" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:52 +#: src/diff.c:51 msgid "Mike Haertel" msgstr "Mike Haertel" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:53 +#: src/diff.c:52 msgid "David Hayes" msgstr "David Hayes" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:54 +#: src/diff.c:53 msgid "Richard Stallman" msgstr "Richard Stallman" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:55 +#: src/diff.c:54 msgid "Len Tower" msgstr "Len Tower" -#: src/diff.c:355 +#: src/diff.c:365 #, c-format msgid "invalid context length '%s'" msgstr "nevaljana duljina konteksta „%s“" -#: src/diff.c:438 +#: src/diff.c:487 #, c-format msgid "pagination not supported on this host" msgstr "paginacija nije podržana na ovom računalu" -#: src/diff.c:453 src/diff3.c:341 +#: src/diff.c:502 src/diff3.c:348 #, c-format msgid "too many file label options" msgstr "previÅ¡e opcija datotečnih oznaka (label)" -#: src/diff.c:530 +#: src/diff.c:579 #, c-format msgid "invalid width '%s'" msgstr "nevaljana Å¡irina „%s“" -#: src/diff.c:534 +#: src/diff.c:583 msgid "conflicting width options" msgstr "konfliktne opcije za Å¡irinu" -#: src/diff.c:559 +#: src/diff.c:608 #, c-format msgid "invalid horizon length '%s'" msgstr "nevaljana duljina „%s“ za horizon" -#: src/diff.c:615 +#: src/diff.c:664 #, c-format msgid "invalid tabsize '%s'" msgstr "nevaljana Å¡irina „%s“ za tab(ulator)" -#: src/diff.c:619 +#: src/diff.c:668 msgid "conflicting tabsize options" msgstr "konfliktne opcije za Å¡irinu tab(ulatora)" -#: src/diff.c:774 +#: src/diff.c:834 msgid "--from-file and --to-file both specified" msgstr "specificirani su --from-file i --to-file" -#: src/diff.c:893 +#: src/diff.c:953 msgid " --normal output a normal diff (the default)" msgstr " --normal prikaže normalni diff (zadano)" -#: src/diff.c:894 +#: src/diff.c:954 msgid "-q, --brief report only when files differ" msgstr "-q, --brief izvijesti samo kad se datoteke razlikuju" -#: src/diff.c:895 +#: src/diff.c:955 msgid "-s, --report-identical-files report when two files are the same" msgstr "-s, --report-identical-files izvijesti kad su datoteke jednake" -#: src/diff.c:896 +#: src/diff.c:956 msgid "" "-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context" msgstr "" "-c, -C NUM, --context[=BROJ] pokaže BROJ (zadano 3) retka\n" " kopiranog konteksta" -#: src/diff.c:897 +#: src/diff.c:957 msgid "" "-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context" msgstr "" "-u, -U NUM, --unified[=BROJ] pokaže BROJ (zadano 3) unificiranog konteksta" -#: src/diff.c:898 +#: src/diff.c:958 msgid "-e, --ed output an ed script" msgstr "-e, --ed generira i prikaže ed-script" -#: src/diff.c:899 +#: src/diff.c:959 msgid "-n, --rcs output an RCS format diff" msgstr "-n, --rcs prikaže diff u RCS formatu" -#: src/diff.c:900 +#: src/diff.c:960 msgid "-y, --side-by-side output in two columns" msgstr "-y, --side-by-side prikaz u dva stupca" -#: src/diff.c:901 +#: src/diff.c:961 msgid "" "-W, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-W, --width=BROJ prikaže ne viÅ¡e od BROJ (zadano 130)\n" " znakova po retku" -#: src/diff.c:902 +#: src/diff.c:962 msgid "" " --left-column output only the left column of common lines" msgstr "" " --left-column pokaže samo lijevi stupac kad su redci jednaki" -#: src/diff.c:903 +#: src/diff.c:963 msgid " --suppress-common-lines do not output common lines" msgstr " --suppress-common-lines ne prikazuje jednake retke" -#: src/diff.c:905 +#: src/diff.c:965 msgid "-p, --show-c-function show which C function each change is in" msgstr "" "-p, --show-c-function pokaže u kojoj C funkcije je svaka promjena" -#: src/diff.c:906 +#: src/diff.c:966 msgid "-F, --show-function-line=RE show the most recent line matching RE" msgstr "" "-F, --show-function-line=RE pokaže najnoviji redak podudaran s RE (regexp)" -#: src/diff.c:907 +#: src/diff.c:967 msgid "" " --label LABEL use LABEL instead of file name and timestamp\n" " (can be repeated)" @@ -788,83 +788,82 @@ msgstr "" " --label LABEL koristi LABEL umjesto imena i vremenskog žiga\n" " datoteke (može se ponavljati)" -#: src/diff.c:910 +#: src/diff.c:970 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "-t, --expand-tabs na izlazu proÅ¡iri tab(ulatore) u razmake" -#: src/diff.c:911 +#: src/diff.c:971 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T, --initial-tab poravna umetanjem tab(ulatora) na početak retka" -#: src/diff.c:912 +#: src/diff.c:972 msgid "" " --tabsize=NUM tab stops every NUM (default 8) print columns" msgstr "" " --tabsize=BROJ tabulacija svakih BROJ (zadano 8) stupaca" -#: src/diff.c:913 +#: src/diff.c:973 msgid "" " --suppress-blank-empty suppress space or tab before empty output lines" msgstr "" " --suppress-blank-empty izostavi razmak ili tab ispred\n" " praznih izlaznih redaka" -#: src/diff.c:914 +#: src/diff.c:974 msgid "-l, --paginate pass output through 'pr' to paginate it" msgstr "-l, --paginate proslijedi izlaz na paginaciju kroz „pr“" -#: src/diff.c:916 +#: src/diff.c:976 msgid "" "-r, --recursive recursively compare any subdirectories found" -msgstr "" -"-r, --recursive rekurzivno uspoređuje sve poddirektorije" +msgstr "-r, --recursive rekurzivno uspoređuje sve poddirektorije" -#: src/diff.c:917 +#: src/diff.c:977 msgid " --no-dereference don't follow symbolic links" -msgstr " --no-dereference ne slijedi simboličke poveznice" +msgstr " --no-dereference ne slijedi simboličke poveznice" -#: src/diff.c:918 +#: src/diff.c:978 msgid "-N, --new-file treat absent files as empty" -msgstr "-N, --new-file tretira odsutne datoteke kao prazne" +msgstr "-N, --new-file tretira odsutne datoteke kao prazne" -#: src/diff.c:919 +#: src/diff.c:979 msgid " --unidirectional-new-file treat absent first files as empty" msgstr "" -" --unidirectional-new-file tretira samo datoteke odsutne\n" -" u prvom direktoriju kao prazne" +" --unidirectional-new-file tretira samo datoteke odsutne\n" +" u prvom direktoriju kao prazne" -#: src/diff.c:920 +#: src/diff.c:980 msgid " --ignore-file-name-case ignore case when comparing file names" msgstr "" -" --ignore-file-name-case ignorira veličinu slova pri\n" -" uspoređivanju imena datoteka" +" --ignore-file-name-case zanemari veličinu slova pri\n" +" uspoređivanju imena datoteka" -#: src/diff.c:921 +#: src/diff.c:981 msgid " --no-ignore-file-name-case consider case when comparing file names" msgstr "" -" --no-ignore-file-name-case ne ignorira veličinu slova\n" +" --no-ignore-file-name-case ne zanemari veličinu slova\n" " pri uspoređivanju imena datoteka" -#: src/diff.c:922 +#: src/diff.c:982 msgid "-x, --exclude=PAT exclude files that match PAT" -msgstr "-x, --exclude=UZORAK izostavi datoteke podudarne s UZORKOM" +msgstr "-x, --exclude=UZORAK izostavi datoteke podudarne s UZORKOM" -#: src/diff.c:923 +#: src/diff.c:983 msgid "" "-X, --exclude-from=FILE exclude files that match any pattern in FILE" msgstr "" "-X, --exclude-from=DATOTEKA izostavi datoteke podudarne s bilo kojim\n" " uzorkom u DATOTECI" -#: src/diff.c:924 +#: src/diff.c:984 msgid "" "-S, --starting-file=FILE start with FILE when comparing directories" msgstr "" "-S, --starting-file=DATOTEKA pri uspoređivanju direktorija\n" " započinje s DATOTEKOM" -#: src/diff.c:925 +#: src/diff.c:985 msgid "" " --from-file=FILE1 compare FILE1 to all operands;\n" " FILE1 can be a directory" @@ -872,7 +871,7 @@ msgstr "" " --from-file=DATOTEKA1 usporedi DATOTEKU1 sa svim argumentima;\n" " DATOTEKA1 može biti direktorij" -#: src/diff.c:927 +#: src/diff.c:987 msgid "" " --to-file=FILE2 compare all operands to FILE2;\n" " FILE2 can be a directory" @@ -880,81 +879,81 @@ msgstr "" " --to-file=DATOTEKA2 usporedi sve argumente s DATOTEKOM2;\n" " DATOTEKA2 može biti direktorij" -#: src/diff.c:930 +#: src/diff.c:990 msgid "" "-i, --ignore-case ignore case differences in file contents" msgstr "" -"-i, --ignore-case ignorira veličinu slova u sadržaju datoteka" +"-i, --ignore-case zanemari veličinu slova u sadržaju datoteka" -#: src/diff.c:931 +#: src/diff.c:991 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" -"-E, --ignore-tab-expansion ignorira promjene nastale ekspanzijom " +"-E, --ignore-tab-expansion zanemari promjene nastale ekspanzijom " "tab(ova)" -#: src/diff.c:932 +#: src/diff.c:992 msgid "-Z, --ignore-trailing-space ignore white space at line end" -msgstr "-Z, --ignore-trailing-space ignorira bjeline na kraju retka" +msgstr "-Z, --ignore-trailing-space zanemari bjeline na kraju retka" -#: src/diff.c:933 +#: src/diff.c:993 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "" -"-b, --ignore-space-change ignorira promjene u količini bijelog prostora" +"-b, --ignore-space-change zanemari promjene u količini bijelog prostora" -#: src/diff.c:934 +#: src/diff.c:994 msgid "-w, --ignore-all-space ignore all white space" -msgstr "-w, --ignore-all-space ignorira sav bijeli prostor" +msgstr "-w, --ignore-all-space zanemari sav bijeli prostor" -#: src/diff.c:935 +#: src/diff.c:995 msgid "" "-B, --ignore-blank-lines ignore changes where lines are all blank" msgstr "" -"-B, --ignore-blank-lines ignorira promjene nastale uklanjanjem\n" +"-B, --ignore-blank-lines zanemari promjene nastale uklanjanjem\n" " praznih redaka" -#: src/diff.c:936 +#: src/diff.c:996 msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE" msgstr "" -"-I, --ignore-matching-lines=RE ignorira promjene nastale uklanjanjem " +"-I, --ignore-matching-lines=RE zanemari promjene nastale uklanjanjem " "redaka\n" " podudarnih s RE (regex)" -#: src/diff.c:938 +#: src/diff.c:998 msgid "-a, --text treat all files as text" msgstr "-a, --text tretira sve datoteke kao tekst" -#: src/diff.c:939 +#: src/diff.c:999 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr uklanja zaostali znak za Enter (CR) na ulazu" -#: src/diff.c:941 +#: src/diff.c:1001 msgid " --binary read and write data in binary mode" msgstr " --binary čita i piÅ¡e podatke u binarnom načinu" -#: src/diff.c:944 +#: src/diff.c:1004 msgid "" "-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs" msgstr "" "-D, --ifdef=IME pokaže spojenu datoteku s prikazanim\n" " razlikama u „#ifdef IME“" -#: src/diff.c:945 +#: src/diff.c:1005 msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT" msgstr "" " --GTYPE-group-format=GFMT ulazne grupe vrste GTYPE formatira s GFMT" -#: src/diff.c:946 +#: src/diff.c:1006 msgid " --line-format=LFMT format all input lines with LFMT" msgstr " --line-format=LFMT sve ulazne retke formatira s LFMT" -#: src/diff.c:947 +#: src/diff.c:1007 msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT" msgstr "" " --LTYPE-line-format=LFMT ulazne retke vrste LTYPE formatira s LFMT" -#: src/diff.c:948 +#: src/diff.c:1008 msgid "" " These format options provide fine-grained control over the output\n" " of diff, generalizing -D/--ifdef." @@ -963,13 +962,13 @@ msgstr "" "oblikovanje\n" " prikaza diff izlaza generaliziranjem opcije -D/--ifdef." -#: src/diff.c:950 +#: src/diff.c:1010 msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'." msgstr "" " LTYPE je jedan od „old“, „new“ ili „unchanged“.\n" " GTYPE je jedan od LTYPE ili „changed“." -#: src/diff.c:951 +#: src/diff.c:1011 msgid "" " GFMT (only) may contain:\n" " %< lines from FILE1\n" @@ -997,7 +996,7 @@ msgstr "" " M L+1\n" " %(A=B?T:E) ako je A jednako B, onda T, inače E" -#: src/diff.c:963 +#: src/diff.c:1023 msgid "" " LFMT (only) may contain:\n" " %L contents of line\n" @@ -1009,7 +1008,7 @@ msgstr "" " %l sadržaj retka bez zaostalih newline (znak novog retka)\n" " %[-][Å IRINA][.[PREC]]{doxX} format broja ulaznog retka u stilu printf" -#: src/diff.c:967 +#: src/diff.c:1027 msgid "" " Both GFMT and LFMT may contain:\n" " %% %\n" @@ -1023,23 +1022,23 @@ msgstr "" " %c'\\OOO' znak u oktalnom kodu OOO\n" " C znak C (ostali znakovi predstavljaju sami sebe)" -#: src/diff.c:973 +#: src/diff.c:1033 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "-d, --minimal nastoji naći Å¡to manju količinu promjena" -#: src/diff.c:974 +#: src/diff.c:1034 msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix" msgstr "" " --horizon-lines=BROJ zadrži BROJ redaka zajednički prefiksu i sufiksu" -#: src/diff.c:975 +#: src/diff.c:1035 msgid "" " --speed-large-files assume large files and many scattered small changes" msgstr "" " --speed-large-files pretpostavlja da su datoteke velike s puno\n" " malih razbacanih promjena" -#: src/diff.c:976 +#: src/diff.c:1036 msgid "" " --color[=WHEN] color output; WHEN is 'never', 'always', or " "'auto';\n" @@ -1048,7 +1047,7 @@ msgstr "" " --color[=KAD] oboji izlaz; KAD može biti 'never', 'always'\n" " ili 'auto'; samo --color znači --color='auto'" -#: src/diff.c:978 +#: src/diff.c:1038 msgid "" " --palette=PALETTE the colors to use when --color is active; PALETTE " "is\n" @@ -1057,42 +1056,42 @@ msgstr "" " --palette=PALETA boje koje će se koristiti s --color; PALETA je\n" " popis terminfo mogućnosti odvojenih dvotočkom" -#: src/diff.c:981 +#: src/diff.c:1041 msgid " --help display this help and exit" msgstr " --help pokaže ovu pomoć" -#: src/diff.c:982 +#: src/diff.c:1042 msgid "-v, --version output version information and exit" -msgstr "-v, --version informacije o inačici ovog programa" +msgstr "-v, --version informira o inačici ovog programa i iziđe" -#: src/diff.c:984 +#: src/diff.c:1044 msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'." msgstr "" "DATOTEKE su „DATOTEKA1 DATOTEKA2“ ili „DIR1 DIR2“ ili „DIR DATOTEKA“ ili\n" " „DATOTEKA DIR“." -#: src/diff.c:985 +#: src/diff.c:1045 msgid "" "If --from-file or --to-file is given, there are no restrictions on FILE(s)." msgstr "" "Ako je dano --from-file ili --to-file, onda nema restrikcija na DATOTEK(U/" "E)." -#: src/diff.c:986 src/diff3.c:533 src/sdiff.c:220 +#: src/diff.c:1046 src/diff3.c:531 src/sdiff.c:219 msgid "If a FILE is '-', read standard input." msgstr "Ako je DATOTEKA „-“, čita standardni ulaz." -#: src/diff.c:996 +#: src/diff.c:1056 #, c-format msgid "Usage: %s [OPTION]... FILES\n" msgstr "Uporaba: %s [OPCIJA...] DATOTEKE\n" -#: src/diff.c:997 +#: src/diff.c:1057 msgid "Compare FILES line by line." msgstr "Usporedi DATOTEKE redak po redak." # Ovdje trebam zamijeniti poredak... Pogledati kako se to radi. -#: src/diff.c:1034 +#: src/diff.c:1094 #, c-format msgid "conflicting %s option value '%s'" msgstr "konfliktna vrijednost „%2$s“ opcije %1$s" @@ -1102,75 +1101,75 @@ msgstr "konfliktna vrijednost „%2$s“ opcije %1$s" # # Format: # C -#: src/diff.c:1047 +#: src/diff.c:1107 #, c-format msgid "conflicting output style options" msgstr "konfliktne opcije za stil izlaza" -#: src/diff.c:1063 +#: src/diff.c:1123 #, c-format msgid "invalid color '%s'" msgstr "nevaljana boja „%s“" -#: src/diff.c:1119 src/diff.c:1329 +#: src/diff.c:1197 src/diff.c:1401 #, c-format msgid "Only in %s: %s\n" msgstr "Samo u %s: %s\n" -#: src/diff.c:1253 +#: src/diff.c:1325 msgid "cannot compare '-' to a directory" msgstr "nije moguće usporediti „-“ s direktorijem" -#: src/diff.c:1288 +#: src/diff.c:1360 msgid "-D option not supported with directories" msgstr "opcija -D nije podržana za direktorije" -#: src/diff.c:1297 +#: src/diff.c:1369 #, c-format msgid "Common subdirectories: %s and %s\n" msgstr "Uobičajeni poddirektoriji: %s i %s\n" -#: src/diff.c:1339 src/diff.c:1389 +#: src/diff.c:1411 src/diff.c:1461 #, c-format msgid "File %s is a %s while file %s is a %s\n" msgstr "Datoteka %s je %s dok datoteka %s je %s\n" -#: src/diff.c:1375 +#: src/diff.c:1447 #, c-format msgid "Symbolic links %s and %s differ\n" msgstr "Simboličke poveznice %s i %s se razlikuju\n" -#: src/diff.c:1462 +#: src/diff.c:1534 #, c-format msgid "Files %s and %s are identical\n" msgstr "Datoteke %s i %s su identične\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff3.c:43 +#: src/diff3.c:51 msgid "Randy Smith" msgstr "Randy Smith" -#: src/diff3.c:356 +#: src/diff3.c:363 #, c-format msgid "incompatible options" msgstr "nekompatibilne opcije" -#: src/diff3.c:396 +#: src/diff3.c:403 msgid "'-' specified for more than one input file" msgstr "„-“ je navedena za viÅ¡e od jedne ulazne datoteke" -#: src/diff3.c:447 src/diff3.c:1295 src/diff3.c:1698 src/diff3.c:1753 -#: src/sdiff.c:308 src/sdiff.c:846 src/sdiff.c:857 +#: src/diff3.c:445 src/diff3.c:1284 src/diff3.c:1683 src/diff3.c:1738 +#: src/sdiff.c:306 src/sdiff.c:843 src/sdiff.c:854 msgid "read failed" msgstr "čitanje nije uspjelo" -#: src/diff3.c:480 +#: src/diff3.c:478 msgid "-A, --show-all output all changes, bracketing conflicts" msgstr "" "-A, --show-all pokaže sve promjene, konflikte u uglatim " "zagradama" -#: src/diff3.c:482 +#: src/diff3.c:480 msgid "" "-e, --ed output ed script incorporating changes\n" " from OLDFILE to YOURFILE into MYFILE" @@ -1178,11 +1177,11 @@ msgstr "" "-e, --ed generira ed-script koji uključujuje promjene od\n" " STARADATOTEKE do VAÅ ADATOTEKE u MOJADATOTEKA" -#: src/diff3.c:484 +#: src/diff3.c:482 msgid "-E, --show-overlap like -e, but bracket conflicts" msgstr "-E, --show-overlap kao -e plus konflikte u uglatim zagradama" -#: src/diff3.c:485 +#: src/diff3.c:483 msgid "" "-3, --easy-only like -e, but incorporate only nonoverlapping " "changes" @@ -1190,22 +1189,22 @@ msgstr "" "-3, --easy-only kao -e, ali uključi samo promjene koje se\n" " ne preklapaju" -#: src/diff3.c:486 +#: src/diff3.c:484 msgid "" "-x, --overlap-only like -e, but incorporate only overlapping changes" msgstr "" "-x, --overlap-only kao -e, ali uključi samo promjene koje se\n" " preklapaju" -#: src/diff3.c:487 +#: src/diff3.c:485 msgid "-X like -x, but bracket conflicts" msgstr "-X kao -x plus konflikte u uglatim zagradama" -#: src/diff3.c:488 +#: src/diff3.c:486 msgid "-i append 'w' and 'q' commands to ed scripts" msgstr "-i pripoji naredbe „w“ i „q“ u ed-scripts" -#: src/diff3.c:490 +#: src/diff3.c:488 msgid "" "-m, --merge output actual merged file, according to\n" " -A if no other options are given" @@ -1213,25 +1212,25 @@ msgstr "" "-m, --merge prikaže trenutnu spojenu datoteku kao -A ako\n" " nijedna druga opcija nije dana" -#: src/diff3.c:493 +#: src/diff3.c:491 msgid "-a, --text treat all files as text" msgstr "-a, --text tretira sve datoteke kao tekst" -#: src/diff3.c:494 +#: src/diff3.c:492 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr uklanja zaostali znak za Enter (CR) na ulazu" -#: src/diff3.c:495 +#: src/diff3.c:493 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T, --initial-tab poravna umetanjem tab(ulatora) na početak retka" -#: src/diff3.c:496 +#: src/diff3.c:494 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr " --diff-program=PROGRAM koristi PROGRAM za uspoređivanja datoteka" -#: src/diff3.c:497 +#: src/diff3.c:495 msgid "" "-L, --label=LABEL use LABEL instead of file name\n" " (can be repeated up to three times)" @@ -1239,24 +1238,24 @@ msgstr "" "-L, --label=LABEL koristi LABEL umjesto imena i vremenskog žiga\n" " datoteke (može se ponavljati)" -#: src/diff3.c:500 +#: src/diff3.c:498 msgid " --help display this help and exit" msgstr " --help pokaže ovu pomoć" -#: src/diff3.c:501 +#: src/diff3.c:499 msgid "-v, --version output version information and exit" -msgstr "-v, --version informacije o inačici ovog programa" +msgstr "-v, --version informira o inačici ovog programa i iziđe" -#: src/diff3.c:510 +#: src/diff3.c:508 #, c-format msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n" msgstr "Uporaba: %s [OPCIJA...] MOJADATOTEKA STARADATOTEKA VAÅ ADATOTEKA\n" -#: src/diff3.c:512 +#: src/diff3.c:510 msgid "Compare three files line by line." msgstr "Usporedi tri datoteke redak po redak." -#: src/diff3.c:522 +#: src/diff3.c:520 msgid "" "\n" "The default output format is a somewhat human-readable representation of\n" @@ -1280,54 +1279,54 @@ msgstr "" "je spojena datoteka. Za neuobičajeni ulaz to je pouzdanije od koriÅ¡tenja ed-" "a.\n" -#: src/diff3.c:534 +#: src/diff3.c:532 msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble." msgstr "Izlazno stanje je 0 za uspjeh, 1 za neuspjeh, 2 u slučaju greÅ¡ke." -#: src/diff3.c:727 +#: src/diff3.c:725 msgid "internal error: screwup in format of diff blocks" msgstr "*interna programska greÅ¡ka*: greÅ¡ka u formatu diff blokova" -#: src/diff3.c:1022 +#: src/diff3.c:1015 #, c-format msgid "%s: diff failed: " msgstr "%s: diff nije uspio: " -#: src/diff3.c:1044 +#: src/diff3.c:1037 msgid "internal error: invalid diff type in process_diff" -msgstr "*interna greÅ¡ka*: nevaljana diff vrsta u process_diff" +msgstr "*interna greÅ¡ka*: nevaljani tip diff-a u process_diff" -#: src/diff3.c:1069 +#: src/diff3.c:1060 msgid "invalid diff format; invalid change separator" msgstr "nevaljani diff format: nevaljani graničnik promjena" -#: src/diff3.c:1305 +#: src/diff3.c:1294 msgid "invalid diff format; incomplete last line" msgstr "nevaljani diff format: nepotpuni posljednji redak" -#: src/diff3.c:1329 src/sdiff.c:276 src/util.c:969 +#: src/diff3.c:1318 src/sdiff.c:274 src/util.c:1069 #, c-format msgid "subsidiary program '%s' could not be invoked" msgstr "podređeni program „%s“ nije (bilo) moguće pozvati" -#: src/diff3.c:1354 +#: src/diff3.c:1343 msgid "invalid diff format; incorrect leading line chars" msgstr "nevaljani diff format: nevaljani znakovi na početku retka" -#: src/diff3.c:1427 +#: src/diff3.c:1416 msgid "internal error: invalid diff type passed to output" -msgstr "*interna greÅ¡ka*:nevaljana diff vrsta je proslijeđena na izlaz" +msgstr "*interna greÅ¡ka*:nevaljani tip diff-a je proslijeđen na izlaz" -#: src/diff3.c:1700 src/diff3.c:1757 +#: src/diff3.c:1685 src/diff3.c:1742 msgid "input file shrank" msgstr "ulazna datoteka se smanjila" -#: src/dir.c:156 +#: src/dir.c:154 #, c-format msgid "cannot compare file names '%s' and '%s'" msgstr "nije moguće usporediti imena datoteka „%s“ i „%s“" -#: src/dir.c:225 +#: src/dir.c:223 #, c-format msgid "%s: recursive directory loop" msgstr "%s: rekurzivna petlja direktorija" @@ -1337,89 +1336,89 @@ msgstr "%s: rekurzivna petlja direktorija" msgid "Thomas Lord" msgstr "Thomas Lord" -#: src/sdiff.c:174 +#: src/sdiff.c:173 msgid "" "-o, --output=FILE operate interactively, sending output to FILE" msgstr "" "-o, --output=DATOTEKA interaktivni rad; rezultat se sprema u DATOTEKU" -#: src/sdiff.c:176 +#: src/sdiff.c:175 msgid "" "-i, --ignore-case consider upper- and lower-case to be the same" -msgstr "-i, --ignore-case ignorira veličinu slova" +msgstr "-i, --ignore-case zanemari veličinu slova" -#: src/sdiff.c:177 +#: src/sdiff.c:176 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" -"-E, --ignore-tab-expansion ignorira promjene nastale ekspanzijom tab(ova)" +"-E, --ignore-tab-expansion zanemari promjene nastale ekspanzijom tab(ova)" -#: src/sdiff.c:178 +#: src/sdiff.c:177 msgid "-Z, --ignore-trailing-space ignore white space at line end" -msgstr "-Z, --ignore-trailing-space ignorira bjeline na kraju retka" +msgstr "-Z, --ignore-trailing-space zanemari bjeline na kraju retka" -#: src/sdiff.c:179 +#: src/sdiff.c:178 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "" -"-b, --ignore-space-change ignorira promjene u količini bijelog prostora" +"-b, --ignore-space-change zanemari promjene u količini bijelog prostora" -#: src/sdiff.c:180 +#: src/sdiff.c:179 msgid "-W, --ignore-all-space ignore all white space" -msgstr "-W, --ignore-all-space ignorira sav bijeli prostor" +msgstr "-W, --ignore-all-space zanemari sav bijeli prostor" -#: src/sdiff.c:181 +#: src/sdiff.c:180 msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank" msgstr "" -"-B, --ignore-blank-lines ignorira promjene nastale uklanjanjem\n" +"-B, --ignore-blank-lines zanemari promjene nastale uklanjanjem\n" " praznih redaka" -#: src/sdiff.c:182 +#: src/sdiff.c:181 msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE" msgstr "" -"-I, --ignore-matching-lines=RE ignorira promjene nastale uklanjanjem " +"-I, --ignore-matching-lines=RE zanemari promjene nastale uklanjanjem " "redaka\n" " podudarnih s RE (regex)" -#: src/sdiff.c:183 +#: src/sdiff.c:182 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr uklanja zaostali znak za Enter (CR) na ulazu" -#: src/sdiff.c:184 +#: src/sdiff.c:183 msgid "-a, --text treat all files as text" msgstr "-a, --text tretira sve datoteke kao tekst" -#: src/sdiff.c:186 +#: src/sdiff.c:185 msgid "" "-w, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-w, --width=NUM ispiÅ¡e ne viÅ¡e od BROJ (zadano 130)\n" " znakova po retku" -#: src/sdiff.c:187 +#: src/sdiff.c:186 msgid "" "-l, --left-column output only the left column of common lines" msgstr "" "-l, --left-column pokaže samo lijevi stupac kad su redci jednaki" -#: src/sdiff.c:188 +#: src/sdiff.c:187 msgid "-s, --suppress-common-lines do not output common lines" -msgstr "-s, --suppress-common-lines ne prikazuje jednake retke" +msgstr "-s, --suppress-common-lines ne pokazuje jednake retke" -#: src/sdiff.c:190 +#: src/sdiff.c:189 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "-t, --expand-tabs na izlazu proÅ¡iri tab(ulatore) u razmake" -#: src/sdiff.c:191 +#: src/sdiff.c:190 msgid "" " --tabsize=NUM tab stops at every NUM (default 8) print columns" msgstr " --tabsize=NUM tabulacija svakih BROJ (zadano 8) stupaca" -#: src/sdiff.c:193 +#: src/sdiff.c:192 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "-d, --minimal nastoji naći Å¡to manju količinu promjena" -#: src/sdiff.c:194 +#: src/sdiff.c:193 msgid "" "-H, --speed-large-files assume large files, many scattered small changes" msgstr "" @@ -1427,38 +1426,38 @@ msgstr "" "malih\n" " razbacanih promjena" -#: src/sdiff.c:195 +#: src/sdiff.c:194 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr " --diff-program=PROGRAM koristi PROGRAM za uspoređivanja datoteka" -#: src/sdiff.c:197 +#: src/sdiff.c:196 msgid " --help display this help and exit" msgstr " --help pokaže ovu pomoć" -#: src/sdiff.c:198 +#: src/sdiff.c:197 msgid "-v, --version output version information and exit" -msgstr "-v, --version informacije o inačici ovog programa" +msgstr "-v, --version informira o inačici ovog programa i iziđe" -#: src/sdiff.c:207 +#: src/sdiff.c:206 #, c-format msgid "Usage: %s [OPTION]... FILE1 FILE2\n" msgstr "Uporaba: %s [OPCIJA...] DATOTEKA1 DATOTEKA2\n" -#: src/sdiff.c:209 +#: src/sdiff.c:208 msgid "Side-by-side merge of differences between FILE1 and FILE2." msgstr "" "Interaktivno usporedi DATOTEKU1 s DATOTEKOM2, pokaže ih jednu pored druge\n" "s razlikama između njih." -#: src/sdiff.c:330 +#: src/sdiff.c:328 msgid "cannot interactively merge standard input" msgstr "nije moguće interaktivno spojiti standardni ulaz" -#: src/sdiff.c:597 +#: src/sdiff.c:594 msgid "both files to be compared are directories" msgstr "obje datoteke za usporedbu su direktoriji" -#: src/sdiff.c:820 +#: src/sdiff.c:817 msgid "" "ed:\tEdit then use both versions, each decorated with a header.\n" "eb:\tEdit then use both versions.\n" @@ -1482,12 +1481,12 @@ msgstr "" "v: Umetne i prikaže iste (zajedničke) retke.\n" "q: Iziđe (napusti ed).\n" -#: src/util.c:662 +#: src/util.c:755 #, c-format msgid "unrecognized prefix: %s" msgstr "neprepoznati prefiks: %s" -#: src/util.c:692 +#: src/util.c:785 #, c-format msgid "unparsable value for --palette" msgstr "nije moguće razabrati vrijednost za --palette" diff --git a/po/hu.gmo b/po/hu.gmo index 23e843f0213a4be35c9ec2b4152aec648ebd0de5..f016bbc0c6fba3d17e64e1870248a8e7a53c0392 100644 GIT binary patch delta 6608 zcmY+|30Rd?9>?(mLMm>!i|Z?jhyn_@0WRPMxS%3xW-b?afh(7L_1=pLG+xcEEHhI~ zO*1qro2cxjEl!qmvvR4Knw+v6P0cp7&74ZpneYFemwBA`nIE5X&byuWob$fd=ET;} zFKR=5XIh2TD7Ho+N_ED&8!2U@yggD{l``5XRZ6`(j-tM{y;39b1Iv~jXrrEwsdyHL zU{sV+m6(Tv@dOUSu#QR%#B@wi%BL1m$f98nj=?K<52kcdDhFT047`r%m`*R{_{Avg zZ{ikIU6h&tTT%9Zg`+XCtM0f5CsKa}rGw$!lp4?d)o=>3V=YRLKgCSUGn6`nn{YQH zFtxi<`>FpLt<+eo>!Fk#e?d-Bb9yS(AD3cld;wcx0O`9riShUo%JE%e=$wzja0;Pw+2XA5n?A=QrACHr%Ps7pp6lUWk9D@V6xLmgi$K!64sr&(b z85C03n}%ML9WS7a$W_e3%sB1+xRm;bC{r<+-i*TsQO^4WW#l^b4bH8ajWQ)0P_BQ* zsz)&l!>Jd?GyZa+Jv7K7IfnxH{cG{^zVIa^LRhEk7AR%#{AL|MIOP&(R{r7IVj zh;sZElm|J3^28l^3R&ePn1MS`&O3v{upK*xV!n^UL<$=)1JB|JG`O1#(L9s`ccOIQ zG=F47T5~mNpNn$-cI4jbJM4;GS>mi$H4J6(&9&;)C~Im5HbLJT6k1R?iZUdpPN%Z*y{PX(x$seJkKb7BGO^O3Sd^jnpd7yk+u;e6#e4y!BQi{KerM!G@Tmb5TGB8R zJ7O6&#?|;NK8!h-&f`YnDr}0Iu@UaZD0~j3gYTd`&_&B@*oJyIPbE*>5qn^-V4e9N zM?r2p9i_($u{GX@a>MPo59^SJP;;4=hPVw4+=UA9bC;$7^E zHsn=T>rkG2KX$`Y=<7t`cM39OZFz@6Fa|qgEXos%MqYU}1H0pLlnd^*+K;1j*g8-Z=yP zDEmJ~8Ie;cL;pP{p{!`$Se1;t;mSmr>dn{#_l@=GhLbeNg?~ipP=hS}1l>?Bl!JVG zR5i-}y(l+4f^yzxC~M^kHp5#etGp>65xHSc%MmCeaTi8orH?{zkzoW4bto5p)jHsP zjG_J`%9FO^RgfEWLRoBaC>hr_y;^RbpDt^TXbezR2&iz%$Y`*h&74O0PIeK+}i1E~aMj6^} zbM>knjJ>JP!c<&|{qPVD$M2D^xJsC(e=~|vUdtUAhX=6%UPRwu3g1!)#qKt}%6sA> z>Umg&M^Q##bb%g$jVL!fi>t9kAzx42j573Ba3W?F>3^84M``~8m*D_YyWeE|*U&Ji zSkK8JlnXU1(IYVjmr(y4(=fl3??0|bxj|dIt{37c>fd4pCd}9WU~%GT>IYEv-#}(d zjVR+<_-L6=|4v_~K`tEa(2L|5lp9<}ncM7ge$j9xF2z1hJ=c42EcKx--SHLp1oh95 zb*ict==KvRH|()cpSJ{M5jOF;b&vCL5)CydtMnpf;b4zG(TDtysgE%OTYB|~H~BKJ_2Z~)F_{KZWejYqK$ zUdDddzEXc7v#<&EN^F6vkY%H4Fdu)#^*DhAm4c@+M&AF(YW*uU2xava;N4h@^19tZ zdGc|*8r^UWN=Kf??syDkbzjCrjQErO@k+%W)Td)(tiqRZCGuvgROYdby#MPdG^OE5 zY>xY|3%-TD@C>%baE_HHi^4V-hw{Y3QAT2%Rj)$n*lLW&XHc$l5+m^sJb=xX@qm=o z+Z3dSk<0b_+7V?+rl8#5B(}tJC>OYjGKXRJ>hHoh>_EN1vKo6*--L4BYbYH#jwA6m zln$kH6JG{}0t%gQH@3nzaS(olGNg@H>Ny{Ra$+Gy<67*Bb=VP4U_1O8rQ^4-0YrPz7_z$FT4-N9Vy@VrBzAExW8Q2qNqAbFtC`0YX?sx%vWB3~VE18IK z)bp_iE=8HTT^NA}FdPp{JyfZ8*D(H3G<TcIg}@9%*!i1Pexf}(=h_e zP=IFjrEP?*QKqD`RUe3Q{BV>J%(LnaY)^feRo`Oy9H!C!7Rq&RAXDg5O&``5NJLp2 z*_eWJP=@{yY=L#y4BtQ*nd2COjHvpZY#{a9yH;Tb%EOE$R|(%N^%{}w1M-%<|3fLv zCGwQA@!;w_nJtyuw&Pa062G>}{ZQVNOIE!EU$@H1xXdco!+KS(l23@dl6P?b|J#^G z^`q4y3x;K(KfidA%p*?nK9O%mC`0fA{)foA_&cfJSewBw=26VG8atz%$bGMiS^Sah z5smWWD8lpvw>ZmMlxdOeZB6j6tafHXl@ghEzQW2Nvh5_N$j@XOk*$n0lzG#ePi0Wp zZPglDR^iK}3292cA+lX2GWYeHtcx||5As*Sms*8zaarlVkY|W&HJadm16ai%_sTd7 zrueAUdiu7#cTrwI%E_lUHvsF^T*?X&>VXvYga!_feQcdXplu zid>L+Xib`tAtZ`q6WM+u^8J?WH}Y(-r2nKrAqgX2l0zh)3@6VK7db(CkUtaIwv&or zN&oh*r0kn!HT=nPoaOx(Zq3tsl>bIvAmd5>b_e^rQu!A-M?CdAP(C_uTJz_ z+-WgytEB-`ag6d|5=QwcOec9{I%z;Ik~!ovBHKTRmu&R!Z#yhBtI*|e zxn~WVkv%4NwxPFRli{lHE~xOP8?wi+dyH78xyW?K#v8FV$6{Nhhmy-prNZlqO^?`E z+o4nR0*B4+G!hc@1H606#3Xk1cVr1n`Gd!+h z?_!(VOf!bYc!v9%q?U#FCfEy2r^ht1CQn$D(l;%59A$&9ct?UZC@i%(OH9M&EHd0?k=^5U+Y2hZreXKWB}|Uw8o87D z8Z$EU@-lPtXT}?xxND&ktcjVJGk#K@H8VD&%wEpec@0lhpw4Ml1@?N(bi-x@4>BBPDZ9=u zdptN(=a=m;dV5@@wz&A<>DQ;q0!T^JT@SoI z-&RmyEaG&ptIFoJ1=m5um|&k7CtHE72=u*}MAJRr^i(mCUb{i>`vsrBJm4>KdFWrM z%{$+g7?GQkJ8G(tm6y8r+H delta 5706 zcmYk=30zfG0>|<509QnD1;GVDZ~=-ZNFaiMLb8aMsic@oN#K^IR4U`sG_b{`%)J`5 zv^2}*X<4JDIg@F&*yK`{HkP|KlVxRD&F}xtWu_q}`W+3v;qYK`CF6@H#m z%>tGf4u6+1Z7`|6F~cYq2J5UbJ6jr4PW?^nO+7Nim~1R_+<>XnuV4zsgc>sqN8oMv z875=X*2Z+lzLFhF9`43WtQT%f8umplFmqAo594wSqSuAE z9`*hA*ay?v+78dce$@YoDcG!?F$GwF{kXqbMqwH!&SDmhXm89OT!Sw#@{tk7?4TYH zX-qD@g%#+EGKQa+ahQNlU~}AsP4Q!-kLC=<;qR#5$96R47A(L{9tzVbbjGzv=gs@5 zA6`K2Z|X-I(-j+{KXym`J{5~`H1gUFN&OV2;qWfTE<7t~0&V+Kxpn$@8f8FFW;^SYtA%PeHY_ zEtdJ$Ci#{VNf^UCsexgr9xueccoH?m9pi1ogD{u+TFl0a=*BqawFd7-&A>U-^>Me_ z4p*YC+l$p$FM;{j4;Ik6E;x>=x23hYScclYmr)&!>}DGpiu(OJ)JQI4A$Fqo+T~L* z6E~u+yNu}=#VC8?DC~#Ndnja5xPrYfo~t!Q6Hq_ggzCUW)Qm(>(fRSH1~wpVo1d^9 z#&Wj~n2*|g!Sw!&?wO?(j5fpe(q{MZQWXA_1^u@{Ev`5!=`0Vl>|9zKY{xECAY5v-4=ur;1X zb;!lMYXlLF3D|;qCTfI(FbYRG^+z#``ctTmZo*(a|NALy<;15*+oqcNt%v(C0uSP3 zyo74Flxflk%CQ+v$7r07>VVhz{yoRfQ60X58c<*c`v^lZiTj&03Tcuc0)zB_f zPmdsdGZ#>6-I0yL1~w%ai}R2t*K9|P_zP^0+F0QbftsnFsP{=B>V8G&(Fn#-;1M=6 zQJd#wRD*|5=dYnU(k6>10~1l_2cXt|2DZbs7=im7&!9TspKX_}J*p$A*Z}jgng0L^ z1359##fVTHI=~K$z|T?N|B9Lsz2-FaEzymgkSEXFg*>_DNz@weM$NY4kF^>9C)O|dDyzVq5!Pp$*Pz`0GM$#WO(ut@MRAYU73e};Nc#5Ta36ElR zKG$%*w9vj0H#y$GJ2;=)k9~tHaK4`Z%M_RdGp)$JQuiXuW$Mxj+rbpzKwN-N;~AWT zmBqH98_2y)0j=uy&*0;D9J!|%&0P=UW>g2NXpCE!kFY?`f4e*FJAEw9;)@-ahRK8M z4IjWo)awkU6Sx%BK=cq}-o>eSj*+L881o(V$f5k30b2~S|DdVF2%+Y#O2;^=ypC9DER` z;B>r%8o-zl%zpue?G$uFb-Nl8kU^R^P*dM{l>K8f8kudg1$Evv+RoS@$75K-`62h% zB{_|1r}MpbCOr5s^_$oOE5|VZk5bq&#@-;g%=qeau{Y-%-sgLXnIdGvnuXX0kE6bC zQ_jtBB(iE|C-R5V1Xb8}dL!Gw97ML62_I{hwgT5tUpJQdpGl!$oL%cfm`i>5c-!+A zaW(Z{Q6qnLf<1o~b;CXr?R6`#FZHQK*F6+6DRi4` zr(_E1g4eJZ%>%y2#0N3SP_yFcme+$#mOtnu(2I}|kAYYkAmG)m)vmAF| zBo4Etj1h8jpN>bk)gsONti1&#b6-wEDis1A8C4v%6m`c*M{Y>pbyAykK2{mnj> z5jcnX5Y)__#HM&2b^Q(0QZ;15g;9P4P*o+;at=Vzlk02BC6fMIn2K{O%n6g1&5;6dM-A{m$4!4 z!a8_Bbw6W1z}D1HJZk@;at#BhhgI9PZ;u*SI^KaLsE)pZdVk!&PMA@{R3%U-tFgOx z8MdXq8});en1lZF?3(A{0P0In-=D|M*yJ&1lcF|PDXQa>QBz%onvqqg>-J(4Uhq(e zq0s1YyM~FV&60~++aVZ_Q?M(pL5=h&~6;>oS5sl9D8tn6RN@UsI~hUHT7Xn+C7nkdj9iKQ$7>*n61Dd+<=;qH_(Nw zl-_B+M|QNH{|Bl3PV$I$J?;CB7x-LBKDSlhCvEutvyA;?j*xfBbEF|5ln|vj^ z1cj9AkQ?MFvW@5%d`Y_9x$ykwj0#O){S7 zXhjOhx2kaHNzha9KdpZtg)L+Q=}Dd^Yl)8E$Z|59>?Z#pe?2m(_|uX9VjI$oFC-;%VWC{28y;eV?au@LO~B!tt=h_nF4$0;hfn`;zJ8 z2l76lS#vMBNOZhv@qO0tnNPZ_Hj;EB{~;fcbaI9SkOO2EIY&m3Xrkk8i|-$W z733r5{NJ&H>?i)-wyo0ryk|qhJ9sMub?s#`{ggd2&J25uF?F}wSarq@AdGiae`z<~j8sg0^j)?WHnenyDn>zDZm-nV; MbQABx3(H;q2NMC$FaQ7m diff --git a/po/hu.po b/po/hu.po index b5eab39..1bf2b72 100644 --- a/po/hu.po +++ b/po/hu.po @@ -4,13 +4,13 @@ # # Gábor István , 2002. # András Timár , 2004. -# Balázs Úr , 2014, 2018, 2019. +# Balázs Úr , 2014, 2018, 2019, 2022. msgid "" msgstr "" -"Project-Id-Version: diffutils 3.6.17\n" +"Project-Id-Version: diffutils 3.7.41\n" "Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n" -"POT-Creation-Date: 2021-08-01 18:56-0700\n" -"PO-Revision-Date: 2019-11-16 18:13+0100\n" +"POT-Creation-Date: 2023-05-21 01:51-0700\n" +"PO-Revision-Date: 2022-10-21 00:19+0200\n" "Last-Translator: Balázs Úr \n" "Language-Team: Hungarian \n" "Language: hu\n" @@ -18,32 +18,32 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Bugs: Report translation errors to the Language-Team address.\n" -"X-Generator: Lokalize 19.04.3\n" +"X-Generator: Lokalize 19.12.3\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: lib/argmatch.c:132 +#: lib/argmatch.c:145 #, c-format msgid "invalid argument %s for %s" msgstr "érvénytelen %s argumentum ehhez: %s" -#: lib/argmatch.c:133 +#: lib/argmatch.c:146 #, c-format msgid "ambiguous argument %s for %s" msgstr "nem egyértelmű %s argumentum ehhez: %s" -#: lib/argmatch.c:152 lib/argmatch.h:223 +#: lib/argmatch.c:165 lib/argmatch.h:242 msgid "Valid arguments are:" msgstr "Az érvényes argumentumok:" -#: lib/c-stack.c:187 +#: lib/c-stack.c:186 msgid "program error" msgstr "programhiba" -#: lib/c-stack.c:188 +#: lib/c-stack.c:187 msgid "stack overflow" msgstr "veremtúlcsordulás" -#: lib/error.c:195 +#: lib/error.c:193 msgid "Unknown system error" msgstr "Ismeretlen rendszerhiba" @@ -199,83 +199,83 @@ msgstr "%s: a kapcsoló egy argumentumot igényel -- „%c”\n" #. If you don't know what to put here, please see #. #. and use glyphs suitable for your language. -#: lib/quotearg.c:355 +#: lib/quotearg.c:354 msgid "`" msgstr "„" -#: lib/quotearg.c:356 +#: lib/quotearg.c:355 msgid "'" msgstr "”" -#: lib/regcomp.c:135 +#: lib/regcomp.c:122 msgid "Success" msgstr "Sikerült" -#: lib/regcomp.c:138 +#: lib/regcomp.c:125 msgid "No match" msgstr "Nincs találat" -#: lib/regcomp.c:141 +#: lib/regcomp.c:128 msgid "Invalid regular expression" msgstr "Érvénytelen reguláris kifejezés" -#: lib/regcomp.c:144 +#: lib/regcomp.c:131 msgid "Invalid collation character" msgstr "Érvénytelen egyeztető karakter" -#: lib/regcomp.c:147 +#: lib/regcomp.c:134 msgid "Invalid character class name" msgstr "Érvénytelen karakterosztálynév" -#: lib/regcomp.c:150 +#: lib/regcomp.c:137 msgid "Trailing backslash" msgstr "Záró visszaper" -#: lib/regcomp.c:153 +#: lib/regcomp.c:140 msgid "Invalid back reference" msgstr "Érvénytelen visszahivatkozás" -#: lib/regcomp.c:156 +#: lib/regcomp.c:143 msgid "Unmatched [, [^, [:, [., or [=" msgstr "Pár nélküli [, [^, [:, [. vagy [=" -#: lib/regcomp.c:159 +#: lib/regcomp.c:146 msgid "Unmatched ( or \\(" msgstr "Pár nélküli ( vagy \\(" -#: lib/regcomp.c:162 +#: lib/regcomp.c:149 msgid "Unmatched \\{" msgstr "Pár nélküli \\{" -#: lib/regcomp.c:165 +#: lib/regcomp.c:152 msgid "Invalid content of \\{\\}" msgstr "A \\{\\} tartalma érvénytelen" -#: lib/regcomp.c:168 +#: lib/regcomp.c:155 msgid "Invalid range end" msgstr "Érvénytelen tartományvég" -#: lib/regcomp.c:171 +#: lib/regcomp.c:158 msgid "Memory exhausted" msgstr "Elfogyott a memória" -#: lib/regcomp.c:174 +#: lib/regcomp.c:161 msgid "Invalid preceding regular expression" msgstr "Érvénytelen megelőző reguláris kifejezés" -#: lib/regcomp.c:177 +#: lib/regcomp.c:164 msgid "Premature end of regular expression" msgstr "A reguláris kifejezés túl korán véget ért" -#: lib/regcomp.c:180 +#: lib/regcomp.c:167 msgid "Regular expression too big" msgstr "A reguláris kifejezés túl nagy" -#: lib/regcomp.c:183 +#: lib/regcomp.c:170 msgid "Unmatched ) or \\)" msgstr "Pár nélküli ) vagy \\)" -#: lib/regcomp.c:676 +#: lib/regcomp.c:650 msgid "No previous regular expression" msgstr "Nincs megelőző reguláris kifejezés" @@ -307,7 +307,7 @@ msgstr "%s újranyitása %s móddal meghiúsult" #: lib/xstdopen.c:34 #, c-format msgid "standard file descriptors" -msgstr "" +msgstr "szabványos fájlleírók" #: lib/version-etc.c:73 #, c-format @@ -328,18 +328,15 @@ msgstr "©" #. TRANSLATORS: The %s placeholder is the web address of the GPL license. #: lib/version-etc.c:88 -#, fuzzy, c-format +#, c-format msgid "" "License GPLv3+: GNU GPL version 3 or later <%s>.\n" "This is free software: you are free to change and redistribute it.\n" "There is NO WARRANTY, to the extent permitted by law.\n" msgstr "" -"\n" -"A licenc GPLv3+: a GNU GPL 3. vagy újabb változata \n" +"Licenc GPLv3+: a GNU GPL 3. vagy újabb változata <%s>\n" "Ez egy szabad szoftver, terjesztheti és/vagy módosíthatja.\n" "NINCS GARANCIA, a törvény által engedélyezett mértékig.\n" -"\n" #. TRANSLATORS: %s denotes an author name. #: lib/version-etc.c:105 @@ -454,11 +451,9 @@ msgstr "" #. "Report translation bugs to <...>\n" with the address for translation #. bugs (typically your translation team's web or email address). #: lib/version-etc.c:249 -#, fuzzy, c-format +#, c-format msgid "Report bugs to: %s\n" -msgstr "" -"\n" -"A hibák a(z) %s címen jelenthetők.\n" +msgstr "A hibák a(z) %s címen jelenthetők.\n" #: lib/version-etc.c:251 #, c-format @@ -471,23 +466,21 @@ msgid "%s home page: <%s>\n" msgstr "A(z) %s honlapja: <%s>\n" #: lib/version-etc.c:260 -#, fuzzy, c-format +#, c-format msgid "General help using GNU software: <%s>\n" -msgstr "" -"Általános segítség a GNU szoftverek használatához: \n" +msgstr "Általános segítség a GNU szoftverek használatához: <%s>\n" -#: src/analyze.c:454 src/diff.c:1406 +#: src/analyze.c:455 src/diff.c:1478 #, c-format msgid "Files %s and %s differ\n" msgstr "A(z) %s és a(z) %s fájlok különböznek\n" -#: src/analyze.c:455 +#: src/analyze.c:456 #, c-format msgid "Binary files %s and %s differ\n" msgstr "A(z) %s és a(z) %s bináris fájlok különböznek\n" -#: src/analyze.c:706 src/diff3.c:1470 src/util.c:1254 +#: src/analyze.c:707 src/diff3.c:1457 src/util.c:1354 msgid "No newline at end of file" msgstr "Nincs új sor a fájl végén" @@ -501,41 +494,42 @@ msgstr "Torbjorn Granlund" msgid "David MacKenzie" msgstr "David MacKenzie" -#: src/cmp.c:120 src/diff.c:879 src/diff3.c:467 src/sdiff.c:160 +#: src/cmp.c:124 src/diff.c:939 src/diff3.c:465 src/sdiff.c:159 #, c-format msgid "Try '%s --help' for more information." msgstr "További információkért próbálja a(z) „%s --help” parancsot." -#: src/cmp.c:138 +#: src/cmp.c:142 #, c-format msgid "invalid --ignore-initial value '%s'" msgstr "érvénytelen --ignore-initial érték: „%s”" -#: src/cmp.c:148 +#: src/cmp.c:152 #, c-format msgid "options -l and -s are incompatible" msgstr "a -l és a -s kapcsolók összeférhetetlenek" -#: src/cmp.c:156 src/diff.c:887 src/diff3.c:474 src/sdiff.c:168 src/sdiff.c:316 -#: src/sdiff.c:323 src/sdiff.c:876 src/util.c:852 src/util.c:952 src/util.c:959 +#: src/cmp.c:160 src/diff.c:947 src/diff3.c:472 src/sdiff.c:167 src/sdiff.c:314 +#: src/sdiff.c:321 src/sdiff.c:873 src/util.c:952 src/util.c:1052 +#: src/util.c:1059 msgid "write failed" msgstr "az írás sikertelen" -#: src/cmp.c:158 src/diff.c:889 src/diff.c:1471 src/diff3.c:476 src/sdiff.c:170 +#: src/cmp.c:162 src/diff.c:949 src/diff.c:1543 src/diff3.c:474 src/sdiff.c:169 msgid "standard output" msgstr "szabványos kimenet" -#: src/cmp.c:162 +#: src/cmp.c:166 msgid "-b, --print-bytes print differing bytes" msgstr "-b, --print-bytes eltérő bájtok kiírása" -#: src/cmp.c:163 +#: src/cmp.c:167 msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs" msgstr "" "-i, --ignore-initial=UGRÁS az első UGRÁS bájt kihagyása mindkét " "bemeneten" -#: src/cmp.c:164 +#: src/cmp.c:168 msgid "" "-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n" " first SKIP2 bytes of FILE2" @@ -544,38 +538,38 @@ msgstr "" "FÁJL2\n" " első UGRÁS2 bájtjának kihagyása" -#: src/cmp.c:166 +#: src/cmp.c:170 msgid "" "-l, --verbose output byte numbers and differing byte values" msgstr "" "-l, --verbose a bájt számok és az eltérő bájt értékek kiírása" -#: src/cmp.c:167 +#: src/cmp.c:171 msgid "-n, --bytes=LIMIT compare at most LIMIT bytes" msgstr "-n, --bytes=KORLÁT legfeljebb KORLÁT bájt összehasonlítása" -#: src/cmp.c:168 +#: src/cmp.c:172 msgid "-s, --quiet, --silent suppress all normal output" msgstr "-s, --quiet, --silent minden normál kimenet elfojtása" -#: src/cmp.c:169 +#: src/cmp.c:173 msgid " --help display this help and exit" msgstr " --help ezen súgó megjelenítése és kilépés" -#: src/cmp.c:170 +#: src/cmp.c:174 msgid "-v, --version output version information and exit" msgstr "-v, --version verzióinformációk kiírása és kilépés" -#: src/cmp.c:179 +#: src/cmp.c:183 #, c-format msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n" msgstr "Használat: %s [KAPCSOLÓ]… FÁJL1 [FÁJL2 [UGRÁS1 [UGRÁS2]]]\n" -#: src/cmp.c:181 +#: src/cmp.c:185 msgid "Compare two files byte by byte." msgstr "Két fájl összehasonlítása bájtról bájtra." -#: src/cmp.c:183 +#: src/cmp.c:187 msgid "" "The optional SKIP1 and SKIP2 specify the number of bytes to skip\n" "at the beginning of each file (zero by default)." @@ -583,14 +577,14 @@ msgstr "" "Az opcionális UGRÁS1 és UGRÁS2 megadja a minden egyes fájl elejéről " "kihagyandó bájtok számát (alapértelmezetten nulla)." -#: src/cmp.c:186 src/diff.c:999 src/diff3.c:514 src/sdiff.c:211 +#: src/cmp.c:190 src/diff.c:1059 src/diff3.c:512 src/sdiff.c:210 msgid "" "Mandatory arguments to long options are mandatory for short options too.\n" msgstr "" "A hosszú kapcsolók kötelező argumentumai a rövid kapcsolókhoz is " "kötelezőek.\n" -#: src/cmp.c:192 +#: src/cmp.c:196 msgid "" "SKIP values may be followed by the following multiplicative suffixes:\n" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" @@ -600,142 +594,142 @@ msgstr "" "kB 1000, K 1024, MB 1.000.000, M 1.048.576,\n" "GB 1.000.000.000, G 1.073.741.824 és így tovább: T, P, E, Z, Y." -#: src/cmp.c:195 +#: src/cmp.c:199 msgid "If a FILE is '-' or missing, read standard input." msgstr "Ha a FÁJL a „-” vagy hiányzik, akkor a szabványos bemenetről olvas." -#: src/cmp.c:196 src/diff.c:987 src/sdiff.c:221 +#: src/cmp.c:200 src/diff.c:1047 src/sdiff.c:220 msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble." msgstr "" "A kilépési állapotkód 0, ha a bemenetek azonosak; 1, ha különbözők; 2, ha\n" "hiba történt." -#: src/cmp.c:243 +#: src/cmp.c:247 #, c-format msgid "invalid --bytes value '%s'" msgstr "érvénytelen --bytes érték: „%s”" -#: src/cmp.c:269 src/diff.c:797 src/diff3.c:361 src/sdiff.c:567 +#: src/cmp.c:273 src/diff.c:857 src/diff3.c:368 src/sdiff.c:564 #, c-format msgid "missing operand after '%s'" msgstr "hiányzó operandus a(z) „%s” után" -#: src/cmp.c:281 src/diff.c:799 src/diff3.c:363 src/sdiff.c:569 +#: src/cmp.c:285 src/diff.c:859 src/diff3.c:370 src/sdiff.c:566 #, c-format msgid "extra operand '%s'" msgstr "extra operandus: „%s”" -#: src/cmp.c:507 +#: src/cmp.c:521 #, c-format msgid "%s %s differ: byte %s, line %s\n" msgstr "%s %s eltér: byte: %s, sor: %s\n" -#: src/cmp.c:523 +#: src/cmp.c:537 #, c-format msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n" msgstr "%s %s eltér: byte %s, sor %s %3o %s %3o %s\n" -#: src/cmp.c:580 +#: src/cmp.c:594 #, c-format msgid "cmp: EOF on %s which is empty\n" msgstr "cmp: EOF ennél: %s, amely üres\n" -#: src/cmp.c:594 +#: src/cmp.c:608 #, c-format msgid "cmp: EOF on %s after byte %s, line %s\n" msgstr "cmp: EOF ennél: %s, %s bájt és %s sor után\n" -#: src/cmp.c:595 +#: src/cmp.c:609 #, c-format msgid "cmp: EOF on %s after byte %s, in line %s\n" msgstr "cmp: EOF ennél: %s, %s bájt után a(z) %s. sorban\n" -#: src/cmp.c:601 +#: src/cmp.c:615 #, c-format msgid "cmp: EOF on %s after byte %s\n" msgstr "cmp: EOF ennél: %s, %s bájt után\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:51 +#: src/diff.c:50 msgid "Paul Eggert" msgstr "Paul Eggert" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:52 +#: src/diff.c:51 msgid "Mike Haertel" msgstr "Mike Haertel" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:53 +#: src/diff.c:52 msgid "David Hayes" msgstr "David Hayes" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:54 +#: src/diff.c:53 msgid "Richard Stallman" msgstr "Richard Stallman" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:55 +#: src/diff.c:54 msgid "Len Tower" msgstr "Len Tower" -#: src/diff.c:355 +#: src/diff.c:365 #, c-format msgid "invalid context length '%s'" msgstr "érvénytelen környezethossz: „%s”" -#: src/diff.c:438 +#: src/diff.c:487 #, c-format msgid "pagination not supported on this host" msgstr "a tördelés nem támogatott ezen a gépen" -#: src/diff.c:453 src/diff3.c:341 +#: src/diff.c:502 src/diff3.c:348 #, c-format msgid "too many file label options" msgstr "túl sok fájlcímke-beállítás" -#: src/diff.c:530 +#: src/diff.c:579 #, c-format msgid "invalid width '%s'" msgstr "érvénytelen szélesség: „%s”" -#: src/diff.c:534 +#: src/diff.c:583 msgid "conflicting width options" msgstr "ütköző szélességbeállítások" -#: src/diff.c:559 +#: src/diff.c:608 #, c-format msgid "invalid horizon length '%s'" msgstr "érvénytelen munkaszinthossz: „%s”" -#: src/diff.c:615 +#: src/diff.c:664 #, c-format msgid "invalid tabsize '%s'" msgstr "érvénytelen tabulátorméret: „%s”" -#: src/diff.c:619 +#: src/diff.c:668 msgid "conflicting tabsize options" msgstr "ütköző tabulátorméret beállítások" -#: src/diff.c:774 +#: src/diff.c:834 msgid "--from-file and --to-file both specified" msgstr "a --from-file és a --to-file is meg van adva" -#: src/diff.c:893 +#: src/diff.c:953 msgid " --normal output a normal diff (the default)" msgstr "" " --normal egy normál diff kimenet (az alapértelmezett)" -#: src/diff.c:894 +#: src/diff.c:954 msgid "-q, --brief report only when files differ" msgstr "-q, --brief csak akkor jelent, ha a fájlok eltérnek" -#: src/diff.c:895 +#: src/diff.c:955 msgid "-s, --report-identical-files report when two files are the same" msgstr "-s, --report-identical-files jelentés, ha a két fájl ugyanaz" -#: src/diff.c:896 +#: src/diff.c:956 msgid "" "-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context" msgstr "" @@ -743,53 +737,53 @@ msgstr "" "3)\n" " sorának kiírása" -#: src/diff.c:897 +#: src/diff.c:957 msgid "" "-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context" msgstr "" "-u, -U SZÁM, --unified[=SZÁM] a egységesített környezet SZÁM\n" " (alapértelmezetten 3) sorának kiírása" -#: src/diff.c:898 +#: src/diff.c:958 msgid "-e, --ed output an ed script" msgstr "-e, --ed egy ed parancsfájl kiírása" -#: src/diff.c:899 +#: src/diff.c:959 msgid "-n, --rcs output an RCS format diff" msgstr "-n, --rcs egy RCS formátumú diff kiírása" -#: src/diff.c:900 +#: src/diff.c:960 msgid "-y, --side-by-side output in two columns" msgstr "-y, --side-by-side kimenet két oszlopban" -#: src/diff.c:901 +#: src/diff.c:961 msgid "" "-W, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-W, --width=SZÁM legfeljebb SZÁM (alapértelmezetten 130)\n" " nyomtatási oszlop kiírása" -#: src/diff.c:902 +#: src/diff.c:962 msgid "" " --left-column output only the left column of common lines" msgstr "" " --left-column a közös soroknak csak a bal oszlopának kiírása" -#: src/diff.c:903 +#: src/diff.c:963 msgid " --suppress-common-lines do not output common lines" msgstr " --suppress-common-lines ne írja ki a közös sorokat" -#: src/diff.c:905 +#: src/diff.c:965 msgid "-p, --show-c-function show which C function each change is in" msgstr "" "-p, --show-c-function jelenítse meg, mely C függvényben van változás" -#: src/diff.c:906 +#: src/diff.c:966 msgid "-F, --show-function-line=RE show the most recent line matching RE" msgstr "" "-F, --show-function-line=RK a legutóbbi RK-ra illeszkedő sor megjelenítése" -#: src/diff.c:907 +#: src/diff.c:967 msgid "" " --label LABEL use LABEL instead of file name and timestamp\n" " (can be repeated)" @@ -797,25 +791,25 @@ msgstr "" " --label CÍMKE CÍMKE használata fájlnév és időbélyeg helyett\n" " (ismételhető)" -#: src/diff.c:910 +#: src/diff.c:970 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "" "-t, --expand-tabs tabulátorok bővítése szóközökké a kimeneten" -#: src/diff.c:911 +#: src/diff.c:971 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T, --initial-tab beigazítja a tabulátorokat egy tabulátor\n" " hozzáfűzésével" -#: src/diff.c:912 +#: src/diff.c:972 msgid "" " --tabsize=NUM tab stops every NUM (default 8) print columns" msgstr "" " --tabsize=SZÁM a tabulátor megáll minden SZÁMADIK\n" " (alapértelmezetten 8) nyomtatási oszlopnál" -#: src/diff.c:913 +#: src/diff.c:973 msgid "" " --suppress-blank-empty suppress space or tab before empty output lines" msgstr "" @@ -823,62 +817,62 @@ msgstr "" "kimeneti\n" " sorok előtt" -#: src/diff.c:914 +#: src/diff.c:974 msgid "-l, --paginate pass output through 'pr' to paginate it" msgstr "" "-l, --paginate kimenet átadása a „pr” parancsnak " "lapszámozáshoz" -#: src/diff.c:916 +#: src/diff.c:976 msgid "" "-r, --recursive recursively compare any subdirectories found" msgstr "" "-r, --recursive a talált alkönyvtár rekurzív összehasonlítása" -#: src/diff.c:917 +#: src/diff.c:977 msgid " --no-dereference don't follow symbolic links" msgstr " --no-dereference ne kövesse a szimbolikus linkeket" -#: src/diff.c:918 +#: src/diff.c:978 msgid "-N, --new-file treat absent files as empty" msgstr "-N, --new-file a hiányzó fájlokat üresként kezelje" -#: src/diff.c:919 +#: src/diff.c:979 msgid " --unidirectional-new-file treat absent first files as empty" msgstr "" " --unidirectional-new-file a hiányzó első fájlokat üresként kezelje" -#: src/diff.c:920 +#: src/diff.c:980 msgid " --ignore-file-name-case ignore case when comparing file names" msgstr "" " --ignore-file-name-case kis- és nagybetűk figyelmen kívül hagyása\n" " fájlnevek összehasonlításakor" -#: src/diff.c:921 +#: src/diff.c:981 msgid " --no-ignore-file-name-case consider case when comparing file names" msgstr "" " --no-ignore-file-name-case kis- és nagybetűk figyelembe vétele\n" " fájlnevek összehasonlításakor" -#: src/diff.c:922 +#: src/diff.c:982 msgid "-x, --exclude=PAT exclude files that match PAT" msgstr "-x, --exclude=MINTA a MINTÁRA illeszkedő fájlok kizárása" -#: src/diff.c:923 +#: src/diff.c:983 msgid "" "-X, --exclude-from=FILE exclude files that match any pattern in FILE" msgstr "" "-X, --exclude-from=FÁJL a FÁJLBAN lévő bármely mintára illeszkedő\n" " fájlok kizárása" -#: src/diff.c:924 +#: src/diff.c:984 msgid "" "-S, --starting-file=FILE start with FILE when comparing directories" msgstr "" "-S, --starting-file=FÁJL a FÁJLLAL kezdjen könyvtárak " "összehasonlítását" -#: src/diff.c:925 +#: src/diff.c:985 msgid "" " --from-file=FILE1 compare FILE1 to all operands;\n" " FILE1 can be a directory" @@ -886,7 +880,7 @@ msgstr "" " --from-file=FÁJL1 FÁJL1 összehasonlítása minden operandussal;\n" " FÁJL1 lehet könyvtár is" -#: src/diff.c:927 +#: src/diff.c:987 msgid "" " --to-file=FILE2 compare all operands to FILE2;\n" " FILE2 can be a directory" @@ -895,81 +889,81 @@ msgstr "" "vel;\n" " FÁJL2 lehet könyvtár is" -#: src/diff.c:930 +#: src/diff.c:990 msgid "" "-i, --ignore-case ignore case differences in file contents" msgstr "" "-i, --ignore-case kis- és nagybetű eltérések figyelmen kívül\n" " hagyása a fájlok tartalmában" -#: src/diff.c:931 +#: src/diff.c:991 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E, --ignore-tab-expansion a tabulátorbővítés miatti változások " "mellőzése" -#: src/diff.c:932 +#: src/diff.c:992 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "-Z, --ignore-trailing-space a sorvégi üres helyek mellőzése" -#: src/diff.c:933 +#: src/diff.c:993 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "" "-b, --ignore-space-change üres helyek számában lévő változások " "mellőzése" -#: src/diff.c:934 +#: src/diff.c:994 msgid "-w, --ignore-all-space ignore all white space" msgstr "-w, --ignore-all-space minden üres hely mellőzése" -#: src/diff.c:935 +#: src/diff.c:995 msgid "" "-B, --ignore-blank-lines ignore changes where lines are all blank" msgstr "" "-B, --ignore-blank-lines változások mellőzése, ahol a sorok üresek" -#: src/diff.c:936 +#: src/diff.c:996 msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE" msgstr "" "-I, --ignore-matching-lines=RK változások mellőzése, ahol minden sor\n" " illeszkedik az RK-ra" -#: src/diff.c:938 +#: src/diff.c:998 msgid "-a, --text treat all files as text" msgstr "-a, --text az összes fájl szövegként kezelése" -#: src/diff.c:939 +#: src/diff.c:999 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr a záró kocsi vissza levágása a bemenetről" -#: src/diff.c:941 +#: src/diff.c:1001 msgid " --binary read and write data in binary mode" msgstr " --binary adatok olvasása és írása bináris módon" -#: src/diff.c:944 +#: src/diff.c:1004 msgid "" "-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs" msgstr "" "-D, --ifdef=NÉV egyesített fájlkiírás a „#ifdef NÉV” diffs\n" " használatával" -#: src/diff.c:945 +#: src/diff.c:1005 msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT" msgstr "" " --GTYPE-group-format=GFMT a GTYPE bemeneti csoportok formázása GFMT-vel" -#: src/diff.c:946 +#: src/diff.c:1006 msgid " --line-format=LFMT format all input lines with LFMT" msgstr " --line-format=LFMT minden bemeneti sor formázása LFMT-vel" -#: src/diff.c:947 +#: src/diff.c:1007 msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT" msgstr "" " --LTYPE-line-format=LFMT az LTYPE bemeneti sorok formázása LFMT-vel" -#: src/diff.c:948 +#: src/diff.c:1008 msgid "" " These format options provide fine-grained control over the output\n" " of diff, generalizing -D/--ifdef." @@ -977,13 +971,13 @@ msgstr "" " Ezek a formázási lehetőségek részletes vezérlést biztosítanak a diff\n" " kimenetén, általánosítva: -D/--ifdef." -#: src/diff.c:950 +#: src/diff.c:1010 msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'." msgstr "" " Az LTYPE „old”, „new” vagy „unchanged”. A GTYPE értéke LTYPE vagy " "„changed”." -#: src/diff.c:951 +#: src/diff.c:1011 msgid "" " GFMT (only) may contain:\n" " %< lines from FILE1\n" @@ -1012,7 +1006,7 @@ msgstr "" " M L+1\n" " %(A=B?T:E) ha A egyenlő B, akkor T, egyébként E" -#: src/diff.c:963 +#: src/diff.c:1023 msgid "" " LFMT (only) may contain:\n" " %L contents of line\n" @@ -1025,7 +1019,7 @@ msgstr "" " %[-][SZÉLESSÉG][.[PONTOSSÁG]]{doxX}n printf-stílusú megadás a bemeneti\n" " sor számához" -#: src/diff.c:967 +#: src/diff.c:1027 msgid "" " Both GFMT and LFMT may contain:\n" " %% %\n" @@ -1039,34 +1033,33 @@ msgstr "" " %c'\\OOO' a OOO oktális kódú karakter\n" " C a C karakter (más karakterek saját magukat ábrázolják)" -#: src/diff.c:973 +#: src/diff.c:1033 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "" "-d, --minimal igyekszik egy kisebb változási halmazt megtalálni" -#: src/diff.c:974 +#: src/diff.c:1034 msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix" msgstr "" " --horizon-lines=SZÁM a közös előtag és utótag SZÁM sorának megtartása" -#: src/diff.c:975 +#: src/diff.c:1035 msgid "" " --speed-large-files assume large files and many scattered small changes" msgstr "" " --speed-large-files nagy fájlokat és sok apró kis változást tételez fel" -#: src/diff.c:976 -#, fuzzy +#: src/diff.c:1036 msgid "" " --color[=WHEN] color output; WHEN is 'never', 'always', or " "'auto';\n" " plain --color means --color='auto'" msgstr "" " --color[=MIKOR] a kimenet színezése; a MIKOR lehet „never” (soha),\n" -" „always” (mindig), vagy „auto” (automatikus)\n" -" (az alapértelmezett)" +" „always” (mindig) vagy „auto” (automatikus)\n" +" az egyszerű --color jelentése: --color='auto'" -#: src/diff.c:978 +#: src/diff.c:1038 msgid "" " --palette=PALETTE the colors to use when --color is active; PALETTE " "is\n" @@ -1076,21 +1069,21 @@ msgstr "" " a PALETTA a terminfo képességek kettősponttal\n" " elválasztott listája" -#: src/diff.c:981 +#: src/diff.c:1041 msgid " --help display this help and exit" msgstr " --help ezen súgó megjelenítése és kilépés" -#: src/diff.c:982 +#: src/diff.c:1042 msgid "-v, --version output version information and exit" msgstr "-v, --version verzióinformációk kiírása és kilépés" -#: src/diff.c:984 +#: src/diff.c:1044 msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'." msgstr "" "A FÁJLOK az alábbiak lehetnek „FÁJL1 FÁJL2” vagy „KÖNYVTÁR1 KÖNYVTÁR2” vagy\n" "„KÖNYVTÁR FÁJL” vagy „FÁJL KÖNYVTÁR”." -#: src/diff.c:985 +#: src/diff.c:1045 msgid "" "If --from-file or --to-file is given, there are no restrictions on FILE(s)." msgstr "" @@ -1098,93 +1091,93 @@ msgstr "" "megszorítások\n" "a FÁJLOKRA." -#: src/diff.c:986 src/diff3.c:533 src/sdiff.c:220 +#: src/diff.c:1046 src/diff3.c:531 src/sdiff.c:219 msgid "If a FILE is '-', read standard input." msgstr "Ha a FÁJL a „-”, akkor a szabványos bemenetről olvas." -#: src/diff.c:996 +#: src/diff.c:1056 #, c-format msgid "Usage: %s [OPTION]... FILES\n" msgstr "Használat: %s [KAPCSOLÓ]… FÁJLOK\n" -#: src/diff.c:997 +#: src/diff.c:1057 msgid "Compare FILES line by line." msgstr "FÁJLOK összehasonlítása sorról sorra." -#: src/diff.c:1034 +#: src/diff.c:1094 #, c-format msgid "conflicting %s option value '%s'" msgstr "ütköző %s kapcsoló érték: „%s”" -#: src/diff.c:1047 +#: src/diff.c:1107 #, c-format msgid "conflicting output style options" msgstr "ütköző kimeneti stílus kapcsolók" -#: src/diff.c:1063 +#: src/diff.c:1123 #, c-format msgid "invalid color '%s'" msgstr "érvénytelen szín: „%s”" -#: src/diff.c:1119 src/diff.c:1329 +#: src/diff.c:1197 src/diff.c:1401 #, c-format msgid "Only in %s: %s\n" msgstr "Csak ebben: %s: %s\n" -#: src/diff.c:1253 +#: src/diff.c:1325 msgid "cannot compare '-' to a directory" msgstr "a „-” nem hasonlítható össze egy könyvtárral" -#: src/diff.c:1288 +#: src/diff.c:1360 msgid "-D option not supported with directories" msgstr "A -D kapcsoló könyvtáraknál nem támogatott" -#: src/diff.c:1297 +#: src/diff.c:1369 #, c-format msgid "Common subdirectories: %s and %s\n" msgstr "Közös alkönyvtárak: %s és %s\n" -#: src/diff.c:1339 src/diff.c:1389 +#: src/diff.c:1411 src/diff.c:1461 #, c-format msgid "File %s is a %s while file %s is a %s\n" msgstr "A(z) %s fájl egy %s, viszont a(z) %s fájl egy %s\n" -#: src/diff.c:1375 +#: src/diff.c:1447 #, c-format msgid "Symbolic links %s and %s differ\n" msgstr "A(z) %s és a(z) %s szimbolikus linkek különböznek\n" -#: src/diff.c:1462 +#: src/diff.c:1534 #, c-format msgid "Files %s and %s are identical\n" msgstr "A(z) %s és a(z) %s fájlok azonosak\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff3.c:43 +#: src/diff3.c:51 msgid "Randy Smith" msgstr "Randy Smith" -#: src/diff3.c:356 +#: src/diff3.c:363 #, c-format msgid "incompatible options" msgstr "összeférhetetlen kapcsolók" -#: src/diff3.c:396 +#: src/diff3.c:403 msgid "'-' specified for more than one input file" msgstr "a „-” több mint egy bemeneti fájlhoz lett megadva" -#: src/diff3.c:447 src/diff3.c:1295 src/diff3.c:1698 src/diff3.c:1753 -#: src/sdiff.c:308 src/sdiff.c:846 src/sdiff.c:857 +#: src/diff3.c:445 src/diff3.c:1284 src/diff3.c:1683 src/diff3.c:1738 +#: src/sdiff.c:306 src/sdiff.c:843 src/sdiff.c:854 msgid "read failed" msgstr "olvasás sikertelen" -#: src/diff3.c:480 +#: src/diff3.c:478 msgid "-A, --show-all output all changes, bracketing conflicts" msgstr "" "-A, --show-all minden változás kiírása, zárójelbe téve az\n" " ütközéseket" -#: src/diff3.c:482 +#: src/diff3.c:480 msgid "" "-e, --ed output ed script incorporating changes\n" " from OLDFILE to YOURFILE into MYFILE" @@ -1193,12 +1186,12 @@ msgstr "" " tartalmazza a RÉGIFÁJL és ÖNFÁJLJA " "változásait" -#: src/diff3.c:484 +#: src/diff3.c:482 msgid "-E, --show-overlap like -e, but bracket conflicts" msgstr "" "-E, --show-overlap mint a -e, de zárójelbe teszi az ütközéseket" -#: src/diff3.c:485 +#: src/diff3.c:483 msgid "" "-3, --easy-only like -e, but incorporate only nonoverlapping " "changes" @@ -1206,25 +1199,25 @@ msgstr "" "-3, --easy-only mint a -e, de csak a nem átfedő változásokat\n" " tartalmazza" -#: src/diff3.c:486 +#: src/diff3.c:484 msgid "" "-x, --overlap-only like -e, but incorporate only overlapping changes" msgstr "" "-x, --overlap-only mint a -e, de csak az átfedő változásokat\n" " tartalmazza" -#: src/diff3.c:487 +#: src/diff3.c:485 msgid "-X like -x, but bracket conflicts" msgstr "" "-X mint a -x, de zárójelbe teszi az ütközéseket" -#: src/diff3.c:488 +#: src/diff3.c:486 msgid "-i append 'w' and 'q' commands to ed scripts" msgstr "" "-i „w” és „q” parancsok hozzáfűzése az ed\n" " parancsfájlokhoz" -#: src/diff3.c:490 +#: src/diff3.c:488 msgid "" "-m, --merge output actual merged file, according to\n" " -A if no other options are given" @@ -1233,26 +1226,26 @@ msgstr "" "szerint,\n" " ha más kapcsoló nincs megadva" -#: src/diff3.c:493 +#: src/diff3.c:491 msgid "-a, --text treat all files as text" msgstr "-a, --text az összes fájl szövegként kezelése" -#: src/diff3.c:494 +#: src/diff3.c:492 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr " --strip-trailing-cr a záró kocsi vissza levágása a bemenetről" -#: src/diff3.c:495 +#: src/diff3.c:493 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T, --initial-tab beigazítja a tabulátorokat egy tabulátor\n" " hozzáfűzésével" -#: src/diff3.c:496 +#: src/diff3.c:494 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr "" " --diff-program=PROGRAM a PROGRAM használata fájlok összehasonlításához" -#: src/diff3.c:497 +#: src/diff3.c:495 msgid "" "-L, --label=LABEL use LABEL instead of file name\n" " (can be repeated up to three times)" @@ -1260,24 +1253,24 @@ msgstr "" "-L, --label=CÍMKE CÍMKE használata fájlnév helyett\n" " (legfeljebb háromszor ismételhető)" -#: src/diff3.c:500 +#: src/diff3.c:498 msgid " --help display this help and exit" msgstr " --help ezen súgó megjelenítése és kilépés" -#: src/diff3.c:501 +#: src/diff3.c:499 msgid "-v, --version output version information and exit" msgstr "-v, --version verzióinformációk kiírása és kilépés" -#: src/diff3.c:510 +#: src/diff3.c:508 #, c-format msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n" msgstr "Használat: %s [KAPCSOLÓ]… SAJÁTFÁJL RÉGIFÁJL ÖNFÁJLJA\n" -#: src/diff3.c:512 +#: src/diff3.c:510 msgid "Compare three files line by line." msgstr "Három fájl összehasonlítása sorról sorra." -#: src/diff3.c:522 +#: src/diff3.c:520 msgid "" "\n" "The default output format is a somewhat human-readable representation of\n" @@ -1302,56 +1295,56 @@ msgstr "" "belsőleg történő elvégzéséhez, és az aktuális egyesített fájlt írja ki.\n" "Szokatlan bemenethez ez sokkal erőteljesebb az ed használatánál.\n" -#: src/diff3.c:534 +#: src/diff3.c:532 msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble." msgstr "" "A kilépési állapotkód 0, ha sikeres; 1, ha ütközés van; 2, ha hiba történt." -#: src/diff3.c:727 +#: src/diff3.c:725 msgid "internal error: screwup in format of diff blocks" msgstr "belső hiba: zűrzavar az összehasonlítási blokkok formátumában" -#: src/diff3.c:1022 +#: src/diff3.c:1015 #, c-format msgid "%s: diff failed: " msgstr "%s: összehasonlítás sikertelen: " -#: src/diff3.c:1044 +#: src/diff3.c:1037 msgid "internal error: invalid diff type in process_diff" msgstr "" "belső hiba: érvénytelen összehasonlítási típus a process_diff függvényben" -#: src/diff3.c:1069 +#: src/diff3.c:1060 msgid "invalid diff format; invalid change separator" msgstr "érvénytelen összehasonlítási formátum; érvénytelen változáselválasztó" -#: src/diff3.c:1305 +#: src/diff3.c:1294 msgid "invalid diff format; incomplete last line" msgstr "érvénytelen összehasonlítási formátum; befejezetlen utolsó sor" -#: src/diff3.c:1329 src/sdiff.c:276 src/util.c:969 +#: src/diff3.c:1318 src/sdiff.c:274 src/util.c:1069 #, c-format msgid "subsidiary program '%s' could not be invoked" msgstr "a(z) „%s” kisegítő programot nem sikerült meghívni" -#: src/diff3.c:1354 +#: src/diff3.c:1343 msgid "invalid diff format; incorrect leading line chars" msgstr "érvénytelen összehasonlítási formátum; helytelen sor eleji karakterek" -#: src/diff3.c:1427 +#: src/diff3.c:1416 msgid "internal error: invalid diff type passed to output" msgstr "belső hiba: érvénytelen összehasonlítási típus lett átadva kimenetnek" -#: src/diff3.c:1700 src/diff3.c:1757 +#: src/diff3.c:1685 src/diff3.c:1742 msgid "input file shrank" msgstr "a bementi fájl összement" -#: src/dir.c:156 +#: src/dir.c:154 #, c-format msgid "cannot compare file names '%s' and '%s'" msgstr "nem sikerült a(z) „%s” és a(z) „%s” fájlneveket összehasonlítani" -#: src/dir.c:225 +#: src/dir.c:223 #, c-format msgid "%s: recursive directory loop" msgstr "%s: rekurzív könyvtárhurok" @@ -1361,127 +1354,127 @@ msgstr "%s: rekurzív könyvtárhurok" msgid "Thomas Lord" msgstr "Thomas Lord" -#: src/sdiff.c:174 +#: src/sdiff.c:173 msgid "" "-o, --output=FILE operate interactively, sending output to FILE" msgstr "" "-o, --output=FÁJL interaktív működés, kimenet küldése FÁJLBA" -#: src/sdiff.c:176 +#: src/sdiff.c:175 msgid "" "-i, --ignore-case consider upper- and lower-case to be the same" msgstr "-i, --ignore-case a kis- és nagybetűket azonosnak tekinti" -#: src/sdiff.c:177 +#: src/sdiff.c:176 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E, --ignore-tab-expansion a tabulátorbővítés miatti változások mellőzése" -#: src/sdiff.c:178 +#: src/sdiff.c:177 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "-Z, --ignore-trailing-space a sorvégi üres helyek mellőzése" -#: src/sdiff.c:179 +#: src/sdiff.c:178 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "" "-b, --ignore-space-change üres helyek számában lévő változások mellőzése" -#: src/sdiff.c:180 +#: src/sdiff.c:179 msgid "-W, --ignore-all-space ignore all white space" msgstr "-W, --ignore-all-space minden üres hely mellőzése" -#: src/sdiff.c:181 +#: src/sdiff.c:180 msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank" msgstr "-B, --ignore-blank-lines változások mellőzése, ahol a sorok üresek" -#: src/sdiff.c:182 +#: src/sdiff.c:181 msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE" msgstr "" "-I, --ignore-matching-lines=RK változások mellőzése, ahol minden sor\n" " illeszkedik az RK-ra" -#: src/sdiff.c:183 +#: src/sdiff.c:182 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr " --strip-trailing-cr a záró kocsi vissza levágása a bemenetről" -#: src/sdiff.c:184 +#: src/sdiff.c:183 msgid "-a, --text treat all files as text" msgstr "-a, --text az összes fájl szövegként kezelése" -#: src/sdiff.c:186 +#: src/sdiff.c:185 msgid "" "-w, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-w, --width=SZÁM legfeljebb SZÁM (alapértelmezetten 130)\n" " nyomtatási oszlop kiírása" -#: src/sdiff.c:187 +#: src/sdiff.c:186 msgid "" "-l, --left-column output only the left column of common lines" msgstr "" "-l, --left-column a közös soroknak csak a bal oszlopának kiírása" -#: src/sdiff.c:188 +#: src/sdiff.c:187 msgid "-s, --suppress-common-lines do not output common lines" msgstr "-s, --suppress-common-lines ne írja ki a közös sorokat" -#: src/sdiff.c:190 +#: src/sdiff.c:189 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "" "-t, --expand-tabs tabulátorok bővítése szóközökké a kimeneten" -#: src/sdiff.c:191 +#: src/sdiff.c:190 msgid "" " --tabsize=NUM tab stops at every NUM (default 8) print columns" msgstr "" " --tabsize=SZÁM a tabulátor megáll minden SZÁMADIK\n" " (alapértelmezetten 8) nyomtatási oszlopnál" -#: src/sdiff.c:193 +#: src/sdiff.c:192 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "" "-d, --minimal igyekszik egy kisebb változási halmazt " "megtalálni" -#: src/sdiff.c:194 +#: src/sdiff.c:193 msgid "" "-H, --speed-large-files assume large files, many scattered small changes" msgstr "" "-H, --speed-large-files nagy fájlokat, sok apró kis változást tételez " "fel" -#: src/sdiff.c:195 +#: src/sdiff.c:194 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr "" " --diff-program=PROGRAM a PROGRAM használata fájlok összehasonlításához" -#: src/sdiff.c:197 +#: src/sdiff.c:196 msgid " --help display this help and exit" msgstr " --help ezen súgó megjelenítése és kilépés" -#: src/sdiff.c:198 +#: src/sdiff.c:197 msgid "-v, --version output version information and exit" msgstr "-v, --version verzióinformációk kiírása és kilépés" -#: src/sdiff.c:207 +#: src/sdiff.c:206 #, c-format msgid "Usage: %s [OPTION]... FILE1 FILE2\n" msgstr "Használat: %s [KAPCSOLÓ]… FÁJL1 FÁJL2\n" -#: src/sdiff.c:209 +#: src/sdiff.c:208 msgid "Side-by-side merge of differences between FILE1 and FILE2." msgstr "A FÁJL1 és FÁJL2 közötti különbségek egymás melletti egyesítése." -#: src/sdiff.c:330 +#: src/sdiff.c:328 msgid "cannot interactively merge standard input" msgstr "nem sikerült interaktívan egyesíteni a szabványos bemenetet" -#: src/sdiff.c:597 +#: src/sdiff.c:594 msgid "both files to be compared are directories" msgstr "mindkét összehasonlítandó fájl könyvtár" -#: src/sdiff.c:820 +#: src/sdiff.c:817 msgid "" "ed:\tEdit then use both versions, each decorated with a header.\n" "eb:\tEdit then use both versions.\n" @@ -1505,24 +1498,12 @@ msgstr "" "v:\tA közös sorok felvétele bőbeszédűen.\n" "q:\tKilépés.\n" -#: src/util.c:662 +#: src/util.c:755 #, c-format msgid "unrecognized prefix: %s" msgstr "azonosítatlan előtag: %s" -#: src/util.c:692 +#: src/util.c:785 #, c-format msgid "unparsable value for --palette" msgstr "feldolgozhatatlan érték a --palette kapcsolónál" - -#~ msgid "invalid %s%s argument '%s'" -#~ msgstr "érvénytelen %s%s argumentum: „%s”" - -#~ msgid "invalid suffix in %s%s argument '%s'" -#~ msgstr "érvénytelen utótag a(z) %s%s argumentumban: „%s”" - -#~ msgid "%s%s argument '%s' too large" -#~ msgstr "%s%s: a(z) „%s” argumentum túl nagy" - -#~ msgid "%s home page: \n" -#~ msgstr "A(z) %s honlapja: .\n" diff --git a/po/id.gmo b/po/id.gmo index 2d7007ea9f8ec3671e1b1f7582193a0ed214380a..32b61eaf1aa91264acd3fdf189338666a54d19b2 100644 GIT binary patch literal 33980 zcmchg3!EfZUGEE%02u*!LlQ_Tfn|2d)UdO=kT9D~GW%Y#FLq}M%Vra5rfX(u`yxv;t~&2?{^x)G|NlAv$vqE0_YDEh1Me3Ej{|RbU=YOoe#=AkH3-5-2f-5Wmx4QZ zf8}F>U_1C(j}Ln+-*}$|pALQ%yb`?Nf*@D{kAPQzcY#j>&%H1Ro(gUSH-k5Wd%!!v zUEn`}KMrobCg1lNIAgZlnTQ0@IQa0WaQ2EoU`*MoP^|D%@%!3TN&x66WHH~8)+1VIXZ z8zf6`;}e5mBlvvq5#W2lhk>62X?pNQa02`msPq@Fqix{T;5b+X*Mn~W=~D19Q0e|0 zr261{;FH1cgXe(jpXAa{fQNZM2JQrZ5!?&@J-7?pLg6a+R#5%D1JpeJ6L>ASnaF9d z1?u~IL5;`1fP2814Gv!cKA-o`gPMoKH0BxLt3c)Z5~y*z=yEr&Cqd1}YeAKNkAJ^_ zLAaXt1yJSO35q_x25tc_h+O`I;B~ye2;2*P7S#AYhC$m8?ge*)ZveN0Uje7UOP&%0 zF9)9qs{eO`%6|!&)!rpg`91)?4E!#r_}j^>^nU>A{h^zJ;3eR3P;`3_sCGUIqE$Hu zK&5{ZsD9i7s$Cb-3DNf=crEyIpz_@VZUY}pe>5JCpfG*E2~_^KfK(m)9e6Q#F~kk22HQZ<-A(@eHc<5RbKsAHzYYEv_!&^+ zaW|;;g->_$c_a8F-ro+Y+|PiI0l(qDYf{yoaZux)fl7ZT_-ODhP;~s)pxU89QvSz* zEP-GP_%QG|cp+E@&j()yz6<;*a38pp&OQ`;Dfl4pjo<^pJHQLTUj@~^-v`y7zxDVX z@R7WqN2k=^3&AIVPx9~209Eg^K(+T~@DboofU55;;QPUMgLEOdiAi|?_+~H!-wxgk zeiBsqPi6AdpBeDs;8AcLxB#jhuk!J4^Y{VqV!nS0RKNZPybSyn2&n{*yw;81J`mCl z7C@Er22kyN7swC=p8z%g-v=S}V2VX}IT(X1@!-{<`u#!h67X*DBJe*zjn|`CJof|F zfsX^nLA8G;$Wjlk2QLM02UXr3{`((-YR7lL$Ab@o2`K%OLD9i1sQ%pshTxk$eiT&w zUja3L{|>4h4~Kba{x1X11t-874Vwbhp0~2tLhu8i;=cfDJnjZH?*9l*fg)y>YOo1p zX$J|Yd441K1n~X-{fnT={U)gPoU_NZ{}NE;>;qvr!EK=8e;HJLp8}Qd%b@7wAHWBL zKLADF4}y89z9)LT2Glq_2fPei0gb-EG2Y(|s@#wG_&);I@%~Lv{d_cwK;>Tqiq1BG zs{g5==w>f?K6ngNIX8j#2V3Anz}rBL^D9A(^E-U}uY>3D{!#z_32=hVxB2GyVKp!yqwW8ez-K=37?+VyJigUsKX!FPj)_d9<1g9DD=>^$i9tDgkl zK>E*t3}LWv$i=@0yq)*&fGoja`LN@A9|X7Z{?8sKpXu_Q0*~a&>-gbEgW%cV0Z{M12>v|yHIV;;7tT7q_61P+!(*=e6r{@F{ovK$k37rq-x-ju z1+M{L3VsDtIdj(s!D;YA;IGpEh)RE&_b(rJ?QA{=9?$!yz)Qg=op5}9FQ{>S0r*hx zr@;_>C%6Ut40s{<18^L?;0DJZX27TL-T*HG-wLYS-vX&VxCh(}{v~)0_{fuvz8?$n zDcB7%bio~<`u81hE4bxGM~@AVrU!2XHJ;xDS^B}#ZgTUr0-hWsIrSc0%}~|0d5Ds1+r9vEfv>} z7l7M%|B%OTgG#rl>iXFRSsKBI{rdxIuHXAWjms-R<^Kcl>EHwFF8y{;<-875zrF~n z-%oD1{UHV)&-?9Q2>t>%4*m}KMDQEnkAe@r+3}ML!2P^$0JUCD`}dE7n|Oav)A65c zJRS!{hZ(4O|0PiK_AUQ?bLQxG5xj)&FZSqa2@!5@DbpbJpMiSSl<5=RQkuBcIlr8>ir;iG58!% z=~lo;fv*D}3ceHk74SDe%|o*6`0^c~`tdFh5)6J1RC!On#qDEH^SBqBY{{r|B@ZZ2Ef%ji=^cI1NuYjAt*MQ<1zY9JV{0mU)=wHF7g44IUeXjvV zyuTgP_5)Wo53G|SAv^< z-0`_GsB&KnPJwrVmxEsdMTh4+&&6K~s{9?`Bf%TNhl81ae;KIx|5@-{@J_Ho!`=m| zJ&$3rs$Z9bia!o&JZ}Ua1Gd1cz*m9Sf}a65f@3dq?br%x9UKQQ0dEH%4ZaNw!H<9% z=exma@Ikk`e(nK7-d_l6+}{Q&-*1AVlh1<>2LB3tJoruUao|H<_ z)$Z4Wn)i2sYX5J5mw}%LHDBKb)z1rG?B?kbQ1wiK%6|>0{KvotfF)4lS^>`kZ};&p z2QT3LjiB25KJfnFCqSk9w159BsCvH$s-EwGA$a~vT>Vc5RsL0==HZ#3%6$PS`u`d5 zf#98>^1lbXANZ4m{~)}UkU#&!|M)pjW4W8~F9eoA@EZg@pC$YbL34T&L1pXtZ-l=h zoYYI<`9uGE1^i$Bx9In2gunOii{Nki-j_^ZJeN=-{1HL4{38s&KY{;Acp~9*g#39WKSYP0AsqA{MK>wo1%&Ss_7L>E z&Oz`2a0lTv{(XbTw}D!ldVbG={j2%>DFR!Z(b$iJAwkbC5bh@YGvUnyJ!QfJG->|1 z7QDm%et^eY!Cxo*C_()A8w5T7hamdMpC9AL%L)IN@VkWP6YfXZqMdIO-bv8&1_!oQ z{Z9kP-}LUE_8-4ehrnDN1x{R9~0h7xQ>uN_b2{h zUjBmcHA0q0fEN)y?%&0)zfbr_|Nai}jfCTRr;P2uTlJggmmJu?Z|C3tNmwAv5k5#5 zC+PV#!hXUDz3{xxLGb6`X~O&c`{P0FD>H-}{I|z?{8^7r2YJ^;Rn@F_w}_$1-k zg!d4367~`Fe4g-8!fz8UBk1`$;X=YQ3HJ~#B}@|Z{3YS<2!BTSEyA4yJx?XvO!#HJ z_~%1lh43iCQNlF@Jr5@wCcK;Q`-Be@eukju6roADobV9Bd4w^-4+#H2cqrjt3B~76 zdHLV|!#T{uAMpDVgmd}*i{Mtm5yG+_gOtUZ!vwAgIUgB-3U5#r|Gl@&_TqOycNu!x$Nv##P(t0hdFO0P) zXnrZKEhgFIm=zl(6JfNAa0}tt;rh5%3g_!h@-^zUQd(OKEA`sqhOpjH8Cf_Vx3eUS zYhh9fv-xJ)XpOb%;arlpE3IWM>Zh_$mHAdv+3vI!S1KzL_BpDC>!YZeG#8V+XjgI; zmePfV%^_u$>Xy_Jg=wvoG_8O!wa^cOYKZ4s?YI(JvQoH^R+7mu++A;m?OHoiOj={S zR4rr0f7N<38Ee+(+F6TlbflfBmq}@IEC_j`XwU5N!@HuzX1(2r+%Rw3v-`j-aemM( zfh#w(WLdbJww6Mr@@4F|GAd~;$&1+Uipa~b1ilO<^F=6?FJg`XYpzi1sz(#d6qLf{ zX4+zm<5o;bq0dmQmy$qvqG-NesW(q-yMFJkgC~6{_Q{Xm)=)7Tl<`_}I%$qigyV5# zIbO;5#R!ha?N)t!>zL0v2pW}`nte@7LJW!cw{0$aplng3X^k4q`eHM#ZaaMB(4HeR z2Z#_ciIx->DbMgu;_1gPM)( zuP?x5oQHa#{1}>TCiAU&b0tuG6fGr{hEG|9QkpSdD~=Q`jV3Xt!C{7e)^84i#3*^O-@vc zt4TB;LkN0Y49tM{<)x(NNkU6hQyD6CP8pSWE~$k3XSVO!Z+Y{7L>umFfg5#lTWeY= z#kAsTV-#^)dF%Zw!%UO7m6SFF`W!`-WTB-6)~?npUH*?}P4!wu6P<)gM<*;DgX0Ir z1}jh=N*cf=Txp))h&qjn`7t(TQ{WV}dQ?gnX+mw@4Wr8s53P-Buc%b&%VD-sovT;U zd6iPm$B?{3CSx9UpHl9b%?0yWh1srp{BXpfPar-Jt}kp2`FJ+sO44d2+YZm{-!(hC zO9d&F@vBVxfo9bxBIh>R`{rBe>11n|XG*hC^BG%dwJ1wqGMY<9f?Yr)n>4FwZ2<-p zH{!XplD5(gm1T`2DMgi-y~+qS3&S|e+Eu1j-yE+pqGI!1VN;ChMpN4(15(Mi+dv(P zqO8T18MT@*b<`H4`KCVGV=-YKLqnR)G^Y4w(rP!^ylajG0wo?=&JUxIvn-?CkdTo@ zbCtMOj*@DlWqVfUzlT{Ph9=ofTJap*5|U0rm&%hyaVg}vSXkm8j?d6xWPw_}Bl`?k zLlmB+w3r zcH}8;ICSWcPt=VyW>%kX!93=XTtd=V`W+f0;{e@)!u2#t94Y^lb!A+ot!7E(bdrgs zn8dbTTzEscy4_cWo|Q^QumPWPjl6nQ#3mQ9EsyZT=jUn4M#pB%r8^OwJaPTLowIvS zo|rsw_{gpuCr{p1s^9YL=NVT!5;}@ofDx=PNbr_ja`|%3oE1~Alw6FP8jap=BvzYTEwQlHuFfS*Uj>!Wp_qvu6n8N6sl^*@eTLh@ z{n75r-6*MS81(L_`-&j2-^Z?7KeKK7HM7&ZHn5v7gfn4sGh%oaZr2Re!r3sXz{z(7 zjy-w zmS}H6Gea(snL50@+^#w0sx*!c;*KMw=2nUv7357FkuscnMSFOvg*0*V^B3xi&OG?wBeMxJl zX%X6*>5lAL;rP1wahKYE8(){L%f{jFNhV1JR*0YiLt|%Uhpn{+CDy)Qol6(n^|rNt zI{u0iK zUyGkuNkOz3eLhO!Y$Y;LlqK7FDrq?hrTEWbNJwj_`;EHfAu2>@t<`Iyv`XA)h?X49 zWoCJKpr zjD<^K%#aE!*XV*)l~QM=4J>76PCAkFSVftOd$v|orI&yIP(H* zHvMFGyVFA+ej3Gu@;ThyA%q1Op3Fifr)@i;VNsFBq^fl`7bssMhA|uX-29Tr;mEEa z+G}O3maNr^)zb9@TlfgkI@(tl(YzY3qpDGT10wQWUh2|><*-(rT{(_ARhpx%ZaMqa z9@9>@^=qf2b<@u7+?|cyU;Wx>*lrkgEHx9zL`p3@;-IQ8h3mS>DI>w3& zq7h}BVF}k;E1bQ7xr&@V;+oJ_f>&BFZ9!)Y~vOM6kl31<|Oo&b}a%OCyPG*d6l6X{}DC6Gye^ zAeyHaJEY>OHzp$A(mEjumhsnbQ9b0kd4p$N^kKfD9Nn;+^gRs(n|v9zmN;Ho zTnfh<&2g=wP9DwzTq%g)bCOYd9^V+#;+#G&wWZ|eJ!b_WYFArQYt`1UPT6`&(M!H= zR-K+rU{pmTFjcx$UvqGy87cX-dgv@OxgslReG!GI7DP2Q!lr-Q{(T4b=^V{J9Rrx( zN?o*PW|plvU*LLqHZX5}Ej+U0Xs$$y_=Bjf>Rf#9ZmDcK;$dR!G|}0Pbs~uw%)0AK zWjfsQZKx=dk>{ga)a^9F1YHSjYASD6yX@w3zdA9fZJoiCpxmA-NMejnTRS*fe-xqXCY*-SFH}l)FMD#c ztDS>+L%kaepUX8f!ZcB9rSph$u9>pFsrlCO*0MGOlO|1p%~^$2o7d21*d1ZljjWZX z@{}Y!_7Z~o?gU8Y%l2$zd3m!(%4MrmhxR3eoQ}#2;ysXaq&8uJhW*GeDwMqiFY(pe)U+)U>=XUDUAMI#jXRM+|85$$`wcty z9hnOGr~7K0-$g2&BF86#-LN$csVs{^*ghXLT!pV=mdvcJevVXWhh?sg&ZlsXGu?)E zBf#B8*>mt1w|W*@%M_8@SobYJJ6-D^mcp*_kA~T9Yqx8tRW-9GW7Xum(M&W*9!?Ql zpKX{7C@Z$EnjISxr0k90Iv@>(8PP&e3i2N{x@?0IwJYJS#YGws9Bw9TjBPsOYaLL@5xTh&9%Yo4 zf+MTiz;L3)q>DtE)WSlZYcFcRT$B9g-fzfvS_MZrpR6#7fhjXizGg_^f;z*|sfFu` zc$#~cFka=tUfRI)4Ow$I;I6dpNamD|K$lvit6=pn=td7eDM|*CLi03I0kh3tz*V7ZnxEdmNF6xvxcPQa*!#Jfy zL}OyUC|oMu7{sKZn@dogY8pCHm@I8fcKxkMlc`(DuM@(-W;ui6Y;-@GN-$e*&Yh}r zNn#Hxy&_q6)?cs)#fLIj%@UthIDXRYH1XMS8!0<#Dac%t!LeGoR$s1hSB6DU4U=ZG z-sGd1)tKS+TKYGvFMQ$pB40KXzMPl{PuxhDCQRBrx)a+9(Kp-{9LwzJjK-Weba-~( zp@SzUCnx>r+sKcNOmf1~geTlM8*Dmx^5m#YM~6i^OGTJlGIBGG*8u>y@Do1sO&Y)gPoc?}V39Za;K9|qhY(fL=dLF!17 zby>XD*q6cZljyjtQecKFS;CxMh$4uSKH zwm7r9IA928b{;m?TH7ry2m*JZ_{Ppq)tIs%RiBo5H%gv56 zW8}-2>wJ@A$=t~7B;c+Ag49%hGI40T&gg3*CHGE9xoJ?!X1ci4${R(}>GOA{T#jQi z?P;y+1o9B4|8~8FQ}4+!YXJ>7M(0*nYqe5o9@|${Hhun4=)Tr6kwf=FjQDjSRWlFU zIX!*;vz&cxXp)+-eM<3hSn52O>K zU$s)yn9kgG5A>14*ssbYgUGp|<#wBC=okt^snX^ewpJRlS0P)~rSROOk7tlWwnp|V z8tBM!RTiw@$ug&I6zxn7+HtK$VQ^skj{t6%)5+sVGN zUC+I|?r)2-?(&8sKI<0rz*gpqyr=1Ib=#+EznsmHt;B)w=62Fff@;dGABp(JV%O*-M7D z&|spHAY-O!vLE>R+$m@w$k;9upd~$3rkVvrc)dEM*G9jTxFe!Egwl!e%PDKYN}GI! zqVzAH18gvuc2YTQPf0k7x$zpmh5YF_dA=+>h0#dZY3`!lMr;b6!>sy?7+SQySiPUn%p?H!(B;?W|@^~ z?v3BldW!kLY?XT7C#w^hj5n_`(k;en zTy1eN=DfibrA|=!OnE77k`2Ymno)ElD^y}z*=DM(kd2CbX>;uwMUG_&a)^AU{Kl)s zlX)?377LYjV^fP=2DLH48;g3m*m zlQpBM+e>*9&d3dIv0Yo(Neru(95&Agkvk-6_n z=KmjgS39x62yLyZ!@42k)`@MEWsx}sA-S*dyIpNpedoRKtNpXji7lRs*_%W%85Zd> zcXBJ-n_v=pDGFIC?j@^X9&HWd7w#_MoUxrkUe`X%RSguk<+$8xuX$>}KIiV3%<=B^ z9U5{2f~!8_)7_aVv(BnvIc=tXpo|A{F(l3lf)Dijy@vKU`Q1};FE=tiWIh4Dl;Lh| z+F%&ow2X8?yO4yl)O_2@-K;}qM>9=Y3b0Sa70d-Y?X1o2be3_KySCDxWPF=zmr=j z4P))^2oc&Q-8PlCZ?Naw538ViQO*$0xA|mI;tU!%z0nSaN@xNEE})&g&o7*EJ>#e* z?_pjb(rnTB%~N}K{ke71zv#T?x$4HMRgVi?E&(E=rg6i0!kJ`<8=PCw^GPetSJ05s z?qy*^ec%e)T+i-?rQepgnYzz(tJ?&TkJ##l`@_Kv78w#R_1R_sXD&!~B1aLnPEeRw+!)+DZW2=G2gUFsWHwoIlne zfy;zkn#BE^rFOHu;J3~~B%(-BJul!&B|5lp;3@ z|Ib|9222)hgG^k-ZkTbY>3rejH%6uR?b3j(F%`Iutae~?!&V%EE=P5ue=d6WII=mZ zdw?sOPwlgsZ0<~CxVu4@rWX4BUBaSiW0*s<&z3o}#iofQQGxAKL)PJh)-#FIIC)6p z^L}iZ*yn0LHt1z8Da8dxHaB;&`D0<^zu_rz1~|Z_Cy(&@Y}8~dviKeHD)SG7C=mLJ)ET)a9a&pZtUlrMGH+eHUvawk0_qP8-6Rrp7l zyFoSQ)7Dq71kHA1qKque+-L{3 z5GN?FLUc;=%)swH(I`i{weohn-trkMwac_AEb(7wX4i6g>vo%AlCi`M9G8vFXp(Q> zW?AoXgB$I3@LlBuw~AySn^xb1=2JP+A&!0i zRJ$x1bDWB8h-K@ITJ!b!die|-;s(j#cnz%~gswe0CeShHqS6RzJNK zO7Q}X-2X;6$Q4!HTuSJg0t;$yXCH@T20pz?t{fK{h;P0XoUg{HLzQ%Ge>u98TM>Im zJsltwuH`?+c}lkp60+drrttMz1`5lN+dN#L9pXjDR>CPT`b7nI$S|6j`^V(Q`U~cF;*eksy zyN0bLMfkL9q<*Zl70EU^ytK0~X{57Wx3m0ZK7_vf%x9#>ULjL{L}Wu@`UPg&9`S9> zO~HmVzwU-jJ-_kBaQQ`i2F`mJ5S?fZ-EoM7I4?gw$*A(*2fjj4&Uw$3)iqCa$71L&wclMOwVPnp7&B0e_S`!Qv-N1lJyx>mERGUw zFrDL`TU@1-lXmCwH_CUfOULsZsbX{xr%=~wsbm7rhgY+Y5l(#FB0c|RMSJnvmI&9m?u&LXPtLD;WKHcl)jbpwB+c|F1I> zZf$t0gM0y{Z;W;Vq$_rp3q7KE4s4coR5ngE3T9f?vfI>0`T}-keBU0lDT?30I;qKU zXa?8L9<_!`Ab)s;TQ$&yqhBu{`UwWyrm}`-V6Qmoy@O0;&pVxK^rQR&y(!y{9Xmtr z&NkL?4D58mH(yM{cfrnyoHODOufR18-fQ><7Su#z#%79lGn4ls7+FM7(HvgFNH4+e z(p+m_XU%fl(GEtr`60yS=du2}I^<=yFpYz_%0`xOUkkWz`Ohr(D8-^6>0Ri?RJJtq}p`4meMiYJj`9#vj;4p=0E6CjRo7gS0Ka+y=V$IbH65w z2~4ZbS(V*28Jw=b4s08=RBQSZ;)EktLf6mSn!7PP#paw#B+~NHeWu(;&n@K=Xo+~o zz{uz$~r( z91pC}PJY?AxPIoX!lA!~IkJSoSxS?5eVI2RjB^eZs$4YP2M2Zf1zqV}qH{pkHSGu2 zrhhxFydds3j*xpj?UKi8o zj4XOBa;uNJ26`=qo87=7iqOd=smIQBaUYgQKl=SsKgW3|)_rbXitzZ|)g>3DKpMG0 znW&`Z$!Kh<3 zC9;?ir^v(ZQY`10qQs$&kv5NPO?kS*`}XhKJL5bkx9>V~-OSOc@PzxZX@HAlfA)g^ zrOSlV@z910b(YLIl<{}xJmThUn$_*D%KGJQM72(ik9`qqyG@F?tOBXm#%Is24COz& zn$IrBnWsLplxwFNonlxlV?Q4F<9CsoTNC_n$L@h&g!s#tYYS|m64-&W_*dtkQy1eq zSA+c`?Vj5Bg=0*yR~46x({s)`JZa&q%RHfscH~hK^ybMKTfdkDPwZZEH}gi`w~mZs zhw}8V<5+1I?-&a&C=77D>`y^riSQG&PFjaET=%$O_UAB(U(UfJ(i)+=v+l9Lu|wO} zsjYLU?hdC(7Sy>-`85WHYq?i;7jtH1l@`+6ZDncSbvom&YXf z*e06a_IAW!+Bl<-l<|{rcO3lIT=csfncF-sjXidJFMBF-3coB==6UH-=DwGMQeu6o zndhZ>i@NL*Yvf<)ShXtJ<7NM1@y$G*;``!Vq4KfJ^;I{I44Yjd^Hj&ppDG?ean-yn zN2jG`{jIafF`O>1GbaodY3^`|j3xg|n`gU<(~(25!lOuV6-ENRmU4dnS#-iQl5h*A z?7cDhgBE@%=ZXbl?4q57lsj8s?i_-XPl^ks-D7aYI0o;?y~i!{EHd*~6;Uyz>?6;1 zX>~yDWfUOfP+MHy&S|X444rOeI2X;L(%?p`*xb$^Ve$rlZ*{g&9mEU^c>{M%x$wmm zpG)$&)8?uKzPbHFx79CvC%?K}a`@zOaxgSYhh_D6ak|Vcl#15ytkOAfs^p#^f?j^~ zRZ#Boe&lYQtNP)&#_9n!&awJ)xnJi%tmJ>@p<6~MB023LubQ`~)JMn4#DWIII%|_f zx~8$+paV%$=g)pPjn2)8r)tmDM!dQ1|MD8 z4e|?N_<(8?#s}23yRiP;feBrAF{RXBL9)F<{-5$UaXz5kRpq@Z1IGnyU!Cu?!n{Ax zvHb-p-%tNFz=je-TY=m^&9MhnFeHr`qcc1*TS4vxDl5Z$Il%iKw$sksy&mIS&LhONATUl;>_PzJgA6+5 y+SNP1U)o;ghu3Ro`1hrrdv?7;b1#>CCaete5B2?yYspg3aS+W1za|f`;J*N4(8etQ delta 9418 zcmb`L34B%6oyX5(2@)1r10;l82wO;A40~82B(fxsK!C7`2se2*FPHc7-t#SlAo>(2 zPAf|B$k-Xjidw~1RBEKy)}q!{1(dqfwvG!^>oVhvb!@BsjCT9}@4YXHt?lTiJs*Dg zo^$S5|L1>}$HQOj@z^hX>DPwzI;041qS0tkAEl=IlnM`&T&2o~D%C=I4!nr;?ZcF+ zf^T^&8qPP;VOS3Dg6;4eoDDbTC^ZWngfrn&a60@0T&h%BO&g)qVlsBZ8u%z&2(w2j zH4iR_6jawh$^Q|og@Z=9`J3S)(sx1`;5)Dmmgc$x+69-BJ`N?{m*);}C9I@>b&AMI zKJ;VycQDh_@Hpwn7^RlL@dZlRFa-IhUgS?1`~YGUHPKLNFq{i%O4Y*2umy@m4?>z% z_rWRf80-mOhLh7o&Jn4H=Z$q|vJqC3{wfs9ybYy6|2TIh>!7m~a3T3`!MSi!p_|_b zWu|vQvD|Mw&L6MTm8AE=d9ddM?7xi20wNc|FTqN97Rnk8n&_H(5tI%Ndg-U(g``JK zavRzJWvy?7GvL!u>iZbAn0_Xd30)1va;Kpz;m4D){}LkAMXpmFfKy3753hl}u-9U^ zA4&tyLm6;hvAZx3 z_6!tn&Aq@iaXplZ2Vn&~1?R&)Oh-(;2rh&-zy9#ZY^2<3D7)YQ6pK9JG`o560m6a2FIy?uRnK7a*&o2D2X0UO8lA zsr66>5QU6ErN2u=3cd^3l4=;!7OyRa(s4DEiUEkC`%spuSEW0{!BE=I zgITZ)4urFzSa?Zg+WoMOjNW8y_6jz^64KkCbaWGx8Qlqo!pERA^diiLZ$RnzJ$Trs z)bF6&nzwMQ){>vaA+r>&f#NGSLyD-=X)n^B&3k~16%YqjufbU`hg$3?RR_hH_CPtR zPk8(ovU+L($DQQwg1Ccv6iUaxgZZ$Ay}1$wA=XzXJf?r^MP_pzuHZu(lm?%Gi(t>? zF00`|($_)SR0XuY9k#%u%=8>QM0!7stcK(0&4wvB7M_DLAz!_Fo|HqDI<4x77<@3{ z1#mYMQ$GM{SDp3ppM^b1t5vQO^@7siG>8$E4Q1x{d;D)Wf%GIs!yHu|6bs$t@nyJF z_J6?|_d^hpr|yAFUj4yiO@n)F-Uy|`p=({!E`ycQpvRZs4AOb)T#MC1wzxV3#bVFG znQ+v4cc3fbH2PQ9N(7$t_&$`8j^E(21(uOM3S~`Sh0@WKjV`yqLee)vtgIe_vdzxB z*zIr@l!1g{6+8kD!*^g>oZ;F{ZhGBXBl++hf5Nx1aS}u>TZ39413}#^Z+`$8L2StcBu?yS?<2a2Dy` z!|8B_>3VsK$9=GX{I5arfgixJ@Es`UMgK;3|Bq};yC$7XhRi$#Wq+Q8BjCGm6ztvP zI#B_AbGVKMouptN@d91Rb_zVLxG5%JE4;UJi0xd+Jz zC?g#Y#q?!x0=yUwg;&8L@J1*NAAwT-5h&%)c14?Y4{#E7@qKW3W}v(hSEWH3pXb$^0)vFB)t|+gaIg)yB5k)oQC*L zTKx|Z8CiktdV4t(C)x$4!Uv#u^Bb@T4%y~fVm=&4x)I6*z5r!_cR(LJ4#iR@pwvGD zr@;S%((d?>EFtT^j)<7>I#>wrgt_n(%zt`WyY_--tc|z`)}bO z(pi_ezA^&J_c302Jd}=#p>(hc8gL6746lOH?hUXXJaQTKmx3K+U{U8C_cT0+B;4%6 z>69}_CDD)2883f4T!XGctcI+n3yffZD*qxEPZdJ;*v653dK}fG`_T#1h$Q?NRXVY*KOv%L(LbZFd)eQGrWfDoF}q z6Ul@{MBYUG&|Fl9Bzzm)fc`}igcr~)=s(bPNJ7GeYJ$_fxL^aChsL61r~^qjgzlF0 z??q$)T7t%*@1cEYFOqNy{RF*&`lF>t!u9Aj^slH7dJJX41w>>EPR(R^lygDCgUFBW zkoDh#B>cdII_6Q(jJ|`uBnd*E3+JAf=mY3QRElcQ4)ik=MH1rZ%jn-w73zT`d>`eb z^t1fgj%*}h7#f8vv>MGp5*|h?P%HX(bRi0&e?nhCTag?_nJ|q=8+yab*pm4GV_osI z^W*Rw8BcX(I5-$D|G$e)h zFudcz{OUgX@Pv6CA5RDj)pyL<+%ajc?dzB~e}%8(mWpXT^e-12>G;OND|~uU)hT`R zMQwcpcHC-8M&s=rWsC0Z(a~>dPoJ)=9;KhDUZzLawCQ_m4rRAlc06D-+hI%ZUsl?C zx<3}T^!Juk4V*f|Usmofn{Jeq&n+v{1D208;&!vKxYSsY3dW-?QDeSI#uh6Qh({N; zn=R3(u3G-<4kKrqPhUSGH@(J+r($M_ku+nr(HxDpnn}Zs#8OEkWQC)xv1rIx+OV;H zu@MLwOPAC&lp4zKuaz8s*p66!w@O7VpNvmytC8*#UW-mOX-G)P3_{T29 zVBOuf}= zZ8ReRI}()qh}mj7RxeeC;rEBF=A^$V8cwxF45M0aw2KzYEIyMR5>_}BPqi4`?UAvB z9=v9(-ZXl&UbSX)y55Q>Z5f0!g3mBAzds_&7B-BPsiZ8Nmkij=&F;7pG0O`0!)83l zdSSVQVN@nktqEuDl3_Gj2{Ud4nDShDZZ|_l!eXSPWB5m-*+ML2HQ8aAZz37DWBz2^ zw3&I(-xS9fW-OJ^^<#1;#>{}}F84pM=p}#FYAS~RClda~uo(&Yt=3qw-Dt36#S$?y zVH;-BOySXuG7Ie9%Cbg+M9jF9ahD(zO++I>45WWPBiFY~k6l+VM21YYguT;poW*F+ zTi4}H30Tc$Dx5URi;Pf|O<^=yNt2d7y?DvrEFSIh-D%>xzh5{0yi&suU!JD7)Q{-q z!gGvK)qZ~}V!J1V9gUb_f5d8YT3`ty!Jrv)+|x+f0oF`R&w3@rYi0d{rpLp_^x~!r3h|(e95%!tEKiN<~^N zJSfo3B_h#Cbh{M~n=wpLSt5HR(GqR*o8fS#mgo2S?BPql;4R~g&r+zSvyd}g&jy{N>e@4&%}SVMq&aMd zj6j$nMp&m1rvdJ#AK6l%pP4*mjhOCpY}5aDm)2nD{YCk%q4i5!2W1D1)pA_@#fRR` z2mSumeEn`wa5e+!@-Yshuo+5;J(IS$mt*ih^DX6HLuUu3jPTXzcg+jZbkg9OIbu^Q zEOy4#Qyi}nYqa8KG9_mV=N}u>bM;5Xh5G8Ioc@`{#18ss(ipeR z8oOqtU-Azs$;_k6_Y>B(RBM<8{iMOEsGswX-0*oSV1roPjwJn!?Mb=48aj8mWEkyS zmf}{8R=_OPuUQ4UxpaD(O09Opc5cSC39c~lG5oEG7fH7>ENR6vH(S7&)90*YIh8mT zGbbL~L}oob(Zn^GG^_w?V#zXgE7N5qPJ@`q@#Gw0IvgA`ENs+mlhyG45 zH{Gp0yUY5P-+3c+I+7T{ebC4_S`C}~Q2a!i`|Gt@IF6c)5RbqlF9~@FcsbssPgQ-g zC1)LLz3(l*vCucoXVU#tDdBTg`-=7Nt7clDlN;Tq(sh*R9UfPgZi@aMGV! z^b;*Qmty8g*H1T3Ef|a$|MC^KiMfTHxy8(&9WikUqsodq&zq?GCJI@`)>wR!cS{6p zf2L$-RqnCID9=D+dFMkx{8#_RF5*tk-BwvCfh zFXD_L-h_vGPce51yl3_5i`F>z5GA8dNq20{JC+*QQQj^I3kQ`a6pm?zl6EtfhaI)2-b!%oy(9;vV0boud44cfeLtDxR>n zGxs{ZHZ0S8C=&&VsRHDgid-4wEtnA8ZQGS>j_4Ca!+H9DVABgjZPtvVNL zzurNaPIxxbt>2q$K+Vk`ACod z;G#37&(GH^Gx`kI5vBgxoX0tH-r*UyDVz#e74?<)UxRamI5*PCXiho9atnFS6890; z?ab^te4K+b^Mcd=HG5|E66e4w4J`Acc6-?+`w?8quPTs#p!VXv*0Dd92j`t|i zx3z7~=C$KK$V+w41@*dm$5(XE_PyF@@1^&*&+2%!y~gJ=^~B3-eOvYQm*@3z27mwM z5jRq}Yohl;uirI2y}}Oje2>PG@-}4@oi9j!%5Ypxnvj^Jystr%9iBNJ+=pi76OSqR zHIu2G$qvh}yUtAceG%e+AZ%p?=Js97ePe_>9=zhHk4GP!yFV^M{AU0MKfkAxvs&(t zh280NmfN%Ld)1DPhpsC3>Ehi5`nlaTx?oRD?-;+pEgjlZtdH$k-iwD%NdIw9-uX_u iVUxz3rPoD!C+Bi3g=D!RR*MSq+a)ZQbt-Hp)Sm#PvL%E7 diff --git a/po/id.po b/po/id.po index cca6a8d..b9a9298 100644 --- a/po/id.po +++ b/po/id.po @@ -1,47 +1,48 @@ # Pesan bahasa indonesia untuk diffutils # Copyright (C) 2002 Free Software Foundation, Inc. # This file is distributed under the same license as the diffutils package. -# Tedi Heriyanto , 2002. -# Arif E. Nugroho , 2008, 2009, 2010, 2011, 2012, 2013, 2014. +# tedi heriyanto , 2002. +# arif e. nugroho , 2008-2014. +# Andika Triwidada , 2021. # msgid "" msgstr "" -"Project-Id-Version: diffutils 3.3-pre1\n" +"Project-Id-Version: diffutils 3.7.41\n" "Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n" -"POT-Creation-Date: 2021-08-01 18:56-0700\n" -"PO-Revision-Date: 2014-08-03 08:00+0700\n" -"Last-Translator: Arif E. Nugroho \n" +"POT-Creation-Date: 2023-05-21 01:51-0700\n" +"PO-Revision-Date: 2021-08-29 17:49+0700\n" +"Last-Translator: Andika Triwidada \n" "Language-Team: Indonesian \n" "Language: id\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Bugs: Report translation errors to the Language-Team address.\n" +"X-Generator: Poedit 2.4.3\n" -#: lib/argmatch.c:132 -#, fuzzy, c-format +#: lib/argmatch.c:145 +#, c-format msgid "invalid argument %s for %s" -msgstr "argumen %s%s tidak valid '%s'" +msgstr "argumen %s untuk %s tidak valid" -#: lib/argmatch.c:133 +#: lib/argmatch.c:146 #, c-format msgid "ambiguous argument %s for %s" -msgstr "" +msgstr "argumen %s untuk %s ambigu" -#: lib/argmatch.c:152 lib/argmatch.h:223 -#, fuzzy +#: lib/argmatch.c:165 lib/argmatch.h:242 msgid "Valid arguments are:" -msgstr "argumen %s%s tidak valid '%s'" +msgstr "Argumen yang valid adalah:" -#: lib/c-stack.c:187 +#: lib/c-stack.c:186 msgid "program error" msgstr "kesalahan program" -#: lib/c-stack.c:188 +#: lib/c-stack.c:187 msgid "stack overflow" msgstr "overflow stack" -#: lib/error.c:195 +#: lib/error.c:193 msgid "Unknown system error" msgstr "Kesalahan sistem tidak dikenal" @@ -59,7 +60,7 @@ msgstr "direktori" #: lib/file-type.c:46 msgid "symbolic link" -msgstr "link simbolik" +msgstr "taut simbolik" #: lib/file-type.c:52 msgid "message queue" @@ -67,7 +68,7 @@ msgstr "antrian pesan" #: lib/file-type.c:55 msgid "semaphore" -msgstr "semaphore" +msgstr "semafor" #: lib/file-type.c:58 msgid "shared memory object" @@ -87,7 +88,7 @@ msgstr "berkas karakter spesial" #: lib/file-type.c:72 msgid "contiguous data" -msgstr "" +msgstr "data yang berturutan" #: lib/file-type.c:75 msgid "fifo" @@ -95,43 +96,39 @@ msgstr "fifo" #: lib/file-type.c:78 msgid "door" -msgstr "" +msgstr "door" #: lib/file-type.c:81 -#, fuzzy msgid "multiplexed block special file" -msgstr "berkas blok spesial" +msgstr "berkas spesial blok ter-multipleks" #: lib/file-type.c:84 -#, fuzzy msgid "multiplexed character special file" -msgstr "berkas karakter spesial" +msgstr "berkas spesial karakter ter-multipleks" #: lib/file-type.c:87 msgid "multiplexed file" -msgstr "" +msgstr "berkas ter-multipleks" #: lib/file-type.c:90 -#, fuzzy msgid "named file" -msgstr "berkas aneh" +msgstr "berkas bernama" #: lib/file-type.c:93 -#, fuzzy msgid "network special file" -msgstr "berkas blok spesial" +msgstr "berkas spesial jaringan" #: lib/file-type.c:96 msgid "migrated file with data" -msgstr "" +msgstr "berkas termigrasi dengan data" #: lib/file-type.c:99 msgid "migrated file without data" -msgstr "" +msgstr "berkas termigrasi tanpa data" #: lib/file-type.c:102 msgid "port" -msgstr "" +msgstr "port" #: lib/file-type.c:105 msgid "socket" @@ -139,36 +136,36 @@ msgstr "soket" #: lib/file-type.c:108 msgid "whiteout" -msgstr "" +msgstr "whiteout" #: lib/file-type.c:110 msgid "weird file" msgstr "berkas aneh" #: lib/getopt.c:278 -#, fuzzy, c-format +#, c-format msgid "%s: option '%s%s' is ambiguous\n" -msgstr "%s: pilihan '-W %s' ambigu\n" +msgstr "%s: pilihan '%s%s' ambigu\n" #: lib/getopt.c:284 -#, fuzzy, c-format +#, c-format msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "%s: pilihan '%s' ambigu" +msgstr "%s: pilihan '%s%s' ambigu; kemungkinan:" #: lib/getopt.c:319 -#, fuzzy, c-format +#, c-format msgid "%s: unrecognized option '%s%s'\n" -msgstr "%s: pilihan '%c%s' tidak dikenal\n" +msgstr "%s: pilihan tidak dikenal '%s%s'\n" #: lib/getopt.c:345 -#, fuzzy, c-format +#, c-format msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "%s: pilihan '%c%s' tidak mengijinkan sebuah argumen\n" +msgstr "%s: pilihan '%s%s' tidak mengizinkan sebuah argumen\n" #: lib/getopt.c:360 -#, fuzzy, c-format +#, c-format msgid "%s: option '%s%s' requires an argument\n" -msgstr "%s: pilihan '--%s' membutuhkan sebuah argumen\n" +msgstr "%s: pilihan '%s%s' membutuhkan sebuah argumen\n" #: lib/getopt.c:621 #, c-format @@ -201,84 +198,83 @@ msgstr "%s: pilihan -- '%c' membutuhkan sebuah argumen\n" #. If you don't know what to put here, please see #. #. and use glyphs suitable for your language. -#: lib/quotearg.c:355 +#: lib/quotearg.c:354 msgid "`" -msgstr "`" +msgstr "'" -#: lib/quotearg.c:356 +#: lib/quotearg.c:355 msgid "'" msgstr "'" -#: lib/regcomp.c:135 +#: lib/regcomp.c:122 msgid "Success" msgstr "Sukses" -#: lib/regcomp.c:138 +#: lib/regcomp.c:125 msgid "No match" msgstr "Tidak cocok" -#: lib/regcomp.c:141 +#: lib/regcomp.c:128 msgid "Invalid regular expression" msgstr "Ekspresi reguler tidak valid" -#: lib/regcomp.c:144 +#: lib/regcomp.c:131 msgid "Invalid collation character" msgstr "Karakter kolasi tidak valid" -#: lib/regcomp.c:147 +#: lib/regcomp.c:134 msgid "Invalid character class name" msgstr "Nama kelas karakter tidak valid" -#: lib/regcomp.c:150 +#: lib/regcomp.c:137 msgid "Trailing backslash" msgstr "Akhiran backslash" -#: lib/regcomp.c:153 +#: lib/regcomp.c:140 msgid "Invalid back reference" msgstr "Referensi balik tidak valid" -#: lib/regcomp.c:156 -#, fuzzy +#: lib/regcomp.c:143 msgid "Unmatched [, [^, [:, [., or [=" -msgstr "Tidak cocok [ atau [^" +msgstr "Tidak cocok [, [^, [:, [., atau [=" -#: lib/regcomp.c:159 +#: lib/regcomp.c:146 msgid "Unmatched ( or \\(" msgstr "Tidak cocok ( atau \\(" -#: lib/regcomp.c:162 +#: lib/regcomp.c:149 msgid "Unmatched \\{" msgstr "Tidak cocok \\{" -#: lib/regcomp.c:165 +#: lib/regcomp.c:152 msgid "Invalid content of \\{\\}" msgstr "Isi dari \\{\\} tidak valid" -#: lib/regcomp.c:168 +#: lib/regcomp.c:155 msgid "Invalid range end" -msgstr "Batas akhir tidak valid" +msgstr "Akhir rentang tidak valid" -#: lib/regcomp.c:171 +#: lib/regcomp.c:158 msgid "Memory exhausted" msgstr "Kehabisan memori" -#: lib/regcomp.c:174 +#: lib/regcomp.c:161 msgid "Invalid preceding regular expression" msgstr "Ekspresi reguler yang mengawali tidak valid" -#: lib/regcomp.c:177 +#: lib/regcomp.c:164 msgid "Premature end of regular expression" msgstr "Ekspresi reguler berakhir dengan prematur" -#: lib/regcomp.c:180 +#: lib/regcomp.c:167 msgid "Regular expression too big" msgstr "Ekspresi reguler terlalu besar" -#: lib/regcomp.c:183 +#: lib/regcomp.c:170 msgid "Unmatched ) or \\)" msgstr "Tidak cocok ) atau \\)" -#: lib/regcomp.c:676 +#: lib/regcomp.c:650 msgid "No previous regular expression" msgstr "Tidak ada ekspresi reguler sebelumnya" @@ -310,17 +306,17 @@ msgstr "gagal untuk membuka kembali %s dengan mode %s" #: lib/xstdopen.c:34 #, c-format msgid "standard file descriptors" -msgstr "" +msgstr "deskriptor berkas standar" #: lib/version-etc.c:73 #, c-format msgid "Packaged by %s (%s)\n" -msgstr "Dibungkus oleh %s (%s)\n" +msgstr "Dipaketkan oleh %s (%s)\n" #: lib/version-etc.c:76 #, c-format msgid "Packaged by %s\n" -msgstr "Dibungkus oleh %s\n" +msgstr "Dipaketkan oleh %s\n" #. TRANSLATORS: Translate "(C)" to the copyright symbol #. (C-in-a-circle), if this symbol is available in the user's @@ -331,18 +327,16 @@ msgstr "(C)" #. TRANSLATORS: The %s placeholder is the web address of the GPL license. #: lib/version-etc.c:88 -#, fuzzy, c-format +#, c-format msgid "" "License GPLv3+: GNU GPL version 3 or later <%s>.\n" "This is free software: you are free to change and redistribute it.\n" "There is NO WARRANTY, to the extent permitted by law.\n" msgstr "" -"\n" -"Lisensi GPLv3+: GNU GPL versi 3 atau selanjutnya .\n" -"Ini adalah perangkat lunak bebas: anda bebas untuk mengubah dan " +"Lisensi GPLv3+: GNU GPL versi 3 atau setelahnya <%s>.\n" +"Ini adalah perangkat lunak bebas: Anda bebas untuk mengubah dan " "mendistribusikannya.\n" -"Tidak ada JAMINAN APAPUN, sepanjang masih diijinkan oleh hukum yang " +"Tidak ada JAMINAN APA PUN, sepanjang masih diizinkan oleh hukum yang " "berlaku.\n" #. TRANSLATORS: %s denotes an author name. @@ -372,7 +366,7 @@ msgid "" "Written by %s, %s, %s,\n" "and %s.\n" msgstr "" -"Ditulias oleh %s, %s, %s,\n" +"Ditulis oleh %s, %s, %s,\n" "dan %s.\n" #. TRANSLATORS: Each %s denotes an author name. @@ -458,16 +452,14 @@ msgstr "" #. "Report translation bugs to <...>\n" with the address for translation #. bugs (typically your translation team's web or email address). #: lib/version-etc.c:249 -#, fuzzy, c-format +#, c-format msgid "Report bugs to: %s\n" -msgstr "" -"\n" -"Laporkan bugs ke: %s\n" +msgstr "Laporkan kutu ke: %s\n" #: lib/version-etc.c:251 #, c-format msgid "Report %s bugs to: %s\n" -msgstr "Laporkan %s bugs ke: %s\n" +msgstr "Laporkan kutu %s ke: %s\n" #: lib/version-etc.c:255 lib/version-etc.c:257 #, c-format @@ -475,22 +467,21 @@ msgid "%s home page: <%s>\n" msgstr "%s halaman rumah: <%s>\n" #: lib/version-etc.c:260 -#, fuzzy, c-format +#, c-format msgid "General help using GNU software: <%s>\n" -msgstr "" -"Bantuan umum menggunakan perangkat lunak GNU: \n" +msgstr "Bantuan umum menggunakan perangkat lunak GNU: <%s>\n" -#: src/analyze.c:454 src/diff.c:1406 +#: src/analyze.c:455 src/diff.c:1478 #, c-format msgid "Files %s and %s differ\n" msgstr "Berkas %s dan %s berbeda\n" -#: src/analyze.c:455 +#: src/analyze.c:456 #, c-format msgid "Binary files %s and %s differ\n" -msgstr "File biner %s dan %s berbeda\n" +msgstr "Berkas biner %s dan %s berbeda\n" -#: src/analyze.c:706 src/diff3.c:1470 src/util.c:1254 +#: src/analyze.c:707 src/diff3.c:1457 src/util.c:1354 msgid "No newline at end of file" msgstr "Tidak ada baris-baru di akhir dari berkas" @@ -504,93 +495,94 @@ msgstr "Torbjorn Granlund" msgid "David MacKenzie" msgstr "David MacKenzie" -#: src/cmp.c:120 src/diff.c:879 src/diff3.c:467 src/sdiff.c:160 +#: src/cmp.c:124 src/diff.c:939 src/diff3.c:465 src/sdiff.c:159 #, c-format msgid "Try '%s --help' for more information." msgstr "Coba '%s --help' untuk informasi lebih lanjut." -#: src/cmp.c:138 +#: src/cmp.c:142 #, c-format msgid "invalid --ignore-initial value '%s'" msgstr "tidak valid --ignore-initial nilai '%s'" -#: src/cmp.c:148 +#: src/cmp.c:152 #, c-format msgid "options -l and -s are incompatible" msgstr "pilihan -l dan -s tidak kompatibel" -#: src/cmp.c:156 src/diff.c:887 src/diff3.c:474 src/sdiff.c:168 src/sdiff.c:316 -#: src/sdiff.c:323 src/sdiff.c:876 src/util.c:852 src/util.c:952 src/util.c:959 +#: src/cmp.c:160 src/diff.c:947 src/diff3.c:472 src/sdiff.c:167 src/sdiff.c:314 +#: src/sdiff.c:321 src/sdiff.c:873 src/util.c:952 src/util.c:1052 +#: src/util.c:1059 msgid "write failed" msgstr "gagal menulis" -#: src/cmp.c:158 src/diff.c:889 src/diff.c:1471 src/diff3.c:476 src/sdiff.c:170 +#: src/cmp.c:162 src/diff.c:949 src/diff.c:1543 src/diff3.c:474 src/sdiff.c:169 msgid "standard output" msgstr "standar keluaran" -#: src/cmp.c:162 +#: src/cmp.c:166 msgid "-b, --print-bytes print differing bytes" -msgstr "-b, --print-bytes Tampilkan byte yang berbeda." +msgstr "-b, --print-bytes tampilkan byte yang berbeda" -#: src/cmp.c:163 +#: src/cmp.c:167 msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs" -msgstr "-i, --ignore-initial=SKIP Lewati SKIP byte pertama dari masukan." +msgstr "" +"-i, --ignore-initial=SKIP lewati SKIP byte awal dari kedua masukan" -#: src/cmp.c:164 +#: src/cmp.c:168 msgid "" "-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n" " first SKIP2 bytes of FILE2" msgstr "" -"-i, --ignore-initial=SKIP1:SKIP2 Lewati SKIP1 byte pertama FILE1 dan SKIP2 " -"byte pertama FILE2.\n" -" first SKIP2 bytes of FILE2" +"-i, --ignore-initial=SKIP1:SKIP2 lewati SKIP1 byte awal FILE1\n" +" dan SKIP2 byte awal FILE2" -#: src/cmp.c:166 +#: src/cmp.c:170 msgid "" "-l, --verbose output byte numbers and differing byte values" msgstr "" -"-l, --verbose Keluarkan jumlah byte dan nilai semua byte yang berbeda." +"-l, --verbose keluarkan cacah byte dan nilai semua byte yang " +"berbeda" -#: src/cmp.c:167 +#: src/cmp.c:171 msgid "-n, --bytes=LIMIT compare at most LIMIT bytes" -msgstr "-n, --bytes=LIMIT Bandingkan paling banyak LIMIT byte." +msgstr "-n, --bytes=LIMIT bandingkan paling banyak LIMIT byte" -#: src/cmp.c:168 +#: src/cmp.c:172 msgid "-s, --quiet, --silent suppress all normal output" -msgstr "-s, --quiet, --silent suppress all normal output" +msgstr "-s, --quiet, --silent cegah semua keluaran normal" -#: src/cmp.c:169 +#: src/cmp.c:173 msgid " --help display this help and exit" -msgstr " --help display this help and exit" +msgstr " --help tampilkan bantuan ini dan keluar" -#: src/cmp.c:170 +#: src/cmp.c:174 msgid "-v, --version output version information and exit" -msgstr "-v, --version Tampilkan informasi versi." +msgstr "-v, --version tampilkan informasi versi dan keluar" -#: src/cmp.c:179 +#: src/cmp.c:183 #, c-format msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n" msgstr "Penggunaan: %s [PILIHAN]... BERKAS1 [BERKAS2 [SKIP1 [SKIP2]]]\n" -#: src/cmp.c:181 +#: src/cmp.c:185 msgid "Compare two files byte by byte." -msgstr "Bandingkan dua file byte per byte" +msgstr "Bandingkan dua berkas byte per byte." -#: src/cmp.c:183 +#: src/cmp.c:187 msgid "" "The optional SKIP1 and SKIP2 specify the number of bytes to skip\n" "at the beginning of each file (zero by default)." msgstr "" -"SKIP1 dan SKIP2 adalah jumlah byte yang harus dilewati di tiap file.\n" -"at the beginning of each file (zero by default)." +"SKIP1 dan SKIP2 adalah jumlah byte yang harus dilewati di awal\n" +"setiap berkas (nilai baku adalah nol)." -#: src/cmp.c:186 src/diff.c:999 src/diff3.c:514 src/sdiff.c:211 +#: src/cmp.c:190 src/diff.c:1059 src/diff3.c:512 src/sdiff.c:210 msgid "" "Mandatory arguments to long options are mandatory for short options too.\n" -msgstr "" -"Mandatory arguments to long options are mandatory for short options too.\n" +msgstr "Argumen wajib ke opsi panjang juga wajib untuk opsi pendek.\n" -#: src/cmp.c:192 +#: src/cmp.c:196 msgid "" "SKIP values may be followed by the following multiplicative suffixes:\n" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" @@ -600,358 +592,376 @@ msgstr "" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" "GB 1,000,000,000, G 1,073,741,824, dan seterusnya untuk T, P, E, Z, Y." -#: src/cmp.c:195 +#: src/cmp.c:199 msgid "If a FILE is '-' or missing, read standard input." -msgstr "Jika sebuah FILE adalah '-' atau tidak ada, baca input standar" +msgstr "Jika sebuah FILE adalah '-' atau tidak ada, baca masukan standar." -#: src/cmp.c:196 src/diff.c:987 src/sdiff.c:221 +#: src/cmp.c:200 src/diff.c:1047 src/sdiff.c:220 msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble." msgstr "" "Status keluar adalah 0 jika masukan sama, 1 jika berbeda, 2 jika bermasalah." -#: src/cmp.c:243 +#: src/cmp.c:247 #, c-format msgid "invalid --bytes value '%s'" msgstr "nilai --byte tidak valid '%s'" -#: src/cmp.c:269 src/diff.c:797 src/diff3.c:361 src/sdiff.c:567 +#: src/cmp.c:273 src/diff.c:857 src/diff3.c:368 src/sdiff.c:564 #, c-format msgid "missing operand after '%s'" msgstr "tidak ada operand setelah '%s'" -#: src/cmp.c:281 src/diff.c:799 src/diff3.c:363 src/sdiff.c:569 +#: src/cmp.c:285 src/diff.c:859 src/diff3.c:370 src/sdiff.c:566 #, c-format msgid "extra operand '%s'" msgstr "operand ekstra '%s'" -#: src/cmp.c:507 +#: src/cmp.c:521 #, c-format msgid "%s %s differ: byte %s, line %s\n" msgstr "%s %s berbeda: byte %s, baris %s\n" -#: src/cmp.c:523 +#: src/cmp.c:537 #, c-format msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n" msgstr "%s %s berbeda: byte %s, baris %s adalah %3o %s %3o %s\n" -#: src/cmp.c:580 -#, fuzzy, c-format +#: src/cmp.c:594 +#, c-format msgid "cmp: EOF on %s which is empty\n" -msgstr "cmp: EOF pada %s\n" +msgstr "cmp: EOF pada %s yang kosong\n" -#: src/cmp.c:594 -#, fuzzy, c-format +#: src/cmp.c:608 +#, c-format msgid "cmp: EOF on %s after byte %s, line %s\n" -msgstr "%s %s berbeda: byte %s, baris %s\n" +msgstr "cmp: EOF pada %s setelah byte %s, baris %s\n" -#: src/cmp.c:595 -#, fuzzy, c-format +#: src/cmp.c:609 +#, c-format msgid "cmp: EOF on %s after byte %s, in line %s\n" -msgstr "%s %s berbeda: byte %s, baris %s\n" +msgstr "cmp: EOF pada %s setelah %s byte, dalam baris %s\n" -#: src/cmp.c:601 -#, fuzzy, c-format +#: src/cmp.c:615 +#, c-format msgid "cmp: EOF on %s after byte %s\n" -msgstr "cmp: EOF pada %s\n" +msgstr "cmp: EOF pada %s setelah byte %s\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:51 +#: src/diff.c:50 msgid "Paul Eggert" msgstr "Paul Eggert" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:52 +#: src/diff.c:51 msgid "Mike Haertel" msgstr "Mike Haertel" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:53 +#: src/diff.c:52 msgid "David Hayes" msgstr "David Hayes" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:54 +#: src/diff.c:53 msgid "Richard Stallman" msgstr "Richard Stallman" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:55 +#: src/diff.c:54 msgid "Len Tower" msgstr "Len Tower" -#: src/diff.c:355 +#: src/diff.c:365 #, c-format msgid "invalid context length '%s'" msgstr "panjang context tidak valid '%s'" -#: src/diff.c:438 +#: src/diff.c:487 #, c-format msgid "pagination not supported on this host" msgstr "paginasi tidak didukung pada host ini" -#: src/diff.c:453 src/diff3.c:341 +#: src/diff.c:502 src/diff3.c:348 #, c-format msgid "too many file label options" -msgstr "terlalu banyak option label file" +msgstr "terlalu banyak opsi label berkas" -#: src/diff.c:530 +#: src/diff.c:579 #, c-format msgid "invalid width '%s'" msgstr "lebar tidak valid '%s'" -#: src/diff.c:534 +#: src/diff.c:583 msgid "conflicting width options" -msgstr "option lebar konflik" +msgstr "konflik opsi lebar" -#: src/diff.c:559 +#: src/diff.c:608 #, c-format msgid "invalid horizon length '%s'" msgstr "panjang horizon tidak valid '%s'" -#: src/diff.c:615 +#: src/diff.c:664 #, c-format msgid "invalid tabsize '%s'" msgstr "tabsize tidak valid '%s'" -#: src/diff.c:619 +#: src/diff.c:668 msgid "conflicting tabsize options" -msgstr "option tabsize konflik" +msgstr "konflik opsi tabsize" -#: src/diff.c:774 +#: src/diff.c:834 msgid "--from-file and --to-file both specified" msgstr "--from-file dan --to-file keduanya disebutkan" -#: src/diff.c:893 +#: src/diff.c:953 msgid " --normal output a normal diff (the default)" -msgstr "--normal Output normal diff." +msgstr " --normal keluarkan diff normal (baku)" -#: src/diff.c:894 +#: src/diff.c:954 msgid "-q, --brief report only when files differ" -msgstr "-q, --brief Tampilkan hanya apakah file berbeda." +msgstr "-q, --brief laporkan hanya ketika berkas berbeda" -#: src/diff.c:895 +#: src/diff.c:955 msgid "-s, --report-identical-files report when two files are the same" -msgstr "-s, --report-identical-files Laporkan ketika dua file sama." +msgstr "-s, --report-identical-files laporkan ketika dua berkas sama" -#: src/diff.c:896 +#: src/diff.c:956 msgid "" "-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context" msgstr "" -"-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context" +"-c, -C NUM, --context[=NUM] keluarkan NUM (baku 3) baris dari konteks yang " +"disalin" -#: src/diff.c:897 +#: src/diff.c:957 msgid "" "-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context" msgstr "" -"-w, NUM --width=NUM Output paling banyak NUM (baku 130) kolom cetakan." +"-u, -U NUM, --unified[=NUM] keluarkan NUM (baku 3) baris dari konteks " +"terpadu" -#: src/diff.c:898 +#: src/diff.c:958 msgid "-e, --ed output an ed script" -msgstr "-e, --ed Output adalah script ed." +msgstr "-e, --ed keluarkan suatu skrip ed" -#: src/diff.c:899 +#: src/diff.c:959 msgid "-n, --rcs output an RCS format diff" -msgstr "-n, --rcs Output dalam format RCS diff." +msgstr "-n, --rcs keluaran dalam format RCS diff" -#: src/diff.c:900 +#: src/diff.c:960 msgid "-y, --side-by-side output in two columns" -msgstr "-y, --side-by-side output in two columns" +msgstr "-y, --side-by-side keluaran dalam dua kolom" -#: src/diff.c:901 +#: src/diff.c:961 msgid "" "-W, --width=NUM output at most NUM (default 130) print columns" -msgstr "-W, --width=NUM Output paling banyak NUM (baku 130) kolom cetakan." +msgstr "" +"-W, --width=NUM keluarkan paling banyak NUM (baku 130) kolom " +"cetak" -#: src/diff.c:902 +#: src/diff.c:962 msgid "" " --left-column output only the left column of common lines" -msgstr " --left-column Hanya tampilkan kolom kiri baris yang sama." +msgstr "" +" --left-column hanya tampilkan kolom kiri baris yang sama" -#: src/diff.c:903 +#: src/diff.c:963 msgid " --suppress-common-lines do not output common lines" -msgstr " --suppress-common-lines Jangan tampilkan baris yang sama." +msgstr " --suppress-common-lines jangan tampilkan baris yang sama" -#: src/diff.c:905 +#: src/diff.c:965 msgid "-p, --show-c-function show which C function each change is in" -msgstr "-p, --show-c-function show which C function each change is in" +msgstr "" +"-p, --show-c-function tunjukkan dalam fungsi C mana setiap perubahan" -#: src/diff.c:906 +#: src/diff.c:966 msgid "-F, --show-function-line=RE show the most recent line matching RE" -msgstr "-F, --show-function-line=RE show the most recent line matching RE" +msgstr "-F, --show-function-line=RE tunjukkan baris terkini yang cocok RE" -#: src/diff.c:907 -#, fuzzy +#: src/diff.c:967 msgid "" " --label LABEL use LABEL instead of file name and timestamp\n" " (can be repeated)" msgstr "" -" --label LABEL use LABEL instead of file name\n" -" (can be repeated)" +" --label LABEL pakai LABEL bukan nama berkas dan stempel " +"waktu\n" +" (dapat diulang)" -#: src/diff.c:910 +#: src/diff.c:970 msgid "-t, --expand-tabs expand tabs to spaces in output" -msgstr "-t, --expand-tabs Ekspansi tab ke spasi dalam output." +msgstr "-t, --expand-tabs ekspansi tab ke spasi dalam keluaran" -#: src/diff.c:911 +#: src/diff.c:971 msgid "-T, --initial-tab make tabs line up by prepending a tab" -msgstr "-T, --initial-tab Buat tab beraturan dg menambahkan sebuah tab." +msgstr "" +"-T, --initial-tab buat tab lurus dengan menyisip di depan tab" -#: src/diff.c:912 +#: src/diff.c:972 msgid "" " --tabsize=NUM tab stops every NUM (default 8) print columns" -msgstr "--tabsize=NUM Tab stop adalah setiap NUM (default 8) kolom cetakan." +msgstr "" +" --tabsize=NUM tab stop adalah setiap NUM (baku 8) kolom cetak" -#: src/diff.c:913 +#: src/diff.c:973 msgid "" " --suppress-blank-empty suppress space or tab before empty output lines" msgstr "" -"--suppress-blank-empty Tekan spasi atau tab sebelum mengeluarkan baris " -"kosong." +" --suppress-blank-empty cegah spasi atau tab sebelum keluaran baris " +"kosong" -#: src/diff.c:914 +#: src/diff.c:974 msgid "-l, --paginate pass output through 'pr' to paginate it" -msgstr "-l, --paginate Berikan output ke `pr' untuk di-paginate." +msgstr "" +"-l, --paginate berikan keluaran ke 'pr' untuk di-paginate" -#: src/diff.c:916 +#: src/diff.c:976 msgid "" "-r, --recursive recursively compare any subdirectories found" -msgstr "-r, --recursive Membandingkan subdirektori secara rekursif." +msgstr "" +"-r, --recursive membandingkan subdirektori secara rekursif" -#: src/diff.c:917 +#: src/diff.c:977 msgid " --no-dereference don't follow symbolic links" -msgstr " --no-dereference don't follow symbolic links" +msgstr " --no-dereference jangan ikuti taut simbolik" -#: src/diff.c:918 +#: src/diff.c:978 msgid "-N, --new-file treat absent files as empty" -msgstr "-N, --new-file Perlakukan tiada file sebagai kosong." +msgstr "" +"-N, --new-file perlakukan berkas yang tiada sebagai kosong" -#: src/diff.c:919 +#: src/diff.c:979 msgid " --unidirectional-new-file treat absent first files as empty" msgstr "" -"--unidirectional-new-file Anggap file tidak ada pertama sebagai kosong." +" --unidirectional-new-file anggap berkas pertama yang tidak ada sebagai " +"kosong" -#: src/diff.c:920 +#: src/diff.c:980 msgid " --ignore-file-name-case ignore case when comparing file names" -msgstr "--ignore-file-name-case Abaikan case saat membandingkan nama file." +msgstr "" +" --ignore-file-name-case abaikan besar kecil saat membandingkan nama " +"berkas" -#: src/diff.c:921 +#: src/diff.c:981 msgid " --no-ignore-file-name-case consider case when comparing file names" msgstr "" -"--no-ignore-file-name-case Pertimbangkan case saat membandingkan nama file." +" --no-ignore-file-name-case pertimbangkan besar kecil saat membandingkan " +"nama berkas" -#: src/diff.c:922 +#: src/diff.c:982 msgid "-x, --exclude=PAT exclude files that match PAT" -msgstr "-x, --exclude=PAT Tanpa file yang cocok dengan PAT." +msgstr "-x, --exclude=PAT tanpa berkas yang cocok dengan PAT" -#: src/diff.c:923 +#: src/diff.c:983 msgid "" "-X, --exclude-from=FILE exclude files that match any pattern in FILE" msgstr "" -"-X, --exclude-from=FILE Abaikan file yang cocok dengan pola dalam FILE" +"-X, --exclude-from=FILE abaikan berkas yang cocok dengan pola dalam " +"FILE" -#: src/diff.c:924 +#: src/diff.c:984 msgid "" "-S, --starting-file=FILE start with FILE when comparing directories" msgstr "" -"-S, --starting-file=FILE Mulai dengan FILE ketika membandingkan direktori." +"-S, --starting-file=FILE mulai dengan FILE ketika membandingkan " +"direktori" -#: src/diff.c:925 +#: src/diff.c:985 msgid "" " --from-file=FILE1 compare FILE1 to all operands;\n" " FILE1 can be a directory" msgstr "" -"--from-file=FILE1 Bandingkan FILE1 ke semua operand. FILE1 dapat berupa " -"direktori.\n" -" FILE1 can be a directory" +" --from-file=FILE1 bandingkan FILE1 ke semua operand;\n" +" FILE1 dapat berupa direktori" -#: src/diff.c:927 +#: src/diff.c:987 msgid "" " --to-file=FILE2 compare all operands to FILE2;\n" " FILE2 can be a directory" msgstr "" -"--to-file=FILE2 Bandingkan semua operand dengan FILE2. FILE2 dapat berupa " -"direktori.\n" -" FILE2 can be a directory" +" --to-file=FILE2 bandingkan semua operand dengan FILE2;\n" +" FILE2 dapat berupa direktori" -#: src/diff.c:930 +#: src/diff.c:990 msgid "" "-i, --ignore-case ignore case differences in file contents" -msgstr "-i, --ignore-case Abaikan beda case dalam isi file." +msgstr "" +"-i, --ignore-case abaikan perbedaan huruf besar kecil dalam " +"isi berkas" -#: src/diff.c:931 +#: src/diff.c:991 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" -msgstr "-E, --ignore-tab-expansion Abaikan perubahan akibat ekspansi tab." +msgstr "-E, --ignore-tab-expansion abaikan perubahan akibat ekspansi tab" -#: src/diff.c:932 +#: src/diff.c:992 msgid "-Z, --ignore-trailing-space ignore white space at line end" -msgstr "-Z, --ignore-all-space Abaikan seluruh white space." +msgstr "-Z, --ignore-trailling-space abaikan white space di akhir baris" -#: src/diff.c:933 +#: src/diff.c:993 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" -msgstr "-b, --ignore-space-change Abaikan perubahan sejumlah white space." +msgstr "" +"-b, --ignore-space-change abaikan perubahan banyaknya white space" -#: src/diff.c:934 +#: src/diff.c:994 msgid "-w, --ignore-all-space ignore all white space" -msgstr "-w, --ignore-all-space Abaikan seluruh white space." +msgstr "-W, --ignore-all-space abaikan semua white space" -#: src/diff.c:935 +#: src/diff.c:995 msgid "" "-B, --ignore-blank-lines ignore changes where lines are all blank" -msgstr "-B, --ignore-blank-lines Abaikan perubahan baris kosong." +msgstr "-B, --ignore-blank-lines abaikan perubahan baris kosong" -#: src/diff.c:936 +#: src/diff.c:996 msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE" msgstr "" -"-I, --ignore-matching-lines=RE Abaikan perubahan baris yang cocok dg RE." +"-I, --ignore-matching-lines=RE abaikan perubahan baris yang cocok dengan RE" -#: src/diff.c:938 +#: src/diff.c:998 msgid "-a, --text treat all files as text" -msgstr "-a, --text Perlakukan seluruh file sebagai teks." +msgstr "-a, --text perlakukan semua berkas sebagai teks" -#: src/diff.c:939 +#: src/diff.c:999 msgid " --strip-trailing-cr strip trailing carriage return on input" -msgstr "--strip-trailing-cr Hapus trailing carriage return pada input." +msgstr "" +" --strip-trailing-cr hapus carriage return di akhir pada masukan" -#: src/diff.c:941 +#: src/diff.c:1001 msgid " --binary read and write data in binary mode" -msgstr "--binary Baca dan tulis data dalam mode biner." +msgstr " --binary baca dan tulis data dalam mode biner" -#: src/diff.c:944 +#: src/diff.c:1004 msgid "" "-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs" msgstr "" -"-D, --ifdef=NAME Output file merge untuk tampilkan `#ifdef NAME' diffs." +"-D, --ifdef=NAME keluarkan berkas yang tergabung dengan diff " +"'#ifdef NAME'" -#: src/diff.c:945 +#: src/diff.c:1005 msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT" -msgstr "" -"--GTYPE-group-format=GFMT Serupa, tapi format input kelompok GTYPE dg GFMT. " +msgstr " --GTYPE-group-format=GFMT format grup masukan GTYPE dengan GFMT" -#: src/diff.c:946 +#: src/diff.c:1006 msgid " --line-format=LFMT format all input lines with LFMT" -msgstr "--line-format=LFMT Serupa, tapi format seluruh baris input dg LFMT." +msgstr " --line-format=LFMT format semua baris masukan denga LFMT" -#: src/diff.c:947 +#: src/diff.c:1007 msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT" -msgstr "" -"--LTYPE-line-format=LFMT Serupa, tapi format baris input LTYPE dg LFMT." +msgstr " --LTYPE-line-format=LFMT format baris masukan LTYPE dengan LFMT" -#: src/diff.c:948 +#: src/diff.c:1008 msgid "" " These format options provide fine-grained control over the output\n" " of diff, generalizing -D/--ifdef." msgstr "" -" These format options provide fine-grained control over the output\n" -" of diff, generalizing -D/--ifdef." +" Opsi format ini menyediakan kendali halus atas keluaran\n" +" diff, menggeneralisasi -D/--ifdef." -#: src/diff.c:950 +#: src/diff.c:1010 msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'." msgstr "" " LTYPE adalah 'old', 'new', atau 'unchanged'. GTYPE adalah LTYPE atau " "'changed'." -#: src/diff.c:951 +#: src/diff.c:1011 msgid "" " GFMT (only) may contain:\n" " %< lines from FILE1\n" @@ -980,7 +990,7 @@ msgstr "" " M L+1\n" " %(A=B?T:E) if A equals B then T else E" -#: src/diff.c:963 +#: src/diff.c:1023 msgid "" " LFMT (only) may contain:\n" " %L contents of line\n" @@ -990,9 +1000,9 @@ msgstr "" " LFMT dapat berisi:\n" " %L isi baris\n" " %l isi baris, tanpa baris baru\n" -" %[-][WIDTH][.[PREC]]{doxX}n printf-style spec untuk nomor baris input" +" %[-][WIDTH][.[PREC]]{doxX}n printf-style spec untuk nomor baris masukan" -#: src/diff.c:967 +#: src/diff.c:1027 msgid "" " Both GFMT and LFMT may contain:\n" " %% %\n" @@ -1005,222 +1015,236 @@ msgstr "" " %c'C' karakter tunggal C\n" " %c'\\OOO' karakter dengan kode oktal OOO" -#: src/diff.c:973 +#: src/diff.c:1033 msgid "-d, --minimal try hard to find a smaller set of changes" -msgstr "-d, --minimal Usahakan mencari perubahan terkecil." +msgstr "" +"-d, --minimal usaha keras untuk mencari set perubahan terkecil" -#: src/diff.c:974 +#: src/diff.c:1034 msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix" -msgstr "--horizon-lines=NUM Pertahankan NUM baris prefiks dan suffiks umum." +msgstr "" +" --horizon-lines=NUM pertahankan NUM baris prefiks dan suffiks umum" -#: src/diff.c:975 +#: src/diff.c:1035 msgid "" " --speed-large-files assume large files and many scattered small changes" msgstr "" -" --speed-large-files Asumsikan file besar dan banyak sebaran perubahan " -"kecil." +" --speed-large-files asumsikan berkas besar dan banyak perubahan kecil " +"tersebar" -#: src/diff.c:976 +#: src/diff.c:1036 msgid "" " --color[=WHEN] color output; WHEN is 'never', 'always', or " "'auto';\n" " plain --color means --color='auto'" msgstr "" +" --color[=WHEN] warnai keluaran; WHEN adalah 'never', 'always', " +"atau 'auto';\n" +" --color polos berarti --color='auto'" -#: src/diff.c:978 +#: src/diff.c:1038 msgid "" " --palette=PALETTE the colors to use when --color is active; PALETTE " "is\n" " a colon-separated list of terminfo capabilities" msgstr "" +" --palette=PALETTE warna yang dipakai ketika --color aktif; PALETTE " +"adalah\n" +" daftar dipisah titik dua dari kapabilitas terminfo" -#: src/diff.c:981 +#: src/diff.c:1041 msgid " --help display this help and exit" -msgstr " --help display this help and exit" +msgstr " --help tampilkan bantuan ini dan keluar" -#: src/diff.c:982 +#: src/diff.c:1042 msgid "-v, --version output version information and exit" -msgstr "-v, --version Tampilkan informasi versi." +msgstr "-v, --version tampilkan informasi versi dan keluar" -#: src/diff.c:984 -#, fuzzy +#: src/diff.c:1044 msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'." msgstr "" -"FILES adalah 'FILE1 FILE2' atau 'DIR1 DIR2' atau 'DIR FILE...' atau 'FILE... " -"DIR'." +"FILES adalah 'FILE1 FILE2' atau 'DIR1 DIR2' atau 'DIR FILE' atau 'FILE DIR'." -#: src/diff.c:985 +#: src/diff.c:1045 msgid "" "If --from-file or --to-file is given, there are no restrictions on FILE(s)." msgstr "" "Bila --from-file atau --to-file diberikan, tidak ada batasan untuk FILES." -#: src/diff.c:986 src/diff3.c:533 src/sdiff.c:220 +#: src/diff.c:1046 src/diff3.c:531 src/sdiff.c:219 msgid "If a FILE is '-', read standard input." -msgstr "Jika sebuah file FILE adalah '-', baca standard input." +msgstr "Jika sebuah FILE adalah '-', baca masukan standard." -#: src/diff.c:996 +#: src/diff.c:1056 #, c-format msgid "Usage: %s [OPTION]... FILES\n" -msgstr "Penggunaan: %s [OPTION]... FILES\n" +msgstr "Penggunaan: %s [OPTION]... BERKAS\n" -#: src/diff.c:997 +#: src/diff.c:1057 msgid "Compare FILES line by line." -msgstr "Bandingkan file baris per baris" +msgstr "Bandingkan FILE baris per baris." -#: src/diff.c:1034 +#: src/diff.c:1094 #, c-format msgid "conflicting %s option value '%s'" -msgstr "Nilai option %s konflik dengan '%s'" +msgstr "nilai opsi %s konflik dengan '%s'" -#: src/diff.c:1047 +#: src/diff.c:1107 #, c-format msgid "conflicting output style options" -msgstr "option gaya output konflik" +msgstr "konflik opsi gaya keluaran" -#: src/diff.c:1063 -#, fuzzy, c-format +#: src/diff.c:1123 +#, c-format msgid "invalid color '%s'" -msgstr "lebar tidak valid '%s'" +msgstr "warna tidak valid '%s'" -#: src/diff.c:1119 src/diff.c:1329 +#: src/diff.c:1197 src/diff.c:1401 #, c-format msgid "Only in %s: %s\n" msgstr "Hanya dalam %s: %s\n" -#: src/diff.c:1253 +#: src/diff.c:1325 msgid "cannot compare '-' to a directory" msgstr "tidak dapat membandingkan '-' dg direktori" -#: src/diff.c:1288 +#: src/diff.c:1360 msgid "-D option not supported with directories" msgstr "-D option tidak didukung dg direktori" -#: src/diff.c:1297 +#: src/diff.c:1369 #, c-format msgid "Common subdirectories: %s and %s\n" msgstr "Subdirektori sama: %s dan %s\n" -#: src/diff.c:1339 src/diff.c:1389 +#: src/diff.c:1411 src/diff.c:1461 #, c-format msgid "File %s is a %s while file %s is a %s\n" -msgstr "File %s adalah %s sementara file %s adalah %s\n" +msgstr "Berkas %s adalah %s sementara berkas %s adalah %s\n" -#: src/diff.c:1375 +#: src/diff.c:1447 #, c-format msgid "Symbolic links %s and %s differ\n" msgstr "Berkas %s dan %s berbeda\n" -#: src/diff.c:1462 +#: src/diff.c:1534 #, c-format msgid "Files %s and %s are identical\n" -msgstr "File %s dan %s identik\n" +msgstr "Berkas %s dan %s identik\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff3.c:43 +#: src/diff3.c:51 msgid "Randy Smith" msgstr "Randy Smith" -#: src/diff3.c:356 +#: src/diff3.c:363 #, c-format msgid "incompatible options" -msgstr "option tidak kompatibel" +msgstr "opsi tidak kompatibel" -#: src/diff3.c:396 +#: src/diff3.c:403 msgid "'-' specified for more than one input file" -msgstr "'-' dispesifikasikan lebih dari satu file input" +msgstr "'-' dispesifikasikan lebih dari satu berkas masukan" -#: src/diff3.c:447 src/diff3.c:1295 src/diff3.c:1698 src/diff3.c:1753 -#: src/sdiff.c:308 src/sdiff.c:846 src/sdiff.c:857 +#: src/diff3.c:445 src/diff3.c:1284 src/diff3.c:1683 src/diff3.c:1738 +#: src/sdiff.c:306 src/sdiff.c:843 src/sdiff.c:854 msgid "read failed" msgstr "gagal membaca" -#: src/diff3.c:480 +#: src/diff3.c:478 msgid "-A, --show-all output all changes, bracketing conflicts" -msgstr "-A, --show-all Output seluruh perubahan, konflik dalam tanda kurung." +msgstr "" +"-A, --show-all keluarkan semua perubahan, konflik dalam tanda " +"kurung" -#: src/diff3.c:482 +#: src/diff3.c:480 msgid "" "-e, --ed output ed script incorporating changes\n" " from OLDFILE to YOURFILE into MYFILE" msgstr "" -"-e --ed Output perubahan tanpa dimerge dari OLDFILE ke YOURFILE ke dl " -"MYFILE." +"-e, --ed keluarkan skrip ed yang menyertakan perubahan\n" +" dari OLDFILE ke YOURFILE ke dalam MYFILE" -#: src/diff3.c:484 +#: src/diff3.c:482 msgid "-E, --show-overlap like -e, but bracket conflicts" -msgstr "" -"-E, --show-overlap Output perubahan unmerge, konflik dl tanda kurung." +msgstr "-E, --show-overlap seperti -e, tapi apit konflik dalam kurung" -#: src/diff3.c:485 +#: src/diff3.c:483 msgid "" "-3, --easy-only like -e, but incorporate only nonoverlapping " "changes" -msgstr "-3, --easy-only Output unmerged perubahan nonoverlap." +msgstr "" +"-3, --easy-only seperti -e, tapi hanya melibatkan perubahan yang " +"tidak bertindih" -#: src/diff3.c:486 +#: src/diff3.c:484 msgid "" "-x, --overlap-only like -e, but incorporate only overlapping changes" -msgstr "-x, --overlap-only Tampilkan perubahan yang overlap." +msgstr "" +"-x, --overlap-only seperti -e, tapi hanya sertakan perubahan yang " +"bertindih" -#: src/diff3.c:487 +#: src/diff3.c:485 msgid "-X like -x, but bracket conflicts" -msgstr "-X like -x, but bracket conflicts" +msgstr "-X seperti -x, tapi apit konflik dalam kurung" -#: src/diff3.c:488 +#: src/diff3.c:486 msgid "-i append 'w' and 'q' commands to ed scripts" -msgstr "-i Tambah perintah 'w' dan 'q' ke script ed." +msgstr "-i imbuhkan perintah 'w' dan 'q' ke skrip ed" -#: src/diff3.c:490 +#: src/diff3.c:488 msgid "" "-m, --merge output actual merged file, according to\n" " -A if no other options are given" msgstr "" -"-m, --merge output actual merged file, according to\n" -" -A if no other options are given" +"-m, --merge keluarkan berkas tergabung yang sebenarnya,\n" +" sesuai dengan -A bila tidak diberikan\n" +" opsi lain" -#: src/diff3.c:493 +#: src/diff3.c:491 msgid "-a, --text treat all files as text" -msgstr "-a, --text Perlakukan seluruh file sebagai teks." +msgstr "-a, --text perlakukan semua berkas sebagai teks" -#: src/diff3.c:494 +#: src/diff3.c:492 msgid " --strip-trailing-cr strip trailing carriage return on input" -msgstr "--strip-trailing-cr Hapus trailing carriage return pada input." +msgstr "" +" --strip-trailing-cr hapus carriage return di akhir pada masukan" -#: src/diff3.c:495 +#: src/diff3.c:493 msgid "-T, --initial-tab make tabs line up by prepending a tab" -msgstr "-T, --initial-tab Buat tab beraturan dg menambahkan sebuah tab." +msgstr "" +"-T, --initial-tab buat tab lurus dengan menyisip di depan tab" -#: src/diff3.c:496 +#: src/diff3.c:494 msgid " --diff-program=PROGRAM use PROGRAM to compare files" -msgstr "--diff-program=PROGRAM Gunakan PROGRAM untuk membandingkan file." +msgstr " --diff-program=PROGRAM gunakan PROGRAM untuk membandingkan berkas" -#: src/diff3.c:497 +#: src/diff3.c:495 msgid "" "-L, --label=LABEL use LABEL instead of file name\n" " (can be repeated up to three times)" msgstr "" -"-L, --label=LABEL use LABEL instead of file name\n" -" (can be repeated up to three times)" +"-L, --label=LABEL pakai LABEL sebagai pengganti nama berkas\n" +" (dapat diulang sampai dengan tiga kali)" -#: src/diff3.c:500 +#: src/diff3.c:498 msgid " --help display this help and exit" -msgstr " --help display this help and exit" +msgstr " --help tampilkan bantuan ini dan keluar" -#: src/diff3.c:501 +#: src/diff3.c:499 msgid "-v, --version output version information and exit" -msgstr "-v, --version Tampilkan informasi versi." +msgstr "-v, --version tampilkan informasi versi dan keluar" -#: src/diff3.c:510 +#: src/diff3.c:508 #, c-format msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n" msgstr "Pemakaian: %s [OPTION]... MYFILE OLDFILE YOURFILE\n" -#: src/diff3.c:512 +#: src/diff3.c:510 msgid "Compare three files line by line." -msgstr "Bandingkan tiga file baris per baris." +msgstr "Bandingkan tiga berkas baris per baris." -#: src/diff3.c:522 +#: src/diff3.c:520 msgid "" "\n" "The default output format is a somewhat human-readable representation of\n" @@ -1234,65 +1258,65 @@ msgid "" "robust than using ed.\n" msgstr "" "\n" -"The default output format is a somewhat human-readable representation of\n" -"the changes.\n" +"Format keluaran baku adalah representasi perubahan yang kurang lebih\n" +"dapat dibaca oleh orang.\n" "\n" -"The -e, -E, -x, -X (and corresponding long) options cause an ed script\n" -"to be output instead of the default.\n" +"Opsi -e, -E, -x, -X (dan opsi panjang yang terkait) menyebabkan\n" +"dikeluarkannya sebuah skrip ed sebagai pengganti yang baku.\n" "\n" -"Finally, the -m (--merge) option causes diff3 to do the merge internally\n" -"and output the actual merged file. For unusual input, this is more\n" -"robust than using ed.\n" +"Akhirnya, opsi -m (--merge) menyebabkan diff3 melakukan penggabungan\n" +"secara internal dan mengeluarkan berkas gabungan sebenarnya. Untuk\n" +"masukan yang tidak biasa, ini lebih tahan banting daripada memakai ed.\n" -#: src/diff3.c:534 +#: src/diff3.c:532 msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble." msgstr "" "Status keluaran adalah 0 jika sukses, 1 jika konflik, 2 jika bermasalah." -#: src/diff3.c:727 +#: src/diff3.c:725 msgid "internal error: screwup in format of diff blocks" msgstr "kesalahan internal: kacau dalam format blok diff" -#: src/diff3.c:1022 +#: src/diff3.c:1015 #, c-format msgid "%s: diff failed: " msgstr "%s: diff gagal: " -#: src/diff3.c:1044 +#: src/diff3.c:1037 msgid "internal error: invalid diff type in process_diff" msgstr "kesalahan internal: tipe diff tidak valid dalam process_diff" -#: src/diff3.c:1069 +#: src/diff3.c:1060 msgid "invalid diff format; invalid change separator" msgstr "format diff tidak valid; separator perubahan tidak valid" -#: src/diff3.c:1305 +#: src/diff3.c:1294 msgid "invalid diff format; incomplete last line" msgstr "format diff tidak valid; baris akhir tidak lengkap" -#: src/diff3.c:1329 src/sdiff.c:276 src/util.c:969 +#: src/diff3.c:1318 src/sdiff.c:274 src/util.c:1069 #, c-format msgid "subsidiary program '%s' could not be invoked" msgstr "program subsider '%s' tidak dipanggil" -#: src/diff3.c:1354 +#: src/diff3.c:1343 msgid "invalid diff format; incorrect leading line chars" msgstr "format diff tidak valid; karakter leading line tidak tepat" -#: src/diff3.c:1427 +#: src/diff3.c:1416 msgid "internal error: invalid diff type passed to output" -msgstr "kesalahan internal: tipe diff tidak valid dimasukkan ke output" +msgstr "kesalahan internal: tipe diff tidak valid dimasukkan ke keluaran" -#: src/diff3.c:1700 src/diff3.c:1757 +#: src/diff3.c:1685 src/diff3.c:1742 msgid "input file shrank" -msgstr "file input mengecil" +msgstr "berkas masukan mengecil" -#: src/dir.c:156 +#: src/dir.c:154 #, c-format msgid "cannot compare file names '%s' and '%s'" -msgstr "tidak dapat membandingkan nama file '%s' dan '%s'" +msgstr "tidak dapat membandingkan nama berkas '%s' dan '%s'" -#: src/dir.c:225 +#: src/dir.c:223 #, c-format msgid "%s: recursive directory loop" msgstr "%s: rekursif loop direktori" @@ -1302,114 +1326,123 @@ msgstr "%s: rekursif loop direktori" msgid "Thomas Lord" msgstr "Thomas Lord" -#: src/sdiff.c:174 +#: src/sdiff.c:173 msgid "" "-o, --output=FILE operate interactively, sending output to FILE" -msgstr "-o, --output=FILE Operasi secara interaktif, kirim output ke FILE." +msgstr "" +"-o, --output=FILE beroperasi secara interaktif, kirim keluaran ke " +"FILE" -#: src/sdiff.c:176 +#: src/sdiff.c:175 msgid "" "-i, --ignore-case consider upper- and lower-case to be the same" -msgstr "-i, --ignore-case Abaikan huruf kapital dan huruf kecil." +msgstr "-i, --ignore-case anggap huruf besar dan kecil sama" -#: src/sdiff.c:177 +#: src/sdiff.c:176 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" -msgstr "-E, --ignore-tab-expansion Abaikan perubahan akibat ekspansi tab." +msgstr "-E, --ignore-tab-expansion abaikan perubahan akibat ekspansi tab" -#: src/sdiff.c:178 +#: src/sdiff.c:177 msgid "-Z, --ignore-trailing-space ignore white space at line end" -msgstr "-Z, --ignore-trailling-space Abaikan seluruh white space." +msgstr "-Z, --ignore-trailing-space abaikan white space di akhir baris" -#: src/sdiff.c:179 +#: src/sdiff.c:178 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" -msgstr "-b, --ignore-space-change Abaikan perubahan sejumlah white space." +msgstr "-b, --ignore-space-change abaikan perubahan banyaknya white space" -#: src/sdiff.c:180 +#: src/sdiff.c:179 msgid "-W, --ignore-all-space ignore all white space" -msgstr "-W --ignore-all-space Abaikan seluruh white space." +msgstr "-W, --ignore-all-space abaikan semua white space" -#: src/sdiff.c:181 +#: src/sdiff.c:180 msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank" -msgstr "-B, --ignore-blank-lines Abaikan perubahan baris kosong." +msgstr "-B, --ignore-blank-lines abaikan perubahan baris kosong" -#: src/sdiff.c:182 +#: src/sdiff.c:181 msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE" msgstr "" -"-I, --ignore-matching-lines=RE Abaikan perubahan baris yang cocok dg RE." +"-I, --ignore-matching-lines=RE abaikan semua perubahan baris yang cocok RE" -#: src/sdiff.c:183 +#: src/sdiff.c:182 msgid " --strip-trailing-cr strip trailing carriage return on input" -msgstr "--strip-trailing-cr Hapus trailing carriage return pada input." +msgstr "" +" --strip-trailing-cr hapus carriage return di akhir pada masukan" -#: src/sdiff.c:184 +#: src/sdiff.c:183 msgid "-a, --text treat all files as text" -msgstr "-a, --text Perlakukan seluruh file sebagai teks." +msgstr "-a, --text perlakukan semua berkas sebagai teks" -#: src/sdiff.c:186 +#: src/sdiff.c:185 msgid "" "-w, --width=NUM output at most NUM (default 130) print columns" -msgstr "-w, --width=NUM Output paling banyak NUM (baku 130) kolom cetakan." +msgstr "" +"-w, --width=NUM keluarkan paling banyak NUM (baku 130) kolom " +"cetak" -#: src/sdiff.c:187 +#: src/sdiff.c:186 msgid "" "-l, --left-column output only the left column of common lines" -msgstr "-l, --left-column Hanya tampilkan kolom kiri baris yang sama." +msgstr "" +"-l, --left-column hanya tampilkan kolom kiri baris yang sama" -#: src/sdiff.c:188 +#: src/sdiff.c:187 msgid "-s, --suppress-common-lines do not output common lines" -msgstr "-s, --suppress-common-lines Jangan tampilkan baris yang sama." +msgstr "-s, --suppress-common-lines jangan tampilkan baris yang sama" -#: src/sdiff.c:190 +#: src/sdiff.c:189 msgid "-t, --expand-tabs expand tabs to spaces in output" -msgstr "-t, --expand-tabs Ekspansi tab ke spasi dalam output." +msgstr "-t, --expand-tabs ekspansi tab ke spasi dalam keluaran" -#: src/sdiff.c:191 +#: src/sdiff.c:190 msgid "" " --tabsize=NUM tab stops at every NUM (default 8) print columns" -msgstr "--tabsize=NUM Tab stop adalah setiap NUM (default 8) kolom cetakan." +msgstr "" +" --tabsize=NUM tab stop adalah setiap NUM (baku 8) kolom cetak" -#: src/sdiff.c:193 +#: src/sdiff.c:192 msgid "-d, --minimal try hard to find a smaller set of changes" -msgstr "-d, --minimal Usahakan mencari perubahan terkecil." +msgstr "" +"-d, --minimal usaha keras untuk mencari set perubahan terkecil" -#: src/sdiff.c:194 +#: src/sdiff.c:193 msgid "" "-H, --speed-large-files assume large files, many scattered small changes" msgstr "" -"-H, --speed-large-files Asumsikan file besar dan banyak sebaran perubahan " -"kecil." +"-H, --speed-large-files asumsikan berkas besar, banyak perubahan kecil " +"tersebar" -#: src/sdiff.c:195 +#: src/sdiff.c:194 msgid " --diff-program=PROGRAM use PROGRAM to compare files" -msgstr "--diff-program=PROGRAM Gunakan PROGRAM untuk membandingkan file." +msgstr "" +" --diff-program=PROGRAM gunakan PROGRAM untuk membandingkan berkas" -#: src/sdiff.c:197 +#: src/sdiff.c:196 msgid " --help display this help and exit" -msgstr " --help display this help and exit" +msgstr " --help tampilkan bantuan ini dan keluar" -#: src/sdiff.c:198 +#: src/sdiff.c:197 msgid "-v, --version output version information and exit" -msgstr "-v, --version Tampilkan informasi versi." +msgstr "-v, --version tampilkan informasi versi dan keluar" -#: src/sdiff.c:207 +#: src/sdiff.c:206 #, c-format msgid "Usage: %s [OPTION]... FILE1 FILE2\n" msgstr "Pemakaian: %s [OPTION]... FILE1 FILE2\n" -#: src/sdiff.c:209 +#: src/sdiff.c:208 msgid "Side-by-side merge of differences between FILE1 and FILE2." -msgstr "Merge side-by-side beda file." +msgstr "Penggabungan bersisian dari perbedaan antara FILE1 dan FILE2." -#: src/sdiff.c:330 +#: src/sdiff.c:328 msgid "cannot interactively merge standard input" -msgstr "tidak dapat menggabung input standar secara interaktif" +msgstr "tidak dapat menggabung masukan standar secara interaktif" -#: src/sdiff.c:597 +#: src/sdiff.c:594 msgid "both files to be compared are directories" -msgstr "kedua file yang dibandingkan adalah direktori" +msgstr "kedua berkas yang dibandingkan adalah direktori" -#: src/sdiff.c:820 +#: src/sdiff.c:817 msgid "" "ed:\tEdit then use both versions, each decorated with a header.\n" "eb:\tEdit then use both versions.\n" @@ -1433,152 +1466,12 @@ msgstr "" "v:\tSertakan baris bersama secara verbose.\n" "q:\tKeluar.\n" -#: src/util.c:662 -#, fuzzy, c-format +#: src/util.c:755 +#, c-format msgid "unrecognized prefix: %s" -msgstr "%s: pilihan '--%s' tidak dikenal\n" +msgstr "prefiks tidak dikenal: %s" -#: src/util.c:692 +#: src/util.c:785 #, c-format msgid "unparsable value for --palette" -msgstr "" - -#~ msgid "invalid %s%s argument '%s'" -#~ msgstr "argumen %s%s tidak valid '%s'" - -#~ msgid "invalid suffix in %s%s argument '%s'" -#~ msgstr "akhiran dalam argumen %s%s tidak valid '%s'" - -#~ msgid "%s%s argument '%s' too large" -#~ msgstr "%s%s argumen '%s' terlalu besar" - -#, fuzzy -#~ msgid "%s home page: \n" -#~ msgstr "%s halaman rumah: \n" - -#, fuzzy -#~ msgid " or 'auto' (the default)" -#~ msgstr "--normal Output normal diff." - -#~ msgid "%s: option '--%s' doesn't allow an argument\n" -#~ msgstr "%s: pilihan '--%s' tidak mengijinkan sebuah argumen\n" - -#~ msgid "%s: unrecognized option '--%s'\n" -#~ msgstr "%s: pilihan '--%s' tidak dikenal\n" - -#~ msgid "%s: option '-W %s' is ambiguous\n" -#~ msgstr "%s: pilihan '-W %s' ambigu\n" - -#~ msgid "%s: option '-W %s' doesn't allow an argument\n" -#~ msgstr "%s: pilihan '-W %s' tidak mengijinkan sebuah argumen\n" - -#~ msgid "%s: option '-W %s' requires an argument\n" -#~ msgstr "%s: pilihan '-W %s' membutuhkan sebuah argumen\n" - -#~ msgid "-i SKIP1:SKIP2 --ignore-initial=SKIP1:SKIP2" -#~ msgstr "-i SKIP1:SKIP2 --ignore-initial=SKIP1:SKIP2" - -#~ msgid "-s --quiet --silent Output nothing; yield exit status only." -#~ msgstr "" -#~ "-s --quiet --silent Tidak mengeluarkan apapun; hanya memberikan status " -#~ "keluar saja." - -#~ msgid "--help Output this help." -#~ msgstr "--help Tampilkan bantuan ini." - -#~ msgid "" -#~ "-c -C NUM --context[=NUM] Output NUM (default 3) lines of copied " -#~ "context.\n" -#~ "-u -U NUM --unified[=NUM] Output NUM (default 3) lines of unified " -#~ "context.\n" -#~ " --label LABEL Use LABEL instead of file name.\n" -#~ " -p --show-c-function Show which C function each change is in.\n" -#~ " -F RE --show-function-line=RE Show the most recent line matching RE." -#~ msgstr "" -#~ "-c -C NUM --context[=NUM] Output NUM (baku 3) baris isi yang disalin.\n" -#~ "-u -U NUM --unified[=NUM] Output NUM (baku 3) baris unified context.\n" -#~ " --label LABEL Gunakan LABEL alih-alih nama file.\n" -#~ " -p --show-c-function Tampilkan setiap fungsi C yang berubah.\n" -#~ " -F RE --show-function-line=RE Tampilkan baris paling akhir yang cocok " -#~ "dengan RE." - -#~ msgid "" -#~ "-y --side-by-side Output in two columns.\n" -#~ " -W NUM --width=NUM Output at most NUM (default 130) print columns.\n" -#~ " --left-column Output only the left column of common lines.\n" -#~ " --suppress-common-lines Do not output common lines." -#~ msgstr "" -#~ "-y --side-by-side Output dalam dua kolom.\n" -#~ " -W NUM --width=NUM Output paling banyak NUM (baku 130) kolom.\n" -#~ " --left-column Output hanya kolom kiri baris bersama.\n" -#~ " --suppress-common-lines Jangan hasilkan baris bersama." - -#~ msgid "" -#~ "--speed-large-files Assume large files and many scattered small changes." -#~ msgstr "" -#~ "--speed-large-files Asumsikan file besar dan banyak perubahan kecil." - -#~ msgid "-X Output overlapping changes, bracketing them." -#~ msgstr "-X Output perubahan overlap, beri tanda kurung." - -#~ msgid "-m --merge Output merged file instead of ed script (default -A)." -#~ msgstr "-m --merge Tampilkan file yang dimerge bukan script ed (baku -A)." - -#~ msgid "-L LABEL --label=LABEL Use LABEL instead of file name." -#~ msgstr "-L LABEL --label=LABEL Gunakan LABEL bukan nama file." - -#~ msgid "%s: illegal option -- %c\n" -#~ msgstr "%s: pilihan -- %c tidak legal\n" - -#~ msgid "" -#~ "This is free software; see the source for copying conditions. There is " -#~ "NO\n" -#~ "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR " -#~ "PURPOSE.\n" -#~ msgstr "" -#~ "Ini adalah aplikasi bebas; lihat kode program untuk persayaraan " -#~ "penyalinan;\n" -#~ "TIDAK ADA GARANSI; bahkan untuk DIPERDAGANGKAN atau KECOCOKAN UNTUK " -#~ "TUJUAN TERTENTU.\n" - -#~ msgid "Report bugs to ." -#~ msgstr "Laporkan bug ke " - -#~ msgid "`-%ld' option is obsolete; use `-%c %ld'" -#~ msgstr "`-%ld' option kuno; gunakan `-%c %ld'" - -#~ msgid "`-%ld' option is obsolete; omit it" -#~ msgstr "`-%ld' option kuno, hilangkan saja" - -#~ msgid "subsidiary program `%s' not found" -#~ msgstr "program subsider `%s' tidak ditemukan" - -#~ msgid "subsidiary program `%s' failed" -#~ msgstr "program subsider `%s' gagal" - -#~ msgid "subsidiary program `%s' failed (exit status %d)" -#~ msgstr "program subsider `%s' gagal (status keluar %d)" - -#~ msgid "" -#~ "This program comes with NO WARRANTY, to the extent permitted by law.\n" -#~ "You may redistribute copies of this program\n" -#~ "under the terms of the GNU General Public License.\n" -#~ "For more information about these matters, see the files named COPYING." -#~ msgstr "" -#~ "This program comes with NO WARRANTY, to the extent permitted by law.\n" -#~ "You may redistribute copies of this program\n" -#~ "under the terms of the GNU General Public License.\n" -#~ "For more information about these matters, see the file named COPYING." - -#~ msgid "Written by Torbjorn Granlund and David MacKenzie." -#~ msgstr "Ditulis oleh Torbjorn Granlund dan David MacKenzie." - -#~ msgid "" -#~ "Written by Paul Eggert, Mike Haertel, David Hayes,\n" -#~ "Richard Stallman, and Len Tower." -#~ msgstr "" -#~ "Ditulis oleh Paul Eggert, Mike Haertel, David Hayes,\n" -#~ "Richard Stallman, dan Len Tower." - -#~ msgid "subsidiary program `%s' not executable" -#~ msgstr "program subsider `%s' tidak dapat dieksekusi" +msgstr "nilai yang tidak dapat diurai untuk --palette" diff --git a/po/it.po b/po/it.po index f9adda8..fb0720b 100644 --- a/po/it.po +++ b/po/it.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: diffutils 3.5.14\n" "Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n" -"POT-Creation-Date: 2021-08-01 18:56-0700\n" +"POT-Creation-Date: 2023-05-21 01:51-0700\n" "PO-Revision-Date: 2017-02-28 09:33+0000\n" "Last-Translator: Marco Colombo \n" "Language-Team: Italian \n" @@ -17,29 +17,29 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "X-Bugs: Report translation errors to the Language-Team address.\n" -#: lib/argmatch.c:132 +#: lib/argmatch.c:145 #, c-format msgid "invalid argument %s for %s" msgstr "argomento \"%s\" di %s non valido" -#: lib/argmatch.c:133 +#: lib/argmatch.c:146 #, c-format msgid "ambiguous argument %s for %s" msgstr "argomento \"%s\" di %s ambiguo" -#: lib/argmatch.c:152 lib/argmatch.h:223 +#: lib/argmatch.c:165 lib/argmatch.h:242 msgid "Valid arguments are:" msgstr "Argomenti validi sono:" -#: lib/c-stack.c:187 +#: lib/c-stack.c:186 msgid "program error" msgstr "errore del programma" -#: lib/c-stack.c:188 +#: lib/c-stack.c:187 msgid "stack overflow" msgstr "overflow dello stack" -#: lib/error.c:195 +#: lib/error.c:193 msgid "Unknown system error" msgstr "Errore di sistema sconosciuto" @@ -196,83 +196,83 @@ msgstr "%s: l'opzione richiede un argomento -- \"%c\"\n" #. If you don't know what to put here, please see #. #. and use glyphs suitable for your language. -#: lib/quotearg.c:355 +#: lib/quotearg.c:354 msgid "`" msgstr "\"" -#: lib/quotearg.c:356 +#: lib/quotearg.c:355 msgid "'" msgstr "\"" -#: lib/regcomp.c:135 +#: lib/regcomp.c:122 msgid "Success" msgstr "Successo" -#: lib/regcomp.c:138 +#: lib/regcomp.c:125 msgid "No match" msgstr "Nessuna corrispondenza" -#: lib/regcomp.c:141 +#: lib/regcomp.c:128 msgid "Invalid regular expression" msgstr "Espressione regolare non valida" -#: lib/regcomp.c:144 +#: lib/regcomp.c:131 msgid "Invalid collation character" msgstr "Carattere di collazione non valido" -#: lib/regcomp.c:147 +#: lib/regcomp.c:134 msgid "Invalid character class name" msgstr "Nome della classe di caratteri non valido" -#: lib/regcomp.c:150 +#: lib/regcomp.c:137 msgid "Trailing backslash" msgstr "Backslash finale" -#: lib/regcomp.c:153 +#: lib/regcomp.c:140 msgid "Invalid back reference" msgstr "Riferimento all'indietro non valido" -#: lib/regcomp.c:156 +#: lib/regcomp.c:143 msgid "Unmatched [, [^, [:, [., or [=" msgstr "[, [^, [:, [. o [= senza corrispondenza" -#: lib/regcomp.c:159 +#: lib/regcomp.c:146 msgid "Unmatched ( or \\(" msgstr "( o \\( senza corrispondenza" -#: lib/regcomp.c:162 +#: lib/regcomp.c:149 msgid "Unmatched \\{" msgstr "\\{ senza corrispondenza" -#: lib/regcomp.c:165 +#: lib/regcomp.c:152 msgid "Invalid content of \\{\\}" msgstr "Contenuto di \\{\\} non valido" -#: lib/regcomp.c:168 +#: lib/regcomp.c:155 msgid "Invalid range end" msgstr "Fine dell'intervallo non valida" -#: lib/regcomp.c:171 +#: lib/regcomp.c:158 msgid "Memory exhausted" msgstr "Memoria esaurita" -#: lib/regcomp.c:174 +#: lib/regcomp.c:161 msgid "Invalid preceding regular expression" msgstr "L'espressione regolare precedente non è valida" -#: lib/regcomp.c:177 +#: lib/regcomp.c:164 msgid "Premature end of regular expression" msgstr "Fine prematura dell'espressione regolare" -#: lib/regcomp.c:180 +#: lib/regcomp.c:167 msgid "Regular expression too big" msgstr "L'espressione regolare è troppo grande" -#: lib/regcomp.c:183 +#: lib/regcomp.c:170 msgid "Unmatched ) or \\)" msgstr ") o \\) non accoppiata" -#: lib/regcomp.c:676 +#: lib/regcomp.c:650 msgid "No previous regular expression" msgstr "Non c'è una espressione regolare precedente" @@ -473,17 +473,17 @@ msgstr "%s home page: <%s>\n" msgid "General help using GNU software: <%s>\n" msgstr "Aiuto sull'uso di software GNU: \n" -#: src/analyze.c:454 src/diff.c:1406 +#: src/analyze.c:455 src/diff.c:1478 #, c-format msgid "Files %s and %s differ\n" msgstr "I file %s e %s sono diversi\n" -#: src/analyze.c:455 +#: src/analyze.c:456 #, c-format msgid "Binary files %s and %s differ\n" msgstr "I file binari %s e %s sono diversi\n" -#: src/analyze.c:706 src/diff3.c:1470 src/util.c:1254 +#: src/analyze.c:707 src/diff3.c:1457 src/util.c:1354 msgid "No newline at end of file" msgstr "Manca newline alla fine del file" @@ -497,41 +497,42 @@ msgstr "Torbjorn Granlund" msgid "David MacKenzie" msgstr "David MacKenzie" -#: src/cmp.c:120 src/diff.c:879 src/diff3.c:467 src/sdiff.c:160 +#: src/cmp.c:124 src/diff.c:939 src/diff3.c:465 src/sdiff.c:159 #, c-format msgid "Try '%s --help' for more information." msgstr "Usare \"%s --help\" per maggiori informazioni." -#: src/cmp.c:138 +#: src/cmp.c:142 #, c-format msgid "invalid --ignore-initial value '%s'" msgstr "Valore \"%s\" non valido per --ignore-initial" -#: src/cmp.c:148 +#: src/cmp.c:152 #, c-format msgid "options -l and -s are incompatible" msgstr "le opzioni -l e -s sono incompatibili" -#: src/cmp.c:156 src/diff.c:887 src/diff3.c:474 src/sdiff.c:168 src/sdiff.c:316 -#: src/sdiff.c:323 src/sdiff.c:876 src/util.c:852 src/util.c:952 src/util.c:959 +#: src/cmp.c:160 src/diff.c:947 src/diff3.c:472 src/sdiff.c:167 src/sdiff.c:314 +#: src/sdiff.c:321 src/sdiff.c:873 src/util.c:952 src/util.c:1052 +#: src/util.c:1059 msgid "write failed" msgstr "scrittura non riuscita" -#: src/cmp.c:158 src/diff.c:889 src/diff.c:1471 src/diff3.c:476 src/sdiff.c:170 +#: src/cmp.c:162 src/diff.c:949 src/diff.c:1543 src/diff3.c:474 src/sdiff.c:169 msgid "standard output" msgstr "standard output" -#: src/cmp.c:162 +#: src/cmp.c:166 msgid "-b, --print-bytes print differing bytes" msgstr "-b, --print-bytes Stampa i byte differenti" -#: src/cmp.c:163 +#: src/cmp.c:167 msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs" msgstr "" "-i, --ignore-initial=SKIP Salta i primi SKIP byte di entrambi gli input" # Lo strano allineamento è corretto -#: src/cmp.c:164 +#: src/cmp.c:168 msgid "" "-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n" " first SKIP2 bytes of FILE2" @@ -541,7 +542,7 @@ msgstr "" " SKIP2 byte di FILE2" # Lo strano allineamento della seconda riga è corretto. -#: src/cmp.c:166 +#: src/cmp.c:170 msgid "" "-l, --verbose output byte numbers and differing byte values" msgstr "" @@ -549,33 +550,33 @@ msgstr "" " differenti" # Solitamente viene usato NUM quando si vuole specificare un numero. -#: src/cmp.c:167 +#: src/cmp.c:171 msgid "-n, --bytes=LIMIT compare at most LIMIT bytes" msgstr "-n, --bytes=NUM Confronta al massimo NUM byte" -#: src/cmp.c:168 +#: src/cmp.c:172 msgid "-s, --quiet, --silent suppress all normal output" msgstr "-s, --quiet, --silent Sopprime tutto l'output normale" -#: src/cmp.c:169 +#: src/cmp.c:173 msgid " --help display this help and exit" msgstr " --help Mostra questo aiuto ed esce" -#: src/cmp.c:170 +#: src/cmp.c:174 msgid "-v, --version output version information and exit" msgstr "" "-v, --version Stampa le informazioni sulla versione ed esce" -#: src/cmp.c:179 +#: src/cmp.c:183 #, c-format msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n" msgstr "Uso: %s [OPZIONE]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n" -#: src/cmp.c:181 +#: src/cmp.c:185 msgid "Compare two files byte by byte." msgstr "Confronta due file byte per byte." -#: src/cmp.c:183 +#: src/cmp.c:187 msgid "" "The optional SKIP1 and SKIP2 specify the number of bytes to skip\n" "at the beginning of each file (zero by default)." @@ -583,14 +584,14 @@ msgstr "" "I valori opzionali SKIP1 e SKIP2 indicano il numero di byte da saltare\n" "all'inizio di ogni file (zero se non indicato)." -#: src/cmp.c:186 src/diff.c:999 src/diff3.c:514 src/sdiff.c:211 +#: src/cmp.c:190 src/diff.c:1059 src/diff3.c:512 src/sdiff.c:210 msgid "" "Mandatory arguments to long options are mandatory for short options too.\n" msgstr "" "Gli argomenti obbligatori per le opzioni lunghe lo sono anche per quelle " "corte.\n" -#: src/cmp.c:192 +#: src/cmp.c:196 msgid "" "SKIP values may be followed by the following multiplicative suffixes:\n" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" @@ -601,174 +602,174 @@ msgstr "" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" "GB 1,000,000,000, G 1,073,741,824, e così via per T, P, E, Z, Y." -#: src/cmp.c:195 +#: src/cmp.c:199 msgid "If a FILE is '-' or missing, read standard input." msgstr "Se un FILE è \"-\" o è mancante, legge lo standard input." -#: src/cmp.c:196 src/diff.c:987 src/sdiff.c:221 +#: src/cmp.c:200 src/diff.c:1047 src/sdiff.c:220 msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble." msgstr "" "Il codice d'uscita è 0 se gli input sono identici, 1 se sono differenti, 2 " "quando si riscontrano dei problemi." -#: src/cmp.c:243 +#: src/cmp.c:247 #, c-format msgid "invalid --bytes value '%s'" msgstr "valore \"%s\" non valido per --bytes" -#: src/cmp.c:269 src/diff.c:797 src/diff3.c:361 src/sdiff.c:567 +#: src/cmp.c:273 src/diff.c:857 src/diff3.c:368 src/sdiff.c:564 #, c-format msgid "missing operand after '%s'" msgstr "operando mancante dopo \"%s\"" -#: src/cmp.c:281 src/diff.c:799 src/diff3.c:363 src/sdiff.c:569 +#: src/cmp.c:285 src/diff.c:859 src/diff3.c:370 src/sdiff.c:566 #, c-format msgid "extra operand '%s'" msgstr "extra operando \"%s\"" -#: src/cmp.c:507 +#: src/cmp.c:521 #, c-format msgid "%s %s differ: byte %s, line %s\n" msgstr "%s %s differenza: byte %s, riga %s\n" -#: src/cmp.c:523 +#: src/cmp.c:537 #, c-format msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n" msgstr "%s %s differenza: byte %s, riga %s è %3o %s %3o %s\n" -#: src/cmp.c:580 +#: src/cmp.c:594 #, fuzzy, c-format msgid "cmp: EOF on %s which is empty\n" msgstr "cmp: EOF in %s\n" -#: src/cmp.c:594 +#: src/cmp.c:608 #, fuzzy, c-format msgid "cmp: EOF on %s after byte %s, line %s\n" msgstr "%s %s differenza: byte %s, riga %s\n" -#: src/cmp.c:595 +#: src/cmp.c:609 #, fuzzy, c-format msgid "cmp: EOF on %s after byte %s, in line %s\n" msgstr "%s %s differenza: byte %s, riga %s\n" -#: src/cmp.c:601 +#: src/cmp.c:615 #, fuzzy, c-format msgid "cmp: EOF on %s after byte %s\n" msgstr "cmp: EOF in %s\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:51 +#: src/diff.c:50 msgid "Paul Eggert" msgstr "Paul Eggert" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:52 +#: src/diff.c:51 msgid "Mike Haertel" msgstr "Mike Haertel" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:53 +#: src/diff.c:52 msgid "David Hayes" msgstr "David Hayes" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:54 +#: src/diff.c:53 msgid "Richard Stallman" msgstr "Richard Stallman" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:55 +#: src/diff.c:54 msgid "Len Tower" msgstr "Len Tower" -#: src/diff.c:355 +#: src/diff.c:365 #, c-format msgid "invalid context length '%s'" msgstr "lunghezza di contesto \"%s\" non valida" -#: src/diff.c:438 +#: src/diff.c:487 #, c-format msgid "pagination not supported on this host" msgstr "paginazione non supportata su questo host" -#: src/diff.c:453 src/diff3.c:341 +#: src/diff.c:502 src/diff3.c:348 #, c-format msgid "too many file label options" msgstr "troppe opzioni di etichetta" -#: src/diff.c:530 +#: src/diff.c:579 #, c-format msgid "invalid width '%s'" msgstr "larghezza \"%s\" non valida" -#: src/diff.c:534 +#: src/diff.c:583 msgid "conflicting width options" msgstr "opzioni di larghezza in conflitto" -#: src/diff.c:559 +#: src/diff.c:608 #, c-format msgid "invalid horizon length '%s'" msgstr "lunghezza di orizzonte \"%s\" non valida" -#: src/diff.c:615 +#: src/diff.c:664 #, c-format msgid "invalid tabsize '%s'" msgstr "lunghezza di tabulazione \"%s\" non valida" -#: src/diff.c:619 +#: src/diff.c:668 msgid "conflicting tabsize options" msgstr "opzioni di lunghezza di tabulazione in conflitto" -#: src/diff.c:774 +#: src/diff.c:834 msgid "--from-file and --to-file both specified" msgstr "--from-file e --to-file specificati entrambi" -#: src/diff.c:893 +#: src/diff.c:953 msgid " --normal output a normal diff (the default)" msgstr " --normal Mostra una diff normale (predefinito)" -#: src/diff.c:894 +#: src/diff.c:954 msgid "-q, --brief report only when files differ" msgstr "-q, --brief Segnala solo se i file sono diversi" -#: src/diff.c:895 +#: src/diff.c:955 msgid "-s, --report-identical-files report when two files are the same" msgstr "-s, --report-identical-files Segnala quando due file sono identici" -#: src/diff.c:896 +#: src/diff.c:956 msgid "" "-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context" msgstr "" "-c, -C NUM, --context[=NUM] Mostra NUM righe di contesto copiato\n" " (predefinito 3)" -#: src/diff.c:897 +#: src/diff.c:957 msgid "" "-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context" msgstr "" "-u, -U NUM, --unified[=NUM] Mostra NUM righe di contesto unificato\n" " (predefinito 3)" -#: src/diff.c:898 +#: src/diff.c:958 msgid "-e, --ed output an ed script" msgstr "-e, --ed Mostra uno script per ed" -#: src/diff.c:899 +#: src/diff.c:959 msgid "-n, --rcs output an RCS format diff" msgstr "-n, --rcs Mostra una diff in formato RCS" -#: src/diff.c:900 +#: src/diff.c:960 msgid "-y, --side-by-side output in two columns" msgstr "-y, --side-by-side Output in due colonne" -#: src/diff.c:901 +#: src/diff.c:961 msgid "" "-W, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-W, --width=NUM Mostra al massimo NUM colonne (predefinito 130)" # Lo strano allineamento della seconda riga è corretto. -#: src/diff.c:902 +#: src/diff.c:962 msgid "" " --left-column output only the left column of common lines" msgstr "" @@ -776,24 +777,24 @@ msgstr "" "righe\n" " in comune" -#: src/diff.c:903 +#: src/diff.c:963 msgid " --suppress-common-lines do not output common lines" msgstr " --suppress-common-lines Non mostra le righe in comune" -#: src/diff.c:905 +#: src/diff.c:965 msgid "-p, --show-c-function show which C function each change is in" msgstr "" "-p, --show-c-function Mostra in quale funzione C si trova ogni\n" " differenza" -#: src/diff.c:906 +#: src/diff.c:966 msgid "-F, --show-function-line=RE show the most recent line matching RE" msgstr "" "-F, --show-function-line=ER Mostra la riga più recente che corrisponde\n" " all'espressione regolare ER" # FIXME -#: src/diff.c:907 +#: src/diff.c:967 msgid "" " --label LABEL use LABEL instead of file name and timestamp\n" " (can be repeated)" @@ -802,90 +803,90 @@ msgstr "" "file\n" " (può essere ripetuta)" -#: src/diff.c:910 +#: src/diff.c:970 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "" "-t, --expand-tabs Espande le tabulazioni in spazi nell'output" -#: src/diff.c:911 +#: src/diff.c:971 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T, --initial-tab Allinea le tabulazioni usando una tabulazione" -#: src/diff.c:912 +#: src/diff.c:972 msgid "" " --tabsize=NUM tab stops every NUM (default 8) print columns" msgstr "" " --tabsize=NUM Stop di tabulazione ogni NUM colonne\n" " (predefinito 8)" -#: src/diff.c:913 +#: src/diff.c:973 msgid "" " --suppress-blank-empty suppress space or tab before empty output lines" msgstr "" " --suppress-blank-empty Rimuove spazi e tabulazioni prima di righe\n" " di output vuote" -#: src/diff.c:914 +#: src/diff.c:974 msgid "-l, --paginate pass output through 'pr' to paginate it" msgstr "" "-l, --paginate Passa l'output attraverso \"pr\" per " "impaginarlo" -#: src/diff.c:916 +#: src/diff.c:976 msgid "" "-r, --recursive recursively compare any subdirectories found" msgstr "" "-r, --recursive Confronta ricorsivamente ogni sottodirectory\n" " incontrata" -#: src/diff.c:917 +#: src/diff.c:977 msgid " --no-dereference don't follow symbolic links" msgstr " --no-dereference Non segue i collegamenti simbolici" -#: src/diff.c:918 +#: src/diff.c:978 msgid "-N, --new-file treat absent files as empty" msgstr "-N, --new-file Considera i file mancanti come vuoti" -#: src/diff.c:919 +#: src/diff.c:979 msgid " --unidirectional-new-file treat absent first files as empty" msgstr "" " --unidirectional-new-file Considera i file mancanti in prima posizione\n" " come vuoti" -#: src/diff.c:920 +#: src/diff.c:980 msgid " --ignore-file-name-case ignore case when comparing file names" msgstr "" " --ignore-file-name-case Ignora differenze in maiuscole e minuscole\n" " confrontando nomi di file" -#: src/diff.c:921 +#: src/diff.c:981 msgid " --no-ignore-file-name-case consider case when comparing file names" msgstr "" " --no-ignore-file-name-case Considera differenze in maiuscole e " "minuscole\n" " confrontando nomi di file" -#: src/diff.c:922 +#: src/diff.c:982 msgid "-x, --exclude=PAT exclude files that match PAT" msgstr "" "-x, --exclude=MODELLO Esclude i file che corrispondono al MODELLO" -#: src/diff.c:923 +#: src/diff.c:983 msgid "" "-X, --exclude-from=FILE exclude files that match any pattern in FILE" msgstr "" "-X, --exclude-from=FILE Esclude i file che corrispondono a qualsiasi\n" " modello in FILE" -#: src/diff.c:924 +#: src/diff.c:984 msgid "" "-S, --starting-file=FILE start with FILE when comparing directories" msgstr "" "-S, --starting-file=FILE Comincia da FILE quando si confrontano " "directory" -#: src/diff.c:925 +#: src/diff.c:985 msgid "" " --from-file=FILE1 compare FILE1 to all operands;\n" " FILE1 can be a directory" @@ -893,7 +894,7 @@ msgstr "" " --from-file=FILE1 Confronta FILE1 con tutti gli operandi;\n" " FILE1 può essere una directory" -#: src/diff.c:927 +#: src/diff.c:987 msgid "" " --to-file=FILE2 compare all operands to FILE2;\n" " FILE2 can be a directory" @@ -901,7 +902,7 @@ msgstr "" " --to-file=FILE2 Confronta tutti gli operandi con FILE2;\n" " FILE2 può essere una directory" -#: src/diff.c:930 +#: src/diff.c:990 msgid "" "-i, --ignore-case ignore case differences in file contents" msgstr "" @@ -909,47 +910,47 @@ msgstr "" "nel\n" " contenuto del file" -#: src/diff.c:931 +#: src/diff.c:991 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E, --ignore-tab-expansion Ignora differenze causate dall'espansione\n" " delle tabulazioni" -#: src/diff.c:932 +#: src/diff.c:992 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "-Z, --ignore-trailing-space Ignora gli spazi a fine riga" -#: src/diff.c:933 +#: src/diff.c:993 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "-b, --ignore-space-change Ignora differenze nel numero di spazi" -#: src/diff.c:934 +#: src/diff.c:994 msgid "-w, --ignore-all-space ignore all white space" msgstr "-w, --ignore-all-space Ignora tutti gli spazi" -#: src/diff.c:935 +#: src/diff.c:995 msgid "" "-B, --ignore-blank-lines ignore changes where lines are all blank" msgstr "-B, --ignore-blank-lines Ignora differenze in righe vuote" # Lo strano allineamento della seconda riga è corretto -#: src/diff.c:936 +#: src/diff.c:996 msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE" msgstr "" "-I, --ignore-matching-lines=ER Ignora differenze che corrispondono\n" " all'espressione regolare ER" -#: src/diff.c:938 +#: src/diff.c:998 msgid "-a, --text treat all files as text" msgstr "-a, --text Considera tutti i file come testo" -#: src/diff.c:939 +#: src/diff.c:999 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr Elimina i ritorni a capo a fine riga in input" -#: src/diff.c:941 +#: src/diff.c:1001 msgid " --binary read and write data in binary mode" msgstr " --binary Legge e scrive in modalità binaria" @@ -964,30 +965,30 @@ msgstr " --binary Legge e scrive in modalità binaria" # #endif /* NOME */ # Testo comune. # -#: src/diff.c:944 +#: src/diff.c:1004 msgid "" "-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs" msgstr "" "-D, --ifdef=NOME Mostra le differenze in un unico file usando\n" " \"#ifdef NOME\"" -#: src/diff.c:945 +#: src/diff.c:1005 msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT" msgstr "" " --GTYPE-group-format=GFMT Simile, ma formatta i gruppi di input GTYPE\n" " con GFMT" -#: src/diff.c:946 +#: src/diff.c:1006 msgid " --line-format=LFMT format all input lines with LFMT" msgstr "" " --line-format=LFMT Formatta tutte le righe di input con LFMT" -#: src/diff.c:947 +#: src/diff.c:1007 msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT" msgstr "" " --LTYPE-line-format=LFMT Formatta le righe di input LTYPE con LFMT" -#: src/diff.c:948 +#: src/diff.c:1008 msgid "" " These format options provide fine-grained control over the output\n" " of diff, generalizing -D/--ifdef." @@ -995,12 +996,12 @@ msgstr "" " Queste opzioni di formato forniscono un controllo preciso dell'output di\n" " diff, generalizzando -D/--ifdef." -#: src/diff.c:950 +#: src/diff.c:1010 msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'." msgstr "" " LTYPE è \"old\", \"new\", o \"unchanged\". GTYPE è LTYPE o \"changed\"." -#: src/diff.c:951 +#: src/diff.c:1011 msgid "" " GFMT (only) may contain:\n" " %< lines from FILE1\n" @@ -1030,7 +1031,7 @@ msgstr "" " M L+1\n" " %(A=B?T:E) se A è uguale a B allora T, altrimenti E" -#: src/diff.c:963 +#: src/diff.c:1023 msgid "" " LFMT (only) may contain:\n" " %L contents of line\n" @@ -1043,7 +1044,7 @@ msgstr "" " %[-][LARGHEZZA][.[PREC]]{doxX}n formato in stile printf del numero\n" " di riga di input" -#: src/diff.c:967 +#: src/diff.c:1027 msgid "" " Both GFMT and LFMT may contain:\n" " %% %\n" @@ -1057,22 +1058,22 @@ msgstr "" " %c'\\OOO' il carattere con codice ottale OOO\n" " C il carattere C (altri caratteri rappresentano se stessi)" -#: src/diff.c:973 +#: src/diff.c:1033 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "-d, --minimal Minimizza il numero di differenze" -#: src/diff.c:974 +#: src/diff.c:1034 msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix" msgstr "" " --horizon-lines=NUM Mantiene NUM righe di prefisso e suffisso comune" -#: src/diff.c:975 +#: src/diff.c:1035 msgid "" " --speed-large-files assume large files and many scattered small changes" msgstr "" " --speed-large-files Assume file grandi e tante piccole differenze" -#: src/diff.c:976 +#: src/diff.c:1036 #, fuzzy msgid "" " --color[=WHEN] color output; WHEN is 'never', 'always', or " @@ -1082,7 +1083,7 @@ msgstr "" " --color[=QUANDO] Colora l'output; QUANDO può essere \"never\", " "\"always\"" -#: src/diff.c:978 +#: src/diff.c:1038 #, fuzzy msgid "" " --palette=PALETTE the colors to use when --color is active; PALETTE " @@ -1093,103 +1094,103 @@ msgstr "" "capabilities\n" " separati da \":\"" -#: src/diff.c:981 +#: src/diff.c:1041 msgid " --help display this help and exit" msgstr " --help Mostra questo aiuto ed esce" -#: src/diff.c:982 +#: src/diff.c:1042 msgid "-v, --version output version information and exit" msgstr "" "-v, --version Stampa le informazioni sulla versione ed esce" -#: src/diff.c:984 +#: src/diff.c:1044 msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'." msgstr "" "FILES sono \"FILE1 FILE2\" o \"DIR1 DIR2\" o \"DIR FILE\" o \"FILE DIR\"." -#: src/diff.c:985 +#: src/diff.c:1045 msgid "" "If --from-file or --to-file is given, there are no restrictions on FILE(s)." msgstr "" "Se --from-file o --to-file sono usati, non ci sono restrizioni per FILES." -#: src/diff.c:986 src/diff3.c:533 src/sdiff.c:220 +#: src/diff.c:1046 src/diff3.c:531 src/sdiff.c:219 msgid "If a FILE is '-', read standard input." msgstr "Se un FILE è \"-\", legge lo standard input." -#: src/diff.c:996 +#: src/diff.c:1056 #, c-format msgid "Usage: %s [OPTION]... FILES\n" msgstr "Uso: %s [OPZIONE]... FILES\n" -#: src/diff.c:997 +#: src/diff.c:1057 msgid "Compare FILES line by line." msgstr "Confronta i file riga per riga." -#: src/diff.c:1034 +#: src/diff.c:1094 #, c-format msgid "conflicting %s option value '%s'" msgstr "conflitto nell'opzione %s: valore \"%s\"" -#: src/diff.c:1047 +#: src/diff.c:1107 #, c-format msgid "conflicting output style options" msgstr "opzioni di stile di output in conflitto" -#: src/diff.c:1063 +#: src/diff.c:1123 #, c-format msgid "invalid color '%s'" msgstr "colore \"%s\" non valido" -#: src/diff.c:1119 src/diff.c:1329 +#: src/diff.c:1197 src/diff.c:1401 #, c-format msgid "Only in %s: %s\n" msgstr "Solo in %s: %s\n" -#: src/diff.c:1253 +#: src/diff.c:1325 msgid "cannot compare '-' to a directory" msgstr "impossibile confrontare \"-\" con una directory" -#: src/diff.c:1288 +#: src/diff.c:1360 msgid "-D option not supported with directories" msgstr "opzione -D non supportata con directory" -#: src/diff.c:1297 +#: src/diff.c:1369 #, c-format msgid "Common subdirectories: %s and %s\n" msgstr "Sottodirectory in comune: %s e %s\n" -#: src/diff.c:1339 src/diff.c:1389 +#: src/diff.c:1411 src/diff.c:1461 #, c-format msgid "File %s is a %s while file %s is a %s\n" msgstr "File %s è un %s mentre file %s è un %s\n" -#: src/diff.c:1375 +#: src/diff.c:1447 #, c-format msgid "Symbolic links %s and %s differ\n" msgstr "I collegamenti simbolici %s e %s sono diversi\n" -#: src/diff.c:1462 +#: src/diff.c:1534 #, c-format msgid "Files %s and %s are identical\n" msgstr "I file %s e %s sono identici\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff3.c:43 +#: src/diff3.c:51 msgid "Randy Smith" msgstr "Randy Smith" -#: src/diff3.c:356 +#: src/diff3.c:363 #, c-format msgid "incompatible options" msgstr "opzioni incompatibili" -#: src/diff3.c:396 +#: src/diff3.c:403 msgid "'-' specified for more than one input file" msgstr "\"-\" specificato per più di un file di input" -#: src/diff3.c:447 src/diff3.c:1295 src/diff3.c:1698 src/diff3.c:1753 -#: src/sdiff.c:308 src/sdiff.c:846 src/sdiff.c:857 +#: src/diff3.c:445 src/diff3.c:1284 src/diff3.c:1683 src/diff3.c:1738 +#: src/sdiff.c:306 src/sdiff.c:843 src/sdiff.c:854 msgid "read failed" msgstr "lettura fallita" @@ -1208,7 +1209,7 @@ msgstr "lettura fallita" # . # # Lo strano allineamento della seconda riga è corretto. -#: src/diff3.c:480 +#: src/diff3.c:478 msgid "-A, --show-all output all changes, bracketing conflicts" msgstr "" "-A, --show-all Mostra tutte le differenze, tenendo separati\n" @@ -1231,7 +1232,7 @@ msgstr "" # 'differenze'. # # Lo strano allineamento della seconda riga è corretto. -#: src/diff3.c:482 +#: src/diff3.c:480 msgid "" "-e, --ed output ed script incorporating changes\n" " from OLDFILE to YOURFILE into MYFILE" @@ -1251,13 +1252,13 @@ msgstr "" # <<<<<<< file1 # . # -#: src/diff3.c:484 +#: src/diff3.c:482 msgid "-E, --show-overlap like -e, but bracket conflicts" msgstr "-E, --show-overlap Come -e, tenendo separati i conflitti" # Questa opzione, per i 3 file considerati, non produce niente. # -#: src/diff3.c:485 +#: src/diff3.c:483 msgid "" "-3, --easy-only like -e, but incorporate only nonoverlapping " "changes" @@ -1272,24 +1273,24 @@ msgstr "" # Questo è il file 3. # . # -#: src/diff3.c:486 +#: src/diff3.c:484 msgid "" "-x, --overlap-only like -e, but incorporate only overlapping changes" msgstr "" "-x, --overlap-only Come -e, ma mostra solo i cambiamenti che si\n" " sovrappongono" -#: src/diff3.c:487 +#: src/diff3.c:485 msgid "-X like -x, but bracket conflicts" msgstr "-X Come -x, ma tiene separati i conflitti" -#: src/diff3.c:488 +#: src/diff3.c:486 msgid "-i append 'w' and 'q' commands to ed scripts" msgstr "" "-i Aggiunge i comandi \"w\" e \"q\" agli script per " "ed" -#: src/diff3.c:490 +#: src/diff3.c:488 msgid "" "-m, --merge output actual merged file, according to\n" " -A if no other options are given" @@ -1297,25 +1298,25 @@ msgstr "" "-m, --merge Mostra il file combinato risultante, secondo -A\n" " se non è indicata nessun'altra opzione" -#: src/diff3.c:493 +#: src/diff3.c:491 msgid "-a, --text treat all files as text" msgstr "-a, --text Considera tutti i file come testo" -#: src/diff3.c:494 +#: src/diff3.c:492 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr Elimina i ritorni a capo a fine riga in input" -#: src/diff3.c:495 +#: src/diff3.c:493 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T, --initial-tab Allinea le tabulazioni usando una tabulazione" -#: src/diff3.c:496 +#: src/diff3.c:494 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr " --diff-program=PROGRAMMA Usa PROGRAMMA per confrontare i file" -#: src/diff3.c:497 +#: src/diff3.c:495 msgid "" "-L, --label=LABEL use LABEL instead of file name\n" " (can be repeated up to three times)" @@ -1323,25 +1324,25 @@ msgstr "" "-L, --label=ETICHETTA Usa ETICHETTA invece del nome del file\n" " (può essere repetuta fino a tre volte)" -#: src/diff3.c:500 +#: src/diff3.c:498 msgid " --help display this help and exit" msgstr " --help Mostra questo aiuto ed esce" -#: src/diff3.c:501 +#: src/diff3.c:499 msgid "-v, --version output version information and exit" msgstr "" "-v, --version Stampa le informazioni sulla versione ed esce" -#: src/diff3.c:510 +#: src/diff3.c:508 #, c-format msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n" msgstr "Uso: %s [OPZIONE]... MIOFILE VECCHIOFILE TUOFILE\n" -#: src/diff3.c:512 +#: src/diff3.c:510 msgid "Compare three files line by line." msgstr "Confronta tre file riga per riga." -#: src/diff3.c:522 +#: src/diff3.c:520 msgid "" "\n" "The default output format is a somewhat human-readable representation of\n" @@ -1369,57 +1370,57 @@ msgstr "" "robusto\n" "di ed.\n" -#: src/diff3.c:534 +#: src/diff3.c:532 msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble." msgstr "" "Il codice d'uscita è 0 in caso di successo, 1 in caso di conflitto, 2 se " "sono\n" "stati riscontrati dei problemi." -#: src/diff3.c:727 +#: src/diff3.c:725 msgid "internal error: screwup in format of diff blocks" msgstr "errore interno: problema nel formato dei blocchi di diff" -#: src/diff3.c:1022 +#: src/diff3.c:1015 #, c-format msgid "%s: diff failed: " msgstr "%s: diff fallita: " -#: src/diff3.c:1044 +#: src/diff3.c:1037 msgid "internal error: invalid diff type in process_diff" msgstr "errore interno: tipo di diff non valido in process_diff" -#: src/diff3.c:1069 +#: src/diff3.c:1060 msgid "invalid diff format; invalid change separator" msgstr "formato di diff non valido; separatore di modifica non valido" -#: src/diff3.c:1305 +#: src/diff3.c:1294 msgid "invalid diff format; incomplete last line" msgstr "formato di diff non valido; ultima riga incompleta" -#: src/diff3.c:1329 src/sdiff.c:276 src/util.c:969 +#: src/diff3.c:1318 src/sdiff.c:274 src/util.c:1069 #, c-format msgid "subsidiary program '%s' could not be invoked" msgstr "programma accessorio \"%s\" non può essere chiamato" -#: src/diff3.c:1354 +#: src/diff3.c:1343 msgid "invalid diff format; incorrect leading line chars" msgstr "formato di diff non valido; caratteri incorretti a inizio riga" -#: src/diff3.c:1427 +#: src/diff3.c:1416 msgid "internal error: invalid diff type passed to output" msgstr "errore interno: il tipo di diff passato all'output non è valido" -#: src/diff3.c:1700 src/diff3.c:1757 +#: src/diff3.c:1685 src/diff3.c:1742 msgid "input file shrank" msgstr "il file di input è rimpicciolito" -#: src/dir.c:156 +#: src/dir.c:154 #, c-format msgid "cannot compare file names '%s' and '%s'" msgstr "impossibile confrontare i nomi dei file \"%s\" e \"%s\"" -#: src/dir.c:225 +#: src/dir.c:223 #, c-format msgid "%s: recursive directory loop" msgstr "%s: ciclo ricorsivo tra le directory" @@ -1430,7 +1431,7 @@ msgid "Thomas Lord" msgstr "Thomas Lord" # Lo strano allineamento della seconda riga è corretto. -#: src/sdiff.c:174 +#: src/sdiff.c:173 msgid "" "-o, --output=FILE operate interactively, sending output to FILE" msgstr "" @@ -1438,122 +1439,122 @@ msgstr "" " in FILE" # Questa traduzione corrisponde a quella usata sopra per diff. -#: src/sdiff.c:176 +#: src/sdiff.c:175 msgid "" "-i, --ignore-case consider upper- and lower-case to be the same" msgstr "-i, --ignore-case Ignora differenze in maiuscole e minuscole" -#: src/sdiff.c:177 +#: src/sdiff.c:176 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E, --ignore-tab-expansion Ignora differenze causate dall'espansione\n" " delle tabulazioni" -#: src/sdiff.c:178 +#: src/sdiff.c:177 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "-Z, --ignore-trailing-space Ignora gli spazi a fine riga" -#: src/sdiff.c:179 +#: src/sdiff.c:178 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "-b, --ignore-space-change Ignora differenze nel numero di spazi" -#: src/sdiff.c:180 +#: src/sdiff.c:179 msgid "-W, --ignore-all-space ignore all white space" msgstr "-W, --ignore-all-space Ignora tutti gli spazi" -#: src/sdiff.c:181 +#: src/sdiff.c:180 msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank" msgstr "-B, --ignore-blank-lines Ignora differenze in righe vuote" # Lo strano allineamento della seconda riga è corretto -#: src/sdiff.c:182 +#: src/sdiff.c:181 msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE" msgstr "" "-I, --ignore-matching-lines=ER Ignora differenze che corrispondono\n" " all'espressione regolare ER" -#: src/sdiff.c:183 +#: src/sdiff.c:182 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr Elimina i ritorni a capo a fine riga in input" -#: src/sdiff.c:184 +#: src/sdiff.c:183 msgid "-a, --text treat all files as text" msgstr "-a, --text Considera tutti i file come testo" -#: src/sdiff.c:186 +#: src/sdiff.c:185 msgid "" "-w, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-w, --width=NUM Mostra al massimo NUM colonne (predefinito 130)" # Lo strano allineamento della seconda riga è corretto. -#: src/sdiff.c:187 +#: src/sdiff.c:186 msgid "" "-l, --left-column output only the left column of common lines" msgstr "" "-l, --left-column Mostra solo la colonna di sinistra per le righe\n" " in comune" -#: src/sdiff.c:188 +#: src/sdiff.c:187 msgid "-s, --suppress-common-lines do not output common lines" msgstr "-s, --suppress-common-lines Non mostra le righe in comune" -#: src/sdiff.c:190 +#: src/sdiff.c:189 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "" "-t, --expand-tabs Espande le tabulazioni in spazi nell'output" -#: src/sdiff.c:191 +#: src/sdiff.c:190 msgid "" " --tabsize=NUM tab stops at every NUM (default 8) print columns" msgstr "" "--tabsize=NUM Stop di tabulazione ogni NUM colonne\n" " (predefinito 8)" -#: src/sdiff.c:193 +#: src/sdiff.c:192 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "-d, --minimal Minimizza il numero di differenze" -#: src/sdiff.c:194 +#: src/sdiff.c:193 msgid "" "-H, --speed-large-files assume large files, many scattered small changes" msgstr "" "-H, --speed-large-files Assume file grandi e tante piccole differenze" -#: src/sdiff.c:195 +#: src/sdiff.c:194 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr "--diff-program=PROGRAMMA Usa PROGRAMMA per confrontare i file" -#: src/sdiff.c:197 +#: src/sdiff.c:196 msgid " --help display this help and exit" msgstr " --help Mostra questo aiuto ed esce" -#: src/sdiff.c:198 +#: src/sdiff.c:197 msgid "-v, --version output version information and exit" msgstr "" "-v, --version Stampa le informazioni sulla versione ed esce" -#: src/sdiff.c:207 +#: src/sdiff.c:206 #, c-format msgid "Usage: %s [OPTION]... FILE1 FILE2\n" msgstr "Uso: %s [OPZIONE]... FILE1 FILE2\n" -#: src/sdiff.c:209 +#: src/sdiff.c:208 msgid "Side-by-side merge of differences between FILE1 and FILE2." msgstr "Mostra le differenze tra FILE1 e FILE2 fianco a fianco." # Tobia Conforto: impossibile combinare in modo interattivo da standard input -#: src/sdiff.c:330 +#: src/sdiff.c:328 msgid "cannot interactively merge standard input" msgstr "impossibile combinare in modo interattivo con lo standard input" -#: src/sdiff.c:597 +#: src/sdiff.c:594 msgid "both files to be compared are directories" msgstr "entrambi i file da confrontare sono directory" -#: src/sdiff.c:820 +#: src/sdiff.c:817 msgid "" "ed:\tEdit then use both versions, each decorated with a header.\n" "eb:\tEdit then use both versions.\n" @@ -1577,12 +1578,12 @@ msgstr "" "v:\tInclude prolissamente le righe in comune.\n" "q:\tEsce.\n" -#: src/util.c:662 +#: src/util.c:755 #, c-format msgid "unrecognized prefix: %s" msgstr "prefisso non riconosciuto: %s" -#: src/util.c:692 +#: src/util.c:785 #, c-format msgid "unparsable value for --palette" msgstr "valore di --palette non comprensibile" diff --git a/po/ja.po b/po/ja.po index 2b39b4e..911cd84 100644 --- a/po/ja.po +++ b/po/ja.po @@ -12,7 +12,7 @@ msgid "" msgstr "" "Project-Id-Version: GNU diffutils 3.2\n" "Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n" -"POT-Creation-Date: 2021-08-01 18:56-0700\n" +"POT-Creation-Date: 2023-05-21 01:51-0700\n" "PO-Revision-Date: 2011-09-08 14:13+0900\n" "Last-Translator: Yasuaki Taniguchi \n" "Language-Team: Japanese \n" @@ -23,30 +23,30 @@ msgstr "" "X-Bugs: Report translation errors to the Language-Team address.\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: lib/argmatch.c:132 +#: lib/argmatch.c:145 #, fuzzy, c-format msgid "invalid argument %s for %s" msgstr "引数 `%3$s' に対して %1$s%2$s が無効です" -#: lib/argmatch.c:133 +#: lib/argmatch.c:146 #, c-format msgid "ambiguous argument %s for %s" msgstr "" -#: lib/argmatch.c:152 lib/argmatch.h:223 +#: lib/argmatch.c:165 lib/argmatch.h:242 #, fuzzy msgid "Valid arguments are:" msgstr "引数 `%3$s' に対して %1$s%2$s が無効です" -#: lib/c-stack.c:187 +#: lib/c-stack.c:186 msgid "program error" msgstr "プログラムエラー" -#: lib/c-stack.c:188 +#: lib/c-stack.c:187 msgid "stack overflow" msgstr "スタックオーバーフロー" -#: lib/error.c:195 +#: lib/error.c:193 msgid "Unknown system error" msgstr "不明なシステムエラー" @@ -206,84 +206,84 @@ msgstr "%s: オプションには引数が必要です -- '%c'\n" #. If you don't know what to put here, please see #. #. and use glyphs suitable for your language. -#: lib/quotearg.c:355 +#: lib/quotearg.c:354 msgid "`" msgstr "`" -#: lib/quotearg.c:356 +#: lib/quotearg.c:355 msgid "'" msgstr "'" -#: lib/regcomp.c:135 +#: lib/regcomp.c:122 msgid "Success" msgstr "成功です" -#: lib/regcomp.c:138 +#: lib/regcomp.c:125 msgid "No match" msgstr "一致しません" -#: lib/regcomp.c:141 +#: lib/regcomp.c:128 msgid "Invalid regular expression" msgstr "無効な正規表現です" -#: lib/regcomp.c:144 +#: lib/regcomp.c:131 msgid "Invalid collation character" msgstr "無効な照合文字です" -#: lib/regcomp.c:147 +#: lib/regcomp.c:134 msgid "Invalid character class name" msgstr "無効な文字クラス名です" -#: lib/regcomp.c:150 +#: lib/regcomp.c:137 msgid "Trailing backslash" msgstr "終端のバックスラッシュ" -#: lib/regcomp.c:153 +#: lib/regcomp.c:140 msgid "Invalid back reference" msgstr "無効な前方参照です" -#: lib/regcomp.c:156 +#: lib/regcomp.c:143 #, fuzzy msgid "Unmatched [, [^, [:, [., or [=" msgstr "[ または [^ が不一致です" -#: lib/regcomp.c:159 +#: lib/regcomp.c:146 msgid "Unmatched ( or \\(" msgstr "( または \\( が不一致です" -#: lib/regcomp.c:162 +#: lib/regcomp.c:149 msgid "Unmatched \\{" msgstr "\\{ が不一致です" -#: lib/regcomp.c:165 +#: lib/regcomp.c:152 msgid "Invalid content of \\{\\}" msgstr "\\{\\} の中身が無効です" -#: lib/regcomp.c:168 +#: lib/regcomp.c:155 msgid "Invalid range end" msgstr "無効な範囲終了です" -#: lib/regcomp.c:171 +#: lib/regcomp.c:158 msgid "Memory exhausted" msgstr "メモリを使い果たしました" -#: lib/regcomp.c:174 +#: lib/regcomp.c:161 msgid "Invalid preceding regular expression" msgstr "無効な前方正規表現です" -#: lib/regcomp.c:177 +#: lib/regcomp.c:164 msgid "Premature end of regular expression" msgstr "正規表現が途中で終了しました" -#: lib/regcomp.c:180 +#: lib/regcomp.c:167 msgid "Regular expression too big" msgstr "正規表現が大きすぎます" -#: lib/regcomp.c:183 +#: lib/regcomp.c:170 msgid "Unmatched ) or \\)" msgstr ") または \\) が不一致です" -#: lib/regcomp.c:676 +#: lib/regcomp.c:650 msgid "No previous regular expression" msgstr "以前に正規表現がありません" @@ -486,17 +486,17 @@ msgid "General help using GNU software: <%s>\n" msgstr "" "GNU ソフトウェアを使用する際の一般的なヘルプ: \n" -#: src/analyze.c:454 src/diff.c:1406 +#: src/analyze.c:455 src/diff.c:1478 #, c-format msgid "Files %s and %s differ\n" msgstr "ファイル %s と %s は異なります\n" -#: src/analyze.c:455 +#: src/analyze.c:456 #, c-format msgid "Binary files %s and %s differ\n" msgstr "バイナリーファイル %s と%s は異なります\n" -#: src/analyze.c:706 src/diff3.c:1470 src/util.c:1254 +#: src/analyze.c:707 src/diff3.c:1457 src/util.c:1354 msgid "No newline at end of file" msgstr "ファイル末尾に改行がありません" @@ -510,40 +510,41 @@ msgstr "Torbjorn Granlund" msgid "David MacKenzie" msgstr "David MacKenzie" -#: src/cmp.c:120 src/diff.c:879 src/diff3.c:467 src/sdiff.c:160 +#: src/cmp.c:124 src/diff.c:939 src/diff3.c:465 src/sdiff.c:159 #, fuzzy, c-format msgid "Try '%s --help' for more information." msgstr "詳しくは`%s --help'を実行してください。" -#: src/cmp.c:138 +#: src/cmp.c:142 #, fuzzy, c-format msgid "invalid --ignore-initial value '%s'" msgstr "無効な --ignore-initial の値 `%s' です" -#: src/cmp.c:148 +#: src/cmp.c:152 #, c-format msgid "options -l and -s are incompatible" msgstr "オプション -l と -s は同時に指定できません" -#: src/cmp.c:156 src/diff.c:887 src/diff3.c:474 src/sdiff.c:168 src/sdiff.c:316 -#: src/sdiff.c:323 src/sdiff.c:876 src/util.c:852 src/util.c:952 src/util.c:959 +#: src/cmp.c:160 src/diff.c:947 src/diff3.c:472 src/sdiff.c:167 src/sdiff.c:314 +#: src/sdiff.c:321 src/sdiff.c:873 src/util.c:952 src/util.c:1052 +#: src/util.c:1059 msgid "write failed" msgstr "書き込みに失敗しました" -#: src/cmp.c:158 src/diff.c:889 src/diff.c:1471 src/diff3.c:476 src/sdiff.c:170 +#: src/cmp.c:162 src/diff.c:949 src/diff.c:1543 src/diff3.c:474 src/sdiff.c:169 msgid "standard output" msgstr "標準出力" -#: src/cmp.c:162 +#: src/cmp.c:166 msgid "-b, --print-bytes print differing bytes" msgstr "-b, --print-bytes 異なるバイトを表示する" -#: src/cmp.c:163 +#: src/cmp.c:167 msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs" msgstr "" "-i, --ignore-initial=SKIP 両方の入力の先頭 SKIP バイトをスキップする" -#: src/cmp.c:164 +#: src/cmp.c:168 msgid "" "-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n" " first SKIP2 bytes of FILE2" @@ -551,37 +552,37 @@ msgstr "" "-i, --ignore-initial=SKIP1:SKIP2 FILE1 の先頭 SKIP1 バイトと FILE2 の先頭\n" " SKIP2 バイトをスキップする" -#: src/cmp.c:166 +#: src/cmp.c:170 msgid "" "-l, --verbose output byte numbers and differing byte values" msgstr "-l, --verbose バイト数および異なるバイトの値を出力する" -#: src/cmp.c:167 +#: src/cmp.c:171 msgid "-n, --bytes=LIMIT compare at most LIMIT bytes" msgstr "-n, --bytes=LIMIT 最大 LIMIT バイトを比較する" -#: src/cmp.c:168 +#: src/cmp.c:172 msgid "-s, --quiet, --silent suppress all normal output" msgstr "-s, --quiet, --silent 通常の表示をすべて抑止する" -#: src/cmp.c:169 +#: src/cmp.c:173 msgid " --help display this help and exit" msgstr " --help このメッセージを表示して終了する" -#: src/cmp.c:170 +#: src/cmp.c:174 msgid "-v, --version output version information and exit" msgstr "-v, --version バージョン情報を表示して終了する" -#: src/cmp.c:179 +#: src/cmp.c:183 #, c-format msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n" msgstr "使用法: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n" -#: src/cmp.c:181 +#: src/cmp.c:185 msgid "Compare two files byte by byte." msgstr "2つのファイルをバイトごとに比較します。" -#: src/cmp.c:183 +#: src/cmp.c:187 msgid "" "The optional SKIP1 and SKIP2 specify the number of bytes to skip\n" "at the beginning of each file (zero by default)." @@ -589,14 +590,14 @@ msgstr "" "オプションの SKIP1 と SKIP2 はそれぞれのファイルの先頭からスキップする\n" "バイト数を指定します(デフォルトは 0)。" -#: src/cmp.c:186 src/diff.c:999 src/diff3.c:514 src/sdiff.c:211 +#: src/cmp.c:190 src/diff.c:1059 src/diff3.c:512 src/sdiff.c:210 msgid "" "Mandatory arguments to long options are mandatory for short options too.\n" msgstr "" "長い形式のオプションで必須の引数は、それに対応する短い形式のオプションでも同" "様に必須です。\n" -#: src/cmp.c:192 +#: src/cmp.c:196 msgid "" "SKIP values may be followed by the following multiplicative suffixes:\n" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" @@ -606,192 +607,192 @@ msgstr "" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" "GB 1,000,000,000, G 1,073,741,824。また、 T, P, E, Z, Y も同様です。" -#: src/cmp.c:195 +#: src/cmp.c:199 #, fuzzy msgid "If a FILE is '-' or missing, read standard input." msgstr "FILE が `-' または指定しない場合、標準入力から読み込みます。" -#: src/cmp.c:196 src/diff.c:987 src/sdiff.c:221 +#: src/cmp.c:200 src/diff.c:1047 src/sdiff.c:220 msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble." msgstr "" "終了コードは、入力ファイルが同じ場合は 0、入力ファイルが異なる場合は 1、\n" "問題が発生したときは 2 になります。" -#: src/cmp.c:243 +#: src/cmp.c:247 #, fuzzy, c-format msgid "invalid --bytes value '%s'" msgstr "無効な --bytes の値 `%s' です。" -#: src/cmp.c:269 src/diff.c:797 src/diff3.c:361 src/sdiff.c:567 +#: src/cmp.c:273 src/diff.c:857 src/diff3.c:368 src/sdiff.c:564 #, fuzzy, c-format msgid "missing operand after '%s'" msgstr "`%s' の後に被演算子がありません" -#: src/cmp.c:281 src/diff.c:799 src/diff3.c:363 src/sdiff.c:569 +#: src/cmp.c:285 src/diff.c:859 src/diff3.c:370 src/sdiff.c:566 #, fuzzy, c-format msgid "extra operand '%s'" msgstr "余分な被演算子 `%s' です。" -#: src/cmp.c:507 +#: src/cmp.c:521 #, c-format msgid "%s %s differ: byte %s, line %s\n" msgstr "%s %s 異なります: バイト %s、行 %s\n" -#: src/cmp.c:523 +#: src/cmp.c:537 #, c-format msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n" msgstr "%s %s 異なります: バイト %s、行 %s %3o %s %3o %s\n" -#: src/cmp.c:580 +#: src/cmp.c:594 #, fuzzy, c-format msgid "cmp: EOF on %s which is empty\n" msgstr "cmp: %s でファイル終端 (EOF) に達しました\n" -#: src/cmp.c:594 +#: src/cmp.c:608 #, fuzzy, c-format msgid "cmp: EOF on %s after byte %s, line %s\n" msgstr "%s %s 異なります: バイト %s、行 %s\n" -#: src/cmp.c:595 +#: src/cmp.c:609 #, fuzzy, c-format msgid "cmp: EOF on %s after byte %s, in line %s\n" msgstr "%s %s 異なります: バイト %s、行 %s\n" -#: src/cmp.c:601 +#: src/cmp.c:615 #, fuzzy, c-format msgid "cmp: EOF on %s after byte %s\n" msgstr "cmp: %s でファイル終端 (EOF) に達しました\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:51 +#: src/diff.c:50 msgid "Paul Eggert" msgstr "Paul Eggert" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:52 +#: src/diff.c:51 msgid "Mike Haertel" msgstr "Mike Haertel" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:53 +#: src/diff.c:52 msgid "David Hayes" msgstr "David Hayes" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:54 +#: src/diff.c:53 msgid "Richard Stallman" msgstr "Richard Stallman" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:55 +#: src/diff.c:54 msgid "Len Tower" msgstr "Len Tower" -#: src/diff.c:355 +#: src/diff.c:365 #, fuzzy, c-format msgid "invalid context length '%s'" msgstr "無効な前後の行数 `%s' です" -#: src/diff.c:438 +#: src/diff.c:487 #, c-format msgid "pagination not supported on this host" msgstr "このホストではページ割付けをサポートしません" -#: src/diff.c:453 src/diff3.c:341 +#: src/diff.c:502 src/diff3.c:348 #, c-format msgid "too many file label options" msgstr "ファイル・ラベル・オプションが多すぎます" -#: src/diff.c:530 +#: src/diff.c:579 #, fuzzy, c-format msgid "invalid width '%s'" msgstr "無効な幅 `%s' です" -#: src/diff.c:534 +#: src/diff.c:583 msgid "conflicting width options" msgstr "幅のオプションが競合しています" -#: src/diff.c:559 +#: src/diff.c:608 #, fuzzy, c-format msgid "invalid horizon length '%s'" msgstr "無効な横幅 `%s' です" -#: src/diff.c:615 +#: src/diff.c:664 #, fuzzy, c-format msgid "invalid tabsize '%s'" msgstr "無効なタブ幅 `%s' です" -#: src/diff.c:619 +#: src/diff.c:668 msgid "conflicting tabsize options" msgstr "タブ幅のオプションが競合しています" -#: src/diff.c:774 +#: src/diff.c:834 msgid "--from-file and --to-file both specified" msgstr "--from-file および --to-file の両方が指定されています" -#: src/diff.c:893 +#: src/diff.c:953 msgid " --normal output a normal diff (the default)" msgstr " --normal 通常の diff を出力する (デフォルト)" -#: src/diff.c:894 +#: src/diff.c:954 msgid "-q, --brief report only when files differ" msgstr "-q, --brief ファイルが異なるかどうかのみ表示する" -#: src/diff.c:895 +#: src/diff.c:955 msgid "-s, --report-identical-files report when two files are the same" msgstr "" "-s, --report-identical-files 両方のファイルが同一であるかどうかのみ表示する" -#: src/diff.c:896 +#: src/diff.c:956 msgid "" "-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context" msgstr "" "-c, -C NUM, --context[=NUM] コンテキスト diff 形式で前後 NUM (デフォルト: " "3) 行を表示する" -#: src/diff.c:897 +#: src/diff.c:957 msgid "" "-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context" msgstr "" "-u, -U NUM, --unified[=NUM] ユニファイド diff 形式で前後 NUM (デフォルト: " "3) 行を表示する" -#: src/diff.c:898 +#: src/diff.c:958 msgid "-e, --ed output an ed script" msgstr "-e, --ed ed スクリプトを出力する" -#: src/diff.c:899 +#: src/diff.c:959 msgid "-n, --rcs output an RCS format diff" msgstr "-n, --rcs RCS 形式の diff を出力する" -#: src/diff.c:900 +#: src/diff.c:960 msgid "-y, --side-by-side output in two columns" msgstr "-y, --side-by-side 出力を2列にする" -#: src/diff.c:901 +#: src/diff.c:961 msgid "" "-W, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-W, --width=NUM 表示する列を最大 NUM (デフォルト: 130) 列にする" -#: src/diff.c:902 +#: src/diff.c:962 msgid "" " --left-column output only the left column of common lines" msgstr " --left-column 共通行は左側の列のみ表示する" -#: src/diff.c:903 +#: src/diff.c:963 msgid " --suppress-common-lines do not output common lines" msgstr " --suppress-common-lines 共通行の出力を抑止する" -#: src/diff.c:905 +#: src/diff.c:965 msgid "-p, --show-c-function show which C function each change is in" msgstr "-p, --show-c-function 変更がある C 関数を表示する" -#: src/diff.c:906 +#: src/diff.c:966 msgid "-F, --show-function-line=RE show the most recent line matching RE" msgstr "-F, --show-function-line=RE RE に一致する最も近い行を表示する" -#: src/diff.c:907 +#: src/diff.c:967 #, fuzzy msgid "" " --label LABEL use LABEL instead of file name and timestamp\n" @@ -800,80 +801,80 @@ msgstr "" " --label LABEL ファイル名の代わりに LABEL を使用する\n" " (繰り返し指定できます)" -#: src/diff.c:910 +#: src/diff.c:970 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "-t, --expand-tabs 出力時にタブをスペースに展開する" -#: src/diff.c:911 +#: src/diff.c:971 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T, --initial-tab タブで始まる行は、前にタブを置いてそろえる" -#: src/diff.c:912 +#: src/diff.c:972 msgid "" " --tabsize=NUM tab stops every NUM (default 8) print columns" msgstr "" " --tabsize=NUM タブ幅を NUM (デフォルト: 8) 列に設定する" -#: src/diff.c:913 +#: src/diff.c:973 msgid "" " --suppress-blank-empty suppress space or tab before empty output lines" msgstr "" " --suppress-blank-empty 空の出力行の前後ではスペースまたはタブを抑止す" "る" -#: src/diff.c:914 +#: src/diff.c:974 #, fuzzy msgid "-l, --paginate pass output through 'pr' to paginate it" msgstr "" "-l, --paginate ページ割り付けを行うために `pr' を通して出力す" "る" -#: src/diff.c:916 +#: src/diff.c:976 msgid "" "-r, --recursive recursively compare any subdirectories found" msgstr "-r, --recursive サブディレクトリーを再帰的に比較する" -#: src/diff.c:917 +#: src/diff.c:977 msgid " --no-dereference don't follow symbolic links" msgstr "" -#: src/diff.c:918 +#: src/diff.c:978 msgid "-N, --new-file treat absent files as empty" msgstr "" "-N, --new-file 存在しないファイルを空ファイルとして扱う" -#: src/diff.c:919 +#: src/diff.c:979 msgid " --unidirectional-new-file treat absent first files as empty" msgstr "" " --unidirectional-new-file 存在しない最初のファイルを空ファイルとして扱" "う" -#: src/diff.c:920 +#: src/diff.c:980 msgid " --ignore-file-name-case ignore case when comparing file names" msgstr " --ignore-file-name-case ファイル名の大文字と小文字を区別しない" -#: src/diff.c:921 +#: src/diff.c:981 msgid " --no-ignore-file-name-case consider case when comparing file names" msgstr " --no-ignore-file-name-case ファイル名の大文字と小文字を区別する" -#: src/diff.c:922 +#: src/diff.c:982 msgid "-x, --exclude=PAT exclude files that match PAT" msgstr "-x, --exclude=PAT PAT に一致するファイルを除外する" -#: src/diff.c:923 +#: src/diff.c:983 msgid "" "-X, --exclude-from=FILE exclude files that match any pattern in FILE" msgstr "" "-X, --exclude-from=FILE FILE 内のパターンに一致するファイルを除外する" -#: src/diff.c:924 +#: src/diff.c:984 msgid "" "-S, --starting-file=FILE start with FILE when comparing directories" msgstr "" "-S, --starting-file=FILE ディレクトリーを比較する時に FILE から始める" -#: src/diff.c:925 +#: src/diff.c:985 msgid "" " --from-file=FILE1 compare FILE1 to all operands;\n" " FILE1 can be a directory" @@ -881,7 +882,7 @@ msgstr "" " --from-file=FILE1 すべての被演算子と FILE1 を比較する\n" " FILE1 はディレクトリーでもよい" -#: src/diff.c:927 +#: src/diff.c:987 msgid "" " --to-file=FILE2 compare all operands to FILE2;\n" " FILE2 can be a directory" @@ -889,57 +890,57 @@ msgstr "" " --to-file=FILE2 すべての被演算子を FILE2 を比較する\n" " FILE2 はディレクトリーでもよい" -#: src/diff.c:930 +#: src/diff.c:990 msgid "" "-i, --ignore-case ignore case differences in file contents" msgstr "" "-i, --ignore-case ファイル内容の比較時に大文字と小文字を区別し" "ない" -#: src/diff.c:931 +#: src/diff.c:991 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "-E, --ignore-tab-expansion タブ展開によって発生する違いを無視する" -#: src/diff.c:932 +#: src/diff.c:992 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "-Z, --ignore-trailing-space 行末にあるスペースを無視する" -#: src/diff.c:933 +#: src/diff.c:993 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "-b, --ignore-space-change スペース数により生じる違いを無視する" -#: src/diff.c:934 +#: src/diff.c:994 msgid "-w, --ignore-all-space ignore all white space" msgstr "-w, --ignore-all-space すべてのスペースを無視する" -#: src/diff.c:935 +#: src/diff.c:995 #, fuzzy msgid "" "-B, --ignore-blank-lines ignore changes where lines are all blank" msgstr "" "-B, --ignore-blank-lines 空白類文字だけの行により生じる違いを無視する" -#: src/diff.c:936 +#: src/diff.c:996 #, fuzzy msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE" msgstr "" "-I, --ignore-matching-lines=RE RE と一致するすべての行の違いを無視する" -#: src/diff.c:938 +#: src/diff.c:998 msgid "-a, --text treat all files as text" msgstr "-a, --text すべてのファイルをテキストとして扱う" -#: src/diff.c:939 +#: src/diff.c:999 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr 入力から CR (キャリッジリターン) を除去する" -#: src/diff.c:941 +#: src/diff.c:1001 msgid " --binary read and write data in binary mode" msgstr " --binary バイナリーモードでデータを読み書きする" -#: src/diff.c:944 +#: src/diff.c:1004 #, fuzzy msgid "" "-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs" @@ -947,19 +948,19 @@ msgstr "" "-D, --ifdef=NAME パッチ適用時に `#ifdef NAME' で併合されるよう" "に差分を出力する" -#: src/diff.c:945 +#: src/diff.c:1005 msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT" msgstr " --GTYPE-group-format=GFMT GTYPE の入力グループを GFMT で整形する" -#: src/diff.c:946 +#: src/diff.c:1006 msgid " --line-format=LFMT format all input lines with LFMT" msgstr " --line-format=LFMT すべての入力行を LFMT で整形する" -#: src/diff.c:947 +#: src/diff.c:1007 msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT" msgstr " --LTYPE-line-format=LFMT LTYPE 入力行を LFMT で整形する" -#: src/diff.c:948 +#: src/diff.c:1008 msgid "" " These format options provide fine-grained control over the output\n" " of diff, generalizing -D/--ifdef." @@ -968,14 +969,14 @@ msgstr "" "に\n" " 見えるように制御するために提供されます。" -#: src/diff.c:950 +#: src/diff.c:1010 #, fuzzy msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'." msgstr "" " LTYPE は `old'、`new'、または`unchanged'です。GTYPE は LTYPE または " "`changed' です。" -#: src/diff.c:951 +#: src/diff.c:1011 msgid "" " GFMT (only) may contain:\n" " %< lines from FILE1\n" @@ -1003,7 +1004,7 @@ msgstr "" " M L+1\n" " %(A=B?T:E) A と B が等しい場合は T、等しくない場合は E" -#: src/diff.c:963 +#: src/diff.c:1023 msgid "" " LFMT (only) may contain:\n" " %L contents of line\n" @@ -1015,7 +1016,7 @@ msgstr "" " %l 行末にあるすべての種類の改行文字を除いた行の内容\n" " %[-][WIDTH][.[PREC]]{doxX}n printf 書式の入力行" -#: src/diff.c:967 +#: src/diff.c:1027 msgid "" " Both GFMT and LFMT may contain:\n" " %% %\n" @@ -1029,144 +1030,144 @@ msgstr "" " %c'\\OOO' 八進数コード OOO\n" " C 文字 C (他の文字も同様に表す)" -#: src/diff.c:973 +#: src/diff.c:1033 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "-d, --minimal 差分の大きさが最小となるように違いを検出する" -#: src/diff.c:974 +#: src/diff.c:1034 msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix" msgstr " --horizon-lines=NUM 差分の前後にある共通部分を NUM 行保持する" -#: src/diff.c:975 +#: src/diff.c:1035 msgid "" " --speed-large-files assume large files and many scattered small changes" msgstr "" " --speed-large-files 巨大なファイルに小さな差分が分散していると仮定する" -#: src/diff.c:976 +#: src/diff.c:1036 msgid "" " --color[=WHEN] color output; WHEN is 'never', 'always', or " "'auto';\n" " plain --color means --color='auto'" msgstr "" -#: src/diff.c:978 +#: src/diff.c:1038 msgid "" " --palette=PALETTE the colors to use when --color is active; PALETTE " "is\n" " a colon-separated list of terminfo capabilities" msgstr "" -#: src/diff.c:981 +#: src/diff.c:1041 msgid " --help display this help and exit" msgstr " --help このヘルプを表示して終了する" -#: src/diff.c:982 +#: src/diff.c:1042 msgid "-v, --version output version information and exit" msgstr "-v, --version バージョン情報を表示して終了する" -#: src/diff.c:984 +#: src/diff.c:1044 #, fuzzy msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'." msgstr "" "FILES は `FILE1 FILE2'、`DIR1 DIR2' 、`DIR FILE...'、または `FILE... DIR' で" "す。" -#: src/diff.c:985 +#: src/diff.c:1045 msgid "" "If --from-file or --to-file is given, there are no restrictions on FILE(s)." msgstr "" "--from-file または --to-file が与えられた場合、FILE に制限はありません。" -#: src/diff.c:986 src/diff3.c:533 src/sdiff.c:220 +#: src/diff.c:1046 src/diff3.c:531 src/sdiff.c:219 #, fuzzy msgid "If a FILE is '-', read standard input." msgstr "FILE が `-' の場合、標準入力から読み込みます。" -#: src/diff.c:996 +#: src/diff.c:1056 #, c-format msgid "Usage: %s [OPTION]... FILES\n" msgstr "使用法: %s [OPTION]... FILES\n" -#: src/diff.c:997 +#: src/diff.c:1057 msgid "Compare FILES line by line." msgstr "FILES を行ごとに比較します。" -#: src/diff.c:1034 +#: src/diff.c:1094 #, fuzzy, c-format msgid "conflicting %s option value '%s'" msgstr "%s オプションの値 `%s' が競合しています" -#: src/diff.c:1047 +#: src/diff.c:1107 #, c-format msgid "conflicting output style options" msgstr "出力形式オプションが競合しています" -#: src/diff.c:1063 +#: src/diff.c:1123 #, fuzzy, c-format msgid "invalid color '%s'" msgstr "無効な前後の行数 `%s' です" -#: src/diff.c:1119 src/diff.c:1329 +#: src/diff.c:1197 src/diff.c:1401 #, c-format msgid "Only in %s: %s\n" msgstr "%s のみに存在: %s\n" -#: src/diff.c:1253 +#: src/diff.c:1325 #, fuzzy msgid "cannot compare '-' to a directory" msgstr "`-' とディレクトリーは比較できません" -#: src/diff.c:1288 +#: src/diff.c:1360 msgid "-D option not supported with directories" msgstr "-D オプションはディレクトリーにはサポートされません" -#: src/diff.c:1297 +#: src/diff.c:1369 #, c-format msgid "Common subdirectories: %s and %s\n" msgstr "共通のサブディレクトリー: %s と %s\n" -#: src/diff.c:1339 src/diff.c:1389 +#: src/diff.c:1411 src/diff.c:1461 #, c-format msgid "File %s is a %s while file %s is a %s\n" msgstr "ファイル %s は %s です。一方、ファイル %s は %s です\n" -#: src/diff.c:1375 +#: src/diff.c:1447 #, fuzzy, c-format msgid "Symbolic links %s and %s differ\n" msgstr "ファイル %s と %s は異なります\n" -#: src/diff.c:1462 +#: src/diff.c:1534 #, c-format msgid "Files %s and %s are identical\n" msgstr "ファイル %s と %s は同一です\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff3.c:43 +#: src/diff3.c:51 msgid "Randy Smith" msgstr "Randy Smith" -#: src/diff3.c:356 +#: src/diff3.c:363 #, c-format msgid "incompatible options" msgstr "同時に指定できないオプションです" -#: src/diff3.c:396 +#: src/diff3.c:403 #, fuzzy msgid "'-' specified for more than one input file" msgstr "入力ファイルとして `-' が複数回指定されています" -#: src/diff3.c:447 src/diff3.c:1295 src/diff3.c:1698 src/diff3.c:1753 -#: src/sdiff.c:308 src/sdiff.c:846 src/sdiff.c:857 +#: src/diff3.c:445 src/diff3.c:1284 src/diff3.c:1683 src/diff3.c:1738 +#: src/sdiff.c:306 src/sdiff.c:843 src/sdiff.c:854 msgid "read failed" msgstr "読み込みに失敗しました" -#: src/diff3.c:480 +#: src/diff3.c:478 msgid "-A, --show-all output all changes, bracketing conflicts" msgstr "" "-A, --show-all 競合をすべて括弧でくくり、変更をすべて出力する" -#: src/diff3.c:482 +#: src/diff3.c:480 msgid "" "-e, --ed output ed script incorporating changes\n" " from OLDFILE to YOURFILE into MYFILE" @@ -1175,11 +1176,11 @@ msgstr "" " スクリプトとして出力する\n" " " -#: src/diff3.c:484 +#: src/diff3.c:482 msgid "-E, --show-overlap like -e, but bracket conflicts" msgstr "-E, --show-overlap -e と同様だが、競合を括弧でくくる" -#: src/diff3.c:485 +#: src/diff3.c:483 msgid "" "-3, --easy-only like -e, but incorporate only nonoverlapping " "changes" @@ -1187,23 +1188,23 @@ msgstr "" "-3, --easy-only -e と同様だが、3ファイル競合で無い部分のみ出力す" "る" -#: src/diff3.c:486 +#: src/diff3.c:484 msgid "" "-x, --overlap-only like -e, but incorporate only overlapping changes" msgstr "" "-x, --overlap-only -e と同様だが、3ファイル競合の部分のみ出力する" -#: src/diff3.c:487 +#: src/diff3.c:485 msgid "-X like -x, but bracket conflicts" msgstr "-X -x と同様だが、競合を括弧でくくる" -#: src/diff3.c:488 +#: src/diff3.c:486 #, fuzzy msgid "-i append 'w' and 'q' commands to ed scripts" msgstr "" "-i ed スクリプトの後に `w' と `q' コマンドを追加する" -#: src/diff3.c:490 +#: src/diff3.c:488 msgid "" "-m, --merge output actual merged file, according to\n" " -A if no other options are given" @@ -1211,23 +1212,23 @@ msgstr "" "-m, --merge 他のオプションを指定していない場合、-A 従って\n" " 実際に併合されたファイルを出力する" -#: src/diff3.c:493 +#: src/diff3.c:491 msgid "-a, --text treat all files as text" msgstr "-a, --text すべてのファイルをテキストとして扱う" -#: src/diff3.c:494 +#: src/diff3.c:492 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr " --strip-trailing-cr 入力から末尾のキャリッジリターンを除去する" -#: src/diff3.c:495 +#: src/diff3.c:493 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "-T, --initial-tab タブで始まる行は、前にタブを置いてそろえる" -#: src/diff3.c:496 +#: src/diff3.c:494 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr " --diff-program=PROGRAM ファイル比較に PROGRAM を使用する" -#: src/diff3.c:497 +#: src/diff3.c:495 msgid "" "-L, --label=LABEL use LABEL instead of file name\n" " (can be repeated up to three times)" @@ -1235,24 +1236,24 @@ msgstr "" "-L, --label=LABEL ファイル名の代わりに LABEL を使用する\n" " (3回まで繰り返し指定できる)" -#: src/diff3.c:500 +#: src/diff3.c:498 msgid " --help display this help and exit" msgstr " --help このヘルプを表示して終了する" -#: src/diff3.c:501 +#: src/diff3.c:499 msgid "-v, --version output version information and exit" msgstr "-v, --version バージョン情報を表示して終了する" -#: src/diff3.c:510 +#: src/diff3.c:508 #, c-format msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n" msgstr "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n" -#: src/diff3.c:512 +#: src/diff3.c:510 msgid "Compare three files line by line." msgstr "3つのファイルを行ごとに比較します。" -#: src/diff3.c:522 +#: src/diff3.c:520 msgid "" "\n" "The default output format is a somewhat human-readable representation of\n" @@ -1275,56 +1276,56 @@ msgstr "" "併合されたファイルを出力します。通常の入力としては、これは ed を使用す\n" "るより強固です。\n" -#: src/diff3.c:534 +#: src/diff3.c:532 msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble." msgstr "" "終了コードは、成功した場合は 0、競合がある場合は 1、\n" "問題が発生したときは 2 になります。" -#: src/diff3.c:727 +#: src/diff3.c:725 msgid "internal error: screwup in format of diff blocks" msgstr "内部エラー: 差分ブロックの形式をうまく処理できませんでした" -#: src/diff3.c:1022 +#: src/diff3.c:1015 #, c-format msgid "%s: diff failed: " msgstr "%s: diff に失敗しました: " -#: src/diff3.c:1044 +#: src/diff3.c:1037 msgid "internal error: invalid diff type in process_diff" msgstr "内部エラー: process_diff 内に無効な差分型があります" -#: src/diff3.c:1069 +#: src/diff3.c:1060 msgid "invalid diff format; invalid change separator" msgstr "無効な差分形式です。無効な変更区切りです" -#: src/diff3.c:1305 +#: src/diff3.c:1294 msgid "invalid diff format; incomplete last line" msgstr "無効な差分形式です。最後の行が不完全です" -#: src/diff3.c:1329 src/sdiff.c:276 src/util.c:969 +#: src/diff3.c:1318 src/sdiff.c:274 src/util.c:1069 #, fuzzy, c-format msgid "subsidiary program '%s' could not be invoked" msgstr "下位プログラム `%s' が起動できません" -#: src/diff3.c:1354 +#: src/diff3.c:1343 msgid "invalid diff format; incorrect leading line chars" msgstr "無効な差分形式です。行の先頭文字が誤っています" -#: src/diff3.c:1427 +#: src/diff3.c:1416 msgid "internal error: invalid diff type passed to output" msgstr "内部エラー: 無効な差分型が出力に渡されました" -#: src/diff3.c:1700 src/diff3.c:1757 +#: src/diff3.c:1685 src/diff3.c:1742 msgid "input file shrank" msgstr "入力ファイルが小さくなりました" -#: src/dir.c:156 +#: src/dir.c:154 #, fuzzy, c-format msgid "cannot compare file names '%s' and '%s'" msgstr "ファイル `%s' と `%s' を比較できません" -#: src/dir.c:225 +#: src/dir.c:223 #, c-format msgid "%s: recursive directory loop" msgstr "%s: ディレクトリーが再帰的にループしています" @@ -1334,119 +1335,119 @@ msgstr "%s: ディレクトリーが再帰的にループしています" msgid "Thomas Lord" msgstr "Thomas Lord" -#: src/sdiff.c:174 +#: src/sdiff.c:173 msgid "" "-o, --output=FILE operate interactively, sending output to FILE" msgstr "-o, --output=FILE 対話的に操作し、出力を FILE に送る" -#: src/sdiff.c:176 +#: src/sdiff.c:175 msgid "" "-i, --ignore-case consider upper- and lower-case to be the same" msgstr "-i, --ignore-case 大文字と小文字を区別しない" -#: src/sdiff.c:177 +#: src/sdiff.c:176 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "-E, --ignore-tab-expansion タブ展開によって発生する違いを無視する" -#: src/sdiff.c:178 +#: src/sdiff.c:177 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "-Z, --ignore-trailing-space 行末にあるスペースを無視する" -#: src/sdiff.c:179 +#: src/sdiff.c:178 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "-b, --ignore-space-change スペース数により生じる違いを無視する" -#: src/sdiff.c:180 +#: src/sdiff.c:179 msgid "-W, --ignore-all-space ignore all white space" msgstr "-W, --ignore-all-space すべてのスペースを無視する" -#: src/sdiff.c:181 +#: src/sdiff.c:180 msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank" msgstr "" "-B, --ignore-blank-lines 空白類文字だけの行により生じる違いを無視する" -#: src/sdiff.c:182 +#: src/sdiff.c:181 #, fuzzy msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE" msgstr "" "-I, --ignore-matching-lines=RE RE と一致するすべての行の違いを無視する" -#: src/sdiff.c:183 +#: src/sdiff.c:182 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr 入力から末尾のキャリッジリターンを除去する" -#: src/sdiff.c:184 +#: src/sdiff.c:183 msgid "-a, --text treat all files as text" msgstr "-a, --text すべてのファイルをテキストとして扱う" -#: src/sdiff.c:186 +#: src/sdiff.c:185 msgid "" "-w, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-w, --width=NUM 表示する列を最大 NUM (デフォルト: 130) 列にする" -#: src/sdiff.c:187 +#: src/sdiff.c:186 msgid "" "-l, --left-column output only the left column of common lines" msgstr "-l, --left-column 共通行は左側の列のみ表示する" -#: src/sdiff.c:188 +#: src/sdiff.c:187 msgid "-s, --suppress-common-lines do not output common lines" msgstr "-s, --suppress-common-lines 共通行の出力を抑止する" -#: src/sdiff.c:190 +#: src/sdiff.c:189 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "-t, --expand-tabs 出力時にタブをスペースに展開する" -#: src/sdiff.c:191 +#: src/sdiff.c:190 msgid "" " --tabsize=NUM tab stops at every NUM (default 8) print columns" msgstr " --tabsize=NUM タブ幅を NUM (デフォルト: 8) 列に設定する" -#: src/sdiff.c:193 +#: src/sdiff.c:192 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "" "-d, --minimal 差分の大きさが最小となるように違いを検出する" -#: src/sdiff.c:194 +#: src/sdiff.c:193 msgid "" "-H, --speed-large-files assume large files, many scattered small changes" msgstr "" "-H, --speed-large-files 巨大なファイルに小さな差分が分散していると仮定す" "る" -#: src/sdiff.c:195 +#: src/sdiff.c:194 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr " --diff-program=PROGRAM ファイル比較に PROGRAM を使用する" -#: src/sdiff.c:197 +#: src/sdiff.c:196 msgid " --help display this help and exit" msgstr " --help このヘルプを表示して終了する" -#: src/sdiff.c:198 +#: src/sdiff.c:197 msgid "-v, --version output version information and exit" msgstr "-v, --version バージョン情報を表示して終了する" -#: src/sdiff.c:207 +#: src/sdiff.c:206 #, c-format msgid "Usage: %s [OPTION]... FILE1 FILE2\n" msgstr "使用法: %s [OPTION]... FILE1 FILE2\n" -#: src/sdiff.c:209 +#: src/sdiff.c:208 msgid "Side-by-side merge of differences between FILE1 and FILE2." msgstr "FILE1 と FILE2 の差分を2段組で比較しながら併合します。" -#: src/sdiff.c:330 +#: src/sdiff.c:328 msgid "cannot interactively merge standard input" msgstr "標準出力は対話的に併合できません" -#: src/sdiff.c:597 +#: src/sdiff.c:594 msgid "both files to be compared are directories" msgstr "比較対象は両方ともディレクトリーです" -#: src/sdiff.c:820 +#: src/sdiff.c:817 msgid "" "ed:\tEdit then use both versions, each decorated with a header.\n" "eb:\tEdit then use both versions.\n" @@ -1470,12 +1471,12 @@ msgstr "" "v: 共通行を明示して含める。\n" "q: 終了する。\n" -#: src/util.c:662 +#: src/util.c:755 #, fuzzy, c-format msgid "unrecognized prefix: %s" msgstr "%s: オプション '--%s' を認識できません\n" -#: src/util.c:692 +#: src/util.c:785 #, c-format msgid "unparsable value for --palette" msgstr "" diff --git a/po/ka.gmo b/po/ka.gmo new file mode 100644 index 0000000000000000000000000000000000000000..6ee12d041025f2c9b99fd7c96fa917d3b8f14b61 GIT binary patch literal 44891 zcmeI537i~9eec^b1Xvq-gLY@ub4Xsy zVI#tQ$k;~0*s$WpTn5v3JL;$?dN}x)`$o|YzArvrXQSxAgQ92^_&V@B@aqBN z2S?G%I35L`1pW{_3tae+D4GEa;1j{W1OEU#>7h~d1n?=~8Q|66I`D(w8t|9kbHMXX zj-vJ8C&6>U`#mg*mV-|L)&51G&VK>i03LUWpT7)T&GB16@%vqHBbXr6S>RRR1>grk zosS;jd~O0)a`+kW6X3w9QM4BPEci(9cs`bZOTd%B0(b)002v~BF}N6fGswT_i+l`$ zKL!WEN5<#`Tn93AG!3fVD?!v8y$5_8_&)Gx@N1yje*@eC-se#+*CpWj9N!E|U*7@M zZt-a@*M*?uJ_w!*ej6MHANy!OUjQZdTS4jZrvaBgCW@ZN@m_E__bu zF^T)-K2Ut#0gBGALA8GhMwA@;K=JiCQ2u-J<6Xa-LG{}Qt^hv+o(=v!!fXUrf#-tP zf=>p&3`##IB8=KS6;xcj3Y0!R9nPPy%=>QwrLUX7Q^7BSm^}IscnWv|l{!v9`O{|b z7_b5!2VMnAk1q$s-6)6!25tV zf-(3e@CxvDP;{U0B$s0)cp}H!KtdoI2Q~gHLjA#j9{|Pgr$Nc{Eszk5egdM(=z$C> zy{!jvrDz-!of|;$c?&3i`xJ<&qW=VOsc0!DPX`MiAr!q5l)N7TW%sXwr-1(sN>2~M zxsC!CfEsTQ6#uJ1LMXZzl;2zfir$;U`8z@J@iUNA7#)k#sQu$W^B2(k1&ld=W57QJ zHU8g&Cxib6ijNb|al4-e-izbKp!iq{#^CC3z6eSW&jRH)&j;mq*MhiubUR4sL_Y@~ z1`ZNTlK(tV$K#;rUIU7c>p}5-D=0c&0}1Kq*mJ#p7}R(df$FyllwUj#yg&GA@FC#M zpy+=n;1|JDIsRu*b{$yh{St71<8wgKT@R}M>7e}O8c_1T9Tfd{gYvJBf*SuXK>5p8 z!TW*V0Y&G>;O~R?J}-(M03HiUzo&rG?-M}PuL183ZV1O)!NnY33TnI;fu>m9!vaK}^p`19Z`)Ia%xDEdD5J@8n@`MyL1OP2>iS z@3k2nflmXk23Kw&hl00(`@yF^)$zLlui1(%Ie+pt)+*qK!7qcSY0K`;L4HW$kfv_H(yd#QU0FHwr z;CDgQZ@4Uqo(bLxE(cGz+~aj4DEgbhqrs1Wh!}kgyd6CD=~480@QdIF!O3ShKI)mo zBFBFn@QQ-3V~%CePjLQD@LKR?4E`GM;bY_w@O|Lhz!gQuZ-E2I{qk{_`?V8%r~Y)9 zdMWtffGbN;MAPU_Q2wy=SziA!@S7a3-Q{+B+@#~}ARMIYzO6=FqdQ*Y>#HZdIINGr3pjrp z_!95|d`NHm!B>Mza005LKLbw(&&T*r0qfv8@RQ)V;C)`s+88_^B-El$fVg^e;wwDA zRlr*~o&kRhJ_cu81wM!%J{G(bd?Yvy;u_J5KwKdD8TcrjhnX|Lmw;!19|Mn3J&4Mp zqcEP1_ky@`^lA`SiGB`l21^9P@!+3;ikrU#PXUVr2O%F_13uv>@-Zkn$6fF9(kY5_lTttDy981NbiRnAdWB1%4RR_$Tf6b>(}(g&cni z+yvequsR;{T28)aQ&N^+rc_`HFzh;P|=3B_&oA`P<~K*tK;q96FENVZ7$aZppIV+N^f_7 zc=UU@Mgtdtj|V>v>iiEt+3lqFxm=G2Kjk=`Ls@qU`TM#<_W5PLeV4K@JL7Z37{}kHe37CYbvh;e`ypRGLir=g#`Glk zgz){OrgNCq{&w-XHGCKRlrl*9HRX>f`ukVP1(Y9Cj{DPAHJ%}&z&wmalX2C~O zen2^f@?Of@DQ8ji_alesKR{Ak^jylHQvQU}{I`>XqtMYIP=0nIwv!pQ{F=PL&_v& zALV|Ot10^XTgtVR`%@l9*-ZIQivGS&Iago!djsX4D4(J1py=b4QpnQ~aBjsNxZ=zg8`F+YF%2Oz3P%fp6QvQ;19p$l< zzouMBIh*oiivI4Pj8Gn;1ODm`_W49UUlES~7r2_ToAMLNXDL@vo=N!*MSt&du+JCr zxt6jtoErka5xzeO{0GX>luuKhL-{7}D9`g@v#&9zf}UqabW`CK@EGgzd2it>9p z7xR}S>$YFIWlb_stu&^S@k({7P+zfb?Z)lY`B7{Q;!=6KQID-zE#6bA?~K(d(AZ!! zCQIdFN@9bPNNHGuKts&}3AG9&MoQ&Eb%s$p{;I{oSX?NN#e1rydNCd=)C*9GLx-u# zSTRzcBpIztR;oKzTzvkTO_v8Mb}Ftk>M*}NR!v;0#e?PI?qYRtaXeU<+*6pT@vTzj zpi!?3E*}V8yTSBifsw;V@l>%;uBAsSynCc>NitR%A5W&Mm5FL$YQ>hVo7Zh!xsi%S ztr(|A^-4TinVK$Ci}84AvRLcea~>VXtCgullvb==zhTW%@e%&gVf;Mf7A7a-%5<@c zQfqzX4FtU7XaS`c<3c=EsuoAT6%V+oS4V1*mNN#+*K@2$NJ`8Tp35aq6|4zDaX^*;&|yw^VM2o zoUcL9(nPsZB{VQjQZ7stlhFc>pg*sP?Rd}5VmY`(sXSp$5vz6T8Iy&P;$*yG<#}s1 zSl{$RzTsy}sZS)ofD_4ut#X`L}wkXo+B$+IZ*A-xm zsj{_8KRmSJN_kR-F2-ty5Y`Shf?`Zrk@`TXOO|kIA>YV5J=?gBE!i|>igG0xE23#i zdDPYD{o}Dpd9Y5(nVhWbiEA@cBbCY0s4TTB)ggU*7-O_ju9cuWKU-kWslsF!wh4kd z3UO$lJPV zNqW$^JBS=6jm9*wRI4Q;lZEoGq&PKQx2d5P&d0Us0;VTv*9#*gB|N7Xd#hjpbDdPI zl$v{^hcg0?RWMUM%nsdL72>thvx^@2Qc?KRptX8sx)y65nX!DZFc>&KYY};%R8FHH z^}HUma#Dr*;ZUpOseW0?mSLLgn{#|j&Q}g!Hs55w3{UBi>>K5h=l@crT$oJC#XZIe zW7nCe>oF=TBK&x%TGJ;J8;TY6fsAdVOKx6#2> zgAgWsYB)9-4Zp7zMu~)YRoddR&6_ueMtQB}jLK-87#(GS5Yxumuab@|W9Nk8g)pVS zPfyhd54oS@pk}I8oZMZkDRRRyh809*a!l(7#1D&yM%iO>Y;Y(}mrS+LL5qv5Hd;`N z`KQcKtPaN`GpuPA)E3)>!k2+L>a~7Za7INW9IV663YlY?$R3W*UQjzn=Z0;Fc$}nA z92<`9OsTxPFj-=Pn66_!B0e5mFgob1!@0o)wFR|7Vxw47GR2L^r8omwiR@IacWVqw zg{hI!M5EF${)f{60Qk6gUKN2r8rs|FHucqiKmoZ>SSE1C^IYFSE{T+ z{DLDjC2kWXtBvn*vhIpaD>trbk)DH~fT<#rDOS{K$a2Eqqf6=&s}EjI5JGEBlMYD8 zN%6{QR`!Yz`)lKVtbsRFZ05-t_NOs_0%px%>|CT4_XuWG&P;8%Hgkk=(vU*i=C~DG zr52I2ls8o&Bjfo>YtntprQYaHxx>~qQF6Y~=vHdHeW@w#LRZHN}0sV z%&nD2^WRi~9Hdo>I|pKn%;<_{x>z2QlN3}LC4FejlfuQuglV3)wiIb>%}YU8S5=yfE;W! z+IKF+D)Gik^*u^Tt-LlLvAQCx;=w(GwvHRTVi46&G0lzDq}7Z+)(a)c@1B!y<>a(d zpVB6eyM#6>Y6^T?h?qsoT72~*L@VErU=dWTCdL$NalYDa5iGG8C$F!uN7PCRA5n^5 zvF(EOTQat4yGqlHugfw!?;ebw**euWT-rElCbM){ow(F&BeT?9T`?yOFBO|}+RAy# zd0Ey7sD>tS_id9{JNX}=0TWB zy*eZ_>sB3Y%6e%xFy+1+Z(X%5-SwCAM@dD)d420_sczbZ#xMjaUs$^CE>6xYCTIDY zBT&U09=_8eWozWoBwgxeOxQw~#LslQD$Z()1&+hq!F6Z}`L8hft0gW2I{#SkaLM5p zUbdF<8PMZ6N~-FcUtPBM&uZ8X&6KHya$}@vC5C<)n!&m1PZF+mi*=KWixg%r`^z@E zv=Rz?iLQ*$%h^oWu`Jh1qb%o~P3>HWedD~oN0WiAChY!YlJyzgh+<7m+ zSzl+X=oMR5HYFglL(f$-O{2s*hfCzPos^dATKn zpUVdA7VPTvTbIUsS4KhhGRTtSuUfpj9wY?fx`dklJ@Fu~Ax{SWGW&>S4C>n3nivu+AR6nuRUj z5jOuI6z-Zu>%(bg#;~D2I;qu=ZaC(Z+(|3gPI1<(sg5bzFSahb>ayo%=h-nBE!tY8 zTAXNbGmAUEb}xqvnl<9iGb!H1fc zV!E#IcG_WP>7q4*&Tu@u2MvcjM&BO#u zL|dvwHa8k*DU8}>kgbS06K_LHJEN@~JV;WWPHqTknww7DP${=b4qzM6M2-YDh z=t9V@bL`u)u*L7Uzx@(G4A`Ps{-O(}0Zb#m87XohQdT~pg{@32Wi5Pmv5F#QvYW(1 z(RS|WaNleL>;7nar8@Gg3b$+55jT@sIc^WPdSgX(jlkW>sTpqO=y4Q1YB8AKxM*6z z3`G}~ca^@i?qe|=1#XMj{V9OGj4-knhrx#OYWguY3v3$p_y=sTo*L`mOeGaGn zeA~{a-CS+@)pxH$=4VFP9mFhi$_UDi3u@8GWQFO=Zl)1|mfmdJLfjocj+58++TMG+Hd-O&j750Ppl2U59TJ=lyw&^*_Cd^i*N2jKT z<29StYVMbdjcd-b^_x;|zuLvh)t2VxZrQ7uUmP>1*`pGS7nW#BNN^MG!rESi3Et8m zEb?ph85UV#s%mMVOG0j`cCE7uhvu5P-z~PM`J&WVGtpRue8lWpEzsB=P;*B7F1E~8 zEmC31v-^2^{7()tUK+1NTJp1eu9sM)W`p^oL}t?3P7>%YnxS)B`MT>y3-Cb(POQfKOLUYEnRR6AK@b;NYz zw;?hr9WARY0!6f73qf;71w<}nTMw5!EXQg^u7I>Q%ILE?(sOuSxlFyTg>`o~J2ln5 zjN*=*=BN0IMzK+hrb;}bsTG_#h`E#=Fzs?4ySlfAWqIbH9>hKvPk5Ek(v@09b*8MT zrs^IEqPdA!ij;<&yQs`Mrc!N7gXy9%nY2YqLQ>JXwJ8#!u$8GTjMlsAobZP;xicJT z1r~)zR>Q);t~)&RqHJ+z&te&C=_xy?u^61jP{pW*rC~WJzB2MGd?Bjg<3*sZ%Me|O zkF%GpL%*gm?T;1xc0mP4$!bD4)#^N(SLHMwrB6;rTw-(OUeaU3Dc`aJiM}y8W}-4H z;QW@~qbw zsr_sgjhq@9%TAp;F~tK$LnMcDAW)uY5L(H0bOhr?MlbQy%-IWZJ3VNyC~q?y?hgl|sPQytZc0ioAvAxG*-R#}0=EwoEqI07%yIm?xJ<x>zHTB(9(fOn@IhhtoH}Rl0$nB9NK#@KD758hxT57 zXz!a2?cH~1?@ig+_Z`~%nnQcvd}!}mtoqteq37wdaYck`jWvxoM+-g-j=njAup z4*SGPlJtB&-ydj88F>4ly*IS+@LoH9ZA#Dh)nj{y#Q+@idc5EGMgXKn_FHTmBysM8 zc3eI_T?3NZ1$?6kOLO#hfV1zmj@0dY{Gq+Cv&#L4_9B9$k|v}Jn*~?w$bKb|s#o0( z?Y#~%D4lPRWys7X`-c4I1F5dy?OliV-k7qwkA9p&gLFFB`3nQ8W!w4u$iVpI!%UCJ zv(}Z7pnP2_fDZ?!42pEJ-QHLBbaD?#M_$ zU6>})behh#t=Meq0jsV<4*mPV^hYgSAJ|BZC5AIMMcM9IPAZp= z3h0tfL>>KP35unGyNKM63N-5T9(oGh@kc+^?vlCyZU14SrAJM&?qZ(m;fcP1TzmG< zc((c@Sp@a?<&x=Q)`f-kt+tGiBrYbW&;tI*CxMG@TxkcDaI;&v|9#>OGh&C?)<~12 z9Y4CVr9@^gEax8TK7*dn7G#tdnj@oWM#JajPFC-#m2J(_AQF5t_3kb|*}?#=;ojoT z5P}>rl6@*+u}J0EhouFFk~ZTpq!+WZGm~|2;$azOKd7?beCd9I{p2h4K|%I3^+)Aalpx@pWYSN`IWz_EWdaAzazm29||=2s?Of4|b>25Y{6T&fVjb{oQTJ6i(mgA)2a=yq&4)M*nSI8gF#V!W_x7 z7>D+C@mUL<>-K5Ig9GA>^&X37S|F_=!6y&sI0vt>T)|TSz7_u8MHSMb_y6>h@jQ5fYcYl|*^tD2i5#iWWJ!*^jGX06c~Q7*M_qU)pY#%&?Xj8; z5*!agTofWCzNgGEf;G!YpT5$FgJsNo9I5OWl#;6|rff3(?^91nUjg~JfREQ-CjbNgrn z_c_`!f&w@@)&V-;H0tr$nO0Is{=?5cI;EfI9rk`&ej93XvhUO7_o4G6mu}HnsC4{{ zG);wYoU0-AI|b1&atTc|&HHRb%jL4fuM_qgQf?SEQ41P1Ql8xAO${;(Hyd=^@nhBe zdIgSY$odA=$sXd)Sa8il!Ce6%T7T7=lWp|VT~j6)0m2MIwRmC#zdq!E zI(lGa6k~NQzliPK@L+tJ|4cR=#3vS~g(*zWUdM0@&%A+v43VqSe@NSVj03tGr`s8+ zQAjTkAVgd{{;AZ$KzA##z znyC!C`4DqTsTl6pzwgj(rgtW~<lz7=_@h4T)9UJaoez`Ai^(v_`l%XSHJ;>4_^l z!fjC@@+k>&s<&V2z83%V`(zuBQOR7|mZw|h!lKbU$tb2c)ojabi3V5U`r7$b1~#Hd zw_ndl*sq(7xS!8zVK&HzY>*Fe<$kHhX|t_WD)IMy`MRO+kDwEN0&Pr)XJkT^xCngW zb#9I8l(<}@)XZ9?wlg_Jx`Gd%izJsTolhqrHd5Wt&;6K_(im3Y*aL}Aw{DA#{fZPG zG0U?-bEe0<3ju4PS6SObltVhlhF*w&{;Ks3&|$L#gZ z^(F=6Kn0ov58s_z(!HxkddYN~#e!yl?%Lud4bo=x+rnnA_ds;Xd1(el9hvupY>ZEm z7tlKuckfLY?PV-XlQRRf?@@RLWbSmI#<^#0PJoe|H|89Li8UhK$vJ#7q7%=Qi0OXs zq-dH;AWly@WGT6Qdhj~Nx?A=!=6cyhDoCGMRjeSeuX%m8M2ehElkTAHLHTM^TN>WZ zXF_jE9@uU_lfoUp`08VH-Yu`zd_Z&{_ zJse$sJlMGcc3(vxyp$yXpDrc7)S@KhZJT9nl#bsTrdsQ8Z+nA+tteg1+0_ZYOZ37) z7%#TBftV9HE3g&(rHxq#5o9<)`@2GtD_bv8d_+wgZZG9jH!c)0Ag2|7M>t1jdcq0% zzIw#u2m>)BLg92-Zv{k~fX&uOpB&nfcp^(YEKf?LW>q05$Ivuo-Gf-mf`sT64h z_`=A#qs1{Ap0zrx27OwK8R{9SbLwq>BZ_Wqg*T#fo0mk2k)aF6dpfuh10to$p$?$1v9Ig)E(+*s-8D!=MQ|=AzxvT4P=2jJzpm^bY-rIcW@ zw$zX@-R+$@X?pK_Psw-mJig>mjOkW+#~oLn(d&b74Ti4*m6ySGQ(8X@9C%T(jZ;OxP>%-WbY5sX#`_x36p^zcMW_u z-ofy;p?v1_{ljeL)a8=I?D5xM`rJWm0>wE@!+LFzuVZ7qxya^4%)s@7JF$1mJJW&* zlCBw7#Afr`_Ut7?T`!AJ1$5}`I^es{zU{fu+xcV+EBV;Qlaxvw9O%;z6dqk71_`hX z>d#5gkb_xMfr7&bambf0(^!XGndbj%cxZmHlC#p}T}rZu=i2kkfrKH9&<@`a)Kjs% z+u!D726r`hX2cqyPg_#+jN+s9v!@Bg@2lEgRn@8 zT4+ApZu5-BXbj7DSD%O5eoa4IX1p1|*ccyS^Q=Y(B!WqV$8sEIhR`a)orX{KpcQ7& zC5wG}!ysIrS9sYQyWo}X@TPcawn;E-*UXHTJKylt{Dh@m>}BESvB(IpiWpE+{_bVE zp0EEh(a;_wkZ#ti})QV96$TK4*Q6}k>u#ou5Qfv6_(Ior~&YovF36`6_Lo>QRa9w8RGt6IM2HSmyo zpZTDC!E^^5^r)Loa#IfYHtWzFFQIYY_nmcK2qL)WH%4a^4*6{P?Mmh?jL8_R72VKu zfHS_MdHN`evUG7SkOr&q&`OVYrKKSVN%u);IMtqR$ym~(`v#vhr>hT_j#agHl61Ub zEzLQ&DJj4m5^^vZy5}oUoIvXBqF2t+$BjZyXa$CIQGdfvUiN;OTk1q81nFQ+{^Cw< z-=#P|ODJX*bB7OlZSzmaxLeS{l|(yjyLuj?E7dZ5bPwgK@7w2)!{tS^*)(Ij&Rkg6 zk$myL=Hj*Y%j#0Qz_tfquwR!{1^2kC+}VYteP*=Z4PdiUKNbCdw{PC_6@Ob+>bJu! zODQr9laVi$2$?)yx@1mI-1sSONLC`X;Jj?mGG6z00v`E&ZP;p`h28fR2x(epbmBl$ z7Hr@FSu%q~QkrJ~|ICAn=EM*5$#~sgK-ZT&yLww~lBVaXM7|mze4|ME3h}qDh*VD!@!a%RZS;99) z@(IKB&-hMs-_YGhCioLWHS-lLm#?H@DnIDMSHE{LrkT{|*({%iu{icgmQM`HAr<@L zB~2F?t_&6-?tnf=XFexqqzfL)CoRww_j#6bRtrC%+19Sn{0!CR9m|@AW9wno+!D!s z6ge<0x%6^}b4eHu&cu`K;t?}%8HZaWY^KZ*s3Ns^ytIk4Y+A);a0UZ-B#rsPrGm-O zmHFV4r~)Zmn=sm(id?f)9pIId_O{NnA++1?&2!3EgggT7KjPLWZ?ZJ~@CbO*%PpHu z*{$fjk@|#}T(&u(qIN+I*K4|8*JX)m(e3Se#8-Rx!?;H}F68bun`&Ar3{?2qW9>i&$E7Rgq-n@W?$Klp2)cI$ z*Re;*WB!MvED&e`9s2pFw+l?rx$S{gh~1Pw&?+x<&w){{bm+#&&M0wmAbrljiH2EE z{Ls(Yf_JYZ_0Z#>f@ap@tgCIkThHEJfv+XnDncOh6^|pr#3c+VKDL+X(9Cre9z=u< z>fIldkgch3xDK!Xa`WM6K?Y^m9Y= z8ECkoU7t?Flf1XnD2f+Pe|~^*Jpi_#l0t7WU0ih z5BYt(@6pDE2|Sec^yfRnI9vH;ruz`IXykRlhoI8>LR^zVX_aP()IN(dVD}Xr{JI+P#=`PMs&GaPOWiO_h~___;jJ&ysA8s;;3uJgr$#PYZ4 z8p|HsG;$A;mq;92F9eC9!#CMOWeJ;#!Kr1BT>P9fIM4hDqo7_G4ZiM1a`)pC zod;)$w(^>}^fknHof}!-Z>$FO!3U=p9zOkZU(~Eo&*{V{l?Z@>-Is${UhRBiLDfOd z&ERLTfb78lRJg!+Go+}NQ>F&K3j<|CKz_f|+uHuB<>naDm4p-yxf?p)`+`y+qO+WLdUO{iyC7ts#4Cg{p?S6@#Y>~o|Ledn+7u4d^+ZO}0cen8B zyL2(^1M=x+a=CB{7g*!R!=zgj8^3Dsp89?G9LDcwlr? zBM;#~4vA{%4Lf{>8aD(3bIN%}PkeU;yDdUAaR42xl4&wnXx7f+&2C9MyU;UT)6A{Y z)`Y==rn$J|P51rZY~9Rtd|vi;>ojQKMFK(`XYvq$9fp8ap96i|d|IM4d{9RVHw(XR zb;js>SmD<&^jF%2@RnRjqJ|HS!i)qBSQh&y{8`Ds%zqf7^H~kt5=@jkOR4yvh7-plx@rp!j-o-WCm@ zc%~;0X`i9mtKEySH-6tzC)NlDaw*O|>n<m=|w9>bY0Ut$ZC!h z(%u5S54~T*UawXUZ(5H7oiwrBaOC7tQb*3xU6JXCM?a#Dhuvx5aAfOG-BzCVcK4=z zX547jt})z0b3cVvFJHq?!y+}$?2#p9pWgiHAF|5PI53w^cpzz79c>QuQB~dI@DK@} z?h!-12M0vxNS1e&+@JXjvttVpACsYoD4G)_^g}Mr(40T5e+I?S!e7yx zZ*;g;JYCEhr`hIgZW14i>U>EzkCDvM&_~}0f*BDir+HXjkiB`|mhIZ7Q!;`F&4#8V zBrsK_3UDJM_iLKo+kXVTwS$OB7=%$ZFyr2h6#eZU-Ndsf^d(GYJzc&NG%z!3;${`L z3EXQx;(*?Uk-yi0-tAKe%JRtuL*uT#(7;*@F9joV)H)@iZOC|^uo8nKUlhZXe{Y_{ z8NpeGeOIUAFYdjBfr`98@(UgnG8 zF6S&w(bo-%ZA91Q;uQS3gS>;YP{3-8z_75f&;LV+G+5Cy280q$K{uC?&p@)5V|zP^ z=n1ObE88al&z4Tj+ajBfsw$_0Tj>CvooEZ&!!7^s1X+|e2kgHg$}=hioosuQN%5xi z!0{X-H9y;zs?}YhUC!Ukh=iY~0Gugk8tb4JAC6NVkTN=&#;}Mj+giwS&)@$K(|IU{ zPQg>UrXMX*q1O6;Yut6RHk0D)nM5$&ZZa1Ymqt{$L}nOuJ9b;|c=IlF&<}mlkG(Z$ zFw%scOMrqs(4kB-LK;4Nlw99ksL~1_%JRqc{6{UkyW39o?bpRx%h3V`hYi`B1CMD^ zhs^7N<2uL!6=`6WPJAj*6+w560U{GB&?OB7qRpK6Xtd}noGS%m<>I7_9=Hqq4Z;bj z0M1-iKIg}e=R^465*78Ldxih4c7UjegOW4z&riDCUDn^>uK$-(rfF~4axa)eBK^M*lBIkPIfJTf6Q=FxRw1uxY2dIjEFi4}k zx`pQ>9Jn)hbNYAd@O?RFB!t6>Q6UXoR?Sc-pqc==>J$zlES4Nz*Pj^AA#UXU% zi!uLuP*|4m9|)xp!f;tKhGlP?vm7}!n%`=+qzOdr62^Sclk9BjEAI31PY+Mz#Q|W3 z7Bp4#a^TZ~cYdn^{NFq`XxQR$?vjD+L5nmHBNBndw1AZR3!Pluxf*=Deh!C, 2022. +# +msgid "" +msgstr "" +"Project-Id-Version: GNU diffutils 3.7.41\n" +"Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n" +"POT-Creation-Date: 2023-05-21 01:51-0700\n" +"PO-Revision-Date: 2022-04-29 14:43+0200\n" +"Last-Translator: Temuri Doghonadze \n" +"Language-Team: Georgian <(nothing)>\n" +"Language: ka\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Bugs: Report translation errors to the Language-Team address.\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Generator: Poedit 3.0.1\n" + +#: lib/argmatch.c:145 +#, c-format +msgid "invalid argument %s for %s" +msgstr "%s არასწორი არგუმენტია %s-თვის" + +#: lib/argmatch.c:146 +#, c-format +msgid "ambiguous argument %s for %s" +msgstr "%s გაურკვეველი არგუმენტია %s-თვის" + +#: lib/argmatch.c:165 lib/argmatch.h:242 +msgid "Valid arguments are:" +msgstr "სწორი არგუმენტებია:" + +#: lib/c-stack.c:186 +msgid "program error" +msgstr "პროგრამის შეცდომა" + +#: lib/c-stack.c:187 +msgid "stack overflow" +msgstr "სტეკის გადავსება" + +#: lib/error.c:193 +msgid "Unknown system error" +msgstr "სისტემის უცნობი შეცდომა" + +#: lib/file-type.c:40 +msgid "regular empty file" +msgstr "ჩვეულებრივი ცარიელი ფაილი" + +#: lib/file-type.c:40 +msgid "regular file" +msgstr "ჩვეულებრივი ფაილი" + +#: lib/file-type.c:43 +msgid "directory" +msgstr "საქაღალდე" + +#: lib/file-type.c:46 +msgid "symbolic link" +msgstr "სიმბმული" + +#: lib/file-type.c:52 +msgid "message queue" +msgstr "შეტყობინებების რიგი" + +#: lib/file-type.c:55 +msgid "semaphore" +msgstr "სემაფორა" + +#: lib/file-type.c:58 +msgid "shared memory object" +msgstr "მეხსიერების გაზიარებული ობიექტი" + +#: lib/file-type.c:61 +msgid "typed memory object" +msgstr "ტიპიზირებული მეხსიერების ობიექტი" + +#: lib/file-type.c:66 +msgid "block special file" +msgstr "ბლოკური სპეციალური ფაილი" + +#: lib/file-type.c:69 +msgid "character special file" +msgstr "სიმბოლური სპეციალური ფაილი" + +#: lib/file-type.c:72 +msgid "contiguous data" +msgstr "განგრძობადი მონაცემები" + +#: lib/file-type.c:75 +msgid "fifo" +msgstr "fifo" + +#: lib/file-type.c:78 +msgid "door" +msgstr "კარი" + +#: lib/file-type.c:81 +msgid "multiplexed block special file" +msgstr "მულტიპლექსირებული ბლოკური სპეციალური ფაილი" + +#: lib/file-type.c:84 +msgid "multiplexed character special file" +msgstr "მულტიპლექსირებული სიმბოლური სპეციალური ფაილი" + +#: lib/file-type.c:87 +msgid "multiplexed file" +msgstr "მულტიპლექსლური ფაილი" + +#: lib/file-type.c:90 +msgid "named file" +msgstr "სახელიანი ფაილი" + +#: lib/file-type.c:93 +msgid "network special file" +msgstr "ქსელური სპეციალური ფაილი" + +#: lib/file-type.c:96 +msgid "migrated file with data" +msgstr "მიგრირებული ფაილი მონაცემებით" + +#: lib/file-type.c:99 +msgid "migrated file without data" +msgstr "მიგრირებული ფაილი მონაცემების გარეშე" + +#: lib/file-type.c:102 +msgid "port" +msgstr "პორტი" + +#: lib/file-type.c:105 +msgid "socket" +msgstr "სოკეტი" + +#: lib/file-type.c:108 +msgid "whiteout" +msgstr "სიცარიელე" + +#: lib/file-type.c:110 +msgid "weird file" +msgstr "უცნაური ფაილი" + +#: lib/getopt.c:278 +#, c-format +msgid "%s: option '%s%s' is ambiguous\n" +msgstr "%s: პარამეტრი '%s%s' გაურკვეველია\n" + +#: lib/getopt.c:284 +#, c-format +msgid "%s: option '%s%s' is ambiguous; possibilities:" +msgstr "%s: პარამეტრი '%s%s' გაურკვეველია; შესაძლო ვარიანტები:" + +#: lib/getopt.c:319 +#, c-format +msgid "%s: unrecognized option '%s%s'\n" +msgstr "%s: უცნობი პარამეტრი '%s'%s'\n" + +#: lib/getopt.c:345 +#, c-format +msgid "%s: option '%s%s' doesn't allow an argument\n" +msgstr "%s: პარამეტრს \"%s%s' არგუმენტი არ სჭირდება\n" + +#: lib/getopt.c:360 +#, c-format +msgid "%s: option '%s%s' requires an argument\n" +msgstr "%s: პარამეტრს \"%s%s\" არგუმენტი ესაჭიროება\n" + +#: lib/getopt.c:621 +#, c-format +msgid "%s: invalid option -- '%c'\n" +msgstr "%s: არასწორი პარამეტრი -- '%c'\n" + +#: lib/getopt.c:636 lib/getopt.c:682 +#, c-format +msgid "%s: option requires an argument -- '%c'\n" +msgstr "%s: პარამეტრს ესაჭიროება არგუმენტი -- '%c'\n" + +#. TRANSLATORS: +#. Get translations for open and closing quotation marks. +#. The message catalog should translate "`" to a left +#. quotation mark suitable for the locale, and similarly for +#. "'". For example, a French Unicode local should translate +#. these to U+00AB (LEFT-POINTING DOUBLE ANGLE +#. QUOTATION MARK), and U+00BB (RIGHT-POINTING DOUBLE ANGLE +#. QUOTATION MARK), respectively. +#. +#. If the catalog has no translation, we will try to +#. use Unicode U+2018 (LEFT SINGLE QUOTATION MARK) and +#. Unicode U+2019 (RIGHT SINGLE QUOTATION MARK). If the +#. current locale is not Unicode, locale_quoting_style +#. will quote 'like this', and clocale_quoting_style will +#. quote "like this". You should always include translations +#. for "`" and "'" even if U+2018 and U+2019 are appropriate +#. for your locale. +#. +#. If you don't know what to put here, please see +#. +#. and use glyphs suitable for your language. +#: lib/quotearg.c:354 +msgid "`" +msgstr "`" + +#: lib/quotearg.c:355 +msgid "'" +msgstr "'" + +#: lib/regcomp.c:122 +msgid "Success" +msgstr "წარმატება" + +#: lib/regcomp.c:125 +msgid "No match" +msgstr "არ ემთხვევა" + +#: lib/regcomp.c:128 +msgid "Invalid regular expression" +msgstr "არასწორი რეგულარული გამოსახულება" + +#: lib/regcomp.c:131 +msgid "Invalid collation character" +msgstr "კოლაციის არასწორი სიმბოლო" + +#: lib/regcomp.c:134 +msgid "Invalid character class name" +msgstr "სიმბოლოების არასწორი კლასი" + +#: lib/regcomp.c:137 +msgid "Trailing backslash" +msgstr "ბოლო Backslash" + +#: lib/regcomp.c:140 +msgid "Invalid back reference" +msgstr "არასწორი უკუბმა" + +#: lib/regcomp.c:143 +msgid "Unmatched [, [^, [:, [., or [=" +msgstr "არ ემთხვევა [, [^, [:, [., ან [=" + +#: lib/regcomp.c:146 +msgid "Unmatched ( or \\(" +msgstr "არ ემთხვევა ( ან \\(" + +#: lib/regcomp.c:149 +msgid "Unmatched \\{" +msgstr "არ ემთხვევა \\{" + +#: lib/regcomp.c:152 +msgid "Invalid content of \\{\\}" +msgstr "\\{\\}-ის არასწორი შემცელობა" + +#: lib/regcomp.c:155 +msgid "Invalid range end" +msgstr "დიაპაზონის არასწორი დასასრული" + +#: lib/regcomp.c:158 +msgid "Memory exhausted" +msgstr "მეხსიერება გადავსებულია" + +#: lib/regcomp.c:161 +msgid "Invalid preceding regular expression" +msgstr "რეგულარული გამოსახულების არასწორი საწყისი" + +#: lib/regcomp.c:164 +msgid "Premature end of regular expression" +msgstr "რეგულარული გამოსახულების მოულოდნელი დასასრული" + +#: lib/regcomp.c:167 +msgid "Regular expression too big" +msgstr "რეგულარული გამოსახულება ძალიან დიდია" + +#: lib/regcomp.c:170 +msgid "Unmatched ) or \\)" +msgstr "არ ემთხვევა ) ან \\)" + +#: lib/regcomp.c:650 +msgid "No previous regular expression" +msgstr "წინა რეგულარული გამოსახულება არ არსებობს" + +#: lib/xalloc-die.c:34 +msgid "memory exhausted" +msgstr "მეხსიერება გადავსებულია" + +#: lib/xfreopen.c:34 +msgid "stdin" +msgstr "stdin" + +#: lib/xfreopen.c:35 +msgid "stdout" +msgstr "stdout" + +#: lib/xfreopen.c:36 +msgid "stderr" +msgstr "stderr" + +#: lib/xfreopen.c:37 +msgid "unknown stream" +msgstr "უცნობი ნაკადი" + +#: lib/xfreopen.c:38 +#, c-format +msgid "failed to reopen %s with mode %s" +msgstr "%s-ის %s რეჟიმში ხელახალი გახსნიშ ეცდომა" + +#: lib/xstdopen.c:34 +#, c-format +msgid "standard file descriptors" +msgstr "ფაილის სტანდარტული დესკტრიპტორები" + +#: lib/version-etc.c:73 +#, c-format +msgid "Packaged by %s (%s)\n" +msgstr "აწყობილია %s-ის მიერ (%s)\n" + +#: lib/version-etc.c:76 +#, c-format +msgid "Packaged by %s\n" +msgstr "აწყობილია %s-ის მიერ\n" + +#. TRANSLATORS: Translate "(C)" to the copyright symbol +#. (C-in-a-circle), if this symbol is available in the user's +#. locale. Otherwise, do not translate "(C)"; leave it as-is. +#: lib/version-etc.c:83 +msgid "(C)" +msgstr "(C)" + +#. TRANSLATORS: The %s placeholder is the web address of the GPL license. +#: lib/version-etc.c:88 +#, c-format +msgid "" +"License GPLv3+: GNU GPL version 3 or later <%s>.\n" +"This is free software: you are free to change and redistribute it.\n" +"There is NO WARRANTY, to the extent permitted by law.\n" +msgstr "" +"License GPLv3+: GNU GPL version 3 or later <%s>.\n" +"This is free software: you are free to change and redistribute it.\n" +"There is NO WARRANTY, to the extent permitted by law.\n" + +#. TRANSLATORS: %s denotes an author name. +#: lib/version-etc.c:105 +#, c-format +msgid "Written by %s.\n" +msgstr "ავტორი: %s.\n" + +#. TRANSLATORS: Each %s denotes an author name. +#: lib/version-etc.c:109 +#, c-format +msgid "Written by %s and %s.\n" +msgstr "ავტორები: %s და %s.\n" + +#. TRANSLATORS: Each %s denotes an author name. +#: lib/version-etc.c:113 +#, c-format +msgid "Written by %s, %s, and %s.\n" +msgstr "ავტორები: %s, %s და %s.\n" + +#. TRANSLATORS: Each %s denotes an author name. +#. You can use line breaks, estimating that each author name occupies +#. ca. 16 screen columns and that a screen line has ca. 80 columns. +#: lib/version-etc.c:120 +#, c-format +msgid "" +"Written by %s, %s, %s,\n" +"and %s.\n" +msgstr "" +"ავტორები: %s, %s, %s\n" +"და %s.\n" + +#. TRANSLATORS: Each %s denotes an author name. +#. You can use line breaks, estimating that each author name occupies +#. ca. 16 screen columns and that a screen line has ca. 80 columns. +#: lib/version-etc.c:127 +#, c-format +msgid "" +"Written by %s, %s, %s,\n" +"%s, and %s.\n" +msgstr "" +"ავტორები: %s, %s, %s,\n" +"%s და %s.\n" + +#. TRANSLATORS: Each %s denotes an author name. +#. You can use line breaks, estimating that each author name occupies +#. ca. 16 screen columns and that a screen line has ca. 80 columns. +#: lib/version-etc.c:134 +#, c-format +msgid "" +"Written by %s, %s, %s,\n" +"%s, %s, and %s.\n" +msgstr "" +"ავტორები: %s, %s, %s,\n" +"%s, %s და %s.\n" + +#. TRANSLATORS: Each %s denotes an author name. +#. You can use line breaks, estimating that each author name occupies +#. ca. 16 screen columns and that a screen line has ca. 80 columns. +#: lib/version-etc.c:142 +#, c-format +msgid "" +"Written by %s, %s, %s,\n" +"%s, %s, %s, and %s.\n" +msgstr "" +"ავტორები: %s, %s, %s,\n" +"%s, %s, %s და %s.\n" + +#. TRANSLATORS: Each %s denotes an author name. +#. You can use line breaks, estimating that each author name occupies +#. ca. 16 screen columns and that a screen line has ca. 80 columns. +#: lib/version-etc.c:150 +#, c-format +msgid "" +"Written by %s, %s, %s,\n" +"%s, %s, %s, %s,\n" +"and %s.\n" +msgstr "" +"ავტორები: %s, %s, %s,\n" +"%s, %s, %s, %s\n" +"და %s.\n" + +#. TRANSLATORS: Each %s denotes an author name. +#. You can use line breaks, estimating that each author name occupies +#. ca. 16 screen columns and that a screen line has ca. 80 columns. +#: lib/version-etc.c:159 +#, c-format +msgid "" +"Written by %s, %s, %s,\n" +"%s, %s, %s, %s,\n" +"%s, and %s.\n" +msgstr "" +"ავტორები: %s, %s, %s,\n" +"%s, %s, %s, %s\n" +"%s და %s.\n" + +#. TRANSLATORS: Each %s denotes an author name. +#. You can use line breaks, estimating that each author name occupies +#. ca. 16 screen columns and that a screen line has ca. 80 columns. +#: lib/version-etc.c:170 +#, c-format +msgid "" +"Written by %s, %s, %s,\n" +"%s, %s, %s, %s,\n" +"%s, %s, and others.\n" +msgstr "" +"ავტორები: %s, %s, %s,\n" +"%s, %s, %s, %s\n" +"%s, %s და სხვ.\n" + +#. TRANSLATORS: The placeholder indicates the bug-reporting address +#. for this package. Please add _another line_ saying +#. "Report translation bugs to <...>\n" with the address for translation +#. bugs (typically your translation team's web or email address). +#: lib/version-etc.c:249 +#, c-format +msgid "Report bugs to: %s\n" +msgstr "შეცდომების შესახებ მიწერეთ: %s\n" + +#: lib/version-etc.c:251 +#, c-format +msgid "Report %s bugs to: %s\n" +msgstr "%s-ის შეცდომების შესახებ მისაწერი ელფოსტა: %s\n" + +#: lib/version-etc.c:255 lib/version-etc.c:257 +#, c-format +msgid "%s home page: <%s>\n" +msgstr "%s-ის საწყისი გვერდია: <%s>\n" + +#: lib/version-etc.c:260 +#, c-format +msgid "General help using GNU software: <%s>\n" +msgstr "GNU-ის პროგრამული უზრუნველყოფის საერთო დახმარება: <%s >\n" + +#: src/analyze.c:455 src/diff.c:1478 +#, c-format +msgid "Files %s and %s differ\n" +msgstr "ფილები %s და %s განსხვავდებიან\n" + +#: src/analyze.c:456 +#, c-format +msgid "Binary files %s and %s differ\n" +msgstr "ბინარული ფილები %s და %s განსხვავდებიან\n" + +#: src/analyze.c:707 src/diff3.c:1457 src/util.c:1354 +msgid "No newline at end of file" +msgstr "ფაილის ბოლოში ხაზის გადატანა არ არსებობს" + +#. This is a proper name. See the gettext manual, section Names. +#: src/cmp.c:45 +msgid "Torbjorn Granlund" +msgstr "Torbjorn Granlund" + +#. This is a proper name. See the gettext manual, section Names. +#: src/cmp.c:46 +msgid "David MacKenzie" +msgstr "David MacKenzie" + +#: src/cmp.c:124 src/diff.c:939 src/diff3.c:465 src/sdiff.c:159 +#, c-format +msgid "Try '%s --help' for more information." +msgstr "მეტი ინფორმაციისთვის სცადეთ '%s --help'." + +#: src/cmp.c:142 +#, c-format +msgid "invalid --ignore-initial value '%s'" +msgstr "--ignore-initial-ის არასწორი მნიშვნელობა '%s'" + +#: src/cmp.c:152 +#, c-format +msgid "options -l and -s are incompatible" +msgstr "პარამეტრები -l და -s შეუთავსებელია" + +#: src/cmp.c:160 src/diff.c:947 src/diff3.c:472 src/sdiff.c:167 src/sdiff.c:314 +#: src/sdiff.c:321 src/sdiff.c:873 src/util.c:952 src/util.c:1052 +#: src/util.c:1059 +msgid "write failed" +msgstr "ჩაწერის შეცდომა" + +#: src/cmp.c:162 src/diff.c:949 src/diff.c:1543 src/diff3.c:474 src/sdiff.c:169 +msgid "standard output" +msgstr "სტანდარტული გამოტანა" + +#: src/cmp.c:166 +msgid "-b, --print-bytes print differing bytes" +msgstr "-b, --print-bytes განსხვავებული ბაიტების გამოტანა" + +#: src/cmp.c:167 +msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs" +msgstr "" +"-I, --ignore-initial=SKIP ორივე შეტანის პირველი SKIP ბაიტების გამოტოვება" + +#: src/cmp.c:168 +msgid "" +"-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n" +" first SKIP2 bytes of FILE2" +msgstr "" +"-I, --ignore-initial=SKIP1:SKIP2 პირველი ფაილის SKIP1 ბაიტის და \n" +" მეორე ფაილის SKIP2 " +"ბაიტის გამოტოვება" + +#: src/cmp.c:170 +msgid "" +"-l, --verbose output byte numbers and differing byte values" +msgstr "" +"-l, --verbose ბაიტების ნომრების და განსხვავებების ბაიტების " +"მნიშვნელობები გამოტანა" + +#: src/cmp.c:171 +msgid "-n, --bytes=LIMIT compare at most LIMIT bytes" +msgstr "-n, --bytes=LIMIT LIMIT-მდე ბაიტის შედარება" + +#: src/cmp.c:172 +msgid "-s, --quiet, --silent suppress all normal output" +msgstr "-s, --quiet, --silent ნორმალური გამოტანის ჩაჩუმება" + +#: src/cmp.c:173 +msgid " --help display this help and exit" +msgstr " --help ამ დახმარების გამოტანა და გამოსვლა" + +#: src/cmp.c:174 +msgid "-v, --version output version information and exit" +msgstr "-v, --version ვერსიის ჩვენება და გასვლა" + +#: src/cmp.c:183 +#, c-format +msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n" +msgstr "" +"გამოყენება: %s [პარამეტრი].. ფაილი1 [ფაილი2 [გამოტოვება1 [გამოტოვება2]]]\n" + +#: src/cmp.c:185 +msgid "Compare two files byte by byte." +msgstr "ორი ფაილის ბაიტ-ბაიტ შედარება." + +#: src/cmp.c:187 +msgid "" +"The optional SKIP1 and SKIP2 specify the number of bytes to skip\n" +"at the beginning of each file (zero by default)." +msgstr "" +"არასავალდებულო SKIP1 და SKIP2 მიუთითებს თითოეული ფაილის \n" +"თავში ან ბოლოში გამოსატოვებელი ბაიტების რიცხვის (ნაგულისხმები: 0)." + +#: src/cmp.c:190 src/diff.c:1059 src/diff3.c:512 src/sdiff.c:210 +msgid "" +"Mandatory arguments to long options are mandatory for short options too.\n" +msgstr "" +"გრძელი პარამეტრების აუცილებელი არგუმენტები მათი მოკლე ვარიანტებისთვისაც " +"სავალდებულოა.\n" + +#: src/cmp.c:196 +msgid "" +"SKIP values may be followed by the following multiplicative suffixes:\n" +"kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" +"GB 1,000,000,000, G 1,073,741,824, and so on for T, P, E, Z, Y." +msgstr "" + +#: src/cmp.c:199 +msgid "If a FILE is '-' or missing, read standard input." +msgstr "როცა ფაილი არ არსებობს ან '-'-ია, წაკითხვა stdin-დან მოხდება." + +#: src/cmp.c:200 src/diff.c:1047 src/sdiff.c:220 +msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble." +msgstr "" +"გამოსვლის სტატუსია 0, თუ შეყვანილები იგივეა, 1 თუ სხვადასხვა და 2, თუ " +"პრობლემა წარმოიშვა." + +#: src/cmp.c:247 +#, c-format +msgid "invalid --bytes value '%s'" +msgstr "--bytes-ის არასწორი მნიშვნელობა: %s" + +#: src/cmp.c:273 src/diff.c:857 src/diff3.c:368 src/sdiff.c:564 +#, c-format +msgid "missing operand after '%s'" +msgstr "აკლია ფაილის ოპერანდი '%s'-ის შემდეგ" + +#: src/cmp.c:285 src/diff.c:859 src/diff3.c:370 src/sdiff.c:566 +#, c-format +msgid "extra operand '%s'" +msgstr "ზედმეტი ოპერანდი %s" + +#: src/cmp.c:521 +#, c-format +msgid "%s %s differ: byte %s, line %s\n" +msgstr "%s %s განსხვავება: ბაიტი %s, ხაზი %s\n" + +#: src/cmp.c:537 +#, c-format +msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n" +msgstr "%s %s განხვავდება: ბაიტი %s, ხაზი %s არის %3o %s %3o %s\n" + +#: src/cmp.c:594 +#, c-format +msgid "cmp: EOF on %s which is empty\n" +msgstr "cmp: EOF %s-ზე, რომელიც ცარიელია\n" + +#: src/cmp.c:608 +#, c-format +msgid "cmp: EOF on %s after byte %s, line %s\n" +msgstr "cmp: EOF %s-ზე, %s ბაიტის შემდეგ, ხაზი %s\n" + +#: src/cmp.c:609 +#, c-format +msgid "cmp: EOF on %s after byte %s, in line %s\n" +msgstr "cmp: EOF %s-ზე, %s ბაიტის შემდეგ, ხაზზე %s\n" + +#: src/cmp.c:615 +#, c-format +msgid "cmp: EOF on %s after byte %s\n" +msgstr "cmp: EOF %s-ზე, %s ბაიტის შემდეგ\n" + +#. This is a proper name. See the gettext manual, section Names. +#: src/diff.c:50 +msgid "Paul Eggert" +msgstr "Paul Eggert" + +#. This is a proper name. See the gettext manual, section Names. +#: src/diff.c:51 +msgid "Mike Haertel" +msgstr "Mike Haertel" + +#. This is a proper name. See the gettext manual, section Names. +#: src/diff.c:52 +msgid "David Hayes" +msgstr "David Hayes" + +#. This is a proper name. See the gettext manual, section Names. +#: src/diff.c:53 +msgid "Richard Stallman" +msgstr "Richard Stallman" + +#. This is a proper name. See the gettext manual, section Names. +#: src/diff.c:54 +msgid "Len Tower" +msgstr "Len Tower" + +#: src/diff.c:365 +#, c-format +msgid "invalid context length '%s'" +msgstr "'%s'-ის კონტექსტის არასწორი სიგრძე" + +#: src/diff.c:487 +#, c-format +msgid "pagination not supported on this host" +msgstr "ამ ჰოსტზე გვერდების დანომრვა მხარდაუჭერელია" + +#: src/diff.c:502 src/diff3.c:348 +#, c-format +msgid "too many file label options" +msgstr "ფაილის ჭდის მეტისმეტად ბევრი პარამეტრი" + +#: src/diff.c:579 +#, c-format +msgid "invalid width '%s'" +msgstr "'%s'-ის არასწორი სიგანე" + +#: src/diff.c:583 +msgid "conflicting width options" +msgstr "ურთიერთგამომრიცხავი პარამეტრები" + +#: src/diff.c:608 +#, c-format +msgid "invalid horizon length '%s'" +msgstr "ჰორიზონტის არასწორი სიგრძე '%s'" + +#: src/diff.c:664 +#, c-format +msgid "invalid tabsize '%s'" +msgstr "ტაბულაციის არასწორი სიგრძე '%s'" + +#: src/diff.c:668 +msgid "conflicting tabsize options" +msgstr "ტაბულაციის ურთიერთგამომრიცხავი პარამეტრები" + +#: src/diff.c:834 +msgid "--from-file and --to-file both specified" +msgstr "მითითებულია ორივე, --from-file და --to-file" + +#: src/diff.c:953 +msgid " --normal output a normal diff (the default)" +msgstr " --normal diff-ის ნორმალური გამოტანა (ნაგულისხმები)" + +#: src/diff.c:954 +msgid "-q, --brief report only when files differ" +msgstr "" +"-q, --brief მხოლოდ იმის გამოტანა, განსხვავდებიან თუა რა ფაილები" + +#: src/diff.c:955 +msgid "-s, --report-identical-files report when two files are the same" +msgstr "-s, --report-identical-files შეტყობინება, როცა ფაილები იდენტურია" + +#: src/diff.c:956 +msgid "" +"-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context" +msgstr "" +"-c, -C NUM, --context[=NUM] კოპირებული კონტექსტის NUM(ნაგულისხმებად 3) " +"ხაზის გამოტანა" + +#: src/diff.c:957 +msgid "" +"-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context" +msgstr "" +"-u, -U NUM, --unified[=NUM] გაერთიანებული კონტექსტის NUM(ნაგულისხმებად 3) " +"ხაზის გამოტანა" + +#: src/diff.c:958 +msgid "-e, --ed output an ed script" +msgstr "-e, --ed ed-ის სკრიპტის გამოტანა" + +#: src/diff.c:959 +msgid "-n, --rcs output an RCS format diff" +msgstr "-n, --rcs diff-ის RCS ფორმატში გამოტანა" + +#: src/diff.c:960 +msgid "-y, --side-by-side output in two columns" +msgstr "-y, --side-by-side ორ სვეტში გამოტანა" + +#: src/diff.c:961 +msgid "" +"-W, --width=NUM output at most NUM (default 130) print columns" +msgstr "-W, --width=NUM მაქსიმუმ NUM (ნაგულისხმები 130) სვეტის გამოტანა" + +#: src/diff.c:962 +msgid "" +" --left-column output only the left column of common lines" +msgstr "" +" --left-column საერთო ხაზების მხოლოდ მარცხენა სვეტის ჩვენება" + +#: src/diff.c:963 +msgid " --suppress-common-lines do not output common lines" +msgstr " --suppress-commn-lines არ გამოიტანო საერთო ხაზები" + +#: src/diff.c:965 +msgid "-p, --show-c-function show which C function each change is in" +msgstr "-p, --show-c-function ცვლილებების მქონე C-ის ფუნქციების ჩვენება" + +#: src/diff.c:966 +msgid "-F, --show-function-line=RE show the most recent line matching RE" +msgstr "" +"-F, --show-function-line=RE უახლოესი ხაზის ჩვენება, რომელიც RE-ს ემთხვევა" + +#: src/diff.c:967 +msgid "" +" --label LABEL use LABEL instead of file name and timestamp\n" +" (can be repeated)" +msgstr "" +" --label LABEL ფაილის სახელისა და დროის შტამპის მაგიერ LABEL-ის " +"გამოყენება\n" +" (შეიძლება მეორდებოდეს)" + +#: src/diff.c:970 +msgid "-t, --expand-tabs expand tabs to spaces in output" +msgstr "-t, --expand-tabs გამოტანისას ტაბულაციის გამოტოვებებით შეცვლა" + +#: src/diff.c:971 +msgid "-T, --initial-tab make tabs line up by prepending a tab" +msgstr "-T, --initial-tab ტაბულაციების დალაგება მათი ქვეშმიწერით" + +#: src/diff.c:972 +msgid "" +" --tabsize=NUM tab stops every NUM (default 8) print columns" +msgstr "" +" --tabsize=NUM ტაბულაცია გაჩერდება ყოველ NUM (ნაგულიხმებად " +"8( სვეტის დაბეჭდვის შემდეგ)" + +#: src/diff.c:973 +msgid "" +" --suppress-blank-empty suppress space or tab before empty output lines" +msgstr "" +" --suppress-blank-empty გამოტოვების იგნორი გამოსატან ცარიელ ხაზებამდე" + +#: src/diff.c:974 +msgid "-l, --paginate pass output through 'pr' to paginate it" +msgstr "-l, --paginage 'pr'-ში გატარება" + +#: src/diff.c:976 +msgid "" +"-r, --recursive recursively compare any subdirectories found" +msgstr "-r, --recursive ყველა ქვესაქაღალდეში რეკურსიულად ძებნა" + +#: src/diff.c:977 +msgid " --no-dereference don't follow symbolic links" +msgstr " --no-dereference არ მიჰყვე სიმბმულებს" + +#: src/diff.c:978 +msgid "-N, --new-file treat absent files as empty" +msgstr "-N, --new-file არარსებული ფაილების, როგორც ცარიელების აღქმა" + +#: src/diff.c:979 +msgid " --unidirectional-new-file treat absent first files as empty" +msgstr "" +" --unidirectional-new-file არარსებული პირველი ფაილების, როგორც " +"ცარიელების აღქმა" + +#: src/diff.c:980 +msgid " --ignore-file-name-case ignore case when comparing file names" +msgstr "" +" --ignore-file-name-case ფაილების სახელების შედარებისას დიდი და პატარა " +"ასოების განსხვავების გამორთვა" + +#: src/diff.c:981 +msgid " --no-ignore-file-name-case consider case when comparing file names" +msgstr "" +" --ignore-file-name-case ფაილების სახელების შედარებისას დიდი და პატარა " +"ასოების განსხვავების ჩართვა" + +#: src/diff.c:982 +msgid "-x, --exclude=PAT exclude files that match PAT" +msgstr "-x, --exclude=PAT PAT-ზე დამთხვეული ფაილების იგნორი" + +#: src/diff.c:983 +msgid "" +"-X, --exclude-from=FILE exclude files that match any pattern in FILE" +msgstr "" +"-X, --exclude-from=FILE იმ ფაილების გამოტოვება, რომელიც FILE-ში " +"აღწერილ ნებისმიერ სტრიქონს ემთხვევა" + +#: src/diff.c:984 +msgid "" +"-S, --starting-file=FILE start with FILE when comparing directories" +msgstr "" +"-S, --starting-file=FILE საქაღალდეების შედარებისას FILE-ით დაწყება" + +#: src/diff.c:985 +msgid "" +" --from-file=FILE1 compare FILE1 to all operands;\n" +" FILE1 can be a directory" +msgstr "" +" --from-file=FILE1 FILE1-ის ყველა ოპერანდისთვის შედარება;\n" +" FILE1 საქაღალდე შეიძლება იყოს" + +#: src/diff.c:987 +msgid "" +" --to-file=FILE2 compare all operands to FILE2;\n" +" FILE2 can be a directory" +msgstr "" +" --to-file=FILE2 ყველა ოპერანდის FILE2-თან შედარება;\n" +" FILE2 საქაღალდეც შეიძლება იყოს" + +#: src/diff.c:990 +msgid "" +"-i, --ignore-case ignore case differences in file contents" +msgstr "" +"-I, --ignore-case ფაილის შემცველობების შედარებისას დიდი და პატარა ასოების " +"ერთნაირად აღქმა" + +#: src/diff.c:991 +msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" +msgstr "" +"-E, --ignore-tab-expansion ტაბულაციის გაფართოების გამო გამოწვეული " +"ცვლილებების იგნორი" + +#: src/diff.c:992 +msgid "-Z, --ignore-trailing-space ignore white space at line end" +msgstr "" +"-Z, --ignore-training-space ხაზების ბოლოში დამატებითი გამოტოვების იგნორი" + +#: src/diff.c:993 +msgid "" +"-b, --ignore-space-change ignore changes in the amount of white space" +msgstr "-b, --ignore-space-change გამოტოვების რაოდენობების ცვლილების იგნორი" + +#: src/diff.c:994 +msgid "-w, --ignore-all-space ignore all white space" +msgstr "-W, --ignore-all-space ყველა გამოტოვებების იგნორი" + +#: src/diff.c:995 +msgid "" +"-B, --ignore-blank-lines ignore changes where lines are all blank" +msgstr "" +"-B, --ignore-blank-lines ცვლილებების, რომელიც ცარიელ ხაზებს " +"წარმოადგენენ, იგნორი" + +#: src/diff.c:996 +msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE" +msgstr "" +"-I, --ignore-matching-lines=RE იმ ცვლილებების იგნორი, რომლის ხაზებიც " +"ემთხვევა RE-ს" + +#: src/diff.c:998 +msgid "-a, --text treat all files as text" +msgstr "-a, --text ყველა ფაილის ტექსტად აღქმა" + +#: src/diff.c:999 +msgid " --strip-trailing-cr strip trailing carriage return on input" +msgstr " --strip-trainingcr შეტანისას კარეტის გადატანის სიმბოლოს მოცილება" + +#: src/diff.c:1001 +msgid " --binary read and write data in binary mode" +msgstr " --binary მონაცემების ორობით რეჟიმში წერა/კითხვა" + +#: src/diff.c:1004 +msgid "" +"-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs" +msgstr "" +"-D, --ifdef=NAME შერწყმული ფაილის '#ifdef NAME' " +"ცვლილებების გამოტანა" + +#: src/diff.c:1005 +msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT" +msgstr "" +" --GTYPE-group-format=GFMT GTYPE-ის შეტანის ჯგუფების GFMT-ით " +"ფორმატირება" + +#: src/diff.c:1006 +msgid " --line-format=LFMT format all input lines with LFMT" +msgstr "" +" --line-format=LFMT შეყვანის ყველა ხაზის LFMT-ით ფორმატირება" + +#: src/diff.c:1007 +msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT" +msgstr "" +" --LTYPE-line-format=LFMT LTYPE შეყვანის ხაზების LFMT-ით ფორმატირება" + +#: src/diff.c:1008 +msgid "" +" These format options provide fine-grained control over the output\n" +" of diff, generalizing -D/--ifdef." +msgstr "" + +#: src/diff.c:1010 +msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'." +msgstr "" +" LTYPE შეიძლება იყოს 'old', 'new', ან 'unchanged'. GTYPE შეიძლება იყოს " +"LTYPE ან 'changed'." + +#: src/diff.c:1011 +msgid "" +" GFMT (only) may contain:\n" +" %< lines from FILE1\n" +" %> lines from FILE2\n" +" %= lines common to FILE1 and FILE2\n" +" %[-][WIDTH][.[PREC]]{doxX}LETTER printf-style spec for LETTER\n" +" LETTERs are as follows for new group, lower case for old group:\n" +" F first line number\n" +" L last line number\n" +" N number of lines = L-F+1\n" +" E F-1\n" +" M L+1\n" +" %(A=B?T:E) if A equals B then T else E" +msgstr "" + +#: src/diff.c:1023 +msgid "" +" LFMT (only) may contain:\n" +" %L contents of line\n" +" %l contents of line, excluding any trailing newline\n" +" %[-][WIDTH][.[PREC]]{doxX}n printf-style spec for input line number" +msgstr "" + +#: src/diff.c:1027 +msgid "" +" Both GFMT and LFMT may contain:\n" +" %% %\n" +" %c'C' the single character C\n" +" %c'\\OOO' the character with octal code OOO\n" +" C the character C (other characters represent themselves)" +msgstr "" +" GFMT და LFMT შეიძლება შეიცავდნენ:\n" +" %% %\n" +" %c'C' ერთ სიმბოლოს C\n" +" %c'\\OOO' სიმბოლოს რვაობითი კოდით OOO\n" +" C სიმბოლო C (სხვა სიმბოლოები თავის თავს ნიშნავენ)" + +#: src/diff.c:1033 +msgid "-d, --minimal try hard to find a smaller set of changes" +msgstr "-d, --minimal რაც შეიძლება პატარა განსხვავებების პოვნა" + +#: src/diff.c:1034 +msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix" +msgstr "" +" --horizon-lines=NUM საერთო პრეფიქსსა და სუფიქსს შორის NUM ხაზის " +"შენარჩუნება" + +#: src/diff.c:1035 +msgid "" +" --speed-large-files assume large files and many scattered small changes" +msgstr " --speed-large-files ფაილების სიდიდის წინასწარ გათვალისწინება" + +#: src/diff.c:1036 +msgid "" +" --color[=WHEN] color output; WHEN is 'never', 'always', or " +"'auto';\n" +" plain --color means --color='auto'" +msgstr "" +" --color=[WHEN] ფერად გამოტანა. WHEN შეიძლება იყოს 'never', 'always' " +"ან 'auto';\n" +" უბრალოდ --color იგივეა, რაც --color='auto'" + +#: src/diff.c:1038 +msgid "" +" --palette=PALETTE the colors to use when --color is active; PALETTE " +"is\n" +" a colon-separated list of terminfo capabilities" +msgstr "" + +#: src/diff.c:1041 +msgid " --help display this help and exit" +msgstr " --help ამ დახმარების გამოტანა და გამოსვლა" + +#: src/diff.c:1042 +msgid "-v, --version output version information and exit" +msgstr "-v, --version ვერსიის ჩვენება და გასვლა" + +#: src/diff.c:1044 +msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'." +msgstr "" +"FILES შეიძლება იყოს 'FILE1 FILE2' ან 'DIR1 DIR2' ან 'DIR FILE' ან 'FILE DIR'." + +#: src/diff.c:1045 +msgid "" +"If --from-file or --to-file is given, there are no restrictions on FILE(s)." +msgstr "" +"თუ მითითებულია --from-file ან --to-file, შეზღუდვები FILE-ებზე არ არსებობს." + +#: src/diff.c:1046 src/diff3.c:531 src/sdiff.c:219 +msgid "If a FILE is '-', read standard input." +msgstr "როცა ფაილი წარმოადგენს '-'-ს, წაკითხვა stdin-დან მოხდება." + +#: src/diff.c:1056 +#, c-format +msgid "Usage: %s [OPTION]... FILES\n" +msgstr "გამოყენება: %s [პარამეტრი].. [ფაილები]\n" + +#: src/diff.c:1057 +msgid "Compare FILES line by line." +msgstr "ფაილების ხაზ-ხაზ შედარება." + +#: src/diff.c:1094 +#, c-format +msgid "conflicting %s option value '%s'" +msgstr "პარამეტრი \"%s\" არასწორი მნიშვნელობა %s" + +#: src/diff.c:1107 +#, c-format +msgid "conflicting output style options" +msgstr "გამოტანის ურთიერთგამომრიცხავი პარამეტრები" + +#: src/diff.c:1123 +#, c-format +msgid "invalid color '%s'" +msgstr "არასწორი ფერი '%s'" + +#: src/diff.c:1197 src/diff.c:1401 +#, c-format +msgid "Only in %s: %s\n" +msgstr "მხოლოდ %s-ში: %s\n" + +#: src/diff.c:1325 +msgid "cannot compare '-' to a directory" +msgstr "'-'-ს საქაღალდეს ვერ შევადარებ" + +#: src/diff.c:1360 +msgid "-D option not supported with directories" +msgstr "პარამეტრი -D საქაღალდეებთან მუშაობისას მხარდაჭერილი არაა" + +#: src/diff.c:1369 +#, c-format +msgid "Common subdirectories: %s and %s\n" +msgstr "საერთო ქვესაქაღალდეები: %s და %s\n" + +#: src/diff.c:1411 src/diff.c:1461 +#, c-format +msgid "File %s is a %s while file %s is a %s\n" +msgstr "ფაილი %s %s-ა, როცა ფაილი %s %s-ა\n" + +#: src/diff.c:1447 +#, c-format +msgid "Symbolic links %s and %s differ\n" +msgstr "სიმბმულები %s და %s განსხვავდებიან\n" + +#: src/diff.c:1534 +#, c-format +msgid "Files %s and %s are identical\n" +msgstr "ფაილები %s და %s იდენტურებია\n" + +#. This is a proper name. See the gettext manual, section Names. +#: src/diff3.c:51 +msgid "Randy Smith" +msgstr "Randy Smith" + +#: src/diff3.c:363 +#, c-format +msgid "incompatible options" +msgstr "შეუთავსებელი პარამეტრები" + +#: src/diff3.c:403 +msgid "'-' specified for more than one input file" +msgstr "ერთზე მეტი ფაილის შესატანად მიუთითეთ '-'" + +#: src/diff3.c:445 src/diff3.c:1284 src/diff3.c:1683 src/diff3.c:1738 +#: src/sdiff.c:306 src/sdiff.c:843 src/sdiff.c:854 +msgid "read failed" +msgstr "წაკითხვის შეცდომა" + +#: src/diff3.c:478 +msgid "-A, --show-all output all changes, bracketing conflicts" +msgstr "-A, --show-all ყველა ცვლილების ჩვენება, ფრჩხილებში კონფლიქტებით)" + +#: src/diff3.c:480 +msgid "" +"-e, --ed output ed script incorporating changes\n" +" from OLDFILE to YOURFILE into MYFILE" +msgstr "" +"-e, --ed ed-ის სკრიპტის გამოტანა, რომელიც\n" +" OLDFILE-სა და YOURFILE-ს შორის ცვლილებებს MYFILE-" +"ში ჩაწერს" + +#: src/diff3.c:482 +msgid "-E, --show-overlap like -e, but bracket conflicts" +msgstr "" +"-E, --show-overlap -e -ის მსგავსად, მაგრამ ფრჩხილების კონფლიქტით" + +#: src/diff3.c:483 +msgid "" +"-3, --easy-only like -e, but incorporate only nonoverlapping " +"changes" +msgstr "" +"-3, --easy-only -e -ის მსგავსად, მაგრამ მხოლოდ არაგადაფარვადი " +"ცვლილებების ჩასმა" + +#: src/diff3.c:484 +msgid "" +"-x, --overlap-only like -e, but incorporate only overlapping changes" +msgstr "" +"-x, overlap-only -e -ის მსგავსად, მაგრამ მხოლოდ გადაფარვადი " +"ცვლილებების ჩასმა" + +#: src/diff3.c:485 +msgid "-X like -x, but bracket conflicts" +msgstr "-X -x -ის მაგვარი, მაგრამ ფრჩხილების კონფლიქტებით" + +#: src/diff3.c:486 +msgid "-i append 'w' and 'q' commands to ed scripts" +msgstr "" +"-I ed-ის სკრიპტებისთვის 'w' და 'q' ბრძანებების " +"მიწერა" + +#: src/diff3.c:488 +msgid "" +"-m, --merge output actual merged file, according to\n" +" -A if no other options are given" +msgstr "" +"-m, --merge შერწყმული ფაილის გამოტანა,\n" +" -A -ზე დაყრდნობით, თუ სხვა პარამეტრებიც არაა " +"მითითებული" + +#: src/diff3.c:491 +msgid "-a, --text treat all files as text" +msgstr "-a, --text ყველა ფაილის ტექსტად აღქმა" + +#: src/diff3.c:492 +msgid " --strip-trailing-cr strip trailing carriage return on input" +msgstr " --strip-trainingcr შეტანისას კარეტის გადატანის სიმბოლოს მოცილება" + +#: src/diff3.c:493 +msgid "-T, --initial-tab make tabs line up by prepending a tab" +msgstr "-T, --initial-tab ტაბულაციების დალაგება მათი ქვეშმიწერით" + +#: src/diff3.c:494 +msgid " --diff-program=PROGRAM use PROGRAM to compare files" +msgstr " --diff-program=PROGRAM ფაილების შესადარებლად PROGRAM-ის გამოყენება" + +#: src/diff3.c:495 +msgid "" +"-L, --label=LABEL use LABEL instead of file name\n" +" (can be repeated up to three times)" +msgstr "" +"-L, --label=LABEL ფაილის სახელის მაგიერ LABEL-ის გამოყენება\n" +" (შეიძლება განმეორდეს მაქსიმუმ სამჯერ)" + +#: src/diff3.c:498 +msgid " --help display this help and exit" +msgstr " --help ამ დახმარების გამოტანა და გამოსვლა" + +#: src/diff3.c:499 +msgid "-v, --version output version information and exit" +msgstr "-v, --version ვერსიის ჩვენება და გასვლა" + +#: src/diff3.c:508 +#, c-format +msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n" +msgstr "გამოყენება: %s [პარამეტრი].. ჩემიფაილი ძველიფაილი შენიფაილი\n" + +#: src/diff3.c:510 +msgid "Compare three files line by line." +msgstr "ფაილების ხაზ-ხაზ შედარება." + +#: src/diff3.c:520 +msgid "" +"\n" +"The default output format is a somewhat human-readable representation of\n" +"the changes.\n" +"\n" +"The -e, -E, -x, -X (and corresponding long) options cause an ed script\n" +"to be output instead of the default.\n" +"\n" +"Finally, the -m (--merge) option causes diff3 to do the merge internally\n" +"and output the actual merged file. For unusual input, this is more\n" +"robust than using ed.\n" +msgstr "" + +#: src/diff3.c:532 +msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble." +msgstr "" +"გამოსვლის სტატუსი: 0, თუ წარმატება. 1, თუ კონფლიქტია. 2, პრობლემების " +"შემთხვევაში." + +#: src/diff3.c:725 +msgid "internal error: screwup in format of diff blocks" +msgstr "შიდა შეცდომა: diff-ის ბლოკების არეული ფორმატი" + +#: src/diff3.c:1015 +#, c-format +msgid "%s: diff failed: " +msgstr "%s: diff-ის შეცდომა: " + +#: src/diff3.c:1037 +msgid "internal error: invalid diff type in process_diff" +msgstr "შიდა შეცდომა: process_diff-ში diff-ის არასწორი ტიპი" + +#: src/diff3.c:1060 +msgid "invalid diff format; invalid change separator" +msgstr "diff-ის არასწორი ფორმატი' ცვლილების არასწორი გამყოფი" + +#: src/diff3.c:1294 +msgid "invalid diff format; incomplete last line" +msgstr "diff-ის არასწორი ფორმატი; ბოლო ხაზი დაუმთავრებელია" + +#: src/diff3.c:1318 src/sdiff.c:274 src/util.c:1069 +#, c-format +msgid "subsidiary program '%s' could not be invoked" +msgstr "მიწოდებული პროგრამის ჩაწოდება შეუძლებელია ('%s')" + +#: src/diff3.c:1343 +msgid "invalid diff format; incorrect leading line chars" +msgstr "diff-ის არასწორი ფორმატი; პირველი ხაზების არასწორი სიმბოლოები" + +#: src/diff3.c:1416 +msgid "internal error: invalid diff type passed to output" +msgstr "შიდა შეცდომა: diff-ის გამოტანის არასწორი ტიპი" + +#: src/diff3.c:1685 src/diff3.c:1742 +msgid "input file shrank" +msgstr "შეტანის ფაილი დაპატარავდა" + +#: src/dir.c:154 +#, c-format +msgid "cannot compare file names '%s' and '%s'" +msgstr "ფაილის სახელების '%s' და '%s' შედარება შეუძლებელია" + +#: src/dir.c:223 +#, c-format +msgid "%s: recursive directory loop" +msgstr "%s: საქაღალდეების რეკურსიული მარყუჟი" + +#. This is a proper name. See the gettext manual, section Names. +#: src/sdiff.c:44 +msgid "Thomas Lord" +msgstr "Thomas Lord" + +#: src/sdiff.c:173 +msgid "" +"-o, --output=FILE operate interactively, sending output to FILE" +msgstr "" +"-o, --output=FILE ინტერაქტიური მუშაობა. გამოტანის FILE-ში ჩაწერა" + +#: src/sdiff.c:175 +msgid "" +"-i, --ignore-case consider upper- and lower-case to be the same" +msgstr "-I, --ignore-case დიდი და პატარა ასოების ერთნაირად აღქმა" + +#: src/sdiff.c:176 +msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" +msgstr "" +"-E, --ignore-tab-expansion ტაბულაციის გაფართოების გამო გამოწვეული " +"ცვლილებების იგნორი" + +#: src/sdiff.c:177 +msgid "-Z, --ignore-trailing-space ignore white space at line end" +msgstr "" +"-Z, --ignore-training-space ხაზების ბოლოში დამატებითი გამოტოვების იგნორი" + +#: src/sdiff.c:178 +msgid "" +"-b, --ignore-space-change ignore changes in the amount of white space" +msgstr "-b, --ignore-space-change გამოტოვების რაოდენობების ცვლილების იგნორი" + +#: src/sdiff.c:179 +msgid "-W, --ignore-all-space ignore all white space" +msgstr "-W, --ignore-all-space ყველა გამოტოვებების იგნორი" + +#: src/sdiff.c:180 +msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank" +msgstr "" +"-B, --ignore-blank-lines ცვლილებების, რომელიც ცარიელ ხაზებს " +"წარმოადგენენ, იგნორი" + +#: src/sdiff.c:181 +msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE" +msgstr "" +"-I, --ignore-matching-lines=RE იმ ცვლილებების იგნორი, რომლის ხაზებიც " +"ემთხვევა RE-ს" + +#: src/sdiff.c:182 +msgid " --strip-trailing-cr strip trailing carriage return on input" +msgstr " --strip-trainingcr შეტანისას კარეტის გადატანის სიმბოლოს მოცილება" + +#: src/sdiff.c:183 +msgid "-a, --text treat all files as text" +msgstr "-a, --text ყველა ფაილის ტექსტად აღქმა" + +#: src/sdiff.c:185 +msgid "" +"-w, --width=NUM output at most NUM (default 130) print columns" +msgstr "-W, --width=NUM მაქსიმუმ NUM (ნაგულისხმები 130) სვეტის გამოტანა" + +#: src/sdiff.c:186 +msgid "" +"-l, --left-column output only the left column of common lines" +msgstr "" +"-l, --left-column საერთო ხაზების მხოლოდ მარცხენა სვეტის ჩვენება" + +#: src/sdiff.c:187 +msgid "-s, --suppress-common-lines do not output common lines" +msgstr "-s, --suppress-commn-lines არ გამოიტანო საერთო ხაზები" + +#: src/sdiff.c:189 +msgid "-t, --expand-tabs expand tabs to spaces in output" +msgstr "-t, --expand-tabs გამოტანისას ტაბულაციის გამოტოვებებით შეცვლა" + +#: src/sdiff.c:190 +msgid "" +" --tabsize=NUM tab stops at every NUM (default 8) print columns" +msgstr "" +" --tabsize=NUM ტაბულაცია გაჩერდება ყოველ NUM (ნაგულიხმებად " +"8( სვეტის დაბეჭდვის შემდეგ)" + +#: src/sdiff.c:192 +msgid "-d, --minimal try hard to find a smaller set of changes" +msgstr "-d, --minimal რაც შეიძლება პატარა განსხვავებების პოვნა" + +#: src/sdiff.c:193 +msgid "" +"-H, --speed-large-files assume large files, many scattered small changes" +msgstr "-H, -speed-large-files ფაილების სიდიდის წინასწარ გათვალისწინება" + +#: src/sdiff.c:194 +msgid " --diff-program=PROGRAM use PROGRAM to compare files" +msgstr " --diff-program=PROGRAM ფაილების შესადარებლად PROGRAM-ის გამოყენება" + +#: src/sdiff.c:196 +msgid " --help display this help and exit" +msgstr " --help ამ დახმარების გამოტანა და გამოსვლა" + +#: src/sdiff.c:197 +msgid "-v, --version output version information and exit" +msgstr "-v, --version ვერსიის ჩვენება და გასვლა" + +#: src/sdiff.c:206 +#, c-format +msgid "Usage: %s [OPTION]... FILE1 FILE2\n" +msgstr "გამოყენება: %s [პარამეტრი].. ფაილი ფაილი1 ფაილი2\n" + +#: src/sdiff.c:208 +msgid "Side-by-side merge of differences between FILE1 and FILE2." +msgstr "ფაილ1 და ფაილ2-ს შორის განსხვავებების გვერდიგვერდ შერწყმა." + +#: src/sdiff.c:328 +msgid "cannot interactively merge standard input" +msgstr "stdin-ის ინტერაქტიური შერწყმა შეუძლებელია" + +#: src/sdiff.c:594 +msgid "both files to be compared are directories" +msgstr "ორივე შესადარებელი ფაილი სინამდვილეში საქაღალდეა" + +#: src/sdiff.c:817 +msgid "" +"ed:\tEdit then use both versions, each decorated with a header.\n" +"eb:\tEdit then use both versions.\n" +"el or e1:\tEdit then use the left version.\n" +"er or e2:\tEdit then use the right version.\n" +"e:\tDiscard both versions then edit a new one.\n" +"l or 1:\tUse the left version.\n" +"r or 2:\tUse the right version.\n" +"s:\tSilently include common lines.\n" +"v:\tVerbosely include common lines.\n" +"q:\tQuit.\n" +msgstr "" + +#: src/util.c:755 +#, c-format +msgid "unrecognized prefix: %s" +msgstr "უცნობი პრეფიქსი: %s" + +#: src/util.c:785 +#, c-format +msgid "unparsable value for --palette" +msgstr "--palette -ის გადაცემული მნიშვნელობის დამუშავება შეუძლებეია" diff --git a/po/ko.gmo b/po/ko.gmo new file mode 100644 index 0000000000000000000000000000000000000000..c1170b874ac3a54633f7e4fdd70fc4aeb958be7c GIT binary patch literal 35758 zcmcJX34C3}eeVx}q@bj2RtQ<(Kw=~Z9mTR)Wy`@k4&LI0C1$&luB01F_lmn<3`y!m z5M!HQgAD>~M+9#W(+FFDTul1<+O$oZrAyK_X-b+dd40N9P4b$&ZZGZo{$}Q!d+wEV zZBu$a9{uh)XJ*dKfBy5|X2!3*^PD{%*STkT-Uq;2&-J_nzxTdfPd(2+-}Ab;zXY7e z{k97{Z!Y*vhwpeV&$wR=UJL#Jyav4RLeJX(t^}_JzYbmnp7TD>yAqrU&H(QM7l8-C z1>hL?X>i8-J#R5M1YQUJ8#oi3Nh6hiJ*elu2@ZhX2R&~I@C2y$KLY22O&8gA=fI`h zzYMB`ZUAS4dcF-*d;bEQ1FrNv?Jra;k^6tX)bkdC&wt4CQsB=( zig>qw*z=}=p9S9qei?iR_}d^&_r3!*fA_A3OwJ4;H}%;1yJ^dhZ3*-)BILSV3bx4(wrd2&lLFFF+ z)sNRewd;L!Lj2tYUI*?2Rqi#g6+EApv%uBhQg9b|9ry$AW1!E+M4vlB<@*At?|+{^ zqQ|?aOwaECRemqXr@c||BJd)Z8&>sNLGj%k?*2Yd{Im~zEBGq-tKio_(c`kd;xqOqzm3149YKoPl7)9Mer{0w?Wl^C4;B_ z%mLpCt^%ikouJyW!@Ymn;c@UHo_`fozy1!q6#OX&t9b9e&eCr&2y1(tpz7HJs=d#F zkjVQjP~-m#5LWk^nS_^v36Lr7Jp`)XFM=0?-v!?f{wpYYy@$zj7B~g`09X&I{qsSl zx_1+J3AhPVeb2b(e+a4_KL^86pLF;NsPBIt)cE}isCK*) z;id7v6g&rP1k*IE8B}`)nQT6I9Mt=7gQCZGLDBsm!Ddj*%vANJgG_BN32K}l13v`5 z;O@Tzs@|V~YR}n=Z2K<;RnKA&k>lM5>ix5zzV}s7<-P}sPsYGs2LA&Tf4>dkq3?az z;m1JH;gjH{;0Dm}7g)#r^PuV-aqqtYPT~G1p!#_}lR)*q9~7TW1@-+aLGjJ?;CbL0 zQ1#paz6H#KzXIL|iq6|W(fNRTKMcN^`&ZokZ-I^6|30Yi{TwuOLD*?tTnwtd8KC+z z7gT=}U>&#tJQwT-)vkxYpEG_>f=_}wmw4VXo?p(N8^C)(-Ty9seiMApa&#{E9qycdMD-aB~6Pa4?95bM*0RM!B2v}2a?6R^d>8(*Mn=he;L&Kcil`M!8EAv{wFvL z&ZE*lrT_l|KF|HvDRc*T@2!jx_&x9vaQSVPZ|?%n=l%dFy1xSY;J3i5!JmNQkA~ar z{W5R{_YZ(qfWHAw1Ah#vUZ0Qgd2cSrkb3jMv%$}USAma!ki`3%d;h^Zt$ox5qLREp zQ2G80On|@4A5?{x0rma}$dGxjfud_uo9EF)?_Tgu@Gl%*+m7tw{z*{dHw_}M0q+K3 zb?@sA-;=cU-wtX#9tU9o@28-?Gq=;~zem7px&IcZ@1ECX>sbS8ocDtZz#oBg!NzWj z8IUG<$3VS*Ps-XYYeCU(ANUpUPe6vy+x011|0t+>uUcpO^;z&F_dftt|K1+k&L4ov zH?0?50`CDAf)}T)e(eNdP457xeE$s20zZ~P)`Fh~=Yih_Tfz7CS$p6{Q1$Eq)$Z?u z>c^#b*?R5=_5K^6-oHC*>-i)&ll%Rk`tvUar_3@44w^BegwP{tOxG| z8^NvMN5L1tw}O8U{wnxWa5Z>V!M5W@a2NOc-Tkz?ZGHDRdqFn9%c+}-~J_+jpU27Um%@IEVNuL9rB z{R(gpOn~B#H+|a5irscKKNtsEbuLxY&*^cMc>Q70GtVmuTtPO;8UQ!`)yG9-m%%rx645B z-6BwYmj&MiKI!g%-Qk~s@8$V_fGU5%7EA9&P~+PQo&$ayJo`<^3{d%3-EaM%9#HT1 zfEuSK!Arm|fmegy07btyKj7#OioTx%MgN1K4}KkdKR5Zg%@Nsa^Y*>GWSsQOp%zv-oKF+k#s#`!8;DlBR%Zyr#gHZ6z}Nz9Si2K_6bKU?z#?q#{K>!hxdZRq_>j9NB=<5RU(O>!%MvI zInw_l{ZA6&%R7s@1Mp|0BP3mWEEt=|{WO4hF!S$m_wf6%m!IT!AE}r0&!nG|en8q! zx{37fr29y^E+efcB}s~reH%oic$-M!wUr;sNe!e9(*2~rC28LMGU*!9g{13Ax_(O1 z9MttMr02{p`=d%^}_Dp1s%M zQx2~M-{gKT1qVo9B_&9|O}d%%>!kUl#Ux#SOnQa%D(O;^t{;)!NBRWmHPR)dCX%kd zCXJH*f^?E}kfiHM(p{uyb>ps=z#h_jNUKO6Bk6i4X$9$d((jU9COtvY^(j)8bUEo) zNN*<9k^X};MtVEx|B~X@pK5f#o%kRmgyQcb?KGl))+Y^Oc(odxQWQU(?&!+nFb@`0nmJHjKO6T%?pO5+am}@m3 zTbN2GdU`fAn#Vz}-w*`7$!u3LtlHL`^E*U!P6op>ZOgpeElH=*@H_J(UT9_DoME zySDYF>lZA$&DCNaIr`1?^+rUgPbcqAX6qaM`b5wA#D*NdpkRHXkk8c5taC*tg1(*v zUv^(&5E8J6yKA+@JrxTA4QtSs&2(iGy{#)&E?=~A&Qe~8nZi59ygk#~m&hi~Fy?BO zJdJ{#*-URBhG<>5c*%lhwZmQEXY6yn3unUN$t*<8)$FgUz!q$Wd*J*8Jey6n=QG(2 zp56yRce1C?<%~l|DhItbSXMN7G>FN2Qh86=CM);)ioKpvr!JGprtZz81H-Yc%hoW2 z>ypVnU%xCDyLk_Vdl5OvpU%`hhF5ciPJX(Mrn=HhLo+x*I?F8c;y!2SB} zWZJQWrl^L}SMHEAdJ=8P9)HQ4xeJzKQTFh9tS~BvNNvjNwuq%bs-HYJIP?Q zBkohwdwOHRc=jS}$6byb3EyRq9Pk@rsv)FjU!o_O&nH_~%vrKv_38zxNV$x>%1Iw+ zR1HUj(nh+kJ)gQeInxgdrE;~#Ghu2=2e~9dMq>#j&;nxFWVSbz?nD43`Vwuao>V>+ zaapb}nd}I966h+!usPpPT{9H{g=OKUXE-G$sjFNSmev{6mMQC?>0z@B z(hZ~R;>t&iF6A=)bhXfQIAszoR7j_+V#07s^aSbTdeaiVoyUU6`;ZLV5dO_F2_znw zPtZvt==uKKjI(GAYa8pO7u|(a$fNRG%siVi#rLP!U+wkt>g|k`IfbCc%*--9kstHI z9JelCzT9Ohzcs=v)1F6ov}3vWQZXp|&U_$XJlah10>m+ZManUhE{ z7F&a)@Kk?%yJz`Ml*&dh1aG#DoIUQvbo-(;eBqeSjZ?Fsju|nVZ*6ef+M5>7Uw!>; zYn#@tSh--{ZMWUmk-6vQ&lst;(zhJfi6Gbjk&rFzvIu?q)>PrU8%Bev!iZS$EzJ51 zqBS`ivCG$o!dY)JJstLq9U4(@Ar`9{Tum`QUFdB~X5ArIo%^xXEeoci%{%=$e)2BN@SHzaBb4@6`^g?8 z`2vp;GKnW0BN`}XgGF;;Gc1YGGSx2{v7*|03dUcN5RSws^iumzF*ay$BM8O~OIhnW zf~eIp?Tyh4$z?M04QDSG($=}^sK*C!UP8_lV2J9Yw^Xyb8`n%@DmO0lt}u}AM&~kY zI1ZS~fZVZkKAXWnMS__bVFjn@6XPR|+UR#B)0nS4se5H91@k`|1gTEsT$48?=krgQ zlGzr&Z37O&lpNe6mY9;OJH>nTbIOd2s<2=RbmMUPeQ2i^f7X=TY&~l+pYS_TY{`xm z-#kgB@1{j~YsPm(Yx(t4+Usp@_pE+OZc45m`JT+lQb81As36eLtZ3MDexl6M`@Lz*QE1Khy8aC_`muu>K3#9F|Dg6JUB~ z`pnk~XxBFjN#m}yOhA+j7O>FhPko9YEYPf9j`f~i+2qdJ^xchw>*+YB~qcxpL zi_>}%eSP93%dymj>MJC;e-I=G7xvIn&oYrEn z;>A@LTK_ggA#)E}*c?U}@&Qw-c17cA$uQF@>rEZwEo-%6ymj4(3a?>W2a97A4L{?2R5hxKAY$M3-DRFIB}}W% ztRBmqs?G9Nxt=9zkMT}htG(0OzGyOx`IL5FHp-`H6=>?|D`cy~0dz?ez zhp|VrwqbFFJ|d5zdB(JApMs$3q?es(L|!F`CzxqBtL@gZ!S}>eHIb~SI`_ue?x+l! zq)CQmfR@G$mDgzOTQB%zj1ZxH6r+Zt#rp1u4nFmnnahyWE`F-A34J=ByeA(uz2b*+ zN0>;F7oyBwP^;YQDKu%Bwis;;4+K{2xn@=g5J-wCixHA3Alxv)Vnp+TT6LXyMaC`- zWVR7^2ruikTANN1)x7qCc6u>SF0OiGOyqm=YsJ9|{yG&^!LBo=I?+WR+B1E!KwL2| z=ujmDMN$)lb@F)9xL_R;J(#KlqiwJQ`!ts{6p5^c$*MVnDzrio(6kA!(DaBcNO)#V zW0DdsKh@dQi+>M>c8cja-6hWbI4PQm|B)l6p*!!w3$wJL~){O zSH!s6XdgyUG8>pi84uHbl1>rn7T4zpz*bfTk4VI~uDW6Iil|w+b*VnSuh4>dZaEk} zGj^)6YO7iluco<0g$S2aRnu%)U2{$pHs1Fs$I7;;+?MH;l}z`79#MFbfUaYh(~9TX zig1irxotp_GOPvIS}?)eWTRAEt}(`ov;Mr?mJT=W zp(yZiy9%;ed(9lyDqBS@x(VmaxYe^pf~t4~#+A-zPD$Kgj-32-#ODpwT|YlC;;YEseSE)nJJcSk4e3-7#Oxb?XR4-Ds-a7{9cgJ=j{7R zZK+~f;$dLSYNCxDYekYUnCY&omEo|{w@+0W8@W9QP2H#w#?VFZqi*N<(c5H#d#5|_ zLsRtsF4O;PD%ly8E&ssa!R4@ymkDlL4QS`F7i3ko>|K`2*#g`{<0>$TjXXsmtDN_I69UK-)ap)0UB1hvmvyiSzd|>ATth=TG3?n%(jTYxyV(KlnOt2To`4- z7z)BhGp{3wKr~q9gh;5#x@0QZCBvLI*KPx_Gm9{s*aEN;qRyLV7g{T4e2a3}j3$R! zW{^x5Wu*sXBAYkcVpV)xDvA>rl+HXjv z?@cAW1*~kd`jW^O%+8Bx(iB$no6vS>O*Hz=dK20%%-rd^C+1mT7faKG)#M88*f_b) z0;=1Tj^Y#5rERyRkLs<-puf}W&Hje@i&r-L{3+iW$!}jOpI+8Cc?%J1BB>&aLc~4~ zM6TG=I+M*rTiqDxqmjrQ|2iDPMK*Nnn;ijmH_D=AYuMG(nO{#8VT^TgC%jXR{t+oG z2mff8(Y9uH4PVul(aA(LS#LBU8Y~a%2sY%VHhI*QFkLlqY(kKVJEjPfrn?#`#r6`0 zE!`m#-wfFJ5|d?fA>THFe^lg_q`k%NF`CgW3bnKNkTa|K<(Di|ThSL~i@h@|0W$n< zz3yLCbXpDElCly!tz?Q zV#(bzE^qNQ82t7_Aw5IXqNR8{iheh-k4mbZ1sYAF@~~~l6wE-F$0#Xh7Kk}m9%kh^ zo5JshMe?dbkxuGZw%osI&dQZ@maV>p!L(bT@P(zSFE5`pSgz1AqD?CWT6S0ggRp>L`ZE6BZQr%o}P2-hUU)5N*DE`X4UZmGo&uF~*isr^^ zR9Y;R!vx3UV|Z6L`YRfJqRd2mZfWvX#np}7O~;sp(pH{gTQa{s3Hw|5sLG6tq^Om$ z-l~e7Ba(T_1cV|C_I3QkGOkEu*F~)pXBQ>xZW!ydh-r+OFAkTBR|hkRbZtpor?f~% z4r5CjA=_|oGRx3y2)7d=!B(>d#oFi+JQZ(sCfoL@44WhtG1Gfw>#lYiEPTnK9HOS1 zM;lmv((W|L*?L1Mv(yr^xthE+>2>MM`ZRlGm;}9kGMmk0d1%6FjBtad{;dtMCv0Ej z$<)}BwT=GT+es~?CbN%jZENiHt@n9ra%Sm_#;jewV)f$X%Wi9GYI4*!l&`CqWv$8M zueEeGF#WdMZmU&j)nqSiq{0s)8DSWs&b!g9+=a_TGwpndQs`_GN^(D=@aG5rnyLuYre`y!?#tR%C(%g3cgS0jme>XA%^+2Ayp%f*txsqyc=zNZPF}v zwVd~ff=n|H^DCQRY|QpxJMMOygJwxK$qU1)hRWJ}t@+rQ>dbiZ3GuJ;DcqQ7Y|9J! z*kS0ab!3Cd*`Z~%O$&Sshv8I7x%&AHeTr9MTV>?%+@Xi3Q9`js^c4-XY&ot7(eLDX zR^6!Dh8(1E%@>U*$x*i5g-WXWKfHW{b4!7}YLJw~J}=oE&FpXDti<*Gx9EU-GBi$*Q_-&z-&Qc8fCa z!iHl$YZvr{tqdo5MbqurFBBDBIq$TVqpD` z_)PFztXnaz%54`sFsC$Fo6mbP(LHxyz}aEOF|||Ai>!aM;nXxOd}MBNcnf_DRMN{a z(lpr-KGXIoc)`n|E|WlBeyTz>otW^twN9_0en-+S5oKVM=#86BxjdpY%VRi7e|hW? zgCVq&(xHv8-5LeIJyT$Bp1O(>hKDliaIY#hV|(&U@GdskVYmC*Llq(kP~H4OXr^jK zv)3!6iQ?qUnIEg1G}D5>ZK>up{2%T>!bxKvzC0dpeKLhKHsmrZnCgT*QsRibBAXGl zg2f#H;!-}f^@cTF3i%Y9`erm;-E>8BopqgprMa$DM=%$sDp-wEg(qdseVDA*b)^eU znQT|xisivd{6y6j%!k)o{OQxCPY;@>1=Fwbo3Cw|cGcz6uAMfmZVB@`z>rU4zvJSz z_^Xn*wLy2rpGTTSaAIA1D%(zkXxbIiuez?Qm#t?_NQK#yOm`KSQ^9J8)8gL%7qFXZ z7E;{Qr4MsPsW(`cxvnddVY8||#8X+g#b1}HTe^7Zf^yfJo2J#xvs)5_)r?9D`^N9d zf7G0TnJM=^%j#$An$-(~Ys&fbQNkd>0wk8iPm6y|TPk07vmsN9@0`w9+bpviqfMHx zqBDM?qeIb+rn(h91-API3ketFQK$RNZLYPM4R7XW>$I7C!-kd&^;Tqzj-Amoo#*x@ zSd}Sc+mrKb!&`jYa<6W5WT<$2#4o+Hw>Wsv9~;Z~2H>xqcd7d}(88aFfd=R-RFMd}pbDuU|aAiwaBo z`u)=3{;|g%9NRN6dTd7>P<(c%(JyU3P#Sc(j`(9cc9iy+4^=nC_w{0EKp)vROq=}D zo^9%z=rVXvzmgrrgD3sEu_yLINmKu@Uwmk{KlTK)K48D=7axA2v|lZXy67ofJmCSg zS=#SB+wD2E-|c*c{o28w(Y=yR4U0rn$#MEWpO;*?B zht>=!`u*Z_M~aW`Rq^6OLp&Sn9}+1_`(71Kly+~jopnt!Cc@g*S*7iJVT{@K5L;=> zgQYE-9DA0@Yie%UGO0k}aQY31ff&-!pR35qLwqSqv852|FZpl*`OwMA6#^KAssG`?2dTKccRl(CJq|gvaz(kUm||XQ6`D06|o;L zY(?cMnXCc1TZ9gKkR=gAg-6UL+2Iiq&X5Ks{Nj$%$kTr5m7~QkoGc#R;TSCJ77k>1 zq&F0k;#c2FHa=^FynkBKa`JON&ImqZB}ANrhPT#()m|a#!_$2T6sG-F zl(^xCYRM|iE6p_a7+eD%?1B25j~X2bWsTgABz6<>Gpek(ZFf!Hz{55N{G6tbRcg6} z@_y-6^b&T7p$5bGZ1L%R(bpVxh_F>31}r^(lrEPBH}aR!--XFgZ7CtK4u4)MX>8L_ z%y1YT>MuQWGOT&hlYy3_Xt`f}4}8_jP>&wGZD?O>>q$xid&o| zR{JCW?O!{TsHEjGOM-7W7wuVaJu?MlW_8Zgm_>0A%7ec{=#foXj7>{jX zM#aU{BpXvIWCG&SG5Nr_sptHCOq5Uz`|dK94noYmaPtD&#OK_htuPWYGL~)IhK5Qf z23&_Ht@{nA+MP;t3VwP_I){SHDtJx9C{yVPIL%lkH7A=TKvYU}Kc%*x{IFv21gZ+b zaO_LiZT*@>X21`~mhww49~m8a5PHe}RrAc5GSO$(PR*FHJ;TNACnhSK!bvFf~r?;CCM>TYb;$`guVVZVVPEFK&Qr=a?5wIcQ&+`O}NY}g3#%>!t=;+FpM zAw|Qk$6hTxIYf(5I8!TI%~?f9%I4Y1ie@p?pTd|$G_H8j8og+qE%jQF%UTIhC6k_4 zoMoG@kGNk(0`0(P*h_qapk*gw?pb*g#pmz=M;uFpxy`6=KY%?~?w^V8TDJuIB(xip zQ>Pc5zY>jFq*E$RG>Q*syYu0K1h#n#fEei@wHln*tQ`#j;8(pu98<4N1muo~*{V7YbnU}RP8=)G90h7n8sr6(C97m%>ua$SIAH8WRsKdufi z)c1}(A;QABM@L_lTNw``F`zBXF)TruYL7o)m@Q5|9iz0~yx5J>;`eY8m?%voxrTi$ zZd!R}7%#FmLo$1R^XMa9Y@e0nXSC1C*rdA##9T2$H7Z)`%w>?2@Q~ZJ`KWDdqd131 z1nvrvr;Ve>UPbns2++Rrc-B02>CAwNupF%OFrl@6n8NgvfR&v{wU10PtE5$#9wMHp z5$DbtN;MB{PF`w$jJxCGt-*k~OHUEni0r8{4Pz%QXEB^i;<#->JHs=T;akSjm?S2q zWFmM*VA_F?#RnYM);>E){l-K*z7dwJrbDfRo2Mvcc9D-eX*r%LDu+%iI(lrQVVS7; zlO4aDwQ|91Uw;gv?K@dIF(5`mG|Oe&f6y(krW!lY9cy6|<1B^-dnooyLAwV%bmHQ}#&p6(n#jL1r$DPbyd7hk=%R5Wy;?^? zgL}s7i3)K(p-dQmP&6DK*W&0F8-+lDk->2h5wfx|IBOsFq((CbH|>*?JOSNm9W^{SPTO%e zj~*yJHcTvV+%l)u#VRR(%CL)!qS9c$og%ZD=33XBRqV$%(Q>5;2e?rldy2>o%c1T~ z*?g*bZndh%5+s~qB?3?!JRw_|gRJ((D4vH77hhr#GYmqW>L{yiN<YYAuy?nW<-gx6{9gVf2BxwWVaZR#rQu|P>4#0}_BG=kyDFVk{z5$T{r$rq#pBhp$ zxW@U|s3VeGQl#S~n&Pja8m@6XHon%+0zK`U%%5m7p#}nfp)Wst%2C0Ibf`-bFNUoM=hl&f!jWpjO9d?M9D?WF|Hh z(JFqdHZmqGd-0d~M)bz)EWnsMgpv1De`CaWvrVMdNHSEyFfzvsW1l$;r~goBg5$M_ z#NuNII9fZl=Lln|pc@@4Zro9Nd@DYUtmDv$sd>OQ95>{K;B}3#vi?v zOe%Ly0ZF%D7WT}vV3OsH_{=3L;gn3|jk5+{`}nObfshQXd1tefPK>y145&Fg=-Sns zel7MuZfH7)w9%>D@S(9cY(W2Y*&8(u*%E8+N2$tP75m22^7uUmwGQjPG1a^gwVX*E zwfrYd{pZZCkSe3q>FD(us!3g_NO)O`F=i2-(u1lv(~CTkQ&X0TR_B>#GEkUmc9Uq+`)_=-)UCkrD#*i=@3*0nusz_EFYh12vQ*x-T2CS*6M67w$fb^Sc zBic?W)Oq0y9xtC1^Ny9T^Fnbg0bva7<7Vm1N~$QD+vKr^6G;@8llioF;>>aJqjapXfn^V;jQIEAbEpxbgtTFd%`fU9tkh9_{LNDX@6J&{s z+tPOAtBTF8m)f&Sn6YsRxn#zN%giz53f+uA3sI^u;-qFh-q=9P;ic)^gtj>68dw9d zRmpCTZp;F!qk0&$^1@HX8EX>8)M;64cDC{0mzSP8f+BZ8FwH~SSKhr9uA;=k?cr)t z6mpO3BgC%_*0Z%o`$EET!H#FQ9|3=30jc#euflk8Q^fr?pIZR1OIBJ;fS(M#2#6k_ zsM)-uiNc1&Q&nP@>FCpGRG{q)&%ILIiNbuUUlv7aXoN*9ul(FPChQOyF76*7s^P+l zu^i-w3!DcNd#(e~&S#1}E%gs-vR8*#V>yb)b{pGf)4tflarw*VqV0KTpKT=)SN(%D zvV1t&X_OgiHWS&MjMfy6?|L-D!&>;>!D=3f7?ZUglcD(Z^UlW~{mO{8_F-uihla); zX8D90x4A1C=epvtJ;j5A=7W!Kb-QYruTDMLzG~;PmN$+Mmkya7%@wSIP#s|n$}Cel zm9N}d_0reOQkaoWhYy>6RAfXtJdDsZ+YQQdwazO(yIW0Q%d@j!w;wESK2mwQ+Uh3? zKhLHk!@d|`ZpsxEW{a;2hwnvaYm-!l(A6c1qXW!l0(-Q1O0EHgGu1d+=*rCpWIwaf ziLKk%*AfLfa9ul3{4jPkmuT&MbO?jgM)I|k$2J`H8ndA@93pQehbzL<+0_+j+~hAG z9VYf2?g7>!?XiCCpJ2oc3p{fY(PFza`J0v1XSPFc-bf1ki0#^yfT$cY<7&1^mNp-4 z&~}i${Zq|AnXPuPf;Gk8@B`abN3Esp%3G}Y#u1?-#E6Ph(24@ zPdEuJzRqq=_uE%Tvs63G^5d|aUF_+^JZYDUYjSg)JwF+vJs0WLg{g_qolwAU- zyEO9Bk@=Up6#-4wvULE#jrr^(xods6XHeejw5g{!+O2?dY1>f=Nwl|>n(-kUMwk)x zGP@=;-*r-f%?^VgC_hreYQDkei~Kr|3cTyRgOKvbViz4nI|hK3RqGH zzO~y(VMMUDDon)Fu%s1d#TZXFsk#w(W!_ zspS+e^kI-O72%M$@f}$f`oFeKkR%q&k;E%k;--IDWg#}|-M36|yL@XZiWWr26;y00 zvL~Z}HjYvhD6@x+B3mYAvwEQ^SkYB;_TB!M3Nd-g#wNn}9GG{9<0sDGc0S1$o;0h= z1I??d)D910P1v$X8Y^d{mqZ_$Oqa!1HHZ;9# zO`gnw6Bx?Y%yJJ)j}Mg|c&L1K$cvA(H-Gu^mF9H(*yl$|hdJW|ZN?ryz{x73I_+u% zUQ+3?U8Uz905Ys{@_(D5~ za~YJ-hqN)7fc2w?Jd_&d5cy>@wCEskbZlSKuVQ1MIdyKM?$zZc%V*fegloe9(jc2p zkLtWcWM@}3!BIDqpYAj#cJ|4mrGbsHV)j_1Rkh)%f0<;4a1{-T{zt#?;D3}YlHu{n zD#Uoji!D0I7ZtAfMnw?U35fA6iIEV;ao`9p5jLsJGg*BVJA%E6>Z=OkS|TH~wKFWs zkh168Ec01;T%&wN&8mq7dwYxo#)D}>-ybzG_Ar}}t++G2DZh*f!m2k;658HR>`&rm z%2Ly+$fliMbhOep?lOmL*#R~<0(~OI86Lj$b!t&Q^#qyp!O&Y8i%lhCZnG=@=^Zid z!Kva@Wyoa}s!I-+-r4=|RT|vBbNU=DV75}RXw2}1N*-fSp(NH-Sy-y5ng3IK3KsU5z0HTWQXTR`LERFektk-sxb5TIfQQptI{B!lCU4>JF0$oV|Jd#wxL(L& z&)FKbLbKa?>!A29v_XuxaCgp^v9GK&3*XpmcFYNoJk3d^*m+e$4n(6)MGuC4QhE5R z{Z7xdCOZD-#!19?e!h-GMKTL1=;C`5^uEe5Gdq5YhfaFY|8OA5O6aB3zc1D}4XT^D p)vld6A&GvI-^6$*U?p?Y4T)AV&4zI{_LrX8;*}oNvU8{y{y%4Vj4l8G literal 0 HcmV?d00001 diff --git a/po/ko.po b/po/ko.po new file mode 100644 index 0000000..b23554f --- /dev/null +++ b/po/ko.po @@ -0,0 +1,1439 @@ +# Korean translation of the diffutils package. +# Copyright (C) 2022 Free Software Foundation, Inc. +# This file is distributed under the same license as the diffutils package. +# Seong-ho Cho , 2022. +# +msgid "" +msgstr "" +"Project-Id-Version: GNU diffutils 3.7.41\n" +"Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n" +"POT-Creation-Date: 2023-05-21 01:51-0700\n" +"PO-Revision-Date: 2022-10-28 19:06+0900\n" +"Last-Translator: Seong-ho Cho \n" +"Language-Team: Korean \n" +"Language: ko\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Bugs: Report translation errors to the Language-Team address.\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Generator: Poedit 3.2\n" +"X-Poedit-SourceCharset: UTF-8\n" + +#: lib/argmatch.c:145 +#, c-format +msgid "invalid argument %s for %s" +msgstr "%2$s에 부적절한 인자 %1$s" + +#: lib/argmatch.c:146 +#, c-format +msgid "ambiguous argument %s for %s" +msgstr "%2$s에 모호한 인자 %1$s" + +#: lib/argmatch.c:165 lib/argmatch.h:242 +msgid "Valid arguments are:" +msgstr "적절한 인자:" + +#: lib/c-stack.c:186 +msgid "program error" +msgstr "프로그램 오류" + +#: lib/c-stack.c:187 +msgid "stack overflow" +msgstr "스택 오버플로우" + +#: lib/error.c:193 +msgid "Unknown system error" +msgstr "알 수 없는 시스템 오류" + +#: lib/file-type.c:40 +msgid "regular empty file" +msgstr "일반 빈 파일" + +#: lib/file-type.c:40 +msgid "regular file" +msgstr "일반 파일" + +#: lib/file-type.c:43 +msgid "directory" +msgstr "디렉터리" + +#: lib/file-type.c:46 +msgid "symbolic link" +msgstr "심볼릭 링크" + +#: lib/file-type.c:52 +msgid "message queue" +msgstr "메시지 큐" + +#: lib/file-type.c:55 +msgid "semaphore" +msgstr "세마포어" + +#: lib/file-type.c:58 +msgid "shared memory object" +msgstr "공유 메모리 객체" + +#: lib/file-type.c:61 +msgid "typed memory object" +msgstr "형 지정 메모리 객체" + +#: lib/file-type.c:66 +msgid "block special file" +msgstr "블록 특수 파일" + +#: lib/file-type.c:69 +msgid "character special file" +msgstr "문자 특수 파일" + +#: lib/file-type.c:72 +msgid "contiguous data" +msgstr "연속 데이터" + +#: lib/file-type.c:75 +msgid "fifo" +msgstr "FIFO" + +#: lib/file-type.c:78 +msgid "door" +msgstr "DOOR" + +#: lib/file-type.c:81 +msgid "multiplexed block special file" +msgstr "다중 블록 특수 파일" + +#: lib/file-type.c:84 +msgid "multiplexed character special file" +msgstr "다중 문자 특수 파일" + +#: lib/file-type.c:87 +msgid "multiplexed file" +msgstr "다중 파일" + +#: lib/file-type.c:90 +msgid "named file" +msgstr "이름 붙은 파일" + +#: lib/file-type.c:93 +msgid "network special file" +msgstr "네트워크 특수 파일" + +#: lib/file-type.c:96 +msgid "migrated file with data" +msgstr "데이터 포함 가져온 파일" + +#: lib/file-type.c:99 +msgid "migrated file without data" +msgstr "데이터 미포함 가져온 파일" + +#: lib/file-type.c:102 +msgid "port" +msgstr "포트" + +#: lib/file-type.c:105 +msgid "socket" +msgstr "소켓" + +#: lib/file-type.c:108 +msgid "whiteout" +msgstr "화이트아웃" + +#: lib/file-type.c:110 +msgid "weird file" +msgstr "이상한 파일" + +#: lib/getopt.c:278 +#, c-format +msgid "%s: option '%s%s' is ambiguous\n" +msgstr "%s: '%s%s' 옵션이 모호합니다\n" + +#: lib/getopt.c:284 +#, c-format +msgid "%s: option '%s%s' is ambiguous; possibilities:" +msgstr "%s: '%s%s' 옵션이 모호합니다. 가능한 옵션:" + +#: lib/getopt.c:319 +#, c-format +msgid "%s: unrecognized option '%s%s'\n" +msgstr "%s: 알 수 없는 '%s%s' 옵션\n" + +#: lib/getopt.c:345 +#, c-format +msgid "%s: option '%s%s' doesn't allow an argument\n" +msgstr "%s: '%s%s' 옵션은 인자 값을 받지 않습니다\n" + +#: lib/getopt.c:360 +#, c-format +msgid "%s: option '%s%s' requires an argument\n" +msgstr "%s: '%s%s' 옵션은 인자 값이 필요합니다\n" + +#: lib/getopt.c:621 +#, c-format +msgid "%s: invalid option -- '%c'\n" +msgstr "%s: 부적절한 옵션 -- '%c'\n" + +#: lib/getopt.c:636 lib/getopt.c:682 +#, c-format +msgid "%s: option requires an argument -- '%c'\n" +msgstr "%s: 옵션에 인자 값이 필요합니다 -- '%c'\n" + +#. TRANSLATORS: +#. Get translations for open and closing quotation marks. +#. The message catalog should translate "`" to a left +#. quotation mark suitable for the locale, and similarly for +#. "'". For example, a French Unicode local should translate +#. these to U+00AB (LEFT-POINTING DOUBLE ANGLE +#. QUOTATION MARK), and U+00BB (RIGHT-POINTING DOUBLE ANGLE +#. QUOTATION MARK), respectively. +#. +#. If the catalog has no translation, we will try to +#. use Unicode U+2018 (LEFT SINGLE QUOTATION MARK) and +#. Unicode U+2019 (RIGHT SINGLE QUOTATION MARK). If the +#. current locale is not Unicode, locale_quoting_style +#. will quote 'like this', and clocale_quoting_style will +#. quote "like this". You should always include translations +#. for "`" and "'" even if U+2018 and U+2019 are appropriate +#. for your locale. +#. +#. If you don't know what to put here, please see +#. +#. and use glyphs suitable for your language. +#: lib/quotearg.c:354 +msgid "`" +msgstr "`" + +#: lib/quotearg.c:355 +msgid "'" +msgstr "'" + +#: lib/regcomp.c:122 +msgid "Success" +msgstr "성공" + +#: lib/regcomp.c:125 +msgid "No match" +msgstr "일치 항목 없음" + +#: lib/regcomp.c:128 +msgid "Invalid regular expression" +msgstr "잘못된 정규 표현식" + +#: lib/regcomp.c:131 +msgid "Invalid collation character" +msgstr "잘못된 조합 문자" + +#: lib/regcomp.c:134 +msgid "Invalid character class name" +msgstr "잘못된 문자 클래스 이름" + +#: lib/regcomp.c:137 +msgid "Trailing backslash" +msgstr "ë°± 슬래시 문자가 따라옴" + +#: lib/regcomp.c:140 +msgid "Invalid back reference" +msgstr "잘못된 후위 참조" + +#: lib/regcomp.c:143 +msgid "Unmatched [, [^, [:, [., or [=" +msgstr "일치하지 않는 [, [^, [:, [., [=" + +#: lib/regcomp.c:146 +msgid "Unmatched ( or \\(" +msgstr "일치하지 않는 ( 또는 \\( 괄호" + +#: lib/regcomp.c:149 +msgid "Unmatched \\{" +msgstr "일치하지 않는 \\{ 괄호" + +#: lib/regcomp.c:152 +msgid "Invalid content of \\{\\}" +msgstr "잘못된 \\{\\} 내용" + +#: lib/regcomp.c:155 +msgid "Invalid range end" +msgstr "잘못된 범위 끝" + +#: lib/regcomp.c:158 +msgid "Memory exhausted" +msgstr "메모리가 바닥남" + +#: lib/regcomp.c:161 +msgid "Invalid preceding regular expression" +msgstr "잘못된 선행 정규 표현식" + +#: lib/regcomp.c:164 +msgid "Premature end of regular expression" +msgstr "정규 표현식 마감 표현이 앞서있습니다" + +#: lib/regcomp.c:167 +msgid "Regular expression too big" +msgstr "정규 표현식이 너무 깁니다" + +#: lib/regcomp.c:170 +msgid "Unmatched ) or \\)" +msgstr "일치하지 않는 ) 또는 \\) 괄호" + +#: lib/regcomp.c:650 +msgid "No previous regular expression" +msgstr "이전 정규 표현식 없음" + +#: lib/xalloc-die.c:34 +msgid "memory exhausted" +msgstr "메모리가 바닥남" + +#: lib/xfreopen.c:34 +msgid "stdin" +msgstr "표준입력" + +#: lib/xfreopen.c:35 +msgid "stdout" +msgstr "표준출력" + +#: lib/xfreopen.c:36 +msgid "stderr" +msgstr "표준오류" + +#: lib/xfreopen.c:37 +msgid "unknown stream" +msgstr "알 수 없는 스트림" + +#: lib/xfreopen.c:38 +#, c-format +msgid "failed to reopen %s with mode %s" +msgstr "%2$s 모드로 %1$s 다시 열기 실패" + +#: lib/xstdopen.c:34 +#, c-format +msgid "standard file descriptors" +msgstr "표준 파일 서술자" + +#: lib/version-etc.c:73 +#, c-format +msgid "Packaged by %s (%s)\n" +msgstr "%s(%s)(으)로 패키지 구성함\n" + +#: lib/version-etc.c:76 +#, c-format +msgid "Packaged by %s\n" +msgstr "%s(으)로 패키지 구성함\n" + +#. TRANSLATORS: Translate "(C)" to the copyright symbol +#. (C-in-a-circle), if this symbol is available in the user's +#. locale. Otherwise, do not translate "(C)"; leave it as-is. +#: lib/version-etc.c:83 +msgid "(C)" +msgstr "ⓒ" + +#. TRANSLATORS: The %s placeholder is the web address of the GPL license. +#: lib/version-etc.c:88 +#, c-format +msgid "" +"License GPLv3+: GNU GPL version 3 or later <%s>.\n" +"This is free software: you are free to change and redistribute it.\n" +"There is NO WARRANTY, to the extent permitted by law.\n" +msgstr "" +"GPLv3+ 라이선스: GNU GPL 버전 3 이상 <%s>.\n" +"이 프로그램은 자유 소프트웨어입니다: 자유롭게 바꾸고 재배포할 수 있습니다.\n" +"법률이 허용하는 모든 범위내의 보증은 없습니다.\n" + +#. TRANSLATORS: %s denotes an author name. +#: lib/version-etc.c:105 +#, c-format +msgid "Written by %s.\n" +msgstr "%s이(가) 작성함.\n" + +#. TRANSLATORS: Each %s denotes an author name. +#: lib/version-etc.c:109 +#, c-format +msgid "Written by %s and %s.\n" +msgstr "%s와(ê³¼) %s이(가) 작성함.\n" + +#. TRANSLATORS: Each %s denotes an author name. +#: lib/version-etc.c:113 +#, c-format +msgid "Written by %s, %s, and %s.\n" +msgstr "%s와(ê³¼) %s, %s이(가) 작성함.\n" + +#. TRANSLATORS: Each %s denotes an author name. +#. You can use line breaks, estimating that each author name occupies +#. ca. 16 screen columns and that a screen line has ca. 80 columns. +#: lib/version-etc.c:120 +#, c-format +msgid "" +"Written by %s, %s, %s,\n" +"and %s.\n" +msgstr "" +"%s와(ê³¼) %s, %s,\n" +"%s이(가) 작성함.\n" + +#. TRANSLATORS: Each %s denotes an author name. +#. You can use line breaks, estimating that each author name occupies +#. ca. 16 screen columns and that a screen line has ca. 80 columns. +#: lib/version-etc.c:127 +#, c-format +msgid "" +"Written by %s, %s, %s,\n" +"%s, and %s.\n" +msgstr "" +"%s와(ê³¼) %s, %s,\n" +"%s, %s이(가) 작성함.\n" +"\n" + +#. TRANSLATORS: Each %s denotes an author name. +#. You can use line breaks, estimating that each author name occupies +#. ca. 16 screen columns and that a screen line has ca. 80 columns. +#: lib/version-etc.c:134 +#, c-format +msgid "" +"Written by %s, %s, %s,\n" +"%s, %s, and %s.\n" +msgstr "" +"%s와(ê³¼) %s, %s,\n" +"%s, %s, %s이(가) 작성함.\n" + +#. TRANSLATORS: Each %s denotes an author name. +#. You can use line breaks, estimating that each author name occupies +#. ca. 16 screen columns and that a screen line has ca. 80 columns. +#: lib/version-etc.c:142 +#, c-format +msgid "" +"Written by %s, %s, %s,\n" +"%s, %s, %s, and %s.\n" +msgstr "" +"%s와(ê³¼) %s, %s,\n" +"%s, %s, %s,\n" +"%s이(가) 작성함.\n" + +#. TRANSLATORS: Each %s denotes an author name. +#. You can use line breaks, estimating that each author name occupies +#. ca. 16 screen columns and that a screen line has ca. 80 columns. +#: lib/version-etc.c:150 +#, c-format +msgid "" +"Written by %s, %s, %s,\n" +"%s, %s, %s, %s,\n" +"and %s.\n" +msgstr "" +"%s와(ê³¼) %s, %s,\n" +"%s, %s, %s,\n" +"%s, %s이(가) 작성함.\n" + +#. TRANSLATORS: Each %s denotes an author name. +#. You can use line breaks, estimating that each author name occupies +#. ca. 16 screen columns and that a screen line has ca. 80 columns. +#: lib/version-etc.c:159 +#, c-format +msgid "" +"Written by %s, %s, %s,\n" +"%s, %s, %s, %s,\n" +"%s, and %s.\n" +msgstr "" +"%s와(ê³¼) %s, %s,\n" +"%s, %s, %s,\n" +"%s, %s, %s이(가) 작성함.\n" + +#. TRANSLATORS: Each %s denotes an author name. +#. You can use line breaks, estimating that each author name occupies +#. ca. 16 screen columns and that a screen line has ca. 80 columns. +#: lib/version-etc.c:170 +#, c-format +msgid "" +"Written by %s, %s, %s,\n" +"%s, %s, %s, %s,\n" +"%s, %s, and others.\n" +msgstr "" +"%s, %s, %s,\n" +"%s, %s, %s,\n" +"%s, %s, %s\n" +"외 다수가 작성함.\n" + +#. TRANSLATORS: The placeholder indicates the bug-reporting address +#. for this package. Please add _another line_ saying +#. "Report translation bugs to <...>\n" with the address for translation +#. bugs (typically your translation team's web or email address). +#: lib/version-etc.c:249 +#, c-format +msgid "Report bugs to: %s\n" +msgstr "버그 ë³´ê³  주소: %s\n" + +#: lib/version-etc.c:251 +#, c-format +msgid "Report %s bugs to: %s\n" +msgstr "%s 버그 ë³´ê³  주소: %s\n" + +#: lib/version-etc.c:255 lib/version-etc.c:257 +#, c-format +msgid "%s home page: <%s>\n" +msgstr "%s 홈페이지: <%s>\n" + +#: lib/version-etc.c:260 +#, c-format +msgid "General help using GNU software: <%s>\n" +msgstr "GNU 소프트웨어 활용 일반 도움말: <%s>\n" + +#: src/analyze.c:455 src/diff.c:1478 +#, c-format +msgid "Files %s and %s differ\n" +msgstr "파일 %s와(ê³¼) %s이(가) 다릅니다\n" + +#: src/analyze.c:456 +#, c-format +msgid "Binary files %s and %s differ\n" +msgstr "이진 파일 %s와(ê³¼) %s이(가) 다릅니다\n" + +#: src/analyze.c:707 src/diff3.c:1457 src/util.c:1354 +msgid "No newline at end of file" +msgstr "파일 끝 개행 문자 없음" + +#. This is a proper name. See the gettext manual, section Names. +#: src/cmp.c:45 +msgid "Torbjorn Granlund" +msgstr "Torbjorn Granlund" + +#. This is a proper name. See the gettext manual, section Names. +#: src/cmp.c:46 +msgid "David MacKenzie" +msgstr "David MacKenzie" + +#: src/cmp.c:124 src/diff.c:939 src/diff3.c:465 src/sdiff.c:159 +#, c-format +msgid "Try '%s --help' for more information." +msgstr "자세한 내용은 '%s --help'를 입력하십시오." + +#: src/cmp.c:142 +#, c-format +msgid "invalid --ignore-initial value '%s'" +msgstr "부적절한 --ignore-initial 값 '%s'" + +#: src/cmp.c:152 +#, c-format +msgid "options -l and -s are incompatible" +msgstr "-l 옵션과 -s 옵션의 호환성이 없습니다" + +#: src/cmp.c:160 src/diff.c:947 src/diff3.c:472 src/sdiff.c:167 src/sdiff.c:314 +#: src/sdiff.c:321 src/sdiff.c:873 src/util.c:952 src/util.c:1052 +#: src/util.c:1059 +msgid "write failed" +msgstr "쓰기 실패" + +#: src/cmp.c:162 src/diff.c:949 src/diff.c:1543 src/diff3.c:474 src/sdiff.c:169 +msgid "standard output" +msgstr "표준 출력" + +#: src/cmp.c:166 +msgid "-b, --print-bytes print differing bytes" +msgstr "-b, --print-bytes 비교 바이트 수를 출력합니다" + +#: src/cmp.c:167 +msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs" +msgstr "" +"-i, --ignore-initial=<시작> 두 입력에서 처음 <시작> 바이트 만큼 건너뜀" + +#: src/cmp.c:168 +msgid "" +"-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n" +" first SKIP2 bytes of FILE2" +msgstr "" +"-i, --ignore-initial=<시작1>:<시작2> <파일1>에서 처음 <시작1> 바이트만큼,\n" +" <파일2>에서 처음 <시작2> 바이트만큼 ê±´" +"너뜀" + +#: src/cmp.c:170 +msgid "" +"-l, --verbose output byte numbers and differing byte values" +msgstr "-l, --verbose 바이트 수와 비교 바이트 값 출력" + +#: src/cmp.c:171 +msgid "-n, --bytes=LIMIT compare at most LIMIT bytes" +msgstr "-n, --bytes=<제한> 최대 <제한>값 바이트만큼 비교" + +#: src/cmp.c:172 +msgid "-s, --quiet, --silent suppress all normal output" +msgstr "-s, --quiet, --silent 모든 일반 내용 출력을 끕니다" + +#: src/cmp.c:173 +msgid " --help display this help and exit" +msgstr " --help 이 도움말을 출력하고 나갑니다" + +#: src/cmp.c:174 +msgid "-v, --version output version information and exit" +msgstr "-v, --version 버전 정보를 출력하고 나갑니다" + +#: src/cmp.c:183 +#, c-format +msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n" +msgstr "사용법: %s [<옵션>]... <파일1> [<파일2> [<시작1> [<시작2>]]]\n" + +#: src/cmp.c:185 +msgid "Compare two files byte by byte." +msgstr "두 파일을 바이트 별로 비교합니다." + +#: src/cmp.c:187 +msgid "" +"The optional SKIP1 and SKIP2 specify the number of bytes to skip\n" +"at the beginning of each file (zero by default)." +msgstr "" +"<시작1>와 <시작2> 옵션 값은 각 파일 시작 위치로부터\n" +"\"건너뛰어\" 시작할 바이트 수를 지정합니다 (기본값 0)" + +#: src/cmp.c:190 src/diff.c:1059 src/diff3.c:512 src/sdiff.c:210 +msgid "" +"Mandatory arguments to long options are mandatory for short options too.\n" +msgstr "긴 옵션 버전의 필수 인자는 짧은 옵션 버전에도 해당합니다.\n" + +#: src/cmp.c:196 +msgid "" +"SKIP values may be followed by the following multiplicative suffixes:\n" +"kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" +"GB 1,000,000,000, G 1,073,741,824, and so on for T, P, E, Z, Y." +msgstr "" +"<시작>값은 다음 배수 접미사(단위)가 따라옵니다:\n" +"kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" +"GB 1,000,000,000, G 1,073,741,824, T, P, E, Z, Y." + +#: src/cmp.c:199 +msgid "If a FILE is '-' or missing, read standard input." +msgstr "<파일> 값이 '-' 또는 없다면, 표준 입력을 읽습니다." + +#: src/cmp.c:200 src/diff.c:1047 src/sdiff.c:220 +msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble." +msgstr "종료 상태는 입력이 동일하면 0, 다르면 1, 문제 발생시 2입니다." + +#: src/cmp.c:247 +#, c-format +msgid "invalid --bytes value '%s'" +msgstr "부적절한 --bytes 값 '%s'" + +#: src/cmp.c:273 src/diff.c:857 src/diff3.c:368 src/sdiff.c:564 +#, c-format +msgid "missing operand after '%s'" +msgstr "'%s' 다음 피연산자가 빠졌습니다" + +#: src/cmp.c:285 src/diff.c:859 src/diff3.c:370 src/sdiff.c:566 +#, c-format +msgid "extra operand '%s'" +msgstr "추가 피연산자 '%s'" + +#: src/cmp.c:521 +#, c-format +msgid "%s %s differ: byte %s, line %s\n" +msgstr "%s %s 다름: %s바이트, %s행\n" + +#: src/cmp.c:537 +#, c-format +msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n" +msgstr "%s %s 다름: %s바이트, %s행에 %3o %s %3o %s\n" + +#: src/cmp.c:594 +#, c-format +msgid "cmp: EOF on %s which is empty\n" +msgstr "cmp: 빈 %s에 EOF\n" + +#: src/cmp.c:608 +#, c-format +msgid "cmp: EOF on %s after byte %s, line %s\n" +msgstr "cmp: %s, %s바이트, %s행 이후 EOF\n" + +#: src/cmp.c:609 +#, c-format +msgid "cmp: EOF on %s after byte %s, in line %s\n" +msgstr "cmp: %s, %s바이트 이후, %s행에 EOF\n" + +#: src/cmp.c:615 +#, c-format +msgid "cmp: EOF on %s after byte %s\n" +msgstr "cmp: %s, %s바이트 이후 EOF\n" + +#. This is a proper name. See the gettext manual, section Names. +#: src/diff.c:50 +msgid "Paul Eggert" +msgstr "Paul Eggert" + +#. This is a proper name. See the gettext manual, section Names. +#: src/diff.c:51 +msgid "Mike Haertel" +msgstr "Mike Haertel" + +#. This is a proper name. See the gettext manual, section Names. +#: src/diff.c:52 +msgid "David Hayes" +msgstr "David Hayes" + +#. This is a proper name. See the gettext manual, section Names. +#: src/diff.c:53 +msgid "Richard Stallman" +msgstr "Richard Stallman" + +#. This is a proper name. See the gettext manual, section Names. +#: src/diff.c:54 +msgid "Len Tower" +msgstr "Len Tower" + +#: src/diff.c:365 +#, c-format +msgid "invalid context length '%s'" +msgstr "부적절한 컨텍스트 길이 '%s'" + +#: src/diff.c:487 +#, c-format +msgid "pagination not supported on this host" +msgstr "이 호스트에서는 페이지 분할을 지원하지 않습니다" + +#: src/diff.c:502 src/diff3.c:348 +#, c-format +msgid "too many file label options" +msgstr "파일 레이블 옵션이 너무 많습니다" + +#: src/diff.c:579 +#, c-format +msgid "invalid width '%s'" +msgstr "잘못된 너비 '%s'" + +#: src/diff.c:583 +msgid "conflicting width options" +msgstr "너비 옵션 중복" + +#: src/diff.c:608 +#, c-format +msgid "invalid horizon length '%s'" +msgstr "잘못된 수평 길이 '%s'" + +#: src/diff.c:664 +#, c-format +msgid "invalid tabsize '%s'" +msgstr "잘못된 탭 길이 '%s'" + +#: src/diff.c:668 +msgid "conflicting tabsize options" +msgstr "탭 길이 옵션 중복" + +#: src/diff.c:834 +msgid "--from-file and --to-file both specified" +msgstr "--from-fileê³¼ --to-file을 둘 다 지정했습니다" + +#: src/diff.c:953 +msgid " --normal output a normal diff (the default)" +msgstr " --normal 일반 비교 결과를 출력합니다 (기본 동작)" + +#: src/diff.c:954 +msgid "-q, --brief report only when files differ" +msgstr "-q, --brief 파일이 다를 때만 ë³´ê³ " + +#: src/diff.c:955 +msgid "-s, --report-identical-files report when two files are the same" +msgstr "-s, --report-identical-files 두 파일이 같을 때 ë³´ê³ " + +#: src/diff.c:956 +msgid "" +"-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context" +msgstr "" +"-c, -C <숫자>, --context[=<숫자>] 복제 컨텍스트 <숫자>(기본값 3)행 만큼 출" +"ë ¥" + +#: src/diff.c:957 +msgid "" +"-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context" +msgstr "" +"-u, -U <숫자>, --unified[=<숫자>] 단일 컨텍스트 <숫자>(기본값 3)행 만큼 출" +"ë ¥" + +#: src/diff.c:958 +msgid "-e, --ed output an ed script" +msgstr "-e, --ed ed 스크립트 출력" + +#: src/diff.c:959 +msgid "-n, --rcs output an RCS format diff" +msgstr "-n, --rcs RCS 형식 비교 내용 출력" + +#: src/diff.c:960 +msgid "-y, --side-by-side output in two columns" +msgstr "-y, --side-by-side 두 컬럼으로 출력" + +#: src/diff.c:961 +msgid "" +"-W, --width=NUM output at most NUM (default 130) print columns" +msgstr "" +"-W, --width=<숫자> 최대 <숫자>(기본값 130) 출력 컬럼만큼 출력" + +#: src/diff.c:962 +msgid "" +" --left-column output only the left column of common lines" +msgstr " --left-column 공통 행의 좌측 컬럼만 출력" + +#: src/diff.c:963 +msgid " --suppress-common-lines do not output common lines" +msgstr " --suppress-common-lines 공통 행은 출력하지 않음" + +#: src/diff.c:965 +msgid "-p, --show-c-function show which C function each change is in" +msgstr "-p, --show-c-function 어떤 C 함수가 바뀌었는지 표시" + +#: src/diff.c:966 +msgid "-F, --show-function-line=RE show the most recent line matching RE" +msgstr "-F, --show-function-line= 와 일치하는 가장 최근 행 표시" + +#: src/diff.c:967 +msgid "" +" --label LABEL use LABEL instead of file name and timestamp\n" +" (can be repeated)" +msgstr "" +" --label <레이블> 파일 이름과 타임스탬프 대신 <레이블> 활용\n" +" (반복할 수 있음)" + +#: src/diff.c:970 +msgid "-t, --expand-tabs expand tabs to spaces in output" +msgstr "-t, --expand-tabs 출력시 탭을 공백 칸으로 변환" + +#: src/diff.c:971 +msgid "-T, --initial-tab make tabs line up by prepending a tab" +msgstr "-T, --initial-tab 여러 탭을 탭인 것처럼 줄을 맞춤" + +#: src/diff.c:972 +msgid "" +" --tabsize=NUM tab stops every NUM (default 8) print columns" +msgstr "" +" --tabsize=<숫자> 모든 <숫자>(기본값 8) 출력 컬럼마다 탭 배치" + +#: src/diff.c:973 +msgid "" +" --suppress-blank-empty suppress space or tab before empty output lines" +msgstr " --suppress-blank-empty 빈 출력행 앞의 공백문자 내지는 탭 무시" + +#: src/diff.c:974 +msgid "-l, --paginate pass output through 'pr' to paginate it" +msgstr "-l, --paginate 'pr'로 페이지 분할하여 출력 건너뛰기" + +#: src/diff.c:976 +msgid "" +"-r, --recursive recursively compare any subdirectories found" +msgstr "-r, --recursive 하위 디렉터리를 찾으면 재귀적으로 비교" + +#: src/diff.c:977 +msgid " --no-dereference don't follow symbolic links" +msgstr " --no-dereference 심볼릭 링크를 따라가지 않음" + +#: src/diff.c:978 +msgid "-N, --new-file treat absent files as empty" +msgstr "-N, --new-file 누락 파일을 빈 파일로 취급" + +#: src/diff.c:979 +msgid " --unidirectional-new-file treat absent first files as empty" +msgstr " --unidirectional-new-file 빠진 첫 줄은 빈 줄로 취급" + +#: src/diff.c:980 +msgid " --ignore-file-name-case ignore case when comparing file names" +msgstr " --ignore-file-name-case 파일 이름 비교시 대소문자 무시" + +#: src/diff.c:981 +msgid " --no-ignore-file-name-case consider case when comparing file names" +msgstr " --no-ignore-file-name-case 파일 이름 비교시 대소문자 구분" + +#: src/diff.c:982 +msgid "-x, --exclude=PAT exclude files that match PAT" +msgstr "-x, --exclude=<패턴> <패턴>에 일치하는 파일 제외" + +#: src/diff.c:983 +msgid "" +"-X, --exclude-from=FILE exclude files that match any pattern in FILE" +msgstr "-X, --exclude-from=<파일> <파일> 패턴에 일치하는 파일 제외" + +#: src/diff.c:984 +msgid "" +"-S, --starting-file=FILE start with FILE when comparing directories" +msgstr "-S, --starting-file=<파일> 디렉터리를 비교할 때 <파일>부터 시작" + +#: src/diff.c:985 +msgid "" +" --from-file=FILE1 compare FILE1 to all operands;\n" +" FILE1 can be a directory" +msgstr "" +" --from-file=<파일1> <파일1>을 모든 비교 대상과 비교\n" +" <파일1>은 디렉터리일 수 있음" + +#: src/diff.c:987 +msgid "" +" --to-file=FILE2 compare all operands to FILE2;\n" +" FILE2 can be a directory" +msgstr "" +" --to-file=<파일2> 모든 대상을 <파일2>와 비교\n" +" <파일2>는 디렉터리일 수 있음" + +#: src/diff.c:990 +msgid "" +"-i, --ignore-case ignore case differences in file contents" +msgstr "-i, --ignore-case 파일 내용의 대소문자 차이 무시" + +#: src/diff.c:991 +msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" +msgstr "-E, --ignore-tab-expansion 탭 변환 바뀜 무시" + +#: src/diff.c:992 +msgid "-Z, --ignore-trailing-space ignore white space at line end" +msgstr "-Z, --ignore-trailing-space 행 끝 공백 문자 무시" + +#: src/diff.c:993 +msgid "" +"-b, --ignore-space-change ignore changes in the amount of white space" +msgstr "-b, --ignore-space-change 대량의 공백 문자 바뀜 무시" + +#: src/diff.c:994 +msgid "-w, --ignore-all-space ignore all white space" +msgstr "-W, --ignore-all-space 모든 공백 문자 무시" + +#: src/diff.c:995 +msgid "" +"-B, --ignore-blank-lines ignore changes where lines are all blank" +msgstr "-B, --ignore-blank-lines 빈 행의 바뀜 무시" + +#: src/diff.c:996 +msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE" +msgstr "" +"-I, --ignore-matching-lines= 정규 표현식 에 일치하는 모든 바뀐 행 무" +"시" + +#: src/diff.c:998 +msgid "-a, --text treat all files as text" +msgstr "-a, --text 모든 파일을 텍스트 파일로 취급" + +#: src/diff.c:999 +msgid " --strip-trailing-cr strip trailing carriage return on input" +msgstr "" +" --strip-trailing-cr 입력에 뒤따라오는 캐리지 리턴 문자를 잘라냅니" +"다" + +#: src/diff.c:1001 +msgid " --binary read and write data in binary mode" +msgstr " --binary 이진 모드로 데이터를 읽고 씁니다" + +#: src/diff.c:1004 +msgid "" +"-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs" +msgstr "" +"-D, --ifdef=<이름> '#ifdef <이름>' 비교로 병합한 파일을 출력합니" +"다" + +#: src/diff.c:1005 +msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT" +msgstr " --GTYPE-group-format= GTYPE 입력 그룹을 로 서식 지정" + +#: src/diff.c:1006 +msgid " --line-format=LFMT format all input lines with LFMT" +msgstr " --line-format= 모든 입력 행을 로 서식 지정" + +#: src/diff.c:1007 +msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT" +msgstr " --LTYPE-line-format= LTYPE 입력 행을 로 서식 지정" + +#: src/diff.c:1008 +msgid "" +" These format options provide fine-grained control over the output\n" +" of diff, generalizing -D/--ifdef." +msgstr "" +" 이 서식 옵션으로 -D/--ifdef를 일반화하여 diff 출력을 세밀하게\n" +" 조정할 수 있습니다." + +#: src/diff.c:1010 +msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'." +msgstr "" +" 은 'old', 'new', 'unchanged'입니다. 은 또는 " +"'changed'입니다." + +#: src/diff.c:1011 +msgid "" +" GFMT (only) may contain:\n" +" %< lines from FILE1\n" +" %> lines from FILE2\n" +" %= lines common to FILE1 and FILE2\n" +" %[-][WIDTH][.[PREC]]{doxX}LETTER printf-style spec for LETTER\n" +" LETTERs are as follows for new group, lower case for old group:\n" +" F first line number\n" +" L last line number\n" +" N number of lines = L-F+1\n" +" E F-1\n" +" M L+1\n" +" %(A=B?T:E) if A equals B then T else E" +msgstr "" +" GFMT (의 경우에만) 해당:\n" +" %< <파일1>의 행\n" +" %> <파일2>의 행\n" +" %= <파일1>ê³¼ <파일2>의 공통행\n" +" %[-][WIDTH][.[PREC]]{doxX}<문자> <문자>에 대한 printf 방식 명세\n" +" <문자>는 다음의 경우 new 그룹, 소문자는 old 그룹에 해당합니다:\n" +" F 첫 행 번호\n" +" L 마지막 행 번호\n" +" N 행 갯수 = L-F+1\n" +" E F-1\n" +" M L+1\n" +" %(A=B?T:E) A와 B가 같으면 T, 아니면 E" + +#: src/diff.c:1023 +msgid "" +" LFMT (only) may contain:\n" +" %L contents of line\n" +" %l contents of line, excluding any trailing newline\n" +" %[-][WIDTH][.[PREC]]{doxX}n printf-style spec for input line number" +msgstr "" +" LFMT (의 경우에만) 해당:\n" +" %L 행 내용\n" +" %l 개행 문자를 제외한 행 내용\n" +" %[-][WIDTH][.[PREC]]{doxX}n 입력 행 번호의 printf 방식 명세" + +#: src/diff.c:1027 +msgid "" +" Both GFMT and LFMT may contain:\n" +" %% %\n" +" %c'C' the single character C\n" +" %c'\\OOO' the character with octal code OOO\n" +" C the character C (other characters represent themselves)" +msgstr "" +" GFMT와 LFMT 모두에 해당:\n" +" %% %\n" +" %c'C' 단일 문자 C\n" +" %c'\\OOO' 문자와 8진수 코드 OOO\n" +" C 문자 C (다른 문자는 문자 ê·¸ 자체를 나타냄)" + +#: src/diff.c:1033 +msgid "-d, --minimal try hard to find a smaller set of changes" +msgstr "-d, --minimal 적게 바뀐 내용을 최대한 검색" + +#: src/diff.c:1034 +msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix" +msgstr " --horizon-lines=<숫자> 공통 접두, 접미부의 <숫자> 행은 유지합니다" + +#: src/diff.c:1035 +msgid "" +" --speed-large-files assume large files and many scattered small changes" +msgstr " --speed-large-files 여기저기 작게 바뀐 내용이 많은 큰 파일로 간주" + +#: src/diff.c:1036 +msgid "" +" --color[=WHEN] color output; WHEN is 'never', 'always', or " +"'auto';\n" +" plain --color means --color='auto'" +msgstr "" +" --color[=<시기>] 색상 출력합니다. <시기> 값은 'never', 'always', " +"'auto' 중 하나입니다\n" +" --color 옵션은 --color='auto'를 의미합니다" + +#: src/diff.c:1038 +msgid "" +" --palette=PALETTE the colors to use when --color is active; PALETTE " +"is\n" +" a colon-separated list of terminfo capabilities" +msgstr "" +" --palette=<팔레트> --color 옵션을 지정했을 때 사용할 색상입니다. <팔레" +"트>는\n" +" terminfo에서 사용할 수 있는 콜론 구분 목록입니다" + +#: src/diff.c:1041 +msgid " --help display this help and exit" +msgstr " --help 이 도움말을 출력하고 나갑니다" + +#: src/diff.c:1042 +msgid "-v, --version output version information and exit" +msgstr "-v, --version 버전 정보를 출력하고 나갑니다" + +#: src/diff.c:1044 +msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'." +msgstr "" +"<파일>에는 '<파일1> <파일2>', '<디렉터리1> <디렉터리2>', '<디렉터리> <파일" +">', '<파일> <디렉터리>'가 해당합니다." + +#: src/diff.c:1045 +msgid "" +"If --from-file or --to-file is given, there are no restrictions on FILE(s)." +msgstr "" +"--from-file 또는 --to-file 옵션을 지정할 때 <파일> 값의 제한은 없습니다." + +#: src/diff.c:1046 src/diff3.c:531 src/sdiff.c:219 +msgid "If a FILE is '-', read standard input." +msgstr "<파일> 값이 '-' 문자라면, 표준 입력을 읽습니다." + +#: src/diff.c:1056 +#, c-format +msgid "Usage: %s [OPTION]... FILES\n" +msgstr "사용법: %s [<옵션>]... <파일>\n" + +#: src/diff.c:1057 +msgid "Compare FILES line by line." +msgstr "<파일>을 행 별로 비교합니다." + +#: src/diff.c:1094 +#, c-format +msgid "conflicting %s option value '%s'" +msgstr "%s 옵션의 '%s'값이 중복됩니다" + +#: src/diff.c:1107 +#, c-format +msgid "conflicting output style options" +msgstr "출력 방식 옵션이 중복됩니다" + +#: src/diff.c:1123 +#, c-format +msgid "invalid color '%s'" +msgstr "부적절한 색상값 '%s'" + +#: src/diff.c:1197 src/diff.c:1401 +#, c-format +msgid "Only in %s: %s\n" +msgstr "%s에만: %s\n" + +#: src/diff.c:1325 +msgid "cannot compare '-' to a directory" +msgstr "'-'을 디렉터리와 비교할 수 없습니다" + +#: src/diff.c:1360 +msgid "-D option not supported with directories" +msgstr "-D 옵션은 디렉터리에 지원하지 않습니다" + +#: src/diff.c:1369 +#, c-format +msgid "Common subdirectories: %s and %s\n" +msgstr "공통 하위 디렉터리: %s와(ê³¼) %s\n" + +#: src/diff.c:1411 src/diff.c:1461 +#, c-format +msgid "File %s is a %s while file %s is a %s\n" +msgstr "파일 %3$s이(가) %4$s인 반면, 파일 %1$s은(는) %2$s입니다.\n" + +#: src/diff.c:1447 +#, c-format +msgid "Symbolic links %s and %s differ\n" +msgstr "심볼릭 링크 %s와(ê³¼) %s이(가) 다릅니다\n" + +#: src/diff.c:1534 +#, c-format +msgid "Files %s and %s are identical\n" +msgstr "%s 파일과 %s 파일은 동일합니다\n" + +#. This is a proper name. See the gettext manual, section Names. +#: src/diff3.c:51 +msgid "Randy Smith" +msgstr "Randy Smith" + +#: src/diff3.c:363 +#, c-format +msgid "incompatible options" +msgstr "비호환 옵션" + +#: src/diff3.c:403 +msgid "'-' specified for more than one input file" +msgstr "하나 이상의 입력 파일에 대해 '-' 문자를 지정했습니다" + +#: src/diff3.c:445 src/diff3.c:1284 src/diff3.c:1683 src/diff3.c:1738 +#: src/sdiff.c:306 src/sdiff.c:843 src/sdiff.c:854 +msgid "read failed" +msgstr "읽기 실패" + +#: src/diff3.c:478 +msgid "-A, --show-all output all changes, bracketing conflicts" +msgstr "-A, --show-all 모든 바뀐 내용 및 괄호 문제 출력" + +#: src/diff3.c:480 +msgid "" +"-e, --ed output ed script incorporating changes\n" +" from OLDFILE to YOURFILE into MYFILE" +msgstr "" +"-e, --ed 변경 내용이 들어간 ed 스크립트를 출력합니다\n" +" <이전파일>에서 <네파일>ê³¼ 비교 후 <내파일>로 " +"병합" + +#: src/diff3.c:482 +msgid "-E, --show-overlap like -e, but bracket conflicts" +msgstr "-E, --show-overlap -e와 유사하나 괄호 문제를 검사합니다" + +#: src/diff3.c:483 +msgid "" +"-3, --easy-only like -e, but incorporate only nonoverlapping " +"changes" +msgstr "-3, --easy-only -e와 유사하나, 비중복 변경만 확인합니다" + +#: src/diff3.c:484 +msgid "" +"-x, --overlap-only like -e, but incorporate only overlapping changes" +msgstr "-x, --overlap-only -e와 유사하나, 중복 변경만 확인합니다" + +#: src/diff3.c:485 +msgid "-X like -x, but bracket conflicts" +msgstr "-X -x와 유사하나, 괄호 문제를 검사합니다" + +#: src/diff3.c:486 +msgid "-i append 'w' and 'q' commands to ed scripts" +msgstr "" +"-i ed 스크립트에 'w'명령과 'q'명령을 덧붙입니다" + +#: src/diff3.c:488 +msgid "" +"-m, --merge output actual merged file, according to\n" +" -A if no other options are given" +msgstr "" +"-m, --merge 실제 병합한 파일을 출력합니다. 다른 옵션이\n" +" 없으면 -A 옵션의 동작을 따릅니다" + +#: src/diff3.c:491 +msgid "-a, --text treat all files as text" +msgstr "-a, --text 모든 파일을 텍스트 파일로 취급" + +#: src/diff3.c:492 +msgid " --strip-trailing-cr strip trailing carriage return on input" +msgstr "" +" --strip-trailing-cr 입력에 뒤따라오는 캐리지 리턴 문자 잘라내기" + +#: src/diff3.c:493 +msgid "-T, --initial-tab make tabs line up by prepending a tab" +msgstr "-T, --initial-tab 여러 탭을 탭인 것처럼 줄을 맞춤" + +#: src/diff3.c:494 +msgid " --diff-program=PROGRAM use PROGRAM to compare files" +msgstr " --diff-program=<프로그램> <프로그램>으로 파일을 비교합니다" + +#: src/diff3.c:495 +msgid "" +"-L, --label=LABEL use LABEL instead of file name\n" +" (can be repeated up to three times)" +msgstr "" +"-L, --label=<레이블> 파일 이름 대신 <레이블>을 활용합니다\n" +" (3번 까지 반복할 수 있음)" + +#: src/diff3.c:498 +msgid " --help display this help and exit" +msgstr " --help 이 도움말을 출력하고 나갑니다" + +#: src/diff3.c:499 +msgid "-v, --version output version information and exit" +msgstr "-v, --version 버전 정보를 출력하고 나갑니다" + +#: src/diff3.c:508 +#, c-format +msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n" +msgstr "사용법: %s [<옵션>]... <내파일> <이전파일> <네파일>\n" + +#: src/diff3.c:510 +msgid "Compare three files line by line." +msgstr "세 파일을 행 단위로 비교합니다." + +#: src/diff3.c:520 +msgid "" +"\n" +"The default output format is a somewhat human-readable representation of\n" +"the changes.\n" +"\n" +"The -e, -E, -x, -X (and corresponding long) options cause an ed script\n" +"to be output instead of the default.\n" +"\n" +"Finally, the -m (--merge) option causes diff3 to do the merge internally\n" +"and output the actual merged file. For unusual input, this is more\n" +"robust than using ed.\n" +msgstr "" +"\n" +"기본 출력 형식은 바뀐 내용의 가독성 표현 형태입니다.\n" +"\n" +"-e, -E, -x, -E (그리고 관련 긴) 옵션은 기본 출력 대신 ed 스크립트로\n" +"출력합니다.\n" +"\n" +"마지막으로 -m(--merge) 옵션은 내부적으로 diff3에서 병합을 진행하게\n" +"하며, 실제 병함 파일로 출력합니다. 일반적이지 않은 입력은 ed를 \n" +"활용하면 더 확실하게 동작합니다.\n" +"\n" + +#: src/diff3.c:532 +msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble." +msgstr "종료 상태는 성공시 0, 중복시 1, 문제 발생시 2입니다." + +#: src/diff3.c:725 +msgid "internal error: screwup in format of diff blocks" +msgstr "내부 오류: 비교 블록 형식이 꼬였습니다" + +#: src/diff3.c:1015 +#, c-format +msgid "%s: diff failed: " +msgstr "%s: 비교 실패: " + +#: src/diff3.c:1037 +msgid "internal error: invalid diff type in process_diff" +msgstr "내부 오류: process_diff에 부적절한 diff 형식" + +#: src/diff3.c:1060 +msgid "invalid diff format; invalid change separator" +msgstr "부적절한 diff 형식: 부적절한 바뀜 구분자" + +#: src/diff3.c:1294 +msgid "invalid diff format; incomplete last line" +msgstr "부적절한 diff 형식: 온전치 않은 마지막 행" + +#: src/diff3.c:1318 src/sdiff.c:274 src/util.c:1069 +#, c-format +msgid "subsidiary program '%s' could not be invoked" +msgstr "'%s' ë³´ì¡° 프로그램을 실행할 수 없습니다" + +#: src/diff3.c:1343 +msgid "invalid diff format; incorrect leading line chars" +msgstr "부적절한 diff 형식: 올바르지 않은 줄 처음 문자" + +#: src/diff3.c:1416 +msgid "internal error: invalid diff type passed to output" +msgstr "내부 오류: 부적절한 diff 형식을 출력으로 전달했습니다" + +#: src/diff3.c:1685 src/diff3.c:1742 +msgid "input file shrank" +msgstr "입력 파일 크기가 줄어듦" + +#: src/dir.c:154 +#, c-format +msgid "cannot compare file names '%s' and '%s'" +msgstr "'%s' 파일과 '%s' 파일을 비교할 수 없습니다" + +#: src/dir.c:223 +#, c-format +msgid "%s: recursive directory loop" +msgstr "%s: 디렉터리 순환이 재귀상태입니다" + +#. This is a proper name. See the gettext manual, section Names. +#: src/sdiff.c:44 +msgid "Thomas Lord" +msgstr "Thomas Lord" + +#: src/sdiff.c:173 +msgid "" +"-o, --output=FILE operate interactively, sending output to FILE" +msgstr "-o, --output=<파일> 대화식 처리 후, <파일>로 출력 보내기" + +#: src/sdiff.c:175 +msgid "" +"-i, --ignore-case consider upper- and lower-case to be the same" +msgstr "-i, --ignore-case 대소문자를 동일한 문자로 간주" + +#: src/sdiff.c:176 +msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" +msgstr "-E, --ignore-tab-expansion 탭 변환 바뀜 무시" + +#: src/sdiff.c:177 +msgid "-Z, --ignore-trailing-space ignore white space at line end" +msgstr "-Z, --ignore-trailing-space 행 끝 공백 문자 무시" + +#: src/sdiff.c:178 +msgid "" +"-b, --ignore-space-change ignore changes in the amount of white space" +msgstr "-b, --ignore-space-change 대량의 공백 문자 바뀜 무시" + +#: src/sdiff.c:179 +msgid "-W, --ignore-all-space ignore all white space" +msgstr "-W, --ignore-all-space 모든 공백 문자 무시" + +#: src/sdiff.c:180 +msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank" +msgstr "-B, --ignore-blank-lines 빈 행의 바뀜 무시" + +#: src/sdiff.c:181 +msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE" +msgstr "" +"-I, --ignore-matching-lines= 정규 표현식 에 일치하는 모든 바뀐 행 무" +"시" + +#: src/sdiff.c:182 +msgid " --strip-trailing-cr strip trailing carriage return on input" +msgstr "" +" --strip-trailing-cr 입력에 뒤따라오는 캐리지 리턴 문자를 잘라냅니다" + +#: src/sdiff.c:183 +msgid "-a, --text treat all files as text" +msgstr "-a, --text 모든 파일을 텍스트 파일로 취급" + +#: src/sdiff.c:185 +msgid "" +"-w, --width=NUM output at most NUM (default 130) print columns" +msgstr "" +"-w, --width=<숫자> 최대 <숫자>(기본값 130) 출력 컬럼만큼 출력" + +#: src/sdiff.c:186 +msgid "" +"-l, --left-column output only the left column of common lines" +msgstr "-l, --left-column 공통 행의 좌측 컬럼만 출력" + +#: src/sdiff.c:187 +msgid "-s, --suppress-common-lines do not output common lines" +msgstr "-s, --suppress-common-lines 공통 행은 출력하지 않음" + +#: src/sdiff.c:189 +msgid "-t, --expand-tabs expand tabs to spaces in output" +msgstr "-t, --expand-tabs 출력시 탭을 공백 칸으로 변환" + +#: src/sdiff.c:190 +msgid "" +" --tabsize=NUM tab stops at every NUM (default 8) print columns" +msgstr "" +" --tabsize=<숫자> 모든 <숫자>(기본값 8) 출력 컬럼마다 탭 배치" + +#: src/sdiff.c:192 +msgid "-d, --minimal try hard to find a smaller set of changes" +msgstr "-d, --minimal 적게 바뀐 내용을 최대한 검색" + +#: src/sdiff.c:193 +msgid "" +"-H, --speed-large-files assume large files, many scattered small changes" +msgstr "" +"-H, --speed-large-files 여기저기 작게 바뀐 내용이 많은 큰 파일로 간주" + +#: src/sdiff.c:194 +msgid " --diff-program=PROGRAM use PROGRAM to compare files" +msgstr " --diff-program=<프로그램> <프로그램>으로 파일을 비교합니다" + +#: src/sdiff.c:196 +msgid " --help display this help and exit" +msgstr " --help 이 도움말을 출력하고 나갑니다" + +#: src/sdiff.c:197 +msgid "-v, --version output version information and exit" +msgstr "-v, --version 버전 정보를 출력하고 나갑니다" + +#: src/sdiff.c:206 +#, c-format +msgid "Usage: %s [OPTION]... FILE1 FILE2\n" +msgstr "사용법: %s [<옵션>]... <파일1> <파일2>\n" + +#: src/sdiff.c:208 +msgid "Side-by-side merge of differences between FILE1 and FILE2." +msgstr "<파일1>ê³¼ <파일2> 사이의 차이를 나란히 합칩니다." + +#: src/sdiff.c:328 +msgid "cannot interactively merge standard input" +msgstr "표준 입력 내용을 대화식 병합할 수 없습니다" + +#: src/sdiff.c:594 +msgid "both files to be compared are directories" +msgstr "비교할 두 파일이 디렉터리입니다" + +#: src/sdiff.c:817 +msgid "" +"ed:\tEdit then use both versions, each decorated with a header.\n" +"eb:\tEdit then use both versions.\n" +"el or e1:\tEdit then use the left version.\n" +"er or e2:\tEdit then use the right version.\n" +"e:\tDiscard both versions then edit a new one.\n" +"l or 1:\tUse the left version.\n" +"r or 2:\tUse the right version.\n" +"s:\tSilently include common lines.\n" +"v:\tVerbosely include common lines.\n" +"q:\tQuit.\n" +msgstr "" +"ed:\t편집 후 헤더를 덧붙인 양쪽 버전을 모두 사용합니다.\n" +"eb:\t편집 후 양쪽 버전을 모두 사용합니다.\n" +"el or e1:\t편집 후 좌측 버전을 사용합니다.\n" +"er or e2:\t편집 후 우측 버전을 사용합니다.\n" +"e:\t두 버전을 무시하고 새 버전을 편집합니다.\n" +"l or 1:\t좌측 버전을 사용합니다.\n" +"r or 2:\t우측 버전을 사용합니다.\n" +"s:\t공통 파일을 조용히 넣습니다.\n" +"v:\t비교 항목을 확인하면서 공통 파일을 넣습니다.\n" +"q:\t끝냅니다.\n" + +#: src/util.c:755 +#, c-format +msgid "unrecognized prefix: %s" +msgstr "알 수 없는 접두사: %s" + +#: src/util.c:785 +#, c-format +msgid "unparsable value for --palette" +msgstr "--palette에 해석할 수 없는 문자" diff --git a/po/lv.po b/po/lv.po index c9b9dd1..bdaba7c 100644 --- a/po/lv.po +++ b/po/lv.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: diffutils-3.3-pre1\n" "Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n" -"POT-Creation-Date: 2021-08-01 18:56-0700\n" +"POT-Creation-Date: 2023-05-21 01:51-0700\n" "PO-Revision-Date: 2014-04-20 15:28+0300\n" "Last-Translator: Rihards Prieditis \n" "Language-Team: Latvian \n" @@ -21,30 +21,30 @@ msgstr "" "2);\n" "X-Generator: Lokalize 1.5\n" -#: lib/argmatch.c:132 +#: lib/argmatch.c:145 #, fuzzy, c-format msgid "invalid argument %s for %s" msgstr "nederÄ«gs %s%s arguments “%s”" -#: lib/argmatch.c:133 +#: lib/argmatch.c:146 #, c-format msgid "ambiguous argument %s for %s" msgstr "" -#: lib/argmatch.c:152 lib/argmatch.h:223 +#: lib/argmatch.c:165 lib/argmatch.h:242 #, fuzzy msgid "Valid arguments are:" msgstr "nederÄ«gs %s%s arguments “%s”" -#: lib/c-stack.c:187 +#: lib/c-stack.c:186 msgid "program error" msgstr "programmas kļūda" -#: lib/c-stack.c:188 +#: lib/c-stack.c:187 msgid "stack overflow" msgstr "steka pārplÅ«Å¡ana" -#: lib/error.c:195 +#: lib/error.c:193 msgid "Unknown system error" msgstr "Nezināma sistēmas kļūda" @@ -204,84 +204,84 @@ msgstr "%s: opcijai nepiecieÅ¡ams arguments -- “%c”\n" #. If you don't know what to put here, please see #. #. and use glyphs suitable for your language. -#: lib/quotearg.c:355 +#: lib/quotearg.c:354 msgid "`" msgstr "“" -#: lib/quotearg.c:356 +#: lib/quotearg.c:355 msgid "'" msgstr "”" -#: lib/regcomp.c:135 +#: lib/regcomp.c:122 msgid "Success" msgstr "VeiksmÄ«gi" -#: lib/regcomp.c:138 +#: lib/regcomp.c:125 msgid "No match" msgstr "Nav atbilstÄ«bu" -#: lib/regcomp.c:141 +#: lib/regcomp.c:128 msgid "Invalid regular expression" msgstr "NederÄ«ga regulārā izteiksme" -#: lib/regcomp.c:144 +#: lib/regcomp.c:131 msgid "Invalid collation character" msgstr "NederÄ«ga salÄ«dzināmā rakstzÄ«me" -#: lib/regcomp.c:147 +#: lib/regcomp.c:134 msgid "Invalid character class name" msgstr "NederÄ«gs rakstzÄ«mju klases nosaukums" -#: lib/regcomp.c:150 +#: lib/regcomp.c:137 msgid "Trailing backslash" msgstr "Sekojošās otrādās slÄ«psvÄ«tras" -#: lib/regcomp.c:153 +#: lib/regcomp.c:140 msgid "Invalid back reference" msgstr "NederÄ«ga atpakaļ norāde" -#: lib/regcomp.c:156 +#: lib/regcomp.c:143 #, fuzzy msgid "Unmatched [, [^, [:, [., or [=" msgstr "NesakrÄ«toÅ¡s [ vai [^" -#: lib/regcomp.c:159 +#: lib/regcomp.c:146 msgid "Unmatched ( or \\(" msgstr "NesakrÄ«toÅ¡s ( vai \\(" -#: lib/regcomp.c:162 +#: lib/regcomp.c:149 msgid "Unmatched \\{" msgstr "NesakrÄ«toÅ¡s \\{" -#: lib/regcomp.c:165 +#: lib/regcomp.c:152 msgid "Invalid content of \\{\\}" msgstr "NederÄ«gs \\{\\} saturs" -#: lib/regcomp.c:168 +#: lib/regcomp.c:155 msgid "Invalid range end" msgstr "NederÄ«gas apgabala beigas" -#: lib/regcomp.c:171 +#: lib/regcomp.c:158 msgid "Memory exhausted" msgstr "Atmiņa izsmelta" -#: lib/regcomp.c:174 +#: lib/regcomp.c:161 msgid "Invalid preceding regular expression" msgstr "NederÄ«ga iepriekšējā regulārā izteiksme" -#: lib/regcomp.c:177 +#: lib/regcomp.c:164 msgid "Premature end of regular expression" msgstr "PriekÅ¡laicÄ«gas beigas regulārai izteiksmei" -#: lib/regcomp.c:180 +#: lib/regcomp.c:167 msgid "Regular expression too big" msgstr "Pārāk liela regulārā izteiksme" -#: lib/regcomp.c:183 +#: lib/regcomp.c:170 msgid "Unmatched ) or \\)" msgstr "Nav atbilstoÅ¡a ) vai \\)" -#: lib/regcomp.c:676 +#: lib/regcomp.c:650 msgid "No previous regular expression" msgstr "Nav iepriekšējas regulārās izteiksmes" @@ -483,17 +483,17 @@ msgstr "" "Vispārēja palÄ«dzÄ«ba, izmantojot GNU programmatÅ«ru: \n" -#: src/analyze.c:454 src/diff.c:1406 +#: src/analyze.c:455 src/diff.c:1478 #, c-format msgid "Files %s and %s differ\n" msgstr "Datnes %s un %s atÅ¡Ä·iras\n" -#: src/analyze.c:455 +#: src/analyze.c:456 #, c-format msgid "Binary files %s and %s differ\n" msgstr "Binārās datnes %s un %s atÅ¡Ä·iras\n" -#: src/analyze.c:706 src/diff3.c:1470 src/util.c:1254 +#: src/analyze.c:707 src/diff3.c:1457 src/util.c:1354 msgid "No newline at end of file" msgstr "Nav jaunu rindu datnes beigās" @@ -507,40 +507,41 @@ msgstr "Torbjorn Granlund" msgid "David MacKenzie" msgstr "David MacKenzie" -#: src/cmp.c:120 src/diff.c:879 src/diff3.c:467 src/sdiff.c:160 +#: src/cmp.c:124 src/diff.c:939 src/diff3.c:465 src/sdiff.c:159 #, c-format msgid "Try '%s --help' for more information." msgstr "Lietojiet “%s --help”, lai uzzinātu vairāk." -#: src/cmp.c:138 +#: src/cmp.c:142 #, c-format msgid "invalid --ignore-initial value '%s'" msgstr "nederÄ«ga --ignore-initial vērtÄ«ba “%s”" -#: src/cmp.c:148 +#: src/cmp.c:152 #, c-format msgid "options -l and -s are incompatible" msgstr "opcijas -l un -s nav savstarpēji saderÄ«gas" -#: src/cmp.c:156 src/diff.c:887 src/diff3.c:474 src/sdiff.c:168 src/sdiff.c:316 -#: src/sdiff.c:323 src/sdiff.c:876 src/util.c:852 src/util.c:952 src/util.c:959 +#: src/cmp.c:160 src/diff.c:947 src/diff3.c:472 src/sdiff.c:167 src/sdiff.c:314 +#: src/sdiff.c:321 src/sdiff.c:873 src/util.c:952 src/util.c:1052 +#: src/util.c:1059 msgid "write failed" msgstr "rakstÄ«Å¡ana neizdevās" -#: src/cmp.c:158 src/diff.c:889 src/diff.c:1471 src/diff3.c:476 src/sdiff.c:170 +#: src/cmp.c:162 src/diff.c:949 src/diff.c:1543 src/diff3.c:474 src/sdiff.c:169 msgid "standard output" msgstr "standarta izvade" -#: src/cmp.c:162 +#: src/cmp.c:166 msgid "-b, --print-bytes print differing bytes" msgstr "-b, --print-bytes drukāt atÅ¡Ä·irÄ«gos baitus" -#: src/cmp.c:163 +#: src/cmp.c:167 msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs" msgstr "" "-i, --ignore-initial=IZLAIST izlaists pirmos IZLAIŽAMOS baitus ievadē" -#: src/cmp.c:164 +#: src/cmp.c:168 msgid "" "-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n" " first SKIP2 bytes of FILE2" @@ -549,38 +550,38 @@ msgstr "" "baitus\n" " un pirmos IZLAIST2 DATNE2 baitus" -#: src/cmp.c:166 +#: src/cmp.c:170 msgid "" "-l, --verbose output byte numbers and differing byte values" msgstr "" "-l, --verbose izvadÄ«t baitu numurus un atÅ¡Ä·irÄ«go baitu vērtÄ«bas" -#: src/cmp.c:167 +#: src/cmp.c:171 msgid "-n, --bytes=LIMIT compare at most LIMIT bytes" msgstr "-n, --bytes=ROBEŽA salÄ«dzināt lÄ«dz ROBEŽAs baitiem" -#: src/cmp.c:168 +#: src/cmp.c:172 msgid "-s, --quiet, --silent suppress all normal output" msgstr "-s, --quiet, --silent nomākt visu parasto izvadi" -#: src/cmp.c:169 +#: src/cmp.c:173 msgid " --help display this help and exit" msgstr " --help parādÄ«t Å¡o palÄ«dzÄ«bu un iziet" -#: src/cmp.c:170 +#: src/cmp.c:174 msgid "-v, --version output version information and exit" msgstr "-v, --version izvada informāciju par versiju un iziet" -#: src/cmp.c:179 +#: src/cmp.c:183 #, c-format msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n" msgstr "IzmantoÅ¡ana: %s [OPCIJAS]... DATNE1 [DATNE2 [IZLAIST1 [IZLAIST2]]]\n" -#: src/cmp.c:181 +#: src/cmp.c:185 msgid "Compare two files byte by byte." msgstr "SalÄ«dzināt divas datnes baitu pa baitam." -#: src/cmp.c:183 +#: src/cmp.c:187 msgid "" "The optional SKIP1 and SKIP2 specify the number of bytes to skip\n" "at the beginning of each file (zero by default)." @@ -588,13 +589,13 @@ msgstr "" "Neobligātie IZLAIST1 un IZLAIST2 norāda, cik baitus izlaist\n" "katras datnes sākumā (pēc noklusējuma nulle)." -#: src/cmp.c:186 src/diff.c:999 src/diff3.c:514 src/sdiff.c:211 +#: src/cmp.c:190 src/diff.c:1059 src/diff3.c:512 src/sdiff.c:210 msgid "" "Mandatory arguments to long options are mandatory for short options too.\n" msgstr "" "Parametri, kas ir obligāti garajām opcijām, ir obligāti arÄ« Ä«sajām opcijām.\n" -#: src/cmp.c:192 +#: src/cmp.c:196 msgid "" "SKIP values may be followed by the following multiplicative suffixes:\n" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" @@ -604,191 +605,191 @@ msgstr "" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" "GB 1,000,000,000, G 1,073,741,824, un tā tālāk T, P, E, Z, Y." -#: src/cmp.c:195 +#: src/cmp.c:199 msgid "If a FILE is '-' or missing, read standard input." msgstr "Ja DATNEI ir “-” vai tā nav, tad lasÄ«t standarta ievadi." -#: src/cmp.c:196 src/diff.c:987 src/sdiff.c:221 +#: src/cmp.c:200 src/diff.c:1047 src/sdiff.c:220 msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble." msgstr "" "Izejas status ir 0, ja ievads ir tāds pats, 1, ja tas ir atÅ¡Ä·irÄ«gs, 2, ja ir " "nepatikÅ¡anas." -#: src/cmp.c:243 +#: src/cmp.c:247 #, c-format msgid "invalid --bytes value '%s'" msgstr "nederÄ«ga --bytes vērtÄ«ba “%s”" -#: src/cmp.c:269 src/diff.c:797 src/diff3.c:361 src/sdiff.c:567 +#: src/cmp.c:273 src/diff.c:857 src/diff3.c:368 src/sdiff.c:564 #, c-format msgid "missing operand after '%s'" msgstr "trÅ«kst operands pēc “%s”" -#: src/cmp.c:281 src/diff.c:799 src/diff3.c:363 src/sdiff.c:569 +#: src/cmp.c:285 src/diff.c:859 src/diff3.c:370 src/sdiff.c:566 #, c-format msgid "extra operand '%s'" msgstr "papildu operands “%s”" -#: src/cmp.c:507 +#: src/cmp.c:521 #, c-format msgid "%s %s differ: byte %s, line %s\n" msgstr "%s %s atÅ¡Ä·iras: baits %s, rinda %s\n" -#: src/cmp.c:523 +#: src/cmp.c:537 #, c-format msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n" msgstr "%s %s atÅ¡Ä·iras: baits %s, rinda %s ir %3o %s %3o %s\n" -#: src/cmp.c:580 +#: src/cmp.c:594 #, fuzzy, c-format msgid "cmp: EOF on %s which is empty\n" msgstr "cmp: EOF uz %s\n" -#: src/cmp.c:594 +#: src/cmp.c:608 #, fuzzy, c-format msgid "cmp: EOF on %s after byte %s, line %s\n" msgstr "%s %s atÅ¡Ä·iras: baits %s, rinda %s\n" -#: src/cmp.c:595 +#: src/cmp.c:609 #, fuzzy, c-format msgid "cmp: EOF on %s after byte %s, in line %s\n" msgstr "%s %s atÅ¡Ä·iras: baits %s, rinda %s\n" -#: src/cmp.c:601 +#: src/cmp.c:615 #, fuzzy, c-format msgid "cmp: EOF on %s after byte %s\n" msgstr "cmp: EOF uz %s\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:51 +#: src/diff.c:50 msgid "Paul Eggert" msgstr "Paul Eggert" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:52 +#: src/diff.c:51 msgid "Mike Haertel" msgstr "Mike Haertel" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:53 +#: src/diff.c:52 msgid "David Hayes" msgstr "David Hayes" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:54 +#: src/diff.c:53 msgid "Richard Stallman" msgstr "Richard Stallman" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:55 +#: src/diff.c:54 msgid "Len Tower" msgstr "Len Tower" -#: src/diff.c:355 +#: src/diff.c:365 #, c-format msgid "invalid context length '%s'" msgstr "nederÄ«gs konteksta garums “%s”" -#: src/diff.c:438 +#: src/diff.c:487 #, c-format msgid "pagination not supported on this host" msgstr "lapoÅ¡ana netiek atbalstÄ«ta uz Å¡Ä« resursdatora" -#: src/diff.c:453 src/diff3.c:341 +#: src/diff.c:502 src/diff3.c:348 #, c-format msgid "too many file label options" msgstr "pārāk daudz datnes etiÄ·eÅ¡u opciju" -#: src/diff.c:530 +#: src/diff.c:579 #, c-format msgid "invalid width '%s'" msgstr "nederÄ«gs platums “%s”" -#: src/diff.c:534 +#: src/diff.c:583 msgid "conflicting width options" msgstr "konfliktējoÅ¡as platuma opcijas" -#: src/diff.c:559 +#: src/diff.c:608 #, c-format msgid "invalid horizon length '%s'" msgstr "nederÄ«gs horizontālais garums “%s”" -#: src/diff.c:615 +#: src/diff.c:664 #, c-format msgid "invalid tabsize '%s'" msgstr "nederÄ«gs tabulācijas izmērs “%s”" -#: src/diff.c:619 +#: src/diff.c:668 msgid "conflicting tabsize options" msgstr "konfliktējoÅ¡as tabulācijas izmēru opcijas" -#: src/diff.c:774 +#: src/diff.c:834 msgid "--from-file and --to-file both specified" msgstr "--from-file un --to-file abi norādÄ«ti" -#: src/diff.c:893 +#: src/diff.c:953 msgid " --normal output a normal diff (the default)" msgstr " --normal izvada parastu diff (noklusējuma)" -#: src/diff.c:894 +#: src/diff.c:954 msgid "-q, --brief report only when files differ" msgstr "-q, --brief ziņot tikai, ja datnes atÅ¡Ä·iras" -#: src/diff.c:895 +#: src/diff.c:955 msgid "-s, --report-identical-files report when two files are the same" msgstr "-s, --report-identical-files ziņot, ja divas datnes ir vienādas" -#: src/diff.c:896 +#: src/diff.c:956 msgid "" "-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context" msgstr "" "-c, -C NUM, --context[=NUM] izvadÄ«t NUM (noklus. 3) kopētā konteksta rindas" -#: src/diff.c:897 +#: src/diff.c:957 msgid "" "-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context" msgstr "" "-u, -U NUM, --unified[=NUM] izvadÄ«t NUM (noklus. 3) vienotā konteksta " "rindas" -#: src/diff.c:898 +#: src/diff.c:958 msgid "-e, --ed output an ed script" msgstr "-e, --ed izvada ed skriptu" -#: src/diff.c:899 +#: src/diff.c:959 msgid "-n, --rcs output an RCS format diff" msgstr "-n, --rcs izvada RCS formāta diff" -#: src/diff.c:900 +#: src/diff.c:960 msgid "-y, --side-by-side output in two columns" msgstr "-y, --side-by-side izvade divās kolonnās" -#: src/diff.c:901 +#: src/diff.c:961 msgid "" "-W, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-W, --width=NUM izvada lÄ«dz NUM (noklusējuma 130) drukas " "kolonas" -#: src/diff.c:902 +#: src/diff.c:962 msgid "" " --left-column output only the left column of common lines" msgstr "" " --left-column izvadÄ«t tikai kreiso kolonu no kopējām rindām" -#: src/diff.c:903 +#: src/diff.c:963 msgid " --suppress-common-lines do not output common lines" msgstr " --suppress-common-lines neizvadÄ«t kopējās rindas" -#: src/diff.c:905 +#: src/diff.c:965 msgid "-p, --show-c-function show which C function each change is in" msgstr "-p, --show-c-function rādÄ«t, kurās C funkcijās ir izmaiņas" -#: src/diff.c:906 +#: src/diff.c:966 msgid "-F, --show-function-line=RE show the most recent line matching RE" msgstr "-F, --show-function-line=RE rādÄ«t visnesenāko rindu, kas atbilst RE" -#: src/diff.c:907 +#: src/diff.c:967 #, fuzzy msgid "" " --label LABEL use LABEL instead of file name and timestamp\n" @@ -797,24 +798,24 @@ msgstr "" " --label ETIĶETE izmantot ETIĶETI nevis datnes nosaukumu\n" " (var atkārtot)" -#: src/diff.c:910 +#: src/diff.c:970 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "" "-t, --expand-tabs pārveidot tabulācijas par atstarpēm izvadē" -#: src/diff.c:911 +#: src/diff.c:971 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T, --initial-tab pacelt tabulācijas rindu pirms tabulācijas" -#: src/diff.c:912 +#: src/diff.c:972 msgid "" " --tabsize=NUM tab stops every NUM (default 8) print columns" msgstr "" " --tabsize=NUM tabulāciju pietura ik NUM drukas " "kolonas (noklusējuma ir 8)" -#: src/diff.c:913 +#: src/diff.c:973 msgid "" " --suppress-blank-empty suppress space or tab before empty output lines" msgstr "" @@ -822,59 +823,59 @@ msgstr "" "tukšām\n" " izvades rindām." -#: src/diff.c:914 +#: src/diff.c:974 msgid "-l, --paginate pass output through 'pr' to paginate it" msgstr "-l, --paginate izlaist izvadi caur “pr”, lai to lapotu" -#: src/diff.c:916 +#: src/diff.c:976 msgid "" "-r, --recursive recursively compare any subdirectories found" msgstr "" "-r, --recursive rekursÄ«vi salÄ«dzina atrastās " "apakÅ¡direktorijas" -#: src/diff.c:917 +#: src/diff.c:977 msgid " --no-dereference don't follow symbolic links" msgstr " --no-dereference nerādÄ«t simboliskās saites" -#: src/diff.c:918 +#: src/diff.c:978 msgid "-N, --new-file treat absent files as empty" msgstr "-N, --new-file trÅ«kstoÅ¡as datnes uzskatÄ«t par tukšām" -#: src/diff.c:919 +#: src/diff.c:979 msgid " --unidirectional-new-file treat absent first files as empty" msgstr "" " --unidirectional-new-file trÅ«kstoÅ¡as pirmās datnes uzskatÄ«t par tukšām" -#: src/diff.c:920 +#: src/diff.c:980 msgid " --ignore-file-name-case ignore case when comparing file names" msgstr "" " --ignore-file-name-case ignorēt reÄ£istru, salÄ«dzinot datņu nosaukumus" -#: src/diff.c:921 +#: src/diff.c:981 msgid " --no-ignore-file-name-case consider case when comparing file names" msgstr "" " --no-ignore-file-name-case neignorēt reÄ£istru, salÄ«dzinot datņu " "nosaukumus" -#: src/diff.c:922 +#: src/diff.c:982 msgid "-x, --exclude=PAT exclude files that match PAT" msgstr "-x, --exclude=Å ABLONS izslēgt datnes, kuras atbilst Å ABLONAM" -#: src/diff.c:923 +#: src/diff.c:983 msgid "" "-X, --exclude-from=FILE exclude files that match any pattern in FILE" msgstr "" "-X, --exclude-from=DATNE izslēgt datnes, kuras atbilst jebkuram\n" " Å¡ablonam DATNĒ" -#: src/diff.c:924 +#: src/diff.c:984 msgid "" "-S, --starting-file=FILE start with FILE when comparing directories" msgstr "" "-S, --starting-file=DATNE sākt ar DATNI, kad salÄ«dzina direktorijas" -#: src/diff.c:925 +#: src/diff.c:985 msgid "" " --from-file=FILE1 compare FILE1 to all operands;\n" " FILE1 can be a directory" @@ -882,7 +883,7 @@ msgstr "" " --from-file=DATNE1 salÄ«dzina DANTE1 ar visiem operandiem;\n" " DATNE1 var bÅ«t direktorija" -#: src/diff.c:927 +#: src/diff.c:987 msgid "" " --to-file=FILE2 compare all operands to FILE2;\n" " FILE2 can be a directory" @@ -890,73 +891,73 @@ msgstr "" " --to-file=FILE2 salÄ«dzina visus operandus ar DANTE2;\n" " DATNE2 var bÅ«t direktorija" -#: src/diff.c:930 +#: src/diff.c:990 msgid "" "-i, --ignore-case ignore case differences in file contents" msgstr "" "-i, --ignore-case ignorē reÄ£istra atÅ¡Ä·irÄ«bas datnes saturā" -#: src/diff.c:931 +#: src/diff.c:991 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E, --ignore-tab-expansion ignorēt izmaiņas dēļ tabulācijas izpleÅ¡anās" -#: src/diff.c:932 +#: src/diff.c:992 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "-Z, --ignore-trailing-space ignorēt visas atstarpes rindu beigās" -#: src/diff.c:933 +#: src/diff.c:993 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "-b, --ignore-space-change ignorēt izmaiņas dēļ atstarpēm" -#: src/diff.c:934 +#: src/diff.c:994 msgid "-w, --ignore-all-space ignore all white space" msgstr "-w, --ignore-all-space ignorēt visas atstarpes" -#: src/diff.c:935 +#: src/diff.c:995 msgid "" "-B, --ignore-blank-lines ignore changes where lines are all blank" msgstr "-B, --ignore-blank-lines ignorēt izmaiņas tukÅ¡ajās rindās" -#: src/diff.c:936 +#: src/diff.c:996 msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE" msgstr "" "-I, --ignore-matching-lines=RE ignorēt izmaiņas rindās, kuras sakrÄ«t ar RE" -#: src/diff.c:938 +#: src/diff.c:998 msgid "-a, --text treat all files as text" msgstr "-a, --text uztvert visas datnes kā teksta datnes" -#: src/diff.c:939 +#: src/diff.c:999 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr noņemt atkārtojoÅ¡os rakstatgriezi ievadē" -#: src/diff.c:941 +#: src/diff.c:1001 msgid " --binary read and write data in binary mode" msgstr " --binary lasÄ«t un rakstÄ«t datus binārajā režīmā" -#: src/diff.c:944 +#: src/diff.c:1004 msgid "" "-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs" msgstr "" "-D, --ifdef=NOSAUKUMS izvadÄ«t sapludināto datni ar\n" " “#ifdef NOSAUKUMS” diff" -#: src/diff.c:945 +#: src/diff.c:1005 msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT" msgstr " --GTYPE-group-format=GFMT formatēt GTYPE ievades grupas ar GFMT" -#: src/diff.c:946 +#: src/diff.c:1006 msgid " --line-format=LFMT format all input lines with LFMT" msgstr " --line-format=LFMT formatēt visas ievades rindas ar LFMT" -#: src/diff.c:947 +#: src/diff.c:1007 msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT" msgstr " --LTYPE-line-format=LFMT formatēt LTYPE ievades rindām ar LFMT" -#: src/diff.c:948 +#: src/diff.c:1008 msgid "" " These format options provide fine-grained control over the output\n" " of diff, generalizing -D/--ifdef." @@ -964,12 +965,12 @@ msgstr "" " Å Ä«s formāta opcijas sniedz detalizētu kontroli pār diff izvadi,\n" " vispārinot -D/--ifdef." -#: src/diff.c:950 +#: src/diff.c:1010 msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'." msgstr "" " LTYPE ir “old”, “new” vai “unchanged”. GTYPE ir LTYPE vai “changed”." -#: src/diff.c:951 +#: src/diff.c:1011 msgid "" " GFMT (only) may contain:\n" " %< lines from FILE1\n" @@ -996,7 +997,7 @@ msgstr "" " E F-1\n" " M L+1 %(A=B?T:E) ja A vienāds ar B tad T citādi E" -#: src/diff.c:963 +#: src/diff.c:1023 msgid "" " LFMT (only) may contain:\n" " %L contents of line\n" @@ -1009,7 +1010,7 @@ msgstr "" " %[-][PLATUMS][.[PREC]]{doxX}n printf-style specifikācija ievades rindu\n" " numuriem" -#: src/diff.c:967 +#: src/diff.c:1027 msgid "" " Both GFMT and LFMT may contain:\n" " %% %\n" @@ -1023,142 +1024,142 @@ msgstr "" " %c'\\OOO' rakstzÄ«mi ar oktālo kodu OOO\n" " C rakstzÄ«me C (vai citas rakstzÄ«mes, kas attēlo paÅ¡as sevi)" -#: src/diff.c:973 +#: src/diff.c:1033 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "-d, --minimal ļoti censties atrast mazāku izmaiņu kopu" -#: src/diff.c:974 +#: src/diff.c:1034 msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix" msgstr "" " --horizon-lines=NUM uzturēt NUM rindas kopējiem prefiksiem un sufiksiem" -#: src/diff.c:975 +#: src/diff.c:1035 msgid "" " --speed-large-files assume large files and many scattered small changes" msgstr "" " --speed-large-files pieņemt, ka datnes ir lielas ar daudz mazām izmaiņām" -#: src/diff.c:976 +#: src/diff.c:1036 msgid "" " --color[=WHEN] color output; WHEN is 'never', 'always', or " "'auto';\n" " plain --color means --color='auto'" msgstr "" -#: src/diff.c:978 +#: src/diff.c:1038 msgid "" " --palette=PALETTE the colors to use when --color is active; PALETTE " "is\n" " a colon-separated list of terminfo capabilities" msgstr "" -#: src/diff.c:981 +#: src/diff.c:1041 msgid " --help display this help and exit" msgstr " --help parādÄ«t Å¡o palÄ«dzÄ«bu un iziet" -#: src/diff.c:982 +#: src/diff.c:1042 msgid "-v, --version output version information and exit" msgstr "-v, --version izvada informāciju par versiju un iziet" -#: src/diff.c:984 +#: src/diff.c:1044 #, fuzzy msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'." msgstr "" "DATNES ir “DATNE1 DATNE2” vai “DIREKTORIJA1 DIREKTORIJA2” vai\n" "“DIREKTORIJA DATNE...” vai “DATNE... DIREKTORIJA”" -#: src/diff.c:985 +#: src/diff.c:1045 msgid "" "If --from-file or --to-file is given, there are no restrictions on FILE(s)." msgstr "" "Ja ir doti --from-file vai --to-file, nav nekādu ierobežojumu uz DATNĒM." -#: src/diff.c:986 src/diff3.c:533 src/sdiff.c:220 +#: src/diff.c:1046 src/diff3.c:531 src/sdiff.c:219 msgid "If a FILE is '-', read standard input." msgstr "Ja DATNE ir “-”, lasÄ«t standarta ievadi." -#: src/diff.c:996 +#: src/diff.c:1056 #, c-format msgid "Usage: %s [OPTION]... FILES\n" msgstr "LietoÅ¡ana: %s [OPCIJAS]... DATNES\n" -#: src/diff.c:997 +#: src/diff.c:1057 msgid "Compare FILES line by line." msgstr "SalÄ«dzina DATNES rindu pa rindai." -#: src/diff.c:1034 +#: src/diff.c:1094 #, c-format msgid "conflicting %s option value '%s'" msgstr "konfliktējoÅ¡a %s opcijas vērtÄ«ba “%s”" -#: src/diff.c:1047 +#: src/diff.c:1107 #, c-format msgid "conflicting output style options" msgstr "konfliktējoÅ¡a izvades stila opcijas" -#: src/diff.c:1063 +#: src/diff.c:1123 #, fuzzy, c-format msgid "invalid color '%s'" msgstr "nederÄ«gs platums “%s”" -#: src/diff.c:1119 src/diff.c:1329 +#: src/diff.c:1197 src/diff.c:1401 #, c-format msgid "Only in %s: %s\n" msgstr "Tikai iekÅ¡ %s: %s\n" -#: src/diff.c:1253 +#: src/diff.c:1325 msgid "cannot compare '-' to a directory" msgstr "nevar salÄ«dzināt “-” ar direktoriju" -#: src/diff.c:1288 +#: src/diff.c:1360 msgid "-D option not supported with directories" msgstr "-D opcija nav atbalstÄ«ta ar direktorijām" -#: src/diff.c:1297 +#: src/diff.c:1369 #, c-format msgid "Common subdirectories: %s and %s\n" msgstr "Kopējās apakÅ¡direktorijas: %s un %s\n" -#: src/diff.c:1339 src/diff.c:1389 +#: src/diff.c:1411 src/diff.c:1461 #, c-format msgid "File %s is a %s while file %s is a %s\n" msgstr "Datne %s ir %s kamēr datne %s ir %s\n" -#: src/diff.c:1375 +#: src/diff.c:1447 #, c-format msgid "Symbolic links %s and %s differ\n" msgstr "Simboliskās saites %s un %s atÅ¡Ä·iras\n" -#: src/diff.c:1462 +#: src/diff.c:1534 #, c-format msgid "Files %s and %s are identical\n" msgstr "Datnes %s un %s ir identiskas\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff3.c:43 +#: src/diff3.c:51 msgid "Randy Smith" msgstr "Randy Smith" -#: src/diff3.c:356 +#: src/diff3.c:363 #, c-format msgid "incompatible options" msgstr "savstarpēji nesaderÄ«gas opcijas" -#: src/diff3.c:396 +#: src/diff3.c:403 msgid "'-' specified for more than one input file" msgstr "“-” norādÄ«ts vairāk par vienu ievades datni" -#: src/diff3.c:447 src/diff3.c:1295 src/diff3.c:1698 src/diff3.c:1753 -#: src/sdiff.c:308 src/sdiff.c:846 src/sdiff.c:857 +#: src/diff3.c:445 src/diff3.c:1284 src/diff3.c:1683 src/diff3.c:1738 +#: src/sdiff.c:306 src/sdiff.c:843 src/sdiff.c:854 msgid "read failed" msgstr "lasÄ«Å¡ana neizdevās" -#: src/diff3.c:480 +#: src/diff3.c:478 msgid "-A, --show-all output all changes, bracketing conflicts" msgstr "" "-A, --show-all izvada visas izmaņas, ieliekot iekavās konfliktus" -#: src/diff3.c:482 +#: src/diff3.c:480 msgid "" "-e, --ed output ed script incorporating changes\n" " from OLDFILE to YOURFILE into MYFILE" @@ -1166,12 +1167,12 @@ msgstr "" "-e, --ed izvada ed skirpta iekļautās izmaiņas\n" " no VECĀSDATNES uz JŪSUDATNI iekÅ¡ MANUDATNI." -#: src/diff3.c:484 +#: src/diff3.c:482 msgid "-E, --show-overlap like -e, but bracket conflicts" msgstr "" "-E, --show-overlap tāpat kā -e, bet ieliekot iekavās konfliktus" -#: src/diff3.c:485 +#: src/diff3.c:483 msgid "" "-3, --easy-only like -e, but incorporate only nonoverlapping " "changes" @@ -1179,23 +1180,23 @@ msgstr "" "-3, --easy-only lÄ«dzÄ«gs -e, bet iekļauj tikai nepārklājošās " "izmaiņas" -#: src/diff3.c:486 +#: src/diff3.c:484 msgid "" "-x, --overlap-only like -e, but incorporate only overlapping changes" msgstr "" "-x, --overlap-only lÄ«dzÄ«gs -e, bet iekļauj tikai pārklājošās " "izmaiņas" -#: src/diff3.c:487 +#: src/diff3.c:485 msgid "-X like -x, but bracket conflicts" msgstr "" "-X lÄ«dzÄ«gs -x, bet ieliekot iekavās konfliktus" -#: src/diff3.c:488 +#: src/diff3.c:486 msgid "-i append 'w' and 'q' commands to ed scripts" msgstr "-i pievieno “w” un “q” komandas ed skriptā" -#: src/diff3.c:490 +#: src/diff3.c:488 msgid "" "-m, --merge output actual merged file, according to\n" " -A if no other options are given" @@ -1203,24 +1204,24 @@ msgstr "" "-m, --merge izvada paÅ¡u sapludināto datni, vadoties pēc -A,\n" " ja nav dotu citu opciju" -#: src/diff3.c:493 +#: src/diff3.c:491 msgid "-a, --text treat all files as text" msgstr "-a, --text uztvert visas datnes kā teksta datnes" -#: src/diff3.c:494 +#: src/diff3.c:492 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr " --strip-trailing-cr noņemt atkārtojoÅ¡os rakstatgriezi ievadē" -#: src/diff3.c:495 +#: src/diff3.c:493 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "-T, --initial-tab pacelt tabulācijas rindu pirms tabulācijas" -#: src/diff3.c:496 +#: src/diff3.c:494 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr "" " --diff-program=PROGRAMMA izmantot PROGRAMMU, lai salÄ«dzinātu divas datnes" -#: src/diff3.c:497 +#: src/diff3.c:495 msgid "" "-L, --label=LABEL use LABEL instead of file name\n" " (can be repeated up to three times)" @@ -1228,24 +1229,24 @@ msgstr "" "-L, --label=ETIĶETE izmantot ETIĶETI nevis datnes nosaukumu\n" " (var atkārtot)" -#: src/diff3.c:500 +#: src/diff3.c:498 msgid " --help display this help and exit" msgstr " --help parādÄ«t Å¡o palÄ«dzÄ«bu un iziet" -#: src/diff3.c:501 +#: src/diff3.c:499 msgid "-v, --version output version information and exit" msgstr "-v, --version izvada informāciju par versiju un iziet" -#: src/diff3.c:510 +#: src/diff3.c:508 #, c-format msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n" msgstr "IzmantoÅ¡ana: %s [OPCIJAS]... MANADATNE VECĀDATNE JŪSUDATNE\n" -#: src/diff3.c:512 +#: src/diff3.c:510 msgid "Compare three files line by line." msgstr "SalÄ«dzināt trÄ«s datnes rindiņu pa rindiņai." -#: src/diff3.c:522 +#: src/diff3.c:520 msgid "" "\n" "The default output format is a somewhat human-readable representation of\n" @@ -1271,56 +1272,56 @@ msgstr "" "sapludināto datni. Netipiskām ievadēm, Å¡is ir vēl spēcÄ«gāks paņēmiens, nekā\n" "ed izmantoÅ¡ana.\n" -#: src/diff3.c:534 +#: src/diff3.c:532 msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble." msgstr "" "Izejas statuss ir 0, ja tas ir veiksmÄ«gs, 1, ja ir konflikts, 2, ja ir " "nepatikÅ¡anas." -#: src/diff3.c:727 +#: src/diff3.c:725 msgid "internal error: screwup in format of diff blocks" msgstr "iekšējā kļūda: sagāja grÄ«stē diff bloku formāts" -#: src/diff3.c:1022 +#: src/diff3.c:1015 #, c-format msgid "%s: diff failed: " msgstr "%s: diff neizdevās:" -#: src/diff3.c:1044 +#: src/diff3.c:1037 msgid "internal error: invalid diff type in process_diff" msgstr "iekšējā kļūda: nederÄ«gs diff veids iekÅ¡ process_diff" -#: src/diff3.c:1069 +#: src/diff3.c:1060 msgid "invalid diff format; invalid change separator" msgstr "nederÄ«gs diff formāts; nederÄ«gs izmaiņu atdalÄ«tājs" -#: src/diff3.c:1305 +#: src/diff3.c:1294 msgid "invalid diff format; incomplete last line" msgstr "nederÄ«gs diff formāts; nepilnÄ«ga pēdējā rinda" -#: src/diff3.c:1329 src/sdiff.c:276 src/util.c:969 +#: src/diff3.c:1318 src/sdiff.c:274 src/util.c:1069 #, c-format msgid "subsidiary program '%s' could not be invoked" msgstr "nevarēja izsaukt palÄ«gprogrammu “%s”" -#: src/diff3.c:1354 +#: src/diff3.c:1343 msgid "invalid diff format; incorrect leading line chars" msgstr "nederÄ«gs diff formāts; nederÄ«gas rindas ievades rakstzÄ«mes" -#: src/diff3.c:1427 +#: src/diff3.c:1416 msgid "internal error: invalid diff type passed to output" msgstr "iekšējā kļūda: nederÄ«gs uz izvadi padotais diff veids" -#: src/diff3.c:1700 src/diff3.c:1757 +#: src/diff3.c:1685 src/diff3.c:1742 msgid "input file shrank" msgstr "ievades datne saruka" -#: src/dir.c:156 +#: src/dir.c:154 #, c-format msgid "cannot compare file names '%s' and '%s'" msgstr "nevar salÄ«dzināt datņu nosaukumus “%s” un “%s”" -#: src/dir.c:225 +#: src/dir.c:223 #, c-format msgid "%s: recursive directory loop" msgstr "%s: rekursÄ«vs direktorijas cikls" @@ -1330,13 +1331,13 @@ msgstr "%s: rekursÄ«vs direktorijas cikls" msgid "Thomas Lord" msgstr "Thomas Lord" -#: src/sdiff.c:174 +#: src/sdiff.c:173 msgid "" "-o, --output=FILE operate interactively, sending output to FILE" msgstr "" "-o, --output=DATNE darboties interaktÄ«vi, izvadot izvadu uz DATNI" -#: src/sdiff.c:176 +#: src/sdiff.c:175 msgid "" "-i, --ignore-case consider upper- and lower-case to be the same" msgstr "" @@ -1344,110 +1345,110 @@ msgstr "" "ir\n" " viens un tas pats" -#: src/sdiff.c:177 +#: src/sdiff.c:176 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E, --ignore-tab-expansion ignorēt izmaiņas dēļ tabulācijas izpleÅ¡anās" -#: src/sdiff.c:178 +#: src/sdiff.c:177 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "-Z, --ignore-trailing-space ignorēt visas atstarpes rindu beigās" -#: src/sdiff.c:179 +#: src/sdiff.c:178 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "-b, --ignore-space-change ignorēt izmaiņas dēļ atstarpēm" -#: src/sdiff.c:180 +#: src/sdiff.c:179 msgid "-W, --ignore-all-space ignore all white space" msgstr "-W, --ignore-all-space ignorēt visas atstarpes" -#: src/sdiff.c:181 +#: src/sdiff.c:180 msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank" msgstr "-B, --ignore-blank-lines ignorēt izmaiņas tukÅ¡ajās rindās" -#: src/sdiff.c:182 +#: src/sdiff.c:181 msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE" msgstr "" "-I, --ignore-matching-lines=RE ignorēt izmaiņas rindās, kuras sakrÄ«t ar RE" -#: src/sdiff.c:183 +#: src/sdiff.c:182 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr " --strip-trailing-cr noņemt atkārtojoÅ¡os rakstatgriezi ievadē" -#: src/sdiff.c:184 +#: src/sdiff.c:183 msgid "-a, --text treat all files as text" msgstr "-a, --text uztvert visas datnes kā teksta datnes" -#: src/sdiff.c:186 +#: src/sdiff.c:185 msgid "" "-w, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-w, --width=NUM izvada lÄ«dz NUM (noklusējuma 130) drukas kolonas" -#: src/sdiff.c:187 +#: src/sdiff.c:186 msgid "" "-l, --left-column output only the left column of common lines" msgstr "" "-l, --left-column izvadÄ«t tikai kreiso kolonu no kopējām rindām" -#: src/sdiff.c:188 +#: src/sdiff.c:187 msgid "-s, --suppress-common-lines do not output common lines" msgstr "-s, --suppress-common-lines neizvadÄ«t kopējās rindas" -#: src/sdiff.c:190 +#: src/sdiff.c:189 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "" "-t, --expand-tabs pārveidot tabulācijas par atstarpēm izvadē" -#: src/sdiff.c:191 +#: src/sdiff.c:190 msgid "" " --tabsize=NUM tab stops at every NUM (default 8) print columns" msgstr "" " --tabsize=NUM tabulāciju pietura ik NUM drukas " "kolonas (noklusējuma ir 8)" -#: src/sdiff.c:193 +#: src/sdiff.c:192 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "-d, --minimal ļoti censties atrast mazāku izmaiņu kopu" -#: src/sdiff.c:194 +#: src/sdiff.c:193 msgid "" "-H, --speed-large-files assume large files, many scattered small changes" msgstr "" "-H, --speed-large-files pieņemt, ka datnes ir lielas, daudz mazu izmaiņu" -#: src/sdiff.c:195 +#: src/sdiff.c:194 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr "" " --diff-program=PROGRAMMA izmantot PROGRAMMU, lai salÄ«dzinātu divas datnes" -#: src/sdiff.c:197 +#: src/sdiff.c:196 msgid " --help display this help and exit" msgstr " --help parādÄ«t Å¡o palÄ«dzÄ«bu un iziet" -#: src/sdiff.c:198 +#: src/sdiff.c:197 msgid "-v, --version output version information and exit" msgstr "-v, --version izvada informāciju par versiju un iziet" -#: src/sdiff.c:207 +#: src/sdiff.c:206 #, c-format msgid "Usage: %s [OPTION]... FILE1 FILE2\n" msgstr "LietoÅ¡ana: %s [OPCIJAS]... DATNE1 DATNE1\n" -#: src/sdiff.c:209 +#: src/sdiff.c:208 msgid "Side-by-side merge of differences between FILE1 and FILE2." msgstr "Sānu-pie-sāna datņu DATNE1 un DATNE2 atÅ¡Ä·irÄ«bu sapludināšana." -#: src/sdiff.c:330 +#: src/sdiff.c:328 msgid "cannot interactively merge standard input" msgstr "nevar interaktÄ«vi sapludināt standarta ievadi" -#: src/sdiff.c:597 +#: src/sdiff.c:594 msgid "both files to be compared are directories" msgstr "abas salÄ«dzināmās datnes ir direktorijas" -#: src/sdiff.c:820 +#: src/sdiff.c:817 msgid "" "ed:\tEdit then use both versions, each decorated with a header.\n" "eb:\tEdit then use both versions.\n" @@ -1471,12 +1472,12 @@ msgstr "" "v:\tDetalizēti iekļaut kopējās rindas.\n" "q:\tIziet.\n" -#: src/util.c:662 +#: src/util.c:755 #, fuzzy, c-format msgid "unrecognized prefix: %s" msgstr "%s: neatpazÄ«ta opcija “--%s”\n" -#: src/util.c:692 +#: src/util.c:785 #, c-format msgid "unparsable value for --palette" msgstr "" diff --git a/po/ms.gmo b/po/ms.gmo index 4088c2834f75a50399167687c763f8537bedad5d..0db0fbb3e809eee3a4b6ed3090d1667ea44d26ab 100644 GIT binary patch delta 10864 zcmai&34B!5xxi1@jUXtSY{?B0lE6$LY(fHxy;O+VeSkeP@QVg zR-d%eTdXVYeXT8z*3mB7YWu8h-TG>)wpNN-?OvBIwzWQO|KB}#NZ?`L{qg00&bjBF z^PTT}=R4nU_j6_YuI^VjcGiG{if2ffQWN1NLzFTp-!ej4l`_UC6{lVW&!>LPSf!T0 z9|Sz}Y}%-IzyXgN+8=>8Ks8CJHgF@9_rHQmVSR;G+=Z*De-(;?11ptU#r$e9 z1$l7|6peohTi`lFsfXdG;ayl@eU(xVQ2*OxrIy3P=O|^vzd$}wTc;>B6J7>K!XxlZ z_$Wko^&AYrKSJqWQH^p13X3V!z!a>72O*164@2qrB4mE`E}RD6gZ*LcRNX%W+o^AW zOW|kXO89%Y49;P28Fvp{1@D5gm2bjAGlki_ZG<@}FOER5$e-Z~*ixr?HN1@aGf=jo z9c?av*FyR3Cr~UmVY`$UD}?=JpnGT#CwT?Vf#bq@fHiOx z^(){?_yZ^=9$T*mUI~{|KM2JskHQ96IYX(B!3&{S-~}k(SMsqa9Eb8u*6}UM5 zsun?UzHLE$FBG4;6`l?Y-=r{{!sAd(@&XhMjRks7x5BB^?}Re&<8UneP0%hID+<*> zF}(|=|2=RFdg5%&9p(yxWC=2>!z_;Nj>H}Gotav;;2Tt|t?EeK6Wa5obG~NkE!jD6l@D})G zco?z>wT*ol3~z!4yc6z(k3yMXF8e17YJq3L^{^UtK~dz|;QbxK0u4n974R`AD|-zR zW7HoZ{-Q=TYZJCY99(rl8R#Gsh3|zJNqrlN54;C)c-6pJoDNOMQCIt+to#93315JP z2^8L;ASN5l87hO-a3ZXMvVx_MBd<2WDtI}R0q+XhpM;{w+i(&bN-&WA)1df52b2Zw zg$BGS;6vxL|DwQA8e|Xu4n>i(2xH;{li>guf)1KBKvC#+&YS^@P~JZa#Ud|2G5s5` z0g6X+V%03j30D@Bt-cVi?>`S^!pER| z_cJKI@;V#_--qJmLkS`>;go>qL9xV#;AGfSpx`?hET`cxl!3n%ba)z8Q-2G}O2=>% zWP%A$oUIOu0&}7G&PsS1+yG^qZEz6G!871qD3-nkilqy82OaK*18I0DsDB%VsDB^I zgl|LNGK4)j9hFc9oDF3~OQ5XSgypaY4uSiiD7GIy#1`HJ_rr~Cexxj@*H-Jm)38Q! zH$2D(k3bH9+OSqf!h?|AQqMw;wCZTrUVi|}v3wd5yVQ^ibtG+p?54T`_Q1y>MpWmo z)9u&7CK>U^6jt$K_<9}rE{2Dw-v}8~&F|2W@M_ph{b?wQov}f`Ujr9VzYU_ZdI7Q~ zRl5;$!(C7m`4jv)T(F580}K2aJ}xVIYBR|Oy#7O681T2S3SM}zj`=PeP5oXt0)7jM z$)AC8zTbidoOp?L(nW9z^#l~(xeivsuRw9S=OOc}cc9!q>Rk%`VZ#>f?QNh5lZka4v;e38ipswF8O;9)wMBNRnUym%@4QHrNcGhvMyHQ(B>R zC@Z=i$~Z5=g>br~8HZwtd!T&xGL-QOuM?QpSlfU=U;pmb=;XlKj9Nz@O(@$d+o z44(+vUx%ktKYgbTEMp-DNYy}D`Cix#ABAB!D(jC|P)jIC;MfjBa5r2I?}6f+e}L2A zWLHnT8cv`dhgEPNJR5!%o&z6&qv5M?B76s)2FK($y3l~D;2Us+od3qWj!>)MFkV~) zt6>+E6Xyd6%V{xvB5e-3Nm8?YIU?a`LI z2o~nhu!n+Zcm$peAA@pyj={Nb;vO9r)Y>_3Wz8BkWT6b^tppjadw@Jcw3`ps|={1Kc1M|?zY zK{J%^x4`l6qfo{@1S?<>&V)aLve5pQYtAoFkPay*dw4CB5ATMucVCC%luy8k@TYJB zd>hI{XI`Q2^AMEwFgDDtrLSLJLPJ$ONwhd=tvvy$8$T@Q-TK zjfb*_Q=piz3CaX5P%PCBW#TS42=0Q?@6w?DQ79I;21>t&U={PLCn?APuS1!j|2`cD z#=~*cS3pt3gtCW8C<^a_W$-_ccaQ@}>G@tzxE0En5>Nh&Z~*)(7^oj0-;(pckis@( z2qMoXkY6BMq|)bkGAMH>)USiG_`p2m_dz`d9}LQ~;75XT30G108uAlFg54nIKjGO= z?X93?8N3z|hxs(}9I_p8kf#x`Mn6pOCj2Kd1^FRTdaj{Ri9C+12^z(RY((b$hj0ad z(M@MKSVi$q>#TMZzC@uhmcLky9n{hf2Q)c8?g}ipR{Ko{_H0=z<)l@ z-?d0B5=E{=UX^{2^EnKekBG;wMCAD+B1ci4za#hhCHkxB=47W5Zgz&upww5BKpq-0k4JwgMIow<^MsBAghqlGl=&URDO=Ug1Ds@ zP=e7TLA?RKhrAKg?}pbSn|(iIkR?=ZN96fW4gc?*{QVKqg+!1CkQzju`;a!|VyWXYC!qy@PoXgfRL&Hg!{vHAdev?@+fi<@?XeOq!p3p8RQ}4 zo5*BDo?jv3kqePyNEK3#$n!GtJLIRxH;{V}fBv~}C-Qk|2%fLNBr+OVkDQ0da~9H$ z97ev2d=8z1=@~*tH9ZV+kVlMur(pjrKn~vn&9BnKm@5(x@ zXnnc2{j6t}b*7W)?8S>Vtz5Qdi=iLCDVVg$kT)_=jbrVyvNa*2#!PmbJuW3?tugbt zbd7i6xJi>UNz-&X5ta94l)k z?LD$5;iWUeVY>?_^6DpT7-7V5bt7ZOtVUyDwY#`jm~`gA5p8&GIB7<#vApXdR59479wpZCL{cG3qb%t&xMq_f9t}=ofUG<$bI6 zz|f@VjO8O~*YfTNjh-z!8BRVGvG5i-RI&lROEq?x$-IS@Dfv*JLT{%r_7n#$L>ocF z4;Q(#D6}cuV%S}Hu)%uS?UG-ZS<8swe~t<}GOTZxMQyFCTRV>14nIlZg`DghXB7+T z*M3)TZQYaQJN+-SHeT_{$dQu>bLlL;>Lh!#w@VDram31cp-olZf@yZ6?iI!!k)2h+=0a?ORmcxE6$xYQno8mCd7OMM>mJP&1_VAg7^50*9&cSr{!>v zR{u}a3p4~fZPde{w?>FQ5I^6sFo3)}G z>Z~2fv+;ILhOk&C!>n05-PqK!Ze7coj?Dy09eAzXIc#NQBmfX*qBs=_bQ2{XnEB1B z&IHHMZ>x68RlC`@Zq!zD%$$au1AXHbf7oztS%E9Uze9*<;@!UQ`lVTho3T3Wt{&gw z+94$#=re;da+u0-2HB8^6|)^jjw3xRvor2*m{GgO%5n|$lK> z)z5DqUOZ>^gZ&GsOrx=E?Q$H(sAi|T#H9XNkcD*qo3|mhi@4}meE0wL{Ge{#@nJSf zV{MUz|6%-)u~sHL(wok8@a4?bfI+6EBX+USus^__}u61dmjjxLWOcugrgP zad3e2QPtns4(Ha6{-5}Ciawv3H_Cft!Gtp;E~9~ww47Kj?me~Oy7Nn;#M4=O4~EjO zPMjfUMqGQ3bz)<;9Ysf3fp>A^tbs<<%$eSv#)*aC032VWw!6R76p4+UNm{$bpOWd$ zgmwrVMb4<|`x{SWw)D0% z-7%4%%H4lJveUXEbc6?VqyJ&bL;0cc8(^pKeuX3R`* zO(d;20XbrJ;un<5N$to}OcJSfE@A0?a_Sb9u}o)&Szr{o$Z4n}FLHXUh#5)n)=iMG zk?54uxWkOveYE3kBu^iwhlJ8XrJP+-nJHTmaXZVakdY}(-Zz2kI|r9Yf&49HCC!8k zXvEA&-igWVRwtIgBa$YIDHnD5Fyp;d%>O3K^YtXX6}v?3(lSZTdi5|9IlHSj%hO)R%{;Mz9|UXzyK84`*NlsS5|aA` z<0Y(o#_Ta^EoFYi{Y&l}6f=yH-<5uQV0?e$qqcA5gxQVB93xKJ;Nn?a--O?iZT%!q zw#Uyhdec1DbnQNAUcI-ywaVMp+H@9I4PIj8b0Em}u5aBtaPrC7UT@l91cvY`S|<2O zQCG_uqwu;ow?)h(`QuN5*jQH_zIN&W@2zzMYfhQ>by_(&fs!4un-Ob|>1~)=SzNb1 zck0Bit!2%MRV^C=MKD1ufrpe@{c+?xu?{0*#^lgN^JW++`Sht1!C-)f#-Kntm<*jb zxXuS9fcT?phgjay+Sb5HaDv2eaMkevPSB;dx8#QvUQuh!u7j`HC)ntOJkjtz(mt;8lm|NGA5A+!7$r}fL!P+9PRQ=yqQ|3)|GSCk zM>dLoo{%f9Y+35HY#KF&xa=q8a{3Ymt-dzohn3zZ+sipnNBZW8W$Q*yAkV`&<*@oQ z`r4H?IJD`;56lpgrhKV?{Sdy`H~-Thkdq;r#fLY2uFU)Sd4s*g=845Mn?KWk`Vy1V zDgK+vr%nh)Y?e(NcO=0Ja>Q3J*>bv^mb|ut*Suw{7uxcEp-q0gpE@BV9rQnNtt5fo zl|{)9qWbbyPGz8(KNAy02>))QWPmuJl!KEl!B;LG@fBZ1i}Q)OWiZ!D<<}&+Z8}<8 zmbMrdw5)Dj)3Qb`B)uh}-g6ZvpY<;;c}ZxIfa2d?c_wsXVGXjzx~ehaqtcOs@~Y2?^l`^a!Ch zL5(1Q2b`Efe&83!`&RU3rlrol(GzKx|DP!@{xUkNU!zVS4T6ErC;aRxMnWO~J(809 z9j!^HOi6tCAtbjl>7-{HpEum!lBk^g&YgBrXMXQ;_$5I3 zPUMeDsz>;@y?@3Z9!=IBi|6I8_1|Y~Zb;kvhW$WD8&ey%l?+j1wp~U1ris~D=w&rvIz<y1A6L>DXyA zwN)z{&FW@lW{#DasWX*Ji>5O@T8%SK(>B{)pm_GY6nfW^4g^J^T!ae9K;V4RIN;-i?49TUy+ zumW>%HJ0EW9D|XUn>CpQt&B<;4ew$Rw(Ve6h?S@l?#1zV!aGh)G8@hDd{oDF;spF2 z)sc}M&BozPsP=bJ9ZT%QXSf#M#1HT(U(jq_XR}>2MSxVH&1)HS2?uP&3+u`rZa)Vr@6}!#x9M}IG~T%3wJ|6bHm>_-hGuD5&sRj8SMsyFLjOyvR% zS(w56t;TC`41R?=F@s^Nqm8KJ{ix4l`?@!-Kz+Uj)qV`s@lMS1Agn=ka1##0<2V%C zrw83BnwaiR;bt7c2WL=U=*mLpVHIj5_o3R)pr*D)LuE`9sd_u zJxgYzw8o*>21|ofG!;`(J$npC;pfPtSoeYMg-ekQZgWr_38Fqfj64|j9cr`1uw!-O z-l*>vBdcT6P@6c2>~~v_F*@E(rHsle*cP=8mq9yhg_MUlTm9|jV-Va>$vk0@AwN|gNd|%g__Ar$gErZ5Z(<~gsiqL!JyV^ z3l;TrAF8Jxp-#AjY+M__f@uw>V;t6^&bt|7@j=v-KY?1RcTgR>fcpM7sHOc0b)Oif zTT7K($oy+0eQ8jSb1)i9F&-zPMm*DNufr&g8@%J2ktfkspl-AiyWn0-z)w-vxrj-4 z3Dx05o?&&M+fe3z4^!8lhVe9f%`>RSaS*RJ*@PqTZR9_TsedC@^$f8(eWV+F27J^yF12zzkAwXGWU`4(hV>_;re zfur3Q(XDth$45{%F6A}28`t3{46uyGLma2li!1SO*d2o-%G@_x0JX*sV^`dU+WqgL zAAdmYh0DjfFO*TJwVsRJa4n|d^T_?|L*xOlV;G4sj8c0l4yWS?qz^&cL}fA!=dltC zSciUi52~lHqDB-u!5wKO7IFL-G70u4)OkIb4lQA$=i8|B+D>%On}Yg$E7B+X4s*1a z!aRv+ZNh!X zvfIB=9U4B>J#Qsy(;o9|do}Z~6DCl}!#hwT-;3Jq?YTPluu9bD&!YCmSxmv7u`?!D zxoe+~YM+L!aT&J3RmkA&e$>FeMkd)Zr!)TJOKT)7oa*&g}QJ(?!eoz5OZdQf8}f;>bgr&*Lwup;nP7XI`K8skHR5T z&%Z^@M0~)tH}>RsIO_Y?VIQo=BHWDK@eJmoUF*)oAXEp(;V`VmLHHzQVek_wT7uZ? z+;{(A)J$B9y5Sm3!5yd`A4VU3jveqU#^XOR2cxRppV=X(j?Be;+>Gk@3H0Nau0d-# z+g;N>sGg2SZJHSvgS8liOK}5tz6D!woHWNBVX|j7YLk|tMjFI{xEHlaFJdCLn(IA= zn5*Z%JX|qbiQ%O{?TJIE&Gs>Bgx_N~jF{*C(<>F#kuucx%RQ%~W@ez#* zB^yQbVp54D?Md(?f9@hxWCZz;=w^+iC21~uyvl>9x7TfC08#nGCHzS7#D=HYYYIP> zTR6~?Jl5QZTS+nZw;QOW6ZVfq5C&-*NME8-N;K_S!{tQfMxwoPoOCDq$o*s~QQ1Up zC-pj@{DG_>yikqp6P|wH7cxe9v9)gq`BPU zRk&QZ%;K;1%rdf(93oGXx5)|eYtadn?cdK{wnK<9<_3EnA}NjB@;**QAr^y!!`E}x!9|} z<~bMJk#(fdYZHF*26=|8C2L4?`MvJnpQAi7gY57=c^p3=1HEJMTd#f(#*!hVgiItV zQ%EgoB0Y&7%~j+nQcYA6$k1@j>>;V~XOQh=FlkFvQb{(6CPzttsI(#1kXOiPGKi?0 zaD$borABN6%TxTsKNzk`uZTun--W5{u9bT0P+pYv!|%h0~O zk&#YX!E|R=!6~P3=o?P*u-ee(VSRj|{1GQ3LmNj$ML5UDyzgWcCpiDOqKlJOvckDo zk`=$Oq26B|;5W4{P&>QYIaqqc*-`e8bKTffXYJVjE%F9r)eDw6=W>%mxwUusLjS1?Mmk#;S2=l0E;xU$ zKjB8!jh)A{JOjn3}nnMw75x*G!SNNNJ}7Wk{@ kF`&Tp&V4K1bZS< diff --git a/po/ms.po b/po/ms.po index 0ab6b65..7d6530f 100644 --- a/po/ms.po +++ b/po/ms.po @@ -1,14 +1,14 @@ # diffutils Bahasa Melayu (Malay) (ms). -# Copyright (C) 2003, 2015, 2018, 2019, 2020, 2021 Free Software Foundation, Inc. +# Copyright (C) 2003, 2015, 2018, 2019, 2020, 2021, 2022 Free Software Foundation, Inc. # This file is distributed under the same license as the diffutils package. -# Sharuzzaman Ahmat Raslan , 2003, 2015, 2018, 2019, 2020, 2021. +# Sharuzzaman Ahmat Raslan , 2003, 2015, 2018, 2019, 2020, 2021, 2022. # msgid "" msgstr "" -"Project-Id-Version: diffutils 3.6.17\n" +"Project-Id-Version: diffutils 3.7.41\n" "Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n" -"POT-Creation-Date: 2021-08-01 18:56-0700\n" -"PO-Revision-Date: 2021-06-26 20:09+0800\n" +"POT-Creation-Date: 2023-05-21 01:51-0700\n" +"PO-Revision-Date: 2022-06-14 18:57+0800\n" "Last-Translator: Sharuzzaman Ahmat Raslan \n" "Language-Team: Malay \n" "Language: ms\n" @@ -16,31 +16,31 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Bugs: Report translation errors to the Language-Team address.\n" -"X-Generator: Poedit 3.0\n" +"X-Generator: Poedit 3.1\n" -#: lib/argmatch.c:132 +#: lib/argmatch.c:145 #, c-format msgid "invalid argument %s for %s" msgstr "hujah tidak sah %s bagi %s" -#: lib/argmatch.c:133 +#: lib/argmatch.c:146 #, c-format msgid "ambiguous argument %s for %s" msgstr "hujah kabur %s bagi %s" -#: lib/argmatch.c:152 lib/argmatch.h:223 +#: lib/argmatch.c:165 lib/argmatch.h:242 msgid "Valid arguments are:" msgstr "Hujah yang sah ialah:" -#: lib/c-stack.c:187 +#: lib/c-stack.c:186 msgid "program error" msgstr "ralat program" -#: lib/c-stack.c:188 +#: lib/c-stack.c:187 msgid "stack overflow" msgstr "stack melimpah" -#: lib/error.c:195 +#: lib/error.c:193 msgid "Unknown system error" msgstr "Ralat sistem tidak diketahui" @@ -97,33 +97,28 @@ msgid "door" msgstr "pintu" #: lib/file-type.c:81 -#, fuzzy msgid "multiplexed block special file" -msgstr "fail khas blok" +msgstr "fail khas blok selangseli" #: lib/file-type.c:84 -#, fuzzy msgid "multiplexed character special file" -msgstr "fail khas aksara" +msgstr "fail khas aksara selangseli" #: lib/file-type.c:87 -#, fuzzy msgid "multiplexed file" -msgstr " Fail: ..." +msgstr "fail selangseli" #: lib/file-type.c:90 msgid "named file" msgstr "fail dinamakan" #: lib/file-type.c:93 -#, fuzzy msgid "network special file" -msgstr "Rangkaian tidak dapat dicapai." +msgstr "fail khas rangkaian" #: lib/file-type.c:96 -#, fuzzy msgid "migrated file with data" -msgstr "fail dipindahkan tanpa data" +msgstr "fail dipindahkan dengan data" #: lib/file-type.c:99 msgid "migrated file without data" @@ -139,7 +134,7 @@ msgstr "soket" #: lib/file-type.c:108 msgid "whiteout" -msgstr "" +msgstr "kosongkan" #: lib/file-type.c:110 msgid "weird file" @@ -201,83 +196,83 @@ msgstr "%s: pilihan memerlukan hujah -- '%c'\n" #. If you don't know what to put here, please see #. #. and use glyphs suitable for your language. -#: lib/quotearg.c:355 +#: lib/quotearg.c:354 msgid "`" msgstr "`" -#: lib/quotearg.c:356 +#: lib/quotearg.c:355 msgid "'" msgstr "'" -#: lib/regcomp.c:135 +#: lib/regcomp.c:122 msgid "Success" msgstr "Berjaya" -#: lib/regcomp.c:138 +#: lib/regcomp.c:125 msgid "No match" msgstr "Tiada padanan" -#: lib/regcomp.c:141 +#: lib/regcomp.c:128 msgid "Invalid regular expression" msgstr "Regular expression tidak sah" -#: lib/regcomp.c:144 +#: lib/regcomp.c:131 msgid "Invalid collation character" msgstr "Aksara pengumpulsemakan tidak sah" -#: lib/regcomp.c:147 +#: lib/regcomp.c:134 msgid "Invalid character class name" msgstr "Nama kelas aksara tidak sah" -#: lib/regcomp.c:150 +#: lib/regcomp.c:137 msgid "Trailing backslash" msgstr "Slash dibelakang" -#: lib/regcomp.c:153 +#: lib/regcomp.c:140 msgid "Invalid back reference" msgstr "Rujukan belakang tidak sah" -#: lib/regcomp.c:156 +#: lib/regcomp.c:143 msgid "Unmatched [, [^, [:, [., or [=" msgstr "[, [^, [:, [., atau [= tidak sepadan" -#: lib/regcomp.c:159 +#: lib/regcomp.c:146 msgid "Unmatched ( or \\(" msgstr "( atau \\( tidak sepadan" -#: lib/regcomp.c:162 +#: lib/regcomp.c:149 msgid "Unmatched \\{" msgstr "\\{ tidak sepadan" -#: lib/regcomp.c:165 +#: lib/regcomp.c:152 msgid "Invalid content of \\{\\}" msgstr "Kandungan \\{\\} tidak sah" -#: lib/regcomp.c:168 +#: lib/regcomp.c:155 msgid "Invalid range end" msgstr "Julat akhir tidak sah" -#: lib/regcomp.c:171 +#: lib/regcomp.c:158 msgid "Memory exhausted" msgstr "Kehabisan memori" -#: lib/regcomp.c:174 +#: lib/regcomp.c:161 msgid "Invalid preceding regular expression" msgstr "Regular expression awalan tidak sah" -#: lib/regcomp.c:177 +#: lib/regcomp.c:164 msgid "Premature end of regular expression" msgstr "Regular expression tamat tiba-tiba" -#: lib/regcomp.c:180 +#: lib/regcomp.c:167 msgid "Regular expression too big" msgstr "Regular expression terlalu besar" -#: lib/regcomp.c:183 +#: lib/regcomp.c:170 msgid "Unmatched ) or \\)" msgstr ") atau \\) tidak sepadan" -#: lib/regcomp.c:676 +#: lib/regcomp.c:650 msgid "No previous regular expression" msgstr "Tiada regular expression terdahulu" @@ -302,24 +297,24 @@ msgid "unknown stream" msgstr "aliran tidak diketahui" #: lib/xfreopen.c:38 -#, fuzzy, c-format +#, c-format msgid "failed to reopen %s with mode %s" -msgstr "%s tidak dapat dibuka semula: %s" +msgstr "gagal membuka semula %s dengan mod %s" #: lib/xstdopen.c:34 #, c-format msgid "standard file descriptors" -msgstr "" +msgstr "penghurai fail piawai" #: lib/version-etc.c:73 -#, fuzzy, c-format +#, c-format msgid "Packaged by %s (%s)\n" -msgstr "%s: %s.\n" +msgstr "Dipakej oleh %s (%s)\n" #: lib/version-etc.c:76 -#, fuzzy, c-format +#, c-format msgid "Packaged by %s\n" -msgstr "%s%s: %.*s (%s)\n" +msgstr "Dipakej oleh %s\n" #. TRANSLATORS: Translate "(C)" to the copyright symbol #. (C-in-a-circle), if this symbol is available in the user's @@ -330,17 +325,16 @@ msgstr "(C)" #. TRANSLATORS: The %s placeholder is the web address of the GPL license. #: lib/version-etc.c:88 -#, fuzzy, c-format +#, c-format msgid "" "License GPLv3+: GNU GPL version 3 or later <%s>.\n" "This is free software: you are free to change and redistribute it.\n" "There is NO WARRANTY, to the extent permitted by law.\n" msgstr "" -"Lesen GPLv3+: GNU GPL vesri 3 atau selepasnya \n" -"Ini adalah perisan bebas: anda bebas untuk mengubah dan mengulangedarnya.\n" +"Lesen GPLv3+: GNU GPL versi 3 atau selepasnya <%s>.\n" +"Ini adalah perisan bebas: anda bebas untuk mengubah dan mengedarkannya " +"semula.\n" "TIADA JAMINAN diberikan, sehingga had yang dibenarkan oleh undang-undang.\n" -"\n" #. TRANSLATORS: %s denotes an author name. #: lib/version-etc.c:105 @@ -455,11 +449,9 @@ msgstr "" #. "Report translation bugs to <...>\n" with the address for translation #. bugs (typically your translation team's web or email address). #: lib/version-etc.c:249 -#, fuzzy, c-format +#, c-format msgid "Report bugs to: %s\n" -msgstr "" -"\n" -"Lapor pepijat ke: %s\n" +msgstr "Lapor pepijat ke: %s\n" #: lib/version-etc.c:251 #, c-format @@ -467,27 +459,26 @@ msgid "Report %s bugs to: %s\n" msgstr "Lapor %s pepijat ke: %s\n" #: lib/version-etc.c:255 lib/version-etc.c:257 -#, fuzzy, c-format +#, c-format msgid "%s home page: <%s>\n" -msgstr "%s laman utama: <%s>.\n" +msgstr "%s laman utama: <%s>\n" #: lib/version-etc.c:260 -#, fuzzy, c-format +#, c-format msgid "General help using GNU software: <%s>\n" -msgstr "" -"Bantuan umum menggunakan perisian GNU: .\n" +msgstr "Bantuan umum menggunakan perisian GNU: <%s>\n" -#: src/analyze.c:454 src/diff.c:1406 +#: src/analyze.c:455 src/diff.c:1478 #, c-format msgid "Files %s and %s differ\n" msgstr "Fail %s dan %s berbeza\n" -#: src/analyze.c:455 +#: src/analyze.c:456 #, c-format msgid "Binary files %s and %s differ\n" msgstr "Fail binari %s dan %s berbeza\n" -#: src/analyze.c:706 src/diff3.c:1470 src/util.c:1254 +#: src/analyze.c:707 src/diff3.c:1457 src/util.c:1354 msgid "No newline at end of file" msgstr "Tiada baris baru pada penghujung fail" @@ -501,99 +492,96 @@ msgstr "Torbjorn Granlund" msgid "David MacKenzie" msgstr "David MacKenzie" -#: src/cmp.c:120 src/diff.c:879 src/diff3.c:467 src/sdiff.c:160 +#: src/cmp.c:124 src/diff.c:939 src/diff3.c:465 src/sdiff.c:159 #, c-format msgid "Try '%s --help' for more information." msgstr "Cuba '%s --help' untuk maklumat lanjut." -#: src/cmp.c:138 -#, fuzzy, c-format +#: src/cmp.c:142 +#, c-format msgid "invalid --ignore-initial value '%s'" -msgstr "nilai `%s' --ignore-initial tidak sah" +msgstr "nilai '%s' --ignore-initial tidak sah" -#: src/cmp.c:148 +#: src/cmp.c:152 #, c-format msgid "options -l and -s are incompatible" msgstr "pilihan -l dan -s tidak sepadan" -#: src/cmp.c:156 src/diff.c:887 src/diff3.c:474 src/sdiff.c:168 src/sdiff.c:316 -#: src/sdiff.c:323 src/sdiff.c:876 src/util.c:852 src/util.c:952 src/util.c:959 +#: src/cmp.c:160 src/diff.c:947 src/diff3.c:472 src/sdiff.c:167 src/sdiff.c:314 +#: src/sdiff.c:321 src/sdiff.c:873 src/util.c:952 src/util.c:1052 +#: src/util.c:1059 msgid "write failed" msgstr "gagal menulis" -#: src/cmp.c:158 src/diff.c:889 src/diff.c:1471 src/diff3.c:476 src/sdiff.c:170 +#: src/cmp.c:162 src/diff.c:949 src/diff.c:1543 src/diff3.c:474 src/sdiff.c:169 msgid "standard output" msgstr "keluaran piawai" -#: src/cmp.c:162 -#, fuzzy +#: src/cmp.c:166 msgid "-b, --print-bytes print differing bytes" -msgstr "-b --print-bytes Cetak byte berbeza." +msgstr "-b, --print-bytes cetak byte berbeza" -#: src/cmp.c:163 -#, fuzzy +#: src/cmp.c:167 msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs" msgstr "" -"-i LANGKAU --ignore-initial=LANGKAU Langkau LANGKAU byte pertama masukan." +"-i, --ignore-initial=LANGKAU langkau LANGKAU byte pertama bagi kedua-" +"dua masukan" -#: src/cmp.c:164 -#, fuzzy +#: src/cmp.c:168 msgid "" "-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n" " first SKIP2 bytes of FILE2" msgstr "" -" Langkau LANGKAU1 byte pertama untuk FAIL1 dan LANGKAU2 byte pertama untuk " -"FAIL2." +"-i, --ignore-initial=LANGKAU1:LANGKAU2 langkau LANGKAU1 byte pertama untuk " +"FAIL1 dan\n" +" LANGKAU2 byte pertama untuk FAIL2" -#: src/cmp.c:166 -#, fuzzy +#: src/cmp.c:170 msgid "" "-l, --verbose output byte numbers and differing byte values" -msgstr "-l --verbose Keluarkan nombor byte dan nilai semua byte berbeza." +msgstr "" +"-l, --verbose keluarkan nombor byte dan nilai byte berbeza" -#: src/cmp.c:167 -#, fuzzy +#: src/cmp.c:171 msgid "-n, --bytes=LIMIT compare at most LIMIT bytes" -msgstr "-n HAD --bytes=HAD Banding paling banyak HAD byte." +msgstr "-n, --bytes=HAD banding paling banyak HAD byte" -#: src/cmp.c:168 +#: src/cmp.c:172 msgid "-s, --quiet, --silent suppress all normal output" msgstr "-s, --quiet, --silent sekat semua keluaran normal" -#: src/cmp.c:169 -#, fuzzy +#: src/cmp.c:173 msgid " --help display this help and exit" -msgstr " --help paparkan bantuan ini kemudian keluar\n" +msgstr " --help paparkan bantuan ini dan keluar" -#: src/cmp.c:170 -#, fuzzy +#: src/cmp.c:174 msgid "-v, --version output version information and exit" -msgstr "-v, --version papar maklumat versi dan keluar" +msgstr "-v, --version papar maklumat versi dan keluar" -#: src/cmp.c:179 +#: src/cmp.c:183 #, c-format msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n" msgstr "Penggunaan: %s [PILIHAN]... FAIL1 [FAIL2 [LANGKAU1 [LANGKAU2]]]\n" -#: src/cmp.c:181 +#: src/cmp.c:185 msgid "Compare two files byte by byte." msgstr "Banding dua fail setiap byte." -#: src/cmp.c:183 -#, fuzzy +#: src/cmp.c:187 msgid "" "The optional SKIP1 and SKIP2 specify the number of bytes to skip\n" "at the beginning of each file (zero by default)." msgstr "" -"LANGKAU1 dan LANGKAU2 adalah jumlah byte untuk dilangkau dalam setiap fail." +"Pilihan LANGKAU1 dan LANGKAU2 menyatakan bilangan byte untuk dilangkau\n" +"pada permulaan setiap fail (sifar secara default)" -#: src/cmp.c:186 src/diff.c:999 src/diff3.c:514 src/sdiff.c:211 +#: src/cmp.c:190 src/diff.c:1059 src/diff3.c:512 src/sdiff.c:210 msgid "" "Mandatory arguments to long options are mandatory for short options too.\n" msgstr "" "Hujah wajib kepada pilihan panjang adalah wajib untuk pilihan pendek juga.\n" -#: src/cmp.c:192 +#: src/cmp.c:196 msgid "" "SKIP values may be followed by the following multiplicative suffixes:\n" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" @@ -603,197 +591,193 @@ msgstr "" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" "GB 1,000,000,000, G 1,073,741,824, dan seterusnya untuk T, P, E, Z, Y." -#: src/cmp.c:195 -#, fuzzy +#: src/cmp.c:199 msgid "If a FILE is '-' or missing, read standard input." -msgstr "Jika FAIL adalah `-' atau tiada, baca masukan piawai." +msgstr "Jika FAIL adalah '-' atau tiada, baca masukan piawai." -#: src/cmp.c:196 src/diff.c:987 src/sdiff.c:221 +#: src/cmp.c:200 src/diff.c:1047 src/sdiff.c:220 msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble." msgstr "" "Status keluar adalah 0 jika masukan adalah sama, 1 jika berbeza, 2 jika " "bermasalah." -#: src/cmp.c:243 -#, fuzzy, c-format +#: src/cmp.c:247 +#, c-format msgid "invalid --bytes value '%s'" -msgstr "nilai --bytes `%s' tidak sah" +msgstr "nilai --bytes '%s' tidak sah" -#: src/cmp.c:269 src/diff.c:797 src/diff3.c:361 src/sdiff.c:567 -#, fuzzy, c-format +#: src/cmp.c:273 src/diff.c:857 src/diff3.c:368 src/sdiff.c:564 +#, c-format msgid "missing operand after '%s'" -msgstr "operan hilang selepas `%s'" +msgstr "operan hilang selepas '%s'" -#: src/cmp.c:281 src/diff.c:799 src/diff3.c:363 src/sdiff.c:569 -#, fuzzy, c-format +#: src/cmp.c:285 src/diff.c:859 src/diff3.c:370 src/sdiff.c:566 +#, c-format msgid "extra operand '%s'" -msgstr "operan tambahan `%s'" +msgstr "operan tambahan '%s'" -#: src/cmp.c:507 +#: src/cmp.c:521 #, c-format msgid "%s %s differ: byte %s, line %s\n" msgstr "%s %s berbeza: byte %s, baris %s\n" -#: src/cmp.c:523 +#: src/cmp.c:537 #, c-format msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n" msgstr "%s %s berbeza: byte %s, baris %s adalah %3o %s %3o %s\n" -#: src/cmp.c:580 -#, fuzzy, c-format +#: src/cmp.c:594 +#, c-format msgid "cmp: EOF on %s which is empty\n" -msgstr "cmp: EOF pada %s\n" +msgstr "cmp: EOF pada %s yang kosong\n" -#: src/cmp.c:594 -#, fuzzy, c-format +#: src/cmp.c:608 +#, c-format msgid "cmp: EOF on %s after byte %s, line %s\n" -msgstr "%s %s berbeza: byte %s, baris %s\n" +msgstr "cmp: EOF pada %s selepas byte %s, baris %s\n" -#: src/cmp.c:595 -#, fuzzy, c-format +#: src/cmp.c:609 +#, c-format msgid "cmp: EOF on %s after byte %s, in line %s\n" -msgstr "%s %s berbeza: byte %s, baris %s\n" +msgstr "cmp: EOF pada %s selepas byte %s, dalam baris %s\n" -#: src/cmp.c:601 -#, fuzzy, c-format +#: src/cmp.c:615 +#, c-format msgid "cmp: EOF on %s after byte %s\n" -msgstr "%s: EOF tidak dijangka selepas membaca %d/%d bins\n" +msgstr "cmp: EOF pada %s selepas byte %s\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:51 +#: src/diff.c:50 msgid "Paul Eggert" msgstr "Paul Eggert" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:52 +#: src/diff.c:51 msgid "Mike Haertel" msgstr "Mike Haertel" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:53 +#: src/diff.c:52 msgid "David Hayes" msgstr "David Hayes" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:54 +#: src/diff.c:53 msgid "Richard Stallman" msgstr "Richard Stallman" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:55 +#: src/diff.c:54 msgid "Len Tower" msgstr "Len Tower" -#: src/diff.c:355 -#, fuzzy, c-format +#: src/diff.c:365 +#, c-format msgid "invalid context length '%s'" -msgstr "panjang konteks `%s' tidak sah" +msgstr "panjang konteks '%s' tidak sah" -#: src/diff.c:438 +#: src/diff.c:487 #, c-format msgid "pagination not supported on this host" msgstr "pagination tidak disokong pada hos ini" -#: src/diff.c:453 src/diff3.c:341 +#: src/diff.c:502 src/diff3.c:348 #, c-format msgid "too many file label options" msgstr "terlalu banyak pilihan label fail" -#: src/diff.c:530 -#, fuzzy, c-format +#: src/diff.c:579 +#, c-format msgid "invalid width '%s'" -msgstr "lebar `%s' tidak sah" +msgstr "lebar '%s' tidak sah" -#: src/diff.c:534 +#: src/diff.c:583 msgid "conflicting width options" msgstr "pilihan lebar berkonflik" -#: src/diff.c:559 -#, fuzzy, c-format +#: src/diff.c:608 +#, c-format msgid "invalid horizon length '%s'" -msgstr "panjang horizon `%s' tidak sah" +msgstr "panjang horizon '%s' tidak sah" -#: src/diff.c:615 -#, fuzzy, c-format +#: src/diff.c:664 +#, c-format msgid "invalid tabsize '%s'" -msgstr "saiz tab `%s' tidak sah" +msgstr "saiz tab '%s' tidak sah" -#: src/diff.c:619 +#: src/diff.c:668 msgid "conflicting tabsize options" msgstr "pilihan saiz tab berkonflik" -#: src/diff.c:774 +#: src/diff.c:834 msgid "--from-file and --to-file both specified" msgstr "--from-file dan --to-file kedua-duanya dinyatakan" -#: src/diff.c:893 -#, fuzzy +#: src/diff.c:953 msgid " --normal output a normal diff (the default)" -msgstr "--normal Keluarkan diff normal." +msgstr " --normal keluarkan diff normal (default)" -#: src/diff.c:894 -#, fuzzy +#: src/diff.c:954 msgid "-q, --brief report only when files differ" -msgstr "-q --brief Keluaran hanya jika fail berbeza." +msgstr "-q, --brief lapor hanya jika fail berbeza" -#: src/diff.c:895 -#, fuzzy +#: src/diff.c:955 msgid "-s, --report-identical-files report when two files are the same" -msgstr "-s --report-identical-files Lapor apabila dua fail adalah sama." +msgstr "-s, --report-identical-files lapor apabila dua fail adalah sama" -#: src/diff.c:896 +#: src/diff.c:956 msgid "" "-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context" msgstr "" "-c, -C NUM, --context[=NUM] keluarkan NUM (default 3) baris konteks yang " "disalin" -#: src/diff.c:897 +#: src/diff.c:957 msgid "" "-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context" msgstr "" "-u, -U NUM, --unified[=NUM] keluarkan NUM (default 3) baris konteks " "tergabung" -#: src/diff.c:898 +#: src/diff.c:958 msgid "-e, --ed output an ed script" msgstr "-e, --ed keluarkan skrip ed" -#: src/diff.c:899 +#: src/diff.c:959 msgid "-n, --rcs output an RCS format diff" msgstr "-n, --rcs keluarkan diff format RCS" -#: src/diff.c:900 +#: src/diff.c:960 msgid "-y, --side-by-side output in two columns" msgstr "-y, --side-by-side keluaran dalam dua lajur" -#: src/diff.c:901 +#: src/diff.c:961 msgid "" "-W, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-W, --width=NUM keluarkan paling banyak NUM (default 130) " "lajur cetakan" -#: src/diff.c:902 +#: src/diff.c:962 msgid "" " --left-column output only the left column of common lines" msgstr "" " --left-column keluarkan hanya lajur kiri baris yang sama" -#: src/diff.c:903 +#: src/diff.c:963 msgid " --suppress-common-lines do not output common lines" msgstr " --suppress-common-lines jangan keluarkan baris sama" -#: src/diff.c:905 +#: src/diff.c:965 msgid "-p, --show-c-function show which C function each change is in" msgstr "" "-p, --show-c-function papar fungsi C yang mana dalam setiap perubahan" -#: src/diff.c:906 +#: src/diff.c:966 msgid "-F, --show-function-line=RE show the most recent line matching RE" msgstr "-F, --show-function-line=RE papar baris paling terkini sepadan RE" -#: src/diff.c:907 +#: src/diff.c:967 msgid "" " --label LABEL use LABEL instead of file name and timestamp\n" " (can be repeated)" @@ -801,80 +785,80 @@ msgstr "" " --label LABEL guna LABEL berbanding nama fail dan capmasa\n" " (boleh diulang)" -#: src/diff.c:910 +#: src/diff.c:970 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "-t, --expand-tabs kembang tab kepada ruang dalam keluaran" -#: src/diff.c:911 +#: src/diff.c:971 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T, --initial-tab jadikan tab sebaris dengan menambah awalan tab" -#: src/diff.c:912 +#: src/diff.c:972 msgid "" " --tabsize=NUM tab stops every NUM (default 8) print columns" msgstr "" " --tabsize=NUM hentian tab setiap NUM (default 8) lajur " "cetakan" -#: src/diff.c:913 +#: src/diff.c:973 msgid "" " --suppress-blank-empty suppress space or tab before empty output lines" msgstr "" " --suppress-blank-empty sekat ruang atau tab sebelum baris keluaran " "kosong" -#: src/diff.c:914 +#: src/diff.c:974 msgid "-l, --paginate pass output through 'pr' to paginate it" msgstr "" "-l, --paginate salur keluaran menerusi 'pr' untuk paginate" -#: src/diff.c:916 +#: src/diff.c:976 msgid "" "-r, --recursive recursively compare any subdirectories found" msgstr "" "-r, --recursive banding berulang-ulang sebarang subdirektori " "yang dijumpai" -#: src/diff.c:917 +#: src/diff.c:977 msgid " --no-dereference don't follow symbolic links" msgstr " --no-dereference jangan ikut pautan simbolik" -#: src/diff.c:918 +#: src/diff.c:978 msgid "-N, --new-file treat absent files as empty" msgstr "-N, --new-file anggap fail tidak wujud sebagai kosong" -#: src/diff.c:919 +#: src/diff.c:979 msgid " --unidirectional-new-file treat absent first files as empty" msgstr " --unidirectional-new-file anggap fail tidak wujud sebagai kosong" -#: src/diff.c:920 +#: src/diff.c:980 msgid " --ignore-file-name-case ignore case when comparing file names" msgstr " --ignore-file-name-case abai case apabila membanding nama fail" -#: src/diff.c:921 +#: src/diff.c:981 msgid " --no-ignore-file-name-case consider case when comparing file names" msgstr "" " --no-ignore-file-name-case ambil kira case ketika membanding nama fail" -#: src/diff.c:922 +#: src/diff.c:982 msgid "-x, --exclude=PAT exclude files that match PAT" msgstr "-x, --exclude=PAT asingkan fail yang sepadan PAT" -#: src/diff.c:923 +#: src/diff.c:983 msgid "" "-X, --exclude-from=FILE exclude files that match any pattern in FILE" msgstr "" "-X, --exclude-from=FILE asingkan fail yang sepadan sebarang corak " "dalam FAIL" -#: src/diff.c:924 +#: src/diff.c:984 msgid "" "-S, --starting-file=FILE start with FILE when comparing directories" msgstr "" "-S, --starting-file=FILE mula dengan FAIL apabila membanding direktori" -#: src/diff.c:925 +#: src/diff.c:985 msgid "" " --from-file=FILE1 compare FILE1 to all operands;\n" " FILE1 can be a directory" @@ -882,7 +866,7 @@ msgstr "" " --from-file=FILE1 banding FAIL1 kepada semua operan;\n" " FAIL1 boleh jadi direktori" -#: src/diff.c:927 +#: src/diff.c:987 msgid "" " --to-file=FILE2 compare all operands to FILE2;\n" " FILE2 can be a directory" @@ -890,89 +874,91 @@ msgstr "" " --to-file=FILE2 banding semua operan ke FAIL2;\n" " FAIL2 boleh jadi direktori" -#: src/diff.c:930 +#: src/diff.c:990 msgid "" "-i, --ignore-case ignore case differences in file contents" msgstr "" "-i, --ignore-case abai perbezaan huruf besar kecil dalam " "kandungan fail" -#: src/diff.c:931 +#: src/diff.c:991 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "-E, --ignore-tab-expansion abai perubahan akibat pengembangan tab" -#: src/diff.c:932 +#: src/diff.c:992 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "" "-Z, --ignore-trailing-space abai semua ruang putih pada penghujung baris" -#: src/diff.c:933 +#: src/diff.c:993 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "" "-b, --ignore-space-change abai perubahan dalam jumlah ruang putih" -#: src/diff.c:934 +#: src/diff.c:994 msgid "-w, --ignore-all-space ignore all white space" msgstr "-w, --ignore-all-space abai semua ruang putih" -#: src/diff.c:935 +#: src/diff.c:995 msgid "" "-B, --ignore-blank-lines ignore changes where lines are all blank" msgstr "" "-B, --ignore-blank-lines abai perubahan dimana baris adalah " "kesemuanya kosong" -#: src/diff.c:936 +#: src/diff.c:996 msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE" msgstr "" "-I, --ignore-matching-lines=RE abai perubahan dimana semua baris sepadan RE" -#: src/diff.c:938 +#: src/diff.c:998 msgid "-a, --text treat all files as text" msgstr "-a, --text layan semua fail sebagai teks" -#: src/diff.c:939 +#: src/diff.c:999 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr " --strip-trailing-cr buang enter penghujung pada masukan" -#: src/diff.c:941 +#: src/diff.c:1001 msgid " --binary read and write data in binary mode" msgstr " --binary baca dan tulis data dalam mod perduaan" -#: src/diff.c:944 +#: src/diff.c:1004 msgid "" "-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs" msgstr "" "-D, --ifdef=NAME keluarkan fail tergabung dengan diff '#ifdef " "NAME'" -#: src/diff.c:945 +#: src/diff.c:1005 msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT" msgstr "" " --GTYPE-group-format=GFMT format masukan GTYPE dikumpulkan dengan GFMT" -#: src/diff.c:946 +#: src/diff.c:1006 msgid " --line-format=LFMT format all input lines with LFMT" msgstr " --line-format=LFMT format semua baris masukan dengan LFMT" -#: src/diff.c:947 +#: src/diff.c:1007 msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT" msgstr " --LTYPE-line-format=LFMT format baris masukan LTYPE dengan LFMT" -#: src/diff.c:948 +#: src/diff.c:1008 msgid "" " These format options provide fine-grained control over the output\n" " of diff, generalizing -D/--ifdef." msgstr "" +" Pilihan format ini menyediakan kawalan halus ke atas keluaran\n" +" dari diff, generalisasi -D/--ifdef." -#: src/diff.c:950 +#: src/diff.c:1010 msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'." msgstr "" " LTYPE adalah 'old', 'new', atau 'unchanged'. GTYPE adalah LTYPE atau " "'changed'." -#: src/diff.c:951 +#: src/diff.c:1011 msgid "" " GFMT (only) may contain:\n" " %< lines from FILE1\n" @@ -1001,7 +987,7 @@ msgstr "" " M L+1\n" " %(A=B?T:E) jika A sama dengan B maka T selainnya E" -#: src/diff.c:963 +#: src/diff.c:1023 msgid "" " LFMT (only) may contain:\n" " %L contents of line\n" @@ -1013,7 +999,7 @@ msgstr "" " %l kandungan baris, tidak termasuk baris baru dipenghujung\n" " %[-][WIDTH][.[PREC]]{doxX}n spec gaya-printf untuk nombor baris masukan" -#: src/diff.c:967 +#: src/diff.c:1027 msgid "" " Both GFMT and LFMT may contain:\n" " %% %\n" @@ -1027,141 +1013,147 @@ msgstr "" " %c'\\OOO' aksara dengan kod oktal OOO\n" " C aksara C (aksara lain mewakili diri mereka sendiri)" -#: src/diff.c:973 +#: src/diff.c:1033 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "" "-d, --minimal cuba cari dengan tekun set perbezaan yang kecil" -#: src/diff.c:974 +#: src/diff.c:1034 msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix" msgstr " --horizon-lines=NUM simpan NUM baris prefix dan suffix sama" -#: src/diff.c:975 +#: src/diff.c:1035 msgid "" " --speed-large-files assume large files and many scattered small changes" msgstr "" " --speed-large-files anggap fail besar dan banyak perubahan kecil " "bertaburan" -#: src/diff.c:976 +#: src/diff.c:1036 msgid "" " --color[=WHEN] color output; WHEN is 'never', 'always', or " "'auto';\n" " plain --color means --color='auto'" msgstr "" +" --color[=WHEN] keluaran warna; WHEN ialah 'never', 'always', atau " +"'auto';\n" +" hanya --color bermaksud --color='auto'" -#: src/diff.c:978 +#: src/diff.c:1038 msgid "" " --palette=PALETTE the colors to use when --color is active; PALETTE " "is\n" " a colon-separated list of terminfo capabilities" msgstr "" +" --palette=PALETTE warna untuk digunakan bila --color aktif; PALETTE " +"adalah\n" +" senarai dipisahkan kolon untuk keupayaan terminfo" -#: src/diff.c:981 +#: src/diff.c:1041 msgid " --help display this help and exit" msgstr " --help paparkan bantuan ini dan keluar" -#: src/diff.c:982 +#: src/diff.c:1042 msgid "-v, --version output version information and exit" msgstr "-v, --version papar maklumat versi dan keluar" -#: src/diff.c:984 +#: src/diff.c:1044 msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'." msgstr "" "FAIL-FAIL adalah 'FAIL1 FAIL2' atau 'DIR1 DIR2' atau 'DIR FAIL' atau 'FAIL " "DIR'." -#: src/diff.c:985 +#: src/diff.c:1045 msgid "" "If --from-file or --to-file is given, there are no restrictions on FILE(s)." msgstr "Jika --from-file atau --to-file diberikan, tiada sekatan ke atas FAIL." -#: src/diff.c:986 src/diff3.c:533 src/sdiff.c:220 +#: src/diff.c:1046 src/diff3.c:531 src/sdiff.c:219 msgid "If a FILE is '-', read standard input." msgstr "Jika FAIL adalah '-', baca masukan piawai." -#: src/diff.c:996 +#: src/diff.c:1056 #, c-format msgid "Usage: %s [OPTION]... FILES\n" msgstr "Penggunaan: %s [PILIHAN]... FAIL\n" -#: src/diff.c:997 +#: src/diff.c:1057 msgid "Compare FILES line by line." msgstr "Banding FAIL setiap baris." -#: src/diff.c:1034 +#: src/diff.c:1094 #, c-format msgid "conflicting %s option value '%s'" msgstr "nilai pilihan %s bercanggah '%s'" -#: src/diff.c:1047 +#: src/diff.c:1107 #, c-format msgid "conflicting output style options" msgstr "pilihan gaya keluaran berkonflik" -#: src/diff.c:1063 +#: src/diff.c:1123 #, c-format msgid "invalid color '%s'" msgstr "warna '%s' tidak sah" -#: src/diff.c:1119 src/diff.c:1329 +#: src/diff.c:1197 src/diff.c:1401 #, c-format msgid "Only in %s: %s\n" msgstr "Hanya dalam %s: %s\n" -#: src/diff.c:1253 +#: src/diff.c:1325 msgid "cannot compare '-' to a directory" msgstr "tidak dapat membandingkan '-' kepada direktori" -#: src/diff.c:1288 +#: src/diff.c:1360 msgid "-D option not supported with directories" msgstr "pilihan -D tidak disokong dengan direktori" -#: src/diff.c:1297 +#: src/diff.c:1369 #, c-format msgid "Common subdirectories: %s and %s\n" msgstr "Subdirektori umum: %s dan %s\n" -#: src/diff.c:1339 src/diff.c:1389 +#: src/diff.c:1411 src/diff.c:1461 #, c-format msgid "File %s is a %s while file %s is a %s\n" msgstr "Fail %s adalah %s manakala fail %s adalah %s\n" -#: src/diff.c:1375 +#: src/diff.c:1447 #, c-format msgid "Symbolic links %s and %s differ\n" msgstr "Pautan simbolik %s dan %s berbeza\n" -#: src/diff.c:1462 +#: src/diff.c:1534 #, c-format msgid "Files %s and %s are identical\n" msgstr "Fail %s dan %s adalah serupa\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff3.c:43 +#: src/diff3.c:51 msgid "Randy Smith" msgstr "Randy Smith" -#: src/diff3.c:356 +#: src/diff3.c:363 #, c-format msgid "incompatible options" msgstr "pilihan tidak sepadan" -#: src/diff3.c:396 +#: src/diff3.c:403 msgid "'-' specified for more than one input file" msgstr "'-' dinyatakan untuk lebih daripada satu fail masukan" -#: src/diff3.c:447 src/diff3.c:1295 src/diff3.c:1698 src/diff3.c:1753 -#: src/sdiff.c:308 src/sdiff.c:846 src/sdiff.c:857 +#: src/diff3.c:445 src/diff3.c:1284 src/diff3.c:1683 src/diff3.c:1738 +#: src/sdiff.c:306 src/sdiff.c:843 src/sdiff.c:854 msgid "read failed" msgstr "gagal membaca" -#: src/diff3.c:480 +#: src/diff3.c:478 msgid "-A, --show-all output all changes, bracketing conflicts" msgstr "" "-A, --show-all keluarkan semua perubahan, kurungkan konflik" -#: src/diff3.c:482 +#: src/diff3.c:480 msgid "" "-e, --ed output ed script incorporating changes\n" " from OLDFILE to YOURFILE into MYFILE" @@ -1169,11 +1161,11 @@ msgstr "" "-e, --ed keluarkan skrip ed menggabungkan perubahan\n" " daripada OLDFILE ke YOURFILE ke dalam MYFILE" -#: src/diff3.c:484 +#: src/diff3.c:482 msgid "-E, --show-overlap like -e, but bracket conflicts" msgstr "-E, --show-overlap seperti -e, tetapi kurungkan konflik" -#: src/diff3.c:485 +#: src/diff3.c:483 msgid "" "-3, --easy-only like -e, but incorporate only nonoverlapping " "changes" @@ -1181,68 +1173,72 @@ msgstr "" "-3, --easy-only seperti -e, tetapi hanya menggabungkan perubahan " "tidak bertindih" -#: src/diff3.c:486 +#: src/diff3.c:484 msgid "" "-x, --overlap-only like -e, but incorporate only overlapping changes" msgstr "" "-x, --overlap-only seperti -e, tetapi hanya menggabungkan perubahan " "bertindih" -#: src/diff3.c:487 +#: src/diff3.c:485 msgid "-X like -x, but bracket conflicts" msgstr "-X seperti -x, tetapi kurungkan konflik" -#: src/diff3.c:488 +#: src/diff3.c:486 msgid "-i append 'w' and 'q' commands to ed scripts" msgstr "-i tambah arahan 'w' dan 'q' kepada skrip ed" -#: src/diff3.c:490 +#: src/diff3.c:488 msgid "" "-m, --merge output actual merged file, according to\n" " -A if no other options are given" msgstr "" +"-m, --merge keluarkan fail gabungan sebenar, mengikut\n" +" -A jika tiada pilihan lain diberikan" -#: src/diff3.c:493 +#: src/diff3.c:491 msgid "-a, --text treat all files as text" msgstr "-a, --text layan semua fail sebagai teks" -#: src/diff3.c:494 +#: src/diff3.c:492 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr " --strip-trailing-cr buang enter penghujung pada masukan" -#: src/diff3.c:495 +#: src/diff3.c:493 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T, --initial-tab jadikan tab sebaris dengan menambah awalan tab" -#: src/diff3.c:496 +#: src/diff3.c:494 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr " --diff-program=PROGRAM guna PROGRAM untuk membanding fail" -#: src/diff3.c:497 +#: src/diff3.c:495 msgid "" "-L, --label=LABEL use LABEL instead of file name\n" " (can be repeated up to three times)" msgstr "" +"-L, --label=LABEL gunakan LABEL berbanding nama fail\n" +" (boleh diulang sehingga tiga kali)" -#: src/diff3.c:500 +#: src/diff3.c:498 msgid " --help display this help and exit" msgstr " --help paparkan bantuan ini dan keluar" -#: src/diff3.c:501 +#: src/diff3.c:499 msgid "-v, --version output version information and exit" msgstr "-v, --version papar maklumat versi dan keluar" -#: src/diff3.c:510 +#: src/diff3.c:508 #, c-format msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n" msgstr "Penggunaan: %s [PILIHAN]... MYFILE OLDFILE YOURFILE\n" -#: src/diff3.c:512 +#: src/diff3.c:510 msgid "Compare three files line by line." msgstr "Banding tiga fail tiap-tiap baris." -#: src/diff3.c:522 +#: src/diff3.c:520 msgid "" "\n" "The default output format is a somewhat human-readable representation of\n" @@ -1255,56 +1251,69 @@ msgid "" "and output the actual merged file. For unusual input, this is more\n" "robust than using ed.\n" msgstr "" +"\n" +"Format keluaran default adalah perwakilan perubahan yang agak boleh dibaca " +"oleh\n" +"manusia.\n" +"\n" +"Pilihan -e, -E, -x, -X (dan panjang sepadan) menyebabkan skrip ed\n" +"menjadi keluaran dan bukannya seperti default.\n" +"\n" +"Akhirnya, pilihan -m (--merge) menyebabkan diff3 melakukan gabungan secara " +"dalaman\n" +"dan mengeluarkan fail gabungan sebenar. Untuk masukan luar biasa, ini " +"lebih\n" +"mantap daripada menggunakan ed.\n" -#: src/diff3.c:534 +#: src/diff3.c:532 msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble." msgstr "" "Status keluar adalah 0 jika berjaya, 1 jika konflik, 2 jika bermasalah." -#: src/diff3.c:727 +#: src/diff3.c:725 msgid "internal error: screwup in format of diff blocks" msgstr "ralat dalaman: kerosakan dalam format blok diff" -#: src/diff3.c:1022 +#: src/diff3.c:1015 #, c-format msgid "%s: diff failed: " msgstr "%s: diff gagal: " -#: src/diff3.c:1044 +#: src/diff3.c:1037 msgid "internal error: invalid diff type in process_diff" msgstr "ralat dalaman: jenis diff tidak sah dalam process_diff" -#: src/diff3.c:1069 +#: src/diff3.c:1060 msgid "invalid diff format; invalid change separator" msgstr "format diff tidak sah; pengasing perbezaan tidak sah" -#: src/diff3.c:1305 +#: src/diff3.c:1294 msgid "invalid diff format; incomplete last line" msgstr "format diff tidak sah; baris akhir tidak lengkap" -#: src/diff3.c:1329 src/sdiff.c:276 src/util.c:969 +#: src/diff3.c:1318 src/sdiff.c:274 src/util.c:1069 #, c-format msgid "subsidiary program '%s' could not be invoked" msgstr "program subsidiari '%s' tidak dapat dilaksanakan" -#: src/diff3.c:1354 +#: src/diff3.c:1343 msgid "invalid diff format; incorrect leading line chars" msgstr "format diff tidak sah; aksara awal baris tidak betul" -#: src/diff3.c:1427 +#: src/diff3.c:1416 msgid "internal error: invalid diff type passed to output" msgstr "ralat dalaman: jenis diff tidak sah diberikan kepada keluaran" -#: src/diff3.c:1700 src/diff3.c:1757 +#: src/diff3.c:1685 src/diff3.c:1742 msgid "input file shrank" msgstr "fail masukan mengecil" -#: src/dir.c:156 +#: src/dir.c:154 #, c-format msgid "cannot compare file names '%s' and '%s'" msgstr "tidak dapat membandingkan fail bernama '%s' dan '%s'" -#: src/dir.c:225 +#: src/dir.c:223 #, c-format msgid "%s: recursive directory loop" msgstr "%s: gelungan direktori berulang" @@ -1314,125 +1323,125 @@ msgstr "%s: gelungan direktori berulang" msgid "Thomas Lord" msgstr "Thomas Lord" -#: src/sdiff.c:174 +#: src/sdiff.c:173 msgid "" "-o, --output=FILE operate interactively, sending output to FILE" msgstr "" "-o, --output=FILE operasi secara interaktif, hantar keluaran ke " "FAIL" -#: src/sdiff.c:176 +#: src/sdiff.c:175 msgid "" "-i, --ignore-case consider upper- and lower-case to be the same" msgstr "-i, --ignore-case anggap huruf besar dan kecil sebagai sama" -#: src/sdiff.c:177 +#: src/sdiff.c:176 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E, --ignore-tab-expansion abai perubahan diakibatkan oleh pengembangan tab" -#: src/sdiff.c:178 +#: src/sdiff.c:177 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "" "-Z, --ignore-trailing-space abai semua ruang putih pada penghujung baris" -#: src/sdiff.c:179 +#: src/sdiff.c:178 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "-b, --ignore-space-change abai perubahan dalam jumlah ruang putih" -#: src/sdiff.c:180 +#: src/sdiff.c:179 msgid "-W, --ignore-all-space ignore all white space" msgstr "-W, --ignore-all-space abai semua ruang putih" -#: src/sdiff.c:181 +#: src/sdiff.c:180 msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank" msgstr "" "-B, --ignore-blank-lines abai perubahan dimana baris adalah kesemuanya " "kosong" -#: src/sdiff.c:182 +#: src/sdiff.c:181 msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE" msgstr "" "-I, --ignore-matching-lines=RE abai perubahan dimana baris semua sepadan RE" -#: src/sdiff.c:183 +#: src/sdiff.c:182 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr " --strip-trailing-cr buang enter penghujung pada masukan" -#: src/sdiff.c:184 +#: src/sdiff.c:183 msgid "-a, --text treat all files as text" msgstr "-a, --text layan semua fail sebagai teks" -#: src/sdiff.c:186 +#: src/sdiff.c:185 msgid "" "-w, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-w, --width=NUM keluarkan paling banyak NUM (default 130) lajur " "cetakan" -#: src/sdiff.c:187 +#: src/sdiff.c:186 msgid "" "-l, --left-column output only the left column of common lines" msgstr "" "-l, --left-column keluarkan hanya lajur kiri baris yang sama" -#: src/sdiff.c:188 +#: src/sdiff.c:187 msgid "-s, --suppress-common-lines do not output common lines" msgstr "-s, --suppress-common-lines jangan keluarkan baris sama" -#: src/sdiff.c:190 +#: src/sdiff.c:189 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "-t, --expand-tabs kembang tab kepada ruang dalam keluaran" -#: src/sdiff.c:191 +#: src/sdiff.c:190 msgid "" " --tabsize=NUM tab stops at every NUM (default 8) print columns" msgstr "" " --tabsize=NUM hentian tab setiap NUM (default 8) lajur cetakan" -#: src/sdiff.c:193 +#: src/sdiff.c:192 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "" "-d, --minimal cuba cari dengan tekun set perbezaan yang kecil" -#: src/sdiff.c:194 +#: src/sdiff.c:193 msgid "" "-H, --speed-large-files assume large files, many scattered small changes" msgstr "" "-H, --speed-large-files anggap fail besar, banyak perubahan kecil " "bertaburan" -#: src/sdiff.c:195 +#: src/sdiff.c:194 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr " --diff-program=PROGRAM guna PROGRAM untuk membanding fail" -#: src/sdiff.c:197 +#: src/sdiff.c:196 msgid " --help display this help and exit" msgstr " --help paparkan bantuan ini dan keluar" -#: src/sdiff.c:198 +#: src/sdiff.c:197 msgid "-v, --version output version information and exit" msgstr "-v, --version papar maklumat versi dan keluar" -#: src/sdiff.c:207 +#: src/sdiff.c:206 #, c-format msgid "Usage: %s [OPTION]... FILE1 FILE2\n" msgstr "Penggunaan: %s [PILIHAN]... FAIL1 FAIL2\n" -#: src/sdiff.c:209 +#: src/sdiff.c:208 msgid "Side-by-side merge of differences between FILE1 and FILE2." msgstr "Gabung bersebelahan bagi perbezaaan antara FAIL1 dan FAIL2." -#: src/sdiff.c:330 +#: src/sdiff.c:328 msgid "cannot interactively merge standard input" msgstr "tidak dapat menggabung masukan piawai secara interaktif" -#: src/sdiff.c:597 +#: src/sdiff.c:594 msgid "both files to be compared are directories" msgstr "kedua-dua fail yang akan dibanding adalah direktori" -#: src/sdiff.c:820 +#: src/sdiff.c:817 msgid "" "ed:\tEdit then use both versions, each decorated with a header.\n" "eb:\tEdit then use both versions.\n" @@ -1457,29 +1466,12 @@ msgstr "" "v:\tSertakan baris sama dengan berjela.\n" "q:\tKeluar.\n" -#: src/util.c:662 +#: src/util.c:755 #, c-format msgid "unrecognized prefix: %s" msgstr "prefix tidak dikenali: %s" -#: src/util.c:692 +#: src/util.c:785 #, c-format msgid "unparsable value for --palette" -msgstr "" - -#, fuzzy, c-format -#~| msgid "invalid --bytes value `%s'" -#~ msgid "invalid %s%s argument '%s'" -#~ msgstr "hujah tidak sah %s bagi %s" - -#, fuzzy, c-format -#~ msgid "invalid suffix in %s%s argument '%s'" -#~ msgstr "hujah tidak sah %s untuk %s" - -#, fuzzy, c-format -#~ msgid "%s%s argument '%s' too large" -#~ msgstr "kod bagi token %s terlalu besar" - -#, c-format -#~ msgid "%s home page: \n" -#~ msgstr "Laman web %s: \n" +msgstr "nilai tidak boleh dihuraikan untuk --palette" diff --git a/po/nb.po b/po/nb.po index d5dddd8..115e467 100644 --- a/po/nb.po +++ b/po/nb.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: diffutils-3.7.41\n" "Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n" -"POT-Creation-Date: 2021-08-01 18:56-0700\n" +"POT-Creation-Date: 2023-05-21 01:51-0700\n" "PO-Revision-Date: 2021-07-20 14:10+0200\n" "Last-Translator: Johnny A. Solbu \n" "Language-Team: Norwegian Bokmaal \n" @@ -20,29 +20,29 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Generator: Poedit 2.2.3\n" -#: lib/argmatch.c:132 +#: lib/argmatch.c:145 #, c-format msgid "invalid argument %s for %s" msgstr "argumentet %s er ugyldig for %s" -#: lib/argmatch.c:133 +#: lib/argmatch.c:146 #, c-format msgid "ambiguous argument %s for %s" msgstr "argumentet %s er flertydig for %s" -#: lib/argmatch.c:152 lib/argmatch.h:223 +#: lib/argmatch.c:165 lib/argmatch.h:242 msgid "Valid arguments are:" msgstr "Følgende argumenter kan brukes:" -#: lib/c-stack.c:187 +#: lib/c-stack.c:186 msgid "program error" msgstr "programfeil" -#: lib/c-stack.c:188 +#: lib/c-stack.c:187 msgid "stack overflow" msgstr "stabel er full" -#: lib/error.c:195 +#: lib/error.c:193 msgid "Unknown system error" msgstr "Ukjent systemfeil" @@ -198,83 +198,83 @@ msgstr "%s: valget -- «%c» krever et argument\n" #. If you don't know what to put here, please see #. #. and use glyphs suitable for your language. -#: lib/quotearg.c:355 +#: lib/quotearg.c:354 msgid "`" msgstr "«" -#: lib/quotearg.c:356 +#: lib/quotearg.c:355 msgid "'" msgstr "»" -#: lib/regcomp.c:135 +#: lib/regcomp.c:122 msgid "Success" msgstr "Fullført" -#: lib/regcomp.c:138 +#: lib/regcomp.c:125 msgid "No match" msgstr "Ingen treff" -#: lib/regcomp.c:141 +#: lib/regcomp.c:128 msgid "Invalid regular expression" msgstr "Ugyldig regulært uttrykk" -#: lib/regcomp.c:144 +#: lib/regcomp.c:131 msgid "Invalid collation character" msgstr "Ugyldig sorteringstegn" -#: lib/regcomp.c:147 +#: lib/regcomp.c:134 msgid "Invalid character class name" msgstr "Ugyldig tegnklassenavn" -#: lib/regcomp.c:150 +#: lib/regcomp.c:137 msgid "Trailing backslash" msgstr "Etterfølgende omvendt skrÃ¥strek" -#: lib/regcomp.c:153 +#: lib/regcomp.c:140 msgid "Invalid back reference" msgstr "Ugyldig tilbakereferanse" -#: lib/regcomp.c:156 +#: lib/regcomp.c:143 msgid "Unmatched [, [^, [:, [., or [=" msgstr "Ingen treff pÃ¥ «[», «[^», «[:», «[.» eller «[=»" -#: lib/regcomp.c:159 +#: lib/regcomp.c:146 msgid "Unmatched ( or \\(" msgstr "Ingen treff pÃ¥ «(» eller «\\(»" -#: lib/regcomp.c:162 +#: lib/regcomp.c:149 msgid "Unmatched \\{" msgstr "Ingen treff pÃ¥ «\\{{»" -#: lib/regcomp.c:165 +#: lib/regcomp.c:152 msgid "Invalid content of \\{\\}" msgstr "Ugyldig innhold i «\\{\\}»" -#: lib/regcomp.c:168 +#: lib/regcomp.c:155 msgid "Invalid range end" msgstr "Ugyldig slutt pÃ¥ rekkevidde" -#: lib/regcomp.c:171 +#: lib/regcomp.c:158 msgid "Memory exhausted" msgstr "Minnet er fullt" -#: lib/regcomp.c:174 +#: lib/regcomp.c:161 msgid "Invalid preceding regular expression" msgstr "Ugyldig foregÃ¥ende regulært uttrykk" -#: lib/regcomp.c:177 +#: lib/regcomp.c:164 msgid "Premature end of regular expression" msgstr "For tidlig slutt pÃ¥ regulært uttrykk" -#: lib/regcomp.c:180 +#: lib/regcomp.c:167 msgid "Regular expression too big" msgstr "Regulært uttrykk er for stort" -#: lib/regcomp.c:183 +#: lib/regcomp.c:170 msgid "Unmatched ) or \\)" msgstr "Ingen treff pÃ¥ «)» eller «\\)»" -#: lib/regcomp.c:676 +#: lib/regcomp.c:650 msgid "No previous regular expression" msgstr "Intet tidligere regulært uttrykk" @@ -472,17 +472,17 @@ msgstr "Nettside for %s: <%s>\n" msgid "General help using GNU software: <%s>\n" msgstr "Generell hjelp til bruk av GNU-programvare: <%s>\n" -#: src/analyze.c:454 src/diff.c:1406 +#: src/analyze.c:455 src/diff.c:1478 #, c-format msgid "Files %s and %s differ\n" msgstr "Filene %s og %s er ulike\n" -#: src/analyze.c:455 +#: src/analyze.c:456 #, c-format msgid "Binary files %s and %s differ\n" msgstr "Binærfilene %s og %s er ulike\n" -#: src/analyze.c:706 src/diff3.c:1470 src/util.c:1254 +#: src/analyze.c:707 src/diff3.c:1457 src/util.c:1354 msgid "No newline at end of file" msgstr "Intet linjeskift i slutten av fila" @@ -496,41 +496,42 @@ msgstr "Torbjörn Granlund" msgid "David MacKenzie" msgstr "David MacKenzie" -#: src/cmp.c:120 src/diff.c:879 src/diff3.c:467 src/sdiff.c:160 +#: src/cmp.c:124 src/diff.c:939 src/diff3.c:465 src/sdiff.c:159 #, c-format msgid "Try '%s --help' for more information." msgstr "Prøv «%s --help» for ytterligere informasjon." -#: src/cmp.c:138 +#: src/cmp.c:142 #, c-format msgid "invalid --ignore-initial value '%s'" msgstr "«%s» er en ugyldig verdi for «--ignore-initial»" -#: src/cmp.c:148 +#: src/cmp.c:152 #, c-format msgid "options -l and -s are incompatible" msgstr "valgene «-l» og «-s» kan ikke brukes samtidig" -#: src/cmp.c:156 src/diff.c:887 src/diff3.c:474 src/sdiff.c:168 src/sdiff.c:316 -#: src/sdiff.c:323 src/sdiff.c:876 src/util.c:852 src/util.c:952 src/util.c:959 +#: src/cmp.c:160 src/diff.c:947 src/diff3.c:472 src/sdiff.c:167 src/sdiff.c:314 +#: src/sdiff.c:321 src/sdiff.c:873 src/util.c:952 src/util.c:1052 +#: src/util.c:1059 msgid "write failed" msgstr "skriving mislyktes" -#: src/cmp.c:158 src/diff.c:889 src/diff.c:1471 src/diff3.c:476 src/sdiff.c:170 +#: src/cmp.c:162 src/diff.c:949 src/diff.c:1543 src/diff3.c:474 src/sdiff.c:169 msgid "standard output" msgstr "standardutdata" -#: src/cmp.c:162 +#: src/cmp.c:166 msgid "-b, --print-bytes print differing bytes" msgstr "-b, --print-bytes skriv ut byte som er ulike" -#: src/cmp.c:163 +#: src/cmp.c:167 msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs" msgstr "" "-i, --ignore-initial=ANT hopp over første valgt ANTall byte begge " "FILer" -#: src/cmp.c:164 +#: src/cmp.c:168 msgid "" "-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n" " first SKIP2 bytes of FILE2" @@ -538,38 +539,38 @@ msgstr "" "-i, --ignore-initial=ANT1:ANT2 hopp over første valgt ANT1 byte i FIL1 og\n" " ANT2 byte i FIL2" -#: src/cmp.c:166 +#: src/cmp.c:170 msgid "" "-l, --verbose output byte numbers and differing byte values" msgstr "" "-l, --verbose skriv ut byte-nummer og avvikende byte-verdier" -#: src/cmp.c:167 +#: src/cmp.c:171 msgid "-n, --bytes=LIMIT compare at most LIMIT bytes" msgstr "-n, --bytes=ANT ikke sammenlikn flere enn valgt ANTall byte" -#: src/cmp.c:168 +#: src/cmp.c:172 msgid "-s, --quiet, --silent suppress all normal output" msgstr "-s, --quiet, --silent ikke skriv ut vanlig utdata" -#: src/cmp.c:169 +#: src/cmp.c:173 msgid " --help display this help and exit" msgstr " --help vis denne hjelpeteksten og avslutt" -#: src/cmp.c:170 +#: src/cmp.c:174 msgid "-v, --version output version information and exit" msgstr "-v, --version skriv ut versjonsinformasjon og avslutt" -#: src/cmp.c:179 +#: src/cmp.c:183 #, c-format msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n" msgstr "Bruk: %s [VALG] … FIL1 [FIL2 [ANT1 [ANT2]]]\n" -#: src/cmp.c:181 +#: src/cmp.c:185 msgid "Compare two files byte by byte." msgstr "Sammenlikn to filer byte for byte." -#: src/cmp.c:183 +#: src/cmp.c:187 msgid "" "The optional SKIP1 and SKIP2 specify the number of bytes to skip\n" "at the beginning of each file (zero by default)." @@ -577,14 +578,14 @@ msgstr "" "Du kan hoppe over valgfritt ANT1 og ANT2 byte i begynnelsen\n" "av henholdsvis første og andre fil (standard er null)." -#: src/cmp.c:186 src/diff.c:999 src/diff3.c:514 src/sdiff.c:211 +#: src/cmp.c:190 src/diff.c:1059 src/diff3.c:512 src/sdiff.c:210 msgid "" "Mandatory arguments to long options are mandatory for short options too.\n" msgstr "" "Argumenter som er obligatoriske for lange valg, er ogsÃ¥ obligatoriske for " "korte valg.\n" -#: src/cmp.c:192 +#: src/cmp.c:196 msgid "" "SKIP values may be followed by the following multiplicative suffixes:\n" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" @@ -594,194 +595,194 @@ msgstr "" "kB (1000), K (1024), MB (1 000 000), M (1 048 576),\n" "GB (1 000 000 000), G (1 073 741 824), og sÃ¥ videre (T, P, E, Z, Y)." -#: src/cmp.c:195 +#: src/cmp.c:199 msgid "If a FILE is '-' or missing, read standard input." msgstr "Hvis FIL er tom eller «-», leser programmet standard inndata." -#: src/cmp.c:196 src/diff.c:987 src/sdiff.c:221 +#: src/cmp.c:200 src/diff.c:1047 src/sdiff.c:220 msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble." msgstr "" "Avsluttende status er 0 hvis inndata er like, 1 hvis ulike og 2 hvis det " "oppstÃ¥r problemer." -#: src/cmp.c:243 +#: src/cmp.c:247 #, c-format msgid "invalid --bytes value '%s'" msgstr "«%s» er en ugyldig verdi for «--bytes»" -#: src/cmp.c:269 src/diff.c:797 src/diff3.c:361 src/sdiff.c:567 +#: src/cmp.c:273 src/diff.c:857 src/diff3.c:368 src/sdiff.c:564 #, c-format msgid "missing operand after '%s'" msgstr "operand mangler etter «%s»" -#: src/cmp.c:281 src/diff.c:799 src/diff3.c:363 src/sdiff.c:569 +#: src/cmp.c:285 src/diff.c:859 src/diff3.c:370 src/sdiff.c:566 #, c-format msgid "extra operand '%s'" msgstr "ekstra operand «%s»" -#: src/cmp.c:507 +#: src/cmp.c:521 #, c-format msgid "%s %s differ: byte %s, line %s\n" msgstr "%s %s er ulike: byte %s, linje %s\n" -#: src/cmp.c:523 +#: src/cmp.c:537 #, c-format msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n" msgstr "%s %s er ulike: byte %s, linje %s er %3o %s %3o %s\n" -#: src/cmp.c:580 +#: src/cmp.c:594 #, c-format msgid "cmp: EOF on %s which is empty\n" msgstr "cmp: EOF pÃ¥ %s, som er tom\n" -#: src/cmp.c:594 +#: src/cmp.c:608 #, c-format msgid "cmp: EOF on %s after byte %s, line %s\n" msgstr "cmp: EOF pÃ¥ %s etter byte %s, linje %s\n" -#: src/cmp.c:595 +#: src/cmp.c:609 #, c-format msgid "cmp: EOF on %s after byte %s, in line %s\n" msgstr "cmp: EOF pÃ¥ %s etter byte %s, pÃ¥ linje %s\n" -#: src/cmp.c:601 +#: src/cmp.c:615 #, c-format msgid "cmp: EOF on %s after byte %s\n" msgstr "cmp: EOF pÃ¥ %s etter byte %s\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:51 +#: src/diff.c:50 msgid "Paul Eggert" msgstr "Paul Eggert" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:52 +#: src/diff.c:51 msgid "Mike Haertel" msgstr "Mike Haertel" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:53 +#: src/diff.c:52 msgid "David Hayes" msgstr "David Hayes" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:54 +#: src/diff.c:53 msgid "Richard Stallman" msgstr "Richard Stallman" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:55 +#: src/diff.c:54 msgid "Len Tower" msgstr "Len Tower" -#: src/diff.c:355 +#: src/diff.c:365 #, c-format msgid "invalid context length '%s'" msgstr "«%s» er en ugyldig kontekstlengde" -#: src/diff.c:438 +#: src/diff.c:487 #, c-format msgid "pagination not supported on this host" msgstr "sidedeling støttes ikke pÃ¥ denne verten" -#: src/diff.c:453 src/diff3.c:341 +#: src/diff.c:502 src/diff3.c:348 #, c-format msgid "too many file label options" msgstr "for mange filetikett-valg" -#: src/diff.c:530 +#: src/diff.c:579 #, c-format msgid "invalid width '%s'" msgstr "«%s» er en ugyldig bredde" -#: src/diff.c:534 +#: src/diff.c:583 msgid "conflicting width options" msgstr "breddevalg i konflikt" -#: src/diff.c:559 +#: src/diff.c:608 #, c-format msgid "invalid horizon length '%s'" msgstr "«%s» er en ugyldig horisontlengde" -#: src/diff.c:615 +#: src/diff.c:664 #, c-format msgid "invalid tabsize '%s'" msgstr "«%s» er en ugyldig tabulatorstørrelse" -#: src/diff.c:619 +#: src/diff.c:668 msgid "conflicting tabsize options" msgstr "tabulatorvalg i konflikt" -#: src/diff.c:774 +#: src/diff.c:834 msgid "--from-file and --to-file both specified" msgstr "du har valgt bÃ¥de «--from-file» og «--to-file»" -#: src/diff.c:893 +#: src/diff.c:953 msgid " --normal output a normal diff (the default)" msgstr "" " --normal skriv ut en normal diff (dette er standard)" -#: src/diff.c:894 +#: src/diff.c:954 msgid "-q, --brief report only when files differ" msgstr "-q, --brief bare rapporter nÃ¥r filer er ulike" -#: src/diff.c:895 +#: src/diff.c:955 msgid "-s, --report-identical-files report when two files are the same" msgstr "-s, --report-identical-files rapporter nÃ¥r to filer er like" -#: src/diff.c:896 +#: src/diff.c:956 msgid "" "-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context" msgstr "" "-c, -C ANT, --context[=ANT] skriv ut valgt ANTall linjer med kopiert " "kontekst (standard: 3)" -#: src/diff.c:897 +#: src/diff.c:957 msgid "" "-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context" msgstr "" "-u, -U ANT, --unified[=ANT] skriv ut valgt ANTall linjer med sammenslÃ¥tt " "kontekst (standard: 3)" -#: src/diff.c:898 +#: src/diff.c:958 msgid "-e, --ed output an ed script" msgstr "-e, --ed skriv ut et ed-skript" -#: src/diff.c:899 +#: src/diff.c:959 msgid "-n, --rcs output an RCS format diff" msgstr "-n, --rcs skriv ut diff i RCS-format" -#: src/diff.c:900 +#: src/diff.c:960 msgid "-y, --side-by-side output in two columns" msgstr "-y, --side-by-side skriv ut i to kolonner" -#: src/diff.c:901 +#: src/diff.c:961 msgid "" "-W, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-W, --width=ANT skriv ut maks valgt ANTall kolonner (standard: " "130)" -#: src/diff.c:902 +#: src/diff.c:962 msgid "" " --left-column output only the left column of common lines" msgstr "" " --left-column bare skriv ut venstre kolonne med felles linjer" -#: src/diff.c:903 +#: src/diff.c:963 msgid " --suppress-common-lines do not output common lines" msgstr " --suppress-common-lines ikke skriv ut felles linjer" -#: src/diff.c:905 +#: src/diff.c:965 msgid "-p, --show-c-function show which C function each change is in" msgstr "" "-p, --show-c-function vis hvilken C-funksjon hver endring ligger i" -#: src/diff.c:906 +#: src/diff.c:966 msgid "-F, --show-function-line=RE show the most recent line matching RE" msgstr "-F, --show-function-line=RE vis nyeste linje som samsvarer med RE" -#: src/diff.c:907 +#: src/diff.c:967 msgid "" " --label LABEL use LABEL instead of file name and timestamp\n" " (can be repeated)" @@ -790,84 +791,84 @@ msgstr "" "tidsstempel\n" " (dette kan gjentas)" -#: src/diff.c:910 +#: src/diff.c:970 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "" "-t, --expand-tabs utvid tabulatorer til mellomrom pÃ¥ utskrift" -#: src/diff.c:911 +#: src/diff.c:971 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T, --initial-tab still opp tabulatorer ved Ã¥ legge til en " "tabulator først" -#: src/diff.c:912 +#: src/diff.c:972 msgid "" " --tabsize=NUM tab stops every NUM (default 8) print columns" msgstr "" " --tabsize=NUM tabulatorer stopper for hvert valgte " "utskriftskolonne-NUMmer (standard: 8)" -#: src/diff.c:913 +#: src/diff.c:973 msgid "" " --suppress-blank-empty suppress space or tab before empty output lines" msgstr "" " --suppress-blank-empty ikke skriv ut mellomrom eller tabulator før " "tomme linjer" -#: src/diff.c:914 +#: src/diff.c:974 msgid "-l, --paginate pass output through 'pr' to paginate it" msgstr "-l, --paginate del utdata i sider via «pr»" -#: src/diff.c:916 +#: src/diff.c:976 msgid "" "-r, --recursive recursively compare any subdirectories found" msgstr "-r, --recursive sammenlikn evt. undermapper rekursivt" -#: src/diff.c:917 +#: src/diff.c:977 msgid " --no-dereference don't follow symbolic links" msgstr " --no-dereference ikke følg symbolske lenker" -#: src/diff.c:918 +#: src/diff.c:978 msgid "-N, --new-file treat absent files as empty" msgstr "-N, --new-file behandle fraværende filer som tomme" -#: src/diff.c:919 +#: src/diff.c:979 msgid " --unidirectional-new-file treat absent first files as empty" msgstr " --unidirectional-new-file behandle fraværende førstefil som tom" -#: src/diff.c:920 +#: src/diff.c:980 msgid " --ignore-file-name-case ignore case when comparing file names" msgstr "" " --ignore-file-name-case skill mellom store og smÃ¥ bokstaver ved " "sammenlikning av filnavn" -#: src/diff.c:921 +#: src/diff.c:981 msgid " --no-ignore-file-name-case consider case when comparing file names" msgstr "" " --no-ignore-file-name-case skill mellom store og smÃ¥ bokstaver ved " "sammenlikning av filnavn" -#: src/diff.c:922 +#: src/diff.c:982 msgid "-x, --exclude=PAT exclude files that match PAT" msgstr "" "-x, --exclude=MØN utelat filer som samsvarer med valgt MØNster" -#: src/diff.c:923 +#: src/diff.c:983 msgid "" "-X, --exclude-from=FILE exclude files that match any pattern in FILE" msgstr "" "-X, --exclude-from=FIL utelat filer som samsvarer med mønster(e) i " "valgt FIL" -#: src/diff.c:924 +#: src/diff.c:984 msgid "" "-S, --starting-file=FILE start with FILE when comparing directories" msgstr "" "-S, --starting-file=FIL begynn med valgt FIL ved sammenlikning av " "mapper" -#: src/diff.c:925 +#: src/diff.c:985 msgid "" " --from-file=FILE1 compare FILE1 to all operands;\n" " FILE1 can be a directory" @@ -875,7 +876,7 @@ msgstr "" " --from-file=FIL1 sammenlikn FIL1 med alle operand-er\n" " (FIL1 kan være en mappe)" -#: src/diff.c:927 +#: src/diff.c:987 msgid "" " --to-file=FILE2 compare all operands to FILE2;\n" " FILE2 can be a directory" @@ -883,78 +884,78 @@ msgstr "" " --to-file=FIL2 sammenlikn alle operand-er med FIL2\n" " (FIL2 kan være en mappe)" -#: src/diff.c:930 +#: src/diff.c:990 msgid "" "-i, --ignore-case ignore case differences in file contents" msgstr "" "-i, --ignore-case ikke skill mellom smÃ¥ og store bokstaver i " "fil-innhold" -#: src/diff.c:931 +#: src/diff.c:991 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E, --ignore-tab-expansion ignorer endringer som skyldes tabulator-" "utvidelse" -#: src/diff.c:932 +#: src/diff.c:992 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "-Z, --ignore-trailing-space ignorer blanktegn i slutten av linjer" -#: src/diff.c:933 +#: src/diff.c:993 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "-b, --ignore-space-change ignorer endringer i antall blanktegn" -#: src/diff.c:934 +#: src/diff.c:994 msgid "-w, --ignore-all-space ignore all white space" msgstr "-w, --ignore-all-space ignorer alle blanktegn" -#: src/diff.c:935 +#: src/diff.c:995 msgid "" "-B, --ignore-blank-lines ignore changes where lines are all blank" msgstr "" "-B, --ignore-blank-lines ignorer endringer nÃ¥r alle linjer er tomme" -#: src/diff.c:936 +#: src/diff.c:996 msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE" msgstr "" "-I, --ignore-matching-lines=RE ignorer endringer nÃ¥r alle linjer samsvarer " "med RE" -#: src/diff.c:938 +#: src/diff.c:998 msgid "-a, --text treat all files as text" msgstr "-a, --text behandle filer som tekst" -#: src/diff.c:939 +#: src/diff.c:999 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr fjern etterfølgende linjeskift-tegn fra " "inndata" -#: src/diff.c:941 +#: src/diff.c:1001 msgid " --binary read and write data in binary mode" msgstr " --binary les og skriv data i binærmodus" -#: src/diff.c:944 +#: src/diff.c:1004 msgid "" "-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs" msgstr "" "-D, --ifdef=NAVN skriv ut sammenslÃ¥tt fil med ulikheter i " "«#ifdef NAVN»" -#: src/diff.c:945 +#: src/diff.c:1005 msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT" msgstr " --GTYPE-group-format=GFMT formater GTYPE-inndatagrupper med GFMT" -#: src/diff.c:946 +#: src/diff.c:1006 msgid " --line-format=LFMT format all input lines with LFMT" msgstr " --line-format=LFMT formater inndatalinjer med LFMT" -#: src/diff.c:947 +#: src/diff.c:1007 msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT" msgstr " --LTYPE-line-format=LFMT formater LTYPE-inndatalinjer med LFMT" -#: src/diff.c:948 +#: src/diff.c:1008 msgid "" " These format options provide fine-grained control over the output\n" " of diff, generalizing -D/--ifdef." @@ -962,13 +963,13 @@ msgstr "" " Disse formatvalgene gjør det mulig Ã¥ detaljstyre utdata\n" " fra diff, og generaliserer -D/--ifdef." -#: src/diff.c:950 +#: src/diff.c:1010 msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'." msgstr "" " LTYPE er enten «old», «new» eller «unchanged». GTYPE er enten LTYPE eller " "«changed»." -#: src/diff.c:951 +#: src/diff.c:1011 msgid "" " GFMT (only) may contain:\n" " %< lines from FILE1\n" @@ -998,7 +999,7 @@ msgstr "" " M L+1\n" " %(A=B?T:E) hvis A er lik B, sÃ¥ T eller E" -#: src/diff.c:963 +#: src/diff.c:1023 msgid "" " LFMT (only) may contain:\n" " %L contents of line\n" @@ -1011,7 +1012,7 @@ msgstr "" " %[-][BREDDE][.[PREC]]{doxX}n spesifikasjon av inndata-linjenummer i " "printf-stil" -#: src/diff.c:967 +#: src/diff.c:1027 msgid "" " Both GFMT and LFMT may contain:\n" " %% %\n" @@ -1025,21 +1026,21 @@ msgstr "" " %c'\\OOO' tegnet med oktalkode OOO\n" " C tegnet C (andre tegn representerer seg selv)" -#: src/diff.c:973 +#: src/diff.c:1033 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "-d, --minimal prøv hardt Ã¥ finne en mindre rekke endringer" -#: src/diff.c:974 +#: src/diff.c:1034 msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix" msgstr "" " --horizon-lines=ANT behold valgt ANTall linjer av felles pre- og suffiks" -#: src/diff.c:975 +#: src/diff.c:1035 msgid "" " --speed-large-files assume large files and many scattered small changes" msgstr " --speed-large-files forvent store filer og smÃ¥, spredte endringer" -#: src/diff.c:976 +#: src/diff.c:1036 msgid "" " --color[=WHEN] color output; WHEN is 'never', 'always', or " "'auto';\n" @@ -1049,7 +1050,7 @@ msgstr "" "eller\n" " «auto»; kun --color betyr --color=«auto»" -#: src/diff.c:978 +#: src/diff.c:1038 msgid "" " --palette=PALETTE the colors to use when --color is active; PALETTE " "is\n" @@ -1059,112 +1060,112 @@ msgstr "" " PALETT er en kolon-delt liste over terminfo-" "muligheter" -#: src/diff.c:981 +#: src/diff.c:1041 msgid " --help display this help and exit" msgstr " --help vis denne hjelpeteksten og avslutt" -#: src/diff.c:982 +#: src/diff.c:1042 msgid "-v, --version output version information and exit" msgstr "-v, --version vis versjonsinformasjon og avslutt" -#: src/diff.c:984 +#: src/diff.c:1044 msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'." msgstr "FILER er «FIL1 FIL2», «MAPPE1 MAPPE2», «MAPPE FIL» eller «FIL MAPPE»." -#: src/diff.c:985 +#: src/diff.c:1045 msgid "" "If --from-file or --to-file is given, there are no restrictions on FILE(s)." msgstr "" "Programmet bruker ingen restriksjoner pÃ¥ FIL(er) hvis «--from-file» eller «--" "to-file» er valgt." -#: src/diff.c:986 src/diff3.c:533 src/sdiff.c:220 +#: src/diff.c:1046 src/diff3.c:531 src/sdiff.c:219 msgid "If a FILE is '-', read standard input." msgstr "Programmet leser fra standard inndata hvis FIL er «-»." -#: src/diff.c:996 +#: src/diff.c:1056 #, c-format msgid "Usage: %s [OPTION]... FILES\n" msgstr "Bruk: %s [VALG] … FILER\n" -#: src/diff.c:997 +#: src/diff.c:1057 msgid "Compare FILES line by line." msgstr "Sammenlikn FILER linje for linje." -#: src/diff.c:1034 +#: src/diff.c:1094 #, c-format msgid "conflicting %s option value '%s'" msgstr "valget %s er i konflikt med verdien «%s»" -#: src/diff.c:1047 +#: src/diff.c:1107 #, c-format msgid "conflicting output style options" msgstr "utdata-stilvalg er i konflikt med hverandre" -#: src/diff.c:1063 +#: src/diff.c:1123 #, c-format msgid "invalid color '%s'" msgstr "«%s» er en ugyldig farge" -#: src/diff.c:1119 src/diff.c:1329 +#: src/diff.c:1197 src/diff.c:1401 #, c-format msgid "Only in %s: %s\n" msgstr "Bare i %s: %s\n" -#: src/diff.c:1253 +#: src/diff.c:1325 msgid "cannot compare '-' to a directory" msgstr "du kan ikke sammenlikne «-» med en mappe" -#: src/diff.c:1288 +#: src/diff.c:1360 msgid "-D option not supported with directories" msgstr "valget «-D» støttes ikke for mapper" -#: src/diff.c:1297 +#: src/diff.c:1369 #, c-format msgid "Common subdirectories: %s and %s\n" msgstr "Felles undermapper: %s og %s\n" -#: src/diff.c:1339 src/diff.c:1389 +#: src/diff.c:1411 src/diff.c:1461 #, c-format msgid "File %s is a %s while file %s is a %s\n" msgstr "Fila %s er en %s, og fila %s er en %s\n" -#: src/diff.c:1375 +#: src/diff.c:1447 #, c-format msgid "Symbolic links %s and %s differ\n" msgstr "De symbolske lenkene %s og %s er ulike\n" -#: src/diff.c:1462 +#: src/diff.c:1534 #, c-format msgid "Files %s and %s are identical\n" msgstr "Filene %s og %s er identiske\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff3.c:43 +#: src/diff3.c:51 msgid "Randy Smith" msgstr "Randy Smith" -#: src/diff3.c:356 +#: src/diff3.c:363 #, c-format msgid "incompatible options" msgstr "gjeldende valg kan ikke brukes samtidig" -#: src/diff3.c:396 +#: src/diff3.c:403 msgid "'-' specified for more than one input file" msgstr "«-» er valgt for flere enn én inndatafil" -#: src/diff3.c:447 src/diff3.c:1295 src/diff3.c:1698 src/diff3.c:1753 -#: src/sdiff.c:308 src/sdiff.c:846 src/sdiff.c:857 +#: src/diff3.c:445 src/diff3.c:1284 src/diff3.c:1683 src/diff3.c:1738 +#: src/sdiff.c:306 src/sdiff.c:843 src/sdiff.c:854 msgid "read failed" msgstr "lesing mislyktes" -#: src/diff3.c:480 +#: src/diff3.c:478 msgid "-A, --show-all output all changes, bracketing conflicts" msgstr "" "-A, --show-all skriv ut alle endringer, med konflikter i " "parentes" -#: src/diff3.c:482 +#: src/diff3.c:480 msgid "" "-e, --ed output ed script incorporating changes\n" " from OLDFILE to YOURFILE into MYFILE" @@ -1172,12 +1173,12 @@ msgstr "" "-e, --ed skriv ut ed-skript med endringer\n" " mellom GAMMELFIL og NYFIL til FIL" -#: src/diff3.c:484 +#: src/diff3.c:482 msgid "-E, --show-overlap like -e, but bracket conflicts" msgstr "" "-E, --show-overlap likner «-e», men viser konflikter i parentes" -#: src/diff3.c:485 +#: src/diff3.c:483 msgid "" "-3, --easy-only like -e, but incorporate only nonoverlapping " "changes" @@ -1185,24 +1186,24 @@ msgstr "" "-3, --easy-only likner «-e», men tar ikke med endringer som " "overlapper hverandre" -#: src/diff3.c:486 +#: src/diff3.c:484 msgid "" "-x, --overlap-only like -e, but incorporate only overlapping changes" msgstr "" "-x, --overlap-only likner «-e», men tar bare med endringer som " "overlapper hverandre" -#: src/diff3.c:487 +#: src/diff3.c:485 msgid "-X like -x, but bracket conflicts" msgstr "" "-X likner «-x», men viser ogsÃ¥ konflikter i parentes" -#: src/diff3.c:488 +#: src/diff3.c:486 msgid "-i append 'w' and 'q' commands to ed scripts" msgstr "" "-i legg til kommandoene «w» og «q» i ed-skript" -#: src/diff3.c:490 +#: src/diff3.c:488 msgid "" "-m, --merge output actual merged file, according to\n" " -A if no other options are given" @@ -1210,26 +1211,26 @@ msgstr "" "-m, --merge skriv ut sammenslÃ¥tt fil ihht. «-A»,\n" " med mindre noe annet er valgt" -#: src/diff3.c:493 +#: src/diff3.c:491 msgid "-a, --text treat all files as text" msgstr "-a, --text behandle filer som tekst" -#: src/diff3.c:494 +#: src/diff3.c:492 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr fjern etterfølgende linjeskift-tegn fra inndata" -#: src/diff3.c:495 +#: src/diff3.c:493 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T, --initial-tab still opp tabulatorer pÃ¥ rekke ved Ã¥ legge til " "en ekstra tab foran" -#: src/diff3.c:496 +#: src/diff3.c:494 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr " --diff-program=PROGRAM bruk valgt PROGRAM til Ã¥ sammenlikne filer" -#: src/diff3.c:497 +#: src/diff3.c:495 msgid "" "-L, --label=LABEL use LABEL instead of file name\n" " (can be repeated up to three times)" @@ -1237,24 +1238,24 @@ msgstr "" "-L, --label=ETIKETT bruk valgt ETIKETT i stedet for filnavn\n" " (dette kan gjentas opptil tre ganger)" -#: src/diff3.c:500 +#: src/diff3.c:498 msgid " --help display this help and exit" msgstr " --help vis denne hjelpeteksten og avslutt" -#: src/diff3.c:501 +#: src/diff3.c:499 msgid "-v, --version output version information and exit" msgstr "-v, --version vis versjonsinformasjon og avslutt" -#: src/diff3.c:510 +#: src/diff3.c:508 #, c-format msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n" msgstr "Usage: %s [VALG] … FIL GAMMELFIL NYFIL\n" -#: src/diff3.c:512 +#: src/diff3.c:510 msgid "Compare three files line by line." msgstr "Sammenlikn tre filer, linje for linje." -#: src/diff3.c:522 +#: src/diff3.c:520 msgid "" "\n" "The default output format is a somewhat human-readable representation of\n" @@ -1278,56 +1279,56 @@ msgstr "" "og skrive ut sammenslÃ¥tt fil. Dette er sikrere for behandling av\n" "uvanlig inndata enn Ã¥ bruke ed.\n" -#: src/diff3.c:534 +#: src/diff3.c:532 msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble." msgstr "" "Avsluttende status er 0 hvis alt er i orden, 1 ved konflikter og 2 ved " "problemer." -#: src/diff3.c:727 +#: src/diff3.c:725 msgid "internal error: screwup in format of diff blocks" msgstr "intern feil: rot i diff-blokkformat" -#: src/diff3.c:1022 +#: src/diff3.c:1015 #, c-format msgid "%s: diff failed: " msgstr "%s: diff mislyktes: " -#: src/diff3.c:1044 +#: src/diff3.c:1037 msgid "internal error: invalid diff type in process_diff" msgstr "intern feil: ugyldig diff-type i process_diff" -#: src/diff3.c:1069 +#: src/diff3.c:1060 msgid "invalid diff format; invalid change separator" msgstr "ugyldig diff-format. Ugyldig endringsskilletegn" -#: src/diff3.c:1305 +#: src/diff3.c:1294 msgid "invalid diff format; incomplete last line" msgstr "ugyldig diff-format. Siste linje er ufullstendig" -#: src/diff3.c:1329 src/sdiff.c:276 src/util.c:969 +#: src/diff3.c:1318 src/sdiff.c:274 src/util.c:1069 #, c-format msgid "subsidiary program '%s' could not be invoked" msgstr "klarte ikke Ã¥ starte hjelpeprogrammet «%s»" -#: src/diff3.c:1354 +#: src/diff3.c:1343 msgid "invalid diff format; incorrect leading line chars" msgstr "ugyldig diff-format. Feil ledende linjetegn" -#: src/diff3.c:1427 +#: src/diff3.c:1416 msgid "internal error: invalid diff type passed to output" msgstr "intern feil: ugyldig diff-type sendt til utdata" -#: src/diff3.c:1700 src/diff3.c:1757 +#: src/diff3.c:1685 src/diff3.c:1742 msgid "input file shrank" msgstr "inndata-fila er krympet" -#: src/dir.c:156 +#: src/dir.c:154 #, c-format msgid "cannot compare file names '%s' and '%s'" msgstr "klarte ikke Ã¥ sammenlikne filnavn «%s» med «%s»" -#: src/dir.c:225 +#: src/dir.c:223 #, c-format msgid "%s: recursive directory loop" msgstr "%s: rekursiv mappesløyfe" @@ -1337,125 +1338,125 @@ msgstr "%s: rekursiv mappesløyfe" msgid "Thomas Lord" msgstr "Thomas Lord" -#: src/sdiff.c:174 +#: src/sdiff.c:173 msgid "" "-o, --output=FILE operate interactively, sending output to FILE" msgstr "-o, --output=FIL jobb interaktivt, og send utdata til FIL" -#: src/sdiff.c:176 +#: src/sdiff.c:175 msgid "" "-i, --ignore-case consider upper- and lower-case to be the same" msgstr "-i, --ignore-case ikke skill mellom store og smÃ¥ bokstaver" -#: src/sdiff.c:177 +#: src/sdiff.c:176 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E, --ignore-tab-expansion ikke regn tabulator-forskjeller som endringer" -#: src/sdiff.c:178 +#: src/sdiff.c:177 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "-Z, --ignore-trailing-space ignorer blanktegn i slutten av linjer" -#: src/sdiff.c:179 +#: src/sdiff.c:178 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "" "-b, --ignore-space-change ikke regn ulikt antall blanktegn som endringer" -#: src/sdiff.c:180 +#: src/sdiff.c:179 msgid "-W, --ignore-all-space ignore all white space" msgstr "-W, --ignore-all-space ignorer alle blanktegn" -#: src/sdiff.c:181 +#: src/sdiff.c:180 msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank" msgstr "" "-B, --ignore-blank-lines ignorer endringer hvis linjer er fullstendig " "tomme" -#: src/sdiff.c:182 +#: src/sdiff.c:181 msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE" msgstr "" "-I, --ignore-matching-lines=RE ignorer endringer hvis linjer samsvarer med " "RE" -#: src/sdiff.c:183 +#: src/sdiff.c:182 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr fjern etterfølgende linjeskift-tegn fra inndata" -#: src/sdiff.c:184 +#: src/sdiff.c:183 msgid "-a, --text treat all files as text" msgstr "-a, --text behandle filer som tekst" -#: src/sdiff.c:186 +#: src/sdiff.c:185 msgid "" "-w, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-w, --width=ANT ikke skriv ut flere enn valgt ANTall kolonner " "(standard: 130)" -#: src/sdiff.c:187 +#: src/sdiff.c:186 msgid "" "-l, --left-column output only the left column of common lines" msgstr "" "-l, --left-column bare skriv ut venstre kolonne med felles linjer" -#: src/sdiff.c:188 +#: src/sdiff.c:187 msgid "-s, --suppress-common-lines do not output common lines" msgstr "-s, --suppress-common-lines ikke skriv ut felles linjer" -#: src/sdiff.c:190 +#: src/sdiff.c:189 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "-t, --expand-tabs utvid tabulatorer til mellomrom i utdata" -#: src/sdiff.c:191 +#: src/sdiff.c:190 msgid "" " --tabsize=NUM tab stops at every NUM (default 8) print columns" msgstr "" " --tabsize=NUM tabulatorer slutter ved hvert valgte " "kolonneNUMmer (standard: 8)" -#: src/sdiff.c:193 +#: src/sdiff.c:192 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "-d, --minimal prøv hardt Ã¥ finne smÃ¥ endringer" -#: src/sdiff.c:194 +#: src/sdiff.c:193 msgid "" "-H, --speed-large-files assume large files, many scattered small changes" msgstr "" "-H, --speed-large-files forvent store filer med smÃ¥, spredte endringer" -#: src/sdiff.c:195 +#: src/sdiff.c:194 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr "" " --diff-program=PROGRAM bruk valgt PROGRAM til Ã¥ sammenlikne filer" -#: src/sdiff.c:197 +#: src/sdiff.c:196 msgid " --help display this help and exit" msgstr " --help vis denne hjelpeteksten og avslutt" -#: src/sdiff.c:198 +#: src/sdiff.c:197 msgid "-v, --version output version information and exit" msgstr "-v, --version vis versjonsinformasjon og avslutt" -#: src/sdiff.c:207 +#: src/sdiff.c:206 #, c-format msgid "Usage: %s [OPTION]... FILE1 FILE2\n" msgstr "Bruk: %s [VALG] … FIL1 FIL2\n" -#: src/sdiff.c:209 +#: src/sdiff.c:208 msgid "Side-by-side merge of differences between FILE1 and FILE2." msgstr "SammenslÃ¥ing av forskjeller mellom FIL1 og FIL2, side ved side." -#: src/sdiff.c:330 +#: src/sdiff.c:328 msgid "cannot interactively merge standard input" msgstr "du kan ikke slÃ¥ sammen standard inndata interaktivt" -#: src/sdiff.c:597 +#: src/sdiff.c:594 msgid "both files to be compared are directories" msgstr "begge filer som skal sammenliknes er mapper" -#: src/sdiff.c:820 +#: src/sdiff.c:817 msgid "" "ed:\tEdit then use both versions, each decorated with a header.\n" "eb:\tEdit then use both versions.\n" @@ -1479,12 +1480,12 @@ msgstr "" "v:\tTa med felles linjer og gi beskjed.\n" "q:\tAvslutt.\n" -#: src/util.c:662 +#: src/util.c:755 #, c-format msgid "unrecognized prefix: %s" msgstr "ukjent prefiks: %s" -#: src/util.c:692 +#: src/util.c:785 #, c-format msgid "unparsable value for --palette" msgstr "«--palette» har uforstÃ¥elig verdi" diff --git a/po/nl.po b/po/nl.po index bac316f..8dcf134 100644 --- a/po/nl.po +++ b/po/nl.po @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: diffutils-3.7.41\n" "Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n" -"POT-Creation-Date: 2021-08-01 18:56-0700\n" +"POT-Creation-Date: 2023-05-21 01:51-0700\n" "PO-Revision-Date: 2021-07-22 09:32+0200\n" "Last-Translator: Benno Schulenberg \n" "Language-Team: Dutch \n" @@ -21,29 +21,29 @@ msgstr "" "X-Bugs: Report translation errors to the Language-Team address.\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: lib/argmatch.c:132 +#: lib/argmatch.c:145 #, c-format msgid "invalid argument %s for %s" msgstr "ongeldig argument %s van %s" -#: lib/argmatch.c:133 +#: lib/argmatch.c:146 #, c-format msgid "ambiguous argument %s for %s" msgstr "argument %s van %s is niet eenduidig" -#: lib/argmatch.c:152 lib/argmatch.h:223 +#: lib/argmatch.c:165 lib/argmatch.h:242 msgid "Valid arguments are:" msgstr "Geldige argumenten zijn:" -#: lib/c-stack.c:187 +#: lib/c-stack.c:186 msgid "program error" msgstr "programmafout" -#: lib/c-stack.c:188 +#: lib/c-stack.c:187 msgid "stack overflow" msgstr "stack-overloop" -#: lib/error.c:195 +#: lib/error.c:193 msgid "Unknown system error" msgstr "Onbekende systeemfout" @@ -199,84 +199,84 @@ msgstr "%s: optie vereist een argument -- '%c'\n" #. If you don't know what to put here, please see #. #. and use glyphs suitable for your language. -#: lib/quotearg.c:355 +#: lib/quotearg.c:354 msgid "`" msgstr "‘" -#: lib/quotearg.c:356 +#: lib/quotearg.c:355 msgid "'" msgstr "’" -#: lib/regcomp.c:135 +#: lib/regcomp.c:122 msgid "Success" msgstr "Gelukt" -#: lib/regcomp.c:138 +#: lib/regcomp.c:125 msgid "No match" msgstr "Geen overeenkomsten" -#: lib/regcomp.c:141 +#: lib/regcomp.c:128 msgid "Invalid regular expression" msgstr "Ongeldige reguliere expressie" # Zie http://mailman.vrijschrift.org/pipermail/vertaling/2005-August/004670.html -#: lib/regcomp.c:144 +#: lib/regcomp.c:131 msgid "Invalid collation character" msgstr "Ongeldig samengesteld teken" -#: lib/regcomp.c:147 +#: lib/regcomp.c:134 msgid "Invalid character class name" msgstr "Ongeldige tekenklassenaam" -#: lib/regcomp.c:150 +#: lib/regcomp.c:137 msgid "Trailing backslash" msgstr "Backslash aan het eind" -#: lib/regcomp.c:153 +#: lib/regcomp.c:140 msgid "Invalid back reference" msgstr "Ongeldige terugverwijzing" -#: lib/regcomp.c:156 +#: lib/regcomp.c:143 msgid "Unmatched [, [^, [:, [., or [=" msgstr "Ongepaarde [, [^, [:, [., of [=" -#: lib/regcomp.c:159 +#: lib/regcomp.c:146 msgid "Unmatched ( or \\(" msgstr "Ongepaarde ( of \\(" -#: lib/regcomp.c:162 +#: lib/regcomp.c:149 msgid "Unmatched \\{" msgstr "Ongepaarde \\{" -#: lib/regcomp.c:165 +#: lib/regcomp.c:152 msgid "Invalid content of \\{\\}" msgstr "Ongeldige inhoud van \\{\\}" -#: lib/regcomp.c:168 +#: lib/regcomp.c:155 msgid "Invalid range end" msgstr "Ongeldig bereikeinde" -#: lib/regcomp.c:171 +#: lib/regcomp.c:158 msgid "Memory exhausted" msgstr "Onvoldoende geheugen beschikbaar" -#: lib/regcomp.c:174 +#: lib/regcomp.c:161 msgid "Invalid preceding regular expression" msgstr "Ongeldige voorafgaande reguliere expressie" -#: lib/regcomp.c:177 +#: lib/regcomp.c:164 msgid "Premature end of regular expression" msgstr "Voortijdig einde van reguliere expressie" -#: lib/regcomp.c:180 +#: lib/regcomp.c:167 msgid "Regular expression too big" msgstr "Reguliere expressie is te groot" -#: lib/regcomp.c:183 +#: lib/regcomp.c:170 msgid "Unmatched ) or \\)" msgstr "Ongepaarde ) of \\)" -#: lib/regcomp.c:676 +#: lib/regcomp.c:650 msgid "No previous regular expression" msgstr "Geen eerdere reguliere expressie" @@ -477,17 +477,17 @@ msgstr "Webpagina van %s: <%s>\n" msgid "General help using GNU software: <%s>\n" msgstr "Algemene hulp bij gebruik van GNU-software: <%s>\n" -#: src/analyze.c:454 src/diff.c:1406 +#: src/analyze.c:455 src/diff.c:1478 #, c-format msgid "Files %s and %s differ\n" msgstr "Bestanden %s en %s zijn verschillend\n" -#: src/analyze.c:455 +#: src/analyze.c:456 #, c-format msgid "Binary files %s and %s differ\n" msgstr "Binaire bestanden %s en %s zijn verschillend\n" -#: src/analyze.c:706 src/diff3.c:1470 src/util.c:1254 +#: src/analyze.c:707 src/diff3.c:1457 src/util.c:1354 msgid "No newline at end of file" msgstr "Geen regeleindeteken (LF) aan einde van bestand" @@ -501,41 +501,42 @@ msgstr "Torbjörn Granlund" msgid "David MacKenzie" msgstr "David MacKenzie" -#: src/cmp.c:120 src/diff.c:879 src/diff3.c:467 src/sdiff.c:160 +#: src/cmp.c:124 src/diff.c:939 src/diff3.c:465 src/sdiff.c:159 #, c-format msgid "Try '%s --help' for more information." msgstr "Typ '%s --help' voor meer informatie." -#: src/cmp.c:138 +#: src/cmp.c:142 #, c-format msgid "invalid --ignore-initial value '%s'" msgstr "ongeldige waarde '%s' voor '--ignore-initial'" -#: src/cmp.c:148 +#: src/cmp.c:152 #, c-format msgid "options -l and -s are incompatible" msgstr "opties '-l' en '-s' gaan niet samen" -#: src/cmp.c:156 src/diff.c:887 src/diff3.c:474 src/sdiff.c:168 src/sdiff.c:316 -#: src/sdiff.c:323 src/sdiff.c:876 src/util.c:852 src/util.c:952 src/util.c:959 +#: src/cmp.c:160 src/diff.c:947 src/diff3.c:472 src/sdiff.c:167 src/sdiff.c:314 +#: src/sdiff.c:321 src/sdiff.c:873 src/util.c:952 src/util.c:1052 +#: src/util.c:1059 msgid "write failed" msgstr "schrijven is mislukt" -#: src/cmp.c:158 src/diff.c:889 src/diff.c:1471 src/diff3.c:476 src/sdiff.c:170 +#: src/cmp.c:162 src/diff.c:949 src/diff.c:1543 src/diff3.c:474 src/sdiff.c:169 msgid "standard output" msgstr "standaarduitvoer" -#: src/cmp.c:162 +#: src/cmp.c:166 msgid "-b, --print-bytes print differing bytes" msgstr "-b, --print-bytes de bytes tonen die verschillen" -#: src/cmp.c:163 +#: src/cmp.c:167 msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs" msgstr "" "-i, --ignore-initial=OVERSLAAN de eerste OVERSLAAN bytes van\n" " beide invoeren overslaan" -#: src/cmp.c:164 +#: src/cmp.c:168 msgid "" "-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n" " first SKIP2 bytes of FILE2" @@ -543,41 +544,41 @@ msgstr "" "-i, --ignore-initial=OVS1:OVS2 de eerste OVS1 bytes van BESTAND1 en de\n" " eerste OVS2 bytes van BESTAND2 overslaan" -#: src/cmp.c:166 +#: src/cmp.c:170 msgid "" "-l, --verbose output byte numbers and differing byte values" msgstr "" "-l, --verbose bytenummers en -waarden tonen van bytes die " "verschillen" -#: src/cmp.c:167 +#: src/cmp.c:171 msgid "-n, --bytes=LIMIT compare at most LIMIT bytes" msgstr "-n, --bytes=AANTAL maximaal dit AANTAL bytes vergelijken" -#: src/cmp.c:168 +#: src/cmp.c:172 msgid "-s, --quiet, --silent suppress all normal output" msgstr "-s, --quiet, --silent alle gewone uitvoer onderdrukken" -#: src/cmp.c:169 +#: src/cmp.c:173 msgid " --help display this help and exit" msgstr " --help deze hulptekst tonen en stoppen" -#: src/cmp.c:170 +#: src/cmp.c:174 msgid "-v, --version output version information and exit" msgstr "-v, --version programmaversie tonen en stoppen" -#: src/cmp.c:179 +#: src/cmp.c:183 #, c-format msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n" msgstr "" "Gebruik: %s [OPTIE...] BESTAND1 [BESTAND2 [OVERSLAAN1 [OVERSLAAN2]]]\n" "\n" -#: src/cmp.c:181 +#: src/cmp.c:185 msgid "Compare two files byte by byte." msgstr "Twee bestanden byte-voor-byte vergelijken." -#: src/cmp.c:183 +#: src/cmp.c:187 msgid "" "The optional SKIP1 and SKIP2 specify the number of bytes to skip\n" "at the beginning of each file (zero by default)." @@ -586,14 +587,14 @@ msgstr "" "dat\n" "aan het begin van elk bestand moet worden overgeslagen (standaard nul)." -#: src/cmp.c:186 src/diff.c:999 src/diff3.c:514 src/sdiff.c:211 +#: src/cmp.c:190 src/diff.c:1059 src/diff3.c:512 src/sdiff.c:210 msgid "" "Mandatory arguments to long options are mandatory for short options too.\n" msgstr "" "(Een verplicht argument bij een lange optie geldt ook voor de korte vorm.)\n" "\n" -#: src/cmp.c:192 +#: src/cmp.c:196 msgid "" "SKIP values may be followed by the following multiplicative suffixes:\n" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" @@ -604,195 +605,195 @@ msgstr "" " kB 1000, K 1024, MB 1.000.000, M 1.048.576,\n" " GB 1.000.000.000, G 1.073.741.824, enzovoort voor T, P, E, Z, Y." -#: src/cmp.c:195 +#: src/cmp.c:199 msgid "If a FILE is '-' or missing, read standard input." msgstr "" "Als een BESTAND ontbreekt of '-' is, wordt er van standaardinvoer gelezen." -#: src/cmp.c:196 src/diff.c:987 src/sdiff.c:221 +#: src/cmp.c:200 src/diff.c:1047 src/sdiff.c:220 msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble." msgstr "" "De afsluitwaarde is 0 als de invoeren gelijk zijn, 1 als ze verschillen,\n" "en 2 bij problemen." -#: src/cmp.c:243 +#: src/cmp.c:247 #, c-format msgid "invalid --bytes value '%s'" msgstr "ongeldige waarde '%s' voor '--bytes'" -#: src/cmp.c:269 src/diff.c:797 src/diff3.c:361 src/sdiff.c:567 +#: src/cmp.c:273 src/diff.c:857 src/diff3.c:368 src/sdiff.c:564 #, c-format msgid "missing operand after '%s'" msgstr "ontbrekend argument na '%s'" -#: src/cmp.c:281 src/diff.c:799 src/diff3.c:363 src/sdiff.c:569 +#: src/cmp.c:285 src/diff.c:859 src/diff3.c:370 src/sdiff.c:566 #, c-format msgid "extra operand '%s'" msgstr "overtollig argument '%s'" -#: src/cmp.c:507 +#: src/cmp.c:521 #, c-format msgid "%s %s differ: byte %s, line %s\n" msgstr "%s %s verschillen: byte %s, regel %s\n" -#: src/cmp.c:523 +#: src/cmp.c:537 #, c-format msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n" msgstr "%s %s verschillen: byte %s, regel %s, is %3o %s %3o %s\n" -#: src/cmp.c:580 +#: src/cmp.c:594 #, c-format msgid "cmp: EOF on %s which is empty\n" msgstr "cmp: einde-van-bestand in %s dat leeg is\n" -#: src/cmp.c:594 +#: src/cmp.c:608 #, c-format msgid "cmp: EOF on %s after byte %s, line %s\n" msgstr "cmp: einde-van-bestand in %s na byte %s, regel %s\n" -#: src/cmp.c:595 +#: src/cmp.c:609 #, c-format msgid "cmp: EOF on %s after byte %s, in line %s\n" msgstr "cmp: einde-van-bestand in %s na byte %s, in regel %s\n" -#: src/cmp.c:601 +#: src/cmp.c:615 #, c-format msgid "cmp: EOF on %s after byte %s\n" msgstr "cmp: einde-van-bestand in %s na byte %s\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:51 +#: src/diff.c:50 msgid "Paul Eggert" msgstr "Paul Eggert" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:52 +#: src/diff.c:51 msgid "Mike Haertel" msgstr "Mike Haertel" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:53 +#: src/diff.c:52 msgid "David Hayes" msgstr "David Hayes" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:54 +#: src/diff.c:53 msgid "Richard Stallman" msgstr "Richard Stallman" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:55 +#: src/diff.c:54 msgid "Len Tower" msgstr "Len Tower" -#: src/diff.c:355 +#: src/diff.c:365 #, c-format msgid "invalid context length '%s'" msgstr "ongeldige contextlengte '%s'" -#: src/diff.c:438 +#: src/diff.c:487 #, c-format msgid "pagination not supported on this host" msgstr "het in pagina's indelen is op deze computer niet mogelijk" -#: src/diff.c:453 src/diff3.c:341 +#: src/diff.c:502 src/diff3.c:348 #, c-format msgid "too many file label options" msgstr "te veel bestandslabel-opties" -#: src/diff.c:530 +#: src/diff.c:579 #, c-format msgid "invalid width '%s'" msgstr "ongeldige breedte '%s'" -#: src/diff.c:534 +#: src/diff.c:583 msgid "conflicting width options" msgstr "conflicterende breedte-opties" -#: src/diff.c:559 +#: src/diff.c:608 #, c-format msgid "invalid horizon length '%s'" msgstr "ongeldige horizonlengte '%s'" -#: src/diff.c:615 +#: src/diff.c:664 #, c-format msgid "invalid tabsize '%s'" msgstr "ongeldige tabgrootte '%s'" -#: src/diff.c:619 +#: src/diff.c:668 msgid "conflicting tabsize options" msgstr "conflicterende tabgrootte-opties" -#: src/diff.c:774 +#: src/diff.c:834 msgid "--from-file and --to-file both specified" msgstr "zowel '--from-file' als '--to-file' zijn opgegeven" -#: src/diff.c:893 +#: src/diff.c:953 msgid " --normal output a normal diff (the default)" msgstr " --normal een gewone diff produceren (standaard)" -#: src/diff.c:894 +#: src/diff.c:954 msgid "-q, --brief report only when files differ" msgstr "-q, --brief alleen aangeven of bestanden verschillen" -#: src/diff.c:895 +#: src/diff.c:955 msgid "-s, --report-identical-files report when two files are the same" msgstr "" "-s, --report-identical-files vermelden of twee bestanden hetzelfde zijn" -#: src/diff.c:896 +#: src/diff.c:956 msgid "" "-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context" msgstr "" "-c, -C AANTAL, --context[=AANTAL] dit AANTAL regels (standaard 3) van\n" " gekopieerde context tonen" -#: src/diff.c:897 +#: src/diff.c:957 msgid "" "-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context" msgstr "" "-u, -U AANTAL, --unified[=AANTAL] dit AANTAL regels (standaard 3) van\n" " geünificeerde context tonen" -#: src/diff.c:898 +#: src/diff.c:958 msgid "-e, --ed output an ed script" msgstr "-e, --ed een ed-script produceren" -#: src/diff.c:899 +#: src/diff.c:959 msgid "-n, --rcs output an RCS format diff" msgstr "-n, --rcs een diff in RCS-opmaak produceren" -#: src/diff.c:900 +#: src/diff.c:960 msgid "-y, --side-by-side output in two columns" msgstr "-y, --side-by-side het resultaat weergeven in twee kolommen" -#: src/diff.c:901 +#: src/diff.c:961 msgid "" "-W, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-w, --width=AANTAL maximaal dit AANTAL kolommen tonen (standaard 130)" -#: src/diff.c:902 +#: src/diff.c:962 msgid "" " --left-column output only the left column of common lines" msgstr "" " --left-column bij gelijke regels alleen de linkerkolom tonen" -#: src/diff.c:903 +#: src/diff.c:963 msgid " --suppress-common-lines do not output common lines" msgstr " --suppress-common-lines de gelijke regels onderdrukken" -#: src/diff.c:905 +#: src/diff.c:965 msgid "-p, --show-c-function show which C function each change is in" msgstr "" "-p, --show-c-function vermelden in welke C-functie elke wijziging is" -#: src/diff.c:906 +#: src/diff.c:966 msgid "-F, --show-function-line=RE show the most recent line matching RE" msgstr "" "-F, --show-function-line=RE recentste regel overeenkomend met RE tonen" -#: src/diff.c:907 +#: src/diff.c:967 msgid "" " --label LABEL use LABEL instead of file name and timestamp\n" " (can be repeated)" @@ -801,86 +802,86 @@ msgstr "" "plus\n" " tijdsstempel (mag herhaald worden)" -#: src/diff.c:910 +#: src/diff.c:970 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "-t, --expand-tabs tabs uitschrijven naar spaties in uitvoer" -#: src/diff.c:911 +#: src/diff.c:971 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T, --initial-tab tabs uitlijnen door invoegen van tab aan het begin" -#: src/diff.c:912 +#: src/diff.c:972 msgid "" " --tabsize=NUM tab stops every NUM (default 8) print columns" msgstr "" " --tabsize=AANTAL tab-stops op elke AANTAL posities (standaard 8)" -#: src/diff.c:913 +#: src/diff.c:973 msgid "" " --suppress-blank-empty suppress space or tab before empty output lines" msgstr "" " --suppress-blank-empty spatie of tab onderdrukken voor lege uitregels" -#: src/diff.c:914 +#: src/diff.c:974 msgid "-l, --paginate pass output through 'pr' to paginate it" msgstr "" "-l, --paginate de uitvoer door 'pr' halen om deze in pagina's\n" " in te delen" -#: src/diff.c:916 +#: src/diff.c:976 msgid "" "-r, --recursive recursively compare any subdirectories found" msgstr "-r, --recursive recursief elke gevonden submap vergelijken" -#: src/diff.c:917 +#: src/diff.c:977 msgid " --no-dereference don't follow symbolic links" msgstr " --no-dereference symbolische koppelingen niet volgen" -#: src/diff.c:918 +#: src/diff.c:978 msgid "-N, --new-file treat absent files as empty" msgstr "-N, --new-file afwezige bestanden als leeg behandelen" -#: src/diff.c:919 +#: src/diff.c:979 msgid " --unidirectional-new-file treat absent first files as empty" msgstr "" " --unidirectional-new-file alleen bestanden die afwezig zijn in de\n" " eerste map als leeg behandelen" -#: src/diff.c:920 +#: src/diff.c:980 msgid " --ignore-file-name-case ignore case when comparing file names" msgstr "" " --ignore-file-name-case verschil tussen hoofd- en kleine letters " "negeren\n" " bij vergelijken van bestandsnamen" -#: src/diff.c:921 +#: src/diff.c:981 msgid " --no-ignore-file-name-case consider case when comparing file names" msgstr "" " --no-ignore-file-name-case onderscheid maken tussen hoofd- en kleine\n" " letters bij vergelijken van bestandsnamen" -#: src/diff.c:922 +#: src/diff.c:982 msgid "-x, --exclude=PAT exclude files that match PAT" msgstr "" "-x, --exclude=PATROON bestanden uitsluiten als ze overeenkomen met " "PATROON" -#: src/diff.c:923 +#: src/diff.c:983 msgid "" "-X, --exclude-from=FILE exclude files that match any pattern in FILE" msgstr "" "-X, --exclude-from=BESTAND bestanden uitsluiten die overeenkomen met\n" " een patroon in BESTAND" -#: src/diff.c:924 +#: src/diff.c:984 msgid "" "-S, --starting-file=FILE start with FILE when comparing directories" msgstr "" "-S, --starting-file=BESTAND beginnen met BESTAND bij vergelijken van " "mappen" -#: src/diff.c:925 +#: src/diff.c:985 msgid "" " --from-file=FILE1 compare FILE1 to all operands;\n" " FILE1 can be a directory" @@ -888,7 +889,7 @@ msgstr "" " --from-file=BESTAND1 BESTAND1 met alle argumenten vergelijken;\n" " BESTAND1 mag een map zijn" -#: src/diff.c:927 +#: src/diff.c:987 msgid "" " --to-file=FILE2 compare all operands to FILE2;\n" " FILE2 can be a directory" @@ -896,88 +897,88 @@ msgstr "" " --to-file=BESTAND2 alle argumenten met BESTAND2 vergelijken;\n" " BESTAND2 mag een map zijn" -#: src/diff.c:930 +#: src/diff.c:990 msgid "" "-i, --ignore-case ignore case differences in file contents" msgstr "" "-i, --ignore-case verschil tussen hoofd- en kleine letters\n" " negeren in bestandsinhoud" -#: src/diff.c:931 +#: src/diff.c:991 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "-E, --ignore-tab-expansion omzettingen van tabs in spaties negeren" -#: src/diff.c:932 +#: src/diff.c:992 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "-Z, --ignore-trailing-space witruimte aan einde van regel negeren" -#: src/diff.c:933 +#: src/diff.c:993 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "" "-b, --ignore-space-change wijzigingen in hoeveelheid witruimte negeren" -#: src/diff.c:934 +#: src/diff.c:994 msgid "-w, --ignore-all-space ignore all white space" msgstr "-w, --ignore-all-space alle witruimte negeren" -#: src/diff.c:935 +#: src/diff.c:995 msgid "" "-B, --ignore-blank-lines ignore changes where lines are all blank" msgstr "" "-B, --ignore-blank-lines wijzigingen waarvan alle regels leeg zijn " "negeren" -#: src/diff.c:936 +#: src/diff.c:996 msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE" msgstr "" "-I, --ignore-matching-lines=RE wijzigingen waarvan alle regels " "overeenkomen\n" " met reguliere expressie RE negeren" -#: src/diff.c:938 +#: src/diff.c:998 msgid "-a, --text treat all files as text" msgstr "-a, --text alle bestanden als tekst behandelen" -#: src/diff.c:939 +#: src/diff.c:999 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr Enter-tekens (CR's) aan einde van regels weglaten" -#: src/diff.c:941 +#: src/diff.c:1001 msgid " --binary read and write data in binary mode" msgstr "" " --binary gegevens in binaire modus lezen en schrijven" -#: src/diff.c:944 +#: src/diff.c:1004 msgid "" "-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs" msgstr "" "-D, --ifdef=NAAM samengevoegd bestand tonen om verschillen in\n" " '#ifdef NAAM' te laten zien" -#: src/diff.c:945 +#: src/diff.c:1005 msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT" msgstr "" " --GSOORT-group-format=GOPMAAK iets dergelijks, maar dan invoergroepen " "van\n" " soort GSOORT opmaken met GOPMAAK" -#: src/diff.c:946 +#: src/diff.c:1006 msgid " --line-format=LFMT format all input lines with LFMT" msgstr "" " --line-format=LOPMAAK iets dergelijks, maar dan alle invoerregels " "opmaken\n" " met LOPMAAK" -#: src/diff.c:947 +#: src/diff.c:1007 msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT" msgstr "" " --LSOORT-line-format=LOPMAAK iets dergelijks, maar dan invoerregels " "van\n" " soort LSOORT opmaken met LOPMAAK" -#: src/diff.c:948 +#: src/diff.c:1008 msgid "" " These format options provide fine-grained control over the output\n" " of diff, generalizing -D/--ifdef." @@ -985,13 +986,13 @@ msgstr "" " Deze opmaakopties bieden een fijnafregeling van de uitvoer aan,\n" " een generalisatie van de optie '-d/--ifdef'." -#: src/diff.c:950 +#: src/diff.c:1010 msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'." msgstr "" " LSOORT is 'old' (oud), 'new' (nieuw), of 'unchanged' (ongewijzigd);\n" " GSOORT is LSOORT of 'changed' (gewijzigd)." -#: src/diff.c:951 +#: src/diff.c:1011 msgid "" " GFMT (only) may contain:\n" " %< lines from FILE1\n" @@ -1021,7 +1022,7 @@ msgstr "" " M L+1\n" " %(A=B?Z:V) als A gelijk is aan B, dan Z anders V" -#: src/diff.c:963 +#: src/diff.c:1023 msgid "" " LFMT (only) may contain:\n" " %L contents of line\n" @@ -1034,7 +1035,7 @@ msgstr "" " %[-][BREEDTE][.[PREC]]{doxX}n specificatie in printf-stijl voor\n" " invoerregelnummer" -#: src/diff.c:967 +#: src/diff.c:1027 msgid "" " Both GFMT and LFMT may contain:\n" " %% %\n" @@ -1048,20 +1049,20 @@ msgstr "" " %c'\\OOO' het teken met octaalcode OOO\n" " C het teken C (andere tekens representeren zichzelf)" -#: src/diff.c:973 +#: src/diff.c:1033 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "" "-d, --minimal moeite doen om een kleinere verzameling " "wijzigingen\n" " te vinden" -#: src/diff.c:974 +#: src/diff.c:1034 msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix" msgstr "" " --horizon-lines=AANTAL dit AANTAL regels met identieke kop en staart\n" " bij vergelijkingsproces meenemen" -#: src/diff.c:975 +#: src/diff.c:1035 msgid "" " --speed-large-files assume large files and many scattered small changes" msgstr "" @@ -1069,7 +1070,7 @@ msgstr "" "verspreide\n" " kleine wijzigingen" -#: src/diff.c:976 +#: src/diff.c:1036 msgid "" " --color[=WHEN] color output; WHEN is 'never', 'always', or " "'auto';\n" @@ -1080,7 +1081,7 @@ msgstr "" " 'never' (nooit), of 'auto' (doelafhankelijk);\n" " een kale '--color' betekent '--color=auto'" -#: src/diff.c:978 +#: src/diff.c:1038 msgid "" " --palette=PALETTE the colors to use when --color is active; PALETTE " "is\n" @@ -1091,115 +1092,115 @@ msgstr "" "door\n" " dubbelepunten" -#: src/diff.c:981 +#: src/diff.c:1041 msgid " --help display this help and exit" msgstr " --help deze hulptekst tonen en stoppen" -#: src/diff.c:982 +#: src/diff.c:1042 msgid "-v, --version output version information and exit" msgstr "-v, --version programmaversie tonen en stoppen" -#: src/diff.c:984 +#: src/diff.c:1044 msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'." msgstr "" "BESTANDEN is 'BESTAND1 BESTAND2' of 'MAP1 MAP2' of\n" " 'MAP BESTAND...' of 'BESTAND... MAP'." -#: src/diff.c:985 +#: src/diff.c:1045 msgid "" "If --from-file or --to-file is given, there are no restrictions on FILE(s)." msgstr "" "Als '--from-file' of '--to-file' gegeven is, mag BESTANDEN van alles zijn." -#: src/diff.c:986 src/diff3.c:533 src/sdiff.c:220 +#: src/diff.c:1046 src/diff3.c:531 src/sdiff.c:219 msgid "If a FILE is '-', read standard input." msgstr "Als een BESTAND '-' is, wordt er van standaardinvoer gelezen." -#: src/diff.c:996 +#: src/diff.c:1056 #, c-format msgid "Usage: %s [OPTION]... FILES\n" msgstr "" "Gebruik: %s [OPTIE...] BESTANDEN\n" "\n" -#: src/diff.c:997 +#: src/diff.c:1057 msgid "Compare FILES line by line." msgstr "Bestanden regel-voor-regel vergelijken." -#: src/diff.c:1034 +#: src/diff.c:1094 #, c-format msgid "conflicting %s option value '%s'" msgstr "conflicterende waarde '%2$s' van optie %1$s" -#: src/diff.c:1047 +#: src/diff.c:1107 #, c-format msgid "conflicting output style options" msgstr "conflicterende uitvoerstijl-opties" -#: src/diff.c:1063 +#: src/diff.c:1123 #, c-format msgid "invalid color '%s'" msgstr "ongeldige kleur '%s'" -#: src/diff.c:1119 src/diff.c:1329 +#: src/diff.c:1197 src/diff.c:1401 #, c-format msgid "Only in %s: %s\n" msgstr "Alleen in %s: %s\n" -#: src/diff.c:1253 +#: src/diff.c:1325 msgid "cannot compare '-' to a directory" msgstr "kan '-' niet met een map vergelijken" -#: src/diff.c:1288 +#: src/diff.c:1360 msgid "-D option not supported with directories" msgstr "optie '-D' is niet mogelijk bij mappen" -#: src/diff.c:1297 +#: src/diff.c:1369 #, c-format msgid "Common subdirectories: %s and %s\n" msgstr "Gemeenschappelijke submappen: %s en %s\n" -#: src/diff.c:1339 src/diff.c:1389 +#: src/diff.c:1411 src/diff.c:1461 #, c-format msgid "File %s is a %s while file %s is a %s\n" msgstr "Bestand %s is een %s terwijl bestand %s een %s is\n" -#: src/diff.c:1375 +#: src/diff.c:1447 #, c-format msgid "Symbolic links %s and %s differ\n" msgstr "Symbolische koppelingen %s en %s zijn verschillend\n" -#: src/diff.c:1462 +#: src/diff.c:1534 #, c-format msgid "Files %s and %s are identical\n" msgstr "Bestanden %s en %s zijn identiek\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff3.c:43 +#: src/diff3.c:51 msgid "Randy Smith" msgstr "Randy Smith" -#: src/diff3.c:356 +#: src/diff3.c:363 #, c-format msgid "incompatible options" msgstr "niet-samengaande opties" -#: src/diff3.c:396 +#: src/diff3.c:403 msgid "'-' specified for more than one input file" msgstr "'-' opgegeven voor meer dan één invoerbestand" -#: src/diff3.c:447 src/diff3.c:1295 src/diff3.c:1698 src/diff3.c:1753 -#: src/sdiff.c:308 src/sdiff.c:846 src/sdiff.c:857 +#: src/diff3.c:445 src/diff3.c:1284 src/diff3.c:1683 src/diff3.c:1738 +#: src/sdiff.c:306 src/sdiff.c:843 src/sdiff.c:854 msgid "read failed" msgstr "lezen is mislukt" -#: src/diff3.c:480 +#: src/diff3.c:478 msgid "-A, --show-all output all changes, bracketing conflicts" msgstr "" "-A, --show-all alle wijzigingen tonen, met rechte haken om de " "conflicten" -#: src/diff3.c:482 +#: src/diff3.c:480 msgid "" "-e, --ed output ed script incorporating changes\n" " from OLDFILE to YOURFILE into MYFILE" @@ -1207,12 +1208,12 @@ msgstr "" "-e, --ed een ed-script produceren die de wijzigingen van\n" " OUDBESTAND naar UWBESTAND in MIJNBESTAND maakt" -#: src/diff3.c:484 +#: src/diff3.c:482 msgid "-E, --show-overlap like -e, but bracket conflicts" msgstr "" "-E, --show-overlap als '-e' maar met rechte haken om de conflicten" -#: src/diff3.c:485 +#: src/diff3.c:483 msgid "" "-3, --easy-only like -e, but incorporate only nonoverlapping " "changes" @@ -1220,25 +1221,25 @@ msgstr "" "-3, --easy-only als '-e' maar alleen met niet-overlappende " "wijzigingen" -#: src/diff3.c:486 +#: src/diff3.c:484 msgid "" "-x, --overlap-only like -e, but incorporate only overlapping changes" msgstr "" "-x, --overlap-only als '-e' maar met alleen de overlappende " "wijzigingen" -#: src/diff3.c:487 +#: src/diff3.c:485 msgid "-X like -x, but bracket conflicts" msgstr "" "-X als '-x' maar met rechte haken om de conflicten" -#: src/diff3.c:488 +#: src/diff3.c:486 msgid "-i append 'w' and 'q' commands to ed scripts" msgstr "" "-i opdrachten 'w' en 'q' toevoegen aan einde van ed-" "scripts" -#: src/diff3.c:490 +#: src/diff3.c:488 msgid "" "-m, --merge output actual merged file, according to\n" " -A if no other options are given" @@ -1246,27 +1247,27 @@ msgstr "" "-m, --merge het feitelijk samengevoegde bestand tonen\n" " volgens '-A' zonder andere opties" -#: src/diff3.c:493 +#: src/diff3.c:491 msgid "-a, --text treat all files as text" msgstr "-a, --text alle bestanden als tekst behandelen" -#: src/diff3.c:494 +#: src/diff3.c:492 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr Enter-tekens (CR's) aan einde van regels weglaten" -#: src/diff3.c:495 +#: src/diff3.c:493 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T, --initial-tab tabs uitlijnen door invoegen van tab aan het begin" -#: src/diff3.c:496 +#: src/diff3.c:494 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr "" " --diff-program=PROG dit programma gebruiken om bestanden te " "vergelijken" -#: src/diff3.c:497 +#: src/diff3.c:495 msgid "" "-L, --label=LABEL use LABEL instead of file name\n" " (can be repeated up to three times)" @@ -1274,26 +1275,26 @@ msgstr "" "-L, --label=LABEL dit LABEL gebruiken in plaats van bestandsnaam\n" " (mag maximaal driemaal herhaald worden)" -#: src/diff3.c:500 +#: src/diff3.c:498 msgid " --help display this help and exit" msgstr " --help deze hulptekst tonen en stoppen" -#: src/diff3.c:501 +#: src/diff3.c:499 msgid "-v, --version output version information and exit" msgstr "-v, --version programmaversie tonen en stoppen" -#: src/diff3.c:510 +#: src/diff3.c:508 #, c-format msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n" msgstr "" "Gebruik: %s [OPTIE]... MIJNBESTAND OUDBESTAND UWBESTAND\n" "\n" -#: src/diff3.c:512 +#: src/diff3.c:510 msgid "Compare three files line by line." msgstr "Drie bestanden regel-voor-regel vergelijken." -#: src/diff3.c:522 +#: src/diff3.c:520 msgid "" "\n" "The default output format is a somewhat human-readable representation of\n" @@ -1319,55 +1320,55 @@ msgstr "" "robuuster\n" "dan het gebruik van 'ed'.\n" -#: src/diff3.c:534 +#: src/diff3.c:532 msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble." msgstr "" "De afsluitwaarde is 0 bij succes, 1 bij conflicten, en 2 bij problemen." -#: src/diff3.c:727 +#: src/diff3.c:725 msgid "internal error: screwup in format of diff blocks" msgstr "*interne programmafout*: opmaak van diff-blokken is verhaspeld" -#: src/diff3.c:1022 +#: src/diff3.c:1015 #, c-format msgid "%s: diff failed: " msgstr "%s: diff is mislukt: " -#: src/diff3.c:1044 +#: src/diff3.c:1037 msgid "internal error: invalid diff type in process_diff" msgstr "*interne programmmafout*: ongeldig soort diff in process_diff()" -#: src/diff3.c:1069 +#: src/diff3.c:1060 msgid "invalid diff format; invalid change separator" msgstr "ongeldige diff-opmaak: ongeldig scheidingsteken voor veranderingen" -#: src/diff3.c:1305 +#: src/diff3.c:1294 msgid "invalid diff format; incomplete last line" msgstr "ongeldige diff-opmaak: incomplete laatste regel" -#: src/diff3.c:1329 src/sdiff.c:276 src/util.c:969 +#: src/diff3.c:1318 src/sdiff.c:274 src/util.c:1069 #, c-format msgid "subsidiary program '%s' could not be invoked" msgstr "hulpprogramma '%s' kan niet worden aangeroepen" -#: src/diff3.c:1354 +#: src/diff3.c:1343 msgid "invalid diff format; incorrect leading line chars" msgstr "ongeldige diff-opmaak: onjuiste tekens aan begin van regel" -#: src/diff3.c:1427 +#: src/diff3.c:1416 msgid "internal error: invalid diff type passed to output" msgstr "*interne programmafout*: ongeldig soort diff naar uitvoer gestuurd" -#: src/diff3.c:1700 src/diff3.c:1757 +#: src/diff3.c:1685 src/diff3.c:1742 msgid "input file shrank" msgstr "invoerbestand is gekrompen" -#: src/dir.c:156 +#: src/dir.c:154 #, c-format msgid "cannot compare file names '%s' and '%s'" msgstr "kan bestandsnamen '%s' en '%s' niet vergelijken" -#: src/dir.c:225 +#: src/dir.c:223 #, c-format msgid "%s: recursive directory loop" msgstr "%s: oneindige lus in de mappen" @@ -1377,93 +1378,93 @@ msgstr "%s: oneindige lus in de mappen" msgid "Thomas Lord" msgstr "Thomas Lord" -#: src/sdiff.c:174 +#: src/sdiff.c:173 msgid "" "-o, --output=FILE operate interactively, sending output to FILE" msgstr "" "-o, --output=BESTAND interactief werken; het resultaat opslaan in " "BESTAND" -#: src/sdiff.c:176 +#: src/sdiff.c:175 msgid "" "-i, --ignore-case consider upper- and lower-case to be the same" msgstr "" "-i, --ignore-case hoofd- en kleine letters als hetzelfde zien" -#: src/sdiff.c:177 +#: src/sdiff.c:176 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "-E, --ignore-tab-expansion omzettingen van tabs in spaties negeren" -#: src/sdiff.c:178 +#: src/sdiff.c:177 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "-Z, --ignore-trailing-space witruimte aan einde van regel negeren" -#: src/sdiff.c:179 +#: src/sdiff.c:178 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "" "-b, --ignore-space-change wijzigingen in hoeveelheid witruimte negeren" -#: src/sdiff.c:180 +#: src/sdiff.c:179 msgid "-W, --ignore-all-space ignore all white space" msgstr "-W, --ignore-all-space alle witruimte negeren" -#: src/sdiff.c:181 +#: src/sdiff.c:180 msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank" msgstr "" "-B, --ignore-blank-lines wijzigingen waarvan alle regels leeg zijn " "negeren" -#: src/sdiff.c:182 +#: src/sdiff.c:181 msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE" msgstr "" "-I, --ignore-matching-lines=RE wijzigingen waarvan alle regels " "overeenkomen\n" " met reguliere expressie RE negeren" -#: src/sdiff.c:183 +#: src/sdiff.c:182 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr Enter-tekens (CR's) aan einde van regels weglaten" -#: src/sdiff.c:184 +#: src/sdiff.c:183 msgid "-a, --text treat all files as text" msgstr "-a, --text alle bestanden als tekst behandelen" -#: src/sdiff.c:186 +#: src/sdiff.c:185 msgid "" "-w, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-w, --width=AANTAL maximaal dit AANTAL kolommen tonen (standaard 130)" -#: src/sdiff.c:187 +#: src/sdiff.c:186 msgid "" "-l, --left-column output only the left column of common lines" msgstr "" "-l, --left-column bij gelijke regels alleen de linkerkolom tonen" -#: src/sdiff.c:188 +#: src/sdiff.c:187 msgid "-s, --suppress-common-lines do not output common lines" msgstr "-s, --suppress-common-lines de gelijke regels onderdrukken" -#: src/sdiff.c:190 +#: src/sdiff.c:189 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "-t, --expand-tabs tabs uitschrijven naar spaties in uitvoer" -#: src/sdiff.c:191 +#: src/sdiff.c:190 msgid "" " --tabsize=NUM tab stops at every NUM (default 8) print columns" msgstr "" " --tabsize=AANTAL tab-stops op elke AANTAL posities (standaard 8)" -#: src/sdiff.c:193 +#: src/sdiff.c:192 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "" "-d, --minimal moeite doen om een kleinere verzameling " "wijzigingen\n" " te vinden" -#: src/sdiff.c:194 +#: src/sdiff.c:193 msgid "" "-H, --speed-large-files assume large files, many scattered small changes" msgstr "" @@ -1471,40 +1472,40 @@ msgstr "" "verspreide\n" " kleine wijzigingen" -#: src/sdiff.c:195 +#: src/sdiff.c:194 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr "" " --diff-program=PRGRM dit programma gebruiken om bestanden te " "vergelijken" -#: src/sdiff.c:197 +#: src/sdiff.c:196 msgid " --help display this help and exit" msgstr " --help deze hulptekst tonen en stoppen" -#: src/sdiff.c:198 +#: src/sdiff.c:197 msgid "-v, --version output version information and exit" msgstr "-v, --version programmaversie tonen en stoppen" -#: src/sdiff.c:207 +#: src/sdiff.c:206 #, c-format msgid "Usage: %s [OPTION]... FILE1 FILE2\n" msgstr "" "Gebruik: %s [OPTIE...] BESTAND1 BESTAND2\n" "\n" -#: src/sdiff.c:209 +#: src/sdiff.c:208 msgid "Side-by-side merge of differences between FILE1 and FILE2." msgstr "Twee bestanden en hun verschillen naast elkaar weergeven." -#: src/sdiff.c:330 +#: src/sdiff.c:328 msgid "cannot interactively merge standard input" msgstr "kan standaardinvoer niet interactief samenvoegen" -#: src/sdiff.c:597 +#: src/sdiff.c:594 msgid "both files to be compared are directories" msgstr "de te vergelijken bestanden zijn allebei mappen" -#: src/sdiff.c:820 +#: src/sdiff.c:817 msgid "" "ed:\tEdit then use both versions, each decorated with a header.\n" "eb:\tEdit then use both versions.\n" @@ -1528,12 +1529,12 @@ msgstr "" "v: Overeenkomende regels invoegen en tonen.\n" "q: Afsluiten.\n" -#: src/util.c:662 +#: src/util.c:755 #, c-format msgid "unrecognized prefix: %s" msgstr "niet-herkend voorvoegsel: %s" -#: src/util.c:692 +#: src/util.c:785 #, c-format msgid "unparsable value for --palette" msgstr "onbegrepen waarde bij '--palette'" diff --git a/po/pl.po b/po/pl.po index 6bc92c6..34292d4 100644 --- a/po/pl.po +++ b/po/pl.po @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: GNU diffutils 3.7.41\n" "Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n" -"POT-Creation-Date: 2021-08-01 18:56-0700\n" +"POT-Creation-Date: 2023-05-21 01:51-0700\n" "PO-Revision-Date: 2021-07-20 18:00+0200\n" "Last-Translator: Rafał Maszkowski \n" "Language-Team: Polish \n" @@ -20,29 +20,29 @@ msgstr "" "Content-Transfer-Encoding: 8-bit\n" "X-Bugs: Report translation errors to the Language-Team address.\n" -#: lib/argmatch.c:132 +#: lib/argmatch.c:145 #, c-format msgid "invalid argument %s for %s" msgstr "argument %s błędny w kontekście %s" -#: lib/argmatch.c:133 +#: lib/argmatch.c:146 #, c-format msgid "ambiguous argument %s for %s" msgstr "argument %s błędny w kontekście %s" -#: lib/argmatch.c:152 lib/argmatch.h:223 +#: lib/argmatch.c:165 lib/argmatch.h:242 msgid "Valid arguments are:" msgstr "Prawidłowe argumenty to:" -#: lib/c-stack.c:187 +#: lib/c-stack.c:186 msgid "program error" msgstr "błąd programu" -#: lib/c-stack.c:188 +#: lib/c-stack.c:187 msgid "stack overflow" msgstr "przepełnienie stosu" -#: lib/error.c:195 +#: lib/error.c:193 msgid "Unknown system error" msgstr "Nieznany błąd systemu" @@ -198,83 +198,83 @@ msgstr "%s: opcja wymaga argumentu -- „%c”\n" #. If you don't know what to put here, please see #. #. and use glyphs suitable for your language. -#: lib/quotearg.c:355 +#: lib/quotearg.c:354 msgid "`" msgstr "„" -#: lib/quotearg.c:356 +#: lib/quotearg.c:355 msgid "'" msgstr "”" -#: lib/regcomp.c:135 +#: lib/regcomp.c:122 msgid "Success" msgstr "Powodzenie" -#: lib/regcomp.c:138 +#: lib/regcomp.c:125 msgid "No match" msgstr "Nie pasuje" -#: lib/regcomp.c:141 +#: lib/regcomp.c:128 msgid "Invalid regular expression" msgstr "Błędne wyrażenie regularne" -#: lib/regcomp.c:144 +#: lib/regcomp.c:131 msgid "Invalid collation character" msgstr "Znak błędny dla bieżącego uporządkowania" -#: lib/regcomp.c:147 +#: lib/regcomp.c:134 msgid "Invalid character class name" msgstr "Błędne nazwa klasy znaków" -#: lib/regcomp.c:150 +#: lib/regcomp.c:137 msgid "Trailing backslash" msgstr "Końcowy ukośnik odwrotny" -#: lib/regcomp.c:153 +#: lib/regcomp.c:140 msgid "Invalid back reference" msgstr "Błędny odnośnik wstecz" -#: lib/regcomp.c:156 +#: lib/regcomp.c:143 msgid "Unmatched [, [^, [:, [., or [=" msgstr "Nie sparowany [, [^, [:, [., albo [=" -#: lib/regcomp.c:159 +#: lib/regcomp.c:146 msgid "Unmatched ( or \\(" msgstr "Nie sparowany ( albo \\(" -#: lib/regcomp.c:162 +#: lib/regcomp.c:149 msgid "Unmatched \\{" msgstr "Nie sparowany \\{" -#: lib/regcomp.c:165 +#: lib/regcomp.c:152 msgid "Invalid content of \\{\\}" msgstr "Błędna zawartość \\{\\}" -#: lib/regcomp.c:168 +#: lib/regcomp.c:155 msgid "Invalid range end" msgstr "Błędny koniec zakresu" -#: lib/regcomp.c:171 +#: lib/regcomp.c:158 msgid "Memory exhausted" msgstr "Brak pamięci" -#: lib/regcomp.c:174 +#: lib/regcomp.c:161 msgid "Invalid preceding regular expression" msgstr "Błędne poprzedzające wyrażenie regularne" -#: lib/regcomp.c:177 +#: lib/regcomp.c:164 msgid "Premature end of regular expression" msgstr "Przedwczesny koniec wyrażenia regularnego" -#: lib/regcomp.c:180 +#: lib/regcomp.c:167 msgid "Regular expression too big" msgstr "Wyrażenia regularne jest za duże" -#: lib/regcomp.c:183 +#: lib/regcomp.c:170 msgid "Unmatched ) or \\)" msgstr "Nie sparowany ) lub \\)" -#: lib/regcomp.c:676 +#: lib/regcomp.c:650 msgid "No previous regular expression" msgstr "Brak poprzedniego wyrażenia regularnego" @@ -469,17 +469,17 @@ msgstr "strona domowa %s: %s\n" msgid "General help using GNU software: <%s>\n" msgstr "Pomoc w używaniu oprogramowania GNU: %s\n" -#: src/analyze.c:454 src/diff.c:1406 +#: src/analyze.c:455 src/diff.c:1478 #, c-format msgid "Files %s and %s differ\n" msgstr "Pliki %s i %s różnią się\n" -#: src/analyze.c:455 +#: src/analyze.c:456 #, c-format msgid "Binary files %s and %s differ\n" msgstr "Binarne pliki %s i %s różnią się\n" -#: src/analyze.c:706 src/diff3.c:1470 src/util.c:1254 +#: src/analyze.c:707 src/diff3.c:1457 src/util.c:1354 msgid "No newline at end of file" msgstr "Brak znaku nowej linii na końcu pliku" @@ -493,39 +493,40 @@ msgstr "Torbjörn Granlund" msgid "David MacKenzie" msgstr "David MacKenzie" -#: src/cmp.c:120 src/diff.c:879 src/diff3.c:467 src/sdiff.c:160 +#: src/cmp.c:124 src/diff.c:939 src/diff3.c:465 src/sdiff.c:159 #, c-format msgid "Try '%s --help' for more information." msgstr "Napisz „%s --help” żeby dowiedzieć się więcej." -#: src/cmp.c:138 +#: src/cmp.c:142 #, c-format msgid "invalid --ignore-initial value '%s'" msgstr "błędna wartość --ignore-initial „%s”" -#: src/cmp.c:148 +#: src/cmp.c:152 #, c-format msgid "options -l and -s are incompatible" msgstr "sprzeczne opcje -l i -s" -#: src/cmp.c:156 src/diff.c:887 src/diff3.c:474 src/sdiff.c:168 src/sdiff.c:316 -#: src/sdiff.c:323 src/sdiff.c:876 src/util.c:852 src/util.c:952 src/util.c:959 +#: src/cmp.c:160 src/diff.c:947 src/diff3.c:472 src/sdiff.c:167 src/sdiff.c:314 +#: src/sdiff.c:321 src/sdiff.c:873 src/util.c:952 src/util.c:1052 +#: src/util.c:1059 msgid "write failed" msgstr "zapis nieudany" -#: src/cmp.c:158 src/diff.c:889 src/diff.c:1471 src/diff3.c:476 src/sdiff.c:170 +#: src/cmp.c:162 src/diff.c:949 src/diff.c:1543 src/diff3.c:474 src/sdiff.c:169 msgid "standard output" msgstr "standardowe wyjście" -#: src/cmp.c:162 +#: src/cmp.c:166 msgid "-b, --print-bytes print differing bytes" msgstr "-b --print-bytes wypisanie różniących się bajtów" -#: src/cmp.c:163 +#: src/cmp.c:167 msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs" msgstr "-i, --ignore-initial=OMIŃ przeskoczenie pierwszych OMIŃ bajtów" -#: src/cmp.c:164 +#: src/cmp.c:168 msgid "" "-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n" " first SKIP2 bytes of FILE2" @@ -533,39 +534,39 @@ msgstr "" "--ignore-initial=OMIŃ1:OMIŃ2 przeskoczenie pierwszych OMIŃ1 bajtów\n" " PLIKU1 i OMIŃ2 bajtów PLIKU2" -#: src/cmp.c:166 +#: src/cmp.c:170 msgid "" "-l, --verbose output byte numbers and differing byte values" msgstr "" "-I --verbose wypisanie położeń i kodów wszystkich różniących " "się bajtów" -#: src/cmp.c:167 +#: src/cmp.c:171 msgid "-n, --bytes=LIMIT compare at most LIMIT bytes" msgstr "-n , --bytes=LIMIT porównanie najwyżej LIMIT bajtów" -#: src/cmp.c:168 +#: src/cmp.c:172 msgid "-s, --quiet, --silent suppress all normal output" msgstr "-s, --quiet, --silent wyłączenie wszystkich zwykłych komunikatów" -#: src/cmp.c:169 +#: src/cmp.c:173 msgid " --help display this help and exit" msgstr " --help wypisanie tej pomocy i zakończenie" -#: src/cmp.c:170 +#: src/cmp.c:174 msgid "-v, --version output version information and exit" msgstr "-v --version wypisanie informacji o wersji i zakończenie" -#: src/cmp.c:179 +#: src/cmp.c:183 #, c-format msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n" msgstr "Składnia: %s [OPCJA]... PLIK1 [PLIK2 [OMIŃ1 [OMIŃ2]]]\n" -#: src/cmp.c:181 +#: src/cmp.c:185 msgid "Compare two files byte by byte." msgstr "Porównanie plików bajt po bajcie." -#: src/cmp.c:183 +#: src/cmp.c:187 msgid "" "The optional SKIP1 and SKIP2 specify the number of bytes to skip\n" "at the beginning of each file (zero by default)." @@ -573,12 +574,12 @@ msgstr "" "Opcjonalne argumenty OMIŃ1 i OMIŃ2 to liczby bajtów do pominięcia na\n" "początku każdego z plików (domyślnie zero)." -#: src/cmp.c:186 src/diff.c:999 src/diff3.c:514 src/sdiff.c:211 +#: src/cmp.c:190 src/diff.c:1059 src/diff3.c:512 src/sdiff.c:210 msgid "" "Mandatory arguments to long options are mandatory for short options too.\n" msgstr "Obowiązkowe argumenty długich opcji są obowiązkowe też dla krótkich.\n" -#: src/cmp.c:192 +#: src/cmp.c:196 msgid "" "SKIP values may be followed by the following multiplicative suffixes:\n" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" @@ -588,195 +589,195 @@ msgstr "" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" "GB 1,000,000,000, G 1,073,741,824, i tak dalej dla T, P, E, Z, Y." -#: src/cmp.c:195 +#: src/cmp.c:199 msgid "If a FILE is '-' or missing, read standard input." msgstr "Jeżeli PLIK to „-” lub go brak, czytane jest standardowe wejście." -#: src/cmp.c:196 src/diff.c:987 src/sdiff.c:221 +#: src/cmp.c:200 src/diff.c:1047 src/sdiff.c:220 msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble." msgstr "" "Status wyjściowy ma wartość 0 gdy pliki wejściowe są takie same, 1 - jeżeli\n" "różne, 2 - jeżeli są problemy." -#: src/cmp.c:243 +#: src/cmp.c:247 #, c-format msgid "invalid --bytes value '%s'" msgstr "błędna wartość --bytes „%s”" -#: src/cmp.c:269 src/diff.c:797 src/diff3.c:361 src/sdiff.c:567 +#: src/cmp.c:273 src/diff.c:857 src/diff3.c:368 src/sdiff.c:564 #, c-format msgid "missing operand after '%s'" msgstr "brakujący argument po „%s”" -#: src/cmp.c:281 src/diff.c:799 src/diff3.c:363 src/sdiff.c:569 +#: src/cmp.c:285 src/diff.c:859 src/diff3.c:370 src/sdiff.c:566 #, c-format msgid "extra operand '%s'" msgstr "nadmiarowy argument „%s”" -#: src/cmp.c:507 +#: src/cmp.c:521 #, c-format msgid "%s %s differ: byte %s, line %s\n" msgstr "%s %s różnią się: bajt %s, linia %s\n" -#: src/cmp.c:523 +#: src/cmp.c:537 #, c-format msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n" msgstr "%s %s różnią się: bajt %s, linia %s zawiera %3o %s %3o %s\n" -#: src/cmp.c:580 +#: src/cmp.c:594 #, c-format msgid "cmp: EOF on %s which is empty\n" msgstr "cmp: EOF w %s, który jest pusty\n" -#: src/cmp.c:594 +#: src/cmp.c:608 #, c-format msgid "cmp: EOF on %s after byte %s, line %s\n" msgstr "cmp: EOF w %s, po bajcie %s, linii %s\n" -#: src/cmp.c:595 +#: src/cmp.c:609 #, c-format msgid "cmp: EOF on %s after byte %s, in line %s\n" msgstr "cmp: EOF w %s, po bajcie %s, w linii %s\n" -#: src/cmp.c:601 +#: src/cmp.c:615 #, c-format msgid "cmp: EOF on %s after byte %s\n" msgstr "cmp: EOF w %s, po bajcie %s\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:51 +#: src/diff.c:50 msgid "Paul Eggert" msgstr "Paul Eggert" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:52 +#: src/diff.c:51 msgid "Mike Haertel" msgstr "Mike Haertel" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:53 +#: src/diff.c:52 msgid "David Hayes" msgstr "David Hayes" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:54 +#: src/diff.c:53 msgid "Richard Stallman" msgstr "Richard Stallman" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:55 +#: src/diff.c:54 msgid "Len Tower" msgstr "Len Tower" -#: src/diff.c:355 +#: src/diff.c:365 #, c-format msgid "invalid context length '%s'" msgstr "błędna długość kontekstu „%s”" -#: src/diff.c:438 +#: src/diff.c:487 #, c-format msgid "pagination not supported on this host" msgstr "stronicowanie nie jest możliwe na tej maszynie" -#: src/diff.c:453 src/diff3.c:341 +#: src/diff.c:502 src/diff3.c:348 #, c-format msgid "too many file label options" msgstr "za dużo opcji etykietowania plików" -#: src/diff.c:530 +#: src/diff.c:579 #, c-format msgid "invalid width '%s'" msgstr "błędna szerokość „%s”" -#: src/diff.c:534 +#: src/diff.c:583 msgid "conflicting width options" msgstr "sprzeczne opcje szerokości" -#: src/diff.c:559 +#: src/diff.c:608 #, c-format msgid "invalid horizon length '%s'" msgstr "błędna długość horyzontu „%s”" -#: src/diff.c:615 +#: src/diff.c:664 #, c-format msgid "invalid tabsize '%s'" msgstr "błędny rozmiar tabulacji „%s”" -#: src/diff.c:619 +#: src/diff.c:668 msgid "conflicting tabsize options" msgstr "sprzeczne opcje rozmiarów TAB-a" -#: src/diff.c:774 +#: src/diff.c:834 msgid "--from-file and --to-file both specified" msgstr "równocześnie podane --from-file i --to-file" -#: src/diff.c:893 +#: src/diff.c:953 msgid " --normal output a normal diff (the default)" msgstr "" "--normal wynik w postaci zwykłego diff-a (domyślnie)" -#: src/diff.c:894 +#: src/diff.c:954 msgid "-q, --brief report only when files differ" msgstr "" "-q --brief wypisanie wyniku tylko gdy pliki się różnią" -#: src/diff.c:895 +#: src/diff.c:955 msgid "-s, --report-identical-files report when two files are the same" msgstr "-s --report-identical-files informowanie gdy dwa pliki są takie same" -#: src/diff.c:896 +#: src/diff.c:956 msgid "" "-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context" msgstr "" "-c, -C NUM, --context[=ILE] wypisanie ILU (domyślnie 3) linii kontekstu" -#: src/diff.c:897 +#: src/diff.c:957 msgid "" "-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context" msgstr "" "--u, -U ILE, --unified=ILE wypisanie najwyżej ILE (domyślnie 3)\n" " linii kontekstu w trybie unified" -#: src/diff.c:898 +#: src/diff.c:958 msgid "-e, --ed output an ed script" msgstr "-e --ed wynik w postaci poleceń ed-a" -#: src/diff.c:899 +#: src/diff.c:959 msgid "-n, --rcs output an RCS format diff" msgstr "-n --rcs wynik w postaci diff-a z RCS" -#: src/diff.c:900 +#: src/diff.c:960 msgid "-y, --side-by-side output in two columns" msgstr "-y, --side-by-side wyniki w dwóch kolumnach" -#: src/diff.c:901 +#: src/diff.c:961 msgid "" "-W, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-W, --width=ILE wypisanie najwyżej ILE (domyślnie 130) kolumn" -#: src/diff.c:902 +#: src/diff.c:962 msgid "" " --left-column output only the left column of common lines" msgstr "" " --left-column wypisanie tylko lewej kolumny dla wspólnych " "linii" -#: src/diff.c:903 +#: src/diff.c:963 msgid " --suppress-common-lines do not output common lines" msgstr " --suppress-common-lines bez wypisania wspólnych linii" -#: src/diff.c:905 +#: src/diff.c:965 msgid "-p, --show-c-function show which C function each change is in" msgstr "-p, --show-c-function podanie w jakiej funkcji C są zmiany" -#: src/diff.c:906 +#: src/diff.c:966 msgid "-F, --show-function-line=RE show the most recent line matching RE" msgstr "" "-F, --show-function-line=WYRREG wypisanie ostatniej linii pasującej do " "WYRREG" -#: src/diff.c:907 +#: src/diff.c:967 msgid "" " --label LABEL use LABEL instead of file name and timestamp\n" " (can be repeated)" @@ -785,83 +786,83 @@ msgstr "" "znacznika\n" " czasu (może być powtarzane)" -#: src/diff.c:910 +#: src/diff.c:970 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "-t --expand-tabs rozwinięcie TAB-ów w spacje w wyniku" -#: src/diff.c:911 +#: src/diff.c:971 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "-T --initial-tab wyrównanie linii przez użycie TAB-ów" -#: src/diff.c:912 +#: src/diff.c:972 msgid "" " --tabsize=NUM tab stops every NUM (default 8) print columns" msgstr " --tabsize=ILE TAB-y co ILE (domyślnie 8) kolumn" -#: src/diff.c:913 +#: src/diff.c:973 msgid "" " --suppress-blank-empty suppress space or tab before empty output lines" msgstr "" " --suppress-blank-empty bez wypisywania spacji i znaków TAB przed\n" " pustymi liniami" -#: src/diff.c:914 +#: src/diff.c:974 msgid "-l, --paginate pass output through 'pr' to paginate it" msgstr "" "-I --paginate przepuszczenie wyniku przez „pr” żeby go " "stronnicować" -#: src/diff.c:916 +#: src/diff.c:976 msgid "" "-r, --recursive recursively compare any subdirectories found" msgstr "-r --recursive porównanie podkatalogów rekurencyjnie" -#: src/diff.c:917 +#: src/diff.c:977 msgid " --no-dereference don't follow symbolic links" msgstr "" " --no-dereference bez podążania za dowiązaniami symbolicznymi" -#: src/diff.c:918 +#: src/diff.c:978 msgid "-N, --new-file treat absent files as empty" msgstr "" "-N --new-file traktowanie brakujących plików jak pustych" -#: src/diff.c:919 +#: src/diff.c:979 msgid " --unidirectional-new-file treat absent first files as empty" msgstr "" " --unidirectional-new-file traktowanie brakujących pierwszych plików\n" " w pierwszym zestawie jako pustych" -#: src/diff.c:920 +#: src/diff.c:980 msgid " --ignore-file-name-case ignore case when comparing file names" msgstr "" " --ignore-space-change zignorowanie wielkości liter przy\n" " porównywaniu nazw plików" -#: src/diff.c:921 +#: src/diff.c:981 msgid " --no-ignore-file-name-case consider case when comparing file names" msgstr "" " --no-ignore-file-name-case uwzględnianie wielkości liter przy\n" " porównywaniu nazw plików" -#: src/diff.c:922 +#: src/diff.c:982 msgid "-x, --exclude=PAT exclude files that match PAT" msgstr "-x, --exclude=WZÓR wykluczenie plików pasujących do WZORU" -#: src/diff.c:923 +#: src/diff.c:983 msgid "" "-X, --exclude-from=FILE exclude files that match any pattern in FILE" msgstr "" "-X, --exclude-from=PLIK pominięcie plików pasujących do wzorców w " "PLIKU" -#: src/diff.c:924 +#: src/diff.c:984 msgid "" "-S, --starting-file=FILE start with FILE when comparing directories" msgstr "" "-S, --starting-file=PLIK zacznij od PLIKU przy porównywaniu katalogów" -#: src/diff.c:925 +#: src/diff.c:985 msgid "" " --from-file=FILE1 compare FILE1 to all operands;\n" " FILE1 can be a directory" @@ -869,7 +870,7 @@ msgstr "" " --from-file=PLIK1 porównanie PLIKU1 z wszystkimi\n" " argumentami; PLIK1 może być katalogiem" -#: src/diff.c:927 +#: src/diff.c:987 msgid "" " --to-file=FILE2 compare all operands to FILE2;\n" " FILE2 can be a directory" @@ -877,85 +878,85 @@ msgstr "" " --to-file=PLIK2 porównanie wszystkich argumentów\n" " z PLIKIEM2; PLIK2 może być katalogiem" -#: src/diff.c:930 +#: src/diff.c:990 msgid "" "-i, --ignore-case ignore case differences in file contents" msgstr "" "-i --ignore-case ignorowanie różnic między wielkimi i małymi " "literami" -#: src/diff.c:931 +#: src/diff.c:991 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E --ignore-tab-expansion zignorowanie zmian spowodowanych\n" " rozwinięciem TAB-ów" -#: src/diff.c:932 +#: src/diff.c:992 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "" "-Z --ignore-trailing-space ignorowanie znaków odstępu na końcu linii" -#: src/diff.c:933 +#: src/diff.c:993 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "" "-b --ignore-space-change Zignorowanie zmian ilości znaków odstępu" -#: src/diff.c:934 +#: src/diff.c:994 msgid "-w, --ignore-all-space ignore all white space" msgstr "-w --ignore-all-space zignorowanie znaków odstępu" -#: src/diff.c:935 +#: src/diff.c:995 msgid "" "-B, --ignore-blank-lines ignore changes where lines are all blank" msgstr "" "-B --ignore-blank-lines zignorowanie zmian liczby pustych linii" -#: src/diff.c:936 +#: src/diff.c:996 msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE" msgstr "" "-I, --ignore-matching-lines=RE zignorowanie zmian w liniach pasujących\n" " do RE" -#: src/diff.c:938 +#: src/diff.c:998 msgid "-a, --text treat all files as text" msgstr "-a --text traktowanie plików jako tekstowych" -#: src/diff.c:939 +#: src/diff.c:999 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" "--strip-trailing-cr pominięcie znaków nowej linii na wejściu" -#: src/diff.c:941 +#: src/diff.c:1001 msgid " --binary read and write data in binary mode" msgstr "--binary czytanie i zapisywanie danych binarnie" -#: src/diff.c:944 +#: src/diff.c:1004 msgid "" "-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs" msgstr "" "-D, --ifdef=NAZWA wypisanie połączonego pliku dla pokazania\n" " różnic w „#ifdef NAZWA”" -#: src/diff.c:945 +#: src/diff.c:1005 msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT" msgstr "" " --GTYPE-group-format=FMTG użyciem FMTF do sformatowania grup\n" " wejściowych typu GTYPE" -#: src/diff.c:946 +#: src/diff.c:1006 msgid " --line-format=LFMT format all input lines with LFMT" msgstr "" " --line-format=LFMT podobnie, ale z użyciem LFMT do\n" " sformatowania linii wejściowych" -#: src/diff.c:947 +#: src/diff.c:1007 msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT" msgstr "" " --LTYPE-line-format=FMTL użycie FMTL do sformatowania linii\n" " wejściowych typu LTYPE" -#: src/diff.c:948 +#: src/diff.c:1008 msgid "" " These format options provide fine-grained control over the output\n" " of diff, generalizing -D/--ifdef." @@ -963,13 +964,13 @@ msgstr "" " Te opcje formatowania dają dokładną kontrolę nad wynikami diff-a,\n" " są uogólnieniem -D/--ifdef." -#: src/diff.c:950 +#: src/diff.c:1010 msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'." msgstr "" "TYPL to „old” (stary), „new” (nowy) albo „unchanged” (nie zmieniony).\n" "TYPG to TYPL albo „changed” (zmieniony)." -#: src/diff.c:951 +#: src/diff.c:1011 msgid "" " GFMT (only) may contain:\n" " %< lines from FILE1\n" @@ -997,7 +998,7 @@ msgstr "" " E F-1\n" " M L+1 %(A=B?T:E) jeżeli A równa się B, to T, jeżeli nie, to E" -#: src/diff.c:963 +#: src/diff.c:1023 msgid "" " LFMT (only) may contain:\n" " %L contents of line\n" @@ -1009,7 +1010,7 @@ msgstr "" " %l zawartość linii z wyłączeniem znaku nowej linii\n" " %[-][SZER][.[DOKŁ]]{doxX}n specyfikację numeru linii w stylu printf" -#: src/diff.c:967 +#: src/diff.c:1027 msgid "" " Both GFMT and LFMT may contain:\n" " %% %\n" @@ -1023,24 +1024,24 @@ msgstr "" " %c'\\OOO' znak o kodzie ósemkowym OOO\n" " Z znak Z (inne znaki reprezentują same siebie)" -#: src/diff.c:973 +#: src/diff.c:1033 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "" "-d --minimal usiłowanie znalezienia mniejszego zbioru zmian" -#: src/diff.c:974 +#: src/diff.c:1034 msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix" msgstr "" " --horizon-lines=ILE zostawienie ILE linii wspólnego przedrostka i " "przyrostka" -#: src/diff.c:975 +#: src/diff.c:1035 msgid "" " --speed-large-files assume large files and many scattered small changes" msgstr "" " --speed-large-files założenie: duże pliki i rozrzucone małe zmiany" -#: src/diff.c:976 +#: src/diff.c:1036 msgid "" " --color[=WHEN] color output; WHEN is 'never', 'always', or " "'auto';\n" @@ -1050,7 +1051,7 @@ msgstr "" "„always”\n" " (zawsze) albo „auto” (wartość domyślna)" -#: src/diff.c:978 +#: src/diff.c:1038 msgid "" " --palette=PALETTE the colors to use when --color is active; PALETTE " "is\n" @@ -1060,113 +1061,113 @@ msgstr "" " PALETA jest listą oddzielonych dwukropkami\n" " właściwości terminfo" -#: src/diff.c:981 +#: src/diff.c:1041 msgid " --help display this help and exit" msgstr " --help wypisanie tej pomocy i zakończenie" -#: src/diff.c:982 +#: src/diff.c:1042 msgid "-v, --version output version information and exit" msgstr "-v --version wypisanie informacji o wersji i zakończenie" -#: src/diff.c:984 +#: src/diff.c:1044 msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'." msgstr "" "PLIKI to „PLIK1 PLIK2” albo „KATALOG1 KATALOG2” albo „KATALOG PLIK” albo\n" "„PLIK KATALOG”." -#: src/diff.c:985 +#: src/diff.c:1045 msgid "" "If --from-file or --to-file is given, there are no restrictions on FILE(s)." msgstr "" "Jeżeli użyta jest opcja --from-file albo --to-file, nie ma ograniczeń co do\n" "PLIKU/ÓW." -#: src/diff.c:986 src/diff3.c:533 src/sdiff.c:220 +#: src/diff.c:1046 src/diff3.c:531 src/sdiff.c:219 msgid "If a FILE is '-', read standard input." msgstr "Jeżeli PLIK to „-”, czytane jest standardowe wejście." -#: src/diff.c:996 +#: src/diff.c:1056 #, c-format msgid "Usage: %s [OPTION]... FILES\n" msgstr "Składnia: %s [OPCJA]... PLIKI\n" -#: src/diff.c:997 +#: src/diff.c:1057 msgid "Compare FILES line by line." msgstr "Porównanie PLIKÓW kolejnymi liniami." -#: src/diff.c:1034 +#: src/diff.c:1094 #, c-format msgid "conflicting %s option value '%s'" msgstr "sprzeczna wartość opcji %s: „%s”" -#: src/diff.c:1047 +#: src/diff.c:1107 #, c-format msgid "conflicting output style options" msgstr "sprzeczne opcje stylu wyniku" -#: src/diff.c:1063 +#: src/diff.c:1123 #, c-format msgid "invalid color '%s'" msgstr "błędny kolor „%s”" -#: src/diff.c:1119 src/diff.c:1329 +#: src/diff.c:1197 src/diff.c:1401 #, c-format msgid "Only in %s: %s\n" msgstr "Tylko w %s: %s\n" -#: src/diff.c:1253 +#: src/diff.c:1325 msgid "cannot compare '-' to a directory" msgstr "nie można porównać „-” z katalogiem" -#: src/diff.c:1288 +#: src/diff.c:1360 msgid "-D option not supported with directories" msgstr "opcja -D nie działa dla katalogów" -#: src/diff.c:1297 +#: src/diff.c:1369 #, c-format msgid "Common subdirectories: %s and %s\n" msgstr "Wspólne podkatalogi: %s i %s\n" -#: src/diff.c:1339 src/diff.c:1389 +#: src/diff.c:1411 src/diff.c:1461 #, c-format msgid "File %s is a %s while file %s is a %s\n" msgstr "Plik %s jest %s, podczas gdy plik %s jest %s\n" -#: src/diff.c:1375 +#: src/diff.c:1447 #, c-format msgid "Symbolic links %s and %s differ\n" msgstr "Dowiązania symboliczne %s i %s różnią się\n" -#: src/diff.c:1462 +#: src/diff.c:1534 #, c-format msgid "Files %s and %s are identical\n" msgstr "Pliki %s i %s są identyczne\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff3.c:43 +#: src/diff3.c:51 msgid "Randy Smith" msgstr "Randy Smith" -#: src/diff3.c:356 +#: src/diff3.c:363 #, c-format msgid "incompatible options" msgstr "niezgodne opcje" -#: src/diff3.c:396 +#: src/diff3.c:403 msgid "'-' specified for more than one input file" msgstr "„-” podany dla więcej niż jednego pliku wejściowego" -#: src/diff3.c:447 src/diff3.c:1295 src/diff3.c:1698 src/diff3.c:1753 -#: src/sdiff.c:308 src/sdiff.c:846 src/sdiff.c:857 +#: src/diff3.c:445 src/diff3.c:1284 src/diff3.c:1683 src/diff3.c:1738 +#: src/sdiff.c:306 src/sdiff.c:843 src/sdiff.c:854 msgid "read failed" msgstr "nieudany odczyt" -#: src/diff3.c:480 +#: src/diff3.c:478 msgid "-A, --show-all output all changes, bracketing conflicts" msgstr "" "-A --show-all wypisanie wszystkich zmian, konflikty w nawiasach" -#: src/diff3.c:482 +#: src/diff3.c:480 msgid "" "-e, --ed output ed script incorporating changes\n" " from OLDFILE to YOURFILE into MYFILE" @@ -1174,31 +1175,31 @@ msgstr "" "-e --ed wypisanie niezłączonych zmian między\n" " STARY_PLIK a NOWY_PLIK do MÓJ_PLIK" -#: src/diff3.c:484 +#: src/diff3.c:482 msgid "-E, --show-overlap like -e, but bracket conflicts" msgstr "-E --show-overlap jak -e, ale z konfliktami w nawiasach" -#: src/diff3.c:485 +#: src/diff3.c:483 msgid "" "-3, --easy-only like -e, but incorporate only nonoverlapping " "changes" msgstr "" "-3 --easy-only jak -e, ale z tylko z nienachodzącymi zmianami" -#: src/diff3.c:486 +#: src/diff3.c:484 msgid "" "-x, --overlap-only like -e, but incorporate only overlapping changes" msgstr "-x --overlap-only jak -e, ale tylko z nachodzącymi zmianami" -#: src/diff3.c:487 +#: src/diff3.c:485 msgid "-X like -x, but bracket conflicts" msgstr "-X jak -x, ale z konfliktami w nawiasach" -#: src/diff3.c:488 +#: src/diff3.c:486 msgid "-i append 'w' and 'q' commands to ed scripts" msgstr "-i dodanie poleceń „w” i „q” do skryptu ed-a" -#: src/diff3.c:490 +#: src/diff3.c:488 msgid "" "-m, --merge output actual merged file, according to\n" " -A if no other options are given" @@ -1206,23 +1207,23 @@ msgstr "" "-m, --merge wypisanie połączonego pliku zgodnie z -A,\n" " jeżeli nie było innych opcji" -#: src/diff3.c:493 +#: src/diff3.c:491 msgid "-a, --text treat all files as text" msgstr "-a --text traktowanie plików jako tekstowych" -#: src/diff3.c:494 +#: src/diff3.c:492 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "--strip-trailing-cr pominięcie znaków nowej linii na wejściu" -#: src/diff3.c:495 +#: src/diff3.c:493 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "-T --initial-tab wyrównanie linii przez użycie TAB-ów" -#: src/diff3.c:496 +#: src/diff3.c:494 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr "--diff-program=PROGRAM użycie PROGRAMU do porównania plików" -#: src/diff3.c:497 +#: src/diff3.c:495 msgid "" "-L, --label=LABEL use LABEL instead of file name\n" " (can be repeated up to three times)" @@ -1230,25 +1231,25 @@ msgstr "" "-L, --label=ETYKIETA użycie ETYKIETY zamiast nazwy pliku\n" " (może być powtarzane do trzech razy)" -#: src/diff3.c:500 +#: src/diff3.c:498 msgid " --help display this help and exit" msgstr " --help wypisanie tej pomocy i zakończenie" -#: src/diff3.c:501 +#: src/diff3.c:499 msgid "-v, --version output version information and exit" msgstr "" "-v --version wypisanie informacji o wersji i zakończenie" -#: src/diff3.c:510 +#: src/diff3.c:508 #, c-format msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n" msgstr "Składnia: %s [OPCJA]... MÓJ_PLIK STARY_PLIK TWÓJ_PLIK\n" -#: src/diff3.c:512 +#: src/diff3.c:510 msgid "Compare three files line by line." msgstr "Porównanie trzech plików linia po linii." -#: src/diff3.c:522 +#: src/diff3.c:520 msgid "" "\n" "The default output format is a somewhat human-readable representation of\n" @@ -1272,56 +1273,56 @@ msgstr "" "różnice i wypisuje połączony plik. Przy nietypowych danych wejściowych\n" "jest to bardziej elastyczne niż użycie ed-a.\n" -#: src/diff3.c:534 +#: src/diff3.c:532 msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble." msgstr "" "Status wyjściowy ma wartość 0 gdy polecenie wykonało się z prawidłowym\n" "wynikiem, 1 - jeżeli są konflikty, 2 - jeżeli są problemy." -#: src/diff3.c:727 +#: src/diff3.c:725 msgid "internal error: screwup in format of diff blocks" msgstr "bład wewnętrzny: spieprzony format bloków diff" -#: src/diff3.c:1022 +#: src/diff3.c:1015 #, c-format msgid "%s: diff failed: " msgstr "%s: diff nie zadziałał: " -#: src/diff3.c:1044 +#: src/diff3.c:1037 msgid "internal error: invalid diff type in process_diff" msgstr "błąd wewnętrzny: błędny typ diff w process_diff" -#: src/diff3.c:1069 +#: src/diff3.c:1060 msgid "invalid diff format; invalid change separator" msgstr "błędny format diff; błędny separator zmian" -#: src/diff3.c:1305 +#: src/diff3.c:1294 msgid "invalid diff format; incomplete last line" msgstr "błędny format diff; niekompletna ostatnia linia" -#: src/diff3.c:1329 src/sdiff.c:276 src/util.c:969 +#: src/diff3.c:1318 src/sdiff.c:274 src/util.c:1069 #, c-format msgid "subsidiary program '%s' could not be invoked" msgstr "nie mógł być wywołany program pomocniczy „%s”" -#: src/diff3.c:1354 +#: src/diff3.c:1343 msgid "invalid diff format; incorrect leading line chars" msgstr "błędny format diff; nieprawidłowe znaki na początku linii" -#: src/diff3.c:1427 +#: src/diff3.c:1416 msgid "internal error: invalid diff type passed to output" msgstr "błąd wenwętrzny: błędny typ diff-a przekazany na wyjście" -#: src/diff3.c:1700 src/diff3.c:1757 +#: src/diff3.c:1685 src/diff3.c:1742 msgid "input file shrank" msgstr "plik wejściowy się zmniejszył" -#: src/dir.c:156 +#: src/dir.c:154 #, c-format msgid "cannot compare file names '%s' and '%s'" msgstr "nie można porównać nazw plików „%s” i „%s”" -#: src/dir.c:225 +#: src/dir.c:223 #, c-format msgid "%s: recursive directory loop" msgstr "%s: rekurencyjne zapętlenie katalogów" @@ -1331,123 +1332,123 @@ msgstr "%s: rekurencyjne zapętlenie katalogów" msgid "Thomas Lord" msgstr "Thomas Lord" -#: src/sdiff.c:174 +#: src/sdiff.c:173 msgid "" "-o, --output=FILE operate interactively, sending output to FILE" msgstr "" "-o, --output=PLIK tryb interakcyjny, wyniki wysyłane do PLIKU" -#: src/sdiff.c:176 +#: src/sdiff.c:175 msgid "" "-i, --ignore-case consider upper- and lower-case to be the same" msgstr "" "-i --ignore-case traktowanie małych i wielkich liter tak samo" -#: src/sdiff.c:177 +#: src/sdiff.c:176 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E --ignore-tab-expansion zignorowanie zmian spowodowanych rozwinięciem\n" " TAB-ów" -#: src/sdiff.c:178 +#: src/sdiff.c:177 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "-Z --ignore-trailing-space ignorowanie znaków odstępu na końcu linii" -#: src/sdiff.c:179 +#: src/sdiff.c:178 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "-b --ignore-space-change zignorowanie zmian ilości znaków odstępu" -#: src/sdiff.c:180 +#: src/sdiff.c:179 msgid "-W, --ignore-all-space ignore all white space" msgstr "-W --ignore-all-space ignorowanie wszystkich znaków odstępu" -#: src/sdiff.c:181 +#: src/sdiff.c:180 msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank" msgstr "-B --ignore-blank-lines zignorowanie zmian liczby pustych linii" -#: src/sdiff.c:182 +#: src/sdiff.c:181 msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE" msgstr "" "-I, --ignore-matching-lines=RE zignorowanie zmian w liniach pasujących\n" " do RE" -#: src/sdiff.c:183 +#: src/sdiff.c:182 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "--strip-trailing-cr pominięcie znaków nowej linii na wejściu" -#: src/sdiff.c:184 +#: src/sdiff.c:183 msgid "-a, --text treat all files as text" msgstr "-a --text traktowanie plików jako tekstowych" -#: src/sdiff.c:186 +#: src/sdiff.c:185 msgid "" "-w, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-w ILE --width=ILE wypisanie najwyżej ILE (domyślnie 130) kolumn" -#: src/sdiff.c:187 +#: src/sdiff.c:186 msgid "" "-l, --left-column output only the left column of common lines" msgstr "" "-I --left-column wypisanie tylko lewej kolumny dla wspólnych " "linii" -#: src/sdiff.c:188 +#: src/sdiff.c:187 msgid "-s, --suppress-common-lines do not output common lines" msgstr "-s --suppress-common-lines bez wypisania wspólnych linii" -#: src/sdiff.c:190 +#: src/sdiff.c:189 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "-t --expand-tabs rozwinięcie TAB-ów w spacje w wyniku" -#: src/sdiff.c:191 +#: src/sdiff.c:190 msgid "" " --tabsize=NUM tab stops at every NUM (default 8) print columns" msgstr " --tabsize=ILE TAB-y co ILE (domyślnie 8) kolumn" -#: src/sdiff.c:193 +#: src/sdiff.c:192 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "" "-d --minimal usiłowanie znalezienia mniejszego zbioru zmian" -#: src/sdiff.c:194 +#: src/sdiff.c:193 msgid "" "-H, --speed-large-files assume large files, many scattered small changes" msgstr "" "-H --speed-large-files założenie: duże pliki i rozrzucone małe zmiany" -#: src/sdiff.c:195 +#: src/sdiff.c:194 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr " --diff-program=PROGRAM użycie PROGRAMU do porównania plików" -#: src/sdiff.c:197 +#: src/sdiff.c:196 msgid " --help display this help and exit" msgstr " --help wypisanie tej pomocy i zakończenie" -#: src/sdiff.c:198 +#: src/sdiff.c:197 msgid "-v, --version output version information and exit" msgstr "" "-v --version wypisanie informacji o wersji i zakończenie" -#: src/sdiff.c:207 +#: src/sdiff.c:206 #, c-format msgid "Usage: %s [OPTION]... FILE1 FILE2\n" msgstr "Składnia: %s [OPCJA]... PLIK1 PLIK2\n" -#: src/sdiff.c:209 +#: src/sdiff.c:208 msgid "Side-by-side merge of differences between FILE1 and FILE2." msgstr "Interaktywne łączenie różnic między PLIKIEM1 a PLIKIEM2." -#: src/sdiff.c:330 +#: src/sdiff.c:328 msgid "cannot interactively merge standard input" msgstr "nie mogę interakcyjnie łączyć standardowego wejścia" -#: src/sdiff.c:597 +#: src/sdiff.c:594 msgid "both files to be compared are directories" msgstr "oba mające być porównane pliki to katalogi" -#: src/sdiff.c:820 +#: src/sdiff.c:817 msgid "" "ed:\tEdit then use both versions, each decorated with a header.\n" "eb:\tEdit then use both versions.\n" @@ -1471,12 +1472,12 @@ msgstr "" "v:\tDołączenie wspólnych linii z podaniem informacji.\n" "q:\tZakończenie.\n" -#: src/util.c:662 +#: src/util.c:755 #, c-format msgid "unrecognized prefix: %s" msgstr "nierozpoznany prefiks: %s" -#: src/util.c:692 +#: src/util.c:785 #, c-format msgid "unparsable value for --palette" msgstr "wartość --palette niemożliwa do rozbioru" diff --git a/po/pt.po b/po/pt.po index 152f6ee..32b9b96 100644 --- a/po/pt.po +++ b/po/pt.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: GNU diffutils 3.7.41\n" "Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n" -"POT-Creation-Date: 2021-08-01 18:56-0700\n" +"POT-Creation-Date: 2023-05-21 01:51-0700\n" "PO-Revision-Date: 2021-07-23 07:11+0100\n" "Last-Translator: Pedro Albuquerque \n" "Language-Team: Portuguese \n" @@ -19,29 +19,29 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Generator: Poedit 2.3\n" -#: lib/argmatch.c:132 +#: lib/argmatch.c:145 #, c-format msgid "invalid argument %s for %s" msgstr "argumento %s inválido para %s" -#: lib/argmatch.c:133 +#: lib/argmatch.c:146 #, c-format msgid "ambiguous argument %s for %s" msgstr "argumento %s ambíguo para %s" -#: lib/argmatch.c:152 lib/argmatch.h:223 +#: lib/argmatch.c:165 lib/argmatch.h:242 msgid "Valid arguments are:" msgstr "Os argumentos válidos são:" -#: lib/c-stack.c:187 +#: lib/c-stack.c:186 msgid "program error" msgstr "erro de programa" -#: lib/c-stack.c:188 +#: lib/c-stack.c:187 msgid "stack overflow" msgstr "transporte da pilha" -#: lib/error.c:195 +#: lib/error.c:193 msgid "Unknown system error" msgstr "Erro de sistema desconhecido" @@ -197,83 +197,83 @@ msgstr "%s: opção requer um argumento -- \"%c\"\n" #. If you don't know what to put here, please see #. #. and use glyphs suitable for your language. -#: lib/quotearg.c:355 +#: lib/quotearg.c:354 msgid "`" msgstr "\"" -#: lib/quotearg.c:356 +#: lib/quotearg.c:355 msgid "'" msgstr "\"" -#: lib/regcomp.c:135 +#: lib/regcomp.c:122 msgid "Success" msgstr "Sucesso" -#: lib/regcomp.c:138 +#: lib/regcomp.c:125 msgid "No match" msgstr "Sem par" -#: lib/regcomp.c:141 +#: lib/regcomp.c:128 msgid "Invalid regular expression" msgstr "Expressão regular inválida" -#: lib/regcomp.c:144 +#: lib/regcomp.c:131 msgid "Invalid collation character" msgstr "Carácter de agrupamento inválido" -#: lib/regcomp.c:147 +#: lib/regcomp.c:134 msgid "Invalid character class name" msgstr "Nome de classe de carácter inválido" -#: lib/regcomp.c:150 +#: lib/regcomp.c:137 msgid "Trailing backslash" msgstr "Barra invertida final" -#: lib/regcomp.c:153 +#: lib/regcomp.c:140 msgid "Invalid back reference" msgstr "Referência de recuo inválida" -#: lib/regcomp.c:156 +#: lib/regcomp.c:143 msgid "Unmatched [, [^, [:, [., or [=" msgstr "[, [^, [:, [., ou [= sem par" -#: lib/regcomp.c:159 +#: lib/regcomp.c:146 msgid "Unmatched ( or \\(" msgstr "( ou \\( sem par" -#: lib/regcomp.c:162 +#: lib/regcomp.c:149 msgid "Unmatched \\{" msgstr "\\{ sem par" -#: lib/regcomp.c:165 +#: lib/regcomp.c:152 msgid "Invalid content of \\{\\}" msgstr "Conteúdo inválido de \\{\\}" -#: lib/regcomp.c:168 +#: lib/regcomp.c:155 msgid "Invalid range end" msgstr "Final de intervalo inválido" -#: lib/regcomp.c:171 +#: lib/regcomp.c:158 msgid "Memory exhausted" msgstr "Memória esgotada" -#: lib/regcomp.c:174 +#: lib/regcomp.c:161 msgid "Invalid preceding regular expression" msgstr "Expressão regular precedente inválida" -#: lib/regcomp.c:177 +#: lib/regcomp.c:164 msgid "Premature end of regular expression" msgstr "Fim prematuro de expressão regular" -#: lib/regcomp.c:180 +#: lib/regcomp.c:167 msgid "Regular expression too big" msgstr "Expressão regular muito grande" -#: lib/regcomp.c:183 +#: lib/regcomp.c:170 msgid "Unmatched ) or \\)" msgstr ") ou \\) sem par" -#: lib/regcomp.c:676 +#: lib/regcomp.c:650 msgid "No previous regular expression" msgstr "Sem expressão regular anterior" @@ -468,17 +468,17 @@ msgstr "Página inicial %s: <%s>\n" msgid "General help using GNU software: <%s>\n" msgstr "Ajuda geral para usar programas GNU: <%s>\n" -#: src/analyze.c:454 src/diff.c:1406 +#: src/analyze.c:455 src/diff.c:1478 #, c-format msgid "Files %s and %s differ\n" msgstr "Ficheiros %s e %s diferem\n" -#: src/analyze.c:455 +#: src/analyze.c:456 #, c-format msgid "Binary files %s and %s differ\n" msgstr "Ficheiros binários %s e %s diferem\n" -#: src/analyze.c:706 src/diff3.c:1470 src/util.c:1254 +#: src/analyze.c:707 src/diff3.c:1457 src/util.c:1354 msgid "No newline at end of file" msgstr "Sem newline no fim do ficheiro" @@ -492,41 +492,42 @@ msgstr "Torbjorn Granlund" msgid "David MacKenzie" msgstr "David MacKenzie" -#: src/cmp.c:120 src/diff.c:879 src/diff3.c:467 src/sdiff.c:160 +#: src/cmp.c:124 src/diff.c:939 src/diff3.c:465 src/sdiff.c:159 #, c-format msgid "Try '%s --help' for more information." msgstr "Tente \"%s --help\" para mais informação." -#: src/cmp.c:138 +#: src/cmp.c:142 #, c-format msgid "invalid --ignore-initial value '%s'" msgstr "valor --ignore-initial \"%s\" inválido" -#: src/cmp.c:148 +#: src/cmp.c:152 #, c-format msgid "options -l and -s are incompatible" msgstr "as opções -l e -s são incompatíveis" -#: src/cmp.c:156 src/diff.c:887 src/diff3.c:474 src/sdiff.c:168 src/sdiff.c:316 -#: src/sdiff.c:323 src/sdiff.c:876 src/util.c:852 src/util.c:952 src/util.c:959 +#: src/cmp.c:160 src/diff.c:947 src/diff3.c:472 src/sdiff.c:167 src/sdiff.c:314 +#: src/sdiff.c:321 src/sdiff.c:873 src/util.c:952 src/util.c:1052 +#: src/util.c:1059 msgid "write failed" msgstr "falha de escrita" -#: src/cmp.c:158 src/diff.c:889 src/diff.c:1471 src/diff3.c:476 src/sdiff.c:170 +#: src/cmp.c:162 src/diff.c:949 src/diff.c:1543 src/diff3.c:474 src/sdiff.c:169 msgid "standard output" msgstr "a saída padrão" -#: src/cmp.c:162 +#: src/cmp.c:166 msgid "-b, --print-bytes print differing bytes" msgstr "-b, --print-bytes imprime bytes diferentes" -#: src/cmp.c:163 +#: src/cmp.c:167 msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs" msgstr "" "-i, --ignore-initial=NÚM salta os primeiros NÚM bytes de ambas as " "entradas" -#: src/cmp.c:164 +#: src/cmp.c:168 msgid "" "-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n" " first SKIP2 bytes of FILE2" @@ -534,39 +535,39 @@ msgstr "" "-i, --ignore-initial=NÚM1:NÚM2 salta os primeiros NÚM1 bytes de FICH1 e\n" " os primeiros NÚM2 bytes de FICH2" -#: src/cmp.c:166 +#: src/cmp.c:170 msgid "" "-l, --verbose output byte numbers and differing byte values" msgstr "" "-l, --verbose imprime números de byte e valores de byte " "diferentes" -#: src/cmp.c:167 +#: src/cmp.c:171 msgid "-n, --bytes=LIMIT compare at most LIMIT bytes" msgstr "-n, --bytes=LIMITE compara no máximo LIMITE bytes" -#: src/cmp.c:168 +#: src/cmp.c:172 msgid "-s, --quiet, --silent suppress all normal output" msgstr "-s, --quiet, --silent suprime toda a saída normal" -#: src/cmp.c:169 +#: src/cmp.c:173 msgid " --help display this help and exit" msgstr " --help mostra esta ajuda e sai" -#: src/cmp.c:170 +#: src/cmp.c:174 msgid "-v, --version output version information and exit" msgstr "-v, --version mostra informação da versão e sai" -#: src/cmp.c:179 +#: src/cmp.c:183 #, c-format msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n" msgstr "Uso: %s [OPÇÃO]... FICH1 [FICH2 [NÚM1 [NÚM2]]]\n" -#: src/cmp.c:181 +#: src/cmp.c:185 msgid "Compare two files byte by byte." msgstr "Comparar dois ficheiros byte a byte." -#: src/cmp.c:183 +#: src/cmp.c:187 msgid "" "The optional SKIP1 and SKIP2 specify the number of bytes to skip\n" "at the beginning of each file (zero by default)." @@ -574,14 +575,14 @@ msgstr "" "Os NÚM1 e NÚM2 opcionais especificam o número de bytes a saltar\n" "no início de cada ficheiro (0 por predefinição)." -#: src/cmp.c:186 src/diff.c:999 src/diff3.c:514 src/sdiff.c:211 +#: src/cmp.c:190 src/diff.c:1059 src/diff3.c:512 src/sdiff.c:210 msgid "" "Mandatory arguments to long options are mandatory for short options too.\n" msgstr "" "Argumentos obrigatórios para opções longas também são obrigatórios para " "opções curtas.\n" -#: src/cmp.c:192 +#: src/cmp.c:196 msgid "" "SKIP values may be followed by the following multiplicative suffixes:\n" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" @@ -592,196 +593,196 @@ msgstr "" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" "GB 1,000,000,000, G 1,073,741,824 e assim por diante para T, P, E, Z, Y." -#: src/cmp.c:195 +#: src/cmp.c:199 msgid "If a FILE is '-' or missing, read standard input." msgstr "Se um dos FICH for \"-\" ou omisso, lê a entrada padrão." -#: src/cmp.c:196 src/diff.c:987 src/sdiff.c:221 +#: src/cmp.c:200 src/diff.c:1047 src/sdiff.c:220 msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble." msgstr "" "O estado de saída é 0 se as entradas forem iguais, 1 se forem diferentes, 2 " "se houver problemas." -#: src/cmp.c:243 +#: src/cmp.c:247 #, c-format msgid "invalid --bytes value '%s'" msgstr "valor --bytes \"%s\" inválido" -#: src/cmp.c:269 src/diff.c:797 src/diff3.c:361 src/sdiff.c:567 +#: src/cmp.c:273 src/diff.c:857 src/diff3.c:368 src/sdiff.c:564 #, c-format msgid "missing operand after '%s'" msgstr "operando em falta após \"%s\"" -#: src/cmp.c:281 src/diff.c:799 src/diff3.c:363 src/sdiff.c:569 +#: src/cmp.c:285 src/diff.c:859 src/diff3.c:370 src/sdiff.c:566 #, c-format msgid "extra operand '%s'" msgstr "operando extra \"%s\"" -#: src/cmp.c:507 +#: src/cmp.c:521 #, c-format msgid "%s %s differ: byte %s, line %s\n" msgstr "%s %s diferem: byte %s, linha %s\n" -#: src/cmp.c:523 +#: src/cmp.c:537 #, c-format msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n" msgstr "%s %s diferem: byte %s, linha %s é %3o %s %3o %s\n" -#: src/cmp.c:580 +#: src/cmp.c:594 #, c-format msgid "cmp: EOF on %s which is empty\n" msgstr "cmp: EOF em %s que está vazio\n" -#: src/cmp.c:594 +#: src/cmp.c:608 #, c-format msgid "cmp: EOF on %s after byte %s, line %s\n" msgstr "cmp: EOF em %s após o byte %s, linha %s\n" -#: src/cmp.c:595 +#: src/cmp.c:609 #, c-format msgid "cmp: EOF on %s after byte %s, in line %s\n" msgstr "cmp: EOF em %s após o byte %s, na linha %s\n" -#: src/cmp.c:601 +#: src/cmp.c:615 #, c-format msgid "cmp: EOF on %s after byte %s\n" msgstr "cmp: EOF em %s após o byte %s\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:51 +#: src/diff.c:50 msgid "Paul Eggert" msgstr "Paul Eggert" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:52 +#: src/diff.c:51 msgid "Mike Haertel" msgstr "Mike Haertel" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:53 +#: src/diff.c:52 msgid "David Hayes" msgstr "David Hayes" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:54 +#: src/diff.c:53 msgid "Richard Stallman" msgstr "Richard Stallman" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:55 +#: src/diff.c:54 msgid "Len Tower" msgstr "Len Tower" -#: src/diff.c:355 +#: src/diff.c:365 #, c-format msgid "invalid context length '%s'" msgstr "tamanho de contexto inválido \"%s\"" -#: src/diff.c:438 +#: src/diff.c:487 #, c-format msgid "pagination not supported on this host" msgstr "paginação não suportada neste anfitrião" -#: src/diff.c:453 src/diff3.c:341 +#: src/diff.c:502 src/diff3.c:348 #, c-format msgid "too many file label options" msgstr "demasiadas opções de etiquetas de ficheiro" -#: src/diff.c:530 +#: src/diff.c:579 #, c-format msgid "invalid width '%s'" msgstr "largura \"%s\" inválida" -#: src/diff.c:534 +#: src/diff.c:583 msgid "conflicting width options" msgstr "opções de largura em conflito" -#: src/diff.c:559 +#: src/diff.c:608 #, c-format msgid "invalid horizon length '%s'" msgstr "tamanho horizontal \"%s\" inválido" -#: src/diff.c:615 +#: src/diff.c:664 #, c-format msgid "invalid tabsize '%s'" msgstr "tamanho de tabulação \"%s\" inválido" -#: src/diff.c:619 +#: src/diff.c:668 msgid "conflicting tabsize options" msgstr "opções de tabulação em conflito" -#: src/diff.c:774 +#: src/diff.c:834 msgid "--from-file and --to-file both specified" msgstr "ambas as opções --from-file e --to-file especificadas" -#: src/diff.c:893 +#: src/diff.c:953 msgid " --normal output a normal diff (the default)" msgstr "" " --normal imprime uma diferenciação normal (predefinição)" -#: src/diff.c:894 +#: src/diff.c:954 msgid "-q, --brief report only when files differ" msgstr "-q, --brief só reporta quando os ficheiros diferem" -#: src/diff.c:895 +#: src/diff.c:955 msgid "-s, --report-identical-files report when two files are the same" msgstr "" "-s, --report-identical-files reporta quando os dois ficheiros forem iguais" -#: src/diff.c:896 +#: src/diff.c:956 msgid "" "-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context" msgstr "" "-c, -C NÚM, --context[=NÚM] imprime NÚM (predefinido como 3) linhas de " "contexto copiado" -#: src/diff.c:897 +#: src/diff.c:957 msgid "" "-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context" msgstr "" "-u, -U NÚM, --unified[=NÚM] imprime NÚM (predefinido como 3) linhas de " "contexto unificado" -#: src/diff.c:898 +#: src/diff.c:958 msgid "-e, --ed output an ed script" msgstr "-e, --ed imprime um script ed" -#: src/diff.c:899 +#: src/diff.c:959 msgid "-n, --rcs output an RCS format diff" msgstr "-n, --rcs imprime uma diferenciação de formato RCS" -#: src/diff.c:900 +#: src/diff.c:960 msgid "-y, --side-by-side output in two columns" msgstr "-y, --side-by-side imprime em duas colunas" -#: src/diff.c:901 +#: src/diff.c:961 msgid "" "-W, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-W, --width=NÚM imprime no máximo NÚM (predefinido como 130) " "colunas" -#: src/diff.c:902 +#: src/diff.c:962 msgid "" " --left-column output only the left column of common lines" msgstr "" " --left-column imprime só a coluna esquerda de linhas comuns" -#: src/diff.c:903 +#: src/diff.c:963 msgid " --suppress-common-lines do not output common lines" msgstr " --suppress-common-lines não imprime linhas comuns" -#: src/diff.c:905 +#: src/diff.c:965 msgid "-p, --show-c-function show which C function each change is in" msgstr "" "-p, --show-c-function mostra em que função C está cada alteração" -#: src/diff.c:906 +#: src/diff.c:966 msgid "-F, --show-function-line=RE show the most recent line matching RE" msgstr "" "-F, --show-function-line=RE mostra a linha mais recente correspondente a RE" -#: src/diff.c:907 +#: src/diff.c:967 msgid "" " --label LABEL use LABEL instead of file name and timestamp\n" " (can be repeated)" @@ -790,82 +791,82 @@ msgstr "" "carimbo\n" " (pode ser repetida)" -#: src/diff.c:910 +#: src/diff.c:970 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "-t, --expand-tabs expande tabulações para espaços na saída" -#: src/diff.c:911 +#: src/diff.c:971 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "-T, --initial-tab alinha tabulações prepondo tabulações" -#: src/diff.c:912 +#: src/diff.c:972 msgid "" " --tabsize=NUM tab stops every NUM (default 8) print columns" msgstr "" " --tabsize=NUM tabulações a cada NÚM (predefinido como 8) " "colunas" -#: src/diff.c:913 +#: src/diff.c:973 msgid "" " --suppress-blank-empty suppress space or tab before empty output lines" msgstr "" " --suppress-blank-empty suprime espaços ou tabulações antes de linhas " "de saída vazias" -#: src/diff.c:914 +#: src/diff.c:974 msgid "-l, --paginate pass output through 'pr' to paginate it" msgstr "-l, --paginate passa a saída por \"pr\" para a paginar" -#: src/diff.c:916 +#: src/diff.c:976 msgid "" "-r, --recursive recursively compare any subdirectories found" msgstr "" "-r, --recursive compara recursivamente todas as sub-pastas " "encontradas" -#: src/diff.c:917 +#: src/diff.c:977 msgid " --no-dereference don't follow symbolic links" msgstr " --no-dereference não segue ligações simbólicas" -#: src/diff.c:918 +#: src/diff.c:978 msgid "-N, --new-file treat absent files as empty" msgstr "-N, --new-file trata ficheiros ausentes como vazios" -#: src/diff.c:919 +#: src/diff.c:979 msgid " --unidirectional-new-file treat absent first files as empty" msgstr "" " --unidirectional-new-file trata primeiros ficheiros ausentes como " "vazios" -#: src/diff.c:920 +#: src/diff.c:980 msgid " --ignore-file-name-case ignore case when comparing file names" msgstr "" " --ignore-file-name-case ignora maiúsculas ao comparar nomes de " "ficheiro" -#: src/diff.c:921 +#: src/diff.c:981 msgid " --no-ignore-file-name-case consider case when comparing file names" msgstr "" " --no-ignore-file-name-case considera maiúsculas ao comparar nomes de " "ficheiro" -#: src/diff.c:922 +#: src/diff.c:982 msgid "-x, --exclude=PAT exclude files that match PAT" msgstr "-x, --exclude=PADRÃO exclui ficheiros que cumpram PADRÃO" -#: src/diff.c:923 +#: src/diff.c:983 msgid "" "-X, --exclude-from=FILE exclude files that match any pattern in FILE" msgstr "" "-X, --exclude-from=FICH exclui ficheiros que cumpram qualquer padrão " "em FICH" -#: src/diff.c:924 +#: src/diff.c:984 msgid "" "-S, --starting-file=FILE start with FILE when comparing directories" msgstr "-S, --starting-file=FICH começa com FICH ao comparar pastas" -#: src/diff.c:925 +#: src/diff.c:985 msgid "" " --from-file=FILE1 compare FILE1 to all operands;\n" " FILE1 can be a directory" @@ -873,7 +874,7 @@ msgstr "" " --from-file=FICH1 compara FICH1 a todos os operandos;\n" " FICH1 pode ser uma pasta" -#: src/diff.c:927 +#: src/diff.c:987 msgid "" " --to-file=FILE2 compare all operands to FILE2;\n" " FILE2 can be a directory" @@ -881,83 +882,83 @@ msgstr "" " --to-file=FICH2 compara todos os operandos a FICH2;\n" " FICH2 pode ser uma pasta" -#: src/diff.c:930 +#: src/diff.c:990 msgid "" "-i, --ignore-case ignore case differences in file contents" msgstr "" "-i, --ignore-case ignora diferenças de maiúsculas no conteúdo " "dos ficheiros" -#: src/diff.c:931 +#: src/diff.c:991 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E, --ignore-tab-expansion ignora alterações devidas a expansão de " "tabulações" -#: src/diff.c:932 +#: src/diff.c:992 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "-Z, --ignore-trailing-space ignora espaços no final das linhas" -#: src/diff.c:933 +#: src/diff.c:993 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "" "-b, --ignore-space-change ignora alterações na quantidade de espaço em " "branco" -#: src/diff.c:934 +#: src/diff.c:994 msgid "-w, --ignore-all-space ignore all white space" msgstr "-w, --ignore-all-space ignora todos os espaços em branco" -#: src/diff.c:935 +#: src/diff.c:995 msgid "" "-B, --ignore-blank-lines ignore changes where lines are all blank" msgstr "" "-B, --ignore-blank-lines ignora alterações onde as linhas estejam " "todas em branco" -#: src/diff.c:936 +#: src/diff.c:996 msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE" msgstr "" "-I, --ignore-matching-lines=RE ignora alterações onde as linhas coincidam " "com RE" -#: src/diff.c:938 +#: src/diff.c:998 msgid "-a, --text treat all files as text" msgstr "-a, --text trata todos os ficheiros como texto" -#: src/diff.c:939 +#: src/diff.c:999 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr remove os carriage return finais na entrada" -#: src/diff.c:941 +#: src/diff.c:1001 msgid " --binary read and write data in binary mode" msgstr " --binary lê e escreve dados em modo binário" -#: src/diff.c:944 +#: src/diff.c:1004 msgid "" "-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs" msgstr "" "-D, --ifdef=NOME imprime o ficheiro unido com diferenciação " "\"#ifdef NOME\"" -#: src/diff.c:945 +#: src/diff.c:1005 msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT" msgstr "" " --TIPOG-group-format=FMTG formata grupos de entrada TIPOG com FMTG" -#: src/diff.c:946 +#: src/diff.c:1006 msgid " --line-format=LFMT format all input lines with LFMT" msgstr "" " --line-format=FMTL formata todas as linhas de entrada com FMTL" -#: src/diff.c:947 +#: src/diff.c:1007 msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT" msgstr "" " --TIPOL-line-format=FMTL formata linhas de entrada TIPOL com FMTL" -#: src/diff.c:948 +#: src/diff.c:1008 msgid "" " These format options provide fine-grained control over the output\n" " of diff, generalizing -D/--ifdef." @@ -965,12 +966,12 @@ msgstr "" " Estas opções de formato fornecem um controlo preciso sobre a saída\n" " da diferenciação, generalizando -D/--ifdef." -#: src/diff.c:950 +#: src/diff.c:1010 msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'." msgstr "" " TIPOL é \"old\", \"new\" ou \"unchanged\". TIPOG é TIPOL ou \"changed\"." -#: src/diff.c:951 +#: src/diff.c:1011 msgid "" " GFMT (only) may contain:\n" " %< lines from FILE1\n" @@ -999,7 +1000,7 @@ msgstr "" " M L+1\n" " %(A=B?T:E) se A igual a B então T senão E" -#: src/diff.c:963 +#: src/diff.c:1023 msgid "" " LFMT (only) may contain:\n" " %L contents of line\n" @@ -1012,7 +1013,7 @@ msgstr "" " %[-][LARG][.[PREC]]{doxX}n especificação estilo printf para número de " "linha de entrada" -#: src/diff.c:967 +#: src/diff.c:1027 msgid "" " Both GFMT and LFMT may contain:\n" " %% %\n" @@ -1026,34 +1027,34 @@ msgstr "" " %c\"\\OOO\" o carácter com código octal OOO\n" " C o carácter C (outros caracteres representam-se a si mesmos)" -#: src/diff.c:973 +#: src/diff.c:1033 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "" "-d, --minimal tenta arduamente encontrar um conjunto de " "alterações mais pequeno" -#: src/diff.c:974 +#: src/diff.c:1034 msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix" msgstr " --horizon-lines=NÚM mantém NÚM linhas dos prefixo e sufixo comuns" -#: src/diff.c:975 +#: src/diff.c:1035 msgid "" " --speed-large-files assume large files and many scattered small changes" msgstr "" " --speed-large-files presume ficheiros grandes e muitas alterações " "pequenas espalhadas" -#: src/diff.c:976 +#: src/diff.c:1036 msgid "" " --color[=WHEN] color output; WHEN is 'never', 'always', or " "'auto';\n" " plain --color means --color='auto'" msgstr "" -" --color[=QUANDO] colorir a saída; QUANDO pode ser \"never\", \"always" -"\" ou \"auto\"\n" +" --color[=QUANDO] colorir a saída; QUANDO pode ser \"never\", " +"\"always\" ou \"auto\"\n" " --color significa --color='auto'" -#: src/diff.c:978 +#: src/diff.c:1038 msgid "" " --palette=PALETTE the colors to use when --color is active; PALETTE " "is\n" @@ -1064,114 +1065,114 @@ msgstr "" " uma lista separada por vírgulas de capacidades " "terminfo" -#: src/diff.c:981 +#: src/diff.c:1041 msgid " --help display this help and exit" msgstr " --help mostra esta ajuda e sai" -#: src/diff.c:982 +#: src/diff.c:1042 msgid "-v, --version output version information and exit" msgstr "-v, --version mostra informação da versão e sai" -#: src/diff.c:984 +#: src/diff.c:1044 msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'." msgstr "" -"FICHEIROS são \"FICH1 FICH2\" ou \"PST1 PST2\" or \"PST FICH\" ou \"FICH PST" -"\"." +"FICHEIROS são \"FICH1 FICH2\" ou \"PST1 PST2\" or \"PST FICH\" ou \"FICH " +"PST\"." -#: src/diff.c:985 +#: src/diff.c:1045 msgid "" "If --from-file or --to-file is given, there are no restrictions on FILE(s)." msgstr "" "Se --from-file ou --to-file forem indicados, não há restrições em " "FICHEIRO(s)." -#: src/diff.c:986 src/diff3.c:533 src/sdiff.c:220 +#: src/diff.c:1046 src/diff3.c:531 src/sdiff.c:219 msgid "If a FILE is '-', read standard input." msgstr "Se FICHEIRO for \"-\", lê a entrada padrão." -#: src/diff.c:996 +#: src/diff.c:1056 #, c-format msgid "Usage: %s [OPTION]... FILES\n" msgstr "Uso: %s [OPÇÃO]... FICHEIROS\n" -#: src/diff.c:997 +#: src/diff.c:1057 msgid "Compare FILES line by line." msgstr "Comparar FICHEIROS linha a linha." -#: src/diff.c:1034 +#: src/diff.c:1094 #, c-format msgid "conflicting %s option value '%s'" msgstr "valor \"%s\" da opção %s em conflito" -#: src/diff.c:1047 +#: src/diff.c:1107 #, c-format msgid "conflicting output style options" msgstr "opções de estilo da saída em conflito" -#: src/diff.c:1063 +#: src/diff.c:1123 #, c-format msgid "invalid color '%s'" msgstr "cor \"%s\" inválida" -#: src/diff.c:1119 src/diff.c:1329 +#: src/diff.c:1197 src/diff.c:1401 #, c-format msgid "Only in %s: %s\n" msgstr "Só em %s: %s\n" -#: src/diff.c:1253 +#: src/diff.c:1325 msgid "cannot compare '-' to a directory" msgstr "impossível comparar \"-\" a uma pasta" -#: src/diff.c:1288 +#: src/diff.c:1360 msgid "-D option not supported with directories" msgstr "opção -D não suportada em pastas" -#: src/diff.c:1297 +#: src/diff.c:1369 #, c-format msgid "Common subdirectories: %s and %s\n" msgstr "Pastas comuns: %s e %s\n" -#: src/diff.c:1339 src/diff.c:1389 +#: src/diff.c:1411 src/diff.c:1461 #, c-format msgid "File %s is a %s while file %s is a %s\n" msgstr "O ficheiro %s é %s enquanto o ficheiro %s é %s\n" -#: src/diff.c:1375 +#: src/diff.c:1447 #, c-format msgid "Symbolic links %s and %s differ\n" msgstr "As ligações simbólicas %s e %s diferem\n" -#: src/diff.c:1462 +#: src/diff.c:1534 #, c-format msgid "Files %s and %s are identical\n" msgstr "Os ficheiros %s e %s são idênticos\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff3.c:43 +#: src/diff3.c:51 msgid "Randy Smith" msgstr "Randy Smith" -#: src/diff3.c:356 +#: src/diff3.c:363 #, c-format msgid "incompatible options" msgstr "opções incompatíveis" -#: src/diff3.c:396 +#: src/diff3.c:403 msgid "'-' specified for more than one input file" msgstr "\"-\" especificado para mais de um ficheiro de entrada" -#: src/diff3.c:447 src/diff3.c:1295 src/diff3.c:1698 src/diff3.c:1753 -#: src/sdiff.c:308 src/sdiff.c:846 src/sdiff.c:857 +#: src/diff3.c:445 src/diff3.c:1284 src/diff3.c:1683 src/diff3.c:1738 +#: src/sdiff.c:306 src/sdiff.c:843 src/sdiff.c:854 msgid "read failed" msgstr "read falhou" -#: src/diff3.c:480 +#: src/diff3.c:478 msgid "-A, --show-all output all changes, bracketing conflicts" msgstr "" "-A, --show-all imprime todas as alterações, conflitos entre " "chavetas" -#: src/diff3.c:482 +#: src/diff3.c:480 msgid "" "-e, --ed output ed script incorporating changes\n" " from OLDFILE to YOURFILE into MYFILE" @@ -1179,11 +1180,11 @@ msgstr "" "-e, --ed imprime um script ed incorporando as alterações\n" " de FICHVELHO para SEUFICH para MEUFICH" -#: src/diff3.c:484 +#: src/diff3.c:482 msgid "-E, --show-overlap like -e, but bracket conflicts" msgstr "-E, --show-overlap como -e, mas com conflitos entre chavetas" -#: src/diff3.c:485 +#: src/diff3.c:483 msgid "" "-3, --easy-only like -e, but incorporate only nonoverlapping " "changes" @@ -1191,22 +1192,22 @@ msgstr "" "-3, --easy-only como -e, mas incorpora só alterações que não se " "sobreponham" -#: src/diff3.c:486 +#: src/diff3.c:484 msgid "" "-x, --overlap-only like -e, but incorporate only overlapping changes" msgstr "" "-x, --overlap-only como -e, mas incorpora só alterações que se " "sobreponham" -#: src/diff3.c:487 +#: src/diff3.c:485 msgid "-X like -x, but bracket conflicts" msgstr "-X como -x, mas com conflitos entre chavetas" -#: src/diff3.c:488 +#: src/diff3.c:486 msgid "-i append 'w' and 'q' commands to ed scripts" msgstr "-i anexa comandos \"w\" e \"q\" a scripts ed" -#: src/diff3.c:490 +#: src/diff3.c:488 msgid "" "-m, --merge output actual merged file, according to\n" " -A if no other options are given" @@ -1214,23 +1215,23 @@ msgstr "" "-m, --merge imprime o ficheiro unido real, de acordo com\n" " -A se nenhuma outra opção for indicada" -#: src/diff3.c:493 +#: src/diff3.c:491 msgid "-a, --text treat all files as text" msgstr "-a, --text trata todos os ficheiros como texto" -#: src/diff3.c:494 +#: src/diff3.c:492 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr " --strip-trailing-cr remove carriage return finais na entrada" -#: src/diff3.c:495 +#: src/diff3.c:493 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "-T, --initial-tab alinha tabulações prepondo tabulações" -#: src/diff3.c:496 +#: src/diff3.c:494 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr " --diff-program=PROGRAMA usa PROGRAMA para comparar ficheiros" -#: src/diff3.c:497 +#: src/diff3.c:495 msgid "" "-L, --label=LABEL use LABEL instead of file name\n" " (can be repeated up to three times)" @@ -1238,24 +1239,24 @@ msgstr "" "-L, --label=ETIQUETA usa ETIQUETA em vez do nome de ficheiro\n" " (pode ser repetida até três vezes)" -#: src/diff3.c:500 +#: src/diff3.c:498 msgid " --help display this help and exit" msgstr " --help mostra esta ajuda e sai" -#: src/diff3.c:501 +#: src/diff3.c:499 msgid "-v, --version output version information and exit" msgstr "-v, --version mostra informação da versão e sai" -#: src/diff3.c:510 +#: src/diff3.c:508 #, c-format msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n" msgstr "Uso: %s [OPÇÃO]... MEUFICH FICHVELHO SEUFICH\n" -#: src/diff3.c:512 +#: src/diff3.c:510 msgid "Compare three files line by line." msgstr "Comparar três ficheiros linha a linha." -#: src/diff3.c:522 +#: src/diff3.c:520 msgid "" "\n" "The default output format is a somewhat human-readable representation of\n" @@ -1280,56 +1281,56 @@ msgstr "" "e imprima o ficheiro unido real. Para entradas incomuns, isto é mais\n" "robusto do que usar o ed.\n" -#: src/diff3.c:534 +#: src/diff3.c:532 msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble." msgstr "" "O estado de saída é 0 se tiver sucesso, 1 para conflitos, 2 se houver " "problemas." -#: src/diff3.c:727 +#: src/diff3.c:725 msgid "internal error: screwup in format of diff blocks" msgstr "erro interno: confusão no formato de blocos de diferença" -#: src/diff3.c:1022 +#: src/diff3.c:1015 #, c-format msgid "%s: diff failed: " msgstr "%s: diff falhou: " -#: src/diff3.c:1044 +#: src/diff3.c:1037 msgid "internal error: invalid diff type in process_diff" msgstr "erro interno: tipo de diff inválido em process_diff" -#: src/diff3.c:1069 +#: src/diff3.c:1060 msgid "invalid diff format; invalid change separator" msgstr "formato de diff inválido; separador de alterações inválido" -#: src/diff3.c:1305 +#: src/diff3.c:1294 msgid "invalid diff format; incomplete last line" msgstr "formato de diff inválido; última linha incompleta" -#: src/diff3.c:1329 src/sdiff.c:276 src/util.c:969 +#: src/diff3.c:1318 src/sdiff.c:274 src/util.c:1069 #, c-format msgid "subsidiary program '%s' could not be invoked" msgstr "impossível chamar o programa subsidiário \"%s\"" -#: src/diff3.c:1354 +#: src/diff3.c:1343 msgid "invalid diff format; incorrect leading line chars" msgstr "formato de diff inválido; caracteres iniciais de linha incorrectos" -#: src/diff3.c:1427 +#: src/diff3.c:1416 msgid "internal error: invalid diff type passed to output" msgstr "erro interno: tipo de diff inválido passado à saída" -#: src/diff3.c:1700 src/diff3.c:1757 +#: src/diff3.c:1685 src/diff3.c:1742 msgid "input file shrank" msgstr "ficheiro de entrada encolhido" -#: src/dir.c:156 +#: src/dir.c:154 #, c-format msgid "cannot compare file names '%s' and '%s'" msgstr "impossível comparar nomes de ficheiro \"%s\" e \"%s\"" -#: src/dir.c:225 +#: src/dir.c:223 #, c-format msgid "%s: recursive directory loop" msgstr "%s: ciclo de pasta recursiva" @@ -1339,132 +1340,132 @@ msgstr "%s: ciclo de pasta recursiva" msgid "Thomas Lord" msgstr "Thomas Lord" -#: src/sdiff.c:174 +#: src/sdiff.c:173 msgid "" "-o, --output=FILE operate interactively, sending output to FILE" msgstr "" "-o, --output=FILE opera interactivamente, enviando a saída para " "FICH" -#: src/sdiff.c:176 +#: src/sdiff.c:175 msgid "" "-i, --ignore-case consider upper- and lower-case to be the same" msgstr "" "-i, --ignore-case considera maiúsculas e minúsculas como sendo " "iguais" -#: src/sdiff.c:177 +#: src/sdiff.c:176 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E, --ignore-tab-expansion ignora alterações devidas a expansão de " "tabulações" -#: src/sdiff.c:178 +#: src/sdiff.c:177 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "-Z, --ignore-trailing-space ignora espaços no final das linhas" -#: src/sdiff.c:179 +#: src/sdiff.c:178 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "" "-b, --ignore-space-change ignora alterações na quantidade de espaço em " "branco" -#: src/sdiff.c:180 +#: src/sdiff.c:179 msgid "-W, --ignore-all-space ignore all white space" msgstr "-W, --ignore-all-space ignora todo o espaço em branco" -#: src/sdiff.c:181 +#: src/sdiff.c:180 msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank" msgstr "" "-B, --ignore-blank-lines ignora alterações cujas linhas estejam todas em " "branco" -#: src/sdiff.c:182 +#: src/sdiff.c:181 msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE" msgstr "" "-I, --ignore-matching-lines=RE ignora alterações cujas linhas coincidam com " "RE" -#: src/sdiff.c:183 +#: src/sdiff.c:182 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr " --strip-trailing-cr remove carriage return finais na entrada" -#: src/sdiff.c:184 +#: src/sdiff.c:183 msgid "-a, --text treat all files as text" msgstr "-a, --text trata todos os ficheiros como texto" -#: src/sdiff.c:186 +#: src/sdiff.c:185 msgid "" "-w, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-w, --width=NUM imprime no máximo NÚM (predefinido como 130) " "colunas" -#: src/sdiff.c:187 +#: src/sdiff.c:186 msgid "" "-l, --left-column output only the left column of common lines" msgstr "" "-l, --left-column imprime só a coluna esquerda de linhas comuns" -#: src/sdiff.c:188 +#: src/sdiff.c:187 msgid "-s, --suppress-common-lines do not output common lines" msgstr "-s, --suppress-common-lines não imprime linhas comuns" -#: src/sdiff.c:190 +#: src/sdiff.c:189 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "-t, --expand-tabs expande tabulações para espaços na saída" -#: src/sdiff.c:191 +#: src/sdiff.c:190 msgid "" " --tabsize=NUM tab stops at every NUM (default 8) print columns" msgstr "" " --tabsize=NÚM tabulações a cada NÚM (predefinido como 8) " "colunas" -#: src/sdiff.c:193 +#: src/sdiff.c:192 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "" "-d, --minimal tenta arduamente encontrar um conjunto de " "alterações mais pequeno" -#: src/sdiff.c:194 +#: src/sdiff.c:193 msgid "" "-H, --speed-large-files assume large files, many scattered small changes" msgstr "" "-H, --speed-large-files presume ficheiros grandes, muitas alterações " "pequenas espalhadas" -#: src/sdiff.c:195 +#: src/sdiff.c:194 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr " --diff-program=PROGRAMA usa PROGRAMA para comparar ficheiros" -#: src/sdiff.c:197 +#: src/sdiff.c:196 msgid " --help display this help and exit" msgstr " --help mostra esta ajuda e sai" -#: src/sdiff.c:198 +#: src/sdiff.c:197 msgid "-v, --version output version information and exit" msgstr "-v, --version imprime informação da versão e sai" -#: src/sdiff.c:207 +#: src/sdiff.c:206 #, c-format msgid "Usage: %s [OPTION]... FILE1 FILE2\n" msgstr "Uso: %s [OPÇÃO]... FICHEIRO1 FICHEIRO2\n" -#: src/sdiff.c:209 +#: src/sdiff.c:208 msgid "Side-by-side merge of differences between FILE1 and FILE2." msgstr "União lado-a-lado de diferenças entre FICHEIRO1 e FICHEIRO2." -#: src/sdiff.c:330 +#: src/sdiff.c:328 msgid "cannot interactively merge standard input" msgstr "impossível unir interactivamente a entrada padrão" -#: src/sdiff.c:597 +#: src/sdiff.c:594 msgid "both files to be compared are directories" msgstr "ambos os ficheiros a comparar são pastas" -#: src/sdiff.c:820 +#: src/sdiff.c:817 msgid "" "ed:\tEdit then use both versions, each decorated with a header.\n" "eb:\tEdit then use both versions.\n" @@ -1489,12 +1490,12 @@ msgstr "" "v:\tinclui linhas comuns verbosamente.\n" "q:\tsai.\n" -#: src/util.c:662 +#: src/util.c:755 #, c-format msgid "unrecognized prefix: %s" msgstr "prefixo não reconhecido: %s" -#: src/util.c:692 +#: src/util.c:785 #, c-format msgid "unparsable value for --palette" msgstr "valor não analisável para --palette" diff --git a/po/pt_BR.po b/po/pt_BR.po index 242643d..3a06cc1 100644 --- a/po/pt_BR.po +++ b/po/pt_BR.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: diffutils 3.7.41\n" "Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n" -"POT-Creation-Date: 2021-08-01 18:56-0700\n" +"POT-Creation-Date: 2023-05-21 01:51-0700\n" "PO-Revision-Date: 2021-07-20 05:51-0300\n" "Last-Translator: Rafael Fontenelle \n" "Language-Team: Brazilian Portuguese #. and use glyphs suitable for your language. -#: lib/quotearg.c:355 +#: lib/quotearg.c:354 msgid "`" msgstr "“" -#: lib/quotearg.c:356 +#: lib/quotearg.c:355 msgid "'" msgstr "”" -#: lib/regcomp.c:135 +#: lib/regcomp.c:122 msgid "Success" msgstr "Sucesso" -#: lib/regcomp.c:138 +#: lib/regcomp.c:125 msgid "No match" msgstr "Nenhuma ocorrência do padrão" -#: lib/regcomp.c:141 +#: lib/regcomp.c:128 msgid "Invalid regular expression" msgstr "Expressão regular inválida" -#: lib/regcomp.c:144 +#: lib/regcomp.c:131 msgid "Invalid collation character" msgstr "caractere de combinação inválido" -#: lib/regcomp.c:147 +#: lib/regcomp.c:134 msgid "Invalid character class name" msgstr "Nome inválido da classe de caracteres" -#: lib/regcomp.c:150 +#: lib/regcomp.c:137 msgid "Trailing backslash" msgstr "Barra invertida no final" -#: lib/regcomp.c:153 +#: lib/regcomp.c:140 msgid "Invalid back reference" msgstr "Retrorreferência inválida" -#: lib/regcomp.c:156 +#: lib/regcomp.c:143 msgid "Unmatched [, [^, [:, [., or [=" msgstr "[, [^, [:, [. ou [= sem correspondente" -#: lib/regcomp.c:159 +#: lib/regcomp.c:146 msgid "Unmatched ( or \\(" msgstr "( ou \\( sem correspondente" -#: lib/regcomp.c:162 +#: lib/regcomp.c:149 msgid "Unmatched \\{" msgstr "\\{ sem correspondente" -#: lib/regcomp.c:165 +#: lib/regcomp.c:152 msgid "Invalid content of \\{\\}" msgstr "Conteúdo inválido de \\{\\}" -#: lib/regcomp.c:168 +#: lib/regcomp.c:155 msgid "Invalid range end" msgstr "Fim do intervalo inválido" -#: lib/regcomp.c:171 +#: lib/regcomp.c:158 msgid "Memory exhausted" msgstr "Memória esgotada" -#: lib/regcomp.c:174 +#: lib/regcomp.c:161 msgid "Invalid preceding regular expression" msgstr "A expressão regular precedente é inválida" -#: lib/regcomp.c:177 +#: lib/regcomp.c:164 msgid "Premature end of regular expression" msgstr "Fim prematuro da expressão regular" -#: lib/regcomp.c:180 +#: lib/regcomp.c:167 msgid "Regular expression too big" msgstr "Expressão regular grande demais" -#: lib/regcomp.c:183 +#: lib/regcomp.c:170 msgid "Unmatched ) or \\)" msgstr ") ou \\) sem correspondente" -#: lib/regcomp.c:676 +#: lib/regcomp.c:650 msgid "No previous regular expression" msgstr "Nenhuma expressão regular anterior" @@ -474,17 +474,17 @@ msgstr "Página do %s: <%s>\n" msgid "General help using GNU software: <%s>\n" msgstr "Ajuda em geral no uso de software GNU: <%s>\n" -#: src/analyze.c:454 src/diff.c:1406 +#: src/analyze.c:455 src/diff.c:1478 #, c-format msgid "Files %s and %s differ\n" msgstr "Os arquivos %s e %s são diferentes\n" -#: src/analyze.c:455 +#: src/analyze.c:456 #, c-format msgid "Binary files %s and %s differ\n" msgstr "Os arquivos binários %s e %s são diferentes\n" -#: src/analyze.c:706 src/diff3.c:1470 src/util.c:1254 +#: src/analyze.c:707 src/diff3.c:1457 src/util.c:1354 msgid "No newline at end of file" msgstr "Nenhum caractere de nova linha no final do arquivo" @@ -498,40 +498,41 @@ msgstr "Torbjorn Granlund" msgid "David MacKenzie" msgstr "David MacKenzie" -#: src/cmp.c:120 src/diff.c:879 src/diff3.c:467 src/sdiff.c:160 +#: src/cmp.c:124 src/diff.c:939 src/diff3.c:465 src/sdiff.c:159 #, c-format msgid "Try '%s --help' for more information." msgstr "Tente \"%s --help\" para mais informações." -#: src/cmp.c:138 +#: src/cmp.c:142 #, c-format msgid "invalid --ignore-initial value '%s'" msgstr "valor inválido --ignore-initial \"%s\"" -#: src/cmp.c:148 +#: src/cmp.c:152 #, c-format msgid "options -l and -s are incompatible" msgstr "as opções -l e -s são incompatíveis" -#: src/cmp.c:156 src/diff.c:887 src/diff3.c:474 src/sdiff.c:168 src/sdiff.c:316 -#: src/sdiff.c:323 src/sdiff.c:876 src/util.c:852 src/util.c:952 src/util.c:959 +#: src/cmp.c:160 src/diff.c:947 src/diff3.c:472 src/sdiff.c:167 src/sdiff.c:314 +#: src/sdiff.c:321 src/sdiff.c:873 src/util.c:952 src/util.c:1052 +#: src/util.c:1059 msgid "write failed" msgstr "erro de escrita" -#: src/cmp.c:158 src/diff.c:889 src/diff.c:1471 src/diff3.c:476 src/sdiff.c:170 +#: src/cmp.c:162 src/diff.c:949 src/diff.c:1543 src/diff3.c:474 src/sdiff.c:169 msgid "standard output" msgstr "saída padrão" -#: src/cmp.c:162 +#: src/cmp.c:166 msgid "-b, --print-bytes print differing bytes" msgstr "-b, --print-bytes imprime os bytes diferentes" -#: src/cmp.c:163 +#: src/cmp.c:167 msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs" msgstr "" "-i, --ignore-initial=SALTO ignora os primeiros SALTO bytes da entrada" -#: src/cmp.c:164 +#: src/cmp.c:168 msgid "" "-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n" " first SKIP2 bytes of FILE2" @@ -541,39 +542,39 @@ msgstr "" "ARQUIVO1\n" " e os primeiros SALTO2 bytes do ARQUIVO2" -#: src/cmp.c:166 +#: src/cmp.c:170 msgid "" "-l, --verbose output byte numbers and differing byte values" msgstr "" "-l, --verbose emite os números de bytes e os valores de\n" " todos os bytes diferentes" -#: src/cmp.c:167 +#: src/cmp.c:171 msgid "-n, --bytes=LIMIT compare at most LIMIT bytes" msgstr "-n, --bytes=LIMITE compara no máximo LIMITE bytes" -#: src/cmp.c:168 +#: src/cmp.c:172 msgid "-s, --quiet, --silent suppress all normal output" msgstr "-s, --quiet, --silent suprime todas saídas normais" -#: src/cmp.c:169 +#: src/cmp.c:173 msgid " --help display this help and exit" msgstr " --help mostra esta ajuda e sai" -#: src/cmp.c:170 +#: src/cmp.c:174 msgid "-v, --version output version information and exit" msgstr "-v, --version mostra informação sobre a versão e sai" -#: src/cmp.c:179 +#: src/cmp.c:183 #, c-format msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n" msgstr "Uso: %s [OPÇÃO]... ARQUIVO1 [ARQUIVO2 [SALTO1 [SALTO2]]]\n" -#: src/cmp.c:181 +#: src/cmp.c:185 msgid "Compare two files byte by byte." msgstr "Compara dois arquivos byte por byte." -#: src/cmp.c:183 +#: src/cmp.c:187 msgid "" "The optional SKIP1 and SKIP2 specify the number of bytes to skip\n" "at the beginning of each file (zero by default)." @@ -581,13 +582,13 @@ msgstr "" "Os argumentos opcionais SALTO1 e SALTO2 especificam o número de\n" "bytes para ignorar no começo de cada arquivo (zero por padrão)." -#: src/cmp.c:186 src/diff.c:999 src/diff3.c:514 src/sdiff.c:211 +#: src/cmp.c:190 src/diff.c:1059 src/diff3.c:512 src/sdiff.c:210 msgid "" "Mandatory arguments to long options are mandatory for short options too.\n" msgstr "" "Argumentos obrigatórios para opções longas também o são para opções curtas.\n" -#: src/cmp.c:192 +#: src/cmp.c:196 msgid "" "SKIP values may be followed by the following multiplicative suffixes:\n" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" @@ -599,196 +600,196 @@ msgstr "" "GB 1,000,000,000, G 1,073,741,824,\n" "e assim por diante para T, P, E, Z, Y." -#: src/cmp.c:195 +#: src/cmp.c:199 msgid "If a FILE is '-' or missing, read standard input." msgstr "Se ARQUIVO for igual a \"-\" ou for omitido, ler da entrada padrão." -#: src/cmp.c:196 src/diff.c:987 src/sdiff.c:221 +#: src/cmp.c:200 src/diff.c:1047 src/sdiff.c:220 msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble." msgstr "" "Status de saída é 0 se as entradas forem iguais, 1 se diferente e 2 se " "problema." -#: src/cmp.c:243 +#: src/cmp.c:247 #, c-format msgid "invalid --bytes value '%s'" msgstr "valor inválido --bytes \"%s\"" -#: src/cmp.c:269 src/diff.c:797 src/diff3.c:361 src/sdiff.c:567 +#: src/cmp.c:273 src/diff.c:857 src/diff3.c:368 src/sdiff.c:564 #, c-format msgid "missing operand after '%s'" msgstr "faltando operando após \"%s\"" -#: src/cmp.c:281 src/diff.c:799 src/diff3.c:363 src/sdiff.c:569 +#: src/cmp.c:285 src/diff.c:859 src/diff3.c:370 src/sdiff.c:566 #, c-format msgid "extra operand '%s'" msgstr "operando extra \"%s\"" -#: src/cmp.c:507 +#: src/cmp.c:521 #, c-format msgid "%s %s differ: byte %s, line %s\n" msgstr "%s e %s são diferentes: byte %s, linha %s\n" -#: src/cmp.c:523 +#: src/cmp.c:537 #, c-format msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n" msgstr "%s e %s são diferentes: byte %s, linha %s é %3o %s %3o %s\n" -#: src/cmp.c:580 +#: src/cmp.c:594 #, c-format msgid "cmp: EOF on %s which is empty\n" msgstr "cmp: Fim de arquivo (EOF) em %s que está vazio\n" -#: src/cmp.c:594 +#: src/cmp.c:608 #, c-format msgid "cmp: EOF on %s after byte %s, line %s\n" msgstr "cmp: Fim de arquivo (EOF) em %s após byte %s, linha %s\n" -#: src/cmp.c:595 +#: src/cmp.c:609 #, c-format msgid "cmp: EOF on %s after byte %s, in line %s\n" msgstr "cmp: Fim de arquivo (EOF) em %s após byte %s, na linha %s\n" -#: src/cmp.c:601 +#: src/cmp.c:615 #, c-format msgid "cmp: EOF on %s after byte %s\n" msgstr "cmp: Fim de arquivo (EOF) em %s após byte %s\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:51 +#: src/diff.c:50 msgid "Paul Eggert" msgstr "Paul Eggert" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:52 +#: src/diff.c:51 msgid "Mike Haertel" msgstr "Mike Haertel" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:53 +#: src/diff.c:52 msgid "David Hayes" msgstr "David Hayes" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:54 +#: src/diff.c:53 msgid "Richard Stallman" msgstr "Richard Stallman" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:55 +#: src/diff.c:54 msgid "Len Tower" msgstr "Len Tower" -#: src/diff.c:355 +#: src/diff.c:365 #, c-format msgid "invalid context length '%s'" msgstr "o comprimento do contexto não é válido \"%s\"" -#: src/diff.c:438 +#: src/diff.c:487 #, c-format msgid "pagination not supported on this host" msgstr "sem suporte a paginação neste computador" -#: src/diff.c:453 src/diff3.c:341 +#: src/diff.c:502 src/diff3.c:348 #, c-format msgid "too many file label options" msgstr "número excessivo de opções de rótulo de arquivo" -#: src/diff.c:530 +#: src/diff.c:579 #, c-format msgid "invalid width '%s'" msgstr "largura inválida \"%s\"" -#: src/diff.c:534 +#: src/diff.c:583 msgid "conflicting width options" msgstr "opções de largura conflitantes" -#: src/diff.c:559 +#: src/diff.c:608 #, c-format msgid "invalid horizon length '%s'" msgstr "comprimento do horizonte inválido \"%s\"" -#: src/diff.c:615 +#: src/diff.c:664 #, c-format msgid "invalid tabsize '%s'" msgstr "tamanho de tabulação inválido \"%s\"" -#: src/diff.c:619 +#: src/diff.c:668 msgid "conflicting tabsize options" msgstr "opções de tamanho de tabulação conflitantes" -#: src/diff.c:774 +#: src/diff.c:834 msgid "--from-file and --to-file both specified" msgstr "ambos --from-file e --to-file especificados" -#: src/diff.c:893 +#: src/diff.c:953 msgid " --normal output a normal diff (the default)" msgstr " --normal cria um diff no formato normal (padrão)" -#: src/diff.c:894 +#: src/diff.c:954 msgid "-q, --brief report only when files differ" msgstr "" "-q, --brief indica apenas se os arquivos forem diferentes" -#: src/diff.c:895 +#: src/diff.c:955 msgid "-s, --report-identical-files report when two files are the same" msgstr "" "-s, --report-identical-files indica quando dois arquivos forem o idênticos" -#: src/diff.c:896 +#: src/diff.c:956 msgid "" "-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context" msgstr "" "-c, -C NÚM, --context[=NÚM] cria NÚM (padrão 3) linhas de contexto copiado" -#: src/diff.c:897 +#: src/diff.c:957 msgid "" "-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context" msgstr "" "-u, -U NÚM, --unified[=NÚM] cria NÚM (padrão 3) linhas de contexto " "unificado" -#: src/diff.c:898 +#: src/diff.c:958 msgid "-e, --ed output an ed script" msgstr "-e, --ed cria um script para o editor ed" -#: src/diff.c:899 +#: src/diff.c:959 msgid "-n, --rcs output an RCS format diff" msgstr "-n, --rcs cria um diff no formato RCS" -#: src/diff.c:900 +#: src/diff.c:960 msgid "-y, --side-by-side output in two columns" msgstr "-y, --side-by-side cria em duas colunas" -#: src/diff.c:901 +#: src/diff.c:961 msgid "" "-W, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-W, --width=NÚM limita a saída a NÚM colunas por linha (padrão " "130)" -#: src/diff.c:902 +#: src/diff.c:962 msgid "" " --left-column output only the left column of common lines" msgstr "" " --left-column emite apenas a coluna da esquerda das linhas\n" " idênticas" -#: src/diff.c:903 +#: src/diff.c:963 msgid " --suppress-common-lines do not output common lines" msgstr " --suppress-common-lines não exibe as linhas idênticas" -#: src/diff.c:905 +#: src/diff.c:965 msgid "-p, --show-c-function show which C function each change is in" msgstr "" "-p, --show-c-function mostra em qual função C está cada alteração" -#: src/diff.c:906 +#: src/diff.c:966 msgid "-F, --show-function-line=RE show the most recent line matching RE" msgstr "" "-F, --show-function-line=ER mostra a linha mais recente correspondendo à ER" -#: src/diff.c:907 +#: src/diff.c:967 msgid "" " --label LABEL use LABEL instead of file name and timestamp\n" " (can be repeated)" @@ -796,89 +797,89 @@ msgstr "" " --label RÓTULO usa RÓTULO ao invés do nome do arquivo e\n" " carimbo de tempo (pode ser repetido)" -#: src/diff.c:910 +#: src/diff.c:970 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "" "-t, --expand-tabs expande as tabulações para espaços na saída" -#: src/diff.c:911 +#: src/diff.c:971 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T, --initial-tab alinha tabulações introduzindo uma\n" " tabulação no início" -#: src/diff.c:912 +#: src/diff.c:972 msgid "" " --tabsize=NUM tab stops every NUM (default 8) print columns" msgstr "" " --tabsize=NÚM paradas de tabulação a cada NÚM colunas\n" " (padrão=8)" -#: src/diff.c:913 +#: src/diff.c:973 msgid "" " --suppress-blank-empty suppress space or tab before empty output lines" msgstr "" " --suppress-blank-empty suprime espaço ou tabulação antes de linhas\n" " vazias na saída" -#: src/diff.c:914 +#: src/diff.c:974 msgid "-l, --paginate pass output through 'pr' to paginate it" msgstr "" "-l, --paginate passa a saída por meio de \"pr\" para paginá-la" -#: src/diff.c:916 +#: src/diff.c:976 msgid "" "-r, --recursive recursively compare any subdirectories found" msgstr "" "-r, --recursive compara recursivamente os subdiretórios\n" " encontrados" -#: src/diff.c:917 +#: src/diff.c:977 msgid " --no-dereference don't follow symbolic links" msgstr " --no-dereference não interpreta links simbólicos" -#: src/diff.c:918 +#: src/diff.c:978 msgid "-N, --new-file treat absent files as empty" msgstr "" "-N, --new-file considera os arquivos ausentes como vazios" -#: src/diff.c:919 +#: src/diff.c:979 msgid " --unidirectional-new-file treat absent first files as empty" msgstr "" " --unidirectional-new-file considera os primeiros arquivos ausentes\n" " como vazios" -#: src/diff.c:920 +#: src/diff.c:980 msgid " --ignore-file-name-case ignore case when comparing file names" msgstr "" " --ignore-file-name-case não faz distinção entre letras maiúsculas e\n" " minúsculas nos nomes dos arquivos" -#: src/diff.c:921 +#: src/diff.c:981 msgid " --no-ignore-file-name-case consider case when comparing file names" msgstr "" " --no-ignore-file-name-case faz distinção entre letras maiúsculas e\n" " minúsculas nos nomes dos arquivos" -#: src/diff.c:922 +#: src/diff.c:982 msgid "-x, --exclude=PAT exclude files that match PAT" msgstr "" "-x, --exclude=PADRÃO exclui arquivos correspondendo a PADRÃO" -#: src/diff.c:923 +#: src/diff.c:983 msgid "" "-X, --exclude-from=FILE exclude files that match any pattern in FILE" msgstr "" "-X, --exclude-from=ARQUIVO exclui arquivos com correspondam a qualquer\n" " padrão contido em ARQUIVO" -#: src/diff.c:924 +#: src/diff.c:984 msgid "" "-S, --starting-file=FILE start with FILE when comparing directories" msgstr "" "-S, --starting-file=ARQUIVO inicia por ARQUIVO ao comparar diretórios" -#: src/diff.c:925 +#: src/diff.c:985 msgid "" " --from-file=FILE1 compare FILE1 to all operands;\n" " FILE1 can be a directory" @@ -886,7 +887,7 @@ msgstr "" " --from-file=ARQUIVO1 compara ARQUIVO1 com todos os operandos;\n" " ARQUIVO1 pode ser um diretório" -#: src/diff.c:927 +#: src/diff.c:987 msgid "" " --to-file=FILE2 compare all operands to FILE2;\n" " FILE2 can be a directory" @@ -894,25 +895,25 @@ msgstr "" " --to-file=ARQUIVO2 compara todos os operandos com ARQUIVO2;\n" " ARQUIVO2 pode ser um diretório" -#: src/diff.c:930 +#: src/diff.c:990 msgid "" "-i, --ignore-case ignore case differences in file contents" msgstr "" "-i, --ignore-case não faz distinção entre letras maiúsculas e\n" " minúsculas no conteúdo do arquivo" -#: src/diff.c:931 +#: src/diff.c:991 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E, --ignore-tab-expansion ignora as diferenças causadas pela expansão\n" " da tabulação" -#: src/diff.c:932 +#: src/diff.c:992 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "" "-Z, --ignore-trailing-space ignora espaços em branco no fim das linhas" -#: src/diff.c:933 +#: src/diff.c:993 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "" @@ -920,59 +921,59 @@ msgstr "" "espaços\n" " em branco" -#: src/diff.c:934 +#: src/diff.c:994 msgid "-w, --ignore-all-space ignore all white space" msgstr "-w, --ignore-all-space ignora todos os espaços em branco" -#: src/diff.c:935 +#: src/diff.c:995 msgid "" "-B, --ignore-blank-lines ignore changes where lines are all blank" msgstr "" "-B, --ignore-blank-lines ignora diferenças onde as linhas estão vazias" -#: src/diff.c:936 +#: src/diff.c:996 msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE" msgstr "" "-I, --ignore-matching-lines=ER ignora as diferenças nas linhas que\n" " correspondem à expressão regular ER" -#: src/diff.c:938 +#: src/diff.c:998 msgid "-a, --text treat all files as text" msgstr "-a, --text trata todos os arquivos como texto" -#: src/diff.c:939 +#: src/diff.c:999 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr remove o caractere de retorno de carro\n" " (CR) ao final da linha na entrada" -#: src/diff.c:941 +#: src/diff.c:1001 msgid " --binary read and write data in binary mode" msgstr " --binary lê e escreve os dados em modo binário" -#: src/diff.c:944 +#: src/diff.c:1004 msgid "" "-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs" msgstr "" "-D, --ifdef=NOME exibe o arquivo mesclado incluindo\n" " \"#ifndef NOME\" nas diferenças" -#: src/diff.c:945 +#: src/diff.c:1005 msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT" msgstr "" " --GTYPE-group-format=GFMT formata grupos de entrada GTYPE com GFMT" -#: src/diff.c:946 +#: src/diff.c:1006 msgid " --line-format=LFMT format all input lines with LFMT" msgstr "" " --line-format=LFMT formata todas as linhas de entrada com LFMT" -#: src/diff.c:947 +#: src/diff.c:1007 msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT" msgstr "" " --LTYPE-line-format=LFMT formata linhas de entrada LTYPE com LFMT" -#: src/diff.c:948 +#: src/diff.c:1008 msgid "" " These format options provide fine-grained control over the output\n" " of diff, generalizing -D/--ifdef." @@ -980,13 +981,13 @@ msgstr "" " Essa opções de formatação fornece um controle refinado sobre a saída\n" " das diferenças, generalizando -D/--ifdef." -#: src/diff.c:950 +#: src/diff.c:1010 msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'." msgstr "" " LTYPE pode ser \"old\", \"new\" ou \"unchanged\". GTYPE é LTYPE ou " "\"changed\"." -#: src/diff.c:951 +#: src/diff.c:1011 msgid "" " GFMT (only) may contain:\n" " %< lines from FILE1\n" @@ -1017,7 +1018,7 @@ msgstr "" " M L+1\n" " %(A=B?T:E) se A igual B, então T; senão E" -#: src/diff.c:963 +#: src/diff.c:1023 msgid "" " LFMT (only) may contain:\n" " %L contents of line\n" @@ -1030,7 +1031,7 @@ msgstr "" " %[-][LARGURA][.[PREC]]{doxX}n especificação estilo printf() do número\n" " da linha da utilizando" -#: src/diff.c:967 +#: src/diff.c:1027 msgid "" " Both GFMT and LFMT may contain:\n" " %% %\n" @@ -1044,36 +1045,36 @@ msgstr "" " %c'\\OOO' o caractere com código octal OOO\n" " C o caractere C (outros caracteres representam a si próprios)" -#: src/diff.c:973 +#: src/diff.c:1033 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "" "-d, --minimal se esforça para localizar o menor conjunto\n" " de diferenças" -#: src/diff.c:974 +#: src/diff.c:1034 msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix" msgstr "" " --horizon-lines=NÚM mantém NÚM linhas de prefixo e sufixo idênticos" -#: src/diff.c:975 +#: src/diff.c:1035 msgid "" " --speed-large-files assume large files and many scattered small changes" msgstr "" " --speed-large-files assume arquivos grandes e muitas alterações\n" " pequenas espalhadas" -#: src/diff.c:976 +#: src/diff.c:1036 msgid "" " --color[=WHEN] color output; WHEN is 'never', 'always', or " "'auto';\n" " plain --color means --color='auto'" msgstr "" -" --color[=QUANDO] colore a saída; QUANDO pode ser \"never\", \"always" -"\",\n" -" ou \"auto\"; só --color resulta em --color=\"auto" -"\"" +" --color[=QUANDO] colore a saída; QUANDO pode ser \"never\", " +"\"always\",\n" +" ou \"auto\"; só --color resulta em --" +"color=\"auto\"" -#: src/diff.c:978 +#: src/diff.c:1038 msgid "" " --palette=PALETTE the colors to use when --color is active; PALETTE " "is\n" @@ -1083,113 +1084,113 @@ msgstr "" " PALETA é uma lista de capacidades de terminfo\n" " separadas por caractere de dois pontos" -#: src/diff.c:981 +#: src/diff.c:1041 msgid " --help display this help and exit" msgstr " --help mostra esta ajuda e sai" -#: src/diff.c:982 +#: src/diff.c:1042 msgid "-v, --version output version information and exit" msgstr "-v, --version mostra as informações da versão e sai" -#: src/diff.c:984 +#: src/diff.c:1044 msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'." msgstr "" "ARQUIVOS são \"ARQUIVO1 ARQUIVO2\", \"DIR1 DIR2\", \"DIR ARQUIVO\" ou " "\"ARQUIVO DIR\"." -#: src/diff.c:985 +#: src/diff.c:1045 msgid "" "If --from-file or --to-file is given, there are no restrictions on FILE(s)." msgstr "" "Se --from-file ou --to-file for especificado, não há restrição em ARQUIVO(s)." -#: src/diff.c:986 src/diff3.c:533 src/sdiff.c:220 +#: src/diff.c:1046 src/diff3.c:531 src/sdiff.c:219 msgid "If a FILE is '-', read standard input." msgstr "Se um ARQUIVO for igual a \"-\", lê da entrada padrão." -#: src/diff.c:996 +#: src/diff.c:1056 #, c-format msgid "Usage: %s [OPTION]... FILES\n" msgstr "Uso: %s [OPÇÃO]... ARQUIVOS\n" -#: src/diff.c:997 +#: src/diff.c:1057 msgid "Compare FILES line by line." msgstr "Compara ARQUIVOS linha por linha." -#: src/diff.c:1034 +#: src/diff.c:1094 #, c-format msgid "conflicting %s option value '%s'" msgstr "opção %s com valor conflitante \"%s\"" -#: src/diff.c:1047 +#: src/diff.c:1107 #, c-format msgid "conflicting output style options" msgstr "opções conflitantes de estilo de saída" -#: src/diff.c:1063 +#: src/diff.c:1123 #, c-format msgid "invalid color '%s'" msgstr "cor inválida \"%s\"" -#: src/diff.c:1119 src/diff.c:1329 +#: src/diff.c:1197 src/diff.c:1401 #, c-format msgid "Only in %s: %s\n" msgstr "Somente em %s: %s\n" -#: src/diff.c:1253 +#: src/diff.c:1325 msgid "cannot compare '-' to a directory" msgstr "não é possível comparar \"-\" com um diretório" -#: src/diff.c:1288 +#: src/diff.c:1360 msgid "-D option not supported with directories" msgstr "Sem suporte à opção -D com diretórios" -#: src/diff.c:1297 +#: src/diff.c:1369 #, c-format msgid "Common subdirectories: %s and %s\n" msgstr "Subdiretórios idênticos: %s e %s\n" -#: src/diff.c:1339 src/diff.c:1389 +#: src/diff.c:1411 src/diff.c:1461 #, c-format msgid "File %s is a %s while file %s is a %s\n" msgstr "O arquivo %s é %s, enquanto o arquivo %s é %s\n" -#: src/diff.c:1375 +#: src/diff.c:1447 #, c-format msgid "Symbolic links %s and %s differ\n" msgstr "Os links simbólicos %s e %s são diferentes\n" -#: src/diff.c:1462 +#: src/diff.c:1534 #, c-format msgid "Files %s and %s are identical\n" msgstr "Os aquivos %s e %s são idênticos\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff3.c:43 +#: src/diff3.c:51 msgid "Randy Smith" msgstr "Randy Smith" -#: src/diff3.c:356 +#: src/diff3.c:363 #, c-format msgid "incompatible options" msgstr "opções incompatíveis" -#: src/diff3.c:396 +#: src/diff3.c:403 msgid "'-' specified for more than one input file" msgstr "\"-\" especificado para mais de um arquivo de entrada" -#: src/diff3.c:447 src/diff3.c:1295 src/diff3.c:1698 src/diff3.c:1753 -#: src/sdiff.c:308 src/sdiff.c:846 src/sdiff.c:857 +#: src/diff3.c:445 src/diff3.c:1284 src/diff3.c:1683 src/diff3.c:1738 +#: src/sdiff.c:306 src/sdiff.c:843 src/sdiff.c:854 msgid "read failed" msgstr "falha de leitura" -#: src/diff3.c:480 +#: src/diff3.c:478 msgid "-A, --show-all output all changes, bracketing conflicts" msgstr "" "-A, --show-all exibe todas as diferenças, com os conflitos\n" " entre parênteses" -#: src/diff3.c:482 +#: src/diff3.c:480 msgid "" "-e, --ed output ed script incorporating changes\n" " from OLDFILE to YOURFILE into MYFILE" @@ -1198,13 +1199,13 @@ msgstr "" " diferenças entre ARQUIVO1 e ARQUIVO2\n" " em ARQUIVO3" -#: src/diff3.c:484 +#: src/diff3.c:482 msgid "-E, --show-overlap like -e, but bracket conflicts" msgstr "" "-E, --show-overlap similar a -e, mas exibe conflitos entre " "parênteses" -#: src/diff3.c:485 +#: src/diff3.c:483 msgid "" "-3, --easy-only like -e, but incorporate only nonoverlapping " "changes" @@ -1213,7 +1214,7 @@ msgstr "" "alterações\n" " que não se sobreponham" -#: src/diff3.c:486 +#: src/diff3.c:484 msgid "" "-x, --overlap-only like -e, but incorporate only overlapping changes" msgstr "" @@ -1221,17 +1222,17 @@ msgstr "" "alterações\n" " que se sobrepõem" -#: src/diff3.c:487 +#: src/diff3.c:485 msgid "-X like -x, but bracket conflicts" msgstr "" "-X similar a -x, mas exibe conflitos entre parentes" -#: src/diff3.c:488 +#: src/diff3.c:486 msgid "-i append 'w' and 'q' commands to ed scripts" msgstr "" "-i anexa os comandos \"w\" e \"q\" aos scripts de ed" -#: src/diff3.c:490 +#: src/diff3.c:488 msgid "" "-m, --merge output actual merged file, according to\n" " -A if no other options are given" @@ -1239,27 +1240,27 @@ msgstr "" "-m, --merge emite arquivo mesclado atual, conforme\n" " -A se nenhuma outra opções for fornecida" -#: src/diff3.c:493 +#: src/diff3.c:491 msgid "-a, --text treat all files as text" msgstr "-a, --text trata todos os arquivos como texto" -#: src/diff3.c:494 +#: src/diff3.c:492 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr remove o caractere de retorno de carro\n" " (CR) ao final da linha na entrada" -#: src/diff3.c:495 +#: src/diff3.c:493 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T, --initial-tab alinha tabulações introduzindo uma\n" " tabulação no início." -#: src/diff3.c:496 +#: src/diff3.c:494 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr " --diff-program=PROGRAMA usa o PROGRAMA para comparar os arquivos" -#: src/diff3.c:497 +#: src/diff3.c:495 msgid "" "-L, --label=LABEL use LABEL instead of file name\n" " (can be repeated up to three times)" @@ -1267,24 +1268,24 @@ msgstr "" "-L, --label RÓTULO usa RÓTULO ao invés do nome do arquivo\n" " (pode ser repetido até três vezes)" -#: src/diff3.c:500 +#: src/diff3.c:498 msgid " --help display this help and exit" msgstr " --help mostra esta ajuda e sai" -#: src/diff3.c:501 +#: src/diff3.c:499 msgid "-v, --version output version information and exit" msgstr "-v, --version mostra informação da versão e sai" -#: src/diff3.c:510 +#: src/diff3.c:508 #, c-format msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n" msgstr "Uso: %s [OPÇÃO]... ARQUIVO1 ARQUIVO2 ARQUIVO3\n" -#: src/diff3.c:512 +#: src/diff3.c:510 msgid "Compare three files line by line." msgstr "Compara três arquivos linha por linha." -#: src/diff3.c:522 +#: src/diff3.c:520 msgid "" "\n" "The default output format is a somewhat human-readable representation of\n" @@ -1308,54 +1309,54 @@ msgstr "" "internalmente e emite o arquivo mesclado atual. Para entradas incomuns,\n" "isto é mais robusto do que usar o ed.\n" -#: src/diff3.c:534 +#: src/diff3.c:532 msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble." msgstr "Status de saída é 0 se houver sucesso, 1 se conflitos e 2 se problema." -#: src/diff3.c:727 +#: src/diff3.c:725 msgid "internal error: screwup in format of diff blocks" msgstr "erro interno: confusão no formato dos blocos diff" -#: src/diff3.c:1022 +#: src/diff3.c:1015 #, c-format msgid "%s: diff failed: " msgstr "%s: diff falhou: " -#: src/diff3.c:1044 +#: src/diff3.c:1037 msgid "internal error: invalid diff type in process_diff" msgstr "erro interno: tipo de diff inválido em process_diff" -#: src/diff3.c:1069 +#: src/diff3.c:1060 msgid "invalid diff format; invalid change separator" msgstr "formato de diff inválido; separador de diferença inválido" -#: src/diff3.c:1305 +#: src/diff3.c:1294 msgid "invalid diff format; incomplete last line" msgstr "formato de diff inválido; última linha incompleta" -#: src/diff3.c:1329 src/sdiff.c:276 src/util.c:969 +#: src/diff3.c:1318 src/sdiff.c:274 src/util.c:1069 #, c-format msgid "subsidiary program '%s' could not be invoked" msgstr "o programa subsidiário \"%s\" não pôde ser invocado" -#: src/diff3.c:1354 +#: src/diff3.c:1343 msgid "invalid diff format; incorrect leading line chars" msgstr "formato de diff inválido; caracteres incorretos na linha de início" -#: src/diff3.c:1427 +#: src/diff3.c:1416 msgid "internal error: invalid diff type passed to output" msgstr "erro interno: tipo de diff inválido passado para a saída" -#: src/diff3.c:1700 src/diff3.c:1757 +#: src/diff3.c:1685 src/diff3.c:1742 msgid "input file shrank" msgstr "o arquivo de entrada diminuiu" -#: src/dir.c:156 +#: src/dir.c:154 #, c-format msgid "cannot compare file names '%s' and '%s'" msgstr "não foi possível comparar os nomes dos arquivos \"%s\" e \"%s\"" -#: src/dir.c:225 +#: src/dir.c:223 #, c-format msgid "%s: recursive directory loop" msgstr "%s: loop de diretório recursivo" @@ -1365,136 +1366,136 @@ msgstr "%s: loop de diretório recursivo" msgid "Thomas Lord" msgstr "Thomas Lord" -#: src/sdiff.c:174 +#: src/sdiff.c:173 msgid "" "-o, --output=FILE operate interactively, sending output to FILE" msgstr "" "-o, --output=ARQUIVO age interativamente, enviando a saída para " "ARQUIVO" -#: src/sdiff.c:176 +#: src/sdiff.c:175 msgid "" "-i, --ignore-case consider upper- and lower-case to be the same" msgstr "" "-i, --ignore-case não faz distinção entre letras maiúsculas\n" " e minúsculas" -#: src/sdiff.c:177 +#: src/sdiff.c:176 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E, --ignore-tab-expansion ignorar as diferenças causadas pela expansão\n" " da tabulação" -#: src/sdiff.c:178 +#: src/sdiff.c:177 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "" "-Z, --ignore-trailing-space ignora espaços em branco no fim das linhas" -#: src/sdiff.c:179 +#: src/sdiff.c:178 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "" "-b, --ignore-space-change ignora as diferenças na quantidade de espaços\n" " em branco" -#: src/sdiff.c:180 +#: src/sdiff.c:179 msgid "-W, --ignore-all-space ignore all white space" msgstr "-W, --ignore-all-space ignora todos os espaços em branco" -#: src/sdiff.c:181 +#: src/sdiff.c:180 msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank" msgstr "" "-B, --ignore-blank-lines ignora diferenças onde as linhas estão vazias" -#: src/sdiff.c:182 +#: src/sdiff.c:181 msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE" msgstr "" "-I, --ignore-matching-lines=ER ignora as diferenças em linhas que " "correspondem\n" " à Expressão Regular" -#: src/sdiff.c:183 +#: src/sdiff.c:182 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr remove o caractere de retorno de carro\n" " (CR) ao final da linha na entrada" -#: src/sdiff.c:184 +#: src/sdiff.c:183 msgid "-a, --text treat all files as text" msgstr "-a, --text trata todos os arquivos como texto" -#: src/sdiff.c:186 +#: src/sdiff.c:185 msgid "" "-w, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-w, --width=NÚM emite no máximo NÚM (padrão 130) colunas linhas" -#: src/sdiff.c:187 +#: src/sdiff.c:186 msgid "" "-l, --left-column output only the left column of common lines" msgstr "" "-l, --left-column emite apenas a coluna da esquerda das linhas\n" " idênticas" -#: src/sdiff.c:188 +#: src/sdiff.c:187 msgid "-s, --suppress-common-lines do not output common lines" msgstr "-s, --suppress-common-lines não emite as linhas idênticas" -#: src/sdiff.c:190 +#: src/sdiff.c:189 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "" "-t, --expand-tabs expande as tabulações para espaços na saída" -#: src/sdiff.c:191 +#: src/sdiff.c:190 msgid "" " --tabsize=NUM tab stops at every NUM (default 8) print columns" msgstr "" " --tabsize=NÚM paradas de tabulação a cada NÚM colunas\n" " (padrão=8)" -#: src/sdiff.c:193 +#: src/sdiff.c:192 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "" "-d, --minimal se esforça para localizar o menor conjunto\n" " de diferenças" -#: src/sdiff.c:194 +#: src/sdiff.c:193 msgid "" "-H, --speed-large-files assume large files, many scattered small changes" msgstr "" "-H, --speed-large-files assume arquivos grandes e muitas alterações\n" " pequenas espalhadas" -#: src/sdiff.c:195 +#: src/sdiff.c:194 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr " --diff-program=PROGRAMA usa o PROGRAMA para comparar os arquivos" -#: src/sdiff.c:197 +#: src/sdiff.c:196 msgid " --help display this help and exit" msgstr " --help mostra esta ajuda e sai" -#: src/sdiff.c:198 +#: src/sdiff.c:197 msgid "-v, --version output version information and exit" msgstr "-v, --version mostra informação da versão e sai" -#: src/sdiff.c:207 +#: src/sdiff.c:206 #, c-format msgid "Usage: %s [OPTION]... FILE1 FILE2\n" msgstr "Uso: %s [OPÇÃO]... ARQUIVO1 ARQUIVO2\n" -#: src/sdiff.c:209 +#: src/sdiff.c:208 msgid "Side-by-side merge of differences between FILE1 and FILE2." msgstr "Mesclagem lado a lado das diferenças entre ARQUIVO1 e ARQUIVO2." -#: src/sdiff.c:330 +#: src/sdiff.c:328 msgid "cannot interactively merge standard input" msgstr "não foi possível mesclar interativamente a entrada padrão" -#: src/sdiff.c:597 +#: src/sdiff.c:594 msgid "both files to be compared are directories" msgstr "os dois arquivos a serem comparados são diretórios" -#: src/sdiff.c:820 +#: src/sdiff.c:817 msgid "" "ed:\tEdit then use both versions, each decorated with a header.\n" "eb:\tEdit then use both versions.\n" @@ -1518,12 +1519,12 @@ msgstr "" "v:\tInclui verbosamente as linhas idênticas.\n" "q:\tSai.\n" -#: src/util.c:662 +#: src/util.c:755 #, c-format msgid "unrecognized prefix: %s" msgstr "prefixo desconhecido: %s" -#: src/util.c:692 +#: src/util.c:785 #, c-format msgid "unparsable value for --palette" msgstr "valor não analisável para --palette" diff --git a/po/ro.gmo b/po/ro.gmo index e9ea49d5398a657033acf922a90b30a21c982ca2..865399648f40de252e4153a3009ee375ec5d3925 100644 GIT binary patch literal 37888 zcmb`Q349$_eeVYnAW>Pe03igDNrEGZXoMw)Cdep>7ugZ_M&VJ7S{LlaYKZ_qd@67uGp0l111kVF+KPw1ge!uG+eGP)}*+H<#`=#JE z-rsaV5NriM@A2H{@QwEw@Fn1%f!BZ+UKj)`;C}FG@b|zU1kZeK5WE=N3~mDN26uw* z2dBVqfUg8MT@(b<;77pg!S8~b!Oav>;g>;u{|)dRVDS7P*ah4V%KvY{?cnIeuG}?n zH}Ag+s(eqnBnWNSuZKbP$J;@r|EPbz zkVd$c_jyq1ydM;O`~`Rwcwyw??*VV*{a)|}@bjSB_W~Mi7kC4>1H2F13VszF121_| z5WE3=IjH)72~_+`h^+E1f{OPL_`~3LLHWOy$O`{CQ19oA2f^#WTS3w7qoB(9EQnU= z>;@J79iZy*D5!Ehmr97f7r^VmcY})eC^!i|8_$=5GvIFU?cnv`pMlqbA(^Rt?gSO? zr$FWZRsN_w&L=T_zXMeKcY$Obd>y2>v3d^8Gfb`uvT@ zZ-dX|{Yg|x^?fdQIe3MCe;KHJZvs``yTS9pH-gIVUEoK-4}nx6xPwl43itpRf)9ds zgO7kp|HX8k>aztr4?F;F0OvuK;OD_kk+!2SA!A_$^TV{~sWv9*i*vuLNU|As)O1RJ}h2UIKmzya@a^Q0?_B2G0|~ z4dC;@K~Ux24l>k(o54%L*Mds#z5e^}f-1+i!RLcdg$XG93qjGr45<3u1BT!O9zO{x z|F44TzkdZ)j`Lt%>i^5YGrDmFK4!Y$5m%DE~hO)gE60)$acYj)5X(hH5Yl zGPHvPR6qX&csck{|NaF~>3$PbdCu7B%6|!{bf!UAPH+z>|6c%=-)BI@`!Xmx`3Cqj z@IOJ(_fugW%I^gpuLIQ%w}F>|E1=OAIKcadK&AT$@BjPY2Hw93s-Dkg5GehNK+)MS zsQh0Hif(QI&jt^IO6Lyn$zUCPI(QGLc77A6c7C7t{}u2_ynoWa{}wpH`zcWQeH*lP zf!S$XTmmY+O`z(t6;yp=Z~$BZ&jMcus$6dY4?dB82mh3Q{N}D8*u(cz{NZPC!Cp77 z%z+Q_{)?c#-?`86l@EbG!u!90bWw2P<(@x#JZHb-`!|7*NN_*+4)9U%esK9f5F7>1 zopI^D5!}N27r^&`7aVloKMwu_?`PZ;1aAc&167V!-y8%KDfnGb<-X_^Hy_*u!dimI zz&C>g#V5^96$UdxS97q z2i3mMyVKG2W>9py8{7!q4Gw}2f>(o|178F_F?Rmr;3d2lK!rO2o&kOkybk;@NVf!! z`S*VUU(NgYEORaRQIIAKt}4L8z&C)(=PRJv=lnTj3GhKs?fd+Meg=OWd^h-Y@B#3R z^UxZ2`2sQtcnZ7^EHAqLdQ$4-mY0EV;QKp4x+b{%E+3 z{|`gByO> z%O9Zfe>3#xhfi1%IKBzPRW3j749cKinT0`Pp8 z$wlBbpy+Z2RC~>XD$lDyrF$Q!a(x869Q-3t_5KbhI=JNRZv1Tm)gRkHwd-L}<#;=& zdj1A@E_f1r2KXo7v%tUg-@gYwh4-ibcbD(8!Kd*)2A&IE2ZrFw!E?YWsPdcuMNdBm zD*xXEmH(GPrT_FFbM5j1Q2x6?<-Y)`zn4MP`{Vxm=Ru|asK>`Zx-X#nf`7wN%>4Ns z|LfhL+H42zpK-9h;MZ_^K9BoNoM`9{oM=N2-4^^M?yz23p5OJqSHQpXzh4B32L8dn zFM$8U{~iZl<9}zskP1G5`%|38;*)W$4*vqlHu-NS zJqkp(KZ;w#sjps%3vqgW3il=4Kj9w0={bUXiaO0d*Msl%zn|jqIQT2LAHY2o_cffJ z|ATv`{c?XqD{sJk5BD&RX(4z5X^Xc11^4qfJ@+{<*~tGixR<|I<9^bA{HjO6ZMX_< z3HKe`w{d@ldk^kr+`r?P_UyTWzstA;CmY!xgC}sW#bwVM`LP!_gqy>?9`{$c^KnnZ ziJx4Ey8)-?TR4p^J^zaPfc5fY0Ug0u8jLV+~v3r;`F==*RWrX z_q>kZ2mSl2Jig2$Y&Ce2@1s-v{-3xH<8H)d&y(@Ln3w;J`wLtx^8m%We#5_yf&YQ~ zNB{ml@F#G$>YX&U0za+aJU{2a{yxaxKg7-BW^o_G4dV3tGHw^{kY0E`;vo16cog?h z|NeaNg}5!a+x@raczmbFmw-?7zjuT0zj7F_#D4~3wI{Je-_+~ z+mE{mcLwfnaIe698K>uuaCO{|>1AMMF$w3A`M6Q6hvi1S(x`{?9R<5*E ztCK&Oh04sAn#^{jrMOsJ8L`jNQaBVvOG$Mh$&z*{*TT7UetuI(nsa3fYJtMER8Ojw zz<^5V8$mh5g?b|{h8AotoKK6%Xc+D&SHniBQIk(vqP>(YZNB zqo!IWbE5-6$P-07XKvj$6)jZDjY{O2d2;8D-81<4Mz;Vi-Oz&7!sWES7%G%cW0$2- zOiM|Y#4eXamWBoJX(*UaLZN&Tvou(BgR`HHE?lmrb=o+t$D|bc2utO;Bv70v zDwK=m>Y>S-ZflH?7#El0l^VZj!NIsuFAr`W@KL)# zr5Ka5&xuZmArb#J>7oaU7DejTs8TI2RO6+|ef#(B+`nZv9wMgfjXp1wmnv~Jv2LvO zjk%79^VRZFB!ZaSF}-VQOy%%TmW}&PzECCXbnTHpHm1YE=d)C1+m&}=m+)XUYC zK>ks*m=r5MWGl?2HQH;%k)nlBCnm?zdZ1vv;yu1-k0;jJamv;7c)1iA#ZK-yNEaSS zl1ivwj*9)br-hebIq;wP^qA3VtufC}U(s}-#4xnZiAwQO5*1PlU z+;E`JQB+Lk>l$EvSvE?mN;=J}1N)3}&# zV`DZgoT5~Y<`P;OS1Pz>bn)S#r9sUV#bS9mtgS4~mWydYsT|4LkhncMqX4^4Nq2pH zL4Pj6Y*#(LIpWX<5FZGKTBe4qJu7iBsn?UqeOq=-&CE#+F(sswFTP^(8IAEFh9is!M5U9tIRw;@PyA*3+EIYLz6Ji;6LG zl@V+$4C7j@u|(JEo8whRR7}1rOo}npsA_toL5kUQ8>m82RI4*(M)hh;9;Jn-P}OI9 z%qPrzC`h%M#w1@&>WwOscgc}Jpuj!T`L9UiG}CBQBxKa0*D38Eg-WXOilZ zD&uPVLq~D*FoG2t3EonWL>M|>OCt0y^aewP9&zkjSPkh!CvuJ;moI0`Sw7|Bobz#A zqt@Gj#A=;RzD~4-g zW|>Zp5u~U>v0?g(m~hTUX)l$3jlN+9H%73kTbi@3ZxEGQqP+>tG`U1(^6>Id2v(rTQ(haq1^=-nk2R|e_7QLQ0~G&KQ+XSrgzHA;Aw7fMV|c~iKO4q$Q_j0TMh zr1L4>8pu*m>1Ik(ri&Z}iaQ5G+lGTE%C#EfJW*74^Gi4@el31tDFx9c^!X@>Yb%k7 zq72#mDW*q~P>TO7hJ>_)x?d?v9wI}8)>647N-M^difGBvY%PekD8brdc{$RA)%IjU zUQ^s5ZMgrDq;5%+OY_K`brRXCM7+T1BnHP`d~%ue?@SaD_h<_j!k8f$SgigDtxBcL zNb8!)_Kb8ST}b#SS0xtOoRlebk_4meR&I@`$vs=Y|9=;pJgt9)| zkrTo^3{PeulhY>mt67w!F{!08lM9qD5yO}be6Fx4a@ao=L^oI(t0ildVzqQV!W7;| zw2r1*S~SbX>!>PJM}vrbmlvBfVKJ;!r8a?O%JXRg*AZA<9s zRMFeU%#8I)30(^5Q}o;VEXD93KGqy@P>tCYnF}h3vpUA|45B`1tTTn1trX7QKwm{p zA8|$Tgy9H6rZn>mB8#(}&ea!JDHLI5dt}x&5|`;C*C@s|ZS2%3Fsk-^+(^UnDn{I8 zq}`&jJIMy!6H(PHS$T5a$II?a85Bu_jG2M9G&NLOqsg~HbX!Y9Wb#oi{YsHO~bv-#&&x_vn!>c0+};cxipg4hTS21oYv}OI&oC<4x$3J*d`TMwJ{O-SpASF zSjJyJMYWOZreV*zs6(M#kp$wS1<{-m!6=e;G3(UPq*1}<#Ci}_F-ALM2l8nxu@=dt zhF-~>MiN?~h$vduClftd79;{&)94YyhbK9=deI{Pn5g0;k2U$Q>5Y4LZ8s)JE8M#G z;C}m!IiVcxzE!`2DD7Hg`-pVKunGs42ThI}ynB$QUt*e@Gh>uhw39Yd z&S**&Q%4fA0hsV3ESl&CeCu?a=OT+)%um?L$KIkm89-)r`jD^s&9 z+09Mlh&z6d&B_2A)Rui4=SSym4!K}JIRl36s--?nl8MzQ;qHbOY z6LewxOt;&@+&77N_j3n&XiEL>w)$7oWIm7E{DHuO%Hb3*Gj6*X(2e6Dsw!?%yKKgD zzj7bcw!ASVC^u$XBr)2jp&1;lKZ?+G6IMg17b+#Qmpz%;)z-nhq24uykL8LPVVWq_ z(*ok0E2gY(D!!GxzO2c>q)Ag?Gge{QW;t{icKg_MBP*q;JadvB+X=yacLF5+WplQ% zysX&$Vy_vwK?5DkCQ{6((#_XBk^1n>ne?cdo8jD4@tXbUNiOr%8iWi&QU>$2!KhCH z-)H>qEBd-3FRSu?^6C`7X$C)et&+ekS`P`_=euqJTss>wDVpV_76xSf&{K*gXkgnS zBCjHMSW?>b&7}*y^?cxRHe!PGkW%4l%%{ zXF%pi+CzD+mx#N1r=GkBu z%V^hRYK;OiPHn!y)NQeI`$T7KS8dHlgHB}7-|<1)->`jp|5(VM=Bsgj=c#b=92^aH zz}D2HvMdT=`+QJywR|10U}kOgeWXltmbuzH>%yJRbQ{`^0Jj@u=bnS?>Y1-ElSF1? zot}qwn$|xog-zoh1+&@KcGr-ra%N7(s>ynznP`waoFX_>8y*cvE4Hed9UBv*?2ajh z($c~RvDjWhx0U83;#-HUj?pWaH~G$D{39X1Bppoq&&-T|QK-P;L(Nw6o1QFFJJy#6 zYw@#{011A#-*fw`^6yv-3W-hL)nuW;f~<^WT91T-=7HGOfdnKiHY-P$z`L|Ip(T}I zSBlXJ$!q7nT}L-vIT5Ne_#I|UdXrjPkYEPSV)3H@tbv{{36_%-l+6x-C%X!kVfPUY1hUmgg9Hzoa7TfHW9-L<2!SH2l#Nqde7H)fanZT86c0r9jIL`ydb&5Ueh% z-@~B|wP6Kn6vL^71qu=Dt0qj04JzYv?UKoUs<{##pp_Pb{j17AbE3th3wW8-!a$yF zEU3X;k^JZOZ^(BV1qWE4EYgaBDKk#Krb*y}TEo$*g{z8qntPWpzQl&Tw1VjyvSx9> zZGlN@69Y%KhGQEyZX5}31jnx$33u~hL|^RdZoOP}&B%+d{=t!fovmKxy;I&-ZyLG! zsm(DDly}c zM0H#?IMB9pL_AM{fQ*GfzMh^~##Ix!by26pxkU-L8^$RuA{rC(Md4EM1|TLi-E4yD zR8rFs!enV5Rf0+PiONdhedYqobp~^{wRx`UW{< zVZuYMoejnhA3oeK(t%!{&QcL(mW<4dF%aBjD|gv4oNHYLEPyoQLi4kp^79|r6o(fU`WL25~oaoM`9u_J^HO52I2A>}Pt z{K!&j)34pu+zx>v$fx-BLKl`Q6XDd}9pYsov3bq1CUI(#=;u44*~MhnwL|s_=G1v+ zVcP^letywQ42jbCbz|fHR`Ip~UM+DOJN)F@7C=fYi@@2$+vaDgPODGdt#8}r-XQC& zm0+$6KVpIX?5R0qYgnfCFT*#r`0M2pMxSxcIaZzBE;n1wjFB&6w)2e+B(r^^6M(%2 z2vTF6!Nj3$JEPBuknB4lG2+*TRP{V;=jg=QH#z%S&mebCoc;2K zM6&?#s~XccwmsPOyW8fVQBqCtFj}=%*5+%C$N6-=97rcbzpAIGF?ruM7xamuU6ws07swh~$lVw)jNZOek zG~-&1#!6~LaHa6JJ7-gLwQqWP#on84yM@VS5RD(ttFq{}wX;1%zxn``l@_3AF_*j` zRybGI%@kWr%Z^d)!t}eCdWYmVLxHs{=wBn*M!)z^vyvTYyPA7>-R~A<++_tveAX`L zuBFTdd0Wxl=(bNwopLrywh{-zyBkR(36@fJ{Yb<&7VGvQu)V*_cly;a2d}r~1nPLE z%go82$uSA1t7ix=o|<z0kH zecJ^e?34y;^YuU?df*QXcsa}zQ#bU2T>7^Sr&hG=lfBf?7Aka964dBvitHP{JbM?k z5Y(716QC|VRi>JGM0mYArPo@2E^$jlWe6qr@x!TBhm}_O3`OZLp95?#n08Vf+Q`bS zUI+{227B{VRVHC*sC)$Vs%sg?#cyO{s#Y|Yf<_4|PR-8z zxXDQ)EsFe>YP_NUYzGob8vF32@dV3B3OBaqvK35K!W}8`jl8c~R%=Dma}n%PI)^U>9RLLWnORyQAJtg!_}FMlISI&tgX}hT9O~ z8{tdQ2phEp_iePGZ`Y$%SIgzPGP{;kN(&9fRy0E+kp>z=DP>>POX261vWmfJrKPA^ zzFu3wYooPtqgv1=<%MJv`fjE%5mw6syQgbTc3}NQK`vG7wKlnl{cHAf za;P*pITl_QZVV?v{oWY9@|EGxP-z3rH5^{c_baZz!@a(gW*r_T^cbPXhc^%0VjZJq zG|jiA{%&ZQh^TqCt;xc8Zcet8QQ|uzmG#BGvdz|;M#o3T@o}%w)^hpCQd~Vk@vpgh zBpU1WZy*>@Em7r*G8nL}P?q?%jh|!Aal9?6n1DB@S2#oo7_U@Xr{BmsAufr9Xq5};u-j#s#K+06Q5x_o$Pa%onS1z?;UmAqj8HC6 zEs71}RSg?yOC2fEBX8wEi_)a)!$x)KhdQFJ!FbFH^fZB!cc6D{F# zRwuh1vxUa#9Heu}F{P&+iMegMB-V0JruUJ$0xfXrep$#9TA2leC&_b*$gqzFeOu9SV5MLXRN;8{nya%Tte5NM4s z7ztV)h%@q`Ir=8%h~jk9%1zoV*M8{@l zBN`<}p#(!DJ7w7G_?;g`Ht5~RKxB*W65+;o(e72F8FqnO`wX{<_O^_jnFBIcW9$Nth(jo}0fH-H*C^+)eDN`V?6UjdY?(e1z=T?~Ed{MxB^ zdiIE91EasIQG=tpVaaAB_ttx;_|}F+$s(GWJV+fLXX)mwFzYNQYfa5eZ@Xb?W{Zz+ z&`Qm@zi0BQuTL^(t&Mcea*4SVnW*9_?3^UnuvrO*D5s-LX1t^xX9Kp!eiX{q(t~ph zcVkgfrs9%pHW)AK)PDia?6~5Z#j=jd8-$MSJhSYY1*wQ>+YRr!@w6^%x1HhkKABi* zX#R7F6_bUNCot`cgV$1bNHHr;@AHXi>?$4?HRrBLK5Mo@PF~?@kdNOi(MmV|cS|Q3 zr$LwZfrpq*+Jv91$J>rTI$E?(Mk`d3fr#`Vx^AUSSK3^P=v_~fDop8?RACdlm#|Kr z@JA>)tmA|)Ny7{qult@n(K}V`MdbWOgU}Ui2Tz73hK;satx8JikcNrgReq+Xtge_U zJ5N*Epra*CaiujXi{S?@@y6L+~J-sJ;3fUi-;`77Q!W_LyM0DR6)>T zwojqvKoMD!?|CjWDW*^cdD=ltQJRD?UTmmIXtD{{X7T=s^-c*981s*Y?rEg=_>=2# zWK-=$Zz7axKaE7^qRAJSG+0^X-3DAN88hQ8<>q-ZwPUwuq0GTvHJX=-0tKSMvqHdp zT2FfFv-=%p(z3JN5MY;*+ zL>+szda$A=F&WE(t4WW-thXeYq(&}l6(%bLQRt>7@%ke`nf%mx%9Lh9f}=;h5X5oO z$1g#RcZjm9C8&N!PP3^)W!GHnCr|(IQ_%rxwrvgQJc!y7hE_ozC$Kw-+I9%FCD^ubNa|ZLhNXxLSQf^S zowmx@pln!dRV!o#&Z8Q~v(u<pR>EReB19 zk~8{i??!iIRdgxiY-`yzxI?QQUjEqXaT8aW-A&K;8)UNRYAPDXrU*w8J$up}H0Bst zdmr}eM6s~Gk0vArMuGNXdB$4Z%oOk7wQ3RIDIug zC@V>1h$R{Nd1*GT506qsX9mdR6OoY9<$YXdmRBZ-&Urk_u|;MJ@qAhtMx+jKA}dQ9 zMrQCUEimXTEzQX}Gp4(^-C9E&XJ&c$lhVlZQ?=GZ5}@*vwdCJ&xK`Xr(N7RTlV$HJ5t+u?v@)W$%i)dlbmwZNJ9Py9{z>SBx0NFlu&bj zpOVaHKJ)Ukyo%88a4(anf;(d;JNPsWxf8xl*)ol>O@5Y6QOfvkFJ^!+Wy1yeyzf!q z7PZIeh;3PoSZNkh$MG19cBYhB!*l&!xy$MW!GL=TP}Xyhn9g$y!c4;I54xdU zb2SaY2_1ctw1v*j^kfV`2#2QV@aPDdSf$LZo@&a?RsRH)@kc& z(pB>`j>qoc@|=1h4c9DAi{RWy*KyLhvsYMqo70{M`r2*ur%CNJDKg-i^1f*fdA4@; zW7YZSt|P1qO^en$sJ7S9>8WEC_A9R0G|f)+vqpiMnQ`9ES<@2EJb;i~Wy7H~pEc8@ z!(HzE4`n|d<$TT7b{3y?DCzx9c(1SRvH`rBMB5pHjpy2$&E{LUR**iGwO^m(9qOTbtv=_7Gbb4;r^z5b8u9W+U&9Shh0d?9o&mpJu%(H%E#!VB8D@apR z5}lmkfhoV5uIJEtra$)48@r!gw?ze4L8?-q9O^W$9d$AGH92wL^XE!2Tbj#xmQ*G& zBp9$MCdW|_VmM!8K@#MegHcUAkLE=Z@bx^^zU8otY+WG_Pbr$2iVby7^yU_>-g!1B z8!s$2HLXEPDK2s>-(vPSo>~w~j>s>_p0HeFQGN#_b-Qw z-tS<3Yb%>h=|x61zSgCGpqrRN>AS$jl#PUbiDqrxCSWq^#^`uHXl=LD<~Y z?*f9Zar_n%q&Mx9({)TvxX-1PwL~eml|m|JlFe)fcinN*)V3R@TWx`Sn>l&!K_lNa zdezU5#MnJ`u>VyCb8&-?lpRv%{$P)25Hk5#&iuYxzs0NAS5fine6Ggr7YXE-z^ZNC z(`yK+p6#o{Yg8x1$mo}konqqb#|@clJkye0tABwQ4|YicmCZA!x-w4ZsoU(}INw@D zVmATnDq0iPR-5*$F$%d$6}If+z-rlc=*afTz&xN&e)zk(Xi9QRaH0UQuHK1pwF2>- zQ8;VmRk$j@v9=6z+Hi(uSFZlGwM@Gwvc?4rEd$1E7fxnqU+HeHM~MnqLiCp?! zsv!iV(FQAGCC3@qM7EWxXf@velU>Zv?@or6@<}{4`2en-b&&d3+j4A#)}c2}6!mW^ zA5+`TjJJEsVc+WPsC? z-kY~Dxw<8%T=cVh9SGqo=41D|+o6-KQvG=+!`l7>-T2UX%fl(Hm*fSoy+MwDG91{o zuSYZlEZSK(1S~IlJzejYBCjDp|=sfKQQQzAk+A1M&4Pw(J5lqer_eDrQ zn3pv&Ta*-|UyH}96e5T#^Y6ceT0y9TcIrFS&+pRlYRW*$TRC_sJH%`=*xY5shY#rPNZvXl_35bCEgE*)eHpv=Ztu8V zzj$49JVM($I#~0jQaNj6H2}kc;$}~dOQr0N6zpaC+y|tgmlzcX*(@NRi zdJ&f^v_EIHMp|pe-meQrQZ@oHbW|1gblC=+eBC?PlkGm_lpuj1dn72^wUaH52ivj_ zcrw#Ll|DK{*Y+5(m&1QS3U=3zV9uwJShja(&TP|9*ZdE(n&(U!MHk4D<7OL6M*qo! zb|@*CX3;w?B(X|%y^@4kH4Zmf_qMGCxywmxR|HFN+8U7&3mwE&@DoOgG9tNmvs^#& zOKg~OyDH=%npMN;bMw*?*_cKL_B1JG&-AwGz2VL++*@+$foWC?#ZHm-YMg35A0(Vkrh{{i%=(yEHTS8IsY>`A8`u6ApgiW!?r)g64dvIFKtsQ0q+Cs~ma4(i$ zb*zJQ5$QxEt-Y(&>uSorFN(4~+q$h?6WS;8$XijIIL4+VpvA7Ax?GIXBr&qnxhmTh zwL0@)KLTcUJ4zSIBeo9nlrZHGRI<0WfN?&|sjjkH!o-TPzbvJD2)MKUho>x9w{)-u zS7W!M$by~DX}n;6=Y1?UWvaDVMd(VVPi;Aq&Z+^eGgb&#rj>L5N_q^tkvkRZZ)N!} zzl=pgh8fc>%+Be*nxQD3NIR}(K{jxrg$7Bx_yIZDB;Za&U<#o9W%SDDIA!Bs#%ZLM70FFUL44I^aA4P#YNh$>ZM1at2TTZ-}xK*5l)*4u~p z3R{CWa?;1`WV?NsZ#pJy-#RXS(L{J?vNh7}_cY%aWCyb|bS5xz70jszrVs9!@|VG! zGMk3)VXklK8`z(l;$|58HO}QQ82QE=_{(AXCSbWut(A?1au(r?_Hrw;FR8aMx3hTL zg+}9IO_~S}UyVIBl)~(eG!R2z-RaCSX_U>&U)fOSoLGuD}Ezfkx-Ns{=57Vt>`|lsj4$Qblk+G|J zvQW-Q4A&9Ki_Eex+|4uXY{oFU>|!2K0GB1yhU~tc;U@PWq-a9&g5(d)*81-fZO=9R zis{|PH5`LGdoncwj$%yDc4#IUHz6P->6uNaoxmJjICa17SqhM3l#B5tolD_#XNBI> zxj(lJ+b9?Txp|LI*C<(NGP2mVZc)Rati)ZdSLdZ++ThMr%fsz@r>tVf<>nwHu&$xAS;7bg zqGH3CtrA;wY}Z<#XZnLC+Ml2tec0#=)_wyg3mtB!>}o!dF9p}NXPEP z(x|ZGK6%l4h!&aZl^kQdbP1C+eb;baZEK5*y+@ZM`9r0BSnWw=NnO*tEo^s3i@1FT-MB^mQE zT61PZOc(qpakCg_-HLg^^RIy}E`qWGzCdM0MY=MIzLX{z-$l!Dc~P-3t~UxY({JYovkQBsl=%(0tB!_)RU(#r(h?qyDY53| z)0YQ#2@MCnEojO7ZX`FR2R)lW?`3S6&aR7*w8oSj2B%8dS#U2Z0FVnXG%p+<0&^RIDzD7#>Z{zCs@`e{N=r)v<#1_hQ_ps7Cyl#lN*c#$ti*9}?5b%TRkOQi*C&~s z+0G@7Ta_Xtp4yk9g31F$Ac0gs0#qSXOFVFqkl+DTMO=hb(XNmHRTYTxn)3V3%&gar zL;AqTv;UcMzH`oZJKy<_U%76_R}|MQ_eZ%~S1aX%-`~LxSM6O&eHSo;mO~unUUZGvJNj3*d*r-+-dWYv3;Mt)hR| zdzAV#?~|ac{~&lXcozHs_$81(^;Ld80)7LO`CkOz5B?GS6!?20ui@PTKMB^s-QXEe^!+ke1%Cj_JgV$faSe?ZZ1j33FP{oo{cA9yF2fs#Mp1~vFA(8Ujw zJh%p@>;=a`k+Y!0^-1t!;CDcY%P))fSHYWje+#@Fya{7P{s1U`ISq;(p9fh&Jq7Lo zzYf;GmqD?2$A|LuuLouP-QbJhA}Id37H7%)H-NJKevl>ALm*SA02IGG0e%L23cLsW z2`GBJ3El_Zc!N?*sZN0+*9G^1&w{dFeg}?&uY;23x3GBx_k*OkS_UPL42Xz23yPn< z0E#`|0`CQ12KRv1G3gk11gwJ@xEuT-D1P}Xh^YEEDEU*tnG%m0DE2LaBG(4R?i3V% zJq^nK`X(sjo(IKGzXe6F--Ar4UI)cLJJ<{&cOxkC?FS{_j)GT#;sf!E$`?pbc}nOu@P)7%pKz1(+k z%YKnPC-E*X@#!SDh68qssHzan$wNG-*F< zY0pce{H+nCD>~_!rfpl(Qr;mQ^->#!I*d}CWW8P#r>3P>En+Pjn`Rot)+Fkn4gGjc z%Z$zhnRQ@EMNLQDE|Vl#V`xxaByvF~(eq=Y)0NnmVjgF9W6hagl{s>W)u`xq{-Iy6 zst$`a%!m_w!POOMa5iqVR-D+din6F}nJ~3YKe)6zk3~hzhUfjjwsga9p3|`*J|=9M zL34A(kNsw9V%-e9MLT8P7> zhsDm@C`-0me?AP>v<>mH#IT}H#D*C&JXuV#jm`^~Xr|LB(hb{DCy&ma(6~1<37Qd4 z!iLMDRWgn6rYq&UxTBi|sqF9FKccSt?MNW(4ggz~v9nWFn%o*s^<>x(lxz4#$ zGMSz~cF5tW`K1MUsHjE|u@_vi@Pj;WT=~e0KuTAqj_E}qz;LvXuc<4p zmzRvC#OuKLt`xaaA@R8E-1<NMTA01>5I@P~ELHsEZ@WaQ#STGNTITYcI%;BPzI5 zgQhFg{FNw46)x_?e!1&n)GiJ_HK<74UYeg%gCNzFlt?P&RYB;-LfQr^IvS8#C_U4j~ZFvW?PU0;_ zkcF({N${QIflioJqqtK!G4Cx<$7Le#ke^agCTg`wuQugPOz7HFefQ)YwaHqoa*R~) zsAeHWjDXekOx7`>J`(w1)7SSHd0RP<#SK67@NoM=HID9ORM^P~qqk`MZe1@#m}~t| z-;)+I$+9VZUK||=Y?3C`B+BBZAsIWS8k%%tj=GMc%G~VS%!c9P)mmjbKOenCHc?%t z=0bXBFYs-+PrE!c>HgW1^WN0dp1Zw?4PjZHBifrGg(P$9da7a5%7e~bDC#_@hqTN$ zZX&x)j+;$}X}{Hyleap=zf9b(>xctC%>s@NjZecUj zw}y~7$DvpX&O|z4XNA+Qq;1m8TukrICMSklrd^fq<4|KsYB!(k0gH5&KMZ7AQPv;G zI1h@9dk_vMW1UNL#WNupn)=y%jq^C4dTTcdY}kNwuDo+lLF~-75~X#O5gm(?kic&_AlgU;!)rRDr0<<1o@Hx`q_i#Ft7Dhn|Ogd=$~j>_Sk zQ0g`@VR*SVY7C}7*?uivx2bfuqOJ*TR`#i_Q;ZY^ZnTu>D@XiT1hPb09JfuYp>T7e0AJi`aQF_19ojLu$MV+!hFu0nGTuba~u|qREHwC z>l+(fv9t+$9cL8dwoY(~b>bbLVv5=i_yM0BWb6Fg>`5^P?Q|x`A5Jpz)K6Jb@)>Rj zHQd4&|L;VRbo19mIm`NF0DAQBXPj+M8r8v)DvG*=kLA%he}tOk80Dy%iNy>jgtwuR zp=oAelr*!nuL>GT+Z$n%{L;zl(-H+3ra;axuQV9qcqNggV-L^GEEW1Z{J_lgk=f#fp2c4*RaBmk zT6j*$3YFjGfRzuvy!_x%SM?wuB!c93{<$hSL|N=bk}$D(l+OuT)~Iwc#GN7>8% zh$DNW15#QpJ*Wi*|CP<|_^9N1UV13$m-4HpRu-@dnIy`LCmfT@N#xZk!9}ZEI_%64r~+3Tff_r74{tY7mo= zO;mVvg9O|2oRxU5KT=ZRQMEbH8~Y_Noj(5>=K5asC?`QODV1VFJ+=STmS$7 diff --git a/po/ro.po b/po/ro.po index c911b55..c7bda62 100644 --- a/po/ro.po +++ b/po/ro.po @@ -1,55 +1,71 @@ -# Mesajele în limba românã pentru diffutils-2.8.3 -# Copyright (C) 2003 Free Software Foundation, Inc. -# Acest fi?ier este distribuit sub aceea?i licen?? ca ?i pachetul diffutils -# Eugen Hoanca , 2003. +# translation of diffutils-3.8.43.po to Romanian +# Mesajele în limba română pentru diffutils +# Copyright © 2003, 2021, 2023 Free Software Foundation, Inc. +# Acest fișier este distribuit sub aceeași licență ca și pachetul diffutils +# This file is distributed under the same license as the diffutils package. +# +# Eugen Hoanca , 2003 diffutils-2.8.3. +# Remus-Gabriel Chelu , 2021-2023. +# +# Cronologia traducerii fișierului „diffutils”: +# Traducerea inițială, făcută de EH, pentru versiunea diffutils 2.8.3. +# Traducerea inițială, făcută de R-GC, pentru versiunea diffutils 3.7.41, 2021. +# Traducerea inițială, făcută de R-GC, pentru versiunea diffutils 3.8.43, 2023. +# Actualizare a traducerii pentru versiunea Y, făcută de X, Z(anul). # msgid "" msgstr "" -"Project-Id-Version: diffutils 2.8.3\n" +"Project-Id-Version: diffutils 3.8.43\n" "Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n" -"POT-Creation-Date: 2021-08-01 18:56-0700\n" -"PO-Revision-Date: 2003-08-22 08:43+0300\n" -"Last-Translator: Eugen Hoanca \n" +"POT-Creation-Date: 2023-05-21 01:51-0700\n" +"PO-Revision-Date: 2023-01-01 21:24+0100\n" +"Last-Translator: Remus-Gabriel Chelu \n" "Language-Team: Romanian \n" "Language: ro\n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=ISO-8859-2\n" +"Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : (n==0 || ((n%100) > 0 && " +"(n%100) < 20)) ? 1 : 2);\n" "X-Bugs: Report translation errors to the Language-Team address.\n" +"X-Generator: Poedit 3.2.2\n" +"X-Poedit-Bookmarks: 87,-1,-1,-1,-1,-1,-1,-1,-1,-1\n" -#: lib/argmatch.c:132 +#: lib/argmatch.c:145 #, c-format msgid "invalid argument %s for %s" -msgstr "" +msgstr "argument %s nevalid pentru %s" -#: lib/argmatch.c:133 +#: lib/argmatch.c:146 #, c-format msgid "ambiguous argument %s for %s" -msgstr "" +msgstr "argument %s ambiguu pentru %s" -#: lib/argmatch.c:152 lib/argmatch.h:223 +#: lib/argmatch.c:165 lib/argmatch.h:242 msgid "Valid arguments are:" -msgstr "" +msgstr "Argumentele valide sunt:" -#: lib/c-stack.c:187 +#: lib/c-stack.c:186 msgid "program error" msgstr "eroare de program" -#: lib/c-stack.c:188 +# Am tradus inițial ca:stivă plină(overflow), dar cu toate că mi se pare o formulă apropiată; +# am ales această variantă care reprezintă exact ce înseamnă: „stack overflow” +#: lib/c-stack.c:187 msgid "stack overflow" -msgstr "stivã plinã(overflow)" +msgstr "stivă debordată" -#: lib/error.c:195 +#: lib/error.c:193 msgid "Unknown system error" -msgstr "Eroare de sistem necunoscutã" +msgstr "Eroare de sistem necunoscută" #: lib/file-type.c:40 msgid "regular empty file" -msgstr "fiºier obiºnuit(regular) vid" +msgstr "fișier obișnuit gol" #: lib/file-type.c:40 msgid "regular file" -msgstr "fiºier obiºnuit" +msgstr "fișier obișnuit" #: lib/file-type.c:43 msgid "directory" @@ -57,11 +73,11 @@ msgstr "director" #: lib/file-type.c:46 msgid "symbolic link" -msgstr "legãturã simbolicã" +msgstr "legătură simbolică" #: lib/file-type.c:52 msgid "message queue" -msgstr "coadã(queue) de mesaje" +msgstr "coadă(queue) de mesaje" #: lib/file-type.c:55 msgid "semaphore" @@ -69,115 +85,150 @@ msgstr "semafor" #: lib/file-type.c:58 msgid "shared memory object" -msgstr "obiect memorie globalã(shared memory)" - +msgstr "obiect de memorie partajat" + +# NOTĂ: să intru în contact cu dezvoltatorii, pentru a ști ce au vrut să spună... +# Am făcut-o, m-am pus în contact cu ei: +# Mulțumiri lui Jim Meyering ce mi-a întins o mînă de ajutor și m-a „luminat”: +# a "typed memory object" is a POSIX-specified construct. See +# https://pubs.opengroup.org/onlinepubs/009695399/functions/posix_typed_mem_open.html, +# so probably deserves a literal translation. +# Am intrat în pagină, și-am găsit: +# The posix_typed_mem_open() function shall establish a connection between the typed memory object specified by the string pointed to by name and a file descriptor. It shall create an open file description that refers to the typed memory object and a file descriptor that refers to that open file description. +# Concluzia mea: „obiect de memorie tipizat” #: lib/file-type.c:61 -#, fuzzy msgid "typed memory object" -msgstr "obiect memorie globalã(shared memory)" +msgstr "obiect de memorie tipizat" #: lib/file-type.c:66 msgid "block special file" -msgstr "fiºier bloc special" +msgstr "fișier special de bloc" #: lib/file-type.c:69 msgid "character special file" -msgstr "fiºier caracter special" +msgstr "fișier special de caracter" #: lib/file-type.c:72 msgid "contiguous data" -msgstr "" +msgstr "date învecinate(în continuare)" +# primul intrat, primul ieșit(fifo=first in, first out) #: lib/file-type.c:75 msgid "fifo" msgstr "fifo" +# NOTĂ: să intru în contact cu dezvoltatorii, pentru a ști ce au vrut să spună... +# Am făcut-o, m-am pus în contact cu ei: +# Mulțumiri lui Jim Meyering ce mi-a întins o mînă de ajutor și m-a „luminat”: +# A "door" is a reference to this Solaris invention: +# https://en.wikipedia.org/wiki/Doors_(computing) +# Am intrat în pagină și-am găsit următoarea informație: +# - Doors were developed by Sun Microsystems as a core part of the Spring operating system, then added to Solaris in version 2.5 as an undocumented internal interface.[ +# - A Linux port of Doors was released in 2003, but is only available for version 2.4.18. +# Concluzia mea este că termenul se poate lăsa așa cum apare în engleză, mai ales că proiectul a fost abandonat... +# Sau, pus ca: „poartă(door)”? #: lib/file-type.c:78 msgid "door" -msgstr "" +msgstr "door" #: lib/file-type.c:81 -#, fuzzy msgid "multiplexed block special file" -msgstr "fiºier bloc special" +msgstr "fișier special de bloc multiplexat" #: lib/file-type.c:84 -#, fuzzy msgid "multiplexed character special file" -msgstr "fiºier caracter special" +msgstr "fișier special de caracter multiplexat" #: lib/file-type.c:87 msgid "multiplexed file" -msgstr "" - +msgstr "fișier multiplexat" + +# Am tras cu ochiul la traducerile celorlalți latini, și majoritatea a adoptat forma de: fișier numit / fișier denumit. A doua formă mi s-a părut „mai” corectă... +# NOTĂ: să intru în contact cu dezvoltatorii, pentru a ști ce au vrut să spună... +# Am făcut-o, m-am pus în contact cu ei: +# Mulțumiri lui Jim Meyering ce mi-a întins o mînă de +# ajutor și m-a „luminat”: +# I don't know what S_ISNAM ("named file") is, but did find a reference +# to it being Xenix-related in gdb's sources, so it's probably no longer +# relevant. +# Concluzia mea: traducerea făcută este corectă, dar intrarea(definiția) e posibil să dispară într-o versiune viitoare a „diffutils”... #: lib/file-type.c:90 -#, fuzzy msgid "named file" -msgstr "fiºier ciudat" +msgstr "fișier denumit" #: lib/file-type.c:93 -#, fuzzy msgid "network special file" -msgstr "fiºier bloc special" +msgstr "fișier special de rețea" #: lib/file-type.c:96 msgid "migrated file with data" -msgstr "" +msgstr "fișier migrat cu date" #: lib/file-type.c:99 msgid "migrated file without data" -msgstr "" +msgstr "fișier migrat fără date" #: lib/file-type.c:102 msgid "port" -msgstr "" +msgstr "port" #: lib/file-type.c:105 msgid "socket" -msgstr "socket" - +msgstr "soclu(socket)" + +# NOTĂ: să intru în contact cu dezvoltatorii, pentru a ști ce au vrut să spună... +# Am făcut-o, m-am pus în contact cu ei: +# Mulțumiri lui Jim Meyering ce mi-a întins o mînă de ajutor și m-a „luminat”: +# For whiteout, it's an old BSD-era type of file that was used to +# "remove" (actually "cause to appear to be absent") a file from an +# underlying read-only file system image. +# It's old enough that I think it is very unlikely to have been printed +# via diff tools in the last 5-10 years. +# I like what I see in fr.po for "whiteout", since the French "voilé" +# means "veiled": +# msgstr "voilé (whiteout)" #: lib/file-type.c:108 msgid "whiteout" -msgstr "" +msgstr "voalat(whiteout)" #: lib/file-type.c:110 msgid "weird file" -msgstr "fiºier ciudat" +msgstr "fișier straniu" #: lib/getopt.c:278 -#, fuzzy, c-format +#, c-format msgid "%s: option '%s%s' is ambiguous\n" -msgstr "%s: opþiunea `%s' este ambiguã\n" +msgstr "%s: opțiunea „%s%s” este ambiguă\n" #: lib/getopt.c:284 -#, fuzzy, c-format +#, c-format msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "%s: opþiunea `%s' este ambiguã\n" +msgstr "%s: opțiunea „%s%s” este ambiguă; posibilități:" #: lib/getopt.c:319 -#, fuzzy, c-format +#, c-format msgid "%s: unrecognized option '%s%s'\n" -msgstr "%s: opþiune necunoscutã `%c%s'\n" +msgstr "%s: opțiune nerecunoscută „%s%s”\n" #: lib/getopt.c:345 -#, fuzzy, c-format +#, c-format msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "%s: opþiunea `%c%s' nu permite parametri\n" +msgstr "%s: opțiunea „%s%s” nu permite un argument\n" #: lib/getopt.c:360 -#, fuzzy, c-format +#, c-format msgid "%s: option '%s%s' requires an argument\n" -msgstr "%s: opþiunea `%s' necesitã un parametru\n" +msgstr "%s: opțiunea „%s%s” necesită un argument\n" #: lib/getopt.c:621 -#, fuzzy, c-format +#, c-format msgid "%s: invalid option -- '%c'\n" -msgstr "%s: opþiune invalidã -- %c\n" +msgstr "%s: opțiune nevalidă -- „%c”\n" #: lib/getopt.c:636 lib/getopt.c:682 -#, fuzzy, c-format +#, c-format msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s: opþiunea necesitã un parametru -- %c\n" +msgstr "%s: opțiunea necesită un argument -- „%c”\n" #. TRANSLATORS: #. Get translations for open and closing quotation marks. @@ -200,134 +251,146 @@ msgstr "%s: op #. If you don't know what to put here, please see #. #. and use glyphs suitable for your language. -#: lib/quotearg.c:355 +#: lib/quotearg.c:354 msgid "`" -msgstr "" +msgstr "„" -#: lib/quotearg.c:356 +#: lib/quotearg.c:355 msgid "'" -msgstr "" +msgstr "”" -#: lib/regcomp.c:135 +#: lib/regcomp.c:122 msgid "Success" msgstr "Succes" -#: lib/regcomp.c:138 +#: lib/regcomp.c:125 msgid "No match" msgstr "Nici o potrivire" -#: lib/regcomp.c:141 +# Am aplicat informațiile găsite în pagina: +# https://ro.wikipedia.org/wiki/Expresie_regulat%C4%83 +# Contribuție: Daniel Șerbănescu +# Traducerea inițială(înainte de revizuire): +# Expresie normală nevalidă +#: lib/regcomp.c:128 msgid "Invalid regular expression" -msgstr "Expresie normalã(regular) invalidã" +msgstr "Expresie regulată nevalidă" -#: lib/regcomp.c:144 +#: lib/regcomp.c:131 msgid "Invalid collation character" -msgstr "Caracter de comparare invalid" +msgstr "Caracter de unire nevalid" -#: lib/regcomp.c:147 +#: lib/regcomp.c:134 msgid "Invalid character class name" -msgstr "Nume clasã caracter invalidã" +msgstr "Nume de clasă de caracter nevalid" -#: lib/regcomp.c:150 +#: lib/regcomp.c:137 msgid "Trailing backslash" -msgstr "Backslash de sfârºit de linie(trailing)" +msgstr "Bară oblică inversă la final de linie" -#: lib/regcomp.c:153 +#: lib/regcomp.c:140 msgid "Invalid back reference" -msgstr "Referinþã precedentã invalidã" +msgstr "Referință precedentă nevalidă" -#: lib/regcomp.c:156 -#, fuzzy +#: lib/regcomp.c:143 msgid "Unmatched [, [^, [:, [., or [=" -msgstr "[ sau [^ neînchise" +msgstr "[, [^, [:, [., sau [= neînchise" -#: lib/regcomp.c:159 +#: lib/regcomp.c:146 msgid "Unmatched ( or \\(" -msgstr "( or \\( neînchise" +msgstr "( sau \\( neînchise" -#: lib/regcomp.c:162 +#: lib/regcomp.c:149 msgid "Unmatched \\{" -msgstr "\\{ neînchisã" +msgstr "\\{ neînchisă" -#: lib/regcomp.c:165 +#: lib/regcomp.c:152 msgid "Invalid content of \\{\\}" -msgstr "Conþinut invalid al \\{\\}" +msgstr "Conținut nevalid al \\{\\}" -#: lib/regcomp.c:168 +#: lib/regcomp.c:155 msgid "Invalid range end" -msgstr "Sfârºit de domeniu invalid" +msgstr "Sfârșit de interval nevalid" -#: lib/regcomp.c:171 +# traducerea inițială: „Memorie plină” +# - părerea mea este că nu este o alegere prea reușită(plin/plină ne duce mereu cu gîndul la ceva complet preparat(ă) să (ne) țină mult..... nu este cazul ăsta +# - exhaust = terminat, obosit, istovit, vlăguit, epuizat, extenuat, golit complet; am ales ca potrivit «epuizat» +#: lib/regcomp.c:158 msgid "Memory exhausted" -msgstr "Memorie plinã" +msgstr "Memorie epuizată" -#: lib/regcomp.c:174 +#: lib/regcomp.c:161 msgid "Invalid preceding regular expression" -msgstr "Expresie normalã de precedenþã invalidã" +msgstr "Expresia regulată precedentă nevalidă" -#: lib/regcomp.c:177 +#: lib/regcomp.c:164 msgid "Premature end of regular expression" -msgstr "Sfârºit prematur de expresie normalã" +msgstr "Sfârșit prematur de expresie regulată" -#: lib/regcomp.c:180 +# Trad. anterioară:Expresie normală prea mare +# sînt de părere că o expresie normală sau nu, poate fi scurtă sau lungă (mică sau mare, în niciun caz) +#: lib/regcomp.c:167 msgid "Regular expression too big" -msgstr "Expresie normalã prea mare" +msgstr "Expresie regulată prea lungă" -#: lib/regcomp.c:183 +#: lib/regcomp.c:170 msgid "Unmatched ) or \\)" -msgstr ") or \\) nedeschise" +msgstr ") sau \\) nedeschise" -#: lib/regcomp.c:676 +# „... antecedentă” -> traducerea anterioară +# după cîte știu: +# antecedent(ă) - se referă la fapte, întâmplări anterioare unei anumite date sau stări(în popor, trăiri) ale unei persane +# cu toate că arată o anterioritate, această anterioritate nu se referă la lucruri, obiecte +#: lib/regcomp.c:650 msgid "No previous regular expression" -msgstr "Nu a existat nici o expresie normalã antecedentã" +msgstr "Nu a existat nici o expresie regulată anterioară" #: lib/xalloc-die.c:34 msgid "memory exhausted" -msgstr "memorie plinã" +msgstr "memorie epuizată" #: lib/xfreopen.c:34 msgid "stdin" -msgstr "" +msgstr "intrarea standard(stdin)" #: lib/xfreopen.c:35 msgid "stdout" -msgstr "" +msgstr "ieșirea standard(stdout)" #: lib/xfreopen.c:36 msgid "stderr" -msgstr "" +msgstr "ieșirea de eroare standard(stderr)" #: lib/xfreopen.c:37 -#, fuzzy msgid "unknown stream" -msgstr "Eroare de sistem necunoscutã" +msgstr "flux necunoscut" #: lib/xfreopen.c:38 #, c-format msgid "failed to reopen %s with mode %s" -msgstr "" +msgstr "eșuare la redeschiderea %s cu modul %s" #: lib/xstdopen.c:34 #, c-format msgid "standard file descriptors" -msgstr "" +msgstr "descriptori de fișiere standard" #: lib/version-etc.c:73 #, c-format msgid "Packaged by %s (%s)\n" -msgstr "" +msgstr "Împachetat de %s (%s)\n" #: lib/version-etc.c:76 #, c-format msgid "Packaged by %s\n" -msgstr "" +msgstr "Împachetat de %s\n" #. TRANSLATORS: Translate "(C)" to the copyright symbol #. (C-in-a-circle), if this symbol is available in the user's #. locale. Otherwise, do not translate "(C)"; leave it as-is. #: lib/version-etc.c:83 msgid "(C)" -msgstr "(C)" +msgstr "©" #. TRANSLATORS: The %s placeholder is the web address of the GPL license. #: lib/version-etc.c:88 @@ -337,24 +400,28 @@ msgid "" "This is free software: you are free to change and redistribute it.\n" "There is NO WARRANTY, to the extent permitted by law.\n" msgstr "" +"Licență GPLv3+: GNU GPL versiunea 3 sau mai recentă <%s>.\n" +"Acesta este software liber: sunteți liber să îl schimbați și să îl " +"redistribuiți.\n" +"Nu există NICIO GARANȚIE, în măsura permisă de lege.\n" #. TRANSLATORS: %s denotes an author name. #: lib/version-etc.c:105 -#, fuzzy, c-format +#, c-format msgid "Written by %s.\n" -msgstr "Scris de Thomas Lord." +msgstr "Scris de %s.\n" #. TRANSLATORS: Each %s denotes an author name. #: lib/version-etc.c:109 -#, fuzzy, c-format +#, c-format msgid "Written by %s and %s.\n" -msgstr "Scris de Randy Smith." +msgstr "Scris de %s și %s.\n" #. TRANSLATORS: Each %s denotes an author name. #: lib/version-etc.c:113 -#, fuzzy, c-format +#, c-format msgid "Written by %s, %s, and %s.\n" -msgstr "Scris de Randy Smith." +msgstr "Scris de %s, %s, și %s.\n" #. TRANSLATORS: Each %s denotes an author name. #. You can use line breaks, estimating that each author name occupies @@ -365,6 +432,8 @@ msgid "" "Written by %s, %s, %s,\n" "and %s.\n" msgstr "" +"Scris de %s, %s, %s,\n" +"și %s.\n" #. TRANSLATORS: Each %s denotes an author name. #. You can use line breaks, estimating that each author name occupies @@ -375,6 +444,8 @@ msgid "" "Written by %s, %s, %s,\n" "%s, and %s.\n" msgstr "" +"Scris de %s, %s, %s,\n" +"%s, și %s.\n" #. TRANSLATORS: Each %s denotes an author name. #. You can use line breaks, estimating that each author name occupies @@ -385,6 +456,8 @@ msgid "" "Written by %s, %s, %s,\n" "%s, %s, and %s.\n" msgstr "" +"Scris de %s, %s, %s,\n" +"%s, %s, și %s.\n" #. TRANSLATORS: Each %s denotes an author name. #. You can use line breaks, estimating that each author name occupies @@ -395,6 +468,8 @@ msgid "" "Written by %s, %s, %s,\n" "%s, %s, %s, and %s.\n" msgstr "" +"Scris de %s, %s, %s,\n" +"%s, %s, %s, și %s.\n" #. TRANSLATORS: Each %s denotes an author name. #. You can use line breaks, estimating that each author name occupies @@ -406,6 +481,9 @@ msgid "" "%s, %s, %s, %s,\n" "and %s.\n" msgstr "" +"Scris de %s, %s, %s,\n" +"%s, %s, %s, %s,\n" +"și %s.\n" #. TRANSLATORS: Each %s denotes an author name. #. You can use line breaks, estimating that each author name occupies @@ -417,6 +495,9 @@ msgid "" "%s, %s, %s, %s,\n" "%s, and %s.\n" msgstr "" +"Scris de %s, %s, %s,\n" +"%s, %s, %s, %s,\n" +"%s, și %s.\n" #. TRANSLATORS: Each %s denotes an author name. #. You can use line breaks, estimating that each author name occupies @@ -428,6 +509,9 @@ msgid "" "%s, %s, %s, %s,\n" "%s, %s, and others.\n" msgstr "" +"Scris de %s, %s, %s,\n" +"%s, %s, %s, %s,\n" +"%s, %s, și alții.\n" #. TRANSLATORS: The placeholder indicates the bug-reporting address #. for this package. Please add _another line_ saying @@ -437,546 +521,592 @@ msgstr "" #, c-format msgid "Report bugs to: %s\n" msgstr "" +"Raportați erorile din program la: %s\n" +"Raportați erorile de traducere la: \n" +# Se referă la erorile din distribuția folosită de utilizator (Debian, Fedora, OpenSUSE, Gentoo,,, sau oricare alta pe gustul său), deobicei erori de împachetare a programului. #: lib/version-etc.c:251 #, c-format msgid "Report %s bugs to: %s\n" -msgstr "" +msgstr "Raportați erorile din %s la: %s\n" #: lib/version-etc.c:255 lib/version-etc.c:257 #, c-format msgid "%s home page: <%s>\n" -msgstr "" +msgstr "Pagina principală a %s: <%s>\n" #: lib/version-etc.c:260 #, c-format msgid "General help using GNU software: <%s>\n" -msgstr "" +msgstr "Ajutor general pentru utilizarea software-ului GNU: <%s>\n" -#: src/analyze.c:454 src/diff.c:1406 +#: src/analyze.c:455 src/diff.c:1478 #, c-format msgid "Files %s and %s differ\n" -msgstr "Fiºierele %s ºi %s diferã\n" +msgstr "Fișierele %s și %s diferă\n" -#: src/analyze.c:455 +#: src/analyze.c:456 #, c-format msgid "Binary files %s and %s differ\n" -msgstr "Fiºierele binare %s ºi %s diferã\n" +msgstr "Fișierele binare %s și %s diferă\n" -#: src/analyze.c:706 src/diff3.c:1470 src/util.c:1254 +#: src/analyze.c:707 src/diff3.c:1457 src/util.c:1354 msgid "No newline at end of file" -msgstr "Nici un element de linie nouã la sfârºitul fiºierului" +msgstr "Nici un element de linie nouă la sfârșitul fișierului" #. This is a proper name. See the gettext manual, section Names. #: src/cmp.c:45 msgid "Torbjorn Granlund" -msgstr "" +msgstr "Torbjorn Granlund" #. This is a proper name. See the gettext manual, section Names. #: src/cmp.c:46 msgid "David MacKenzie" -msgstr "" +msgstr "David MacKenzie" -#: src/cmp.c:120 src/diff.c:879 src/diff3.c:467 src/sdiff.c:160 -#, fuzzy, c-format +#: src/cmp.c:124 src/diff.c:939 src/diff3.c:465 src/sdiff.c:159 +#, c-format msgid "Try '%s --help' for more information." -msgstr "Încercaþi `%s --help' pentru mai multe informaþii." +msgstr "Încercați «%s --help» pentru mai multe informații." -#: src/cmp.c:138 -#, fuzzy, c-format +#: src/cmp.c:142 +#, c-format msgid "invalid --ignore-initial value '%s'" -msgstr "invalid --se ignorã valoarea iniþialã `%s'" +msgstr "valoarea opțiunii „--ignore-initial” nu este validă „%s”" -#: src/cmp.c:148 +#: src/cmp.c:152 #, c-format msgid "options -l and -s are incompatible" -msgstr "opþiunile -l ºi -s sunt incompatibile" +msgstr "opțiunile „-l” și „-s” sunt incompatibile" -#: src/cmp.c:156 src/diff.c:887 src/diff3.c:474 src/sdiff.c:168 src/sdiff.c:316 -#: src/sdiff.c:323 src/sdiff.c:876 src/util.c:852 src/util.c:952 src/util.c:959 +#: src/cmp.c:160 src/diff.c:947 src/diff3.c:472 src/sdiff.c:167 src/sdiff.c:314 +#: src/sdiff.c:321 src/sdiff.c:873 src/util.c:952 src/util.c:1052 +#: src/util.c:1059 msgid "write failed" -msgstr "scriere eºuatã" +msgstr "scriere eșuată" -#: src/cmp.c:158 src/diff.c:889 src/diff.c:1471 src/diff3.c:476 src/sdiff.c:170 +#: src/cmp.c:162 src/diff.c:949 src/diff.c:1543 src/diff3.c:474 src/sdiff.c:169 msgid "standard output" -msgstr "ieºire(output) standard" +msgstr "ieșire standard" -#: src/cmp.c:162 -#, fuzzy +#: src/cmp.c:166 msgid "-b, --print-bytes print differing bytes" -msgstr "-b --print-bytes Tipãreºte octeþii diferiþi." +msgstr "-b, --print-bytes afișează octeții care sunt diferiți" -#: src/cmp.c:163 -#, fuzzy +# saltă sau sare primii octeți... ? +# am optat pentru prima variantă, și nu știu dacă nu era mai bine de utilizat formula: OMIS/OMITERE??? +# Decizie finală(după revizare/corectare „Mulțumesc, Daniel Șerbănescu!”): +# se omit primii SALT octeți... +# în această ordine, SALT = un număr(de octeți) +#: src/cmp.c:167 msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs" msgstr "" -"-i OMIS --ignore-initial=OMIS Omite primii octeþi OMISi din intrare(input)." +"-i, --ignore-initial=SALT omite primii SALT octeți din cele două intrări" -#: src/cmp.c:164 -#, fuzzy +#: src/cmp.c:168 msgid "" "-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n" " first SKIP2 bytes of FILE2" msgstr "" -" Omite primii OMIS1 octeþi din FIªIER1 ºi primii OMIS2 octeþi din FIªIER2" +"-i, --ignore-initial=SALT1:SALT2\n" +" omite primii SALT1 octeți din FIȘIERUL1 și " +"primii\n" +" SALT2 octeți din FIȘIERUL2" -#: src/cmp.c:166 -#, fuzzy +#: src/cmp.c:170 msgid "" "-l, --verbose output byte numbers and differing byte values" msgstr "" -"-l --verbose Tipãreºte numerele octeþilor ºi valorile octeþilor diferiþi." +"-l, --verbose afișează numerele de octeți și valorile tuturor\n" +" octeților care diferă" -#: src/cmp.c:167 -#, fuzzy +#: src/cmp.c:171 msgid "-n, --bytes=LIMIT compare at most LIMIT bytes" -msgstr "-n LIMITà --bytes=LIMITà Comparã cel mult LIMITà octeþi." +msgstr "-n, --bytes=LIMITĂ compară cel mult LIMITĂ octeți" -#: src/cmp.c:168 +#: src/cmp.c:172 msgid "-s, --quiet, --silent suppress all normal output" -msgstr "" +msgstr "-s, --quiet, --silent suprimă toate detaliile de ieșire normale" -#: src/cmp.c:169 +#: src/cmp.c:173 msgid " --help display this help and exit" -msgstr "" +msgstr " --help afișează acest mesaj de ajutor, și iese" -#: src/cmp.c:170 -#, fuzzy +#: src/cmp.c:174 msgid "-v, --version output version information and exit" -msgstr "-v --version Tipãreºte informaþii despre versiune." +msgstr "" +"-v, --version afișează informații despre versiune, și iese" -#: src/cmp.c:179 +#: src/cmp.c:183 #, c-format msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n" -msgstr "Folosire: %s [OPÞIUNE]... FIªIER1 [FIªIER2 [OMIS1 [OMIS2]]]\n" +msgstr "Utilizare: %s [OPȚIUNE]... FIŞIER1 [FIŞIER2 [SALT1 [SALT2]]]\n" -#: src/cmp.c:181 +#: src/cmp.c:185 msgid "Compare two files byte by byte." -msgstr "Comparã douã fiºiere octet cu octet." +msgstr "Compară două fișiere octet cu octet." -#: src/cmp.c:183 -#, fuzzy +#: src/cmp.c:187 msgid "" "The optional SKIP1 and SKIP2 specify the number of bytes to skip\n" "at the beginning of each file (zero by default)." msgstr "" -"OMIS1 ºi OMIS2 sunt numerele de octeþi care sã fie omiºi din fiecare fiºier." +"Parametrii opționali SALT1 și SALT2 specifică numărul de octeți\n" +"ce se saltă în fiecare fișier (valoarea predefinită este zero)." -#: src/cmp.c:186 src/diff.c:999 src/diff3.c:514 src/sdiff.c:211 +#: src/cmp.c:190 src/diff.c:1059 src/diff3.c:512 src/sdiff.c:210 msgid "" "Mandatory arguments to long options are mandatory for short options too.\n" msgstr "" +"Argumentele obligatorii pentru opțiunile lungi sunt deasemenea obligatorii\n" +"pentru opțiunile scurte.\n" -#: src/cmp.c:192 +#: src/cmp.c:196 msgid "" "SKIP values may be followed by the following multiplicative suffixes:\n" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" "GB 1,000,000,000, G 1,073,741,824, and so on for T, P, E, Z, Y." msgstr "" -"Valorile OMIS pot fi urmate de urmãtoarele sufixe multiplicative:\n" +"Valorile SALT pot fi urmate de următoarele sufixe multiplicative:\n" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" -"GB 1,000,000,000, G 1,073,741,824, ºi aºa mai departe pentru T, P, E, Z, Y." +"GB 1,000,000,000, G 1,073,741,824, și așa mai departe pentru T, P, E, Z, Y." -#: src/cmp.c:195 -#, fuzzy +#: src/cmp.c:199 msgid "If a FILE is '-' or missing, read standard input." -msgstr "" -"Dacã un FIªIER este `-' sau lipseºte, se citeºte intrarea(input) standard." +msgstr "Dacă un FIȘIER este „-” sau lipsește, se citește intrarea standard." -#: src/cmp.c:196 src/diff.c:987 src/sdiff.c:221 +#: src/cmp.c:200 src/diff.c:1047 src/sdiff.c:220 msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble." msgstr "" +"Starea de ieșire este 0 dacă intrările sunt aceleași, 1 dacă sunt diferite " +"și\n" +"2 dacă sunt probleme." -#: src/cmp.c:243 -#, fuzzy, c-format +#: src/cmp.c:247 +#, c-format msgid "invalid --bytes value '%s'" -msgstr "valoare --bytes invalidã `%s'" +msgstr "valoarea „%s”, a opțiunii „--bytes”, este nevalidă" -#: src/cmp.c:269 src/diff.c:797 src/diff3.c:361 src/sdiff.c:567 -#, fuzzy, c-format +#: src/cmp.c:273 src/diff.c:857 src/diff3.c:368 src/sdiff.c:564 +#, c-format msgid "missing operand after '%s'" -msgstr "lipseºte operandul dupã `%s'" +msgstr "lipsește operandul după „%s”" -#: src/cmp.c:281 src/diff.c:799 src/diff3.c:363 src/sdiff.c:569 -#, fuzzy, c-format +#: src/cmp.c:285 src/diff.c:859 src/diff3.c:370 src/sdiff.c:566 +#, c-format msgid "extra operand '%s'" -msgstr "operand în plus(extra) `%s'" +msgstr "operand în plus(extra) „%s”" -#: src/cmp.c:507 +#: src/cmp.c:521 #, c-format msgid "%s %s differ: byte %s, line %s\n" -msgstr "%s %s diferã: octetul %s, linia %s\n" +msgstr "%s %s diferă: octetul %s, linia %s\n" -#: src/cmp.c:523 +#: src/cmp.c:537 #, c-format msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n" -msgstr "%s %s diferã: octetul %s, linia %s este %3o %s %3o %s\n" +msgstr "%s %s diferă: octetul %s, din linia %s este %3o %s %3o %s\n" -#: src/cmp.c:580 -#, fuzzy, c-format +# EOF = End Of File +#: src/cmp.c:594 +#, c-format msgid "cmp: EOF on %s which is empty\n" -msgstr "cmp: EOF în %s\n" +msgstr "cmp: sfârșit de fișier(EOF) găsit în %s, care este gol\n" -#: src/cmp.c:594 -#, fuzzy, c-format +#: src/cmp.c:608 +#, c-format msgid "cmp: EOF on %s after byte %s, line %s\n" -msgstr "%s %s diferã: octetul %s, linia %s\n" +msgstr "cmp: sfârșit de fișier(EOF) în %s după octetul %s, linia %s\n" -#: src/cmp.c:595 -#, fuzzy, c-format +#: src/cmp.c:609 +#, c-format msgid "cmp: EOF on %s after byte %s, in line %s\n" -msgstr "%s %s diferã: octetul %s, linia %s\n" +msgstr "cmp: sfârșit de fișier(EOF) în %s după octetul %s, din linia %s\n" -#: src/cmp.c:601 -#, fuzzy, c-format +#: src/cmp.c:615 +#, c-format msgid "cmp: EOF on %s after byte %s\n" -msgstr "cmp: EOF în %s\n" +msgstr "cmp: sfârșit de fișier(EOF) găsit în %s după octetul %s\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:51 +#: src/diff.c:50 msgid "Paul Eggert" -msgstr "" +msgstr "Paul Eggert" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:52 +#: src/diff.c:51 msgid "Mike Haertel" -msgstr "" +msgstr "Mike Haertel" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:53 +#: src/diff.c:52 msgid "David Hayes" -msgstr "" +msgstr "David Hayes" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:54 +#: src/diff.c:53 msgid "Richard Stallman" -msgstr "" +msgstr "Richard Stallman" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:55 +#: src/diff.c:54 msgid "Len Tower" -msgstr "" +msgstr "Len Tower" -#: src/diff.c:355 -#, fuzzy, c-format +#: src/diff.c:365 +#, c-format msgid "invalid context length '%s'" -msgstr "lungime invalidã de context `%s'" +msgstr "lungime nevalidă a contextului „%s”" -#: src/diff.c:438 +#: src/diff.c:487 #, c-format msgid "pagination not supported on this host" -msgstr "paginaþie nesuportatã de acest host" +msgstr "sistemul acesta(gazda), nu acceptă paginarea" -#: src/diff.c:453 src/diff3.c:341 +#: src/diff.c:502 src/diff3.c:348 #, c-format msgid "too many file label options" -msgstr "prea multe opþiuni de etichete fiºier" +msgstr "prea multe opțiuni de etichetă fișier" -#: src/diff.c:530 -#, fuzzy, c-format +#: src/diff.c:579 +#, c-format msgid "invalid width '%s'" -msgstr "lungime invalidã `%s'" +msgstr "lățime nevalidă „%s”" -#: src/diff.c:534 +#: src/diff.c:583 msgid "conflicting width options" -msgstr "opþiuni de lungime în conflict" +msgstr "opțiuni de lățime în conflict" -#: src/diff.c:559 -#, fuzzy, c-format +#: src/diff.c:608 +#, c-format msgid "invalid horizon length '%s'" -msgstr "lungime de orizont invalidã `%s'" +msgstr "lungime de orizont nevalidă „%s”" -#: src/diff.c:615 -#, fuzzy, c-format +#: src/diff.c:664 +#, c-format msgid "invalid tabsize '%s'" -msgstr "mãrime tab invalidã `%s'" +msgstr "mărime tabulator nevalidă „%s”" -#: src/diff.c:619 +#: src/diff.c:668 msgid "conflicting tabsize options" -msgstr "opþiuni mãrime tab în conflict" +msgstr "opțiuni mărime tabulator în conflict" -#: src/diff.c:774 +# am tradus prima dată: X și Y amîndouă specificate +# (da, și?) «că nu-i spune mare lucru utilizatorului aplicației» +# așa că am „adoptat” această traducere: atît X cît și Y au fost specificate +#: src/diff.c:834 msgid "--from-file and --to-file both specified" -msgstr " --from-file ºi --to-file sunt specificate împreunã" +msgstr "s-a specificat atât „--from-file” cât și „--to-file”" -#: src/diff.c:893 -#, fuzzy +#: src/diff.c:953 msgid " --normal output a normal diff (the default)" -msgstr "--normal Afiºeazã un diff normal." +msgstr "" +" --normal afișează un diff normal (modul predefinit)" -#: src/diff.c:894 -#, fuzzy +#: src/diff.c:954 msgid "-q, --brief report only when files differ" -msgstr "-q --brief Afiºeazã doar dacã fiºierele diferã." +msgstr "-q, --brief raportează doar dacă fișierele diferă" -#: src/diff.c:895 -#, fuzzy +#: src/diff.c:955 msgid "-s, --report-identical-files report when two files are the same" msgstr "" -"-s --report-identical-files Raporteazã când douã fiºiere sunt asemãnãtoare." +"-s, --report-identical-files raportează când două fișiere sunt identice" -#: src/diff.c:896 +#: src/diff.c:956 msgid "" "-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context" msgstr "" +"-c, -C NUM, --context[=NUM] afișează NUM (predefinit 3) linii de " +"context\n" +" copiat" -#: src/diff.c:897 -#, fuzzy +#: src/diff.c:957 msgid "" "-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context" msgstr "" -"-w NUM --width=NUM Afiºeazã cel mult NUM (implicit 130) coloane tipãrite." +"-u, -U NUM, --unified[=NUM] afișează NUM (predefinit 3) linii de " +"context\n" +" unificat" -#: src/diff.c:898 -#, fuzzy +#: src/diff.c:958 msgid "-e, --ed output an ed script" -msgstr "-e --ed Afiºeazã un script ed." +msgstr "-e, --ed afișează un script ed" -#: src/diff.c:899 -#, fuzzy +#: src/diff.c:959 msgid "-n, --rcs output an RCS format diff" -msgstr "-n --rcs Afiºeazã un diff în format RCS." +msgstr "-n, --rcs afișează un diff în format RCS" -#: src/diff.c:900 +#: src/diff.c:960 msgid "-y, --side-by-side output in two columns" -msgstr "" +msgstr "-y, --side-by-side afișează în două coloane" -#: src/diff.c:901 -#, fuzzy +#: src/diff.c:961 msgid "" "-W, --width=NUM output at most NUM (default 130) print columns" msgstr "" -"-w NUM --width=NUM Afiºeazã cel mult NUM (implicit 130) coloane tipãrite." +"-W, --width=NUM afișează cel mult NUM (predefinit 130) " +"coloane\n" +" imprimate" -#: src/diff.c:902 -#, fuzzy +#: src/diff.c:962 msgid "" " --left-column output only the left column of common lines" -msgstr "-l --left-column Afiºeazã doar coloana din stânga a liniilor comune." +msgstr "" +" --left-column afișează doar în coloana din stânga liniile\n" +" comune" -#: src/diff.c:903 -#, fuzzy +#: src/diff.c:963 msgid " --suppress-common-lines do not output common lines" -msgstr "-s --suppress-common-lines Nu afiºa liniile comune." +msgstr " --suppress-common-lines nu afișează liniile comune" -#: src/diff.c:905 +#: src/diff.c:965 msgid "-p, --show-c-function show which C function each change is in" msgstr "" +"-p, --show-c-function afișează în ce funcție C se află fiecare " +"modi-\n" +" ficare" -#: src/diff.c:906 +#: src/diff.c:966 msgid "-F, --show-function-line=RE show the most recent line matching RE" msgstr "" +"-F, --show-function-line=ExpReg\n" +" afișează linia cea mai recentă ce se " +"potrivește\n" +" cu ExpReg" -#: src/diff.c:907 +#: src/diff.c:967 msgid "" " --label LABEL use LABEL instead of file name and timestamp\n" " (can be repeated)" msgstr "" - -#: src/diff.c:910 -#, fuzzy +" --label ETICHETA utilizează ETICHETA în loc de numele " +"fișierului\n" +" și la marca de timp (se poate repeta)" + +# Inițial, am tradus: +# expand = extinde +# După revizuire: +# expand = expande +# pentru că, alternativa, „expandează” +# mă cam zgîrîie la urechi, plus că rimează cu +# unele cuvinte ce sînt de evitat +# Modificat în final la „expandează” +#: src/diff.c:970 msgid "-t, --expand-tabs expand tabs to spaces in output" -msgstr "-t --expand-tabs Schimbã tab-urile în spaþii la ieºire(output)." +msgstr "" +"-t, --expand-tabs expandează tabulatorii la spații la ieșire" -#: src/diff.c:911 -#, fuzzy +#: src/diff.c:971 msgid "-T, --initial-tab make tabs line up by prepending a tab" -msgstr "-T --initial-tab Aliniazã tab-urile adãugând în faþã un tab." +msgstr "" +"-T, --initial-tab face ca tabulatorii să se alinieze, " +"adăugând\n" +" în față un tabulator" -#: src/diff.c:912 -#, fuzzy +#: src/diff.c:972 msgid "" " --tabsize=NUM tab stops every NUM (default 8) print columns" msgstr "" -"--tabsize=NUM Opririle tab-ului vor fi la fiecare NUM (implicit 8) coloane " -"tipãrite." +" --tabsize=NUM tabulatorul se oprește la fiecare NUM " +"(predefi-\n" +" nit 8) coloane de tipărire" -#: src/diff.c:913 +#: src/diff.c:973 msgid "" " --suppress-blank-empty suppress space or tab before empty output lines" msgstr "" +" --suppress-blank-empty suprimă spațiul sau tabulația înaintea " +"liniilor\n" +" goale de ieșire" -#: src/diff.c:914 -#, fuzzy +# De aflat ce înseamnă „pr”; pobabil „prompter”? +# Am aflat, înseamnă printer și acțiunea sa, print. +# De moment, voi lăsa traducerea așa. +#: src/diff.c:974 msgid "-l, --paginate pass output through 'pr' to paginate it" msgstr "" -"-l --paginate Trimite ieºirea(output) prin `pr' pentru a fi paginatã." +"-l, --paginate trece ieșirea prin „pr” pentru a o pagina" -#: src/diff.c:916 -#, fuzzy +#: src/diff.c:976 msgid "" "-r, --recursive recursively compare any subdirectories found" -msgstr "-r --recursive Comparã recursiv orice subdirector întâlnit." +msgstr "" +"-r, --recursive compară recursiv orice subdirector întâlnit" -#: src/diff.c:917 +#: src/diff.c:977 msgid " --no-dereference don't follow symbolic links" -msgstr "" +msgstr " --no-dereference nu urmează legăturile simbolice" -#: src/diff.c:918 -#, fuzzy +#: src/diff.c:978 msgid "-N, --new-file treat absent files as empty" -msgstr "-N --new-file Trateazã fiºierele lipsã ca vide." +msgstr "-N, --new-file tratează fișierele lipsă ca goale" -#: src/diff.c:919 -#, fuzzy +#: src/diff.c:979 msgid " --unidirectional-new-file treat absent first files as empty" -msgstr "--unidirectional-new-file Trateazã primele fiºiere lipsã ca vide." +msgstr "" +" --unidirectional-new-file tratează primele fișierele lipsă ca goale" -#: src/diff.c:920 -#, fuzzy +#: src/diff.c:980 msgid " --ignore-file-name-case ignore case when comparing file names" msgstr "" -"--ignore-file-name-case Ignorã cazul când se comparã numele de fiºiere." +" --ignore-file-name-case ignoră diferențele dintre majuscule și " +"minuscule\n" +" când se compară numele de fișiere" -#: src/diff.c:921 -#, fuzzy +#: src/diff.c:981 msgid " --no-ignore-file-name-case consider case when comparing file names" msgstr "" -"--no-ignore-file-name-case Ia în calcul cazul atunci când se comparã numele " -"de fiºiere." +" --no-ignore-file-name-case ia în calcul diferențele dintre majuscule " +"și\n" +" minuscule când se compară numele de fișiere" -#: src/diff.c:922 -#, fuzzy +#: src/diff.c:982 msgid "-x, --exclude=PAT exclude files that match PAT" -msgstr "-x TIP --exclude=TIP Exclude fiºierele care se potrivesc TIParului." +msgstr "" +"-x, --exclude=MODEL exclude fișierele care se potrivesc MODELului" -#: src/diff.c:923 -#, fuzzy +#: src/diff.c:983 msgid "" "-X, --exclude-from=FILE exclude files that match any pattern in FILE" msgstr "" -"-X FIªIER --exclude-from=FIªIER Exclude fiºierele care se potrivesc " -"oricãrui tipar din FIªIER." +"-X, --exclude-from=FILE exclude fișierele care se potrivesc " +"oricărui\n" +" tipar din FIȘIER" -#: src/diff.c:924 -#, fuzzy +#: src/diff.c:984 msgid "" "-S, --starting-file=FILE start with FILE when comparing directories" msgstr "" -"-S FIªIER --starting-file=FIªIER Începe cu FIªIER în compararea " -"directoarelor." +"-S, --starting-file=FIŞIER începe cu FIȘIER când se compară directoare" -#: src/diff.c:925 -#, fuzzy +# Nu știu dacă corect n-ar fi..; «operatorii», «operanzii», mă cam zgîrîie la ureche cînd citesc textul...! +# Trebuie să consult această temă... curînd! +#: src/diff.c:985 msgid "" " --from-file=FILE1 compare FILE1 to all operands;\n" " FILE1 can be a directory" msgstr "" -"--from-file=FIªIER1 Comparã FIªIER1 cu toþi operanzii. FIªIER1 poate fi " -"director." +" --from-file=FIŞIER1 compară FIŞIER1 cu toți operanzii;\n" +" FIŞIER1 poate să fie un director" -#: src/diff.c:927 -#, fuzzy +#: src/diff.c:987 msgid "" " --to-file=FILE2 compare all operands to FILE2;\n" " FILE2 can be a directory" msgstr "" -"--to-file=FIªIER2 Comparã toþi operanzii cu FIªIER2. FIªIER2 poate fi " -"director." +" --to-file=FIŞIER2 compară FIŞIER2 cu toți operanzii;\n" +" FIŞIER2 poate să fie un director" -#: src/diff.c:930 -#, fuzzy +#: src/diff.c:990 msgid "" "-i, --ignore-case ignore case differences in file contents" msgstr "" -"-i --ignore-case Ignorã diferenþele de caz din conþinutul fiºierului." +"-i, --ignore-case ignoră diferențele dintre majuscule și \n" +" minuscule din conținutul fișierului" -#: src/diff.c:931 -#, fuzzy +#: src/diff.c:991 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" -"-E --ignore-tab-expansion Ignorã schimbãrile produse de modificarea tab-" -"ului." +"-E, --ignore-tab-expansion ignoră modificările din cauza expandării \n" +" tabulatorului" -#: src/diff.c:932 -#, fuzzy +#: src/diff.c:992 msgid "-Z, --ignore-trailing-space ignore white space at line end" -msgstr "-w --ignore-all-space Ignorã tot spaþiul vid." +msgstr "" +"-Z, --ignore-trailing-space ignoră spațiul în alb la sfârșit de linie" -#: src/diff.c:933 -#, fuzzy +#: src/diff.c:993 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" -msgstr "-b --ignore-space-change Ignorã schimbãrile din spaþiul vid." +msgstr "" +"-b, --ignore-space-change ignoră schimbările cantității de spațiu în " +"alb" -#: src/diff.c:934 -#, fuzzy +#: src/diff.c:994 msgid "-w, --ignore-all-space ignore all white space" -msgstr "-w --ignore-all-space Ignorã tot spaþiul vid." +msgstr "-w, --ignore-all-space ignoră toate spațiile în alb" -#: src/diff.c:935 -#, fuzzy +#: src/diff.c:995 msgid "" "-B, --ignore-blank-lines ignore changes where lines are all blank" msgstr "" -"-B --ignore-blank-lines Ignorã schimbãrile unde toate liniile sunt " -"goale(blank)." +"-B, --ignore-blank-lines ignoră schimbările unde toate liniile sunt " +"goale" -#: src/diff.c:936 -#, fuzzy +# Mi s-a aprins „beculețul”, RE = RegularExpression (pentru englezi). +# Așa că: „care se potrivesc RE-ului”, nu se «potrivește», de loc. +# Pentru români, cred că „ExpNorm”, este alegerea cea mai bună; +# mă înșelam, conform paginii: +# https://ro.wikipedia.org/wiki/Expresie_regulat%C4%83, este: +# „ExpReg” +#: src/diff.c:996 msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE" msgstr "" -"-I RE --ignore-matching-lines=RE Ignorã schimbãrile la toate liniile care " -"se potrivesc RE-ului." +"-I, --ignore-matching-lines=ExpReg\n" +" ignoră modificările din toate liniile care " +"se\n" +" potrivesc cu ExpReg" -#: src/diff.c:938 -#, fuzzy +#: src/diff.c:998 msgid "-a, --text treat all files as text" -msgstr "-a --text Trateazã toate fiºierele ca text." +msgstr "" +"-a, --text tratează toate fișierele ca fiind de text" -#: src/diff.c:939 -#, fuzzy +# de revizuit.. +#: src/diff.c:999 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" -"--strip-trailing-cr Eliminã returul de car(carriage return) final la " -"intrare(input)." +" --strip-trailing-cr elimină returul de caret din intrarea dată" -#: src/diff.c:941 -#, fuzzy +#: src/diff.c:1001 msgid " --binary read and write data in binary mode" -msgstr "--binary Citeºte ºi scrie date în mod binar." +msgstr " --binary citește și scrie datele în mod binar" -#: src/diff.c:944 -#, fuzzy +#: src/diff.c:1004 msgid "" "-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs" msgstr "" -"-D NUME --ifdef=NUME Afiºeazã fiºierul rezultat(merged) pentru a arãta " -"diff-urile`#ifdef NAME'." +"-D, --ifdef=NUME generează un fișier combinat ce afișează\n" +" diferențele cu „#ifdef NAME”" -#: src/diff.c:945 -#, fuzzy +# Trebuie să investighez ce înseamnă sigla «GFMT» +# Vreo idee pentru o traducere mai bună? +#: src/diff.c:1005 msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT" msgstr "" -"--GTYPE-group-format=GFMT Similar, dar formatul de intrare GTYPE se " -"grupeazã cu GFMT." +" --GTYPE-group-format=GFMT formatează grupurile de intrare GTYPE cu GFMT" -#: src/diff.c:946 -#, fuzzy +# Trebuie să investighez ce înseamnă sigla «LFMT» +# Vreo idee pentru o traducere mai bună? +#: src/diff.c:1006 msgid " --line-format=LFMT format all input lines with LFMT" -msgstr "--line-format=LFMT Similar, dar formateazã toate liniile cu LFMT." +msgstr "" +" --line-format=LFMT formatează toate liniile de intrare cu LFMT" -#: src/diff.c:947 -#, fuzzy +# Am folosit o traducere un pic diferită față de cele două de mai de sus... +# trebuie să investighez ce înseamnă sigla «LTYPE» +#: src/diff.c:1007 msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT" msgstr "" -"--LTYPE-line-format=LFMT Similar, dar formateazã liniile de intrare LTYPE " -"cu LFMT." +" --LTYPE-line-format=LFMT formatează liniile de intrare LTYPE cu LFMT" -#: src/diff.c:948 +#: src/diff.c:1008 msgid "" " These format options provide fine-grained control over the output\n" " of diff, generalizing -D/--ifdef." msgstr "" +" Aceste opțiuni de format oferă un control fin asupra rezultatului de " +"«diff»,\n" +" generalizând „-D/--ifdef”." -#: src/diff.c:950 -#, fuzzy +#: src/diff.c:1010 msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'." msgstr "" -" LTYPE este `old', `new', sau `unchanged'. GTYPE este LTYPE sau `changed'." +" LTYPE este „old”(vechi), „new”(nou) sau „unchanged” (neschimbat).\n" +" GTYPE este precum LTYPE sau „changed” (schimbat)." -#: src/diff.c:951 -#, fuzzy +#: src/diff.c:1011 msgid "" " GFMT (only) may contain:\n" " %< lines from FILE1\n" @@ -991,36 +1121,36 @@ msgid "" " M L+1\n" " %(A=B?T:E) if A equals B then T else E" msgstr "" -" GFMT poate conþine:\n" -" %< linii din FIªIER1\n" -" %> linii din FIªIER2\n" -" %= linii comune lui FIªIER1 si FIªIER2\n" -" %[-][WIDTH][.[PREC]]{doxX}LETTER specificaþii stil printf pentru " -"LETTER\n" -" LETTERs sunt dupã cum urmeazã pentru grup nou, literã micã pentru grup " -"vechi:\n" -" F primul numãr de linie\n" -" L ultimul numãr de linie\n" +" GFMT poate conține, doar:\n" +" %< linii din FIȘIER\n" +" %> linii din FIȘIER\n" +" %= linii comune lui FIȘIER1 și FIȘIER2\n" +" %[-][LĂȚIME][.[PRECIZIE]]{doxX}LITERA specificații stil «printf» " +"pentru\n" +" LITERA\n" +" LITERA(ele) sunt după cum urmează pentru grup nou, (literă mică " +"pentru\n" +" grup vechi):\n" +" F primul număr de linie\n" +" L ultimul număr de linie\n" " N numere de linii = L-F+1\n" " E F-1\n" " M L+1" -#: src/diff.c:963 -#, fuzzy +#: src/diff.c:1023 msgid "" " LFMT (only) may contain:\n" " %L contents of line\n" " %l contents of line, excluding any trailing newline\n" " %[-][WIDTH][.[PREC]]{doxX}n printf-style spec for input line number" msgstr "" -" LFMT poate conþine:\n" -" %L conþinut de linie\n" -" %l conþinut de linie, excluzând orice caracter de linie nouã final\n" -" %[-][WIDTH][.[PREC]]{doxX}n specificaþii stil printf-pentru " -"introducerea numãrului de linie" +" LFMT poate conține, doar:\n" +" %L conținut de linie\n" +" %l conținut de linie, excluzând orice caracter de linie nouă final\n" +" %[-][LĂȚIME][.[PRECIZIE]{doxX}n specificații stil «printf» pentru\n" +" introducerea numărului de linie" -#: src/diff.c:967 -#, fuzzy +#: src/diff.c:1027 msgid "" " Both GFMT and LFMT may contain:\n" " %% %\n" @@ -1028,251 +1158,267 @@ msgid "" " %c'\\OOO' the character with octal code OOO\n" " C the character C (other characters represent themselves)" msgstr "" -" Una din GFMT sau LFMT poate conþine:\n" +" Atât GFMT cât și LFMT pot să conțină:\n" " %% %\n" " %c'C' caracterul singular C\n" -" %c'\\OOO' caracterul cu codul octal OOO" +" %c'\\OOO' caracterul cu codul octal OOO\n" +" C caracterul C (celelalte caractere se reprezintă pe ele însele)" -#: src/diff.c:973 -#, fuzzy +#: src/diff.c:1033 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "" -"-d --minimal Încearcã din greu sã gãseºti un set mai mic de schimbãri" +"-d, --minimal se străduiește să găsească un grup mai mic de " +"schimbări" -#: src/diff.c:974 -#, fuzzy +#: src/diff.c:1034 msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix" -msgstr "--horizon-lines=NUM Reþine NUM linii de prefix ºi sufix comun." +msgstr " --horizon-lines=NUM reține NUM linii de prefix și sufix comun" -#: src/diff.c:975 -#, fuzzy +#: src/diff.c:1035 msgid "" " --speed-large-files assume large files and many scattered small changes" msgstr "" -"-H --speed-large-files Presupune fiºiere mari ºi multe modificãri mici " -"împrãºtiate." +" --speed-large-files presupune că fișierele sunt mari și că " +"modificările\n" +" sunt multe, mici și împrăștiate" -#: src/diff.c:976 +#: src/diff.c:1036 msgid "" " --color[=WHEN] color output; WHEN is 'never', 'always', or " "'auto';\n" " plain --color means --color='auto'" msgstr "" +" --color[=CÂND] colorează ieșirea CÂND poate să fie " +"„never”(niciodată),\n" +" „always”(întotdeauna), sau „auto”(valoarea " +"implicită)" -#: src/diff.c:978 +#: src/diff.c:1038 msgid "" " --palette=PALETTE the colors to use when --color is active; PALETTE " "is\n" " a colon-separated list of terminfo capabilities" msgstr "" +" --palette=PALETA paleta de culori ce se utilizează când opțiunea\n" +" „--color” este prezentă; PALETA este o listă " +"separată\n" +" prin două puncte(:) de termeni(nume de culoare)" -#: src/diff.c:981 +#: src/diff.c:1041 msgid " --help display this help and exit" -msgstr "" +msgstr " --help afișează acest mesaj de ajutor și iese" -#: src/diff.c:982 -#, fuzzy +#: src/diff.c:1042 msgid "-v, --version output version information and exit" -msgstr "-v --version Tipãreºte informaþii despre versiune." +msgstr "-v, --version afișează informații despre versiune și iese" -#: src/diff.c:984 -#, fuzzy +#: src/diff.c:1044 msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'." msgstr "" -"FIªIEREle sunt `FIªIER1 FIªIER2' sau `DIR1 DIR2' sau `DIR FIªIER...' or " -"`FIªIER... DIR'." +"FIȘIERE sunt „FIȘIER1 FIȘIER2” sau „DIR1 DIR2” sau „DIR FIȘIER” sau „FIȘIER " +"DIR”." -#: src/diff.c:985 -#, fuzzy +# Nu știu cum este corect: +# - pe FIȘIER(e), sau: +# - în FIȘIER(e) +#: src/diff.c:1045 msgid "" "If --from-file or --to-file is given, there are no restrictions on FILE(s)." msgstr "" -"Dacã --from-file sau --to-file sunt precizate, nu existã restricþii pe " -"FIªIERE." +"Dacă --from-file sau --to-file sunt precizate, nu există restricții pentru " +"FIȘIER(e)." -#: src/diff.c:986 src/diff3.c:533 src/sdiff.c:220 -#, fuzzy +#: src/diff.c:1046 src/diff3.c:531 src/sdiff.c:219 msgid "If a FILE is '-', read standard input." -msgstr "Dacã FIªIER este `-', se citeºte intrarea(input) standard." +msgstr "Dacă un FIȘIER este „-”, se citește intrarea standard." -#: src/diff.c:996 +#: src/diff.c:1056 #, c-format msgid "Usage: %s [OPTION]... FILES\n" -msgstr "Folosire: %s [OPÞIUNE]... FIªIERE\n" +msgstr "Utilizare: %s [OPȚIUNE]... FIȘIERE\n" -#: src/diff.c:997 -#, fuzzy +#: src/diff.c:1057 msgid "Compare FILES line by line." -msgstr "Comparã fiºierele linie cu linie." +msgstr "Compară FIȘIERELE linie cu linie." -#: src/diff.c:1034 -#, fuzzy, c-format +# opțiunea %s are valoarea „%s” în conflict cu altă opțiune +# În realitate s-ar putea să fie: +# opțiunea %s are valoarea „%s” în conflict cu altă valoare (trebuie văzut) +#: src/diff.c:1094 +#, c-format msgid "conflicting %s option value '%s'" -msgstr "Existã un conflict cu %s în valoarea opþiunii `%s'" +msgstr "opțiunea %s are valoarea „%s” în conflict cu altă opțiune" -#: src/diff.c:1047 +#: src/diff.c:1107 #, c-format msgid "conflicting output style options" -msgstr "Conflict în opþiunile stilului de afiºare(output)" +msgstr "opțiunile stilului de afișare sunt în conflict" -#: src/diff.c:1063 -#, fuzzy, c-format +#: src/diff.c:1123 +#, c-format msgid "invalid color '%s'" -msgstr "lungime invalidã de context `%s'" +msgstr "culoare nevalidă „%s”" -#: src/diff.c:1119 src/diff.c:1329 +#: src/diff.c:1197 src/diff.c:1401 #, c-format msgid "Only in %s: %s\n" -msgstr "Doar în %s: %s\n" +msgstr "Doar în %s: %s\n" -#: src/diff.c:1253 -#, fuzzy +#: src/diff.c:1325 msgid "cannot compare '-' to a directory" -msgstr "nu se poate compara `-' cu un director" +msgstr "nu se poate compara „-” cu un director" -#: src/diff.c:1288 +#: src/diff.c:1360 msgid "-D option not supported with directories" -msgstr "opþiunea -D nu este compatibilã cu directoarele" +msgstr "opțiunea „-D” nu este compatibilă cu directoarele" -#: src/diff.c:1297 +#: src/diff.c:1369 #, c-format msgid "Common subdirectories: %s and %s\n" -msgstr "Subdirectoare comune: %s ºi %s.\n" +msgstr "Subdirectoare comune: %s și %s.\n" -#: src/diff.c:1339 src/diff.c:1389 +#: src/diff.c:1411 src/diff.c:1461 #, c-format msgid "File %s is a %s while file %s is a %s\n" -msgstr "Fiºierul %s este un %s pe când fiºierul %s este un %s.\n" +msgstr "Fișierul %s este un %s pe când fișierul %s este un %s.\n" -#: src/diff.c:1375 -#, fuzzy, c-format +#: src/diff.c:1447 +#, c-format msgid "Symbolic links %s and %s differ\n" -msgstr "Fiºierele %s ºi %s diferã\n" +msgstr "Legăturile simbolice %s și %s sunt diferite\n" -#: src/diff.c:1462 +#: src/diff.c:1534 #, c-format msgid "Files %s and %s are identical\n" -msgstr "Fiºierele %s ºi %s sunt identice\n" +msgstr "Fișierele %s și %s sunt identice\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff3.c:43 -#, fuzzy +#: src/diff3.c:51 msgid "Randy Smith" -msgstr "Scris de Randy Smith." +msgstr "Randy Smith" -#: src/diff3.c:356 +#: src/diff3.c:363 #, c-format msgid "incompatible options" -msgstr "opþiuni incompatibile" +msgstr "opțiuni incompatibile" -#: src/diff3.c:396 -#, fuzzy +#: src/diff3.c:403 msgid "'-' specified for more than one input file" -msgstr "`-' specificat pentru mai mult de un fiºier de intrare(input)" +msgstr "s-a specificat „-” pentru mai mult de un fișier de intrare" -#: src/diff3.c:447 src/diff3.c:1295 src/diff3.c:1698 src/diff3.c:1753 -#: src/sdiff.c:308 src/sdiff.c:846 src/sdiff.c:857 +#: src/diff3.c:445 src/diff3.c:1284 src/diff3.c:1683 src/diff3.c:1738 +#: src/sdiff.c:306 src/sdiff.c:843 src/sdiff.c:854 msgid "read failed" -msgstr "citire eºuatã" +msgstr "citire eșuată" -#: src/diff3.c:480 -#, fuzzy +#: src/diff3.c:478 msgid "-A, --show-all output all changes, bracketing conflicts" -msgstr "-A --show-all Afiºeazã toate modificãrile, conflictele de paranteze." +msgstr "" +"-A, --show-all afișează toate modificările, închizând " +"conflictele\n" +" între paranteze" -#: src/diff3.c:482 -#, fuzzy +#: src/diff3.c:480 msgid "" "-e, --ed output ed script incorporating changes\n" " from OLDFILE to YOURFILE into MYFILE" msgstr "" -"-e --ed Trimite(output) modificãrile nerezultate(unmerged) de la " -"FIªIER_VECHI la FIªIERUL_VOSTRU în FIªIERUL_MEU.." +"-e, --ed afișează un script «ed» ce incorporează " +"modifică-\n" +" rile dintre FIȘIERUL_VECHI și FIȘIERUL_TĂU " +"în \n" +" FIȘIERUL_MEU" -#: src/diff3.c:484 -#, fuzzy +#: src/diff3.c:482 msgid "-E, --show-overlap like -e, but bracket conflicts" msgstr "" -"-E --show-overlap Afiºeazã modificãrile nerezultate(unmerged), conflictele " -"de paranteze." +"-E, --show-overlap ca „-e”, dar închizând conflictele între " +"paranteze" -#: src/diff3.c:485 -#, fuzzy +#: src/diff3.c:483 msgid "" "-3, --easy-only like -e, but incorporate only nonoverlapping " "changes" msgstr "" -"-3 --easy-only Afiºeazã schimbãrile nesuprapuse(nonoverlapping) ºi " -"nerezultate(unmerged)." +"-3, --easy-only ca „-e”, dar încorporează doar modificările ce " +"nu\n" +" se suprapun" -#: src/diff3.c:486 -#, fuzzy +#: src/diff3.c:484 msgid "" "-x, --overlap-only like -e, but incorporate only overlapping changes" -msgstr "-x --overlap-only Afiºeazã toate schimbãrile de suprapunere." +msgstr "" +"-x, --overlap-only ca „-e”, dar încorporează doar modificările ce " +"se\n" +" suprapun" -#: src/diff3.c:487 +#: src/diff3.c:485 msgid "-X like -x, but bracket conflicts" msgstr "" +"-X ca „-x”, dar închide conflictele între paranteze" -#: src/diff3.c:488 -#, fuzzy +#: src/diff3.c:486 msgid "-i append 'w' and 'q' commands to ed scripts" -msgstr "-i Adaugã comenzile `w' ºi `q' la scripturile ed." +msgstr "" +"-i adaugă comenzile „w” și „q” la scripturile «ed»" -#: src/diff3.c:490 +#: src/diff3.c:488 msgid "" "-m, --merge output actual merged file, according to\n" " -A if no other options are given" msgstr "" +"-m, --merge afișează fișierul combinat, conform „-A” dacă " +"nu\n" +" sunt date alte opțiuni" -#: src/diff3.c:493 -#, fuzzy +#: src/diff3.c:491 msgid "-a, --text treat all files as text" -msgstr "-a --text Trateazã toate fiºierele ca text." +msgstr "-a, --text tratează toate fișierele ca text" -#: src/diff3.c:494 -#, fuzzy +# de revizuit... +#: src/diff3.c:492 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" -"--strip-trailing-cr Eliminã returul de car(carriage return) final la " -"intrare(input)." +" --strip-trailing-cr elimină returul de caret final din intrarea dată" -#: src/diff3.c:495 -#, fuzzy +#: src/diff3.c:493 msgid "-T, --initial-tab make tabs line up by prepending a tab" -msgstr "-T --initial-tab Aliniazã tab-urile adãugând în faþã un tab." +msgstr "" +"-T, --initial-tab aliniază tabulatorii adăugând în față un " +"tabulator" -#: src/diff3.c:496 -#, fuzzy +#: src/diff3.c:494 msgid " --diff-program=PROGRAM use PROGRAM to compare files" -msgstr "--diff-program=PROGRAM Foloseºte PROGRAM pentru a compara fiºierele." +msgstr "" +" --diff-program=PROGRAM utilizează PROGRAM pentru a compara fișierele" -#: src/diff3.c:497 +#: src/diff3.c:495 msgid "" "-L, --label=LABEL use LABEL instead of file name\n" " (can be repeated up to three times)" msgstr "" +"-L, --label=ETICHETA utilizează ETICHETA în loc de numele fișierului\n" +" (poate fi repetat de până la trei ori)" -#: src/diff3.c:500 +#: src/diff3.c:498 msgid " --help display this help and exit" -msgstr "" +msgstr " --help afișează acest mesaj de ajutor și iese" -#: src/diff3.c:501 -#, fuzzy +#: src/diff3.c:499 msgid "-v, --version output version information and exit" -msgstr "-v --version Tipãreºte informaþii despre versiune." +msgstr "" +"-v, --version afișează informații despre versiune și iese" -#: src/diff3.c:510 +#: src/diff3.c:508 #, c-format msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n" -msgstr "Folosire: %s [OPÞIUNE]... FIªIERUL_MEU FIªIER_VECHI FIªIERUL_TÃU\n" +msgstr "Utilizare: %s [OPȚIUNE]... FIȘIERUL_MEU FIȘIERUL_VECHI FIȘIERUL_TĂU\n" -#: src/diff3.c:512 +#: src/diff3.c:510 msgid "Compare three files line by line." -msgstr "Comparã trei fiºiere linie cu linie" +msgstr "Compară trei fișiere linie cu linie." -#: src/diff3.c:522 +#: src/diff3.c:520 msgid "" "\n" "The default output format is a somewhat human-readable representation of\n" @@ -1285,208 +1431,221 @@ msgid "" "and output the actual merged file. For unusual input, this is more\n" "robust than using ed.\n" msgstr "" +"\n" +"Formatul predefinit de ieșire este o reprezentare mai mult sau mai puțin\n" +"lizibilă a modificărilor.\n" +"\n" +"Opțiunile „-e”, „-E”, „-x”, „-X” (și corespondentele lor lungi) generează " +"un\n" +"script «ed» în locul rezultatului predefinit.\n" +"\n" +"În cele din urmă, opțiunea „-m”/„--merge” face ca «diff3» să efectueze " +"îmbinarea\n" +"intern și să afișeze fișierul îmbinat. Pentru anumite intrări, acest lucru\n" +"este mai robust decât utilizarea lui ed.\n" -#: src/diff3.c:534 +#: src/diff3.c:532 msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble." msgstr "" +"Starea de ieșire este 0 dacă are succes, 1 dacă există conflicte și 2 dacă " +"sunt\n" +"probleme." -#: src/diff3.c:727 +#: src/diff3.c:725 msgid "internal error: screwup in format of diff blocks" -msgstr "eroare internã: zãpãcealã în formatul blocurilor diff" +msgstr "eroare internă: confuzie în formatul blocurilor diff" -#: src/diff3.c:1022 +#: src/diff3.c:1015 #, c-format msgid "%s: diff failed: " -msgstr "%s: diff eºuat: " +msgstr "%s: diff eșuat: " -#: src/diff3.c:1044 +#: src/diff3.c:1037 msgid "internal error: invalid diff type in process_diff" -msgstr "eroare internã: tip diff invalid în process_diff" +msgstr "eroare internă: tip diff nevalid în process_diff" -#: src/diff3.c:1069 +#: src/diff3.c:1060 msgid "invalid diff format; invalid change separator" -msgstr "format diff invalid; separator de modificare invalid" +msgstr "format diff nevalid; separator de modificare nevalid" -#: src/diff3.c:1305 +#: src/diff3.c:1294 msgid "invalid diff format; incomplete last line" -msgstr "format diff invalid; ultimã-linie incompletã" +msgstr "format diff nevalid; ultima-linie incompletă" -#: src/diff3.c:1329 src/sdiff.c:276 src/util.c:969 -#, fuzzy, c-format +#: src/diff3.c:1318 src/sdiff.c:274 src/util.c:1069 +#, c-format msgid "subsidiary program '%s' could not be invoked" -msgstr "programul subsidiar `%s' nu a fost gãsit" +msgstr "programul subsidiar „%s'” nu a putut fi invocat" -#: src/diff3.c:1354 +#: src/diff3.c:1343 msgid "invalid diff format; incorrect leading line chars" -msgstr "format diff invalid; caractere precedente liniei incorecte" +msgstr "format diff nevalid; caractere la începutul liniei incorecte" -#: src/diff3.c:1427 +#: src/diff3.c:1416 msgid "internal error: invalid diff type passed to output" -msgstr "eroare internã: tip invalid de diff trimis spre ieºire(output)" +msgstr "eroare internă: tip nevalid de diff trimis spre ieșire" -#: src/diff3.c:1700 src/diff3.c:1757 +#: src/diff3.c:1685 src/diff3.c:1742 msgid "input file shrank" -msgstr "fiºier de intrare(input) micºorat" +msgstr "fișierul de intrare s-a micșorat" -#: src/dir.c:156 -#, fuzzy, c-format +#: src/dir.c:154 +#, c-format msgid "cannot compare file names '%s' and '%s'" -msgstr "nu se pot compara numele de fiºiere `%s' ºi `%s'" +msgstr "nu se pot compara numele de fișiere „%s” și „%s”" -#: src/dir.c:225 +#: src/dir.c:223 #, c-format msgid "%s: recursive directory loop" -msgstr "" +msgstr "%s: buclă de director recursiv" #. This is a proper name. See the gettext manual, section Names. #: src/sdiff.c:44 -#, fuzzy msgid "Thomas Lord" -msgstr "Scris de Thomas Lord." +msgstr "Thomas Lord" -#: src/sdiff.c:174 -#, fuzzy +#: src/sdiff.c:173 msgid "" "-o, --output=FILE operate interactively, sending output to FILE" msgstr "" -"-o FIªIER --output=FIªIER Opereazã interactiv, trimiþând outputul spre " -"FIªIER." +"-o, --output=FIȘIER operează interactiv, trimițând rezultatul " +"către\n" +" fișierul FIȘIER" -#: src/sdiff.c:176 -#, fuzzy +#: src/sdiff.c:175 msgid "" "-i, --ignore-case consider upper- and lower-case to be the same" msgstr "" -"-i --ignore-case Considerã majusculele ºi minusculele ca fiind aceleaºi." +"-i, --ignore-case consideră majusculele și minusculele ca fiind\n" +" același lucru" -#: src/sdiff.c:177 -#, fuzzy +#: src/sdiff.c:176 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" -"-E --ignore-tab-expansion Ignorã schimbãrile produse de modificarea tab-" -"ului." +"-E, --ignore-tab-expansion ignoră schimbările produse de expandarea " +"tabula-\n" +" torului" -#: src/sdiff.c:178 -#, fuzzy +#: src/sdiff.c:177 msgid "-Z, --ignore-trailing-space ignore white space at line end" -msgstr "-w --ignore-all-space Ignorã tot spaþiul vid." +msgstr "-Z, --ignore-trailing-space ignoră spațiul în alb la sfârșit de linie" -#: src/sdiff.c:179 -#, fuzzy +#: src/sdiff.c:178 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" -msgstr "-b --ignore-space-change Ignorã schimbãrile din spaþiul vid." +msgstr "" +"-b, --ignore-space-change ignoră diferențele din cantitatea de spațiu în " +"alb" -#: src/sdiff.c:180 -#, fuzzy +#: src/sdiff.c:179 msgid "-W, --ignore-all-space ignore all white space" -msgstr "-W --ignore-all-space Ignorã tot spaþiul gol." +msgstr "-W, --ignore-all-space ignoră tot spațiul în alb" -#: src/sdiff.c:181 -#, fuzzy +#: src/sdiff.c:180 msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank" msgstr "" -"-B --ignore-blank-lines Ignorã schimbãrile unde toate liniile sunt " -"goale(blank)." +"-B, --ignore-blank-lines ignoră schimbările în care toate liniile sunt " +"goale" -#: src/sdiff.c:182 -#, fuzzy +#: src/sdiff.c:181 msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE" msgstr "" -"-I RE --ignore-matching-lines=RE Ignorã schimbãrile la toate liniile care " -"se potrivesc RE-ului." +"-I, --ignore-matching-lines=ExpReg\n" +" ignoră modificările din toate liniile care " +"se\n" +" potrivesc cu ExpReg" -#: src/sdiff.c:183 -#, fuzzy +# de revizuit... +#: src/sdiff.c:182 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" -"--strip-trailing-cr Eliminã returul de car(carriage return) final la " -"intrare(input)." +" --strip-trailing-cr elimină returul de caret final din intrarea dată" -#: src/sdiff.c:184 -#, fuzzy +#: src/sdiff.c:183 msgid "-a, --text treat all files as text" -msgstr "-a --text Trateazã toate fiºierele ca text." +msgstr "-a, --text tratează toate fișierele ca text" -#: src/sdiff.c:186 -#, fuzzy +#: src/sdiff.c:185 msgid "" "-w, --width=NUM output at most NUM (default 130) print columns" msgstr "" -"-w NUM --width=NUM Afiºeazã cel mult NUM (implicit 130) coloane tipãrite." +"-w, --width=NUM afișează cel mult NUM (predefinit 130) coloane\n" +" imprimate" -#: src/sdiff.c:187 -#, fuzzy +#: src/sdiff.c:186 msgid "" "-l, --left-column output only the left column of common lines" -msgstr "-l --left-column Afiºeazã doar coloana din stânga a liniilor comune." +msgstr "" +"-l, --left-column afișează doar coloana din stânga a liniilor " +"comune" -#: src/sdiff.c:188 -#, fuzzy +#: src/sdiff.c:187 msgid "-s, --suppress-common-lines do not output common lines" -msgstr "-s --suppress-common-lines Nu afiºa liniile comune." +msgstr "-s, --suppress-common-lines nu afișează liniile comune" -#: src/sdiff.c:190 -#, fuzzy +# Nu sînt sigur: +# extinde tabulatorii la spatii la ieșire +# sau: +# extinde tabulatorii în spatii la ieșire +#: src/sdiff.c:189 msgid "-t, --expand-tabs expand tabs to spaces in output" -msgstr "-t --expand-tabs Schimbã tab-urile în spaþii la ieºire(output)." +msgstr "" +"-t, --expand-tabs expandează tabulatorii la spatii la ieșire" -#: src/sdiff.c:191 -#, fuzzy +#: src/sdiff.c:190 msgid "" " --tabsize=NUM tab stops at every NUM (default 8) print columns" msgstr "" -"--tabsize=NUM Opririle tab-ului vor fi la fiecare NUM (implicit 8) coloane " -"tipãrite." +" --tabsize=NUM tabulatorul se oprește la fiecare NUM (implicit " +"8)\n" +" coloane imprimate" -#: src/sdiff.c:193 -#, fuzzy +#: src/sdiff.c:192 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "" -"-d --minimal Încearcã din greu sã gãseºti un set mai mic de schimbãri" +"-d, --minimal se străduiește să găsească un grup mai mic de\n" +" schimbări" -#: src/sdiff.c:194 -#, fuzzy +#: src/sdiff.c:193 msgid "" "-H, --speed-large-files assume large files, many scattered small changes" msgstr "" -"-H --speed-large-files Presupune fiºiere mari ºi multe modificãri mici " -"împrãºtiate." +"-H, --speed-large-files presupune că fișierele sunt mari și că " +"modifică-\n" +" rile sunt multe, mici și împrăștiate" -#: src/sdiff.c:195 -#, fuzzy +#: src/sdiff.c:194 msgid " --diff-program=PROGRAM use PROGRAM to compare files" -msgstr "--diff-program=PROGRAM Foloseºte PROGRAM pentru a compara fiºierele." +msgstr "" +" --diff-program=PROGRAM utilizează PROGRAM pentru a compara fișierele" -#: src/sdiff.c:197 +#: src/sdiff.c:196 msgid " --help display this help and exit" -msgstr "" +msgstr " --help afișează acest mesaj de ajutor și iese" -#: src/sdiff.c:198 -#, fuzzy +#: src/sdiff.c:197 msgid "-v, --version output version information and exit" -msgstr "-v --version Tipãreºte informaþii despre versiune." +msgstr "" +"-v, --version afișează informații despre versiune și iese" -#: src/sdiff.c:207 +#: src/sdiff.c:206 #, c-format msgid "Usage: %s [OPTION]... FILE1 FILE2\n" -msgstr "Folosire: %s [OPÞIUNE]... FIªIER1 FIªIER2\n" +msgstr "Utilizare: %s [OPȚIUNE]... FIȘIER FIȘIER\n" -#: src/sdiff.c:209 -#, fuzzy +#: src/sdiff.c:208 msgid "Side-by-side merge of differences between FILE1 and FILE2." -msgstr "Analizã pas cu pas a diferenþelor de fiºiere." +msgstr "Combinarea pe două coloane a diferențelor dintre FIȘIER1 și FIȘIER2." -#: src/sdiff.c:330 +#: src/sdiff.c:328 msgid "cannot interactively merge standard input" -msgstr "nu poate rezulta(merge) interactiv intrarea(input) standard" +msgstr "nu se poate combina interactiv cu intrarea standard" -#: src/sdiff.c:597 +#: src/sdiff.c:594 msgid "both files to be compared are directories" -msgstr "ambele fiºiere de comparat sunt directoare" +msgstr "ambele fișiere de comparat sunt directoare" -#: src/sdiff.c:820 -#, fuzzy +#: src/sdiff.c:817 msgid "" "ed:\tEdit then use both versions, each decorated with a header.\n" "eb:\tEdit then use both versions.\n" @@ -1499,54 +1658,38 @@ msgid "" "v:\tVerbosely include common lines.\n" "q:\tQuit.\n" msgstr "" -"ed:\tEditeazã apoi foloseºte ambele versiuni, fiecare decoratã cu un cap de " -"tabel.\n" -"eb:\tEditeazã apoi foloseºte ambele versiuni.\n" -"el:\tEditeazã apoi foloseºte versiunea din stânga.\n" -"er:\tEditeazã apoi foloseºte versiunea din dreapta.\n" -"e:\tEditeazã o versiune nouã.\n" -"l:\tFoloseºte versiunea din stânga.\n" -"r:\tFoloseºte versiunea din dreapta.\n" -"s:\tInclude silenþios liniile comune.\n" +"ed:\tEditează apoi folosește ambele versiuni, fiecare decorată cu un antet.\n" +"eb:\tEditează apoi folosește ambele versiuni\n" +"el sau e1:\tEditează apoi folosește versiunea din stânga.\n" +"er sau e2:\tEditează apoi folosește versiunea din dreapta.\n" +"e:\tIgnoră ambele versiuni și editează o versiune nouă.\n" +"l sau 1:\tFolosește versiunea din stânga.\n" +"r sau 2:\tFolosește versiunea din dreapta.\n" +"s:\tInclude silențios liniile comune.\n" "v:\tInclude detaliat liniile comune.\n" -"q:\tIeºire.\n" +"q:\tIeșire.\n" -#: src/util.c:662 -#, fuzzy, c-format +#: src/util.c:755 +#, c-format msgid "unrecognized prefix: %s" -msgstr "%s: opþiune necunoscutã `--%s'\n" +msgstr "prefix nerecunoscut: %s" -#: src/util.c:692 +#: src/util.c:785 #, c-format msgid "unparsable value for --palette" -msgstr "" - -#, fuzzy -#~ msgid "invalid %s%s argument '%s'" -#~ msgstr "valoare --bytes invalidã `%s'" - -#, fuzzy -#~ msgid "%s: option '--%s' doesn't allow an argument\n" -#~ msgstr "%s: opþiunea `--%s' nu permite parametri\n" +msgstr "valoare imposibil de analizat pentru opțiunea „--palette”" -#, fuzzy -#~ msgid "%s: unrecognized option '--%s'\n" -#~ msgstr "%s: opþiune necunoscutã `--%s'\n" +#~ msgid "%s: option `--%s' doesn't allow an argument\n" +#~ msgstr "%s: opÅ£iunea `--%s' nu permite parametri\n" -#, fuzzy -#~ msgid "%s: option '-W %s' is ambiguous\n" -#~ msgstr "%s: opþiunea `-W %s' este ambiguã\n" - -#, fuzzy -#~ msgid "%s: option '-W %s' doesn't allow an argument\n" -#~ msgstr "%s: opþiunea `-W %s' nu permite parametri\n" +#~ msgid "%s: illegal option -- %c\n" +#~ msgstr "%s: opÅ£iune ilegală -- %c\n" -#, fuzzy -#~ msgid "%s: option '-W %s' requires an argument\n" -#~ msgstr "%s: opþiunea `%s' necesitã un parametru\n" +#~ msgid "%s: option `-W %s' is ambiguous\n" +#~ msgstr "%s: opÅ£iunea `-W %s' este ambiguă\n" -#~ msgid "%s: illegal option -- %c\n" -#~ msgstr "%s: opþiune ilegalã -- %c\n" +#~ msgid "%s: option `-W %s' doesn't allow an argument\n" +#~ msgstr "%s: opÅ£iunea `-W %s' nu permite parametri\n" #~ msgid "" #~ "This program comes with NO WARRANTY, to the extent permitted by law.\n" @@ -1554,41 +1697,41 @@ msgstr "" #~ "under the terms of the GNU General Public License.\n" #~ "For more information about these matters, see the files named COPYING." #~ msgstr "" -#~ "Acest program NU vine cu NICI O GARANÞIE, în mãsura permisã de lege.\n" -#~ "Puteþi redistribui copii ale acestui program\n" -#~ "sub termenii Licenþei Publice Generale GNU.\n" -#~ "Pentru mai multe informaþii despre aceste chestiuni, citiþi fiºierul " +#~ "Acest program NU vine cu NICI O GARANÅ¢IE, în măsura permisă de lege.\n" +#~ "PuteÅ£i redistribui copii ale acestui program\n" +#~ "sub termenii LicenÅ£ei Publice Generale GNU.\n" +#~ "Pentru mai multe informaÅ£ii despre aceste chestiuni, citiÅ£i fişierul " #~ "numit COPYING." #~ msgid "Written by Torbjorn Granlund and David MacKenzie." -#~ msgstr "Scris de Torbjorn Granlund ºi David MacKenzie." +#~ msgstr "Scris de Torbjorn Granlund şi David MacKenzie." #~ msgid "-i SKIP1:SKIP2 --ignore-initial=SKIP1:SKIP2" #~ msgstr "-i OMIS1:OMIS2 --ignore-initial=OMIS1:OMIS2" #~ msgid "-s --quiet --silent Output nothing; yield exit status only." #~ msgstr "" -#~ "-s --quiet --silent Nu tipãreºte nimic; anunþã(yield) doar starea de " -#~ "ieºire." +#~ "-s --quiet --silent Nu tipăreşte nimic; anunţă(yield) doar starea de " +#~ "ieşire." #~ msgid "--help Output this help." -#~ msgstr "--help Tipãreºte acest ajutor." +#~ msgstr "--help Tipăreşte acest ajutor." #~ msgid "Report bugs to ." -#~ msgstr "Raportaþi erorile(bugs)la ." +#~ msgstr "RaportaÅ£i erorile(bugs)la ." #~ msgid "" #~ "Written by Paul Eggert, Mike Haertel, David Hayes,\n" #~ "Richard Stallman, and Len Tower." #~ msgstr "" #~ "Scris de Paul Eggert, Mike Haertel, David Hayes,\n" -#~ "Richard Stallman, ºi Len Tower." +#~ "Richard Stallman, şi Len Tower." #~ msgid "`-%ld' option is obsolete; use `-%c %ld'" -#~ msgstr "`-%ld' opþiunea este învechitã; folosiþi `-%c %ld'" +#~ msgstr "`-%ld' opÅ£iunea este învechită; folosiÅ£i `-%c %ld'" #~ msgid "`-%ld' option is obsolete; omit it" -#~ msgstr "`-%ld' opþiunea este învechitã; omiteþi-o" +#~ msgstr "`-%ld' opÅ£iunea este învechită; omiteÅ£i-o" #~ msgid "" #~ "-c -C NUM --context[=NUM] Output NUM (default 3) lines of copied " @@ -1599,14 +1742,14 @@ msgstr "" #~ " -p --show-c-function Show which C function each change is in.\n" #~ " -F RE --show-function-line=RE Show the most recent line matching RE." #~ msgstr "" -#~ "-c -C NUM --context[=NUM] Tipãreºte NUM (implicit 3) linii de " +#~ "-c -C NUM --context[=NUM] Tipăreşte NUM (implicit 3) linii de " #~ "contextcopiat.\n" -#~ "-u -U NUM --unified[=NUM] Tipãreºte NUM (implicit 3) linii de " +#~ "-u -U NUM --unified[=NUM] Tipăreşte NUM (implicit 3) linii de " #~ "contextunificat.\n" -#~ " --label ETICHETà Foloseºte ETICHETà în loc de nume fiºier.\n" -#~ " -p --show-c-function Afiºeazã fiecare schimbare din fiecare funcþie " +#~ " --label ETICHETĂ Foloseşte ETICHETĂ în loc de nume fişier.\n" +#~ " -p --show-c-function Afişează fiecare schimbare din fiecare funcÅ£ie " #~ "C.\n" -#~ " -F RE --show-function-line=RE Afiºeazã cele mai recente linii care se " +#~ " -F RE --show-function-line=RE Afişează cele mai recente linii care se " #~ "potrivesc RE." #~ msgid "" @@ -1615,33 +1758,33 @@ msgstr "" #~ " --left-column Output only the left column of common lines.\n" #~ " --suppress-common-lines Do not output common lines." #~ msgstr "" -#~ "-y --side-by-side Afiºeazã pe douã coloane.\n" -#~ " -W NUM --width=NUM Afiºeazã cel mult NUM (implicit 130) coloane " -#~ "tipãrite.\n" -#~ " --left-column Afiºeazã doar coloana din stânga a liniilor comune.\n" -#~ " --suppress-common-lines Nu afiºa liniile comune." +#~ "-y --side-by-side Afişează pe două coloane.\n" +#~ " -W NUM --width=NUM Afişează cel mult NUM (implicit 130) coloane " +#~ "tipărite.\n" +#~ " --left-column Afişează doar coloana din stânga a liniilor comune.\n" +#~ " --suppress-common-lines Nu afişa liniile comune." #~ msgid "" #~ "--speed-large-files Assume large files and many scattered small changes." #~ msgstr "" -#~ "--speed-large-files Presupune fiºiere mari ºi multe modificãri mici " -#~ "împrãºtiate." +#~ "--speed-large-files Presupune fişiere mari şi multe modificări mici " +#~ "împrăştiate." #~ msgid "-X Output overlapping changes, bracketing them." -#~ msgstr "-X Afiºeazã schimbãrile de suprapunere, punându-le în paranteze." +#~ msgstr "-X Afişează schimbările de suprapunere, punându-le în paranteze." #~ msgid "-m --merge Output merged file instead of ed script (default -A)." #~ msgstr "" -#~ "-m --merge Afiºeazã fiºierul rezultat(merged) în loc de scriputl ed " +#~ "-m --merge Afişează fişierul rezultat(merged) în loc de scriputl ed " #~ "(implicit -A)." #~ msgid "-L LABEL --label=LABEL Use LABEL instead of file name." #~ msgstr "" -#~ "-L ETICHETà --label=ETICHETà Foloseºte ETICHETà în loc de numele " -#~ "fiºierului." +#~ "-L ETICHETĂ --label=ETICHETĂ Foloseşte ETICHETĂ în loc de numele " +#~ "fişierului." #~ msgid "subsidiary program `%s' failed" -#~ msgstr "programul subsidiar `%s' eºuat" +#~ msgstr "programul subsidiar `%s' eşuat" #~ msgid "subsidiary program `%s' not executable" #~ msgstr "programul subsidiar `%s' nu este executabil" diff --git a/po/ru.po b/po/ru.po index dcd40b1..c067586 100644 --- a/po/ru.po +++ b/po/ru.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: diffutils 3.7.41\n" "Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n" -"POT-Creation-Date: 2021-08-01 18:56-0700\n" +"POT-Creation-Date: 2023-05-21 01:51-0700\n" "PO-Revision-Date: 2021-07-22 12:14+0300\n" "Last-Translator: Yuri Kozlov \n" "Language-Team: Russian \n" @@ -17,33 +17,33 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Bugs: Report translation errors to the Language-Team address.\n" -"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" -"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && " +"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" "X-Generator: Lokalize 20.12.0\n" -#: lib/argmatch.c:132 +#: lib/argmatch.c:145 #, c-format msgid "invalid argument %s for %s" msgstr "неверный аргумент %s для %s" -#: lib/argmatch.c:133 +#: lib/argmatch.c:146 #, c-format msgid "ambiguous argument %s for %s" msgstr "двусмысленный аргумент %s для %s" -#: lib/argmatch.c:152 lib/argmatch.h:223 +#: lib/argmatch.c:165 lib/argmatch.h:242 msgid "Valid arguments are:" msgstr "Допустимые аргументы:" -#: lib/c-stack.c:187 +#: lib/c-stack.c:186 msgid "program error" msgstr "ошибка программы" -#: lib/c-stack.c:188 +#: lib/c-stack.c:187 msgid "stack overflow" msgstr "переполнение стека" -#: lib/error.c:195 +#: lib/error.c:193 msgid "Unknown system error" msgstr "Неизвестная системная ошибка" @@ -199,83 +199,83 @@ msgstr "%s: для параметра требуется аргумент — « #. If you don't know what to put here, please see #. #. and use glyphs suitable for your language. -#: lib/quotearg.c:355 +#: lib/quotearg.c:354 msgid "`" msgstr "?" -#: lib/quotearg.c:356 +#: lib/quotearg.c:355 msgid "'" msgstr "?" -#: lib/regcomp.c:135 +#: lib/regcomp.c:122 msgid "Success" msgstr "Выполнено успешно" -#: lib/regcomp.c:138 +#: lib/regcomp.c:125 msgid "No match" msgstr "Совпадений нет" -#: lib/regcomp.c:141 +#: lib/regcomp.c:128 msgid "Invalid regular expression" msgstr "Неверное регулярное выражение" -#: lib/regcomp.c:144 +#: lib/regcomp.c:131 msgid "Invalid collation character" msgstr "Недопустимый для сортировки символ" -#: lib/regcomp.c:147 +#: lib/regcomp.c:134 msgid "Invalid character class name" msgstr "Неверное имя класса символа" -#: lib/regcomp.c:150 +#: lib/regcomp.c:137 msgid "Trailing backslash" msgstr "Обратная косая черта стоит последней" -#: lib/regcomp.c:153 +#: lib/regcomp.c:140 msgid "Invalid back reference" msgstr "Неверная ссылка" -#: lib/regcomp.c:156 +#: lib/regcomp.c:143 msgid "Unmatched [, [^, [:, [., or [=" msgstr "Непарная [, [^, [:, [. или [=" -#: lib/regcomp.c:159 +#: lib/regcomp.c:146 msgid "Unmatched ( or \\(" msgstr "Непарная ( или \\(" -#: lib/regcomp.c:162 +#: lib/regcomp.c:149 msgid "Unmatched \\{" msgstr "Непарная \\{" -#: lib/regcomp.c:165 +#: lib/regcomp.c:152 msgid "Invalid content of \\{\\}" msgstr "Неверное содержимое \\{\\}" -#: lib/regcomp.c:168 +#: lib/regcomp.c:155 msgid "Invalid range end" msgstr "Неверный нижний предел" -#: lib/regcomp.c:171 +#: lib/regcomp.c:158 msgid "Memory exhausted" msgstr "Оперативная память исчерпана" -#: lib/regcomp.c:174 +#: lib/regcomp.c:161 msgid "Invalid preceding regular expression" msgstr "Неверное предшествующее регулярное выражение" -#: lib/regcomp.c:177 +#: lib/regcomp.c:164 msgid "Premature end of regular expression" msgstr "Преждевременный конец регулярного выражения" -#: lib/regcomp.c:180 +#: lib/regcomp.c:167 msgid "Regular expression too big" msgstr "Регулярное выражение слишком велико" -#: lib/regcomp.c:183 +#: lib/regcomp.c:170 msgid "Unmatched ) or \\)" msgstr "Непарная ) или \\)" -#: lib/regcomp.c:676 +#: lib/regcomp.c:650 msgid "No previous regular expression" msgstr "Регулярное выражение не было задано раньше" @@ -470,17 +470,17 @@ msgstr "Домашняя страница %s: <%s>\n" msgid "General help using GNU software: <%s>\n" msgstr "Справка по работе с программами GNU: <%s>\n" -#: src/analyze.c:454 src/diff.c:1406 +#: src/analyze.c:455 src/diff.c:1478 #, c-format msgid "Files %s and %s differ\n" msgstr "Файлы %s и %s различаются\n" -#: src/analyze.c:455 +#: src/analyze.c:456 #, c-format msgid "Binary files %s and %s differ\n" msgstr "Двоичные файлы %s и %s различаются\n" -#: src/analyze.c:706 src/diff3.c:1470 src/util.c:1254 +#: src/analyze.c:707 src/diff3.c:1457 src/util.c:1354 msgid "No newline at end of file" msgstr "В конце файла нет новой строки" @@ -494,39 +494,40 @@ msgstr "Торбьёрн Гронлунд (Torbjorn Granlund)" msgid "David MacKenzie" msgstr "Дэвид Маккензи (David MacKenzie)" -#: src/cmp.c:120 src/diff.c:879 src/diff3.c:467 src/sdiff.c:160 +#: src/cmp.c:124 src/diff.c:939 src/diff3.c:465 src/sdiff.c:159 #, c-format msgid "Try '%s --help' for more information." msgstr "По команде ?%s --help? можно получить дополнительную информацию." -#: src/cmp.c:138 +#: src/cmp.c:142 #, c-format msgid "invalid --ignore-initial value '%s'" msgstr "недопустимое для --ignore-initial значение ?%s?" -#: src/cmp.c:148 +#: src/cmp.c:152 #, c-format msgid "options -l and -s are incompatible" msgstr "ключи -l и -s несовместимы" -#: src/cmp.c:156 src/diff.c:887 src/diff3.c:474 src/sdiff.c:168 src/sdiff.c:316 -#: src/sdiff.c:323 src/sdiff.c:876 src/util.c:852 src/util.c:952 src/util.c:959 +#: src/cmp.c:160 src/diff.c:947 src/diff3.c:472 src/sdiff.c:167 src/sdiff.c:314 +#: src/sdiff.c:321 src/sdiff.c:873 src/util.c:952 src/util.c:1052 +#: src/util.c:1059 msgid "write failed" msgstr "ошибка при записи" -#: src/cmp.c:158 src/diff.c:889 src/diff.c:1471 src/diff3.c:476 src/sdiff.c:170 +#: src/cmp.c:162 src/diff.c:949 src/diff.c:1543 src/diff3.c:474 src/sdiff.c:169 msgid "standard output" msgstr "стандартный вывод" -#: src/cmp.c:162 +#: src/cmp.c:166 msgid "-b, --print-bytes print differing bytes" msgstr "-b, --print-bytes выводить различающиеся байты" -#: src/cmp.c:163 +#: src/cmp.c:167 msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs" msgstr "-i, --ignore-initial=Н пропустить первые Н байт ввода" -#: src/cmp.c:164 +#: src/cmp.c:168 msgid "" "-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n" " first SKIP2 bytes of FILE2" @@ -535,38 +536,38 @@ msgstr "" " пропустить первые Н1 байт файла ФАЙЛ1\n" " и первые Н2 байт файла ФАЙЛ2" -#: src/cmp.c:166 +#: src/cmp.c:170 msgid "" "-l, --verbose output byte numbers and differing byte values" msgstr "" "-l, --verbose выводить номера и значения всех различающихся байт" -#: src/cmp.c:167 +#: src/cmp.c:171 msgid "-n, --bytes=LIMIT compare at most LIMIT bytes" msgstr "-n, --bytes=Н сравнивать не более Н байт" -#: src/cmp.c:168 +#: src/cmp.c:172 msgid "-s, --quiet, --silent suppress all normal output" msgstr "-s, --quiet, --silent не показывать обычные сообщения" -#: src/cmp.c:169 +#: src/cmp.c:173 msgid " --help display this help and exit" msgstr " --help показать эту справку и выйти" -#: src/cmp.c:170 +#: src/cmp.c:174 msgid "-v, --version output version information and exit" msgstr "-v, --version показать информацию о версии и выйти" -#: src/cmp.c:179 +#: src/cmp.c:183 #, c-format msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n" msgstr "Использование: %s [КЛЮЧ]? ФАЙЛ1 [ФАЙЛ2 [Н1 [Н2]]]\n" -#: src/cmp.c:181 +#: src/cmp.c:185 msgid "Compare two files byte by byte." msgstr "Побайтово сравнивает два файла." -#: src/cmp.c:183 +#: src/cmp.c:187 msgid "" "The optional SKIP1 and SKIP2 specify the number of bytes to skip\n" "at the beginning of each file (zero by default)." @@ -574,13 +575,13 @@ msgstr "" "Необязательные Н1 и Н2 ? это число байт, которые следует пропустить\n" "в каждом файле (по умолчанию 0)." -#: src/cmp.c:186 src/diff.c:999 src/diff3.c:514 src/sdiff.c:211 +#: src/cmp.c:190 src/diff.c:1059 src/diff3.c:512 src/sdiff.c:210 msgid "" "Mandatory arguments to long options are mandatory for short options too.\n" msgstr "" "Аргументы, обязательные для длинных параметров, обязательны и для коротких.\n" -#: src/cmp.c:192 +#: src/cmp.c:196 msgid "" "SKIP values may be followed by the following multiplicative suffixes:\n" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" @@ -590,199 +591,199 @@ msgstr "" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" "GB 1,000,000,000, G 1,073,741,824, и так далее для T, P, E, Z, Y." -#: src/cmp.c:195 +#: src/cmp.c:199 msgid "If a FILE is '-' or missing, read standard input." msgstr "Если ФАЙЛ не задан или задан как ?-?, то читается стандартный ввод." -#: src/cmp.c:196 src/diff.c:987 src/sdiff.c:221 +#: src/cmp.c:200 src/diff.c:1047 src/sdiff.c:220 msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble." msgstr "" "Выходной статус равен 0, если входные файлы идентичны, 1 ? если\n" "различаются, и 2 в случае неполадок." -#: src/cmp.c:243 +#: src/cmp.c:247 #, c-format msgid "invalid --bytes value '%s'" msgstr "недопустимое значение --bytes ?%s?" -#: src/cmp.c:269 src/diff.c:797 src/diff3.c:361 src/sdiff.c:567 +#: src/cmp.c:273 src/diff.c:857 src/diff3.c:368 src/sdiff.c:564 #, c-format msgid "missing operand after '%s'" msgstr "пропущен операнд после ?%s?" -#: src/cmp.c:281 src/diff.c:799 src/diff3.c:363 src/sdiff.c:569 +#: src/cmp.c:285 src/diff.c:859 src/diff3.c:370 src/sdiff.c:566 #, c-format msgid "extra operand '%s'" msgstr "лишний операнд ?%s?" -#: src/cmp.c:507 +#: src/cmp.c:521 #, c-format msgid "%s %s differ: byte %s, line %s\n" msgstr "%s %s различаются: байт %s, строка %s\n" -#: src/cmp.c:523 +#: src/cmp.c:537 #, c-format msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n" msgstr "%s %s различаются: байт %s, строка %s равен %3o %s %3o %s\n" -#: src/cmp.c:580 +#: src/cmp.c:594 #, c-format msgid "cmp: EOF on %s which is empty\n" msgstr "cmp: EOF в %s, который пуст\n" -#: src/cmp.c:594 +#: src/cmp.c:608 #, c-format msgid "cmp: EOF on %s after byte %s, line %s\n" msgstr "cmp: EOF в %s после байта %s, строка %s\n" -#: src/cmp.c:595 +#: src/cmp.c:609 #, c-format msgid "cmp: EOF on %s after byte %s, in line %s\n" msgstr "cmp: EOF в %s после байта %s в строке %s\n" -#: src/cmp.c:601 +#: src/cmp.c:615 #, c-format msgid "cmp: EOF on %s after byte %s\n" msgstr "cmp: EOF в %s после байта %s\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:51 +#: src/diff.c:50 msgid "Paul Eggert" msgstr "Поль Эггерт (Paul Eggert)" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:52 +#: src/diff.c:51 msgid "Mike Haertel" msgstr "Майк Гертель (Mike Haertel)" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:53 +#: src/diff.c:52 msgid "David Hayes" msgstr "Дэвид Хейз (David Hayes)" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:54 +#: src/diff.c:53 msgid "Richard Stallman" msgstr "Ричард Столлман (Richard Stallman)" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:55 +#: src/diff.c:54 msgid "Len Tower" msgstr "Лен Тауэр (Len Tower)" -#: src/diff.c:355 +#: src/diff.c:365 #, c-format msgid "invalid context length '%s'" msgstr "недопустимая длина контекста ?%s?" -#: src/diff.c:438 +#: src/diff.c:487 #, c-format msgid "pagination not supported on this host" msgstr "разбиение на страницы не поддерживается на данной машине" -#: src/diff.c:453 src/diff3.c:341 +#: src/diff.c:502 src/diff3.c:348 #, c-format msgid "too many file label options" msgstr "слишком много ключей задающих метки файлов" -#: src/diff.c:530 +#: src/diff.c:579 #, c-format msgid "invalid width '%s'" msgstr "недопустимая ширина ?%s?" -#: src/diff.c:534 +#: src/diff.c:583 msgid "conflicting width options" msgstr "противоречивые ключи задания ширины" -#: src/diff.c:559 +#: src/diff.c:608 #, c-format msgid "invalid horizon length '%s'" msgstr "недопустимая длина горизонта ?%s?" -#: src/diff.c:615 +#: src/diff.c:664 #, c-format msgid "invalid tabsize '%s'" msgstr "недопустимая ширина табуляции ?%s?" -#: src/diff.c:619 +#: src/diff.c:668 msgid "conflicting tabsize options" msgstr "противоречивые ключи задания ширины табуляции" -#: src/diff.c:774 +#: src/diff.c:834 msgid "--from-file and --to-file both specified" msgstr "необходимо задать как --from-file, так и --to-file" -#: src/diff.c:893 +#: src/diff.c:953 msgid " --normal output a normal diff (the default)" msgstr " --normal выводить в обычном формате diff (по умолчанию)" -#: src/diff.c:894 +#: src/diff.c:954 msgid "-q, --brief report only when files differ" msgstr "-q, --brief напечатать только различаются ли файлы" -#: src/diff.c:895 +#: src/diff.c:955 msgid "-s, --report-identical-files report when two files are the same" msgstr "" "-s, --report-identical-files\n" " сообщать об одинаковых файлах" -#: src/diff.c:896 +#: src/diff.c:956 msgid "" "-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context" msgstr "" "-c, -C Н, --context[=Н] выводить по Н (по умолчанию 3) строк\n" " копируемого контекста" -#: src/diff.c:897 +#: src/diff.c:957 msgid "" "-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context" msgstr "" "-u, -U Н, --unified[=Н] выводить по Н (по умолчанию 3) строк\n" " объединенного контекста" -#: src/diff.c:898 +#: src/diff.c:958 msgid "-e, --ed output an ed script" msgstr "-e, --ed выводить как сценарий ed" -#: src/diff.c:899 +#: src/diff.c:959 msgid "-n, --rcs output an RCS format diff" msgstr "-n, --rcs выводить в формате RCS diff" -#: src/diff.c:900 +#: src/diff.c:960 msgid "-y, --side-by-side output in two columns" msgstr "-y, --side-by-side выводить в две колонки" -#: src/diff.c:901 +#: src/diff.c:961 msgid "" "-W, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-W, --width=Н выводить не более Н знаков в строке\n" " (по умолчанию 130)" -#: src/diff.c:902 +#: src/diff.c:962 msgid "" " --left-column output only the left column of common lines" msgstr " --left-column выводить только левую колонку общих строк" -#: src/diff.c:903 +#: src/diff.c:963 msgid " --suppress-common-lines do not output common lines" msgstr "" " --suppress-common-lines\n" " не выводить общие строки" -#: src/diff.c:905 +#: src/diff.c:965 msgid "-p, --show-c-function show which C function each change is in" msgstr "" "-p, --show-c-function отображать в какой функции Си находится\n" " каждое изменение" -#: src/diff.c:906 +#: src/diff.c:966 msgid "-F, --show-function-line=RE show the most recent line matching RE" msgstr "" "-F, --show-function-line=RE\n" " отображать последнюю совпавшую с RE строку" -#: src/diff.c:907 +#: src/diff.c:967 msgid "" " --label LABEL use LABEL instead of file name and timestamp\n" " (can be repeated)" @@ -790,24 +791,24 @@ msgstr "" " --label МЕТКА использовать МЕТКУ вместо имени файла и времени\n" " (может повторяться)" -#: src/diff.c:910 +#: src/diff.c:970 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "" "-t, --expand-tabs раскрывать при выводе символы табуляции в пробелы" -#: src/diff.c:911 +#: src/diff.c:971 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T, --initial-tab выравнивать строки, добавляя в начало символ " "табуляции" -#: src/diff.c:912 +#: src/diff.c:972 msgid "" " --tabsize=NUM tab stops every NUM (default 8) print columns" msgstr "" " --tabsize=Н табуляция через каждые Н знаков (по умолчанию 8)" -#: src/diff.c:913 +#: src/diff.c:973 msgid "" " --suppress-blank-empty suppress space or tab before empty output lines" msgstr "" @@ -815,61 +816,61 @@ msgstr "" " не вставлять пробел или табуляцию перед\n" " выводом пустых строк" -#: src/diff.c:914 +#: src/diff.c:974 msgid "-l, --paginate pass output through 'pr' to paginate it" msgstr "-l, --paginate направить вывод в pr для разбиения на страницы" -#: src/diff.c:916 +#: src/diff.c:976 msgid "" "-r, --recursive recursively compare any subdirectories found" msgstr "-r, --recursive рекурсивно сравнивать подкаталоги" -#: src/diff.c:917 +#: src/diff.c:977 msgid " --no-dereference don't follow symbolic links" msgstr " --no-dereference не переходить по символьным ссылкам" -#: src/diff.c:918 +#: src/diff.c:978 msgid "-N, --new-file treat absent files as empty" msgstr "-N, --new-file воспринимать несуществующие файлы как пустые" -#: src/diff.c:919 +#: src/diff.c:979 msgid " --unidirectional-new-file treat absent first files as empty" msgstr "" " --unidirectional-new-file\n" " воспринимать несуществующие первые файлы как пустые" -#: src/diff.c:920 +#: src/diff.c:980 msgid " --ignore-file-name-case ignore case when comparing file names" msgstr "" " --ignore-file-name-case\n" " игнорировать регистр в именах файлов" -#: src/diff.c:921 +#: src/diff.c:981 msgid " --no-ignore-file-name-case consider case when comparing file names" msgstr "" " --no-ignore-file-name-case\n" " учитывать регистр в именах файлов" -#: src/diff.c:922 +#: src/diff.c:982 msgid "-x, --exclude=PAT exclude files that match PAT" msgstr "" "-x, --exclude=ОБРАЗЕЦ исключить файлы, чьи имена совпадают с ОБРАЗЦОМ" -#: src/diff.c:923 +#: src/diff.c:983 msgid "" "-X, --exclude-from=FILE exclude files that match any pattern in FILE" msgstr "" "-X, --exclude-from=ФАЙЛ исключить файлы с именами, совпадающими\n" " с любым образцом из ФАЙЛА" -#: src/diff.c:924 +#: src/diff.c:984 msgid "" "-S, --starting-file=FILE start with FILE when comparing directories" msgstr "" "-S, --starting-file=ФАЙЛ\n" " при сравнении каталогов начать с ФАЙЛА" -#: src/diff.c:925 +#: src/diff.c:985 msgid "" " --from-file=FILE1 compare FILE1 to all operands;\n" " FILE1 can be a directory" @@ -877,7 +878,7 @@ msgstr "" " --from-file=ФАЙЛ1 сравнить ФАЙЛ1 со всеми операндами;\n" " ФАЙЛ1 может быть каталогом" -#: src/diff.c:927 +#: src/diff.c:987 msgid "" " --to-file=FILE2 compare all operands to FILE2;\n" " FILE2 can be a directory" @@ -885,88 +886,88 @@ msgstr "" " --to-file=ФАЙЛ2 сравнить все операнды с ФАЙЛОМ2;\n" " ФАЙЛ2 может быть каталогом" -#: src/diff.c:930 +#: src/diff.c:990 msgid "" "-i, --ignore-case ignore case differences in file contents" msgstr "-i, --ignore-case игнорировать регистр в содержимом файла" -#: src/diff.c:931 +#: src/diff.c:991 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E, --ignore-tab-expansion\n" " игнорировать изменения, вызванные раскрытием " "табуляции" -#: src/diff.c:932 +#: src/diff.c:992 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "" "-Z, --ignore-trailing-space\n" " игнорировать пробельные символы в конце строки" -#: src/diff.c:933 +#: src/diff.c:993 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "" "-b, --ignore-space-change\n" " игнорировать изменения количества пробельных символов" -#: src/diff.c:934 +#: src/diff.c:994 msgid "-w, --ignore-all-space ignore all white space" msgstr "-w, --ignore-all-space игнорировать все пробельные символы" -#: src/diff.c:935 +#: src/diff.c:995 msgid "" "-B, --ignore-blank-lines ignore changes where lines are all blank" msgstr "" "-B, --ignore-blank-lines\n" " игнорировать изменения количества пустых строк" -#: src/diff.c:936 +#: src/diff.c:996 msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE" msgstr "" "-I, --ignore-matching-lines=RE\n" " игнорировать изменения строк, совпадающих с RE" -#: src/diff.c:938 +#: src/diff.c:998 msgid "-a, --text treat all files as text" msgstr "-a, --text считать все файлы текстовыми" -#: src/diff.c:939 +#: src/diff.c:999 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr " --strip-trailing-cr удалять из ввода завершающий возврат каретки" -#: src/diff.c:941 +#: src/diff.c:1001 msgid " --binary read and write data in binary mode" msgstr " --binary читать и записывать файлы в двоичном режиме" -#: src/diff.c:944 +#: src/diff.c:1004 msgid "" "-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs" msgstr "" "-D, --ifdef=ИМЯ выводить заплаты, использующие конструкцию ?#ifdef " "ИМЯ?" -#: src/diff.c:945 +#: src/diff.c:1005 msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT" msgstr "" " --GTYPE-group-format=GFMT\n" " форматировать входные группы типа GTYPE\n" " в соответствии GFMT" -#: src/diff.c:946 +#: src/diff.c:1006 msgid " --line-format=LFMT format all input lines with LFMT" msgstr "" " --line-format=LFMT форматировать все входные строки в соответствии с " "LFMT" -#: src/diff.c:947 +#: src/diff.c:1007 msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT" msgstr "" " --LTYPE-line-format=LFMT\n" " форматировать входные строки типа LTYPE\n" " в соответствии LFMT" -#: src/diff.c:948 +#: src/diff.c:1008 msgid "" " These format options provide fine-grained control over the output\n" " of diff, generalizing -D/--ifdef." @@ -974,13 +975,13 @@ msgstr "" "Параметры форматирования предоставляют точный контроль над конечным diff\n" "обобщающими -D/--ifdef." -#: src/diff.c:950 +#: src/diff.c:1010 msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'." msgstr "" " LTYPE может быть ?old?, ?new? или ?unchanged?.\n" " Значение GTYPE те же или ?changed?." -#: src/diff.c:951 +#: src/diff.c:1011 msgid "" " GFMT (only) may contain:\n" " %< lines from FILE1\n" @@ -1009,7 +1010,7 @@ msgstr "" " M L+1\n" " %(A=B?T:E) если A равно B, то T, иначе E" -#: src/diff.c:963 +#: src/diff.c:1023 msgid "" " LFMT (only) may contain:\n" " %L contents of line\n" @@ -1021,7 +1022,7 @@ msgstr "" " %l содержимое строки, исключая все конечные символы новой строки\n" " %[-][ШИРИНА][.[ТОЧН]]{doxX}n формат номера входной строки в стиле printf" -#: src/diff.c:967 +#: src/diff.c:1027 msgid "" " Both GFMT and LFMT may contain:\n" " %% %\n" @@ -1035,23 +1036,23 @@ msgstr "" " %c'\\OOO' символ в восьмеричным коде OOO\n" " C символ C (символы, представляющие сами себя)" -#: src/diff.c:973 +#: src/diff.c:1033 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "-d, --minimal пытаться найти наименьший набор изменений" -#: src/diff.c:974 +#: src/diff.c:1034 msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix" msgstr "" " --horizon-lines=Н оставлять Н общих строк до и после различающихся" -#: src/diff.c:975 +#: src/diff.c:1035 msgid "" " --speed-large-files assume large files and many scattered small changes" msgstr "" " --speed-large-files предполагать, что файлы большие и есть много\n" " разбросанных мелких изменений" -#: src/diff.c:976 +#: src/diff.c:1036 msgid "" " --color[=WHEN] color output; WHEN is 'never', 'always', or " "'auto';\n" @@ -1060,7 +1061,7 @@ msgstr "" " --color[=КОГДА] вывод в цвете; КОГДА может быть «never», «always»\n" " или «auto»; без уточнения используется --color='auto'" -#: src/diff.c:978 +#: src/diff.c:1038 msgid "" " --palette=PALETTE the colors to use when --color is active; PALETTE " "is\n" @@ -1069,112 +1070,112 @@ msgstr "" " --palette=ПАЛИТРА набор цветов при активном --color; ПАЛИТРА это\n" " список свойств terminfo через двоеточие" -#: src/diff.c:981 +#: src/diff.c:1041 msgid " --help display this help and exit" msgstr " --help показать эту справку и выйти" -#: src/diff.c:982 +#: src/diff.c:1042 msgid "-v, --version output version information and exit" msgstr "-v, --version показать информацию о версии и выйти" -#: src/diff.c:984 +#: src/diff.c:1044 msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'." msgstr "" "ФАЙЛЫ это ?ФАЙЛ1 ФАЙЛ2?, ?КАТАЛОГ1 КАТАЛОГ2?, ?КАТАЛОГ ФАЙЛ??\n" "или ?ФАЙЛ? КАТАЛОГ?." -#: src/diff.c:985 +#: src/diff.c:1045 msgid "" "If --from-file or --to-file is given, there are no restrictions on FILE(s)." msgstr "Если задан --from-file или --to-file, то на ФАЙЛЫ нет ограничений." -#: src/diff.c:986 src/diff3.c:533 src/sdiff.c:220 +#: src/diff.c:1046 src/diff3.c:531 src/sdiff.c:219 msgid "If a FILE is '-', read standard input." msgstr "Если ФАЙЛ задан как ?-?, читает стандартный ввод." -#: src/diff.c:996 +#: src/diff.c:1056 #, c-format msgid "Usage: %s [OPTION]... FILES\n" msgstr "Использование: %s [КЛЮЧ]? ФАЙЛЫ\n" -#: src/diff.c:997 +#: src/diff.c:1057 msgid "Compare FILES line by line." msgstr "Построчно сравнивает ФАЙЛЫ." -#: src/diff.c:1034 +#: src/diff.c:1094 #, c-format msgid "conflicting %s option value '%s'" msgstr "противоречивое значение %s для ключа ?%s?" -#: src/diff.c:1047 +#: src/diff.c:1107 #, c-format msgid "conflicting output style options" msgstr "противоречивые ключи задания стиля вывода" -#: src/diff.c:1063 +#: src/diff.c:1123 #, c-format msgid "invalid color '%s'" msgstr "неправильное указание цвета ?%s?" -#: src/diff.c:1119 src/diff.c:1329 +#: src/diff.c:1197 src/diff.c:1401 #, c-format msgid "Only in %s: %s\n" msgstr "Только в %s: %s\n" -#: src/diff.c:1253 +#: src/diff.c:1325 msgid "cannot compare '-' to a directory" msgstr "невозможно сравнить ?-? с каталогом" -#: src/diff.c:1288 +#: src/diff.c:1360 msgid "-D option not supported with directories" msgstr "ключ -D не поддерживается для каталогов" -#: src/diff.c:1297 +#: src/diff.c:1369 #, c-format msgid "Common subdirectories: %s and %s\n" msgstr "Общие подкаталоги: %s и %s\n" -#: src/diff.c:1339 src/diff.c:1389 +#: src/diff.c:1411 src/diff.c:1461 #, c-format msgid "File %s is a %s while file %s is a %s\n" msgstr "Файл %s это %s, тогда как файл %s ? %s\n" -#: src/diff.c:1375 +#: src/diff.c:1447 #, c-format msgid "Symbolic links %s and %s differ\n" msgstr "Символические ссылки %s и %s различаются\n" -#: src/diff.c:1462 +#: src/diff.c:1534 #, c-format msgid "Files %s and %s are identical\n" msgstr "Файлы %s и %s идентичны\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff3.c:43 +#: src/diff3.c:51 msgid "Randy Smith" msgstr "Рэнди Смит (Randy Smith)" -#: src/diff3.c:356 +#: src/diff3.c:363 #, c-format msgid "incompatible options" msgstr "несовместимые ключи" -#: src/diff3.c:396 +#: src/diff3.c:403 msgid "'-' specified for more than one input file" msgstr "?-? задан для более одного входного файла" -#: src/diff3.c:447 src/diff3.c:1295 src/diff3.c:1698 src/diff3.c:1753 -#: src/sdiff.c:308 src/sdiff.c:846 src/sdiff.c:857 +#: src/diff3.c:445 src/diff3.c:1284 src/diff3.c:1683 src/diff3.c:1738 +#: src/sdiff.c:306 src/sdiff.c:843 src/sdiff.c:854 msgid "read failed" msgstr "ошибка чтения" -#: src/diff3.c:480 +#: src/diff3.c:478 msgid "-A, --show-all output all changes, bracketing conflicts" msgstr "" "-A, --show-all выводить все изменения, заключая конфликтные\n" " места в скобки" -#: src/diff3.c:482 +#: src/diff3.c:480 msgid "" "-e, --ed output ed script incorporating changes\n" " from OLDFILE to YOURFILE into MYFILE" @@ -1182,30 +1183,30 @@ msgstr "" "-e, --ed вывести сценарий ed, изменяющий\n" " СТАРЫЙ_ФАЙЛ из ВАШ_ФАЙЛ, в МОЙ_ФАЙЛ" -#: src/diff3.c:484 +#: src/diff3.c:482 msgid "-E, --show-overlap like -e, but bracket conflicts" msgstr "-E, --show-overlap как -e плюс конфликты в скобках" -#: src/diff3.c:485 +#: src/diff3.c:483 msgid "" "-3, --easy-only like -e, but incorporate only nonoverlapping " "changes" msgstr "-3, --easy-only как -e, но только непересекающиеся изменения" -#: src/diff3.c:486 +#: src/diff3.c:484 msgid "" "-x, --overlap-only like -e, but incorporate only overlapping changes" msgstr "-x, --overlap-only как -e, но только перекрывающиеся изменения" -#: src/diff3.c:487 +#: src/diff3.c:485 msgid "-X like -x, but bracket conflicts" msgstr "-X как -x плюс конфликты в скобках" -#: src/diff3.c:488 +#: src/diff3.c:486 msgid "-i append 'w' and 'q' commands to ed scripts" msgstr "-i добавить команды ?w? и ?q? в сценарий ed" -#: src/diff3.c:490 +#: src/diff3.c:488 msgid "" "-m, --merge output actual merged file, according to\n" " -A if no other options are given" @@ -1213,27 +1214,27 @@ msgstr "" "-m, --merge выводить объединенный файл согласно\n" " -A, если не указаны другие параметры" -#: src/diff3.c:493 +#: src/diff3.c:491 msgid "-a, --text treat all files as text" msgstr "-a, --text считать все файлы текстовыми" -#: src/diff3.c:494 +#: src/diff3.c:492 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr " --strip-trailing-cr удалять из ввода завершающий возврат каретки" -#: src/diff3.c:495 +#: src/diff3.c:493 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T, --initial-tab выравнивать строки, добавляя в начало символ " "табуляции" -#: src/diff3.c:496 +#: src/diff3.c:494 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr "" " --diff-program=ПРОГРАММА\n" " для сравнения файлов использовать ПРОГРАММУ" -#: src/diff3.c:497 +#: src/diff3.c:495 msgid "" "-L, --label=LABEL use LABEL instead of file name\n" " (can be repeated up to three times)" @@ -1241,24 +1242,24 @@ msgstr "" "-L, --label=МЕТКА использовать МЕТКУ вместо имени файла\n" " (может повторяться до трёх раз)" -#: src/diff3.c:500 +#: src/diff3.c:498 msgid " --help display this help and exit" msgstr " --help показать эту справку и выйти" -#: src/diff3.c:501 +#: src/diff3.c:499 msgid "-v, --version output version information and exit" msgstr "-v, --version показать информацию о версии и выйти" -#: src/diff3.c:510 +#: src/diff3.c:508 #, c-format msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n" msgstr "Использование: %s [КЛЮЧ]? МОЙ_ФАЙЛ СТАРЫЙ_ФАЙЛ ВАШ_ФАЙЛ\n" -#: src/diff3.c:512 +#: src/diff3.c:510 msgid "Compare three files line by line." msgstr "Построчно сравнивает три файла." -#: src/diff3.c:522 +#: src/diff3.c:520 msgid "" "\n" "The default output format is a somewhat human-readable representation of\n" @@ -1281,56 +1282,56 @@ msgstr "" "и выводить уже объединённый файл. Для необычного ввода это более\n" "разумно, чем использование ed.\n" -#: src/diff3.c:534 +#: src/diff3.c:532 msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble." msgstr "" "Выходной статус равен 0 в случае успеха, 1 в случае конфликтов и 2 в\n" "случае неполадок." -#: src/diff3.c:727 +#: src/diff3.c:725 msgid "internal error: screwup in format of diff blocks" msgstr "внутренняя ошибка: поврежденный формат блоков заплаты" -#: src/diff3.c:1022 +#: src/diff3.c:1015 #, c-format msgid "%s: diff failed: " msgstr "%s: ошибка при поиске различий: " -#: src/diff3.c:1044 +#: src/diff3.c:1037 msgid "internal error: invalid diff type in process_diff" msgstr "внутренняя ошибка: неверный тип заплаты в функции process_diff" -#: src/diff3.c:1069 +#: src/diff3.c:1060 msgid "invalid diff format; invalid change separator" msgstr "неверный формат заплаты; неверный разделитель изменения" -#: src/diff3.c:1305 +#: src/diff3.c:1294 msgid "invalid diff format; incomplete last line" msgstr "неверный формат заплаты; неполная последняя строка" -#: src/diff3.c:1329 src/sdiff.c:276 src/util.c:969 +#: src/diff3.c:1318 src/sdiff.c:274 src/util.c:1069 #, c-format msgid "subsidiary program '%s' could not be invoked" msgstr "не удалось запустить вспомогательную программу ?%s?" -#: src/diff3.c:1354 +#: src/diff3.c:1343 msgid "invalid diff format; incorrect leading line chars" msgstr "неверный формат заплаты; неправильные первые символы строки" -#: src/diff3.c:1427 +#: src/diff3.c:1416 msgid "internal error: invalid diff type passed to output" msgstr "внутренняя ошибка: на выход передан неверный тип заплаты" -#: src/diff3.c:1700 src/diff3.c:1757 +#: src/diff3.c:1685 src/diff3.c:1742 msgid "input file shrank" msgstr "входной файл уменьшился" -#: src/dir.c:156 +#: src/dir.c:154 #, c-format msgid "cannot compare file names '%s' and '%s'" msgstr "невозможно сравнить имена файлов ?%s? и ?%s?" -#: src/dir.c:225 +#: src/dir.c:223 #, c-format msgid "%s: recursive directory loop" msgstr "%s: каталоги зациклены" @@ -1340,132 +1341,132 @@ msgstr "%s: каталоги зациклены" msgid "Thomas Lord" msgstr "Томас Лорд (Thomas Lord)" -#: src/sdiff.c:174 +#: src/sdiff.c:173 msgid "" "-o, --output=FILE operate interactively, sending output to FILE" msgstr "-o, --output=ФАЙЛ работать интерактивно, записывая вывод в ФАЙЛ" -#: src/sdiff.c:176 +#: src/sdiff.c:175 msgid "" "-i, --ignore-case consider upper- and lower-case to be the same" msgstr "-i, --ignore-case игнорировать регистр символов" -#: src/sdiff.c:177 +#: src/sdiff.c:176 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E, --ignore-tab-expansion\n" " игнорировать изменения, вызванные раскрытием " "табуляции" -#: src/sdiff.c:178 +#: src/sdiff.c:177 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "" "-Z, --ignore-trailing-space\n" " игнорировать пробельные символы в конце строки" -#: src/sdiff.c:179 +#: src/sdiff.c:178 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "" "-b, --ignore-space-change\n" " игнорировать изменения количества пробельных символов" -#: src/sdiff.c:180 +#: src/sdiff.c:179 msgid "-W, --ignore-all-space ignore all white space" msgstr "-W, --ignore-all-space игнорировать все пробельные символы" -#: src/sdiff.c:181 +#: src/sdiff.c:180 msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank" msgstr "" "-B, --ignore-blank-lines\n" " игнорировать изменения количества пустых строк" -#: src/sdiff.c:182 +#: src/sdiff.c:181 msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE" msgstr "" "-I, --ignore-matching-lines=RE\n" " игнорировать изменения строк, совпадающих с RE" -#: src/sdiff.c:183 +#: src/sdiff.c:182 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr " --strip-trailing-cr удалять из ввода завершающий возврат каретки" -#: src/sdiff.c:184 +#: src/sdiff.c:183 msgid "-a, --text treat all files as text" msgstr "-a, --text считать все файлы текстовыми" -#: src/sdiff.c:186 +#: src/sdiff.c:185 msgid "" "-w, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-w, --width=Н выводить не более Н знаков в строке\n" " (по умолчанию 130)" -#: src/sdiff.c:187 +#: src/sdiff.c:186 msgid "" "-l, --left-column output only the left column of common lines" msgstr "--left-column выводить только левую колонку общих строк" -#: src/sdiff.c:188 +#: src/sdiff.c:187 msgid "-s, --suppress-common-lines do not output common lines" msgstr "" "--suppress-common-lines\n" " не выводить общие строки" -#: src/sdiff.c:190 +#: src/sdiff.c:189 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "" "-t, --expand-tabs раскрывать при выводе символы табуляции в пробелы" -#: src/sdiff.c:191 +#: src/sdiff.c:190 msgid "" " --tabsize=NUM tab stops at every NUM (default 8) print columns" msgstr "" " --tabsize=Н табуляция через каждые Н знаков (по умолчанию 8)" -#: src/sdiff.c:193 +#: src/sdiff.c:192 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "-d, --minimal пытаться найти наименьший набор изменений" -#: src/sdiff.c:194 +#: src/sdiff.c:193 msgid "" "-H, --speed-large-files assume large files, many scattered small changes" msgstr "" "-H, --speed-large-files предполагать, что файлы большие и есть много\n" " разбросанных мелких изменений" -#: src/sdiff.c:195 +#: src/sdiff.c:194 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr "" " --diff-program=ПРОГРАММА\n" " для сравнения файлов использовать ПРОГРАММУ" -#: src/sdiff.c:197 +#: src/sdiff.c:196 msgid " --help display this help and exit" msgstr " --help показать эту справку и выйти" -#: src/sdiff.c:198 +#: src/sdiff.c:197 msgid "-v, --version output version information and exit" msgstr "-v, --version показать информацию о версии и выйти" -#: src/sdiff.c:207 +#: src/sdiff.c:206 #, c-format msgid "Usage: %s [OPTION]... FILE1 FILE2\n" msgstr "Использование: %s [КЛЮЧ]? ФАЙЛ1 ФАЙЛ2\n" -#: src/sdiff.c:209 +#: src/sdiff.c:208 msgid "Side-by-side merge of differences between FILE1 and FILE2." msgstr "Интерактивно объединяет различия между ФАЙЛОМ1 и ФАЙЛОМ2." -#: src/sdiff.c:330 +#: src/sdiff.c:328 msgid "cannot interactively merge standard input" msgstr "невозможно интерактивно объединить стандартный ввод" -#: src/sdiff.c:597 +#: src/sdiff.c:594 msgid "both files to be compared are directories" msgstr "оба сравниваемых файла ? каталоги" -#: src/sdiff.c:820 +#: src/sdiff.c:817 msgid "" "ed:\tEdit then use both versions, each decorated with a header.\n" "eb:\tEdit then use both versions.\n" @@ -1489,12 +1490,12 @@ msgstr "" "v:\tВключать общие строки, выдавая сообщение.\n" "q:\tВыйти.\n" -#: src/util.c:662 +#: src/util.c:755 #, c-format msgid "unrecognized prefix: %s" msgstr "неизвестный префикс: %s" -#: src/util.c:692 +#: src/util.c:785 #, c-format msgid "unparsable value for --palette" msgstr "невозможно разобрать значение --palette" diff --git a/po/sr.po b/po/sr.po index 4cc8d7e..1b13a7c 100644 --- a/po/sr.po +++ b/po/sr.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: diffutils 3.7.41\n" "Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n" -"POT-Creation-Date: 2021-08-01 18:56-0700\n" +"POT-Creation-Date: 2023-05-21 01:51-0700\n" "PO-Revision-Date: 2021-07-26 10:13+0200\n" "Last-Translator: Мирослав Николић \n" "Language-Team: Serbian <(nothing)>\n" @@ -15,33 +15,33 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" -"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && " +"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" "X-Bugs: Report translation errors to the Language-Team address.\n" -#: lib/argmatch.c:132 +#: lib/argmatch.c:145 #, c-format msgid "invalid argument %s for %s" msgstr "неисправан аргумент „%s“ за „%s“" -#: lib/argmatch.c:133 +#: lib/argmatch.c:146 #, c-format msgid "ambiguous argument %s for %s" msgstr "нејасан аргумент „%s“ за „%s“" -#: lib/argmatch.c:152 lib/argmatch.h:223 +#: lib/argmatch.c:165 lib/argmatch.h:242 msgid "Valid arguments are:" msgstr "Исправни аргументи су:" -#: lib/c-stack.c:187 +#: lib/c-stack.c:186 msgid "program error" msgstr "грешка програма" -#: lib/c-stack.c:188 +#: lib/c-stack.c:187 msgid "stack overflow" msgstr "стек препуњен" -#: lib/error.c:195 +#: lib/error.c:193 msgid "Unknown system error" msgstr "Непозната системска грешка" @@ -197,83 +197,83 @@ msgstr "%s: опција захтева аргумент -- „%c“\n" #. If you don't know what to put here, please see #. #. and use glyphs suitable for your language. -#: lib/quotearg.c:355 +#: lib/quotearg.c:354 msgid "`" msgstr "„" -#: lib/quotearg.c:356 +#: lib/quotearg.c:355 msgid "'" msgstr "“" -#: lib/regcomp.c:135 +#: lib/regcomp.c:122 msgid "Success" msgstr "Успешно" -#: lib/regcomp.c:138 +#: lib/regcomp.c:125 msgid "No match" msgstr "Нема поклапања" -#: lib/regcomp.c:141 +#: lib/regcomp.c:128 msgid "Invalid regular expression" msgstr "Неисправан регуларни израз" -#: lib/regcomp.c:144 +#: lib/regcomp.c:131 msgid "Invalid collation character" msgstr "Неисправан знак слагања" -#: lib/regcomp.c:147 +#: lib/regcomp.c:134 msgid "Invalid character class name" msgstr "Неправилан назив разреда знака" -#: lib/regcomp.c:150 +#: lib/regcomp.c:137 msgid "Trailing backslash" msgstr "Пратећа обрнута коса црта" -#: lib/regcomp.c:153 +#: lib/regcomp.c:140 msgid "Invalid back reference" msgstr "Неисправна повратна упута" -#: lib/regcomp.c:156 +#: lib/regcomp.c:143 msgid "Unmatched [, [^, [:, [., or [=" msgstr "Неупарено [, [^, [:, [., или [=" -#: lib/regcomp.c:159 +#: lib/regcomp.c:146 msgid "Unmatched ( or \\(" msgstr "Неупарено ( или \\(" -#: lib/regcomp.c:162 +#: lib/regcomp.c:149 msgid "Unmatched \\{" msgstr "Неупарено \\{" -#: lib/regcomp.c:165 +#: lib/regcomp.c:152 msgid "Invalid content of \\{\\}" msgstr "Неисправан садржај у \\{\\}" -#: lib/regcomp.c:168 +#: lib/regcomp.c:155 msgid "Invalid range end" msgstr "Неисправан крај опсега" -#: lib/regcomp.c:171 +#: lib/regcomp.c:158 msgid "Memory exhausted" msgstr "Меморија је исцрпљена" -#: lib/regcomp.c:174 +#: lib/regcomp.c:161 msgid "Invalid preceding regular expression" msgstr "Неисправан претходећи регуларни израз" -#: lib/regcomp.c:177 +#: lib/regcomp.c:164 msgid "Premature end of regular expression" msgstr "Преран завршетак регуларног израза" -#: lib/regcomp.c:180 +#: lib/regcomp.c:167 msgid "Regular expression too big" msgstr "Регуларан израз је исувише велики" -#: lib/regcomp.c:183 +#: lib/regcomp.c:170 msgid "Unmatched ) or \\)" msgstr "Неупарено ) или \\)" -#: lib/regcomp.c:676 +#: lib/regcomp.c:650 msgid "No previous regular expression" msgstr "Нема претходног регуларног израза" @@ -468,17 +468,17 @@ msgstr "%s матична страница: <%s>\n" msgid "General help using GNU software: <%s>\n" msgstr "Општа помоћ за коришћење ГНУ софтвера: <%s>\n" -#: src/analyze.c:454 src/diff.c:1406 +#: src/analyze.c:455 src/diff.c:1478 #, c-format msgid "Files %s and %s differ\n" msgstr "Датотеке „%s“ и „%s“ су различите\n" -#: src/analyze.c:455 +#: src/analyze.c:456 #, c-format msgid "Binary files %s and %s differ\n" msgstr "Бинарне датотеке %s и %s различите\n" -#: src/analyze.c:706 src/diff3.c:1470 src/util.c:1254 +#: src/analyze.c:707 src/diff3.c:1457 src/util.c:1354 msgid "No newline at end of file" msgstr "Без новог реда на крају датотеке" @@ -492,81 +492,82 @@ msgstr "Торбјорн Гранлунд" msgid "David MacKenzie" msgstr "Дејвид Мек Кензи" -#: src/cmp.c:120 src/diff.c:879 src/diff3.c:467 src/sdiff.c:160 +#: src/cmp.c:124 src/diff.c:939 src/diff3.c:465 src/sdiff.c:159 #, c-format msgid "Try '%s --help' for more information." msgstr "Покушајте „%s --help“ за више информација." -#: src/cmp.c:138 +#: src/cmp.c:142 #, c-format msgid "invalid --ignore-initial value '%s'" msgstr "неисправна „--ignore-initial“ вредност „%s“" -#: src/cmp.c:148 +#: src/cmp.c:152 #, c-format msgid "options -l and -s are incompatible" msgstr "опције -l и -s не иду заједно" -#: src/cmp.c:156 src/diff.c:887 src/diff3.c:474 src/sdiff.c:168 src/sdiff.c:316 -#: src/sdiff.c:323 src/sdiff.c:876 src/util.c:852 src/util.c:952 src/util.c:959 +#: src/cmp.c:160 src/diff.c:947 src/diff3.c:472 src/sdiff.c:167 src/sdiff.c:314 +#: src/sdiff.c:321 src/sdiff.c:873 src/util.c:952 src/util.c:1052 +#: src/util.c:1059 msgid "write failed" msgstr "записивање није успело" -#: src/cmp.c:158 src/diff.c:889 src/diff.c:1471 src/diff3.c:476 src/sdiff.c:170 +#: src/cmp.c:162 src/diff.c:949 src/diff.c:1543 src/diff3.c:474 src/sdiff.c:169 msgid "standard output" msgstr "стандардни излаз" -#: src/cmp.c:162 +#: src/cmp.c:166 msgid "-b, --print-bytes print differing bytes" msgstr "" "-b --print-bytes исписује бајтове који се разликују." -#: src/cmp.c:163 +#: src/cmp.c:167 msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs" msgstr "" "-i БРОЈ --ignore-initial=БРОЈ изоставља првих БРОЈ бајтова улаза." -#: src/cmp.c:164 +#: src/cmp.c:168 msgid "" "-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n" " first SKIP2 bytes of FILE2" msgstr "" " изоставља првих БРОЈ1 бајтова ДАТОТЕКЕ1 и првих БРОЈ2 бајтова ДАТОТЕКЕ2." -#: src/cmp.c:166 +#: src/cmp.c:170 msgid "" "-l, --verbose output byte numbers and differing byte values" msgstr "" "-l --verbose исписује редни број и вредност бајтова " "који се разликују." -#: src/cmp.c:167 +#: src/cmp.c:171 msgid "-n, --bytes=LIMIT compare at most LIMIT bytes" msgstr "" "-n ОГРАНИЧЕЊЕ --bytes=ОГРАНИЧЕЊЕ пореди до највише ОГРАНИЧЕЊЕ бајтова." -#: src/cmp.c:168 +#: src/cmp.c:172 msgid "-s, --quiet, --silent suppress all normal output" msgstr "-s, --quiet, --silent потискује све обичне излазе" -#: src/cmp.c:169 +#: src/cmp.c:173 msgid " --help display this help and exit" msgstr " --help приказује ову помоћ и излази" -#: src/cmp.c:170 +#: src/cmp.c:174 msgid "-v, --version output version information and exit" msgstr "-v --version исписује податке о издању." -#: src/cmp.c:179 +#: src/cmp.c:183 #, c-format msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n" msgstr "Употреба: %s [ОПЦИЈА]... ДАТОТЕКА1 [ДАТОТЕКА2 [БРОЈ1 [БРОЈ2]]]\n" -#: src/cmp.c:181 +#: src/cmp.c:185 msgid "Compare two files byte by byte." msgstr "Поредите две датотеке бајт по бајт." -#: src/cmp.c:183 +#: src/cmp.c:187 msgid "" "The optional SKIP1 and SKIP2 specify the number of bytes to skip\n" "at the beginning of each file (zero by default)." @@ -574,13 +575,13 @@ msgstr "" "Изборни БРОЈ1 и БРОЈ2 су бројеви бајтова за изостављање на почетку\n" "сваке датотеке (подразумева се нула)." -#: src/cmp.c:186 src/diff.c:999 src/diff3.c:514 src/sdiff.c:211 +#: src/cmp.c:190 src/diff.c:1059 src/diff3.c:512 src/sdiff.c:210 msgid "" "Mandatory arguments to long options are mandatory for short options too.\n" msgstr "" "Обавезни аргументи за дуге опције су обавезни и за кратке опције такође.\n" -#: src/cmp.c:192 +#: src/cmp.c:196 msgid "" "SKIP values may be followed by the following multiplicative suffixes:\n" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" @@ -591,191 +592,191 @@ msgstr "" "1,073,741,824,\n" "итд. за T, P, E, Z, Y." -#: src/cmp.c:195 +#: src/cmp.c:199 msgid "If a FILE is '-' or missing, read standard input." msgstr "Чита стандардни улаз ако ДАТОТЕКА недостаје или је „-“." -#: src/cmp.c:196 src/diff.c:987 src/sdiff.c:221 +#: src/cmp.c:200 src/diff.c:1047 src/sdiff.c:220 msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble." msgstr "Излазно стање је 0 ако су улази исти, 1 за различите, 2 за грешку." -#: src/cmp.c:243 +#: src/cmp.c:247 #, c-format msgid "invalid --bytes value '%s'" msgstr "неисправна --bytes вредност „%s“" -#: src/cmp.c:269 src/diff.c:797 src/diff3.c:361 src/sdiff.c:567 +#: src/cmp.c:273 src/diff.c:857 src/diff3.c:368 src/sdiff.c:564 #, c-format msgid "missing operand after '%s'" msgstr "недостаје оператор после „%s“" -#: src/cmp.c:281 src/diff.c:799 src/diff3.c:363 src/sdiff.c:569 +#: src/cmp.c:285 src/diff.c:859 src/diff3.c:370 src/sdiff.c:566 #, c-format msgid "extra operand '%s'" msgstr "вишак оператор „%s“" -#: src/cmp.c:507 +#: src/cmp.c:521 #, c-format msgid "%s %s differ: byte %s, line %s\n" msgstr "%s %s се разликују: бајт %s, ред %s\n" -#: src/cmp.c:523 +#: src/cmp.c:537 #, c-format msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n" msgstr "%s %s се разликују: бајт %s, ред %s је %3o %s %3o %s\n" -#: src/cmp.c:580 +#: src/cmp.c:594 #, c-format msgid "cmp: EOF on %s which is empty\n" msgstr "cmp: крај датотеке на %s које је празно\n" -#: src/cmp.c:594 +#: src/cmp.c:608 #, c-format msgid "cmp: EOF on %s after byte %s, line %s\n" msgstr "cmp: крај датотеке на %s након бајта %s, %s. ред\n" -#: src/cmp.c:595 +#: src/cmp.c:609 #, c-format msgid "cmp: EOF on %s after byte %s, in line %s\n" msgstr "cmp: крај датотеке на %s након бајта %s, у %s. реду\n" -#: src/cmp.c:601 +#: src/cmp.c:615 #, c-format msgid "cmp: EOF on %s after byte %s\n" msgstr "cmp: крај датотеке на %s након бајта %s\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:51 +#: src/diff.c:50 msgid "Paul Eggert" msgstr "Пол Егерт" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:52 +#: src/diff.c:51 msgid "Mike Haertel" msgstr "Мајк Хартел" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:53 +#: src/diff.c:52 msgid "David Hayes" msgstr "Дејвид Хејес" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:54 +#: src/diff.c:53 msgid "Richard Stallman" msgstr "Ричард Столман" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:55 +#: src/diff.c:54 msgid "Len Tower" msgstr "Лен Тауер" -#: src/diff.c:355 +#: src/diff.c:365 #, c-format msgid "invalid context length '%s'" msgstr "неисправна дужина склопа „%s“" -#: src/diff.c:438 +#: src/diff.c:487 #, c-format msgid "pagination not supported on this host" msgstr "прелом страна није подржан на овом рачунару" -#: src/diff.c:453 src/diff3.c:341 +#: src/diff.c:502 src/diff3.c:348 #, c-format msgid "too many file label options" msgstr "исувише опција за ознаку датотеке" -#: src/diff.c:530 +#: src/diff.c:579 #, c-format msgid "invalid width '%s'" msgstr "неисправна дужина „%s“" -#: src/diff.c:534 +#: src/diff.c:583 msgid "conflicting width options" msgstr "сукобљене опције ширине" -#: src/diff.c:559 +#: src/diff.c:608 #, c-format msgid "invalid horizon length '%s'" msgstr "неисправна дужина видокруга „%s“" -#: src/diff.c:615 +#: src/diff.c:664 #, c-format msgid "invalid tabsize '%s'" msgstr "неисправна величина табулатора „%s“" -#: src/diff.c:619 +#: src/diff.c:668 msgid "conflicting tabsize options" msgstr "сукобљене опције величине табулатора" -#: src/diff.c:774 +#: src/diff.c:834 msgid "--from-file and --to-file both specified" msgstr "„--from-file“ и „--to-file“ су наведени оба" -#: src/diff.c:893 +#: src/diff.c:953 msgid " --normal output a normal diff (the default)" msgstr " --normal исписује обичне разлике (основно)" -#: src/diff.c:894 +#: src/diff.c:954 msgid "-q, --brief report only when files differ" msgstr "-q --brief исписује само када се датотеке разликују" -#: src/diff.c:895 +#: src/diff.c:955 msgid "-s, --report-identical-files report when two files are the same" msgstr "-s --report-identical-files извештава када су две датотеке исте" -#: src/diff.c:896 +#: src/diff.c:956 msgid "" "-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context" msgstr "" "-c, -C БРОЈ, --context[=БРОЈ] исписује БРОЈ (почетно 3) редова умноженог " "склопа" -#: src/diff.c:897 +#: src/diff.c:957 msgid "" "-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context" msgstr "" "-w БРОЈ --width=БРОЈ исписује БРОЈ (почетно 3) редова обједињеног " "склопа" -#: src/diff.c:898 +#: src/diff.c:958 msgid "-e, --ed output an ed script" msgstr "-e --ed исписује ед спис" -#: src/diff.c:899 +#: src/diff.c:959 msgid "-n, --rcs output an RCS format diff" msgstr "-n --rcs исписује РЦС запис разлика" -#: src/diff.c:900 +#: src/diff.c:960 msgid "-y, --side-by-side output in two columns" msgstr "-y, --side-by-side исписује у две колоне" -#: src/diff.c:901 +#: src/diff.c:961 msgid "" "-W, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-w БРЈ --width=БРЈ исписује на највише БРЈ (почетно 130) колона" -#: src/diff.c:902 +#: src/diff.c:962 msgid "" " --left-column output only the left column of common lines" msgstr "" "-l --left-column исписује само леву колону заједничких редова" -#: src/diff.c:903 +#: src/diff.c:963 msgid " --suppress-common-lines do not output common lines" msgstr "-s --suppress-common-lines не приказује заједничке редове" -#: src/diff.c:905 +#: src/diff.c:965 msgid "-p, --show-c-function show which C function each change is in" msgstr "" "-p, --show-c-function приказује у којој Ц функцији је свака промена" -#: src/diff.c:906 +#: src/diff.c:966 msgid "-F, --show-function-line=RE show the most recent line matching RE" msgstr "" "-F, --show-function-line=РИ приказује најскорији ред који одговара РИ" -#: src/diff.c:907 +#: src/diff.c:967 msgid "" " --label LABEL use LABEL instead of file name and timestamp\n" " (can be repeated)" @@ -784,82 +785,82 @@ msgstr "" "временске ознаке\n" " (може да се понавља)" -#: src/diff.c:910 +#: src/diff.c:970 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "-t --expand-tabs развија табулаторе у размаке за излаз" -#: src/diff.c:911 +#: src/diff.c:971 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T --initial-tab поравнава табулаторе додајући један табулатор." -#: src/diff.c:912 +#: src/diff.c:972 msgid "" " --tabsize=NUM tab stops every NUM (default 8) print columns" msgstr "" "--tabsize=БРЈ величина табулатора је БРЈ (почетно 8) колона" -#: src/diff.c:913 +#: src/diff.c:973 msgid "" " --suppress-blank-empty suppress space or tab before empty output lines" msgstr "" "--suppress-blank-empty потискује размак или табулатор пре празних " "редова излаза" -#: src/diff.c:914 +#: src/diff.c:974 msgid "-l, --paginate pass output through 'pr' to paginate it" msgstr "-l --paginate пропушта излаз кроз „pr“ за прелом" -#: src/diff.c:916 +#: src/diff.c:976 msgid "" "-r, --recursive recursively compare any subdirectories found" msgstr "" "-r --recursive дубински упоређује све пронађене " "поддиректоријуме" -#: src/diff.c:917 +#: src/diff.c:977 msgid " --no-dereference don't follow symbolic links" msgstr " --no-dereference не прати симболичке везе" -#: src/diff.c:918 +#: src/diff.c:978 msgid "-N, --new-file treat absent files as empty" msgstr "-N --new-file сматра празним недостајуће датотеке" -#: src/diff.c:919 +#: src/diff.c:979 msgid " --unidirectional-new-file treat absent first files as empty" msgstr "" " --unidirectional-new-file сматра празним прве недостајуће датотеке" -#: src/diff.c:920 +#: src/diff.c:980 msgid " --ignore-file-name-case ignore case when comparing file names" msgstr "" " --ignore-file-name-case занемарује словну величину поређујући назива " "датотека" -#: src/diff.c:921 +#: src/diff.c:981 msgid " --no-ignore-file-name-case consider case when comparing file names" msgstr "" " --no-ignore-file-name-case урачунава словну величину поређујући називе " "датотека" -#: src/diff.c:922 +#: src/diff.c:982 msgid "-x, --exclude=PAT exclude files that match PAT" msgstr "-x, --exclude=ОБР искључује датотеке које поклапају ОБР" -#: src/diff.c:923 +#: src/diff.c:983 msgid "" "-X, --exclude-from=FILE exclude files that match any pattern in FILE" msgstr "" "-X, --exclude-from=ТЕКА искључује датотеке које поклапа било који " "образац у ТЕКА" -#: src/diff.c:924 +#: src/diff.c:984 msgid "" "-S, --starting-file=FILE start with FILE when comparing directories" msgstr "" "-S, --starting-file=ТЕКА почиње од ТЕКА при поређењу директоријума" -#: src/diff.c:925 +#: src/diff.c:985 msgid "" " --from-file=FILE1 compare FILE1 to all operands;\n" " FILE1 can be a directory" @@ -867,7 +868,7 @@ msgstr "" " --from-file=ТЕКА1 упоређује ТЕКУ1 са свим оперантима. ТЕКА1 " "може бити директоријум" -#: src/diff.c:927 +#: src/diff.c:987 msgid "" " --to-file=FILE2 compare all operands to FILE2;\n" " FILE2 can be a directory" @@ -875,75 +876,75 @@ msgstr "" " --to-file=ТЕКА2 упоређује све операнте са ТЕКОМ2. ТЕКА2 може " "бити директоријум" -#: src/diff.c:930 +#: src/diff.c:990 msgid "" "-i, --ignore-case ignore case differences in file contents" msgstr "" "-i --ignore-case занемарује словну величину у склопу датотека" -#: src/diff.c:931 +#: src/diff.c:991 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E --ignore-tab-expansion занемарује промене услед развијања табулатора" -#: src/diff.c:932 +#: src/diff.c:992 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "-Z, --ignore-trailing-space занемарује размак на крају реда" -#: src/diff.c:933 +#: src/diff.c:993 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "" "-b --ignore-space-change занемарује промене због количине празног " "простора" -#: src/diff.c:934 +#: src/diff.c:994 msgid "-w, --ignore-all-space ignore all white space" msgstr "-w --ignore-all-space занемарује све празне просторе" -#: src/diff.c:935 +#: src/diff.c:995 msgid "" "-B, --ignore-blank-lines ignore changes where lines are all blank" msgstr "" "-B --ignore-blank-lines занемарује промене услед празних редова" -#: src/diff.c:936 +#: src/diff.c:996 msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE" msgstr "" "-I, --ignore-matching-lines=РИ занемарује промене чији редови поклапају РИ" -#: src/diff.c:938 +#: src/diff.c:998 msgid "-a, --text treat all files as text" msgstr "-a --text сматра све датотеке као текст" -#: src/diff.c:939 +#: src/diff.c:999 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr " --strip-trailing-cr огољава пратеће на улазу" -#: src/diff.c:941 +#: src/diff.c:1001 msgid " --binary read and write data in binary mode" msgstr " --binary чита и пише податке у бинарном режиму" -#: src/diff.c:944 +#: src/diff.c:1004 msgid "" "-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs" msgstr "" "-D, --ifdef=НАЗИВ исписује стопљену датотеку да прикаже " "„#ifdef НАЗИВ“ разлике" -#: src/diff.c:945 +#: src/diff.c:1005 msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT" msgstr " --GTYPE-group-format=ГОБЛ обликује GTYPE улазне групе са ГОБЛ" -#: src/diff.c:946 +#: src/diff.c:1006 msgid " --line-format=LFMT format all input lines with LFMT" msgstr " --line-format=РОБЛ обликује све улазне редове са РОБЛ" -#: src/diff.c:947 +#: src/diff.c:1007 msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT" msgstr " --LTYPE-line-format=РОБЛ обликује LTYPE улазне редове са РОБЛ" -#: src/diff.c:948 +#: src/diff.c:1008 msgid "" " These format options provide fine-grained control over the output\n" " of diff, generalizing -D/--ifdef." @@ -951,12 +952,12 @@ msgstr "" " Ове опције записа обезбеђује фино подешено управљање преко излаза\n" " различника, генерализујући -D/--ifdef." -#: src/diff.c:950 +#: src/diff.c:1010 msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'." msgstr "" " LTYPE је „old“, „new“, или „unchanged“. GTYPE је LTYPE или „changed“." -#: src/diff.c:951 +#: src/diff.c:1011 msgid "" " GFMT (only) may contain:\n" " %< lines from FILE1\n" @@ -984,7 +985,7 @@ msgstr "" " M L+1\n" " %(A=B?T:E) ако је А исто као Б онда Т супротно Е" -#: src/diff.c:963 +#: src/diff.c:1023 msgid "" " LFMT (only) may contain:\n" " %L contents of line\n" @@ -996,7 +997,7 @@ msgstr "" " %l садржај реда, изузев пратећих знакова за нови ред\n" " %[-][ШИРН][.[ТАЧН]]{doxX}n printf-стил за улазни број реда" -#: src/diff.c:967 +#: src/diff.c:1027 msgid "" " Both GFMT and LFMT may contain:\n" " %% %\n" @@ -1010,22 +1011,22 @@ msgstr "" " %c'\\OOO' знак са окталним кодом OOO\n" " З знак З (други знаци представљају сами себе)" -#: src/diff.c:973 +#: src/diff.c:1033 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "-d --minimal труди се да нађе мањи скуп промена" -#: src/diff.c:974 +#: src/diff.c:1034 msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix" msgstr "" " --horizon-lines=БРЈ чува БРЈ редова заједничког префикса и суфикса" -#: src/diff.c:975 +#: src/diff.c:1035 msgid "" " --speed-large-files assume large files and many scattered small changes" msgstr "" " --speed-large-files за велике датотеке са много раштрканих малих измена" -#: src/diff.c:976 +#: src/diff.c:1036 msgid "" " --color[=WHEN] color output; WHEN is 'never', 'always', or " "'auto';\n" @@ -1035,7 +1036,7 @@ msgstr "" "„always“ (увек), или „auto“ (подразумевано);\n" " обична „--color“ значи „--color='auto'“" -#: src/diff.c:978 +#: src/diff.c:1038 msgid "" " --palette=PALETTE the colors to use when --color is active; PALETTE " "is\n" @@ -1046,112 +1047,112 @@ msgstr "" " списак могућности података термина раздвојен " "двотачком" -#: src/diff.c:981 +#: src/diff.c:1041 msgid " --help display this help and exit" msgstr " --help приказује ову помоћ и излази" -#: src/diff.c:982 +#: src/diff.c:1042 msgid "-v, --version output version information and exit" msgstr "-v --version исписује податке о издању" -#: src/diff.c:984 +#: src/diff.c:1044 msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'." msgstr "" "ДАТОТЕКЕ су „ТЕКА1 ТЕКА2“ или „ДИР1 ДИР2“ или „ДИР ТЕКА“ или „ТЕКА ДИР“." -#: src/diff.c:985 +#: src/diff.c:1045 msgid "" "If --from-file or --to-file is given, there are no restrictions on FILE(s)." msgstr "" "Нема ограничења за ДАТОТЕКЕ ако је задато „--from-file“ или „--to-file“." -#: src/diff.c:986 src/diff3.c:533 src/sdiff.c:220 +#: src/diff.c:1046 src/diff3.c:531 src/sdiff.c:219 msgid "If a FILE is '-', read standard input." msgstr "Ако је ДАТОТЕКА „-“, чита стандардни улаз." -#: src/diff.c:996 +#: src/diff.c:1056 #, c-format msgid "Usage: %s [OPTION]... FILES\n" msgstr "Употреба: %s [ОПЦИЈА]... ДАТОТЕКЕ\n" -#: src/diff.c:997 +#: src/diff.c:1057 msgid "Compare FILES line by line." msgstr "Поредите ДАТОТЕКЕ ред по ред." -#: src/diff.c:1034 +#: src/diff.c:1094 #, c-format msgid "conflicting %s option value '%s'" msgstr "сукоб вредности „%s“ опције „%s“" -#: src/diff.c:1047 +#: src/diff.c:1107 #, c-format msgid "conflicting output style options" msgstr "сукобљене опције излазног стила" -#: src/diff.c:1063 +#: src/diff.c:1123 #, c-format msgid "invalid color '%s'" msgstr "неисправна боја „%s“" -#: src/diff.c:1119 src/diff.c:1329 +#: src/diff.c:1197 src/diff.c:1401 #, c-format msgid "Only in %s: %s\n" msgstr "Само у %s: %s\n" -#: src/diff.c:1253 +#: src/diff.c:1325 msgid "cannot compare '-' to a directory" msgstr "не могу поредити „-“ са директоријумом" -#: src/diff.c:1288 +#: src/diff.c:1360 msgid "-D option not supported with directories" msgstr "опција „-D“ није подржана за директоријуме" -#: src/diff.c:1297 +#: src/diff.c:1369 #, c-format msgid "Common subdirectories: %s and %s\n" msgstr "Заједнички поддиректоријуми: %s и %s\n" -#: src/diff.c:1339 src/diff.c:1389 +#: src/diff.c:1411 src/diff.c:1461 #, c-format msgid "File %s is a %s while file %s is a %s\n" msgstr "Датотека „%s“ је „%s“ док је датотека „%s“ „%s“\n" -#: src/diff.c:1375 +#: src/diff.c:1447 #, c-format msgid "Symbolic links %s and %s differ\n" msgstr "Симболичке везе „%s“ и „%s“ су различите\n" -#: src/diff.c:1462 +#: src/diff.c:1534 #, c-format msgid "Files %s and %s are identical\n" msgstr "Датотеке „%s“ и „%s“ се истоветне\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff3.c:43 +#: src/diff3.c:51 msgid "Randy Smith" msgstr "Ренди Смит" -#: src/diff3.c:356 +#: src/diff3.c:363 #, c-format msgid "incompatible options" msgstr "несагласне опције" -#: src/diff3.c:396 +#: src/diff3.c:403 msgid "'-' specified for more than one input file" msgstr "„-“ је наведено за више од једне улазне датотеке" -#: src/diff3.c:447 src/diff3.c:1295 src/diff3.c:1698 src/diff3.c:1753 -#: src/sdiff.c:308 src/sdiff.c:846 src/sdiff.c:857 +#: src/diff3.c:445 src/diff3.c:1284 src/diff3.c:1683 src/diff3.c:1738 +#: src/sdiff.c:306 src/sdiff.c:843 src/sdiff.c:854 msgid "read failed" msgstr "читање није успело" -#: src/diff3.c:480 +#: src/diff3.c:478 msgid "-A, --show-all output all changes, bracketing conflicts" msgstr "" "-A --show-all исписује све промене, означавајући сукобе " "заградама" -#: src/diff3.c:482 +#: src/diff3.c:480 msgid "" "-e, --ed output ed script incorporating changes\n" " from OLDFILE to YOURFILE into MYFILE" @@ -1159,31 +1160,31 @@ msgstr "" "-e --ed исписује неспојене промене између СТАРАТЕКА и " "ТВОЈАТЕКА у МОЈАТЕКА" -#: src/diff3.c:484 +#: src/diff3.c:482 msgid "-E, --show-overlap like -e, but bracket conflicts" msgstr "-E --show-overlap као -e, означавајући сукобе заградама" -#: src/diff3.c:485 +#: src/diff3.c:483 msgid "" "-3, --easy-only like -e, but incorporate only nonoverlapping " "changes" msgstr "" "-3 --easy-only као -e, али обједињује непреклопљене промене" -#: src/diff3.c:486 +#: src/diff3.c:484 msgid "" "-x, --overlap-only like -e, but incorporate only overlapping changes" msgstr "-x, --overlap-only као -e, али обједињује преклопљене промене" -#: src/diff3.c:487 +#: src/diff3.c:485 msgid "-X like -x, but bracket conflicts" msgstr "-X као -x, означавајући сукобе заградама" -#: src/diff3.c:488 +#: src/diff3.c:486 msgid "-i append 'w' and 'q' commands to ed scripts" msgstr "-i придодаје „w“ и „q“ наредбе ед списима" -#: src/diff3.c:490 +#: src/diff3.c:488 msgid "" "-m, --merge output actual merged file, according to\n" " -A if no other options are given" @@ -1191,24 +1192,24 @@ msgstr "" "-m, --merge исписује тренутну стопљену датотеку, у складу\n" " са -A ако нису дате друге опције" -#: src/diff3.c:493 +#: src/diff3.c:491 msgid "-a, --text treat all files as text" msgstr "-a --text сматра све датотеке као текст" -#: src/diff3.c:494 +#: src/diff3.c:492 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr " --strip-trailing-cr огољава пратеће на улазу" -#: src/diff3.c:495 +#: src/diff3.c:493 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T --initial-tab поравнава табулаторе додајући један табулатор" -#: src/diff3.c:496 +#: src/diff3.c:494 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr " --diff-program=ПРОГРАМ користи ПРОГРАМ за поређење датотека" -#: src/diff3.c:497 +#: src/diff3.c:495 msgid "" "-L, --label=LABEL use LABEL instead of file name\n" " (can be repeated up to three times)" @@ -1216,24 +1217,24 @@ msgstr "" "-L, --label=ОЗНАКА користи ОЗНАКУ уместо назива датотеке\n" " (може да се понови до три пута)" -#: src/diff3.c:500 +#: src/diff3.c:498 msgid " --help display this help and exit" msgstr " --help приказује ову помоћ и излази" -#: src/diff3.c:501 +#: src/diff3.c:499 msgid "-v, --version output version information and exit" msgstr "-v, --version исписује податке о издању и излази" -#: src/diff3.c:510 +#: src/diff3.c:508 #, c-format msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n" msgstr "Употреба: %s [ОПЦИЈА]... МОЈАТЕКА СТАРАТЕКА ТВОЈАТЕКА\n" -#: src/diff3.c:512 +#: src/diff3.c:510 msgid "Compare three files line by line." msgstr "Поредите три датотеке ред по ред." -#: src/diff3.c:522 +#: src/diff3.c:520 msgid "" "\n" "The default output format is a somewhat human-readable representation of\n" @@ -1256,54 +1257,54 @@ msgstr "" "и да испише тренутно стопљену датотеку. За необичан улаз, ово је много\n" "рогпадније него употреба еда.\n" -#: src/diff3.c:534 +#: src/diff3.c:532 msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble." msgstr "Излазно стање је 0 за успех, 1 за сукобе, 2 за грешку." -#: src/diff3.c:727 +#: src/diff3.c:725 msgid "internal error: screwup in format of diff blocks" msgstr "унутрашња грешка: зез у запису блокова разлика" -#: src/diff3.c:1022 +#: src/diff3.c:1015 #, c-format msgid "%s: diff failed: " msgstr "%s: разлике нису успеле: " -#: src/diff3.c:1044 +#: src/diff3.c:1037 msgid "internal error: invalid diff type in process_diff" msgstr "унутрашња грешка: неисправна врста разлика у „process_diff“" -#: src/diff3.c:1069 +#: src/diff3.c:1060 msgid "invalid diff format; invalid change separator" msgstr "неисправан запис разлика; неисправан раздвојник измена" -#: src/diff3.c:1305 +#: src/diff3.c:1294 msgid "invalid diff format; incomplete last line" msgstr "неисправан облик разлика; непотпун задњи ред" -#: src/diff3.c:1329 src/sdiff.c:276 src/util.c:969 +#: src/diff3.c:1318 src/sdiff.c:274 src/util.c:1069 #, c-format msgid "subsidiary program '%s' could not be invoked" msgstr "помоћни програм „%s“ не може бити покренут" -#: src/diff3.c:1354 +#: src/diff3.c:1343 msgid "invalid diff format; incorrect leading line chars" msgstr "неисправан запис разлика; нетачни водећи знакови реда" -#: src/diff3.c:1427 +#: src/diff3.c:1416 msgid "internal error: invalid diff type passed to output" msgstr "унутрашња грешка: неисправна врста разлика прослеђена излазу" -#: src/diff3.c:1700 src/diff3.c:1757 +#: src/diff3.c:1685 src/diff3.c:1742 msgid "input file shrank" msgstr "улазна датотека се скупила" -#: src/dir.c:156 +#: src/dir.c:154 #, c-format msgid "cannot compare file names '%s' and '%s'" msgstr "не могу поредити називе датотека „%s“ и „%s“" -#: src/dir.c:225 +#: src/dir.c:223 #, c-format msgid "%s: recursive directory loop" msgstr "%s: дубинска петља кроз директоријуме" @@ -1313,120 +1314,120 @@ msgstr "%s: дубинска петља кроз директоријуме" msgid "Thomas Lord" msgstr "Томас Лорд" -#: src/sdiff.c:174 +#: src/sdiff.c:173 msgid "" "-o, --output=FILE operate interactively, sending output to FILE" msgstr "-o, --output=ТЕКА ради међудејствено, шаљући излаз у ТЕКА" -#: src/sdiff.c:176 +#: src/sdiff.c:175 msgid "" "-i, --ignore-case consider upper- and lower-case to be the same" msgstr "-i --ignore-case сматра истим велика и мала слова" -#: src/sdiff.c:177 +#: src/sdiff.c:176 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E --ignore-tab-expansion занемарује промене услед развијања табулатора" -#: src/sdiff.c:178 +#: src/sdiff.c:177 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "-Z, --ignore-trailing-space занемарује размак на крају реда" -#: src/sdiff.c:179 +#: src/sdiff.c:178 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "" "-b --ignore-space-change занемарује промене због количине празног " "простора" -#: src/sdiff.c:180 +#: src/sdiff.c:179 msgid "-W, --ignore-all-space ignore all white space" msgstr "-W --ignore-all-space занемарује све размаке" -#: src/sdiff.c:181 +#: src/sdiff.c:180 msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank" msgstr "-B --ignore-blank-lines занемарује промене услед празних редова" -#: src/sdiff.c:182 +#: src/sdiff.c:181 msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE" msgstr "" "-I, --ignore-matching-lines=РИ занемарује промене чији редови поклапају РИ" -#: src/sdiff.c:183 +#: src/sdiff.c:182 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr " --strip-trailing-cr огољава пратеће на улазу" -#: src/sdiff.c:184 +#: src/sdiff.c:183 msgid "-a, --text treat all files as text" msgstr "-a --text сматра све датотеке као текст" -#: src/sdiff.c:186 +#: src/sdiff.c:185 msgid "" "-w, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-w, --width=БРОЈ исписује на највише БРОЈ (почетно 130) колона" -#: src/sdiff.c:187 +#: src/sdiff.c:186 msgid "" "-l, --left-column output only the left column of common lines" msgstr "" "-l --left-column исписује само леву колону заједничких редова" -#: src/sdiff.c:188 +#: src/sdiff.c:187 msgid "-s, --suppress-common-lines do not output common lines" msgstr "-s --suppress-common-lines не приказује заједничке редове" -#: src/sdiff.c:190 +#: src/sdiff.c:189 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "-t --expand-tabs развија табулаторе у размаке за излаз" -#: src/sdiff.c:191 +#: src/sdiff.c:190 msgid "" " --tabsize=NUM tab stops at every NUM (default 8) print columns" msgstr "" " --tabsize=БРОЈ величина табулатора је БРОЈ (почетно 8) колона" -#: src/sdiff.c:193 +#: src/sdiff.c:192 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "-d --minimal труди се да нађе мањи скуп промена" -#: src/sdiff.c:194 +#: src/sdiff.c:193 msgid "" "-H, --speed-large-files assume large files, many scattered small changes" msgstr "" "-H --speed-large-files за велике датотеке са много раштрканих малих " "измена" -#: src/sdiff.c:195 +#: src/sdiff.c:194 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr " --diff-program=ПРОГРАМ користи ПРОГРАМ за поређење датотека" -#: src/sdiff.c:197 +#: src/sdiff.c:196 msgid " --help display this help and exit" msgstr " --help приказује ову помоћ и излази" -#: src/sdiff.c:198 +#: src/sdiff.c:197 msgid "-v, --version output version information and exit" msgstr "-v --version исписује податке о издању" -#: src/sdiff.c:207 +#: src/sdiff.c:206 #, c-format msgid "Usage: %s [OPTION]... FILE1 FILE2\n" msgstr "Употреба: %s [ОПЦИЈА]... ДАТОТЕКА1 ДАТОТЕКА2\n" -#: src/sdiff.c:209 +#: src/sdiff.c:208 msgid "Side-by-side merge of differences between FILE1 and FILE2." msgstr "Упоредно стапање разлика између ДАТОТЕКЕ1 и ДАТОТЕКЕ2." -#: src/sdiff.c:330 +#: src/sdiff.c:328 msgid "cannot interactively merge standard input" msgstr "не могу интерактивно уклопити стандардни улаз" -#: src/sdiff.c:597 +#: src/sdiff.c:594 msgid "both files to be compared are directories" msgstr "обе датотеке за поређење су директоријуми" -#: src/sdiff.c:820 +#: src/sdiff.c:817 msgid "" "ed:\tEdit then use both versions, each decorated with a header.\n" "eb:\tEdit then use both versions.\n" @@ -1450,12 +1451,12 @@ msgstr "" "v: Умеће заједничке редове бучно.\n" "q: Завршава.\n" -#: src/util.c:662 +#: src/util.c:755 #, c-format msgid "unrecognized prefix: %s" msgstr "непознат префикс: %s" -#: src/util.c:692 +#: src/util.c:785 #, c-format msgid "unparsable value for --palette" msgstr "необрадива вредност за „--palette“" diff --git a/po/sv.gmo b/po/sv.gmo index 03460c7de7b4681649b21ca7e3bfcbd5d6738589..bb0eb5c29a0f232e9e8c098e1fd0756dc0dc789c 100644 GIT binary patch delta 40 wcmey?$@Hz0X~Qlr77INS, 1996, 2001, 2002, 2004, 2006, 2010, 2011, 2012, 2017, 2018, 2021. +# Göran Uddeborg , 1996, 2001, 2002, 2004, 2006, 2010, 2011, 2012, 2017, 2018, 2021, 2023. # -# $Revision: 1.52 $ +# $Revision: 1.54 $ # msgid "" msgstr "" -"Project-Id-Version: diffutils 3.7.41\n" +"Project-Id-Version: diffutils 3.8.43\n" "Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n" -"POT-Creation-Date: 2021-08-01 18:56-0700\n" -"PO-Revision-Date: 2021-07-20 11:16+0200\n" +"POT-Creation-Date: 2023-05-21 01:51-0700\n" +"PO-Revision-Date: 2023-01-15 13:06+0100\n" "Last-Translator: Göran Uddeborg \n" "Language-Team: Swedish \n" "Language: sv\n" @@ -19,29 +19,29 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "X-Bugs: Report translation errors to the Language-Team address.\n" -#: lib/argmatch.c:132 +#: lib/argmatch.c:145 #, c-format msgid "invalid argument %s for %s" msgstr "ogiltigt argument %s till %s" -#: lib/argmatch.c:133 +#: lib/argmatch.c:146 #, c-format msgid "ambiguous argument %s for %s" msgstr "tvetydigt argument %s till %s" -#: lib/argmatch.c:152 lib/argmatch.h:223 +#: lib/argmatch.c:165 lib/argmatch.h:242 msgid "Valid arguments are:" msgstr "Giltiga argument är:" -#: lib/c-stack.c:187 +#: lib/c-stack.c:186 msgid "program error" msgstr "programfel" -#: lib/c-stack.c:188 +#: lib/c-stack.c:187 msgid "stack overflow" msgstr "stackspill" -#: lib/error.c:195 +#: lib/error.c:193 msgid "Unknown system error" msgstr "Okänt systemfel" @@ -197,83 +197,83 @@ msgstr "%s: flaggan behöver ett argument – ”%c”\n" #. If you don't know what to put here, please see #. #. and use glyphs suitable for your language. -#: lib/quotearg.c:355 +#: lib/quotearg.c:354 msgid "`" msgstr "”" -#: lib/quotearg.c:356 +#: lib/quotearg.c:355 msgid "'" msgstr "”" -#: lib/regcomp.c:135 +#: lib/regcomp.c:122 msgid "Success" msgstr "Lyckades" -#: lib/regcomp.c:138 +#: lib/regcomp.c:125 msgid "No match" msgstr "Ingen träff" -#: lib/regcomp.c:141 +#: lib/regcomp.c:128 msgid "Invalid regular expression" msgstr "Ogiltigt reguljäruttryck" -#: lib/regcomp.c:144 +#: lib/regcomp.c:131 msgid "Invalid collation character" msgstr "Ogiltigt sorteringstecken" -#: lib/regcomp.c:147 +#: lib/regcomp.c:134 msgid "Invalid character class name" msgstr "Ogiltigt namn pÃ¥ teckenklass" -#: lib/regcomp.c:150 +#: lib/regcomp.c:137 msgid "Trailing backslash" msgstr "Avslutande omvänt snedstreck" -#: lib/regcomp.c:153 +#: lib/regcomp.c:140 msgid "Invalid back reference" msgstr "Ogiltig bakÃ¥treferens" -#: lib/regcomp.c:156 +#: lib/regcomp.c:143 msgid "Unmatched [, [^, [:, [., or [=" msgstr "Oparad [, [^, [:, [. eller [=" -#: lib/regcomp.c:159 +#: lib/regcomp.c:146 msgid "Unmatched ( or \\(" msgstr "Oparad ( eller \\(" -#: lib/regcomp.c:162 +#: lib/regcomp.c:149 msgid "Unmatched \\{" msgstr "Oparad \\{" -#: lib/regcomp.c:165 +#: lib/regcomp.c:152 msgid "Invalid content of \\{\\}" msgstr "Ogiltigt innehÃ¥ll i \\{\\}" -#: lib/regcomp.c:168 +#: lib/regcomp.c:155 msgid "Invalid range end" msgstr "Ogiltigt intervallslut" -#: lib/regcomp.c:171 +#: lib/regcomp.c:158 msgid "Memory exhausted" msgstr "Minnet slut" -#: lib/regcomp.c:174 +#: lib/regcomp.c:161 msgid "Invalid preceding regular expression" msgstr "FöregÃ¥ende reguljäruttryck ogiltigt" -#: lib/regcomp.c:177 +#: lib/regcomp.c:164 msgid "Premature end of regular expression" msgstr "Förtida slut pÃ¥ reguljäruttryck" -#: lib/regcomp.c:180 +#: lib/regcomp.c:167 msgid "Regular expression too big" msgstr "För stort reguljäruttryck" -#: lib/regcomp.c:183 +#: lib/regcomp.c:170 msgid "Unmatched ) or \\)" msgstr "Oparad ) eller \\)" -#: lib/regcomp.c:676 +#: lib/regcomp.c:650 msgid "No previous regular expression" msgstr "Inget föregÃ¥ende reguljäruttryck" @@ -470,17 +470,17 @@ msgstr "%s hemsida: <%s>\n" msgid "General help using GNU software: <%s>\n" msgstr "Allmän hjälp med att använda GNU-program: <%s>\n" -#: src/analyze.c:454 src/diff.c:1406 +#: src/analyze.c:455 src/diff.c:1478 #, c-format msgid "Files %s and %s differ\n" msgstr "Filerna %s och %s skiljer\n" -#: src/analyze.c:455 +#: src/analyze.c:456 #, c-format msgid "Binary files %s and %s differ\n" msgstr "De binära filerna %s och %s skiljer\n" -#: src/analyze.c:706 src/diff3.c:1470 src/util.c:1254 +#: src/analyze.c:707 src/diff3.c:1457 src/util.c:1354 msgid "No newline at end of file" msgstr "Ingen nyrad vid filslut" @@ -494,40 +494,41 @@ msgstr "Torbjörn Granlund" msgid "David MacKenzie" msgstr "David MacKenzie" -#: src/cmp.c:120 src/diff.c:879 src/diff3.c:467 src/sdiff.c:160 +#: src/cmp.c:124 src/diff.c:939 src/diff3.c:465 src/sdiff.c:159 #, c-format msgid "Try '%s --help' for more information." msgstr "Försök med ”%s --help” för mer information." -#: src/cmp.c:138 +#: src/cmp.c:142 #, c-format msgid "invalid --ignore-initial value '%s'" msgstr "ogiltigt --ignore-initial-värde ”%s”" -#: src/cmp.c:148 +#: src/cmp.c:152 #, c-format msgid "options -l and -s are incompatible" msgstr "flaggorna -l och -s är motstridiga" -#: src/cmp.c:156 src/diff.c:887 src/diff3.c:474 src/sdiff.c:168 src/sdiff.c:316 -#: src/sdiff.c:323 src/sdiff.c:876 src/util.c:852 src/util.c:952 src/util.c:959 +#: src/cmp.c:160 src/diff.c:947 src/diff3.c:472 src/sdiff.c:167 src/sdiff.c:314 +#: src/sdiff.c:321 src/sdiff.c:873 src/util.c:952 src/util.c:1052 +#: src/util.c:1059 msgid "write failed" msgstr "skrivning misslyckades" -#: src/cmp.c:158 src/diff.c:889 src/diff.c:1471 src/diff3.c:476 src/sdiff.c:170 +#: src/cmp.c:162 src/diff.c:949 src/diff.c:1543 src/diff3.c:474 src/sdiff.c:169 msgid "standard output" msgstr "standard ut" -#: src/cmp.c:162 +#: src/cmp.c:166 msgid "-b, --print-bytes print differing bytes" msgstr "-b --print-bytes skriv ut byte som skiljer" -#: src/cmp.c:163 +#: src/cmp.c:167 msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs" msgstr "" "-i, --ignore-initial=HOPP hoppa över de första HOPP byte indata" -#: src/cmp.c:164 +#: src/cmp.c:168 msgid "" "-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n" " first SKIP2 bytes of FILE2" @@ -536,39 +537,39 @@ msgstr "" "och\n" " de HOPP2 första byten i FIL2" -#: src/cmp.c:166 +#: src/cmp.c:170 msgid "" "-l, --verbose output byte numbers and differing byte values" msgstr "" "-l, --verbose skriv ut bytenummer och värde för alla skiljande " "byte" -#: src/cmp.c:167 +#: src/cmp.c:171 msgid "-n, --bytes=LIMIT compare at most LIMIT bytes" msgstr "-n, --bytes=GRÄNS jämför högst GRÄNS byte" -#: src/cmp.c:168 +#: src/cmp.c:172 msgid "-s, --quiet, --silent suppress all normal output" msgstr "-s, --quiet, --silent undertryck all normal utskrift" -#: src/cmp.c:169 +#: src/cmp.c:173 msgid " --help display this help and exit" msgstr " --help visa denna hjälp och avsluta" -#: src/cmp.c:170 +#: src/cmp.c:174 msgid "-v, --version output version information and exit" msgstr "-v --version visa versionsinformation och avsluta" -#: src/cmp.c:179 +#: src/cmp.c:183 #, c-format msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n" msgstr "Användning: %s [FLAGGA]... FIL1 [FIL2 [HOPP1 [HOPP2]]]\n" -#: src/cmp.c:181 +#: src/cmp.c:185 msgid "Compare two files byte by byte." msgstr "Jämför tvÃ¥ filer byte för byte." -#: src/cmp.c:183 +#: src/cmp.c:187 msgid "" "The optional SKIP1 and SKIP2 specify the number of bytes to skip\n" "at the beginning of each file (zero by default)." @@ -576,14 +577,14 @@ msgstr "" "De valfria HOPP1 och HOPP2 anger antalet byte att hoppa över\n" "i början varje fil (noll som standard)." -#: src/cmp.c:186 src/diff.c:999 src/diff3.c:514 src/sdiff.c:211 +#: src/cmp.c:190 src/diff.c:1059 src/diff3.c:512 src/sdiff.c:210 msgid "" "Mandatory arguments to long options are mandatory for short options too.\n" msgstr "" "Obligatoriska argument till lÃ¥nga flaggor är obligatoriska även för de " "korta.\n" -#: src/cmp.c:192 +#: src/cmp.c:196 msgid "" "SKIP values may be followed by the following multiplicative suffixes:\n" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" @@ -593,190 +594,190 @@ msgstr "" "kB 1000, K 1024, MB 1 000 000, M 1 048 576\n" "GB 1 000 000 000, G 1 073 741 824, och sÃ¥ vidare för T, P, E, Z, Y." -#: src/cmp.c:195 +#: src/cmp.c:199 msgid "If a FILE is '-' or missing, read standard input." msgstr "Om FIL är ”-” eller utelämnats, läs standard in." -#: src/cmp.c:196 src/diff.c:987 src/sdiff.c:221 +#: src/cmp.c:200 src/diff.c:1047 src/sdiff.c:220 msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble." msgstr "Slutsstatus är 0 om indata är lika, 1 om olika, 2 vid problem." -#: src/cmp.c:243 +#: src/cmp.c:247 #, c-format msgid "invalid --bytes value '%s'" msgstr "ogiltigt --bytes-värde ”%s”" -#: src/cmp.c:269 src/diff.c:797 src/diff3.c:361 src/sdiff.c:567 +#: src/cmp.c:273 src/diff.c:857 src/diff3.c:368 src/sdiff.c:564 #, c-format msgid "missing operand after '%s'" msgstr "saknad operand efter ”%s”" -#: src/cmp.c:281 src/diff.c:799 src/diff3.c:363 src/sdiff.c:569 +#: src/cmp.c:285 src/diff.c:859 src/diff3.c:370 src/sdiff.c:566 #, c-format msgid "extra operand '%s'" msgstr "extra operand ”%s”" -#: src/cmp.c:507 +#: src/cmp.c:521 #, c-format msgid "%s %s differ: byte %s, line %s\n" msgstr "%s %s skiljer: byte %s, rad %s\n" -#: src/cmp.c:523 +#: src/cmp.c:537 #, c-format msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n" msgstr "%s %s skiljer: byte %s, rad %s är %3o %s %3o %s\n" -#: src/cmp.c:580 +#: src/cmp.c:594 #, c-format msgid "cmp: EOF on %s which is empty\n" msgstr "cmp: EOF i %s som är tom\n" -#: src/cmp.c:594 +#: src/cmp.c:608 #, c-format msgid "cmp: EOF on %s after byte %s, line %s\n" msgstr "cmp: EOF i %s efter byte %s, rad %s\n" -#: src/cmp.c:595 +#: src/cmp.c:609 #, c-format msgid "cmp: EOF on %s after byte %s, in line %s\n" msgstr "cmp: EOF i %s efter byte %s, pÃ¥ rad %s\n" -#: src/cmp.c:601 +#: src/cmp.c:615 #, c-format msgid "cmp: EOF on %s after byte %s\n" msgstr "cmp: EOF i %s efter byte %s\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:51 +#: src/diff.c:50 msgid "Paul Eggert" msgstr "Paul Eggert" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:52 +#: src/diff.c:51 msgid "Mike Haertel" msgstr "Mike Haertel" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:53 +#: src/diff.c:52 msgid "David Hayes" msgstr "David Hayes" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:54 +#: src/diff.c:53 msgid "Richard Stallman" msgstr "Richard Stallman" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:55 +#: src/diff.c:54 msgid "Len Tower" msgstr "Len Tower" -#: src/diff.c:355 +#: src/diff.c:365 #, c-format msgid "invalid context length '%s'" msgstr "ogiltig omgivningslängd ”%s”" -#: src/diff.c:438 +#: src/diff.c:487 #, c-format msgid "pagination not supported on this host" msgstr "sidvisning stödjs ej pÃ¥ denna värd" -#: src/diff.c:453 src/diff3.c:341 +#: src/diff.c:502 src/diff3.c:348 #, c-format msgid "too many file label options" msgstr "för mÃ¥nga etikettflaggor" -#: src/diff.c:530 +#: src/diff.c:579 #, c-format msgid "invalid width '%s'" msgstr "ogiltig bredd ”%s”" -#: src/diff.c:534 +#: src/diff.c:583 msgid "conflicting width options" msgstr "konflikt mellan breddflaggor" -#: src/diff.c:559 +#: src/diff.c:608 #, c-format msgid "invalid horizon length '%s'" msgstr "ogiltig horisontlängd ”%s”" -#: src/diff.c:615 +#: src/diff.c:664 #, c-format msgid "invalid tabsize '%s'" msgstr "ogiltigt tabulatorsteg ”%s”" -#: src/diff.c:619 +#: src/diff.c:668 msgid "conflicting tabsize options" msgstr "konflikt mellan tabulatorflaggor" -#: src/diff.c:774 +#: src/diff.c:834 msgid "--from-file and --to-file both specified" msgstr "bÃ¥de --from-file och --to-file angavs" -#: src/diff.c:893 +#: src/diff.c:953 msgid " --normal output a normal diff (the default)" msgstr " --normal skriv ut en normal diff (standard)" -#: src/diff.c:894 +#: src/diff.c:954 msgid "-q, --brief report only when files differ" msgstr "-q, --brief rapportera endast när filer skiljer sig" -#: src/diff.c:895 +#: src/diff.c:955 msgid "-s, --report-identical-files report when two files are the same" msgstr "-s --report-identical-files rapportera om tvÃ¥ filer är lika" -#: src/diff.c:896 +#: src/diff.c:956 msgid "" "-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context" msgstr "" "-c, -C ANT, --context[=ANT] skriv ANT (3 som standard) rader kopia av " "sammanhang" -#: src/diff.c:897 +#: src/diff.c:957 msgid "" "-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context" msgstr "" "-u, -U ANT, --unified[=ANT] skriv ut ANT (3 som standard) rader med\n" " sammanslagen omgivning" -#: src/diff.c:898 +#: src/diff.c:958 msgid "-e, --ed output an ed script" msgstr "-e, --ed skriv ut ett ed-skript" -#: src/diff.c:899 +#: src/diff.c:959 msgid "-n, --rcs output an RCS format diff" msgstr "-n, --rcs skriv ut skillnader i RCS-format" -#: src/diff.c:900 +#: src/diff.c:960 msgid "-y, --side-by-side output in two columns" msgstr "-y, --side-by-side skriv ut i tvÃ¥ kolumner" -#: src/diff.c:901 +#: src/diff.c:961 msgid "" "-W, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-W, --width=ANT skriv ut högst ANT (130 som standard) kolumner" -#: src/diff.c:902 +#: src/diff.c:962 msgid "" " --left-column output only the left column of common lines" msgstr "" " --left-column skriv ut endast vänstra kolumnen av gemensamma " "rader" -#: src/diff.c:903 +#: src/diff.c:963 msgid " --suppress-common-lines do not output common lines" msgstr " --suppress-common-lines skriv inte ut gemensamma rader" -#: src/diff.c:905 +#: src/diff.c:965 msgid "-p, --show-c-function show which C function each change is in" msgstr "-p, --show-c-function visa vilken C-funktion varje rad finns i" -#: src/diff.c:906 +#: src/diff.c:966 msgid "-F, --show-function-line=RE show the most recent line matching RE" msgstr "-F, --show-function-line=RU visa den senaste raden som matchar RU" -#: src/diff.c:907 +#: src/diff.c:967 msgid "" " --label LABEL use LABEL instead of file name and timestamp\n" " (can be repeated)" @@ -784,23 +785,23 @@ msgstr "" " --label ETIKETT använd ETIKETT istället för filnamn och\n" " tidsstämpel (kan upprepas)" -#: src/diff.c:910 +#: src/diff.c:970 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "" "-t, --expand-tabs expandera tabulatorer till blanksteg i utdata" -#: src/diff.c:911 +#: src/diff.c:971 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T, --initial-tab justera tabulatorer genom att skjuta in en" -#: src/diff.c:912 +#: src/diff.c:972 msgid "" " --tabsize=NUM tab stops every NUM (default 8) print columns" msgstr "" " --tabsize=N tabulatorstopp var N:e (8 som standard) kolumn" -#: src/diff.c:913 +#: src/diff.c:973 msgid "" " --suppress-blank-empty suppress space or tab before empty output lines" msgstr "" @@ -808,54 +809,54 @@ msgstr "" "tomma\n" " utrader" -#: src/diff.c:914 +#: src/diff.c:974 msgid "-l, --paginate pass output through 'pr' to paginate it" msgstr "-l, --paginate skicka utdata till ”pr” för paginering" -#: src/diff.c:916 +#: src/diff.c:976 msgid "" "-r, --recursive recursively compare any subdirectories found" msgstr "" "-r, --recursive jämför underkataloger som hittas rekursivt" -#: src/diff.c:917 +#: src/diff.c:977 msgid " --no-dereference don't follow symbolic links" msgstr " --no-dereference följ inte symboliska länkar" -#: src/diff.c:918 +#: src/diff.c:978 msgid "-N, --new-file treat absent files as empty" msgstr "-N, --new-file behandla saknade filer som tomma" -#: src/diff.c:919 +#: src/diff.c:979 msgid " --unidirectional-new-file treat absent first files as empty" msgstr " --unidirectional-new-file behandla saknade förstafiler som tomma" -#: src/diff.c:920 +#: src/diff.c:980 msgid " --ignore-file-name-case ignore case when comparing file names" msgstr "" " --ignore-file-name-case bortse frÃ¥n skiftläge när filnamn jämförs" -#: src/diff.c:921 +#: src/diff.c:981 msgid " --no-ignore-file-name-case consider case when comparing file names" msgstr "" " --no-ignore-file-name-case ta hänsyn till skiftläge när filnamn jämförs" -#: src/diff.c:922 +#: src/diff.c:982 msgid "-x, --exclude=PAT exclude files that match PAT" msgstr "-x, --exclude=MNS ta inte med filer som matchar MNS" -#: src/diff.c:923 +#: src/diff.c:983 msgid "" "-X, --exclude-from=FILE exclude files that match any pattern in FILE" msgstr "" "-X, --exclude-from=FIL uteslut filer som matchar nÃ¥got mönster i FIL" -#: src/diff.c:924 +#: src/diff.c:984 msgid "" "-S, --starting-file=FILE start with FILE when comparing directories" msgstr "-S, --starting-file=FIL börja med FIL när kataloger jämförs" -#: src/diff.c:925 +#: src/diff.c:985 msgid "" " --from-file=FILE1 compare FILE1 to all operands;\n" " FILE1 can be a directory" @@ -863,7 +864,7 @@ msgstr "" " --from-file=FIL1 jämför FIL1 med alla operander;\n" " FIL1 kan vara en katalog" -#: src/diff.c:927 +#: src/diff.c:987 msgid "" " --to-file=FILE2 compare all operands to FILE2;\n" " FILE2 can be a directory" @@ -871,79 +872,79 @@ msgstr "" " --to-file=FIL2 jämför alla operander med FIL2;\n" " FIL2 kan vara en katalog" -#: src/diff.c:930 +#: src/diff.c:990 msgid "" "-i, --ignore-case ignore case differences in file contents" msgstr "" "-i, --ignore-case bortse frÃ¥n skillnader i skiftläge i " "filinnehÃ¥ll" -#: src/diff.c:931 +#: src/diff.c:991 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E, --ignore-tab-expansion bortse frÃ¥n ändringar pÃ¥ grund av tab-" "expansion" -#: src/diff.c:932 +#: src/diff.c:992 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "" "-Z, --ignore-trailing-space ignorera alla blanktecken i slutet av raden" -#: src/diff.c:933 +#: src/diff.c:993 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "-b, --ignore-space-change bortse frÃ¥n ändringar i antalet blanka" -#: src/diff.c:934 +#: src/diff.c:994 msgid "-w, --ignore-all-space ignore all white space" msgstr "-w, --ignore-all-space bortse frÃ¥n alla blanktecken" -#: src/diff.c:935 +#: src/diff.c:995 msgid "" "-B, --ignore-blank-lines ignore changes where lines are all blank" msgstr "" "-B, --ignore-blank-lines bortse frÃ¥n ändringar där raderna är helt " "blanka" -#: src/diff.c:936 +#: src/diff.c:996 msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE" msgstr "" "-I, --ignore-matching-lines=RU bortse frÃ¥n ändringar där alla rader matchar " "RU" -#: src/diff.c:938 +#: src/diff.c:998 msgid "-a, --text treat all files as text" msgstr "-a, --text behandla alla filer som text" -#: src/diff.c:939 +#: src/diff.c:999 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr tag bort avslutande vagnreturer i indata" -#: src/diff.c:941 +#: src/diff.c:1001 msgid " --binary read and write data in binary mode" msgstr " --binary läs och skriv data binärt" -#: src/diff.c:944 +#: src/diff.c:1004 msgid "" "-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs" msgstr "" "-D, --ifdef=NAMN skriv sammanslagen fil med skillnader inom\n" " ”#ifdef NAMN”" -#: src/diff.c:945 +#: src/diff.c:1005 msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT" msgstr " --GTYP-group-format=GFMT formatera GTYP-ingrupper med GFMT" -#: src/diff.c:946 +#: src/diff.c:1006 msgid " --line-format=LFMT format all input lines with LFMT" msgstr " --line-format=RFMT formatera alla inrader med RFMT" -#: src/diff.c:947 +#: src/diff.c:1007 msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT" msgstr " --RTYP-line-format=RFMT formatera RTYP-inrader med RFMT" -#: src/diff.c:948 +#: src/diff.c:1008 msgid "" " These format options provide fine-grained control over the output\n" " of diff, generalizing -D/--ifdef." @@ -951,12 +952,12 @@ msgstr "" " Dessa formatflaggor gör det möjligt att finjustera utskriften frÃ¥n\n" " diff, generaliserande -D/--ifdef." -#: src/diff.c:950 +#: src/diff.c:1010 msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'." msgstr "" " RTYP är ”old”, ”new” eller ”unchanged”. GTYP är RTYP eller ”changed”." -#: src/diff.c:951 +#: src/diff.c:1011 msgid "" " GFMT (only) may contain:\n" " %< lines from FILE1\n" @@ -984,7 +985,7 @@ msgstr "" " M L+1\n" " %(A=B?T:E) om A är lika med B dÃ¥ T annars E" -#: src/diff.c:963 +#: src/diff.c:1023 msgid "" " LFMT (only) may contain:\n" " %L contents of line\n" @@ -996,7 +997,7 @@ msgstr "" " %l radinnehÃ¥ll exklusive avslutande nyrad\n" " %[-][BREDD][.[PREC]]{doxX}n printf-stil spec. för inradnummer" -#: src/diff.c:967 +#: src/diff.c:1027 msgid "" " Both GFMT and LFMT may contain:\n" " %% %\n" @@ -1010,23 +1011,23 @@ msgstr "" " %c'\\OOO' tecknet med oktalkod OOO\n" " T tecknet T (övriga tecken representerar sig själva)" -#: src/diff.c:973 +#: src/diff.c:1033 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "" "-d, --minimal arbeta hÃ¥rt för att hitta en mindre mängd av " "ändringar" -#: src/diff.c:974 +#: src/diff.c:1034 msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix" msgstr "" " --horizon-lines=ANT spara ANT rader av gemensamt prefix och suffix" -#: src/diff.c:975 +#: src/diff.c:1035 msgid "" " --speed-large-files assume large files and many scattered small changes" msgstr " --speed-large-files antag stora filer och smÃ¥ spridda ändringar" -#: src/diff.c:976 +#: src/diff.c:1036 msgid "" " --color[=WHEN] color output; WHEN is 'never', 'always', or " "'auto';\n" @@ -1036,7 +1037,7 @@ msgstr "" "eller\n" " ”auto”; bara --color betyder --color='auto'" -#: src/diff.c:978 +#: src/diff.c:1038 msgid "" " --palette=PALETTE the colors to use when --color is active; PALETTE " "is\n" @@ -1046,113 +1047,113 @@ msgstr "" "är\n" " en kolonseparerad lista av terminfoförmÃ¥gor" -#: src/diff.c:981 +#: src/diff.c:1041 msgid " --help display this help and exit" msgstr " --help visa denna hjälp och avsluta" -#: src/diff.c:982 +#: src/diff.c:1042 msgid "-v, --version output version information and exit" msgstr "-v, --version visa versionsinformation och avsluta" -#: src/diff.c:984 +#: src/diff.c:1044 msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'." msgstr "" "FILER är ”FIL1 FIL2” eller ”KAT1 KAT2” eller ”KAT FIL” eller ”FIL KAT”." -#: src/diff.c:985 +#: src/diff.c:1045 msgid "" "If --from-file or --to-file is given, there are no restrictions on FILE(s)." msgstr "" "Om --from-file eller --to-file är angivet finns det inga begränsningar\n" "pÃ¥ FILER." -#: src/diff.c:986 src/diff3.c:533 src/sdiff.c:220 +#: src/diff.c:1046 src/diff3.c:531 src/sdiff.c:219 msgid "If a FILE is '-', read standard input." msgstr "Om en FIL är ”-”, läs standard in." -#: src/diff.c:996 +#: src/diff.c:1056 #, c-format msgid "Usage: %s [OPTION]... FILES\n" msgstr "Användning: %s [FLAGGA]... FILER\n" -#: src/diff.c:997 +#: src/diff.c:1057 msgid "Compare FILES line by line." msgstr "Jämför FILER rad för rad." -#: src/diff.c:1034 +#: src/diff.c:1094 #, c-format msgid "conflicting %s option value '%s'" msgstr "motstridigt %s-flaggsvärde ”%s”" -#: src/diff.c:1047 +#: src/diff.c:1107 #, c-format msgid "conflicting output style options" msgstr "motstridig utmatningsstilsflagga" -#: src/diff.c:1063 +#: src/diff.c:1123 #, c-format msgid "invalid color '%s'" msgstr "ogiltig färg ”%s”" -#: src/diff.c:1119 src/diff.c:1329 +#: src/diff.c:1197 src/diff.c:1401 #, c-format msgid "Only in %s: %s\n" msgstr "Endast i %s: %s\n" -#: src/diff.c:1253 +#: src/diff.c:1325 msgid "cannot compare '-' to a directory" msgstr "kan inte jämföra ”-” med en katalog" -#: src/diff.c:1288 +#: src/diff.c:1360 msgid "-D option not supported with directories" msgstr "flaggan -D stödjs ej för kataloger" -#: src/diff.c:1297 +#: src/diff.c:1369 #, c-format msgid "Common subdirectories: %s and %s\n" msgstr "Lika underkataloger: %s och %s\n" -#: src/diff.c:1339 src/diff.c:1389 +#: src/diff.c:1411 src/diff.c:1461 #, c-format msgid "File %s is a %s while file %s is a %s\n" msgstr "Filen %s är %s medan filen %s är %s\n" -#: src/diff.c:1375 +#: src/diff.c:1447 #, c-format msgid "Symbolic links %s and %s differ\n" msgstr "De symboliska länkarna %s och %s skiljer\n" -#: src/diff.c:1462 +#: src/diff.c:1534 #, c-format msgid "Files %s and %s are identical\n" msgstr "Filerna %s och %s är lika\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff3.c:43 +#: src/diff3.c:51 msgid "Randy Smith" msgstr "Randy Smith" -#: src/diff3.c:356 +#: src/diff3.c:363 #, c-format msgid "incompatible options" msgstr "oförenliga flaggor" -#: src/diff3.c:396 +#: src/diff3.c:403 msgid "'-' specified for more than one input file" msgstr "”-” angivet för mer än en infil" -#: src/diff3.c:447 src/diff3.c:1295 src/diff3.c:1698 src/diff3.c:1753 -#: src/sdiff.c:308 src/sdiff.c:846 src/sdiff.c:857 +#: src/diff3.c:445 src/diff3.c:1284 src/diff3.c:1683 src/diff3.c:1738 +#: src/sdiff.c:306 src/sdiff.c:843 src/sdiff.c:854 msgid "read failed" msgstr "läsning misslyckades" -#: src/diff3.c:480 +#: src/diff3.c:478 msgid "-A, --show-all output all changes, bracketing conflicts" msgstr "" "-A, --show-all skriv alla ändringar med markering runt " "konflikter" -#: src/diff3.c:482 +#: src/diff3.c:480 msgid "" "-e, --ed output ed script incorporating changes\n" " from OLDFILE to YOURFILE into MYFILE" @@ -1160,12 +1161,12 @@ msgstr "" "-e, --ed skriv ut ett ed-skript som innehÃ¥ller ändringar\n" " frÃ¥n GAMMALFIL till DINFIL i MINFIL" -#: src/diff3.c:484 +#: src/diff3.c:482 msgid "-E, --show-overlap like -e, but bracket conflicts" msgstr "" "-E, --show-overlap som -e, men med markeringar runt konflikter" -#: src/diff3.c:485 +#: src/diff3.c:483 msgid "" "-3, --easy-only like -e, but incorporate only nonoverlapping " "changes" @@ -1173,22 +1174,22 @@ msgstr "" "-3, --easy-only som -e, men tag endast med ej överlappande " "ändringar" -#: src/diff3.c:486 +#: src/diff3.c:484 msgid "" "-x, --overlap-only like -e, but incorporate only overlapping changes" msgstr "" "-x, --overlap-only som -e, men tag endast med överlappande ändringar" -#: src/diff3.c:487 +#: src/diff3.c:485 msgid "-X like -x, but bracket conflicts" msgstr "-X som -x, men skriv klamrar om konflikter" -#: src/diff3.c:488 +#: src/diff3.c:486 msgid "-i append 'w' and 'q' commands to ed scripts" msgstr "" "-i lägg till ”w”- och ”q”-kommandon till ed-skript" -#: src/diff3.c:490 +#: src/diff3.c:488 msgid "" "-m, --merge output actual merged file, according to\n" " -A if no other options are given" @@ -1196,25 +1197,25 @@ msgstr "" "-m, --merge skriv ut en faktiskt sammanslagen fil, enligt\n" " -A om inga andra flaggor ges" -#: src/diff3.c:493 +#: src/diff3.c:491 msgid "-a, --text treat all files as text" msgstr "-a, --text betrakta alla filer som text" -#: src/diff3.c:494 +#: src/diff3.c:492 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr " --strip-trailing-cr tag bort avslutande vagnreturer i indata" -#: src/diff3.c:495 +#: src/diff3.c:493 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T, --initial-tab justera tabulatorer genom att skjuta in en " "tabulator" -#: src/diff3.c:496 +#: src/diff3.c:494 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr " --diff-program=PROGRAM använd PROGRAM för att jämföra filer" -#: src/diff3.c:497 +#: src/diff3.c:495 msgid "" "-L, --label=LABEL use LABEL instead of file name\n" " (can be repeated up to three times)" @@ -1222,24 +1223,24 @@ msgstr "" "-L, --label=ETIKETT använd ETIKETT istället för filnamn\n" " (kan upprepas upp till tre gÃ¥nger)" -#: src/diff3.c:500 +#: src/diff3.c:498 msgid " --help display this help and exit" msgstr " --help visa denna hjälp och avsluta" -#: src/diff3.c:501 +#: src/diff3.c:499 msgid "-v, --version output version information and exit" msgstr "-v, --version visa versionsinformation och avsluta" -#: src/diff3.c:510 +#: src/diff3.c:508 #, c-format msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n" msgstr "Användning: %s [FLAGGA]... MINFIL GAMMALFIL DINFIL\n" -#: src/diff3.c:512 +#: src/diff3.c:510 msgid "Compare three files line by line." msgstr "Jämför tre filer rad för rad." -#: src/diff3.c:522 +#: src/diff3.c:520 msgid "" "\n" "The default output format is a somewhat human-readable representation of\n" @@ -1265,54 +1266,54 @@ msgstr "" "och skriva ut den faktiskt sammanslagna filen. För ovanlig indata är detta\n" "mer robust än att använda ed.\n" -#: src/diff3.c:534 +#: src/diff3.c:532 msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble." msgstr "Slutstatus är 0 om allt bra, 1 vid konflikt, 2 vid problem." -#: src/diff3.c:727 +#: src/diff3.c:725 msgid "internal error: screwup in format of diff blocks" msgstr "internt fel: trasigt format i diff-block" -#: src/diff3.c:1022 +#: src/diff3.c:1015 #, c-format msgid "%s: diff failed: " msgstr "%s: diff misslyckades: " -#: src/diff3.c:1044 +#: src/diff3.c:1037 msgid "internal error: invalid diff type in process_diff" msgstr "internt fel: ogiltig diff-typ i process_diff" -#: src/diff3.c:1069 +#: src/diff3.c:1060 msgid "invalid diff format; invalid change separator" msgstr "ogiltigt diff-format; ogiltig ändringsseparator" -#: src/diff3.c:1305 +#: src/diff3.c:1294 msgid "invalid diff format; incomplete last line" msgstr "ogiltigt diff-format; ofullständig sista rad" -#: src/diff3.c:1329 src/sdiff.c:276 src/util.c:969 +#: src/diff3.c:1318 src/sdiff.c:274 src/util.c:1069 #, c-format msgid "subsidiary program '%s' could not be invoked" msgstr "underprogram ”%s” kunde inte startas" -#: src/diff3.c:1354 +#: src/diff3.c:1343 msgid "invalid diff format; incorrect leading line chars" msgstr "ogiltigt diff-format; felaktiga starttecken pÃ¥ rad" -#: src/diff3.c:1427 +#: src/diff3.c:1416 msgid "internal error: invalid diff type passed to output" msgstr "internt fel: ogiltig diff-typ utskickad" -#: src/diff3.c:1700 src/diff3.c:1757 +#: src/diff3.c:1685 src/diff3.c:1742 msgid "input file shrank" msgstr "infilen krympte" -#: src/dir.c:156 +#: src/dir.c:154 #, c-format msgid "cannot compare file names '%s' and '%s'" msgstr "kan inte jämföra filnamnen ”%s” och ”%s”" -#: src/dir.c:225 +#: src/dir.c:223 #, c-format msgid "%s: recursive directory loop" msgstr "%s: rekursiv katalogslinga" @@ -1322,124 +1323,124 @@ msgstr "%s: rekursiv katalogslinga" msgid "Thomas Lord" msgstr "Thomas Lord" -#: src/sdiff.c:174 +#: src/sdiff.c:173 msgid "" "-o, --output=FILE operate interactively, sending output to FILE" msgstr "-o, --output=FIL kör interaktivt, med utdata till FIL" -#: src/sdiff.c:176 +#: src/sdiff.c:175 msgid "" "-i, --ignore-case consider upper- and lower-case to be the same" msgstr "-i, --ignore-case betrakta versaler och gemena som lika" -#: src/sdiff.c:177 +#: src/sdiff.c:176 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E, --ignore-tab-expansion ignorera ändringar pÃ¥ grund av " "tabulatorexpansion" -#: src/sdiff.c:178 +#: src/sdiff.c:177 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "" "-Z, --ignore-trailing-space ignorera alla blanktecken i slutet av raden" -#: src/sdiff.c:179 +#: src/sdiff.c:178 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "-b, --ignore-space-change ignorera ändringar i antalet blanka" -#: src/sdiff.c:180 +#: src/sdiff.c:179 msgid "-W, --ignore-all-space ignore all white space" msgstr "-W, --ignore-all-space ignorera alla blanktecken" -#: src/sdiff.c:181 +#: src/sdiff.c:180 msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank" msgstr "" "-B, --ignore-blank-lines ignorera ändringar i form av enbart blanka rader" -#: src/sdiff.c:182 +#: src/sdiff.c:181 msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE" msgstr "" "-I, --ignore-matching-lines=RU bortse frÃ¥n ändringar vars alla rader " "matchar RU" -#: src/sdiff.c:183 +#: src/sdiff.c:182 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr " --strip-trailing-cr tag bort avslutande vagnreturer i indata" -#: src/sdiff.c:184 +#: src/sdiff.c:183 msgid "-a, --text treat all files as text" msgstr "-a, --text behandla alla filer som text" -#: src/sdiff.c:186 +#: src/sdiff.c:185 msgid "" "-w, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-w, --width=ANT skriv ut högst ANT (130 som standard) kolumner" -#: src/sdiff.c:187 +#: src/sdiff.c:186 msgid "" "-l, --left-column output only the left column of common lines" msgstr "" "-l, --left-column skriv endast ut gemensamma raders vänstra kolumn" -#: src/sdiff.c:188 +#: src/sdiff.c:187 msgid "-s, --suppress-common-lines do not output common lines" msgstr "-s, --suppress-common-lines skriv inte ut gemensamma rader" -#: src/sdiff.c:190 +#: src/sdiff.c:189 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "" "-t, --expand-tabs expandera tabulatorer till blanksteg i utdata" -#: src/sdiff.c:191 +#: src/sdiff.c:190 msgid "" " --tabsize=NUM tab stops at every NUM (default 8) print columns" msgstr "" " --tabsize=N tabulatorstopp var N:e (8 som standard) kolumn" -#: src/sdiff.c:193 +#: src/sdiff.c:192 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "" "-d, --minimal arbeta hÃ¥rt för att hitta en mindre mängd " "ändringar" -#: src/sdiff.c:194 +#: src/sdiff.c:193 msgid "" "-H, --speed-large-files assume large files, many scattered small changes" msgstr "" "-H, --speed-large-files antag stora filer och smÃ¥ spridda ändringar" -#: src/sdiff.c:195 +#: src/sdiff.c:194 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr " --diff-program=PROGRAM använd PROGRAM för att jämföra filer" -#: src/sdiff.c:197 +#: src/sdiff.c:196 msgid " --help display this help and exit" msgstr " --help visa denna hjälp och avsluta" -#: src/sdiff.c:198 +#: src/sdiff.c:197 msgid "-v, --version output version information and exit" msgstr "-v, --version visa versionsinformation och avsluta" -#: src/sdiff.c:207 +#: src/sdiff.c:206 #, c-format msgid "Usage: %s [OPTION]... FILE1 FILE2\n" msgstr "Användning: %s [FLAGGA]... FIL1 FIL2\n" -#: src/sdiff.c:209 +#: src/sdiff.c:208 msgid "Side-by-side merge of differences between FILE1 and FILE2." msgstr "Sammanslagning sida-vid-sida av skillnader mellan FIL1 och FIL2." -#: src/sdiff.c:330 +#: src/sdiff.c:328 msgid "cannot interactively merge standard input" msgstr "kan inte slÃ¥ samman standard in interaktivt" -#: src/sdiff.c:597 +#: src/sdiff.c:594 msgid "both files to be compared are directories" msgstr "bÃ¥da filerna som skall jämföras är kataloger" -#: src/sdiff.c:820 +#: src/sdiff.c:817 msgid "" "ed:\tEdit then use both versions, each decorated with a header.\n" "eb:\tEdit then use both versions.\n" @@ -1463,12 +1464,12 @@ msgstr "" "v:\tInkludera och tillkännage gemensamma rader.\n" "q:\tAvsluta.\n" -#: src/util.c:662 +#: src/util.c:755 #, c-format msgid "unrecognized prefix: %s" msgstr "okänt prefix: %s" -#: src/util.c:692 +#: src/util.c:785 #, c-format msgid "unparsable value for --palette" msgstr "otolkbart värde för --palette" diff --git a/po/tr.po b/po/tr.po index 961d591..77ba3f1 100644 --- a/po/tr.po +++ b/po/tr.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: diffutils 3.7.41\n" "Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n" -"POT-Creation-Date: 2021-08-01 18:56-0700\n" +"POT-Creation-Date: 2023-05-21 01:51-0700\n" "PO-Revision-Date: 2021-07-20 14:22+0300\n" "Last-Translator: Mehmet Kececi \n" "Language-Team: Turkish \n" @@ -21,29 +21,29 @@ msgstr "" "X-Generator: Poedit 3.0\n" "X-Bugs: Report translation errors to the Language-Team address.\n" -#: lib/argmatch.c:132 +#: lib/argmatch.c:145 #, c-format msgid "invalid argument %s for %s" msgstr "%s için geçersiz bağımsız değişken %s" -#: lib/argmatch.c:133 +#: lib/argmatch.c:146 #, c-format msgid "ambiguous argument %s for %s" msgstr "%s için belirsiz bağımsız değişkeni %s" -#: lib/argmatch.c:152 lib/argmatch.h:223 +#: lib/argmatch.c:165 lib/argmatch.h:242 msgid "Valid arguments are:" msgstr "Geçerli argümanlar şunlardır:" -#: lib/c-stack.c:187 +#: lib/c-stack.c:186 msgid "program error" msgstr "yazılım hatası" -#: lib/c-stack.c:188 +#: lib/c-stack.c:187 msgid "stack overflow" msgstr "yığıt taşması" -#: lib/error.c:195 +#: lib/error.c:193 msgid "Unknown system error" msgstr "Bilinmeyen sistem hatası" @@ -199,83 +199,83 @@ msgstr "%s: seçenek bir argümanla kullanılır -- %c\n" #. If you don't know what to put here, please see #. #. and use glyphs suitable for your language. -#: lib/quotearg.c:355 +#: lib/quotearg.c:354 msgid "`" msgstr "`" -#: lib/quotearg.c:356 +#: lib/quotearg.c:355 msgid "'" msgstr "'" -#: lib/regcomp.c:135 +#: lib/regcomp.c:122 msgid "Success" msgstr "Başarılı" -#: lib/regcomp.c:138 +#: lib/regcomp.c:125 msgid "No match" msgstr "Eşleme yok" -#: lib/regcomp.c:141 +#: lib/regcomp.c:128 msgid "Invalid regular expression" msgstr "Düzenli ifade geçersiz" -#: lib/regcomp.c:144 +#: lib/regcomp.c:131 msgid "Invalid collation character" msgstr "Harmanlama karakteri geçersiz" -#: lib/regcomp.c:147 +#: lib/regcomp.c:134 msgid "Invalid character class name" msgstr "Karakter sınıf ismi geçersiz" -#: lib/regcomp.c:150 +#: lib/regcomp.c:137 msgid "Trailing backslash" msgstr "Ä°zleyen ters kesme" -#: lib/regcomp.c:153 +#: lib/regcomp.c:140 msgid "Invalid back reference" msgstr "Geriye başvuru geçersiz" -#: lib/regcomp.c:156 +#: lib/regcomp.c:143 msgid "Unmatched [, [^, [:, [., or [=" msgstr "[, [^, [:, [., veya [= eşleşmiyor" -#: lib/regcomp.c:159 +#: lib/regcomp.c:146 msgid "Unmatched ( or \\(" msgstr "( ya da \\( eşleşmiyor" -#: lib/regcomp.c:162 +#: lib/regcomp.c:149 msgid "Unmatched \\{" msgstr "\\{ eşleşmiyor" -#: lib/regcomp.c:165 +#: lib/regcomp.c:152 msgid "Invalid content of \\{\\}" msgstr "\\{\\} içeriği geçersiz" -#: lib/regcomp.c:168 +#: lib/regcomp.c:155 msgid "Invalid range end" msgstr "Kapsam sonu geçersiz" -#: lib/regcomp.c:171 +#: lib/regcomp.c:158 msgid "Memory exhausted" msgstr "Bellek tükendi" -#: lib/regcomp.c:174 +#: lib/regcomp.c:161 msgid "Invalid preceding regular expression" msgstr "Önceki düzenli ifade geçersiz" -#: lib/regcomp.c:177 +#: lib/regcomp.c:164 msgid "Premature end of regular expression" msgstr "Düzenli ifadenin sonu eksik kalmış" -#: lib/regcomp.c:180 +#: lib/regcomp.c:167 msgid "Regular expression too big" msgstr "Düzenli ifade çok büyük" -#: lib/regcomp.c:183 +#: lib/regcomp.c:170 msgid "Unmatched ) or \\)" msgstr ") ya da \\) eşleşmiyor" -#: lib/regcomp.c:676 +#: lib/regcomp.c:650 msgid "No previous regular expression" msgstr "Daha önce düzenli ifade yok" @@ -497,17 +497,17 @@ msgstr "%s ana sayfası: <%s>\n" msgid "General help using GNU software: <%s>\n" msgstr "GNU yazılımı kullanımı hakkında genel yardım: <%s>\n" -#: src/analyze.c:454 src/diff.c:1406 +#: src/analyze.c:455 src/diff.c:1478 #, c-format msgid "Files %s and %s differ\n" msgstr "%s ve %s dosyaları birbirinden farklı\n" -#: src/analyze.c:455 +#: src/analyze.c:456 #, c-format msgid "Binary files %s and %s differ\n" msgstr "Ä°kili %s ve %s birbirinden farklı\n" -#: src/analyze.c:706 src/diff3.c:1470 src/util.c:1254 +#: src/analyze.c:707 src/diff3.c:1457 src/util.c:1354 msgid "No newline at end of file" msgstr "Dosya sonunda yenisatır yok" @@ -521,40 +521,41 @@ msgstr "Torbjorn Granlund" msgid "David MacKenzie" msgstr "David MacKenzie" -#: src/cmp.c:120 src/diff.c:879 src/diff3.c:467 src/sdiff.c:160 +#: src/cmp.c:124 src/diff.c:939 src/diff3.c:465 src/sdiff.c:159 #, c-format msgid "Try '%s --help' for more information." msgstr "Daha fazla bilgi için `%s --help' komutunu deneyin." -#: src/cmp.c:138 +#: src/cmp.c:142 #, c-format msgid "invalid --ignore-initial value '%s'" msgstr "geçersiz --ignore-initial değeri '%s'" -#: src/cmp.c:148 +#: src/cmp.c:152 #, c-format msgid "options -l and -s are incompatible" msgstr "-l ve -s seçenekleri beraber kullanılamaz" -#: src/cmp.c:156 src/diff.c:887 src/diff3.c:474 src/sdiff.c:168 src/sdiff.c:316 -#: src/sdiff.c:323 src/sdiff.c:876 src/util.c:852 src/util.c:952 src/util.c:959 +#: src/cmp.c:160 src/diff.c:947 src/diff3.c:472 src/sdiff.c:167 src/sdiff.c:314 +#: src/sdiff.c:321 src/sdiff.c:873 src/util.c:952 src/util.c:1052 +#: src/util.c:1059 msgid "write failed" msgstr "yazma başarısız oldu" -#: src/cmp.c:158 src/diff.c:889 src/diff.c:1471 src/diff3.c:476 src/sdiff.c:170 +#: src/cmp.c:162 src/diff.c:949 src/diff.c:1543 src/diff3.c:474 src/sdiff.c:169 msgid "standard output" msgstr "standart çıktı" -#: src/cmp.c:162 +#: src/cmp.c:166 msgid "-b, --print-bytes print differing bytes" msgstr "-b, --print-bytes bayt farklarını çıktılar" -#: src/cmp.c:163 +#: src/cmp.c:167 msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs" msgstr "" "-i, --ignore-initial=ATLA Ä°ki girdinin de ilk ATLA baytını atlar" -#: src/cmp.c:164 +#: src/cmp.c:168 msgid "" "-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n" " first SKIP2 bytes of FILE2" @@ -562,39 +563,39 @@ msgstr "" "-i, --ignore-initial=ATLA1:ATLA2 DOSYA1'in ilk ATLA1 baytını ve\n" " DOSYA2'nin ilk ATLA2 baytını atlar" -#: src/cmp.c:166 +#: src/cmp.c:170 msgid "" "-l, --verbose output byte numbers and differing byte values" msgstr "" "-l, --verbose bütün farklı baytların numaralarını ve " "değerlerini göster" -#: src/cmp.c:167 +#: src/cmp.c:171 msgid "-n, --bytes=LIMIT compare at most LIMIT bytes" msgstr "-n, --bytes=LÄ°MÄ°T en fazla LÄ°MÄ°T baytı karşılaştırır" -#: src/cmp.c:168 +#: src/cmp.c:172 msgid "-s, --quiet, --silent suppress all normal output" msgstr "-s, --quiet, --silent tüm normal çıktıları gizle" -#: src/cmp.c:169 +#: src/cmp.c:173 msgid " --help display this help and exit" msgstr " --help bu yardım metnini göster ve çık" -#: src/cmp.c:170 +#: src/cmp.c:174 msgid "-v, --version output version information and exit" msgstr "-v, --version sürüm bilgisini gösterir" -#: src/cmp.c:179 +#: src/cmp.c:183 #, c-format msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n" msgstr "Kullanım: %s [SEÇENEK]... DOSYA1 [DOSYA2 [ATLA1 [ATLA2]]]\n" -#: src/cmp.c:181 +#: src/cmp.c:185 msgid "Compare two files byte by byte." msgstr "Ä°ki dosyayı bayt bayt karşılaştırır." -#: src/cmp.c:183 +#: src/cmp.c:187 msgid "" "The optional SKIP1 and SKIP2 specify the number of bytes to skip\n" "at the beginning of each file (zero by default)." @@ -602,14 +603,14 @@ msgstr "" "Ä°steğe bağlı ATLA1 ve ATLA2, her dosyanın başından atlanacak\n" "(öntanımlı olarak sıfır) bayt sayısını belirtir." -#: src/cmp.c:186 src/diff.c:999 src/diff3.c:514 src/sdiff.c:211 +#: src/cmp.c:190 src/diff.c:1059 src/diff3.c:512 src/sdiff.c:210 msgid "" "Mandatory arguments to long options are mandatory for short options too.\n" msgstr "" "Uzun seçenekler için zorunlu olan argümanlar, kısa seçenekler için de " "zorunludur.\n" -#: src/cmp.c:192 +#: src/cmp.c:196 msgid "" "SKIP values may be followed by the following multiplicative suffixes:\n" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" @@ -619,192 +620,192 @@ msgstr "" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" "GB 1,000,000,000, G 1,073,741,824, ve T, P, E, Z, Y için devam eder." -#: src/cmp.c:195 +#: src/cmp.c:199 msgid "If a FILE is '-' or missing, read standard input." msgstr "Eğer DOSYA `-' ise veya yoksa, standart girdi okunur." -#: src/cmp.c:196 src/diff.c:987 src/sdiff.c:221 +#: src/cmp.c:200 src/diff.c:1047 src/sdiff.c:220 msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble." msgstr "Girdiler aynı ise çıkış durumu 0, farklı ise 1, sorun var ise 2 olur." -#: src/cmp.c:243 +#: src/cmp.c:247 #, c-format msgid "invalid --bytes value '%s'" msgstr "geçersiz --bytes değeri `%s'" -#: src/cmp.c:269 src/diff.c:797 src/diff3.c:361 src/sdiff.c:567 +#: src/cmp.c:273 src/diff.c:857 src/diff3.c:368 src/sdiff.c:564 #, c-format msgid "missing operand after '%s'" msgstr "`%s'den sonra işlenen eksik" -#: src/cmp.c:281 src/diff.c:799 src/diff3.c:363 src/sdiff.c:569 +#: src/cmp.c:285 src/diff.c:859 src/diff3.c:370 src/sdiff.c:566 #, c-format msgid "extra operand '%s'" msgstr "fazla işlenen `%s'" -#: src/cmp.c:507 +#: src/cmp.c:521 #, c-format msgid "%s %s differ: byte %s, line %s\n" msgstr "%s %s farklı: bayt %s, satır %s\n" -#: src/cmp.c:523 +#: src/cmp.c:537 #, c-format msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n" msgstr "%s %s farklı: bayt %s, satır %s: %3o %s %3o %s\n" -#: src/cmp.c:580 +#: src/cmp.c:594 #, c-format msgid "cmp: EOF on %s which is empty\n" msgstr "cmp: %s'da EOF (dosya sonu) boş\n" -#: src/cmp.c:594 +#: src/cmp.c:608 #, c-format msgid "cmp: EOF on %s after byte %s, line %s\n" msgstr "cmp: EOF üzerinde %s sonrası byte %s, satır %s\n" -#: src/cmp.c:595 +#: src/cmp.c:609 #, c-format msgid "cmp: EOF on %s after byte %s, in line %s\n" msgstr "cmp: EOF üzerinde %s sonrası byte %s, satır %s\n" -#: src/cmp.c:601 +#: src/cmp.c:615 #, c-format msgid "cmp: EOF on %s after byte %s\n" msgstr "cmp: EOF üzerinde %s sonrası byte %s\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:51 +#: src/diff.c:50 msgid "Paul Eggert" msgstr "Paul Eggert" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:52 +#: src/diff.c:51 msgid "Mike Haertel" msgstr "Mike Haertel" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:53 +#: src/diff.c:52 msgid "David Hayes" msgstr "David Hayes" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:54 +#: src/diff.c:53 msgid "Richard Stallman" msgstr "Richard Stallman" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:55 +#: src/diff.c:54 msgid "Len Tower" msgstr "Len Tower" -#: src/diff.c:355 +#: src/diff.c:365 #, c-format msgid "invalid context length '%s'" msgstr "`%s' bağlam uzunluğu geçersiz" -#: src/diff.c:438 +#: src/diff.c:487 #, c-format msgid "pagination not supported on this host" msgstr "sayfalama bu makina üzerinde desteklenmiyor" -#: src/diff.c:453 src/diff3.c:341 +#: src/diff.c:502 src/diff3.c:348 #, c-format msgid "too many file label options" msgstr "çok fazla dosya etiket seçeneği" -#: src/diff.c:530 +#: src/diff.c:579 #, c-format msgid "invalid width '%s'" msgstr "geçersiz genişlik `%s'" -#: src/diff.c:534 +#: src/diff.c:583 msgid "conflicting width options" msgstr "çelişkili genişlik seçenekleri" -#: src/diff.c:559 +#: src/diff.c:608 #, c-format msgid "invalid horizon length '%s'" msgstr "geçersiz ufuk uzunluğu `%s'" -#: src/diff.c:615 +#: src/diff.c:664 #, c-format msgid "invalid tabsize '%s'" msgstr "geçersiz sekme genişliği `%s'" -#: src/diff.c:619 +#: src/diff.c:668 msgid "conflicting tabsize options" msgstr "çelişkili genişlik seçenekleri" -#: src/diff.c:774 +#: src/diff.c:834 msgid "--from-file and --to-file both specified" msgstr "hem --from-file hem de --to-file belirtilmiş" -#: src/diff.c:893 +#: src/diff.c:953 msgid " --normal output a normal diff (the default)" msgstr " --normal normal bir diff çıktılar (öntanımlı)" -#: src/diff.c:894 +#: src/diff.c:954 msgid "-q, --brief report only when files differ" msgstr "-q, --brief yalnızca dosyalar farklı ise göster" -#: src/diff.c:895 +#: src/diff.c:955 msgid "-s, --report-identical-files report when two files are the same" msgstr "" "-s, --report-identical-files iki dosyanın birbirinin aynısı ise göster" -#: src/diff.c:896 +#: src/diff.c:956 msgid "" "-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context" msgstr "" "-c, -C SAYI, --context[=SAYI] kopyalanan bağlamı SAYI satırınca (öntanımlı " "3) bastırır" -#: src/diff.c:897 +#: src/diff.c:957 msgid "" "-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context" msgstr "" "-u, -U SAYI, --unified[=SAYI] birleşik bağlamın SAYI (öntanımlı 3) " "satırınca çıktı gösterir" -#: src/diff.c:898 +#: src/diff.c:958 msgid "-e, --ed output an ed script" msgstr "-e, --ed bir ed betiği çıktılar" -#: src/diff.c:899 +#: src/diff.c:959 msgid "-n, --rcs output an RCS format diff" msgstr "-n, --rcs RCS biçeminde diff çıktılar" -#: src/diff.c:900 +#: src/diff.c:960 msgid "-y, --side-by-side output in two columns" msgstr "-y, --side-by-side iki sütunda çıktı göster" -#: src/diff.c:901 +#: src/diff.c:961 msgid "" "-W, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-W, --width=SAYI satır başına en fazla SAYI kadar karakter " "çıktılar (öntanımlı 130)" -#: src/diff.c:902 +#: src/diff.c:962 msgid "" " --left-column output only the left column of common lines" msgstr "" " --left-column ortak satırları yalnızca sol sütunda çıktılar" -#: src/diff.c:903 +#: src/diff.c:963 msgid " --suppress-common-lines do not output common lines" msgstr " --suppress-common-lines ortak satırlayı gösterme" -#: src/diff.c:905 +#: src/diff.c:965 msgid "-p, --show-c-function show which C function each change is in" msgstr "-p, --show-c-function içinde değişen her C işlevini göster" -#: src/diff.c:906 +#: src/diff.c:966 msgid "-F, --show-function-line=RE show the most recent line matching RE" msgstr "" "-F, --show-function-line=DÜZÄ°F DÜZÄ°F ile eşleşen en yakın satırı göster" -#: src/diff.c:907 +#: src/diff.c:967 msgid "" " --label LABEL use LABEL instead of file name and timestamp\n" " (can be repeated)" @@ -812,85 +813,85 @@ msgstr "" " --label ETÄ°KET dosya adı yerine ETÄ°KET kullan\n" " (tekrarlanabilir)" -#: src/diff.c:910 +#: src/diff.c:970 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "-t, --expand-tabs çıktıda sekmeleri boşluk haline getir" -#: src/diff.c:911 +#: src/diff.c:971 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T, --initial-tab başlarına bir sekme ilave ederek sekmelerin " "hizalanmasını sağla" -#: src/diff.c:912 +#: src/diff.c:972 msgid "" " --tabsize=NUM tab stops every NUM (default 8) print columns" msgstr "" " --tabsize=SAYI sekmeler SAYI sütun genişliğine (varsalılan " "8) ayarlanır" -#: src/diff.c:913 +#: src/diff.c:973 msgid "" " --suppress-blank-empty suppress space or tab before empty output lines" msgstr "" " --suppress-blank-empty boş çıktı satırlarından önce boşluk veya " "sekmeyi gözardı et" -#: src/diff.c:914 +#: src/diff.c:974 msgid "-l, --paginate pass output through 'pr' to paginate it" msgstr "" "-l, --paginate çıktıyı 'pr' komutundan geçirerek sayfala" -#: src/diff.c:916 +#: src/diff.c:976 msgid "" "-r, --recursive recursively compare any subdirectories found" msgstr "" "-r, --recursive çevrimli olarak bulunan bütün alt dizinleri " "karşılaştır" -#: src/diff.c:917 +#: src/diff.c:977 msgid " --no-dereference don't follow symbolic links" msgstr " --no-dereference sembolik bağlantıları takip etme" -#: src/diff.c:918 +#: src/diff.c:978 msgid "-N, --new-file treat absent files as empty" msgstr "-N, --new-file var olmayan dosyaları boş varsay" -#: src/diff.c:919 +#: src/diff.c:979 msgid " --unidirectional-new-file treat absent first files as empty" msgstr " --unidirectional-new-file var olmayan birinci dosyayı boş varsay" -#: src/diff.c:920 +#: src/diff.c:980 msgid " --ignore-file-name-case ignore case when comparing file names" msgstr "" " --ignore-file-name-case dosya isimlerinde büyük/küçük harf " "farklarını yoksay" -#: src/diff.c:921 +#: src/diff.c:981 msgid " --no-ignore-file-name-case consider case when comparing file names" msgstr "" " --no-ignore-file-name-case dosya isimlerinde büyük/küçük harf farkını " "göz önüne al" -#: src/diff.c:922 +#: src/diff.c:982 msgid "-x, --exclude=PAT exclude files that match PAT" msgstr "" "-x, --exclude=KALIP KALIP'a uyan dosyaları işleme dahil etme" -#: src/diff.c:923 +#: src/diff.c:983 msgid "" "-X, --exclude-from=FILE exclude files that match any pattern in FILE" msgstr "" "-X, --exclude-from=DOSYA DOSYA'da bulunan kalıplara uyan dosyaları " "işlem dışı tut" -#: src/diff.c:924 +#: src/diff.c:984 msgid "" "-S, --starting-file=FILE start with FILE when comparing directories" msgstr "" "-S, --starting-file=DOSYA dizinleri karşılaştırırken DOSYA'dan başla" -#: src/diff.c:925 +#: src/diff.c:985 msgid "" " --from-file=FILE1 compare FILE1 to all operands;\n" " FILE1 can be a directory" @@ -898,7 +899,7 @@ msgstr "" " --from-file=DOSYA1 DOSYA1'i bütün işlenenlerle karşılaştır;\n" " DOSYA1 bir dizin olabilir" -#: src/diff.c:927 +#: src/diff.c:987 msgid "" " --to-file=FILE2 compare all operands to FILE2;\n" " FILE2 can be a directory" @@ -906,82 +907,82 @@ msgstr "" " --to-file=DOSYA2 DOSYA2'yi bütün işlenenlerle karşılaştır;\n" " DOSYA2 bir dizin olabilir" -#: src/diff.c:930 +#: src/diff.c:990 msgid "" "-i, --ignore-case ignore case differences in file contents" msgstr "" "-i, --ignore-case dosya içeriğinde büyük/küçük harf farklarını " "yoksay" -#: src/diff.c:931 +#: src/diff.c:991 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E, --ignore-tab-expansion sekmelerin açılmasından doğan farkları yoksay" -#: src/diff.c:932 +#: src/diff.c:992 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "-Z, --ignore-trailing-space bütün satır sonu boşluklarını yoksay" -#: src/diff.c:933 +#: src/diff.c:993 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "" "-b, --ignore-space-change boşluk miktarındaki değişiklikleri yoksay" -#: src/diff.c:934 +#: src/diff.c:994 msgid "-w, --ignore-all-space ignore all white space" msgstr "-w, --ignore-all-space bütün boşlukları yoksay" -#: src/diff.c:935 +#: src/diff.c:995 msgid "" "-B, --ignore-blank-lines ignore changes where lines are all blank" msgstr "" "-B, --ignore-blank-lines satırları boş olan değişiklikleri dikkate " "alma" -#: src/diff.c:936 +#: src/diff.c:996 msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE" msgstr "" "-I, --ignore-matching-lines=DÜZÄ°F satırları DÜZÄ°F kalıbına uyan farkları " "yok say" -#: src/diff.c:938 +#: src/diff.c:998 msgid "-a, --text treat all files as text" msgstr "-a, --text bütün dosyaları metin olarak işle" -#: src/diff.c:939 +#: src/diff.c:999 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr girdiden en sonda sarkan satır başını soy" -#: src/diff.c:941 +#: src/diff.c:1001 msgid " --binary read and write data in binary mode" msgstr " --binary veriyi ikilik kipte yaz ve oku" -#: src/diff.c:944 +#: src/diff.c:1004 msgid "" "-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs" msgstr "" "-D, --ifdef=Ä°SÄ°M '#ifdef Ä°SÄ°M' farklarını gösteren " "harmanlanmış dosya çıktıla" -#: src/diff.c:945 +#: src/diff.c:1005 msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT" msgstr "" " --GTYPE-group-format=GFMT GTYPE girdi gruplarını GFMT ile biçimlendir" -#: src/diff.c:946 +#: src/diff.c:1006 msgid " --line-format=LFMT format all input lines with LFMT" msgstr "" " --line-format=LFMT tüm girdi satırlarını LFMT ile biçimlendir" -#: src/diff.c:947 +#: src/diff.c:1007 msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT" msgstr "" " --LTYPE-line-format=LFMT tüm LTYPE girdi satırlarını LFMT ile " "biçimlendir" -#: src/diff.c:948 +#: src/diff.c:1008 msgid "" " These format options provide fine-grained control over the output\n" " of diff, generalizing -D/--ifdef." @@ -990,13 +991,13 @@ msgstr "" "grained control over the output\n" " tanecik denetimi sağlar. -D/--ifdef genelleştirmesi yapar." -#: src/diff.c:950 +#: src/diff.c:1010 msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'." msgstr "" " LTYPE 'old', 'new' veya 'unchanged' olabilir. GTYPE, LTYPE veya " "'changed'dir." -#: src/diff.c:951 +#: src/diff.c:1011 msgid "" " GFMT (only) may contain:\n" " %< lines from FILE1\n" @@ -1025,7 +1026,7 @@ msgstr "" " M L+1\n" " %(A=B?T:E) eğer A eşittir B ise T değilse E" -#: src/diff.c:963 +#: src/diff.c:1023 msgid "" " LFMT (only) may contain:\n" " %L contents of line\n" @@ -1038,7 +1039,7 @@ msgstr "" " %[-][GENİŞLÄ°K][.[KESÄ°NLÄ°K]]{doxX}n girdi satır sayısı için printf tarzı " "biçem" -#: src/diff.c:967 +#: src/diff.c:1027 msgid "" " Both GFMT and LFMT may contain:\n" " %% %\n" @@ -1052,22 +1053,22 @@ msgstr "" " %c'\\OOO' Sekizlik kodu OOO olan karakter\n" " C C karakteri (diğer karakterler kendilerini temsil eder)" -#: src/diff.c:973 +#: src/diff.c:1033 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "-d, --minimal daha küçük bir fark kümesi bulmaya çalış" -#: src/diff.c:974 +#: src/diff.c:1034 msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix" msgstr " --horizon-lines=SAYI ortak ön ek ve son eklerin SAYI satırını tut" -#: src/diff.c:975 +#: src/diff.c:1035 msgid "" " --speed-large-files assume large files and many scattered small changes" msgstr "" " --speed-large-files büyük dosyalar ve çok sayıda dağınık küçük farklar " "olduğunu varsay" -#: src/diff.c:976 +#: src/diff.c:1036 msgid "" " --color[=WHEN] color output; WHEN is 'never', 'always', or " "'auto';\n" @@ -1077,7 +1078,7 @@ msgstr "" "'asla', 'devamlı' veya 'oto';\n" " düz --color anlamı --color='oto'" -#: src/diff.c:978 +#: src/diff.c:1038 msgid "" " --palette=PALETTE the colors to use when --color is active; PALETTE " "is\n" @@ -1087,114 +1088,114 @@ msgstr "" " bir virgülle ayrılmış terminfo yetenekleri " "listelenmiştir" -#: src/diff.c:981 +#: src/diff.c:1041 msgid " --help display this help and exit" msgstr " --help bu yardım metnini göster ve çık" -#: src/diff.c:982 +#: src/diff.c:1042 msgid "-v, --version output version information and exit" msgstr "-v, --version sürüm bilgisini göster ve çık" -#: src/diff.c:984 +#: src/diff.c:1044 msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'." msgstr "" "`DOSYA1 DOSYA2' veya `DÄ°ZÄ°N1 DÄ°ZÄ°N2' veya `DÄ°ZÄ°N DOSYA' veya `DOSYA DÄ°ZÄ°N' " "DOSYAlARdır." -#: src/diff.c:985 +#: src/diff.c:1045 msgid "" "If --from-file or --to-file is given, there are no restrictions on FILE(s)." msgstr "" "Eğer --from-file veya --to-file kullanılmışsa, DOSYAlar üzerinde kısıtlama " "yoktur." -#: src/diff.c:986 src/diff3.c:533 src/sdiff.c:220 +#: src/diff.c:1046 src/diff3.c:531 src/sdiff.c:219 msgid "If a FILE is '-', read standard input." msgstr "Eğer bir DOSYA `-' ise, standart girdi okunur." -#: src/diff.c:996 +#: src/diff.c:1056 #, c-format msgid "Usage: %s [OPTION]... FILES\n" msgstr "Kullanım: %s [SEÇENEK]... DOSYAlar\n" -#: src/diff.c:997 +#: src/diff.c:1057 msgid "Compare FILES line by line." msgstr "DOSYAları satır satır karşılaştırır." -#: src/diff.c:1034 +#: src/diff.c:1094 #, c-format msgid "conflicting %s option value '%s'" msgstr "çelişkili %s seçeneği değeri: '%s'" -#: src/diff.c:1047 +#: src/diff.c:1107 #, c-format msgid "conflicting output style options" msgstr "çelişkili çıktı tarz seçenekleri" -#: src/diff.c:1063 +#: src/diff.c:1123 #, c-format msgid "invalid color '%s'" msgstr "geçersiz renk '%s'" -#: src/diff.c:1119 src/diff.c:1329 +#: src/diff.c:1197 src/diff.c:1401 #, c-format msgid "Only in %s: %s\n" msgstr "Yalnızca %s'da: %s\n" -#: src/diff.c:1253 +#: src/diff.c:1325 msgid "cannot compare '-' to a directory" msgstr "'-', bir dizinle karşılaştırılamaz" -#: src/diff.c:1288 +#: src/diff.c:1360 msgid "-D option not supported with directories" msgstr "-D seçenek dizinler için kullanılamaz" -#: src/diff.c:1297 +#: src/diff.c:1369 #, c-format msgid "Common subdirectories: %s and %s\n" msgstr "Ortak alt dizinler: %s ve %s\n" -#: src/diff.c:1339 src/diff.c:1389 +#: src/diff.c:1411 src/diff.c:1461 #, c-format msgid "File %s is a %s while file %s is a %s\n" msgstr "%s dosyası, bir %s, halbuki %s dosyası bir %s\n" -#: src/diff.c:1375 +#: src/diff.c:1447 #, c-format msgid "Symbolic links %s and %s differ\n" msgstr "%s ve %s sembolik bağlantıları birbirinden farklı\n" -#: src/diff.c:1462 +#: src/diff.c:1534 #, c-format msgid "Files %s and %s are identical\n" msgstr "%s ve %s dosyaları birbirinin aynı\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff3.c:43 +#: src/diff3.c:51 msgid "Randy Smith" msgstr "Randy Smith" -#: src/diff3.c:356 +#: src/diff3.c:363 #, c-format msgid "incompatible options" msgstr "uyumsuz seçenekler" -#: src/diff3.c:396 +#: src/diff3.c:403 msgid "'-' specified for more than one input file" msgstr "'-' birden fazla girdi dosyası için belirtilmiş" -#: src/diff3.c:447 src/diff3.c:1295 src/diff3.c:1698 src/diff3.c:1753 -#: src/sdiff.c:308 src/sdiff.c:846 src/sdiff.c:857 +#: src/diff3.c:445 src/diff3.c:1284 src/diff3.c:1683 src/diff3.c:1738 +#: src/sdiff.c:306 src/sdiff.c:843 src/sdiff.c:854 msgid "read failed" msgstr "okuma başarısız oldu" -#: src/diff3.c:480 +#: src/diff3.c:478 msgid "-A, --show-all output all changes, bracketing conflicts" msgstr "" "-A, --show-all bütün değişiklikleri çıktıla, çakışmaları köşeli " "parantez içine al" -#: src/diff3.c:482 +#: src/diff3.c:480 msgid "" "-e, --ed output ed script incorporating changes\n" " from OLDFILE to YOURFILE into MYFILE" @@ -1203,13 +1204,13 @@ msgstr "" "harmanlanmamış\n" " ed betiklerini BENÄ°MDOSYA'ya çıktıla" -#: src/diff3.c:484 +#: src/diff3.c:482 msgid "-E, --show-overlap like -e, but bracket conflicts" msgstr "" "-E, --show-overlap -e'ye benzer, fakat çakışmaları parantez içine " "alır" -#: src/diff3.c:485 +#: src/diff3.c:483 msgid "" "-3, --easy-only like -e, but incorporate only nonoverlapping " "changes" @@ -1217,25 +1218,25 @@ msgstr "" "-3, --easy-only -e gibi, fakat sadece örtüşmeyen değişiklikleri " "birleştir" -#: src/diff3.c:486 +#: src/diff3.c:484 msgid "" "-x, --overlap-only like -e, but incorporate only overlapping changes" msgstr "" "-x, --overlap-only -e gibi, fakat sadece örtüşen değişiklikleri " "birleştir" -#: src/diff3.c:487 +#: src/diff3.c:485 msgid "-X like -x, but bracket conflicts" msgstr "" "-X -x gibi ancak çakışmaları parantez içine alır" -#: src/diff3.c:488 +#: src/diff3.c:486 msgid "-i append 'w' and 'q' commands to ed scripts" msgstr "" "-i ed betiklerinin sonuna `w' ve `q' komutlarını " "ekle" -#: src/diff3.c:490 +#: src/diff3.c:488 msgid "" "-m, --merge output actual merged file, according to\n" " -A if no other options are given" @@ -1243,26 +1244,26 @@ msgstr "" "-m, --merge asıl birleştirilmiş dosyayı, başka bir seçenek\n" " verilmediyse -A ya göre gösterir" -#: src/diff3.c:493 +#: src/diff3.c:491 msgid "-a, --text treat all files as text" msgstr "-a, --text bütün dosyaları metin olarak işle" -#: src/diff3.c:494 +#: src/diff3.c:492 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr " --strip-trailing-cr girdiden en sonda sarkan satır başını soy" -#: src/diff3.c:495 +#: src/diff3.c:493 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T, --initial-tab başlarına bir sekme ilave ederek sekmelerin " "hizalanmasını sağla" -#: src/diff3.c:496 +#: src/diff3.c:494 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr "" " --diff-program=YAZILIM dosyaları karşılaştırmak için YAZILIM'ı kullan" -#: src/diff3.c:497 +#: src/diff3.c:495 msgid "" "-L, --label=LABEL use LABEL instead of file name\n" " (can be repeated up to three times)" @@ -1270,24 +1271,24 @@ msgstr "" "-L, --label=ETÄ°KET dosya adı yerine ETÄ°KET kullan\n" " (üç defaya kadar tekrarlanabilir)" -#: src/diff3.c:500 +#: src/diff3.c:498 msgid " --help display this help and exit" msgstr " --help bu yardım metnini göster ve çık" -#: src/diff3.c:501 +#: src/diff3.c:499 msgid "-v, --version output version information and exit" msgstr "-v, --version sürüm bilgisini göster ve çık" -#: src/diff3.c:510 +#: src/diff3.c:508 #, c-format msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n" msgstr "Kullanım: %s [SEÇENEK]... BENÄ°MDOSYA ESKÄ°DOSYA SÄ°ZÄ°NDOSYA\n" -#: src/diff3.c:512 +#: src/diff3.c:510 msgid "Compare three files line by line." msgstr "Üç dosyayı satır satır karşılaştırır." -#: src/diff3.c:522 +#: src/diff3.c:520 msgid "" "\n" "The default output format is a somewhat human-readable representation of\n" @@ -1310,56 +1311,56 @@ msgstr "" "yapmasına neden olur ve asıl birleştirilen dosya çıkarılır. Alışılmadık\n" "girdiler için, bu ed kullanımından daha dayanıklıdır.\n" -#: src/diff3.c:534 +#: src/diff3.c:532 msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble." msgstr "" "Eğer işleme başarılı ise çıkış durumu 0, çelişkiler var ise 1,\n" "sorun var ise 2 olur." -#: src/diff3.c:727 +#: src/diff3.c:725 msgid "internal error: screwup in format of diff blocks" msgstr "iç hata: diff blokları biçemlemesinde hata oluştu" -#: src/diff3.c:1022 +#: src/diff3.c:1015 #, c-format msgid "%s: diff failed: " msgstr "%s: diff başarısız oldu: " -#: src/diff3.c:1044 +#: src/diff3.c:1037 msgid "internal error: invalid diff type in process_diff" msgstr "iç hata: process_diff işlevi içinde geçersiz diff türü" -#: src/diff3.c:1069 +#: src/diff3.c:1060 msgid "invalid diff format; invalid change separator" msgstr "geçersiz diff biçemi; geçersiz fark ayracı" -#: src/diff3.c:1305 +#: src/diff3.c:1294 msgid "invalid diff format; incomplete last line" msgstr "geçersiz diff biçemi; tamamlanmamış son satır" -#: src/diff3.c:1329 src/sdiff.c:276 src/util.c:969 +#: src/diff3.c:1318 src/sdiff.c:274 src/util.c:1069 #, c-format msgid "subsidiary program '%s' could not be invoked" msgstr "alt yazılım '%s' çalıştırılamadı" -#: src/diff3.c:1354 +#: src/diff3.c:1343 msgid "invalid diff format; incorrect leading line chars" msgstr "geçersiz diff biçemi; geçersiz satır başı karakterleri" -#: src/diff3.c:1427 +#: src/diff3.c:1416 msgid "internal error: invalid diff type passed to output" msgstr "iç hata: çıktıya geçersiz diff türü geçirildi" -#: src/diff3.c:1700 src/diff3.c:1757 +#: src/diff3.c:1685 src/diff3.c:1742 msgid "input file shrank" msgstr "girdi dosyası küçüldü" -#: src/dir.c:156 +#: src/dir.c:154 #, c-format msgid "cannot compare file names '%s' and '%s'" msgstr "dosya isimleri '%s' ve '%s' karşılaştırılamıyor" -#: src/dir.c:225 +#: src/dir.c:223 #, c-format msgid "%s: recursive directory loop" msgstr "%s: iç dizin döngüsü" @@ -1369,127 +1370,127 @@ msgstr "%s: iç dizin döngüsü" msgid "Thomas Lord" msgstr "Thomas Lord" -#: src/sdiff.c:174 +#: src/sdiff.c:173 msgid "" "-o, --output=FILE operate interactively, sending output to FILE" msgstr "" "-o, --output=DOSYA etkileşimli olarak çalış, çıktıyı DOSYA'ya " "yönlendir" -#: src/sdiff.c:176 +#: src/sdiff.c:175 msgid "" "-i, --ignore-case consider upper- and lower-case to be the same" msgstr "-i, --ignore-case büyük harf/küçük harf farkı gözetme" -#: src/sdiff.c:177 +#: src/sdiff.c:176 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E, --ignore-tab-expansion sekmelerin açılmasından doğan farkları yoksay" -#: src/sdiff.c:178 +#: src/sdiff.c:177 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "-Z, --ignore-trailing-space bütün satır sonu boşluklarını yoksay" -#: src/sdiff.c:179 +#: src/sdiff.c:178 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "-b, --ignore-space-change boşluk miktarındaki değişiklikleri yoksay" -#: src/sdiff.c:180 +#: src/sdiff.c:179 msgid "-W, --ignore-all-space ignore all white space" msgstr "-W, --ignore-all-space bütün boşlukları yoksay" -#: src/sdiff.c:181 +#: src/sdiff.c:180 msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank" msgstr "" "-B, --ignore-blank-lines satırları boş olan değişiklikleri dikkate alma" -#: src/sdiff.c:182 +#: src/sdiff.c:181 msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE" msgstr "" "-I, --ignore-matching-lines=DÜZÄ°F satırları DÜZÄ°F kalıbına uyan farkları " "yoksay" -#: src/sdiff.c:183 +#: src/sdiff.c:182 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr girdiden en sonda sarkan satır başını soy" -#: src/sdiff.c:184 +#: src/sdiff.c:183 msgid "-a, --text treat all files as text" msgstr "-a, --text bütün dosyaları metin olarak işle" -#: src/sdiff.c:186 +#: src/sdiff.c:185 msgid "" "-w, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-W, --width=SAYI satır başına en fazla SAYI kadar karakter " "çıktılar (öntanımlı 130)" -#: src/sdiff.c:187 +#: src/sdiff.c:186 msgid "" "-l, --left-column output only the left column of common lines" msgstr "" "-W, --width=SAYI satır başına en fazla SAYI kadar karakter " "çıktılar (öntanımlı 130)" -#: src/sdiff.c:188 +#: src/sdiff.c:187 msgid "-s, --suppress-common-lines do not output common lines" msgstr "-s, --suppress-common-lines ortak satırlayı gösterme" -#: src/sdiff.c:190 +#: src/sdiff.c:189 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "-t, --expand-tabs çıktıda sekmeleri boşluk haline getir" -#: src/sdiff.c:191 +#: src/sdiff.c:190 msgid "" " --tabsize=NUM tab stops at every NUM (default 8) print columns" msgstr "" " --tabsize=SAYI sekmeleri SAYI sütun genişliğine (öntanımlı 8) " "ayarla" -#: src/sdiff.c:193 +#: src/sdiff.c:192 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "-d, --minimal daha küçük bir fark kümesi bulmaya çalış" -#: src/sdiff.c:194 +#: src/sdiff.c:193 msgid "" "-H, --speed-large-files assume large files, many scattered small changes" msgstr "" "-H, --speed-large-files büyük dosyalar ve çok sayıda dağınık küçük " "farklar olduğunu varsay" -#: src/sdiff.c:195 +#: src/sdiff.c:194 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr "" " --diff-program=YAZILIM dosyaları karşılaştırmak için YAZILIM'ı kullan" -#: src/sdiff.c:197 +#: src/sdiff.c:196 msgid " --help display this help and exit" msgstr " --help bu yardım metnini göster ve çık" -#: src/sdiff.c:198 +#: src/sdiff.c:197 msgid "-v, --version output version information and exit" msgstr "-v, --version sürüm bilgisini göster ve çık" -#: src/sdiff.c:207 +#: src/sdiff.c:206 #, c-format msgid "Usage: %s [OPTION]... FILE1 FILE2\n" msgstr "Kullanım: %s [SEÇENEK]... DOSYA1 DOSYA2\n" -#: src/sdiff.c:209 +#: src/sdiff.c:208 msgid "Side-by-side merge of differences between FILE1 and FILE2." msgstr "DOSYA1 vey DOSYA2 arasındaki farkları yan yana birleştir." -#: src/sdiff.c:330 +#: src/sdiff.c:328 msgid "cannot interactively merge standard input" msgstr "interaktif olarak standart girdi harmanlanamaz" -#: src/sdiff.c:597 +#: src/sdiff.c:594 msgid "both files to be compared are directories" msgstr "karşılaştırılacak her iki dosya da dizin" -#: src/sdiff.c:820 +#: src/sdiff.c:817 msgid "" "ed:\tEdit then use both versions, each decorated with a header.\n" "eb:\tEdit then use both versions.\n" @@ -1513,12 +1514,12 @@ msgstr "" "v:\tOrtak satırları bilgi vererek dahil eder.\n" "q:\tÇıkar.\n" -#: src/util.c:662 +#: src/util.c:755 #, c-format msgid "unrecognized prefix: %s" msgstr "tanınmamış önek: %s" -#: src/util.c:692 +#: src/util.c:785 #, c-format msgid "unparsable value for --palette" msgstr "--palette için ayrıştırılamayan değer" diff --git a/po/uk.po b/po/uk.po index ade96c8..045d79e 100644 --- a/po/uk.po +++ b/po/uk.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: diffutils 3.7.41\n" "Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n" -"POT-Creation-Date: 2021-08-01 18:56-0700\n" +"POT-Creation-Date: 2023-05-21 01:51-0700\n" "PO-Revision-Date: 2021-07-20 12:05+0300\n" "Last-Translator: Yuri Chornoivan \n" "Language-Team: Ukrainian \n" @@ -20,29 +20,29 @@ msgstr "" "X-Generator: Lokalize 20.12.0\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: lib/argmatch.c:132 +#: lib/argmatch.c:145 #, c-format msgid "invalid argument %s for %s" msgstr "некоректний аргумент %s до %s" -#: lib/argmatch.c:133 +#: lib/argmatch.c:146 #, c-format msgid "ambiguous argument %s for %s" msgstr "неоднозначний аргумент %s до %s" -#: lib/argmatch.c:152 lib/argmatch.h:223 +#: lib/argmatch.c:165 lib/argmatch.h:242 msgid "Valid arguments are:" msgstr "Список коректних аргументів:" -#: lib/c-stack.c:187 +#: lib/c-stack.c:186 msgid "program error" msgstr "помилка програми" -#: lib/c-stack.c:188 +#: lib/c-stack.c:187 msgid "stack overflow" msgstr "переповнення стеку" -#: lib/error.c:195 +#: lib/error.c:193 msgid "Unknown system error" msgstr "Невідома системна помилка" @@ -198,83 +198,83 @@ msgstr "%s: до параметра слід додати аргумент — #. If you don't know what to put here, please see #. #. and use glyphs suitable for your language. -#: lib/quotearg.c:355 +#: lib/quotearg.c:354 msgid "`" msgstr "`" -#: lib/quotearg.c:356 +#: lib/quotearg.c:355 msgid "'" msgstr "'" -#: lib/regcomp.c:135 +#: lib/regcomp.c:122 msgid "Success" msgstr "Успішно" -#: lib/regcomp.c:138 +#: lib/regcomp.c:125 msgid "No match" msgstr "Немає відповідностей" -#: lib/regcomp.c:141 +#: lib/regcomp.c:128 msgid "Invalid regular expression" msgstr "Неправильний регулярний вираз" -#: lib/regcomp.c:144 +#: lib/regcomp.c:131 msgid "Invalid collation character" msgstr "Некоректний символ для сортування" -#: lib/regcomp.c:147 +#: lib/regcomp.c:134 msgid "Invalid character class name" msgstr "Неправильна назва класу символу" -#: lib/regcomp.c:150 +#: lib/regcomp.c:137 msgid "Trailing backslash" msgstr "Зворотна коса риска стоїть останньою" -#: lib/regcomp.c:153 +#: lib/regcomp.c:140 msgid "Invalid back reference" msgstr "Неправильне посилання" -#: lib/regcomp.c:156 +#: lib/regcomp.c:143 msgid "Unmatched [, [^, [:, [., or [=" msgstr "Непарна [, [^, [:, [. або [=" -#: lib/regcomp.c:159 +#: lib/regcomp.c:146 msgid "Unmatched ( or \\(" msgstr "Непарна ( чи \\(" -#: lib/regcomp.c:162 +#: lib/regcomp.c:149 msgid "Unmatched \\{" msgstr "Непарна \\{" -#: lib/regcomp.c:165 +#: lib/regcomp.c:152 msgid "Invalid content of \\{\\}" msgstr "Неправильний вміст \\{\\}" -#: lib/regcomp.c:168 +#: lib/regcomp.c:155 msgid "Invalid range end" msgstr "Неправильна нижня межа" -#: lib/regcomp.c:171 +#: lib/regcomp.c:158 msgid "Memory exhausted" msgstr "Оперативну пам'ять вичерпано" -#: lib/regcomp.c:174 +#: lib/regcomp.c:161 msgid "Invalid preceding regular expression" msgstr "Неправильний попередній регулярний вираз" -#: lib/regcomp.c:177 +#: lib/regcomp.c:164 msgid "Premature end of regular expression" msgstr "Передчасний кінець регулярного виразу" -#: lib/regcomp.c:180 +#: lib/regcomp.c:167 msgid "Regular expression too big" msgstr "Регулярний вираз надто великий" -#: lib/regcomp.c:183 +#: lib/regcomp.c:170 msgid "Unmatched ) or \\)" msgstr "Непарна ) чи \\)" -#: lib/regcomp.c:676 +#: lib/regcomp.c:650 msgid "No previous regular expression" msgstr "Регулярний вираз не було вказано раніше" @@ -473,17 +473,17 @@ msgstr "" "Загальна довідкова інформація щодо використання програмного забезпечення " "GNU: <%s>\n" -#: src/analyze.c:454 src/diff.c:1406 +#: src/analyze.c:455 src/diff.c:1478 #, c-format msgid "Files %s and %s differ\n" msgstr "Файли %s та %s відрізняються\n" -#: src/analyze.c:455 +#: src/analyze.c:456 #, c-format msgid "Binary files %s and %s differ\n" msgstr "Двійкові файли %s та %s відрізняються\n" -#: src/analyze.c:706 src/diff3.c:1470 src/util.c:1254 +#: src/analyze.c:707 src/diff3.c:1457 src/util.c:1354 msgid "No newline at end of file" msgstr "Наприкінці файла немає нового рядка" @@ -497,41 +497,42 @@ msgstr "Torbjorn Granlund" msgid "David MacKenzie" msgstr "David MacKenzie" -#: src/cmp.c:120 src/diff.c:879 src/diff3.c:467 src/sdiff.c:160 +#: src/cmp.c:124 src/diff.c:939 src/diff3.c:465 src/sdiff.c:159 #, c-format msgid "Try '%s --help' for more information." msgstr "Спробуйте «%s --help» для отримання докладнішого опису." -#: src/cmp.c:138 +#: src/cmp.c:142 #, c-format msgid "invalid --ignore-initial value '%s'" msgstr "неприпустиме значення --ignore-initial «%s»" -#: src/cmp.c:148 +#: src/cmp.c:152 #, c-format msgid "options -l and -s are incompatible" msgstr "параметри -l та -s несумісні" -#: src/cmp.c:156 src/diff.c:887 src/diff3.c:474 src/sdiff.c:168 src/sdiff.c:316 -#: src/sdiff.c:323 src/sdiff.c:876 src/util.c:852 src/util.c:952 src/util.c:959 +#: src/cmp.c:160 src/diff.c:947 src/diff3.c:472 src/sdiff.c:167 src/sdiff.c:314 +#: src/sdiff.c:321 src/sdiff.c:873 src/util.c:952 src/util.c:1052 +#: src/util.c:1059 msgid "write failed" msgstr "запис невдалий" -#: src/cmp.c:158 src/diff.c:889 src/diff.c:1471 src/diff3.c:476 src/sdiff.c:170 +#: src/cmp.c:162 src/diff.c:949 src/diff.c:1543 src/diff3.c:474 src/sdiff.c:169 msgid "standard output" msgstr "стандартний вивід" -#: src/cmp.c:162 +#: src/cmp.c:166 msgid "-b, --print-bytes print differing bytes" msgstr "-b --print-bytes вивести байти, що відрізняються." -#: src/cmp.c:163 +#: src/cmp.c:167 msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs" msgstr "" "-i, --ignore-initial=Н пропустити перші Н байтів у обох потоках " "вхідних даних" -#: src/cmp.c:164 +#: src/cmp.c:168 msgid "" "-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n" " first SKIP2 bytes of FILE2" @@ -539,42 +540,42 @@ msgstr "" "-i, --ignore-initial=Н1:Н2 пропустити перші Н1 байтів у ФАЙЛ1 і\n" " перші Н2 байтів у ФАЙЛ2" -#: src/cmp.c:166 +#: src/cmp.c:170 msgid "" "-l, --verbose output byte numbers and differing byte values" msgstr "" "-l --verbose вивести номери та значення усіх різних байтів" -#: src/cmp.c:167 +#: src/cmp.c:171 msgid "-n, --bytes=LIMIT compare at most LIMIT bytes" msgstr "" "-n, --bytes=МЕЖА порівнювати не більше вказаної кількості байтів." -#: src/cmp.c:168 +#: src/cmp.c:172 msgid "-s, --quiet, --silent suppress all normal output" msgstr "-s, --quiet, --silent не показувати всі звичайні повідомлення" -#: src/cmp.c:169 +#: src/cmp.c:173 msgid " --help display this help and exit" msgstr "" " --help показати це довідкове повідомлення і завершити " "роботу" -#: src/cmp.c:170 +#: src/cmp.c:174 msgid "-v, --version output version information and exit" msgstr "" "-v, --version показати дані щодо версії і завершити роботу" -#: src/cmp.c:179 +#: src/cmp.c:183 #, c-format msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n" msgstr "Використання: %s [ПАРАМЕТР]... ФАЙЛ1 [ФАЙЛ2 [Н1 [Н2]]]\n" -#: src/cmp.c:181 +#: src/cmp.c:185 msgid "Compare two files byte by byte." msgstr "Порівнює два файли по байтах." -#: src/cmp.c:183 +#: src/cmp.c:187 msgid "" "The optional SKIP1 and SKIP2 specify the number of bytes to skip\n" "at the beginning of each file (zero by default)." @@ -582,14 +583,14 @@ msgstr "" "Додаткові аргументи Н1 та Н2 визначають кількість байтів, які слід\n" "пропустити на початку кожного файла (типово байти не пропускаються)." -#: src/cmp.c:186 src/diff.c:999 src/diff3.c:514 src/sdiff.c:211 +#: src/cmp.c:190 src/diff.c:1059 src/diff3.c:512 src/sdiff.c:210 msgid "" "Mandatory arguments to long options are mandatory for short options too.\n" msgstr "" "Обов’язкові аргументи для довгих форм запису параметрів є обов’язковими і " "для скорочених форм.\n" -#: src/cmp.c:192 +#: src/cmp.c:196 msgid "" "SKIP values may be followed by the following multiplicative suffixes:\n" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" @@ -599,201 +600,201 @@ msgstr "" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" "GB 1,000,000,000, G 1,073,741,824, і так далі для T, P, E, Z, Y." -#: src/cmp.c:195 +#: src/cmp.c:199 msgid "If a FILE is '-' or missing, read standard input." msgstr "" "Якщо ФАЙЛ не вказано або вказано як «-», дані буде прочитано зі стандартного " "потоку введення." -#: src/cmp.c:196 src/diff.c:987 src/sdiff.c:221 +#: src/cmp.c:200 src/diff.c:1047 src/sdiff.c:220 msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble." msgstr "" "Код завершення дорівнює 0, якщо вхідні файли ідентичні, 1 -- якщо\n" "відрізняються, та 2 при виникненні помилок." -#: src/cmp.c:243 +#: src/cmp.c:247 #, c-format msgid "invalid --bytes value '%s'" msgstr "некоректне значення --bytes «%s»" -#: src/cmp.c:269 src/diff.c:797 src/diff3.c:361 src/sdiff.c:567 +#: src/cmp.c:273 src/diff.c:857 src/diff3.c:368 src/sdiff.c:564 #, c-format msgid "missing operand after '%s'" msgstr "пропущено операнд після «%s»" -#: src/cmp.c:281 src/diff.c:799 src/diff3.c:363 src/sdiff.c:569 +#: src/cmp.c:285 src/diff.c:859 src/diff3.c:370 src/sdiff.c:566 #, c-format msgid "extra operand '%s'" msgstr "зайвий операнд «%s»" -#: src/cmp.c:507 +#: src/cmp.c:521 #, c-format msgid "%s %s differ: byte %s, line %s\n" msgstr "%s %s відрізняються: байт %s, рядок %s\n" -#: src/cmp.c:523 +#: src/cmp.c:537 #, c-format msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n" msgstr "%s %s відрізняються: байт %s, рядок %s дорівнює %3o %s %3o %s\n" -#: src/cmp.c:580 +#: src/cmp.c:594 #, c-format msgid "cmp: EOF on %s which is empty\n" msgstr "cmp: кінець файла у %s, який є порожнім\n" -#: src/cmp.c:594 +#: src/cmp.c:608 #, c-format msgid "cmp: EOF on %s after byte %s, line %s\n" msgstr "cmp: кінець файла у %s після байта %s, рядок %s\n" -#: src/cmp.c:595 +#: src/cmp.c:609 #, c-format msgid "cmp: EOF on %s after byte %s, in line %s\n" msgstr "cmp: кінець файла у %s після байта %s, у рядку %s\n" -#: src/cmp.c:601 +#: src/cmp.c:615 #, c-format msgid "cmp: EOF on %s after byte %s\n" msgstr "cmp: кінець файла у %s після байта %s\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:51 +#: src/diff.c:50 msgid "Paul Eggert" msgstr "Paul Eggert" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:52 +#: src/diff.c:51 msgid "Mike Haertel" msgstr "Mike Haertel" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:53 +#: src/diff.c:52 msgid "David Hayes" msgstr "David Hayes" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:54 +#: src/diff.c:53 msgid "Richard Stallman" msgstr "Richard Stallman" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:55 +#: src/diff.c:54 msgid "Len Tower" msgstr "Len Tower" -#: src/diff.c:355 +#: src/diff.c:365 #, c-format msgid "invalid context length '%s'" msgstr "некоректна довжина контексту «%s»" -#: src/diff.c:438 +#: src/diff.c:487 #, c-format msgid "pagination not supported on this host" msgstr "розбиття на сторінки не підтримується на цій машині" -#: src/diff.c:453 src/diff3.c:341 +#: src/diff.c:502 src/diff3.c:348 #, c-format msgid "too many file label options" msgstr "надто багато параметрів, що вказують позначки файлів" -#: src/diff.c:530 +#: src/diff.c:579 #, c-format msgid "invalid width '%s'" msgstr "некоректна ширина «%s»" -#: src/diff.c:534 +#: src/diff.c:583 msgid "conflicting width options" msgstr "суперечливі параметри визначення ширини" -#: src/diff.c:559 +#: src/diff.c:608 #, c-format msgid "invalid horizon length '%s'" msgstr "некоректна довжина горизонту «%s»" -#: src/diff.c:615 +#: src/diff.c:664 #, c-format msgid "invalid tabsize '%s'" msgstr "неприпустима ширина табуляції «%s»" -#: src/diff.c:619 +#: src/diff.c:668 msgid "conflicting tabsize options" msgstr "суперечливі параметри визначення ширини табуляції" -#: src/diff.c:774 +#: src/diff.c:834 msgid "--from-file and --to-file both specified" msgstr "необхідно вказати як --from-file, так і --to-file" -#: src/diff.c:893 +#: src/diff.c:953 msgid " --normal output a normal diff (the default)" msgstr "" " --normal вивести дані у форматі звичайного diff (типово)" -#: src/diff.c:894 +#: src/diff.c:954 msgid "-q, --brief report only when files differ" msgstr "-q, --brief сповіщати лише про різні файли" -#: src/diff.c:895 +#: src/diff.c:955 msgid "-s, --report-identical-files report when two files are the same" msgstr "-s --report-identical-files сповіщати про однакові файли" -#: src/diff.c:896 +#: src/diff.c:956 msgid "" "-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context" msgstr "" "-c, -C КТЬ, --context[=КТЬ] вивести КТЬ (типово 3) рядки скопійованого " "контексту" -#: src/diff.c:897 +#: src/diff.c:957 msgid "" "-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context" msgstr "" "-u, -U ЧИСЛО, --unified[=ЧИСЛО] вивести ЧИСЛО (типово 3) рядків спільного " "контексту" -#: src/diff.c:898 +#: src/diff.c:958 msgid "-e, --ed output an ed script" msgstr "-e, --ed вивести дані у форматі запису ed" -#: src/diff.c:899 +#: src/diff.c:959 msgid "-n, --rcs output an RCS format diff" msgstr "" "-n, --rcs виводити у форматі diff систем керування " "версіями" -#: src/diff.c:900 +#: src/diff.c:960 msgid "-y, --side-by-side output in two columns" msgstr "-y, --side-by-side вивести дані у два стовпчики" -#: src/diff.c:901 +#: src/diff.c:961 msgid "" "-W, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-W, --width=ЧИСЛО виводити текст не більше ніж у ЧИСЛО (типово " "130) позицій у рядок" -#: src/diff.c:902 +#: src/diff.c:962 msgid "" " --left-column output only the left column of common lines" msgstr "" " --left-column виводити спільні рядки лише у ліву колонку" -#: src/diff.c:903 +#: src/diff.c:963 msgid " --suppress-common-lines do not output common lines" msgstr " --suppress-common-lines не виводити однакові рядки" -#: src/diff.c:905 +#: src/diff.c:965 msgid "-p, --show-c-function show which C function each change is in" msgstr "" "-p, --show-c-function показати дані щодо функцій C у яких виявлено " "кожну зі змін" -#: src/diff.c:906 +#: src/diff.c:966 msgid "-F, --show-function-line=RE show the most recent line matching RE" msgstr "" "-F, --show-function-line=RE показати останній рядок, що відповідає " "формальному виразу RE" -#: src/diff.c:907 +#: src/diff.c:967 msgid "" " --label LABEL use LABEL instead of file name and timestamp\n" " (can be repeated)" @@ -802,75 +803,75 @@ msgstr "" "часової позначки\n" " (можна використовувати декілька разів)" -#: src/diff.c:910 +#: src/diff.c:970 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "" "-t --expand-tabs замінювати символи табуляції пробілами у виводі" -#: src/diff.c:911 +#: src/diff.c:971 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T --initial-tab вирівнювати табуляцію символами табуляції" -#: src/diff.c:912 +#: src/diff.c:972 msgid "" " --tabsize=NUM tab stops every NUM (default 8) print columns" msgstr "" " --tabsize=ЧИСЛО табуляція кожні ЧИСЛО позицій виведення " "(типово 8)" -#: src/diff.c:913 +#: src/diff.c:973 msgid "" " --suppress-blank-empty suppress space or tab before empty output lines" msgstr "" " --suppress-blank-empty не показувати пробіли або табуляції перед " "порожніми рядками" -#: src/diff.c:914 +#: src/diff.c:974 msgid "-l, --paginate pass output through 'pr' to paginate it" msgstr "" "-l --paginate спрямувати дані до «pr» для розбиття на " "сторінки." -#: src/diff.c:916 +#: src/diff.c:976 msgid "" "-r, --recursive recursively compare any subdirectories found" msgstr "" "-r, --recursive рекурсивно порівняти всі знайдені підкаталоги" -#: src/diff.c:917 +#: src/diff.c:977 msgid " --no-dereference don't follow symbolic links" msgstr "" " --no-dereference не переходити за символічними посиланнями" -#: src/diff.c:918 +#: src/diff.c:978 msgid "-N, --new-file treat absent files as empty" msgstr "-N, --new-file вважати незнайдені файли порожніми" -#: src/diff.c:919 +#: src/diff.c:979 msgid " --unidirectional-new-file treat absent first files as empty" msgstr "" " --unidirectional-new-file вважати незнайдені у першому джерелі файли " "порожніми" -#: src/diff.c:920 +#: src/diff.c:980 msgid " --ignore-file-name-case ignore case when comparing file names" msgstr "" " --ignore-file-name-case ігнорувати регістр назв файлів під час " "порівняння" -#: src/diff.c:921 +#: src/diff.c:981 msgid " --no-ignore-file-name-case consider case when comparing file names" msgstr "" " --no-ignore-file-name-case враховувати регістр символів назв файлів" -#: src/diff.c:922 +#: src/diff.c:982 msgid "-x, --exclude=PAT exclude files that match PAT" msgstr "" "-x --exclude=ЗРАЗОК виключити файли, назви яких відповідають " "ЗРАЗКУ" -#: src/diff.c:923 +#: src/diff.c:983 msgid "" "-X, --exclude-from=FILE exclude files that match any pattern in FILE" msgstr "" @@ -878,13 +879,13 @@ msgstr "" "зразкам\n" " з файла." -#: src/diff.c:924 +#: src/diff.c:984 msgid "" "-S, --starting-file=FILE start with FILE when comparing directories" msgstr "" "-S, --starting-file=ФАЙЛ починати порівняння каталогів на файлі ФАЙЛ" -#: src/diff.c:925 +#: src/diff.c:985 msgid "" " --from-file=FILE1 compare FILE1 to all operands;\n" " FILE1 can be a directory" @@ -892,7 +893,7 @@ msgstr "" " --from-file=ФАЙЛ1 порівняти ФАЙЛ1 з усіма операндами;\n" " ФАЙЛ1 може бути каталогом" -#: src/diff.c:927 +#: src/diff.c:987 msgid "" " --to-file=FILE2 compare all operands to FILE2;\n" " FILE2 can be a directory" @@ -900,84 +901,84 @@ msgstr "" " --to-file=ФАЙЛ2 порівняти всі операнди з ФАЙЛОМ " "2; ФАЙЛ2 може бути каталогом." -#: src/diff.c:930 +#: src/diff.c:990 msgid "" "-i, --ignore-case ignore case differences in file contents" msgstr "" "-i --ignore-case ігнорувати регістр літер у вмісті файлів" -#: src/diff.c:931 +#: src/diff.c:991 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E --ignore-tab-expansion ігнорувати зміни, викликані заміною " "табуляції пробілами" -#: src/diff.c:932 +#: src/diff.c:992 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "-Z, --ignore-trailing-space ігнорувати пробіли наприкінці рядка" -#: src/diff.c:933 +#: src/diff.c:993 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "-b --ignore-space-change ігнорувати зміни у кількості пробілів" -#: src/diff.c:934 +#: src/diff.c:994 msgid "-w, --ignore-all-space ignore all white space" msgstr "-w --ignore-all-space ігнорувати усі пробіли" -#: src/diff.c:935 +#: src/diff.c:995 msgid "" "-B, --ignore-blank-lines ignore changes where lines are all blank" msgstr "" "-B --ignore-blank-lines ігнорувати зміни кількості порожніх рядків" -#: src/diff.c:936 +#: src/diff.c:996 msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE" msgstr "" "-I, --ignore-matching-lines=RE ігнорувати зміни, які відповідають " "формальному виразу RE" -#: src/diff.c:938 +#: src/diff.c:998 msgid "-a, --text treat all files as text" msgstr "-a, --text вважати всі файли текстовими" -#: src/diff.c:939 +#: src/diff.c:999 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr вилучити з виведених даних всі завершальні " "символи нового рядка" -#: src/diff.c:941 +#: src/diff.c:1001 msgid " --binary read and write data in binary mode" msgstr "" " --binary читати та записувати файли у двійковій формі" -#: src/diff.c:944 +#: src/diff.c:1004 msgid "" "-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs" msgstr "" "-D, --ifdef=НАЗВА виводити diff-блоки, що використовують " "конструкцію «#ifdef НАЗВА»." -#: src/diff.c:945 +#: src/diff.c:1005 msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT" msgstr "" " --ГТИП-group-format=ГФМТ форматувати вхідні групи типу ГТИП\n" " у відповідності до формату ГФМТ." -#: src/diff.c:946 +#: src/diff.c:1006 msgid " --line-format=LFMT format all input lines with LFMT" msgstr "" " --line-format=СФМТ форматувати всі вхідні рядки за допомогою " "СФМТ." -#: src/diff.c:947 +#: src/diff.c:1007 msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT" msgstr "" " --CТИП-group-format=СФМТ форматувати вхідні рядки типу СТИП\n" " у відповідності до формату СФМТ" -#: src/diff.c:948 +#: src/diff.c:1008 msgid "" " These format options provide fine-grained control over the output\n" " of diff, generalizing -D/--ifdef." @@ -985,12 +986,12 @@ msgstr "" " За допомогою цих параметрів форматування можна точно налаштувати\n" " вивід diff, з узагальненням -D/--ifdef." -#: src/diff.c:950 +#: src/diff.c:1010 msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'." msgstr "" " СТИП може бути «old», «new» чи «unchanged», ГТИП — те саме або «changed»." -#: src/diff.c:951 +#: src/diff.c:1011 msgid "" " GFMT (only) may contain:\n" " %< lines from FILE1\n" @@ -1018,7 +1019,7 @@ msgstr "" " M L+1\n" " %(A=B?T:E) якщо A дорівнює B, T, інакше E" -#: src/diff.c:963 +#: src/diff.c:1023 msgid "" " LFMT (only) may contain:\n" " %L contents of line\n" @@ -1030,7 +1031,7 @@ msgstr "" " %l вміст рядка без символу нового рядка наприкінці\n" " %[-][ШИРИНА][.[ТОЧН]]{doxX}n формат номеру вхідного рядка у стилі printf" -#: src/diff.c:967 +#: src/diff.c:1027 msgid "" " Both GFMT and LFMT may contain:\n" " %% %\n" @@ -1044,23 +1045,23 @@ msgstr "" " %c'\\OOO' один символ з вісімковим кодом OOO\n" " C символ C (інші символи не оброблятимуться)" -#: src/diff.c:973 +#: src/diff.c:1033 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "-d --minimal намагатись знайти найменший набір змін" -#: src/diff.c:974 +#: src/diff.c:1034 msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix" msgstr "" " --horizon-lines=ЧИСЛО зберегти ЧИСЛО спільних рядків, до та після різних" -#: src/diff.c:975 +#: src/diff.c:1035 msgid "" " --speed-large-files assume large files and many scattered small changes" msgstr "" " --speed-large-files вважати файли великими з багатьма розкиданими\n" " дрібними змінами." -#: src/diff.c:976 +#: src/diff.c:1036 msgid "" " --color[=WHEN] color output; WHEN is 'never', 'always', or " "'auto';\n" @@ -1070,7 +1071,7 @@ msgstr "" "'never', 'always',\n" " або 'auto'; просто --color означає --color='auto'" -#: src/diff.c:978 +#: src/diff.c:1038 msgid "" " --palette=PALETTE the colors to use when --color is active; PALETTE " "is\n" @@ -1081,116 +1082,116 @@ msgstr "" " ПАЛІТРА — відокремлений двокрапками список " "можливостей terminfo" -#: src/diff.c:981 +#: src/diff.c:1041 msgid " --help display this help and exit" msgstr "" " --help показати це довідкове повідомлення і завершити " "роботу" -#: src/diff.c:982 +#: src/diff.c:1042 msgid "-v, --version output version information and exit" msgstr "-v, --version показати дані щодо версії і завершити роботу" -#: src/diff.c:984 +#: src/diff.c:1044 msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'." msgstr "" "ФАЙЛИ — це «ФАЙЛ1 ФАЙЛ2», чи «КАТАЛОГ1 КАТАЛОГ2», чи «КАТАЛОГ ФАЙЛ»,\n" "чи «ФАЙЛ КАТАЛОГ»." -#: src/diff.c:985 +#: src/diff.c:1045 msgid "" "If --from-file or --to-file is given, there are no restrictions on FILE(s)." msgstr "Якщо вказано --from-file чи --to-file, на ФАЙЛИ обмежень немає." -#: src/diff.c:986 src/diff3.c:533 src/sdiff.c:220 +#: src/diff.c:1046 src/diff3.c:531 src/sdiff.c:219 msgid "If a FILE is '-', read standard input." msgstr "" "Якщо ФАЙЛ вказано як «-», дані буде прочитано зі стандартного потоку " "введення." -#: src/diff.c:996 +#: src/diff.c:1056 #, c-format msgid "Usage: %s [OPTION]... FILES\n" msgstr "Використання: %s [КЛЮЧ]... ФАЙЛИ\n" -#: src/diff.c:997 +#: src/diff.c:1057 msgid "Compare FILES line by line." msgstr "Порівнює два файли за рядками." -#: src/diff.c:1034 +#: src/diff.c:1094 #, c-format msgid "conflicting %s option value '%s'" msgstr "суперечливі значення %s для ключа «%s»" -#: src/diff.c:1047 +#: src/diff.c:1107 #, c-format msgid "conflicting output style options" msgstr "суперечливі ключі визначення стилю виводу" -#: src/diff.c:1063 +#: src/diff.c:1123 #, c-format msgid "invalid color '%s'" msgstr "некоректний колір «%s»" -#: src/diff.c:1119 src/diff.c:1329 +#: src/diff.c:1197 src/diff.c:1401 #, c-format msgid "Only in %s: %s\n" msgstr "Лише у %s: %s\n" -#: src/diff.c:1253 +#: src/diff.c:1325 msgid "cannot compare '-' to a directory" msgstr "не можна порівнювати «-» з каталогом" -#: src/diff.c:1288 +#: src/diff.c:1360 msgid "-D option not supported with directories" msgstr "-D параметр не підтримується для каталогів" -#: src/diff.c:1297 +#: src/diff.c:1369 #, c-format msgid "Common subdirectories: %s and %s\n" msgstr "Спільні підкаталоги: %s та %s\n" -#: src/diff.c:1339 src/diff.c:1389 +#: src/diff.c:1411 src/diff.c:1461 #, c-format msgid "File %s is a %s while file %s is a %s\n" msgstr "Файл %s це %s, тоді як файл %s -- %s\n" -#: src/diff.c:1375 +#: src/diff.c:1447 #, c-format msgid "Symbolic links %s and %s differ\n" msgstr "Символічні посилання %s і %s є різними\n" -#: src/diff.c:1462 +#: src/diff.c:1534 #, c-format msgid "Files %s and %s are identical\n" msgstr "Файли %s та %s ідентичні\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff3.c:43 +#: src/diff3.c:51 msgid "Randy Smith" msgstr "Randy Smith" -#: src/diff3.c:356 +#: src/diff3.c:363 #, c-format msgid "incompatible options" msgstr "несумісні ключі" -#: src/diff3.c:396 +#: src/diff3.c:403 msgid "'-' specified for more than one input file" msgstr "«-» вказано для більш ніж одного вхідного файла" -#: src/diff3.c:447 src/diff3.c:1295 src/diff3.c:1698 src/diff3.c:1753 -#: src/sdiff.c:308 src/sdiff.c:846 src/sdiff.c:857 +#: src/diff3.c:445 src/diff3.c:1284 src/diff3.c:1683 src/diff3.c:1738 +#: src/sdiff.c:306 src/sdiff.c:843 src/sdiff.c:854 msgid "read failed" msgstr "помилка читання" -#: src/diff3.c:480 +#: src/diff3.c:478 msgid "-A, --show-all output all changes, bracketing conflicts" msgstr "" "-A --show-all вивести всі зміни, беручи конфліктні місця у " "дужки." -#: src/diff3.c:482 +#: src/diff3.c:480 msgid "" "-e, --ed output ed script incorporating changes\n" " from OLDFILE to YOURFILE into MYFILE" @@ -1198,13 +1199,13 @@ msgstr "" "-e --ed вивести необ'єднані зміни у СТАРОМУ-ФАЙЛІ\n" " порівняно з ВАШИМ-ФАЙЛОМ до МОГО-ФАЙЛА." -#: src/diff3.c:484 +#: src/diff3.c:482 msgid "-E, --show-overlap like -e, but bracket conflicts" msgstr "" "-E --show-overlap подібно до -e, але з взяттям конфліктних місць у " "дужки" -#: src/diff3.c:485 +#: src/diff3.c:483 msgid "" "-3, --easy-only like -e, but incorporate only nonoverlapping " "changes" @@ -1212,25 +1213,25 @@ msgstr "" "-3, --easy-only подібно до -e, але включити лише зміни без " "перекриття" -#: src/diff3.c:486 +#: src/diff3.c:484 msgid "" "-x, --overlap-only like -e, but incorporate only overlapping changes" msgstr "" "-x, --overlap-only подібно до -e, але включати лише зміни з " "перекриттям" -#: src/diff3.c:487 +#: src/diff3.c:485 msgid "-X like -x, but bracket conflicts" msgstr "" "-X подібно до -x, але з взяттям розбіжностей у дужки" -#: src/diff3.c:488 +#: src/diff3.c:486 msgid "-i append 'w' and 'q' commands to ed scripts" msgstr "" "-i дописувати команди «w» і «q» в кінець сценарію " "ed." -#: src/diff3.c:490 +#: src/diff3.c:488 msgid "" "-m, --merge output actual merged file, according to\n" " -A if no other options are given" @@ -1239,28 +1240,28 @@ msgstr "" "до\n" " -A, якщо не вказано інших параметрів" -#: src/diff3.c:493 +#: src/diff3.c:491 msgid "-a, --text treat all files as text" msgstr "-a, --text вважати всі файли текстовими" -#: src/diff3.c:494 +#: src/diff3.c:492 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr вилучити з виведених даних всі завершальні " "символи нового рядка" -#: src/diff3.c:495 +#: src/diff3.c:493 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T --initial-tab вирівнювати табуляцію додаючи на початок символ " "табуляції" -#: src/diff3.c:496 +#: src/diff3.c:494 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr "" " --diff-program=ПРОГРАМА використовувати для порівняння вказану ПРОГРАМУ" -#: src/diff3.c:497 +#: src/diff3.c:495 msgid "" "-L, --label=LABEL use LABEL instead of file name\n" " (can be repeated up to three times)" @@ -1268,27 +1269,27 @@ msgstr "" "-L, --label=МІТКА використовувати МІТКУ замість назви файла\n" " (можна використовувати не більше трьох разів)" -#: src/diff3.c:500 +#: src/diff3.c:498 msgid " --help display this help and exit" msgstr "" " --help показати це довідкове повідомлення і завершити " "роботу" -#: src/diff3.c:501 +#: src/diff3.c:499 msgid "-v, --version output version information and exit" msgstr "" "-v, --version показати дані щодо версії і завершити роботу" -#: src/diff3.c:510 +#: src/diff3.c:508 #, c-format msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n" msgstr "Використання: %s [КЛЮЧ]... МІЙ-ФАЙЛ СТАРИЙ-ФАЙЛ ВАШ-ФАЙЛ\n" -#: src/diff3.c:512 +#: src/diff3.c:510 msgid "Compare three files line by line." msgstr "Порівняння трьох файлів рядками." -#: src/diff3.c:522 +#: src/diff3.c:520 msgid "" "\n" "The default output format is a somewhat human-readable representation of\n" @@ -1312,57 +1313,57 @@ msgstr "" "diff3 з виводом їх до об’єднаного файла. Для нетипових вхідних даних\n" "такий варіант працює краще за варіант з використанням ed.\n" -#: src/diff3.c:534 +#: src/diff3.c:532 msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble." msgstr "" "Код завершення дорівнює 0 при нормальному завершенні, 1 при конфліктах\n" " та 2 при несправностях." -#: src/diff3.c:727 +#: src/diff3.c:725 msgid "internal error: screwup in format of diff blocks" msgstr "внутрішня помилка: пошкоджений формат diff-блоків" -#: src/diff3.c:1022 +#: src/diff3.c:1015 #, c-format msgid "%s: diff failed: " msgstr "%s: помилка при пошуку відмінностей: " -#: src/diff3.c:1044 +#: src/diff3.c:1037 msgid "internal error: invalid diff type in process_diff" msgstr "" "внутрішня помилка: неправильний тип diff-блоку у функції `process_diff'" -#: src/diff3.c:1069 +#: src/diff3.c:1060 msgid "invalid diff format; invalid change separator" msgstr "неправильний формат diff-файла; неправильний розділювач змін" -#: src/diff3.c:1305 +#: src/diff3.c:1294 msgid "invalid diff format; incomplete last line" msgstr "неправильний формат diff-файла; неповний останній рядок" -#: src/diff3.c:1329 src/sdiff.c:276 src/util.c:969 +#: src/diff3.c:1318 src/sdiff.c:274 src/util.c:1069 #, c-format msgid "subsidiary program '%s' could not be invoked" msgstr "не вдається запустити допоміжну програму «%s»" -#: src/diff3.c:1354 +#: src/diff3.c:1343 msgid "invalid diff format; incorrect leading line chars" msgstr "неправильний diff-формат; неправильні перші символи рядка" -#: src/diff3.c:1427 +#: src/diff3.c:1416 msgid "internal error: invalid diff type passed to output" msgstr "внутрішня помилка: на вхід подано неправильний тип diff-файла" -#: src/diff3.c:1700 src/diff3.c:1757 +#: src/diff3.c:1685 src/diff3.c:1742 msgid "input file shrank" msgstr "вхідний файл зменшився" -#: src/dir.c:156 +#: src/dir.c:154 #, c-format msgid "cannot compare file names '%s' and '%s'" msgstr "неможливо порівняти назви файлів «%s» та «%s»" -#: src/dir.c:225 +#: src/dir.c:223 #, c-format msgid "%s: recursive directory loop" msgstr "%s: зациклення рекурсивного проходу каталогів" @@ -1372,131 +1373,131 @@ msgstr "%s: зациклення рекурсивного проходу кат msgid "Thomas Lord" msgstr "Thomas Lord" -#: src/sdiff.c:174 +#: src/sdiff.c:173 msgid "" "-o, --output=FILE operate interactively, sending output to FILE" msgstr "" "-o, --output=ФАЙЛ інтерактивний режим із записом виводу до ФАЙЛА" -#: src/sdiff.c:176 +#: src/sdiff.c:175 msgid "" "-i, --ignore-case consider upper- and lower-case to be the same" msgstr "-i --ignore-case ігнорувати регістр літер" -#: src/sdiff.c:177 +#: src/sdiff.c:176 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "" "-E --ignore-tab-expansion ігнорувати зміни, викликані заміною табуляції " "пробілами" -#: src/sdiff.c:178 +#: src/sdiff.c:177 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "-Z, --ignore-trailing-space ігнорувати пробіли наприкінці рядка" -#: src/sdiff.c:179 +#: src/sdiff.c:178 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "-b --ignore-space-change ігнорувати зміни у кількості пробілів" -#: src/sdiff.c:180 +#: src/sdiff.c:179 msgid "-W, --ignore-all-space ignore all white space" msgstr "-W --ignore-all-space ігнорувати усі пробіли" -#: src/sdiff.c:181 +#: src/sdiff.c:180 msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank" msgstr "" "-B --ignore-blank-lines ігнорувати зміни кількості порожніх рядків" -#: src/sdiff.c:182 +#: src/sdiff.c:181 msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE" msgstr "" "-I, --ignore-matching-lines=RE ігнорувати зміни, які відповідають " "формальному виразу RE" -#: src/sdiff.c:183 +#: src/sdiff.c:182 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr вилучити з виведених даних всі завершальні " "символи нового рядка" -#: src/sdiff.c:184 +#: src/sdiff.c:183 msgid "-a, --text treat all files as text" msgstr "-a, --text вважати всі файли текстовими" -#: src/sdiff.c:186 +#: src/sdiff.c:185 msgid "" "-w, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-w, --width=ЧИСЛО виводити текст не більше ніж у ЧИСЛО (типово " "130) позицій у рядок" -#: src/sdiff.c:187 +#: src/sdiff.c:186 msgid "" "-l, --left-column output only the left column of common lines" msgstr "" "-l, -left-column виводити спільні рядки лише у ліву колонку" -#: src/sdiff.c:188 +#: src/sdiff.c:187 msgid "-s, --suppress-common-lines do not output common lines" msgstr "-s --suppress-common-lines не виводити спільні рядки" -#: src/sdiff.c:190 +#: src/sdiff.c:189 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "" "-t --expand-tabs замінювати символи табуляції пробілами у виводі" -#: src/sdiff.c:191 +#: src/sdiff.c:190 msgid "" " --tabsize=NUM tab stops at every NUM (default 8) print columns" msgstr "" " --tabsize=ЧИСЛО табуляція кожні ЧИСЛО позицій виведення (типово " "8)" -#: src/sdiff.c:193 +#: src/sdiff.c:192 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "-d --minimal намагатись знайти найменший набір змін" -#: src/sdiff.c:194 +#: src/sdiff.c:193 msgid "" "-H, --speed-large-files assume large files, many scattered small changes" msgstr "" "-H, -speed-large-files вважати файли великими з багатьма розкиданими\n" " дрібними змінами." -#: src/sdiff.c:195 +#: src/sdiff.c:194 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr "" " --diff-program=ПРОГРАМА використовувати для порівняння вказану ПРОГРАМУ" -#: src/sdiff.c:197 +#: src/sdiff.c:196 msgid " --help display this help and exit" msgstr "" " --help показати це довідкове повідомлення і завершити " "роботу" -#: src/sdiff.c:198 +#: src/sdiff.c:197 msgid "-v, --version output version information and exit" msgstr "" "-v, --version показати дані щодо версії і завершити роботу" -#: src/sdiff.c:207 +#: src/sdiff.c:206 #, c-format msgid "Usage: %s [OPTION]... FILE1 FILE2\n" msgstr "Використання: %s [КЛЮЧ]... ФАЙЛ1 ФАЙЛ2\n" -#: src/sdiff.c:209 +#: src/sdiff.c:208 msgid "Side-by-side merge of differences between FILE1 and FILE2." msgstr "Паралельне об’єднання файлів ФАЙЛ1 і ФАЙЛ2." -#: src/sdiff.c:330 +#: src/sdiff.c:328 msgid "cannot interactively merge standard input" msgstr "не можна інтерактивно об'єднувати стандартний потік вводу" -#: src/sdiff.c:597 +#: src/sdiff.c:594 msgid "both files to be compared are directories" msgstr "обидва файли, що порівнюються є каталогами" -#: src/sdiff.c:820 +#: src/sdiff.c:817 msgid "" "ed:\tEdit then use both versions, each decorated with a header.\n" "eb:\tEdit then use both versions.\n" @@ -1520,12 +1521,12 @@ msgstr "" "v:\tВключати спільні рядки, виводячи повідомлення.\n" "q:\tВийти.\n" -#: src/util.c:662 +#: src/util.c:755 #, c-format msgid "unrecognized prefix: %s" msgstr "невідомий префікс: %s" -#: src/util.c:692 +#: src/util.c:785 #, c-format msgid "unparsable value for --palette" msgstr "непридатне до обробки значення для --palette" diff --git a/po/vi.po b/po/vi.po index e38e45b..4ab15f7 100644 --- a/po/vi.po +++ b/po/vi.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: diffutils 3.6.17\n" "Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n" -"POT-Creation-Date: 2021-08-01 18:56-0700\n" +"POT-Creation-Date: 2023-05-21 01:51-0700\n" "PO-Revision-Date: 2018-12-28 13:56+0700\n" "Last-Translator: Trần Ngọc Quân \n" "Language-Team: Vietnamese \n" @@ -22,29 +22,29 @@ msgstr "" "X-Generator: Gtranslator 2.91.7\n" "X-Poedit-SourceCharset: UTF-8\n" -#: lib/argmatch.c:132 +#: lib/argmatch.c:145 #, c-format msgid "invalid argument %s for %s" msgstr "tham số %s cho %s không hợp lệ" -#: lib/argmatch.c:133 +#: lib/argmatch.c:146 #, c-format msgid "ambiguous argument %s for %s" msgstr "tham số %s không rõ ràng với %s" -#: lib/argmatch.c:152 lib/argmatch.h:223 +#: lib/argmatch.c:165 lib/argmatch.h:242 msgid "Valid arguments are:" msgstr "Các tham số hợp lệ là:" -#: lib/c-stack.c:187 +#: lib/c-stack.c:186 msgid "program error" msgstr "lỗi chÆ°Æ¡ng trình" -#: lib/c-stack.c:188 +#: lib/c-stack.c:187 msgid "stack overflow" msgstr "stack bị tràn" -#: lib/error.c:195 +#: lib/error.c:193 msgid "Unknown system error" msgstr "Không biết lỗi hệ thống" @@ -200,83 +200,83 @@ msgstr "%s: tùy chọn yêu cầu một đối số -- “%c”\n" #. If you don't know what to put here, please see #. #. and use glyphs suitable for your language. -#: lib/quotearg.c:355 +#: lib/quotearg.c:354 msgid "`" msgstr "“" -#: lib/quotearg.c:356 +#: lib/quotearg.c:355 msgid "'" msgstr "”" -#: lib/regcomp.c:135 +#: lib/regcomp.c:122 msgid "Success" msgstr "Thành công" -#: lib/regcomp.c:138 +#: lib/regcomp.c:125 msgid "No match" msgstr "Không có gì khớp" -#: lib/regcomp.c:141 +#: lib/regcomp.c:128 msgid "Invalid regular expression" msgstr "Biểu thức chính quy không hợp lệ" -#: lib/regcomp.c:144 +#: lib/regcomp.c:131 msgid "Invalid collation character" msgstr "Ký tá»± đối chiếu không hợp lệ" -#: lib/regcomp.c:147 +#: lib/regcomp.c:134 msgid "Invalid character class name" msgstr "Tên lớp ký tá»± không hợp lệ" -#: lib/regcomp.c:150 +#: lib/regcomp.c:137 msgid "Trailing backslash" msgstr "Có gạch ngược theo sau" -#: lib/regcomp.c:153 +#: lib/regcomp.c:140 msgid "Invalid back reference" msgstr "Tham chiếu ngược trở lại không hợp lệ" -#: lib/regcomp.c:156 +#: lib/regcomp.c:143 msgid "Unmatched [, [^, [:, [., or [=" msgstr "ChÆ°a khớp cặp ký tá»± [, [^, [:, [., hay [=" -#: lib/regcomp.c:159 +#: lib/regcomp.c:146 msgid "Unmatched ( or \\(" msgstr "ChÆ°a khớp ( hay \\(" -#: lib/regcomp.c:162 +#: lib/regcomp.c:149 msgid "Unmatched \\{" msgstr "ChÆ°a khớp \\{" -#: lib/regcomp.c:165 +#: lib/regcomp.c:152 msgid "Invalid content of \\{\\}" msgstr "Nội dung của \\{\\} không hợp lệ" -#: lib/regcomp.c:168 +#: lib/regcomp.c:155 msgid "Invalid range end" msgstr "Kết thúc vùng không hợp lệ" -#: lib/regcomp.c:171 +#: lib/regcomp.c:158 msgid "Memory exhausted" msgstr "Hết bộ nhớ" -#: lib/regcomp.c:174 +#: lib/regcomp.c:161 msgid "Invalid preceding regular expression" msgstr "Biểu thức chính quy đi trước không hợp lệ" -#: lib/regcomp.c:177 +#: lib/regcomp.c:164 msgid "Premature end of regular expression" msgstr "Kết thức quá sớm của biểu thức chính quy" -#: lib/regcomp.c:180 +#: lib/regcomp.c:167 msgid "Regular expression too big" msgstr "Biểu thức chính quy quá lớn" -#: lib/regcomp.c:183 +#: lib/regcomp.c:170 msgid "Unmatched ) or \\)" msgstr "ChÆ°a khớp ) hay \\)" -#: lib/regcomp.c:676 +#: lib/regcomp.c:650 msgid "No previous regular expression" msgstr "Không có biểu thức chính quy đi trước" @@ -478,17 +478,17 @@ msgid "General help using GNU software: <%s>\n" msgstr "" "Trợ giúp chung về cách sá»­ dụng phần mềm GNU: \n" -#: src/analyze.c:454 src/diff.c:1406 +#: src/analyze.c:455 src/diff.c:1478 #, c-format msgid "Files %s and %s differ\n" msgstr "Hai tập tin %s và %s là khác nhau.\n" -#: src/analyze.c:455 +#: src/analyze.c:456 #, c-format msgid "Binary files %s and %s differ\n" msgstr "Hai tập tin nhị phân %s và %s khác nhau\n" -#: src/analyze.c:706 src/diff3.c:1470 src/util.c:1254 +#: src/analyze.c:707 src/diff3.c:1457 src/util.c:1354 msgid "No newline at end of file" msgstr "Không có ký tá»± dòng mới tại kêt thức tập tin." @@ -503,41 +503,42 @@ msgstr "Torbjorn Granlund" msgid "David MacKenzie" msgstr "David MacKenzie" -#: src/cmp.c:120 src/diff.c:879 src/diff3.c:467 src/sdiff.c:160 +#: src/cmp.c:124 src/diff.c:939 src/diff3.c:465 src/sdiff.c:159 #, c-format msgid "Try '%s --help' for more information." msgstr "Hãy chạy lệnh “%s --help” để xem thông tin thêm." -#: src/cmp.c:138 +#: src/cmp.c:142 #, c-format msgid "invalid --ignore-initial value '%s'" msgstr "" "giá trị của tùy chọn --ignore-initial (bỏ qua giá trị đầu) “%s” không hợp lệ" -#: src/cmp.c:148 +#: src/cmp.c:152 #, c-format msgid "options -l and -s are incompatible" msgstr "hai tùy chọn -l và -s không tÆ°Æ¡ng thích với nhau" -#: src/cmp.c:156 src/diff.c:887 src/diff3.c:474 src/sdiff.c:168 src/sdiff.c:316 -#: src/sdiff.c:323 src/sdiff.c:876 src/util.c:852 src/util.c:952 src/util.c:959 +#: src/cmp.c:160 src/diff.c:947 src/diff3.c:472 src/sdiff.c:167 src/sdiff.c:314 +#: src/sdiff.c:321 src/sdiff.c:873 src/util.c:952 src/util.c:1052 +#: src/util.c:1059 msgid "write failed" msgstr "không ghi được" -#: src/cmp.c:158 src/diff.c:889 src/diff.c:1471 src/diff3.c:476 src/sdiff.c:170 +#: src/cmp.c:162 src/diff.c:949 src/diff.c:1543 src/diff3.c:474 src/sdiff.c:169 msgid "standard output" msgstr "thiết bị xuất chuẩn" -#: src/cmp.c:162 +#: src/cmp.c:166 msgid "-b, --print-bytes print differing bytes" msgstr "-b, --print-bytes in ra những byte khác nhau." -#: src/cmp.c:163 +#: src/cmp.c:167 msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs" msgstr "" "-i, --ignore-initial=SỐ bỏ qua SỐ byte khởi đầu của dữ liệu nhập" -#: src/cmp.c:164 +#: src/cmp.c:168 msgid "" "-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n" " first SKIP2 bytes of FILE2" @@ -545,38 +546,38 @@ msgstr "" "-i, --ignore-initial=SỐ1:SỐ2 bỏ qua SỐ1 byte đầu của TẬP-TIN1 và\n" " SỐ2 byte đầu của TẬP-TIN2." -#: src/cmp.c:166 +#: src/cmp.c:170 msgid "" "-l, --verbose output byte numbers and differing byte values" msgstr "" "-l, --verbose xuất số byte và giá trị của tất cả byte khác nhau" -#: src/cmp.c:167 +#: src/cmp.c:171 msgid "-n, --bytes=LIMIT compare at most LIMIT bytes" msgstr "-n, --bytes=SỐ so sánh tối đa SỐ byte" -#: src/cmp.c:168 +#: src/cmp.c:172 msgid "-s, --quiet, --silent suppress all normal output" msgstr "-s, --quiet, --silent loại bỏ tất cả các kết xuất thông thường" -#: src/cmp.c:169 +#: src/cmp.c:173 msgid " --help display this help and exit" msgstr " --help hiển thị trợ giúp này rồi thoát" -#: src/cmp.c:170 +#: src/cmp.c:174 msgid "-v, --version output version information and exit" msgstr "-v, --version đưa ra thông tin phiên bản rồi thoát" -#: src/cmp.c:179 +#: src/cmp.c:183 #, c-format msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n" msgstr "Cách dùng: %s [TÙY_CHỌN]… TẬP_TIN1 [TẬP_TIN2 [SKIP1 [SKIP2]]]\n" -#: src/cmp.c:181 +#: src/cmp.c:185 msgid "Compare two files byte by byte." msgstr "So sánh mỗi byte trong hai tập tin." -#: src/cmp.c:183 +#: src/cmp.c:187 msgid "" "The optional SKIP1 and SKIP2 specify the number of bytes to skip\n" "at the beginning of each file (zero by default)." @@ -584,12 +585,12 @@ msgstr "" "Tùy chọn SKIP1 và SKIP2 chỉ định số byte sẽ được bỏ qua\n" "tại vị trí bắt đầu của mỗi tập tin (số không là mặc định)." -#: src/cmp.c:186 src/diff.c:999 src/diff3.c:514 src/sdiff.c:211 +#: src/cmp.c:190 src/diff.c:1059 src/diff3.c:512 src/sdiff.c:210 msgid "" "Mandatory arguments to long options are mandatory for short options too.\n" msgstr "Tùy chọn dài yêu cầu đối số thì tùy chọn ngắn cÅ©ng vậy.\n" -#: src/cmp.c:192 +#: src/cmp.c:196 msgid "" "SKIP values may be followed by the following multiplicative suffixes:\n" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" @@ -601,201 +602,201 @@ msgstr "" "GB x 1,000,000,000\tG x 1,073,741,824\n" "tÆ°Æ¡ng tá»± với T, P, E, Z, Y v.v." -#: src/cmp.c:195 +#: src/cmp.c:199 msgid "If a FILE is '-' or missing, read standard input." msgstr "Nếu TẬP-TIN là “-”, hay bỏ trống, thì đọc từ đầu vào tiêu chuẩn." -#: src/cmp.c:196 src/diff.c:987 src/sdiff.c:221 +#: src/cmp.c:200 src/diff.c:1047 src/sdiff.c:220 msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble." msgstr "" "Trạng thái thoát là số 0 nếu hai đầu vào bằng nhau, số 1 nếu là khác nhau và " "số 2 nếu gặp lỗi." -#: src/cmp.c:243 +#: src/cmp.c:247 #, c-format msgid "invalid --bytes value '%s'" msgstr "giá trị cho tùy chọn --bytes “%s” không hợp lệ" -#: src/cmp.c:269 src/diff.c:797 src/diff3.c:361 src/sdiff.c:567 +#: src/cmp.c:273 src/diff.c:857 src/diff3.c:368 src/sdiff.c:564 #, c-format msgid "missing operand after '%s'" msgstr "thiếu toán hạng sau “%s”" -#: src/cmp.c:281 src/diff.c:799 src/diff3.c:363 src/sdiff.c:569 +#: src/cmp.c:285 src/diff.c:859 src/diff3.c:370 src/sdiff.c:566 #, c-format msgid "extra operand '%s'" msgstr "toán hạng bổ xung “%s”" -#: src/cmp.c:507 +#: src/cmp.c:521 #, c-format msgid "%s %s differ: byte %s, line %s\n" msgstr "%s %s có khác nhau: byte %s, dòng %s\n" -#: src/cmp.c:523 +#: src/cmp.c:537 #, c-format msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n" msgstr "%s %s có khác nhau: byte %s, dòng %s là %3o %s %3o %s\n" -#: src/cmp.c:580 +#: src/cmp.c:594 #, c-format msgid "cmp: EOF on %s which is empty\n" msgstr "cmp: gặp kết thức tập tin trên %s cái mà trống rỗng\n" -#: src/cmp.c:594 +#: src/cmp.c:608 #, c-format msgid "cmp: EOF on %s after byte %s, line %s\n" msgstr "cmp: gặp kết thức tập tin trên %s sau byte %s, dòng %s\n" -#: src/cmp.c:595 +#: src/cmp.c:609 #, c-format msgid "cmp: EOF on %s after byte %s, in line %s\n" msgstr "cmp: gặp kết thức tập tin trên %s sau byte %s, ở dòng %s\n" -#: src/cmp.c:601 +#: src/cmp.c:615 #, c-format msgid "cmp: EOF on %s after byte %s\n" msgstr "cmp: gặp kết thức tập tin trên %s sau byte %s\n" # Tên họ #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:51 +#: src/diff.c:50 msgid "Paul Eggert" msgstr "Paul Eggert" # Tên họ #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:52 +#: src/diff.c:51 msgid "Mike Haertel" msgstr "Mike Haertel" # Tên họ #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:53 +#: src/diff.c:52 msgid "David Hayes" msgstr "David Hayes" # Tên họ #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:54 +#: src/diff.c:53 msgid "Richard Stallman" msgstr "Richard Stallman" # Tên họ #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:55 +#: src/diff.c:54 msgid "Len Tower" msgstr "Len Tower" -#: src/diff.c:355 +#: src/diff.c:365 #, c-format msgid "invalid context length '%s'" msgstr "độ dài ngữ cảnh không hợp lệ “%s”" -#: src/diff.c:438 +#: src/diff.c:487 #, c-format msgid "pagination not supported on this host" msgstr "máy chủ này không hỗ trợ dàn trang" -#: src/diff.c:453 src/diff3.c:341 +#: src/diff.c:502 src/diff3.c:348 #, c-format msgid "too many file label options" msgstr "quá nhiều tùy chọn nhãn tập tin" -#: src/diff.c:530 +#: src/diff.c:579 #, c-format msgid "invalid width '%s'" msgstr "độ rộng không hợp lệ “%s”" -#: src/diff.c:534 +#: src/diff.c:583 msgid "conflicting width options" msgstr "nhiều tùy chọn độ rộng xung đột với nhau" -#: src/diff.c:559 +#: src/diff.c:608 #, c-format msgid "invalid horizon length '%s'" msgstr "độ dài chiều đứng không hợp lệ “%s”" -#: src/diff.c:615 +#: src/diff.c:664 #, c-format msgid "invalid tabsize '%s'" msgstr "cỡ ký tá»± tab không hợp lệ “%s”" -#: src/diff.c:619 +#: src/diff.c:668 msgid "conflicting tabsize options" msgstr "nhiều tùy chọn cỡ ký tá»± tab xung đột với nhau" -#: src/diff.c:774 +#: src/diff.c:834 msgid "--from-file and --to-file both specified" msgstr "" "ghi rõ cả hai tùy chọn --from-file (từ tập tin) và --to-file (vào tập tin) " "đều" -#: src/diff.c:893 +#: src/diff.c:953 msgid " --normal output a normal diff (the default)" msgstr "" " --normal xuất ra định dạng diff thông thường (mặc định)" -#: src/diff.c:894 +#: src/diff.c:954 msgid "-q, --brief report only when files differ" msgstr "" "-q, --brief chỉ báo cáo nếu những tập tin khác với nhau" -#: src/diff.c:895 +#: src/diff.c:955 msgid "-s, --report-identical-files report when two files are the same" msgstr "-s, --report-identical-files báo cáo khi có hai tập tin bằng nhau" -#: src/diff.c:896 +#: src/diff.c:956 msgid "" "-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context" msgstr "" "-c, -C SỐ, --context[=SỐ] xuất ra SỐ (mặc định là 3) dòng của ngữ cảnh" -#: src/diff.c:897 +#: src/diff.c:957 msgid "" "-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context" msgstr "" "-u, -U SỐ, --unified[=SỐ] xuất ra SỐ (mặc định là 3) dòng của ngữ cảnh\n" " hợp nhất" -#: src/diff.c:898 +#: src/diff.c:958 msgid "-e, --ed output an ed script" msgstr "-e, --ed xuất tập lệnh loại ed" -#: src/diff.c:899 +#: src/diff.c:959 msgid "-n, --rcs output an RCS format diff" msgstr "" "-n, --rcs xuất dữ liệu khác biệt sá»­ dụng định dạng RCS" -#: src/diff.c:900 +#: src/diff.c:960 msgid "-y, --side-by-side output in two columns" msgstr "-y, --side-by-side xuất ra theo định dạng hai cột" -#: src/diff.c:901 +#: src/diff.c:961 msgid "" "-W, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-W, --width=SỐ xuất tối đa SỐ cột đã in ra (mặc định là 130)" -#: src/diff.c:902 +#: src/diff.c:962 msgid "" " --left-column output only the left column of common lines" msgstr "" " --left-column kết xuất chỉ cột bên trái của các dòng chung" -#: src/diff.c:903 +#: src/diff.c:963 msgid " --suppress-common-lines do not output common lines" msgstr " --suppress-common-lines không kết xuất các dòng chung nhau" -#: src/diff.c:905 +#: src/diff.c:965 msgid "-p, --show-c-function show which C function each change is in" msgstr "" "-p, --show-c-function hiển thị cái mà từng hàm C thay đổi ở trong đó" -#: src/diff.c:906 +#: src/diff.c:966 msgid "-F, --show-function-line=RE show the most recent line matching RE" msgstr "-F, --show-function-line=RE hiển thị những dòng gần nhất khớp với RE" -#: src/diff.c:907 +#: src/diff.c:967 msgid "" " --label LABEL use LABEL instead of file name and timestamp\n" " (can be repeated)" @@ -804,27 +805,27 @@ msgstr "" "gian\n" " (có thể được lặp lại)" -#: src/diff.c:910 +#: src/diff.c:970 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "" "-t, --expand-tabs mở rộng ký tá»± tab ra ký tá»± khoảng cách khi " "kết\n" " xuất" -#: src/diff.c:911 +#: src/diff.c:971 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T, --initial-tab sắp xếp tất cả ký tá»± tab bằng cách thêm\n" " một tab vào trước" -#: src/diff.c:912 +#: src/diff.c:972 msgid "" " --tabsize=NUM tab stops every NUM (default 8) print columns" msgstr "" " --tabsize=SỐ định khoảng cách tab sau mỗi SỐ cột đã in ra\n" " (mặc định là 8)" -#: src/diff.c:913 +#: src/diff.c:973 msgid "" " --suppress-blank-empty suppress space or tab before empty output lines" msgstr "" @@ -832,59 +833,59 @@ msgstr "" "kết\n" " xuất trống" -#: src/diff.c:914 +#: src/diff.c:974 msgid "-l, --paginate pass output through 'pr' to paginate it" msgstr "" "-l, --paginate chuyển dữ liệu kết xuất qua “pr” để dàn trang " "nó" -#: src/diff.c:916 +#: src/diff.c:976 msgid "" "-r, --recursive recursively compare any subdirectories found" msgstr "" "-r, --recursive so sánh đệ qui mọi thÆ° mục con đã tìm thấy" -#: src/diff.c:917 +#: src/diff.c:977 msgid " --no-dereference don't follow symbolic links" msgstr " --no-dereference không theo liên kết mềm" -#: src/diff.c:918 +#: src/diff.c:978 msgid "-N, --new-file treat absent files as empty" msgstr "-N --new-file coi tập tin vắng mặt là trống" -#: src/diff.c:919 +#: src/diff.c:979 msgid " --unidirectional-new-file treat absent first files as empty" msgstr " --unidirectional-new-file coi tập tin đầu mà vắng mặt là trống" -#: src/diff.c:920 +#: src/diff.c:980 msgid " --ignore-file-name-case ignore case when comparing file names" msgstr "" " --ignore-file-name-case bỏ qua chữ HOA/thường khi so sánh\n" " các tên tập tin" -#: src/diff.c:921 +#: src/diff.c:981 msgid " --no-ignore-file-name-case consider case when comparing file names" msgstr "" " --no-ignore-file-name-case phân biệt HOA/thường khi so sánh tên tập tin" -#: src/diff.c:922 +#: src/diff.c:982 msgid "-x, --exclude=PAT exclude files that match PAT" msgstr "-x, --exclude=MẪU loại trừ các tập tin khớp với MẪU ấy" -#: src/diff.c:923 +#: src/diff.c:983 msgid "" "-X, --exclude-from=FILE exclude files that match any pattern in FILE" msgstr "" "-X, --exclude-from=TẬP_TIN loại trừ mọi tập tin khớp với bất cứ mẫu nào " "trong TẬP TIN ấy" -#: src/diff.c:924 +#: src/diff.c:984 msgid "" "-S, --starting-file=FILE start with FILE when comparing directories" msgstr "" "-S, --starting-file=TẬP_TIN bắt đầu với TẬP TIN khi so sánh nhiều thÆ° mục" -#: src/diff.c:925 +#: src/diff.c:985 msgid "" " --from-file=FILE1 compare FILE1 to all operands;\n" " FILE1 can be a directory" @@ -892,7 +893,7 @@ msgstr "" " --from-file=TẬP_TIN1 so TẬP TIN 1 với tất cả toán hạng;\n" " TẬP TIN 1 có thể là thÆ° mục" -#: src/diff.c:927 +#: src/diff.c:987 msgid "" " --to-file=FILE2 compare all operands to FILE2;\n" " FILE2 can be a directory" @@ -900,76 +901,76 @@ msgstr "" " --to-file=TẬP_TIN2 So tất cả toán hạng với TẬP TIN 2;\n" " TẬP TIN 2 có thể là thÆ° mục" -#: src/diff.c:930 +#: src/diff.c:990 msgid "" "-i, --ignore-case ignore case differences in file contents" msgstr "" "-i, --ignore-case không phân biệt chữ HOA/thường trong nội\n" " dung tập tin" -#: src/diff.c:931 +#: src/diff.c:991 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "-E, --ignore-tab-expansion bỏ qua mọi thay đổi do mở rộng tab" -#: src/diff.c:932 +#: src/diff.c:992 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "-Z, --ignore-trailing-space bỏ qua tất cả dấu cách ở cuối dòng" -#: src/diff.c:933 +#: src/diff.c:993 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "" "-b, --ignore-space-change bỏ qua thay đổi gây ra bởi nhóm dấu cách" -#: src/diff.c:934 +#: src/diff.c:994 msgid "-w, --ignore-all-space ignore all white space" msgstr "-w, --ignore-all-space bỏ qua tất cả dấu cách" -#: src/diff.c:935 +#: src/diff.c:995 msgid "" "-B, --ignore-blank-lines ignore changes where lines are all blank" msgstr "-B, --ignore-blank-lines bỏ qua thay đổi do dòng trống" -#: src/diff.c:936 +#: src/diff.c:996 msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE" msgstr "" "-I, --ignore-matching-lines=RE bỏ qua thay đổi do mà mọi dòng khớp với RE" -#: src/diff.c:938 +#: src/diff.c:998 msgid "-a, --text treat all files as text" msgstr "-a, --text xá»­ lý mọi tập tin là văn bản thường" -#: src/diff.c:939 +#: src/diff.c:999 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr cắt bỏ ký tá»± về đầu dòng (cr) theo sau khi gõ" -#: src/diff.c:941 +#: src/diff.c:1001 msgid " --binary read and write data in binary mode" msgstr "" " --binary đọc và ghi dữ liệu trong chế độ nhị phân" -#: src/diff.c:944 +#: src/diff.c:1004 msgid "" "-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs" msgstr "" "-D, --ifdef=TÊN kết xuất tập tin đã trộn với khác biệt " "“#ifdef TÊN”" -#: src/diff.c:945 +#: src/diff.c:1005 msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT" msgstr " --GTYPE-group-format=GFMT định dạng nhập GTYPE với GFMT " -#: src/diff.c:946 +#: src/diff.c:1006 msgid " --line-format=LFMT format all input lines with LFMT" msgstr "" " --line-format=LFMT định dạng tất cảc các dòng vào với LFMT" -#: src/diff.c:947 +#: src/diff.c:1007 msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT" msgstr " --LTYPE-line-format=LFMT định dạng nhập LTYPE với LFMT" -#: src/diff.c:948 +#: src/diff.c:1008 msgid "" " These format options provide fine-grained control over the output\n" " of diff, generalizing -D/--ifdef." @@ -977,13 +978,13 @@ msgstr "" " NhÆ°ng tùy chọn đó điểu khiển kết xuất ra định dạng diff\n" " đẹp hÆ¡n, khái quát hóa -D/--ifdef." -#: src/diff.c:950 +#: src/diff.c:1010 msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'." msgstr "" " LTYPE là “cũ”, “mới”, hoặc “chÆ°a thay đổi”. GTYPE là LTYPE hoặc “thay đổi " "rồi”." -#: src/diff.c:951 +#: src/diff.c:1011 msgid "" " GFMT (only) may contain:\n" " %< lines from FILE1\n" @@ -1010,7 +1011,7 @@ msgstr "" " E F-1\n" " M L+1 %(A=B?T:E) nếu A bằng B thì T nếu không thì E" -#: src/diff.c:963 +#: src/diff.c:1023 msgid "" " LFMT (only) may contain:\n" " %L contents of line\n" @@ -1022,7 +1023,7 @@ msgstr "" " %l nội dung của dòng, loại trừ ký tá»± dòng mới nào đi theo\n" " %[-][Đ_RỘNG][.[PREC]]{doxX}n đặc tả dạng printf cho số dòng đầu vào" -#: src/diff.c:967 +#: src/diff.c:1027 msgid "" " Both GFMT and LFMT may contain:\n" " %% %\n" @@ -1036,21 +1037,21 @@ msgstr "" " %c'\\OOO' ký tá»± có mã bát phân OOO\n" " C ký tá»± C (các ký tá»± khác đại diện cho chính chúng)" -#: src/diff.c:973 +#: src/diff.c:1033 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "-d, --minimal cố tìm một thay đổi nhỏ" -#: src/diff.c:974 +#: src/diff.c:1034 msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix" msgstr " --horizon-lines=SỐ giữ SỐ dòng của tiền tố và hậu tố chung" -#: src/diff.c:975 +#: src/diff.c:1035 msgid "" " --speed-large-files assume large files and many scattered small changes" msgstr "" " --speed-large-files giả định tập tin lớn và nhiều thay đổi nhỏ rải rác" -#: src/diff.c:976 +#: src/diff.c:1036 #, fuzzy msgid "" " --color[=WHEN] color output; WHEN is 'never', 'always', or " @@ -1060,7 +1061,7 @@ msgstr "" " --color[=WHEN] tô màu kết xuất; WHEN có thể là 'never', 'always',\n" " hay 'auto' (mặc định)" -#: src/diff.c:978 +#: src/diff.c:1038 msgid "" " --palette=PALETTE the colors to use when --color is active; PALETTE " "is\n" @@ -1071,115 +1072,115 @@ msgstr "" " danh sách terminfo capabilities ngăn cách bằng " "dấu phẩy" -#: src/diff.c:981 +#: src/diff.c:1041 msgid " --help display this help and exit" msgstr " --help hiển thị trợ giúp này rồi thoát" -#: src/diff.c:982 +#: src/diff.c:1042 msgid "-v, --version output version information and exit" msgstr "-v, --version đưa ra thông tin phiên bản rồi thoát" -#: src/diff.c:984 +#: src/diff.c:1044 msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'." msgstr "" "CÁC TẬP TIN là “TẬP_TIN1 TẬP_TIN2” hoặc “THƯ_MỤC1 THƯ_MỤC2” hoặc “THƯ_MỤC " "TẬP_TIN” hay “TẬP_TIN THƯ_MỤC”." -#: src/diff.c:985 +#: src/diff.c:1045 msgid "" "If --from-file or --to-file is given, there are no restrictions on FILE(s)." msgstr "" "Nếu đưa ra tùy chọn --from-file (từ tập tin) hay --to-file (vào tập tin) thì " "không có giới hạn TẬP TIN." -#: src/diff.c:986 src/diff3.c:533 src/sdiff.c:220 +#: src/diff.c:1046 src/diff3.c:531 src/sdiff.c:219 msgid "If a FILE is '-', read standard input." msgstr "Nếu TẬP-TIN là “-”, thì đọc từ đầu vào tiêu chuẩn." -#: src/diff.c:996 +#: src/diff.c:1056 #, c-format msgid "Usage: %s [OPTION]... FILES\n" msgstr "Cách dùng: %s [TÙY_CHỌN]… CÁC_TẬP_TIN\n" -#: src/diff.c:997 +#: src/diff.c:1057 msgid "Compare FILES line by line." msgstr "So sánh các TẬP-TIN theo từng dòng." -#: src/diff.c:1034 +#: src/diff.c:1094 #, c-format msgid "conflicting %s option value '%s'" msgstr "tùy chọn %s xung đột, giá trị “%s”" -#: src/diff.c:1047 +#: src/diff.c:1107 #, c-format msgid "conflicting output style options" msgstr "nhiều tùy chọn điều khiển định dạng xuất xung đột với nhau" -#: src/diff.c:1063 +#: src/diff.c:1123 #, c-format msgid "invalid color '%s'" msgstr "màu không hợp lệ “%s”" -#: src/diff.c:1119 src/diff.c:1329 +#: src/diff.c:1197 src/diff.c:1401 #, c-format msgid "Only in %s: %s\n" msgstr "Chỉ trong %s: %s\n" -#: src/diff.c:1253 +#: src/diff.c:1325 msgid "cannot compare '-' to a directory" msgstr "không thể so sánh “-” với một thÆ° mục" -#: src/diff.c:1288 +#: src/diff.c:1360 msgid "-D option not supported with directories" msgstr "không hỗ trợ tùy chọn -D với thÆ° mục" -#: src/diff.c:1297 +#: src/diff.c:1369 #, c-format msgid "Common subdirectories: %s and %s\n" msgstr "ThÆ° mục con chung: %s và %s\n" -#: src/diff.c:1339 src/diff.c:1389 +#: src/diff.c:1411 src/diff.c:1461 #, c-format msgid "File %s is a %s while file %s is a %s\n" msgstr "Tập tin %s là một %s trong khi tập tin %s là một %s.\n" -#: src/diff.c:1375 +#: src/diff.c:1447 #, c-format msgid "Symbolic links %s and %s differ\n" msgstr "Hai liên kết mềm %s và %s là khác nhau\n" -#: src/diff.c:1462 +#: src/diff.c:1534 #, c-format msgid "Files %s and %s are identical\n" msgstr "Cả %s và %s là cùng một tập tin\n" # Tên họ #. This is a proper name. See the gettext manual, section Names. -#: src/diff3.c:43 +#: src/diff3.c:51 msgid "Randy Smith" msgstr "Randy Smith" -#: src/diff3.c:356 +#: src/diff3.c:363 #, c-format msgid "incompatible options" msgstr "nhiều tùy chọn không tÆ°Æ¡ng thích với nhau" -#: src/diff3.c:396 +#: src/diff3.c:403 msgid "'-' specified for more than one input file" msgstr "đã chỉ ra “-” cho nhiều hÆ¡n một tập tin đầu vào" -#: src/diff3.c:447 src/diff3.c:1295 src/diff3.c:1698 src/diff3.c:1753 -#: src/sdiff.c:308 src/sdiff.c:846 src/sdiff.c:857 +#: src/diff3.c:445 src/diff3.c:1284 src/diff3.c:1683 src/diff3.c:1738 +#: src/sdiff.c:306 src/sdiff.c:843 src/sdiff.c:854 msgid "read failed" msgstr "đọc gặp lỗi" -#: src/diff3.c:480 +#: src/diff3.c:478 msgid "-A, --show-all output all changes, bracketing conflicts" msgstr "" "-A, --show-all kết xuất tất cả thay đổi, đặt mọi xung đột trong " "ngoặc đơn" -#: src/diff3.c:482 +#: src/diff3.c:480 msgid "" "-e, --ed output ed script incorporating changes\n" " from OLDFILE to YOURFILE into MYFILE" @@ -1188,12 +1189,12 @@ msgstr "" " từ TẬP_TIN_CŨ thành TẬP_TIN_CỦA_BẠN vào " "TẬP_TIN_TÔI." -#: src/diff3.c:484 +#: src/diff3.c:482 msgid "-E, --show-overlap like -e, but bracket conflicts" msgstr "" "-E, --show-overlap giống -e, nhÆ°ng đặt xung đột trong ngoặc đơn" -#: src/diff3.c:485 +#: src/diff3.c:483 msgid "" "-3, --easy-only like -e, but incorporate only nonoverlapping " "changes" @@ -1201,24 +1202,24 @@ msgstr "" "-3, --easy-only giống -e, nhÆ°ng chỉ sát nhập những thay đổi " "không chồng lấp" -#: src/diff3.c:486 +#: src/diff3.c:484 msgid "" "-x, --overlap-only like -e, but incorporate only overlapping changes" msgstr "" "-x, --overlap-only giống -e, nhÆ°ng chỉ sát nhập những thay đổi bị " "chồng lấp" -#: src/diff3.c:487 +#: src/diff3.c:485 msgid "-X like -x, but bracket conflicts" msgstr "" "-X giống -x, nhÆ°ng đặt xung đột trong ngoặc đơn" -#: src/diff3.c:488 +#: src/diff3.c:486 msgid "-i append 'w' and 'q' commands to ed scripts" msgstr "" "-i nối thêm hai lệnh “w” và “q” vào văn lệnh ed" -#: src/diff3.c:490 +#: src/diff3.c:488 msgid "" "-m, --merge output actual merged file, according to\n" " -A if no other options are given" @@ -1228,27 +1229,27 @@ msgstr "" " tùy chọn -A nếu nhÆ° không có tùy chọn khác " "được chỉ ra" -#: src/diff3.c:493 +#: src/diff3.c:491 msgid "-a, --text treat all files as text" msgstr "-a, --text coi mọi tập tin là văn bản thường" -#: src/diff3.c:494 +#: src/diff3.c:492 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr cắt bỏ ký tá»± về đầu dòng (cr) theo sau khi nhập" -#: src/diff3.c:495 +#: src/diff3.c:493 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "" "-T, --initial-tab tạo khoảng tab cho dòng bằng cách thêm một tab " "vào trước" -#: src/diff3.c:496 +#: src/diff3.c:494 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr "" " --diff-program=CHƯƠNG_TRÌNH dùng CHƯƠNG_TRÌNH để so sánh các tập tin" -#: src/diff3.c:497 +#: src/diff3.c:495 msgid "" "-L, --label=LABEL use LABEL instead of file name\n" " (can be repeated up to three times)" @@ -1256,24 +1257,24 @@ msgstr "" "-L, --label=NHÃN sá»­ dụng NHÃN thay vì tên tập tin\n" " (có thể lặp lại đến ba lần)" -#: src/diff3.c:500 +#: src/diff3.c:498 msgid " --help display this help and exit" msgstr " --help hiển thị trợ giúp này rồi thoát" -#: src/diff3.c:501 +#: src/diff3.c:499 msgid "-v, --version output version information and exit" msgstr "-v, --version đưa ra thông tin phiên bản rồi thoát" -#: src/diff3.c:510 +#: src/diff3.c:508 #, c-format msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n" msgstr "Cách dùng: %s [TÙY_CHỌN]… TẬP_TIN_TÔI TẬP_TIN_CŨ TẬP_TIN_BẠN\n" -#: src/diff3.c:512 +#: src/diff3.c:510 msgid "Compare three files line by line." msgstr "So sánh ba tập tin từng dòng một." -#: src/diff3.c:522 +#: src/diff3.c:520 msgid "" "\n" "The default output format is a somewhat human-readable representation of\n" @@ -1299,58 +1300,58 @@ msgstr "" "và kết xuất là tập tin đã được trộn. Với kiểu đầu vào ít dùng, đây là cách\n" "hợp lý hÆ¡n sá»­ dụng ed.\n" -#: src/diff3.c:534 +#: src/diff3.c:532 msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble." msgstr "" "Trạng thái thoát là số 0 nếu thành công, số 1 nếu có xung đột nào và số 2 " "nếu gặp lỗi." -#: src/diff3.c:727 +#: src/diff3.c:725 msgid "internal error: screwup in format of diff blocks" msgstr "gặp lỗi nội bộ: không định dạng khối khác biệt được." -#: src/diff3.c:1022 +#: src/diff3.c:1015 #, c-format msgid "%s: diff failed: " msgstr "%s: diff gặp lỗi: " -#: src/diff3.c:1044 +#: src/diff3.c:1037 msgid "internal error: invalid diff type in process_diff" msgstr "" "gặp lỗi nội bộ: loại khác biệt không hợp lệ trong process_diff (xá»­ lý khác " "biệt)" -#: src/diff3.c:1069 +#: src/diff3.c:1060 msgid "invalid diff format; invalid change separator" msgstr "khuôn dạng diff không hợp lệ; ký tá»± ngăn cách thay đổi không hợp lê" -#: src/diff3.c:1305 +#: src/diff3.c:1294 msgid "invalid diff format; incomplete last line" msgstr "khuôn dạng diff không hợp lệ; chÆ°a xong dòng cuối cùng" -#: src/diff3.c:1329 src/sdiff.c:276 src/util.c:969 +#: src/diff3.c:1318 src/sdiff.c:274 src/util.c:1069 #, c-format msgid "subsidiary program '%s' could not be invoked" msgstr "không gọi được chÆ°Æ¡ng trình phụ trợ “%s”" -#: src/diff3.c:1354 +#: src/diff3.c:1343 msgid "invalid diff format; incorrect leading line chars" msgstr "khuôn dạng khác biệt không hợp lệ; ký tá»± đi trước dòng là không đúng" -#: src/diff3.c:1427 +#: src/diff3.c:1416 msgid "internal error: invalid diff type passed to output" msgstr "gặp lỗi nội bộ: kiểu diff không hợp lệ được chuyển qua cho kết xuất" -#: src/diff3.c:1700 src/diff3.c:1757 +#: src/diff3.c:1685 src/diff3.c:1742 msgid "input file shrank" msgstr "tập tin đầu vào co lại" -#: src/dir.c:156 +#: src/dir.c:154 #, c-format msgid "cannot compare file names '%s' and '%s'" msgstr "không so sánh được hai tập tin “%s” và “%s”" -#: src/dir.c:225 +#: src/dir.c:223 #, c-format msgid "%s: recursive directory loop" msgstr "%s: vòng lặp thÆ° mục đệ quy" @@ -1361,125 +1362,125 @@ msgstr "%s: vòng lặp thÆ° mục đệ quy" msgid "Thomas Lord" msgstr "Thomas Lord" -#: src/sdiff.c:174 +#: src/sdiff.c:173 msgid "" "-o, --output=FILE operate interactively, sending output to FILE" msgstr "" "-o, --output=TẬP_TIN Thá»±c hiện một cách tÆ°Æ¡ng tác, gá»­i kết xuất ra " "TẬP-TIN" -#: src/sdiff.c:176 +#: src/sdiff.c:175 msgid "" "-i, --ignore-case consider upper- and lower-case to be the same" msgstr "-i, --ignore-case coi chữ HOA và thường là nhÆ° nhau" -#: src/sdiff.c:177 +#: src/sdiff.c:176 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "-E, --ignore-tab-expansion bỏ qua mọi thay đổi do mở rộng tab" -#: src/sdiff.c:178 +#: src/sdiff.c:177 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "-Z, --ignore-trailing-space bỏ qua tất cả dấu cách ở cuối dòng" -#: src/sdiff.c:179 +#: src/sdiff.c:178 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "-b, --ignore-space-change bỏ qua thay đổi gây ra bởi nhóm dấu cách" -#: src/sdiff.c:180 +#: src/sdiff.c:179 msgid "-W, --ignore-all-space ignore all white space" msgstr "-W, --ignore-all-space bỏ qua tất cả dấu cách" -#: src/sdiff.c:181 +#: src/sdiff.c:180 msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank" msgstr "-B, --ignore-blank-lines bỏ qua thay đổi do đó là dòng trống" -#: src/sdiff.c:182 +#: src/sdiff.c:181 msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE" msgstr "" "-I, --ignore-matching-lines=RE bỏ qua thay đổi do mà mọi dòng khớp với RE" -#: src/sdiff.c:183 +#: src/sdiff.c:182 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr cắt bỏ ký tá»± về đầu dòng (cr) theo sau khi gõ" -#: src/sdiff.c:184 +#: src/sdiff.c:183 msgid "-a, --text treat all files as text" msgstr "-a, --text coi mọi tập tin là văn bản thường" -#: src/sdiff.c:186 +#: src/sdiff.c:185 msgid "" "-w, --width=NUM output at most NUM (default 130) print columns" msgstr "" "-w, --width=SỐ kết xuất nhiểu nhất là SỐ cột (mặc định là 130)" -#: src/sdiff.c:187 +#: src/sdiff.c:186 msgid "" "-l, --left-column output only the left column of common lines" msgstr "" "-l, --left-column kết xuất chỉ cột bên trái của các dòng chung " "nhau" -#: src/sdiff.c:188 +#: src/sdiff.c:187 msgid "-s, --suppress-common-lines do not output common lines" msgstr "-s, --suppress-common-lines không kết xuất các dòng chung nhau" -#: src/sdiff.c:190 +#: src/sdiff.c:189 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "" "-t, --expand-tabs khai triển ký tá»± tab thành các khoảng trắng\n" " khi kết xuất" -#: src/sdiff.c:191 +#: src/sdiff.c:190 msgid "" " --tabsize=NUM tab stops at every NUM (default 8) print columns" msgstr "" " --tabsize=SỐ điểm đừng tab sau mỗi SỐ cột đã in ra (mặc định " "là 8)" -#: src/sdiff.c:193 +#: src/sdiff.c:192 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "-d, --minimal cố tìm một thay đổi nhỏ" -#: src/sdiff.c:194 +#: src/sdiff.c:193 msgid "" "-H, --speed-large-files assume large files, many scattered small changes" msgstr "" "-H, --speed-large-files giả sá»­ tập tin lớn, nhiều thay đổi nhỏ rải rác" -#: src/sdiff.c:195 +#: src/sdiff.c:194 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr "" " --diff-program=CHƯƠNG_TRÌNH sá»­ dụng CHƯƠNG_TRÌNH ấy để so sánh các tập " "tin" -#: src/sdiff.c:197 +#: src/sdiff.c:196 msgid " --help display this help and exit" msgstr " --help hiển thị trợ giúp này rồi thoát" -#: src/sdiff.c:198 +#: src/sdiff.c:197 msgid "-v, --version output version information and exit" msgstr "-v, --version đưa ra thông tin phiên bản rồi thoát" -#: src/sdiff.c:207 +#: src/sdiff.c:206 #, c-format msgid "Usage: %s [OPTION]... FILE1 FILE2\n" msgstr "Cách dùng: %s [TÙY_CHỌN]… TẬP_TIN1 TẬP_TIN2\n" -#: src/sdiff.c:209 +#: src/sdiff.c:208 msgid "Side-by-side merge of differences between FILE1 and FILE2." msgstr "Hòa trộn những khác biệt TẬP_TIN1 VÀ TẬP_TIN2 cạnh nhau." -#: src/sdiff.c:330 +#: src/sdiff.c:328 msgid "cannot interactively merge standard input" msgstr "không hợp nhất được dữ liệu gõ chuẩn một cách tÆ°Æ¡ng tác" -#: src/sdiff.c:597 +#: src/sdiff.c:594 msgid "both files to be compared are directories" msgstr "cả hai tập tin dùng để so sánh đều là thÆ° mục" -#: src/sdiff.c:820 +#: src/sdiff.c:817 msgid "" "ed:\tEdit then use both versions, each decorated with a header.\n" "eb:\tEdit then use both versions.\n" @@ -1503,12 +1504,12 @@ msgstr "" "v:\tBao gồm dòng chung xuất một cách chi tiết.\n" "q:\tThoát.\n" -#: src/util.c:662 +#: src/util.c:755 #, c-format msgid "unrecognized prefix: %s" msgstr "không hiểu tiền tố: %s" -#: src/util.c:692 +#: src/util.c:785 #, c-format msgid "unparsable value for --palette" msgstr "không thể phân tích giá trị cho --palette" diff --git a/po/zh_CN.gmo b/po/zh_CN.gmo index 42ded42dfa893b797b4b0f0246077aad2075d44d..84da28aab7b0df6a12951d149193a70f28339e0c 100644 GIT binary patch delta 10221 zcmb`M2~<>9n#Zr9HKC%>j!SUEM*%@1r4-;s0~(Wa{2%aTaOp+}1)c<(z>h(EV!Jmn1{v9h;E%z8WX4_x*MWG&E`ZeW*WgOf@U|#t zfFy7i2pQQ540<25ZMHDB@CnAUwlMZjcyak1#`3`2Z5Ryv9cTczZWjX;gVRv{2k==? z0q20KXnzW%_8);z0-Kh?80N+-`?ZHpHHKo^ z)PV&gReuET0-xQ(7{+8d;9~G|5R+z4rHTPeAeC=|3X)UZ2b;j>_Mvm|4oCw30gM7yz>{H3mJVJ9 zKL%-F(|f|FTESH)e+@Qbd=|Z5Nc?vo4e(StV^|PuB}h(K0g_<90BL4Z4louAt_4W| zD@X%;qLs&I2!YmsG!Yv}n)nS!{fA{TwglV`#$kNM@jw-R3X)C6Wr+@UfG?qZ1*8EL zFa(@+kg<7S0=NL&4$cNkz+kWyd>Z^~a5DHa5N^iqgX_V>Y{sBORsmYV@$g$b1c9@2 z1mi#&=naq>W`Y~R&p^^ZNG@a3!5tvA%hAf^;53x4fF#I0?fox6s`nKb2#!C56#z~? z1pSk3{{=55g3}KR>Orcw2&9=U2dTqka3+`wJ_A;QQ^AWM&G;5b^#`=_FF_Ji1|z^f zf@G4=BQPU)`Uv#jfrl!*cpY4Jl(7k5K1c(Wf@I?kkOue${2}-UkkIb>KK~m-c=)NCH``cpwRFU?}*Z#$STe@t;7N>4H;? zMS@A-3UD8|9P9vTz%M}3*!a`J1YsbRSAsO5ogkU`5U6SxoJ8xt6c0{_RtL^Pg_Blc zt2&Sd9s)_y&q3o)SoQAR+oD2R5q>0VWhjwWF zzpg$ob{wP*-Uq4TCm=O+f+YEO8Yi4#OhS1oNCU-z)NTt%0_K2Zx>AtZT>+^dJ4h4y z2&Df184SYs?6-Izl{`}*8cf%y2WjSuwDJm&R>fM7I(l0xn>FTuB)}<<2Id-@HFj$3 z14)2S!PQhz#=~szzd-8XnL^P)7&r%IBStvxIy98n*a8JFB%wkB|#C3a!-LZgo9JdO+Qu2xq= zfqRh4#eGV1zuaFXcNaMahFs@6_y|^lbk?vpJM&PMAuTie zK#C~4e`%W9l*K*`YqlV#AfPvd6isL&wsEX zLWiE3i(Q?Akbe1w+5FIk7>m6ZlXNxq$hLAaGX|)-A=D|~Ygd}9H0zFGQ}Qyu3;B$# z8dgl2`hq889X!-)xPIftum^>wwJ=Kl!8!AI&&H|GscYG5@Dj1ozwIyO_ctbwllaO_ zQiP*TE~=KR?#U%Zo(5W(Qm!fcfH@;AQ*xgfkjon7k~*w)-n=OyYOn+vq7~M2Ubejt z&C2wq!P9tGskus89_%9hsWE}KB+unDl4ne(c{aUIUmGvE2im3iFKvjFcw=(td`Yf! zcfMfGCOQfj+}EJ8xWXws^>?$ru2`jonB z57a2-Ti!_vL`@2Ih;;4x#r*g0{BWhP2sy?kdbG8}K2&-IR>8m&EQOATTV$Ay`QmM> zCSZZc-GltpwonV)ZO4uishLN&oXSA3aI{HT+2)MgG-)iYh~e0%!*oP1sX_fv#-4pC8GB9iJ|BMYl5ZdLHyhR&l#O9Tu<~x-<><(5EtK@$ zp7`4Bt3t4wID4$_lACgQEt*J%mlqif=Co83W}+qpyluOFa*6BaO({HwVm16w$2+#q zvy6PF>bFQPd7qRT9-E2U*qy|Kj-e?!clJ0uEg!;L6T)+n=w-Z=YEDa&wBQQ!++96#PrF=|k1b_%HL3;6DxKGy zy`_)*h#d>ML@`~)-kU6D%>$RvHJ@TUaq;jU}lNic{S@`UkeDz*|xF54>cEGEsr zi3kbPHcMZOzf~jmTRqlhrNri+|2GlA)hQE#{X4-!Yel3)&3=?-GEzdGlavdClq#3^ zdI~EL`8uy6L?EfSp7PS4x1+9%oV!A_#^$4L_#<^$>F*qY%sn_rdAvHRe_H<^ef-Dn z@R=A&OOBMrA*bW2P%jL@-`KMvj7|^UEz76-QM(quyC-y>NM?kck%qz5oDQ0Xnhruo z-|bnj8rz;?$9bb1d%5T06}hb0*;9tt0)O^dM{U>!OZeVsTb{kwGhkzeO;LPj>de@` zpex>-njC<=rTXBsQ5BsGoe^O=V~vv1~PxwQh0p}Ngk z%$Tp(*Bt0BXrTEcE%fYrp6}c>VX@{i@Lkmhy-5Ie&=TYx&H;*!UeENeDBH|=flAFC z#2O@Xyv+RK9MLnvj(Z3RbhD(#W=mB zrk;{90*`L9xEQb^?E z4o+P%W=s^ZXpG3nR~?L;DuSIF(y+$Vjf$T*`04~LW%&Dp^Z9oN7rll9f;eyc^o=YE zi61Sg@EjfUSZ&xGyv7t}5QkPWX(tRX-tk@8Uj!f(;;V9EE&l9QFTNTj!5B3`7IrmC zg2Ufw)wJ|kw9%?j3eB`PkPit~cn&-g7gM8N>KLDx8)JNRU9#jJz|{*P6J^SD$=1^) zmtFT|vN*pemzqR^;p{8oIk{2e#c{kPH_YPSCn-198*n+J<>JZ*EtH#zTN>|fim$XT z95`GR%f&?^7sTD3Tvbbgi?RHDYWbmPC8`Z?=xVSOh%>u7Yj19is3+Ub$^A9BI%K|# zTlfMUNYqSi*oUqL+z*M*Z2O7rr^sTWThW+_O`nXY=1soDMyZ=c>Ab%ycljB)@s8_# zyDPt!|LY+GR`An@TZ14!rIb}R=OAvb9JunrJ(1g<$N%c^bc?lAB=_3Fyxb}Ba;#m< zo-%JMT^?bAIz~cuUT|CM)%!C=I^Z&RqR{ za`!pRMr1DPY=Y=SD)KajsEF(Y4ow>1IY&aDo*$kQDbdNdypXpXdClUf8DehxJ*Zbo z2#*QNNs<&bv`FE`F!dPZIbZL#+f`|O^?bF2qxq|NYnYA8G7QJ}t=yZLxi{UUUVP>( z+>?30+q-MX;kKVcyUpIdH<)qI%TARx=BA{lA4thyzO4n}SldHIj^=1Xbb$h$y%#7v zArJ4z1#N?F|Efe|baXV%acdHd{OMz%<8*xCu^C}e(Mw~amc|*Qmc_)uZktfyP5e)n z$?xF*t#lmbS;wBUs0p>Yu<0sVr1@UY#ePJQLGyZCFyI!*Q+Efo<$GOnf4=IjB{sS2 zGJ{>Pk9hc?QrSkD7ZC*ppgcwAotL*mZAV1+{MW~x3qXNr<{0_uQ)Mj z3N}rnv`rgn$BrHRy_fOdUwF&i*>HjUZtx{>=I1N;@b1H!;x?QntgiGW^vRDvuIIzxGZ}PWW}pK*M!?p z^`-`ukUOf$?RnhjVpo!0S-)Dx#;S<~z<nGVE8=irdI1fr;5+C8fO@9W;8Go`DSf+nN4C4SX#5B5SNm)iJ2 zk#weP(Im##r0VwfHHi;&_FR$s&kUar#)um=Z?AH!I9}k+)+Yr`P6!G)`LsOAf)2Ic zDo2b>6?5VP#o^C)&5W4r^^FQ~Gb2uny2E2v)#};XT@E#GD(=%Aj1Tl!tvH;2Y28QZ z0q)lZ>LKIs->p!QHoL zXDpaCbEJ6Um?6IIFNj8R*H{qxJbp~dPB|vM{Ko1?CgL0A7?fxYHv|7o!Ru%cR~R)B zX&s`SQriYgadTnZTut{%eV51DKqo4pcv0p9g>xq$H^fhn{ND?Y{(y$yyNaYp{3<9+ Y!(bb6&o1&qQ5kPTrD#HA3qg~vH$=8 delta 10265 zcmb`M30PEDmd9^2#)wJOBt}7nhd_Wx$)?d5ti(OW4HXjOl87vVA|T+FXsXy3i$yOx zs9*qbfkH6?RR#1UneMN9Ch2rfzAx$N$xN1dud2Sx#F*=2Km-(M}A5aiGF`3R6 z{Js0$UCurC+;h&oRdafRseD3r!u^Jfdl-9eBmNj;{hI_QY-UW4@&<4MzL$bep-Gxjvl2-5ctHO|<|*b4dBnfPrw~uOAKSN;GaSC#iCIlUIeMbKY&r-suvi;T$oYgdmsrs_eJr( z7km%pNjnUTt((Bu2k6~O6?QRp4EzYB0i$;__5^qt+yH(6P6wquj6DK|gWlj8FbGTl z1Hdvc67135J3#7Z`pb;X0-pw{-gW~XCgR})NFAI4ArET@L&3`+WMRM4xcC(ajPe#TUx3epsqsRk zy&$Rlz63}M?gkfw-5^$hDIg8-GbArGbs06{LDE9u$IJ z1fN6M1)4BEi%1pLIRq}jhkFi*nLh0Z0vg4f=xjWx@c# zAkYh356%G-K(YlRI2F7AP6MxkWE)nHG~<~iwqX)zn2#4OJj@0k$QBF$gHYCkG=u#h zX<`VZncjbdv6L%Q3iuFc1Rnt_K$`IzAPHpF%Kre)MEOGy+Gqa(#({f|GxjJr zbR7Ecz{3Z4p#x8yfO^5JAa!&DdVK?p z5;Qm$WgQp}J`d7TodijM^B}diXnYqW4Sxb+$qmebhmY@p?*^&CZ*v&)1HS~xCLYce z9r$RB0BOc+Koam(kY?NkdVwE-B;Z#d2{tEB80At>LOB|wr9KRX(f+@Hhn0BoKIjcT zk}qZu0nS1>1|&gJHJ$){P%Z@LgY6oB3DVO2J4kCkp+K~o1Co&jfuxBjkObWV&c^uc z03Jvsc_0l`3euX@YP_Vq?*(c5yaQ54?`h>vHGTn-0AGXD&(uP}*%|{hMu5Kf{tUR5 zD#qb~RG$V?$E6?*bPgmHUIIztcR&*C-!$F^sr|QwJq^>7mQ4@Wg)PxVgh}C%%N8xw zg)QRKH$3|2%JdUQ;?ks-;?nj@QDI9WGg9NydX{dOa*rWm;i82R9?ZjKt#fv@IvVnw zgIq4MD9tw6Rv}-oC{5SweWgmB*>15ou3O~_v(s!vHMycrX}sxd>2S1Kl$w52{@j@B z;b9*ba#VFly2KDkw+4U5@wel)tyn3pk0l*8**i_+S84JjCP zg6!5dY2DgQF_NYOwL?j*Dv@#u+MF#Whc%zSJIhzCyzx7gH&VY^WfHf=#HY{p*>jiSb6o1NxD#38yJEDW4ZcI$^yx@;y7=HMx+0f$KvQCsQGfnit-a6aEV?O|l<}dhfxhz4fTOxi^dwi7$*q^!0TM`jf$Y#|9L01xegua=w|b)YS98 zY}@HiCj5hP56<=B4ci}iRNYg;Mx-FIZo&MW?XlD3id<*}TSHRwT~IW2-rFVHa=FgioBuXu<~&T7R;uZ$ z{GdBh-U|?fs`=8FIPRRo_aV z>Ie8Iu_5#Bw3=81v6}qQ3(~@v6)S01%x8#gh}^7J1Z;C<9hQtvT}bwynW~oMAweBstA(@M~Ccv6}Mr^L9)5 z$aWrCbWvab{q-aCi?ydpEA4fUu`H@W|hTNswvr8<~o?Q!f zIc^L(TDthWm%I(aQ;T4PNkqw=wT^4;dhB+3hqWy%kh}WTP9%wZMPdDL9nnZkRjE-2 zRbvnIEIi7X3bmI=s^Q=?+{ZL}nO|Y=FOl1G?R}^D`!6L;m4c+@8+B_JgiFEv+Wb(S zy>mv0M4_y|Sc;M4%67T9URr~dQyqH&7Dn|UBMZa-e&@>j99FKJyTBjZ?-@8`MLTG~5Pb^Xq<{$gL*B5`1p8AzFTxvCfZEk!B#Kx?XDRe)kpdR`N2W^wPg2t*>f=)X zEc8X4SY0h|E|a1Hvh?%<-6f@atQ1#LbrG1tUh#kS2Wv6iYDuV_7O~2VtYbJUp){6PzY@Hdx>Vf3lY2wv ze4m!Og1q?0dnbEo35%)URZupZ1$Djwm!s$ZyLZ)3iS*9~&s(pkT}aN;ZOVm8=w0qI z$psy%HVq|5Rn&0i+_skQt zvDG+=W!22tEt-mj6h{dD_C7y}QY>?ob1+Ysg;JkO4yx+97PjpvblMvq^_X7ZO6v|C&ig3hqS3J|jNqnmgdT~1~ z{7_~8yQ$1`biRB~(qyUXx{y*mm{1fNZ=N|i?*$_k{QY&AZlA>eDM`<_ESxo6 zzBzUikJ|4!n>-!5mvf?vSGP22y@CTD0-y~Pmkdmve zVM{RR{Xv zHOVUiwL!6{uKIjfE?gUOgL>p)csfi^XRto4+&j$IU#LPzB4oeAflHsFn?h3+$FCb< zemL*6!sJBk5Y4cRIJP;5ijb{K+c&I_miS5gZey z+#=z1;Qb*po!w0}{L{3+N$MK#>*=%ko^-GKMEl|5n2)nZN^5t(k1*YfB*3whgzRK( z^f8`L`f;vMb4$B3f~Su}Fx9K+C0>`Y?g96$#a&B$9)P!kMGLFq4;~I(iu@CXL8&dR zV!?H+9&Lc(rSo7eBSlHEct{wuh@PZLIExOQJs2$}p?HvhyHtSwKIcu$#c1gBwbFAbXz|GSw$b}m; z%7FG}&EcYR38pHoUB7XS?w^{0yBd$F~u1SLq6(D~XCkuQ31?Yh?Uijw= zop-FmryrHJif+|pOIt;`dr%C9T?|7*#=*o*h@x(}Bk!tK~UI{if3WhN(ab z3djoP=A+LU;Mti{+9sbVmDIDExaxCN)jQ2*xww0odU*2~Q)9^LG@o&+k(`~Kk+m!| zG&?gcEh{xHJ0(3WBQyO#Vtn?(^vwOC*@g~{26Qa!Zs)R7DoZXE?= zX#+X_-$US1Sh>(95B9#*tJIj465L+fSQNsJUXqPAEiXg<=8qUn`}{PmQW>r%ao^hD zad74G@Q|>uFzmz)c;fFK^W*<@?6H`zB_WYZ7KMZ_jez}nIEU)6@KOwFMdNP`{&wQ; zC9-W;eP=7oQYr5sOU4*<-YGw;Wj=1V-aP%d*F@|?UU7WhR762?F(fD-I6h}0MaSPC zU!=!18`&5RVFT)&XGNJ()1;hhW=?aj+Pvg7ML~1|mn^K30tc;wYN9BhckRA~_MW8` zHvp6jKXA&&pbAo|`C2t1viL(8nq>+%hL5->LO2k&WgdT}0!>iOMLO@Qp6Jhj>o@lf zdvA!wxF1J;gB;0&jk~U(VT2E-Z7=TXjW$Y#MrS+rf)X`z>6d9(rU}8C#tF|L(dwObIW=d8tOH6>`9JU(g;2ETj6hPH` zSP}o}SC7Gd*n^{_7)LUazA_*Brvm*hP<&OKZz({x-Xve5-X76@PTY6*{i^j-DQ}Px z!^brff{344gdjc`Ty2plTENeanE?OB;5jc5cc=~azKgOgk0xO(5R(%V<$q_GrH1Bz zHb^SJF?boMftZb$wMeQlB&BOetznK$2>SF(C=P8R$0jk3{!l}7d&h={siDhgM2F~y zziONjjnx`83EZCHIuJ?~2WxRdiVHM~&NibOi5U)Ll+<*!xN^AIF*e+4Lug?g{8Qs2 z{Ex;B6OoMZtvNIK<2jE_6_=qVi_-Nbe?8~%d-n!p1@ev@Y59mTjwVlca04SBT^F11 zGv#n2{!NbO{UZgh+~WrAmR!x$#Ay?9iC?0`-nIAL7@uP)-8bd_9%0~ant(s4E>>HQ zxiz~}4fQ7*lH*>wwB`Sk8^(k4{B%L9GUHB2t2eC;W+Oj9jx@*Bd%44Ak-N``&B-(K z)^l54$Q0EFkw*C+@)oV4pC{BiWTyV=oKMFg;eJGU*ewpV;Nl%eBZmCnZn;X?WM>`r n9(D;&&Obh?C40W)M^)9Iy|KXyDMxjy4VQeyaiNXt3R3, 2013. # Mingye Wang (Arthur2e5) , 2016. # Boyuan Yang <073plan@gmail.com>, 2018, 2021. +# Wenbin Lv , 2022. # msgid "" msgstr "" "Project-Id-Version: diffutils 3.7.41\n" "Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n" -"POT-Creation-Date: 2021-08-01 18:56-0700\n" -"PO-Revision-Date: 2021-07-20 13:48-0400\n" -"Last-Translator: Boyuan Yang <073plan@gmail.com>\n" +"POT-Creation-Date: 2023-05-21 01:51-0700\n" +"PO-Revision-Date: 2022-03-31 17:01+0800\n" +"Last-Translator: Wenbin Lv \n" "Language-Team: Chinese (simplified) \n" "Language: zh_CN\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Bugs: Report translation errors to the Language-Team address.\n" -"X-Generator: Poedit 2.4.2\n" +"X-Generator: Poedit 3.0.1\n" -#: lib/argmatch.c:132 +#: lib/argmatch.c:145 #, c-format msgid "invalid argument %s for %s" -msgstr "无效的参数 %s 对于 %s" +msgstr "%2$s 的参数 %1$s 无效" -#: lib/argmatch.c:133 +#: lib/argmatch.c:146 #, c-format msgid "ambiguous argument %s for %s" -msgstr "有歧义的参数 %s 对于 %s" +msgstr "%2$s 的参数 %1$s 有歧义" -#: lib/argmatch.c:152 lib/argmatch.h:223 +#: lib/argmatch.c:165 lib/argmatch.h:242 msgid "Valid arguments are:" msgstr "有效的参数为:" -#: lib/c-stack.c:187 +#: lib/c-stack.c:186 msgid "program error" msgstr "程序错误" -#: lib/c-stack.c:188 +#: lib/c-stack.c:187 msgid "stack overflow" msgstr "栈溢出" -#: lib/error.c:195 +#: lib/error.c:193 msgid "Unknown system error" msgstr "未知的系统错误" #: lib/file-type.c:40 msgid "regular empty file" -msgstr "常规空文件" +msgstr "普通空文件" #: lib/file-type.c:40 msgid "regular file" -msgstr "常规文件" +msgstr "普通文件" #: lib/file-type.c:43 msgid "directory" @@ -73,31 +74,31 @@ msgstr "信号量" #: lib/file-type.c:58 msgid "shared memory object" -msgstr "共享内存目标" +msgstr "共享内存对象" #: lib/file-type.c:61 msgid "typed memory object" -msgstr "分类内存目标" +msgstr "有类型内存对象" #: lib/file-type.c:66 msgid "block special file" -msgstr "特殊块文件" +msgstr "块特殊文件" #: lib/file-type.c:69 msgid "character special file" -msgstr "特殊字符文件" +msgstr "字符特殊文件" #: lib/file-type.c:72 msgid "contiguous data" -msgstr "连续数据文件" +msgstr "连续数据" #: lib/file-type.c:75 msgid "fifo" -msgstr "命名管道" +msgstr "先进先出文件" #: lib/file-type.c:78 msgid "door" -msgstr "门(Solaris)" +msgstr "门 (Solaris)" #: lib/file-type.c:81 msgid "multiplexed block special file" @@ -113,7 +114,7 @@ msgstr "复用文件" #: lib/file-type.c:90 msgid "named file" -msgstr "命名文件(XENIX)" +msgstr "命名文件 (XENIX)" #: lib/file-type.c:93 msgid "network special file" @@ -121,11 +122,11 @@ msgstr "网络特殊文件" #: lib/file-type.c:96 msgid "migrated file with data" -msgstr "含数据迁移文件(Cray DMF)" +msgstr "含数据迁移文件 (Cray DMF)" #: lib/file-type.c:99 msgid "migrated file without data" -msgstr "不含数据迁移文件(Cray DMF)" +msgstr "不含数据迁移文件 (Cray DMF)" #: lib/file-type.c:102 msgid "port" @@ -146,37 +147,37 @@ msgstr "奇怪的文件" #: lib/getopt.c:278 #, c-format msgid "%s: option '%s%s' is ambiguous\n" -msgstr "%s:选项“%s%s”是不明确的\n" +msgstr "%s: 选项 \"%s%s\" 有歧义\n" #: lib/getopt.c:284 #, c-format msgid "%s: option '%s%s' is ambiguous; possibilities:" -msgstr "%s:选项“%s%s”是不明确的;可能是:" +msgstr "%s: 选项 \"%s%s\" 有歧义;可能是:" #: lib/getopt.c:319 #, c-format msgid "%s: unrecognized option '%s%s'\n" -msgstr "%s:无法识别的选项“%s%s”\n" +msgstr "%s: 无法识别的选项 \"%s%s\"\n" #: lib/getopt.c:345 #, c-format msgid "%s: option '%s%s' doesn't allow an argument\n" -msgstr "%s:选项“%s%s”不允许带参数\n" +msgstr "%s: 选项 \"%s%s\" 不允许带参数\n" #: lib/getopt.c:360 #, c-format msgid "%s: option '%s%s' requires an argument\n" -msgstr "%s:选项“%s%s”需要一个参数\n" +msgstr "%s: 选项 \"%s%s\" 必须带参数\n" #: lib/getopt.c:621 #, c-format msgid "%s: invalid option -- '%c'\n" -msgstr "%s:无效选项 -- “%c”\n" +msgstr "%s: 无效的选项 -- \"%c\"\n" #: lib/getopt.c:636 lib/getopt.c:682 #, c-format msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s:选项需要一个参数 -- “%c”\n" +msgstr "%s: 选项必须带参数 -- \"%c\"\n" #. TRANSLATORS: #. Get translations for open and closing quotation marks. @@ -199,85 +200,85 @@ msgstr "%s:选项需要一个参数 -- “%c”\n" #. If you don't know what to put here, please see #. #. and use glyphs suitable for your language. -#: lib/quotearg.c:355 +#: lib/quotearg.c:354 msgid "`" -msgstr "“" +msgstr "\"" -#: lib/quotearg.c:356 +#: lib/quotearg.c:355 msgid "'" -msgstr "”" +msgstr "\"" -#: lib/regcomp.c:135 +#: lib/regcomp.c:122 msgid "Success" msgstr "成功" -#: lib/regcomp.c:138 +#: lib/regcomp.c:125 msgid "No match" -msgstr "没有匹配" +msgstr "无匹配" -#: lib/regcomp.c:141 +#: lib/regcomp.c:128 msgid "Invalid regular expression" msgstr "无效的正则表达式" -#: lib/regcomp.c:144 +#: lib/regcomp.c:131 msgid "Invalid collation character" -msgstr "无效的对照字符" +msgstr "无效的定序字符" -#: lib/regcomp.c:147 +#: lib/regcomp.c:134 msgid "Invalid character class name" -msgstr "无效的字符种类名称" +msgstr "无效的字符类名称" -#: lib/regcomp.c:150 +#: lib/regcomp.c:137 msgid "Trailing backslash" -msgstr "末端有多余的反斜杠" +msgstr "末尾有反斜杠" -#: lib/regcomp.c:153 +#: lib/regcomp.c:140 msgid "Invalid back reference" -msgstr "无效的向后引用" +msgstr "无效的后向引用" -#: lib/regcomp.c:156 +#: lib/regcomp.c:143 msgid "Unmatched [, [^, [:, [., or [=" msgstr "未匹配的 [、[^、[:、[. 或 [=" -#: lib/regcomp.c:159 +#: lib/regcomp.c:146 msgid "Unmatched ( or \\(" msgstr "未匹配的 ( 或 \\(" -#: lib/regcomp.c:162 +#: lib/regcomp.c:149 msgid "Unmatched \\{" msgstr "未匹配的 \\{" -#: lib/regcomp.c:165 +#: lib/regcomp.c:152 msgid "Invalid content of \\{\\}" -msgstr "\\{\\} 中的内容无效" +msgstr "\\{\\} 中内容无效" -#: lib/regcomp.c:168 +#: lib/regcomp.c:155 msgid "Invalid range end" -msgstr "范围末端字符无效" +msgstr "无效的范围端点" -#: lib/regcomp.c:171 +#: lib/regcomp.c:158 msgid "Memory exhausted" msgstr "内存耗尽" -#: lib/regcomp.c:174 +#: lib/regcomp.c:161 msgid "Invalid preceding regular expression" -msgstr "无效的前导正则表达式" +msgstr "前面的正则表达式无效" -#: lib/regcomp.c:177 +#: lib/regcomp.c:164 msgid "Premature end of regular expression" msgstr "正则表达式过早结束" -#: lib/regcomp.c:180 +#: lib/regcomp.c:167 msgid "Regular expression too big" -msgstr "正则表达式过大" +msgstr "正则表达式过长" -#: lib/regcomp.c:183 +#: lib/regcomp.c:170 msgid "Unmatched ) or \\)" -msgstr "没有匹配的 ) 或 \\)" +msgstr "未匹配的 ) 或 \\)" -#: lib/regcomp.c:676 +#: lib/regcomp.c:650 msgid "No previous regular expression" -msgstr "之前没有任何正则表达式" +msgstr "缺少前一个正则表达式" #: lib/xalloc-die.c:34 msgid "memory exhausted" @@ -297,12 +298,12 @@ msgstr "标准错误" #: lib/xfreopen.c:37 msgid "unknown stream" -msgstr "未知流" +msgstr "未知的流" #: lib/xfreopen.c:38 #, c-format msgid "failed to reopen %s with mode %s" -msgstr "未能以模式 %2$s 重打开 %1$s" +msgstr "以模式 %2$s 重新打开 %1$s 失败" #: lib/xstdopen.c:34 #, c-format @@ -312,7 +313,7 @@ msgstr "标准文件描述符" #: lib/version-etc.c:73 #, c-format msgid "Packaged by %s (%s)\n" -msgstr "由 %s 打包 (%s)\n" +msgstr "由 %s (%s) 打包\n" #: lib/version-etc.c:76 #, c-format @@ -334,27 +335,27 @@ msgid "" "This is free software: you are free to change and redistribute it.\n" "There is NO WARRANTY, to the extent permitted by law.\n" msgstr "" -"许可证:GPLv3+:GNU 通用公共许可证第 3 版或更新版本 <%s>。\n" +"许可证 GPLv3+:GNU 通用公共许可证第 3 版或更新版本 <%s>。\n" "本软件是自由软件:您可以自由修改和重新发布它。\n" -"在法律允许的范围内没有其他质保。\n" +"在法律允许的范围内,不提供任何保证。\n" #. TRANSLATORS: %s denotes an author name. #: lib/version-etc.c:105 #, c-format msgid "Written by %s.\n" -msgstr "作者:%s。\n" +msgstr "由 %s 编写。\n" #. TRANSLATORS: Each %s denotes an author name. #: lib/version-etc.c:109 #, c-format msgid "Written by %s and %s.\n" -msgstr "作者:%s 和 %s。\n" +msgstr "由 %s 和 %s 编写。\n" #. TRANSLATORS: Each %s denotes an author name. #: lib/version-etc.c:113 #, c-format msgid "Written by %s, %s, and %s.\n" -msgstr "作者:%s、%s 和 %s。\n" +msgstr "由 %s、%s 和 %s 编写。\n" #. TRANSLATORS: Each %s denotes an author name. #. You can use line breaks, estimating that each author name occupies @@ -365,8 +366,8 @@ msgid "" "Written by %s, %s, %s,\n" "and %s.\n" msgstr "" -"作者:%s、%s、%s\n" -"   和 %s。\n" +"由 %s、%s、%s 和\n" +"%s 编写。\n" #. TRANSLATORS: Each %s denotes an author name. #. You can use line breaks, estimating that each author name occupies @@ -377,8 +378,8 @@ msgid "" "Written by %s, %s, %s,\n" "%s, and %s.\n" msgstr "" -"作者:%s、%s、%s、\n" -"   %s 和 %s。\n" +"由 %s、%s、%s、\n" +"%s 和 %s 编写。\n" #. TRANSLATORS: Each %s denotes an author name. #. You can use line breaks, estimating that each author name occupies @@ -389,8 +390,8 @@ msgid "" "Written by %s, %s, %s,\n" "%s, %s, and %s.\n" msgstr "" -"作者:%s、%s、%s、\n" -"   %s、%s 和 %s。\n" +"由 %s、%s、%s、\n" +"%s、%s 和 %s 编写。\n" #. TRANSLATORS: Each %s denotes an author name. #. You can use line breaks, estimating that each author name occupies @@ -401,8 +402,8 @@ msgid "" "Written by %s, %s, %s,\n" "%s, %s, %s, and %s.\n" msgstr "" -"作者:%s、%s、%s、\n" -"   %s、%s、%s 和 %s。\n" +"由 %s、%s、%s、\n" +"%s、%s、%s 和 %s 编写。\n" #. TRANSLATORS: Each %s denotes an author name. #. You can use line breaks, estimating that each author name occupies @@ -414,9 +415,9 @@ msgid "" "%s, %s, %s, %s,\n" "and %s.\n" msgstr "" -"作者:%s、%s、%s、\n" -"   %s、%s、%s、%s\n" -"   和 %s。\n" +"由 %s、%s、%s、\n" +"%s、%s、%s、%s 和\n" +"%s 编写。\n" #. TRANSLATORS: Each %s denotes an author name. #. You can use line breaks, estimating that each author name occupies @@ -428,9 +429,9 @@ msgid "" "%s, %s, %s, %s,\n" "%s, and %s.\n" msgstr "" -"作者:%s、%s、%s、\n" -"   %s、%s、%s、%s、\n" -"   %s 和 %s。\n" +"由 %s、%s、%s、\n" +"%s、%s、%s、%s、\n" +"%s 和 %s 编写。\n" #. TRANSLATORS: Each %s denotes an author name. #. You can use line breaks, estimating that each author name occupies @@ -442,9 +443,9 @@ msgid "" "%s, %s, %s, %s,\n" "%s, %s, and others.\n" msgstr "" -"作者:%s、%s、%s、\n" -"   %s、%s、%s、%s、\n" -"   %s、%s 和其他人。\n" +"由 %s、%s、%s、\n" +"%s、%s、%s、%s、\n" +"%s、%s 和其他人编写。\n" #. TRANSLATORS: The placeholder indicates the bug-reporting address #. for this package. Please add _another line_ saying @@ -454,39 +455,37 @@ msgstr "" #, c-format msgid "Report bugs to: %s\n" msgstr "" -"报告程序错误到: %s\n" -"报告翻译错误到: https://translationproject.org/teams/zh_CN.html\n" +"请向 <%s> 报告软件错误。\n" +"请向 报告翻译错误。\n" #: lib/version-etc.c:251 #, c-format msgid "Report %s bugs to: %s\n" -msgstr "" -"报告 %1$s 程序错误到: %2$s\n" -"报告 %1$s 翻译错误到: https://translationproject.org/teams/zh_CN.html\n" +msgstr "请向 <%2$s> 报告 %1$s 的错误。\n" #: lib/version-etc.c:255 lib/version-etc.c:257 #, c-format msgid "%s home page: <%s>\n" -msgstr "%s 主页: <%s>\n" +msgstr "%s 的主页:<%s>\n" #: lib/version-etc.c:260 #, c-format msgid "General help using GNU software: <%s>\n" -msgstr "使用 GNU 软件的通用帮助:<%s>\n" +msgstr "GNU 软件一般性帮助:<%s>\n" -#: src/analyze.c:454 src/diff.c:1406 +#: src/analyze.c:455 src/diff.c:1478 #, c-format msgid "Files %s and %s differ\n" msgstr "文件 %s 和 %s 不同\n" -#: src/analyze.c:455 +#: src/analyze.c:456 #, c-format msgid "Binary files %s and %s differ\n" msgstr "二进制文件 %s 和 %s 不同\n" -#: src/analyze.c:706 src/diff3.c:1470 src/util.c:1254 +#: src/analyze.c:707 src/diff3.c:1457 src/util.c:1354 msgid "No newline at end of file" -msgstr "文件尾没有换行符" +msgstr "文件末尾没有换行符" #. This is a proper name. See the gettext manual, section Names. #: src/cmp.c:45 @@ -498,437 +497,443 @@ msgstr "Torbjorn Granlund" msgid "David MacKenzie" msgstr "David MacKenzie" -#: src/cmp.c:120 src/diff.c:879 src/diff3.c:467 src/sdiff.c:160 +#: src/cmp.c:124 src/diff.c:939 src/diff3.c:465 src/sdiff.c:159 #, c-format msgid "Try '%s --help' for more information." -msgstr "请尝试 “%s --help”,以获得更多信息。" +msgstr "请尝试执行 \"%s --help\" 来获取更多信息。" -#: src/cmp.c:138 +#: src/cmp.c:142 #, c-format msgid "invalid --ignore-initial value '%s'" -msgstr "无效的 --ignore-initial 值 “%s”" +msgstr "无效的 --ignore-initial 值 \"%s\"" -#: src/cmp.c:148 +#: src/cmp.c:152 #, c-format msgid "options -l and -s are incompatible" -msgstr "选项 -l 和 -s 不兼容" +msgstr "选项 -l 和 -s 是互斥的" -#: src/cmp.c:156 src/diff.c:887 src/diff3.c:474 src/sdiff.c:168 src/sdiff.c:316 -#: src/sdiff.c:323 src/sdiff.c:876 src/util.c:852 src/util.c:952 src/util.c:959 +#: src/cmp.c:160 src/diff.c:947 src/diff3.c:472 src/sdiff.c:167 src/sdiff.c:314 +#: src/sdiff.c:321 src/sdiff.c:873 src/util.c:952 src/util.c:1052 +#: src/util.c:1059 msgid "write failed" msgstr "写入失败" -#: src/cmp.c:158 src/diff.c:889 src/diff.c:1471 src/diff3.c:476 src/sdiff.c:170 +#: src/cmp.c:162 src/diff.c:949 src/diff.c:1543 src/diff3.c:474 src/sdiff.c:169 msgid "standard output" msgstr "标准输出" -#: src/cmp.c:162 +#: src/cmp.c:166 msgid "-b, --print-bytes print differing bytes" -msgstr "-b --print-bytes 打印出内容相异的字节" +msgstr "-b, --print-bytes 打印出内容相异的字节" -#: src/cmp.c:163 +#: src/cmp.c:167 msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs" -msgstr "-i, --ignore-initial=SKIP 两个输入内容都略过前 SKIP 字节" +msgstr "-i, --ignore-initial=跳过 对于两个输入,都跳过前 <跳过> 个字节" -#: src/cmp.c:164 +#: src/cmp.c:168 msgid "" "-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n" " first SKIP2 bytes of FILE2" msgstr "" -"-i, --ignore-initial=è·³1:è·³2 略过 <文件1> 的前 <è·³1> 个字节和文件 <文件" +"-i, --ignore-initial=跳过1:跳过2 跳过 <文件1> 的前 <跳过1> 个字节和 <文件" "2>\n" -" 的前 <è·³2> 个字节" +" 的前 <跳过2> 个字节" -#: src/cmp.c:166 +#: src/cmp.c:170 msgid "" "-l, --verbose output byte numbers and differing byte values" -msgstr "-l, --verbose 输出所有相异字节的字节数和内容" +msgstr "-l, --verbose 输出所有相异字节的编号和值" -#: src/cmp.c:167 +#: src/cmp.c:171 msgid "-n, --bytes=LIMIT compare at most LIMIT bytes" -msgstr "-n, --bytes=限制 最多比较给定字节数的数据" +msgstr "-n, --bytes=限制 最多比较 <限制> 个字节" -#: src/cmp.c:168 +#: src/cmp.c:172 msgid "-s, --quiet, --silent suppress all normal output" msgstr "-s, --quiet, --silent 禁止所有正常输出" -#: src/cmp.c:169 +#: src/cmp.c:173 msgid " --help display this help and exit" msgstr " --help 显示此帮助信息并退出" -#: src/cmp.c:170 +#: src/cmp.c:174 msgid "-v, --version output version information and exit" -msgstr "-v, --version 输出版本信息并退出" +msgstr "-v, --version 显示版本信息并退出" -#: src/cmp.c:179 +#: src/cmp.c:183 #, c-format msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n" -msgstr "用法: %s [选项]... 文件1 [文件2 [è·³1 [è·³2]]]\n" +msgstr "用法:%s [选项]... 文件1 [文件2 [跳过1 [跳过2]]]\n" -#: src/cmp.c:181 +#: src/cmp.c:185 msgid "Compare two files byte by byte." msgstr "逐字节比较两个文件。" -#: src/cmp.c:183 +#: src/cmp.c:187 msgid "" "The optional SKIP1 and SKIP2 specify the number of bytes to skip\n" "at the beginning of each file (zero by default)." -msgstr "<è·³1> 和 <è·³2> 分别是每个文件要略过的字节数。" +msgstr "<跳过1> 和 <跳过2> 分别是每个文件要跳过的字节数。" -#: src/cmp.c:186 src/diff.c:999 src/diff3.c:514 src/sdiff.c:211 +#: src/cmp.c:190 src/diff.c:1059 src/diff3.c:512 src/sdiff.c:210 msgid "" "Mandatory arguments to long options are mandatory for short options too.\n" -msgstr "长选项的必需参数也是相应短选项的必需参数。\n" +msgstr "长选项的必选参数对于短选项也是必选的。\n" -#: src/cmp.c:192 +#: src/cmp.c:196 msgid "" "SKIP values may be followed by the following multiplicative suffixes:\n" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" "GB 1,000,000,000, G 1,073,741,824, and so on for T, P, E, Z, Y." msgstr "" -"<è·³> 值可以加上以下的单位:\n" -"kB=1,000、K=1,024、MB=1,000,000、M=1,048,576、GB=1,000,000,000、" -"G=107,374,182,\n" -"还有 T、P、E、Z、Y,如此类推。" +"<跳过> 值可以加上以下的乘数后缀:\n" +"kB=1000、K=1024、MB=1,000,000、M=1,048,576、\n" +"GB=1,000,000,000、G=1,073,741,824,T、P、E、Z、Y 以此类推。" -#: src/cmp.c:195 +#: src/cmp.c:199 msgid "If a FILE is '-' or missing, read standard input." -msgstr "如果文件是 “-” 或没给出,则从标准输入读入内容。" +msgstr "如果 <文件> 为 \"-\",或者没有指定 <文件>,则从标准输入读取。" -#: src/cmp.c:196 src/diff.c:987 src/sdiff.c:221 +#: src/cmp.c:200 src/diff.c:1047 src/sdiff.c:220 msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble." msgstr "如果输入相同,则退出状态为 0;1 表示输入不同;2 表示有错误产生。" -#: src/cmp.c:243 +#: src/cmp.c:247 #, c-format msgid "invalid --bytes value '%s'" -msgstr "无效的 --bytes 值 `%s'" +msgstr "无效的 --bytes 值 \"%s\"" -#: src/cmp.c:269 src/diff.c:797 src/diff3.c:361 src/sdiff.c:567 +#: src/cmp.c:273 src/diff.c:857 src/diff3.c:368 src/sdiff.c:564 #, c-format msgid "missing operand after '%s'" -msgstr "操作数 “%s” 后缺少参数" +msgstr "\"%s\" 后缺少操作对象" -#: src/cmp.c:281 src/diff.c:799 src/diff3.c:363 src/sdiff.c:569 +#: src/cmp.c:285 src/diff.c:859 src/diff3.c:370 src/sdiff.c:566 #, c-format msgid "extra operand '%s'" -msgstr "多余的操作数 “%s”" +msgstr "多余的操作对象 \"%s\"" -#: src/cmp.c:507 +#: src/cmp.c:521 #, c-format msgid "%s %s differ: byte %s, line %s\n" -msgstr "%s %s 不同:第 %s 字节,第 %s 行\n" +msgstr "%s %s 不同:第 %s 字节(第 %s 行)\n" -#: src/cmp.c:523 +#: src/cmp.c:537 #, c-format msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n" -msgstr "%1$s %2$s 不同:第 %4$s 行,第 %3$s 字节为 %5$3o %6$s %7$3o %8$s\n" +msgstr "%s %s 不同:第 %s 字节(第 %s 行),分别为 %3o %s、%3o %s\n" -#: src/cmp.c:580 +#: src/cmp.c:594 #, c-format msgid "cmp: EOF on %s which is empty\n" -msgstr "cmp:%s 已结束且为空\n" +msgstr "cmp: %s 返回了 EOF,且为空\n" -#: src/cmp.c:594 +#: src/cmp.c:608 #, c-format msgid "cmp: EOF on %s after byte %s, line %s\n" -msgstr "cmp:%s 在 %s 字节 %s 行后结束\n" +msgstr "cmp: %s 在第 %s 字节(第 %s 行)后返回了 EOF\n" -#: src/cmp.c:595 +#: src/cmp.c:609 #, c-format msgid "cmp: EOF on %s after byte %s, in line %s\n" -msgstr "cmp:%s 在 %s 字节 %s 行中结束\n" +msgstr "cmp: %s 在第 %s 字节(第 %s 行中间)后返回了 EOF\n" -#: src/cmp.c:601 +#: src/cmp.c:615 #, c-format msgid "cmp: EOF on %s after byte %s\n" -msgstr "cmp:%s 在 %s 字节后结束\n" +msgstr "cmp: %s 在第 %s 字节后返回了 EOF\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:51 +#: src/diff.c:50 msgid "Paul Eggert" msgstr "Paul Eggert" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:52 +#: src/diff.c:51 msgid "Mike Haertel" msgstr "Mike Haertel" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:53 +#: src/diff.c:52 msgid "David Hayes" msgstr "David Hayes" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:54 +#: src/diff.c:53 msgid "Richard Stallman" -msgstr "理查德·斯托曼" +msgstr "Richard Stallman" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:55 +#: src/diff.c:54 msgid "Len Tower" msgstr "Len Tower" -#: src/diff.c:355 +#: src/diff.c:365 #, c-format msgid "invalid context length '%s'" -msgstr "无效的上下文长度“%s”" +msgstr "无效的上下文长度 \"%s\"" -#: src/diff.c:438 +#: src/diff.c:487 #, c-format msgid "pagination not supported on this host" msgstr "此系统不支持分页" -#: src/diff.c:453 src/diff3.c:341 +#: src/diff.c:502 src/diff3.c:348 #, c-format msgid "too many file label options" -msgstr "过多的文件标号选项" +msgstr "过多的文件标签选项" -#: src/diff.c:530 +#: src/diff.c:579 #, c-format msgid "invalid width '%s'" -msgstr "无效的宽度“%s”" +msgstr "无效的宽度 \"%s\"" -#: src/diff.c:534 +#: src/diff.c:583 msgid "conflicting width options" -msgstr "宽度选项冲突" +msgstr "宽度选项有冲突" -#: src/diff.c:559 +#: src/diff.c:608 #, c-format msgid "invalid horizon length '%s'" -msgstr "无效的水平长度 “%s”" +msgstr "无效的视野长度 \"%s\"" -#: src/diff.c:615 +#: src/diff.c:664 #, c-format msgid "invalid tabsize '%s'" -msgstr "无效的制表符宽度 “%s”" +msgstr "无效的制表符宽度 \"%s\"" -#: src/diff.c:619 +#: src/diff.c:668 msgid "conflicting tabsize options" -msgstr "制表符长度选项冲突" +msgstr "制表符宽度选项有冲突" -#: src/diff.c:774 +#: src/diff.c:834 msgid "--from-file and --to-file both specified" msgstr "同时指定了选项 --from-file 和 --to-file" -#: src/diff.c:893 +#: src/diff.c:953 msgid " --normal output a normal diff (the default)" -msgstr " --normal 以正常的 diff 方式输出 (默认)" +msgstr " --normal 以正常的 diff 格式输出(默认)" -#: src/diff.c:894 +#: src/diff.c:954 msgid "-q, --brief report only when files differ" -msgstr "-q, --brief 只有在文件不同时报告" +msgstr "-q, --brief 仅当文件不同时报告" -#: src/diff.c:895 +#: src/diff.c:955 msgid "-s, --report-identical-files report when two files are the same" -msgstr "-s, --report-identical-files 当两个一样时仍然显示结果" +msgstr "-s, --report-identical-files 当两个文件相同时也进行报告" -#: src/diff.c:896 +#: src/diff.c:956 msgid "" "-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context" -msgstr "" -"-c, -C NUM, --context[=NUM] 同时输出 NUM 行(默认为 3 行)的复制上下文内容" +msgstr "-c, -C 数字, --context[=数字] 输出 <数字> 行(默认为 3 行)复制上下文" -#: src/diff.c:897 +#: src/diff.c:957 msgid "" "-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context" -msgstr "-u, -U 数量, --unified[=数量] 输出 <数量>(默认为 3)行一致化上下文" +msgstr "-u, -U 数字, --unified[=数字] 输出 <数字> 行(默认为 3 行)统一上下文" -#: src/diff.c:898 +#: src/diff.c:958 msgid "-e, --ed output an ed script" -msgstr "-e, --ed 以 ed script 方式输出" +msgstr "-e, --ed 以 ed 脚本格式输出" -#: src/diff.c:899 +#: src/diff.c:959 msgid "-n, --rcs output an RCS format diff" msgstr "-n, --rcs 以 RCS diff 格式输出" -#: src/diff.c:900 +#: src/diff.c:960 msgid "-y, --side-by-side output in two columns" -msgstr "-y, --side-by-side 以两栏的格式输出" +msgstr "-y, --side-by-side 以两栏格式输出" -#: src/diff.c:901 +#: src/diff.c:961 msgid "" "-W, --width=NUM output at most NUM (default 130) print columns" -msgstr "-W, --width=数量 每行显示最多 <数量>(默认 130)个字符" +msgstr "" +"-W, --width=数字 每行宽度最多 <数字> 个(默认为 130 个)字符" -#: src/diff.c:902 +#: src/diff.c:962 msgid "" " --left-column output only the left column of common lines" -msgstr " --left-column 当有两行相同时只显示左边栏的一行" +msgstr " --left-column 对于相同的行只输出左栏" -#: src/diff.c:903 +#: src/diff.c:963 msgid " --suppress-common-lines do not output common lines" -msgstr " --suppress-common-lines 当有两行相同时不显示" +msgstr " --suppress-common-lines 对于相同的行不进行输出" -#: src/diff.c:905 +#: src/diff.c:965 msgid "-p, --show-c-function show which C function each change is in" msgstr "-p, --show-c-function 显示每个变更位于哪个 C 函数中" -#: src/diff.c:906 +#: src/diff.c:966 msgid "-F, --show-function-line=RE show the most recent line matching RE" -msgstr "-F, --show-function-line=正则 显示匹配给定<正则>表达式的最近一行" +msgstr "-F, --show-function-line=正则 显示匹配 <正则> 表达式的最近一行" -#: src/diff.c:907 +#: src/diff.c:967 msgid "" " --label LABEL use LABEL instead of file name and timestamp\n" " (can be repeated)" msgstr "" -" --label 标签 使用给定<标签>替代文件名和时间戳\n" -" (可以重复)" +" --label 标签 使用 <标签> 替代文件名和时间戳(可以重复)" -#: src/diff.c:910 +#: src/diff.c:970 msgid "-t, --expand-tabs expand tabs to spaces in output" -msgstr "-t, --expand-tabs 将输出中的 tab 转换成空格" +msgstr "-t, --expand-tabs 将输出中的制表符展开为空格" -#: src/diff.c:911 +#: src/diff.c:971 msgid "-T, --initial-tab make tabs line up by prepending a tab" -msgstr "-T, --initial-tab 每行先加上 tab 字符,使 tab 字符可以对齐" +msgstr "" +"-T, --initial-tab 在每行前面加上一个制表符,以使制表符可以对齐" -#: src/diff.c:912 +#: src/diff.c:972 msgid "" " --tabsize=NUM tab stops every NUM (default 8) print columns" -msgstr " --tabsize=数字 TAB 格的宽度,默认为 8 个打印列宽" +msgstr " --tabsize=数字 制表符宽度(默认为 8)" -#: src/diff.c:913 +#: src/diff.c:973 msgid "" " --suppress-blank-empty suppress space or tab before empty output lines" -msgstr " --suppress-blank-empty 在空的输出行之前去除空白或制表符" +msgstr " --suppress-blank-empty 去除将要输出的空行之前的空格或制表符" -#: src/diff.c:914 +#: src/diff.c:974 msgid "-l, --paginate pass output through 'pr' to paginate it" -msgstr "-l, --paginate 将输出送至 “pr” 指令来分页" +msgstr "-l, --paginate 将输出发送给 \"pr\" 命令进行分页" -#: src/diff.c:916 +#: src/diff.c:976 msgid "" "-r, --recursive recursively compare any subdirectories found" -msgstr "-r, --recursive 连同所有子目录一起比较" +msgstr "-r, --recursive 递归比较所有子目录" -#: src/diff.c:917 +#: src/diff.c:977 msgid " --no-dereference don't follow symbolic links" msgstr " --no-dereference 不要跟随符号链接" -#: src/diff.c:918 +#: src/diff.c:978 msgid "-N, --new-file treat absent files as empty" -msgstr "-N, --new-file 不存在的文件以空文件方式处理" +msgstr "-N, --new-file 将不存在的文件视为空文件" -#: src/diff.c:919 +#: src/diff.c:979 msgid " --unidirectional-new-file treat absent first files as empty" -msgstr " --unidirectional-new-file 若第一文件不存在,以空文件处理" +msgstr " --unidirectional-new-file 若第一个文件不存在,则视为空文件" -#: src/diff.c:920 +#: src/diff.c:980 msgid " --ignore-file-name-case ignore case when comparing file names" -msgstr " --ignore-file-name-case 忽略文件名大小写的区别" +msgstr " --ignore-file-name-case 比较文件名时忽略大小写" -#: src/diff.c:921 +#: src/diff.c:981 msgid " --no-ignore-file-name-case consider case when comparing file names" -msgstr " --no-ignore-file-name-case 不忽略文件名大小写的区别" +msgstr " --no-ignore-file-name-case 比较文件名时不忽略大小写" -#: src/diff.c:922 +#: src/diff.c:982 msgid "-x, --exclude=PAT exclude files that match PAT" -msgstr "-x, --exclude=模式 排除匹配 <模式> 的文件" +msgstr "-x, --exclude=模式 排除与 <模式> 匹配的文件" -#: src/diff.c:923 +#: src/diff.c:983 msgid "" "-X, --exclude-from=FILE exclude files that match any pattern in FILE" -msgstr "-X, --exclude-from=文件 排除所有匹配在<文件>中列出的模式的文件" +msgstr "" +"-X, --exclude-from=文件 排除与 <文件> 中列出的任意模式匹配的文件" -#: src/diff.c:924 +#: src/diff.c:984 msgid "" "-S, --starting-file=FILE start with FILE when comparing directories" -msgstr "-S, --starting-file=文件 当比较目录時,由<文件>开始比较" +msgstr "-S, --starting-file=文件 比较目录时,从 <文件> 开始比较" -#: src/diff.c:925 +#: src/diff.c:985 msgid "" " --from-file=FILE1 compare FILE1 to all operands;\n" " FILE1 can be a directory" msgstr "" -" --from-file=文件1 将<文件1>和操作数中的所有文件/目录作比较;\n" -" <文件1>可以是目录" +" --from-file=文件1 将 <文件1> 和所有操作对象进行比较;\n" +" <文件1> 可以是目录" -#: src/diff.c:927 +#: src/diff.c:987 msgid "" " --to-file=FILE2 compare all operands to FILE2;\n" " FILE2 can be a directory" msgstr "" -" --to-file=文件2 将操作数中的所有文件/目录和<文件2>作比较;\n" -" <文件2>可以是目录" +" --to-file=文件2 将所有操作对象和 <文件2> 进行比较;\n" +" <文件2> 可以是目录" -#: src/diff.c:930 +#: src/diff.c:990 msgid "" "-i, --ignore-case ignore case differences in file contents" -msgstr "-i, --ignore-case 忽略文件内容大小写的区别" +msgstr "-i, --ignore-case 比较文件内容时忽略大小写" -#: src/diff.c:931 +#: src/diff.c:991 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" -msgstr "-E, --ignore-tab-expansion 忽略由制表符宽度造成的差异" +msgstr "-E, --ignore-tab-expansion 忽略制表符展开造成的变更" -#: src/diff.c:932 +#: src/diff.c:992 msgid "-Z, --ignore-trailing-space ignore white space at line end" -msgstr "-Z, --ignore-trailing-space 忽略每行末端的空格" +msgstr "-Z, --ignore-trailing-space 忽略行末的空白字符" -#: src/diff.c:933 +#: src/diff.c:993 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" -msgstr "-b, --ignore-space-change 忽略由空格数不同造成的差异" +msgstr "-b, --ignore-space-change 忽略空白字符数不同造成的变更" -#: src/diff.c:934 +#: src/diff.c:994 msgid "-w, --ignore-all-space ignore all white space" -msgstr "-w, --ignore-all-space 忽略所有空格" +msgstr "-w, --ignore-all-space 忽略所有空白字符" -#: src/diff.c:935 +#: src/diff.c:995 msgid "" "-B, --ignore-blank-lines ignore changes where lines are all blank" -msgstr "-B, --ignore-blank-lines 忽略任何因空行而造成的差异" +msgstr "-B, --ignore-blank-lines 忽略所有行均为空行的变更" -#: src/diff.c:936 +#: src/diff.c:996 msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE" msgstr "" -"-I, --ignore-matching-lines=正则 若某行完全匹配 <正则>,则忽略由该行造成的差" -"异" +"-I, --ignore-matching-lines=正则 忽略所有行均与 <正则> 表达式匹配的变更" -#: src/diff.c:938 +#: src/diff.c:998 msgid "-a, --text treat all files as text" -msgstr "-a, --text 所有文件都以文本方式处理" +msgstr "-a, --text 将所有文件视为文本文件" -#: src/diff.c:939 +#: src/diff.c:999 msgid " --strip-trailing-cr strip trailing carriage return on input" -msgstr " --strip-trailing-cr 去除输入内容每行末端的回车(CR)字符" +msgstr " --strip-trailing-cr 去除输入内容行末的回车 (CR) 字符" -#: src/diff.c:941 +#: src/diff.c:1001 msgid " --binary read and write data in binary mode" -msgstr " --binary 以二进制方式读写数据" +msgstr " --binary 以二进制模式读写数据" -#: src/diff.c:944 +#: src/diff.c:1004 msgid "" "-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs" msgstr "" -"-D, --ifdef=名称 输出的内容以 ‘#ifdef <名称>’ 方式标明差异" +"-D, --ifdef=名称 输出含 \"#ifdef <名称>\" 格式 diff 的合并后的" +"文件" -#: src/diff.c:945 +#: src/diff.c:1005 msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT" -msgstr " --GTYPE-group-format=GFMT 以 GFMT 格式处理 GTYPE 输入行组" +msgstr "" +" --组类型-group-format=组格式 使用 <组格式> 对 <组类型> 的输入行组进行格" +"式化" -#: src/diff.c:946 +#: src/diff.c:1006 msgid " --line-format=LFMT format all input lines with LFMT" -msgstr " --line-format=LFMT 以 LFMT 格式处理每一行资料" +msgstr " --line-format=行格式 使用 <行格式> 对所有输入行进行格式化" -#: src/diff.c:947 +#: src/diff.c:1007 msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT" -msgstr " --LTYPE-line-format=LFMT 以 LFMT 格式处理 LTYPE 输入的行" +msgstr "" +" --行类型-line-format=行格式 使用 <行格式> 对 <行类型> 的输入行进行格式化" -#: src/diff.c:948 +#: src/diff.c:1008 msgid "" " These format options provide fine-grained control over the output\n" " of diff, generalizing -D/--ifdef." -msgstr " 这些格式化选项提供对 diff 输出的精细控制,从而泛化 -D/--ifdef。" +msgstr "" +" 这些格式化选项提供对 diff 输出的精细控制,是一般化的 -D/--ifdef 选项。" -#: src/diff.c:950 +#: src/diff.c:1010 msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'." msgstr "" -" LTYPE 可以是 “old”、“new” 或 “unchanged”。GTYPE 可以是 LTYPE 的选择\n" -" 或是 “changed”。" +" <行类型> 可以是 \"old\"、\"new\" 或 \"unchanged\"。<组类型> 可以是 <行类型" +">\n" +" 的所有选项,或者 \"changed\"。" -#: src/diff.c:951 +#: src/diff.c:1011 msgid "" " GFMT (only) may contain:\n" " %< lines from FILE1\n" @@ -943,32 +948,33 @@ msgid "" " M L+1\n" " %(A=B?T:E) if A equals B then T else E" msgstr "" -" (仅)GFMT 可包括:\n" -" %< 该组中每行属于<文件1>的差异\n" -" %> 该组中每行属于<文件2>的差异\n" -" %= 该组中同时在<文件1>和<文件2>出现的每一行\n" -" %[-][宽度][.[精确度]]{doxX}字符 以 printf 格式表示该<字符>代表的内容\n" -" 大写<字符>表示属于新的文件,小写表示属于旧的文件。<字符>的意义如下:\n" +" (仅有)<组格式> 可以包含:\n" +" %< 来自 <文件1> 的行\n" +" %> 来自 <文件2> 的行\n" +" %= <文件1> 和 <文件2> 共有的行\n" +" %[-][宽度][.[精度]]{doxX}字符 以 printf 风格的说明符打印 <字符> 对应的" +"值\n" +" <字符> 对应的值如下(大写表示新文件的行组,小写表示旧文件的行组):\n" " F 行组中第一行的行号\n" " L 行组中最后一行的行号\n" -" N 行数 ( =L-F+1 )\n" +" N 行数,等于 L-F+1\n" " E F-1\n" " M L+1\n" -" %(A=B?T:E) 如果 A 等于 B 那么 T 否则 E" +" %(A=B?T:E) 如果 A 等于 B,则为 T,否则为 E" -#: src/diff.c:963 +#: src/diff.c:1023 msgid "" " LFMT (only) may contain:\n" " %L contents of line\n" " %l contents of line, excluding any trailing newline\n" " %[-][WIDTH][.[PREC]]{doxX}n printf-style spec for input line number" msgstr "" -" (仅)LFMT 可包括:\n" +" (仅有)<行格式> 可以包含:\n" " %L 该行的内容\n" -" %l 该行的内容,但不包括结束的换行符\n" -" %[-][宽度][.[精确度]]{doxX}n 以 printf 格式表示的输入行号" +" %l 该行的内容,但不包括末尾的换行符\n" +" %[-][宽度][.[精度]]{doxX}n 以 printf 风格的说明符打印输入行的行号" -#: src/diff.c:967 +#: src/diff.c:1027 msgid "" " Both GFMT and LFMT may contain:\n" " %% %\n" @@ -976,232 +982,227 @@ msgid "" " %c'\\OOO' the character with octal code OOO\n" " C the character C (other characters represent themselves)" msgstr "" -" GFMT 或 LFMT 都可包括:\n" +" <组格式> 和 <行格式> 均可以包含:\n" " %% %\n" " %c'C' 单个字符 C\n" " %c'\\OOO' 八进制码 OOO 所代表的字符\n" -" C 字符 C(处上述转义外的其他字符代表它们自身)" +" C 字符 C(除上述转义外的其他字符代表它们自身)" -#: src/diff.c:973 +#: src/diff.c:1033 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "-d, --minimal 尽可能找出最小的差异集" -#: src/diff.c:974 +#: src/diff.c:1034 msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix" -msgstr " --horizon-lines=数量 保持指定行数的一致前后缀" +msgstr " --horizon-lines=数字 保留 <数字> 行共有的前缀和后缀" -#: src/diff.c:975 +#: src/diff.c:1035 msgid "" " --speed-large-files assume large files and many scattered small changes" -msgstr " --speed-large-files 假设文件十分大而且文件中含有许多微小的差异" +msgstr " --speed-large-files 假设文件很大,且含有很多零散的微小变更" -#: src/diff.c:976 +#: src/diff.c:1036 msgid "" " --color[=WHEN] color output; WHEN is 'never', 'always', or " "'auto';\n" " plain --color means --color='auto'" msgstr "" -" --color[=何时] 给输出上色;“何时”可以是“never”(从不)、\n" -" “always”(总是)或“auto”(自动,默认);\n" -" 仅指定 --color 与 --color='auto' 效果相同" +" --color[=何时] 使用彩色输出;<何时> 可以是 \"never\"、\"always\"\n" +" 或 \"auto\";仅指定 --color 等价于 --color='auto'" -#: src/diff.c:978 +#: src/diff.c:1038 msgid "" " --palette=PALETTE the colors to use when --color is active; PALETTE " "is\n" " a colon-separated list of terminfo capabilities" msgstr "" -" --palette=调色板 在 --color 选项启用时使用的颜色;<调色板>参数应当" -"是\n" -" 一个冒号分隔的列表以提供 terminfo capabilities ä¿¡" -"息" +" --palette=调色板 在 --color 选项启用时使用的颜色;<调色板> 是\n" +" 以冒号分隔的 terminfo 能力列表" -#: src/diff.c:981 +#: src/diff.c:1041 msgid " --help display this help and exit" msgstr " --help 显示此帮助信息并退出" -#: src/diff.c:982 +#: src/diff.c:1042 msgid "-v, --version output version information and exit" -msgstr "-v, --version 输出版本信息并退出" +msgstr "-v, --version 显示版本信息并退出" -#: src/diff.c:984 +#: src/diff.c:1044 msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'." msgstr "" -"<文件列表> 的格式可以是“文件1 文件2”、“目录1 目录2”、“目录 文件”或\n" -" “文件 目录”。" +"<文件列表> 可以是 \"文件1 文件2\"、\"目录1 目录2\"、\"目录 文件\" 或 \"文件 " +"目录\"。" -#: src/diff.c:985 +#: src/diff.c:1045 msgid "" "If --from-file or --to-file is given, there are no restrictions on FILE(s)." -msgstr "如果使用 --from-file 或 --to-file 选项,<文件名> 的格式则不受限制。" +msgstr "" +"如果使用了 --from-file 或 --to-file 选项,<文件列表> 的格式则不受限制。" -#: src/diff.c:986 src/diff3.c:533 src/sdiff.c:220 +#: src/diff.c:1046 src/diff3.c:531 src/sdiff.c:219 msgid "If a FILE is '-', read standard input." -msgstr "如果 FILE 是 “-”,则由标准输入读取内容。" +msgstr "如果 <文件> 是 \"-\",则读取标准输入的内容。" -#: src/diff.c:996 +#: src/diff.c:1056 #, c-format msgid "Usage: %s [OPTION]... FILES\n" msgstr "用法:%s [选项]... 文件列表\n" -#: src/diff.c:997 +#: src/diff.c:1057 msgid "Compare FILES line by line." -msgstr "逐行比较<各文件>。" +msgstr "逐行比较 <文件列表> 中的文件。" -#: src/diff.c:1034 +#: src/diff.c:1094 #, c-format msgid "conflicting %s option value '%s'" -msgstr "互相冲突的 %s 选项,参数值为 “%s”" +msgstr "%s 选项的值 \"%s\" 有冲突" -#: src/diff.c:1047 +#: src/diff.c:1107 #, c-format msgid "conflicting output style options" -msgstr "互相冲突的输出风格选项" +msgstr "输出风格选项有冲突" -#: src/diff.c:1063 +#: src/diff.c:1123 #, c-format msgid "invalid color '%s'" -msgstr "无效的颜色“%s”" +msgstr "无效的颜色 \"%s\"" -#: src/diff.c:1119 src/diff.c:1329 +#: src/diff.c:1197 src/diff.c:1401 #, c-format msgid "Only in %s: %s\n" -msgstr "只在 %s 存在:%s\n" +msgstr "只在 %s 中存在:%s\n" -#: src/diff.c:1253 +#: src/diff.c:1325 msgid "cannot compare '-' to a directory" -msgstr "“-” 无法与目录作比较" +msgstr "无法将 \"-\" 和目录进行比较" -#: src/diff.c:1288 +#: src/diff.c:1360 msgid "-D option not supported with directories" -msgstr "-D 选项不支持目录使用" +msgstr "不支持对目录使用 -D 选项" -#: src/diff.c:1297 +#: src/diff.c:1369 #, c-format msgid "Common subdirectories: %s and %s\n" -msgstr "%s 和 %s 有共同的子目录\n" +msgstr "共同的子目录:%s 和 %s\n" -#: src/diff.c:1339 src/diff.c:1389 +#: src/diff.c:1411 src/diff.c:1461 #, c-format msgid "File %s is a %s while file %s is a %s\n" -msgstr "文件 %s 是%s而文件 %s 是%s\n" +msgstr "文件 %s 是%s,而文件 %s 是%s\n" -#: src/diff.c:1375 +#: src/diff.c:1447 #, c-format msgid "Symbolic links %s and %s differ\n" -msgstr "软链接 %s 和 %s 不同\n" +msgstr "符号链接 %s 和 %s 不同\n" -#: src/diff.c:1462 +#: src/diff.c:1534 #, c-format msgid "Files %s and %s are identical\n" msgstr "文件 %s 和 %s 相同\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff3.c:43 +#: src/diff3.c:51 msgid "Randy Smith" msgstr "Randy Smith" -#: src/diff3.c:356 +#: src/diff3.c:363 #, c-format msgid "incompatible options" -msgstr "不兼容的选项" +msgstr "选项有冲突" -#: src/diff3.c:396 +#: src/diff3.c:403 msgid "'-' specified for more than one input file" -msgstr "“-”作输入文件不可多于一处" +msgstr "有多个输入文件是 \"-\"" -#: src/diff3.c:447 src/diff3.c:1295 src/diff3.c:1698 src/diff3.c:1753 -#: src/sdiff.c:308 src/sdiff.c:846 src/sdiff.c:857 +#: src/diff3.c:445 src/diff3.c:1284 src/diff3.c:1683 src/diff3.c:1738 +#: src/sdiff.c:306 src/sdiff.c:843 src/sdiff.c:854 msgid "read failed" -msgstr "读取时失败" +msgstr "读取失败" -#: src/diff3.c:480 +#: src/diff3.c:478 msgid "-A, --show-all output all changes, bracketing conflicts" -msgstr "-A, --show-all 输出所有要更改的部份,并括上互相冲突的地方" +msgstr "-A, --show-all 输出所有变更,并使用尖括号标记冲突" -#: src/diff3.c:482 +#: src/diff3.c:480 msgid "" "-e, --ed output ed script incorporating changes\n" " from OLDFILE to YOURFILE into MYFILE" msgstr "" -"-e, --ed 取出由 <旧文件> 至 <你的文件> 的更改部份,并输出" -"可将此\n" -" 改变应用至 <我的文件> 的 ed 脚本" +"-e, --ed 输出可以将从 <旧文件> 到 <你的文件> 的变更\n" +" 整合进 <我的文件> 的 ed 脚本" -#: src/diff3.c:484 +#: src/diff3.c:482 msgid "-E, --show-overlap like -e, but bracket conflicts" -msgstr "-E, --show-overlap 类似 -e,但括上互相冲突的地方" +msgstr "-E, --show-overlap 类似 -e,但使用尖括号标记冲突" -#: src/diff3.c:485 +#: src/diff3.c:483 msgid "" "-3, --easy-only like -e, but incorporate only nonoverlapping " "changes" -msgstr "" -"-3, --easy-only 类似 -e,但只输出未合并而且不重叠的更改部份" +msgstr "-3, --easy-only 类似 -e,但只输出不重叠的变更" -#: src/diff3.c:486 +#: src/diff3.c:484 msgid "" "-x, --overlap-only like -e, but incorporate only overlapping changes" -msgstr "-x, --overlap-only 类似 -e,但只输出重叠的更改部份" +msgstr "-x, --overlap-only 类似 -e,但只输出重叠的变更" -#: src/diff3.c:487 +#: src/diff3.c:485 msgid "-X like -x, but bracket conflicts" -msgstr "-X 类似 -x,但括上互相冲突的地方" +msgstr "-X 类似 -x,但使用尖括号标记冲突" -#: src/diff3.c:488 +#: src/diff3.c:486 msgid "-i append 'w' and 'q' commands to ed scripts" -msgstr "-i 在 ed script 中附加‘w’和‘q’命令" +msgstr "-i 在 ed 脚本后追加 \"w\" 和 \"q\" 命令" -#: src/diff3.c:490 +#: src/diff3.c:488 msgid "" "-m, --merge output actual merged file, according to\n" " -A if no other options are given" msgstr "" -"-m, --merge 输出实际的合并后文件,若没有给出其它选项则\n" -" 根据 -A 操作" +"-m, --merge 输出实际的合并后的文件,若没有给出其它选项,\n" +" 则依据 -A 操作的结果" -#: src/diff3.c:493 +#: src/diff3.c:491 msgid "-a, --text treat all files as text" -msgstr "-a --text 所有文件都以文本方式处理" +msgstr "-a, --text 将所有文件视为文本文件" -#: src/diff3.c:494 +#: src/diff3.c:492 msgid " --strip-trailing-cr strip trailing carriage return on input" -msgstr " --strip-trailing-cr 去除输入内容每行末端的回车(CR)字符" +msgstr " --strip-trailing-cr 去除输入内容行末的回车 (CR) 字符" -#: src/diff3.c:495 +#: src/diff3.c:493 msgid "-T, --initial-tab make tabs line up by prepending a tab" -msgstr "-T --initial-tab 每行先加上 tab 字符,使 tab 字符可以对齐" +msgstr "" +"-T, --initial-tab 在每行前面加上一个制表符,以使制表符可以对齐" -#: src/diff3.c:496 +#: src/diff3.c:494 msgid " --diff-program=PROGRAM use PROGRAM to compare files" -msgstr " --diff-program=程序 用<程序>来比较文件" +msgstr " --diff-program=程序 使用 <程序> 来比较文件" -#: src/diff3.c:497 +#: src/diff3.c:495 msgid "" "-L, --label=LABEL use LABEL instead of file name\n" " (can be repeated up to three times)" -msgstr "" -"-L, --label=标签 使用指定<标签>而非文件名\n" -" (可以重复最多三次)" +msgstr "-L, --label=标签 使用 <标签> 替代文件名(可以重复最多三次)" -#: src/diff3.c:500 +#: src/diff3.c:498 msgid " --help display this help and exit" msgstr " --help 显示此帮助信息并退出" -#: src/diff3.c:501 +#: src/diff3.c:499 msgid "-v, --version output version information and exit" -msgstr "-v, --version 输出版本信息并退出" +msgstr "-v, --version 显示版本信息并退出" -#: src/diff3.c:510 +#: src/diff3.c:508 #, c-format msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n" msgstr "用法:%s [选项]... 我的文件 旧文件 你的文件\n" -#: src/diff3.c:512 +#: src/diff3.c:510 msgid "Compare three files line by line." msgstr "逐行比较三个文件。" -#: src/diff3.c:522 +#: src/diff3.c:520 msgid "" "\n" "The default output format is a somewhat human-readable representation of\n" @@ -1215,179 +1216,179 @@ msgid "" "robust than using ed.\n" msgstr "" "\n" -"默认的输出格式基本上是人类可读的变更表示方式。\n" +"默认的输出格式将使用可读性尚可的方式表示变更。\n" "\n" -"使用 -e, -E, -x, -X(或对应的长)选项将使用 ed 脚本格式输出而非使用默认格" -"式。\n" +"使用 -e、-E、-x、-X 选项(或对应的长选项)将使用 ed 脚本格式进行输出,\n" +"而非使用默认格式。\n" "\n" -"另外,-m (--merge) 选项将使得 diff3 在内部完成合并并输出实际的已合并文件。\n" -"对那些不常见的输入来说,使用它来处理通常比使用 ed 更稳健。\n" +"另外,-m (--merge) 选项将使得 diff3 在内部完成合并并输出实际的合并后的文" +"件。\n" +"对某些不寻常的输入而言,使用此选项将比使用 ed 更具鲁棒性。\n" -#: src/diff3.c:534 +#: src/diff3.c:532 msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble." -msgstr "退出状态为 0 表示成功,1 表示冲突,2 表示有错误发生。" +msgstr "退出状态为 0 表示成功,1 表示有冲突,2 表示有错误发生。" -#: src/diff3.c:727 +#: src/diff3.c:725 msgid "internal error: screwup in format of diff blocks" -msgstr "内部错误:diff 区段的格式出错" +msgstr "内部错误:diff 块的格式出错" -#: src/diff3.c:1022 +#: src/diff3.c:1015 #, c-format msgid "%s: diff failed: " -msgstr "%s:diff 失败:" +msgstr "%s: diff 失败:" -#: src/diff3.c:1044 +#: src/diff3.c:1037 msgid "internal error: invalid diff type in process_diff" msgstr "内部错误:process_diff 中的 diff 类型无效" -#: src/diff3.c:1069 +#: src/diff3.c:1060 msgid "invalid diff format; invalid change separator" -msgstr "无效的 diff 格式;表示内容改变的分隔字符串无效" +msgstr "无效的 diff 格式;无效的变更分隔符" -#: src/diff3.c:1305 +#: src/diff3.c:1294 msgid "invalid diff format; incomplete last line" msgstr "无效的 diff 格式;最后一行不完整" -#: src/diff3.c:1329 src/sdiff.c:276 src/util.c:969 +#: src/diff3.c:1318 src/sdiff.c:274 src/util.c:1069 #, c-format msgid "subsidiary program '%s' could not be invoked" -msgstr "无法调用辅助程序 “%s”" +msgstr "无法调用辅助程序 \"%s\"" -#: src/diff3.c:1354 +#: src/diff3.c:1343 msgid "invalid diff format; incorrect leading line chars" msgstr "无效的 diff 格式;错误的行前导字符" -#: src/diff3.c:1427 +#: src/diff3.c:1416 msgid "internal error: invalid diff type passed to output" -msgstr "内部错误:传递给输出的 diff 类型无效" +msgstr "内部错误:传递了无效的要输出的 diff 类型" -#: src/diff3.c:1700 src/diff3.c:1757 +#: src/diff3.c:1685 src/diff3.c:1742 msgid "input file shrank" -msgstr "输入文件缩小" +msgstr "输入文件缩小了" -#: src/dir.c:156 +#: src/dir.c:154 #, c-format msgid "cannot compare file names '%s' and '%s'" -msgstr "无法比较文件名 “%s” 和 “%s”" +msgstr "无法比较文件名 \"%s\" 和 \"%s\"" -#: src/dir.c:225 +#: src/dir.c:223 #, c-format msgid "%s: recursive directory loop" -msgstr "%s:递归目录循环" +msgstr "%s: 递归目录循环" #. This is a proper name. See the gettext manual, section Names. #: src/sdiff.c:44 msgid "Thomas Lord" msgstr "Thomas Lord" -#: src/sdiff.c:174 +#: src/sdiff.c:173 msgid "" "-o, --output=FILE operate interactively, sending output to FILE" -msgstr "-o, --output=文件 交互式操作,并将结果写入至<文件>" +msgstr "-o, --output=文件 交互式操作,并将结果写入 <文件>" -#: src/sdiff.c:176 +#: src/sdiff.c:175 msgid "" "-i, --ignore-case consider upper- and lower-case to be the same" -msgstr "-i, --ignore-case 忽略大小写的区别" +msgstr "-i, --ignore-case 忽略大小写" -#: src/sdiff.c:177 +#: src/sdiff.c:176 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" -msgstr "-E, --ignore-tab-expansion 忽略由制表符宽度造成的差异" +msgstr "-E, --ignore-tab-expansion 忽略制表符展开造成的变更" -#: src/sdiff.c:178 +#: src/sdiff.c:177 msgid "-Z, --ignore-trailing-space ignore white space at line end" -msgstr "-Z, --ignore-trailing-space 忽略行末的空格字符" +msgstr "-Z, --ignore-trailing-space 忽略行末的空白字符" -#: src/sdiff.c:179 +#: src/sdiff.c:178 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" -msgstr "-b, --ignore-space-change 忽略由空格数不同造成的差异" +msgstr "-b, --ignore-space-change 忽略空白字符数不同造成的变更" -#: src/sdiff.c:180 +#: src/sdiff.c:179 msgid "-W, --ignore-all-space ignore all white space" msgstr "-W, --ignore-all-space 忽略所有空白字符" -#: src/sdiff.c:181 +#: src/sdiff.c:180 msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank" -msgstr "-B, --ignore-blank-lines 忽略任何因空行而造成的差异" +msgstr "-B, --ignore-blank-lines 忽略所有行均为空行的变更" -#: src/sdiff.c:182 +#: src/sdiff.c:181 msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE" msgstr "" -"-I, --ignore-matching-lines=正则 若某行完全匹配 <正则>,则忽略由该行造成的差" -"异" +"-I, --ignore-matching-lines=正则 忽略所有行均与 <正则> 表达式匹配的变更" -#: src/sdiff.c:183 +#: src/sdiff.c:182 msgid " --strip-trailing-cr strip trailing carriage return on input" -msgstr " --strip-trailing-cr 去除输入内容每行末端的回车(CR)字符" +msgstr " --strip-trailing-cr 去除输入内容行末的回车 (CR) 字符" -#: src/sdiff.c:184 +#: src/sdiff.c:183 msgid "-a, --text treat all files as text" -msgstr "-a --text 所有文件都以文本方式处理" +msgstr "-a, --text 将所有文件视为文本文件" -#: src/sdiff.c:186 +#: src/sdiff.c:185 msgid "" "-w, --width=NUM output at most NUM (default 130) print columns" -msgstr "-W, --width=数量 每行显示最多 <数量>(默认 130)个字符" +msgstr "" +"-W, --width=数字 每行宽度最多 <数字> 个字符(默认为 130 个)" -#: src/sdiff.c:187 +#: src/sdiff.c:186 msgid "" "-l, --left-column output only the left column of common lines" -msgstr "-l, --left-column 当有两行相同时只显示左栏的一行" +msgstr "-l, --left-column 对于相同的行只输出左栏" -#: src/sdiff.c:188 +#: src/sdiff.c:187 msgid "-s, --suppress-common-lines do not output common lines" -msgstr "-s, --suppress-common-lines 当有两行相同时不显示" +msgstr "-s, --suppress-common-lines 对于相同的行不进行输出" -#: src/sdiff.c:190 +#: src/sdiff.c:189 msgid "-t, --expand-tabs expand tabs to spaces in output" -msgstr "-t, --expand-tabs 将输出中的 tab 转换成空格" +msgstr "-t, --expand-tabs 将输出中的制表符展开为空格" -#: src/sdiff.c:191 +#: src/sdiff.c:190 msgid "" " --tabsize=NUM tab stops at every NUM (default 8) print columns" -msgstr " --tabsize=数字 TAB 格的宽度,默认为 8 个打印列宽" +msgstr " --tabsize=数字 制表符宽度(默认为 8)" -#: src/sdiff.c:193 +#: src/sdiff.c:192 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "-d, --minimal 尽可能找出最小的差异集" -#: src/sdiff.c:194 +#: src/sdiff.c:193 msgid "" "-H, --speed-large-files assume large files, many scattered small changes" -msgstr "" -"-H, --speed-large-files 假设文件十分大而且文件中含有许多微小的差异" +msgstr "-H, --speed-large-files 假设文件很大,且含有很多零散的微小变更" -#: src/sdiff.c:195 +#: src/sdiff.c:194 msgid " --diff-program=PROGRAM use PROGRAM to compare files" -msgstr " --diff-program=程序 用<程序>来比较文件" +msgstr " --diff-program=程序 使用 <程序> 来比较文件" -#: src/sdiff.c:197 +#: src/sdiff.c:196 msgid " --help display this help and exit" msgstr " --help 显示此帮助信息并退出" -#: src/sdiff.c:198 +#: src/sdiff.c:197 msgid "-v, --version output version information and exit" -msgstr "-v, --version 输出版本信息并退出" +msgstr "-v, --version 显示版本信息并退出" -#: src/sdiff.c:207 +#: src/sdiff.c:206 #, c-format msgid "Usage: %s [OPTION]... FILE1 FILE2\n" msgstr "用法:%s [选项]... 文件1 文件2\n" -#: src/sdiff.c:209 +#: src/sdiff.c:208 msgid "Side-by-side merge of differences between FILE1 and FILE2." -msgstr "以并排方式合并文件之间的差异。" +msgstr "以并排显示的方式合并 <文件1> 和 <文件2> 之间的差异。" -#: src/sdiff.c:330 +#: src/sdiff.c:328 msgid "cannot interactively merge standard input" -msgstr "不允许以交互方式合并标准输入的内容" +msgstr "不允许交互式合并标准输入的内容" -#: src/sdiff.c:597 +#: src/sdiff.c:594 msgid "both files to be compared are directories" -msgstr "两个要被比较的文件都是目录" +msgstr "两个要比较的文件都是目录" -#: src/sdiff.c:820 +#: src/sdiff.c:817 msgid "" "ed:\tEdit then use both versions, each decorated with a header.\n" "eb:\tEdit then use both versions.\n" @@ -1400,23 +1401,23 @@ msgid "" "v:\tVerbosely include common lines.\n" "q:\tQuit.\n" msgstr "" -"ed:编辑然后同时使用两边的版本,各版本分别加上标头以识别。\n" -"eb:编辑然后同时使用两边的版本。\n" -"el 或 e1:编辑然后使用左边的版本。\n" -"er 或 e2:编辑然后使用右边的版本。\n" -"e :丢弃两者然后编辑新的版本。\n" -"l 或 1:使用左边的版本。\n" -"r 或 2:使用右边的版本。\n" -"s :加上两边一样的行时不在输出上显示。\n" -"v :加上两边一样的行时会在输出上显示。\n" -"q :退出。\n" - -#: src/util.c:662 +"ed:\t编辑两个版本的内容,然后使用。两个版本分别加上头部以便识别。\n" +"eb:\t编辑两个版本的内容,然后使用。\n" +"el 或 e1:\t编辑左边的版本,然后使用。\n" +"er 或 e2:\t编辑右边的版本,然后使用。\n" +"e:\t丢弃两个版本的内容,然后编辑一个新的版本。\n" +"l 或 1:\t使用左边的版本。\n" +"r 或 2:\t使用右边的版本。\n" +"s:\t复制共有的行,且不显示输出\n" +"v:\t复制共有的行,且显示详细输出\n" +"q:\t退出。\n" + +#: src/util.c:755 #, c-format msgid "unrecognized prefix: %s" msgstr "无法识别的前缀:%s" -#: src/util.c:692 +#: src/util.c:785 #, c-format msgid "unparsable value for --palette" msgstr "--palette 的值无法解析" diff --git a/po/zh_TW.gmo b/po/zh_TW.gmo index 6fbadcb97ad99e27ecc9a3b740df6d93dda5d58a..4d89c04fab8c6a69f6e5117b481c40fd9c1bf295 100644 GIT binary patch delta 6553 zcmZwL30Rd?9>?*6iW=Iuf{F_-DB^;Ipr+sgZn)yEnd?32Wpock{4J?FeH*RKEJ zle4mtqqJ_7O^U6$k5Wx=e08NPlnZK0t5QaQQZuLrV=wBf8z|KiKQ*n>kT&Wgu?v2S zov~3PrRL*sd>OA|C#({vR7Z@(Xr&x#HiZNl_Fy0U9$&}k#!B_aBN&IzFcxF!rR+Z! zrM(2VplYhrAlQoXy&HRDL^Iv-3>-}TJ(Ldm1}Qa=>#Ob*dEAJF zjKGLsrA|=)IYg|!sYqOe_3$v(!3#*=)pZQV$0++Z3#D@o3f(D$ z;Vf*0n~ixrUDD_d;8~0*AypMgb11FdBF2I3Uh%%KA z(Gf=>nr~y!j`GD}lo9z66EMEDb`>t7{u#%a4pJlU!sg$(>UOP&uWjGdP^_HS^)Ssm* zCmM{h{}z-RDMh*CK<+|T`E-oK?I_2UVmA!n%dR-mL18e3H!%*s#U5yIH5sDGC_C;z z>A)>MWJKz5Hff)Pa(n@DZS@^C!)7dT)~o7S%wH<4q;~a%r6fU6*$qkeq z8eR09PQ;efccYy65;j1O*)9_+9STDk`V5r)_h0~CMOn;uQ92^SB*!;F9t4N#K%ou| zV=)kC;tRL}i|`HXkFnftZCs8uaWhuOLTrQwQ9Ae`$_=?ppJ09JzTB1EaUeFwmfkw^ zKY)Tqh*O{huCOEt_#19#(Wynu3nj?ACjP(0Sf5g3X|C>>dA ze!oj}(BP!d3@@VGSsC(98dz23CNCaa=|C)9T{GG@^l2DoG=>Yj(Vcpu?78bK32zNC>>je*O|h69F6INluDH6 z|D(bB6&gS-o*lKJ~AjOa-tsc zr6?UbjluX786*`rN&l@#MIIn^3}r-r!EP8onb$iykS9~!K-n+I!uZ=LBw6&F+(5Z- ziz#~OlabL=CHN8sOw}joi*kXrC_{S*mM@E6z%{jIuvEXr}atPcIF z^#`*dJW2mJT!H&lo{sC#e; zwt7u3>H`i6FVo;g7Pe|OQ~zC0#V*tjU~hC`G`3069hitRBKuJ8@Jo!tfLZ+N!7UU7~uQpGQYy*@jjzhUl7CIs+qWExqo^N4>3|Dm%IYo9ciI)3QlEr%a3NO4T$B#wp>+5ZN(ZhiVEkn< zeMduE^vlw#yc5cfuVFYYMCnKocENI#p$&drU$8gIVw{4~v1Mlc7|PUM!>V{2{m_GH zKKujcb;iE|4O18CUn*Hxh5Bxk4(vl2!ZX+bFJmYC16yM!j+Z;0jMAY+C>_~_a{L7} z@C%fV{fr$kbg_OPjB`+s6Kuogcp9Zc-=JLh3CbP#X6vb`i;bzb#Xw9znYt;a^HBC* zZ@LYoBm1!t7Nbn@b(E*V@qmIH@Dyc7-zD0HDD7=ghORTpg?gCvQResK&Guxo?l4_z zy47?q%8feB`ezs{&wnWe>5*EhFW3lWBwC`3!~m3$n1a>OhSISt^uaac7xE^l*gi4~ z+cALjB|j3@vpP*=`;`2J>+63;QIV6&ww~M}6QuIocEv2u$8xj$63TkGZ`S#9pw5`( zC|qooD_B9{6#0^bld4?*f3|hh9+@rjr*bWkg}0GhCzAGLh>(6BGE5ZG%QRu@}iT>#a?9VYFHPtEmu5-XQYAlIh~fQU;N2 z2f0ChAo)bLnWUP`o8BBMjzXbXt7f_YkCPfi=GsGK`xmM2E$I(g7c0qs$OnX{Qu%Ol zdDMO)`-yCuG~ORKX3@(M8HblC{@HB3_1w3wQcfqc$j{^n`Ifvz#*kkL?;-EjlFzw> zpAp{wlXeYRpDLSFY&jH$kXB?GSx)ZCJjfrD7fEN*i1Z_}Jtp!RmF+1h@|N^R3``|e zNEta#Mw0I2AW0)vNpo_5$W}lyy(Rs#Y#C+8D6?Uq=>XGJ=xff?$CUp@4wHeTVynvc z&8U1sZj+3PFHl}mC1$-n{ze{{^|x^|8S7n#oTMj}okX^M8t>d2j+*tR*oMTD@n%~?({0}8fJzrq$!r{qTgXLXAs5IiNy_l48uTrlcF08Of>BjfBKeMn+naeXhl3jWN20W^{Mf=rYsCF(`SeH8sO(Bn%xi zC%SEncR$JoUCBsJOEsdU6DbzE)#g1Y!f)gZ`pSPvHmmiyGtN)TG&r?xwx=0WXIN6F zTMbLONZ zZne!yw%e`Kj4AW!z}yHwXJ*V0A75*Fn$7M!5$jvCc2aVR)tF|@m}*N-x2M@MoJSHG z_*Cf}(IGnTO23{jMz@QMY8M%8M7EEKip&e_UzXQ>K+6pSy5~(9P~SH?A}S)vnKhtO zr5^uhhFnM1dCs14tvpk9YPDz8v4>~3d1uL$d$_E4k9*7EipjdWINLij%`4{2aOZ3` z=geqzZ|57H{fAtO&$hn1c!_tv;PT@eD`w0nKeWod`D{hCVgic>oev2sJ6BS^aldym zJjFZi9oSf&zpU)kVo%ONPf?M3%le0B^Sx7;l(y8zp{LGpug`HGT|<5fRsdXMN|}@plGs)ED9nDgo*+#nU!1a3ht7Y`_oc%(r6kdO)V?T z7PHM)R&KeBrDl#zS}tYQxMVs`rJ2*B^ZUPZ_|*A){_lIvd3QPY+;i{a!;-~8M{jz3 zr|O10VJN{KW13)Es4;`67u8m;G4DngQ$qVayn}X3q%nCo#`!X4(!PWl7}wC4nK%?X z;Bjn^bs8Cyjs=*C^RT-yKC_8RS2}*dIhfPfm>#$tbFg}pF|hq6`VZoh7|y7R z@CDTOS1=#5n%V)+$70(5zznP#ZA>8+Vln48E2+$+<1FUl&}PQ$z~^usS3b;Z%-gg> zVvOmATd)*8vBt288IQ@h6zkzOtb>PXxeTa3EmH}DSp4RbK374zSb$^t6- zVjF6zbaYK+FXsxJNBb0J;gH*n>4~dQ`<+3}Tx&+DdpizwOV*-}f6=w$;*IG{`+n4M zHpMglS|pe0NW(bhNe38&8u4RTfG1H?+#=B)xIcEIU5R;k0o!2$^ST)CL(RZB)cy%= z?SQAF_S=c&SUs8f*9H|FT|0b^YB%L*3vmo;^hekU?O{KiYB5q+=v>$1=NgqX{dh!>Hsez$2LD> zG{$qb=GYUp_$Ija64aX7fMIw5YoYHmDw>jWs1YXejOd<@$2fc)b>Po15`RJsBs|kj z`2f^*OR)iNLM`I`r~#Zq?H9yCU_G10SO>dcV?Fjjwx0hzRNkcH2y$#w&iq!#UFgOA zI2FG`9e6O)q$?=Fx;P74;-jbm_}%yWoF`BNzJ$7Tg0hDT8c z+J+kGC&<{$x2SvFf`!5YHuqvYEQ&A@@bdEvI!~%@L zXHom@!5Vl3b=I8YH#nuNkfWfH6GZ{5?b5I8=$7;9+Z^KH| z6u;^Eci}Cx_qp~VOrU)fbsk?3uRBdiZLEh0r~~DouB12WN++SNpd3T-anyiT<56zi zi+DHA?a9KT|45;IL&g@_--c4mqW=}tQ+6I#>-modlE#e8U>r!f(;2H017Db}I= z64vAVW($?ZcnGx?E?_gP#opSnEow0hK`+in-IC{A|9cor`wQ1T?b^YE?1fZE9srYp zT$`DTnyJI+>rAEEVEf#6MJ~>aMV>gb651`go@F@F+&A?@}$By#Z-}|d{$0m!M1o6b%ia) z1zz7~B(hM=^QbGihB`sp@%Hb6v8XFsiz)ai@?@E66YPNcp-xzVT1%f|Gi7955LklSnGC-K9Bk6;Yeo6Ij7ws-bM9t=~0J#ahf!m3ZP zFSKsR_C7Pfb(CR!HdusFxZ3q^#t7Q`@mBl_+u;SQg;7)Oizpt|&OlvZfpaYC$EzG~ z!>6$xZp1LoZ+24A2@eK3_?bnW@G9!cYOthhV&X|KIuo_0)Z%-J5++LH5nz;>F z2REYzwht5W7}mvV(>M?3H;q)mw%7u@qIMXEt#KA=ajipL*(prM-%ClNo=GX(op_g_h zYG4B~9hYDi+<`j44UEMmbM1g~P$#|@YhnpD#OWA?71$UzUlljfqxRp2+&Qy|lo9of(9v02<_6JALW^%HQCUY; zlM`yVvJ4lJhsY=71M)PfPQD^4JY8mEpk~)h5%pWh|H$KH6H(#KPGMA4r5%-#WOr2u zau)*SM?Sse^FWJ#CSabcixuQi60L?S>+x3-r#6@V2>f03Kb3Jh|3268SL{RHBAUV= zb~=PArvsmVd>o~Ei6s2dW!|S=LcS%R61}wAlB)6pl`X_i`nt}*^=G<9J*Rlx)hFZK zu3m+nc@Kko*L7UO-sB1yMp~2K$ONL&fE1F;YEbk}X+^%*{D)C_gS<>Sk+r0fsQgZz zBn!xPvX%U~p;tz1Q&zqGxoX z>w6IolP<0uii1dJ*WQeS$uZK%^-afjNHS^f`o6?DB$vGD`u1x6>yw|!FXUeG8hM+j zJV^QnYW5=%ULZ@z6!JHs_rb$N^wcMz5R zWDIGj24#jN@R`MDg=>F@1!NYvN>xxZD%Qjb5YQ!kJI z>FjG^{#Sd1dqUbLwd=5aN6)} diff --git a/po/zh_TW.po b/po/zh_TW.po index d90183a..cc93fda 100644 --- a/po/zh_TW.po +++ b/po/zh_TW.po @@ -3,46 +3,46 @@ # This file is distributed under the same license as the diffutils package. # # Abel Cheung , 2002, 2005. -# pan93412 , 2019, 2021. +# pan93412 , 2019, 2021, 2023. msgid "" msgstr "" -"Project-Id-Version: diffutils 3.6.17\n" +"Project-Id-Version: diffutils 3.8.43\n" "Report-Msgid-Bugs-To: bug-diffutils@gnu.org\n" -"POT-Creation-Date: 2021-08-01 18:56-0700\n" -"PO-Revision-Date: 2021-05-09 20:53+0800\n" +"POT-Creation-Date: 2023-05-21 01:51-0700\n" +"PO-Revision-Date: 2023-02-03 01:20+0800\n" "Last-Translator: Yi-Jyun Pan \n" "Language-Team: Chinese (traditional) \n" "Language: zh_TW\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Bugs: Report translation errors to the Language-Team address.\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Poedit 2.4.3\n" +"X-Bugs: Report translation errors to the Language-Team address.\n" +"X-Generator: Poedit 3.2.2\n" -#: lib/argmatch.c:132 +#: lib/argmatch.c:145 #, c-format msgid "invalid argument %s for %s" msgstr "傳入 %2$s 之參數 %1$s 無效" -#: lib/argmatch.c:133 +#: lib/argmatch.c:146 #, c-format msgid "ambiguous argument %s for %s" msgstr "傳入 %2$s 之參數 %1$s 不明確" -#: lib/argmatch.c:152 lib/argmatch.h:223 +#: lib/argmatch.c:165 lib/argmatch.h:242 msgid "Valid arguments are:" msgstr "有效的參數為:" -#: lib/c-stack.c:187 +#: lib/c-stack.c:186 msgid "program error" msgstr "程式錯誤" -#: lib/c-stack.c:188 +#: lib/c-stack.c:187 msgid "stack overflow" msgstr "堆疊溢出" -#: lib/error.c:195 +#: lib/error.c:193 msgid "Unknown system error" msgstr "未知系統錯誤" @@ -198,83 +198,83 @@ msgstr "%s:選項需要參數 -- '%c'\n" #. If you don't know what to put here, please see #. #. and use glyphs suitable for your language. -#: lib/quotearg.c:355 +#: lib/quotearg.c:354 msgid "`" msgstr "「" -#: lib/quotearg.c:356 +#: lib/quotearg.c:355 msgid "'" msgstr "」" -#: lib/regcomp.c:135 +#: lib/regcomp.c:122 msgid "Success" msgstr "成功" -#: lib/regcomp.c:138 +#: lib/regcomp.c:125 msgid "No match" msgstr "無符合項目" -#: lib/regcomp.c:141 +#: lib/regcomp.c:128 msgid "Invalid regular expression" msgstr "正規表示式無效" -#: lib/regcomp.c:144 +#: lib/regcomp.c:131 msgid "Invalid collation character" msgstr "定序字元無效" -#: lib/regcomp.c:147 +#: lib/regcomp.c:134 msgid "Invalid character class name" msgstr "字元類型名稱無效" -#: lib/regcomp.c:150 +#: lib/regcomp.c:137 msgid "Trailing backslash" msgstr "末尾反斜線" -#: lib/regcomp.c:153 +#: lib/regcomp.c:140 msgid "Invalid back reference" msgstr "向後參考無效" -#: lib/regcomp.c:156 +#: lib/regcomp.c:143 msgid "Unmatched [, [^, [:, [., or [=" msgstr "不對稱的 [、[^、[:、[. 或 [=" -#: lib/regcomp.c:159 +#: lib/regcomp.c:146 msgid "Unmatched ( or \\(" msgstr "不對稱的 ( 或 \\(" -#: lib/regcomp.c:162 +#: lib/regcomp.c:149 msgid "Unmatched \\{" msgstr "不對稱的 \\{" -#: lib/regcomp.c:165 +#: lib/regcomp.c:152 msgid "Invalid content of \\{\\}" msgstr "\\{\\} 中內容無效" -#: lib/regcomp.c:168 +#: lib/regcomp.c:155 msgid "Invalid range end" msgstr "結束範圍無效" -#: lib/regcomp.c:171 +#: lib/regcomp.c:158 msgid "Memory exhausted" msgstr "記憶體用盡" -#: lib/regcomp.c:174 +#: lib/regcomp.c:161 msgid "Invalid preceding regular expression" msgstr "前置正規表示式無效" -#: lib/regcomp.c:177 +#: lib/regcomp.c:164 msgid "Premature end of regular expression" msgstr "正規表示式過早結束" -#: lib/regcomp.c:180 +#: lib/regcomp.c:167 msgid "Regular expression too big" msgstr "正規表示式過長" -#: lib/regcomp.c:183 +#: lib/regcomp.c:170 msgid "Unmatched ) or \\)" msgstr "不對稱的 ) 或 \\)" -#: lib/regcomp.c:676 +#: lib/regcomp.c:650 msgid "No previous regular expression" msgstr "沒有上一個正規表示式" @@ -306,7 +306,7 @@ msgstr "無法使用 %2$s 模式重開啟 %1$s" #: lib/xstdopen.c:34 #, c-format msgid "standard file descriptors" -msgstr "" +msgstr "標準檔案描述元" #: lib/version-etc.c:73 #, c-format @@ -327,18 +327,15 @@ msgstr "(C)" #. TRANSLATORS: The %s placeholder is the web address of the GPL license. #: lib/version-etc.c:88 -#, fuzzy, c-format +#, c-format msgid "" "License GPLv3+: GNU GPL version 3 or later <%s>.\n" "This is free software: you are free to change and redistribute it.\n" "There is NO WARRANTY, to the extent permitted by law.\n" msgstr "" -"\n" -"GPLv3+ 授權條款:GNU GPL 第 3 版或更新版本 。\n" +"GPLv3+ 授權條款:GNU GPL 第 3 版或更新版本 <%s>。\n" "這是自由軟體:您可隨意變更及重散佈。\n" "在法律允許的範圍內沒有任何保障。\n" -"\n" #. TRANSLATORS: %s denotes an author name. #: lib/version-etc.c:105 @@ -452,11 +449,9 @@ msgstr "" #. "Report translation bugs to <...>\n" with the address for translation #. bugs (typically your translation team's web or email address). #: lib/version-etc.c:249 -#, fuzzy, c-format +#, c-format msgid "Report bugs to: %s\n" -msgstr "" -"\n" -"請回報臭蟲至:%s\n" +msgstr "請回報臭蟲至:%s\n" #: lib/version-etc.c:251 #, c-format @@ -469,21 +464,21 @@ msgid "%s home page: <%s>\n" msgstr "%s 首頁:<%s>\n" #: lib/version-etc.c:260 -#, fuzzy, c-format +#, c-format msgid "General help using GNU software: <%s>\n" -msgstr "使用 GNU 軟體的一般說明:\n" +msgstr "使用 GNU 軟體的一般說明:<%s>\n" -#: src/analyze.c:454 src/diff.c:1406 +#: src/analyze.c:455 src/diff.c:1478 #, c-format msgid "Files %s and %s differ\n" msgstr "檔案 %s 與 %s 不同\n" -#: src/analyze.c:455 +#: src/analyze.c:456 #, c-format msgid "Binary files %s and %s differ\n" msgstr "二元碼檔 %s 與 %s 不同\n" -#: src/analyze.c:706 src/diff3.c:1470 src/util.c:1254 +#: src/analyze.c:707 src/diff3.c:1457 src/util.c:1354 msgid "No newline at end of file" msgstr "檔案末沒有 newline 字元" @@ -497,39 +492,40 @@ msgstr "Torbjorn Granlund" msgid "David MacKenzie" msgstr "David MacKenzie" -#: src/cmp.c:120 src/diff.c:879 src/diff3.c:467 src/sdiff.c:160 +#: src/cmp.c:124 src/diff.c:939 src/diff3.c:465 src/sdiff.c:159 #, c-format msgid "Try '%s --help' for more information." msgstr "請嘗試「%s --help」取得更多資訊。" -#: src/cmp.c:138 +#: src/cmp.c:142 #, c-format msgid "invalid --ignore-initial value '%s'" msgstr "--ignore-initial 值「%s」無效" -#: src/cmp.c:148 +#: src/cmp.c:152 #, c-format msgid "options -l and -s are incompatible" msgstr "-l 和 -s 選項不兼容" -#: src/cmp.c:156 src/diff.c:887 src/diff3.c:474 src/sdiff.c:168 src/sdiff.c:316 -#: src/sdiff.c:323 src/sdiff.c:876 src/util.c:852 src/util.c:952 src/util.c:959 +#: src/cmp.c:160 src/diff.c:947 src/diff3.c:472 src/sdiff.c:167 src/sdiff.c:314 +#: src/sdiff.c:321 src/sdiff.c:873 src/util.c:952 src/util.c:1052 +#: src/util.c:1059 msgid "write failed" msgstr "寫入失敗" -#: src/cmp.c:158 src/diff.c:889 src/diff.c:1471 src/diff3.c:476 src/sdiff.c:170 +#: src/cmp.c:162 src/diff.c:949 src/diff.c:1543 src/diff3.c:474 src/sdiff.c:169 msgid "standard output" msgstr "標準輸出" -#: src/cmp.c:162 +#: src/cmp.c:166 msgid "-b, --print-bytes print differing bytes" msgstr "-b, --print-bytes 輸出相異位置的位元組" -#: src/cmp.c:163 +#: src/cmp.c:167 msgid "-i, --ignore-initial=SKIP skip first SKIP bytes of both inputs" msgstr "-i, --ignore-initial=SKIP 跳過兩個輸入資料的開頭 SKIP 位元組。" -#: src/cmp.c:164 +#: src/cmp.c:168 msgid "" "-i, --ignore-initial=SKIP1:SKIP2 skip first SKIP1 bytes of FILE1 and\n" " first SKIP2 bytes of FILE2" @@ -537,37 +533,37 @@ msgstr "" "-i, --ignore-initial=SKIP1:SKIP2 跳過 <檔案1> 的最初 SKIP1 位元組,及\n" " <檔案2> 的最初 SKIP2 位元組" -#: src/cmp.c:166 +#: src/cmp.c:170 msgid "" "-l, --verbose output byte numbers and differing byte values" msgstr "-l, --verbose 輸出位元數及不同的位元值" -#: src/cmp.c:167 +#: src/cmp.c:171 msgid "-n, --bytes=LIMIT compare at most LIMIT bytes" msgstr "-n, --bytes=LIMIT 最多比較 LIMIT 個位元組" -#: src/cmp.c:168 +#: src/cmp.c:172 msgid "-s, --quiet, --silent suppress all normal output" msgstr "-s, --quiet, --silent 隱藏所有一般輸出" -#: src/cmp.c:169 +#: src/cmp.c:173 msgid " --help display this help and exit" msgstr " --help 顯示此說明後離開" -#: src/cmp.c:170 +#: src/cmp.c:174 msgid "-v, --version output version information and exit" msgstr "-v, --version 輸出版本資訊後離開" -#: src/cmp.c:179 +#: src/cmp.c:183 #, c-format msgid "Usage: %s [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]\n" msgstr "用法:%s [選項]... 檔案1 [檔案2 [SKIP1 [SKIP2]]]\n" -#: src/cmp.c:181 +#: src/cmp.c:185 msgid "Compare two files byte by byte." msgstr "比較兩個檔案的每一個位元組。" -#: src/cmp.c:183 +#: src/cmp.c:187 msgid "" "The optional SKIP1 and SKIP2 specify the number of bytes to skip\n" "at the beginning of each file (zero by default)." @@ -575,12 +571,12 @@ msgstr "" "選用的 SKIP1 及 SKIP2 指定了要在每個檔案開頭略過的\n" "位元組數目 (0 為預設值)。" -#: src/cmp.c:186 src/diff.c:999 src/diff3.c:514 src/sdiff.c:211 +#: src/cmp.c:190 src/diff.c:1059 src/diff3.c:512 src/sdiff.c:210 msgid "" "Mandatory arguments to long options are mandatory for short options too.\n" msgstr "長選項的必選參數,對短選項亦然。\n" -#: src/cmp.c:192 +#: src/cmp.c:196 msgid "" "SKIP values may be followed by the following multiplicative suffixes:\n" "kB 1000, K 1024, MB 1,000,000, M 1,048,576,\n" @@ -590,253 +586,253 @@ msgstr "" "kB=1000、K=1024、MB=1000000、M=1048576、GB=1000000000、G=1073741824,\n" "還有 T、P、E、Z、Y 如此類推。" -#: src/cmp.c:195 +#: src/cmp.c:199 msgid "If a FILE is '-' or missing, read standard input." msgstr "如果檔案是「-」或沒有指定,則由標準輸入讀入資料。" -#: src/cmp.c:196 src/diff.c:987 src/sdiff.c:221 +#: src/cmp.c:200 src/diff.c:1047 src/sdiff.c:220 msgid "Exit status is 0 if inputs are the same, 1 if different, 2 if trouble." msgstr "如果兩邊內容一樣,回傳值是 0;1 代表兩邊內容不相同,2 代表有錯誤。" -#: src/cmp.c:243 +#: src/cmp.c:247 #, c-format msgid "invalid --bytes value '%s'" msgstr "無效的 --bytes 值「%s」" -#: src/cmp.c:269 src/diff.c:797 src/diff3.c:361 src/sdiff.c:567 +#: src/cmp.c:273 src/diff.c:857 src/diff3.c:368 src/sdiff.c:564 #, c-format msgid "missing operand after '%s'" msgstr "「%s」後缺少了參數" -#: src/cmp.c:281 src/diff.c:799 src/diff3.c:363 src/sdiff.c:569 +#: src/cmp.c:285 src/diff.c:859 src/diff3.c:370 src/sdiff.c:566 #, c-format msgid "extra operand '%s'" msgstr "多餘的參數「%s」" -#: src/cmp.c:507 +#: src/cmp.c:521 #, c-format msgid "%s %s differ: byte %s, line %s\n" msgstr "%s %s 不同:第 %s 位元組,第 %s 行\n" -#: src/cmp.c:523 +#: src/cmp.c:537 #, c-format msgid "%s %s differ: byte %s, line %s is %3o %s %3o %s\n" msgstr "%s %s 不同:第 %s 行,第 %s 位元組為 %3o %s %3o %s\n" -#: src/cmp.c:580 +#: src/cmp.c:594 #, c-format msgid "cmp: EOF on %s which is empty\n" msgstr "cmp:有 EOF 在空白的 %s 上\n" -#: src/cmp.c:594 +#: src/cmp.c:608 #, c-format msgid "cmp: EOF on %s after byte %s, line %s\n" msgstr "cmp:有 EOF 在 %s 的第 %s 位元組,第 %s 行後\n" -#: src/cmp.c:595 +#: src/cmp.c:609 #, c-format msgid "cmp: EOF on %s after byte %s, in line %s\n" msgstr "cmp:有 EOF 在 %s 的第 %s 位元組後,在第 %s 行\n" -#: src/cmp.c:601 +#: src/cmp.c:615 #, c-format msgid "cmp: EOF on %s after byte %s\n" msgstr "cmp:有 EOF 在 %s 的第 %s 位元組後\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:51 +#: src/diff.c:50 msgid "Paul Eggert" msgstr "Paul Eggert" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:52 +#: src/diff.c:51 msgid "Mike Haertel" msgstr "Mike Haertel" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:53 +#: src/diff.c:52 msgid "David Hayes" msgstr "David Hayes" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:54 +#: src/diff.c:53 msgid "Richard Stallman" msgstr "Richard Stallman" #. This is a proper name. See the gettext manual, section Names. -#: src/diff.c:55 +#: src/diff.c:54 msgid "Len Tower" msgstr "Len Tower" -#: src/diff.c:355 +#: src/diff.c:365 #, c-format msgid "invalid context length '%s'" msgstr "無效的上下文長度「%s」" -#: src/diff.c:438 +#: src/diff.c:487 #, c-format msgid "pagination not supported on this host" msgstr "此系統不支援分頁" -#: src/diff.c:453 src/diff3.c:341 +#: src/diff.c:502 src/diff3.c:348 #, c-format msgid "too many file label options" msgstr "太多有關檔案標籤的選項" -#: src/diff.c:530 +#: src/diff.c:579 #, c-format msgid "invalid width '%s'" msgstr "無效的寬度「%s」" -#: src/diff.c:534 +#: src/diff.c:583 msgid "conflicting width options" msgstr "出現互相抵觸的寬度選項" -#: src/diff.c:559 +#: src/diff.c:608 #, c-format msgid "invalid horizon length '%s'" msgstr "無效的水平長度「%s」" -#: src/diff.c:615 +#: src/diff.c:664 #, c-format msgid "invalid tabsize '%s'" msgstr "無效的定位字元寬度「%s」" -#: src/diff.c:619 +#: src/diff.c:668 msgid "conflicting tabsize options" msgstr "出現互相抵觸的定位字元寬度選項" -#: src/diff.c:774 +#: src/diff.c:834 msgid "--from-file and --to-file both specified" msgstr "同時指定了 --from-file 及 --to-file 選項" -#: src/diff.c:893 +#: src/diff.c:953 msgid " --normal output a normal diff (the default)" msgstr " --normal 輸出一般 diff (預設值)" -#: src/diff.c:894 +#: src/diff.c:954 msgid "-q, --brief report only when files differ" msgstr "-q, --brief 僅在檔案不同時回報" -#: src/diff.c:895 +#: src/diff.c:955 msgid "-s, --report-identical-files report when two files are the same" msgstr "-s, --report-identical-files 當兩個檔案一樣時仍然顯示結果" -#: src/diff.c:896 +#: src/diff.c:956 msgid "" "-c, -C NUM, --context[=NUM] output NUM (default 3) lines of copied context" msgstr "-c, -C NUM, --context[=NUM] 輸出 NUM (預設 3) 行複製 (copied) 上下文" -#: src/diff.c:897 +#: src/diff.c:957 msgid "" "-u, -U NUM, --unified[=NUM] output NUM (default 3) lines of unified context" msgstr "" "-u, -U NUM, --unified[=NUM] 輸出 NUM (預設 3) 行統一 (unified) 上下文" -#: src/diff.c:898 +#: src/diff.c:958 msgid "-e, --ed output an ed script" msgstr "-e, --ed 輸出 ed 文稿" -#: src/diff.c:899 +#: src/diff.c:959 msgid "-n, --rcs output an RCS format diff" msgstr "-n, --rcs 輸出 RCS 格式的 diff" -#: src/diff.c:900 +#: src/diff.c:960 msgid "-y, --side-by-side output in two columns" msgstr "-y, --side-by-side 輸出成兩列" -#: src/diff.c:901 +#: src/diff.c:961 msgid "" "-W, --width=NUM output at most NUM (default 130) print columns" msgstr "-W, --width=NUM 輸出最多 NUM (預設 130) 輸出列" -#: src/diff.c:902 +#: src/diff.c:962 msgid "" " --left-column output only the left column of common lines" msgstr " --left-column 當有兩行相同時只顯示左邊的一行" -#: src/diff.c:903 +#: src/diff.c:963 msgid " --suppress-common-lines do not output common lines" msgstr " --suppress-common-lines 不輸出相同行" -#: src/diff.c:905 +#: src/diff.c:965 msgid "-p, --show-c-function show which C function each change is in" msgstr "-p, --show-c-function 顯示 C 函數變更的地方" -#: src/diff.c:906 +#: src/diff.c:966 msgid "-F, --show-function-line=RE show the most recent line matching RE" msgstr "-F, --show-function-line=RE 顯示最接近符合 RE 的行" -#: src/diff.c:907 +#: src/diff.c:967 msgid "" " --label LABEL use LABEL instead of file name and timestamp\n" " (can be repeated)" msgstr "" " --label 標籤 使用 <標籤> 而不用檔名及時間戳 (可以重複)" -#: src/diff.c:910 +#: src/diff.c:970 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "-t, --expand-tabs 將輸出中的 tab 換成空格" -#: src/diff.c:911 +#: src/diff.c:971 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "-T, --initial-tab 每行先加上 tab 字元,使 tab 字元可以對齊" -#: src/diff.c:912 +#: src/diff.c:972 msgid "" " --tabsize=NUM tab stops every NUM (default 8) print columns" msgstr "" " --tabsize=NUM 定位字元 (tab) 的寬度,預設為 8 個輸出列。" -#: src/diff.c:913 +#: src/diff.c:973 msgid "" " --suppress-blank-empty suppress space or tab before empty output lines" msgstr " --suppress-blank-empty 隱藏每個空輸出行前的空白及 Tab" -#: src/diff.c:914 +#: src/diff.c:974 msgid "-l, --paginate pass output through 'pr' to paginate it" msgstr "-l, --paginate 將輸出送至「pr」指令來分頁" -#: src/diff.c:916 +#: src/diff.c:976 msgid "" "-r, --recursive recursively compare any subdirectories found" msgstr "-r, --recursive 遞迴比較所有找到的子目錄" -#: src/diff.c:917 +#: src/diff.c:977 msgid " --no-dereference don't follow symbolic links" msgstr " --no-dereference 不追蹤符號連結" -#: src/diff.c:918 +#: src/diff.c:978 msgid "-N, --new-file treat absent files as empty" msgstr "-N, --new-file 將不存在的檔案當作空檔案處理" -#: src/diff.c:919 +#: src/diff.c:979 msgid " --unidirectional-new-file treat absent first files as empty" msgstr " --unidirectional-new-file 將第一個不存在檔案當作空檔案處理" -#: src/diff.c:920 +#: src/diff.c:980 msgid " --ignore-file-name-case ignore case when comparing file names" msgstr " --ignore-file-name-case 比較檔案名稱時不區分大小寫" -#: src/diff.c:921 +#: src/diff.c:981 msgid " --no-ignore-file-name-case consider case when comparing file names" msgstr " --no-ignore-file-name-case 比較檔案名稱時會區分大小寫" -#: src/diff.c:922 +#: src/diff.c:982 msgid "-x, --exclude=PAT exclude files that match PAT" msgstr "-x, --exclude=PAT 排除符合 PAT 的檔案" -#: src/diff.c:923 +#: src/diff.c:983 msgid "" "-X, --exclude-from=FILE exclude files that match any pattern in FILE" msgstr "-X, --exclude-from=檔案 排除符合 <檔案> 中任何樣式的檔案" -#: src/diff.c:924 +#: src/diff.c:984 msgid "" "-S, --starting-file=FILE start with FILE when comparing directories" msgstr "-S, --starting-file=檔案 比較目錄時從 <檔案> 開始" -#: src/diff.c:925 +#: src/diff.c:985 msgid "" " --from-file=FILE1 compare FILE1 to all operands;\n" " FILE1 can be a directory" @@ -844,7 +840,7 @@ msgstr "" " --from-file=檔案1 將 <檔案1> 和參數中的所有檔案/目錄作比較;\n" " <檔案1> 可以是目錄" -#: src/diff.c:927 +#: src/diff.c:987 msgid "" " --to-file=FILE2 compare all operands to FILE2;\n" " FILE2 can be a directory" @@ -852,80 +848,80 @@ msgstr "" " --to-file=檔案2 將參數中的所有檔案/目錄和 <檔案2> 作比較;\n" " <檔案2> 可以是目錄" -#: src/diff.c:930 +#: src/diff.c:990 msgid "" "-i, --ignore-case ignore case differences in file contents" msgstr "-i, --ignore-case 不區分檔案內容的大小寫" -#: src/diff.c:931 +#: src/diff.c:991 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "-E, --ignore-tab-expansion 忽略因 Tab 展開所致的變更" -#: src/diff.c:932 +#: src/diff.c:992 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "-Z, --ignore-trailing-space 忽略行末空白" -#: src/diff.c:933 +#: src/diff.c:993 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "-b, --ignore-space-change 忽略因空白數變更所致的變更" -#: src/diff.c:934 +#: src/diff.c:994 msgid "-w, --ignore-all-space ignore all white space" msgstr "-w, --ignore-all-space 忽略所有空白" -#: src/diff.c:935 +#: src/diff.c:995 msgid "" "-B, --ignore-blank-lines ignore changes where lines are all blank" msgstr "-B, --ignore-blank-lines 忽略空列的變更" -#: src/diff.c:936 +#: src/diff.c:996 msgid "-I, --ignore-matching-lines=RE ignore changes where all lines match RE" msgstr "-I, --ignore-matching-lines=RE 忽略所有列都符合 RE 的變更" -#: src/diff.c:938 +#: src/diff.c:998 msgid "-a, --text treat all files as text" msgstr "-a, --text 所有檔案都以文字檔方式處理" -#: src/diff.c:939 +#: src/diff.c:999 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr 去除輸入資料每行末端的 carriage return 字元" -#: src/diff.c:941 +#: src/diff.c:1001 msgid " --binary read and write data in binary mode" msgstr " --binary 以二進位模式讀寫資料。" -#: src/diff.c:944 +#: src/diff.c:1004 msgid "" "-D, --ifdef=NAME output merged file with '#ifdef NAME' diffs" msgstr "" "-D, --ifdef=NAME 輸出包含 '#ifdef NAME' 差異的已合併檔案" -#: src/diff.c:945 +#: src/diff.c:1005 msgid " --GTYPE-group-format=GFMT format GTYPE input groups with GFMT" msgstr " --GTYPE-group-format=GFMT 使用 GFMT 格式化 GTYPE 輸入資料群組" -#: src/diff.c:946 +#: src/diff.c:1006 msgid " --line-format=LFMT format all input lines with LFMT" msgstr " --line-format=LFMT 使用 LFMT 格式化所有輸入資料行" -#: src/diff.c:947 +#: src/diff.c:1007 msgid " --LTYPE-line-format=LFMT format LTYPE input lines with LFMT" msgstr " --LTYPE-line-format=LFMT 使用 LFMT 格式化 LTYPE 輸入行" -#: src/diff.c:948 +#: src/diff.c:1008 msgid "" " These format options provide fine-grained control over the output\n" " of diff, generalizing -D/--ifdef." msgstr " 這些格式化選項提供了微調 diff 輸出的選項,使 -D/--if-def 一般化。" -#: src/diff.c:950 +#: src/diff.c:1010 msgid " LTYPE is 'old', 'new', or 'unchanged'. GTYPE is LTYPE or 'changed'." msgstr "" " LTYPE 可以是 'old'、'new' 或 'unchanged'。GTYPE 可以是 LTYPE 或 'changed'。" -#: src/diff.c:951 +#: src/diff.c:1011 msgid "" " GFMT (only) may contain:\n" " %< lines from FILE1\n" @@ -952,7 +948,7 @@ msgstr "" " E F-1\n" " M L+1 %(A=B?T:E) 如果 A 等於 B 就作 T 否則就 E" -#: src/diff.c:963 +#: src/diff.c:1023 msgid "" " LFMT (only) may contain:\n" " %L contents of line\n" @@ -964,7 +960,7 @@ msgstr "" " %l 該行內容,但不包括結束的換行字元\n" " %[-][寬度][.[精確度]]{doxX}n 以 printf 格式表示之輸入資料行號" -#: src/diff.c:967 +#: src/diff.c:1027 msgid "" " Both GFMT and LFMT may contain:\n" " %% %\n" @@ -978,30 +974,30 @@ msgstr "" " %c'\\OOO' 八進位碼是 OOO 的字元\n" " C C 字元 (其他字元表示自身)" -#: src/diff.c:973 +#: src/diff.c:1033 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "-d, --minimal 盡可能找出最小差異" -#: src/diff.c:974 +#: src/diff.c:1034 msgid " --horizon-lines=NUM keep NUM lines of the common prefix and suffix" msgstr " --horizon-lines=NUM 保留 NUM 行的共同前綴及後綴" -#: src/diff.c:975 +#: src/diff.c:1035 msgid "" " --speed-large-files assume large files and many scattered small changes" msgstr " --speed-large-files 假設檔案十分大而且當中含有許多些微的差異" -#: src/diff.c:976 -#, fuzzy +#: src/diff.c:1036 msgid "" " --color[=WHEN] color output; WHEN is 'never', 'always', or " "'auto';\n" " plain --color means --color='auto'" msgstr "" " --color[=WHEN] 對輸出上色;WHEN 可以是 'never'、\n" -" 'always' 或 'auto' (預設值)" +" 'always' 或 'auto' (預設值)。\n" +" 純 --color 等於 --color='auto'" -#: src/diff.c:978 +#: src/diff.c:1038 msgid "" " --palette=PALETTE the colors to use when --color is active; PALETTE " "is\n" @@ -1010,111 +1006,111 @@ msgstr "" " --palette=調色盤 啟用 --color 後要用的顏色;<調色盤> 是使用\n" " 冒號 (:) 分隔的 terminfo 功能 (capabilities)" -#: src/diff.c:981 +#: src/diff.c:1041 msgid " --help display this help and exit" msgstr " --help 顯示此說明後離開" -#: src/diff.c:982 +#: src/diff.c:1042 msgid "-v, --version output version information and exit" msgstr "-v, --version 輸出版本資訊後離開" -#: src/diff.c:984 +#: src/diff.c:1044 msgid "FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'." msgstr "" "<檔案> 的格式可以是「<檔案1> <檔案2>」、「<目錄1> <目錄2>」、\n" "「<目錄> <檔案>」或「<檔案> <目錄>」。" -#: src/diff.c:985 +#: src/diff.c:1045 msgid "" "If --from-file or --to-file is given, there are no restrictions on FILE(s)." msgstr "如果使用 --from-file 或 --to-file 選項,<檔案> 的格式則不受限制。" -#: src/diff.c:986 src/diff3.c:533 src/sdiff.c:220 +#: src/diff.c:1046 src/diff3.c:531 src/sdiff.c:219 msgid "If a FILE is '-', read standard input." msgstr "如果 <檔案> 是「-」,則由標準輸入讀取資料。" # It is intentional *not* to translate FILES -- maddog -#: src/diff.c:996 +#: src/diff.c:1056 #, c-format msgid "Usage: %s [OPTION]... FILES\n" msgstr "用法:%s [選項]... FILES\n" -#: src/diff.c:997 +#: src/diff.c:1057 msgid "Compare FILES line by line." msgstr "比較 <檔案> 的每一行。" -#: src/diff.c:1034 +#: src/diff.c:1094 #, c-format msgid "conflicting %s option value '%s'" msgstr "%s 選項的值「%s」衝突" -#: src/diff.c:1047 +#: src/diff.c:1107 #, c-format msgid "conflicting output style options" msgstr "互相矛盾的輸出模式選項" -#: src/diff.c:1063 +#: src/diff.c:1123 #, c-format msgid "invalid color '%s'" msgstr "顏色 '%s' 無效" -#: src/diff.c:1119 src/diff.c:1329 +#: src/diff.c:1197 src/diff.c:1401 #, c-format msgid "Only in %s: %s\n" msgstr "只在 %s 存在:%s\n" -#: src/diff.c:1253 +#: src/diff.c:1325 msgid "cannot compare '-' to a directory" msgstr "「-」無法與目錄作比較" -#: src/diff.c:1288 +#: src/diff.c:1360 msgid "-D option not supported with directories" msgstr "-D 選項不可配合目錄使用" -#: src/diff.c:1297 +#: src/diff.c:1369 #, c-format msgid "Common subdirectories: %s and %s\n" msgstr "%s 和 %s 有共同的副目錄\n" -#: src/diff.c:1339 src/diff.c:1389 +#: src/diff.c:1411 src/diff.c:1461 #, c-format msgid "File %s is a %s while file %s is a %s\n" msgstr "檔案 %s 是%s而檔案 %s 是%s\n" -#: src/diff.c:1375 +#: src/diff.c:1447 #, c-format msgid "Symbolic links %s and %s differ\n" msgstr "符號連結 %s 和 %s 不同\n" -#: src/diff.c:1462 +#: src/diff.c:1534 #, c-format msgid "Files %s and %s are identical\n" msgstr "檔案 %s 和 %s 相同\n" #. This is a proper name. See the gettext manual, section Names. -#: src/diff3.c:43 +#: src/diff3.c:51 msgid "Randy Smith" msgstr "Randy Smith" -#: src/diff3.c:356 +#: src/diff3.c:363 #, c-format msgid "incompatible options" msgstr "不兼容的選項" -#: src/diff3.c:396 +#: src/diff3.c:403 msgid "'-' specified for more than one input file" msgstr "輸入檔「-」不可多於一個" -#: src/diff3.c:447 src/diff3.c:1295 src/diff3.c:1698 src/diff3.c:1753 -#: src/sdiff.c:308 src/sdiff.c:846 src/sdiff.c:857 +#: src/diff3.c:445 src/diff3.c:1284 src/diff3.c:1683 src/diff3.c:1738 +#: src/sdiff.c:306 src/sdiff.c:843 src/sdiff.c:854 msgid "read failed" msgstr "讀取資料失敗" -#: src/diff3.c:480 +#: src/diff3.c:478 msgid "-A, --show-all output all changes, bracketing conflicts" msgstr "-A, --show-all 輸出所有變更,並使用括號括起衝突部份" -#: src/diff3.c:482 +#: src/diff3.c:480 msgid "" "-e, --ed output ed script incorporating changes\n" " from OLDFILE to YOURFILE into MYFILE" @@ -1122,30 +1118,30 @@ msgstr "" "-e, --ed 輸出會將 OLDFILE 變更合併至 YOURFILE 後\n" " 輸出到 MYFILE 的 ed 文稿" -#: src/diff3.c:484 +#: src/diff3.c:482 msgid "-E, --show-overlap like -e, but bracket conflicts" msgstr "-E, --show-overlap 類似 -e 但會用括號括起衝突部份" -#: src/diff3.c:485 +#: src/diff3.c:483 msgid "" "-3, --easy-only like -e, but incorporate only nonoverlapping " "changes" msgstr "-3, --easy-only 類似 -e 但只合併不重疊的變更" -#: src/diff3.c:486 +#: src/diff3.c:484 msgid "" "-x, --overlap-only like -e, but incorporate only overlapping changes" msgstr "-x, --overlap-only 類似 -e 但只合併有重疊的變更" -#: src/diff3.c:487 +#: src/diff3.c:485 msgid "-X like -x, but bracket conflicts" msgstr "-X 類似 -x 但會將衝突處用括號括起" -#: src/diff3.c:488 +#: src/diff3.c:486 msgid "-i append 'w' and 'q' commands to ed scripts" msgstr "-i 將 'w' 和 'q' 指令加至 ed 文稿末尾" -#: src/diff3.c:490 +#: src/diff3.c:488 msgid "" "-m, --merge output actual merged file, according to\n" " -A if no other options are given" @@ -1153,24 +1149,24 @@ msgstr "" "-m, --merge 輸出實際合併的檔案,\n" " 如果未提供其他選項則根據 -A" -#: src/diff3.c:493 +#: src/diff3.c:491 msgid "-a, --text treat all files as text" msgstr "-a, --text 所有檔案都以文字檔方式處理" -#: src/diff3.c:494 +#: src/diff3.c:492 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr 去除輸入資料每行末端的 carriage return 字元" -#: src/diff3.c:495 +#: src/diff3.c:493 msgid "-T, --initial-tab make tabs line up by prepending a tab" msgstr "-T, --initial-tab 每行先加上 tab 字元,使 tab 字元可以對齊。" -#: src/diff3.c:496 +#: src/diff3.c:494 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr " --diff-program=程式 使用 <程式> 比較檔案" -#: src/diff3.c:497 +#: src/diff3.c:495 msgid "" "-L, --label=LABEL use LABEL instead of file name\n" " (can be repeated up to three times)" @@ -1178,24 +1174,24 @@ msgstr "" "-L, --label=標籤 使用 <標籤> 而非檔名\n" " (可重複使用三次)" -#: src/diff3.c:500 +#: src/diff3.c:498 msgid " --help display this help and exit" msgstr " --help 顯示此說明後離開" -#: src/diff3.c:501 +#: src/diff3.c:499 msgid "-v, --version output version information and exit" msgstr "-v, --version 輸出版本資訊後離開" -#: src/diff3.c:510 +#: src/diff3.c:508 #, c-format msgid "Usage: %s [OPTION]... MYFILE OLDFILE YOURFILE\n" msgstr "用法:%s [選項]... MYFILE OLDFILE YOURFILE\n" -#: src/diff3.c:512 +#: src/diff3.c:510 msgid "Compare three files line by line." msgstr "比較三個檔案的每一行。" -#: src/diff3.c:522 +#: src/diff3.c:520 msgid "" "\n" "The default output format is a somewhat human-readable representation of\n" @@ -1217,54 +1213,54 @@ msgstr "" "最後,-m (--merge) 選項能讓 diff3 在內部合併,並輸出實際合併的檔案。\n" "在某些不常見的輸入情況,這會比使用 ed 還來得可靠。\n" -#: src/diff3.c:534 +#: src/diff3.c:532 msgid "Exit status is 0 if successful, 1 if conflicts, 2 if trouble." msgstr "回傳值是 0 的話代表指令成功執行,1 代表內容有衝突,2 代表有錯誤。" -#: src/diff3.c:727 +#: src/diff3.c:725 msgid "internal error: screwup in format of diff blocks" msgstr "內部錯誤:diff 區段的格式出錯" -#: src/diff3.c:1022 +#: src/diff3.c:1015 #, c-format msgid "%s: diff failed: " msgstr "%s:diff 失敗:" -#: src/diff3.c:1044 +#: src/diff3.c:1037 msgid "internal error: invalid diff type in process_diff" msgstr "內部錯誤:process_diff 中的 diff 類型無效" -#: src/diff3.c:1069 +#: src/diff3.c:1060 msgid "invalid diff format; invalid change separator" msgstr "無效的 diff 格式;表示資料變更的分隔字串無效" -#: src/diff3.c:1305 +#: src/diff3.c:1294 msgid "invalid diff format; incomplete last line" msgstr "無效的 diff 格式;最後一行不完整" -#: src/diff3.c:1329 src/sdiff.c:276 src/util.c:969 +#: src/diff3.c:1318 src/sdiff.c:274 src/util.c:1069 #, c-format msgid "subsidiary program '%s' could not be invoked" msgstr "無法執行「%s」子程式" -#: src/diff3.c:1354 +#: src/diff3.c:1343 msgid "invalid diff format; incorrect leading line chars" msgstr "diff 格式無效;某行的第一個字元不正確" -#: src/diff3.c:1427 +#: src/diff3.c:1416 msgid "internal error: invalid diff type passed to output" msgstr "內部錯誤:準備輸出的 diff 資料類型無效" -#: src/diff3.c:1700 src/diff3.c:1757 +#: src/diff3.c:1685 src/diff3.c:1742 msgid "input file shrank" msgstr "輸入檔縮小" -#: src/dir.c:156 +#: src/dir.c:154 #, c-format msgid "cannot compare file names '%s' and '%s'" msgstr "無法比較檔案名稱「%s」和「%s」" -#: src/dir.c:225 +#: src/dir.c:223 #, c-format msgid "%s: recursive directory loop" msgstr "%s:遞迴目錄循環" @@ -1274,113 +1270,113 @@ msgstr "%s:遞迴目錄循環" msgid "Thomas Lord" msgstr "Thomas Lord" -#: src/sdiff.c:174 +#: src/sdiff.c:173 msgid "" "-o, --output=FILE operate interactively, sending output to FILE" msgstr "-o, --output=檔案 互動式操作,並將結果寫入 <檔案>。" -#: src/sdiff.c:176 +#: src/sdiff.c:175 msgid "" "-i, --ignore-case consider upper- and lower-case to be the same" msgstr "-i, --ignore-case 不區分檔案內容中的大小寫" -#: src/sdiff.c:177 +#: src/sdiff.c:176 msgid "-E, --ignore-tab-expansion ignore changes due to tab expansion" msgstr "-E, --ignore-tab-expansion 忽略因展開 tab 而造成的差異。" -#: src/sdiff.c:178 +#: src/sdiff.c:177 msgid "-Z, --ignore-trailing-space ignore white space at line end" msgstr "-Z, --ignore-trailing-space 忽略所有行末空白" -#: src/sdiff.c:179 +#: src/sdiff.c:178 msgid "" "-b, --ignore-space-change ignore changes in the amount of white space" msgstr "-b, --ignore-space-change 忽略因空白字元數目不同而造成的差異" -#: src/sdiff.c:180 +#: src/sdiff.c:179 msgid "-W, --ignore-all-space ignore all white space" msgstr "-W, --ignore-all-space 忽略所有空白" -#: src/sdiff.c:181 +#: src/sdiff.c:180 msgid "-B, --ignore-blank-lines ignore changes whose lines are all blank" msgstr "-B, --ignore-blank-lines 忽略因空列而造成的差異" -#: src/sdiff.c:182 +#: src/sdiff.c:181 msgid "-I, --ignore-matching-lines=RE ignore changes all whose lines match RE" msgstr "-I, --ignore-matching-lines=RE 忽略所有其列符合 RE 的變更" -#: src/sdiff.c:183 +#: src/sdiff.c:182 msgid " --strip-trailing-cr strip trailing carriage return on input" msgstr "" " --strip-trailing-cr 去除輸入資料每行末端的 carriage return 字元。" -#: src/sdiff.c:184 +#: src/sdiff.c:183 msgid "-a, --text treat all files as text" msgstr "-a, --text 將所有檔案依文字檔處理" -#: src/sdiff.c:186 +#: src/sdiff.c:185 msgid "" "-w, --width=NUM output at most NUM (default 130) print columns" msgstr "-w, --width=NUM 最多輸出 NUM(預設 130)個輸出列。" -#: src/sdiff.c:187 +#: src/sdiff.c:186 msgid "" "-l, --left-column output only the left column of common lines" msgstr "-l, --left-column 兩行相同時只顯示左列" -#: src/sdiff.c:188 +#: src/sdiff.c:187 msgid "-s, --suppress-common-lines do not output common lines" msgstr "-s, --suppress-common-lines 不輸出相同行" -#: src/sdiff.c:190 +#: src/sdiff.c:189 msgid "-t, --expand-tabs expand tabs to spaces in output" msgstr "-t, --expand-tabs 將輸出中的 tab 換成空格。" -#: src/sdiff.c:191 +#: src/sdiff.c:190 msgid "" " --tabsize=NUM tab stops at every NUM (default 8) print columns" msgstr "" " --tabsize=NUM 定位字元 (tab) 的寬度,預設為 8 個輸出列。" -#: src/sdiff.c:193 +#: src/sdiff.c:192 msgid "-d, --minimal try hard to find a smaller set of changes" msgstr "-d, --minimal 盡可能找出最小差異" -#: src/sdiff.c:194 +#: src/sdiff.c:193 msgid "" "-H, --speed-large-files assume large files, many scattered small changes" msgstr "-H, --speed-large-files 假設檔案十分大,且當中含有許多些微的差異" -#: src/sdiff.c:195 +#: src/sdiff.c:194 msgid " --diff-program=PROGRAM use PROGRAM to compare files" msgstr " --diff-program=程式 使用 <程式> 比較檔案" -#: src/sdiff.c:197 +#: src/sdiff.c:196 msgid " --help display this help and exit" msgstr " --help 顯示此說明後離開" -#: src/sdiff.c:198 +#: src/sdiff.c:197 msgid "-v, --version output version information and exit" msgstr "-v, --version 輸出版本資訊後離開" -#: src/sdiff.c:207 +#: src/sdiff.c:206 #, c-format msgid "Usage: %s [OPTION]... FILE1 FILE2\n" msgstr "用法:%s [選項]... 檔案1 檔案2\n" -#: src/sdiff.c:209 +#: src/sdiff.c:208 msgid "Side-by-side merge of differences between FILE1 and FILE2." msgstr "以並排方式合併 <檔案1> 和 <檔案2> 之間的差異。" -#: src/sdiff.c:330 +#: src/sdiff.c:328 msgid "cannot interactively merge standard input" msgstr "不允許以互動方式合併標準輸入的資料" -#: src/sdiff.c:597 +#: src/sdiff.c:594 msgid "both files to be compared are directories" msgstr "兩個要比較的都是目錄" -#: src/sdiff.c:820 +#: src/sdiff.c:817 msgid "" "ed:\tEdit then use both versions, each decorated with a header.\n" "eb:\tEdit then use both versions.\n" @@ -1404,29 +1400,25 @@ msgstr "" "v:\t詳細地加入共同行。\n" "q:\t離開。\n" -#: src/util.c:662 +#: src/util.c:755 #, c-format msgid "unrecognized prefix: %s" msgstr "前綴無法識別:%s" -#: src/util.c:692 +#: src/util.c:785 #, c-format msgid "unparsable value for --palette" msgstr "無法解析傳入 --palette 的值" -#, c-format #~ msgid "invalid %s%s argument '%s'" #~ msgstr "%s%s 參數「%s」無效" -#, c-format #~ msgid "invalid suffix in %s%s argument '%s'" #~ msgstr "%s%s 參數「%s」有無效後綴" -#, c-format #~ msgid "%s%s argument '%s' too large" #~ msgstr "%s%s 參數「%s」過長" -#, c-format #~ msgid "%s home page: \n" #~ msgstr "%s 首頁:\n" diff --git a/src/Makefile.am b/src/Makefile.am index d27a54d..3364a00 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -1,6 +1,6 @@ # Automakefile for GNU diffutils programs. -# Copyright (C) 2001-2002, 2006, 2009-2013, 2015-2021 Free Software Foundation, +# Copyright (C) 2001-2002, 2006, 2009-2013, 2015-2023 Free Software Foundation, # Inc. # This program is free software: you can redistribute it and/or modify @@ -30,11 +30,16 @@ LDADD = \ $(LIBINTL) \ $(LIBICONV) \ $(LIBSIGSEGV) \ - $(LIB_CLOCK_GETTIME) + $(LIBTHREAD) \ + $(LIBUNISTRING) \ + $(CLOCK_TIME_LIB) \ + $(HARD_LOCALE_LIB) \ + $(MBRTOWC_LIB) \ + $(SETLOCALE_NULL_LIB) diff_LDADD = $(LDADD) cmp_LDADD = $(LDADD) -sdiff_LDADD = $(LDADD) +sdiff_LDADD = $(LDADD) $(GETRANDOM_LIB) diff3_LDADD = $(LDADD) cmp_SOURCES = cmp.c diff --git a/src/Makefile.in b/src/Makefile.in index de31548..dcd32d8 100644 --- a/src/Makefile.in +++ b/src/Makefile.in @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.16d from Makefile.am. +# Makefile.in generated by automake 1.16i from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2021 Free Software Foundation, Inc. +# Copyright (C) 1994-2023 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -16,7 +16,7 @@ # Automakefile for GNU diffutils programs. -# Copyright (C) 2001-2002, 2006, 2009-2013, 2015-2021 Free Software Foundation, +# Copyright (C) 2001-2002, 2006, 2009-2013, 2015-2023 Free Software Foundation, # Inc. # This program is free software: you can redistribute it and/or modify @@ -90,6 +90,8 @@ am__make_running_with_option = \ test $$has_opt = yes am__make_dryrun = (target_option=n; $(am__make_running_with_option)) am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +am__rm_f = rm -f $(am__rm_f_notfound) +am__rm_rf = rm -rf $(am__rm_f_notfound) pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ @@ -116,19 +118,22 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/__inline.m4 \ $(top_srcdir)/m4/absolute-header.m4 $(top_srcdir)/m4/alloca.m4 \ $(top_srcdir)/m4/arpa_inet_h.m4 \ - $(top_srcdir)/m4/asm-underscore.m4 $(top_srcdir)/m4/atoll.m4 \ + $(top_srcdir)/m4/asm-underscore.m4 \ + $(top_srcdir)/m4/assert_h.m4 $(top_srcdir)/m4/atoll.m4 \ $(top_srcdir)/m4/btowc.m4 $(top_srcdir)/m4/builtin-expect.m4 \ - $(top_srcdir)/m4/c-stack.m4 $(top_srcdir)/m4/calloc.m4 \ - $(top_srcdir)/m4/clock_time.m4 $(top_srcdir)/m4/close.m4 \ - $(top_srcdir)/m4/codeset.m4 $(top_srcdir)/m4/config-h.m4 \ - $(top_srcdir)/m4/ctype_h.m4 \ + $(top_srcdir)/m4/c-bool.m4 $(top_srcdir)/m4/c-stack.m4 \ + $(top_srcdir)/m4/calloc.m4 $(top_srcdir)/m4/clock_time.m4 \ + $(top_srcdir)/m4/close.m4 $(top_srcdir)/m4/codeset.m4 \ + $(top_srcdir)/m4/config-h.m4 $(top_srcdir)/m4/ctype_h.m4 \ $(top_srcdir)/m4/double-slash-root.m4 $(top_srcdir)/m4/dup2.m4 \ $(top_srcdir)/m4/eealloc.m4 $(top_srcdir)/m4/environ.m4 \ $(top_srcdir)/m4/errno_h.m4 $(top_srcdir)/m4/error.m4 \ - $(top_srcdir)/m4/exponentd.m4 $(top_srcdir)/m4/extensions.m4 \ - $(top_srcdir)/m4/extern-inline.m4 $(top_srcdir)/m4/fcntl-o.m4 \ - $(top_srcdir)/m4/fcntl.m4 $(top_srcdir)/m4/fcntl_h.m4 \ - $(top_srcdir)/m4/fdopen.m4 $(top_srcdir)/m4/filenamecat.m4 \ + $(top_srcdir)/m4/error_h.m4 $(top_srcdir)/m4/exponentd.m4 \ + $(top_srcdir)/m4/extensions.m4 \ + $(top_srcdir)/m4/extern-inline.m4 $(top_srcdir)/m4/fclose.m4 \ + $(top_srcdir)/m4/fcntl-o.m4 $(top_srcdir)/m4/fcntl.m4 \ + $(top_srcdir)/m4/fcntl_h.m4 $(top_srcdir)/m4/fdopen.m4 \ + $(top_srcdir)/m4/fflush.m4 $(top_srcdir)/m4/filenamecat.m4 \ $(top_srcdir)/m4/flexmember.m4 $(top_srcdir)/m4/float_h.m4 \ $(top_srcdir)/m4/fnmatch.m4 $(top_srcdir)/m4/fnmatch_h.m4 \ $(top_srcdir)/m4/fopen.m4 $(top_srcdir)/m4/fpieee.m4 \ @@ -144,15 +149,16 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/host-cpu-c-abi.m4 $(top_srcdir)/m4/iconv.m4 \ $(top_srcdir)/m4/iconv_h.m4 $(top_srcdir)/m4/iconv_open.m4 \ $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inet_pton.m4 \ - $(top_srcdir)/m4/inline.m4 $(top_srcdir)/m4/intlmacosx.m4 \ - $(top_srcdir)/m4/intmax_t.m4 $(top_srcdir)/m4/inttostr.m4 \ - $(top_srcdir)/m4/inttypes.m4 $(top_srcdir)/m4/inttypes_h.m4 \ - $(top_srcdir)/m4/ioctl.m4 $(top_srcdir)/m4/isblank.m4 \ - $(top_srcdir)/m4/iswblank.m4 $(top_srcdir)/m4/iswdigit.m4 \ - $(top_srcdir)/m4/iswxdigit.m4 $(top_srcdir)/m4/langinfo_h.m4 \ - $(top_srcdir)/m4/largefile.m4 $(top_srcdir)/m4/lib-ld.m4 \ - $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ - $(top_srcdir)/m4/libsigsegv.m4 \ + $(top_srcdir)/m4/inline.m4 \ + $(top_srcdir)/m4/intl-thread-locale.m4 \ + $(top_srcdir)/m4/intlmacosx.m4 $(top_srcdir)/m4/intmax_t.m4 \ + $(top_srcdir)/m4/inttostr.m4 $(top_srcdir)/m4/inttypes.m4 \ + $(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/ioctl.m4 \ + $(top_srcdir)/m4/isblank.m4 $(top_srcdir)/m4/iswblank.m4 \ + $(top_srcdir)/m4/iswdigit.m4 $(top_srcdir)/m4/iswxdigit.m4 \ + $(top_srcdir)/m4/langinfo_h.m4 $(top_srcdir)/m4/largefile.m4 \ + $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ + $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libsigsegv.m4 \ $(top_srcdir)/m4/libunistring-base.m4 \ $(top_srcdir)/m4/limits-h.m4 $(top_srcdir)/m4/localcharset.m4 \ $(top_srcdir)/m4/locale-fr.m4 $(top_srcdir)/m4/locale-ja.m4 \ @@ -174,11 +180,13 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/netinet_in_h.m4 \ $(top_srcdir)/m4/nl_langinfo.m4 $(top_srcdir)/m4/nls.m4 \ $(top_srcdir)/m4/nocrash.m4 $(top_srcdir)/m4/nstrftime.m4 \ - $(top_srcdir)/m4/off_t.m4 $(top_srcdir)/m4/open-cloexec.m4 \ + $(top_srcdir)/m4/nullptr.m4 $(top_srcdir)/m4/off_t.m4 \ + $(top_srcdir)/m4/open-cloexec.m4 \ $(top_srcdir)/m4/open-slash.m4 $(top_srcdir)/m4/open.m4 \ - $(top_srcdir)/m4/pathmax.m4 $(top_srcdir)/m4/perror.m4 \ - $(top_srcdir)/m4/pipe.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/printf.m4 $(top_srcdir)/m4/progtest.m4 \ + $(top_srcdir)/m4/pathmax.m4 $(top_srcdir)/m4/perl.m4 \ + $(top_srcdir)/m4/perror.m4 $(top_srcdir)/m4/pipe.m4 \ + $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/printf.m4 \ + $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/pselect.m4 \ $(top_srcdir)/m4/pthread-thread.m4 \ $(top_srcdir)/m4/pthread_h.m4 \ $(top_srcdir)/m4/pthread_rwlock_rdlock.m4 \ @@ -189,9 +197,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/reallocarray.m4 $(top_srcdir)/m4/regex.m4 \ $(top_srcdir)/m4/sched_h.m4 $(top_srcdir)/m4/select.m4 \ $(top_srcdir)/m4/setenv.m4 $(top_srcdir)/m4/setlocale_null.m4 \ - $(top_srcdir)/m4/sigaction.m4 $(top_srcdir)/m4/sigaltstack.m4 \ - $(top_srcdir)/m4/signal_h.m4 \ - $(top_srcdir)/m4/signalblocking.m4 \ + $(top_srcdir)/m4/sigaltstack.m4 $(top_srcdir)/m4/signal_h.m4 \ + $(top_srcdir)/m4/signalblocking.m4 $(top_srcdir)/m4/sigsegv.m4 \ $(top_srcdir)/m4/size_max.m4 $(top_srcdir)/m4/sleep.m4 \ $(top_srcdir)/m4/snprintf.m4 $(top_srcdir)/m4/socketlib.m4 \ $(top_srcdir)/m4/sockets.m4 $(top_srcdir)/m4/socklen.m4 \ @@ -199,9 +206,9 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/stack-direction.m4 \ $(top_srcdir)/m4/stat-time.m4 $(top_srcdir)/m4/stat.m4 \ $(top_srcdir)/m4/stdalign.m4 $(top_srcdir)/m4/stdarg.m4 \ - $(top_srcdir)/m4/stdbool.m4 $(top_srcdir)/m4/stddef_h.m4 \ - $(top_srcdir)/m4/stdint.m4 $(top_srcdir)/m4/stdint_h.m4 \ - $(top_srcdir)/m4/stdio_h.m4 $(top_srcdir)/m4/stdlib_h.m4 \ + $(top_srcdir)/m4/stddef_h.m4 $(top_srcdir)/m4/stdint.m4 \ + $(top_srcdir)/m4/stdint_h.m4 $(top_srcdir)/m4/stdio_h.m4 \ + $(top_srcdir)/m4/stdlib_h.m4 $(top_srcdir)/m4/stpcpy.m4 \ $(top_srcdir)/m4/strcase.m4 $(top_srcdir)/m4/strerror.m4 \ $(top_srcdir)/m4/strerror_r.m4 $(top_srcdir)/m4/string_h.m4 \ $(top_srcdir)/m4/strings_h.m4 $(top_srcdir)/m4/strnlen.m4 \ @@ -215,12 +222,12 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/sys_types_h.m4 $(top_srcdir)/m4/sys_uio_h.m4 \ $(top_srcdir)/m4/sys_wait_h.m4 $(top_srcdir)/m4/tempname.m4 \ $(top_srcdir)/m4/thread.m4 $(top_srcdir)/m4/threadlib.m4 \ - $(top_srcdir)/m4/time_h.m4 $(top_srcdir)/m4/time_r.m4 \ - $(top_srcdir)/m4/time_rz.m4 $(top_srcdir)/m4/timegm.m4 \ - $(top_srcdir)/m4/timespec.m4 $(top_srcdir)/m4/tm_gmtoff.m4 \ - $(top_srcdir)/m4/tzset.m4 $(top_srcdir)/m4/unistd_h.m4 \ - $(top_srcdir)/m4/unlocked-io.m4 $(top_srcdir)/m4/vasnprintf.m4 \ - $(top_srcdir)/m4/vasprintf.m4 $(top_srcdir)/m4/version-etc.m4 \ + $(top_srcdir)/m4/time.m4 $(top_srcdir)/m4/time_h.m4 \ + $(top_srcdir)/m4/time_r.m4 $(top_srcdir)/m4/time_rz.m4 \ + $(top_srcdir)/m4/timegm.m4 $(top_srcdir)/m4/timespec.m4 \ + $(top_srcdir)/m4/tm_gmtoff.m4 $(top_srcdir)/m4/tzset.m4 \ + $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/unlocked-io.m4 \ + $(top_srcdir)/m4/vasnprintf.m4 $(top_srcdir)/m4/version-etc.m4 \ $(top_srcdir)/m4/visibility.m4 $(top_srcdir)/m4/warn-on-use.m4 \ $(top_srcdir)/m4/warnings.m4 $(top_srcdir)/m4/wchar_h.m4 \ $(top_srcdir)/m4/wchar_t.m4 $(top_srcdir)/m4/wcrtomb.m4 \ @@ -229,7 +236,6 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/wint_t.m4 $(top_srcdir)/m4/wmemchr.m4 \ $(top_srcdir)/m4/wmempcpy.m4 $(top_srcdir)/m4/xalloc.m4 \ $(top_srcdir)/m4/xsize.m4 $(top_srcdir)/m4/xstrtol.m4 \ - $(top_srcdir)/m4/xvasprintf.m4 $(top_srcdir)/m4/year2038.m4 \ $(top_srcdir)/m4/zzgnulib.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) @@ -247,6 +253,7 @@ am__v_AR_ = $(am__v_AR_@AM_DEFAULT_V@) am__v_AR_0 = @echo " AR " $@; am__v_AR_1 = libver_a_AR = $(AR) $(ARFLAGS) +libver_a_RANLIB = $(RANLIB) libver_a_LIBADD = nodist_libver_a_OBJECTS = version.$(OBJEXT) libver_a_OBJECTS = $(nodist_libver_a_OBJECTS) @@ -256,6 +263,8 @@ am__DEPENDENCIES_1 = am__DEPENDENCIES_2 = libver.a ../lib/libdiffutils.a \ $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ + $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ + $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ $(am__DEPENDENCIES_1) cmp_DEPENDENCIES = $(am__DEPENDENCIES_2) am_diff_OBJECTS = analyze.$(OBJEXT) context.$(OBJEXT) diff.$(OBJEXT) \ @@ -268,7 +277,7 @@ diff3_OBJECTS = $(am_diff3_OBJECTS) diff3_DEPENDENCIES = $(am__DEPENDENCIES_2) am_sdiff_OBJECTS = sdiff.$(OBJEXT) sdiff_OBJECTS = $(am_sdiff_OBJECTS) -sdiff_DEPENDENCIES = $(am__DEPENDENCIES_2) +sdiff_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_1) AM_V_P = $(am__v_P_@AM_V@) am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) am__v_P_0 = false @@ -341,6 +350,7 @@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APPLE_UNIVERSAL_BUILD = @APPLE_UNIVERSAL_BUILD@ AR = @AR@ ARFLAGS = @ARFLAGS@ +ASSERT_H = @ASSERT_H@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ @@ -354,6 +364,7 @@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CFLAG_VISIBILITY = @CFLAG_VISIBILITY@ +CLOCK_TIME_LIB = @CLOCK_TIME_LIB@ CONFIG_INCLUDE = @CONFIG_INCLUDE@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ @@ -365,7 +376,6 @@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ -EGREP = @EGREP@ EMULTIHOP_HIDDEN = @EMULTIHOP_HIDDEN@ EMULTIHOP_VALUE = @EMULTIHOP_VALUE@ ENOLINK_HIDDEN = @ENOLINK_HIDDEN@ @@ -373,14 +383,17 @@ ENOLINK_VALUE = @ENOLINK_VALUE@ EOVERFLOW_HIDDEN = @EOVERFLOW_HIDDEN@ EOVERFLOW_VALUE = @EOVERFLOW_VALUE@ ERRNO_H = @ERRNO_H@ +ERROR_H = @ERROR_H@ ETAGS = @ETAGS@ EXEEXT = @EXEEXT@ FLOAT_H = @FLOAT_H@ FNMATCH_H = @FNMATCH_H@ GETOPT_CDEFS_H = @GETOPT_CDEFS_H@ GETOPT_H = @GETOPT_H@ +GETRANDOM_LIB = @GETRANDOM_LIB@ GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ GL_CFLAG_ALLOW_WARNINGS = @GL_CFLAG_ALLOW_WARNINGS@ +GL_CFLAG_GNULIB_WARNINGS = @GL_CFLAG_GNULIB_WARNINGS@ GL_CXXFLAG_ALLOW_WARNINGS = @GL_CXXFLAG_ALLOW_WARNINGS@ GL_GNULIB_ACCEPT = @GL_GNULIB_ACCEPT@ GL_GNULIB_ACCEPT4 = @GL_GNULIB_ACCEPT4@ @@ -389,9 +402,11 @@ GL_GNULIB_ALIGNED_ALLOC = @GL_GNULIB_ALIGNED_ALLOC@ GL_GNULIB_ATOLL = @GL_GNULIB_ATOLL@ GL_GNULIB_BIND = @GL_GNULIB_BIND@ GL_GNULIB_BTOWC = @GL_GNULIB_BTOWC@ +GL_GNULIB_CALLOC_GNU = @GL_GNULIB_CALLOC_GNU@ GL_GNULIB_CALLOC_POSIX = @GL_GNULIB_CALLOC_POSIX@ GL_GNULIB_CANONICALIZE_FILE_NAME = @GL_GNULIB_CANONICALIZE_FILE_NAME@ GL_GNULIB_CHDIR = @GL_GNULIB_CHDIR@ +GL_GNULIB_CHMOD = @GL_GNULIB_CHMOD@ GL_GNULIB_CHOWN = @GL_GNULIB_CHOWN@ GL_GNULIB_CLOSE = @GL_GNULIB_CLOSE@ GL_GNULIB_CONNECT = @GL_GNULIB_CONNECT@ @@ -429,6 +444,7 @@ GL_GNULIB_FGETC = @GL_GNULIB_FGETC@ GL_GNULIB_FGETS = @GL_GNULIB_FGETS@ GL_GNULIB_FNMATCH = @GL_GNULIB_FNMATCH@ GL_GNULIB_FOPEN = @GL_GNULIB_FOPEN@ +GL_GNULIB_FOPEN_GNU = @GL_GNULIB_FOPEN_GNU@ GL_GNULIB_FPRINTF = @GL_GNULIB_FPRINTF@ GL_GNULIB_FPRINTF_POSIX = @GL_GNULIB_FPRINTF_POSIX@ GL_GNULIB_FPURGE = @GL_GNULIB_FPURGE@ @@ -464,7 +480,9 @@ GL_GNULIB_GETLOGIN_R = @GL_GNULIB_GETLOGIN_R@ GL_GNULIB_GETOPT_POSIX = @GL_GNULIB_GETOPT_POSIX@ GL_GNULIB_GETPAGESIZE = @GL_GNULIB_GETPAGESIZE@ GL_GNULIB_GETPASS = @GL_GNULIB_GETPASS@ +GL_GNULIB_GETPASS_GNU = @GL_GNULIB_GETPASS_GNU@ GL_GNULIB_GETPEERNAME = @GL_GNULIB_GETPEERNAME@ +GL_GNULIB_GETPROGNAME = @GL_GNULIB_GETPROGNAME@ GL_GNULIB_GETRANDOM = @GL_GNULIB_GETRANDOM@ GL_GNULIB_GETSOCKNAME = @GL_GNULIB_GETSOCKNAME@ GL_GNULIB_GETSOCKOPT = @GL_GNULIB_GETSOCKOPT@ @@ -496,6 +514,7 @@ GL_GNULIB_LOCALENAME = @GL_GNULIB_LOCALENAME@ GL_GNULIB_LOCALTIME = @GL_GNULIB_LOCALTIME@ GL_GNULIB_LSEEK = @GL_GNULIB_LSEEK@ GL_GNULIB_LSTAT = @GL_GNULIB_LSTAT@ +GL_GNULIB_MALLOC_GNU = @GL_GNULIB_MALLOC_GNU@ GL_GNULIB_MALLOC_POSIX = @GL_GNULIB_MALLOC_POSIX@ GL_GNULIB_MBRLEN = @GL_GNULIB_MBRLEN@ GL_GNULIB_MBRTOWC = @GL_GNULIB_MBRTOWC@ @@ -516,6 +535,7 @@ GL_GNULIB_MBSSEP = @GL_GNULIB_MBSSEP@ GL_GNULIB_MBSSPN = @GL_GNULIB_MBSSPN@ GL_GNULIB_MBSSTR = @GL_GNULIB_MBSSTR@ GL_GNULIB_MBSTOK_R = @GL_GNULIB_MBSTOK_R@ +GL_GNULIB_MBSTOWCS = @GL_GNULIB_MBSTOWCS@ GL_GNULIB_MBTOWC = @GL_GNULIB_MBTOWC@ GL_GNULIB_MDA_ACCESS = @GL_GNULIB_MDA_ACCESS@ GL_GNULIB_MDA_CHDIR = @GL_GNULIB_MDA_CHDIR@ @@ -562,6 +582,7 @@ GL_GNULIB_MEMCHR = @GL_GNULIB_MEMCHR@ GL_GNULIB_MEMMEM = @GL_GNULIB_MEMMEM@ GL_GNULIB_MEMPCPY = @GL_GNULIB_MEMPCPY@ GL_GNULIB_MEMRCHR = @GL_GNULIB_MEMRCHR@ +GL_GNULIB_MEMSET_EXPLICIT = @GL_GNULIB_MEMSET_EXPLICIT@ GL_GNULIB_MKDIR = @GL_GNULIB_MKDIR@ GL_GNULIB_MKDIRAT = @GL_GNULIB_MKDIRAT@ GL_GNULIB_MKDTEMP = @GL_GNULIB_MKDTEMP@ @@ -618,6 +639,7 @@ GL_GNULIB_READ = @GL_GNULIB_READ@ GL_GNULIB_READLINK = @GL_GNULIB_READLINK@ GL_GNULIB_READLINKAT = @GL_GNULIB_READLINKAT@ GL_GNULIB_REALLOCARRAY = @GL_GNULIB_REALLOCARRAY@ +GL_GNULIB_REALLOC_GNU = @GL_GNULIB_REALLOC_GNU@ GL_GNULIB_REALLOC_POSIX = @GL_GNULIB_REALLOC_POSIX@ GL_GNULIB_REALPATH = @GL_GNULIB_REALPATH@ GL_GNULIB_RECV = @GL_GNULIB_RECV@ @@ -681,8 +703,10 @@ GL_GNULIB_STRVERSCMP = @GL_GNULIB_STRVERSCMP@ GL_GNULIB_SYMLINK = @GL_GNULIB_SYMLINK@ GL_GNULIB_SYMLINKAT = @GL_GNULIB_SYMLINKAT@ GL_GNULIB_SYSTEM_POSIX = @GL_GNULIB_SYSTEM_POSIX@ +GL_GNULIB_TIME = @GL_GNULIB_TIME@ GL_GNULIB_TIMEGM = @GL_GNULIB_TIMEGM@ GL_GNULIB_TIMESPEC_GET = @GL_GNULIB_TIMESPEC_GET@ +GL_GNULIB_TIMESPEC_GETRES = @GL_GNULIB_TIMESPEC_GETRES@ GL_GNULIB_TIME_R = @GL_GNULIB_TIME_R@ GL_GNULIB_TIME_RZ = @GL_GNULIB_TIME_RZ@ GL_GNULIB_TMPFILE = @GL_GNULIB_TMPFILE@ @@ -756,6 +780,7 @@ GNULIBHEADERS_OVERRIDE_WINT_T = @GNULIBHEADERS_OVERRIDE_WINT_T@ GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@ GNULIB_WARN_CFLAGS = @GNULIB_WARN_CFLAGS@ GREP = @GREP@ +HARD_LOCALE_LIB = @HARD_LOCALE_LIB@ HAVE_ACCEPT4 = @HAVE_ACCEPT4@ HAVE_ALIGNED_ALLOC = @HAVE_ALIGNED_ALLOC@ HAVE_ALLOCA_H = @HAVE_ALLOCA_H@ @@ -786,6 +811,7 @@ HAVE_DECL_GETLOGIN = @HAVE_DECL_GETLOGIN@ HAVE_DECL_GETLOGIN_R = @HAVE_DECL_GETLOGIN_R@ HAVE_DECL_GETPAGESIZE = @HAVE_DECL_GETPAGESIZE@ HAVE_DECL_GETUSERSHELL = @HAVE_DECL_GETUSERSHELL@ +HAVE_DECL_GETW = @HAVE_DECL_GETW@ HAVE_DECL_IMAXABS = @HAVE_DECL_IMAXABS@ HAVE_DECL_IMAXDIV = @HAVE_DECL_IMAXDIV@ HAVE_DECL_INET_NTOP = @HAVE_DECL_INET_NTOP@ @@ -795,6 +821,8 @@ HAVE_DECL_LOCALTIME_R = @HAVE_DECL_LOCALTIME_R@ HAVE_DECL_MEMMEM = @HAVE_DECL_MEMMEM@ HAVE_DECL_MEMRCHR = @HAVE_DECL_MEMRCHR@ HAVE_DECL_OBSTACK_PRINTF = @HAVE_DECL_OBSTACK_PRINTF@ +HAVE_DECL_PROGRAM_INVOCATION_NAME = @HAVE_DECL_PROGRAM_INVOCATION_NAME@ +HAVE_DECL_PUTW = @HAVE_DECL_PUTW@ HAVE_DECL_SETENV = @HAVE_DECL_SETENV@ HAVE_DECL_SETHOSTNAME = @HAVE_DECL_SETHOSTNAME@ HAVE_DECL_SETSTATE = @HAVE_DECL_SETSTATE@ @@ -818,6 +846,9 @@ HAVE_DECL_WCWIDTH = @HAVE_DECL_WCWIDTH@ HAVE_DPRINTF = @HAVE_DPRINTF@ HAVE_DUP3 = @HAVE_DUP3@ HAVE_DUPLOCALE = @HAVE_DUPLOCALE@ +HAVE_ERROR = @HAVE_ERROR@ +HAVE_ERROR_AT_LINE = @HAVE_ERROR_AT_LINE@ +HAVE_ERROR_H = @HAVE_ERROR_H@ HAVE_EUIDACCESS = @HAVE_EUIDACCESS@ HAVE_EXECVPE = @HAVE_EXECVPE@ HAVE_EXPLICIT_BZERO = @HAVE_EXPLICIT_BZERO@ @@ -848,12 +879,15 @@ HAVE_GETLOGIN = @HAVE_GETLOGIN@ HAVE_GETOPT_H = @HAVE_GETOPT_H@ HAVE_GETPAGESIZE = @HAVE_GETPAGESIZE@ HAVE_GETPASS = @HAVE_GETPASS@ +HAVE_GETPROGNAME = @HAVE_GETPROGNAME@ HAVE_GETRANDOM = @HAVE_GETRANDOM@ HAVE_GETSUBOPT = @HAVE_GETSUBOPT@ HAVE_GETTIMEOFDAY = @HAVE_GETTIMEOFDAY@ HAVE_GETUMASK = @HAVE_GETUMASK@ HAVE_GRANTPT = @HAVE_GRANTPT@ HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@ +HAVE_IMAXABS = @HAVE_IMAXABS@ +HAVE_IMAXDIV = @HAVE_IMAXDIV@ HAVE_IMAXDIV_T = @HAVE_IMAXDIV_T@ HAVE_INITSTATE = @HAVE_INITSTATE@ HAVE_INTTYPES_H = @HAVE_INTTYPES_H@ @@ -881,6 +915,7 @@ HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@ HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@ HAVE_MBTOWC = @HAVE_MBTOWC@ HAVE_MEMPCPY = @HAVE_MEMPCPY@ +HAVE_MEMSET_EXPLICIT = @HAVE_MEMSET_EXPLICIT@ HAVE_MKDIRAT = @HAVE_MKDIRAT@ HAVE_MKDTEMP = @HAVE_MKDTEMP@ HAVE_MKFIFO = @HAVE_MKFIFO@ @@ -1038,9 +1073,11 @@ HAVE_SYS_TYPES_H = @HAVE_SYS_TYPES_H@ HAVE_SYS_UIO_H = @HAVE_SYS_UIO_H@ HAVE_TIMEGM = @HAVE_TIMEGM@ HAVE_TIMESPEC_GET = @HAVE_TIMESPEC_GET@ +HAVE_TIMESPEC_GETRES = @HAVE_TIMESPEC_GETRES@ HAVE_TIMEZONE_T = @HAVE_TIMEZONE_T@ HAVE_TYPE_VOLATILE_SIG_ATOMIC_T = @HAVE_TYPE_VOLATILE_SIG_ATOMIC_T@ HAVE_UNISTD_H = @HAVE_UNISTD_H@ +HAVE_UNISTRING_WOE32DLL_H = @HAVE_UNISTRING_WOE32DLL_H@ HAVE_UNLINKAT = @HAVE_UNLINKAT@ HAVE_UNLOCKPT = @HAVE_UNLOCKPT@ HAVE_USLEEP = @HAVE_USLEEP@ @@ -1090,7 +1127,6 @@ HAVE_WMEMPCPY = @HAVE_WMEMPCPY@ HAVE_WMEMSET = @HAVE_WMEMSET@ HAVE_WS2TCPIP_H = @HAVE_WS2TCPIP_H@ HAVE_XLOCALE_H = @HAVE_XLOCALE_H@ -HAVE__BOOL = @HAVE__BOOL@ HAVE__EXIT = @HAVE__EXIT@ HELP2MAN = @HELP2MAN@ HOST_CPU = @HOST_CPU@ @@ -1156,15 +1192,20 @@ LTLIBOBJS = @LTLIBOBJS@ LTLIBSIGSEGV = @LTLIBSIGSEGV@ LTLIBTHREAD = @LTLIBTHREAD@ MAKEINFO = @MAKEINFO@ +MBRTOWC_LIB = @MBRTOWC_LIB@ MKDIR_P = @MKDIR_P@ MSGFMT = @MSGFMT@ MSGFMT_015 = @MSGFMT_015@ MSGMERGE = @MSGMERGE@ +NANOSLEEP_LIB = @NANOSLEEP_LIB@ NETINET_IN_H = @NETINET_IN_H@ NEXT_ARPA_INET_H = @NEXT_ARPA_INET_H@ +NEXT_ASSERT_H = @NEXT_ASSERT_H@ NEXT_AS_FIRST_DIRECTIVE_ARPA_INET_H = @NEXT_AS_FIRST_DIRECTIVE_ARPA_INET_H@ +NEXT_AS_FIRST_DIRECTIVE_ASSERT_H = @NEXT_AS_FIRST_DIRECTIVE_ASSERT_H@ NEXT_AS_FIRST_DIRECTIVE_CTYPE_H = @NEXT_AS_FIRST_DIRECTIVE_CTYPE_H@ NEXT_AS_FIRST_DIRECTIVE_ERRNO_H = @NEXT_AS_FIRST_DIRECTIVE_ERRNO_H@ +NEXT_AS_FIRST_DIRECTIVE_ERROR_H = @NEXT_AS_FIRST_DIRECTIVE_ERROR_H@ NEXT_AS_FIRST_DIRECTIVE_FCNTL_H = @NEXT_AS_FIRST_DIRECTIVE_FCNTL_H@ NEXT_AS_FIRST_DIRECTIVE_FLOAT_H = @NEXT_AS_FIRST_DIRECTIVE_FLOAT_H@ NEXT_AS_FIRST_DIRECTIVE_FNMATCH_H = @NEXT_AS_FIRST_DIRECTIVE_FNMATCH_H@ @@ -1200,6 +1241,7 @@ NEXT_AS_FIRST_DIRECTIVE_WCHAR_H = @NEXT_AS_FIRST_DIRECTIVE_WCHAR_H@ NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H = @NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H@ NEXT_CTYPE_H = @NEXT_CTYPE_H@ NEXT_ERRNO_H = @NEXT_ERRNO_H@ +NEXT_ERROR_H = @NEXT_ERROR_H@ NEXT_FCNTL_H = @NEXT_FCNTL_H@ NEXT_FLOAT_H = @NEXT_FLOAT_H@ NEXT_FNMATCH_H = @NEXT_FNMATCH_H@ @@ -1242,27 +1284,35 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ POSUB = @POSUB@ PRAGMA_COLUMNS = @PRAGMA_COLUMNS@ PRAGMA_SYSTEM_HEADER = @PRAGMA_SYSTEM_HEADER@ PRIPTR_PREFIX = @PRIPTR_PREFIX@ PR_PROGRAM = @PR_PROGRAM@ PTHREAD_H_DEFINES_STRUCT_TIMESPEC = @PTHREAD_H_DEFINES_STRUCT_TIMESPEC@ +PTHREAD_SIGMASK_LIB = @PTHREAD_SIGMASK_LIB@ PTRDIFF_T_SUFFIX = @PTRDIFF_T_SUFFIX@ RANLIB = @RANLIB@ REPLACE_ACCESS = @REPLACE_ACCESS@ REPLACE_ALIGNED_ALLOC = @REPLACE_ALIGNED_ALLOC@ REPLACE_BTOWC = @REPLACE_BTOWC@ -REPLACE_CALLOC = @REPLACE_CALLOC@ +REPLACE_CALLOC_FOR_CALLOC_GNU = @REPLACE_CALLOC_FOR_CALLOC_GNU@ +REPLACE_CALLOC_FOR_CALLOC_POSIX = @REPLACE_CALLOC_FOR_CALLOC_POSIX@ REPLACE_CANONICALIZE_FILE_NAME = @REPLACE_CANONICALIZE_FILE_NAME@ +REPLACE_CHMOD = @REPLACE_CHMOD@ REPLACE_CHOWN = @REPLACE_CHOWN@ REPLACE_CLOSE = @REPLACE_CLOSE@ +REPLACE_COPY_FILE_RANGE = @REPLACE_COPY_FILE_RANGE@ REPLACE_CREAT = @REPLACE_CREAT@ REPLACE_CTIME = @REPLACE_CTIME@ REPLACE_DPRINTF = @REPLACE_DPRINTF@ REPLACE_DUP = @REPLACE_DUP@ REPLACE_DUP2 = @REPLACE_DUP2@ +REPLACE_DUP3 = @REPLACE_DUP3@ REPLACE_DUPLOCALE = @REPLACE_DUPLOCALE@ +REPLACE_ERROR = @REPLACE_ERROR@ +REPLACE_ERROR_AT_LINE = @REPLACE_ERROR_AT_LINE@ REPLACE_EXECL = @REPLACE_EXECL@ REPLACE_EXECLE = @REPLACE_EXECLE@ REPLACE_EXECLP = @REPLACE_EXECLP@ @@ -1275,11 +1325,13 @@ REPLACE_FCHMODAT = @REPLACE_FCHMODAT@ REPLACE_FCHOWNAT = @REPLACE_FCHOWNAT@ REPLACE_FCLOSE = @REPLACE_FCLOSE@ REPLACE_FCNTL = @REPLACE_FCNTL@ +REPLACE_FDATASYNC = @REPLACE_FDATASYNC@ REPLACE_FDOPEN = @REPLACE_FDOPEN@ REPLACE_FFLUSH = @REPLACE_FFLUSH@ REPLACE_FFSLL = @REPLACE_FFSLL@ REPLACE_FNMATCH = @REPLACE_FNMATCH@ REPLACE_FOPEN = @REPLACE_FOPEN@ +REPLACE_FOPEN_FOR_FOPEN_GNU = @REPLACE_FOPEN_FOR_FOPEN_GNU@ REPLACE_FPRINTF = @REPLACE_FPRINTF@ REPLACE_FPURGE = @REPLACE_FPURGE@ REPLACE_FREE = @REPLACE_FREE@ @@ -1297,17 +1349,24 @@ REPLACE_GETCWD = @REPLACE_GETCWD@ REPLACE_GETDELIM = @REPLACE_GETDELIM@ REPLACE_GETDOMAINNAME = @REPLACE_GETDOMAINNAME@ REPLACE_GETDTABLESIZE = @REPLACE_GETDTABLESIZE@ +REPLACE_GETENTROPY = @REPLACE_GETENTROPY@ REPLACE_GETGROUPS = @REPLACE_GETGROUPS@ REPLACE_GETLINE = @REPLACE_GETLINE@ +REPLACE_GETLOADAVG = @REPLACE_GETLOADAVG@ REPLACE_GETLOGIN_R = @REPLACE_GETLOGIN_R@ REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@ REPLACE_GETPASS = @REPLACE_GETPASS@ +REPLACE_GETPASS_FOR_GETPASS_GNU = @REPLACE_GETPASS_FOR_GETPASS_GNU@ +REPLACE_GETPROGNAME = @REPLACE_GETPROGNAME@ REPLACE_GETRANDOM = @REPLACE_GETRANDOM@ +REPLACE_GETSUBOPT = @REPLACE_GETSUBOPT@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@ REPLACE_GMTIME = @REPLACE_GMTIME@ REPLACE_ICONV = @REPLACE_ICONV@ REPLACE_ICONV_OPEN = @REPLACE_ICONV_OPEN@ REPLACE_ICONV_UTF = @REPLACE_ICONV_UTF@ +REPLACE_IMAXABS = @REPLACE_IMAXABS@ +REPLACE_IMAXDIV = @REPLACE_IMAXDIV@ REPLACE_INET_NTOP = @REPLACE_INET_NTOP@ REPLACE_INET_PTON = @REPLACE_INET_PTON@ REPLACE_INITSTATE = @REPLACE_INITSTATE@ @@ -1326,21 +1385,27 @@ REPLACE_LOCALTIME = @REPLACE_LOCALTIME@ REPLACE_LOCALTIME_R = @REPLACE_LOCALTIME_R@ REPLACE_LSEEK = @REPLACE_LSEEK@ REPLACE_LSTAT = @REPLACE_LSTAT@ -REPLACE_MALLOC = @REPLACE_MALLOC@ +REPLACE_MALLOC_FOR_MALLOC_GNU = @REPLACE_MALLOC_FOR_MALLOC_GNU@ +REPLACE_MALLOC_FOR_MALLOC_POSIX = @REPLACE_MALLOC_FOR_MALLOC_POSIX@ REPLACE_MBRLEN = @REPLACE_MBRLEN@ REPLACE_MBRTOWC = @REPLACE_MBRTOWC@ REPLACE_MBSINIT = @REPLACE_MBSINIT@ REPLACE_MBSNRTOWCS = @REPLACE_MBSNRTOWCS@ REPLACE_MBSRTOWCS = @REPLACE_MBSRTOWCS@ REPLACE_MBSTATE_T = @REPLACE_MBSTATE_T@ +REPLACE_MBSTOWCS = @REPLACE_MBSTOWCS@ REPLACE_MBTOWC = @REPLACE_MBTOWC@ +REPLACE_MB_CUR_MAX = @REPLACE_MB_CUR_MAX@ REPLACE_MEMCHR = @REPLACE_MEMCHR@ REPLACE_MEMMEM = @REPLACE_MEMMEM@ +REPLACE_MEMPCPY = @REPLACE_MEMPCPY@ REPLACE_MKDIR = @REPLACE_MKDIR@ REPLACE_MKFIFO = @REPLACE_MKFIFO@ REPLACE_MKFIFOAT = @REPLACE_MKFIFOAT@ REPLACE_MKNOD = @REPLACE_MKNOD@ REPLACE_MKNODAT = @REPLACE_MKNODAT@ +REPLACE_MKOSTEMP = @REPLACE_MKOSTEMP@ +REPLACE_MKOSTEMPS = @REPLACE_MKOSTEMPS@ REPLACE_MKSTEMP = @REPLACE_MKSTEMP@ REPLACE_MKTIME = @REPLACE_MKTIME@ REPLACE_NANOSLEEP = @REPLACE_NANOSLEEP@ @@ -1351,8 +1416,10 @@ REPLACE_OBSTACK_PRINTF = @REPLACE_OBSTACK_PRINTF@ REPLACE_OPEN = @REPLACE_OPEN@ REPLACE_OPENAT = @REPLACE_OPENAT@ REPLACE_PERROR = @REPLACE_PERROR@ +REPLACE_PIPE2 = @REPLACE_PIPE2@ REPLACE_POPEN = @REPLACE_POPEN@ REPLACE_POSIX_MEMALIGN = @REPLACE_POSIX_MEMALIGN@ +REPLACE_POSIX_OPENPT = @REPLACE_POSIX_OPENPT@ REPLACE_PREAD = @REPLACE_PREAD@ REPLACE_PRINTF = @REPLACE_PRINTF@ REPLACE_PSELECT = @REPLACE_PSELECT@ @@ -1419,8 +1486,9 @@ REPLACE_RANDOM_R = @REPLACE_RANDOM_R@ REPLACE_READ = @REPLACE_READ@ REPLACE_READLINK = @REPLACE_READLINK@ REPLACE_READLINKAT = @REPLACE_READLINKAT@ -REPLACE_REALLOC = @REPLACE_REALLOC@ REPLACE_REALLOCARRAY = @REPLACE_REALLOCARRAY@ +REPLACE_REALLOC_FOR_REALLOC_GNU = @REPLACE_REALLOC_FOR_REALLOC_GNU@ +REPLACE_REALLOC_FOR_REALLOC_POSIX = @REPLACE_REALLOC_FOR_REALLOC_POSIX@ REPLACE_REALPATH = @REPLACE_REALPATH@ REPLACE_REMOVE = @REPLACE_REMOVE@ REPLACE_RENAME = @REPLACE_RENAME@ @@ -1429,6 +1497,7 @@ REPLACE_RMDIR = @REPLACE_RMDIR@ REPLACE_SCHED_YIELD = @REPLACE_SCHED_YIELD@ REPLACE_SELECT = @REPLACE_SELECT@ REPLACE_SETENV = @REPLACE_SETENV@ +REPLACE_SETHOSTNAME = @REPLACE_SETHOSTNAME@ REPLACE_SETLOCALE = @REPLACE_SETLOCALE@ REPLACE_SETSTATE = @REPLACE_SETSTATE@ REPLACE_SLEEP = @REPLACE_SLEEP@ @@ -1437,6 +1506,7 @@ REPLACE_SPRINTF = @REPLACE_SPRINTF@ REPLACE_STAT = @REPLACE_STAT@ REPLACE_STDIO_READ_FUNCS = @REPLACE_STDIO_READ_FUNCS@ REPLACE_STDIO_WRITE_FUNCS = @REPLACE_STDIO_WRITE_FUNCS@ +REPLACE_STPCPY = @REPLACE_STPCPY@ REPLACE_STPNCPY = @REPLACE_STPNCPY@ REPLACE_STRCASESTR = @REPLACE_STRCASESTR@ REPLACE_STRCHRNUL = @REPLACE_STRCHRNUL@ @@ -1463,7 +1533,9 @@ REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@ REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@ REPLACE_SYMLINK = @REPLACE_SYMLINK@ REPLACE_SYMLINKAT = @REPLACE_SYMLINKAT@ +REPLACE_TIME = @REPLACE_TIME@ REPLACE_TIMEGM = @REPLACE_TIMEGM@ +REPLACE_TIMESPEC_GET = @REPLACE_TIMESPEC_GET@ REPLACE_TMPFILE = @REPLACE_TMPFILE@ REPLACE_TOWLOWER = @REPLACE_TOWLOWER@ REPLACE_TRUNCATE = @REPLACE_TRUNCATE@ @@ -1481,25 +1553,33 @@ REPLACE_VPRINTF = @REPLACE_VPRINTF@ REPLACE_VSNPRINTF = @REPLACE_VSNPRINTF@ REPLACE_VSPRINTF = @REPLACE_VSPRINTF@ REPLACE_WCRTOMB = @REPLACE_WCRTOMB@ +REPLACE_WCSCMP = @REPLACE_WCSCMP@ REPLACE_WCSFTIME = @REPLACE_WCSFTIME@ +REPLACE_WCSNCMP = @REPLACE_WCSNCMP@ REPLACE_WCSNRTOMBS = @REPLACE_WCSNRTOMBS@ REPLACE_WCSRTOMBS = @REPLACE_WCSRTOMBS@ +REPLACE_WCSSTR = @REPLACE_WCSSTR@ REPLACE_WCSTOK = @REPLACE_WCSTOK@ REPLACE_WCSWIDTH = @REPLACE_WCSWIDTH@ REPLACE_WCTOB = @REPLACE_WCTOB@ REPLACE_WCTOMB = @REPLACE_WCTOMB@ REPLACE_WCWIDTH = @REPLACE_WCWIDTH@ +REPLACE_WMEMCMP = @REPLACE_WMEMCMP@ +REPLACE_WMEMPCPY = @REPLACE_WMEMPCPY@ REPLACE_WRITE = @REPLACE_WRITE@ +REPLACE__EXIT = @REPLACE__EXIT@ +SCHED_YIELD_LIB = @SCHED_YIELD_LIB@ SED = @SED@ +SELECT_LIB = @SELECT_LIB@ +SETLOCALE_NULL_LIB = @SETLOCALE_NULL_LIB@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SIGSEGV_H = @SIGSEGV_H@ SIG_ATOMIC_T_SUFFIX = @SIG_ATOMIC_T_SUFFIX@ SIZE_T_SUFFIX = @SIZE_T_SUFFIX@ SRC_VERSION_C = @SRC_VERSION_C@ -STDALIGN_H = @STDALIGN_H@ STDARG_H = @STDARG_H@ -STDBOOL_H = @STDBOOL_H@ +STDCKDINT_H = @STDCKDINT_H@ STDDEF_H = @STDDEF_H@ STDINT_H = @STDINT_H@ STRIP = @STRIP@ @@ -1537,8 +1617,10 @@ ac_ct_CC = @ac_ct_CC@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ +am__rm_f_notfound = @am__rm_f_notfound@ am__tar = @am__tar@ am__untar = @am__untar@ +am__xargs_n = @am__xargs_n@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ @@ -1551,8 +1633,10 @@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ +gl_LIBOBJDEPS = @gl_LIBOBJDEPS@ gl_LIBOBJS = @gl_LIBOBJS@ gl_LTLIBOBJS = @gl_LTLIBOBJS@ +gltests_LIBOBJDEPS = @gltests_LIBOBJDEPS@ gltests_LIBOBJS = @gltests_LIBOBJS@ gltests_LTLIBOBJS = @gltests_LTLIBOBJS@ gltests_WITNESS = @gltests_WITNESS@ @@ -1594,11 +1678,16 @@ LDADD = \ $(LIBINTL) \ $(LIBICONV) \ $(LIBSIGSEGV) \ - $(LIB_CLOCK_GETTIME) + $(LIBTHREAD) \ + $(LIBUNISTRING) \ + $(CLOCK_TIME_LIB) \ + $(HARD_LOCALE_LIB) \ + $(MBRTOWC_LIB) \ + $(SETLOCALE_NULL_LIB) diff_LDADD = $(LDADD) cmp_LDADD = $(LDADD) -sdiff_LDADD = $(LDADD) +sdiff_LDADD = $(LDADD) $(GETRANDOM_LIB) diff3_LDADD = $(LDADD) cmp_SOURCES = cmp.c diff3_SOURCES = diff3.c @@ -1691,18 +1780,18 @@ uninstall-binPROGRAMS: `; \ test -n "$$list" || exit 0; \ echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \ - cd "$(DESTDIR)$(bindir)" && rm -f $$files + cd "$(DESTDIR)$(bindir)" && $(am__rm_f) $$files clean-binPROGRAMS: - -test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS) + -$(am__rm_f) $(bin_PROGRAMS) clean-noinstLIBRARIES: - -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) + -$(am__rm_f) $(noinst_LIBRARIES) libver.a: $(libver_a_OBJECTS) $(libver_a_DEPENDENCIES) $(EXTRA_libver_a_DEPENDENCIES) $(AM_V_at)-rm -f libver.a $(AM_V_AR)$(libver_a_AR) libver.a $(libver_a_OBJECTS) $(libver_a_LIBADD) - $(AM_V_at)$(RANLIB) libver.a + $(AM_V_at)$(libver_a_RANLIB) libver.a cmp$(EXEEXT): $(cmp_OBJECTS) $(cmp_DEPENDENCIES) $(EXTRA_cmp_DEPENDENCIES) @rm -f cmp$(EXEEXT) @@ -1743,7 +1832,7 @@ distclean-compile: $(am__depfiles_remade): @$(MKDIR_P) $(@D) - @echo '# dummy' >$@-t && $(am__mv) $@-t $@ + @: >>$@ am--depfiles: $(am__depfiles_remade) @@ -1877,27 +1966,27 @@ install-strip: "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ fi mostlyclean-generic: - -test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES) + -$(am__rm_f) $(MOSTLYCLEANFILES) clean-generic: distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) - -test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES) + -$(am__rm_f) $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || $(am__rm_f) $(CONFIG_CLEAN_VPATH_FILES) + -$(am__rm_f) $(DISTCLEANFILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." - -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES) - -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES) + -$(am__rm_f) $(BUILT_SOURCES) + -$(am__rm_f) $(MAINTAINERCLEANFILES) clean: clean-am clean-am: clean-binPROGRAMS clean-generic clean-noinstLIBRARIES \ mostlyclean-am distclean: distclean-am - -rm -f ./$(DEPDIR)/analyze.Po + -rm -f ./$(DEPDIR)/analyze.Po -rm -f ./$(DEPDIR)/cmp.Po -rm -f ./$(DEPDIR)/context.Po -rm -f ./$(DEPDIR)/diff.Po @@ -1956,7 +2045,7 @@ install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am - -rm -f ./$(DEPDIR)/analyze.Po + -rm -f ./$(DEPDIR)/analyze.Po -rm -f ./$(DEPDIR)/cmp.Po -rm -f ./$(DEPDIR)/context.Po -rm -f ./$(DEPDIR)/diff.Po diff --git a/src/analyze.c b/src/analyze.c index a5e4bdc..ddb601d 100644 --- a/src/analyze.c +++ b/src/analyze.c @@ -1,7 +1,7 @@ /* Analyze file differences for GNU DIFF. Copyright (C) 1988-1989, 1992-1995, 1998, 2001-2002, 2004, 2006-2007, - 2009-2013, 2015-2021 Free Software Foundation, Inc. + 2009-2013, 2015-2023 Free Software Foundation, Inc. This file is part of GNU DIFF. @@ -28,6 +28,7 @@ #define ELEMENT lin #define EQUAL(x,y) ((x) == (y)) #define OFFSET lin +#define OFFSET_MAX LIN_MAX #define EXTRA_CONTEXT_FIELDS /* none */ #define NOTE_DELETE(c, xoff) (files[0].changed[files[0].realindexes[xoff]] = 1) #define NOTE_INSERT(c, yoff) (files[1].changed[files[1].realindexes[yoff]] = 1) @@ -67,7 +68,7 @@ discard_confusing_lines (struct file_data filevec[]) /* Set up equiv_count[F][I] as the number of lines in file F that fall in equivalence class I. */ - p = zalloc (filevec[0].equiv_max * (2 * sizeof *p)); + p = xcalloc (filevec[0].equiv_max, 2 * sizeof *p); equiv_count[0] = p; equiv_count[1] = p + filevec[0].equiv_max; @@ -78,8 +79,8 @@ discard_confusing_lines (struct file_data filevec[]) /* Set up tables of which lines are going to be discarded. */ - discarded[0] = zalloc (filevec[0].buffered_lines - + filevec[1].buffered_lines); + discarded[0] = xzalloc (filevec[0].buffered_lines + + filevec[1].buffered_lines); discarded[1] = discarded[0] + filevec[0].buffered_lines; /* Mark to be discarded each line that matches no line of the other file. @@ -451,8 +452,8 @@ briefly_report (int changes, struct file_data const filevec[]) { if (changes) message ((brief - ? _("Files %s and %s differ\n") - : _("Binary files %s and %s differ\n")), + ? N_("Files %s and %s differ\n") + : N_("Binary files %s and %s differ\n")), file_label[0] ? file_label[0] : filevec[0].name, file_label[1] ? file_label[1] : filevec[1].name); } @@ -542,7 +543,7 @@ diff_2_files (struct comparison *cmp) Allocate an extra element, always 0, at each end of each vector. */ size_t s = cmp->file[0].buffered_lines + cmp->file[1].buffered_lines + 4; - char *flag_space = zalloc (s); + char *flag_space = xzalloc (s); cmp->file[0].changed = flag_space + 1; cmp->file[1].changed = flag_space + cmp->file[0].buffered_lines + 3; @@ -697,7 +698,7 @@ diff_2_files (struct comparison *cmp) free (e); } - if (! ROBUST_OUTPUT_STYLE (output_style)) + if (! robust_output_style (output_style)) for (f = 0; f < 2; ++f) if (cmp->file[f].missing_newline) { diff --git a/src/cmp.c b/src/cmp.c index 9953d14..4c6dc74 100644 --- a/src/cmp.c +++ b/src/cmp.c @@ -1,7 +1,7 @@ /* GNU cmp - compare two files byte by byte Copyright (C) 1990-1996, 1998, 2001-2002, 2004, 2006-2007, 2009-2013, - 2015-2021 Free Software Foundation, Inc. + 2015-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -39,21 +39,25 @@ #include /* The official name of this program (e.g., no 'g' prefix). */ -#define PROGRAM_NAME "cmp" +static char const PROGRAM_NAME[] = "cmp"; #define AUTHORS \ proper_name_utf8 ("Torbjorn Granlund", "Torbj\303\266rn Granlund"), \ proper_name ("David MacKenzie") +static bool +hard_locale_LC_MESSAGES (void) +{ #if defined LC_MESSAGES && ENABLE_NLS -# define hard_locale_LC_MESSAGES hard_locale (LC_MESSAGES) + return hard_locale (LC_MESSAGES); #else -# define hard_locale_LC_MESSAGES 0 + return false; #endif +} static int cmp (void); static off_t file_position (int); -static size_t block_compare (word const *, word const *) _GL_ATTRIBUTE_PURE; +static size_t block_compare (word const *, word const *) ATTRIBUTE_PURE; static size_t count_newlines (char *, size_t); static void sprintc (char *, unsigned char); @@ -63,7 +67,8 @@ static char const *file[2]; /* File descriptors of the files. */ static int file_desc[2]; -/* Status of the files. */ +/* Status of the files. If st_size is negative, the status is unknown + and st_blksize (if it exists) is just a reasonable guess. */ static struct stat stat_buf[2]; /* Read buffers for the files. */ @@ -110,8 +115,7 @@ static struct option const long_options[] = {0, 0, 0, 0} }; -static void try_help (char const *, char const *) __attribute__((noreturn)); -static void +static _Noreturn void try_help (char const *reason_msgid, char const *operand) { if (reason_msgid) @@ -252,7 +256,7 @@ main (int argc, char **argv) case 'v': version_etc (stdout, PROGRAM_NAME, PACKAGE_NAME, Version, - AUTHORS, (char *) NULL); + AUTHORS, nullptr); check_stdout (); return EXIT_SUCCESS; @@ -295,21 +299,31 @@ main (int argc, char **argv) set_binary_mode (STDIN_FILENO, O_BINARY); } else - file_desc[f] = open (file[f], O_RDONLY | O_BINARY, 0); + { + file_desc[f] = open (file[f], O_RDONLY | O_BINARY, 0); - if (file_desc[f] < 0 || fstat (file_desc[f], stat_buf + f) != 0) + if (file_desc[f] < 0) + { + if (comparison_type != type_status) + error (0, errno, "%s", file[f]); + exit (EXIT_TROUBLE); + } + } + + if (fstat (file_desc[f], stat_buf + f) < 0) { - if (file_desc[f] < 0 && comparison_type == type_status) - exit (EXIT_TROUBLE); - else - die (EXIT_TROUBLE, errno, "%s", file[f]); + stat_buf[f].st_size = -1; +#if HAVE_STRUCT_STAT_ST_BLKSIZE + stat_buf[f].st_blksize = 8 * 1024; +#endif } } /* If the files are links to the same inode and have the same file position, they are identical. */ - if (0 < same_file (&stat_buf[0], &stat_buf[1]) + if (0 <= stat_buf[0].st_size && 0 <= stat_buf[1].st_size + && 0 < same_file (&stat_buf[0], &stat_buf[1]) && same_file_attributes (&stat_buf[0], &stat_buf[1]) && file_position (0) == file_position (1)) return EXIT_SUCCESS; @@ -333,8 +347,8 @@ main (int argc, char **argv) and if more bytes will be compared than are in the smaller file. */ if (comparison_type == type_status - && S_ISREG (stat_buf[0].st_mode) - && S_ISREG (stat_buf[1].st_mode)) + && 0 <= stat_buf[0].st_size && S_ISREG (stat_buf[0].st_mode) + && 0 <= stat_buf[1].st_size && S_ISREG (stat_buf[1].st_mode)) { off_t s0 = stat_buf[0].st_size - file_position (0); off_t s1 = stat_buf[1].st_size - file_position (1); @@ -346,7 +360,7 @@ main (int argc, char **argv) exit (EXIT_FAILURE); } - /* Get the optimal block size of the files. */ + /* Guess a good block size for the files. */ buf_size = buffer_lcm (STAT_BLOCKSIZE (stat_buf[0]), STAT_BLOCKSIZE (stat_buf[1]), @@ -390,7 +404,7 @@ cmp (void) char *buf1 = (char *) buffer1; int differing = 0; int f; - int offset_width IF_LINT (= 0); + int offset_width IF_LINT (= 0); /* IF_LINT due to GCC bug 101768. */ if (comparison_type == type_all_diffs) { @@ -398,7 +412,7 @@ cmp (void) ? bytes : TYPE_MAXIMUM (off_t)); for (f = 0; f < 2; f++) - if (S_ISREG (stat_buf[f].st_mode)) + if (0 <= stat_buf[f].st_size && S_ISREG (stat_buf[f].st_mode)) { off_t file_bytes = stat_buf[f].st_size - file_position (f); if (file_bytes < byte_number_max) @@ -507,7 +521,7 @@ cmp (void) N_("%s %s differ: byte %s, line %s\n"); char const *byte_message = _(byte_msgid); bool use_byte_message = (byte_message != byte_msgid - || hard_locale_LC_MESSAGES); + || hard_locale_LC_MESSAGES ()); printf (use_byte_message ? byte_message : char_message, file[0], file[1], byte_num, line_num); diff --git a/src/context.c b/src/context.c index c65f427..a4c76ca 100644 --- a/src/context.c +++ b/src/context.c @@ -1,7 +1,7 @@ /* Context-format output routines for GNU DIFF. Copyright (C) 1988-1989, 1991-1995, 1998, 2001-2002, 2004, 2006, 2009-2013, - 2015-2021 Free Software Foundation, Inc. + 2015-2023 Free Software Foundation, Inc. This file is part of GNU DIFF. @@ -52,7 +52,7 @@ print_context_label (char const *mark, INT_STRLEN_BOUND (time_t) + 11)]; struct tm const *tm = localtime (&inf->stat.st_mtime); int nsec = get_stat_mtime_ns (&inf->stat); - if (! (tm && nstrftime (buf, sizeof buf, time_format, tm, 0, nsec))) + if (! (tm && nstrftime (buf, sizeof buf, time_format, tm, localtz, nsec))) { verify (TYPE_IS_INTEGER (time_t)); if (LONG_MIN <= TYPE_MINIMUM (time_t) @@ -127,7 +127,7 @@ print_context_script (struct change *script, bool unidiff) static void print_context_number_range (struct file_data const *file, lin a, lin b) { - printint trans_a, trans_b; + lin trans_a, trans_b; translate_range (file, a, b, &trans_a, &trans_b); /* We can have B <= A in the case of a range of no lines. @@ -196,7 +196,7 @@ pr_context_hunk (struct change *hunk) last1 = files[1].valid_lines - 1; /* If desired, find the preceding function definition line in file 0. */ - function = NULL; + function = nullptr; if (function_regexp.fastmap) function = find_function (files[0].linbuf, first0); @@ -296,7 +296,7 @@ pr_context_hunk (struct change *hunk) static void print_unidiff_number_range (struct file_data const *file, lin a, lin b) { - printint trans_a, trans_b; + lin trans_a, trans_b; translate_range (file, a, b, &trans_a, &trans_b); /* We can have B < A in the case of a range of no lines. @@ -345,7 +345,7 @@ pr_unidiff_hunk (struct change *hunk) last1 = files[1].valid_lines - 1; /* If desired, find the preceding function definition line in file 0. */ - function = NULL; + function = nullptr; if (function_regexp.fastmap) function = find_function (files[0].linbuf, first0); @@ -379,7 +379,7 @@ pr_unidiff_hunk (struct change *hunk) char const *const *line = &files[0].linbuf[i++]; if (! (suppress_blank_empty && **line == '\n')) putc (initial_tab ? '\t' : ' ', out); - print_1_line (NULL, line); + print_1_line (nullptr, line); j++; } else @@ -395,7 +395,7 @@ pr_unidiff_hunk (struct change *hunk) putc ('-', out); if (initial_tab && ! (suppress_blank_empty && **line == '\n')) putc ('\t', out); - print_1_line_nl (NULL, line, true); + print_1_line_nl (nullptr, line, true); set_color_context (RESET_CONTEXT); @@ -414,7 +414,7 @@ pr_unidiff_hunk (struct change *hunk) putc ('+', out); if (initial_tab && ! (suppress_blank_empty && **line == '\n')) putc ('\t', out); - print_1_line_nl (NULL, line, true); + print_1_line_nl (nullptr, line, true); set_color_context (RESET_CONTEXT); @@ -433,7 +433,7 @@ pr_unidiff_hunk (struct change *hunk) 2*CONTEXT unchanged lines appear, and return a pointer to the 'struct change' for the last change before those lines. */ -static struct change * _GL_ATTRIBUTE_PURE +static struct change * ATTRIBUTE_PURE find_hunk (struct change *start) { struct change *prev; @@ -481,7 +481,7 @@ mark_ignorable (struct change *script) lin first0, last0, first1, last1; /* Turn this change into a hunk: detach it from the others. */ - script->link = NULL; + script->link = nullptr; /* Determine whether this change is ignorable. */ script->ignore = ! analyze_hunk (script, @@ -497,7 +497,7 @@ mark_ignorable (struct change *script) /* Find the last function-header line in LINBUF prior to line number LINENUM. This is a line containing a match for the regexp in 'function_regexp'. - Return the address of the text, or NULL if no function-header is found. */ + Return the address of the text, or null if no function-header is found. */ static char const * find_function (char const * const *linbuf, lin linenum) @@ -512,10 +512,11 @@ find_function (char const * const *linbuf, lin linenum) char const *line = linbuf[i]; size_t linelen = linbuf[i + 1] - line - 1; - /* FIXME: re_search's size args should be size_t, not int. */ - int len = MIN (linelen, INT_MAX); + /* This line is for documentation; in practice it's equivalent + to LEN = LINELEN and no machine code is generated. */ + regoff_t len = MIN (linelen, TYPE_MAXIMUM (regoff_t)); - if (0 <= re_search (&function_regexp, line, len, 0, len, NULL)) + if (0 <= re_search (&function_regexp, line, len, 0, len, nullptr)) { find_function_last_match = i; return line; @@ -526,5 +527,5 @@ find_function (char const * const *linbuf, lin linenum) if (find_function_last_match != LIN_MAX) return linbuf[find_function_last_match]; - return NULL; + return nullptr; } diff --git a/src/die.h b/src/die.h index 5ab0512..a9afa2f 100644 --- a/src/die.h +++ b/src/die.h @@ -1,5 +1,5 @@ /* Report an error and exit. - Copyright 2016-2021 Free Software Foundation, Inc. + Copyright 2016-2023 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -20,7 +20,6 @@ # define DIE_H # include -# include # include /* Like 'error (STATUS, ...)', except STATUS must be a nonzero constant. diff --git a/src/diff.c b/src/diff.c index 9938daa..c5cc758 100644 --- a/src/diff.c +++ b/src/diff.c @@ -1,7 +1,7 @@ /* GNU diff - compare files line by line Copyright (C) 1988-1989, 1992-1994, 1996, 1998, 2001-2002, 2004, 2006-2007, - 2009-2013, 2015-2021 Free Software Foundation, Inc. + 2009-2013, 2015-2023 Free Software Foundation, Inc. This file is part of GNU DIFF. @@ -33,7 +33,6 @@ #include #include #include -#include #include #include #include @@ -45,7 +44,7 @@ #include /* The official name of this program (e.g., no 'g' prefix). */ -#define PROGRAM_NAME "diff" +static char const PROGRAM_NAME[] = "diff"; #define AUTHORS \ proper_name ("Paul Eggert"), \ @@ -73,7 +72,7 @@ static void summarize_regexp_list (struct regexp_list *); static void specify_style (enum output_style); static void specify_value (char const **, char const *, char const *); static void specify_colors_style (char const *); -static void try_help (char const *, char const *) __attribute__((noreturn)); +static _Noreturn void try_help (char const *, char const *); static void check_stdout (void); static void usage (void); @@ -105,6 +104,9 @@ static bool unidirectional_new_file; /* Report files compared that are the same (-s). Normally nothing is output when that happens. */ static bool report_identical_files; + +/* Do not treat directories specially. */ +static bool no_directory; static char const shortopts[] = "0123456789abBcC:dD:eEfF:hHiI:lL:nNpPqrsS:tTuU:vwW:x:X:yZ"; @@ -144,6 +146,7 @@ enum COLOR_OPTION, COLOR_PALETTE_OPTION, + NO_DIRECTORY_OPTION, PRESUME_OUTPUT_TTY_OPTION, }; @@ -224,8 +227,11 @@ static struct option const longopts[] = {"version", 0, 0, 'v'}, {"width", 1, 0, 'W'}, + /* This is solely for diff3. Do not document. */ + {"-no-directory", no_argument, nullptr, NO_DIRECTORY_OPTION}, + /* This is solely for testing. Do not document. */ - {"-presume-output-tty", no_argument, NULL, PRESUME_OUTPUT_TTY_OPTION}, + {"-presume-output-tty", no_argument, nullptr, PRESUME_OUTPUT_TTY_OPTION}, {0, 0, 0, 0} }; @@ -246,7 +252,11 @@ option_list (char **optionvec, int count) char *p; for (i = 0; i < count; i++) - size += 1 + shell_quote_length (optionvec[i]); + { + size_t optsize = 1 + shell_quote_length (optionvec[i]); + if (INT_ADD_WRAPV (optsize, size, &size)) + xalloc_die (); + } p = result = xmalloc (size); @@ -280,8 +290,8 @@ main (int argc, char **argv) bool explicit_context = false; size_t width = 0; bool show_c_function = false; - char const *from_file = NULL; - char const *to_file = NULL; + char const *from_file = nullptr; + char const *to_file = nullptr; intmax_t numval; char *numend; @@ -302,7 +312,7 @@ main (int argc, char **argv) /* Decode the options. */ - while ((c = getopt_long (argc, argv, shortopts, longopts, NULL)) != -1) + while ((c = getopt_long (argc, argv, shortopts, longopts, nullptr)) != -1) { switch (c) { @@ -379,21 +389,60 @@ main (int argc, char **argv) case 'D': specify_style (OUTPUT_IFDEF); { - static char const C_ifdef_group_formats[] = - "%%=%c#ifndef %s\n%%<#endif /* ! %s */\n%c#ifdef %s\n%%>#endif /* %s */\n%c#ifndef %s\n%%<#else /* %s */\n%%>#endif /* %s */\n"; - char *b = xmalloc (sizeof C_ifdef_group_formats - + 7 * strlen (optarg) - 14 /* 7*"%s" */ - - 8 /* 5*"%%" + 3*"%c" */); - sprintf (b, C_ifdef_group_formats, - 0, - optarg, optarg, 0, - optarg, optarg, 0, - optarg, optarg, optarg); - for (i = 0; i < sizeof group_format / sizeof group_format[0]; i++) - { - specify_value (&group_format[i], b, "-D"); - b += strlen (b) + 1; - } + static char const C_ifdef_group_formats[] + = (/* UNCHANGED */ + "%=" + "\0" + + /* OLD */ + "#ifndef @\n" + "%<" + "#endif /* ! @ */\n" + "\0" + + /* NEW */ + "#ifdef @\n" + "%>" + "#endif /* @ */\n" + "\0" + + /* CHANGED */ + "#ifndef @\n" + "%<" + "#else /* @ */\n" + "%>" + "#endif /* @ */\n"); + + size_t alloc = strlen (optarg); + if (INT_MULTIPLY_WRAPV (alloc, 7, &alloc) + || INT_ADD_WRAPV (alloc, + sizeof C_ifdef_group_formats - 7 /* 7*"@" */, + &alloc)) + xalloc_die (); + char *b = xmalloc (alloc); + char *base = b; + int changes = 0; + + for (i = 0; i < sizeof C_ifdef_group_formats; i++) + { + char ch = C_ifdef_group_formats[i]; + switch (ch) + { + default: + *b++ = ch; + break; + + case '@': + b = stpcpy (b, optarg); + break; + + case '\0': + *b++ = ch; + specify_value (&group_format[changes++], base, "-D"); + base = b; + break; + } + } } break; @@ -435,7 +484,7 @@ main (int argc, char **argv) case 'l': if (!pr_program[0]) - try_help ("pagination not supported on this host", NULL); + try_help ("pagination not supported on this host", nullptr); paginate = true; #ifdef SIGCHLD /* Pagination requires forking and waiting, and @@ -502,7 +551,7 @@ main (int argc, char **argv) case 'v': version_etc (stdout, PROGRAM_NAME, PACKAGE_NAME, Version, - AUTHORS, (char *) NULL); + AUTHORS, nullptr); check_stdout (); return EXIT_SUCCESS; @@ -650,12 +699,16 @@ main (int argc, char **argv) set_color_palette (optarg); break; + case NO_DIRECTORY_OPTION: + no_directory = true; + break; + case PRESUME_OUTPUT_TTY_OPTION: presume_output_tty = true; break; default: - try_help (NULL, NULL); + try_help (nullptr, nullptr); } prev = c; } @@ -687,6 +740,9 @@ main (int argc, char **argv) #else time_format = "%Y-%m-%d %H:%M:%S %z"; #endif +#if !HAVE_TM_GMTOFF + localtz = tzalloc (getenv ("TZ")); +#endif } else { @@ -750,8 +806,12 @@ main (int argc, char **argv) if (!group_format[UNCHANGED]) group_format[UNCHANGED] = "%="; if (!group_format[CHANGED]) - group_format[CHANGED] = concat (group_format[OLD], - group_format[NEW], ""); + { + char *p = xmalloc (strlen (group_format[OLD]) + + strlen (group_format[NEW]) + 1); + group_format[CHANGED] = p; + strcpy (stpcpy (p, group_format[OLD]), group_format[NEW]); + } } no_diff_means_no_output = @@ -775,7 +835,7 @@ main (int argc, char **argv) else for (; optind < argc; optind++) { - int status = compare_files (NULL, from_file, argv[optind]); + int status = compare_files (nullptr, from_file, argv[optind]); if (exit_status < status) exit_status = status; } @@ -785,7 +845,7 @@ main (int argc, char **argv) if (to_file) for (; optind < argc; optind++) { - int status = compare_files (NULL, argv[optind], to_file); + int status = compare_files (nullptr, argv[optind], to_file); if (exit_status < status) exit_status = status; } @@ -799,7 +859,7 @@ main (int argc, char **argv) try_help ("extra operand '%s'", argv[optind + 2]); } - exit_status = compare_files (NULL, argv[optind], argv[optind + 1]); + exit_status = compare_files (nullptr, argv[optind], argv[optind + 1]); } } @@ -807,7 +867,7 @@ main (int argc, char **argv) print_message_queue (); check_stdout (); - exit (exit_status); + cleanup_signal_handlers (); return exit_status; } @@ -1032,7 +1092,7 @@ specify_value (char const **var, char const *value, char const *option) if (*var && ! STREQ (*var, value)) { error (0, 0, _("conflicting %s option value '%s'"), option, value); - try_help (NULL, NULL); + try_help (nullptr, nullptr); } *var = value; } @@ -1044,7 +1104,7 @@ specify_style (enum output_style style) if (output_style != style) { if (output_style != OUTPUT_UNSPECIFIED) - try_help ("conflicting output style options", NULL); + try_help ("conflicting output style options", nullptr); output_style = style; } } @@ -1053,7 +1113,7 @@ specify_style (enum output_style style) static void specify_colors_style (char const *value) { - if (value == NULL || STREQ (value, "auto")) + if (value == nullptr || STREQ (value, "auto")) colors_style = AUTO; else if (STREQ (value, "always")) colors_style = ALWAYS; @@ -1083,6 +1143,24 @@ set_mtime_to_now (struct stat *st) #endif } +/* cmp.file[f].desc markers */ +enum { NONEXISTENT = -1 }; /* nonexistent file */ +enum { UNOPENED = -2 }; /* unopened file (e.g. directory) */ + +/* encoded errno value */ +static int +errno_encode (int err) +{ + return -3 - err; +} + +/* inverse of errno_encode */ +static int +errno_decode (int desc) +{ + return -3 - desc; +} + /* Compare two files (or dirs) with parent comparison PARENT and names NAME0 and NAME1. (If PARENT is null, then the first name is just NAME0, etc.) @@ -1126,13 +1204,6 @@ compare_files (struct comparison const *parent, memset (cmp.file, 0, sizeof cmp.file); cmp.parent = parent; - /* cmp.file[f].desc markers */ -#define NONEXISTENT (-1) /* nonexistent file */ -#define UNOPENED (-2) /* unopened file (e.g. directory) */ -#define ERRNO_ENCODE(errno) (-3 - (errno)) /* encoded errno value */ - -#define ERRNO_DECODE(desc) (-3 - (desc)) /* inverse of ERRNO_ENCODE */ - cmp.file[0].desc = name0 ? UNOPENED : NONEXISTENT; cmp.file[1].desc = name1 ? UNOPENED : NONEXISTENT; @@ -1145,17 +1216,17 @@ compare_files (struct comparison const *parent, if (!parent) { - free0 = NULL; - free1 = NULL; + free0 = nullptr; + free1 = nullptr; cmp.file[0].name = name0; cmp.file[1].name = name1; } else { cmp.file[0].name = free0 - = file_name_concat (parent->file[0].name, name0, NULL); + = file_name_concat (parent->file[0].name, name0, nullptr); cmp.file[1].name = free1 - = file_name_concat (parent->file[1].name, name1, NULL); + = file_name_concat (parent->file[1].name, name1, nullptr); } /* Stat the files. */ @@ -1175,14 +1246,14 @@ compare_files (struct comparison const *parent, if (binary && ! isatty (STDIN_FILENO)) set_binary_mode (STDIN_FILENO, O_BINARY); if (fstat (STDIN_FILENO, &cmp.file[f].stat) != 0) - cmp.file[f].desc = ERRNO_ENCODE (errno); + cmp.file[f].desc = errno_encode (errno); else { if (S_ISREG (cmp.file[f].stat.st_mode)) { off_t pos = lseek (STDIN_FILENO, 0, SEEK_CUR); if (pos < 0) - cmp.file[f].desc = ERRNO_ENCODE (errno); + cmp.file[f].desc = errno_encode (errno); else cmp.file[f].stat.st_size = MAX (0, cmp.file[f].stat.st_size - pos); @@ -1197,7 +1268,7 @@ compare_files (struct comparison const *parent, ? lstat (cmp.file[f].name, &cmp.file[f].stat) : stat (cmp.file[f].name, &cmp.file[f].stat)) != 0) - cmp.file[f].desc = ERRNO_ENCODE (errno); + cmp.file[f].desc = errno_encode (errno); } } @@ -1212,8 +1283,8 @@ compare_files (struct comparison const *parent, ? (S_ISREG (cmp.file[f].stat.st_mode) && ! (cmp.file[f].stat.st_mode & (S_IRWXU | S_IRWXG | S_IRWXO)) && cmp.file[f].stat.st_size == 0) - : ((cmp.file[f].desc == ERRNO_ENCODE (ENOENT) - || cmp.file[f].desc == ERRNO_ENCODE (EBADF)) + : ((cmp.file[f].desc == errno_encode (ENOENT) + || cmp.file[f].desc == errno_encode (EBADF)) && ! parent && (cmp.file[1 - f].desc == UNOPENED || cmp.file[1 - f].desc == STDIN_FILENO)))) @@ -1228,7 +1299,7 @@ compare_files (struct comparison const *parent, for (f = 0; f < 2; f++) { - int e = ERRNO_DECODE (cmp.file[f].desc); + int e = errno_decode (cmp.file[f].desc); if (0 <= e) { errno = e; @@ -1237,7 +1308,8 @@ compare_files (struct comparison const *parent, } } - if (status == EXIT_SUCCESS && ! parent && DIR_P (0) != DIR_P (1)) + if (status == EXIT_SUCCESS && ! parent && !no_directory + && DIR_P (0) != DIR_P (1)) { /* If one is a directory, and it was specified in the command line, use the file in that dir with the other file's basename. */ @@ -1321,7 +1393,7 @@ compare_files (struct comparison const *parent, { char const *dir; - /* PARENT must be non-NULL here. */ + /* PARENT must be non-null here. */ assert (parent); dir = parent->file[cmp.file[0].desc == NONEXISTENT].name; @@ -1336,11 +1408,11 @@ compare_files (struct comparison const *parent, /* We have two files that are not to be compared. */ /* See POSIX 1003.1-2001 for this format. */ - message5 ("File %s is a %s while file %s is a %s\n", - file_label[0] ? file_label[0] : cmp.file[0].name, - file_type (&cmp.file[0].stat), - file_label[1] ? file_label[1] : cmp.file[1].name, - file_type (&cmp.file[1].stat)); + message ("File %s is a %s while file %s is a %s\n", + file_label[0] ? file_label[0] : cmp.file[0].name, + file_type (&cmp.file[0].stat), + file_label[1] ? file_label[1] : cmp.file[1].name, + file_type (&cmp.file[1].stat)); /* This is a difference. */ status = EXIT_FAILURE; @@ -1356,12 +1428,12 @@ compare_files (struct comparison const *parent, && S_ISLNK (cmp.file[1].stat.st_mode)) { /* Compare the values of the symbolic links. */ - char *link_value[2] = { NULL, NULL }; + char *link_value[2] = { nullptr, nullptr }; for (f = 0; f < 2; f++) { link_value[f] = xreadlink (cmp.file[f].name); - if (link_value[f] == NULL) + if (link_value[f] == nullptr) { perror_with_name (cmp.file[f].name); status = EXIT_TROUBLE; @@ -1386,11 +1458,11 @@ compare_files (struct comparison const *parent, /* We have two files that are not to be compared, because one of them is a symbolic link and the other one is not. */ - message5 ("File %s is a %s while file %s is a %s\n", - file_label[0] ? file_label[0] : cmp.file[0].name, - file_type (&cmp.file[0].stat), - file_label[1] ? file_label[1] : cmp.file[1].name, - file_type (&cmp.file[1].stat)); + message ("File %s is a %s while file %s is a %s\n", + file_label[0] ? file_label[0] : cmp.file[0].name, + file_type (&cmp.file[0].stat), + file_label[1] ? file_label[1] : cmp.file[1].name, + file_type (&cmp.file[1].stat)); /* This is a difference. */ status = EXIT_FAILURE; diff --git a/src/diff.h b/src/diff.h index 27362c0..75d5ab0 100644 --- a/src/diff.h +++ b/src/diff.h @@ -1,7 +1,7 @@ /* Shared definitions for GNU DIFF Copyright (C) 1988-1989, 1991-1995, 1998, 2001-2002, 2004, 2009-2013, - 2015-2021 Free Software Foundation, Inc. + 2015-2023 Free Software Foundation, Inc. This file is part of GNU DIFF. @@ -23,6 +23,16 @@ #include #include +_GL_INLINE_HEADER_BEGIN + +#ifdef GDIFF_MAIN +# define DIFF_INLINE _GL_EXTERN_INLINE +# define XTERN +#else +# define DIFF_INLINE _GL_INLINE +# define XTERN extern +#endif + /* What kind of changes a hunk contains. */ enum changes { @@ -54,12 +64,6 @@ enum colors_style /* Variables for command line options */ -#ifndef GDIFF_MAIN -# define XTERN extern -#else -# define XTERN -#endif - enum output_style { /* No output style specified. */ @@ -92,7 +96,10 @@ enum output_style /* True for output styles that are robust, i.e. can handle a file that ends in a non-newline. */ -#define ROBUST_OUTPUT_STYLE(S) ((S) != OUTPUT_ED && (S) != OUTPUT_FORWARD_ED) +DIFF_INLINE bool robust_output_style (enum output_style s) +{ + return s != OUTPUT_ED && s != OUTPUT_FORWARD_ED; +} XTERN enum output_style output_style; @@ -155,6 +162,13 @@ XTERN bool ignore_file_name_case; (--no-dereference). */ XTERN bool no_dereference_symlinks; +/* Local timezone for 'c' output headers, if needed. */ +#if HAVE_TM_GMTOFF +# define localtz 0 /* Placeholder since localtz is never needed. */ +#else +XTERN timezone_t localtz; +#endif + /* File labels for '-c' output headers (--label). */ XTERN char *file_label[2]; @@ -322,10 +336,6 @@ struct file_data { lin equiv_max; }; -/* The file buffer, considered as an array of bytes rather than - as an array of words. */ -#define FILE_BUFFER(f) ((char *) (f)->buffer) - /* Data on two input files being compared. */ struct comparison @@ -355,7 +365,9 @@ extern void print_context_script (struct change *, bool); extern int diff_dirs (struct comparison const *, int (*) (struct comparison const *, char const *, char const *)); -extern char *find_dir_file_pathname (char const *, char const *); +extern char *find_dir_file_pathname (char const *, char const *) + ATTRIBUTE_MALLOC ATTRIBUTE_DEALLOC_FREE + ATTRIBUTE_RETURNS_NONNULL; /* ed.c */ extern void print_ed_script (struct change *); @@ -380,24 +392,21 @@ extern void print_sdiff_script (struct change *); /* util.c */ extern char const change_letter[4]; extern char const pr_program[]; -extern char *concat (char const *, char const *, char const *); -extern bool lines_differ (char const *, char const *) _GL_ATTRIBUTE_PURE; +extern bool lines_differ (char const *, char const *) ATTRIBUTE_PURE; extern lin translate_line_number (struct file_data const *, lin); extern struct change *find_change (struct change *); extern struct change *find_reverse_change (struct change *); -extern void *zalloc (size_t); extern enum changes analyze_hunk (struct change *, lin *, lin *, lin *, lin *); extern void begin_output (void); +extern void cleanup_signal_handlers (void); extern void debug_script (struct change *); -extern void fatal (char const *) __attribute__((noreturn)); +extern _Noreturn void fatal (char const *); extern void finish_output (void); -extern void message (char const *, char const *, char const *); -extern void message5 (char const *, char const *, char const *, - char const *, char const *); +extern void message (char const *, ...) ATTRIBUTE_FORMAT ((printf, 1, 2)); extern void output_1_line (char const *, char const *, char const *, char const *); extern void perror_with_name (char const *); -extern void pfatal_with_name (char const *) __attribute__((noreturn)); +extern _Noreturn void pfatal_with_name (char const *); extern void print_1_line (char const *, char const * const *); extern void print_1_line_nl (char const *, char const * const *, bool); extern void print_message_queue (void); @@ -405,8 +414,7 @@ extern void print_number_range (char, struct file_data *, lin, lin); extern void print_script (struct change *, struct change * (*) (struct change *), void (*) (struct change *)); extern void setup_output (char const *, char const *, bool); -extern void translate_range (struct file_data const *, lin, lin, - printint *, printint *); +extern void translate_range (struct file_data const *, lin, lin, lin *, lin *); enum color_context { @@ -421,3 +429,5 @@ XTERN bool presume_output_tty; extern void set_color_context (enum color_context color_context); extern void set_color_palette (char const *palette); + +_GL_INLINE_HEADER_END diff --git a/src/diff3.c b/src/diff3.c index 6be7e3c..f8a48eb 100644 --- a/src/diff3.c +++ b/src/diff3.c @@ -1,7 +1,7 @@ /* GNU diff3 - compare three files line by line Copyright (C) 1988-1989, 1992-1996, 1998, 2001-2002, 2004, 2006, 2009-2013, - 2015-2021 Free Software Foundation, Inc. + 2015-2023 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -16,6 +16,14 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . */ +/* As of GCC 11.2.1, gcc -Wanalyzer-too-complex reports that this + program's code is too complicated for gcc -fanalyzer. + FIXME: Compile with -DANALYZER_NULL_DEFERENCE and see whether the + resulting diagnostics are false alarms. */ +#if 10 <= __GNUC__ && !ANALYZER_NULL_DEREFERENCE +# pragma GCC diagnostic ignored "-Wanalyzer-null-dereference" +#endif + #include "system.h" #include "paths.h" @@ -37,7 +45,7 @@ #include /* The official name of this program (e.g., no 'g' prefix). */ -#define PROGRAM_NAME "diff3" +static char const PROGRAM_NAME[] = "diff3"; #define AUTHORS \ proper_name ("Randy Smith") @@ -46,28 +54,24 @@ data structures for both diff3 diffs and normal diffs. */ /* Different files within a three way diff. */ -#define FILE0 0 -#define FILE1 1 -#define FILE2 2 +enum { FILE0, FILE1, FILE2 }; /* A three way diff is built from two two-way diffs; the file which the two two-way diffs share is: */ -#define FILEC FILE2 +enum { FILEC = FILE2 }; /* Different files within a two way diff. FC is the common file, FO the other file. */ -#define FO 0 -#define FC 1 +enum { FO, FC }; /* The ranges are indexed by */ -#define RANGE_START 0 -#define RANGE_END 1 +enum { RANGE_START, RANGE_END }; enum diff_type { - ERROR, /* Should not be used */ - ADD, /* Two way diff add */ - CHANGE, /* Two way diff change */ - DELETE, /* Two way diff delete */ + DIFF_ERROR, /* Should not be used */ + DIFF_ADD, /* Two way diff add */ + DIFF_CHANGE, /* Two way diff change */ + DIFF_DELETE, /* Two way diff delete */ DIFF_ALL, /* All three are different */ DIFF_1ST, /* Only the first is different */ DIFF_2ND, /* Only the second */ @@ -80,7 +84,7 @@ struct diff_block { char **lines[2]; /* The actual lines (may contain nulls) */ size_t *lengths[2]; /* Line lengths (including newlines, if any) */ struct diff_block *next; -#ifdef lint +#ifdef GCC_LINT struct diff_block *n2; /* Used only when freeing. */ #endif }; @@ -95,7 +99,11 @@ struct diff3_block { struct diff3_block *next; }; -/* Access the ranges on a diff block. */ +/* The following are macros, not functions, as they may be used as + lvalues, or they may be polymorphic in that they work with either + diff or diff3 blocks. */ + +/* Access the ranges on a diff or diff3 block. */ #define D_LOWLINE(diff, filenum) \ ((diff)->ranges[filenum][RANGE_START]) #define D_HIGHLINE(diff, filenum) \ @@ -103,7 +111,7 @@ struct diff3_block { #define D_NUMLINES(diff, filenum) \ (D_HIGHLINE (diff, filenum) - D_LOWLINE (diff, filenum) + 1) -/* Access the line numbers in a file in a diff by relative line +/* Access the line numbers in a file in a diff or diff3 block by relative line numbers (i.e. line number within the diff itself). Note that these are lvalues and can be used for assignment. */ #define D_RELNUM(diff, filenum, linenum) \ @@ -117,23 +125,23 @@ struct diff3_block { #define D_LENARRAY(diff, filenum) \ ((diff)->lengths[filenum]) -/* Next block. */ +/* Next diff or diff3 block. */ #define D_NEXT(diff) ((diff)->next) /* Access the type of a diff3 block. */ #define D3_TYPE(diff) ((diff)->correspond) -/* Line mappings based on diffs. The first maps off the top of the - diff, the second off of the bottom. */ +/* Line mappings based on diff or diff3 blocks. The first maps off + the top of the diff, the second off of the bottom. */ #define D_HIGH_MAPLINE(diff, fromfile, tofile, linenum) \ ((linenum) \ - - D_HIGHLINE ((diff), (fromfile)) \ - + D_HIGHLINE ((diff), (tofile))) + - D_HIGHLINE (diff, fromfile) \ + + D_HIGHLINE (diff, tofile)) #define D_LOW_MAPLINE(diff, fromfile, tofile, linenum) \ ((linenum) \ - - D_LOWLINE ((diff), (fromfile)) \ - + D_LOWLINE ((diff), (tofile))) + - D_LOWLINE (diff, fromfile) \ + + D_LOWLINE (diff, tofile)) /* Options variables for flags set on command line. */ @@ -181,12 +189,12 @@ static struct diff3_block *create_diff3_block (lin, lin, lin, lin, lin, lin); static struct diff3_block *make_3way_diff (struct diff_block *, struct diff_block *); static struct diff3_block *reverse_diff3_blocklist (struct diff3_block *); static struct diff3_block *using_to_diff3_block (struct diff_block *[2], struct diff_block *[2], int, int, struct diff3_block const *); -static struct diff_block *process_diff (char const *, char const *, struct diff_block **, char **); +static struct diff_block *process_diff (char const *, char const *, char **); static void check_stdout (void); -static void fatal (char const *) __attribute__((noreturn)); +static _Noreturn void fatal (char const *); static void output_diff3 (FILE *, struct diff3_block *, int const[3], int const[3]); -static void perror_with_exit (char const *) __attribute__((noreturn)); -static void try_help (char const *, char const *) __attribute__((noreturn)); +static _Noreturn void perror_with_exit (char const *); +static _Noreturn void try_help (char const *, char const *); static void usage (void); static char const *diff_program = DEFAULT_DIFF_PROGRAM; @@ -220,7 +228,7 @@ static struct option const longopts[] = static void free_diff_block (struct diff_block *p) { -#ifndef lint +#ifndef GCC_LINT (void)p; #else while (p) @@ -241,7 +249,7 @@ free_diff_block (struct diff_block *p) static void next_to_n2 (struct diff_block *p) { -#ifndef lint +#ifndef GCC_LINT (void)p; #else while (p) @@ -259,13 +267,12 @@ main (int argc, char **argv) int incompat = 0; enum { OPTION_3, OPTION_A, OPTION_E, OPTION_X, OPTION_e, OPTION_x }; bool conflicts_found; - struct diff_block *thread0, *thread1, *last_block; + struct diff_block *thread0, *thread1; struct diff3_block *diff3; int tag_count = 0; char *tag_strings[3]; char *commonname; char **file; - struct stat statb; exit_failure = EXIT_TROUBLE; initialize_main (&argc, &argv); @@ -321,7 +328,7 @@ main (int argc, char **argv) break; case 'v': version_etc (stdout, PROGRAM_NAME, PACKAGE_NAME, Version, - AUTHORS, (char *) NULL); + AUTHORS, nullptr); check_stdout (); return EXIT_SUCCESS; case DIFF_PROGRAM_OPTION: @@ -403,15 +410,6 @@ main (int argc, char **argv) for (i = 0; i < 3; i++) rev_mapping[mapping[i]] = i; - for (i = 0; i < 3; i++) - if (! STREQ (file[i], "-")) - { - if (stat (file[i], &statb) < 0) - perror_with_exit (file[i]); - else if (S_ISDIR (statb.st_mode)) - die (EXIT_TROUBLE, EISDIR, "%s", file[i]); - } - #ifdef SIGCHLD /* System V fork+wait does not work if SIGCHLD is ignored. */ signal (SIGCHLD, SIG_DFL); @@ -422,8 +420,8 @@ main (int argc, char **argv) char *b0, *b1; commonname = file[rev_mapping[FILEC]]; - thread1 = process_diff (file[rev_mapping[FILE1]], commonname, &last_block, &b1); - thread0 = process_diff (file[rev_mapping[FILE0]], commonname, &last_block, &b0); + thread1 = process_diff (file[rev_mapping[FILE1]], commonname, &b1); + thread0 = process_diff (file[rev_mapping[FILE0]], commonname, &b0); next_to_n2 (thread0); next_to_n2 (thread1); @@ -914,7 +912,7 @@ create_diff3_block (lin low0, lin high0, struct diff3_block *result = xmalloc (sizeof *result); lin numlines; - D3_TYPE (result) = ERROR; + D3_TYPE (result) = DIFF_ERROR; D_NEXT (result) = 0; /* Assign ranges */ @@ -991,7 +989,6 @@ compare_line_list (char * const list1[], size_t const lengths1[], static struct diff_block * process_diff (char const *filea, char const *fileb, - struct diff_block **last_block, char **buf_to_free) { char *diff_contents; @@ -1001,10 +998,6 @@ process_diff (char const *filea, lin i; struct diff_block *block_list; struct diff_block **block_list_end = &block_list; - struct diff_block *bptr IF_LINT (= NULL); - size_t too_many_lines = (PTRDIFF_MAX - / MIN (sizeof *bptr->lines[1], - sizeof *bptr->lengths[1])); diff_limit = read_diff (filea, fileb, &diff_contents); *buf_to_free = diff_contents; @@ -1012,12 +1005,12 @@ process_diff (char const *filea, while (scan_diff < diff_limit) { - bptr = xmalloc (sizeof *bptr); + struct diff_block *bptr = xmalloc (sizeof *bptr); bptr->lines[0] = bptr->lines[1] = 0; bptr->lengths[0] = bptr->lengths[1] = 0; dt = process_diff_control (&scan_diff, bptr); - if (dt == ERROR || *scan_diff != '\n') + if (dt == DIFF_ERROR || *scan_diff != '\n') { fprintf (stderr, _("%s: diff failed: "), program_name); do @@ -1032,13 +1025,13 @@ process_diff (char const *filea, /* Force appropriate ranges to be null, if necessary */ switch (dt) { - case ADD: + case DIFF_ADD: bptr->ranges[0][0]++; break; - case DELETE: + case DIFF_DELETE: bptr->ranges[1][0]++; break; - case CHANGE: + case DIFF_CHANGE: break; default: fatal ("internal error: invalid diff type in process_diff"); @@ -1047,13 +1040,11 @@ process_diff (char const *filea, /* Allocate space for the pointers for the lines from filea, and parcel them out among these pointers */ - if (dt != ADD) + if (dt != DIFF_ADD) { lin numlines = D_NUMLINES (bptr, 0); - if (too_many_lines <= numlines) - xalloc_die (); - bptr->lines[0] = xmalloc (numlines * sizeof *bptr->lines[0]); - bptr->lengths[0] = xmalloc (numlines * sizeof *bptr->lengths[0]); + bptr->lines[0] = xnmalloc (numlines, sizeof *bptr->lines[0]); + bptr->lengths[0] = xnmalloc (numlines, sizeof *bptr->lengths[0]); for (i = 0; i < numlines; i++) scan_diff = scan_diff_line (scan_diff, &(bptr->lines[0][i]), @@ -1063,7 +1054,7 @@ process_diff (char const *filea, } /* Get past the separator for changes */ - if (dt == CHANGE) + if (dt == DIFF_CHANGE) { if (strncmp (scan_diff, "---\n", 4)) fatal ("invalid diff format; invalid change separator"); @@ -1072,13 +1063,11 @@ process_diff (char const *filea, /* Allocate space for the pointers for the lines from fileb, and parcel them out among these pointers */ - if (dt != DELETE) + if (dt != DIFF_DELETE) { lin numlines = D_NUMLINES (bptr, 1); - if (too_many_lines <= numlines) - xalloc_die (); - bptr->lines[1] = xmalloc (numlines * sizeof *bptr->lines[1]); - bptr->lengths[1] = xmalloc (numlines * sizeof *bptr->lengths[1]); + bptr->lines[1] = xnmalloc (numlines, sizeof *bptr->lines[1]); + bptr->lengths[1] = xnmalloc (numlines, sizeof *bptr->lengths[1]); for (i = 0; i < numlines; i++) scan_diff = scan_diff_line (scan_diff, &(bptr->lines[1][i]), @@ -1092,14 +1081,13 @@ process_diff (char const *filea, block_list_end = &bptr->next; } - *block_list_end = NULL; - *last_block = bptr; + *block_list_end = nullptr; return block_list; } /* Skip tabs and spaces, and return the first character after them. */ -static char * _GL_ATTRIBUTE_PURE +static char * ATTRIBUTE_PURE skipwhite (char *s) { while (*s == ' ' || *s == '\t') @@ -1132,7 +1120,7 @@ readnum (char *s, lin *pnum) } /* Parse a normal format diff control string. Return the type of the - diff (ERROR if the format is bad). All of the other important + diff (DIFF_ERROR if the format is bad). All of the other important information is filled into to the structure pointed to by db, and the string pointer (whose location is passed to this routine) is updated to point beyond the end of the string parsed. Note that @@ -1141,8 +1129,8 @@ readnum (char *s, lin *pnum) If some specific pair of numbers has been reduced to a single number, then both corresponding numbers in the diff block are set to that number. In general these numbers are interpreted as ranges - inclusive, unless being used by the ADD or DELETE commands. It is - assumed that these will be special cased in a superior routine. */ + inclusive, unless being used by the DIFF_ADD or DIFF_DELETE commands. + It is assumed that these will be special cased in a superior routine. */ static enum diff_type process_diff_control (char **string, struct diff_block *db) @@ -1153,7 +1141,7 @@ process_diff_control (char **string, struct diff_block *db) /* Read first set of digits */ s = readnum (skipwhite (s), &db->ranges[0][RANGE_START]); if (! s) - return ERROR; + return DIFF_ERROR; /* Was that the only digit? */ s = skipwhite (s); @@ -1161,7 +1149,7 @@ process_diff_control (char **string, struct diff_block *db) { s = readnum (s + 1, &db->ranges[0][RANGE_END]); if (! s) - return ERROR; + return DIFF_ERROR; } else db->ranges[0][RANGE_END] = db->ranges[0][RANGE_START]; @@ -1171,23 +1159,23 @@ process_diff_control (char **string, struct diff_block *db) switch (*s) { case 'a': - type = ADD; + type = DIFF_ADD; break; case 'c': - type = CHANGE; + type = DIFF_CHANGE; break; case 'd': - type = DELETE; + type = DIFF_DELETE; break; default: - return ERROR; /* Bad format */ + return DIFF_ERROR; /* Bad format */ } s++; /* Past letter */ /* Read second set of digits */ s = readnum (skipwhite (s), &db->ranges[1][RANGE_START]); if (! s) - return ERROR; + return DIFF_ERROR; /* Was that the only digit? */ s = skipwhite (s); @@ -1195,7 +1183,7 @@ process_diff_control (char **string, struct diff_block *db) { s = readnum (s + 1, &db->ranges[1][RANGE_END]); if (! s) - return ERROR; + return DIFF_ERROR; s = skipwhite (s); /* To move to end */ } else @@ -1215,7 +1203,7 @@ read_diff (char const *filea, int fd, wstatus, status; int werrno = 0; struct stat pipestat; - char const *argv[9]; + char const *argv[10]; char const **ap; #if HAVE_WORKING_FORK int fds[2]; @@ -1232,6 +1220,7 @@ read_diff (char const *filea, if (strip_trailing_cr) *ap++ = "--strip-trailing-cr"; *ap++ = "--horizon-lines=100"; + *ap++ = "---no-directory"; *ap++ = "--"; *ap++ = filea; *ap++ = fileb; @@ -1278,9 +1267,9 @@ read_diff (char const *filea, #endif - if (fstat (fd, &pipestat) != 0) - perror_with_exit ("fstat"); - current_chunk_size = MAX (1, STAT_BLOCKSIZE (pipestat)); + current_chunk_size = (fstat (fd, &pipestat) == 0 + ? MAX (1, STAT_BLOCKSIZE (pipestat)) + : 8 * 1024); diff_result = xmalloc (current_chunk_size); total = 0; @@ -1435,20 +1424,18 @@ output_diff3 (FILE *outputfile, struct diff3_block *diff, int realfile = mapping[i]; lin lowt = D_LOWLINE (ptr, realfile); lin hight = D_HIGHLINE (ptr, realfile); - printint llowt = lowt; - printint lhight = hight; fprintf (outputfile, "%d:", i + 1); switch (lowt - hight) { case 1: - fprintf (outputfile, "%"pI"da\n", llowt - 1); + fprintf (outputfile, "%"pI"da\n", lowt - 1); break; case 0: - fprintf (outputfile, "%"pI"dc\n", llowt); + fprintf (outputfile, "%"pI"dc\n", lowt); break; default: - fprintf (outputfile, "%"pI"d,%"pI"dc\n", llowt, lhight); + fprintf (outputfile, "%"pI"d,%"pI"dc\n", lowt, hight); break; } @@ -1505,7 +1492,7 @@ dotlines (FILE *outputfile, struct diff3_block *b, int filenum) and continuing for NUM lines. */ static void -undotlines (FILE *outputfile, bool leading_dot, printint start, printint num) +undotlines (FILE *outputfile, bool leading_dot, lin start, lin num) { fputs (".\n", outputfile); if (leading_dot) @@ -1554,8 +1541,6 @@ output_diff3_edscript (FILE *outputfile, struct diff3_block *diff, ? DIFF_ALL : DIFF_1ST + rev_mapping[b->correspond - DIFF_1ST]); - printint low0, high0; - /* If we aren't supposed to do this output block, skip it. */ switch (type) { @@ -1565,8 +1550,8 @@ output_diff3_edscript (FILE *outputfile, struct diff3_block *diff, case DIFF_ALL: if (simple_only) continue; conflict = flagging; break; } - low0 = D_LOWLINE (b, mapping[FILE0]); - high0 = D_HIGHLINE (b, mapping[FILE0]); + lin low0 = D_LOWLINE (b, mapping[FILE0]); + lin high0 = D_HIGHLINE (b, mapping[FILE0]); if (conflict) { diff --git a/src/dir.c b/src/dir.c index 01a32ab..802060a 100644 --- a/src/dir.c +++ b/src/dir.c @@ -1,7 +1,7 @@ /* Read, sort and compare two directories. Used for GNU DIFF. Copyright (C) 1988-1989, 1992-1995, 1998, 2001-2002, 2004, 2006-2007, - 2009-2013, 2015-2021 Free Software Foundation, Inc. + 2009-2013, 2015-2023 Free Software Foundation, Inc. This file is part of GNU DIFF. @@ -126,9 +126,7 @@ dir_read (struct file_data const *dir, struct dirdata *dirdata) } /* Create the 'names' table from the 'data' table. */ - if (PTRDIFF_MAX / sizeof *names - 1 <= nnames) - xalloc_die (); - dirdata->names = names = xmalloc ((nnames + 1) * sizeof *names); + dirdata->names = names = xnmalloc (nnames + 1, sizeof *names); dirdata->nnames = nnames; for (i = 0; i < nnames; i++) { @@ -324,7 +322,7 @@ diff_dirs (struct comparison const *cmp, /* Return nonzero if CMP is looping recursively in argument I. */ -static bool _GL_ATTRIBUTE_PURE +static bool ATTRIBUTE_PURE dir_loop (struct comparison const *cmp, int i) { struct comparison const *p = cmp; @@ -339,16 +337,13 @@ dir_loop (struct comparison const *cmp, int i) char * find_dir_file_pathname (char const *dir, char const *file) { - /* The 'IF_LINT (volatile)' works around what appears to be a bug in - gcc 4.8.0 20120825; see - . - */ + /* IF_LINT due to GCC bug 21161. */ char const * IF_LINT (volatile) match = file; char *val; struct dirdata dirdata; - dirdata.names = NULL; - dirdata.data = NULL; + dirdata.names = nullptr; + dirdata.data = nullptr; if (ignore_file_name_case) { @@ -378,7 +373,7 @@ find_dir_file_pathname (char const *dir, char const *file) } } - val = file_name_concat (dir, match, NULL); + val = file_name_concat (dir, match, nullptr); free (dirdata.names); free (dirdata.data); return val; diff --git a/src/ed.c b/src/ed.c index 053e1fc..8b313e1 100644 --- a/src/ed.c +++ b/src/ed.c @@ -1,7 +1,7 @@ /* Output routines for ed-script format. Copyright (C) 1988-1989, 1991-1993, 1995, 1998, 2001, 2004, 2006, 2009-2013, - 2015-2021 Free Software Foundation, Inc. + 2015-2023 Free Software Foundation, Inc. This file is part of GNU DIFF. @@ -144,7 +144,7 @@ static void print_rcs_hunk (struct change *hunk) { lin i, f0, l0, f1, l1; - printint tf0, tl0, tf1, tl1; + lin tf0, tl0, tf1, tl1; /* Determine range of line numbers involved in each file. */ enum changes changes = analyze_hunk (hunk, &f0, &l0, &f1, &l1); diff --git a/src/ifdef.c b/src/ifdef.c index d40a88e..d83a387 100644 --- a/src/ifdef.c +++ b/src/ifdef.c @@ -1,6 +1,6 @@ /* #ifdef-format output routines for GNU DIFF. - Copyright (C) 1989, 1991-1994, 2001-2002, 2004, 2006, 2009-2013, 2015-2021 + Copyright (C) 1989, 1991-1994, 2001-2002, 2004, 2006, 2009-2013, 2015-2023 Free Software Foundation, Inc. This file is part of GNU DIFF. @@ -329,7 +329,7 @@ do_printf_spec (FILE *out, char const *spec, return 0; else { - char value IF_LINT (= 0); + char value; f = scan_char_literal (f, &value); if (!f) return 0; @@ -359,16 +359,14 @@ do_printf_spec (FILE *out, char const *spec, { /* For example, if the spec is "%3xn" and pI is "l", use the printf format spec "%3lx". Here the spec prefix is "%3". */ - printint print_value = value; size_t spec_prefix_len = f - spec - 2; size_t pI_len = sizeof pI - 1; char *format = xmalloca (spec_prefix_len + pI_len + 2); - char *p = format + spec_prefix_len + pI_len; - memcpy (format, spec, spec_prefix_len); - memcpy (format + spec_prefix_len, pI, pI_len); + char *p = mempcpy (format, spec, spec_prefix_len); + p = stpcpy (p, pI); *p++ = c; *p = '\0'; - fprintf (out, format, print_value); + fprintf (out, format, value); freea (format); } } @@ -397,7 +395,7 @@ scan_char_literal (char const *lit, char *valptr) { case 0: case '\'': - return NULL; + return nullptr; case '\\': value = 0; @@ -405,18 +403,18 @@ scan_char_literal (char const *lit, char *valptr) { unsigned int digit = c - '0'; if (8 <= digit) - return NULL; + return nullptr; value = 8 * value + digit; } digits = p - lit - 2; if (! (1 <= digits && digits <= 3)) - return NULL; + return nullptr; break; default: value = c; if (*p++ != '\'') - return NULL; + return nullptr; break; } diff --git a/src/io.c b/src/io.c index 1f0e040..fe4f8b4 100644 --- a/src/io.c +++ b/src/io.c @@ -1,7 +1,7 @@ /* File I/O for GNU DIFF. Copyright (C) 1988-1989, 1992-1995, 1998, 2001-2002, 2004, 2006, 2009-2013, - 2015-2021 Free Software Foundation, Inc. + 2015-2023 Free Software Foundation, Inc. This file is part of GNU DIFF. @@ -64,6 +64,15 @@ static lin equivs_index; /* Number of elements allocated in the array 'equivs'. */ static lin equivs_alloc; +/* The file buffer, considered as an array of bytes rather than + as an array of words. */ + +static char * +file_buffer (struct file_data const *f) +{ + return (char *) f->buffer; +} + /* Read a block of data into a file buffer, checking for EOF and error. */ void @@ -72,7 +81,7 @@ file_block_read (struct file_data *current, size_t size) if (size && ! current->eof) { size_t s = block_read (current->desc, - FILE_BUFFER (current) + current->buffered, size); + file_buffer (current) + current->buffered, size); if (s == SIZE_MAX) pfatal_with_name (current->name); current->buffered += s; @@ -165,10 +174,9 @@ slurp (struct file_data *current) /* Get the size out of the stat block. Allocate just enough room for appended newline plus word sentinel, plus word-alignment since we want the buffer word-aligned. */ - size_t file_size = current->stat.st_size; - cc = file_size + 2 * sizeof (word) - file_size % sizeof (word); - if (file_size != current->stat.st_size || cc < file_size - || PTRDIFF_MAX <= cc) + off_t file_size = current->stat.st_size; + if (INT_ADD_WRAPV (2 * sizeof (word) - file_size % sizeof (word), + file_size, &cc)) xalloc_die (); if (current->bufsize < cc) @@ -233,7 +241,7 @@ find_and_hash_each_line (struct file_data *current) lin eqs_index = equivs_index; lin eqs_alloc = equivs_alloc; char const *suffix_begin = current->suffix_begin; - char const *bufend = FILE_BUFFER (current) + current->buffered; + char const *bufend = file_buffer (current) + current->buffered; bool ig_case = ignore_case; enum DIFF_white_space ig_white_space = ignore_white_space; bool diff_length_compare_anyway = @@ -348,7 +356,7 @@ find_and_hash_each_line (struct file_data *current) if (p == bufend && current->missing_newline - && ROBUST_OUTPUT_STYLE (output_style)) + && robust_output_style (output_style)) { /* The last line is incomplete and we do not silently complete lines. If the line cannot compare equal to any @@ -447,7 +455,7 @@ find_and_hash_each_line (struct file_data *current) { /* If the last line is incomplete and we do not silently complete lines, don't count its appended newline. */ - if (current->missing_newline && ROBUST_OUTPUT_STYLE (output_style)) + if (current->missing_newline && robust_output_style (output_style)) linbuf[line]--; break; } @@ -480,7 +488,7 @@ static void prepare_text (struct file_data *current) { size_t buffered = current->buffered; - char *p = FILE_BUFFER (current); + char *p = file_buffer (current); if (!p) return; @@ -590,7 +598,7 @@ find_identical_ends (struct file_data filevec[]) p0++, p1++; /* Don't mistakenly count missing newline as part of prefix. */ - if (ROBUST_OUTPUT_STYLE (output_style) + if (robust_output_style (output_style) && ((buffer0 + n0 - filevec[0].missing_newline < p0) != (buffer1 + n1 - filevec[1].missing_newline < p1))) @@ -615,7 +623,7 @@ find_identical_ends (struct file_data filevec[]) p0 = buffer0 + n0; p1 = buffer1 + n1; - if (! ROBUST_OUTPUT_STYLE (output_style) + if (! robust_output_style (output_style) || filevec[0].missing_newline == filevec[1].missing_newline) { end0 = p0; /* Addr of last char in file 0. */ @@ -716,11 +724,11 @@ find_identical_ends (struct file_data filevec[]) middle_guess = guess_lines (lines, p0 - buffer0, p1 - filevec[1].prefix_end); suffix_guess = guess_lines (lines, p0 - buffer0, buffer1 + n1 - p1); - alloc_lines1 = buffered_prefix + middle_guess + MIN (context, suffix_guess); - if (alloc_lines1 < buffered_prefix - || PTRDIFF_MAX / sizeof *linbuf1 <= alloc_lines1) + if (INT_ADD_WRAPV (buffered_prefix, + middle_guess + MIN (context, suffix_guess), + &alloc_lines1)) xalloc_die (); - linbuf1 = xmalloc (alloc_lines1 * sizeof *linbuf1); + linbuf1 = xnmalloc (alloc_lines1, sizeof *linbuf1); if (buffered_prefix != lines) { @@ -791,9 +799,7 @@ read_files (struct file_data filevec[], bool pretend_binary) find_identical_ends (filevec); equivs_alloc = filevec[0].alloc_lines + filevec[1].alloc_lines + 1; - if (PTRDIFF_MAX / sizeof *equivs <= equivs_alloc) - xalloc_die (); - equivs = xmalloc (equivs_alloc * sizeof *equivs); + equivs = xnmalloc (equivs_alloc, sizeof *equivs); /* Equivalence class 0 is permanently safe for lines that were not hashed. Real equivalence classes start at 1. */ equivs_index = 1; @@ -804,9 +810,7 @@ read_files (struct file_data filevec[], bool pretend_binary) for (i = 9; (size_t) 1 << i < equivs_alloc / 3; i++) continue; nbuckets = ((size_t) 1 << i) - prime_offset[i]; - if (PTRDIFF_MAX / sizeof *buckets <= nbuckets) - xalloc_die (); - buckets = zalloc ((nbuckets + 1) * sizeof *buckets); + buckets = xcalloc (nbuckets + 1, sizeof *buckets); buckets++; for (i = 0; i < 2; i++) diff --git a/src/normal.c b/src/normal.c index f76c1ac..fef4bf3 100644 --- a/src/normal.c +++ b/src/normal.c @@ -1,6 +1,6 @@ /* Normal-format output routines for GNU DIFF. - Copyright (C) 1988-1989, 1993, 1995, 1998, 2001, 2006, 2009-2013, 2015-2021 + Copyright (C) 1988-1989, 1993, 1995, 1998, 2001, 2006, 2009-2013, 2015-2023 Free Software Foundation, Inc. This file is part of GNU DIFF. diff --git a/src/sdiff.c b/src/sdiff.c index 232ebcd..0b638d4 100644 --- a/src/sdiff.c +++ b/src/sdiff.c @@ -1,7 +1,7 @@ /* GNU sdiff - side-by-side merge of file differences Copyright (C) 1992-1996, 1998, 2001-2002, 2004, 2006-2007, 2009-2013, - 2015-2021 Free Software Foundation, Inc. + 2015-2023 Free Software Foundation, Inc. This file is part of GNU DIFF. @@ -38,13 +38,13 @@ #include /* The official name of this program (e.g., no 'g' prefix). */ -#define PROGRAM_NAME "sdiff" +static char const PROGRAM_NAME[] = "sdiff"; #define AUTHORS \ proper_name ("Thomas Lord") /* Size of chunks read from files which must be parsed into lines. */ -#define SDIFF_BUFSIZE ((size_t) 65536) +enum { SDIFF_BUFSIZE = 65536 }; static char const *editor_program = DEFAULT_EDITOR_PROGRAM; static char const **diffargv; @@ -63,8 +63,8 @@ static bool edit (struct line_filter *, char const *, lin, lin, struct line_filt static bool interact (struct line_filter *, struct line_filter *, char const *, struct line_filter *, char const *, FILE *); static void checksigs (void); static void diffarg (char const *); -static void fatal (char const *) __attribute__((noreturn)); -static void perror_fatal (char const *) __attribute__((noreturn)); +static _Noreturn void fatal (char const *); +static _Noreturn void perror_fatal (char const *); static void trapsigs (void); static void untrapsig (int); @@ -151,8 +151,7 @@ static struct option const longopts[] = {0, 0, 0, 0} }; -static void try_help (char const *, char const *) __attribute__((noreturn)); -static void +static _Noreturn void try_help (char const *reason_msgid, char const *operand) { if (reason_msgid) @@ -225,7 +224,7 @@ Mandatory arguments to long options are mandatory for short options too.\n\ /* Clean up after a signal or other failure. This function is async-signal-safe. */ static void -cleanup (int signo __attribute__((unused))) +cleanup (_GL_UNUSED int signo) { #if HAVE_WORKING_FORK if (0 < diffpid) @@ -235,8 +234,7 @@ cleanup (int signo __attribute__((unused))) unlink (tmpname); } -static void exiterr (void) __attribute__((noreturn)); -static void +static _Noreturn void exiterr (void) { cleanup (0); @@ -337,10 +335,10 @@ expand_name (char *name, bool is_dir, char const *other_name) size_t namelen = strlen (name), baselen = base_len (base); bool insert_slash = *last_component (name) && name[namelen - 1] != '/'; char *r = xmalloc (namelen + insert_slash + baselen + 1); - memcpy (r, name, namelen); - r[namelen] = '/'; - memcpy (r + namelen + insert_slash, base, baselen); - r[namelen + insert_slash + baselen] = '\0'; + char *p = stpcpy (r, name); + *p = '/'; + p = mempcpy (p + insert_slash, base, baselen); + *p = '\0'; return r; } } @@ -429,17 +427,16 @@ lf_snarf (struct line_filter *lf, char *buffer, size_t bufsize) size_t s = next - start; if (bufsize <= s) return 0; - memcpy (buffer, start, s); + buffer = mempcpy (buffer, start, s); + bufsize -= s; if (next < lf->buflim) { - buffer[s] = 0; + *buffer = 0; lf->bufpos = next + 1; return 1; } if (! lf_refill (lf)) return s ? 0 : EOF; - buffer += s; - bufsize -= s; } } @@ -521,7 +518,7 @@ main (int argc, char *argv[]) case 'v': version_etc (stdout, PROGRAM_NAME, PACKAGE_NAME, Version, - AUTHORS, (char *) NULL); + AUTHORS, nullptr); check_stdout (); return EXIT_SUCCESS; @@ -866,8 +863,8 @@ edit (struct line_filter *left, char const *lname, lin lline, lin llen, { for (;;) { - int cmd0 IF_LINT (= 0); - int cmd1 IF_LINT (= 0); + int cmd0; + int cmd1 IF_LINT (= 0); /* IF_LINT due to GCC bug 101770. */ bool gotcmd = false; while (! gotcmd) @@ -968,14 +965,13 @@ edit (struct line_filter *left, char const *lname, lin lline, lin llen, { case 'd': if (llen) - { - printint l1 = lline; - printint l2 = lline + llen - 1; - if (llen == 1) - fprintf (tmp, "--- %s %"pI"d\n", lname, l1); - else - fprintf (tmp, "--- %s %"pI"d,%"pI"d\n", lname, l1, l2); - } + { + if (llen == 1) + fprintf (tmp, "--- %s %"pI"d\n", lname, lline); + else + fprintf (tmp, "--- %s %"pI"d,%"pI"d\n", lname, lline, + lline + llen - 1); + } FALLTHROUGH; case '1': case 'b': case 'l': lf_copy (left, llen, tmp); @@ -990,14 +986,13 @@ edit (struct line_filter *left, char const *lname, lin lline, lin llen, { case 'd': if (rlen) - { - printint l1 = rline; - printint l2 = rline + rlen - 1; - if (rlen == 1) - fprintf (tmp, "+++ %s %"pI"d\n", rname, l1); - else - fprintf (tmp, "+++ %s %"pI"d,%"pI"d\n", rname, l1, l2); - } + { + if (rlen == 1) + fprintf (tmp, "+++ %s %"pI"d\n", rname, rline); + else + fprintf (tmp, "+++ %s %"pI"d,%"pI"d\n", rname, rline, + rline + rlen - 1); + } FALLTHROUGH; case '2': case 'b': case 'r': lf_copy (right, rlen, tmp); @@ -1166,10 +1161,11 @@ temporary_file (void) char const *tmpdir = getenv (TMPDIR_ENV); char const *dir = tmpdir ? tmpdir : P_tmpdir; char *buf = xmalloc (strlen (dir) + 1 + 5 + 6 + 1); - int fd; - sprintf (buf, "%s/sdiffXXXXXX", dir); - fd = mkstemp (buf); - if (0 <= fd) + strcpy (stpcpy (buf, dir), "/sdiffXXXXXX"); + int fd = mkstemp (buf); + if (fd < 0) + free (buf); + else tmpname = buf; return fd; } diff --git a/src/side.c b/src/side.c index 11d5f5c..125cc22 100644 --- a/src/side.c +++ b/src/side.c @@ -1,6 +1,6 @@ /* sdiff-format output routines for GNU DIFF. - Copyright (C) 1991-1993, 1998, 2001-2002, 2004, 2009-2013, 2015-2021 Free + Copyright (C) 1991-1993, 1998, 2001-2002, 2004, 2009-2013, 2015-2023 Free Software Foundation, Inc. This file is part of GNU DIFF. @@ -259,11 +259,7 @@ print_sdiff_common_lines (lin limit0, lin limit1) if (!suppress_common_lines && (i0 != limit0 || i1 != limit1)) { if (sdiff_merge_assist) - { - printint len0 = limit0 - i0; - printint len1 = limit1 - i1; - fprintf (outfile, "i%"pI"d,%"pI"d\n", len0, len1); - } + fprintf (outfile, "i%"pI"d,%"pI"d\n", limit0 - i0, limit1 - i1); if (!left_column) { @@ -301,11 +297,9 @@ print_sdiff_hunk (struct change *hunk) print_sdiff_common_lines (first0, first1); if (sdiff_merge_assist) - { - printint len0 = last0 - first0 + 1; - printint len1 = last1 - first1 + 1; - fprintf (outfile, "c%"pI"d,%"pI"d\n", len0, len1); - } + fprintf (outfile, "c%"pI"d,%"pI"d\n", + last0 - first0 + 1, + last1 - first1 + 1); /* Print "xxx | xxx " lines. */ if (changes == CHANGED) diff --git a/src/system.h b/src/system.h index f921a50..b37893f 100644 --- a/src/system.h +++ b/src/system.h @@ -1,7 +1,7 @@ /* System dependent declarations. Copyright (C) 1988-1989, 1992-1995, 1998, 2001-2002, 2004, 2006, 2009-2013, - 2015-2021 Free Software Foundation, Inc. + 2015-2023 Free Software Foundation, Inc. This file is part of GNU DIFF. @@ -21,24 +21,18 @@ #include /* Use this to suppress gcc's "...may be used before initialized" warnings. */ -#ifdef lint +#ifdef GCC_LINT # define IF_LINT(Code) Code #else # define IF_LINT(Code) /* empty */ #endif -/* Define '__attribute__' and 'volatile' first - so that they're used consistently in all system includes. */ -#if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 6) || __STRICT_ANSI__ -# define __attribute__(x) -#endif - #include #include #include -#include "stat-macros.h" +#include #ifndef STAT_BLOCKSIZE # if HAVE_STRUCT_STAT_ST_BLKSIZE @@ -114,9 +108,10 @@ int strcasecmp (char const *, char const *); #define MIN(a, b) ((a) <= (b) ? (a) : (b)) #define MAX(a, b) ((a) >= (b) ? (a) : (b)) -#include +#include #include -#include "propername.h" +#include + #include "version.h" /* Type used for fast comparison of several bytes at a time. @@ -128,31 +123,12 @@ int strcasecmp (char const *, char const *); #endif /* The signed integer type of a line number. Since files are read - into main memory, ptrdiff_t should be wide enough. */ + into main memory, ptrdiff_t should be wide enough. pI is for + printing line numbers. */ typedef ptrdiff_t lin; #define LIN_MAX PTRDIFF_MAX - -/* The signed integer type for printing line numbers, and its printf - length modifier. This is not simply ptrdiff_t, to cater to older - and/or nonstandard C libraries where "l" works but "ll" and "t" do - not, or where 'long' is too narrow and "ll" works but "t" does not. */ - -#if LIN_MAX <= LONG_MAX -typedef long int printint; -# define pI "l" -#elif LIN_MAX <= LLONG_MAX -typedef long long int printint; -# define pI "ll" -#else -typedef ptrdiff_t printint; -# define pI "t" -#endif - -verify (TYPE_SIGNED (lin)); -verify (TYPE_SIGNED (printint)); -verify (LIN_MAX == TYPE_MAXIMUM (lin)); -verify (LIN_MAX <= TYPE_MAXIMUM (printint)); +#define pI "t" /* Limit so that 2 * CONTEXT + 1 does not overflow. */ @@ -230,11 +206,3 @@ verify (LIN_MAX <= TYPE_MAXIMUM (printint)); #endif #define STREQ(a, b) (strcmp (a, b) == 0) - -#ifndef FALLTHROUGH -# if __GNUC__ < 7 -# define FALLTHROUGH ((void) 0) -# else -# define FALLTHROUGH __attribute__ ((__fallthrough__)) -# endif -#endif diff --git a/src/util.c b/src/util.c index 4348757..8ea528e 100644 --- a/src/util.c +++ b/src/util.c @@ -1,7 +1,7 @@ /* Support routines for GNU DIFF. Copyright (C) 1988-1989, 1992-1995, 1998, 2001-2002, 2004, 2006, 2009-2013, - 2015-2021 Free Software Foundation, Inc. + 2015-2023 Free Software Foundation, Inc. This file is part of GNU DIFF. @@ -19,23 +19,25 @@ along with this program. If not, see . */ #include "diff.h" -#include "argmatch.h" -#include "die.h" + +#include +#include #include #include +#include #include #include -#include "xvasprintf.h" + +#include #include /* Use SA_NOCLDSTOP as a proxy for whether the sigaction machinery is present. */ #ifndef SA_NOCLDSTOP # define SA_NOCLDSTOP 0 -# define sigprocmask(How, Set, Oset) /* empty */ -# define sigset_t int +# define sigprocmask(How, Set, Oset) 0 # if ! HAVE_SIGINTERRUPT -# define siginterrupt(sig, flag) /* empty */ +# define siginterrupt(sig, flag) 0 # endif #endif @@ -51,7 +53,15 @@ char const pr_program[] = PR_PROGRAM; struct msg { struct msg *next; - char args[1]; /* Format + 4 args, each '\0' terminated, concatenated. */ + + /* Msgid of printf-style format. */ + char const *msgid; + + /* Number of bytes in ARGS. */ + size_t argbytes; + + /* Arg strings, each '\0' terminated, concatenated. */ + char args[FLEXIBLE_ARRAY_MEMBER]; }; /* Head of the chain of queues messages. */ @@ -91,40 +101,43 @@ fatal (char const *msgid) } /* Like printf, except if -l in effect then save the message and print later. + Also, all arguments must be char * or char const *. This is used for things like "Only in ...". */ void -message (char const *format_msgid, char const *arg1, char const *arg2) +message (char const *format_msgid, ...) { - message5 (format_msgid, arg1, arg2, 0, 0); -} + va_list ap; + va_start (ap, format_msgid); -void -message5 (char const *format_msgid, char const *arg1, char const *arg2, - char const *arg3, char const *arg4) -{ if (paginate) { - char *p; - char const *arg[5]; - int i; - size_t size[5]; - size_t total_size = offsetof (struct msg, args); - struct msg *new; - - arg[0] = format_msgid; - arg[1] = arg1; - arg[2] = arg2; - arg[3] = arg3 ? arg3 : ""; - arg[4] = arg4 ? arg4 : ""; - - for (i = 0; i < 5; i++) - total_size += size[i] = strlen (arg[i]) + 1; - - new = xmalloc (total_size); - - for (i = 0, p = new->args; i < 5; p += size[i++]) - memcpy (p, arg[i], size[i]); + size_t argbytes = 0; + + for (char const *m = format_msgid; *m; m++) + if (*m == '%') + { + if (m[1] == '%') + m++; + else + argbytes += strlen (va_arg (ap, char const *)) + 1; + } + va_end (ap); + + struct msg *new = xmalloc (FLEXSIZEOF (struct msg, args, argbytes)); + new->msgid = format_msgid; + new->argbytes = argbytes; + + va_start (ap, format_msgid); + char *p = new->args; + for (char const *m = format_msgid; *m; m++) + if (*m == '%') + { + if (m[1] == '%') + m++; + else + p = stpcpy (p, va_arg (ap, char const *)) + 1; + } *msg_chain_end = new; new->next = 0; @@ -134,8 +147,10 @@ message5 (char const *format_msgid, char const *arg1, char const *arg2, { if (sdiff_merge_assist) putchar (' '); - printf (_(format_msgid), arg1, arg2, arg3, arg4); + vprintf (_(format_msgid), ap); } + + va_end (ap); } /* Output all the messages that were saved up by calls to 'message'. */ @@ -143,32 +158,74 @@ message5 (char const *format_msgid, char const *arg1, char const *arg2, void print_message_queue (void) { - char const *arg[5]; - int i; - struct msg *m = msg_chain; - - while (m) + for (struct msg *m = msg_chain; m; ) { + /* Change this if diff ever has messages with more than 4 args. */ + char const *p = m->args; + char const *plim = p + m->argbytes; + /* Unroll the loop to work around GCC 12 bug with + -Wanalyzer-use-of-uninitialized-value. */ + char const *arg0 = p; p += p < plim ? strlen (p) + 1 : 0; + char const *arg1 = p; p += p < plim ? strlen (p) + 1 : 0; + char const *arg2 = p; p += p < plim ? strlen (p) + 1 : 0; + char const *arg3 = p; p += p < plim ? strlen (p) + 1 : 0; + printf (_(m->msgid), arg0, arg1, arg2, arg3); + if (p < plim) + abort (); struct msg *next = m->next; - arg[0] = m->args; - for (i = 0; i < 4; i++) - arg[i + 1] = arg[i] + strlen (arg[i]) + 1; - printf (_(arg[0]), arg[1], arg[2], arg[3], arg[4]); free (m); m = next; } } - -/* The set of signals that are caught. */ +/* Signal handling, needed for restoring default colors. */ + +static void +xsigaddset (sigset_t *set, int sig) +{ + if (sigaddset (set, sig) != 0) + pfatal_with_name ("sigaddset"); +} + +static bool +xsigismember (sigset_t const *set, int sig) +{ + int mem = sigismember (set, sig); + if (mem < 0) + pfatal_with_name ("sigismember"); + assume (mem <= 1); + return mem; +} + +typedef void (*signal_handler) (int); +static signal_handler +xsignal (int sig, signal_handler func) +{ + signal_handler h = signal (sig, func); + if (h == SIG_ERR) + pfatal_with_name ("signal"); + return h; +} + +static void +xsigprocmask (int how, sigset_t const *restrict set, sigset_t *restrict oset) +{ + if (sigprocmask (how, set, oset) != 0) + pfatal_with_name ("sigprocmask"); +} + +/* If true, some signals are caught. This is separate from + 'caught_signals' because POSIX doesn't require an all-zero sigset_t + to be valid. */ +static bool some_signals_caught; + +/* The set of signals that are caught. */ static sigset_t caught_signals; /* If nonzero, the value of the pending fatal signal. */ - static sig_atomic_t volatile interrupt_signal; /* A count of the number of pending stop signals that have been received. */ - static sig_atomic_t volatile stop_signal_count; /* An ordinary signal was received; arrange for the program to exit. */ @@ -201,21 +258,17 @@ stophandler (int sig) static void process_signals (void) { - while (interrupt_signal || stop_signal_count) + while (interrupt_signal | stop_signal_count) { - int sig; - int stops; - sigset_t oldset; - set_color_context (RESET_CONTEXT); fflush (stdout); - sigprocmask (SIG_BLOCK, &caught_signals, &oldset); + sigset_t oldset; + xsigprocmask (SIG_BLOCK, &caught_signals, &oldset); - /* Reload interrupt_signal and stop_signal_count, in case a new - signal was handled before sigprocmask took effect. */ - sig = interrupt_signal; - stops = stop_signal_count; + /* Reload stop_signal_count and (if needed) interrupt_signal, in + case a new signal was handled before sigprocmask took effect. */ + int stops = stop_signal_count, sig; /* SIGTSTP is special, since the application can receive that signal more than once. In this case, don't set the signal handler to the @@ -226,82 +279,122 @@ process_signals (void) sig = SIGSTOP; } else - signal (sig, SIG_DFL); + { + sig = interrupt_signal; + xsignal (sig, SIG_DFL); + } /* Exit or suspend the program. */ - raise (sig); - sigprocmask (SIG_SETMASK, &oldset, NULL); + if (raise (sig) != 0) + pfatal_with_name ("raise"); + xsigprocmask (SIG_SETMASK, &oldset, nullptr); /* If execution reaches here, then the program has been continued (after being suspended). */ } } -static void -install_signal_handlers (void) -{ - /* The signals that are trapped, and the number of such signals. */ - static int const sig[] = - { - /* This one is handled specially. */ - SIGTSTP, +/* The signals that can be caught, the number of such signals, + and which of them are actually caught. */ +static int const sig[] = + { +#ifdef SIGTSTP + /* This one is handled specially; see is_tstp_index. */ + SIGTSTP, +#endif - /* The usual suspects. */ - SIGALRM, SIGHUP, SIGINT, SIGPIPE, SIGQUIT, SIGTERM, + /* The usual suspects. */ +#ifdef SIGALRM + SIGALRM, +#endif + SIGHUP, SIGINT, SIGPIPE, +#ifdef SIGQUIT + SIGQUIT, +#endif + SIGTERM, #ifdef SIGPOLL - SIGPOLL, + SIGPOLL, #endif #ifdef SIGPROF - SIGPROF, + SIGPROF, #endif #ifdef SIGVTALRM - SIGVTALRM, + SIGVTALRM, #endif #ifdef SIGXCPU - SIGXCPU, + SIGXCPU, #endif #ifdef SIGXFSZ - SIGXFSZ, + SIGXFSZ, #endif - }; - enum { nsigs = sizeof (sig) / sizeof *(sig) }; + }; +enum { nsigs = sizeof (sig) / sizeof *(sig) }; -#if ! SA_NOCLDSTOP - bool caught_sig[nsigs]; +/* True if sig[j] == SIGTSTP. */ +static bool +is_tstp_index (int j) +{ +#ifdef SIGTSTP + return j == 0; +#else + return false; #endif - { - int j; -#if SA_NOCLDSTOP - struct sigaction act; +} - sigemptyset (&caught_signals); - for (j = 0; j < nsigs; j++) - { - sigaction (sig[j], NULL, &act); - if (act.sa_handler != SIG_IGN) - sigaddset (&caught_signals, sig[j]); - } +static void +install_signal_handlers (void) +{ + if (sigemptyset (&caught_signals) != 0) + pfatal_with_name ("sigemptyset"); - act.sa_mask = caught_signals; - act.sa_flags = SA_RESTART; +#if SA_NOCLDSTOP + for (int j = 0; j < nsigs; j++) + { + struct sigaction actj; + if (sigaction (sig[j], nullptr, &actj) == 0 && actj.sa_handler != SIG_IGN) + xsigaddset (&caught_signals, sig[j]); + } - for (j = 0; j < nsigs; j++) - if (sigismember (&caught_signals, sig[j])) - { - act.sa_handler = sig[j] == SIGTSTP ? stophandler : sighandler; - sigaction (sig[j], &act, NULL); - } -#else - for (j = 0; j < nsigs; j++) + struct sigaction act; + act.sa_mask = caught_signals; + act.sa_flags = SA_RESTART; + + for (int j = 0; j < nsigs; j++) + if (xsigismember (&caught_signals, sig[j])) { - caught_sig[j] = (signal (sig[j], SIG_IGN) != SIG_IGN); - if (caught_sig[j]) - { - signal (sig[j], sig[j] == SIGTSTP ? stophandler : sighandler); - siginterrupt (sig[j], 0); - } + act.sa_handler = is_tstp_index (j) ? stophandler : sighandler; + if (sigaction (sig[j], &act, nullptr) != 0) + pfatal_with_name ("sigaction"); + some_signals_caught = true; } +#else + for (int j = 0; j < nsigs; j++) + { + signal_handler h = signal (sig[j], SIG_IGN); + if (h != SIG_IGN && h != SIG_ERR) + { + xsigaddset (&caught_signals, sig[j]); + xsignal (sig[j], is_tstp_index (j) ? stophandler : sighandler); + some_signals_caught = true; + if (siginterrupt (sig[j], 0) != 0) + pfatal_with_name ("siginterrupt"); + } + } #endif +} + +/* Clean up signal handlers just before exiting the program. Do this + by resetting signal actions back to default, and then processing + any signals that arrived before resetting. */ +void +cleanup_signal_handlers (void) +{ + if (some_signals_caught) + { + for (int j = 0; j < nsigs; j++) + if (xsigismember (&caught_signals, sig[j])) + xsignal (sig[j], SIG_DFL); + process_signals (); } } @@ -310,7 +403,7 @@ static char const *current_name1; static bool currently_recursive; static bool colors_enabled; -static struct color_ext_type *color_ext_list = NULL; +static struct color_ext_type *color_ext_list = nullptr; struct bin_str { @@ -549,7 +642,7 @@ static struct bin_str color_indicator[] = { { LEN_STR_PAIR ("\033[") }, /* lc: Left of color sequence */ { LEN_STR_PAIR ("m") }, /* rc: Right of color sequence */ - { 0, NULL }, /* ec: End color (replaces lc+rs+rc) */ + { 0, nullptr }, /* ec: End color (replaces lc+rs+rc) */ { LEN_STR_PAIR ("0") }, /* rs: Reset to ordinary colors */ { LEN_STR_PAIR ("1") }, /* hd: Header */ { LEN_STR_PAIR ("32") }, /* ad: Add line */ @@ -559,7 +652,7 @@ static struct bin_str color_indicator[] = static const char *const indicator_name[] = { - "lc", "rc", "ec", "rs", "hd", "ad", "de", "ln", NULL + "lc", "rc", "ec", "rs", "hd", "ad", "de", "ln", nullptr }; ARGMATCH_VERIFY (indicator_name, color_indicator); @@ -578,14 +671,14 @@ parse_diff_color (void) const char *p; /* Pointer to character being parsed */ char *buf; /* color_buf buffer pointer */ int ind_no; /* Indicator number */ - char label[3]; /* Indicator label */ + char label[] = "??"; /* Indicator label */ struct color_ext_type *ext; /* Extension we are working on */ - if ((p = color_palette) == NULL || *p == '\0') + p = color_palette; + if (p == nullptr || *p == '\0') return; - ext = NULL; - strcpy (label, "??"); + ext = nullptr; /* This is an overly conservative estimate, but any possible --palette string will *not* generate a color_buf longer than @@ -647,7 +740,7 @@ parse_diff_color (void) state = PS_FAIL; /* Assume failure... */ if (*(p++) == '=')/* It *should* be... */ { - for (ind_no = 0; indicator_name[ind_no] != NULL; ++ind_no) + for (ind_no = 0; indicator_name[ind_no] != nullptr; ++ind_no) { if (STREQ (label, indicator_name[ind_no])) { @@ -691,7 +784,7 @@ parse_diff_color (void) error (0, 0, _("unparsable value for --palette")); free (color_buf); - for (e = color_ext_list; e != NULL; /* empty */) + for (e = color_ext_list; e != nullptr; /* empty */) { e2 = e; e = e->next; @@ -842,7 +935,14 @@ begin_output (void) of the pathnames, and it requires two spaces after "diff" if there are no options. These requirements are silly and do not match historical practice. */ - name = xasprintf ("diff%s %s %s", switch_string, names[0], names[1]); + name = xmalloc (sizeof "diff" + strlen (switch_string) + + 1 + strlen (names[0]) + 1 + strlen (names[1])); + char *p = stpcpy (name, "diff"); + p = stpcpy (p, switch_string); + *p++ = ' '; + p = stpcpy (p, names[0]); + *p++ = ' '; + strcpy (p, names[1]); if (paginate) { @@ -1145,13 +1245,13 @@ lines_differ (char const *s1, char const *s2) /* Find the consecutive changes at the start of the script START. Return the last link before the first gap. */ -struct change * _GL_ATTRIBUTE_CONST +struct change * ATTRIBUTE_CONST find_change (struct change *start) { return start; } -struct change * _GL_ATTRIBUTE_CONST +struct change * ATTRIBUTE_CONST find_reverse_change (struct change *start) { return start; @@ -1393,20 +1493,18 @@ char const change_letter[] = { 0, 'd', 'a', 'c' }; Internal line numbers count from 0 starting after the prefix. Actual line numbers count from 1 within the entire file. */ -lin _GL_ATTRIBUTE_PURE +lin ATTRIBUTE_PURE translate_line_number (struct file_data const *file, lin i) { return i + file->prefix_lines + 1; } -/* Translate a line number range. This is always done for printing, - so for convenience translate to printint rather than lin, so that the - caller can use printf with "%"pI"d" without casting. */ +/* Translate a line number range. */ void translate_range (struct file_data const *file, lin a, lin b, - printint *aptr, printint *bptr) + lin *aptr, lin *bptr) { *aptr = translate_line_number (file, a - 1) + 1; *bptr = translate_line_number (file, b + 1) - 1; @@ -1421,7 +1519,7 @@ translate_range (struct file_data const *file, void print_number_range (char sepchar, struct file_data *file, lin a, lin b) { - printint trans_a, trans_b; + lin trans_a, trans_b; translate_range (file, a, b, &trans_a, &trans_b); /* Note: we can have B < A in the case of a range of no lines. @@ -1537,40 +1635,16 @@ analyze_hunk (struct change *hunk, return (show_from ? OLD : UNCHANGED) | (show_to ? NEW : UNCHANGED); } -/* Concatenate three strings, returning a newly malloc'd string. */ - -char * -concat (char const *s1, char const *s2, char const *s3) -{ - char *new = xmalloc (strlen (s1) + strlen (s2) + strlen (s3) + 1); - sprintf (new, "%s%s%s", s1, s2, s3); - return new; -} - -/* Yield a new block of SIZE bytes, initialized to zero. */ - -void * -zalloc (size_t size) -{ - void *p = xmalloc (size); - memset (p, 0, size); - return p; -} - +#ifdef DEBUG void debug_script (struct change *sp) { fflush (stdout); for (; sp; sp = sp->link) - { - printint line0 = sp->line0; - printint line1 = sp->line1; - printint deleted = sp->deleted; - printint inserted = sp->inserted; - fprintf (stderr, "%3"pI"d %3"pI"d delete %"pI"d insert %"pI"d\n", - line0, line1, deleted, inserted); - } + fprintf (stderr, "%3"pI"d %3"pI"d delete %"pI"d insert %"pI"d\n", + sp->line0, sp->line1, sp->deleted, sp->inserted); fflush (stderr); } +#endif diff --git a/tests/Makefile.am b/tests/Makefile.am index 83a7c9d..79bacfb 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -10,6 +10,7 @@ TESTS = \ diff3 \ excess-slash \ help-version \ + ifdef \ invalid-re \ function-line-vs-leading-space \ ignore-matching-lines \ @@ -22,7 +23,9 @@ TESTS = \ strcoll-0-names \ filename-quoting \ strip-trailing-cr \ - colors + timezone \ + colors \ + y2038-vs-32bit XFAIL_TESTS = large-subopt diff --git a/tests/Makefile.in b/tests/Makefile.in index 2264d36..de258da 100644 --- a/tests/Makefile.in +++ b/tests/Makefile.in @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.16d from Makefile.am. +# Makefile.in generated by automake 1.16i from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2021 Free Software Foundation, Inc. +# Copyright (C) 1994-2023 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -71,6 +71,8 @@ am__make_running_with_option = \ test $$has_opt = yes am__make_dryrun = (target_option=n; $(am__make_running_with_option)) am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +am__rm_f = rm -f $(am__rm_f_notfound) +am__rm_rf = rm -rf $(am__rm_f_notfound) pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ @@ -95,19 +97,22 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/__inline.m4 \ $(top_srcdir)/m4/absolute-header.m4 $(top_srcdir)/m4/alloca.m4 \ $(top_srcdir)/m4/arpa_inet_h.m4 \ - $(top_srcdir)/m4/asm-underscore.m4 $(top_srcdir)/m4/atoll.m4 \ + $(top_srcdir)/m4/asm-underscore.m4 \ + $(top_srcdir)/m4/assert_h.m4 $(top_srcdir)/m4/atoll.m4 \ $(top_srcdir)/m4/btowc.m4 $(top_srcdir)/m4/builtin-expect.m4 \ - $(top_srcdir)/m4/c-stack.m4 $(top_srcdir)/m4/calloc.m4 \ - $(top_srcdir)/m4/clock_time.m4 $(top_srcdir)/m4/close.m4 \ - $(top_srcdir)/m4/codeset.m4 $(top_srcdir)/m4/config-h.m4 \ - $(top_srcdir)/m4/ctype_h.m4 \ + $(top_srcdir)/m4/c-bool.m4 $(top_srcdir)/m4/c-stack.m4 \ + $(top_srcdir)/m4/calloc.m4 $(top_srcdir)/m4/clock_time.m4 \ + $(top_srcdir)/m4/close.m4 $(top_srcdir)/m4/codeset.m4 \ + $(top_srcdir)/m4/config-h.m4 $(top_srcdir)/m4/ctype_h.m4 \ $(top_srcdir)/m4/double-slash-root.m4 $(top_srcdir)/m4/dup2.m4 \ $(top_srcdir)/m4/eealloc.m4 $(top_srcdir)/m4/environ.m4 \ $(top_srcdir)/m4/errno_h.m4 $(top_srcdir)/m4/error.m4 \ - $(top_srcdir)/m4/exponentd.m4 $(top_srcdir)/m4/extensions.m4 \ - $(top_srcdir)/m4/extern-inline.m4 $(top_srcdir)/m4/fcntl-o.m4 \ - $(top_srcdir)/m4/fcntl.m4 $(top_srcdir)/m4/fcntl_h.m4 \ - $(top_srcdir)/m4/fdopen.m4 $(top_srcdir)/m4/filenamecat.m4 \ + $(top_srcdir)/m4/error_h.m4 $(top_srcdir)/m4/exponentd.m4 \ + $(top_srcdir)/m4/extensions.m4 \ + $(top_srcdir)/m4/extern-inline.m4 $(top_srcdir)/m4/fclose.m4 \ + $(top_srcdir)/m4/fcntl-o.m4 $(top_srcdir)/m4/fcntl.m4 \ + $(top_srcdir)/m4/fcntl_h.m4 $(top_srcdir)/m4/fdopen.m4 \ + $(top_srcdir)/m4/fflush.m4 $(top_srcdir)/m4/filenamecat.m4 \ $(top_srcdir)/m4/flexmember.m4 $(top_srcdir)/m4/float_h.m4 \ $(top_srcdir)/m4/fnmatch.m4 $(top_srcdir)/m4/fnmatch_h.m4 \ $(top_srcdir)/m4/fopen.m4 $(top_srcdir)/m4/fpieee.m4 \ @@ -123,15 +128,16 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/host-cpu-c-abi.m4 $(top_srcdir)/m4/iconv.m4 \ $(top_srcdir)/m4/iconv_h.m4 $(top_srcdir)/m4/iconv_open.m4 \ $(top_srcdir)/m4/include_next.m4 $(top_srcdir)/m4/inet_pton.m4 \ - $(top_srcdir)/m4/inline.m4 $(top_srcdir)/m4/intlmacosx.m4 \ - $(top_srcdir)/m4/intmax_t.m4 $(top_srcdir)/m4/inttostr.m4 \ - $(top_srcdir)/m4/inttypes.m4 $(top_srcdir)/m4/inttypes_h.m4 \ - $(top_srcdir)/m4/ioctl.m4 $(top_srcdir)/m4/isblank.m4 \ - $(top_srcdir)/m4/iswblank.m4 $(top_srcdir)/m4/iswdigit.m4 \ - $(top_srcdir)/m4/iswxdigit.m4 $(top_srcdir)/m4/langinfo_h.m4 \ - $(top_srcdir)/m4/largefile.m4 $(top_srcdir)/m4/lib-ld.m4 \ - $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ - $(top_srcdir)/m4/libsigsegv.m4 \ + $(top_srcdir)/m4/inline.m4 \ + $(top_srcdir)/m4/intl-thread-locale.m4 \ + $(top_srcdir)/m4/intlmacosx.m4 $(top_srcdir)/m4/intmax_t.m4 \ + $(top_srcdir)/m4/inttostr.m4 $(top_srcdir)/m4/inttypes.m4 \ + $(top_srcdir)/m4/inttypes_h.m4 $(top_srcdir)/m4/ioctl.m4 \ + $(top_srcdir)/m4/isblank.m4 $(top_srcdir)/m4/iswblank.m4 \ + $(top_srcdir)/m4/iswdigit.m4 $(top_srcdir)/m4/iswxdigit.m4 \ + $(top_srcdir)/m4/langinfo_h.m4 $(top_srcdir)/m4/largefile.m4 \ + $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ + $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libsigsegv.m4 \ $(top_srcdir)/m4/libunistring-base.m4 \ $(top_srcdir)/m4/limits-h.m4 $(top_srcdir)/m4/localcharset.m4 \ $(top_srcdir)/m4/locale-fr.m4 $(top_srcdir)/m4/locale-ja.m4 \ @@ -153,11 +159,13 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/netinet_in_h.m4 \ $(top_srcdir)/m4/nl_langinfo.m4 $(top_srcdir)/m4/nls.m4 \ $(top_srcdir)/m4/nocrash.m4 $(top_srcdir)/m4/nstrftime.m4 \ - $(top_srcdir)/m4/off_t.m4 $(top_srcdir)/m4/open-cloexec.m4 \ + $(top_srcdir)/m4/nullptr.m4 $(top_srcdir)/m4/off_t.m4 \ + $(top_srcdir)/m4/open-cloexec.m4 \ $(top_srcdir)/m4/open-slash.m4 $(top_srcdir)/m4/open.m4 \ - $(top_srcdir)/m4/pathmax.m4 $(top_srcdir)/m4/perror.m4 \ - $(top_srcdir)/m4/pipe.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/printf.m4 $(top_srcdir)/m4/progtest.m4 \ + $(top_srcdir)/m4/pathmax.m4 $(top_srcdir)/m4/perl.m4 \ + $(top_srcdir)/m4/perror.m4 $(top_srcdir)/m4/pipe.m4 \ + $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/printf.m4 \ + $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/pselect.m4 \ $(top_srcdir)/m4/pthread-thread.m4 \ $(top_srcdir)/m4/pthread_h.m4 \ $(top_srcdir)/m4/pthread_rwlock_rdlock.m4 \ @@ -168,9 +176,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/reallocarray.m4 $(top_srcdir)/m4/regex.m4 \ $(top_srcdir)/m4/sched_h.m4 $(top_srcdir)/m4/select.m4 \ $(top_srcdir)/m4/setenv.m4 $(top_srcdir)/m4/setlocale_null.m4 \ - $(top_srcdir)/m4/sigaction.m4 $(top_srcdir)/m4/sigaltstack.m4 \ - $(top_srcdir)/m4/signal_h.m4 \ - $(top_srcdir)/m4/signalblocking.m4 \ + $(top_srcdir)/m4/sigaltstack.m4 $(top_srcdir)/m4/signal_h.m4 \ + $(top_srcdir)/m4/signalblocking.m4 $(top_srcdir)/m4/sigsegv.m4 \ $(top_srcdir)/m4/size_max.m4 $(top_srcdir)/m4/sleep.m4 \ $(top_srcdir)/m4/snprintf.m4 $(top_srcdir)/m4/socketlib.m4 \ $(top_srcdir)/m4/sockets.m4 $(top_srcdir)/m4/socklen.m4 \ @@ -178,9 +185,9 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/stack-direction.m4 \ $(top_srcdir)/m4/stat-time.m4 $(top_srcdir)/m4/stat.m4 \ $(top_srcdir)/m4/stdalign.m4 $(top_srcdir)/m4/stdarg.m4 \ - $(top_srcdir)/m4/stdbool.m4 $(top_srcdir)/m4/stddef_h.m4 \ - $(top_srcdir)/m4/stdint.m4 $(top_srcdir)/m4/stdint_h.m4 \ - $(top_srcdir)/m4/stdio_h.m4 $(top_srcdir)/m4/stdlib_h.m4 \ + $(top_srcdir)/m4/stddef_h.m4 $(top_srcdir)/m4/stdint.m4 \ + $(top_srcdir)/m4/stdint_h.m4 $(top_srcdir)/m4/stdio_h.m4 \ + $(top_srcdir)/m4/stdlib_h.m4 $(top_srcdir)/m4/stpcpy.m4 \ $(top_srcdir)/m4/strcase.m4 $(top_srcdir)/m4/strerror.m4 \ $(top_srcdir)/m4/strerror_r.m4 $(top_srcdir)/m4/string_h.m4 \ $(top_srcdir)/m4/strings_h.m4 $(top_srcdir)/m4/strnlen.m4 \ @@ -194,12 +201,12 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/sys_types_h.m4 $(top_srcdir)/m4/sys_uio_h.m4 \ $(top_srcdir)/m4/sys_wait_h.m4 $(top_srcdir)/m4/tempname.m4 \ $(top_srcdir)/m4/thread.m4 $(top_srcdir)/m4/threadlib.m4 \ - $(top_srcdir)/m4/time_h.m4 $(top_srcdir)/m4/time_r.m4 \ - $(top_srcdir)/m4/time_rz.m4 $(top_srcdir)/m4/timegm.m4 \ - $(top_srcdir)/m4/timespec.m4 $(top_srcdir)/m4/tm_gmtoff.m4 \ - $(top_srcdir)/m4/tzset.m4 $(top_srcdir)/m4/unistd_h.m4 \ - $(top_srcdir)/m4/unlocked-io.m4 $(top_srcdir)/m4/vasnprintf.m4 \ - $(top_srcdir)/m4/vasprintf.m4 $(top_srcdir)/m4/version-etc.m4 \ + $(top_srcdir)/m4/time.m4 $(top_srcdir)/m4/time_h.m4 \ + $(top_srcdir)/m4/time_r.m4 $(top_srcdir)/m4/time_rz.m4 \ + $(top_srcdir)/m4/timegm.m4 $(top_srcdir)/m4/timespec.m4 \ + $(top_srcdir)/m4/tm_gmtoff.m4 $(top_srcdir)/m4/tzset.m4 \ + $(top_srcdir)/m4/unistd_h.m4 $(top_srcdir)/m4/unlocked-io.m4 \ + $(top_srcdir)/m4/vasnprintf.m4 $(top_srcdir)/m4/version-etc.m4 \ $(top_srcdir)/m4/visibility.m4 $(top_srcdir)/m4/warn-on-use.m4 \ $(top_srcdir)/m4/warnings.m4 $(top_srcdir)/m4/wchar_h.m4 \ $(top_srcdir)/m4/wchar_t.m4 $(top_srcdir)/m4/wcrtomb.m4 \ @@ -208,7 +215,6 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/00gnulib.m4 \ $(top_srcdir)/m4/wint_t.m4 $(top_srcdir)/m4/wmemchr.m4 \ $(top_srcdir)/m4/wmempcpy.m4 $(top_srcdir)/m4/xalloc.m4 \ $(top_srcdir)/m4/xsize.m4 $(top_srcdir)/m4/xstrtol.m4 \ - $(top_srcdir)/m4/xvasprintf.m4 $(top_srcdir)/m4/year2038.m4 \ $(top_srcdir)/m4/zzgnulib.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) @@ -281,10 +287,9 @@ am__base_list = \ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' am__uninstall_files_from_dir = { \ - test -z "$$files" \ - || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ - || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ - $(am__cd) "$$dir" && rm -f $$files; }; \ + { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ + || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ + $(am__cd) "$$dir" && echo $$files | $(am__xargs_n) 40 $(am__rm_f); }; \ } am__recheck_rx = ^[ ]*:recheck:[ ]* am__global_test_result_rx = ^[ ]*:global-test-result:[ ]* @@ -453,6 +458,7 @@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APPLE_UNIVERSAL_BUILD = @APPLE_UNIVERSAL_BUILD@ AR = @AR@ ARFLAGS = @ARFLAGS@ +ASSERT_H = @ASSERT_H@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ @@ -466,6 +472,7 @@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CFLAG_VISIBILITY = @CFLAG_VISIBILITY@ +CLOCK_TIME_LIB = @CLOCK_TIME_LIB@ CONFIG_INCLUDE = @CONFIG_INCLUDE@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ @@ -477,7 +484,6 @@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ -EGREP = @EGREP@ EMULTIHOP_HIDDEN = @EMULTIHOP_HIDDEN@ EMULTIHOP_VALUE = @EMULTIHOP_VALUE@ ENOLINK_HIDDEN = @ENOLINK_HIDDEN@ @@ -485,14 +491,17 @@ ENOLINK_VALUE = @ENOLINK_VALUE@ EOVERFLOW_HIDDEN = @EOVERFLOW_HIDDEN@ EOVERFLOW_VALUE = @EOVERFLOW_VALUE@ ERRNO_H = @ERRNO_H@ +ERROR_H = @ERROR_H@ ETAGS = @ETAGS@ EXEEXT = @EXEEXT@ FLOAT_H = @FLOAT_H@ FNMATCH_H = @FNMATCH_H@ GETOPT_CDEFS_H = @GETOPT_CDEFS_H@ GETOPT_H = @GETOPT_H@ +GETRANDOM_LIB = @GETRANDOM_LIB@ GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ GL_CFLAG_ALLOW_WARNINGS = @GL_CFLAG_ALLOW_WARNINGS@ +GL_CFLAG_GNULIB_WARNINGS = @GL_CFLAG_GNULIB_WARNINGS@ GL_CXXFLAG_ALLOW_WARNINGS = @GL_CXXFLAG_ALLOW_WARNINGS@ GL_GNULIB_ACCEPT = @GL_GNULIB_ACCEPT@ GL_GNULIB_ACCEPT4 = @GL_GNULIB_ACCEPT4@ @@ -501,9 +510,11 @@ GL_GNULIB_ALIGNED_ALLOC = @GL_GNULIB_ALIGNED_ALLOC@ GL_GNULIB_ATOLL = @GL_GNULIB_ATOLL@ GL_GNULIB_BIND = @GL_GNULIB_BIND@ GL_GNULIB_BTOWC = @GL_GNULIB_BTOWC@ +GL_GNULIB_CALLOC_GNU = @GL_GNULIB_CALLOC_GNU@ GL_GNULIB_CALLOC_POSIX = @GL_GNULIB_CALLOC_POSIX@ GL_GNULIB_CANONICALIZE_FILE_NAME = @GL_GNULIB_CANONICALIZE_FILE_NAME@ GL_GNULIB_CHDIR = @GL_GNULIB_CHDIR@ +GL_GNULIB_CHMOD = @GL_GNULIB_CHMOD@ GL_GNULIB_CHOWN = @GL_GNULIB_CHOWN@ GL_GNULIB_CLOSE = @GL_GNULIB_CLOSE@ GL_GNULIB_CONNECT = @GL_GNULIB_CONNECT@ @@ -541,6 +552,7 @@ GL_GNULIB_FGETC = @GL_GNULIB_FGETC@ GL_GNULIB_FGETS = @GL_GNULIB_FGETS@ GL_GNULIB_FNMATCH = @GL_GNULIB_FNMATCH@ GL_GNULIB_FOPEN = @GL_GNULIB_FOPEN@ +GL_GNULIB_FOPEN_GNU = @GL_GNULIB_FOPEN_GNU@ GL_GNULIB_FPRINTF = @GL_GNULIB_FPRINTF@ GL_GNULIB_FPRINTF_POSIX = @GL_GNULIB_FPRINTF_POSIX@ GL_GNULIB_FPURGE = @GL_GNULIB_FPURGE@ @@ -576,7 +588,9 @@ GL_GNULIB_GETLOGIN_R = @GL_GNULIB_GETLOGIN_R@ GL_GNULIB_GETOPT_POSIX = @GL_GNULIB_GETOPT_POSIX@ GL_GNULIB_GETPAGESIZE = @GL_GNULIB_GETPAGESIZE@ GL_GNULIB_GETPASS = @GL_GNULIB_GETPASS@ +GL_GNULIB_GETPASS_GNU = @GL_GNULIB_GETPASS_GNU@ GL_GNULIB_GETPEERNAME = @GL_GNULIB_GETPEERNAME@ +GL_GNULIB_GETPROGNAME = @GL_GNULIB_GETPROGNAME@ GL_GNULIB_GETRANDOM = @GL_GNULIB_GETRANDOM@ GL_GNULIB_GETSOCKNAME = @GL_GNULIB_GETSOCKNAME@ GL_GNULIB_GETSOCKOPT = @GL_GNULIB_GETSOCKOPT@ @@ -608,6 +622,7 @@ GL_GNULIB_LOCALENAME = @GL_GNULIB_LOCALENAME@ GL_GNULIB_LOCALTIME = @GL_GNULIB_LOCALTIME@ GL_GNULIB_LSEEK = @GL_GNULIB_LSEEK@ GL_GNULIB_LSTAT = @GL_GNULIB_LSTAT@ +GL_GNULIB_MALLOC_GNU = @GL_GNULIB_MALLOC_GNU@ GL_GNULIB_MALLOC_POSIX = @GL_GNULIB_MALLOC_POSIX@ GL_GNULIB_MBRLEN = @GL_GNULIB_MBRLEN@ GL_GNULIB_MBRTOWC = @GL_GNULIB_MBRTOWC@ @@ -628,6 +643,7 @@ GL_GNULIB_MBSSEP = @GL_GNULIB_MBSSEP@ GL_GNULIB_MBSSPN = @GL_GNULIB_MBSSPN@ GL_GNULIB_MBSSTR = @GL_GNULIB_MBSSTR@ GL_GNULIB_MBSTOK_R = @GL_GNULIB_MBSTOK_R@ +GL_GNULIB_MBSTOWCS = @GL_GNULIB_MBSTOWCS@ GL_GNULIB_MBTOWC = @GL_GNULIB_MBTOWC@ GL_GNULIB_MDA_ACCESS = @GL_GNULIB_MDA_ACCESS@ GL_GNULIB_MDA_CHDIR = @GL_GNULIB_MDA_CHDIR@ @@ -674,6 +690,7 @@ GL_GNULIB_MEMCHR = @GL_GNULIB_MEMCHR@ GL_GNULIB_MEMMEM = @GL_GNULIB_MEMMEM@ GL_GNULIB_MEMPCPY = @GL_GNULIB_MEMPCPY@ GL_GNULIB_MEMRCHR = @GL_GNULIB_MEMRCHR@ +GL_GNULIB_MEMSET_EXPLICIT = @GL_GNULIB_MEMSET_EXPLICIT@ GL_GNULIB_MKDIR = @GL_GNULIB_MKDIR@ GL_GNULIB_MKDIRAT = @GL_GNULIB_MKDIRAT@ GL_GNULIB_MKDTEMP = @GL_GNULIB_MKDTEMP@ @@ -730,6 +747,7 @@ GL_GNULIB_READ = @GL_GNULIB_READ@ GL_GNULIB_READLINK = @GL_GNULIB_READLINK@ GL_GNULIB_READLINKAT = @GL_GNULIB_READLINKAT@ GL_GNULIB_REALLOCARRAY = @GL_GNULIB_REALLOCARRAY@ +GL_GNULIB_REALLOC_GNU = @GL_GNULIB_REALLOC_GNU@ GL_GNULIB_REALLOC_POSIX = @GL_GNULIB_REALLOC_POSIX@ GL_GNULIB_REALPATH = @GL_GNULIB_REALPATH@ GL_GNULIB_RECV = @GL_GNULIB_RECV@ @@ -793,8 +811,10 @@ GL_GNULIB_STRVERSCMP = @GL_GNULIB_STRVERSCMP@ GL_GNULIB_SYMLINK = @GL_GNULIB_SYMLINK@ GL_GNULIB_SYMLINKAT = @GL_GNULIB_SYMLINKAT@ GL_GNULIB_SYSTEM_POSIX = @GL_GNULIB_SYSTEM_POSIX@ +GL_GNULIB_TIME = @GL_GNULIB_TIME@ GL_GNULIB_TIMEGM = @GL_GNULIB_TIMEGM@ GL_GNULIB_TIMESPEC_GET = @GL_GNULIB_TIMESPEC_GET@ +GL_GNULIB_TIMESPEC_GETRES = @GL_GNULIB_TIMESPEC_GETRES@ GL_GNULIB_TIME_R = @GL_GNULIB_TIME_R@ GL_GNULIB_TIME_RZ = @GL_GNULIB_TIME_RZ@ GL_GNULIB_TMPFILE = @GL_GNULIB_TMPFILE@ @@ -868,6 +888,7 @@ GNULIBHEADERS_OVERRIDE_WINT_T = @GNULIBHEADERS_OVERRIDE_WINT_T@ GNULIB_GETTIMEOFDAY = @GNULIB_GETTIMEOFDAY@ GNULIB_WARN_CFLAGS = @GNULIB_WARN_CFLAGS@ GREP = @GREP@ +HARD_LOCALE_LIB = @HARD_LOCALE_LIB@ HAVE_ACCEPT4 = @HAVE_ACCEPT4@ HAVE_ALIGNED_ALLOC = @HAVE_ALIGNED_ALLOC@ HAVE_ALLOCA_H = @HAVE_ALLOCA_H@ @@ -898,6 +919,7 @@ HAVE_DECL_GETLOGIN = @HAVE_DECL_GETLOGIN@ HAVE_DECL_GETLOGIN_R = @HAVE_DECL_GETLOGIN_R@ HAVE_DECL_GETPAGESIZE = @HAVE_DECL_GETPAGESIZE@ HAVE_DECL_GETUSERSHELL = @HAVE_DECL_GETUSERSHELL@ +HAVE_DECL_GETW = @HAVE_DECL_GETW@ HAVE_DECL_IMAXABS = @HAVE_DECL_IMAXABS@ HAVE_DECL_IMAXDIV = @HAVE_DECL_IMAXDIV@ HAVE_DECL_INET_NTOP = @HAVE_DECL_INET_NTOP@ @@ -907,6 +929,8 @@ HAVE_DECL_LOCALTIME_R = @HAVE_DECL_LOCALTIME_R@ HAVE_DECL_MEMMEM = @HAVE_DECL_MEMMEM@ HAVE_DECL_MEMRCHR = @HAVE_DECL_MEMRCHR@ HAVE_DECL_OBSTACK_PRINTF = @HAVE_DECL_OBSTACK_PRINTF@ +HAVE_DECL_PROGRAM_INVOCATION_NAME = @HAVE_DECL_PROGRAM_INVOCATION_NAME@ +HAVE_DECL_PUTW = @HAVE_DECL_PUTW@ HAVE_DECL_SETENV = @HAVE_DECL_SETENV@ HAVE_DECL_SETHOSTNAME = @HAVE_DECL_SETHOSTNAME@ HAVE_DECL_SETSTATE = @HAVE_DECL_SETSTATE@ @@ -930,6 +954,9 @@ HAVE_DECL_WCWIDTH = @HAVE_DECL_WCWIDTH@ HAVE_DPRINTF = @HAVE_DPRINTF@ HAVE_DUP3 = @HAVE_DUP3@ HAVE_DUPLOCALE = @HAVE_DUPLOCALE@ +HAVE_ERROR = @HAVE_ERROR@ +HAVE_ERROR_AT_LINE = @HAVE_ERROR_AT_LINE@ +HAVE_ERROR_H = @HAVE_ERROR_H@ HAVE_EUIDACCESS = @HAVE_EUIDACCESS@ HAVE_EXECVPE = @HAVE_EXECVPE@ HAVE_EXPLICIT_BZERO = @HAVE_EXPLICIT_BZERO@ @@ -960,12 +987,15 @@ HAVE_GETLOGIN = @HAVE_GETLOGIN@ HAVE_GETOPT_H = @HAVE_GETOPT_H@ HAVE_GETPAGESIZE = @HAVE_GETPAGESIZE@ HAVE_GETPASS = @HAVE_GETPASS@ +HAVE_GETPROGNAME = @HAVE_GETPROGNAME@ HAVE_GETRANDOM = @HAVE_GETRANDOM@ HAVE_GETSUBOPT = @HAVE_GETSUBOPT@ HAVE_GETTIMEOFDAY = @HAVE_GETTIMEOFDAY@ HAVE_GETUMASK = @HAVE_GETUMASK@ HAVE_GRANTPT = @HAVE_GRANTPT@ HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@ +HAVE_IMAXABS = @HAVE_IMAXABS@ +HAVE_IMAXDIV = @HAVE_IMAXDIV@ HAVE_IMAXDIV_T = @HAVE_IMAXDIV_T@ HAVE_INITSTATE = @HAVE_INITSTATE@ HAVE_INTTYPES_H = @HAVE_INTTYPES_H@ @@ -993,6 +1023,7 @@ HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@ HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@ HAVE_MBTOWC = @HAVE_MBTOWC@ HAVE_MEMPCPY = @HAVE_MEMPCPY@ +HAVE_MEMSET_EXPLICIT = @HAVE_MEMSET_EXPLICIT@ HAVE_MKDIRAT = @HAVE_MKDIRAT@ HAVE_MKDTEMP = @HAVE_MKDTEMP@ HAVE_MKFIFO = @HAVE_MKFIFO@ @@ -1150,9 +1181,11 @@ HAVE_SYS_TYPES_H = @HAVE_SYS_TYPES_H@ HAVE_SYS_UIO_H = @HAVE_SYS_UIO_H@ HAVE_TIMEGM = @HAVE_TIMEGM@ HAVE_TIMESPEC_GET = @HAVE_TIMESPEC_GET@ +HAVE_TIMESPEC_GETRES = @HAVE_TIMESPEC_GETRES@ HAVE_TIMEZONE_T = @HAVE_TIMEZONE_T@ HAVE_TYPE_VOLATILE_SIG_ATOMIC_T = @HAVE_TYPE_VOLATILE_SIG_ATOMIC_T@ HAVE_UNISTD_H = @HAVE_UNISTD_H@ +HAVE_UNISTRING_WOE32DLL_H = @HAVE_UNISTRING_WOE32DLL_H@ HAVE_UNLINKAT = @HAVE_UNLINKAT@ HAVE_UNLOCKPT = @HAVE_UNLOCKPT@ HAVE_USLEEP = @HAVE_USLEEP@ @@ -1202,7 +1235,6 @@ HAVE_WMEMPCPY = @HAVE_WMEMPCPY@ HAVE_WMEMSET = @HAVE_WMEMSET@ HAVE_WS2TCPIP_H = @HAVE_WS2TCPIP_H@ HAVE_XLOCALE_H = @HAVE_XLOCALE_H@ -HAVE__BOOL = @HAVE__BOOL@ HAVE__EXIT = @HAVE__EXIT@ HELP2MAN = @HELP2MAN@ HOST_CPU = @HOST_CPU@ @@ -1268,15 +1300,20 @@ LTLIBOBJS = @LTLIBOBJS@ LTLIBSIGSEGV = @LTLIBSIGSEGV@ LTLIBTHREAD = @LTLIBTHREAD@ MAKEINFO = @MAKEINFO@ +MBRTOWC_LIB = @MBRTOWC_LIB@ MKDIR_P = @MKDIR_P@ MSGFMT = @MSGFMT@ MSGFMT_015 = @MSGFMT_015@ MSGMERGE = @MSGMERGE@ +NANOSLEEP_LIB = @NANOSLEEP_LIB@ NETINET_IN_H = @NETINET_IN_H@ NEXT_ARPA_INET_H = @NEXT_ARPA_INET_H@ +NEXT_ASSERT_H = @NEXT_ASSERT_H@ NEXT_AS_FIRST_DIRECTIVE_ARPA_INET_H = @NEXT_AS_FIRST_DIRECTIVE_ARPA_INET_H@ +NEXT_AS_FIRST_DIRECTIVE_ASSERT_H = @NEXT_AS_FIRST_DIRECTIVE_ASSERT_H@ NEXT_AS_FIRST_DIRECTIVE_CTYPE_H = @NEXT_AS_FIRST_DIRECTIVE_CTYPE_H@ NEXT_AS_FIRST_DIRECTIVE_ERRNO_H = @NEXT_AS_FIRST_DIRECTIVE_ERRNO_H@ +NEXT_AS_FIRST_DIRECTIVE_ERROR_H = @NEXT_AS_FIRST_DIRECTIVE_ERROR_H@ NEXT_AS_FIRST_DIRECTIVE_FCNTL_H = @NEXT_AS_FIRST_DIRECTIVE_FCNTL_H@ NEXT_AS_FIRST_DIRECTIVE_FLOAT_H = @NEXT_AS_FIRST_DIRECTIVE_FLOAT_H@ NEXT_AS_FIRST_DIRECTIVE_FNMATCH_H = @NEXT_AS_FIRST_DIRECTIVE_FNMATCH_H@ @@ -1312,6 +1349,7 @@ NEXT_AS_FIRST_DIRECTIVE_WCHAR_H = @NEXT_AS_FIRST_DIRECTIVE_WCHAR_H@ NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H = @NEXT_AS_FIRST_DIRECTIVE_WCTYPE_H@ NEXT_CTYPE_H = @NEXT_CTYPE_H@ NEXT_ERRNO_H = @NEXT_ERRNO_H@ +NEXT_ERROR_H = @NEXT_ERROR_H@ NEXT_FCNTL_H = @NEXT_FCNTL_H@ NEXT_FLOAT_H = @NEXT_FLOAT_H@ NEXT_FNMATCH_H = @NEXT_FNMATCH_H@ @@ -1354,27 +1392,35 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ POSUB = @POSUB@ PRAGMA_COLUMNS = @PRAGMA_COLUMNS@ PRAGMA_SYSTEM_HEADER = @PRAGMA_SYSTEM_HEADER@ PRIPTR_PREFIX = @PRIPTR_PREFIX@ PR_PROGRAM = @PR_PROGRAM@ PTHREAD_H_DEFINES_STRUCT_TIMESPEC = @PTHREAD_H_DEFINES_STRUCT_TIMESPEC@ +PTHREAD_SIGMASK_LIB = @PTHREAD_SIGMASK_LIB@ PTRDIFF_T_SUFFIX = @PTRDIFF_T_SUFFIX@ RANLIB = @RANLIB@ REPLACE_ACCESS = @REPLACE_ACCESS@ REPLACE_ALIGNED_ALLOC = @REPLACE_ALIGNED_ALLOC@ REPLACE_BTOWC = @REPLACE_BTOWC@ -REPLACE_CALLOC = @REPLACE_CALLOC@ +REPLACE_CALLOC_FOR_CALLOC_GNU = @REPLACE_CALLOC_FOR_CALLOC_GNU@ +REPLACE_CALLOC_FOR_CALLOC_POSIX = @REPLACE_CALLOC_FOR_CALLOC_POSIX@ REPLACE_CANONICALIZE_FILE_NAME = @REPLACE_CANONICALIZE_FILE_NAME@ +REPLACE_CHMOD = @REPLACE_CHMOD@ REPLACE_CHOWN = @REPLACE_CHOWN@ REPLACE_CLOSE = @REPLACE_CLOSE@ +REPLACE_COPY_FILE_RANGE = @REPLACE_COPY_FILE_RANGE@ REPLACE_CREAT = @REPLACE_CREAT@ REPLACE_CTIME = @REPLACE_CTIME@ REPLACE_DPRINTF = @REPLACE_DPRINTF@ REPLACE_DUP = @REPLACE_DUP@ REPLACE_DUP2 = @REPLACE_DUP2@ +REPLACE_DUP3 = @REPLACE_DUP3@ REPLACE_DUPLOCALE = @REPLACE_DUPLOCALE@ +REPLACE_ERROR = @REPLACE_ERROR@ +REPLACE_ERROR_AT_LINE = @REPLACE_ERROR_AT_LINE@ REPLACE_EXECL = @REPLACE_EXECL@ REPLACE_EXECLE = @REPLACE_EXECLE@ REPLACE_EXECLP = @REPLACE_EXECLP@ @@ -1387,11 +1433,13 @@ REPLACE_FCHMODAT = @REPLACE_FCHMODAT@ REPLACE_FCHOWNAT = @REPLACE_FCHOWNAT@ REPLACE_FCLOSE = @REPLACE_FCLOSE@ REPLACE_FCNTL = @REPLACE_FCNTL@ +REPLACE_FDATASYNC = @REPLACE_FDATASYNC@ REPLACE_FDOPEN = @REPLACE_FDOPEN@ REPLACE_FFLUSH = @REPLACE_FFLUSH@ REPLACE_FFSLL = @REPLACE_FFSLL@ REPLACE_FNMATCH = @REPLACE_FNMATCH@ REPLACE_FOPEN = @REPLACE_FOPEN@ +REPLACE_FOPEN_FOR_FOPEN_GNU = @REPLACE_FOPEN_FOR_FOPEN_GNU@ REPLACE_FPRINTF = @REPLACE_FPRINTF@ REPLACE_FPURGE = @REPLACE_FPURGE@ REPLACE_FREE = @REPLACE_FREE@ @@ -1409,17 +1457,24 @@ REPLACE_GETCWD = @REPLACE_GETCWD@ REPLACE_GETDELIM = @REPLACE_GETDELIM@ REPLACE_GETDOMAINNAME = @REPLACE_GETDOMAINNAME@ REPLACE_GETDTABLESIZE = @REPLACE_GETDTABLESIZE@ +REPLACE_GETENTROPY = @REPLACE_GETENTROPY@ REPLACE_GETGROUPS = @REPLACE_GETGROUPS@ REPLACE_GETLINE = @REPLACE_GETLINE@ +REPLACE_GETLOADAVG = @REPLACE_GETLOADAVG@ REPLACE_GETLOGIN_R = @REPLACE_GETLOGIN_R@ REPLACE_GETPAGESIZE = @REPLACE_GETPAGESIZE@ REPLACE_GETPASS = @REPLACE_GETPASS@ +REPLACE_GETPASS_FOR_GETPASS_GNU = @REPLACE_GETPASS_FOR_GETPASS_GNU@ +REPLACE_GETPROGNAME = @REPLACE_GETPROGNAME@ REPLACE_GETRANDOM = @REPLACE_GETRANDOM@ +REPLACE_GETSUBOPT = @REPLACE_GETSUBOPT@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@ REPLACE_GMTIME = @REPLACE_GMTIME@ REPLACE_ICONV = @REPLACE_ICONV@ REPLACE_ICONV_OPEN = @REPLACE_ICONV_OPEN@ REPLACE_ICONV_UTF = @REPLACE_ICONV_UTF@ +REPLACE_IMAXABS = @REPLACE_IMAXABS@ +REPLACE_IMAXDIV = @REPLACE_IMAXDIV@ REPLACE_INET_NTOP = @REPLACE_INET_NTOP@ REPLACE_INET_PTON = @REPLACE_INET_PTON@ REPLACE_INITSTATE = @REPLACE_INITSTATE@ @@ -1438,21 +1493,27 @@ REPLACE_LOCALTIME = @REPLACE_LOCALTIME@ REPLACE_LOCALTIME_R = @REPLACE_LOCALTIME_R@ REPLACE_LSEEK = @REPLACE_LSEEK@ REPLACE_LSTAT = @REPLACE_LSTAT@ -REPLACE_MALLOC = @REPLACE_MALLOC@ +REPLACE_MALLOC_FOR_MALLOC_GNU = @REPLACE_MALLOC_FOR_MALLOC_GNU@ +REPLACE_MALLOC_FOR_MALLOC_POSIX = @REPLACE_MALLOC_FOR_MALLOC_POSIX@ REPLACE_MBRLEN = @REPLACE_MBRLEN@ REPLACE_MBRTOWC = @REPLACE_MBRTOWC@ REPLACE_MBSINIT = @REPLACE_MBSINIT@ REPLACE_MBSNRTOWCS = @REPLACE_MBSNRTOWCS@ REPLACE_MBSRTOWCS = @REPLACE_MBSRTOWCS@ REPLACE_MBSTATE_T = @REPLACE_MBSTATE_T@ +REPLACE_MBSTOWCS = @REPLACE_MBSTOWCS@ REPLACE_MBTOWC = @REPLACE_MBTOWC@ +REPLACE_MB_CUR_MAX = @REPLACE_MB_CUR_MAX@ REPLACE_MEMCHR = @REPLACE_MEMCHR@ REPLACE_MEMMEM = @REPLACE_MEMMEM@ +REPLACE_MEMPCPY = @REPLACE_MEMPCPY@ REPLACE_MKDIR = @REPLACE_MKDIR@ REPLACE_MKFIFO = @REPLACE_MKFIFO@ REPLACE_MKFIFOAT = @REPLACE_MKFIFOAT@ REPLACE_MKNOD = @REPLACE_MKNOD@ REPLACE_MKNODAT = @REPLACE_MKNODAT@ +REPLACE_MKOSTEMP = @REPLACE_MKOSTEMP@ +REPLACE_MKOSTEMPS = @REPLACE_MKOSTEMPS@ REPLACE_MKSTEMP = @REPLACE_MKSTEMP@ REPLACE_MKTIME = @REPLACE_MKTIME@ REPLACE_NANOSLEEP = @REPLACE_NANOSLEEP@ @@ -1463,8 +1524,10 @@ REPLACE_OBSTACK_PRINTF = @REPLACE_OBSTACK_PRINTF@ REPLACE_OPEN = @REPLACE_OPEN@ REPLACE_OPENAT = @REPLACE_OPENAT@ REPLACE_PERROR = @REPLACE_PERROR@ +REPLACE_PIPE2 = @REPLACE_PIPE2@ REPLACE_POPEN = @REPLACE_POPEN@ REPLACE_POSIX_MEMALIGN = @REPLACE_POSIX_MEMALIGN@ +REPLACE_POSIX_OPENPT = @REPLACE_POSIX_OPENPT@ REPLACE_PREAD = @REPLACE_PREAD@ REPLACE_PRINTF = @REPLACE_PRINTF@ REPLACE_PSELECT = @REPLACE_PSELECT@ @@ -1531,8 +1594,9 @@ REPLACE_RANDOM_R = @REPLACE_RANDOM_R@ REPLACE_READ = @REPLACE_READ@ REPLACE_READLINK = @REPLACE_READLINK@ REPLACE_READLINKAT = @REPLACE_READLINKAT@ -REPLACE_REALLOC = @REPLACE_REALLOC@ REPLACE_REALLOCARRAY = @REPLACE_REALLOCARRAY@ +REPLACE_REALLOC_FOR_REALLOC_GNU = @REPLACE_REALLOC_FOR_REALLOC_GNU@ +REPLACE_REALLOC_FOR_REALLOC_POSIX = @REPLACE_REALLOC_FOR_REALLOC_POSIX@ REPLACE_REALPATH = @REPLACE_REALPATH@ REPLACE_REMOVE = @REPLACE_REMOVE@ REPLACE_RENAME = @REPLACE_RENAME@ @@ -1541,6 +1605,7 @@ REPLACE_RMDIR = @REPLACE_RMDIR@ REPLACE_SCHED_YIELD = @REPLACE_SCHED_YIELD@ REPLACE_SELECT = @REPLACE_SELECT@ REPLACE_SETENV = @REPLACE_SETENV@ +REPLACE_SETHOSTNAME = @REPLACE_SETHOSTNAME@ REPLACE_SETLOCALE = @REPLACE_SETLOCALE@ REPLACE_SETSTATE = @REPLACE_SETSTATE@ REPLACE_SLEEP = @REPLACE_SLEEP@ @@ -1549,6 +1614,7 @@ REPLACE_SPRINTF = @REPLACE_SPRINTF@ REPLACE_STAT = @REPLACE_STAT@ REPLACE_STDIO_READ_FUNCS = @REPLACE_STDIO_READ_FUNCS@ REPLACE_STDIO_WRITE_FUNCS = @REPLACE_STDIO_WRITE_FUNCS@ +REPLACE_STPCPY = @REPLACE_STPCPY@ REPLACE_STPNCPY = @REPLACE_STPNCPY@ REPLACE_STRCASESTR = @REPLACE_STRCASESTR@ REPLACE_STRCHRNUL = @REPLACE_STRCHRNUL@ @@ -1575,7 +1641,9 @@ REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@ REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@ REPLACE_SYMLINK = @REPLACE_SYMLINK@ REPLACE_SYMLINKAT = @REPLACE_SYMLINKAT@ +REPLACE_TIME = @REPLACE_TIME@ REPLACE_TIMEGM = @REPLACE_TIMEGM@ +REPLACE_TIMESPEC_GET = @REPLACE_TIMESPEC_GET@ REPLACE_TMPFILE = @REPLACE_TMPFILE@ REPLACE_TOWLOWER = @REPLACE_TOWLOWER@ REPLACE_TRUNCATE = @REPLACE_TRUNCATE@ @@ -1593,25 +1661,33 @@ REPLACE_VPRINTF = @REPLACE_VPRINTF@ REPLACE_VSNPRINTF = @REPLACE_VSNPRINTF@ REPLACE_VSPRINTF = @REPLACE_VSPRINTF@ REPLACE_WCRTOMB = @REPLACE_WCRTOMB@ +REPLACE_WCSCMP = @REPLACE_WCSCMP@ REPLACE_WCSFTIME = @REPLACE_WCSFTIME@ +REPLACE_WCSNCMP = @REPLACE_WCSNCMP@ REPLACE_WCSNRTOMBS = @REPLACE_WCSNRTOMBS@ REPLACE_WCSRTOMBS = @REPLACE_WCSRTOMBS@ +REPLACE_WCSSTR = @REPLACE_WCSSTR@ REPLACE_WCSTOK = @REPLACE_WCSTOK@ REPLACE_WCSWIDTH = @REPLACE_WCSWIDTH@ REPLACE_WCTOB = @REPLACE_WCTOB@ REPLACE_WCTOMB = @REPLACE_WCTOMB@ REPLACE_WCWIDTH = @REPLACE_WCWIDTH@ +REPLACE_WMEMCMP = @REPLACE_WMEMCMP@ +REPLACE_WMEMPCPY = @REPLACE_WMEMPCPY@ REPLACE_WRITE = @REPLACE_WRITE@ +REPLACE__EXIT = @REPLACE__EXIT@ +SCHED_YIELD_LIB = @SCHED_YIELD_LIB@ SED = @SED@ +SELECT_LIB = @SELECT_LIB@ +SETLOCALE_NULL_LIB = @SETLOCALE_NULL_LIB@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ SIGSEGV_H = @SIGSEGV_H@ SIG_ATOMIC_T_SUFFIX = @SIG_ATOMIC_T_SUFFIX@ SIZE_T_SUFFIX = @SIZE_T_SUFFIX@ SRC_VERSION_C = @SRC_VERSION_C@ -STDALIGN_H = @STDALIGN_H@ STDARG_H = @STDARG_H@ -STDBOOL_H = @STDBOOL_H@ +STDCKDINT_H = @STDCKDINT_H@ STDDEF_H = @STDDEF_H@ STDINT_H = @STDINT_H@ STRIP = @STRIP@ @@ -1649,8 +1725,10 @@ ac_ct_CC = @ac_ct_CC@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ +am__rm_f_notfound = @am__rm_f_notfound@ am__tar = @am__tar@ am__untar = @am__untar@ +am__xargs_n = @am__xargs_n@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ @@ -1663,8 +1741,10 @@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ +gl_LIBOBJDEPS = @gl_LIBOBJDEPS@ gl_LIBOBJS = @gl_LIBOBJS@ gl_LTLIBOBJS = @gl_LTLIBOBJS@ +gltests_LIBOBJDEPS = @gltests_LIBOBJDEPS@ gltests_LIBOBJS = @gltests_LIBOBJS@ gltests_LTLIBOBJS = @gltests_LTLIBOBJS@ gltests_WITNESS = @gltests_WITNESS@ @@ -1707,6 +1787,7 @@ TESTS = \ diff3 \ excess-slash \ help-version \ + ifdef \ invalid-re \ function-line-vs-leading-space \ ignore-matching-lines \ @@ -1719,7 +1800,9 @@ TESTS = \ strcoll-0-names \ filename-quoting \ strip-trailing-cr \ - colors + timezone \ + colors \ + y2038-vs-32bit XFAIL_TESTS = large-subopt EXTRA_DIST = \ @@ -1952,17 +2035,16 @@ $(TEST_SUITE_LOG): $(TEST_LOGS) $$success || exit 1 check-TESTS: - @list='$(RECHECK_LOGS)'; test -z "$$list" || rm -f $$list - @list='$(RECHECK_LOGS:.log=.trs)'; test -z "$$list" || rm -f $$list - @test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG) + @$(am__rm_f) $(RECHECK_LOGS) + @$(am__rm_f) $(RECHECK_LOGS:.log=.trs) + @$(am__rm_f) $(TEST_SUITE_LOG) @set +e; $(am__set_TESTS_bases); \ log_list=`for i in $$bases; do echo $$i.log; done`; \ - trs_list=`for i in $$bases; do echo $$i.trs; done`; \ - log_list=`echo $$log_list`; trs_list=`echo $$trs_list`; \ + log_list=`echo $$log_list`; \ $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) TEST_LOGS="$$log_list"; \ exit $$?; recheck: all - @test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG) + @$(am__rm_f) $(TEST_SUITE_LOG) @set +e; $(am__set_TESTS_bases); \ bases=`for i in $$bases; do echo $$i; done \ | $(am__list_recheck_tests)` || exit 1; \ @@ -2035,6 +2117,13 @@ help-version.log: help-version --log-file $$b.log --trs-file $$b.trs \ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ "$$tst" $(AM_TESTS_FD_REDIRECT) +ifdef.log: ifdef + @p='ifdef'; \ + b='ifdef'; \ + $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ + --log-file $$b.log --trs-file $$b.trs \ + $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ + "$$tst" $(AM_TESTS_FD_REDIRECT) invalid-re.log: invalid-re @p='invalid-re'; \ b='invalid-re'; \ @@ -2119,6 +2208,13 @@ strip-trailing-cr.log: strip-trailing-cr --log-file $$b.log --trs-file $$b.trs \ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ "$$tst" $(AM_TESTS_FD_REDIRECT) +timezone.log: timezone + @p='timezone'; \ + b='timezone'; \ + $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ + --log-file $$b.log --trs-file $$b.trs \ + $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ + "$$tst" $(AM_TESTS_FD_REDIRECT) colors.log: colors @p='colors'; \ b='colors'; \ @@ -2126,6 +2222,13 @@ colors.log: colors --log-file $$b.log --trs-file $$b.trs \ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ "$$tst" $(AM_TESTS_FD_REDIRECT) +y2038-vs-32bit.log: y2038-vs-32bit + @p='y2038-vs-32bit'; \ + b='y2038-vs-32bit'; \ + $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ + --log-file $$b.log --trs-file $$b.trs \ + $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ + "$$tst" $(AM_TESTS_FD_REDIRECT) .test.log: @p='$<'; \ $(am__set_b); \ @@ -2198,15 +2301,15 @@ install-strip: "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ fi mostlyclean-generic: - -test -z "$(TEST_LOGS)" || rm -f $(TEST_LOGS) - -test -z "$(TEST_LOGS:.log=.trs)" || rm -f $(TEST_LOGS:.log=.trs) - -test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG) + -$(am__rm_f) $(TEST_LOGS) + -$(am__rm_f) $(TEST_LOGS:.log=.trs) + -$(am__rm_f) $(TEST_SUITE_LOG) clean-generic: distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + -$(am__rm_f) $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || $(am__rm_f) $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" diff --git a/tests/cmp b/tests/cmp index 79568a2..edf76a4 100755 --- a/tests/cmp +++ b/tests/cmp @@ -1,7 +1,7 @@ #!/bin/sh # Test 'cmp'. -# Copyright 2017-2021 Free Software Foundation, Inc. +# Copyright 2017-2023 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff --git a/tests/colors b/tests/colors index d28a61c..6ef729f 100755 --- a/tests/colors +++ b/tests/colors @@ -12,7 +12,7 @@ echo b > b # On systems lacking fractional timestamp support, diff -u does not print # a decimal point and 9-digit nanosecond suffix. -nanosecond_zeros=$(diff -u a b|grep -F . > /dev/null && echo .000000000) +nanosecond_zeros=$(diff -u a b|grep '\.' > /dev/null && echo .000000000) epoch='1970-01-01 00:00:00' touch -t 197001010000.00 a b @@ -128,6 +128,9 @@ printf '%1000000s-a' > a printf '%1000000s-b' > b head -c 10 < fifo > /dev/null & diff --color=always ---presume-output-tty a b > fifo -test $? = 141 || fail=1 + +# Depending on version of GNU make (4.3.92-4.4 set SIGPIPE to "ignore"), +# either of these is acceptable. +case $? in 2|141) ;; *) fail=1 ;; esac Exit $fail diff --git a/tests/envvar-check b/tests/envvar-check index dff7527..0ec6b12 100644 --- a/tests/envvar-check +++ b/tests/envvar-check @@ -1,7 +1,7 @@ # -*- sh -*- # Check environment variables for sane values while testing. -# Copyright (C) 2000-2021 Free Software Foundation, Inc. +# Copyright (C) 2000-2023 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff --git a/tests/help-version b/tests/help-version index d5a8d71..a40693b 100755 --- a/tests/help-version +++ b/tests/help-version @@ -2,7 +2,7 @@ # Make sure all these programs work properly # when invoked with --help or --version. -# Copyright (C) 2000-2013, 2015-2021 Free Software Foundation, Inc. +# Copyright (C) 2000-2013, 2015-2023 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff --git a/tests/ifdef b/tests/ifdef new file mode 100755 index 0000000..d3b05dd --- /dev/null +++ b/tests/ifdef @@ -0,0 +1,37 @@ +#!/bin/sh +# --ifdef + +# Bug reported by Robert Webb in . + +. "${srcdir=.}/init.sh"; path_prepend_ ../src + +fail=0 + +cat <<'EOF' >a +1 +2 +3 +4 +5 +EOF + +cat <<'EOF' >b +1 +4 +5 +EOF + +cat <<'EOF' >exp +1 +#ifndef ZZZ +2 +3 +#endif /* ! ZZZ */ +4 +5 +EOF + +returns_ 1 diff -D ZZZ a b >out 2>err || fail=1 +compare exp out || fail=1 + +Exit $fail diff --git a/tests/init.cfg b/tests/init.cfg index 656a54e..ad62f2a 100644 --- a/tests/init.cfg +++ b/tests/init.cfg @@ -1,6 +1,6 @@ # This file is sourced by init.sh, *before* its initialization. -# Copyright (C) 2010-2021 Free Software Foundation, Inc. +# Copyright (C) 2010-2023 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -61,8 +61,22 @@ sanitize_path_() require_valgrind_() { - valgrind --error-exitcode=1 true 2>/dev/null || + local errout; errout=$( + LC_ALL=C valgrind --error-exitcode=1 diff /dev/null /dev/null 2>&1 + ) || skip_ "requires a working valgrind" + case $errout in + *'Serious error'*) + skip_ "requires a valgrind without serious errors";; + esac +} + +# Skip the current test if we lack Perl. +require_perl_() +{ + : ${PERL=perl} + $PERL -e 'use warnings' > /dev/null 2>&1 \ + || skip_ 'configure did not find a usable version of Perl' } sanitize_path_ diff --git a/tests/init.sh b/tests/init.sh index 9ef8348..ede5dee 100644 --- a/tests/init.sh +++ b/tests/init.sh @@ -1,6 +1,6 @@ # source this file; set up for tests -# Copyright (C) 2009-2021 Free Software Foundation, Inc. +# Copyright (C) 2009-2023 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -426,6 +426,23 @@ setup_ () for sig_ in 1 2 3 13 15; do eval "trap 'Exit $(expr $sig_ + 128)' $sig_" done + + # Remove relative and non-accessible directories from PATH, including '.' + # and Zero-length entries. + saved_IFS="$IFS" + IFS=: + new_PATH= + sep_= + for dir in $PATH; do + case "$dir" in + /*) test -d "$dir/." || continue + new_PATH="${new_PATH}${sep_}${dir}" + sep_=':';; + esac + done + IFS="$saved_IFS" + PATH="$new_PATH" + export PATH } # This is a stub function that is run upon trap (upon regular exit and diff --git a/tests/large-subopt b/tests/large-subopt index 1802df2..33f3b30 100644 --- a/tests/large-subopt +++ b/tests/large-subopt @@ -13,12 +13,14 @@ . "${srcdir=.}/init.sh"; path_prepend_ ../src +require_perl_ + fail=0 diff -u \ "$abs_top_srcdir/tests/large-subopt.in1" \ "$abs_top_srcdir/tests/large-subopt.in2" \ - | perl -n0 -e \ + | $PERL -n0 -e \ '/\n-2\n(\+L: 361\n){2}\+2\n/ and do {$e=1; last}; END{exit !$e}' \ && fail=1 diff --git a/tests/timezone b/tests/timezone new file mode 100755 index 0000000..52b9e18 --- /dev/null +++ b/tests/timezone @@ -0,0 +1,14 @@ +#!/bin/sh +# In diff 3.4 through 3.8, this would output the wrong timezone on Solaris. + +. "${srcdir=.}/init.sh"; path_prepend_ ../src + +fail=0 + +echo a >a || fail=1 +case $(LC_ALL=C TZ=EST5 diff -u /dev/null a) in + *' -0500'*) ;; + *) fail=1 ;; +esac + +Exit $fail diff --git a/tests/y2038-vs-32bit b/tests/y2038-vs-32bit new file mode 100755 index 0000000..51633c3 --- /dev/null +++ b/tests/y2038-vs-32bit @@ -0,0 +1,13 @@ +#!/bin/sh +# dates after Y2K38 are safe + +. "${srcdir=.}/init.sh"; path_prepend_ ../src + +fail=0 + +touch -t 203901010000 in || skip_ 'touch -t 2039... failed' + +cmp in in || fail=1 +diff in in || fail=1 + +Exit $fail -- 2.7.4