summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorColin Watson <cjwatson@debian.org>2019-08-26 16:24:25 +0100
committerColin Watson <cjwatson@debian.org>2019-08-26 16:24:25 +0100
commit4022480a2cbcd303c5fcb3547dab2896ae1915a9 (patch)
treeaa7f325ed783df7e253f8474df7121c6f1f85ea2
parent886374b96c0da5287b5a9eba5777cb2d9f0ea3d8 (diff)
parent1c9cb89a74a0e54309eff01adcac9775e8c0563a (diff)
Import man-db_2.8.7.orig.tar.xz
-rw-r--r--ChangeLog398
-rw-r--r--Makefile.in16
-rw-r--r--NEWS38
-rw-r--r--aclocal.m41
-rw-r--r--bootstrap.conf3
-rwxr-xr-xbuild-aux/config.guess249
-rwxr-xr-xbuild-aux/config.sub34
-rwxr-xr-xbuild-aux/gitlog-to-changelog48
-rwxr-xr-xbuild-aux/gnupload14
-rw-r--r--build-aux/ltmain.sh78
-rw-r--r--build-aux/texinfo.tex1072
-rw-r--r--config.h.in67
-rwxr-xr-xconfigure3076
-rw-r--r--configure.ac36
-rw-r--r--docs/Makefile.in16
-rw-r--r--docs/man-db.lsm6
-rw-r--r--gl/lib/Makefile.am50
-rw-r--r--gl/lib/Makefile.in56
-rw-r--r--gl/lib/_Noreturn.h25
-rw-r--r--gl/lib/alloca.c10
-rw-r--r--gl/lib/alloca.in.h6
-rw-r--r--gl/lib/areadlink-with-size.c36
-rw-r--r--gl/lib/bitrotate.h10
-rw-r--r--gl/lib/canonicalize.h8
-rw-r--r--gl/lib/error.c2
-rw-r--r--gl/lib/fcntl.c1
-rw-r--r--gl/lib/flexmember.h25
-rw-r--r--gl/lib/fstat.c6
-rw-r--r--gl/lib/fstatat.c7
-rw-r--r--gl/lib/getcwd-lgpl.c13
-rw-r--r--gl/lib/getcwd.c38
-rw-r--r--gl/lib/getprogname.c11
-rw-r--r--gl/lib/gettimeofday.c6
-rw-r--r--gl/lib/gl_array_list.c5
-rw-r--r--gl/lib/gl_hash_map.c6
-rw-r--r--gl/lib/gl_hash_set.c6
-rw-r--r--gl/lib/gl_linkedhash_list.c6
-rw-r--r--gl/lib/glthread/lock.c717
-rw-r--r--gl/lib/glthread/lock.h404
-rw-r--r--gl/lib/intprops.h167
-rw-r--r--gl/lib/localcharset.c188
-rw-r--r--gl/lib/lstat.c6
-rw-r--r--gl/lib/mbrtowc.c442
-rw-r--r--gl/lib/memchr.valgrind16
-rw-r--r--gl/lib/msvc-inval.h4
-rw-r--r--gl/lib/nanosleep.c2
-rw-r--r--gl/lib/nl_langinfo.c10
-rw-r--r--gl/lib/openat.c1
-rw-r--r--gl/lib/pathmax.h2
-rw-r--r--gl/lib/rawmemchr.valgrind16
-rw-r--r--gl/lib/regcomp.c20
-rw-r--r--gl/lib/regex_internal.c11
-rw-r--r--gl/lib/regexec.c20
-rw-r--r--gl/lib/stat-time.h2
-rw-r--r--gl/lib/stat-w32.c68
-rw-r--r--gl/lib/stat.c22
-rw-r--r--gl/lib/stdio.in.h7
-rw-r--r--gl/lib/stdlib.in.h95
-rw-r--r--gl/lib/str-two-way.h2
-rw-r--r--gl/lib/strchrnul.valgrind16
-rw-r--r--gl/lib/sys_socket.in.h2
-rw-r--r--gl/lib/unistd.in.h48
-rw-r--r--gl/lib/utime.c14
-rw-r--r--gl/lib/utimens.c8
-rw-r--r--gl/lib/vasnprintf.c2
-rw-r--r--gl/lib/verify.h97
-rw-r--r--gl/lib/wcrtomb.c15
-rw-r--r--gl/lib/windows-initguard.h35
-rw-r--r--gl/lib/windows-mutex.c95
-rw-r--r--gl/lib/windows-mutex.h51
-rw-r--r--gl/lib/windows-once.c62
-rw-r--r--gl/lib/windows-once.h47
-rw-r--r--gl/lib/windows-recmutex.c127
-rw-r--r--gl/lib/windows-recmutex.h57
-rw-r--r--gl/lib/windows-rwlock.c373
-rw-r--r--gl/lib/windows-rwlock.h68
-rw-r--r--gl/m4/alloca.m49
-rw-r--r--gl/m4/canonicalize.m44
-rw-r--r--gl/m4/chown.m435
-rw-r--r--gl/m4/d-ino.m416
-rw-r--r--gl/m4/fdopendir.m412
-rw-r--r--gl/m4/flexmember.m48
-rw-r--r--gl/m4/fnmatch.m418
-rw-r--r--gl/m4/futimens.m422
-rw-r--r--gl/m4/getcwd-abort-bug.m423
-rw-r--r--gl/m4/getcwd.m44
-rw-r--r--gl/m4/getdelim.m440
-rw-r--r--gl/m4/getline.m438
-rw-r--r--gl/m4/gettimeofday.m44
-rw-r--r--gl/m4/glob.m411
-rw-r--r--gl/m4/gnulib-common.m438
-rw-r--r--gl/m4/gnulib-comp.m444
-rw-r--r--gl/m4/libtool.m46
-rw-r--r--gl/m4/malloc.m417
-rw-r--r--gl/m4/manywarnings.m4339
-rw-r--r--gl/m4/mbtowc.m411
-rw-r--r--gl/m4/memchr.m423
-rw-r--r--gl/m4/mkdir.m44
-rw-r--r--gl/m4/mkstemp.m44
-rw-r--r--gl/m4/printf.m422
-rw-r--r--gl/m4/realloc.m417
-rw-r--r--gl/m4/setenv.m44
-rw-r--r--gl/m4/sleep.m44
-rw-r--r--gl/m4/stdlib_h.m415
-rw-r--r--gl/m4/strerror.m46
-rw-r--r--gl/m4/sys_socket_h.m428
-rw-r--r--gl/m4/threadlib.m4104
-rw-r--r--gl/m4/unistd_h.m44
-rw-r--r--gl/m4/utimes.m410
-rw-r--r--gl/m4/wcrtomb.m445
-rw-r--r--gl/po/POTFILES.in9
-rw-r--r--gl/po/af.po2
-rw-r--r--gl/po/be.po2
-rw-r--r--gl/po/bg.po2
-rw-r--r--gl/po/ca.po2
-rw-r--r--gl/po/cs.po2
-rw-r--r--gl/po/da.po2
-rw-r--r--gl/po/de.po2
-rw-r--r--gl/po/el.po2
-rw-r--r--gl/po/eo.po2
-rw-r--r--gl/po/es.po2
-rw-r--r--gl/po/et.po2
-rw-r--r--gl/po/eu.po2
-rw-r--r--gl/po/fi.po2
-rw-r--r--gl/po/fr.po2
-rw-r--r--gl/po/ga.po2
-rw-r--r--gl/po/gl.po2
-rw-r--r--gl/po/hu.po2
-rw-r--r--gl/po/it.po2
-rw-r--r--gl/po/ja.po2
-rw-r--r--gl/po/ko.po2
-rw-r--r--gl/po/man-db-gnulib.pot4
-rw-r--r--gl/po/ms.po2
-rw-r--r--gl/po/nb.po2
-rw-r--r--gl/po/nl.po2
-rw-r--r--gl/po/pl.po2
-rw-r--r--gl/po/pt.po2
-rw-r--r--gl/po/pt_BR.po2
-rw-r--r--gl/po/ro.po2
-rw-r--r--gl/po/ru.po2
-rw-r--r--gl/po/rw.po2
-rw-r--r--gl/po/sk.po2
-rw-r--r--gl/po/sl.po2
-rw-r--r--gl/po/sr.po2
-rw-r--r--gl/po/sv.po2
-rw-r--r--gl/po/tr.po2
-rw-r--r--gl/po/uk.po2
-rw-r--r--gl/po/vi.po2
-rw-r--r--gl/po/zh_CN.po2
-rw-r--r--gl/po/zh_TW.po2
-rw-r--r--include/manconfig.h.in25
-rw-r--r--init/Makefile.in16
-rw-r--r--init/systemd/Makefile.in16
-rw-r--r--lib/Makefile.am4
-rw-r--r--lib/Makefile.in45
-rw-r--r--lib/README1
-rw-r--r--lib/cleanup.c2
-rw-r--r--lib/debug.c3
-rw-r--r--lib/encodings.c13
-rw-r--r--lib/glcontainers.c4
-rw-r--r--lib/linelength.c2
-rw-r--r--lib/orderfiles.c5
-rw-r--r--lib/sandbox.c18
-rw-r--r--lib/security.c4
-rw-r--r--lib/util.c2
-rw-r--r--libdb/Makefile.am2
-rw-r--r--libdb/Makefile.in34
-rw-r--r--libdb/db_btree.c90
-rw-r--r--libdb/db_delete.c4
-rw-r--r--libdb/db_gdbm.c123
-rw-r--r--libdb/db_lookup.c38
-rw-r--r--libdb/db_ndbm.c81
-rw-r--r--libdb/db_storage.h9
-rw-r--r--libdb/db_store.c23
-rw-r--r--libdb/db_ver.c7
-rw-r--r--libdb/db_xdbm.c169
-rw-r--r--libdb/db_xdbm.h40
-rw-r--r--libdb/mydbm.h108
-rw-r--r--man/Makefile.in16
-rw-r--r--man/THANKS1
-rw-r--r--man/da/Makefile.in16
-rw-r--r--man/de/Makefile.in16
-rw-r--r--man/es/Makefile.in16
-rw-r--r--man/fr/Makefile.in16
-rw-r--r--man/id/Makefile.in16
-rw-r--r--man/it/Makefile.in16
-rw-r--r--man/ja/Makefile.in16
-rw-r--r--man/nl/Makefile.in16
-rw-r--r--man/pl/Makefile.in16
-rw-r--r--man/po4a/Makefile.in16
-rw-r--r--man/pt/Makefile.in16
-rw-r--r--man/pt_BR/Makefile.in16
-rw-r--r--man/ru/Makefile.in16
-rw-r--r--man/sr/Makefile.in16
-rw-r--r--man/sv/Makefile.in16
-rw-r--r--man/tr/Makefile.in16
-rw-r--r--man/zh_CN/Makefile.in16
-rw-r--r--manual/Makefile.in20
-rw-r--r--po/ast.po230
-rw-r--r--po/ca.po230
-rw-r--r--po/cs.po230
-rw-r--r--po/da.po230
-rw-r--r--po/de.po230
-rw-r--r--po/eo.po230
-rw-r--r--po/es.po230
-rw-r--r--po/fi.po230
-rw-r--r--po/fr.po230
-rw-r--r--po/id.po230
-rw-r--r--po/it.po230
-rw-r--r--po/ja.gmobin21551 -> 21780 bytes
-rw-r--r--po/ja.po301
-rw-r--r--po/man-db.pot232
-rw-r--r--po/nl.po230
-rw-r--r--po/pl.po230
-rw-r--r--po/pt.po230
-rw-r--r--po/pt_BR.po230
-rw-r--r--po/ro.po230
-rw-r--r--po/ru.po230
-rw-r--r--po/sr.po230
-rw-r--r--po/sv.po230
-rw-r--r--po/tr.po230
-rw-r--r--po/vi.po230
-rw-r--r--po/zh_CN.po230
-rw-r--r--po/zh_TW.po230
-rw-r--r--src/Makefile.am22
-rw-r--r--src/Makefile.in105
-rw-r--r--src/accessdb.c11
-rw-r--r--src/catman.c20
-rw-r--r--src/check_mandirs.c50
-rw-r--r--src/check_mandirs.h9
-rw-r--r--src/compression.c3
-rw-r--r--src/decompress.c (renamed from lib/decompress.c)2
-rw-r--r--src/decompress.h (renamed from lib/decompress.h)0
-rw-r--r--src/descriptions.c2
-rw-r--r--src/globbing_test.c4
-rw-r--r--src/lexgrog.c4170
-rw-r--r--src/lexgrog.l12
-rw-r--r--src/lexgrog_test.c3
-rw-r--r--src/man.c22
-rw-r--r--src/manconv.c4
-rw-r--r--src/mandb.c74
-rw-r--r--src/manp.c4
-rw-r--r--src/manpath.c2
-rw-r--r--src/straycats.c2
-rw-r--r--src/tests/Makefile.in16
-rw-r--r--src/tests/fspause.c2
-rw-r--r--src/whatis.c18
-rw-r--r--src/zsoelim.c75
-rw-r--r--src/zsoelim.l7
-rw-r--r--src/zsoelim_main.c3
-rw-r--r--tools/Makefile.in16
251 files changed, 11837 insertions, 9743 deletions
diff --git a/ChangeLog b/ChangeLog
index 789e890a..cbdcabe5 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,401 @@
+2019-08-26 Colin Watson <cjwatson@debian.org>
+
+ Release man-db 2.8.7
+
+2019-08-26 Takeshi Hamasaki <hmatrjp@users.sourceforge.jp>
+
+ Update Japanese translation
+
+ * po/ja.po: Update from Translation Project.
+ * man/THANKS: Add translator credit.
+
+2019-08-26 Colin Watson <cjwatson@debian.org>
+
+ Order results manually for NDBM as well as GDBM
+
+ Commit 3a753221a3dddaf4870a86a4dca4771ed2cd80b3 in 2003 (!) worked
+ around the fact that GDBM's firstkey/nextkey interface doesn't return
+ ordered results. However, at least when using GDBM's NDBM compatibility
+ interface, this may be true for NDBM too. Extend the manual result
+ ordering code to cover both of these backends.
+
+ * libdb/db_gdbm.c (parent_keys, datum_compare, datum_equals, datum_hash,
+ datum_free, empty_datum, man_gdbm_firstkey, man_gdbm_nextkey,
+ man_gdbm_close): Move to ...
+ * libdb/db_xdbm.c (parent_keys, datum_compare, datum_equals, datum_hash,
+ datum_free, empty_datum, man_xdbm_firstkey, man_xdbm_nextkey,
+ man_xdbm_close): ... here (new file).
+ * libdb/db_xdbm.h: New file.
+ * libdb/db_gdbm.c (unsorted_firstkey, unsorted_nextkey, raw_close): New
+ functions, wrapping gdbm_firstkey, gdbm_nextkey, and gdbm_close
+ respectively.
+ (man_gdbm_firstkey, man_gdbm_nextkey, man_gdbm_close): Add GDBM-specific
+ wrappers for the generic man_xdbm_* functions.
+ * libdb/db_ndbm.c (man_ndbm_close): Move NDBM-specific code ...
+ (raw_close): ... here.
+ (unsorted_firstkey, unsorted_nextkey): New functions, wrapping
+ dbm_firstkey and dbm_nextkey respectively.
+ (man_ndbm_close, man_ndbm_firstkey, man_ndbm_nextkey): Add NDBM-specific
+ wrappers for the generic man_xdbm_* functions.
+ * libdb/mydbm.h (man_ndbm_firstkey, man_ndbm_nextkey): Add prototypes.
+ (MYDBM_FIRSTKEY) [NDBM]: Rewrite in terms of man_ndbm_firstkey.
+ (MYDBM_NEXTKEY) [NDBM]: Rewrite in terms of man_ndbm_nextkey.
+ * libdb/Makefile.am (libmandb_la_SOURCES): Add db_xdbm.c and db_xdbm.h.
+ * NEWS: Document this.
+
+2019-08-25 Colin Watson <cjwatson@debian.org>
+
+ Enable many more GCC warnings
+
+ * bootstrap.conf (gnulib_modules): Add manywarnings.
+ * configure.ac: Add gl_MANYWARN_ALL_GCC, with some refinements to
+ disable -Wsystem-headers and -Wmissing-field-initializers. Define
+ GNULIB_NO_VLA=1 to avoid tripping over -Wvla.
+ * src/accessdb.c (help_filter): Disable -Wformat-nonliteral around this
+ function.
+ * src/man.c (help_filter): Likewise.
+ * src/check_mandirs.c (gripe_rwopen_failed, update_db_time): Factor out
+ EAGAIN || EWOULDBLOCK check to ...
+ (is_eagain): ... here, with -Wlogical-op disabled.
+ * src/lexgrog.l, src/zsoelim.l: Disable -Wsuggest-attribute=malloc,
+ -Wsuggest-attribute=pure, and -Wunused-macros.
+
+2019-08-25 Colin Watson <cjwatson@debian.org>
+
+ Pacify gcc -Wnull-dereference
+
+ * src/accessdb.c (main): Add an assertion to help the compiler prove
+ that dbf is non-NULL. (It doesn't know that error (FATAL, ...) is
+ non-returning.)
+
+2019-08-25 Colin Watson <cjwatson@debian.org>
+
+ Add several function attributes suggested by GCC
+
+ * lib/debug.c (vdebug): Mark first argument as a printf format string.
+ * lib/encodings.c (get_page_encoding): Mark as malloc-like.
+ (is_roff_device, get_output_encoding, get_less_charset,
+ get_jless_charset): Mark as pure.
+ * lib/glcontainers.c (string_equals, string_hash): Mark as pure.
+ * lib/security.c (running_setuid): Mark as pure.
+ * lib/util.c (trim_spaces): Mark as malloc-like.
+ * libdb/db_lookup.c (dash_if_unset): Mark as const.
+ * libdb/db_store.c (compare_ids): Mark as const.
+ * src/whatis.c (match): Mark as pure.
+
+2019-08-25 Colin Watson <cjwatson@debian.org>
+
+ Fix some printf formats
+
+ * libdb/db_lookup.c (list_extensions): Format the return value of
+ gl_list_size using %zu, not %zd.
+ * src/catman.c (add_arg): Format the return values of MYDBM_DSIZE and
+ strlen using %zu, not %zd.
+ (parse_for_sec): Format ARG_MAX - arg_size using %zu, not %zd.
+ * src/man.c (main): Format ruid and euid using %lu, not %d (cast to
+ unsigned long since POSIX only says that uid_t is an integer type).
+ * src/manp.c (describe_flag): Format flag using %u, not %d.
+
+2019-08-25 Colin Watson <cjwatson@debian.org>
+
+ Remove several unused macros
+
+ * libdb/db_store.c (_): Remove.
+ * src/compression.c (_): Likewise.
+ * src/globbing_test.c (_): Likewise.
+ * src/zsoelim_main.c (_): Likewise.
+
+2019-08-25 Colin Watson <cjwatson@debian.org>
+
+ Make a couple of functions static
+
+ * lib/orderfiles.c (compare_physical_offsets): Make static.
+ * src/descriptions.c (page_description_free): Likewise.
+
+2019-08-25 Colin Watson <cjwatson@debian.org>
+
+ Move declaration of _nl_msg_cat_cntr to top level
+
+ gcc -Wnested-externs warns when it encounters this declaration within a
+ function.
+
+ * include/manconfig.h.in (locale_changed): Move _nl_msg_cat_cntr
+ declaration to the top level.
+
+2019-08-25 Colin Watson <cjwatson@debian.org>
+
+ Add some missing includes
+
+ * lib/linelength.c: Include "linelength.h".
+ * lib/orderfiles.c: Include "orderfiles.h".
+
+2019-08-24 Colin Watson <cjwatson@debian.org>
+
+ Simplify some GCC attribute handling
+
+ * lib/orderfiles.c (order_files) [!HAVE_LINUX_FIEMAP_H &&
+ !HAVE_POSIX_FADVISE]: Use _GL_UNUSED rather than ATTRIBUTE_UNUSED.
+ * lib/sandbox.c (_sandbox_load) [!HAVE_LIBSECCOMP]: Likewise.
+ * lib/security.c (drop_privs): Likewise.
+ * src/accessdb.c (help_filter): Likewise.
+ * src/check_mandirs.c (chown_if_possible): Likewise.
+ * src/decompress.c (decompress_zlib): Likewise.
+ * src/lexgrog_test.c (help_filter): Likewise.
+ * src/man.c (help_filter, squeeze_blank_lines, disable_hyphenation,
+ disable_justification): Likewise.
+ * src/manconv.c (manconv): Likewise.
+ * src/manp.c (free_config_file): Likewise.
+ * src/tests/fspause.c (main): Likewise.
+ * src/whatis.c (help_filter): Likewise.
+ * src/zsoelim_main.c (parse_opt): Likewise.
+ * include/manconfig.h.in (ATTRIBUTE_UNUSED): Remove in favour of the
+ shorter _GL_UNUSED.
+ (ATTRIBUTE_MALLOC): Remove; it was unused.
+
+2019-08-24 Colin Watson <cjwatson@debian.org>
+
+ Use C11/Gnulib's _Noreturn
+
+ * lib/cleanup.c (sighandler): Declare as _Noreturn.
+ * src/man.c (gripe_converting_name): Use _Noreturn rather than
+ ATTRIBUTE_NORETURN.
+ * include/manconfig.h.in (ATTRIBUTE_NORETURN): Remove.
+
+2019-08-24 Colin Watson <cjwatson@debian.org>
+
+ Update to Gnulib 20190821
+
+2019-08-23 Colin Watson <cjwatson@debian.org>
+
+ Pass database file name in function parameters
+
+ Storing it in a global variable with an unresolved symbol from libmandb
+ was never very clean, and caused linking complications on some
+ platforms.
+
+ Fixes Savannah bug #56734.
+
+ * libdb/mydbm.h (database): Remove external symbol.
+ * src/accessdb.c: Remove obsolete comment.
+ * src/catman.c (database): Remove global variable.
+ (parse_for_sec): Add database parameter. Update all callers.
+ (main): Declare database locally.
+ * src/check_mandirs.c (gripe_rwopen_failed, testmandirs, update_db_time,
+ create_db, update_db, purge_missing): Add database parameter. Update
+ all callers.
+ * src/check_mandirs.h (create_db, update_db, purge_missing): Update
+ prototypes.
+ * src/mandb.c (database): Remove global variable.
+ (update_one_file, update_db_wrapper): Add database parameter. Update
+ all callers.
+ (mandb, process_manpath): Declare database locally.
+ * src/straycats.c (straycats): Add database parameter. Update all
+ callers.
+ * src/whatis.c (database): Remove global variable.
+ (search): Declare database locally.
+ * include/manconfig.h.in (straycats): Update prototype.
+ * NEWS: Document this.
+
+2019-08-23 Colin Watson <cjwatson@debian.org>
+
+ Use MYDBM_FILE->name for error messages
+
+ We previously used the global "database" variable, but we were either
+ also passing a MYDBM_FILE around already or could easily do so, and it's
+ cleaner to get the file name from there now that it's consistently
+ available on all backends.
+
+ * libdb/db_lookup.c (gripe_corrupt_data): Add dbf parameter. Get file
+ name from dbf->name rather than from the global database variable.
+ Update all callers.
+ (gripe_replace_key, split_data, split_content): Add dbf parameter.
+ Update all callers.
+ (dblookup_pattern): Get file name from dbf->name rather than from the
+ global database variable.
+ * libdb/db_ver.c (dbver_rd, dbver_wr): Get file name from dbfile->name
+ rather than from the global database variable.
+ * libdb/db_storage.h (split_content, gripe_corrupt_data,
+ gripe_replace_key): Update prototypes.
+ * src/check_mandirs.c (sanity_check_db): Get file name from dbf->name
+ rather than from the global database variable.
+ * src/whatis.c (do_apropos): Likewise.
+
+2019-08-23 Colin Watson <cjwatson@debian.org>
+
+ Store database file name alongside its handle
+
+ The GDBM backend already did things this way, but it's convenient to do
+ it the same way for all backends.
+
+ Rename libmandb's various backend-specific functions to be uniformly
+ man_<backend>_<operation>. In the cases of btree and ndbm there was
+ already no clash with the libraries they depend on, but this makes them
+ match the gdbm backend.
+
+ * libdb/db_btree.c (btree_close): Rename to ...
+ (man_btree_close): ... this.
+ (btree_flopen): Rename to ...
+ (man_btree_open): ... this. Wrap the returned file handle in a
+ man_btree_wrapper structure that remembers the file name.
+ (btree_replace): Rename to ...
+ (man_btree_replace): ... this.
+ (btree_insert): Rename to ...
+ (man_btree_insert): ... this.
+ (btree_fetch): Rename to ...
+ (man_btree_fetch): ... this.
+ (btree_exists): Rename to ...
+ (man_btree_exists): ... this.
+ (btree_findkey): Rename to ...
+ (man_btree_findkey): ... this.
+ (btree_firstkey): Rename to ...
+ (man_btree_firstkey): ... this.
+ (btree_nextkey): Rename to ...
+ (man_btree_nextkey): ... this.
+ (btree_nextkeydata): Rename to ...
+ (man_btree_nextkeydata): ... this.
+ (btree_get_time): Rename to ...
+ (man_btree_get_time): ... this.
+ (btree_set_time): Rename to ...
+ (man_btree_set_time): ... this.
+ Update all prototypes and callers for all renames.
+ (man_btree_close, man_btree_replace, man_btree_insert, man_btree_fetch,
+ man_btree_exists, man_btree_findkey, man_btree_firstkey,
+ man_btree_nextkey, man_btree_nextkeydata, man_btree_get_time,
+ man_btree_set_time): Take man_btree_wrapper parameter rather than DB *.
+ Update all callers.
+
+ * libdb/db_ndbm.c (ndbm_flclose): Rename to ...
+ (man_ndbm_close): ... this.
+ (ndbm_flopen): Rename to ...
+ (man_ndbm_open): ... this. Copy the given file name before passing it
+ to dbm_open, since at least GDBM's compatibility implementation declares
+ that parameter as non-const. Wrap the returned file handle in a
+ man_ndbm_wrapper structure that remembers the file name.
+ (ndbm_get_time): Rename to ...
+ (man_ndbm_get_time): ... this.
+ (ndbm_set_time): Rename to ...
+ (man_ndbm_set_time): ... this.
+ Update all prototypes and callers for all renames.
+ (man_ndbm_close, man_ndbm_get_time, man_ndbm_set_time): Take
+ man_ndbm_wrapper parameter rather than DBM *. Update all callers.
+
+ * libdb/mydbm.h (man_ndbm_wrapper): New structure.
+ (MYDBM_FILE) [NDBM]: Change to man_ndbm_wrapper.
+ (man_btree_wrapper): New structure.
+ (MYDBM_FILE) [BTREE]: Change to man_btree_wrapper.
+
+ * libdb/db_lookup.c (gripe_lock): Constify filename parameter.
+ * libdb/db_storage.h (gripe_lock): Update prototype.
+
+2019-08-23 Colin Watson <cjwatson@debian.org>
+
+ Recognise eo/ta/uk translations of the NAME section
+
+ (Esperanto, Tamil, and Ukrainian.)
+
+ * src/lexgrog.l (eo_name, ta_name, uk_name): Add.
+ * NEWS: Document this.
+
+2019-08-23 Colin Watson <cjwatson@debian.org>
+
+ Remove unused sandbox variables
+
+ We no longer need these, having moved decompression code out of libman.
+
+ * src/accessdb.c, src/catman.c, src/globbing_test.c, src/manpath.c:
+ Remove "sandbox" global variables.
+
+2019-08-22 Colin Watson <cjwatson@debian.org>
+
+ Remove unused linkage from whatis
+
+ * src/Makefile.am (whatis_SOURCES): Remove manconv.c and manconv.h.
+
+2019-08-22 Colin Watson <cjwatson@debian.org>
+
+ Move decompression code out of libman
+
+ Fixes Savannah bug #56734.
+
+ * configure.ac: Remove incorrect Darwin workaround.
+ * lib/decompress.c: Move to ...
+ * src/decompress.c: ... here.
+ * lib/decompress.h: Move to ...
+ * src/decompress.h: ... here.
+ * lib/Makefile.am (libman_la_SOURCES): Remove decompress.c and
+ decompress.h.
+ (libman_la_LIBADD): Remove $(LIBCOMPRESS).
+ * lib/README: Remove decompress.*.
+ * lib/encodings.c: Remove unused #include "decompress.h".
+ * src/Makefile.am (lexgrog_LDADD, man_LDADD, manconv_LDADD, mandb_LDADD,
+ zsoelim_LDADD): Add $(LIBCOMPRESS).
+ (lexgrog_SOURCES, man_SOURCES, manconv_SOURCES, mandb_SOURCES,
+ zsoelim_SOURCES): Add decompress.c and decompress.h.
+ * NEWS: Document this.
+
+2019-08-22 Colin Watson <cjwatson@debian.org>
+
+ Squash warning in order_files stub
+
+ * lib/orderfiles.c [!HAVE_LINUX_FIEMAP_H && !HAVE_POSIX_FADVISE]: Mark
+ dir and basenamesp arguments as unused.
+
+2019-08-22 Colin Watson <cjwatson@debian.org>
+
+ Don't save cat pages if --nh/--nj is used
+
+ Fixes Savannah bug #55731.
+
+ * src/man.c (display): Disable cat pages if --no-hyphenation or
+ --no-justification is used, in effect defining those not to be part of
+ the canonical state.
+ * NEWS: Document this.
+
+2019-08-21 Colin Watson <cjwatson@debian.org>
+
+ sandbox: Allow getrandom, used by Hardened Malloc
+
+ Fixes Savannah bug #56767.
+
+ * lib/sandbox.c (make_seccomp_filter): Allow getrandom.
+ * NEWS: Document this.
+
+2019-08-21 Colin Watson <cjwatson@debian.org>
+
+ NEWS: Document EPERM change
+
+ * NEWS: Document change from raising SIGSYS to returning EPERM.
+
+2019-08-21 Colin Watson <cjwatson@debian.org>
+
+ sandbox: Reorganise using @system-service set
+
+ systemd defines a @system-service set now which covers some of the ones
+ that were previously isolated here, so reorganise to take account of
+ that. No functional change.
+
+ * lib/sandbox.c (make_seccomp_filter): Reorganise using systemd's new
+ @system-service set.
+
+2019-08-21 Colin Watson <cjwatson@debian.org>
+
+ sandbox: Set default action to EPERM, not TRAP
+
+ Returning EPERM rather than raising SIGSYS is no less secure, and it's
+ more likely that code injected via LD_PRELOAD will be able to recover
+ from this somehow.
+
+ * lib/sandbox.c (make_seccomp_filter): Set default action to
+ SCMP_ACT_ERRNO (EPERM), not SCMP_ACT_TRAP.
+
+2019-08-14 Colin Watson <cjwatson@debian.org>
+
+ sandbox: Allow sendmsg in the ESET case
+
+ * lib/sandbox.c (make_seccomp_filter): If libesets_pac.so is preloaded,
+ then allow sendmsg.
+ * NEWS: Document this.
+
2019-08-05 Colin Watson <cjwatson@debian.org>
* Version: 2.8.6.1.
diff --git a/Makefile.in b/Makefile.in
index ccc66959..e649ba05 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -183,6 +183,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/man-arg-automatic-create.m4 \
$(top_srcdir)/gl/m4/ltversion.m4 \
$(top_srcdir)/gl/m4/lt~obsolete.m4 \
$(top_srcdir)/gl/m4/malloc.m4 $(top_srcdir)/gl/m4/malloca.m4 \
+ $(top_srcdir)/gl/m4/manywarnings.m4 \
$(top_srcdir)/gl/m4/mbrtowc.m4 $(top_srcdir)/gl/m4/mbsinit.m4 \
$(top_srcdir)/gl/m4/mbsrtowcs.m4 \
$(top_srcdir)/gl/m4/mbstate_t.m4 $(top_srcdir)/gl/m4/mbtowc.m4 \
@@ -448,6 +449,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
GNULIB_CLOSE = @GNULIB_CLOSE@
GNULIB_CLOSEDIR = @GNULIB_CLOSEDIR@
GNULIB_CONNECT = @GNULIB_CONNECT@
+GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
GNULIB_CTIME = @GNULIB_CTIME@
GNULIB_DIRFD = @GNULIB_DIRFD@
GNULIB_DPRINTF = @GNULIB_DPRINTF@
@@ -655,6 +657,7 @@ GNULIB_STRSIGNAL = @GNULIB_STRSIGNAL@
GNULIB_STRSTR = @GNULIB_STRSTR@
GNULIB_STRTOD = @GNULIB_STRTOD@
GNULIB_STRTOK_R = @GNULIB_STRTOK_R@
+GNULIB_STRTOLD = @GNULIB_STRTOLD@
GNULIB_STRTOLL = @GNULIB_STRTOLL@
GNULIB_STRTOULL = @GNULIB_STRTOULL@
GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@
@@ -729,6 +732,7 @@ GNULIB_WRITE = @GNULIB_WRITE@
GNULIB__EXIT = @GNULIB__EXIT@
GREP = @GREP@
HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
HAVE_ALPHASORT = @HAVE_ALPHASORT@
HAVE_ATOLL = @HAVE_ATOLL@
HAVE_BTOWC = @HAVE_BTOWC@
@@ -736,6 +740,7 @@ HAVE_C99_STDINT_H = @HAVE_C99_STDINT_H@
HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
HAVE_CHOWN = @HAVE_CHOWN@
HAVE_CLOSEDIR = @HAVE_CLOSEDIR@
+HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@
HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
@@ -817,6 +822,7 @@ HAVE_GLOB_H = @HAVE_GLOB_H@
HAVE_GLOB_PATTERN_P = @HAVE_GLOB_PATTERN_P@
HAVE_GRANTPT = @HAVE_GRANTPT@
HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
+HAVE_INITSTATE = @HAVE_INITSTATE@
HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
HAVE_ISWBLANK = @HAVE_ISWBLANK@
HAVE_ISWCNTRL = @HAVE_ISWCNTRL@
@@ -839,6 +845,7 @@ HAVE_MBSINIT = @HAVE_MBSINIT@
HAVE_MBSLEN = @HAVE_MBSLEN@
HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
+HAVE_MBTOWC = @HAVE_MBTOWC@
HAVE_MEMCHR = @HAVE_MEMCHR@
HAVE_MEMPCPY = @HAVE_MEMPCPY@
HAVE_MKDIRAT = @HAVE_MKDIRAT@
@@ -889,6 +896,7 @@ HAVE_SCANDIR = @HAVE_SCANDIR@
HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
HAVE_SETENV = @HAVE_SETENV@
HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
+HAVE_SETSTATE = @HAVE_SETSTATE@
HAVE_SIGACTION = @HAVE_SIGACTION@
HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
@@ -908,6 +916,7 @@ HAVE_STRPBRK = @HAVE_STRPBRK@
HAVE_STRPTIME = @HAVE_STRPTIME@
HAVE_STRSEP = @HAVE_STRSEP@
HAVE_STRTOD = @HAVE_STRTOD@
+HAVE_STRTOLD = @HAVE_STRTOLD@
HAVE_STRTOLL = @HAVE_STRTOLL@
HAVE_STRTOULL = @HAVE_STRTOULL@
HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@
@@ -1008,8 +1017,6 @@ LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBMULTITHREAD = @LIBMULTITHREAD@
LIBOBJS = @LIBOBJS@
-LIBPTH = @LIBPTH@
-LIBPTH_PREFIX = @LIBPTH_PREFIX@
LIBS = @LIBS@
LIBSOCKET = @LIBSOCKET@
LIBTHREAD = @LIBTHREAD@
@@ -1032,7 +1039,6 @@ LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBMULTITHREAD = @LTLIBMULTITHREAD@
LTLIBOBJS = @LTLIBOBJS@
-LTLIBPTH = @LTLIBPTH@
LTLIBTHREAD = @LTLIBTHREAD@
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
MAINT = @MAINT@
@@ -1178,6 +1184,7 @@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
REPLACE_GLOB = @REPLACE_GLOB@
REPLACE_GLOB_PATTERN_P = @REPLACE_GLOB_PATTERN_P@
REPLACE_GMTIME = @REPLACE_GMTIME@
+REPLACE_INITSTATE = @REPLACE_INITSTATE@
REPLACE_IOCTL = @REPLACE_IOCTL@
REPLACE_ISATTY = @REPLACE_ISATTY@
REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
@@ -1226,6 +1233,7 @@ REPLACE_PUTENV = @REPLACE_PUTENV@
REPLACE_PWRITE = @REPLACE_PWRITE@
REPLACE_QSORT_R = @REPLACE_QSORT_R@
REPLACE_RAISE = @REPLACE_RAISE@
+REPLACE_RANDOM = @REPLACE_RANDOM@
REPLACE_RANDOM_R = @REPLACE_RANDOM_R@
REPLACE_READ = @REPLACE_READ@
REPLACE_READLINK = @REPLACE_READLINK@
@@ -1239,6 +1247,7 @@ REPLACE_RMDIR = @REPLACE_RMDIR@
REPLACE_SELECT = @REPLACE_SELECT@
REPLACE_SETENV = @REPLACE_SETENV@
REPLACE_SETLOCALE = @REPLACE_SETLOCALE@
+REPLACE_SETSTATE = @REPLACE_SETSTATE@
REPLACE_SLEEP = @REPLACE_SLEEP@
REPLACE_SNPRINTF = @REPLACE_SNPRINTF@
REPLACE_SPRINTF = @REPLACE_SPRINTF@
@@ -1259,6 +1268,7 @@ REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@
REPLACE_STRSTR = @REPLACE_STRSTR@
REPLACE_STRTOD = @REPLACE_STRTOD@
REPLACE_STRTOK_R = @REPLACE_STRTOK_R@
+REPLACE_STRTOLD = @REPLACE_STRTOLD@
REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@
REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@
REPLACE_SYMLINK = @REPLACE_SYMLINK@
diff --git a/NEWS b/NEWS
index f560b506..7829c845 100644
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,41 @@
+man-db 2.8.7 (26 August 2019)
+=============================
+
+Major changes since man-db 2.8.6.1:
+
+ Fixes:
+ ------
+
+ * Further workarounds for ESET File Security: allow sendmsg when it
+ is in use.
+
+ * The seccomp sandbox now causes disallowed system calls to return
+ EPERM rather than raising SIGSYS, in the hope of being less
+ disruptive to preload hacks.
+
+ * Make seccomp sandbox allow getrandom, used by Hardened Malloc.
+
+ * man no longer saves cat pages if --no-hyphenation or
+ --no-justification is used.
+
+ * Move decompression code out of libman. This should really fix a
+ link failure using the Darwin linker (unsuccessfully attempted in
+ 2.8.6), and possibly on other platforms too.
+
+ * Pass the database file name around in function parameters, rather
+ than storing it in a global variable with an unresolved symbol
+ from libmandb. Like the previous item, this fixes a link failure
+ using the Darwin linker, and possibly on other platforms too.
+
+ * Return database entries in sorted order when using NDBM. (This is
+ based on a similar fix to the GDBM backend in man-db 2.4.2.)
+
+ Improvements:
+ -------------
+
+ * Recognise Esperanto, Tamil, and Ukrainian translations of the NAME
+ section.
+
man-db 2.8.6.1 (5 August 2019)
==============================
diff --git a/aclocal.m4 b/aclocal.m4
index 770f20b4..5ed58b17 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -1626,6 +1626,7 @@ m4_include([gl/m4/ltversion.m4])
m4_include([gl/m4/lt~obsolete.m4])
m4_include([gl/m4/malloc.m4])
m4_include([gl/m4/malloca.m4])
+m4_include([gl/m4/manywarnings.m4])
m4_include([gl/m4/mbrtowc.m4])
m4_include([gl/m4/mbsinit.m4])
m4_include([gl/m4/mbsrtowcs.m4])
diff --git a/bootstrap.conf b/bootstrap.conf
index daa5171d..ffdec4c3 100644
--- a/bootstrap.conf
+++ b/bootstrap.conf
@@ -16,7 +16,7 @@
# along with this program. If not, see <https://www.gnu.org/licenses/>.
-GNULIB_REVISION=34881aff4043847f2640d90cf9aa325cc3ad08d6
+GNULIB_REVISION=28eadbdc4c53974c04fb415dc751a2682eaa8b1a
# gnulib modules used by this package.
gnulib_modules="
@@ -48,6 +48,7 @@ gnulib_modules="
linkedhash-list
localcharset
lock
+ manywarnings
memmem
minmax
mkdtemp
diff --git a/build-aux/config.guess b/build-aux/config.guess
index a81aa505..97ad0733 100755
--- a/build-aux/config.guess
+++ b/build-aux/config.guess
@@ -2,7 +2,7 @@
# Attempt to guess a canonical system name.
# Copyright 1992-2019 Free Software Foundation, Inc.
-timestamp='2019-01-15'
+timestamp='2019-07-24'
# 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
@@ -262,6 +262,9 @@ case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
*:SolidBSD:*:*)
echo "$UNAME_MACHINE"-unknown-solidbsd"$UNAME_RELEASE"
exit ;;
+ *:OS108:*:*)
+ echo "$UNAME_MACHINE"-unknown-os108_"$UNAME_RELEASE"
+ exit ;;
macppc:MirBSD:*:*)
echo powerpc-unknown-mirbsd"$UNAME_RELEASE"
exit ;;
@@ -275,8 +278,8 @@ case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
echo "$UNAME_MACHINE"-unknown-redox
exit ;;
mips:OSF1:*.*)
- echo mips-dec-osf1
- exit ;;
+ echo mips-dec-osf1
+ exit ;;
alpha:OSF1:*:*)
case $UNAME_RELEASE in
*4.0)
@@ -985,22 +988,50 @@ EOF
exit ;;
mips:Linux:*:* | mips64:Linux:*:*)
set_cc_for_build
+ IS_GLIBC=0
+ test x"${LIBC}" = xgnu && IS_GLIBC=1
sed 's/^ //' << EOF > "$dummy.c"
#undef CPU
- #undef ${UNAME_MACHINE}
- #undef ${UNAME_MACHINE}el
+ #undef mips
+ #undef mipsel
+ #undef mips64
+ #undef mips64el
+ #if ${IS_GLIBC} && defined(_ABI64)
+ LIBCABI=gnuabi64
+ #else
+ #if ${IS_GLIBC} && defined(_ABIN32)
+ LIBCABI=gnuabin32
+ #else
+ LIBCABI=${LIBC}
+ #endif
+ #endif
+
+ #if ${IS_GLIBC} && defined(__mips64) && defined(__mips_isa_rev) && __mips_isa_rev>=6
+ CPU=mipsisa64r6
+ #else
+ #if ${IS_GLIBC} && !defined(__mips64) && defined(__mips_isa_rev) && __mips_isa_rev>=6
+ CPU=mipsisa32r6
+ #else
+ #if defined(__mips64)
+ CPU=mips64
+ #else
+ CPU=mips
+ #endif
+ #endif
+ #endif
+
#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
- CPU=${UNAME_MACHINE}el
+ MIPS_ENDIAN=el
#else
#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
- CPU=${UNAME_MACHINE}
+ MIPS_ENDIAN=
#else
- CPU=
+ MIPS_ENDIAN=
#endif
#endif
EOF
- eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^CPU'`"
- test "x$CPU" != x && { echo "$CPU-unknown-linux-$LIBC"; exit; }
+ eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^CPU\|^MIPS_ENDIAN\|^LIBCABI'`"
+ test "x$CPU" != x && { echo "$CPU${MIPS_ENDIAN}-unknown-linux-$LIBCABI"; exit; }
;;
mips64el:Linux:*:*)
echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
@@ -1113,7 +1144,7 @@ EOF
*Pentium) UNAME_MACHINE=i586 ;;
*Pent*|*Celeron) UNAME_MACHINE=i686 ;;
esac
- echo "$UNAME_MACHINE-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}{$UNAME_VERSION}"
+ echo "$UNAME_MACHINE-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}"
exit ;;
i*86:*:3.2:*)
if test -f /usr/options/cb.name; then
@@ -1297,38 +1328,39 @@ EOF
echo "$UNAME_MACHINE"-apple-rhapsody"$UNAME_RELEASE"
exit ;;
*:Darwin:*:*)
- UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
- set_cc_for_build
- if test "$UNAME_PROCESSOR" = unknown ; then
- UNAME_PROCESSOR=powerpc
+ UNAME_PROCESSOR=`uname -p`
+ case $UNAME_PROCESSOR in
+ unknown) UNAME_PROCESSOR=powerpc ;;
+ esac
+ if command -v xcode-select > /dev/null 2> /dev/null && \
+ ! xcode-select --print-path > /dev/null 2> /dev/null ; then
+ # Avoid executing cc if there is no toolchain installed as
+ # cc will be a stub that puts up a graphical alert
+ # prompting the user to install developer tools.
+ CC_FOR_BUILD=no_compiler_found
+ else
+ set_cc_for_build
fi
- if test "`echo "$UNAME_RELEASE" | sed -e 's/\..*//'`" -le 10 ; then
- if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
- if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
- (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
- grep IS_64BIT_ARCH >/dev/null
- then
- case $UNAME_PROCESSOR in
- i386) UNAME_PROCESSOR=x86_64 ;;
- powerpc) UNAME_PROCESSOR=powerpc64 ;;
- esac
- fi
- # On 10.4-10.6 one might compile for PowerPC via gcc -arch ppc
- if (echo '#ifdef __POWERPC__'; echo IS_PPC; echo '#endif') | \
- (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
- grep IS_PPC >/dev/null
- then
- UNAME_PROCESSOR=powerpc
- fi
+ if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
+ if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
+ (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
+ grep IS_64BIT_ARCH >/dev/null
+ then
+ case $UNAME_PROCESSOR in
+ i386) UNAME_PROCESSOR=x86_64 ;;
+ powerpc) UNAME_PROCESSOR=powerpc64 ;;
+ esac
+ fi
+ # On 10.4-10.6 one might compile for PowerPC via gcc -arch ppc
+ if (echo '#ifdef __POWERPC__'; echo IS_PPC; echo '#endif') | \
+ (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
+ grep IS_PPC >/dev/null
+ then
+ UNAME_PROCESSOR=powerpc
fi
elif test "$UNAME_PROCESSOR" = i386 ; then
- # Avoid executing cc on OS X 10.9, as it ships with a stub
- # that puts up a graphical alert prompting to install
- # developer tools. Any system running Mac OS X 10.7 or
- # later (Darwin 11 and later) is required to have a 64-bit
- # processor. This is not true of the ARM version of Darwin
- # that Apple uses in portable devices.
- UNAME_PROCESSOR=x86_64
+ # uname -m returns i386 or x86_64
+ UNAME_PROCESSOR=$UNAME_MACHINE
fi
echo "$UNAME_PROCESSOR"-apple-darwin"$UNAME_RELEASE"
exit ;;
@@ -1433,6 +1465,143 @@ EOF
exit ;;
esac
+# No uname command or uname output not recognized.
+set_cc_for_build
+cat > "$dummy.c" <<EOF
+#ifdef _SEQUENT_
+#include <sys/types.h>
+#include <sys/utsname.h>
+#endif
+#if defined(ultrix) || defined(_ultrix) || defined(__ultrix) || defined(__ultrix__)
+#if defined (vax) || defined (__vax) || defined (__vax__) || defined(mips) || defined(__mips) || defined(__mips__) || defined(MIPS) || defined(__MIPS__)
+#include <signal.h>
+#if defined(_SIZE_T_) || defined(SIGLOST)
+#include <sys/utsname.h>
+#endif
+#endif
+#endif
+main ()
+{
+#if defined (sony)
+#if defined (MIPSEB)
+ /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed,
+ I don't know.... */
+ printf ("mips-sony-bsd\n"); exit (0);
+#else
+#include <sys/param.h>
+ printf ("m68k-sony-newsos%s\n",
+#ifdef NEWSOS4
+ "4"
+#else
+ ""
+#endif
+ ); exit (0);
+#endif
+#endif
+
+#if defined (NeXT)
+#if !defined (__ARCHITECTURE__)
+#define __ARCHITECTURE__ "m68k"
+#endif
+ int version;
+ version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
+ if (version < 4)
+ printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
+ else
+ printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
+ exit (0);
+#endif
+
+#if defined (MULTIMAX) || defined (n16)
+#if defined (UMAXV)
+ printf ("ns32k-encore-sysv\n"); exit (0);
+#else
+#if defined (CMU)
+ printf ("ns32k-encore-mach\n"); exit (0);
+#else
+ printf ("ns32k-encore-bsd\n"); exit (0);
+#endif
+#endif
+#endif
+
+#if defined (__386BSD__)
+ printf ("i386-pc-bsd\n"); exit (0);
+#endif
+
+#if defined (sequent)
+#if defined (i386)
+ printf ("i386-sequent-dynix\n"); exit (0);
+#endif
+#if defined (ns32000)
+ printf ("ns32k-sequent-dynix\n"); exit (0);
+#endif
+#endif
+
+#if defined (_SEQUENT_)
+ struct utsname un;
+
+ uname(&un);
+ if (strncmp(un.version, "V2", 2) == 0) {
+ printf ("i386-sequent-ptx2\n"); exit (0);
+ }
+ if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
+ printf ("i386-sequent-ptx1\n"); exit (0);
+ }
+ printf ("i386-sequent-ptx\n"); exit (0);
+#endif
+
+#if defined (vax)
+#if !defined (ultrix)
+#include <sys/param.h>
+#if defined (BSD)
+#if BSD == 43
+ printf ("vax-dec-bsd4.3\n"); exit (0);
+#else
+#if BSD == 199006
+ printf ("vax-dec-bsd4.3reno\n"); exit (0);
+#else
+ printf ("vax-dec-bsd\n"); exit (0);
+#endif
+#endif
+#else
+ printf ("vax-dec-bsd\n"); exit (0);
+#endif
+#else
+#if defined(_SIZE_T_) || defined(SIGLOST)
+ struct utsname un;
+ uname (&un);
+ printf ("vax-dec-ultrix%s\n", un.release); exit (0);
+#else
+ printf ("vax-dec-ultrix\n"); exit (0);
+#endif
+#endif
+#endif
+#if defined(ultrix) || defined(_ultrix) || defined(__ultrix) || defined(__ultrix__)
+#if defined(mips) || defined(__mips) || defined(__mips__) || defined(MIPS) || defined(__MIPS__)
+#if defined(_SIZE_T_) || defined(SIGLOST)
+ struct utsname *un;
+ uname (&un);
+ printf ("mips-dec-ultrix%s\n", un.release); exit (0);
+#else
+ printf ("mips-dec-ultrix\n"); exit (0);
+#endif
+#endif
+#endif
+
+#if defined (alliant) && defined (i860)
+ printf ("i860-alliant-bsd\n"); exit (0);
+#endif
+
+ exit (1);
+}
+EOF
+
+$CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null && SYSTEM_NAME=`$dummy` &&
+ { echo "$SYSTEM_NAME"; exit; }
+
+# Apollos put the system type in the environment.
+test -d /usr/apollo && { echo "$ISP-apollo-$SYSTYPE"; exit; }
+
echo "$0: unable to guess system type" >&2
case "$UNAME_MACHINE:$UNAME_SYSTEM" in
diff --git a/build-aux/config.sub b/build-aux/config.sub
index 3b4c7624..a318a468 100755
--- a/build-aux/config.sub
+++ b/build-aux/config.sub
@@ -2,7 +2,7 @@
# Configuration validation subroutine script.
# Copyright 1992-2019 Free Software Foundation, Inc.
-timestamp='2019-01-05'
+timestamp='2019-06-30'
# 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
@@ -337,17 +337,14 @@ case $1 in
basic_machine=m88k-harris
os=sysv3
;;
- hp300)
+ hp300 | hp300hpux)
basic_machine=m68k-hp
+ os=hpux
;;
hp300bsd)
basic_machine=m68k-hp
os=bsd
;;
- hp300hpux)
- basic_machine=m68k-hp
- os=hpux
- ;;
hppaosf)
basic_machine=hppa1.1-hp
os=osf
@@ -360,10 +357,6 @@ case $1 in
basic_machine=i386-mach
os=mach
;;
- vsta)
- basic_machine=i386-pc
- os=vsta
- ;;
isi68 | isi)
basic_machine=m68k-isi
os=sysv
@@ -612,6 +605,10 @@ case $1 in
basic_machine=vax-dec
os=vms
;;
+ vsta)
+ basic_machine=i386-pc
+ os=vsta
+ ;;
vxworks960)
basic_machine=i960-wrs
os=vxworks
@@ -822,7 +819,9 @@ case $basic_machine in
cpu=m68k
vendor=next
case $os in
- nextstep* )
+ openstep*)
+ ;;
+ nextstep*)
;;
ns2*)
os=nextstep2
@@ -1170,7 +1169,7 @@ case $cpu-$vendor in
| asmjs \
| ba \
| be32 | be64 \
- | bfin | bs2000 \
+ | bfin | bpf | bs2000 \
| c[123]* | c30 | [cjt]90 | c4x \
| c8051 | clipper | craynv | csky | cydra \
| d10v | d30v | dlx | dsp16xx \
@@ -1245,7 +1244,8 @@ case $cpu-$vendor in
| v70 | v850 | v850e | v850e1 | v850es | v850e2 | v850e2v3 \
| vax \
| visium \
- | w65 | wasm32 \
+ | w65 \
+ | wasm32 | wasm64 \
| we32k \
| x86 | x86_64 | xc16x | xgate | xps100 \
| xstormy16 | xtensa* \
@@ -1347,7 +1347,7 @@ case $os in
| nindy* | vxsim* | vxworks* | ebmon* | hms* | mvs* \
| clix* | riscos* | uniplus* | iris* | isc* | rtu* | xenix* \
| knetbsd* | mirbsd* | netbsd* \
- | bitrig* | openbsd* | solidbsd* | libertybsd* \
+ | bitrig* | openbsd* | solidbsd* | libertybsd* | os108* \
| ekkobsd* | kfreebsd* | freebsd* | riscix* | lynxos* \
| bosx* | nextstep* | cxux* | aout* | elf* | oabi* \
| ptx* | coff* | ecoff* | winnt* | domain* | vsta* \
@@ -1365,7 +1365,8 @@ case $os in
| powermax* | dnix* | nx6 | nx7 | sei* | dragonfly* \
| skyos* | haiku* | rdos* | toppers* | drops* | es* \
| onefs* | tirtos* | phoenix* | fuchsia* | redox* | bme* \
- | midnightbsd* | amdhsa* | unleashed* | emscripten*)
+ | midnightbsd* | amdhsa* | unleashed* | emscripten* | wasi* \
+ | nsk* | powerunix)
# Remember, each alternative MUST END IN *, to match a version number.
;;
qnx*)
@@ -1449,9 +1450,6 @@ case $os in
ns2)
os=nextstep2
;;
- nsk*)
- os=nsk
- ;;
# Preserve the version number of sinix5.
sinix5.*)
os=`echo $os | sed -e 's|sinix|sysv|'`
diff --git a/build-aux/gitlog-to-changelog b/build-aux/gitlog-to-changelog
index deddef24..163c48c8 100755
--- a/build-aux/gitlog-to-changelog
+++ b/build-aux/gitlog-to-changelog
@@ -1,31 +1,46 @@
-eval '(exit $?0)' && eval 'exec perl -wS "$0" "$@"'
- & eval 'exec perl -wS "$0" $argv:q'
- if 0;
-# Convert git log output to ChangeLog format.
+#!/bin/sh
+#! -*-perl-*-
-my $VERSION = '2018-03-07 03:47'; # 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.
+# Convert git log output to ChangeLog format.
# Copyright (C) 2008-2019 Free Software Foundation, Inc.
-
+#
# This program is free software: you can redistribute it and/or modify
# 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 <https://www.gnu.org/licenses/>.
-
+#
# Written by Jim Meyering
+# This is a prologue that allows to run a perl script as an executable
+# on systems that are compliant to a POSIX version before POSIX:2017.
+# On such systems, the usual invocation of an executable through execlp()
+# or execvp() fails with ENOEXEC if it is a script that does not start
+# with a #! line. The script interpreter mentioned in the #! line has
+# to be /bin/sh, because on GuixSD systems that is the only program that
+# has a fixed file name. The second line is essential for perl and is
+# also useful for editing this file in Emacs. The next two lines below
+# are valid code in both sh and perl. When executed by sh, they re-execute
+# the script through the perl program found in $PATH. The '-x' option
+# is essential as well; without it, perl would re-execute the script
+# through /bin/sh. When executed by perl, the next two lines are a no-op.
+eval 'exec perl -wSx "$0" "$@"'
+ if 0;
+
+my $VERSION = '2018-03-07 03:47'; # 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.
+
use strict;
use warnings;
use Getopt::Long;
@@ -174,7 +189,7 @@ sub parse_amend_file($)
if (!$in_code)
{
- $line =~ /^([0-9a-fA-F]{40})$/
+ $line =~ /^([[:xdigit:]]{40})$/
or (warn "$ME: $f:$.: invalid line; expected an SHA1\n"),
$fail = 1, next;
$sha = lc $1;
@@ -288,7 +303,7 @@ sub git_dir_option($)
my ($sha, $rest) = split ':', $log, 2;
defined $sha
or die "$ME:$.: malformed log entry\n";
- $sha =~ /^[0-9a-fA-F]{40}$/
+ $sha =~ /^[[:xdigit:]]{40}$/
or die "$ME:$.: invalid SHA1: $sha\n";
my $skipflag = 0;
@@ -376,7 +391,7 @@ sub git_dir_option($)
@skipshas = ();
next;
}
- if ($found && $_ =~ /^([0-9a-fA-F]{7,}) [^ ]/)
+ if ($found && $_ =~ /^([[:xdigit:]]{7,}) [^ ]/)
{
push ( @skipshas, $1 );
}
@@ -492,6 +507,7 @@ sub git_dir_option($)
# mode: perl
# indent-tabs-mode: nil
# eval: (add-hook 'before-save-hook 'time-stamp)
+# time-stamp-line-limit: 50
# time-stamp-start: "my $VERSION = '"
# time-stamp-format: "%:y-%02m-%02d %02H:%02M"
# time-stamp-time-zone: "UTC0"
diff --git a/build-aux/gnupload b/build-aux/gnupload
index edff9bea..afbafa92 100755
--- a/build-aux/gnupload
+++ b/build-aux/gnupload
@@ -116,12 +116,22 @@ Examples:
--symlink-regex \\
foobar-1.0.tar.gz foobar-1.0.tar.xz
-4. Upload foobar-0.9.90.tar.gz to two sites:
+4. Create a symbolic link foobar-latest.tar.gz -> foobar-1.0.tar.gz
+ and likewise for the corresponding .sig file:
+ gnupload --to ftp.gnu.org:foobar \\
+ --symlink foobar-1.0.tar.gz foobar-latest.tar.gz \\
+ foobar-1.0.tar.gz.sig foobar-latest.tar.gz.sig
+ or (equivalent):
+ gnupload --to ftp.gnu.org:foobar \\
+ --symlink foobar-1.0.tar.gz foobar-latest.tar.gz \\
+ --symlink foobar-1.0.tar.gz.sig foobar-latest.tar.gz.sig
+
+5. Upload foobar-0.9.90.tar.gz to two sites:
gnupload --to alpha.gnu.org:foobar \\
--to sources.redhat.com:~ftp/pub/foobar \\
foobar-0.9.90.tar.gz
-5. Delete oopsbar-0.9.91.tar.gz and upload foobar-0.9.91.tar.gz
+6. Delete oopsbar-0.9.91.tar.gz and upload foobar-0.9.91.tar.gz
(the -- terminates the list of files to delete):
gnupload --to alpha.gnu.org:foobar \\
--to sources.redhat.com:~ftp/pub/foobar \\
diff --git a/build-aux/ltmain.sh b/build-aux/ltmain.sh
index 68fd36cb..f402c9c1 100644
--- a/build-aux/ltmain.sh
+++ b/build-aux/ltmain.sh
@@ -31,7 +31,7 @@
PROGRAM=libtool
PACKAGE=libtool
-VERSION="2.4.6 Debian-2.4.6-6"
+VERSION="2.4.6 Debian-2.4.6-10"
package_revision=2.4.6
@@ -64,7 +64,7 @@ package_revision=2.4.6
# libraries, which are installed to $pkgauxdir.
# Set a version string for this script.
-scriptversion=2015-10-04.22; # UTC
+scriptversion=2015-01-20.17; # UTC
# General shell script boiler plate, and helper functions.
# Written by Gary V. Vaughan, 2004
@@ -1091,57 +1091,6 @@ func_relative_path ()
}
-# func_quote ARG
-# --------------
-# Aesthetically quote one ARG, store the result into $func_quote_result. Note
-# that we keep attention to performance here (so far O(N) complexity as long as
-# func_append is O(1)).
-func_quote ()
-{
- $debug_cmd
-
- func_quote_result=$1
-
- case $func_quote_result in
- *[\\\`\"\$]*)
- case $func_quote_result in
- *[\[\*\?]*)
- func_quote_result=`$ECHO "$func_quote_result" | $SED "$sed_quote_subst"`
- return 0
- ;;
- esac
-
- func_quote_old_IFS=$IFS
- for _G_char in '\' '`' '"' '$'
- do
- # STATE($1) PREV($2) SEPARATOR($3)
- set start "" ""
- func_quote_result=dummy"$_G_char$func_quote_result$_G_char"dummy
- IFS=$_G_char
- for _G_part in $func_quote_result
- do
- case $1 in
- quote)
- func_append func_quote_result "$3$2"
- set quote "$_G_part" "\\$_G_char"
- ;;
- start)
- set first "" ""
- func_quote_result=
- ;;
- first)
- set quote "$_G_part" ""
- ;;
- esac
- done
- IFS=$func_quote_old_IFS
- done
- ;;
- *) ;;
- esac
-}
-
-
# func_quote_for_eval ARG...
# --------------------------
# Aesthetically quote ARGs to be evaled later.
@@ -1158,8 +1107,12 @@ func_quote_for_eval ()
func_quote_for_eval_unquoted_result=
func_quote_for_eval_result=
while test 0 -lt $#; do
- func_quote "$1"
- _G_unquoted_arg=$func_quote_result
+ case $1 in
+ *[\\\`\"\$]*)
+ _G_unquoted_arg=`printf '%s\n' "$1" |$SED "$sed_quote_subst"` ;;
+ *)
+ _G_unquoted_arg=$1 ;;
+ esac
if test -n "$func_quote_for_eval_unquoted_result"; then
func_append func_quote_for_eval_unquoted_result " $_G_unquoted_arg"
else
@@ -2188,7 +2141,7 @@ include the following information:
compiler: $LTCC
compiler flags: $LTCFLAGS
linker: $LD (gnu? $with_gnu_ld)
- version: $progname $scriptversion Debian-2.4.6-6
+ version: $progname $scriptversion Debian-2.4.6-10
automake: `($AUTOMAKE --version) 2>/dev/null |$SED 1q`
autoconf: `($AUTOCONF --version) 2>/dev/null |$SED 1q`
@@ -5397,8 +5350,7 @@ else
if test \"\$libtool_execute_magic\" != \"$magic\"; then
file=\"\$0\""
- func_quote "$ECHO"
- qECHO=$func_quote_result
+ qECHO=`$ECHO "$ECHO" | $SED "$sed_quote_subst"`
$ECHO "\
# A function that is used when there is no print builtin or printf.
@@ -7415,10 +7367,11 @@ func_mode_link ()
# -specs=* GCC specs files
# -stdlib=* select c++ std lib with clang
# -fsanitize=* Clang/GCC memory and address sanitizer
+ # -fuse-ld=* Linker select flags for GCC
-64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \
-t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \
-O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*| \
- -specs=*|-fsanitize=*)
+ -specs=*|-fsanitize=*|-fuse-ld=*)
func_quote_for_eval "$arg"
arg=$func_quote_for_eval_result
func_append compile_command " $arg"
@@ -10655,8 +10608,8 @@ EOF
relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command"
fi
done
- func_quote "(cd `pwd`; $relink_command)"
- relink_command=$func_quote_result
+ relink_command="(cd `pwd`; $relink_command)"
+ relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"`
fi
# Only actually do things if not in dry run mode.
@@ -10902,8 +10855,7 @@ EOF
done
# Quote the link command for shipping.
relink_command="(cd `pwd`; $SHELL \"$progpath\" $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)"
- func_quote "$relink_command"
- relink_command=$func_quote_result
+ relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"`
if test yes = "$hardcode_automatic"; then
relink_command=
fi
diff --git a/build-aux/texinfo.tex b/build-aux/texinfo.tex
index 48d532bc..d2e895f3 100644
--- a/build-aux/texinfo.tex
+++ b/build-aux/texinfo.tex
@@ -1,12 +1,11 @@
% texinfo.tex -- TeX macros to handle Texinfo files.
-%
+%
% Load plain if necessary, i.e., if running under initex.
\expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi
%
-\def\texinfoversion{2019-01-03-15}
-
+\def\texinfoversion{2019-08-18.20}
%
-% Copyright 1985, 1986, 1988, 1990-2018 Free Software Foundation, Inc.
+% Copyright 1985, 1986, 1988, 1990-2019 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
@@ -219,7 +218,7 @@
% @errormsg{MSG}. Do the index-like expansions on MSG, but if things
% aren't perfect, it's not the end of the world, being an error message,
% after all.
-%
+%
\def\errormsg{\begingroup \indexnofonts \doerrormsg}
\def\doerrormsg#1{\errmessage{#1}}
@@ -258,8 +257,8 @@
% \domark is called twice inside \chapmacro, to add one
% mark before the section break, and one after.
-% In the second call \prevchapterdefs is the same as \lastchapterdefs,
-% and \prevsectiondefs is the same as \lastsectiondefs.
+% In the second call \prevchapterdefs is the same as \currentchapterdefs,
+% and \prevsectiondefs is the same as \currentsectiondefs.
% Then if the page is not broken at the mark, some of the previous
% section appears on the page, and we can get the name of this section
% from \firstmark for @everyheadingmarks top.
@@ -267,11 +266,11 @@
%
% See page 260 of The TeXbook.
\def\domark{%
- \toks0=\expandafter{\lastchapterdefs}%
- \toks2=\expandafter{\lastsectiondefs}%
+ \toks0=\expandafter{\currentchapterdefs}%
+ \toks2=\expandafter{\currentsectiondefs}%
\toks4=\expandafter{\prevchapterdefs}%
\toks6=\expandafter{\prevsectiondefs}%
- \toks8=\expandafter{\lastcolordefs}%
+ \toks8=\expandafter{\currentcolordefs}%
\mark{%
\the\toks0 \the\toks2 % 0: marks for @everyheadingmarks top
\noexpand\or \the\toks4 \the\toks6 % 1: for @everyheadingmarks bottom
@@ -288,19 +287,19 @@
% @setcolor (or @url, or @link, etc.) between @contents and the very
% first @chapter.
\def\gettopheadingmarks{%
- \ifcase0\topmark\fi
+ \ifcase0\the\savedtopmark\fi
\ifx\thischapter\empty \ifcase0\firstmark\fi \fi
}
\def\getbottomheadingmarks{\ifcase1\botmark\fi}
-\def\getcolormarks{\ifcase2\topmark\fi}
+\def\getcolormarks{\ifcase2\the\savedtopmark\fi}
% Avoid "undefined control sequence" errors.
-\def\lastchapterdefs{}
-\def\lastsectiondefs{}
-\def\lastsection{}
+\def\currentchapterdefs{}
+\def\currentsectiondefs{}
+\def\currentsection{}
\def\prevchapterdefs{}
\def\prevsectiondefs{}
-\def\lastcolordefs{}
+\def\currentcolordefs{}
% Margin to add to right of even pages, to left of odd pages.
\newdimen\bindingoffset
@@ -310,11 +309,35 @@
% Main output routine.
%
\chardef\PAGE = 255
-\output = {\onepageout{\pagecontents\PAGE}}
+\newtoks\defaultoutput
+\defaultoutput = {\savetopmark\onepageout{\pagecontents\PAGE}}
+\output=\expandafter{\the\defaultoutput}
\newbox\headlinebox
\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.)
+%
+\newtoks\savedtopmark
+\newif\iftopmarksaved
+\topmarksavedtrue
+\def\savetopmark{%
+ \iftopmarksaved\else
+ \global\savedtopmark=\expandafter{\topmark}%
+ \global\topmarksavedtrue
+ \fi
+}
+
% \onepageout takes a vbox as an argument.
% \shipout a vbox for a single page, adding an optional header, footer
% and footnote. This also causes index entries for this page to be written
@@ -326,34 +349,35 @@
\ifodd\pageno \advance\hoffset by \bindingoffset
\else \advance\hoffset by -\bindingoffset\fi
%
- % 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).
- \def\commmonheadfootline{\let\hsize=\txipagewidth \texinfochars}
- %
% 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.
%
% This is used to check if we are on the first page of a chapter.
- \ifcase1\topmark\fi
+ \ifcase1\the\savedtopmark\fi
\let\prevchaptername\thischaptername
\ifcase0\firstmark\fi
\let\curchaptername\thischaptername
%
\ifodd\pageno \getoddheadingmarks \else \getevenheadingmarks \fi
- \ifodd\pageno \getoddfootingmarks \else \getevenfootingmarks \fi
%
\ifx\curchaptername\prevchaptername
\let\thischapterheading\thischapter
\else
% \thischapterheading is the same as \thischapter except it is blank
- % for the first page of a chapter. This is to prevent the chapter name
+ % for the first page of a chapter. This is to prevent the chapter name
% being shown twice.
\def\thischapterheading{}%
\fi
%
+ % 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).
+ \def\commmonheadfootline{\let\hsize=\txipagewidth \texinfochars}
+ %
\global\setbox\headlinebox = \vbox{\commmonheadfootline \makeheadline}%
+ %
+ \ifodd\pageno \getoddfootingmarks \else \getevenfootingmarks \fi
\global\setbox\footlinebox = \vbox{\commmonheadfootline \makefootline}%
%
{%
@@ -362,14 +386,8 @@
% take effect in \write's, yet the group defined by the \vbox ends
% before the \shipout runs.
%
- \indexdummies % don't expand commands in the output.
- \normalturnoffactive % \ in index entries must not stay \, e.g., if
- % the page break happens to be in the middle of an example.
- % We don't want .vr (or whatever) entries like this:
- % \entry{{\indexbackslash }acronym}{32}{\code {\acronym}}
- % "\acronym" won't work when it's read back in;
- % it needs to be
- % {\code {{\backslashcurfont }acronym}
+ \atdummies % don't expand commands in the output.
+ \turnoffactive
\shipout\vbox{%
% Do this early so pdf references go to the beginning of the page.
\ifpdfmakepagedest \pdfdest name{\the\pageno} xyz\fi
@@ -384,8 +402,9 @@
\unvbox\footlinebox
\fi
%
- }% end of \shipout\vbox
- }% end of group with \indexdummies
+ }%
+ }%
+ \global\topmarksavedfalse
\advancepageno
\ifnum\outputpenalty>-20000 \else\dosupereject\fi
}
@@ -429,11 +448,10 @@
}%
}
-% First remove any @comment, then any @c comment. Also remove a @texinfoc
-% comment (see \scanmacro for details). Pass the result on to \argcheckspaces.
+% First remove any @comment, then any @c comment. Pass the result on to
+% \argcheckspaces.
\def\argremovecomment#1\comment#2\ArgTerm{\argremovec #1\c\ArgTerm}
-\def\argremovec#1\c#2\ArgTerm{\argremovetexinfoc #1\texinfoc\ArgTerm}
-\def\argremovetexinfoc#1\texinfoc#2\ArgTerm{\argcheckspaces#1\^^M\ArgTerm}
+\def\argremovec#1\c#2\ArgTerm{\argcheckspaces#1\^^M\ArgTerm}
% Each occurrence of `\^^M' or `<space>\^^M' is replaced by a single space.
%
@@ -1105,11 +1123,21 @@ where each line of input produces a line of output.}
\fi
\fi
+\newif\ifpdforxetex
+\pdforxetexfalse
+\ifpdf
+ \pdforxetextrue
+\fi
+\ifx\XeTeXrevision\thisisundefined\else
+ \pdforxetextrue
+\fi
+
+
% PDF uses PostScript string constants for the names of xref targets,
% for display in the outlines, and in other places. Thus, we have to
% double any backslashes. Otherwise, a name like "\node" will be
% interpreted as a newline (\n), followed by o, d, e. Not good.
-%
+%
% See http://www.ntg.nl/pipermail/ntg-pdftex/2004-July/000654.html and
% related messages. The final outcome is that it is up to the TeX user
% to double the backslashes and otherwise make the string valid, so
@@ -1161,7 +1189,7 @@ output) for that.)}
% Set color, and create a mark which defines \thiscolor accordingly,
% so that \makeheadline knows which color to restore.
\def\setcolor#1{%
- \xdef\lastcolordefs{\gdef\noexpand\thiscolor{#1}}%
+ \xdef\currentcolordefs{\gdef\noexpand\thiscolor{#1}}%
\domark
\pdfsetcolor{#1}%
}
@@ -1169,7 +1197,7 @@ output) for that.)}
\def\maincolor{\rgbBlack}
\pdfsetcolor{\maincolor}
\edef\thiscolor{\maincolor}
- \def\lastcolordefs{}
+ \def\currentcolordefs{}
%
\def\makefootline{%
\baselineskip24pt
@@ -1414,7 +1442,7 @@ output) for that.)}
% their "best" equivalent, based on the @documentencoding. Too
% much work for too little return. Just use the ASCII equivalents
% we use for the index sort strings.
- %
+ %
\indexnofonts
\setupdatafile
% We can have normal brace characters in the PDF outlines, unlike
@@ -1547,7 +1575,7 @@ output) for that.)}
% Set color, and create a mark which defines \thiscolor accordingly,
% so that \makeheadline knows which color to restore.
\def\setcolor#1{%
- \xdef\lastcolordefs{\gdef\noexpand\thiscolor{#1}}%
+ \xdef\currentcolordefs{\gdef\noexpand\thiscolor{#1}}%
\domark
\pdfsetcolor{#1}%
}
@@ -1555,7 +1583,7 @@ output) for that.)}
\def\maincolor{\rgbBlack}
\pdfsetcolor{\maincolor}
\edef\thiscolor{\maincolor}
- \def\lastcolordefs{}
+ \def\currentcolordefs{}
%
\def\makefootline{%
\baselineskip24pt
@@ -2147,7 +2175,7 @@ end
% A few fonts for @defun names and args.
\setfont\defbf\bfshape{10}{\magstep1}{OT1}
\setfont\deftt\ttshape{10}{\magstep1}{OT1TT}
-\setfont\defsl\slshape{10}{\magstep1}{OT1TT}
+\setfont\defsl\slshape{10}{\magstep1}{OT1}
\setfont\defttsl\ttslshape{10}{\magstep1}{OT1TT}
\def\df{\let\ttfont=\deftt \let\bffont = \defbf
\let\ttslfont=\defttsl \let\slfont=\defsl \bf}
@@ -2295,7 +2323,7 @@ end
% A few fonts for @defun names and args.
\setfont\defbf\bfshape{10}{\magstephalf}{OT1}
\setfont\deftt\ttshape{10}{\magstephalf}{OT1TT}
-\setfont\defsl\slshape{10}{\magstephalf}{OT1TT}
+\setfont\defsl\slshape{10}{\magstephalf}{OT1}
\setfont\defttsl\ttslshape{10}{\magstephalf}{OT1TT}
\def\df{\let\ttfont=\deftt \let\bffont = \defbf
\let\slfont=\defsl \let\ttslfont=\defttsl \bf}
@@ -2698,7 +2726,7 @@ end
}
% Commands to set the quote options.
-%
+%
\parseargdef\codequoteundirected{%
\def\temp{#1}%
\ifx\temp\onword
@@ -2739,7 +2767,7 @@ end
% If we are in a monospaced environment, however, 1) always use \ttsl,
% and 2) do not add an italic correction.
\def\dosmartslant#1#2{%
- \ifusingtt
+ \ifusingtt
{{\ttsl #2}\let\next=\relax}%
{\def\next{{#1#2}\futurelet\next\smartitaliccorrection}}%
\next
@@ -2818,7 +2846,7 @@ end
% @t, explicit typewriter.
\def\t#1{%
- {\tt \rawbackslash \plainfrenchspacing #1}%
+ {\tt \plainfrenchspacing #1}%
\null
}
@@ -2845,7 +2873,6 @@ end
% Turn off hyphenation.
\nohyphenation
%
- \rawbackslash
\plainfrenchspacing
#1%
}%
@@ -2887,14 +2914,14 @@ end
\gdef\codedash{\futurelet\next\codedashfinish}
\gdef\codedashfinish{%
\normaldash % always output the dash character itself.
- %
+ %
% Now, output a discretionary to allow a line break, unless
% (a) the next character is a -, or
% (b) the preceding character is a -.
% 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\codedashprev\codedash
\else \discretionary{}{}{}\fi
\fi
% we need the space after the = for the case when \next itself is a
@@ -2976,7 +3003,7 @@ end
% For pdfTeX and LuaTeX
\ifurefurlonlylink
% PDF plus option to not display url, show just arg
- \unhbox0
+ \unhbox0
\else
% PDF, normally display both arg and url for consistency,
% visibility, if the pdf is eventually used to print, etc.
@@ -2989,7 +3016,7 @@ end
% For XeTeX
\ifurefurlonlylink
% PDF plus option to not display url, show just arg
- \unhbox0
+ \unhbox0
\else
% PDF, normally display both arg and url for consistency,
% visibility, if the pdf is eventually used to print, etc.
@@ -3032,41 +3059,33 @@ end
\global\def/{\normalslash}
}
-% we put a little stretch before and after the breakable chars, to help
-% line breaking of long url's. The unequal skips make look better in
-% cmtt at least, especially for dots.
-\def\urefprestretchamount{.13em}
-\def\urefpoststretchamount{.1em}
-\def\urefprestretch{\urefprebreak \hskip0pt plus\urefprestretchamount\relax}
-\def\urefpoststretch{\urefpostbreak \hskip0pt plus\urefprestretchamount\relax}
-%
-\def\urefcodeamp{\urefprestretch \&\urefpoststretch}
-\def\urefcodedot{\urefprestretch .\urefpoststretch}
-\def\urefcodehash{\urefprestretch \#\urefpoststretch}
-\def\urefcodequest{\urefprestretch ?\urefpoststretch}
+\def\urefcodeamp{\urefprebreak \&\urefpostbreak}
+\def\urefcodedot{\urefprebreak .\urefpostbreak}
+\def\urefcodehash{\urefprebreak \#\urefpostbreak}
+\def\urefcodequest{\urefprebreak ?\urefpostbreak}
\def\urefcodeslash{\futurelet\next\urefcodeslashfinish}
{
\catcode`\/=\active
\global\def\urefcodeslashfinish{%
- \urefprestretch \slashChar
+ \urefprebreak \slashChar
% Allow line break only after the final / in a sequence of
% slashes, to avoid line break between the slashes in http://.
- \ifx\next/\else \urefpoststretch \fi
+ \ifx\next/\else \urefpostbreak \fi
}
}
-% One more complication: by default we'll break after the special
-% characters, but some people like to break before the special chars, so
-% allow that. Also allow no breaking at all, for manual control.
-%
+% By default we'll break after the special characters, but some people like to
+% break before the special chars, so allow that. Also allow no breaking at
+% all, for manual control.
+%
\parseargdef\urefbreakstyle{%
\def\txiarg{#1}%
\ifx\txiarg\wordnone
\def\urefprebreak{\nobreak}\def\urefpostbreak{\nobreak}
\else\ifx\txiarg\wordbefore
- \def\urefprebreak{\allowbreak}\def\urefpostbreak{\nobreak}
+ \def\urefprebreak{\urefallowbreak}\def\urefpostbreak{\nobreak}
\else\ifx\txiarg\wordafter
- \def\urefprebreak{\nobreak}\def\urefpostbreak{\allowbreak}
+ \def\urefprebreak{\nobreak}\def\urefpostbreak{\urefallowbreak}
\else
\errhelp = \EMsimple
\errmessage{Unknown @urefbreakstyle setting `\txiarg'}%
@@ -3076,6 +3095,14 @@ end
\def\wordbefore{before}
\def\wordnone{none}
+% Allow a ragged right output to aid breaking long URL's. Putting stretch in
+% between characters of the URL doesn't look good.
+\def\urefallowbreak{%
+ \hskip 0pt plus 4 em\relax
+ \allowbreak
+ \hskip 0pt plus -4 em\relax
+}
+
\urefbreakstyle after
% @url synonym for @uref, since that's how everyone uses it.
@@ -3086,7 +3113,7 @@ end
% So now @email is just like @uref, unless we are pdf.
%
%\def\email#1{\angleleft{\tt #1}\angleright}
-\ifpdf
+\ifpdforxetex
\def\email#1{\doemail#1,,\finish}
\def\doemail#1,#2,#3\finish{\begingroup
\unsepspaces
@@ -3096,18 +3123,7 @@ end
\endlink
\endgroup}
\else
- \ifx\XeTeXrevision\thisisundefined
- \let\email=\uref
- \else
- \def\email#1{\doemail#1,,\finish}
- \def\doemail#1,#2,#3\finish{\begingroup
- \unsepspaces
- \pdfurl{mailto:#1}%
- \setbox0 = \hbox{\ignorespaces #2}%
- \ifdim\wd0>0pt\unhbox0\else\code{#1}\fi
- \endlink
- \endgroup}
- \fi
+ \let\email=\uref
\fi
% @kbdinputstyle -- arg is `distinct' (@kbd uses slanted tty font always),
@@ -3283,7 +3299,7 @@ end
% @inlinefmt{FMTNAME,PROCESSED-TEXT} and @inlineraw{FMTNAME,RAW-TEXT}.
% Ignore unless FMTNAME == tex; then it is like @iftex and @tex,
% except specified as a normal braced arg, so no newlines to worry about.
-%
+%
\def\outfmtnametex{tex}
%
\long\def\inlinefmt#1{\doinlinefmt #1,\finish}
@@ -3291,7 +3307,7 @@ end
\def\inlinefmtname{#1}%
\ifx\inlinefmtname\outfmtnametex \ignorespaces #2\fi
}
-%
+%
% @inlinefmtifelse{FMTNAME,THEN-TEXT,ELSE-TEXT} expands THEN-TEXT if
% FMTNAME is tex, else ELSE-TEXT.
\long\def\inlinefmtifelse#1{\doinlinefmtifelse #1,,,\finish}
@@ -3307,7 +3323,7 @@ end
% *right* brace they would have to use a command anyway, so they may as
% well use a command to get a left brace too. We could re-use the
% delimiter character idea from \verb, but it seems like overkill.
-%
+%
\long\def\inlineraw{\tex \doinlineraw}
\long\def\doinlineraw#1{\doinlinerawtwo #1,\finish}
\def\doinlinerawtwo#1,#2,\finish{%
@@ -3584,7 +3600,7 @@ end
% for non-CM glyphs. That is ec* for regular text and tc* for the text
% companion symbols (LaTeX TS1 encoding). Both are part of the ec
% package and follow the same conventions.
-%
+%
\def\ecfont{\etcfont{e}}
\def\tcfont{\etcfont{t}}
%
@@ -3656,7 +3672,7 @@ end
after the title page.}}%
\def\setshortcontentsaftertitlepage{%
\errmessage{@setshortcontentsaftertitlepage has been removed as a Texinfo
- command; move your @shortcontents and @contents commands if you
+ command; move your @shortcontents and @contents commands if you
want the contents after the title page.}}%
\parseargdef\shorttitlepage{%
@@ -3711,7 +3727,7 @@ end
% don't worry much about spacing, ragged right. This should be used
% inside a \vbox, and fonts need to be set appropriately first. \par should
% be specified before the end of the \vbox, since a vbox is a group.
-%
+%
\def\raggedtitlesettings{%
\rm
\hyphenpenalty=10000
@@ -4334,7 +4350,7 @@ end
}
% multitable-only commands.
-%
+%
% @headitem starts a heading row, which we typeset in bold. Assignments
% have to be global since we are inside the implicit group of an
% alignment entry. \everycr below resets \everytab so we don't have to
@@ -4641,19 +4657,6 @@ end
}
}
-% We have this subroutine so that we can handle at least some @value's
-% properly in indexes (we call \makevalueexpandable in \indexdummies).
-% The command has to be fully expandable (if the variable is set), since
-% the result winds up in the index file. This means that if the
-% variable's value contains other Texinfo commands, it's almost certain
-% it will fail (although perhaps we could fix that with sufficient work
-% to do a one-level expansion on the result, instead of complete).
-%
-% Unfortunately, this has the consequence that when _ is in the *value*
-% of an @set, it does not print properly in the roman fonts (get the cmr
-% dot accent at position 126 instead). No fix comes to mind, and it's
-% been this way since 2003 or earlier, so just ignore it.
-%
\def\expandablevalue#1{%
\expandafter\ifx\csname SET#1\endcsname\relax
{[No value for ``#1'']}%
@@ -4666,13 +4669,13 @@ end
% Like \expandablevalue, but completely expandable (the \message in the
% definition above operates at the execution level of TeX). Used when
% writing to auxiliary files, due to the expansion that \write does.
-% If flag is undefined, pass through an unexpanded @value command: maybe it
+% If flag is undefined, pass through an unexpanded @value command: maybe it
% will be set by the time it is read back in.
%
% NB flag names containing - or _ may not work here.
\def\dummyvalue#1{%
\expandafter\ifx\csname SET#1\endcsname\relax
- \noexpand\value{#1}%
+ \string\value{#1}%
\else
\csname SET#1\endcsname
\fi
@@ -4682,7 +4685,7 @@ end
% if possible, otherwise sort late.
\def\indexnofontsvalue#1{%
\expandafter\ifx\csname SET#1\endcsname\relax
- ZZZZZZZ
+ ZZZZZZZ%
\else
\csname SET#1\endcsname
\fi
@@ -4690,7 +4693,7 @@ end
% @ifset VAR ... @end ifset reads the `...' iff VAR has been defined
% with @set.
-%
+%
% To get the special treatment we need for `@end ifset,' we call
% \makecond and then redefine.
%
@@ -4723,7 +4726,7 @@ end
% without the @) is in fact defined. We can only feasibly check at the
% TeX level, so something like `mathcode' is going to considered
% defined even though it is not a Texinfo command.
-%
+%
\makecond{ifcommanddefined}
\def\ifcommanddefined{\parsearg{\doifcmddefined{\let\next=\ifcmddefinedfail}}}
%
@@ -4831,24 +4834,9 @@ end
\def\docodeindex#1{\edef\indexname{#1}\parsearg\docodeindexxxx}
\def\docodeindexxxx #1{\doind{\indexname}{\code{#1}}}
-
-% Used when writing an index entry out to an index file to prevent
-% expansion of Texinfo commands that can appear in an index entry.
-%
-\def\indexdummies{%
- \escapechar = `\\ % use backslash in output files.
- \definedummyletter\@%
- \definedummyletter\ %
- %
- % For texindex which always views { and } as separators.
- \def\{{\lbracechar{}}%
- \def\}{\rbracechar{}}%
- %
- % Do the redefinitions.
- \definedummies
-}
-% Used for the aux and toc files, where @ is the escape character.
+% Used for the aux, toc and index files to prevent expansion of Texinfo
+% commands.
%
\def\atdummies{%
\definedummyletter\@%
@@ -4878,8 +4866,7 @@ end
\def\definedummyletter#1{\def#1{\string#1}}%
\let\definedummyaccent\definedummyletter
-% Called from \indexdummies and \atdummies, to effectively prevent
-% the expansion of commands.
+% Called from \atdummies to prevent the expansion of commands.
%
\def\definedummies{%
%
@@ -4928,6 +4915,7 @@ end
% Assorted special characters.
\definedummyword\atchar
\definedummyword\arrow
+ \definedummyword\backslashchar
\definedummyword\bullet
\definedummyword\comma
\definedummyword\copyright
@@ -4964,6 +4952,8 @@ end
\definedummyword\sup
\definedummyword\textdegree
%
+ \definedummyword\subentry
+ %
% We want to disable all macros so that they are not expanded by \write.
\macrolist
\let\value\dummyvalue
@@ -5044,11 +5034,10 @@ end
\commondummyword\xref
}
-% This does nothing, but for a time it was recommended to use
-% \usebracesinindexestrue to be able to use braces in index entries.
-
\let\indexlbrace\relax
\let\indexrbrace\relax
+\let\indexatchar\relax
+\let\indexbackslash\relax
{\catcode`\@=0
\catcode`\\=13
@@ -5082,10 +5071,8 @@ end
}
\gdef\indexnonalnumreappear{%
- \useindexbackslash
\let-\normaldash
\let<\normalless
- \def\@{@}%
}
}
@@ -5193,39 +5180,19 @@ end
}
\def\defglyph#1#2{\def#1##1{#2}} % see above
-
-\let\SETmarginindex=\relax % put index entries in margin (undocumented)?
-% Most index entries go through here, but \dosubind is the general case.
% #1 is the index name, #2 is the entry text.
-\def\doind#1#2{\dosubind{#1}{#2}{}}
-
-% There is also \dosubind {index}{topic}{subtopic}
-% which makes an entry in a two-level index such as the operation index.
-% TODO: Two-level index? Operation index?
-
-% Workhorse for all indexes.
-% #1 is name of index, #2 is stuff to put there, #3 is subentry --
-% empty if called from \doind, as we usually are (the main exception
-% is with most defuns, which call us directly).
-%
-\def\dosubind#1#2#3{%
+\def\doind#1#2{%
\iflinks
{%
- \requireopenindexfile{#1}%
- % Store the main index entry text (including the third arg).
- \toks0 = {#2}%
- % If third arg is present, precede it with a space.
- \def\thirdarg{#3}%
- \ifx\thirdarg\empty \else
- \toks0 = \expandafter{\the\toks0 \space #3}%
- \fi
%
+ \requireopenindexfile{#1}%
\edef\writeto{\csname#1indfile\endcsname}%
%
- \safewhatsit\dosubindwrite
+ \def\indextext{#2}%
+ \safewhatsit\doindwrite
}%
\fi
}
@@ -5240,28 +5207,14 @@ end
\ifx\suffix\indexisfl\def\suffix{f1}\fi
% Open the file
\immediate\openout\csname#1indfile\endcsname \jobname.\suffix
- % Using \immediate above here prevents an object entering into the current
+ % Using \immediate above here prevents an object entering into the current
% box, which could confound checks such as those in \safewhatsit for
% preceding skips.
\typeout{Writing index file \jobname.\suffix}%
\fi}
\def\indexisfl{fl}
-% Output \ as {\indexbackslash}, because \ is an escape character in
-% the index files.
-\let\indexbackslash=\relax
-{\catcode`\@=0 \catcode`\\=\active
- @gdef@useindexbackslash{@def\{{@indexbackslash}}}
-}
-
-% Definition for writing index entry text.
-\def\sortas#1{\ignorespaces}%
-
-% Definition for writing index entry sort key. Should occur at the at
-% the beginning of the index entry, like
-% @cindex @sortas{september} \september
-% The \ignorespaces takes care of following space, but there's no way
-% to remove space before it.
+% Definition for writing index entry sort key.
{
\catcode`\-=13
\gdef\indexwritesortas{%
@@ -5272,51 +5225,150 @@ end
\xdef\indexsortkey{#1}\endgroup}
}
+\def\indexwriteseealso#1{
+ \gdef\pagenumbertext{\string\seealso{#1}}%
+}
+\def\indexwriteseeentry#1{
+ \gdef\pagenumbertext{\string\seeentry{#1}}%
+}
+
+% The default definitions
+\def\sortas#1{}%
+\def\seealso#1{\i{\putwordSeeAlso}\ #1}% for sorted index file only
+\def\putwordSeeAlso{See also}
+\def\seeentry#1{\i{\putwordSee}\ #1}% for sorted index file only
+
-% Write the entry in \toks0 to the index file.
+% Given index entry text like "aaa @subentry bbb @sortas{ZZZ}":
+% * Set \bracedtext to "{aaa}{bbb}"
+% * Set \fullindexsortkey to "aaa @subentry ZZZ"
+% * If @seealso occurs, set \pagenumbertext
%
-\def\dosubindwrite{%
- % Put the index entry in the margin if desired.
- \ifx\SETmarginindex\relax\else
- \insert\margin{\hbox{\vrule height8pt depth3pt width0pt \the\toks0}}%
+\def\splitindexentry#1{%
+ \gdef\fullindexsortkey{}%
+ \xdef\bracedtext{}%
+ \def\sep{}%
+ \def\seealso##1{}%
+ \def\seeentry##1{}%
+ \expandafter\doindexsegment#1\subentry\finish\subentry
+}
+
+% append the results from the next segment
+\def\doindexsegment#1\subentry{%
+ \def\segment{#1}%
+ \ifx\segment\isfinish
+ \else
+ %
+ % Fully expand the segment, throwing away any @sortas directives, and
+ % trim spaces.
+ \edef\trimmed{\segment}%
+ \edef\trimmed{\expandafter\eatspaces\expandafter{\trimmed}}%
+ %
+ \xdef\bracedtext{\bracedtext{\trimmed}}%
+ %
+ % Get the string to sort by. Process the segment with all
+ % font commands turned off.
+ \bgroup
+ \let\sortas\indexwritesortas
+ \let\seealso\indexwriteseealso
+ \let\seeentry\indexwriteseeentry
+ \indexnofonts
+ % The braces around the commands are recognized by texindex.
+ \def\lbracechar{{\string\indexlbrace}}%
+ \def\rbracechar{{\string\indexrbrace}}%
+ \let\{=\lbracechar
+ \let\}=\rbracechar
+ \def\@{{\string\indexatchar}}%
+ \def\atchar##1{\@}%
+ \def\backslashchar{{\string\indexbackslash}}%
+ \uccode`\~=`\\ \uppercase{\let~\backslashchar}%
+ %
+ \let\indexsortkey\empty
+ \global\let\pagenumbertext\empty
+ % Execute the segment and throw away the typeset output. This executes
+ % any @sortas or @seealso commands in this segment.
+ \setbox\dummybox = \hbox{\segment}%
+ \ifx\indexsortkey\empty{%
+ \indexnonalnumdisappear
+ \xdef\trimmed{\segment}%
+ \xdef\trimmed{\expandafter\eatspaces\expandafter{\trimmed}}%
+ \xdef\indexsortkey{\trimmed}%
+ \ifx\indexsortkey\empty\xdef\indexsortkey{ }\fi
+ }\fi
+ %
+ % Append to \fullindexsortkey.
+ \edef\tmp{\gdef\noexpand\fullindexsortkey{%
+ \fullindexsortkey\sep\indexsortkey}}%
+ \tmp
+ \egroup
+ \def\sep{\subentry}%
+ %
+ \expandafter\doindexsegment
\fi
+}
+\def\isfinish{\finish}%
+\newbox\dummybox % used above
+
+\let\subentry\relax
+
+% Use \ instead of @ in index files. To support old texi2dvi and texindex.
+% This works without changing the escape character used in the toc or aux
+% files because the index entries are fully expanded here, and \string uses
+% the current value of \escapechar.
+\def\escapeisbackslash{\escapechar=`\\}
+
+% Use \ in index files by default. texi2dvi didn't support @ as the escape
+% character (as it checked for "\entry" in the files, and not "@entry"). When
+% the new version of texi2dvi has had a chance to become more prevalent, then
+% the escape character can change back to @ again. This should be an easy
+% change to make now because both @ and \ are only used as escape characters in
+% index files, never standing for themselves.
+%
+\set txiindexescapeisbackslash
+
+% Write the entry in \indextext to the index file.
+%
+\def\doindwrite{%
+ \maybemarginindex
%
- % Remember, we are within a group.
- \indexdummies % Must do this here, since \bf, etc expand at this stage
- \useindexbackslash % \indexbackslash isn't defined now so it will be output
- % as is; and it will print as backslash.
- % The braces around \indexbrace are recognized by texindex.
- %
- % Get the string to sort by, by processing the index entry with all
- % font commands turned off.
- {\indexnofonts
- \def\lbracechar{{\indexlbrace}}%
- \def\rbracechar{{\indexrbrace}}%
- \let\{=\lbracechar
- \let\}=\rbracechar
- \indexnonalnumdisappear
- \xdef\indexsortkey{}%
- \let\sortas=\indexwritesortas
- \edef\temp{\the\toks0}%
- \setbox\dummybox = \hbox{\temp}% Make sure to execute any \sortas
- \ifx\indexsortkey\empty
- \xdef\indexsortkey{\temp}%
- \ifx\indexsortkey\empty\xdef\indexsortkey{ }\fi
- \fi
- }%
+ \atdummies
+ %
+ \expandafter\ifx\csname SETtxiindexescapeisbackslash\endcsname\relax\else
+ \escapeisbackslash
+ \fi
+ %
+ % For texindex which always views { and } as separators.
+ \def\{{\lbracechar{}}%
+ \def\}{\rbracechar{}}%
+ \uccode`\~=`\\ \uppercase{\def~{\backslashchar{}}}%
+ %
+ % Split the entry into primary entry and any subentries, and get the index
+ % sort key.
+ \splitindexentry\indextext
%
% Set up the complete index entry, with both the sort key and
% the original text, including any font commands. We write
% three arguments to \entry to the .?? file (four in the
% subentry case), texindex reduces to two when writing the .??s
% sorted result.
+ %
\edef\temp{%
\write\writeto{%
- \string\entry{\indexsortkey}{\noexpand\folio}{\the\toks0}}%
+ \string\entry{\fullindexsortkey}%
+ {\ifx\pagenumbertext\empty\noexpand\folio\else\pagenumbertext\fi}%
+ \bracedtext}%
}%
\temp
}
-\newbox\dummybox % used above
+
+% Put the index entry in the margin if desired (undocumented).
+\def\maybemarginindex{%
+ \ifx\SETmarginindex\relax\else
+ \insert\margin{\hbox{\vrule height8pt depth3pt width0pt \relax\indextext}}%
+ \fi
+}
+\let\SETmarginindex=\relax
+
% Take care of unwanted page breaks/skips around a whatsit:
%
@@ -5404,9 +5456,14 @@ end
% \entry {topic}{pagelist}
% for a topic that is used without subtopics
% \primary {topic}
+% \entry {topic}{}
% for the beginning of a topic that is used with subtopics
% \secondary {subtopic}{pagelist}
% for each subtopic.
+% \secondary {subtopic}{}
+% for a subtopic with sub-subtopics
+% \tertiary {subtopic}{subsubtopic}{pagelist}
+% for each sub-subtopic.
% Define the user-accessible indexing commands
% @findex, @vindex, @kindex, @cindex.
@@ -5418,11 +5475,6 @@ end
\def\tindex {\tpindex}
\def\pindex {\pgindex}
-\def\cindexsub {\begingroup\obeylines\cindexsub}
-{\obeylines %
-\gdef\cindexsub "#1" #2^^M{\endgroup %
-\dosubind{cp}{#2}{#1}}}
-
% Define the macros used in formatting output of the sorted index material.
% @printindex causes a particular index (the ??s file) to get printed.
@@ -5436,14 +5488,10 @@ end
\plainfrenchspacing
\everypar = {}% don't want the \kern\-parindent from indentation suppression.
%
- % See if the index file exists and is nonempty.
- % Change catcode of @ here so that if the index file contains
- % \initial {@}
- % as its first line, TeX doesn't complain about mismatched braces
- % (because it thinks @} is a control sequence).
- \catcode`\@ = 12
% See comment in \requireopenindexfile.
\def\indexname{#1}\ifx\indexname\indexisfl\def\indexname{f1}\fi
+ %
+ % See if the index file exists and is nonempty.
\openin 1 \jobname.\indexname s
\ifeof 1
% \enddoublecolumns gets confused if there is no text in the index,
@@ -5453,8 +5501,6 @@ end
\putwordIndexNonexistent
\typeout{No file \jobname.\indexname s.}%
\else
- \catcode`\\ = 0
- %
% If the index file exists but is empty, then \openin leaves \ifeof
% false. We have to make TeX try to read something from the file, so
% it can discover if there is anything in it.
@@ -5462,47 +5508,51 @@ end
\ifeof 1
\putwordIndexIsEmpty
\else
- % Index files are almost Texinfo source, but we use \ as the escape
- % character. It would be better to use @, but that's too big a change
- % to make right now.
- \def\indexbackslash{\ttbackslash}%
- \let\indexlbrace\{ % Likewise, set these sequences for braces
- \let\indexrbrace\} % used in the sort key.
- \begindoublecolumns
- \let\dotheinsertentrybox\dotheinsertentryboxwithpenalty
- %
- % Read input from the index file line by line.
- \loopdo
- \ifeof1 \else
- \read 1 to \nextline
- \fi
- %
- \indexinputprocessing
- \thisline
- %
- \ifeof1\else
- \let\thisline\nextline
- \repeat
- %%
- \enddoublecolumns
+ \expandafter\printindexzz\thisline\relax\relax\finish%
\fi
\fi
\closein 1
\endgroup}
-\def\loopdo#1\repeat{\def\body{#1}\loopdoxxx}
-\def\loopdoxxx{\let\next=\relax\body\let\next=\loopdoxxx\fi\next}
-\def\indexinputprocessing{%
- \ifeof1
- \let\firsttoken\relax
+% If the index file starts with a backslash, forgo reading the index
+% file altogether. If somebody upgrades texinfo.tex they may still have
+% 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
+ \uccode`\~=`\\ \uppercase{\if\noexpand~}\noexpand#1
+ \expandafter\ifx\csname SETtxiskipindexfileswithbackslash\endcsname\relax
+\errmessage{%
+ERROR: A sorted index file in an obsolete format was skipped.
+To fix this problem, please upgrade your version of 'texi2dvi'
+or 'texi2pdf' to that at <https://ftp.gnu.org/gnu/texinfo>.
+If you are using an old version of 'texindex' (part of the Texinfo
+distribution), you may also need to upgrade to a newer version (at least 6.0).
+You may be able to typeset the index if you run
+'texindex \jobname.\indexname' yourself.
+You could also try setting the 'txiindexescapeisbackslash' flag by
+running a command like
+'texi2dvi -t "@set txiindexescapeisbackslash" \jobname.texi'. If you do
+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
- \edef\act{\gdef\noexpand\firsttoken{\getfirsttoken\nextline}}%
- \act
+ \begindoublecolumns
+ \catcode`\\=0\relax
+ \catcode`\@=12\relax
+ \input \jobname.\indexname s
+ \enddoublecolumns
\fi
}
-\def\getfirsttoken#1{\expandafter\getfirsttokenx#1\endfirsttoken}
-\long\def\getfirsttokenx#1#2\endfirsttoken{\noexpand#1}
-
% These macros are used by the sorted index file itself.
% Change them to control the appearance of the index.
@@ -5511,12 +5561,19 @@ end
\catcode`\|=13 \catcode`\<=13 \catcode`\>=13 \catcode`\+=13 \catcode`\"=13
\catcode`\$=3
\gdef\initialglyphs{%
+ % special control sequences used in the index sort key
+ \let\indexlbrace\{%
+ \let\indexrbrace\}%
+ \let\indexatchar\@%
+ \def\indexbackslash{\math{\backslash}}%
+ %
% Some changes for non-alphabetic characters. Using the glyphs from the
% math fonts looks more consistent than the typewriter font used elsewhere
% for these characters.
- \def\indexbackslash{\math{\backslash}}%
- \let\\=\indexbackslash
+ \uccode`\~=`\\ \uppercase{\def~{\math{\backslash}}}
%
+ % In case @\ is used for backslash
+ \uppercase{\let\\=~}
% Can't get bold backslash so don't use bold forward slash
\catcode`\/=13
\def/{{\secrmnotbold \normalslash}}%
@@ -5546,7 +5603,7 @@ end
% bottom of a column to reduce an increase in inter-line spacing.
\nobreak
\vskip 0pt plus 5\baselineskip
- \penalty -300
+ \penalty -300
\vskip 0pt plus -5\baselineskip
%
% Typeset the initial. Making this add up to a whole number of
@@ -5576,12 +5633,6 @@ end
\def\entry{%
\begingroup
%
- % For pdfTeX and XeTeX.
- % The redefinition of \domark stops marks being added in \pdflink to
- % preserve coloured links across page boundaries. Otherwise the marks
- % would get in the way of \lastbox in \insertentrybox.
- \let\domark\relax
- %
% Start a new paragraph if necessary, so our assignments below can't
% affect previous text.
\par
@@ -5614,35 +5665,31 @@ end
\gdef\finishentry#1{%
\egroup % end box A
\dimen@ = \wd\boxA % Length of text of entry
- \global\setbox\boxA=\hbox\bgroup\unhbox\boxA
- % #1 is the page number.
- %
- % Get the width of the page numbers, and only use
- % leaders if they are present.
- \global\setbox\boxB = \hbox{#1}%
- \ifdim\wd\boxB = 0pt
- \null\nobreak\hfill\ %
- \else
- %
- \null\nobreak\indexdotfill % Have leaders before the page number.
+ \global\setbox\boxA=\hbox\bgroup
+ \unhbox\boxA
+ % #1 is the page number.
%
- \ifpdf
- \pdfgettoks#1.%
- \hskip\skip\thinshrinkable\the\toksA
+ % Get the width of the page numbers, and only use
+ % leaders if they are present.
+ \global\setbox\boxB = \hbox{#1}%
+ \ifdim\wd\boxB = 0pt
+ \null\nobreak\hfill\ %
\else
- \ifx\XeTeXrevision\thisisundefined
- \hskip\skip\thinshrinkable #1%
- \else
+ %
+ \null\nobreak\indexdotfill % Have leaders before the page number.
+ %
+ \ifpdforxetex
\pdfgettoks#1.%
\hskip\skip\thinshrinkable\the\toksA
+ \else
+ \hskip\skip\thinshrinkable #1%
\fi
\fi
- \fi
\egroup % end \boxA
\ifdim\wd\boxB = 0pt
- \global\setbox\entrybox=\vbox{\unhbox\boxA}%
- \else
- \global\setbox\entrybox=\vbox\bgroup
+ \noindent\unhbox\boxA\par
+ \nobreak
+ \else\bgroup
% We want the text of the entries to be aligned to the left, and the
% page numbers to be aligned to the right.
%
@@ -5672,7 +5719,7 @@ end
\advance\dimen@ii by 1\dimen@i
\ifdim\wd\boxA > \dimen@ii % If the entry doesn't fit in one line
\ifdim\dimen@ > 0.8\dimen@ii % due to long index text
- % Try to split the text roughly evenly. \dimen@ will be the length of
+ % Try to split the text roughly evenly. \dimen@ will be the length of
% the first line.
\dimen@ = 0.7\dimen@
\dimen@ii = \hsize
@@ -5708,55 +5755,11 @@ end
\egroup % The \vbox
\fi
\endgroup
- \dotheinsertentrybox
}}
\newskip\thinshrinkable
\skip\thinshrinkable=.15em minus .15em
-\newbox\entrybox
-\def\insertentrybox{%
- \ourunvbox\entrybox
-}
-
-% default definition
-\let\dotheinsertentrybox\insertentrybox
-
-% Use \lastbox to take apart vbox box by box, and add each sub-box
-% to the current vertical list.
-\def\ourunvbox#1{%
-\bgroup % for local binding of \delayedbox
- % Remove the last box from box #1
- \global\setbox#1=\vbox{%
- \unvbox#1%
- \unskip % remove any glue
- \unpenalty
- \global\setbox\interbox=\lastbox
- }%
- \setbox\delayedbox=\box\interbox
- \ifdim\ht#1=0pt\else
- \ourunvbox#1 % Repeat on what's left of the box
- \nobreak
- \fi
- \box\delayedbox
-\egroup
-}
-\newbox\delayedbox
-\newbox\interbox
-
-% Used from \printindex. \firsttoken should be the first token
-% after the \entry. If it's not another \entry, we are at the last
-% line of a group of index entries, so insert a penalty to discourage
-% widowed index entries.
-\def\dotheinsertentryboxwithpenalty{%
- \ifx\firsttoken\isentry
- \else
- \penalty 9000
- \fi
- \insertentrybox
-}
-\def\isentry{\entry}%
-
% Like plain.tex's \dotfill, except uses up at least 1 em.
% The filll stretch here overpowers both the fil and fill stretch to push
% the page number to the right.
@@ -5766,24 +5769,15 @@ end
\def\primary #1{\line{#1\hfil}}
-\newskip\secondaryindent \secondaryindent=0.5cm
-\def\secondary#1#2{{%
- \parfillskip=0in
- \parskip=0in
- \hangindent=1in
- \hangafter=1
- \noindent\hskip\secondaryindent\hbox{#1}\indexdotfill
- \ifpdf
- \pdfgettoks#2.\ \the\toksA % The page number ends the paragraph.
- \else
- \ifx\XeTeXrevision\thisisundefined
- #2
- \else
- \pdfgettoks#2.\ \the\toksA % The page number ends the paragraph.
- \fi
- \fi
- \par
-}}
+\def\secondary{\indententry{0.5cm}}
+\def\tertiary{\indententry{1cm}}
+
+\def\indententry#1#2#3{%
+ \bgroup
+ \leftskip=#1
+ \entry{#2}{#3}%
+ \egroup
+}
% Define two-column mode, which we use to typeset indexes.
% Adapted from the TeXbook, page 416, which is to say,
@@ -5793,60 +5787,21 @@ end
\newbox\partialpage
\newdimen\doublecolumnhsize
-% Use inside an output routine to save \topmark and \firstmark
-\def\savemarks{%
- \global\savedtopmark=\expandafter{\topmark }%
- \global\savedfirstmark=\expandafter{\firstmark }%
-}
-\newtoks\savedtopmark
-\newtoks\savedfirstmark
-
-% Set \topmark and \firstmark for next time \output runs.
-% Can't be run from withinside \output (because any material
-% added while an output routine is active, including
-% penalties, is saved for after it finishes). The page so far
-% should be empty, otherwise what's on it will be thrown away.
-\def\restoremarks{%
- \mark{\the\savedtopmark}%
- \bgroup\output = {%
- \setbox\dummybox=\box\PAGE
- }abc\eject\egroup
- % "abc" because output routine doesn't fire for a completely empty page.
- \mark{\the\savedfirstmark}%
-}
-
\def\begindoublecolumns{\begingroup % ended by \enddoublecolumns
% If not much space left on page, start a new page.
\ifdim\pagetotal>0.8\vsize\vfill\eject\fi
%
% Grab any single-column material above us.
\output = {%
- %
- % Here is a possibility not foreseen in manmac: if we accumulate a
- % whole lot of material, we might end up calling this \output
- % routine twice in a row (see the doublecol-lose test, which is
- % essentially a couple of indexes with @setchapternewpage off). In
- % that case we just ship out what is in \partialpage with the normal
- % output routine. Generally, \partialpage will be empty when this
- % runs and this will be a no-op. See the indexspread.tex test case.
- \ifvoid\partialpage \else
- \onepageout{\pagecontents\partialpage}%
- \fi
+ \savetopmark
%
\global\setbox\partialpage = \vbox{%
% Unvbox the main output page.
\unvbox\PAGE
\kern-\topskip \kern\baselineskip
}%
- \savemarks
}%
\eject % run that output routine to set \partialpage
- \restoremarks
- %
- % We recover the two marks that the last output routine saved in order
- % to propagate the information in marks added around a chapter heading,
- % which could be otherwise be lost by the time the final page is output.
- %
%
% Use the double-column output routine for subsequent pages.
\output = {\doublecolumnout}%
@@ -5872,7 +5827,9 @@ end
\divide\doublecolumnhsize by 2
\hsize = \doublecolumnhsize
%
- % Double the \vsize as well.
+ % Get the available space for the double columns -- the normal
+ % (undoubled) page height minus any material left over from the
+ % previous page.
\advance\vsize by -\ht\partialpage
\vsize = 2\vsize
%
@@ -5885,17 +5842,15 @@ end
%
\def\doublecolumnout{%
%
+ \savetopmark
\splittopskip=\topskip \splitmaxdepth=\maxdepth
- % Get the available space for the double columns -- the normal
- % (undoubled) page height minus any material left over from the
- % previous page.
\dimen@ = \vsize
\divide\dimen@ by 2
%
% box0 will be the left-hand column, box2 the right.
\setbox0=\vsplit\PAGE to\dimen@ \setbox2=\vsplit\PAGE to\dimen@
\global\advance\vsize by 2\ht\partialpage
- \onepageout\pagesofar
+ \onepageout\pagesofar % empty except for the first time we are called
\unvbox\PAGE
\penalty\outputpenalty
}
@@ -5911,7 +5866,7 @@ end
}
-% Finished with with double columns.
+% Finished with double columns.
\def\enddoublecolumns{%
% The following penalty ensures that the page builder is exercised
% _before_ we change the output routine. This is necessary in the
@@ -5943,7 +5898,7 @@ end
%
\output = {%
% Split the last of the double-column material.
- \savemarks
+ \savetopmark
\balancecolumns
}%
\eject % call the \output just set
@@ -5951,10 +5906,9 @@ end
% Having called \balancecolumns once, we do not
% want to call it again. Therefore, reset \output to its normal
% definition right away.
- \global\output = {\onepageout{\pagecontents\PAGE}}%
+ \global\output=\expandafter{\the\defaultoutput}
%
\endgroup % started in \begindoublecolumns
- \restoremarks
% Leave the double-column material on the current page, no automatic
% page break.
\box\balancedcolumns
@@ -5973,18 +5927,19 @@ end
\newbox\balancedcolumns
\setbox\balancedcolumns=\vbox{shouldnt see this}%
%
-% Only called for the last of the double column material. \doublecolumnout
+% Only called for the last of the double column material. \doublecolumnout
% does the others.
\def\balancecolumns{%
\setbox0 = \vbox{\unvbox\PAGE}% like \box255 but more efficient, see p.120.
\dimen@ = \ht0
- \advance\dimen@ by \topskip
- \advance\dimen@ by-\baselineskip
- \ifdim\dimen@<5\baselineskip
+ \ifdim\dimen@<7\baselineskip
% Don't split a short final column in two.
\setbox2=\vbox{}%
\global\setbox\balancedcolumns=\vbox{\pagesofar}%
\else
+ % double the leading vertical space
+ \advance\dimen@ by \topskip
+ \advance\dimen@ by-\baselineskip
\divide\dimen@ by 2 % target to split to
\dimen@ii = \dimen@
\splittopskip = \topskip
@@ -6000,7 +5955,7 @@ end
}%
% Now the left column is in box 1, and the right column in box 3.
%
- % Check whether the left column has come out higher than the page itself.
+ % Check whether the left column has come out higher than the page itself.
% (Note that we have doubled \vsize for the double columns, so
% the actual height of the page is 0.5\vsize).
\ifdim2\ht1>\vsize
@@ -6119,11 +6074,9 @@ end
% @raisesections: treat @section as chapter, @subsection as section, etc.
\def\raisesections{\global\advance\secbase by -1}
-\let\up=\raisesections % original BFox name
% @lowersections: treat @chapter as section, @section as subsection, etc.
\def\lowersections{\global\advance\secbase by 1}
-\let\down=\lowersections % original BFox name
% we only have subsub.
\chardef\maxseclevel = 3
@@ -6299,7 +6252,7 @@ end
\let\top\unnumbered
% Sections.
-%
+%
\outer\parseargdef\numberedsec{\numhead1{#1}} % normally calls seczzz
\def\seczzz#1{%
\global\subsecno=0 \global\subsubsecno=0 \global\advance\secno by 1
@@ -6322,7 +6275,7 @@ end
}
% Subsections.
-%
+%
% normally calls numberedsubseczzz:
\outer\parseargdef\numberedsubsec{\numhead2{#1}}
\def\numberedsubseczzz#1{%
@@ -6347,7 +6300,7 @@ end
}
% Subsubsections.
-%
+%
% normally numberedsubsubseczzz:
\outer\parseargdef\numberedsubsubsec{\numhead3{#1}}
\def\numberedsubsubseczzz#1{%
@@ -6468,27 +6421,22 @@ end
\expandafter\ifx\thisenv\titlepage\else
\checkenv{}% chapters, etc., should not start inside an environment.
\fi
- % FIXME: \chapmacro is currently called from inside \titlepage when
- % \setcontentsaftertitlepage to print the "Table of Contents" heading, but
- % this should probably be done by \sectionheading with an option to print
- % in chapter size.
- %
% Insert the first mark before the heading break (see notes for \domark).
- \let\prevchapterdefs=\lastchapterdefs
- \let\prevsectiondefs=\lastsectiondefs
- \gdef\lastsectiondefs{\gdef\thissectionname{}\gdef\thissectionnum{}%
+ \let\prevchapterdefs=\currentchapterdefs
+ \let\prevsectiondefs=\currentsectiondefs
+ \gdef\currentsectiondefs{\gdef\thissectionname{}\gdef\thissectionnum{}%
\gdef\thissection{}}%
%
\def\temptype{#2}%
\ifx\temptype\Ynothingkeyword
- \gdef\lastchapterdefs{\gdef\thischaptername{#1}\gdef\thischapternum{}%
+ \gdef\currentchapterdefs{\gdef\thischaptername{#1}\gdef\thischapternum{}%
\gdef\thischapter{\thischaptername}}%
\else\ifx\temptype\Yomitfromtockeyword
- \gdef\lastchapterdefs{\gdef\thischaptername{#1}\gdef\thischapternum{}%
+ \gdef\currentchapterdefs{\gdef\thischaptername{#1}\gdef\thischapternum{}%
\gdef\thischapter{}}%
\else\ifx\temptype\Yappendixkeyword
\toks0={#1}%
- \xdef\lastchapterdefs{%
+ \xdef\currentchapterdefs{%
\gdef\noexpand\thischaptername{\the\toks0}%
\gdef\noexpand\thischapternum{\appendixletter}%
% \noexpand\putwordAppendix avoids expanding indigestible
@@ -6499,7 +6447,7 @@ end
}%
\else
\toks0={#1}%
- \xdef\lastchapterdefs{%
+ \xdef\currentchapterdefs{%
\gdef\noexpand\thischaptername{\the\toks0}%
\gdef\noexpand\thischapternum{\the\chapno}%
% \noexpand\putwordChapter avoids expanding indigestible
@@ -6519,18 +6467,18 @@ end
%
% Now the second mark, after the heading break. No break points
% between here and the heading.
- \let\prevchapterdefs=\lastchapterdefs
- \let\prevsectiondefs=\lastsectiondefs
+ \let\prevchapterdefs=\currentchapterdefs
+ \let\prevsectiondefs=\currentsectiondefs
\domark
%
{%
\chapfonts \rm
\let\footnote=\errfootnoteheading % give better error message
%
- % Have to define \lastsection before calling \donoderef, because the
+ % Have to define \currentsection before calling \donoderef, because the
% xref code eventually uses it. On the other hand, it has to be called
% after \pchapsepmacro, or the headline will change too soon.
- \gdef\lastsection{#1}%
+ \gdef\currentsection{#1}%
%
% Only insert the separating space if we have a chapter/appendix
% number, and don't print the unnumbered ``number''.
@@ -6619,10 +6567,10 @@ end
\csname #2fonts\endcsname \rm
%
% Insert first mark before the heading break (see notes for \domark).
- \let\prevsectiondefs=\lastsectiondefs
+ \let\prevsectiondefs=\currentsectiondefs
\ifx\temptype\Ynothingkeyword
\ifx\sectionlevel\seckeyword
- \gdef\lastsectiondefs{\gdef\thissectionname{#1}\gdef\thissectionnum{}%
+ \gdef\currentsectiondefs{\gdef\thissectionname{#1}\gdef\thissectionnum{}%
\gdef\thissection{\thissectionname}}%
\fi
\else\ifx\temptype\Yomitfromtockeyword
@@ -6630,7 +6578,7 @@ end
\else\ifx\temptype\Yappendixkeyword
\ifx\sectionlevel\seckeyword
\toks0={#1}%
- \xdef\lastsectiondefs{%
+ \xdef\currentsectiondefs{%
\gdef\noexpand\thissectionname{\the\toks0}%
\gdef\noexpand\thissectionnum{#4}%
% \noexpand\putwordSection avoids expanding indigestible
@@ -6643,7 +6591,7 @@ end
\else
\ifx\sectionlevel\seckeyword
\toks0={#1}%
- \xdef\lastsectiondefs{%
+ \xdef\currentsectiondefs{%
\gdef\noexpand\thissectionname{\the\toks0}%
\gdef\noexpand\thissectionnum{#4}%
% \noexpand\putwordSection avoids expanding indigestible
@@ -6669,28 +6617,28 @@ end
%
% Now the second mark, after the heading break. No break points
% between here and the heading.
- \global\let\prevsectiondefs=\lastsectiondefs
+ \global\let\prevsectiondefs=\currentsectiondefs
\domark
%
% Only insert the space after the number if we have a section number.
\ifx\temptype\Ynothingkeyword
\setbox0 = \hbox{}%
\def\toctype{unn}%
- \gdef\lastsection{#1}%
+ \gdef\currentsection{#1}%
\else\ifx\temptype\Yomitfromtockeyword
% for @headings -- no section number, don't include in toc,
- % and don't redefine \lastsection.
+ % and don't redefine \currentsection.
\setbox0 = \hbox{}%
\def\toctype{omit}%
\let\sectionlevel=\empty
\else\ifx\temptype\Yappendixkeyword
\setbox0 = \hbox{#4\enspace}%
\def\toctype{app}%
- \gdef\lastsection{#1}%
+ \gdef\currentsection{#1}%
\else
\setbox0 = \hbox{#4\enspace}%
\def\toctype{num}%
- \gdef\lastsection{#1}%
+ \gdef\currentsection{#1}%
\fi\fi\fi
%
% Write the toc entry (before \donoderef). See comments in \chapmacro.
@@ -6780,13 +6728,8 @@ end
% 1 and 2 (the page numbers aren't printed), and so are the first
% two pages of the document. Thus, we'd have two destinations named
% `1', and two named `2'.
- \ifpdf
+ \ifpdforxetex
\global\pdfmakepagedesttrue
- \else
- \ifx\XeTeXrevision\thisisundefined
- \else
- \global\pdfmakepagedesttrue
- \fi
\fi
}
@@ -7149,11 +7092,7 @@ end
% @cartouche ... @end cartouche: draw rectangle w/rounded corners around
% environment contents.
-\font\circle=lcircle10
-\newdimen\circthick
-\newdimen\cartouter\newdimen\cartinner
-\newskip\normbskip\newskip\normpskip\newskip\normlskip
-\circthick=\fontdimen8\circle
+
%
\def\ctl{{\circle\char'013\hskip -6pt}}% 6pt from pl file: 1/2charwidth
\def\ctr{{\hskip 6pt\circle\char'010}}
@@ -7168,7 +7107,18 @@ end
%
\newskip\lskip\newskip\rskip
+% only require the font if @cartouche is actually used
+\def\cartouchefontdefs{%
+ \font\circle=lcircle10\relax
+ \circthick=\fontdimen8\circle
+}
+\newdimen\circthick
+\newdimen\cartouter\newdimen\cartinner
+\newskip\normbskip\newskip\normpskip\newskip\normlskip
+
+
\envdef\cartouche{%
+ \cartouchefontdefs
\ifhmode\par\fi % can't be in the midst of a paragraph.
\startsavinginserts
\lskip=\leftskip \rskip=\rightskip
@@ -7347,13 +7297,9 @@ end
% @raggedright does more-or-less normal line breaking but no right
-% justification. From plain.tex. Don't stretch around special
-% characters in urls in this environment, since the stretch at the right
-% should be enough.
+% justification. From plain.tex.
\envdef\raggedright{%
\rightskip0pt plus2.4em \spaceskip.3333em \xspaceskip.5em\relax
- \def\urefprestretchamount{0pt}%
- \def\urefpoststretchamount{0pt}%
}
\let\Eraggedright\par
@@ -7412,7 +7358,7 @@ end
% @indentedblock is like @quotation, but indents only on the left and
% has no optional argument.
-%
+%
\makedispenvdef{indentedblock}{\indentedblockstart}
%
\def\indentedblockstart{%
@@ -7515,7 +7461,7 @@ end
\nonfillstart
\tt % easiest (and conventionally used) font for verbatim
% The \leavevmode here is for blank lines. Otherwise, we would
- % never \starttabox and the \egroup would end verbatim mode.
+ % never \starttabbox and the \egroup would end verbatim mode.
\def\par{\leavevmode\egroup\box\verbbox\endgraf}%
\tabexpand
\setupmarkupstyle{verbatim}%
@@ -7578,9 +7524,12 @@ end
{%
\makevalueexpandable
\setupverbatim
- \indexnofonts % Allow `@@' and other weird things in file names.
- \wlog{texinfo.tex: doing @verbatiminclude of #1^^J}%
- \input #1
+ {%
+ \indexnofonts % Allow `@@' and other weird things in file names.
+ \wlog{texinfo.tex: doing @verbatiminclude of #1^^J}%
+ \edef\tmp{\noexpand\input #1 }
+ \expandafter
+ }\tmp
\afterenvbreak
}%
}
@@ -7709,7 +7658,7 @@ end
% @deftypefnnewline on|off says whether the return type of typed functions
% are printed on their own line. This affects @deftypefn, @deftypefun,
% @deftypeop, and @deftypemethod.
-%
+%
\parseargdef\deftypefnnewline{%
\def\temp{#1}%
\ifx\temp\onword
@@ -7725,6 +7674,21 @@ end
\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
@@ -7739,7 +7703,6 @@ end
% \deffngeneral {subind}category name args
%
\def\deffngeneral#1#2 #3 #4\endheader{%
- % Remember that \dosubind{fn}{foo}{} is equivalent to \doind{fn}{foo}.
\dosubind{fn}{\code{#3}}{#1}%
\defname{#2}{}{#3}\magicamp\defunargs{#4\unskip}%
}
@@ -7890,7 +7853,7 @@ end
\tclose{\temp}% typeset the return type
\ifrettypeownline
% put return type on its own line; prohibit line break following:
- \hfil\vadjust{\nobreak}\break
+ \hfil\vadjust{\nobreak}\break
\else
\space % type on same line, so just followed by a space
\fi
@@ -8027,36 +7990,18 @@ end
}
\fi
-% alias because \c means cedilla in @tex or @math
-\let\texinfoc=\c
-
-\newcount\savedcatcodeone
-\newcount\savedcatcodetwo
-
% Used at the time of macro expansion.
% Argument is macro body with arguments substituted
\def\scanmacro#1{%
\newlinechar`\^^M
\def\xeatspaces{\eatspaces}%
%
- % Temporarily undo catcode changes of \printindex. Set catcode of @ to
- % 0 so that @-commands in macro expansions aren't printed literally when
- % formatting an index file, where \ is used as the escape character.
- \savedcatcodeone=\catcode`\@
- \savedcatcodetwo=\catcode`\\
- \catcode`\@=0
- \catcode`\\=\active
- %
% Process the macro body under the current catcode regime.
- \scantokens{#1@texinfoc}%
- %
- \catcode`\@=\savedcatcodeone
- \catcode`\\=\savedcatcodetwo
+ \scantokens{#1@comment}%
%
- % The \texinfoc is to remove the \newlinechar added by \scantokens, and
- % can be noticed by \parsearg.
- % We avoid surrounding the call to \scantokens with \bgroup and \egroup
- % to allow macros to open or close groups themselves.
+ % The \comment is to remove the \newlinechar added by \scantokens, and
+ % can be noticed by \parsearg. Note \c isn't used because this means cedilla
+ % in math mode.
}
% Used for copying and captions
@@ -8157,12 +8102,14 @@ end
\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
}
@@ -8254,7 +8201,7 @@ end
% list to some hook where the argument is to be expanded. If there are
% less than 10 arguments that hook is to be replaced by ##N where N
% is the position in that list, that is to say the macro arguments are to be
-% defined `a la TeX in the macro body.
+% defined `a la TeX in the macro body.
%
% That gets used by \mbodybackslash (above).
%
@@ -8285,8 +8232,8 @@ end
%
% Read recursive and nonrecursive macro bodies. (They're different since
% rec and nonrec macros end differently.)
-%
-% We are in \macrobodyctxt, and the \xdef causes backslashshes in the macro
+%
+% 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.
%
@@ -8320,7 +8267,7 @@ end
% twice the \macarg.BLAH macros does not cost too much processing power.
\def\parsemmanyargdef@@#1,{%
\if#1;\let\next=\relax
- \else
+ \else
\let\next=\parsemmanyargdef@@
\edef\tempb{\eatspaces{#1}}%
\expandafter\def\expandafter\tempa
@@ -8405,7 +8352,7 @@ end
% Replace arguments by their values in the macro body, and place the result
% in macro \@tempa.
-%
+%
\def\macvalstoargs@{%
% To do this we use the property that token registers that are \the'ed
% within an \edef expand only once. So we are going to place all argument
@@ -8429,9 +8376,9 @@ end
\expandafter\def\expandafter\@tempa\expandafter{\@tempc}%
}
-% Define the named-macro outside of this group and then close this group.
-%
-\def\macargexpandinbody@{%
+% Define the named-macro outside of this group and then close this group.
+%
+\def\macargexpandinbody@{%
\expandafter
\endgroup
\macargdeflist@
@@ -8469,7 +8416,7 @@ end
}
% Trailing missing arguments are set to empty.
-%
+%
\def\setemptyargvalues@{%
\ifx\paramlist\nilm@
\let\next\macargexpandinbody@
@@ -8546,7 +8493,7 @@ end
\else % at most 9
\ifnum\paramno<10\relax
% @MACNAME sets the context for reading the macro argument
- % @MACNAME@@ gets the argument, processes backslashes and appends a
+ % @MACNAME@@ gets the argument, processes backslashes and appends a
% comma.
% @MACNAME@@@ removes braces surrounding the argument list.
% @MACNAME@@@@ scans the macro body with arguments substituted.
@@ -8590,11 +8537,11 @@ end
% Call #1 with a list of tokens #2, with any doubled backslashes in #2
% compressed to one.
%
-% This implementation works by expansion, and not execution (so we cannot use
-% \def or similar). This reduces the risk of this failing in contexts where
-% complete expansion is done with no execution (for example, in writing out to
+% This implementation works by expansion, and not execution (so we cannot use
+% \def or similar). This reduces the risk of this failing in contexts where
+% complete expansion is done with no execution (for example, in writing out to
% an auxiliary file for an index entry).
-%
+%
% State is kept in the input stream: the argument passed to
% @look_ahead, @gobble_and_check_finish and @add_segment is
%
@@ -8616,11 +8563,11 @@ end
% #3 - NEXT_TOKEN
% #4 used to look ahead
%
-% If the next token is not a backslash, process the rest of the argument;
+% If the next token is not a backslash, process the rest of the argument;
% otherwise, remove the next token.
@gdef@look_ahead#1!#2#3#4{%
@ifx#4\%
- @expandafter@gobble_and_check_finish
+ @expandafter@gobble_and_check_finish
@else
@expandafter@add_segment
@fi#1!{#2}#4#4%
@@ -8644,9 +8591,9 @@ end
% #3 - NEXT_TOKEN
% #4 is input stream until next backslash
%
-% Input stream is either at the start of the argument, or just after a
-% backslash sequence, either a lone backslash, or a doubled backslash.
-% NEXT_TOKEN contains the first token in the input stream: if it is \finish,
+% Input stream is either at the start of the argument, or just after a
+% backslash sequence, either a lone backslash, or a doubled backslash.
+% NEXT_TOKEN contains the first token in the input stream: if it is \finish,
% finish; otherwise, append to ARG_RESULT the segment of the argument up until
% the next backslash. PENDING_BACKSLASH contains a backslash to represent
% a backslash just before the start of the input stream that has not been
@@ -8658,13 +8605,13 @@ end
% append the pending backslash to the result, followed by the next segment
@expandafter@is_fi@look_ahead#1#2#4!{\}@fi
% this @fi is discarded by @look_ahead.
- % we can't get rid of it with \expandafter because we don't know how
+ % we can't get rid of it with \expandafter because we don't know how
% long #4 is.
}
% #1 - THE_MACRO
% #2 - ARG_RESULT
-% #3 discards the res of the conditional in @add_segment, and @is_fi ends the
+% #3 discards the res of the conditional in @add_segment, and @is_fi ends the
% conditional.
@gdef@call_the_macro#1#2!#3@fi{@is_fi #1{#2}}
@@ -8676,7 +8623,7 @@ end
% for reading the argument (slightly different in the two cases). Then,
% to read the argument, in the whole-line case, it then calls the regular
% \parsearg MAC; in the lbrace case, it calls \passargtomacro MAC.
-%
+%
\def\braceorline#1{\let\macnamexxx=#1\futurelet\nchar\braceorlinexxx}
\def\braceorlinexxx{%
\ifx\nchar\bgroup
@@ -8726,9 +8673,29 @@ end
% also remove a trailing comma, in case of something like this:
% @node Help-Cross, , , Cross-refs
\def\donode#1 ,#2\finishnodeparse{\dodonode #1,\finishnodeparse}
-\def\dodonode#1,#2\finishnodeparse{\gdef\lastnode{#1}}
+\def\dodonode#1,#2\finishnodeparse{\gdef\lastnode{#1}\omittopnode}
+
+% Used so that the @top node doesn't have to be wrapped in an @ifnottex
+% conditional.
+% \doignore goes to more effort to skip nested conditionals but we don't need
+% that here.
+\def\omittopnode{%
+ \ifx\lastnode\wordTop
+ \expandafter\ignorenode\fi
+}
+\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}%
+\ignorenodebye
+}
+
+{\let\bye\relax
+\gdef\ignorenodebye{\let\bye\ignorenodebyedef}
+\gdef\ignorenodebyedef{\egroup(`Top' node ignored)\bye}}
+% The redefinition of \bye here is because it is declared \outer
-\let\nwnode=\node
\let\lastnode=\empty
% Write a cross-reference definition for the current node. #1 is the
@@ -8751,7 +8718,7 @@ end
% \setref{NAME}{SNT} defines a cross-reference point NAME (a node or an
% anchor), which consists of three parts:
-% 1) NAME-title - the current sectioning name taken from \lastsection,
+% 1) NAME-title - the current sectioning name taken from \currentsection,
% or the anchor name.
% 2) NAME-snt - section number and type, passed as the SNT arg, or
% empty for anchors.
@@ -8773,7 +8740,7 @@ end
\write\auxfile{@xrdef{#1-% #1 of \setref, expanded by the \edef
##1}{##2}}% these are parameters of \writexrdef
}%
- \toks0 = \expandafter{\lastsection}%
+ \toks0 = \expandafter{\currentsection}%
\immediate \writexrdef{title}{\the\toks0 }%
\immediate \writexrdef{snt}{\csname #2\endcsname}% \Ynumbered etc.
\safewhatsit{\writexrdef{pg}{\folio}}% will be written later, at \shipout
@@ -8785,7 +8752,7 @@ end
% automatically in xrefs, if the third arg is not explicitly specified.
% This was provided as a "secret" @set xref-automatic-section-title
% variable, now it's official.
-%
+%
\parseargdef\xrefautomaticsectiontitle{%
\def\temp{#1}%
\ifx\temp\onword
@@ -8801,7 +8768,7 @@ end
\fi\fi
}
-%
+%
% @xref, @pxref, and @ref generate cross-references. For \xrefX, #1 is
% the node name, #2 the name of the Info cross-reference, #3 the printed
% node name, #4 the name of the Info file, #5 the name of the printed
@@ -8954,24 +8921,24 @@ end
\fi
\else
% node/anchor (non-float) references.
- %
+ %
% If we use \unhbox to print the node names, TeX does not insert
% empty discretionaries after hyphens, which means that it will not
% find a line break at a hyphen in a node names. Since some manuals
% are best written with fairly long node names, containing hyphens,
% this is a loss. Therefore, we give the text of the node name
% again, so it is as if TeX is seeing it for the first time.
- %
+ %
\ifdim \wd\printedmanualbox > 0pt
% Cross-manual reference with a printed manual name.
- %
+ %
\crossmanualxref{\cite{\printedmanual\unskip}}%
%
\else\ifdim \wd\infofilenamebox > 0pt
% Cross-manual reference with only an info filename (arg 4), no
% printed manual name (arg 5). This is essentially the same as
% the case above; we output the filename, since we have nothing else.
- %
+ %
\crossmanualxref{\code{\infofilename\unskip}}%
%
\else
@@ -9011,20 +8978,20 @@ end
\endgroup}
% Output a cross-manual xref to #1. Used just above (twice).
-%
+%
% Only include the text "Section ``foo'' in" if the foo is neither
% missing or Top. Thus, @xref{,,,foo,The Foo Manual} outputs simply
% "see The Foo Manual", the idea being to refer to the whole manual.
-%
+%
% But, this being TeX, we can't easily compare our node name against the
% string "Top" while ignoring the possible spaces before and after in
% the input. By adding the arbitrary 7sp below, we make it much less
% likely that a real node name would have the same width as "Top" (e.g.,
% in a monospaced font). Hopefully it will never happen in practice.
-%
+%
% For the same basic reason, we retypeset the "Top" at every
% reference, since the current font is indeterminate.
-%
+%
\def\crossmanualxref#1{%
\setbox\toprefbox = \hbox{Top\kern7sp}%
\setbox2 = \hbox{\ignorespaces \printedrefname \unskip \kern7sp}%
@@ -9071,7 +9038,7 @@ end
\fi\fi\fi
}
-% \refx{NAME}{SUFFIX} - reference a cross-reference string named NAME. SUFFIX
+% \refx{NAME}{SUFFIX} - reference a cross-reference string named NAME. SUFFIX
% is output afterwards if non-empty.
\def\refx#1#2{%
\requireauxfile
@@ -9103,9 +9070,9 @@ end
#2% Output the suffix in any case.
}
-% This is the macro invoked by entries in the aux file. Define a control
-% sequence for a cross-reference target (we prepend XR to the control sequence
-% name to avoid collisions). The value is the page number. If this is a float
+% This is the macro invoked by entries in the aux file. Define a control
+% sequence for a cross-reference target (we prepend XR to the control sequence
+% name to avoid collisions). The value is the page number. If this is a float
% type, we have more work to do.
%
\def\xrdef#1#2{%
@@ -9121,10 +9088,10 @@ end
\bgroup
\expandafter\gdef\csname XR\safexrefname\endcsname{#2}%
\egroup
- % We put the \gdef inside a group to avoid the definitions building up on
- % TeX's save stack, which can cause it to run out of space for aux files with
+ % We put the \gdef inside a group to avoid the definitions building up on
+ % TeX's save stack, which can cause it to run out of space for aux files with
% thousands of lines. \gdef doesn't use the save stack, but \csname does
- % when it defines an unknown control sequence as \relax.
+ % when it defines an unknown control sequence as \relax.
%
% Was that xref control sequence that we just defined for a float?
\expandafter\iffloat\csname XR\safexrefname\endcsname
@@ -9203,19 +9170,6 @@ end
\catcode`\^^]=\other
\catcode`\^^^=\other
\catcode`\^^_=\other
- % It was suggested to set the catcode of ^ to 7, which would allow ^^e4 etc.
- % in xref tags, i.e., node names. But since ^^e4 notation isn't
- % supported in the main text, it doesn't seem desirable. Furthermore,
- % that is not enough: for node names that actually contain a ^
- % character, we would end up writing a line like this: 'xrdef {'hat
- % b-title}{'hat b} and \xrdef does a \csname...\endcsname on the first
- % argument, and \hat is not an expandable control sequence. It could
- % all be worked out, but why? Either we support ^^ or we don't.
- %
- % The other change necessary for this was to define \auxhat:
- % \def\auxhat{\def^{'hat }}% extra space so ok if followed by letter
- % and then to call \auxhat in \setq.
- %
\catcode`\^=\other
%
% Special characters. Should be turned off anyway, but...
@@ -9233,14 +9187,7 @@ end
\catcode`\%=\other
\catcode`+=\other % avoid \+ for paranoia even though we've turned it off
%
- % This is to support \ in node names and titles, since the \
- % characters end up in a \csname. It's easier than
- % leaving it active and making its active definition an actual \
- % character. What I don't understand is why it works in the *value*
- % of the xrdef. Seems like it should be a catcode12 \, and that
- % should not typeset properly. But it works, so I'm moving on for
- % now. --karl, 15jan04.
- \catcode`\\=\other
+ \catcode`\\=\active
%
% @ is our escape character in .aux files, and we need braces.
\catcode`\{=1
@@ -9503,7 +9450,7 @@ end
%
\ifimagevmode
\medskip % space after a standalone image
- \fi
+ \fi
\ifx\centersub\centerV \egroup \fi
\endgroup}
@@ -9571,13 +9518,13 @@ end
\global\advance\floatno by 1
%
{%
- % This magic value for \lastsection is output by \setref as the
+ % This magic value for \currentsection is output by \setref as the
% XREFLABEL-title value. \xrefX uses it to distinguish float
% labels (which have a completely different output format) from
% node and anchor labels. And \xrdef uses it to construct the
% lists of floats.
%
- \edef\lastsection{\floatmagic=\safefloattype}%
+ \edef\currentsection{\floatmagic=\safefloattype}%
\setref{\floatlabel}{Yfloat}%
}%
\fi
@@ -9700,7 +9647,7 @@ end
% #1 is the control sequence we are passed; we expand into a conditional
% which is true if #1 represents a float ref. That is, the magic
-% \lastsection value which we \setref above.
+% \currentsection value which we \setref above.
%
\def\iffloat#1{\expandafter\doiffloat#1==\finish}
%
@@ -10334,7 +10281,7 @@ directory should work if nowhere else does.}
\uppercase{.}
\endgroup
\else
- \errhelp = \EMsimple
+ \errhelp = \EMsimple
\errmessage{Unicode character U+#1 not supported, sorry}%
\fi
\else
@@ -10367,7 +10314,7 @@ directory should work if nowhere else does.}
\countUTFz = "#1\relax
\begingroup
\parseXMLCharref
-
+
% Give \u8:... its definition. The sequence of seven \expandafter's
% expands after the \gdef three times, e.g.
%
@@ -10379,7 +10326,7 @@ directory should work if nowhere else does.}
\expandafter\expandafter
\expandafter\expandafter
\expandafter\gdef \UTFviiiTmp{#2}%
- %
+ %
\expandafter\ifx\csname uni:#1\endcsname \relax \else
\message{Internal error, already defined: #1}%
\fi
@@ -10418,7 +10365,7 @@ directory should work if nowhere else does.}
\divide\countUTFz by 64
\countUTFy = \countUTFz % Save to be the future value of \countUTFz.
\multiply\countUTFz by 64
-
+
% \countUTFz is now \countUTFx with the last 5 bits cleared. Subtract
% in order to get the last five bits.
\advance\countUTFx by -\countUTFz
@@ -10453,7 +10400,7 @@ directory should work if nowhere else does.}
% U+0080..U+00FF = https://en.wikipedia.org/wiki/Latin-1_Supplement_(Unicode_block)
% U+0100..U+017F = https://en.wikipedia.org/wiki/Latin_Extended-A
% U+0180..U+024F = https://en.wikipedia.org/wiki/Latin_Extended-B
-%
+%
% Many of our renditions are less than wonderful, and all the missing
% characters are available somewhere. Loading the necessary fonts
% awaits user request. We can't truly support Unicode without
@@ -11188,21 +11135,14 @@ directory should work if nowhere else does.}
\relax
}
-% define all Unicode characters we know about, for the sake of @U.
+% Define all Unicode characters we know about. This makes UTF-8 the default
+% input encoding and allows @U to work.
\iftxinativeunicodecapable
\nativeunicodechardefsatu
\else
\utfeightchardefs
\fi
-
-% Make non-ASCII characters printable again for compatibility with
-% existing Texinfo documents that may use them, even without declaring a
-% document encoding.
-%
-\setnonasciicharscatcode \other
-
-
\message{formatting,}
\newdimen\defaultparindent \defaultparindent = 15pt
@@ -11498,9 +11438,9 @@ directory should work if nowhere else does.}
\def\texinfochars{%
\let< = \activeless
\let> = \activegtr
- \let~ = \activetilde
+ \let~ = \activetilde
\let^ = \activehat
- \markupsetuplqdefault \markupsetuprqdefault
+ \markupsetuplqdefault \markupsetuprqdefault
\let\b = \strong
\let\i = \smartitalic
% in principle, all other definitions in \tex have to be undone too.
@@ -11518,11 +11458,9 @@ directory should work if nowhere else does.}
% \backslashcurfont outputs one backslash character in current font,
% as in \char`\\.
\global\chardef\backslashcurfont=`\\
-\global\let\rawbackslashxx=\backslashcurfont % let existing .??s files work
-% \realbackslash is an actual character `\' with catcode other, and
-% \doublebackslash is two of them (for the pdf outlines).
-{\catcode`\\=\other @gdef@realbackslash{\} @gdef@doublebackslash{\\}}
+% \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.
@@ -11540,10 +11478,8 @@ directory should work if nowhere else does.}
@def@ttbackslash{{@tt @ifmmode @mathchar29020 @else @backslashcurfont @fi}}
@let@backslashchar = @ttbackslash % @backslashchar{} is for user documents.
-% \rawbackslash defines an active \ to do \backslashcurfont.
% \otherbackslash defines an active \ to be a literal `\' character with
-% catcode other. We switch back and forth between these.
-@gdef@rawbackslash{@let\=@backslashcurfont}
+% catcode other.
@gdef@otherbackslash{@let\=@realbackslash}
% Same as @turnoffactive except outputs \ as {\tt\char`\\} instead of
@@ -11615,7 +11551,7 @@ directory should work if nowhere else does.}
@ifx\@eatinput @let\ = @ttbackslash @fi
@catcode13=5 % regular end of line
@enableemergencynewline
- @let@c=@texinfoc
+ @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.
diff --git a/config.h.in b/config.h.in
index 33caa9d3..7cfe726d 100644
--- a/config.h.in
+++ b/config.h.in
@@ -86,12 +86,10 @@
#undef FCNTL_DUPFD_BUGGY
/* Define to nothing if C supports flexible array members, and to 1 if it does
- not. That way, with a declaration like 'struct s { int n; double
+ not. That way, with a declaration like 'struct s { int n; short
d[FLEXIBLE_ARRAY_MEMBER]; };', the struct hack can be used with pre-C99
- compilers. When computing the size of such an object, don't use 'sizeof
- (struct s)' as it overestimates the size. Use 'offsetof (struct s, d)'
- instead. Don't use 'offsetof (struct s, d[0])', as this doesn't work with
- MSVC and with C++ compilers. */
+ compilers. Use 'FLEXSIZEOF (struct s, d, N * sizeof (short))' to calculate
+ the size in bytes of such a struct containing an N-element array. */
#undef FLEXIBLE_ARRAY_MEMBER
/* Define to 1 if mkdir mistakenly creates a directory given with a trailing
@@ -166,6 +164,9 @@
whether the gnulib module nonblocking shall be considered present. */
#undef GNULIB_NONBLOCKING
+/* Define to 1 to disable use of VLAs. */
+#undef GNULIB_NO_VLA
+
/* Define to a C preprocessor expression that evaluates to 1 or 0, depending
whether the gnulib module openat shall be considered present. */
#undef GNULIB_OPENAT
@@ -895,6 +896,9 @@
/* Define to 1 if <wchar.h> declares mbstate_t. */
#undef HAVE_MBSTATE_T
+/* Define to 1 if you have the `mbtowc' function. */
+#undef HAVE_MBTOWC
+
/* Define to 1 if you have the `memmem' function. */
#undef HAVE_MEMMEM
@@ -1200,6 +1204,9 @@
/* Define if you have tbl. */
#undef HAVE_TBL
+/* Define to 1 if you have the <threads.h> header file. */
+#undef HAVE_THREADS_H
+
/* Define to 1 if you have the `towlower' function. */
#undef HAVE_TOWLOWER
@@ -1511,20 +1518,6 @@
weak. */
#undef USE_POSIX_THREADS_WEAK
-/* Define if the GNU Pth multithreading library can be used. */
-#undef USE_PTH_THREADS
-
-/* Define if references to the GNU Pth multithreading library should be made
- weak. */
-#undef USE_PTH_THREADS_WEAK
-
-/* Define if the old Solaris multithreading library can be used. */
-#undef USE_SOLARIS_THREADS
-
-/* Define if references to the old Solaris multithreading library should be
- made weak. */
-#undef USE_SOLARIS_THREADS_WEAK
-
/* Enable extensions on AIX 3, Interix. */
#ifndef _ALL_SOURCE
# undef _ALL_SOURCE
@@ -1654,10 +1647,13 @@
/* The _Noreturn keyword of C11. */
#ifndef _Noreturn
-# if 201103 <= (defined __cplusplus ? __cplusplus : 0)
+# if (defined __cplusplus \
+ && ((201103 <= __cplusplus && !(__GNUC__ == 4 && __GNUC_MINOR__ == 7)) \
+ || (defined _MSC_VER && 1900 <= _MSC_VER)))
# define _Noreturn [[noreturn]]
-# elif (201112 <= (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) \
- || 4 < __GNUC__ + (7 <= __GNUC_MINOR__))
+# elif ((!defined __cplusplus || defined __clang__) \
+ && (201112 <= (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) \
+ || 4 < __GNUC__ + (7 <= __GNUC_MINOR__)))
/* _Noreturn works as-is. */
# elif 2 < __GNUC__ + (8 <= __GNUC_MINOR__) || 0x5110 <= __SUNPRO_C
# define _Noreturn __attribute__ ((__noreturn__))
@@ -1700,6 +1696,33 @@
/* Define to 1 if the system <stdint.h> predates C++11. */
#undef __STDC_LIMIT_MACROS
+/* 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:
+ * All functions that it calls should be marked _GL_ASYNC_SAFE as well,
+ or should be listed as async-signal-safe in POSIX
+ <http://pubs.opengroup.org/onlinepubs/9699919799/functions/V2_chap02.html#tag_15_04>
+ section 2.4.3. Note that malloc(), sprintf(), and fwrite(), in
+ particular, are NOT async-signal-safe.
+ * All memory locations (variables and struct fields) that these functions
+ access must be marked 'volatile'. This holds for both read and write
+ accesses. Otherwise the compiler might optimize away stores to and
+ reads from such locations that occur in the program, depending on its
+ data flow analysis. For example, when the program contains a loop
+ that is intended to inspect a variable set from within a signal handler
+ while (!signal_occurred)
+ ;
+ the compiler is allowed to transform this into an endless loop if the
+ variable 'signal_occurred' is not declared 'volatile'.
+ Additionally, recall that:
+ * A signal handler should not modify errno (except if it is a handler
+ for a fatal signal and ends by raising the same signal again, thus
+ provoking the termination of the process). If it invokes a function
+ that may clobber errno, it needs to save and restore the value of
+ errno. */
+#define _GL_ASYNC_SAFE
+
+
/* Define to empty if `const' does not conform to ANSI C. */
#undef const
diff --git a/configure b/configure
index 85ec9023..6047bede 100755
--- a/configure
+++ b/configure
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for man-db 2.8.6.1.
+# Generated by GNU Autoconf 2.69 for man-db 2.8.7.
#
# Report bugs to <cjwatson@debian.org>.
#
@@ -590,8 +590,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='man-db'
PACKAGE_TARNAME='man-db'
-PACKAGE_VERSION='2.8.6.1'
-PACKAGE_STRING='man-db 2.8.6.1'
+PACKAGE_VERSION='2.8.7'
+PACKAGE_STRING='man-db 2.8.7'
PACKAGE_BUGREPORT='cjwatson@debian.org'
PACKAGE_URL=''
@@ -633,6 +633,7 @@ ac_includes_default="\
#endif"
gl_use_threads_default=
+gl_use_winpthreads_default=
ac_func_list=
ac_header_list=
gl_fnmatch_required=POSIX
@@ -919,9 +920,6 @@ LTLIBMULTITHREAD
LIBMULTITHREAD
LTLIBTHREAD
LIBTHREAD
-LIBPTH_PREFIX
-LTLIBPTH
-LIBPTH
NEXT_AS_FIRST_DIRECTIVE_LOCALE_H
NEXT_LOCALE_H
HAVE_XLOCALE_H
@@ -1334,6 +1332,7 @@ HAVE_FACCESSAT
HAVE_EUIDACCESS
HAVE_DUP3
HAVE_DUP2
+HAVE_COPY_FILE_RANGE
HAVE_CHOWN
GNULIB_WRITE
GNULIB_USLEEP
@@ -1382,16 +1381,20 @@ GNULIB_ENVIRON
GNULIB_DUP3
GNULIB_DUP2
GNULIB_DUP
+GNULIB_COPY_FILE_RANGE
GNULIB_CLOSE
GNULIB_CHOWN
GNULIB_CHDIR
REPLACE_WCTOMB
REPLACE_UNSETENV
+REPLACE_STRTOLD
REPLACE_STRTOD
+REPLACE_SETSTATE
REPLACE_SETENV
REPLACE_REALPATH
REPLACE_REALLOC
REPLACE_RANDOM_R
+REPLACE_RANDOM
REPLACE_QSORT_R
REPLACE_PUTENV
REPLACE_PTSNAME_R
@@ -1399,6 +1402,7 @@ REPLACE_PTSNAME
REPLACE_MKSTEMP
REPLACE_MBTOWC
REPLACE_MALLOC
+REPLACE_INITSTATE
REPLACE_CANONICALIZE_FILE_NAME
REPLACE_CALLOC
HAVE_DECL_UNSETENV
@@ -1407,8 +1411,10 @@ HAVE_SYS_LOADAVG_H
HAVE_STRUCT_RANDOM_DATA
HAVE_STRTOULL
HAVE_STRTOLL
+HAVE_STRTOLD
HAVE_STRTOD
HAVE_DECL_SETSTATE
+HAVE_SETSTATE
HAVE_DECL_SETENV
HAVE_SETENV
HAVE_SECURE_GETENV
@@ -1427,7 +1433,9 @@ HAVE_MKSTEMP
HAVE_MKOSTEMPS
HAVE_MKOSTEMP
HAVE_MKDTEMP
+HAVE_MBTOWC
HAVE_DECL_INITSTATE
+HAVE_INITSTATE
HAVE_GRANTPT
HAVE_GETSUBOPT
HAVE_DECL_GETLOADAVG
@@ -1440,6 +1448,7 @@ GNULIB_UNLOCKPT
GNULIB_SYSTEM_POSIX
GNULIB_STRTOULL
GNULIB_STRTOLL
+GNULIB_STRTOLD
GNULIB_STRTOD
GNULIB_SETENV
GNULIB_SECURE_GETENV
@@ -1563,6 +1572,7 @@ GNULIB_MBRTOWC
GNULIB_MBSINIT
GNULIB_WCTOB
GNULIB_BTOWC
+HAVE_ALLOCA_H
GL_GENERATE_ALLOCA_H_FALSE
GL_GENERATE_ALLOCA_H_TRUE
ALLOCA_H
@@ -1795,10 +1805,9 @@ with_bzip2
with_xz
with_lzma
with_lzip
-enable_rpath
-with_libpth_prefix
with_included_regex
enable_nls
+enable_rpath
with_libiconv_prefix
with_libintl_prefix
with_libseccomp
@@ -2370,7 +2379,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 man-db 2.8.6.1 to adapt to many kinds of systems.
+\`configure' configures man-db 2.8.7 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -2441,7 +2450,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of man-db 2.8.6.1:";;
+ short | recursive ) echo "Configuration of man-db 2.8.7:";;
esac
cat <<\_ACEOF
@@ -2474,7 +2483,7 @@ Optional Features:
HPUX, IRIX, Solaris, BSD)
--disable-manual don't build or install the man-db manual
--disable-largefile omit support for large files
- --enable-threads={posix|solaris|pth|windows}
+ --enable-threads={posix|windows}
specify multithreading API
--disable-threads build without multithread safety
--enable-static[=PKGS] build static libraries [default=no]
@@ -2484,8 +2493,8 @@ Optional Features:
--disable-libtool-lock avoid locking (might break parallel builds)
--enable-mb-groff expect groff with Debian multibyte patch or real
Unicode support
- --disable-rpath do not hardcode runtime library paths
--disable-nls do not use Native Language Support
+ --disable-rpath do not hardcode runtime library paths
Optional Packages:
--with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
@@ -2537,13 +2546,11 @@ Optional Packages:
compression utility
--with-lzip=LZIP use LZIP as Lempel-Ziv-Markov chain-Algorithm
compression utility
- --with-gnu-ld assume the C compiler uses GNU ld [default=no]
- --with-libpth-prefix[=DIR] search for libpth in DIR/include and DIR/lib
- --without-libpth-prefix don't search for libpth 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-gnu-ld assume the C compiler uses GNU ld [default=no]
--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
--with-libintl-prefix[=DIR] search for libintl in DIR/include and DIR/lib
@@ -2641,7 +2648,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-man-db configure 2.8.6.1
+man-db configure 2.8.7
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2894,6 +2901,189 @@ $as_echo "$ac_res" >&6; }
} # ac_fn_c_check_header_compile
+# ac_fn_c_compute_int LINENO EXPR VAR INCLUDES
+# --------------------------------------------
+# Tries to find the compile-time value of EXPR in a program that includes
+# INCLUDES, setting VAR accordingly. Returns whether the value could be
+# computed
+ac_fn_c_compute_int ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ if test "$cross_compiling" = yes; then
+ # Depending upon the size, compute the lo and hi bounds.
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+$4
+int
+main ()
+{
+static int test_array [1 - 2 * !(($2) >= 0)];
+test_array [0] = 0;
+return test_array [0];
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ ac_lo=0 ac_mid=0
+ while :; do
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+$4
+int
+main ()
+{
+static int test_array [1 - 2 * !(($2) <= $ac_mid)];
+test_array [0] = 0;
+return test_array [0];
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ ac_hi=$ac_mid; break
+else
+ 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
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ done
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+$4
+int
+main ()
+{
+static int test_array [1 - 2 * !(($2) < 0)];
+test_array [0] = 0;
+return test_array [0];
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ ac_hi=-1 ac_mid=-1
+ while :; do
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+$4
+int
+main ()
+{
+static int test_array [1 - 2 * !(($2) >= $ac_mid)];
+test_array [0] = 0;
+return test_array [0];
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ ac_lo=$ac_mid; break
+else
+ 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
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ done
+else
+ ac_lo= ac_hi=
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+# Binary search between lo and hi bounds.
+while test "x$ac_lo" != "x$ac_hi"; do
+ as_fn_arith '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo && ac_mid=$as_val
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+$4
+int
+main ()
+{
+static int test_array [1 - 2 * !(($2) <= $ac_mid)];
+test_array [0] = 0;
+return test_array [0];
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ ac_hi=$ac_mid
+else
+ as_fn_arith '(' $ac_mid ')' + 1 && ac_lo=$as_val
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+done
+case $ac_lo in #((
+?*) eval "$3=\$ac_lo"; ac_retval=0 ;;
+'') ac_retval=1 ;;
+esac
+ else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+$4
+static long int longval () { return $2; }
+static unsigned long int ulongval () { return $2; }
+#include <stdio.h>
+#include <stdlib.h>
+int
+main ()
+{
+
+ FILE *f = fopen ("conftest.val", "w");
+ if (! f)
+ return 1;
+ if (($2) < 0)
+ {
+ long int i = longval ();
+ if (i != ($2))
+ return 1;
+ fprintf (f, "%ld", i);
+ }
+ else
+ {
+ unsigned long int i = ulongval ();
+ if (i != ($2))
+ return 1;
+ fprintf (f, "%lu", i);
+ }
+ /* Do not output a trailing newline, as this causes \r\n confusion
+ on some platforms. */
+ return ferror (f) || fclose (f) != 0;
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_run "$LINENO"; then :
+ echo >>conftest.val; read $3 <conftest.val; ac_retval=0
+else
+ ac_retval=1
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
+rm -f conftest.val
+
+ fi
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+ as_fn_set_status $ac_retval
+
+} # ac_fn_c_compute_int
+
# ac_fn_c_try_link LINENO
# -----------------------
# Try to link conftest.$ac_ext, and return whether this succeeded.
@@ -3107,189 +3297,6 @@ $as_echo "$ac_res" >&6; }
} # ac_fn_c_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
-# INCLUDES, setting VAR accordingly. Returns whether the value could be
-# computed
-ac_fn_c_compute_int ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- if test "$cross_compiling" = yes; then
- # Depending upon the size, compute the lo and hi bounds.
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-$4
-int
-main ()
-{
-static int test_array [1 - 2 * !(($2) >= 0)];
-test_array [0] = 0;
-return test_array [0];
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_lo=0 ac_mid=0
- while :; do
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-$4
-int
-main ()
-{
-static int test_array [1 - 2 * !(($2) <= $ac_mid)];
-test_array [0] = 0;
-return test_array [0];
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_hi=$ac_mid; break
-else
- 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
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- done
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-$4
-int
-main ()
-{
-static int test_array [1 - 2 * !(($2) < 0)];
-test_array [0] = 0;
-return test_array [0];
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_hi=-1 ac_mid=-1
- while :; do
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-$4
-int
-main ()
-{
-static int test_array [1 - 2 * !(($2) >= $ac_mid)];
-test_array [0] = 0;
-return test_array [0];
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_lo=$ac_mid; break
-else
- 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
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- done
-else
- ac_lo= ac_hi=
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-# Binary search between lo and hi bounds.
-while test "x$ac_lo" != "x$ac_hi"; do
- as_fn_arith '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo && ac_mid=$as_val
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-$4
-int
-main ()
-{
-static int test_array [1 - 2 * !(($2) <= $ac_mid)];
-test_array [0] = 0;
-return test_array [0];
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_hi=$ac_mid
-else
- as_fn_arith '(' $ac_mid ')' + 1 && ac_lo=$as_val
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-done
-case $ac_lo in #((
-?*) eval "$3=\$ac_lo"; ac_retval=0 ;;
-'') ac_retval=1 ;;
-esac
- else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-$4
-static long int longval () { return $2; }
-static unsigned long int ulongval () { return $2; }
-#include <stdio.h>
-#include <stdlib.h>
-int
-main ()
-{
-
- FILE *f = fopen ("conftest.val", "w");
- if (! f)
- return 1;
- if (($2) < 0)
- {
- long int i = longval ();
- if (i != ($2))
- return 1;
- fprintf (f, "%ld", i);
- }
- else
- {
- unsigned long int i = ulongval ();
- if (i != ($2))
- return 1;
- fprintf (f, "%lu", i);
- }
- /* Do not output a trailing newline, as this causes \r\n confusion
- on some platforms. */
- return ferror (f) || fclose (f) != 0;
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
- echo >>conftest.val; read $3 <conftest.val; ac_retval=0
-else
- ac_retval=1
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
- conftest.$ac_objext conftest.beam conftest.$ac_ext
-rm -f conftest.val
-
- fi
- eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
- as_fn_set_status $ac_retval
-
-} # ac_fn_c_compute_int
-
# ac_fn_c_check_member LINENO AGGR MEMBER VAR INCLUDES
# ----------------------------------------------------
# Tries to find if the field MEMBER exists in type AGGR, after including
@@ -3350,7 +3357,7 @@ 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 man-db $as_me 2.8.6.1, which was
+It was created by man-db $as_me 2.8.7, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
@@ -3695,6 +3702,7 @@ as_fn_append ac_header_list " langinfo.h"
as_fn_append ac_func_list " lchmod"
as_fn_append ac_header_list " limits.h"
as_fn_append ac_header_list " xlocale.h"
+as_fn_append ac_header_list " threads.h"
as_fn_append ac_func_list " lstat"
as_fn_append ac_func_list " mbsinit"
as_fn_append ac_func_list " mbrtowc"
@@ -4317,7 +4325,7 @@ fi
# Define the identity of the package.
PACKAGE='man-db'
- VERSION='2.8.6.1'
+ VERSION='2.8.7'
cat >>confdefs.h <<_ACEOF
@@ -6601,8 +6609,8 @@ case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac
# Define below date and version information to be put into man pages etc.
-date=2019-08-05
-roff_version=`echo 2.8.6.1 | sed 's/-/\\-/g'`
+date=2019-08-26
+roff_version=`echo 2.8.7 | sed 's/-/\\-/g'`
# Explicitly check for pkg-config early on, since otherwise the conditional
# calls in MAN_ARG_SYSTEMDTMPFILESDIR and MAN_ARG_SYSTEMDSYSTEMUNITDIR are
@@ -7746,6 +7754,7 @@ fi
+
# Check whether --enable-threads was given.
if test "${enable_threads+set}" = set; then :
enableval=$enable_threads; gl_use_threads=$enableval
@@ -7754,13 +7763,20 @@ else
gl_use_threads="$gl_use_threads_default"
else
case "$host_os" in
- osf*) gl_use_threads=no ;;
- cygwin*)
+ osf*) gl_use_threads=no ;;
+ cygwin*)
case `uname -r` in
1.[0-5].*) gl_use_threads=no ;;
*) gl_use_threads=yes ;;
esac
;;
+ mingw*)
+ case "$gl_use_winpthreads_default" in
+ yes) gl_use_threads=posix ;;
+ no) gl_use_threads=windows ;;
+ *) gl_use_threads=yes ;;
+ esac
+ ;;
*) gl_use_threads=yes ;;
esac
fi
@@ -7898,6 +7914,7 @@ fi
# Code from module malloc-gnu:
# Code from module malloc-posix:
# Code from module malloca:
+ # Code from module manywarnings:
# Code from module map:
# Code from module mbrtowc:
# Code from module mbsinit:
@@ -8015,6 +8032,10 @@ fi
# Code from module wchar:
# Code from module wcrtomb:
# Code from module wctype-h:
+ # Code from module windows-mutex:
+ # Code from module windows-once:
+ # Code from module windows-recmutex:
+ # Code from module windows-rwlock:
# Code from module xalloc:
# Code from module xalloc-die:
# Code from module xalloc-oversized:
@@ -8169,56 +8190,9 @@ case $host_os in
ultrix4.3*)
CFLAGS="$CFLAGS -YPOSIX"
;;
- *darwin*)
- CFLAGS="$CFLAGS -Wl,-flat_namespace,-undefined,suppress"
- ;;
esac
-if test "$GCC" = yes
-then
-
- 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
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler handles -Werror -Wunknown-warning-option" >&5
-$as_echo_n "checking whether C compiler handles -Werror -Wunknown-warning-option... " >&6; }
-if ${gl_cv_warn_c__Werror__Wunknown_warning_option+:} false; then :
- $as_echo_n "(cached) " >&6
-else
-
- 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
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- gl_cv_warn_c__Werror__Wunknown_warning_option=yes
-else
- gl_cv_warn_c__Werror__Wunknown_warning_option=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
- CFLAGS="$gl_save_compiler_FLAGS"
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_warn_c__Werror__Wunknown_warning_option" >&5
-$as_echo "$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
- gl_unknown_warnings_are_errors=
-fi
+# Enable all reasonable GCC warnings.
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
@@ -8228,16 +8202,16 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
+ if test -n "$GCC"; then
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler handles -W" >&5
-$as_echo_n "checking whether C compiler handles -W... " >&6; }
-if ${gl_cv_warn_c__W+:} false; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -Wno-missing-field-initializers is supported" >&5
+$as_echo_n "checking whether -Wno-missing-field-initializers is supported... " >&6; }
+if ${gl_cv_cc_nomfi_supported+:} false; then :
$as_echo_n "(cached) " >&6
else
-
- gl_save_compiler_FLAGS="$CFLAGS"
- as_fn_append CFLAGS " $gl_unknown_warnings_are_errors -W"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ gl_save_CFLAGS="$CFLAGS"
+ CFLAGS="$CFLAGS -W -Werror -Wno-missing-field-initializers"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
@@ -8248,35 +8222,34 @@ main ()
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- gl_cv_warn_c__W=yes
+if ac_fn_c_try_compile "$LINENO"; then :
+ gl_cv_cc_nomfi_supported=yes
else
- gl_cv_warn_c__W=no
+ gl_cv_cc_nomfi_supported=no
fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
- CFLAGS="$gl_save_compiler_FLAGS"
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ CFLAGS="$gl_save_CFLAGS"
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_warn_c__W" >&5
-$as_echo "$gl_cv_warn_c__W" >&6; }
-if test "x$gl_cv_warn_c__W" = xyes; then :
- as_fn_append WARN_CFLAGS " -W"
-fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_nomfi_supported" >&5
+$as_echo "$gl_cv_cc_nomfi_supported" >&6; }
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler handles -Wpointer-arith" >&5
-$as_echo_n "checking whether C compiler handles -Wpointer-arith... " >&6; }
-if ${gl_cv_warn_c__Wpointer_arith+:} false; then :
+ if test "$gl_cv_cc_nomfi_supported" = yes; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -Wno-missing-field-initializers is needed" >&5
+$as_echo_n "checking whether -Wno-missing-field-initializers is needed... " >&6; }
+if ${gl_cv_cc_nomfi_needed+:} false; then :
$as_echo_n "(cached) " >&6
else
-
- gl_save_compiler_FLAGS="$CFLAGS"
- as_fn_append CFLAGS " $gl_unknown_warnings_are_errors -Wpointer-arith"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ gl_save_CFLAGS="$CFLAGS"
+ CFLAGS="$CFLAGS -W -Werror"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
+int f (void)
+ {
+ typedef struct { int a; int b; } s_t;
+ s_t s1 = { 0, };
+ return s1.b;
+ }
int
main ()
@@ -8286,34 +8259,27 @@ main ()
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- gl_cv_warn_c__Wpointer_arith=yes
+if ac_fn_c_try_compile "$LINENO"; then :
+ gl_cv_cc_nomfi_needed=no
else
- gl_cv_warn_c__Wpointer_arith=no
+ gl_cv_cc_nomfi_needed=yes
fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
- CFLAGS="$gl_save_compiler_FLAGS"
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ CFLAGS="$gl_save_CFLAGS"
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_warn_c__Wpointer_arith" >&5
-$as_echo "$gl_cv_warn_c__Wpointer_arith" >&6; }
-if test "x$gl_cv_warn_c__Wpointer_arith" = xyes; then :
- as_fn_append WARN_CFLAGS " -Wpointer-arith"
-fi
-
-
-
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_nomfi_needed" >&5
+$as_echo "$gl_cv_cc_nomfi_needed" >&6; }
+ fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler handles -Wwrite-strings" >&5
-$as_echo_n "checking whether C compiler handles -Wwrite-strings... " >&6; }
-if ${gl_cv_warn_c__Wwrite_strings+:} false; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -Wuninitialized is supported" >&5
+$as_echo_n "checking whether -Wuninitialized is supported... " >&6; }
+if ${gl_cv_cc_uninitialized_supported+:} false; then :
$as_echo_n "(cached) " >&6
else
-
- gl_save_compiler_FLAGS="$CFLAGS"
- as_fn_append CFLAGS " $gl_unknown_warnings_are_errors -Wwrite-strings"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ gl_save_CFLAGS="$CFLAGS"
+ CFLAGS="$CFLAGS -Werror -Wuninitialized"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
@@ -8324,109 +8290,293 @@ main ()
return 0;
}
_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- gl_cv_warn_c__Wwrite_strings=yes
+if ac_fn_c_try_compile "$LINENO"; then :
+ gl_cv_cc_uninitialized_supported=yes
else
- gl_cv_warn_c__Wwrite_strings=no
+ gl_cv_cc_uninitialized_supported=no
fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
- CFLAGS="$gl_save_compiler_FLAGS"
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ CFLAGS="$gl_save_CFLAGS"
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_warn_c__Wwrite_strings" >&5
-$as_echo "$gl_cv_warn_c__Wwrite_strings" >&6; }
-if test "x$gl_cv_warn_c__Wwrite_strings" = xyes; then :
- as_fn_append WARN_CFLAGS " -Wwrite-strings"
-fi
-
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_uninitialized_supported" >&5
+$as_echo "$gl_cv_cc_uninitialized_supported" >&6; }
+ fi
+ # List all gcc warning categories.
+ # To compare this list to your installed GCC's, run this Bash command:
+ #
+ # comm -3 \
+ # <((sed -n 's/^ *\(-[^ 0-9][^ ]*\) .*/\1/p' manywarnings.m4; \
+ # awk '/^[^#]/ {print warnings}' ../build-aux/gcc-warning.spec) | sort) \
+ # <(LC_ALL=C gcc --help=warnings | sed -n 's/^ \(-[^ ]*\) .*/\1/p' | sort)
+
+ gl_manywarn_set=
+ for gl_manywarn_item in -fno-common \
+ -W \
+ -Wabsolute-value \
+ -Waddress \
+ -Waddress-of-packed-member \
+ -Waggressive-loop-optimizations \
+ -Wall \
+ -Wattribute-warning \
+ -Wattributes \
+ -Wbad-function-cast \
+ -Wbool-compare \
+ -Wbool-operation \
+ -Wbuiltin-declaration-mismatch \
+ -Wbuiltin-macro-redefined \
+ -Wcannot-profile \
+ -Wcast-align \
+ -Wcast-align=strict \
+ -Wcast-function-type \
+ -Wchar-subscripts \
+ -Wclobbered \
+ -Wcomment \
+ -Wcomments \
+ -Wcoverage-mismatch \
+ -Wcpp \
+ -Wdangling-else \
+ -Wdate-time \
+ -Wdeprecated \
+ -Wdeprecated-declarations \
+ -Wdesignated-init \
+ -Wdisabled-optimization \
+ -Wdiscarded-array-qualifiers \
+ -Wdiscarded-qualifiers \
+ -Wdiv-by-zero \
+ -Wdouble-promotion \
+ -Wduplicated-branches \
+ -Wduplicated-cond \
+ -Wduplicate-decl-specifier \
+ -Wempty-body \
+ -Wendif-labels \
+ -Wenum-compare \
+ -Wexpansion-to-defined \
+ -Wextra \
+ -Wformat-contains-nul \
+ -Wformat-extra-args \
+ -Wformat-nonliteral \
+ -Wformat-security \
+ -Wformat-signedness \
+ -Wformat-y2k \
+ -Wformat-zero-length \
+ -Wframe-address \
+ -Wfree-nonheap-object \
+ -Whsa \
+ -Wif-not-aligned \
+ -Wignored-attributes \
+ -Wignored-qualifiers \
+ -Wimplicit \
+ -Wimplicit-function-declaration \
+ -Wimplicit-int \
+ -Wincompatible-pointer-types \
+ -Winit-self \
+ -Winline \
+ -Wint-conversion \
+ -Wint-in-bool-context \
+ -Wint-to-pointer-cast \
+ -Winvalid-memory-model \
+ -Winvalid-pch \
+ -Wlogical-not-parentheses \
+ -Wlogical-op \
+ -Wmain \
+ -Wmaybe-uninitialized \
+ -Wmemset-elt-size \
+ -Wmemset-transposed-args \
+ -Wmisleading-indentation \
+ -Wmissing-attributes \
+ -Wmissing-braces \
+ -Wmissing-declarations \
+ -Wmissing-field-initializers \
+ -Wmissing-include-dirs \
+ -Wmissing-parameter-type \
+ -Wmissing-profile \
+ -Wmissing-prototypes \
+ -Wmultichar \
+ -Wmultistatement-macros \
+ -Wnarrowing \
+ -Wnested-externs \
+ -Wnonnull \
+ -Wnonnull-compare \
+ -Wnull-dereference \
+ -Wodr \
+ -Wold-style-declaration \
+ -Wold-style-definition \
+ -Wopenmp-simd \
+ -Woverflow \
+ -Woverlength-strings \
+ -Woverride-init \
+ -Wpacked \
+ -Wpacked-bitfield-compat \
+ -Wpacked-not-aligned \
+ -Wparentheses \
+ -Wpointer-arith \
+ -Wpointer-compare \
+ -Wpointer-sign \
+ -Wpointer-to-int-cast \
+ -Wpragmas \
+ -Wpsabi \
+ -Wrestrict \
+ -Wreturn-local-addr \
+ -Wreturn-type \
+ -Wscalar-storage-order \
+ -Wsequence-point \
+ -Wshadow \
+ -Wshift-count-negative \
+ -Wshift-count-overflow \
+ -Wshift-negative-value \
+ -Wsizeof-array-argument \
+ -Wsizeof-pointer-div \
+ -Wsizeof-pointer-memaccess \
+ -Wstack-protector \
+ -Wstrict-aliasing \
+ -Wstrict-overflow \
+ -Wstrict-prototypes \
+ -Wstringop-truncation \
+ -Wsuggest-attribute=cold \
+ -Wsuggest-attribute=const \
+ -Wsuggest-attribute=format \
+ -Wsuggest-attribute=malloc \
+ -Wsuggest-attribute=noreturn \
+ -Wsuggest-attribute=pure \
+ -Wsuggest-final-methods \
+ -Wsuggest-final-types \
+ -Wswitch \
+ -Wswitch-bool \
+ -Wswitch-unreachable \
+ -Wsync-nand \
+ -Wsystem-headers \
+ -Wtautological-compare \
+ -Wtrampolines \
+ -Wtrigraphs \
+ -Wtype-limits \
+ -Wuninitialized \
+ -Wunknown-pragmas \
+ -Wunsafe-loop-optimizations \
+ -Wunused \
+ -Wunused-but-set-parameter \
+ -Wunused-but-set-variable \
+ -Wunused-function \
+ -Wunused-label \
+ -Wunused-local-typedefs \
+ -Wunused-macros \
+ -Wunused-parameter \
+ -Wunused-result \
+ -Wunused-value \
+ -Wunused-variable \
+ -Wvarargs \
+ -Wvariadic-macros \
+ -Wvector-operation-performance \
+ -Wvla \
+ -Wvolatile-register-var \
+ -Wwrite-strings \
+ \
+ ; do
+ gl_manywarn_set="$gl_manywarn_set $gl_manywarn_item"
+ done
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler handles -Wstrict-prototypes" >&5
-$as_echo_n "checking whether C compiler handles -Wstrict-prototypes... " >&6; }
-if ${gl_cv_warn_c__Wstrict_prototypes+:} false; then :
- $as_echo_n "(cached) " >&6
-else
-
- gl_save_compiler_FLAGS="$CFLAGS"
- as_fn_append CFLAGS " $gl_unknown_warnings_are_errors -Wstrict-prototypes"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
+ # gcc --help=warnings outputs an unusual form for these options; list
+ # them here so that the above 'comm' command doesn't report a false match.
+ # Would prefer "min (PTRDIFF_MAX, SIZE_MAX)", but it must be a literal.
+ # Also, AC_COMPUTE_INT requires it to fit in a long; it is 2**63 on
+ # the only platforms where it does not fit in a long, so make that
+ # a special case.
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking max safe object size" >&5
+$as_echo_n "checking max safe object size... " >&6; }
+ if ac_fn_c_compute_int "$LINENO" "LONG_MAX < (PTRDIFF_MAX < (size_t) -1 ? PTRDIFF_MAX : (size_t) -1)
+ ? -1
+ : PTRDIFF_MAX < (size_t) -1 ? (long) PTRDIFF_MAX : (long) (size_t) -1" "gl_alloc_max" "#include <limits.h>
+ #include <stddef.h>
+ #include <stdint.h>
+ "; then :
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- gl_cv_warn_c__Wstrict_prototypes=yes
else
- gl_cv_warn_c__Wstrict_prototypes=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
- CFLAGS="$gl_save_compiler_FLAGS"
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_warn_c__Wstrict_prototypes" >&5
-$as_echo "$gl_cv_warn_c__Wstrict_prototypes" >&6; }
-if test "x$gl_cv_warn_c__Wstrict_prototypes" = xyes; then :
- as_fn_append WARN_CFLAGS " -Wstrict-prototypes"
+ gl_alloc_max=2147483647
fi
+ case $gl_alloc_max in
+ -1) gl_alloc_max=9223372036854775807;;
+ esac
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_alloc_max" >&5
+$as_echo "$gl_alloc_max" >&6; }
+ gl_manywarn_set="$gl_manywarn_set -Walloc-size-larger-than=$gl_alloc_max"
+ gl_manywarn_set="$gl_manywarn_set -Warray-bounds=2"
+ gl_manywarn_set="$gl_manywarn_set -Wattribute-alias=2"
+ gl_manywarn_set="$gl_manywarn_set -Wformat-overflow=2"
+ gl_manywarn_set="$gl_manywarn_set -Wformat-truncation=2"
+ gl_manywarn_set="$gl_manywarn_set -Wimplicit-fallthrough=5"
+ gl_manywarn_set="$gl_manywarn_set -Wnormalized=nfc"
+ gl_manywarn_set="$gl_manywarn_set -Wshift-overflow=2"
+ gl_manywarn_set="$gl_manywarn_set -Wstringop-overflow=2"
+ gl_manywarn_set="$gl_manywarn_set -Wunused-const-variable=2"
+ gl_manywarn_set="$gl_manywarn_set -Wvla-larger-than=4031"
+
+ # These are needed for older GCC versions.
+ if test -n "$GCC"; then
+ case `($CC --version) 2>/dev/null` in
+ 'gcc (GCC) '[0-3].* | \
+ 'gcc (GCC) '4.[0-7].*)
+ gl_manywarn_set="$gl_manywarn_set -fdiagnostics-show-option"
+ gl_manywarn_set="$gl_manywarn_set -funit-at-a-time"
+ ;;
+ esac
+ fi
+ # Disable specific options as needed.
+ if test "$gl_cv_cc_nomfi_needed" = yes; then
+ gl_manywarn_set="$gl_manywarn_set -Wno-missing-field-initializers"
+ fi
+ if test "$gl_cv_cc_uninitialized_supported" = no; then
+ gl_manywarn_set="$gl_manywarn_set -Wno-uninitialized"
+ fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler handles -Wshadow" >&5
-$as_echo_n "checking whether C compiler handles -Wshadow... " >&6; }
-if ${gl_cv_warn_c__Wshadow+:} false; then :
- $as_echo_n "(cached) " >&6
-else
+ warnings=$gl_manywarn_set
- gl_save_compiler_FLAGS="$CFLAGS"
- as_fn_append CFLAGS " $gl_unknown_warnings_are_errors -Wshadow"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end 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
-int
-main ()
-{
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- gl_cv_warn_c__Wshadow=yes
-else
- gl_cv_warn_c__Wshadow=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
- CFLAGS="$gl_save_compiler_FLAGS"
+nw=
+nw="$nw -Wsystem-headers"
+nw="$nw -Wmissing-field-initializers"
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_warn_c__Wshadow" >&5
-$as_echo "$gl_cv_warn_c__Wshadow" >&6; }
-if test "x$gl_cv_warn_c__Wshadow" = xyes; then :
- as_fn_append WARN_CFLAGS " -Wshadow"
-fi
+ gl_warn_set=
+ set x $warnings; shift
+ for gl_warn_item
+ do
+ case " $nw " in
+ *" $gl_warn_item "*)
+ ;;
+ *)
+ gl_warn_set="$gl_warn_set $gl_warn_item"
+ ;;
+ esac
+ done
+ warnings=$gl_warn_set
+for w in $warnings; do
+ 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
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler handles -Wformat-security" >&5
-$as_echo_n "checking whether C compiler handles -Wformat-security... " >&6; }
-if ${gl_cv_warn_c__Wformat_security+:} false; then :
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler handles -Werror -Wunknown-warning-option" >&5
+$as_echo_n "checking whether C compiler handles -Werror -Wunknown-warning-option... " >&6; }
+if ${gl_cv_warn_c__Werror__Wunknown_warning_option+:} false; then :
$as_echo_n "(cached) " >&6
else
gl_save_compiler_FLAGS="$CFLAGS"
- as_fn_append CFLAGS " $gl_unknown_warnings_are_errors -Wformat-security"
+ as_fn_append CFLAGS " $gl_unknown_warnings_are_errors -Werror -Wunknown-warning-option"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -8439,32 +8589,45 @@ main ()
}
_ACEOF
if ac_fn_c_try_link "$LINENO"; then :
- gl_cv_warn_c__Wformat_security=yes
+ gl_cv_warn_c__Werror__Wunknown_warning_option=yes
else
- gl_cv_warn_c__Wformat_security=no
+ gl_cv_warn_c__Werror__Wunknown_warning_option=no
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext conftest.$ac_ext
CFLAGS="$gl_save_compiler_FLAGS"
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_warn_c__Wformat_security" >&5
-$as_echo "$gl_cv_warn_c__Wformat_security" >&6; }
-if test "x$gl_cv_warn_c__Wformat_security" = xyes; then :
- as_fn_append WARN_CFLAGS " -Wformat-security"
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_warn_c__Werror__Wunknown_warning_option" >&5
+$as_echo "$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
+ gl_unknown_warnings_are_errors=
fi
+ 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
+
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler handles -Wredundant-decls" >&5
-$as_echo_n "checking whether C compiler handles -Wredundant-decls... " >&6; }
-if ${gl_cv_warn_c__Wredundant_decls+:} false; then :
+as_gl_Warn=`$as_echo "gl_cv_warn_c_$w" | $as_tr_sh`
+gl_positive="$w"
+case $gl_positive in
+ -Wno-*) gl_positive=-W`expr "X$gl_positive" : 'X-Wno-\(.*\)'` ;;
+esac
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler handles $w" >&5
+$as_echo_n "checking whether C compiler handles $w... " >&6; }
+if eval \${$as_gl_Warn+:} false; then :
$as_echo_n "(cached) " >&6
else
gl_save_compiler_FLAGS="$CFLAGS"
- as_fn_append CFLAGS " $gl_unknown_warnings_are_errors -Wredundant-decls"
+ as_fn_append CFLAGS " $gl_unknown_warnings_are_errors $gl_positive"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -8477,22 +8640,24 @@ main ()
}
_ACEOF
if ac_fn_c_try_link "$LINENO"; then :
- gl_cv_warn_c__Wredundant_decls=yes
+ eval "$as_gl_Warn=yes"
else
- gl_cv_warn_c__Wredundant_decls=no
+ eval "$as_gl_Warn=no"
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext conftest.$ac_ext
CFLAGS="$gl_save_compiler_FLAGS"
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_warn_c__Wredundant_decls" >&5
-$as_echo "$gl_cv_warn_c__Wredundant_decls" >&6; }
-if test "x$gl_cv_warn_c__Wredundant_decls" = xyes; then :
- as_fn_append WARN_CFLAGS " -Wredundant-decls"
+eval ac_res=\$$as_gl_Warn
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+if eval test \"x\$"$as_gl_Warn"\" = x"yes"; then :
+ as_fn_append WARN_CFLAGS " $w"
fi
+done
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler handles -Wno-missing-field-initializers" >&5
@@ -8531,7 +8696,11 @@ if test "x$gl_cv_warn_c__Wno_missing_field_initializers" = xyes; then :
fi
-fi
+# Disable use of VLAs by Gnulib to avoid tripping over -Wvla.
+
+$as_echo "#define GNULIB_NO_VLA 1" >>confdefs.h
+
+
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5
$as_echo_n "checking whether ln -s works... " >&6; }
@@ -12757,6 +12926,12 @@ lt_prog_compiler_static=
lt_prog_compiler_pic='-KPIC'
lt_prog_compiler_static='-static'
;;
+ # flang / f18. f95 an alias for gfortran or flang on Debian
+ flang* | f18* | f95*)
+ lt_prog_compiler_wl='-Wl,'
+ lt_prog_compiler_pic='-fPIC'
+ lt_prog_compiler_static='-static'
+ ;;
# icc used to be incompatible with GCC.
# ICC 10 doesn't accept -KPIC any more.
icc* | ifort*)
@@ -18232,6 +18407,7 @@ fi
+
LIBC_FATAL_STDERR_=1
export LIBC_FATAL_STDERR_
@@ -19213,6 +19389,8 @@ else
case "$host_os" in
# Guess yes on glibc systems.
*-gnu* | gnu*) gl_cv_func_realpath_works="guessing yes" ;;
+ # Guess yes on musl systems.
+ *-musl*) gl_cv_func_realpath_works="guessing yes" ;;
# Guess no on native Windows.
mingw*) gl_cv_func_realpath_works="guessing no" ;;
# If we don't know, assume the worst.
@@ -19430,6 +19608,7 @@ $as_echo "#define FUNC_REALPATH_WORKS 1" >>confdefs.h
GNULIB_SECURE_GETENV=0;
GNULIB_SETENV=0;
GNULIB_STRTOD=0;
+ GNULIB_STRTOLD=0;
GNULIB_STRTOLL=0;
GNULIB_STRTOULL=0;
GNULIB_SYSTEM_POSIX=0;
@@ -19442,7 +19621,9 @@ $as_echo "#define FUNC_REALPATH_WORKS 1" >>confdefs.h
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;
@@ -19461,8 +19642,10 @@ $as_echo "#define FUNC_REALPATH_WORKS 1" >>confdefs.h
HAVE_SECURE_GETENV=1;
HAVE_SETENV=1;
HAVE_DECL_SETENV=1;
+ HAVE_SETSTATE=1;
HAVE_DECL_SETSTATE=1;
HAVE_STRTOD=1;
+ HAVE_STRTOLD=1;
HAVE_STRTOLL=1;
HAVE_STRTOULL=1;
HAVE_STRUCT_RANDOM_DATA=1;
@@ -19471,6 +19654,7 @@ $as_echo "#define FUNC_REALPATH_WORKS 1" >>confdefs.h
HAVE_DECL_UNSETENV=1;
REPLACE_CALLOC=0;
REPLACE_CANONICALIZE_FILE_NAME=0;
+ REPLACE_INITSTATE=0;
REPLACE_MALLOC=0;
REPLACE_MBTOWC=0;
REPLACE_MKSTEMP=0;
@@ -19478,11 +19662,14 @@ $as_echo "#define FUNC_REALPATH_WORKS 1" >>confdefs.h
REPLACE_PTSNAME_R=0;
REPLACE_PUTENV=0;
REPLACE_QSORT_R=0;
+ REPLACE_RANDOM=0;
REPLACE_RANDOM_R=0;
REPLACE_REALLOC=0;
REPLACE_REALPATH=0;
REPLACE_SETENV=0;
+ REPLACE_SETSTATE=0;
REPLACE_STRTOD=0;
+ REPLACE_STRTOLD=0;
REPLACE_UNSETENV=0;
REPLACE_WCTOMB=0;
@@ -19503,6 +19690,7 @@ $as_echo "#define FUNC_REALPATH_WORKS 1" >>confdefs.h
GNULIB_CHDIR=0;
GNULIB_CHOWN=0;
GNULIB_CLOSE=0;
+ GNULIB_COPY_FILE_RANGE=0;
GNULIB_DUP=0;
GNULIB_DUP2=0;
GNULIB_DUP3=0;
@@ -19551,6 +19739,7 @@ $as_echo "#define FUNC_REALPATH_WORKS 1" >>confdefs.h
GNULIB_USLEEP=0;
GNULIB_WRITE=0;
HAVE_CHOWN=1;
+ HAVE_COPY_FILE_RANGE=1;
HAVE_DUP2=1;
HAVE_DUP3=1;
HAVE_EUIDACCESS=1;
@@ -19756,7 +19945,7 @@ if ${gl_cv_func_chown_follows_symlink+:} false; then :
else
if test "$cross_compiling" = yes; then :
- gl_cv_func_chown_follows_symlink=yes
+ gl_cv_func_chown_follows_symlink="guessing yes"
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -19801,11 +19990,14 @@ fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_chown_follows_symlink" >&5
$as_echo "$gl_cv_func_chown_follows_symlink" >&6; }
- if test $gl_cv_func_chown_follows_symlink = no; then
+ case "$gl_cv_func_chown_follows_symlink" in
+ *yes) ;;
+ *)
$as_echo "#define CHOWN_MODIFIES_SYMLINK 1" >>confdefs.h
- fi
+ ;;
+ esac
@@ -19842,10 +20034,12 @@ else
touch conftest.file && rm -f conftest.link
if test "$cross_compiling" = yes; then :
case "$host_os" in
- # Guess yes on glibc systems.
- *-gnu*) gl_cv_func_chown_slash_works="guessing yes" ;;
- # If we don't know, assume the worst.
- *) gl_cv_func_chown_slash_works="guessing no" ;;
+ # Guess yes on glibc systems.
+ *-gnu*) gl_cv_func_chown_slash_works="guessing yes" ;;
+ # Guess yes on musl systems.
+ *-musl*) gl_cv_func_chown_slash_works="guessing yes" ;;
+ # If we don't know, assume the worst.
+ *) gl_cv_func_chown_slash_works="guessing no" ;;
esac
else
@@ -19896,10 +20090,12 @@ if ${gl_cv_func_chown_ctime_works+:} false; then :
else
if test "$cross_compiling" = yes; then :
case "$host_os" in
- # Guess yes on glibc systems.
- *-gnu*) gl_cv_func_chown_ctime_works="guessing yes" ;;
- # If we don't know, assume the worst.
- *) gl_cv_func_chown_ctime_works="guessing no" ;;
+ # Guess yes on glibc systems.
+ *-gnu*) gl_cv_func_chown_ctime_works="guessing yes" ;;
+ # Guess yes on musl systems.
+ *-musl*) gl_cv_func_chown_ctime_works="guessing yes" ;;
+ # If we don't know, assume the worst.
+ *) gl_cv_func_chown_ctime_works="guessing no" ;;
esac
else
@@ -21292,6 +21488,8 @@ else
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 Cygwin.
cygwin*) gl_cv_func_getcwd_null="guessing yes";;
# If we don't know, assume the worst.
@@ -22784,9 +22982,15 @@ $as_echo "$gl_cv_next_sys_socket_h" >&6; }
if test $ac_cv_header_sys_socket_h = yes; then
HAVE_SYS_SOCKET_H=1
- HAVE_WS2TCPIP_H=0
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
@@ -23259,553 +23463,6 @@ $as_echo "$gl_cv_next_stddef_h" >&6; }
- 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+set}" = set; then :
- withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes
-else
- 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
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld" >&5
-$as_echo_n "checking for ld... " >&6; }
-elif test "$GCC" = yes; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5
-$as_echo_n "checking for ld used by $CC... " >&6; }
-elif test "$with_gnu_ld" = yes; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5
-$as_echo_n "checking for GNU ld... " >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5
-$as_echo_n "checking for non-GNU ld... " >&6; }
-fi
-if test -n "$LD"; then
- # Let the user override the test with a path.
- :
-else
- if ${acl_cv_path_LD+:} false; then :
- $as_echo_n "(cached) " >&6
-else
-
- 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 </dev/null` in
- *GNU* | *'with BFD'*)
- test "$with_gnu_ld" != no && break
- ;;
- *)
- test "$with_gnu_ld" != yes && break
- ;;
- esac
- fi
- done
- IFS="$acl_save_ifs"
- fi
- case $host in
- *-*-aix*)
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#if defined __powerpc64__ || defined _ARCH_PPC64
- 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.$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
- # 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.$ac_ext
- ;;
- esac
-
-fi
-
- LD="$acl_cv_path_LD"
-fi
-if test -n "$LD"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&5
-$as_echo "$LD" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5
-$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; }
-if ${acl_cv_prog_gnu_ld+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- # I'd rather use --version here, but apparently some GNU lds only accept -v.
-case `$LD -v 2>&1 </dev/null` in
-*GNU* | *'with BFD'*)
- acl_cv_prog_gnu_ld=yes
- ;;
-*)
- acl_cv_prog_gnu_ld=no
- ;;
-esac
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $acl_cv_prog_gnu_ld" >&5
-$as_echo "$acl_cv_prog_gnu_ld" >&6; }
-with_gnu_ld=$acl_cv_prog_gnu_ld
-
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shared library run path origin" >&5
-$as_echo_n "checking for shared library run path origin... " >&6; }
-if ${acl_cv_rpath+:} false; then :
- $as_echo_n "(cached) " >&6
-else
-
- 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
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $acl_cv_rpath" >&5
-$as_echo "$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+set}" = set; then :
- enableval=$enable_rpath; :
-else
- enable_rpath=yes
-fi
-
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking 32-bit host C ABI" >&5
-$as_echo_n "checking 32-bit host C ABI... " >&6; }
-if ${gl_cv_host_cpu_c_abi_32bit+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- 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 ;;
- *)
- gl_cv_host_cpu_c_abi_32bit=no ;;
- esac
- else
- case "$host_cpu" in
-
- i[4567]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
- gl_cv_host_cpu_c_abi_32bit=yes
-fi
-rm -f core conftest.err conftest.$ac_objext 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
- gl_cv_host_cpu_c_abi_32bit=yes
-fi
-rm -f core conftest.err conftest.$ac_objext 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
- gl_cv_host_cpu_c_abi_32bit=yes
-fi
-rm -f core conftest.err conftest.$ac_objext 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
- gl_cv_host_cpu_c_abi_32bit=no
-fi
-rm -f core conftest.err conftest.$ac_objext 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
- gl_cv_host_cpu_c_abi_32bit=yes
-fi
-rm -f core conftest.err conftest.$ac_objext 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 _ARCH_PPC64
- int ok;
- #else
- error fail
- #endif
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- gl_cv_host_cpu_c_abi_32bit=no
-else
- gl_cv_host_cpu_c_abi_32bit=yes
-fi
-rm -f core conftest.err conftest.$ac_objext 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
- gl_cv_host_cpu_c_abi_32bit=yes
-fi
-rm -f core conftest.err conftest.$ac_objext 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
- gl_cv_host_cpu_c_abi_32bit=yes
-fi
-rm -f core conftest.err conftest.$ac_objext 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
- gl_cv_host_cpu_c_abi_32bit=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- ;;
-
- *)
- gl_cv_host_cpu_c_abi_32bit=no
- ;;
- esac
- fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_host_cpu_c_abi_32bit" >&5
-$as_echo "$gl_cv_host_cpu_c_abi_32bit" >&6; }
-
- HOST_CPU_C_ABI_32BIT="$gl_cv_host_cpu_c_abi_32bit"
-
-
-
-
-
- case "$host_os" in
- solaris*)
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for 64-bit host" >&5
-$as_echo_n "checking for 64-bit host... " >&6; }
-if ${gl_cv_solaris_64bit+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- 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_solaris_64bit=yes
-else
- gl_cv_solaris_64bit=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_solaris_64bit" >&5
-$as_echo "$gl_cv_solaris_64bit" >&6; };;
- esac
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the common suffixes of directories in the library search path" >&5
-$as_echo_n "checking for the common suffixes of directories in the library search path... " >&6; }
-if ${acl_cv_libdirstems+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- acl_libdirstem=lib
- acl_libdirstem2=
- case "$host_os" in
- solaris*)
- if test $gl_cv_solaris_64bit = yes; then
- acl_libdirstem=lib/64
- case "$host_cpu" in
- sparc*) acl_libdirstem2=lib/sparcv9 ;;
- i*86 | x86_64) acl_libdirstem2=lib/amd64 ;;
- esac
- fi
- ;;
- *)
- if test "$HOST_CPU_C_ABI_32BIT" != yes; then
- searchpath=`(if test -f /usr/bin/gcc \
- && LC_ALL=C /usr/bin/gcc -print-search-dirs >/dev/null 2>/dev/null; then \
- LC_ALL=C /usr/bin/gcc -print-search-dirs; \
- else \
- LC_ALL=C $CC -print-search-dirs; \
- fi) 2>/dev/null \
- | sed -n -e 's,^libraries: ,,p' | sed -e 's,^=,,'`
- if test -n "$searchpath"; then
- acl_save_IFS="${IFS= }"; IFS=":"
- for searchdir in $searchpath; do
- if test -d "$searchdir"; then
- case "$searchdir" in
- */lib64/ | */lib64 ) acl_libdirstem=lib64 ;;
- */../ | */.. )
- # Better ignore directories of this form. They are misleading.
- ;;
- *) searchdir=`cd "$searchdir" && pwd`
- case "$searchdir" in
- */lib64 ) acl_libdirstem=lib64 ;;
- esac ;;
- esac
- fi
- done
- IFS="$acl_save_IFS"
- fi
- fi
- ;;
- esac
- test -n "$acl_libdirstem2" || acl_libdirstem2="$acl_libdirstem"
- acl_cv_libdirstems="$acl_libdirstem,$acl_libdirstem2"
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $acl_cv_libdirstems" >&5
-$as_echo "$acl_cv_libdirstems" >&6; }
- # Decompose acl_cv_libdirstems into acl_libdirstem and acl_libdirstem2.
- acl_libdirstem=`echo "$acl_cv_libdirstems" | sed -e 's/,.*//'`
- acl_libdirstem2=`echo "$acl_cv_libdirstems" | sed -e '/,/s/.*,//'`
@@ -23884,6 +23541,10 @@ fi
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_have_weak" >&5
$as_echo "$gl_cv_have_weak" >&6; }
+ if case "$gl_cv_have_weak" in *yes) true;; *) false;; esac; then
+
+ :
+ fi
if test "$gl_use_threads" = yes || test "$gl_use_threads" = posix; then
# On OSF/1, the compiler needs the flag -pthread or -D_REENTRANT so that
# it groks <pthread.h>. It's added above, in gl_THREADLIB_EARLY_BODY.
@@ -24102,606 +23763,6 @@ $as_echo "#define USE_POSIX_THREADS_WEAK 1" >>confdefs.h
fi
fi
if test -z "$gl_have_pthread"; then
- if test "$gl_use_threads" = yes || test "$gl_use_threads" = solaris; then
- gl_have_solaristhread=
- gl_save_LIBS="$LIBS"
- LIBS="$LIBS -lthread"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-#include <thread.h>
-#include <synch.h>
-
-int
-main ()
-{
-thr_self();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- gl_have_solaristhread=yes
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
- LIBS="$gl_save_LIBS"
- if test -n "$gl_have_solaristhread"; then
- gl_threads_api=solaris
- LIBTHREAD=-lthread
- LTLIBTHREAD=-lthread
- LIBMULTITHREAD="$LIBTHREAD"
- LTLIBMULTITHREAD="$LTLIBTHREAD"
-
-$as_echo "#define USE_SOLARIS_THREADS 1" >>confdefs.h
-
- if case "$gl_cv_have_weak" in *yes) true;; *) false;; esac; then
-
-$as_echo "#define USE_SOLARIS_THREADS_WEAK 1" >>confdefs.h
-
- LIBTHREAD=
- LTLIBTHREAD=
- fi
- fi
- fi
- fi
- if test "$gl_use_threads" = pth; then
- gl_save_CPPFLAGS="$CPPFLAGS"
-
-
-
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to link with libpth" >&5
-$as_echo_n "checking how to link with libpth... " >&6; }
-if ${ac_cv_libpth_libs+:} false; then :
- $as_echo_n "(cached) " >&6
-else
-
-
-
-
-
-
-
- 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\"
-
- exec_prefix="$acl_save_exec_prefix"
- prefix="$acl_save_prefix"
-
-
-# Check whether --with-libpth-prefix was given.
-if test "${with_libpth_prefix+set}" = set; then :
- withval=$with_libpth_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\"
-
- exec_prefix="$acl_save_exec_prefix"
- prefix="$acl_save_prefix"
-
- else
- additional_includedir="$withval/include"
- additional_libdir="$withval/$acl_libdirstem"
- if test "$acl_libdirstem2" != "$acl_libdirstem" \
- && test ! -d "$withval/$acl_libdirstem"; then
- additional_libdir="$withval/$acl_libdirstem2"
- fi
- fi
- fi
-
-fi
-
- LIBPTH=
- LTLIBPTH=
- INCPTH=
- LIBPTH_PREFIX=
- HAVE_LIBPTH=
- rpathdirs=
- ltrpathdirs=
- names_already_handled=
- names_next_round='pth '
- 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" || LIBPTH="${LIBPTH}${LIBPTH:+ }$value"
- eval value=\"\$LTLIB$uppername\"
- test -z "$value" || LTLIBPTH="${LTLIBPTH}${LTLIBPTH:+ }$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
- dir="$additional_libdir"
- if test -n "$acl_shlibext"; then
- if test -f "$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"; 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"; 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"; 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
- if test "X$found_dir" = "X"; then
- for x in $LDFLAGS $LTLIBPTH; 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"; 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"; 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"; 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"; 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
- LTLIBPTH="${LTLIBPTH}${LTLIBPTH:+ }-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"; then
- LIBPTH="${LIBPTH}${LIBPTH:+ }$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
- LIBPTH="${LIBPTH}${LIBPTH:+ }$found_so"
- else
- if test -n "$acl_hardcode_libdir_flag_spec" && test "$acl_hardcode_minus_L" = no; then
- LIBPTH="${LIBPTH}${LIBPTH:+ }$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 $LIBPTH; 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
- LIBPTH="${LIBPTH}${LIBPTH:+ }-L$found_dir"
- fi
- if test "$acl_hardcode_minus_L" != no; then
- LIBPTH="${LIBPTH}${LIBPTH:+ }$found_so"
- else
- LIBPTH="${LIBPTH}${LIBPTH:+ }-l$name"
- fi
- fi
- fi
- fi
- else
- if test "X$found_a" != "X"; then
- LIBPTH="${LIBPTH}${LIBPTH:+ }$found_a"
- else
- LIBPTH="${LIBPTH}${LIBPTH:+ }-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" = 'pth'; then
- LIBPTH_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" = 'pth'; then
- LIBPTH_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 $INCPTH; 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
- INCPTH="${INCPTH}${INCPTH:+ }-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*)
- additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'`
- if test "X$additional_libdir" != "X/usr/$acl_libdirstem" \
- && test "X$additional_libdir" != "X/usr/$acl_libdirstem2"; then
- haveit=
- if test "X$additional_libdir" = "X/usr/local/$acl_libdirstem" \
- || test "X$additional_libdir" = "X/usr/local/$acl_libdirstem2"; 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 $LIBPTH; 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$additional_libdir"; then
- haveit=yes
- break
- fi
- done
- if test -z "$haveit"; then
- if test -d "$additional_libdir"; then
- LIBPTH="${LIBPTH}${LIBPTH:+ }-L$additional_libdir"
- fi
- fi
- haveit=
- for x in $LDFLAGS $LTLIBPTH; 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$additional_libdir"; then
- haveit=yes
- break
- fi
- done
- if test -z "$haveit"; then
- if test -d "$additional_libdir"; then
- LTLIBPTH="${LTLIBPTH}${LTLIBPTH:+ }-L$additional_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*)
- names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'`
- ;;
- *.la)
- names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'`
- ;;
- *)
- LIBPTH="${LIBPTH}${LIBPTH:+ }$dep"
- LTLIBPTH="${LTLIBPTH}${LTLIBPTH:+ }$dep"
- ;;
- esac
- done
- fi
- else
- LIBPTH="${LIBPTH}${LIBPTH:+ }-l$name"
- LTLIBPTH="${LTLIBPTH}${LTLIBPTH:+ }-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"
- LIBPTH="${LIBPTH}${LIBPTH:+ }$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"
- LIBPTH="${LIBPTH}${LIBPTH:+ }$flag"
- done
- fi
- fi
- if test "X$ltrpathdirs" != "X"; then
- for found_dir in $ltrpathdirs; do
- LTLIBPTH="${LTLIBPTH}${LTLIBPTH:+ }-R$found_dir"
- done
- fi
-
-
-
-
-
- ac_cv_libpth_libs="$LIBPTH"
- ac_cv_libpth_ltlibs="$LTLIBPTH"
- ac_cv_libpth_cppflags="$INCPTH"
- ac_cv_libpth_prefix="$LIBPTH_PREFIX"
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_libpth_libs" >&5
-$as_echo "$ac_cv_libpth_libs" >&6; }
- LIBPTH="$ac_cv_libpth_libs"
- LTLIBPTH="$ac_cv_libpth_ltlibs"
- INCPTH="$ac_cv_libpth_cppflags"
- LIBPTH_PREFIX="$ac_cv_libpth_prefix"
-
- for element in $INCPTH; 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
-
-
-
-
- HAVE_LIBPTH=yes
-
-
-
- gl_have_pth=
- gl_save_LIBS="$LIBS"
- LIBS="$LIBS $LIBPTH"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <pth.h>
-int
-main ()
-{
-pth_self();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- gl_have_pth=yes
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
- LIBS="$gl_save_LIBS"
- if test -n "$gl_have_pth"; then
- gl_threads_api=pth
- LIBTHREAD="$LIBPTH"
- LTLIBTHREAD="$LTLIBPTH"
- LIBMULTITHREAD="$LIBTHREAD"
- LTLIBMULTITHREAD="$LTLIBTHREAD"
-
-$as_echo "#define USE_PTH_THREADS 1" >>confdefs.h
-
- if test -n "$LIBMULTITHREAD" || test -n "$LTLIBMULTITHREAD"; then
- if case "$gl_cv_have_weak" in *yes) true;; *) false;; esac; then
-
-$as_echo "#define USE_PTH_THREADS_WEAK 1" >>confdefs.h
-
- LIBTHREAD=
- LTLIBTHREAD=
- fi
- fi
- else
- CPPFLAGS="$gl_save_CPPFLAGS"
- fi
- fi
- if test -z "$gl_have_pthread"; then
case "$gl_use_threads" in
yes | windows | win32) # The 'win32' is for backward compatibility.
if { case "$host_os" in
@@ -24787,11 +23848,11 @@ else
if test "$cross_compiling" = yes; then :
case "$host_os" in
# Guess yes on platforms where we know the result.
- *-gnu* | gnu* | freebsd* | netbsd* | openbsd* \
+ *-gnu* | gnu* | *-musl* | freebsd* | netbsd* | openbsd* \
| hpux* | solaris* | cygwin* | mingw*)
- ac_cv_func_malloc_0_nonnull=yes ;;
+ ac_cv_func_malloc_0_nonnull="guessing yes" ;;
# If we don't know, assume the worst.
- *) ac_cv_func_malloc_0_nonnull=no ;;
+ *) ac_cv_func_malloc_0_nonnull="guessing no" ;;
esac
else
@@ -24828,11 +23889,14 @@ fi
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_malloc_0_nonnull" >&5
$as_echo "$ac_cv_func_malloc_0_nonnull" >&6; }
- if test $ac_cv_func_malloc_0_nonnull = yes; then :
- gl_cv_func_malloc_0_nonnull=1
-else
- gl_cv_func_malloc_0_nonnull=0
-fi
+ case "$ac_cv_func_malloc_0_nonnull" in
+ *yes)
+ gl_cv_func_malloc_0_nonnull=1
+ ;;
+ *)
+ gl_cv_func_malloc_0_nonnull=0
+ ;;
+ esac
cat >>confdefs.h <<_ACEOF
@@ -25537,6 +24601,8 @@ $as_echo "#define HAVE_MAP_ANONYMOUS 1" >>confdefs.h
# memchr should not dereference overestimated length after a match
# https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=521737
# https://sourceware.org/bugzilla/show_bug.cgi?id=10162
+ # memchr should cast the second argument to 'unsigned char'.
+ # This bug exists in Android 4.3.
# Assume that memchr works on platforms that lack mprotect.
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether memchr works" >&5
$as_echo_n "checking whether memchr works... " >&6; }
@@ -25545,10 +24611,12 @@ if ${gl_cv_func_memchr_works+:} false; then :
else
if test "$cross_compiling" = yes; then :
case "$host_os" in
- # Guess yes on native Windows.
- mingw*) gl_cv_func_memchr_works="guessing yes" ;;
- # Be pessimistic for now.
- *) gl_cv_func_memchr_works="guessing no" ;;
+ # Guess no on Android.
+ linux*-android*) gl_cv_func_memchr_works="guessing no" ;;
+ # Guess yes on native Windows.
+ mingw*) gl_cv_func_memchr_works="guessing yes" ;;
+ # Be pessimistic for now.
+ *) gl_cv_func_memchr_works="guessing no" ;;
esac
else
@@ -25601,6 +24669,15 @@ main ()
if (memchr (fence - 1, 0, 3) != fence - 1)
result |= 4;
}
+ /* Test against bug on Android 4.3. */
+ {
+ char input[3];
+ input[0] = 'a';
+ input[1] = 'b';
+ input[2] = 'c';
+ if (memchr (input, 0x789abc00 | 'b', 3) != input + 1)
+ result |= 8;
+ }
return result;
;
@@ -27958,6 +27035,8 @@ else
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, assume the worst.
@@ -28550,9 +27629,11 @@ if ${gl_cv_func_working_utimes+:} false; then :
else
if test "$cross_compiling" = yes; then :
case "$host_os" in
- # Guess no on native Windows.
- mingw*) gl_cv_func_working_utimes="guessing no" ;;
- *) gl_cv_func_working_utimes="guessing no" ;;
+ # Guess yes on musl systems.
+ *-musl*) gl_cv_func_working_utimes="guessing yes" ;;
+ # Guess no on native Windows.
+ mingw*) gl_cv_func_working_utimes="guessing no" ;;
+ *) gl_cv_func_working_utimes="guessing no" ;;
esac
else
@@ -29206,6 +28287,8 @@ else
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";;
@@ -29453,6 +28536,13 @@ else
fi
+ if test $ac_cv_working_alloca_h = yes; then
+ HAVE_ALLOCA_H=1
+ else
+ HAVE_ALLOCA_H=0
+ fi
+
+
@@ -30268,12 +29358,14 @@ if ${gl_cv_struct_dirent_d_ino+:} false; then :
else
if test "$cross_compiling" = yes; then :
case "$host_os" in
- # Guess yes on glibc systems with Linux kernel.
- linux*-gnu*) gl_cv_struct_dirent_d_ino="guessing yes" ;;
- # Guess no on native Windows.
- mingw*) gl_cv_struct_dirent_d_ino="guessing no" ;;
- # If we don't know, assume the worst.
- *) gl_cv_struct_dirent_d_ino="guessing no" ;;
+ # Guess yes on glibc systems with Linux kernel.
+ linux*-gnu*) gl_cv_struct_dirent_d_ino="guessing yes" ;;
+ # Guess yes on musl systems with Linux kernel.
+ linux*-musl*) gl_cv_struct_dirent_d_ino="guessing yes" ;;
+ # Guess no on native Windows.
+ mingw*) gl_cv_struct_dirent_d_ino="guessing no" ;;
+ # If we don't know, assume the worst.
+ *) gl_cv_struct_dirent_d_ino="guessing no" ;;
esac
else
@@ -31426,10 +30518,12 @@ if ${gl_cv_func_fdopendir_works+:} false; then :
else
if test "$cross_compiling" = yes; then :
case "$host_os" in
- # Guess yes on glibc systems.
- *-gnu*) gl_cv_func_fdopendir_works="guessing yes" ;;
- # If we don't know, assume the worst.
- *) gl_cv_func_fdopendir_works="guessing no" ;;
+ # Guess yes on glibc systems.
+ *-gnu*) gl_cv_func_fdopendir_works="guessing yes" ;;
+ # Guess yes on musl systems.
+ *-musl*) gl_cv_func_fdopendir_works="guessing yes" ;;
+ # If we don't know, assume the worst.
+ *) gl_cv_func_fdopendir_works="guessing no" ;;
esac
else
@@ -31837,7 +30931,7 @@ fi
- gl_fnmatch_required_lowercase=`
+ gl_fnmatch_required_lowercase=`
echo $gl_fnmatch_required | LC_ALL=C tr '[A-Z]' '[a-z]'
`
@@ -31858,7 +30952,13 @@ else
gl_fnmatch_gnu_end='#endif'
fi
if test "$cross_compiling" = yes; then :
- eval "$gl_fnmatch_cache_var=\"guessing 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\"" ;;
+ esac
+
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -31961,9 +31061,10 @@ eval ac_res=\$$gl_fnmatch_cache_var
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
$as_echo "$ac_res" >&6; }
eval "gl_fnmatch_result=\"\$$gl_fnmatch_cache_var\""
- if test "$gl_fnmatch_result" != yes; then
- REPLACE_FNMATCH=1
- fi
+ case "$gl_fnmatch_result" in
+ *yes) ;;
+ *) REPLACE_FNMATCH=1 ;;
+ esac
fi
if test $HAVE_FNMATCH = 0 || test $REPLACE_FNMATCH = 1; then
@@ -32247,7 +31348,15 @@ if ${gl_cv_func_futimens_works+:} false; then :
$as_echo_n "(cached) " >&6
else
if test "$cross_compiling" = yes; then :
- gl_cv_func_futimens_works="guessing yes"
+ case "$host_os" in
+ # Guess no on glibc systems.
+ *-gnu* | gnu*) gl_cv_func_futimens_works="guessing no" ;;
+ # Guess no on musl systems.
+ *-musl*) gl_cv_func_futimens_works="guessing no" ;;
+ # Guess yes otherwise.
+ *) gl_cv_func_futimens_works="guessing yes" ;;
+ esac
+
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -32296,9 +31405,12 @@ fi
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_futimens_works" >&5
$as_echo "$gl_cv_func_futimens_works" >&6; }
- if test "$gl_cv_func_futimens_works" = no; then
- REPLACE_FUTIMENS=1
- fi
+ case "$gl_cv_func_futimens_works" in
+ *yes) ;;
+ *)
+ REPLACE_FUTIMENS=1
+ ;;
+ esac
fi
if test $HAVE_FUTIMENS = 0 || test $REPLACE_FUTIMENS = 1; then
@@ -32649,7 +31761,13 @@ else
# Arrange for deletion of the temporary directory this test creates.
ac_clean_files="$ac_clean_files confdir-14B---"
if test "$cross_compiling" = yes; then :
- gl_cv_func_getcwd_abort_bug=yes
+ case "$host_os" in
+ # Guess no on musl systems.
+ *-musl*) gl_cv_func_getcwd_abort_bug="guessing no" ;;
+ # Guess yes otherwise, even on glibc systems.
+ *) gl_cv_func_getcwd_abort_bug="guessing yes"
+ esac
+
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -32778,6 +31896,7 @@ else
else
gl_cv_func_getcwd_abort_bug=no
fi
+
fi
rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
conftest.$ac_objext conftest.beam conftest.$ac_ext
@@ -32787,9 +31906,14 @@ fi
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_getcwd_abort_bug" >&5
$as_echo "$gl_cv_func_getcwd_abort_bug" >&6; }
- if test $gl_cv_func_getcwd_abort_bug = yes; then :
- gl_abort_bug=yes
-fi
+ case "$gl_cv_func_getcwd_abort_bug" in
+ *yes)
+ gl_abort_bug=yes
+ ;;
+ *)
+
+ ;;
+ esac
;;
esac
@@ -32917,8 +32041,8 @@ if ${gl_cv_func_working_getdelim+:} false; then :
$as_echo_n "(cached) " >&6
else
echo fooNbarN | tr -d '\012' | tr N '\012' > conftest.data
- if test "$cross_compiling" = yes; then :
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ if test "$cross_compiling" = yes; then :
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <features.h>
@@ -32933,7 +32057,11 @@ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
$EGREP "Lucky GNU user" >/dev/null 2>&1; then :
gl_cv_func_working_getdelim="guessing yes"
else
- gl_cv_func_working_getdelim="guessing no"
+ case "$host_os" in
+ *-musl*) gl_cv_func_working_getdelim="guessing yes" ;;
+ *) gl_cv_func_working_getdelim="guessing no" ;;
+ esac
+
fi
rm -f conftest*
@@ -32982,13 +32110,13 @@ rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
+
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_working_getdelim" >&5
$as_echo "$gl_cv_func_working_getdelim" >&6; }
case "$gl_cv_func_working_getdelim" in
- *no)
- REPLACE_GETDELIM=1
- ;;
+ *yes) ;;
+ *) REPLACE_GETDELIM=1 ;;
esac
else
HAVE_GETDELIM=0
@@ -33163,8 +32291,8 @@ if ${am_cv_func_working_getline+:} false; then :
$as_echo_n "(cached) " >&6
else
echo fooNbarN | tr -d '\012' | tr N '\012' > conftest.data
- if test "$cross_compiling" = yes; then :
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ if test "$cross_compiling" = yes; then :
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <features.h>
@@ -33179,7 +32307,11 @@ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
$EGREP "Lucky GNU user" >/dev/null 2>&1; then :
am_cv_func_working_getline="guessing yes"
else
- am_cv_func_working_getline="guessing no"
+ case "$host_os" in
+ *-musl*) am_cv_func_working_getline="guessing yes" ;;
+ *) am_cv_func_working_getline="guessing no" ;;
+ esac
+
fi
rm -f conftest*
@@ -33229,6 +32361,7 @@ rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
+
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_func_working_getline" >&5
$as_echo "$am_cv_func_working_getline" >&6; }
@@ -33239,7 +32372,8 @@ $as_echo "$am_cv_func_working_getline" >&6; }
fi
case "$am_cv_func_working_getline" in
- *no)
+ *yes) ;;
+ *)
REPLACE_GETLINE=1
;;
esac
@@ -33565,6 +32699,8 @@ else
case "$host_os" in
# Guess all is fine on glibc systems.
*-gnu* | gnu*) gl_cv_func_gettimeofday_clobber="guessing no" ;;
+ # Guess all is fine on musl systems.
+ *-musl*) gl_cv_func_gettimeofday_clobber="guessing no" ;;
# Guess no on native Windows.
mingw*) gl_cv_func_gettimeofday_clobber="guessing no" ;;
# If we don't know, assume the worst.
@@ -33772,7 +32908,7 @@ else
fi
if test $gl_cv_glob_lists_symlinks = maybe; then
if test "$cross_compiling" = yes; then :
- gl_cv_glob_lists_symlinks=no
+ gl_cv_glob_lists_symlinks="guessing no"
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -33804,9 +32940,10 @@ fi
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_glob_lists_symlinks" >&5
$as_echo "$gl_cv_glob_lists_symlinks" >&6; }
- if test $gl_cv_glob_lists_symlinks = no; then
- REPLACE_GLOB=1
- fi
+ case "$gl_cv_glob_lists_symlinks" in
+ *yes) ;;
+ *) REPLACE_GLOB=1 ;;
+ esac
fi
fi
@@ -34927,11 +34064,11 @@ else
if test "$cross_compiling" = yes; then :
case "$host_os" in
# Guess yes on platforms where we know the result.
- *-gnu* | gnu* | freebsd* | netbsd* | openbsd* \
+ *-gnu* | gnu* | *-musl* | freebsd* | netbsd* | openbsd* \
| hpux* | solaris* | cygwin* | mingw*)
- ac_cv_func_malloc_0_nonnull=yes ;;
+ ac_cv_func_malloc_0_nonnull="guessing yes" ;;
# If we don't know, assume the worst.
- *) ac_cv_func_malloc_0_nonnull=no ;;
+ *) ac_cv_func_malloc_0_nonnull="guessing no" ;;
esac
else
@@ -34968,16 +34105,19 @@ fi
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_malloc_0_nonnull" >&5
$as_echo "$ac_cv_func_malloc_0_nonnull" >&6; }
- if test $ac_cv_func_malloc_0_nonnull = yes; then :
+ case "$ac_cv_func_malloc_0_nonnull" in
+ *yes)
$as_echo "#define HAVE_MALLOC_GNU 1" >>confdefs.h
-else
- $as_echo "#define HAVE_MALLOC_GNU 0" >>confdefs.h
+ ;;
+ *)
+ $as_echo "#define HAVE_MALLOC_GNU 0" >>confdefs.h
REPLACE_MALLOC=1
-fi
+ ;;
+ esac
if test $REPLACE_MALLOC = 1; then
@@ -36326,11 +35466,26 @@ $as_echo "#define GNULIB_TEST_MBSRTOWCS 1" >>confdefs.h
- if false; then
- REPLACE_MBTOWC=1
+ for ac_func in mbtowc
+do :
+ ac_fn_c_check_func "$LINENO" "mbtowc" "ac_cv_func_mbtowc"
+if test "x$ac_cv_func_mbtowc" = xyes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_MBTOWC 1
+_ACEOF
+
+fi
+done
+
+ if test $ac_cv_func_mbtowc = no; then
+ HAVE_MBTOWC=0
+ else
+ if false; then
+ REPLACE_MBTOWC=1
+ fi
fi
- if test $REPLACE_MBTOWC = 1; then
+ if test $HAVE_MBTOWC = 0 || test $REPLACE_MBTOWC = 1; then
@@ -36835,6 +35990,8 @@ else
case "$host_os" in
# Guess yes on glibc systems.
*-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 no on native Windows.
mingw*) gl_cv_func_mkdir_trailing_dot_works="guessing no" ;;
# If we don't know, assume the worst.
@@ -36955,6 +36112,8 @@ else
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, assume the worst.
@@ -39092,6 +38251,8 @@ else
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, assume the worst.
*) gl_cv_func_setenv_works="guessing no" ;;
esac
@@ -39518,6 +38679,8 @@ else
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 no on native Windows.
mingw*) gl_cv_func_sleep_works="guessing no" ;;
# If we don't know, assume the worst.
@@ -41175,6 +40338,8 @@ else
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, assume the worst.
*) gl_cv_func_working_strerror="guessing no" ;;
esac
@@ -42111,9 +41276,6 @@ fi
-
-
-
:
@@ -43221,13 +42383,70 @@ _ACEOF
else
if test $REPLACE_MBSTATE_T = 1; then
REPLACE_WCRTOMB=1
- else
+ fi
+ if test $REPLACE_WCRTOMB = 0; then
+
+
+
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether wcrtomb works in the C locale" >&5
+$as_echo_n "checking whether wcrtomb works in the C locale... " >&6; }
+if ${gl_cv_func_wcrtomb_works+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test "$cross_compiling" = yes; then :
+ case "$host_os" in
+ # Guess no on Android.
+ linux*-android*) gl_cv_func_wcrtomb_works="guessing no";;
+ # Guess yes otherwise.
+ *) gl_cv_func_wcrtomb_works="guessing yes";;
+ esac
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <string.h>
+#include <stdlib.h>
+/* Tru64 with Desktop Toolkit C has a bug: <stdio.h> must be included before
+ <wchar.h>.
+ BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be
+ included before <wchar.h>. */
+#include <stddef.h>
+#include <stdio.h>
+#include <wchar.h>
+int main ()
+{
+ mbstate_t state;
+ char out[64];
+ int count;
+ memset (&state, 0, sizeof (state));
+ out[0] = 'x';
+ count = wcrtomb (out, L'a', &state);
+ return !(count == 1 && out[0] == 'a');
+}
+_ACEOF
+if ac_fn_c_try_run "$LINENO"; then :
+ gl_cv_func_wcrtomb_works=yes
+else
+ gl_cv_func_wcrtomb_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
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether wcrtomb return value is correct" >&5
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_func_wcrtomb_works" >&5
+$as_echo "$gl_cv_func_wcrtomb_works" >&6; }
+ case "$gl_cv_func_wcrtomb_works" in
+ *yes) ;;
+ *) REPLACE_WCRTOMB=1 ;;
+ esac
+ fi
+ if test $REPLACE_WCRTOMB = 0; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether wcrtomb return value is correct" >&5
$as_echo_n "checking whether wcrtomb return value is correct... " >&6; }
if ${gl_cv_func_wcrtomb_retval+:} false; then :
$as_echo_n "(cached) " >&6
@@ -43650,6 +42869,66 @@ $as_echo "$gl_cv_type_wctrans_t" >&6; }
+
+ 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
+
+ case "$host_os" in
+ mingw*)
+
+
+
+
+
+
+
+
+ gl_LIBOBJS="$gl_LIBOBJS windows-rwlock.$ac_objext"
+
+ ;;
+ esac
:
:
@@ -44038,6 +43317,555 @@ fi
+ 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+set}" = set; then :
+ withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes
+else
+ 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
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld" >&5
+$as_echo_n "checking for ld... " >&6; }
+elif test "$GCC" = yes; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5
+$as_echo_n "checking for ld used by $CC... " >&6; }
+elif test "$with_gnu_ld" = yes; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5
+$as_echo_n "checking for GNU ld... " >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5
+$as_echo_n "checking for non-GNU ld... " >&6; }
+fi
+if test -n "$LD"; then
+ # Let the user override the test with a path.
+ :
+else
+ if ${acl_cv_path_LD+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+
+ 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 </dev/null` in
+ *GNU* | *'with BFD'*)
+ test "$with_gnu_ld" != no && break
+ ;;
+ *)
+ test "$with_gnu_ld" != yes && break
+ ;;
+ esac
+ fi
+ done
+ IFS="$acl_save_ifs"
+ fi
+ case $host in
+ *-*-aix*)
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#if defined __powerpc64__ || defined _ARCH_PPC64
+ 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.$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
+ # 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.$ac_ext
+ ;;
+ esac
+
+fi
+
+ LD="$acl_cv_path_LD"
+fi
+if test -n "$LD"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&5
+$as_echo "$LD" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5
+$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; }
+if ${acl_cv_prog_gnu_ld+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ # I'd rather use --version here, but apparently some GNU lds only accept -v.
+case `$LD -v 2>&1 </dev/null` in
+*GNU* | *'with BFD'*)
+ acl_cv_prog_gnu_ld=yes
+ ;;
+*)
+ acl_cv_prog_gnu_ld=no
+ ;;
+esac
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $acl_cv_prog_gnu_ld" >&5
+$as_echo "$acl_cv_prog_gnu_ld" >&6; }
+with_gnu_ld=$acl_cv_prog_gnu_ld
+
+
+
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shared library run path origin" >&5
+$as_echo_n "checking for shared library run path origin... " >&6; }
+if ${acl_cv_rpath+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+
+ 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
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $acl_cv_rpath" >&5
+$as_echo "$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+set}" = set; then :
+ enableval=$enable_rpath; :
+else
+ enable_rpath=yes
+fi
+
+
+
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking 32-bit host C ABI" >&5
+$as_echo_n "checking 32-bit host C ABI... " >&6; }
+if ${gl_cv_host_cpu_c_abi_32bit+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ 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 ;;
+ *)
+ gl_cv_host_cpu_c_abi_32bit=no ;;
+ esac
+ else
+ case "$host_cpu" in
+
+ i[4567]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
+ gl_cv_host_cpu_c_abi_32bit=yes
+fi
+rm -f core conftest.err conftest.$ac_objext 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
+ gl_cv_host_cpu_c_abi_32bit=yes
+fi
+rm -f core conftest.err conftest.$ac_objext 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
+ gl_cv_host_cpu_c_abi_32bit=yes
+fi
+rm -f core conftest.err conftest.$ac_objext 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
+ gl_cv_host_cpu_c_abi_32bit=no
+fi
+rm -f core conftest.err conftest.$ac_objext 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
+ gl_cv_host_cpu_c_abi_32bit=yes
+fi
+rm -f core conftest.err conftest.$ac_objext 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 _ARCH_PPC64
+ int ok;
+ #else
+ error fail
+ #endif
+
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ gl_cv_host_cpu_c_abi_32bit=no
+else
+ gl_cv_host_cpu_c_abi_32bit=yes
+fi
+rm -f core conftest.err conftest.$ac_objext 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
+ gl_cv_host_cpu_c_abi_32bit=yes
+fi
+rm -f core conftest.err conftest.$ac_objext 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
+ gl_cv_host_cpu_c_abi_32bit=yes
+fi
+rm -f core conftest.err conftest.$ac_objext 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
+ gl_cv_host_cpu_c_abi_32bit=yes
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ ;;
+
+ *)
+ gl_cv_host_cpu_c_abi_32bit=no
+ ;;
+ esac
+ fi
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_host_cpu_c_abi_32bit" >&5
+$as_echo "$gl_cv_host_cpu_c_abi_32bit" >&6; }
+
+ HOST_CPU_C_ABI_32BIT="$gl_cv_host_cpu_c_abi_32bit"
+
+
+
+
+
+ case "$host_os" in
+ solaris*)
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for 64-bit host" >&5
+$as_echo_n "checking for 64-bit host... " >&6; }
+if ${gl_cv_solaris_64bit+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ 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_solaris_64bit=yes
+else
+ gl_cv_solaris_64bit=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_solaris_64bit" >&5
+$as_echo "$gl_cv_solaris_64bit" >&6; };;
+ esac
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the common suffixes of directories in the library search path" >&5
+$as_echo_n "checking for the common suffixes of directories in the library search path... " >&6; }
+if ${acl_cv_libdirstems+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ acl_libdirstem=lib
+ acl_libdirstem2=
+ case "$host_os" in
+ solaris*)
+ if test $gl_cv_solaris_64bit = yes; then
+ acl_libdirstem=lib/64
+ case "$host_cpu" in
+ sparc*) acl_libdirstem2=lib/sparcv9 ;;
+ i*86 | x86_64) acl_libdirstem2=lib/amd64 ;;
+ esac
+ fi
+ ;;
+ *)
+ if test "$HOST_CPU_C_ABI_32BIT" != yes; then
+ searchpath=`(if test -f /usr/bin/gcc \
+ && LC_ALL=C /usr/bin/gcc -print-search-dirs >/dev/null 2>/dev/null; then \
+ LC_ALL=C /usr/bin/gcc -print-search-dirs; \
+ else \
+ LC_ALL=C $CC -print-search-dirs; \
+ fi) 2>/dev/null \
+ | sed -n -e 's,^libraries: ,,p' | sed -e 's,^=,,'`
+ if test -n "$searchpath"; then
+ acl_save_IFS="${IFS= }"; IFS=":"
+ for searchdir in $searchpath; do
+ if test -d "$searchdir"; then
+ case "$searchdir" in
+ */lib64/ | */lib64 ) acl_libdirstem=lib64 ;;
+ */../ | */.. )
+ # Better ignore directories of this form. They are misleading.
+ ;;
+ *) searchdir=`cd "$searchdir" && pwd`
+ case "$searchdir" in
+ */lib64 ) acl_libdirstem=lib64 ;;
+ esac ;;
+ esac
+ fi
+ done
+ IFS="$acl_save_IFS"
+ fi
+ fi
+ ;;
+ esac
+ test -n "$acl_libdirstem2" || acl_libdirstem2="$acl_libdirstem"
+ acl_cv_libdirstems="$acl_libdirstem,$acl_libdirstem2"
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $acl_cv_libdirstems" >&5
+$as_echo "$acl_cv_libdirstems" >&6; }
+ # Decompose acl_cv_libdirstems into acl_libdirstem and acl_libdirstem2.
+ acl_libdirstem=`echo "$acl_cv_libdirstems" | sed -e 's/,.*//'`
+ acl_libdirstem2=`echo "$acl_cv_libdirstems" | sed -e '/,/s/.*,//'`
+
+
@@ -47759,7 +47587,7 @@ 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 man-db $as_me 2.8.6.1, which was
+This file was extended by man-db $as_me 2.8.7, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -47825,7 +47653,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-man-db config.status 2.8.6.1
+man-db config.status 2.8.7
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
diff --git a/configure.ac b/configure.ac
index ca12c0a5..a98704da 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2,7 +2,7 @@ dnl Process this file with autoconf to produce a configure script.
m4_pattern_forbid([^MAN_])
# Initialise and check we're in the correct directory.
-AC_INIT([man-db], [2.8.6.1], [cjwatson@debian.org])
+AC_INIT([man-db], [2.8.7], [cjwatson@debian.org])
AC_CONFIG_AUX_DIR([build-aux])
AM_INIT_AUTOMAKE([1.11 -Wall -Wno-override -Werror foreign dist-xz no-dist-gzip parallel-tests])
AM_MAINTAINER_MODE
@@ -16,7 +16,7 @@ AC_CONFIG_HEADER([config.h])
AC_CANONICAL_HOST
# Define below date and version information to be put into man pages etc.
-date=2019-08-05
+date=2019-08-26
AC_SUBST([date])dnl
roff_version=`echo AC_PACKAGE_VERSION | sed 's/-/\\-/g'`
AC_SUBST([roff_version])dnl
@@ -60,25 +60,21 @@ case $host_os in
dnl environment:
CFLAGS="$CFLAGS -YPOSIX"
;;
- *darwin*)
- dnl libman intentionally has an undefined "sandbox" symbol
- dnl which is supplied by each application. The Darwin
- dnl linker refuses to do this by default, and needs some
- dnl help.
- CFLAGS="$CFLAGS -Wl,-flat_namespace,-undefined,suppress"
- ;;
esac
-if test "$GCC" = yes
-then
- gl_WARN_ADD([-W])
- gl_WARN_ADD([-Wpointer-arith])
- gl_WARN_ADD([-Wwrite-strings])
- gl_WARN_ADD([-Wstrict-prototypes])
- gl_WARN_ADD([-Wshadow])
- gl_WARN_ADD([-Wformat-security])
- gl_WARN_ADD([-Wredundant-decls])
- gl_WARN_ADD([-Wno-missing-field-initializers])
-fi
+
+# Enable all reasonable GCC warnings.
+gl_MANYWARN_ALL_GCC([warnings])
+nw=
+nw="$nw -Wsystem-headers"
+nw="$nw -Wmissing-field-initializers"
+gl_MANYWARN_COMPLEMENT([warnings], [$warnings], [$nw])
+for w in $warnings; do
+ gl_WARN_ADD([$w])
+done
+gl_WARN_ADD([-Wno-missing-field-initializers])
+# Disable use of VLAs by Gnulib to avoid tripping over -Wvla.
+AC_DEFINE([GNULIB_NO_VLA], [1], [Define to 1 to disable use of VLAs.])
+
AC_PROG_INSTALL
AC_PROG_LN_S
AM_PROG_AR
diff --git a/docs/Makefile.in b/docs/Makefile.in
index c790b81d..1079ec35 100644
--- a/docs/Makefile.in
+++ b/docs/Makefile.in
@@ -183,6 +183,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/man-arg-automatic-create.m4 \
$(top_srcdir)/gl/m4/ltversion.m4 \
$(top_srcdir)/gl/m4/lt~obsolete.m4 \
$(top_srcdir)/gl/m4/malloc.m4 $(top_srcdir)/gl/m4/malloca.m4 \
+ $(top_srcdir)/gl/m4/manywarnings.m4 \
$(top_srcdir)/gl/m4/mbrtowc.m4 $(top_srcdir)/gl/m4/mbsinit.m4 \
$(top_srcdir)/gl/m4/mbsrtowcs.m4 \
$(top_srcdir)/gl/m4/mbstate_t.m4 $(top_srcdir)/gl/m4/mbtowc.m4 \
@@ -355,6 +356,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
GNULIB_CLOSE = @GNULIB_CLOSE@
GNULIB_CLOSEDIR = @GNULIB_CLOSEDIR@
GNULIB_CONNECT = @GNULIB_CONNECT@
+GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
GNULIB_CTIME = @GNULIB_CTIME@
GNULIB_DIRFD = @GNULIB_DIRFD@
GNULIB_DPRINTF = @GNULIB_DPRINTF@
@@ -562,6 +564,7 @@ GNULIB_STRSIGNAL = @GNULIB_STRSIGNAL@
GNULIB_STRSTR = @GNULIB_STRSTR@
GNULIB_STRTOD = @GNULIB_STRTOD@
GNULIB_STRTOK_R = @GNULIB_STRTOK_R@
+GNULIB_STRTOLD = @GNULIB_STRTOLD@
GNULIB_STRTOLL = @GNULIB_STRTOLL@
GNULIB_STRTOULL = @GNULIB_STRTOULL@
GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@
@@ -636,6 +639,7 @@ GNULIB_WRITE = @GNULIB_WRITE@
GNULIB__EXIT = @GNULIB__EXIT@
GREP = @GREP@
HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
HAVE_ALPHASORT = @HAVE_ALPHASORT@
HAVE_ATOLL = @HAVE_ATOLL@
HAVE_BTOWC = @HAVE_BTOWC@
@@ -643,6 +647,7 @@ HAVE_C99_STDINT_H = @HAVE_C99_STDINT_H@
HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
HAVE_CHOWN = @HAVE_CHOWN@
HAVE_CLOSEDIR = @HAVE_CLOSEDIR@
+HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@
HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
@@ -724,6 +729,7 @@ HAVE_GLOB_H = @HAVE_GLOB_H@
HAVE_GLOB_PATTERN_P = @HAVE_GLOB_PATTERN_P@
HAVE_GRANTPT = @HAVE_GRANTPT@
HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
+HAVE_INITSTATE = @HAVE_INITSTATE@
HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
HAVE_ISWBLANK = @HAVE_ISWBLANK@
HAVE_ISWCNTRL = @HAVE_ISWCNTRL@
@@ -746,6 +752,7 @@ HAVE_MBSINIT = @HAVE_MBSINIT@
HAVE_MBSLEN = @HAVE_MBSLEN@
HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
+HAVE_MBTOWC = @HAVE_MBTOWC@
HAVE_MEMCHR = @HAVE_MEMCHR@
HAVE_MEMPCPY = @HAVE_MEMPCPY@
HAVE_MKDIRAT = @HAVE_MKDIRAT@
@@ -796,6 +803,7 @@ HAVE_SCANDIR = @HAVE_SCANDIR@
HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
HAVE_SETENV = @HAVE_SETENV@
HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
+HAVE_SETSTATE = @HAVE_SETSTATE@
HAVE_SIGACTION = @HAVE_SIGACTION@
HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
@@ -815,6 +823,7 @@ HAVE_STRPBRK = @HAVE_STRPBRK@
HAVE_STRPTIME = @HAVE_STRPTIME@
HAVE_STRSEP = @HAVE_STRSEP@
HAVE_STRTOD = @HAVE_STRTOD@
+HAVE_STRTOLD = @HAVE_STRTOLD@
HAVE_STRTOLL = @HAVE_STRTOLL@
HAVE_STRTOULL = @HAVE_STRTOULL@
HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@
@@ -915,8 +924,6 @@ LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBMULTITHREAD = @LIBMULTITHREAD@
LIBOBJS = @LIBOBJS@
-LIBPTH = @LIBPTH@
-LIBPTH_PREFIX = @LIBPTH_PREFIX@
LIBS = @LIBS@
LIBSOCKET = @LIBSOCKET@
LIBTHREAD = @LIBTHREAD@
@@ -939,7 +946,6 @@ LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBMULTITHREAD = @LTLIBMULTITHREAD@
LTLIBOBJS = @LTLIBOBJS@
-LTLIBPTH = @LTLIBPTH@
LTLIBTHREAD = @LTLIBTHREAD@
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
MAINT = @MAINT@
@@ -1085,6 +1091,7 @@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
REPLACE_GLOB = @REPLACE_GLOB@
REPLACE_GLOB_PATTERN_P = @REPLACE_GLOB_PATTERN_P@
REPLACE_GMTIME = @REPLACE_GMTIME@
+REPLACE_INITSTATE = @REPLACE_INITSTATE@
REPLACE_IOCTL = @REPLACE_IOCTL@
REPLACE_ISATTY = @REPLACE_ISATTY@
REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
@@ -1133,6 +1140,7 @@ REPLACE_PUTENV = @REPLACE_PUTENV@
REPLACE_PWRITE = @REPLACE_PWRITE@
REPLACE_QSORT_R = @REPLACE_QSORT_R@
REPLACE_RAISE = @REPLACE_RAISE@
+REPLACE_RANDOM = @REPLACE_RANDOM@
REPLACE_RANDOM_R = @REPLACE_RANDOM_R@
REPLACE_READ = @REPLACE_READ@
REPLACE_READLINK = @REPLACE_READLINK@
@@ -1146,6 +1154,7 @@ REPLACE_RMDIR = @REPLACE_RMDIR@
REPLACE_SELECT = @REPLACE_SELECT@
REPLACE_SETENV = @REPLACE_SETENV@
REPLACE_SETLOCALE = @REPLACE_SETLOCALE@
+REPLACE_SETSTATE = @REPLACE_SETSTATE@
REPLACE_SLEEP = @REPLACE_SLEEP@
REPLACE_SNPRINTF = @REPLACE_SNPRINTF@
REPLACE_SPRINTF = @REPLACE_SPRINTF@
@@ -1166,6 +1175,7 @@ REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@
REPLACE_STRSTR = @REPLACE_STRSTR@
REPLACE_STRTOD = @REPLACE_STRTOD@
REPLACE_STRTOK_R = @REPLACE_STRTOK_R@
+REPLACE_STRTOLD = @REPLACE_STRTOLD@
REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@
REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@
REPLACE_SYMLINK = @REPLACE_SYMLINK@
diff --git a/docs/man-db.lsm b/docs/man-db.lsm
index c0881949..a1a39247 100644
--- a/docs/man-db.lsm
+++ b/docs/man-db.lsm
@@ -1,7 +1,7 @@
Begin4
Title: man-db
-Version: 2.8.6.1
-Entered-date: 2019-08-05
+Version: 2.8.7
+Entered-date: 2019-08-26
Description: This package provides the man command. This utility is
the primary way of examining the on-line help files
(manual pages). Other utilities provided include the
@@ -19,7 +19,7 @@ Author: jwe@che.utexas.edu (John W Eaton)
cjwatson@debian.org (Colin Watson)
Maintained-by: cjwatson@debian.org (Colin Watson)
Primary-site: https://savannah.nongnu.org/download/man-db/
- 1.8M man-db-2.8.6.1.tar.xz
+ 1.8M man-db-2.8.7.tar.xz
Alternate-site: http://ftp.debian.org/debian/pool/main/m/man-db/
Platforms: Requires GNU groff 1.16.
Optionally uses GDBM or Berkeley DB (any version with 1.85
diff --git a/gl/lib/Makefile.am b/gl/lib/Makefile.am
index 2bb6646e..026abc54 100644
--- a/gl/lib/Makefile.am
+++ b/gl/lib/Makefile.am
@@ -63,6 +63,7 @@
# linkedhash-list \
# localcharset \
# lock \
+# manywarnings \
# memmem \
# minmax \
# mkdtemp \
@@ -165,7 +166,7 @@ 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! */'; \
- cat $(srcdir)/alloca.in.h; \
+ sed -e 's|@''HAVE_ALLOCA_H''@|$(HAVE_ALLOCA_H)|g' < $(srcdir)/alloca.in.h; \
} > $@-t && \
mv -f $@-t $@
else
@@ -1946,6 +1947,7 @@ stdlib.h: stdlib.in.h $(top_builddir)/config.status $(CXXDEFS_H) \
-e 's/@''GNULIB_SECURE_GETENV''@/$(GNULIB_SECURE_GETENV)/g' \
-e 's/@''GNULIB_SETENV''@/$(GNULIB_SETENV)/g' \
-e 's/@''GNULIB_STRTOD''@/$(GNULIB_STRTOD)/g' \
+ -e 's/@''GNULIB_STRTOLD''@/$(GNULIB_STRTOLD)/g' \
-e 's/@''GNULIB_STRTOLL''@/$(GNULIB_STRTOLL)/g' \
-e 's/@''GNULIB_STRTOULL''@/$(GNULIB_STRTOULL)/g' \
-e 's/@''GNULIB_SYSTEM_POSIX''@/$(GNULIB_SYSTEM_POSIX)/g' \
@@ -1959,7 +1961,9 @@ stdlib.h: stdlib.in.h $(top_builddir)/config.status $(CXXDEFS_H) \
-e 's|@''HAVE_DECL_GETLOADAVG''@|$(HAVE_DECL_GETLOADAVG)|g' \
-e 's|@''HAVE_GETSUBOPT''@|$(HAVE_GETSUBOPT)|g' \
-e 's|@''HAVE_GRANTPT''@|$(HAVE_GRANTPT)|g' \
+ -e 's|@''HAVE_INITSTATE''@|$(HAVE_INITSTATE)|g' \
-e 's|@''HAVE_DECL_INITSTATE''@|$(HAVE_DECL_INITSTATE)|g' \
+ -e 's|@''HAVE_MBTOWC''@|$(HAVE_MBTOWC)|g' \
-e 's|@''HAVE_MKDTEMP''@|$(HAVE_MKDTEMP)|g' \
-e 's|@''HAVE_MKOSTEMP''@|$(HAVE_MKOSTEMP)|g' \
-e 's|@''HAVE_MKOSTEMPS''@|$(HAVE_MKOSTEMPS)|g' \
@@ -1977,8 +1981,10 @@ stdlib.h: stdlib.in.h $(top_builddir)/config.status $(CXXDEFS_H) \
-e 's|@''HAVE_RPMATCH''@|$(HAVE_RPMATCH)|g' \
-e 's|@''HAVE_SECURE_GETENV''@|$(HAVE_SECURE_GETENV)|g' \
-e 's|@''HAVE_DECL_SETENV''@|$(HAVE_DECL_SETENV)|g' \
+ -e 's|@''HAVE_SETSTATE''@|$(HAVE_SETSTATE)|g' \
-e 's|@''HAVE_DECL_SETSTATE''@|$(HAVE_DECL_SETSTATE)|g' \
-e 's|@''HAVE_STRTOD''@|$(HAVE_STRTOD)|g' \
+ -e 's|@''HAVE_STRTOLD''@|$(HAVE_STRTOLD)|g' \
-e 's|@''HAVE_STRTOLL''@|$(HAVE_STRTOLL)|g' \
-e 's|@''HAVE_STRTOULL''@|$(HAVE_STRTOULL)|g' \
-e 's|@''HAVE_STRUCT_RANDOM_DATA''@|$(HAVE_STRUCT_RANDOM_DATA)|g' \
@@ -1987,6 +1993,7 @@ stdlib.h: stdlib.in.h $(top_builddir)/config.status $(CXXDEFS_H) \
-e 's|@''HAVE_DECL_UNSETENV''@|$(HAVE_DECL_UNSETENV)|g' \
-e 's|@''REPLACE_CALLOC''@|$(REPLACE_CALLOC)|g' \
-e 's|@''REPLACE_CANONICALIZE_FILE_NAME''@|$(REPLACE_CANONICALIZE_FILE_NAME)|g' \
+ -e 's|@''REPLACE_INITSTATE''@|$(REPLACE_INITSTATE)|g' \
-e 's|@''REPLACE_MALLOC''@|$(REPLACE_MALLOC)|g' \
-e 's|@''REPLACE_MBTOWC''@|$(REPLACE_MBTOWC)|g' \
-e 's|@''REPLACE_MKSTEMP''@|$(REPLACE_MKSTEMP)|g' \
@@ -1994,11 +2001,14 @@ stdlib.h: stdlib.in.h $(top_builddir)/config.status $(CXXDEFS_H) \
-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_REALPATH''@|$(REPLACE_REALPATH)|g' \
-e 's|@''REPLACE_SETENV''@|$(REPLACE_SETENV)|g' \
+ -e 's|@''REPLACE_SETSTATE''@|$(REPLACE_SETSTATE)|g' \
-e 's|@''REPLACE_STRTOD''@|$(REPLACE_STRTOD)|g' \
+ -e 's|@''REPLACE_STRTOLD''@|$(REPLACE_STRTOLD)|g' \
-e 's|@''REPLACE_UNSETENV''@|$(REPLACE_UNSETENV)|g' \
-e 's|@''REPLACE_WCTOMB''@|$(REPLACE_WCTOMB)|g' \
-e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \
@@ -2673,6 +2683,7 @@ unistd.h: unistd.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H
-e 's/@''GNULIB_CHDIR''@/$(GNULIB_CHDIR)/g' \
-e 's/@''GNULIB_CHOWN''@/$(GNULIB_CHOWN)/g' \
-e 's/@''GNULIB_CLOSE''@/$(GNULIB_CLOSE)/g' \
+ -e 's/@''GNULIB_COPY_FILE_RANGE''@/$(GNULIB_COPY_FILE_RANGE)/g' \
-e 's/@''GNULIB_DUP''@/$(GNULIB_DUP)/g' \
-e 's/@''GNULIB_DUP2''@/$(GNULIB_DUP2)/g' \
-e 's/@''GNULIB_DUP3''@/$(GNULIB_DUP3)/g' \
@@ -2723,6 +2734,7 @@ unistd.h: unistd.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H
-e 's/@''GNULIB_WRITE''@/$(GNULIB_WRITE)/g' \
< $(srcdir)/unistd.in.h | \
sed -e 's|@''HAVE_CHOWN''@|$(HAVE_CHOWN)|g' \
+ -e 's|@''HAVE_COPY_FILE_RANGE''@|$(HAVE_COPY_FILE_RANGE)|g' \
-e 's|@''HAVE_DUP2''@|$(HAVE_DUP2)|g' \
-e 's|@''HAVE_DUP3''@|$(HAVE_DUP3)|g' \
-e 's|@''HAVE_EUIDACCESS''@|$(HAVE_EUIDACCESS)|g' \
@@ -3094,6 +3106,42 @@ EXTRA_DIST += wctype.in.h
## end gnulib module wctype-h
+## begin gnulib module windows-mutex
+
+
+EXTRA_DIST += windows-initguard.h windows-mutex.c windows-mutex.h
+
+EXTRA_libgnu_la_SOURCES += windows-mutex.c
+
+## end gnulib module windows-mutex
+
+## begin gnulib module windows-once
+
+
+EXTRA_DIST += windows-once.c windows-once.h
+
+EXTRA_libgnu_la_SOURCES += windows-once.c
+
+## end gnulib module windows-once
+
+## begin gnulib module windows-recmutex
+
+
+EXTRA_DIST += windows-initguard.h windows-recmutex.c windows-recmutex.h
+
+EXTRA_libgnu_la_SOURCES += windows-recmutex.c
+
+## end gnulib module windows-recmutex
+
+## begin gnulib module windows-rwlock
+
+
+EXTRA_DIST += windows-initguard.h windows-rwlock.c windows-rwlock.h
+
+EXTRA_libgnu_la_SOURCES += windows-rwlock.c
+
+## end gnulib module windows-rwlock
+
## begin gnulib module xalloc
libgnu_la_SOURCES += xmalloc.c
diff --git a/gl/lib/Makefile.in b/gl/lib/Makefile.in
index 3433fb81..0141c197 100644
--- a/gl/lib/Makefile.in
+++ b/gl/lib/Makefile.in
@@ -77,6 +77,7 @@
# linkedhash-list \
# localcharset \
# lock \
+# manywarnings \
# memmem \
# minmax \
# mkdtemp \
@@ -283,6 +284,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/man-arg-automatic-create.m4 \
$(top_srcdir)/gl/m4/ltversion.m4 \
$(top_srcdir)/gl/m4/lt~obsolete.m4 \
$(top_srcdir)/gl/m4/malloc.m4 $(top_srcdir)/gl/m4/malloca.m4 \
+ $(top_srcdir)/gl/m4/manywarnings.m4 \
$(top_srcdir)/gl/m4/mbrtowc.m4 $(top_srcdir)/gl/m4/mbsinit.m4 \
$(top_srcdir)/gl/m4/mbsrtowcs.m4 \
$(top_srcdir)/gl/m4/mbstate_t.m4 $(top_srcdir)/gl/m4/mbtowc.m4 \
@@ -499,7 +501,9 @@ am__depfiles_remade = ./$(DEPDIR)/alloca.Plo \
./$(DEPDIR)/utime.Plo ./$(DEPDIR)/utimens.Plo \
./$(DEPDIR)/vasnprintf.Plo ./$(DEPDIR)/vasprintf.Plo \
./$(DEPDIR)/vsnprintf.Plo ./$(DEPDIR)/wcrtomb.Plo \
- ./$(DEPDIR)/wctype-h.Plo ./$(DEPDIR)/xalloc-die.Plo \
+ ./$(DEPDIR)/wctype-h.Plo ./$(DEPDIR)/windows-mutex.Plo \
+ ./$(DEPDIR)/windows-once.Plo ./$(DEPDIR)/windows-recmutex.Plo \
+ ./$(DEPDIR)/windows-rwlock.Plo ./$(DEPDIR)/xalloc-die.Plo \
./$(DEPDIR)/xasprintf.Plo ./$(DEPDIR)/xgetcwd.Plo \
./$(DEPDIR)/xmalloc.Plo ./$(DEPDIR)/xsize.Plo \
./$(DEPDIR)/xstdopen.Plo ./$(DEPDIR)/xstrndup.Plo \
@@ -665,6 +669,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
GNULIB_CLOSE = @GNULIB_CLOSE@
GNULIB_CLOSEDIR = @GNULIB_CLOSEDIR@
GNULIB_CONNECT = @GNULIB_CONNECT@
+GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
GNULIB_CTIME = @GNULIB_CTIME@
GNULIB_DIRFD = @GNULIB_DIRFD@
GNULIB_DPRINTF = @GNULIB_DPRINTF@
@@ -872,6 +877,7 @@ GNULIB_STRSIGNAL = @GNULIB_STRSIGNAL@
GNULIB_STRSTR = @GNULIB_STRSTR@
GNULIB_STRTOD = @GNULIB_STRTOD@
GNULIB_STRTOK_R = @GNULIB_STRTOK_R@
+GNULIB_STRTOLD = @GNULIB_STRTOLD@
GNULIB_STRTOLL = @GNULIB_STRTOLL@
GNULIB_STRTOULL = @GNULIB_STRTOULL@
GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@
@@ -946,6 +952,7 @@ GNULIB_WRITE = @GNULIB_WRITE@
GNULIB__EXIT = @GNULIB__EXIT@
GREP = @GREP@
HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
HAVE_ALPHASORT = @HAVE_ALPHASORT@
HAVE_ATOLL = @HAVE_ATOLL@
HAVE_BTOWC = @HAVE_BTOWC@
@@ -953,6 +960,7 @@ HAVE_C99_STDINT_H = @HAVE_C99_STDINT_H@
HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
HAVE_CHOWN = @HAVE_CHOWN@
HAVE_CLOSEDIR = @HAVE_CLOSEDIR@
+HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@
HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
@@ -1034,6 +1042,7 @@ HAVE_GLOB_H = @HAVE_GLOB_H@
HAVE_GLOB_PATTERN_P = @HAVE_GLOB_PATTERN_P@
HAVE_GRANTPT = @HAVE_GRANTPT@
HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
+HAVE_INITSTATE = @HAVE_INITSTATE@
HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
HAVE_ISWBLANK = @HAVE_ISWBLANK@
HAVE_ISWCNTRL = @HAVE_ISWCNTRL@
@@ -1056,6 +1065,7 @@ HAVE_MBSINIT = @HAVE_MBSINIT@
HAVE_MBSLEN = @HAVE_MBSLEN@
HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
+HAVE_MBTOWC = @HAVE_MBTOWC@
HAVE_MEMCHR = @HAVE_MEMCHR@
HAVE_MEMPCPY = @HAVE_MEMPCPY@
HAVE_MKDIRAT = @HAVE_MKDIRAT@
@@ -1106,6 +1116,7 @@ HAVE_SCANDIR = @HAVE_SCANDIR@
HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
HAVE_SETENV = @HAVE_SETENV@
HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
+HAVE_SETSTATE = @HAVE_SETSTATE@
HAVE_SIGACTION = @HAVE_SIGACTION@
HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
@@ -1125,6 +1136,7 @@ HAVE_STRPBRK = @HAVE_STRPBRK@
HAVE_STRPTIME = @HAVE_STRPTIME@
HAVE_STRSEP = @HAVE_STRSEP@
HAVE_STRTOD = @HAVE_STRTOD@
+HAVE_STRTOLD = @HAVE_STRTOLD@
HAVE_STRTOLL = @HAVE_STRTOLL@
HAVE_STRTOULL = @HAVE_STRTOULL@
HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@
@@ -1225,8 +1237,6 @@ LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBMULTITHREAD = @LIBMULTITHREAD@
LIBOBJS = @LIBOBJS@
-LIBPTH = @LIBPTH@
-LIBPTH_PREFIX = @LIBPTH_PREFIX@
LIBS = @LIBS@
LIBSOCKET = @LIBSOCKET@
LIBTHREAD = @LIBTHREAD@
@@ -1249,7 +1259,6 @@ LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBMULTITHREAD = @LTLIBMULTITHREAD@
LTLIBOBJS = @LTLIBOBJS@
-LTLIBPTH = @LTLIBPTH@
LTLIBTHREAD = @LTLIBTHREAD@
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
MAINT = @MAINT@
@@ -1395,6 +1404,7 @@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
REPLACE_GLOB = @REPLACE_GLOB@
REPLACE_GLOB_PATTERN_P = @REPLACE_GLOB_PATTERN_P@
REPLACE_GMTIME = @REPLACE_GMTIME@
+REPLACE_INITSTATE = @REPLACE_INITSTATE@
REPLACE_IOCTL = @REPLACE_IOCTL@
REPLACE_ISATTY = @REPLACE_ISATTY@
REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
@@ -1443,6 +1453,7 @@ REPLACE_PUTENV = @REPLACE_PUTENV@
REPLACE_PWRITE = @REPLACE_PWRITE@
REPLACE_QSORT_R = @REPLACE_QSORT_R@
REPLACE_RAISE = @REPLACE_RAISE@
+REPLACE_RANDOM = @REPLACE_RANDOM@
REPLACE_RANDOM_R = @REPLACE_RANDOM_R@
REPLACE_READ = @REPLACE_READ@
REPLACE_READLINK = @REPLACE_READLINK@
@@ -1456,6 +1467,7 @@ REPLACE_RMDIR = @REPLACE_RMDIR@
REPLACE_SELECT = @REPLACE_SELECT@
REPLACE_SETENV = @REPLACE_SETENV@
REPLACE_SETLOCALE = @REPLACE_SETLOCALE@
+REPLACE_SETSTATE = @REPLACE_SETSTATE@
REPLACE_SLEEP = @REPLACE_SLEEP@
REPLACE_SNPRINTF = @REPLACE_SNPRINTF@
REPLACE_SPRINTF = @REPLACE_SPRINTF@
@@ -1476,6 +1488,7 @@ REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@
REPLACE_STRSTR = @REPLACE_STRSTR@
REPLACE_STRTOD = @REPLACE_STRTOD@
REPLACE_STRTOK_R = @REPLACE_STRTOK_R@
+REPLACE_STRTOLD = @REPLACE_STRTOLD@
REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@
REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@
REPLACE_SYMLINK = @REPLACE_SYMLINK@
@@ -1717,8 +1730,11 @@ EXTRA_DIST = alloca.c alloca.in.h areadlink.h assure.h openat-priv.h \
utime.in.h utimens.h asnprintf.c float+.h printf-args.c \
printf-args.h printf-parse.c printf-parse.h vasnprintf.c \
vasnprintf.h asprintf.c vasprintf.c verify.h vsnprintf.c \
- wchar.in.h wcrtomb.c wctype.in.h xalloc.h xalloc-oversized.h \
- xgetcwd.h xstdopen.h xalloc.h
+ wchar.in.h wcrtomb.c wctype.in.h 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 xalloc.h \
+ xalloc-oversized.h xgetcwd.h xstdopen.h xalloc.h
BUILT_SOURCES = $(ALLOCA_H) dirent.h $(ERRNO_H) fcntl.h $(FLOAT_H) \
$(FNMATCH_H) $(GETOPT_H) $(GETOPT_CDEFS_H) $(GLOB_H) \
langinfo.h $(LIMITS_H) locale.h signal.h $(STDALIGN_H) \
@@ -1802,7 +1818,8 @@ EXTRA_libgnu_la_SOURCES = alloca.c openat-proc.c btowc.c \
strncasecmp.c strcasestr.c strchrnul.c strdup.c strerror.c \
strerror-override.c strndup.c strnlen.c strsep.c unsetenv.c \
utime.c asnprintf.c printf-args.c printf-parse.c vasnprintf.c \
- asprintf.c vasprintf.c vsnprintf.c wcrtomb.c
+ asprintf.c vasprintf.c vsnprintf.c wcrtomb.c windows-mutex.c \
+ windows-once.c windows-recmutex.c windows-rwlock.c
libgnu_la_LDFLAGS = $(AM_LDFLAGS) -no-undefined $(LIBSOCKET) \
$(LIB_CLOCK_GETTIME) $(LIB_GETLOGIN) $(LIB_NANOSLEEP) \
$(LIB_SELECT) $(LTLIBINTL) $(LTLIBTHREAD)
@@ -2084,6 +2101,10 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/vsnprintf.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wcrtomb.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wctype-h.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/windows-mutex.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/windows-once.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/windows-recmutex.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/windows-rwlock.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xalloc-die.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xasprintf.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xgetcwd.Plo@am__quote@ # am--include-marker
@@ -2514,6 +2535,10 @@ distclean: distclean-recursive
-rm -f ./$(DEPDIR)/vsnprintf.Plo
-rm -f ./$(DEPDIR)/wcrtomb.Plo
-rm -f ./$(DEPDIR)/wctype-h.Plo
+ -rm -f ./$(DEPDIR)/windows-mutex.Plo
+ -rm -f ./$(DEPDIR)/windows-once.Plo
+ -rm -f ./$(DEPDIR)/windows-recmutex.Plo
+ -rm -f ./$(DEPDIR)/windows-rwlock.Plo
-rm -f ./$(DEPDIR)/xalloc-die.Plo
-rm -f ./$(DEPDIR)/xasprintf.Plo
-rm -f ./$(DEPDIR)/xgetcwd.Plo
@@ -2741,6 +2766,10 @@ maintainer-clean: maintainer-clean-recursive
-rm -f ./$(DEPDIR)/vsnprintf.Plo
-rm -f ./$(DEPDIR)/wcrtomb.Plo
-rm -f ./$(DEPDIR)/wctype-h.Plo
+ -rm -f ./$(DEPDIR)/windows-mutex.Plo
+ -rm -f ./$(DEPDIR)/windows-once.Plo
+ -rm -f ./$(DEPDIR)/windows-recmutex.Plo
+ -rm -f ./$(DEPDIR)/windows-rwlock.Plo
-rm -f ./$(DEPDIR)/xalloc-die.Plo
-rm -f ./$(DEPDIR)/xasprintf.Plo
-rm -f ./$(DEPDIR)/xgetcwd.Plo
@@ -2798,7 +2827,7 @@ uninstall-am:
@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@ cat $(srcdir)/alloca.in.h; \
+@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
@@ -3338,6 +3367,7 @@ stdlib.h: stdlib.in.h $(top_builddir)/config.status $(CXXDEFS_H) \
-e 's/@''GNULIB_SECURE_GETENV''@/$(GNULIB_SECURE_GETENV)/g' \
-e 's/@''GNULIB_SETENV''@/$(GNULIB_SETENV)/g' \
-e 's/@''GNULIB_STRTOD''@/$(GNULIB_STRTOD)/g' \
+ -e 's/@''GNULIB_STRTOLD''@/$(GNULIB_STRTOLD)/g' \
-e 's/@''GNULIB_STRTOLL''@/$(GNULIB_STRTOLL)/g' \
-e 's/@''GNULIB_STRTOULL''@/$(GNULIB_STRTOULL)/g' \
-e 's/@''GNULIB_SYSTEM_POSIX''@/$(GNULIB_SYSTEM_POSIX)/g' \
@@ -3351,7 +3381,9 @@ stdlib.h: stdlib.in.h $(top_builddir)/config.status $(CXXDEFS_H) \
-e 's|@''HAVE_DECL_GETLOADAVG''@|$(HAVE_DECL_GETLOADAVG)|g' \
-e 's|@''HAVE_GETSUBOPT''@|$(HAVE_GETSUBOPT)|g' \
-e 's|@''HAVE_GRANTPT''@|$(HAVE_GRANTPT)|g' \
+ -e 's|@''HAVE_INITSTATE''@|$(HAVE_INITSTATE)|g' \
-e 's|@''HAVE_DECL_INITSTATE''@|$(HAVE_DECL_INITSTATE)|g' \
+ -e 's|@''HAVE_MBTOWC''@|$(HAVE_MBTOWC)|g' \
-e 's|@''HAVE_MKDTEMP''@|$(HAVE_MKDTEMP)|g' \
-e 's|@''HAVE_MKOSTEMP''@|$(HAVE_MKOSTEMP)|g' \
-e 's|@''HAVE_MKOSTEMPS''@|$(HAVE_MKOSTEMPS)|g' \
@@ -3369,8 +3401,10 @@ stdlib.h: stdlib.in.h $(top_builddir)/config.status $(CXXDEFS_H) \
-e 's|@''HAVE_RPMATCH''@|$(HAVE_RPMATCH)|g' \
-e 's|@''HAVE_SECURE_GETENV''@|$(HAVE_SECURE_GETENV)|g' \
-e 's|@''HAVE_DECL_SETENV''@|$(HAVE_DECL_SETENV)|g' \
+ -e 's|@''HAVE_SETSTATE''@|$(HAVE_SETSTATE)|g' \
-e 's|@''HAVE_DECL_SETSTATE''@|$(HAVE_DECL_SETSTATE)|g' \
-e 's|@''HAVE_STRTOD''@|$(HAVE_STRTOD)|g' \
+ -e 's|@''HAVE_STRTOLD''@|$(HAVE_STRTOLD)|g' \
-e 's|@''HAVE_STRTOLL''@|$(HAVE_STRTOLL)|g' \
-e 's|@''HAVE_STRTOULL''@|$(HAVE_STRTOULL)|g' \
-e 's|@''HAVE_STRUCT_RANDOM_DATA''@|$(HAVE_STRUCT_RANDOM_DATA)|g' \
@@ -3379,6 +3413,7 @@ stdlib.h: stdlib.in.h $(top_builddir)/config.status $(CXXDEFS_H) \
-e 's|@''HAVE_DECL_UNSETENV''@|$(HAVE_DECL_UNSETENV)|g' \
-e 's|@''REPLACE_CALLOC''@|$(REPLACE_CALLOC)|g' \
-e 's|@''REPLACE_CANONICALIZE_FILE_NAME''@|$(REPLACE_CANONICALIZE_FILE_NAME)|g' \
+ -e 's|@''REPLACE_INITSTATE''@|$(REPLACE_INITSTATE)|g' \
-e 's|@''REPLACE_MALLOC''@|$(REPLACE_MALLOC)|g' \
-e 's|@''REPLACE_MBTOWC''@|$(REPLACE_MBTOWC)|g' \
-e 's|@''REPLACE_MKSTEMP''@|$(REPLACE_MKSTEMP)|g' \
@@ -3386,11 +3421,14 @@ stdlib.h: stdlib.in.h $(top_builddir)/config.status $(CXXDEFS_H) \
-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_REALPATH''@|$(REPLACE_REALPATH)|g' \
-e 's|@''REPLACE_SETENV''@|$(REPLACE_SETENV)|g' \
+ -e 's|@''REPLACE_SETSTATE''@|$(REPLACE_SETSTATE)|g' \
-e 's|@''REPLACE_STRTOD''@|$(REPLACE_STRTOD)|g' \
+ -e 's|@''REPLACE_STRTOLD''@|$(REPLACE_STRTOLD)|g' \
-e 's|@''REPLACE_UNSETENV''@|$(REPLACE_UNSETENV)|g' \
-e 's|@''REPLACE_WCTOMB''@|$(REPLACE_WCTOMB)|g' \
-e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \
@@ -3811,6 +3849,7 @@ unistd.h: unistd.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H
-e 's/@''GNULIB_CHDIR''@/$(GNULIB_CHDIR)/g' \
-e 's/@''GNULIB_CHOWN''@/$(GNULIB_CHOWN)/g' \
-e 's/@''GNULIB_CLOSE''@/$(GNULIB_CLOSE)/g' \
+ -e 's/@''GNULIB_COPY_FILE_RANGE''@/$(GNULIB_COPY_FILE_RANGE)/g' \
-e 's/@''GNULIB_DUP''@/$(GNULIB_DUP)/g' \
-e 's/@''GNULIB_DUP2''@/$(GNULIB_DUP2)/g' \
-e 's/@''GNULIB_DUP3''@/$(GNULIB_DUP3)/g' \
@@ -3861,6 +3900,7 @@ unistd.h: unistd.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H
-e 's/@''GNULIB_WRITE''@/$(GNULIB_WRITE)/g' \
< $(srcdir)/unistd.in.h | \
sed -e 's|@''HAVE_CHOWN''@|$(HAVE_CHOWN)|g' \
+ -e 's|@''HAVE_COPY_FILE_RANGE''@|$(HAVE_COPY_FILE_RANGE)|g' \
-e 's|@''HAVE_DUP2''@|$(HAVE_DUP2)|g' \
-e 's|@''HAVE_DUP3''@|$(HAVE_DUP3)|g' \
-e 's|@''HAVE_EUIDACCESS''@|$(HAVE_EUIDACCESS)|g' \
diff --git a/gl/lib/_Noreturn.h b/gl/lib/_Noreturn.h
index 94fdfaf0..db9b4555 100644
--- a/gl/lib/_Noreturn.h
+++ b/gl/lib/_Noreturn.h
@@ -1,8 +1,27 @@
+/* A C macro for declaring that a function does not return.
+ Copyright (C) 2011-2019 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify 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 <https://www.gnu.org/licenses/>. */
+
#ifndef _Noreturn
-# if 201103 <= (defined __cplusplus ? __cplusplus : 0)
+# if (defined __cplusplus \
+ && ((201103 <= __cplusplus && !(__GNUC__ == 4 && __GNUC_MINOR__ == 7)) \
+ || (defined _MSC_VER && 1900 <= _MSC_VER)))
# define _Noreturn [[noreturn]]
-# elif (201112 <= (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) \
- || 4 < __GNUC__ + (7 <= __GNUC_MINOR__))
+# elif ((!defined __cplusplus || defined __clang__) \
+ && (201112 <= (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) \
+ || 4 < __GNUC__ + (7 <= __GNUC_MINOR__)))
/* _Noreturn works as-is. */
# elif 2 < __GNUC__ + (8 <= __GNUC_MINOR__) || 0x5110 <= __SUNPRO_C
# define _Noreturn __attribute__ ((__noreturn__))
diff --git a/gl/lib/alloca.c b/gl/lib/alloca.c
index ee0f0188..d0476d53 100644
--- a/gl/lib/alloca.c
+++ b/gl/lib/alloca.c
@@ -350,16 +350,16 @@ i00afunc (long *address)
/* There must be at least one stack segment. Therefore it is
a fatal error if "trailer" is null. */
- if (trailer == 0)
+ if (trailer == NULL)
abort ();
/* Discard segments that do not contain our argument address. */
- while (trailer != 0)
+ while (trailer != NULL)
{
block = (long *) trailer->this_address;
size = trailer->this_size;
- if (block == 0 || size == 0)
+ if (block == NULL || size == 0)
abort ();
trailer = (struct stk_trailer *) trailer->link;
if ((block <= address) && (address < (block + size)))
@@ -371,7 +371,7 @@ i00afunc (long *address)
result = address - block;
- if (trailer == 0)
+ if (trailer == NULL)
{
return result;
}
@@ -383,7 +383,7 @@ i00afunc (long *address)
result += trailer->this_size;
trailer = (struct stk_trailer *) trailer->link;
}
- while (trailer != 0);
+ while (trailer != NULL);
/* We are done. Note that if you present a bogus address (one
not in any segment), you will get a different number back, formed
diff --git a/gl/lib/alloca.in.h b/gl/lib/alloca.in.h
index ec81e119..a581d58f 100644
--- a/gl/lib/alloca.in.h
+++ b/gl/lib/alloca.in.h
@@ -36,6 +36,12 @@
#ifndef alloca
# ifdef __GNUC__
+ /* Some version of mingw have an <alloca.h> that causes trouble when
+ included after 'alloca' gets defined as a macro. As a workaround, include
+ this <alloca.h> first and define 'alloca' as a macro afterwards. */
+# if (defined _WIN32 && ! defined __CYGWIN__) && @HAVE_ALLOCA_H@
+# include_next <alloca.h>
+# endif
# define alloca __builtin_alloca
# elif defined _AIX
# define alloca __alloca
diff --git a/gl/lib/areadlink-with-size.c b/gl/lib/areadlink-with-size.c
index eacad3f6..95a28b31 100644
--- a/gl/lib/areadlink-with-size.c
+++ b/gl/lib/areadlink-with-size.c
@@ -26,6 +26,7 @@
#include <limits.h>
#include <stdint.h>
#include <stdlib.h>
+#include <string.h>
#include <unistd.h>
#ifndef SSIZE_MAX
@@ -60,18 +61,28 @@ areadlink_with_size (char const *file, size_t size)
? symlink_max + 1
: INITIAL_LIMIT_BOUND);
+ enum { stackbuf_size = 128 };
+
/* The initial buffer size for the link value. */
- size_t buf_size = size < initial_limit ? size + 1 : initial_limit;
+ size_t buf_size = (size == 0 ? stackbuf_size
+ : size < initial_limit ? size + 1 : initial_limit);
while (1)
{
ssize_t r;
size_t link_length;
- char *buffer = malloc (buf_size);
+ char stackbuf[stackbuf_size];
+ char *buf = stackbuf;
+ char *buffer = NULL;
+
+ if (! (size == 0 && buf_size == stackbuf_size))
+ {
+ buf = buffer = malloc (buf_size);
+ if (!buffer)
+ return NULL;
+ }
- if (buffer == NULL)
- return NULL;
- r = readlink (file, buffer, buf_size);
+ r = readlink (file, buf, buf_size);
link_length = r;
/* On AIX 5L v5.3 and HP-UX 11i v2 04/09, readlink returns -1
@@ -86,7 +97,20 @@ areadlink_with_size (char const *file, size_t size)
if (link_length < buf_size)
{
- buffer[link_length] = 0;
+ buf[link_length] = 0;
+ if (!buffer)
+ {
+ buffer = malloc (link_length + 1);
+ if (buffer)
+ return memcpy (buffer, buf, link_length + 1);
+ }
+ else if (link_length + 1 < buf_size)
+ {
+ /* Shrink BUFFER before returning it. */
+ char *shrinked_buffer = realloc (buffer, link_length + 1);
+ if (shrinked_buffer != NULL)
+ buffer = shrinked_buffer;
+ }
return buffer;
}
diff --git a/gl/lib/bitrotate.h b/gl/lib/bitrotate.h
index 862331e2..04b90836 100644
--- a/gl/lib/bitrotate.h
+++ b/gl/lib/bitrotate.h
@@ -95,7 +95,8 @@ rotr_sz (size_t x, int n)
BITROTATE_INLINE uint16_t
rotl16 (uint16_t x, int n)
{
- return ((x << n) | (x >> (16 - n))) & UINT16_MAX;
+ return (((unsigned int) x << n) | ((unsigned int) x >> (16 - n)))
+ & UINT16_MAX;
}
/* Given an unsigned 16-bit argument X, return the value corresponding
@@ -106,7 +107,8 @@ rotl16 (uint16_t x, int n)
BITROTATE_INLINE uint16_t
rotr16 (uint16_t x, int n)
{
- return ((x >> n) | (x << (16 - n))) & UINT16_MAX;
+ return (((unsigned int) x >> n) | ((unsigned int) x << (16 - n)))
+ & UINT16_MAX;
}
/* Given an unsigned 8-bit argument X, return the value corresponding
@@ -117,7 +119,7 @@ rotr16 (uint16_t x, int n)
BITROTATE_INLINE uint8_t
rotl8 (uint8_t x, int n)
{
- return ((x << n) | (x >> (8 - n))) & UINT8_MAX;
+ return (((unsigned int) x << n) | ((unsigned int) x >> (8 - n))) & UINT8_MAX;
}
/* Given an unsigned 8-bit argument X, return the value corresponding
@@ -128,7 +130,7 @@ rotl8 (uint8_t x, int n)
BITROTATE_INLINE uint8_t
rotr8 (uint8_t x, int n)
{
- return ((x >> n) | (x << (8 - n))) & UINT8_MAX;
+ return (((unsigned int) x >> n) | ((unsigned int) x << (8 - n))) & UINT8_MAX;
}
_GL_INLINE_HEADER_END
diff --git a/gl/lib/canonicalize.h b/gl/lib/canonicalize.h
index 2ffa1f68..6d127b9f 100644
--- a/gl/lib/canonicalize.h
+++ b/gl/lib/canonicalize.h
@@ -21,6 +21,10 @@
#define CAN_MODE_MASK (CAN_EXISTING | CAN_ALL_BUT_LAST | CAN_MISSING)
+#ifdef __cplusplus
+extern "C" {
+#endif
+
enum canonicalize_mode_t
{
/* All components must exist. */
@@ -45,4 +49,8 @@ typedef enum canonicalize_mode_t canonicalize_mode_t;
The result is malloc'd. */
char *canonicalize_filename_mode (const char *, canonicalize_mode_t);
+#ifdef __cplusplus
+}
+#endif
+
#endif /* !CANONICALIZE_H_ */
diff --git a/gl/lib/error.c b/gl/lib/error.c
index 7e532f0e..f8ab6689 100644
--- a/gl/lib/error.c
+++ b/gl/lib/error.c
@@ -119,7 +119,7 @@ int strerror_r (int errnum, char *buf, size_t buflen);
# endif
# endif
-#define program_name getprogname ()
+# define program_name getprogname ()
# if GNULIB_STRERROR_R_POSIX || HAVE_STRERROR_R || defined strerror_r
# define __strerror_r strerror_r
diff --git a/gl/lib/fcntl.c b/gl/lib/fcntl.c
index 51f62ef7..a3ffaa6e 100644
--- a/gl/lib/fcntl.c
+++ b/gl/lib/fcntl.c
@@ -25,6 +25,7 @@
#include <errno.h>
#include <limits.h>
#include <stdarg.h>
+#include <stdlib.h>
#include <unistd.h>
#ifdef __KLIBC__
diff --git a/gl/lib/flexmember.h b/gl/lib/flexmember.h
index 0d65f6da..af17b41d 100644
--- a/gl/lib/flexmember.h
+++ b/gl/lib/flexmember.h
@@ -33,11 +33,26 @@
# define FLEXALIGNOF(type) _Alignof (type)
#endif
-/* Upper bound on the size of a struct of type TYPE with a flexible
- array member named MEMBER that is followed by N bytes of other data.
- This is not simply sizeof (TYPE) + N, since it may require
- alignment on unusually picky C11 platforms, and
- FLEXIBLE_ARRAY_MEMBER may be 1 on pre-C11 platforms.
+/* Yield a properly aligned upper bound on the size of a struct of
+ type TYPE with a flexible array member named MEMBER that is
+ followed by N bytes of other data. The result is suitable as an
+ argument to malloc. For example:
+
+ struct s { int n; char d[FLEXIBLE_ARRAY_MEMBER]; };
+ struct s *p = malloc (FLEXSIZEOF (struct s, d, n * sizeof (char)));
+
+ FLEXSIZEOF (TYPE, MEMBER, N) is not simply (sizeof (TYPE) + N),
+ since FLEXIBLE_ARRAY_MEMBER may be 1 on pre-C11 platforms. Nor is
+ it simply (offsetof (TYPE, MEMBER) + N), as that might yield a size
+ that causes malloc to yield a pointer that is not properly aligned
+ for TYPE; for example, if sizeof (int) == alignof (int) == 4,
+ malloc (offsetof (struct s, d) + 3 * sizeof (char)) is equivalent
+ to malloc (7) and might yield a pointer that is not a multiple of 4
+ (which means the pointer is not properly aligned for struct s),
+ whereas malloc (FLEXSIZEOF (struct s, d, 3 * sizeof (char))) is
+ equivalent to malloc (8) and must yield a pointer that is a
+ multiple of 4.
+
Yield a value less than N if and only if arithmetic overflow occurs. */
#define FLEXSIZEOF(type, member, n) \
diff --git a/gl/lib/fstat.c b/gl/lib/fstat.c
index 4f0e6188..a892b8ff 100644
--- a/gl/lib/fstat.c
+++ b/gl/lib/fstat.c
@@ -40,10 +40,14 @@ orig_fstat (int fd, struct stat *buf)
#endif
/* Specification. */
+#ifdef __osf__
/* Write "sys/stat.h" here, not <sys/stat.h>, otherwise OSF/1 5.1 DTK cc
eliminates this include because of the preliminary #include <sys/stat.h>
above. */
-#include "sys/stat.h"
+# include "sys/stat.h"
+#else
+# include <sys/stat.h>
+#endif
#include "stat-time.h"
diff --git a/gl/lib/fstatat.c b/gl/lib/fstatat.c
index 515b5693..db864da7 100644
--- a/gl/lib/fstatat.c
+++ b/gl/lib/fstatat.c
@@ -36,15 +36,20 @@ orig_fstatat (int fd, char const *filename, struct stat *buf, int flags)
}
#endif
+#ifdef __osf__
/* Write "sys/stat.h" here, not <sys/stat.h>, otherwise OSF/1 5.1 DTK cc
eliminates this include because of the preliminary #include <sys/stat.h>
above. */
-#include "sys/stat.h"
+# include "sys/stat.h"
+#else
+# include <sys/stat.h>
+#endif
#include "stat-time.h"
#include <errno.h>
#include <fcntl.h>
+#include <stdlib.h>
#include <string.h>
#if HAVE_FSTATAT && HAVE_WORKING_FSTATAT_ZERO_FLAG
diff --git a/gl/lib/getcwd-lgpl.c b/gl/lib/getcwd-lgpl.c
index b224cfc9..1eaac78b 100644
--- a/gl/lib/getcwd-lgpl.c
+++ b/gl/lib/getcwd-lgpl.c
@@ -115,10 +115,15 @@ rpl_getcwd (char *buf, size_t size)
}
else
{
- /* Trim to fit, if possible. */
- result = realloc (buf, strlen (buf) + 1);
- if (!result)
- result = buf;
+ /* Here result == buf. */
+ /* Shrink result before returning it. */
+ size_t actual_size = strlen (result) + 1;
+ if (actual_size < size)
+ {
+ char *shrinked_result = realloc (result, actual_size);
+ if (shrinked_result != NULL)
+ result = shrinked_result;
+ }
}
return result;
}
diff --git a/gl/lib/getcwd.c b/gl/lib/getcwd.c
index 41eedb70..bf878092 100644
--- a/gl/lib/getcwd.c
+++ b/gl/lib/getcwd.c
@@ -79,6 +79,10 @@
# define MATCHING_INO(dp, ino) true
#endif
+#if HAVE_MSVC_INVALID_PARAMETER_HANDLER
+# include "msvc-inval.h"
+#endif
+
#if !_LIBC
# define __getcwd rpl_getcwd
# define __lstat lstat
@@ -100,6 +104,34 @@
# undef closedir
#endif
+#ifdef _MSC_VER
+# if HAVE_MSVC_INVALID_PARAMETER_HANDLER
+static char *
+getcwd_nothrow (char *buf, size_t size)
+{
+ char *result;
+
+ TRY_MSVC_INVAL
+ {
+ result = _getcwd (buf, size);
+ }
+ CATCH_MSVC_INVAL
+ {
+ result = NULL;
+ errno = ERANGE;
+ }
+ DONE_MSVC_INVAL;
+
+ return result;
+}
+# else
+# define getcwd_nothrow _getcwd
+# endif
+# define getcwd_system getcwd_nothrow
+#else
+# define getcwd_system getcwd
+#endif
+
/* Get the name of the current working directory, and put it in SIZE
bytes of BUF. Returns NULL if the directory couldn't be determined or
SIZE was too small. If successful, returns BUF. In GNU, if BUF is
@@ -155,7 +187,7 @@ __getcwd (char *buf, size_t size)
this wrong result with errno = 0. */
# undef getcwd
- dir = getcwd (buf, size);
+ dir = getcwd_system (buf, size);
if (dir || (size && errno == ERANGE))
return dir;
@@ -166,7 +198,7 @@ __getcwd (char *buf, size_t size)
if (errno == EINVAL && buf == NULL && size == 0)
{
char big_buffer[BIG_FILE_NAME_LENGTH + 1];
- dir = getcwd (big_buffer, sizeof big_buffer);
+ dir = getcwd_system (big_buffer, sizeof big_buffer);
if (dir)
return strdup (dir);
}
@@ -411,7 +443,7 @@ __getcwd (char *buf, size_t size)
if (size == 0)
/* Ensure that the buffer is only as large as necessary. */
- buf = realloc (dir, used);
+ buf = (used < allocated ? realloc (dir, used) : dir);
if (buf == NULL)
/* Either buf was NULL all along, or 'realloc' failed but
diff --git a/gl/lib/getprogname.c b/gl/lib/getprogname.c
index 96fa7596..de8f49a1 100644
--- a/gl/lib/getprogname.c
+++ b/gl/lib/getprogname.c
@@ -70,10 +70,10 @@ getprogname (void)
p = "?";
return last_component (p);
# elif HAVE_DECL___ARGV /* mingw, MSVC */
- /* https://msdn.microsoft.com/en-us/library/dn727674.aspx */
+ /* https://docs.microsoft.com/en-us/cpp/c-runtime-library/argc-argv-wargv */
const char *p = __argv && __argv[0] ? __argv[0] : "?";
return last_component (p);
-# elif HAVE_VAR___PROGNAME /* OpenBSD, QNX */
+# elif HAVE_VAR___PROGNAME /* OpenBSD, Android, QNX */
/* https://man.openbsd.org/style.9 */
/* http://www.qnx.de/developers/docs/6.5.0/index.jsp?topic=%2Fcom.qnx.doc.neutrino_lib_ref%2Fp%2F__progname.html */
/* Be careful to declare this only when we absolutely need it
@@ -82,7 +82,11 @@ getprogname (void)
malfunction (have zero length) with Fedora 25's glibc. */
extern char *__progname;
const char *p = __progname;
+# if defined __ANDROID__
+ return last_component (p);
+# else
return p && p[0] ? p : "?";
+# endif
# elif _AIX /* AIX */
/* Idea by Bastien ROUCARIÈS,
https://lists.gnu.org/r/bug-gnulib/2010-12/msg00095.html
@@ -229,12 +233,13 @@ getprogname (void)
{
char *name = buf.pr_fname;
size_t namesize = sizeof buf.pr_fname;
+ /* It may not be NUL-terminated. */
char *namenul = memchr (name, '\0', namesize);
size_t namelen = namenul ? namenul - name : namesize;
char *namecopy = malloc (namelen + 1);
if (namecopy)
{
- namecopy[namelen] = 0;
+ namecopy[namelen] = '\0';
return memcpy (namecopy, name, namelen);
}
}
diff --git a/gl/lib/gettimeofday.c b/gl/lib/gettimeofday.c
index 360cdc4d..e728bf47 100644
--- a/gl/lib/gettimeofday.c
+++ b/gl/lib/gettimeofday.c
@@ -72,10 +72,10 @@ gettimeofday (struct timeval *restrict tv, void *restrict tz)
/* On native Windows, there are two ways to get the current time:
GetSystemTimeAsFileTime
- <https://msdn.microsoft.com/en-us/library/ms724397.aspx>
+ <https://docs.microsoft.com/en-us/windows/desktop/api/sysinfoapi/nf-sysinfoapi-getsystemtimeasfiletime>
or
GetSystemTimePreciseAsFileTime
- <https://msdn.microsoft.com/en-us/library/hh706895.aspx>.
+ <https://docs.microsoft.com/en-us/windows/desktop/api/sysinfoapi/nf-sysinfoapi-getsystemtimepreciseasfiletime>.
GetSystemTimeAsFileTime produces values that jump by increments of
15.627 milliseconds (!) on average.
Whereas GetSystemTimePreciseAsFileTime values usually jump by 1 or 2
@@ -92,7 +92,7 @@ gettimeofday (struct timeval *restrict tv, void *restrict tz)
GetSystemTimeAsFileTime (&current_time);
/* Convert from FILETIME to 'struct timeval'. */
- /* FILETIME: <https://msdn.microsoft.com/en-us/library/ms724284.aspx> */
+ /* FILETIME: <https://docs.microsoft.com/en-us/windows/desktop/api/minwinbase/ns-minwinbase-filetime> */
ULONGLONG since_1601 =
((ULONGLONG) current_time.dwHighDateTime << 32)
| (ULONGLONG) current_time.dwLowDateTime;
diff --git a/gl/lib/gl_array_list.c b/gl/lib/gl_array_list.c
index 4ac743fd..fa8cf1eb 100644
--- a/gl/lib/gl_array_list.c
+++ b/gl/lib/gl_array_list.c
@@ -20,6 +20,7 @@
/* Specification. */
#include "gl_array_list.h"
+#include <stdint.h>
#include <stdlib.h>
/* Get memcpy. */
#include <string.h>
@@ -27,10 +28,6 @@
/* Checked size_t computations. */
#include "xsize.h"
-#ifndef uintptr_t
-# define uintptr_t unsigned long
-#endif
-
/* -------------------------- gl_list_t Data Type -------------------------- */
/* Concrete gl_list_impl type, valid for this file only. */
diff --git a/gl/lib/gl_hash_map.c b/gl/lib/gl_hash_map.c
index 534b472f..ef3224d6 100644
--- a/gl/lib/gl_hash_map.c
+++ b/gl/lib/gl_hash_map.c
@@ -20,15 +20,11 @@
/* Specification. */
#include "gl_hash_map.h"
-#include <stdint.h> /* for SIZE_MAX */
+#include <stdint.h> /* for uintptr_t, SIZE_MAX */
#include <stdlib.h>
#include "xsize.h"
-#ifndef uintptr_t
-# define uintptr_t unsigned long
-#endif
-
/* --------------------------- gl_map_t Data Type --------------------------- */
#include "gl_anyhash1.h"
diff --git a/gl/lib/gl_hash_set.c b/gl/lib/gl_hash_set.c
index 303d1375..64356e1f 100644
--- a/gl/lib/gl_hash_set.c
+++ b/gl/lib/gl_hash_set.c
@@ -20,15 +20,11 @@
/* Specification. */
#include "gl_hash_set.h"
-#include <stdint.h> /* for SIZE_MAX */
+#include <stdint.h> /* for uintptr_t, SIZE_MAX */
#include <stdlib.h>
#include "xsize.h"
-#ifndef uintptr_t
-# define uintptr_t unsigned long
-#endif
-
/* --------------------------- gl_set_t Data Type --------------------------- */
#include "gl_anyhash1.h"
diff --git a/gl/lib/gl_linkedhash_list.c b/gl/lib/gl_linkedhash_list.c
index efe4996b..d148d5b5 100644
--- a/gl/lib/gl_linkedhash_list.c
+++ b/gl/lib/gl_linkedhash_list.c
@@ -20,15 +20,11 @@
/* Specification. */
#include "gl_linkedhash_list.h"
-#include <stdint.h> /* for SIZE_MAX */
+#include <stdint.h> /* for uintptr_t, SIZE_MAX */
#include <stdlib.h>
#include "xsize.h"
-#ifndef uintptr_t
-# define uintptr_t unsigned long
-#endif
-
#define WITH_HASHTABLE 1
/* -------------------------- gl_list_t Data Type -------------------------- */
diff --git a/gl/lib/glthread/lock.c b/gl/lib/glthread/lock.c
index a4498cbd..fefcd596 100644
--- a/gl/lib/glthread/lock.c
+++ b/gl/lib/glthread/lock.c
@@ -15,8 +15,7 @@
along with this program; if not, see <https://www.gnu.org/licenses/>. */
/* Written by Bruno Haible <bruno@clisp.org>, 2005.
- Based on GCC's gthr-posix.h, gthr-posix95.h, gthr-solaris.h,
- gthr-win32.h. */
+ Based on GCC's gthr-posix.h, gthr-posix95.h. */
#include <config.h>
@@ -500,722 +499,8 @@ glthread_once_singlethreaded (pthread_once_t *once_control)
/* ========================================================================= */
-#if USE_PTH_THREADS
-
-/* Use the GNU Pth threads library. */
-
-/* -------------------------- gl_lock_t datatype -------------------------- */
-
-/* ------------------------- gl_rwlock_t datatype ------------------------- */
-
-# if !HAVE_PTH_RWLOCK_ACQUIRE_PREFER_WRITER
-
-int
-glthread_rwlock_init_multithreaded (gl_rwlock_t *lock)
-{
- if (!pth_mutex_init (&lock->lock))
- return errno;
- if (!pth_cond_init (&lock->waiting_readers))
- return errno;
- if (!pth_cond_init (&lock->waiting_writers))
- return errno;
- lock->waiting_writers_count = 0;
- lock->runcount = 0;
- lock->initialized = 1;
- return 0;
-}
-
-int
-glthread_rwlock_rdlock_multithreaded (gl_rwlock_t *lock)
-{
- if (!lock->initialized)
- glthread_rwlock_init_multithreaded (lock);
- if (!pth_mutex_acquire (&lock->lock, 0, NULL))
- return errno;
- /* Test whether only readers are currently running, and whether the runcount
- field will not overflow, and whether no writer is waiting. The latter
- condition is because POSIX recommends that "write locks shall take
- precedence over read locks", to avoid "writer starvation". */
- while (!(lock->runcount + 1 > 0 && lock->waiting_writers_count == 0))
- {
- /* This thread has to wait for a while. Enqueue it among the
- waiting_readers. */
- if (!pth_cond_await (&lock->waiting_readers, &lock->lock, NULL))
- {
- int err = errno;
- pth_mutex_release (&lock->lock);
- return err;
- }
- }
- lock->runcount++;
- return (!pth_mutex_release (&lock->lock) ? errno : 0);
-}
-
-int
-glthread_rwlock_wrlock_multithreaded (gl_rwlock_t *lock)
-{
- if (!lock->initialized)
- glthread_rwlock_init_multithreaded (lock);
- if (!pth_mutex_acquire (&lock->lock, 0, NULL))
- return errno;
- /* Test whether no readers or writers are currently running. */
- while (!(lock->runcount == 0))
- {
- /* This thread has to wait for a while. Enqueue it among the
- waiting_writers. */
- lock->waiting_writers_count++;
- if (!pth_cond_await (&lock->waiting_writers, &lock->lock, NULL))
- {
- int err = errno;
- lock->waiting_writers_count--;
- pth_mutex_release (&lock->lock);
- return err;
- }
- lock->waiting_writers_count--;
- }
- lock->runcount--; /* runcount becomes -1 */
- return (!pth_mutex_release (&lock->lock) ? errno : 0);
-}
-
-int
-glthread_rwlock_unlock_multithreaded (gl_rwlock_t *lock)
-{
- int err;
-
- if (!lock->initialized)
- return EINVAL;
- if (!pth_mutex_acquire (&lock->lock, 0, NULL))
- return errno;
- if (lock->runcount < 0)
- {
- /* Drop a writer lock. */
- if (!(lock->runcount == -1))
- {
- pth_mutex_release (&lock->lock);
- return EINVAL;
- }
- lock->runcount = 0;
- }
- else
- {
- /* Drop a reader lock. */
- if (!(lock->runcount > 0))
- {
- pth_mutex_release (&lock->lock);
- return EINVAL;
- }
- lock->runcount--;
- }
- if (lock->runcount == 0)
- {
- /* POSIX recommends that "write locks shall take precedence over read
- locks", to avoid "writer starvation". */
- if (lock->waiting_writers_count > 0)
- {
- /* Wake up one of the waiting writers. */
- if (!pth_cond_notify (&lock->waiting_writers, FALSE))
- {
- int err = errno;
- pth_mutex_release (&lock->lock);
- return err;
- }
- }
- else
- {
- /* Wake up all waiting readers. */
- if (!pth_cond_notify (&lock->waiting_readers, TRUE))
- {
- int err = errno;
- pth_mutex_release (&lock->lock);
- return err;
- }
- }
- }
- return (!pth_mutex_release (&lock->lock) ? errno : 0);
-}
-
-int
-glthread_rwlock_destroy_multithreaded (gl_rwlock_t *lock)
-{
- lock->initialized = 0;
- return 0;
-}
-
-# endif
-
-/* --------------------- gl_recursive_lock_t datatype --------------------- */
-
-/* -------------------------- gl_once_t datatype -------------------------- */
-
-static void
-glthread_once_call (void *arg)
-{
- void (**gl_once_temp_addr) (void) = (void (**) (void)) arg;
- void (*initfunction) (void) = *gl_once_temp_addr;
- initfunction ();
-}
-
-int
-glthread_once_multithreaded (pth_once_t *once_control, void (*initfunction) (void))
-{
- void (*temp) (void) = initfunction;
- return (!pth_once (once_control, glthread_once_call, &temp) ? errno : 0);
-}
-
-int
-glthread_once_singlethreaded (pth_once_t *once_control)
-{
- /* We know that pth_once_t is an integer type. */
- if (*once_control == PTH_ONCE_INIT)
- {
- /* First time use of once_control. Invert the marker. */
- *once_control = ~ PTH_ONCE_INIT;
- return 1;
- }
- else
- return 0;
-}
-
-#endif
-
-/* ========================================================================= */
-
-#if USE_SOLARIS_THREADS
-
-/* Use the old Solaris threads library. */
-
-/* -------------------------- gl_lock_t datatype -------------------------- */
-
-/* ------------------------- gl_rwlock_t datatype ------------------------- */
-
-/* --------------------- gl_recursive_lock_t datatype --------------------- */
-
-int
-glthread_recursive_lock_init_multithreaded (gl_recursive_lock_t *lock)
-{
- int err;
-
- err = mutex_init (&lock->mutex, USYNC_THREAD, NULL);
- if (err != 0)
- return err;
- lock->owner = (thread_t) 0;
- lock->depth = 0;
- return 0;
-}
-
-int
-glthread_recursive_lock_lock_multithreaded (gl_recursive_lock_t *lock)
-{
- thread_t self = thr_self ();
- if (lock->owner != self)
- {
- int err;
-
- err = mutex_lock (&lock->mutex);
- if (err != 0)
- return err;
- lock->owner = self;
- }
- if (++(lock->depth) == 0) /* wraparound? */
- {
- lock->depth--;
- return EAGAIN;
- }
- return 0;
-}
-
-int
-glthread_recursive_lock_unlock_multithreaded (gl_recursive_lock_t *lock)
-{
- if (lock->owner != thr_self ())
- return EPERM;
- if (lock->depth == 0)
- return EINVAL;
- if (--(lock->depth) == 0)
- {
- lock->owner = (thread_t) 0;
- return mutex_unlock (&lock->mutex);
- }
- else
- return 0;
-}
-
-int
-glthread_recursive_lock_destroy_multithreaded (gl_recursive_lock_t *lock)
-{
- if (lock->owner != (thread_t) 0)
- return EBUSY;
- return mutex_destroy (&lock->mutex);
-}
-
-/* -------------------------- gl_once_t datatype -------------------------- */
-
-int
-glthread_once_multithreaded (gl_once_t *once_control, void (*initfunction) (void))
-{
- if (!once_control->inited)
- {
- int err;
-
- /* Use the mutex to guarantee that if another thread is already calling
- the initfunction, this thread waits until it's finished. */
- err = mutex_lock (&once_control->mutex);
- if (err != 0)
- return err;
- if (!once_control->inited)
- {
- once_control->inited = 1;
- initfunction ();
- }
- return mutex_unlock (&once_control->mutex);
- }
- else
- return 0;
-}
-
-int
-glthread_once_singlethreaded (gl_once_t *once_control)
-{
- /* We know that gl_once_t contains an integer type. */
- if (!once_control->inited)
- {
- /* First time use of once_control. Invert the marker. */
- once_control->inited = ~ 0;
- return 1;
- }
- else
- return 0;
-}
-
-#endif
-
-/* ========================================================================= */
-
#if USE_WINDOWS_THREADS
-/* -------------------------- gl_lock_t datatype -------------------------- */
-
-void
-glthread_lock_init_func (gl_lock_t *lock)
-{
- InitializeCriticalSection (&lock->lock);
- lock->guard.done = 1;
-}
-
-int
-glthread_lock_lock_func (gl_lock_t *lock)
-{
- if (!lock->guard.done)
- {
- if (InterlockedIncrement (&lock->guard.started) == 0)
- /* This thread is the first one to need this lock. Initialize it. */
- glthread_lock_init (lock);
- else
- /* Yield the CPU while waiting for another thread to finish
- initializing this lock. */
- while (!lock->guard.done)
- Sleep (0);
- }
- EnterCriticalSection (&lock->lock);
- return 0;
-}
-
-int
-glthread_lock_unlock_func (gl_lock_t *lock)
-{
- if (!lock->guard.done)
- return EINVAL;
- LeaveCriticalSection (&lock->lock);
- return 0;
-}
-
-int
-glthread_lock_destroy_func (gl_lock_t *lock)
-{
- if (!lock->guard.done)
- return EINVAL;
- DeleteCriticalSection (&lock->lock);
- lock->guard.done = 0;
- return 0;
-}
-
-/* ------------------------- gl_rwlock_t datatype ------------------------- */
-
-/* In this file, the waitqueues are implemented as circular arrays. */
-#define gl_waitqueue_t gl_carray_waitqueue_t
-
-static void
-gl_waitqueue_init (gl_waitqueue_t *wq)
-{
- wq->array = NULL;
- wq->count = 0;
- wq->alloc = 0;
- wq->offset = 0;
-}
-
-/* Enqueues the current thread, represented by an event, in a wait queue.
- Returns INVALID_HANDLE_VALUE if an allocation failure occurs. */
-static HANDLE
-gl_waitqueue_add (gl_waitqueue_t *wq)
-{
- HANDLE event;
- unsigned int index;
-
- if (wq->count == wq->alloc)
- {
- unsigned int new_alloc = 2 * wq->alloc + 1;
- HANDLE *new_array =
- (HANDLE *) realloc (wq->array, new_alloc * sizeof (HANDLE));
- if (new_array == NULL)
- /* No more memory. */
- return INVALID_HANDLE_VALUE;
- /* Now is a good opportunity to rotate the array so that its contents
- starts at offset 0. */
- if (wq->offset > 0)
- {
- unsigned int old_count = wq->count;
- unsigned int old_alloc = wq->alloc;
- unsigned int old_offset = wq->offset;
- unsigned int i;
- if (old_offset + old_count > old_alloc)
- {
- unsigned int limit = old_offset + old_count - old_alloc;
- for (i = 0; i < limit; i++)
- new_array[old_alloc + i] = new_array[i];
- }
- for (i = 0; i < old_count; i++)
- new_array[i] = new_array[old_offset + i];
- wq->offset = 0;
- }
- wq->array = new_array;
- wq->alloc = new_alloc;
- }
- /* Whether the created event is a manual-reset one or an auto-reset one,
- does not matter, since we will wait on it only once. */
- event = CreateEvent (NULL, TRUE, FALSE, NULL);
- if (event == INVALID_HANDLE_VALUE)
- /* No way to allocate an event. */
- return INVALID_HANDLE_VALUE;
- index = wq->offset + wq->count;
- if (index >= wq->alloc)
- index -= wq->alloc;
- wq->array[index] = event;
- wq->count++;
- return event;
-}
-
-/* Notifies the first thread from a wait queue and dequeues it. */
-static void
-gl_waitqueue_notify_first (gl_waitqueue_t *wq)
-{
- SetEvent (wq->array[wq->offset + 0]);
- wq->offset++;
- wq->count--;
- if (wq->count == 0 || wq->offset == wq->alloc)
- wq->offset = 0;
-}
-
-/* Notifies all threads from a wait queue and dequeues them all. */
-static void
-gl_waitqueue_notify_all (gl_waitqueue_t *wq)
-{
- unsigned int i;
-
- for (i = 0; i < wq->count; i++)
- {
- unsigned int index = wq->offset + i;
- if (index >= wq->alloc)
- index -= wq->alloc;
- SetEvent (wq->array[index]);
- }
- wq->count = 0;
- wq->offset = 0;
-}
-
-void
-glthread_rwlock_init_func (gl_rwlock_t *lock)
-{
- InitializeCriticalSection (&lock->lock);
- gl_waitqueue_init (&lock->waiting_readers);
- gl_waitqueue_init (&lock->waiting_writers);
- lock->runcount = 0;
- lock->guard.done = 1;
-}
-
-int
-glthread_rwlock_rdlock_func (gl_rwlock_t *lock)
-{
- if (!lock->guard.done)
- {
- if (InterlockedIncrement (&lock->guard.started) == 0)
- /* This thread is the first one to need this lock. Initialize it. */
- glthread_rwlock_init (lock);
- else
- /* Yield the CPU while waiting for another thread to finish
- initializing this lock. */
- while (!lock->guard.done)
- Sleep (0);
- }
- EnterCriticalSection (&lock->lock);
- /* Test whether only readers are currently running, and whether the runcount
- field will not overflow, and whether no writer is waiting. The latter
- condition is because POSIX recommends that "write locks shall take
- precedence over read locks", to avoid "writer starvation". */
- if (!(lock->runcount + 1 > 0 && lock->waiting_writers.count == 0))
- {
- /* This thread has to wait for a while. Enqueue it among the
- waiting_readers. */
- HANDLE event = gl_waitqueue_add (&lock->waiting_readers);
- if (event != INVALID_HANDLE_VALUE)
- {
- DWORD result;
- LeaveCriticalSection (&lock->lock);
- /* Wait until another thread signals this event. */
- result = WaitForSingleObject (event, INFINITE);
- if (result == WAIT_FAILED || result == WAIT_TIMEOUT)
- abort ();
- CloseHandle (event);
- /* The thread which signalled the event already did the bookkeeping:
- removed us from the waiting_readers, incremented lock->runcount. */
- if (!(lock->runcount > 0))
- abort ();
- return 0;
- }
- else
- {
- /* Allocation failure. Weird. */
- do
- {
- LeaveCriticalSection (&lock->lock);
- Sleep (1);
- EnterCriticalSection (&lock->lock);
- }
- while (!(lock->runcount + 1 > 0));
- }
- }
- lock->runcount++;
- LeaveCriticalSection (&lock->lock);
- return 0;
-}
-
-int
-glthread_rwlock_wrlock_func (gl_rwlock_t *lock)
-{
- if (!lock->guard.done)
- {
- if (InterlockedIncrement (&lock->guard.started) == 0)
- /* This thread is the first one to need this lock. Initialize it. */
- glthread_rwlock_init (lock);
- else
- /* Yield the CPU while waiting for another thread to finish
- initializing this lock. */
- while (!lock->guard.done)
- Sleep (0);
- }
- EnterCriticalSection (&lock->lock);
- /* Test whether no readers or writers are currently running. */
- if (!(lock->runcount == 0))
- {
- /* This thread has to wait for a while. Enqueue it among the
- waiting_writers. */
- HANDLE event = gl_waitqueue_add (&lock->waiting_writers);
- if (event != INVALID_HANDLE_VALUE)
- {
- DWORD result;
- LeaveCriticalSection (&lock->lock);
- /* Wait until another thread signals this event. */
- result = WaitForSingleObject (event, INFINITE);
- if (result == WAIT_FAILED || result == WAIT_TIMEOUT)
- abort ();
- CloseHandle (event);
- /* The thread which signalled the event already did the bookkeeping:
- removed us from the waiting_writers, set lock->runcount = -1. */
- if (!(lock->runcount == -1))
- abort ();
- return 0;
- }
- else
- {
- /* Allocation failure. Weird. */
- do
- {
- LeaveCriticalSection (&lock->lock);
- Sleep (1);
- EnterCriticalSection (&lock->lock);
- }
- while (!(lock->runcount == 0));
- }
- }
- lock->runcount--; /* runcount becomes -1 */
- LeaveCriticalSection (&lock->lock);
- return 0;
-}
-
-int
-glthread_rwlock_unlock_func (gl_rwlock_t *lock)
-{
- if (!lock->guard.done)
- return EINVAL;
- EnterCriticalSection (&lock->lock);
- if (lock->runcount < 0)
- {
- /* Drop a writer lock. */
- if (!(lock->runcount == -1))
- abort ();
- lock->runcount = 0;
- }
- else
- {
- /* Drop a reader lock. */
- if (!(lock->runcount > 0))
- {
- LeaveCriticalSection (&lock->lock);
- return EPERM;
- }
- lock->runcount--;
- }
- if (lock->runcount == 0)
- {
- /* POSIX recommends that "write locks shall take precedence over read
- locks", to avoid "writer starvation". */
- if (lock->waiting_writers.count > 0)
- {
- /* Wake up one of the waiting writers. */
- lock->runcount--;
- gl_waitqueue_notify_first (&lock->waiting_writers);
- }
- else
- {
- /* Wake up all waiting readers. */
- lock->runcount += lock->waiting_readers.count;
- gl_waitqueue_notify_all (&lock->waiting_readers);
- }
- }
- LeaveCriticalSection (&lock->lock);
- return 0;
-}
-
-int
-glthread_rwlock_destroy_func (gl_rwlock_t *lock)
-{
- if (!lock->guard.done)
- return EINVAL;
- if (lock->runcount != 0)
- return EBUSY;
- DeleteCriticalSection (&lock->lock);
- if (lock->waiting_readers.array != NULL)
- free (lock->waiting_readers.array);
- if (lock->waiting_writers.array != NULL)
- free (lock->waiting_writers.array);
- lock->guard.done = 0;
- return 0;
-}
-
-/* --------------------- gl_recursive_lock_t datatype --------------------- */
-
-void
-glthread_recursive_lock_init_func (gl_recursive_lock_t *lock)
-{
- lock->owner = 0;
- lock->depth = 0;
- InitializeCriticalSection (&lock->lock);
- lock->guard.done = 1;
-}
-
-int
-glthread_recursive_lock_lock_func (gl_recursive_lock_t *lock)
-{
- if (!lock->guard.done)
- {
- if (InterlockedIncrement (&lock->guard.started) == 0)
- /* This thread is the first one to need this lock. Initialize it. */
- glthread_recursive_lock_init (lock);
- else
- /* Yield the CPU while waiting for another thread to finish
- initializing this lock. */
- while (!lock->guard.done)
- Sleep (0);
- }
- {
- DWORD self = GetCurrentThreadId ();
- if (lock->owner != self)
- {
- EnterCriticalSection (&lock->lock);
- lock->owner = self;
- }
- if (++(lock->depth) == 0) /* wraparound? */
- {
- lock->depth--;
- return EAGAIN;
- }
- }
- return 0;
-}
-
-int
-glthread_recursive_lock_unlock_func (gl_recursive_lock_t *lock)
-{
- if (lock->owner != GetCurrentThreadId ())
- return EPERM;
- if (lock->depth == 0)
- return EINVAL;
- if (--(lock->depth) == 0)
- {
- lock->owner = 0;
- LeaveCriticalSection (&lock->lock);
- }
- return 0;
-}
-
-int
-glthread_recursive_lock_destroy_func (gl_recursive_lock_t *lock)
-{
- if (lock->owner != 0)
- return EBUSY;
- DeleteCriticalSection (&lock->lock);
- lock->guard.done = 0;
- return 0;
-}
-
-/* -------------------------- gl_once_t datatype -------------------------- */
-
-void
-glthread_once_func (gl_once_t *once_control, void (*initfunction) (void))
-{
- if (once_control->inited <= 0)
- {
- if (InterlockedIncrement (&once_control->started) == 0)
- {
- /* This thread is the first one to come to this once_control. */
- InitializeCriticalSection (&once_control->lock);
- EnterCriticalSection (&once_control->lock);
- once_control->inited = 0;
- initfunction ();
- once_control->inited = 1;
- LeaveCriticalSection (&once_control->lock);
- }
- else
- {
- /* Undo last operation. */
- InterlockedDecrement (&once_control->started);
- /* Some other thread has already started the initialization.
- Yield the CPU while waiting for the other thread to finish
- initializing and taking the lock. */
- while (once_control->inited < 0)
- Sleep (0);
- if (once_control->inited <= 0)
- {
- /* Take the lock. This blocks until the other thread has
- finished calling the initfunction. */
- EnterCriticalSection (&once_control->lock);
- LeaveCriticalSection (&once_control->lock);
- if (!(once_control->inited > 0))
- abort ();
- }
- }
- }
-}
-
#endif
/* ========================================================================= */
diff --git a/gl/lib/glthread/lock.h b/gl/lib/glthread/lock.h
index 636b0895..a92c2a83 100644
--- a/gl/lib/glthread/lock.h
+++ b/gl/lib/glthread/lock.h
@@ -15,8 +15,7 @@
along with this program; if not, see <https://www.gnu.org/licenses/>. */
/* Written by Bruno Haible <bruno@clisp.org>, 2005.
- Based on GCC's gthr-posix.h, gthr-posix95.h, gthr-solaris.h,
- gthr-win32.h. */
+ Based on GCC's gthr-posix.h, gthr-posix95.h, gthr-win32.h. */
/* This file contains locking primitives for use with a given thread library.
It does not contain primitives for creating threads or for other
@@ -81,6 +80,16 @@
#include <errno.h>
#include <stdlib.h>
+#if !defined c11_threads_in_use
+# if HAVE_THREADS_H && USE_POSIX_THREADS_WEAK
+# include <threads.h>
+# pragma weak thrd_exit
+# define c11_threads_in_use() (thrd_exit != NULL)
+# else
+# define c11_threads_in_use() 0
+# endif
+#endif
+
/* ========================================================================= */
#if USE_POSIX_THREADS
@@ -156,7 +165,8 @@ extern int glthread_in_use (void);
pthread_rwlockattr_init
*/
# pragma weak pthread_mutexattr_gettype
-# define pthread_in_use() (pthread_mutexattr_gettype != NULL)
+# define pthread_in_use() \
+ (pthread_mutexattr_gettype != NULL || c11_threads_in_use ())
# endif
# else
@@ -395,290 +405,16 @@ extern int glthread_once_singlethreaded (pthread_once_t *once_control);
/* ========================================================================= */
-#if USE_PTH_THREADS
-
-/* Use the GNU Pth threads library. */
-
-# include <pth.h>
-
-# ifdef __cplusplus
-extern "C" {
-# endif
-
-# if USE_PTH_THREADS_WEAK
-
-/* Use weak references to the GNU Pth threads library. */
-
-# pragma weak pth_mutex_init
-# pragma weak pth_mutex_acquire
-# pragma weak pth_mutex_release
-# pragma weak pth_rwlock_init
-# pragma weak pth_rwlock_acquire
-# pragma weak pth_rwlock_release
-# pragma weak pth_once
-# pragma weak pth_cond_init
-# pragma weak pth_cond_await
-# pragma weak pth_cond_notify
-
-# pragma weak pth_cancel
-# define pth_in_use() (pth_cancel != NULL)
-
-# else
-
-# define pth_in_use() 1
-
-# endif
-
-/* -------------------------- gl_lock_t datatype -------------------------- */
-
-typedef pth_mutex_t gl_lock_t;
-# define gl_lock_define(STORAGECLASS, NAME) \
- STORAGECLASS pth_mutex_t NAME;
-# define gl_lock_define_initialized(STORAGECLASS, NAME) \
- STORAGECLASS pth_mutex_t NAME = gl_lock_initializer;
-# define gl_lock_initializer \
- PTH_MUTEX_INIT
-# define glthread_lock_init(LOCK) \
- (pth_in_use () && !pth_mutex_init (LOCK) ? errno : 0)
-# define glthread_lock_lock(LOCK) \
- (pth_in_use () && !pth_mutex_acquire (LOCK, 0, NULL) ? errno : 0)
-# define glthread_lock_unlock(LOCK) \
- (pth_in_use () && !pth_mutex_release (LOCK) ? errno : 0)
-# define glthread_lock_destroy(LOCK) \
- ((void)(LOCK), 0)
-
-/* ------------------------- gl_rwlock_t datatype ------------------------- */
-
-/* Pth pth_rwlock_acquire always prefers readers. No autoconf test so far. */
-# if HAVE_PTH_RWLOCK_ACQUIRE_PREFER_WRITER
-
-typedef pth_rwlock_t gl_rwlock_t;
-# define gl_rwlock_define(STORAGECLASS, NAME) \
- STORAGECLASS pth_rwlock_t NAME;
-# define gl_rwlock_define_initialized(STORAGECLASS, NAME) \
- STORAGECLASS pth_rwlock_t NAME = gl_rwlock_initializer;
-# define gl_rwlock_initializer \
- PTH_RWLOCK_INIT
-# define glthread_rwlock_init(LOCK) \
- (pth_in_use () && !pth_rwlock_init (LOCK) ? errno : 0)
-# define glthread_rwlock_rdlock(LOCK) \
- (pth_in_use () && !pth_rwlock_acquire (LOCK, PTH_RWLOCK_RD, 0, NULL) ? errno : 0)
-# define glthread_rwlock_wrlock(LOCK) \
- (pth_in_use () && !pth_rwlock_acquire (LOCK, PTH_RWLOCK_RW, 0, NULL) ? errno : 0)
-# define glthread_rwlock_unlock(LOCK) \
- (pth_in_use () && !pth_rwlock_release (LOCK) ? errno : 0)
-# define glthread_rwlock_destroy(LOCK) \
- ((void)(LOCK), 0)
-
-# else
-
-typedef struct
- {
- int initialized;
- pth_mutex_t lock; /* protects the remaining fields */
- pth_cond_t waiting_readers; /* waiting readers */
- pth_cond_t waiting_writers; /* waiting writers */
- unsigned int waiting_writers_count; /* number of waiting writers */
- int runcount; /* number of readers running, or -1 when a writer runs */
- }
- gl_rwlock_t;
-# define gl_rwlock_define(STORAGECLASS, NAME) \
- STORAGECLASS gl_rwlock_t NAME;
-# define gl_rwlock_define_initialized(STORAGECLASS, NAME) \
- STORAGECLASS gl_rwlock_t NAME = gl_rwlock_initializer;
-# define gl_rwlock_initializer \
- { 0 }
-# define glthread_rwlock_init(LOCK) \
- (pth_in_use () ? glthread_rwlock_init_multithreaded (LOCK) : 0)
-# define glthread_rwlock_rdlock(LOCK) \
- (pth_in_use () ? glthread_rwlock_rdlock_multithreaded (LOCK) : 0)
-# define glthread_rwlock_wrlock(LOCK) \
- (pth_in_use () ? glthread_rwlock_wrlock_multithreaded (LOCK) : 0)
-# define glthread_rwlock_unlock(LOCK) \
- (pth_in_use () ? glthread_rwlock_unlock_multithreaded (LOCK) : 0)
-# define glthread_rwlock_destroy(LOCK) \
- (pth_in_use () ? glthread_rwlock_destroy_multithreaded (LOCK) : 0)
-extern int glthread_rwlock_init_multithreaded (gl_rwlock_t *lock);
-extern int glthread_rwlock_rdlock_multithreaded (gl_rwlock_t *lock);
-extern int glthread_rwlock_wrlock_multithreaded (gl_rwlock_t *lock);
-extern int glthread_rwlock_unlock_multithreaded (gl_rwlock_t *lock);
-extern int glthread_rwlock_destroy_multithreaded (gl_rwlock_t *lock);
-
-# endif
-
-/* --------------------- gl_recursive_lock_t datatype --------------------- */
-
-/* In Pth, mutexes are recursive by default. */
-typedef pth_mutex_t gl_recursive_lock_t;
-# define gl_recursive_lock_define(STORAGECLASS, NAME) \
- STORAGECLASS pth_mutex_t NAME;
-# define gl_recursive_lock_define_initialized(STORAGECLASS, NAME) \
- STORAGECLASS pth_mutex_t NAME = gl_recursive_lock_initializer;
-# define gl_recursive_lock_initializer \
- PTH_MUTEX_INIT
-# define glthread_recursive_lock_init(LOCK) \
- (pth_in_use () && !pth_mutex_init (LOCK) ? errno : 0)
-# define glthread_recursive_lock_lock(LOCK) \
- (pth_in_use () && !pth_mutex_acquire (LOCK, 0, NULL) ? errno : 0)
-# define glthread_recursive_lock_unlock(LOCK) \
- (pth_in_use () && !pth_mutex_release (LOCK) ? errno : 0)
-# define glthread_recursive_lock_destroy(LOCK) \
- ((void)(LOCK), 0)
-
-/* -------------------------- gl_once_t datatype -------------------------- */
-
-typedef pth_once_t gl_once_t;
-# define gl_once_define(STORAGECLASS, NAME) \
- STORAGECLASS pth_once_t NAME = PTH_ONCE_INIT;
-# define glthread_once(ONCE_CONTROL, INITFUNCTION) \
- (pth_in_use () \
- ? glthread_once_multithreaded (ONCE_CONTROL, INITFUNCTION) \
- : (glthread_once_singlethreaded (ONCE_CONTROL) ? (INITFUNCTION (), 0) : 0))
-extern int glthread_once_multithreaded (pth_once_t *once_control, void (*initfunction) (void));
-extern int glthread_once_singlethreaded (pth_once_t *once_control);
-
-# ifdef __cplusplus
-}
-# endif
-
-#endif
-
-/* ========================================================================= */
-
-#if USE_SOLARIS_THREADS
-
-/* Use the old Solaris threads library. */
-
-# include <thread.h>
-# include <synch.h>
-
-# ifdef __cplusplus
-extern "C" {
-# endif
-
-# if USE_SOLARIS_THREADS_WEAK
-
-/* Use weak references to the old Solaris threads library. */
-
-# pragma weak mutex_init
-# pragma weak mutex_lock
-# pragma weak mutex_unlock
-# pragma weak mutex_destroy
-# pragma weak rwlock_init
-# pragma weak rw_rdlock
-# pragma weak rw_wrlock
-# pragma weak rw_unlock
-# pragma weak rwlock_destroy
-# pragma weak thr_self
-
-# pragma weak thr_suspend
-# define thread_in_use() (thr_suspend != NULL)
-
-# else
-
-# define thread_in_use() 1
-
-# endif
-
-/* -------------------------- gl_lock_t datatype -------------------------- */
-
-typedef mutex_t gl_lock_t;
-# define gl_lock_define(STORAGECLASS, NAME) \
- STORAGECLASS mutex_t NAME;
-# define gl_lock_define_initialized(STORAGECLASS, NAME) \
- STORAGECLASS mutex_t NAME = gl_lock_initializer;
-# define gl_lock_initializer \
- DEFAULTMUTEX
-# define glthread_lock_init(LOCK) \
- (thread_in_use () ? mutex_init (LOCK, USYNC_THREAD, NULL) : 0)
-# define glthread_lock_lock(LOCK) \
- (thread_in_use () ? mutex_lock (LOCK) : 0)
-# define glthread_lock_unlock(LOCK) \
- (thread_in_use () ? mutex_unlock (LOCK) : 0)
-# define glthread_lock_destroy(LOCK) \
- (thread_in_use () ? mutex_destroy (LOCK) : 0)
-
-/* ------------------------- gl_rwlock_t datatype ------------------------- */
-
-typedef rwlock_t gl_rwlock_t;
-# define gl_rwlock_define(STORAGECLASS, NAME) \
- STORAGECLASS rwlock_t NAME;
-# define gl_rwlock_define_initialized(STORAGECLASS, NAME) \
- STORAGECLASS rwlock_t NAME = gl_rwlock_initializer;
-# define gl_rwlock_initializer \
- DEFAULTRWLOCK
-# define glthread_rwlock_init(LOCK) \
- (thread_in_use () ? rwlock_init (LOCK, USYNC_THREAD, NULL) : 0)
-# define glthread_rwlock_rdlock(LOCK) \
- (thread_in_use () ? rw_rdlock (LOCK) : 0)
-# define glthread_rwlock_wrlock(LOCK) \
- (thread_in_use () ? rw_wrlock (LOCK) : 0)
-# define glthread_rwlock_unlock(LOCK) \
- (thread_in_use () ? rw_unlock (LOCK) : 0)
-# define glthread_rwlock_destroy(LOCK) \
- (thread_in_use () ? rwlock_destroy (LOCK) : 0)
-
-/* --------------------- gl_recursive_lock_t datatype --------------------- */
-
-/* Old Solaris threads did not have recursive locks.
- We have to implement them ourselves. */
-
-typedef struct
- {
- mutex_t mutex;
- thread_t owner;
- unsigned long depth;
- }
- gl_recursive_lock_t;
-# define gl_recursive_lock_define(STORAGECLASS, NAME) \
- STORAGECLASS gl_recursive_lock_t NAME;
-# define gl_recursive_lock_define_initialized(STORAGECLASS, NAME) \
- STORAGECLASS gl_recursive_lock_t NAME = gl_recursive_lock_initializer;
-# define gl_recursive_lock_initializer \
- { DEFAULTMUTEX, (thread_t) 0, 0 }
-# define glthread_recursive_lock_init(LOCK) \
- (thread_in_use () ? glthread_recursive_lock_init_multithreaded (LOCK) : 0)
-# define glthread_recursive_lock_lock(LOCK) \
- (thread_in_use () ? glthread_recursive_lock_lock_multithreaded (LOCK) : 0)
-# define glthread_recursive_lock_unlock(LOCK) \
- (thread_in_use () ? glthread_recursive_lock_unlock_multithreaded (LOCK) : 0)
-# define glthread_recursive_lock_destroy(LOCK) \
- (thread_in_use () ? glthread_recursive_lock_destroy_multithreaded (LOCK) : 0)
-extern int glthread_recursive_lock_init_multithreaded (gl_recursive_lock_t *lock);
-extern int glthread_recursive_lock_lock_multithreaded (gl_recursive_lock_t *lock);
-extern int glthread_recursive_lock_unlock_multithreaded (gl_recursive_lock_t *lock);
-extern int glthread_recursive_lock_destroy_multithreaded (gl_recursive_lock_t *lock);
-
-/* -------------------------- gl_once_t datatype -------------------------- */
-
-typedef struct
- {
- volatile int inited;
- mutex_t mutex;
- }
- gl_once_t;
-# define gl_once_define(STORAGECLASS, NAME) \
- STORAGECLASS gl_once_t NAME = { 0, DEFAULTMUTEX };
-# define glthread_once(ONCE_CONTROL, INITFUNCTION) \
- (thread_in_use () \
- ? glthread_once_multithreaded (ONCE_CONTROL, INITFUNCTION) \
- : (glthread_once_singlethreaded (ONCE_CONTROL) ? (INITFUNCTION (), 0) : 0))
-extern int glthread_once_multithreaded (gl_once_t *once_control, void (*initfunction) (void));
-extern int glthread_once_singlethreaded (gl_once_t *once_control);
-
-# ifdef __cplusplus
-}
-# endif
-
-#endif
-
-/* ========================================================================= */
-
#if USE_WINDOWS_THREADS
# define WIN32_LEAN_AND_MEAN /* avoid including junk */
# include <windows.h>
+# include "windows-mutex.h"
+# include "windows-rwlock.h"
+# include "windows-recmutex.h"
+# include "windows-once.h"
+
# ifdef __cplusplus
extern "C" {
# endif
@@ -694,127 +430,69 @@ extern "C" {
/* There is no way to statically initialize a CRITICAL_SECTION. It needs
to be done lazily, once only. For this we need spinlocks. */
-typedef struct { volatile int done; volatile long started; } gl_spinlock_t;
-
/* -------------------------- gl_lock_t datatype -------------------------- */
-typedef struct
- {
- gl_spinlock_t guard; /* protects the initialization */
- CRITICAL_SECTION lock;
- }
- gl_lock_t;
+typedef glwthread_mutex_t gl_lock_t;
# define gl_lock_define(STORAGECLASS, NAME) \
STORAGECLASS gl_lock_t NAME;
# define gl_lock_define_initialized(STORAGECLASS, NAME) \
STORAGECLASS gl_lock_t NAME = gl_lock_initializer;
# define gl_lock_initializer \
- { { 0, -1 } }
+ GLWTHREAD_MUTEX_INIT
# define glthread_lock_init(LOCK) \
- (glthread_lock_init_func (LOCK), 0)
+ (glwthread_mutex_init (LOCK), 0)
# define glthread_lock_lock(LOCK) \
- glthread_lock_lock_func (LOCK)
+ glwthread_mutex_lock (LOCK)
# define glthread_lock_unlock(LOCK) \
- glthread_lock_unlock_func (LOCK)
+ glwthread_mutex_unlock (LOCK)
# define glthread_lock_destroy(LOCK) \
- glthread_lock_destroy_func (LOCK)
-extern void glthread_lock_init_func (gl_lock_t *lock);
-extern int glthread_lock_lock_func (gl_lock_t *lock);
-extern int glthread_lock_unlock_func (gl_lock_t *lock);
-extern int glthread_lock_destroy_func (gl_lock_t *lock);
+ glwthread_mutex_destroy (LOCK)
/* ------------------------- gl_rwlock_t datatype ------------------------- */
-/* It is impossible to implement read-write locks using plain locks, without
- introducing an extra thread dedicated to managing read-write locks.
- Therefore here we need to use the low-level Event type. */
-
-typedef struct
- {
- HANDLE *array; /* array of waiting threads, each represented by an event */
- unsigned int count; /* number of waiting threads */
- unsigned int alloc; /* length of allocated array */
- unsigned int offset; /* index of first waiting thread in array */
- }
- gl_carray_waitqueue_t;
-typedef struct
- {
- gl_spinlock_t guard; /* protects the initialization */
- CRITICAL_SECTION lock; /* protects the remaining fields */
- gl_carray_waitqueue_t waiting_readers; /* waiting readers */
- gl_carray_waitqueue_t waiting_writers; /* waiting writers */
- int runcount; /* number of readers running, or -1 when a writer runs */
- }
- gl_rwlock_t;
+typedef glwthread_rwlock_t gl_rwlock_t;
# define gl_rwlock_define(STORAGECLASS, NAME) \
STORAGECLASS gl_rwlock_t NAME;
# define gl_rwlock_define_initialized(STORAGECLASS, NAME) \
STORAGECLASS gl_rwlock_t NAME = gl_rwlock_initializer;
# define gl_rwlock_initializer \
- { { 0, -1 } }
+ GLWTHREAD_RWLOCK_INIT
# define glthread_rwlock_init(LOCK) \
- (glthread_rwlock_init_func (LOCK), 0)
+ (glwthread_rwlock_init (LOCK), 0)
# define glthread_rwlock_rdlock(LOCK) \
- glthread_rwlock_rdlock_func (LOCK)
+ glwthread_rwlock_rdlock (LOCK)
# define glthread_rwlock_wrlock(LOCK) \
- glthread_rwlock_wrlock_func (LOCK)
+ glwthread_rwlock_wrlock (LOCK)
# define glthread_rwlock_unlock(LOCK) \
- glthread_rwlock_unlock_func (LOCK)
+ glwthread_rwlock_unlock (LOCK)
# define glthread_rwlock_destroy(LOCK) \
- glthread_rwlock_destroy_func (LOCK)
-extern void glthread_rwlock_init_func (gl_rwlock_t *lock);
-extern int glthread_rwlock_rdlock_func (gl_rwlock_t *lock);
-extern int glthread_rwlock_wrlock_func (gl_rwlock_t *lock);
-extern int glthread_rwlock_unlock_func (gl_rwlock_t *lock);
-extern int glthread_rwlock_destroy_func (gl_rwlock_t *lock);
+ glwthread_rwlock_destroy (LOCK)
/* --------------------- gl_recursive_lock_t datatype --------------------- */
-/* The native Windows documentation says that CRITICAL_SECTION already
- implements a recursive lock. But we need not rely on it: It's easy to
- implement a recursive lock without this assumption. */
-
-typedef struct
- {
- gl_spinlock_t guard; /* protects the initialization */
- DWORD owner;
- unsigned long depth;
- CRITICAL_SECTION lock;
- }
- gl_recursive_lock_t;
+typedef glwthread_recmutex_t gl_recursive_lock_t;
# define gl_recursive_lock_define(STORAGECLASS, NAME) \
STORAGECLASS gl_recursive_lock_t NAME;
# define gl_recursive_lock_define_initialized(STORAGECLASS, NAME) \
STORAGECLASS gl_recursive_lock_t NAME = gl_recursive_lock_initializer;
# define gl_recursive_lock_initializer \
- { { 0, -1 }, 0, 0 }
+ GLWTHREAD_RECMUTEX_INIT
# define glthread_recursive_lock_init(LOCK) \
- (glthread_recursive_lock_init_func (LOCK), 0)
+ (glwthread_recmutex_init (LOCK), 0)
# define glthread_recursive_lock_lock(LOCK) \
- glthread_recursive_lock_lock_func (LOCK)
+ glwthread_recmutex_lock (LOCK)
# define glthread_recursive_lock_unlock(LOCK) \
- glthread_recursive_lock_unlock_func (LOCK)
+ glwthread_recmutex_unlock (LOCK)
# define glthread_recursive_lock_destroy(LOCK) \
- glthread_recursive_lock_destroy_func (LOCK)
-extern void glthread_recursive_lock_init_func (gl_recursive_lock_t *lock);
-extern int glthread_recursive_lock_lock_func (gl_recursive_lock_t *lock);
-extern int glthread_recursive_lock_unlock_func (gl_recursive_lock_t *lock);
-extern int glthread_recursive_lock_destroy_func (gl_recursive_lock_t *lock);
+ glwthread_recmutex_destroy (LOCK)
/* -------------------------- gl_once_t datatype -------------------------- */
-typedef struct
- {
- volatile int inited;
- volatile long started;
- CRITICAL_SECTION lock;
- }
- gl_once_t;
+typedef glwthread_once_t gl_once_t;
# define gl_once_define(STORAGECLASS, NAME) \
- STORAGECLASS gl_once_t NAME = { -1, -1 };
+ STORAGECLASS gl_once_t NAME = GLWTHREAD_ONCE_INIT;
# define glthread_once(ONCE_CONTROL, INITFUNCTION) \
- (glthread_once_func (ONCE_CONTROL, INITFUNCTION), 0)
-extern void glthread_once_func (gl_once_t *once_control, void (*initfunction) (void));
+ (glwthread_once (ONCE_CONTROL, INITFUNCTION), 0)
# ifdef __cplusplus
}
@@ -824,7 +502,7 @@ extern void glthread_once_func (gl_once_t *once_control, void (*initfunction) (v
/* ========================================================================= */
-#if !(USE_POSIX_THREADS || USE_PTH_THREADS || USE_SOLARIS_THREADS || USE_WINDOWS_THREADS)
+#if !(USE_POSIX_THREADS || USE_WINDOWS_THREADS)
/* Provide dummy implementation if threads are not supported. */
diff --git a/gl/lib/intprops.h b/gl/lib/intprops.h
index 1a44ae55..fe67c1f3 100644
--- a/gl/lib/intprops.h
+++ b/gl/lib/intprops.h
@@ -111,8 +111,8 @@
Subtract 1 for the sign bit if T is signed, and then add 1 more for
a minus sign if needed.
- Because _GL_SIGNED_TYPE_OR_EXPR sometimes returns 0 when its argument is
- signed, this macro may overestimate the true bound by one byte when
+ Because _GL_SIGNED_TYPE_OR_EXPR sometimes returns 1 when its argument is
+ unsigned, this macro may overestimate the true bound by one byte when
applied to unsigned types of size 2, 4, 16, ... bytes. */
#define INT_STRLEN_BOUND(t) \
(INT_BITS_STRLEN_BOUND (TYPE_WIDTH (t) - _GL_SIGNED_TYPE_OR_EXPR (t)) \
@@ -281,7 +281,9 @@
The INT_<op>_OVERFLOW macros return 1 if the corresponding C operators
might not yield numerically correct answers due to arithmetic overflow.
- The INT_<op>_WRAPV macros also store the low-order bits of the answer.
+ The INT_<op>_WRAPV macros compute the low-order bits of the sum,
+ difference, and product of two C integers, and return 1 if these
+ low-order bits are not numerically correct.
These macros work correctly on all known practical hosts, and do not rely
on undefined behavior due to signed arithmetic overflow.
@@ -309,9 +311,11 @@
arguments should not have side effects.
The WRAPV macros are not constant expressions. They support only
- +, binary -, and *. The result type must be signed.
+ +, binary -, and *. Because the WRAPV macros convert the result,
+ they report overflow in different circumstances than the OVERFLOW
+ macros do.
- These macros are tuned for their last argument being a constant.
+ These macros are tuned for their last input argument being a constant.
Return 1 if the integer expressions A * B, A - B, -A, A * B, A / B,
A % B, and A << B would overflow, respectively. */
@@ -348,11 +352,21 @@
/* 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. */
#define INT_ADD_WRAPV(a, b, r) \
- _GL_INT_OP_WRAPV (a, b, r, +, __builtin_add_overflow, INT_ADD_OVERFLOW)
+ _GL_INT_OP_WRAPV (a, b, r, +, __builtin_add_overflow, \
+ _GL_INT_ADD_RANGE_OVERFLOW)
#define INT_SUBTRACT_WRAPV(a, b, r) \
- _GL_INT_OP_WRAPV (a, b, r, -, __builtin_sub_overflow, INT_SUBTRACT_OVERFLOW)
+ _GL_INT_OP_WRAPV (a, b, r, -, __builtin_sub_overflow, \
+ _GL_INT_SUBTRACT_RANGE_OVERFLOW)
#define INT_MULTIPLY_WRAPV(a, b, r) \
- _GL_INT_OP_WRAPV (a, b, r, *, __builtin_mul_overflow, INT_MULTIPLY_OVERFLOW)
+ _GL_INT_OP_WRAPV (a, b, r, *, _GL_BUILTIN_MUL_OVERFLOW, \
+ _GL_INT_MULTIPLY_RANGE_OVERFLOW)
+
+/* Like __builtin_mul_overflow, but work around GCC bug 91450. */
+#define _GL_BUILTIN_MUL_OVERFLOW(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))
/* Nonzero if this compiler has GCC bug 68193 or Clang bug 25390. See:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68193
@@ -379,41 +393,91 @@
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)))
+ 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 <op> 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, builtin, overflow) \
(sizeof *(r) == sizeof (signed char) \
- ? _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \
- signed char, SCHAR_MIN, SCHAR_MAX) \
+ ? _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_CALC (a, b, r, op, overflow, unsigned int, \
- short int, SHRT_MIN, SHRT_MAX) \
+ ? _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_INT_OP_CALC (a, b, r, op, overflow, unsigned int, \
- int, INT_MIN, INT_MAX) \
+ ? (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_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 long int, \
- long long int, LLONG_MIN, LLONG_MAX))
+ ? (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) \
- _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long int, \
- long int, LONG_MIN, LONG_MAX)
+ (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
@@ -422,13 +486,7 @@
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) \
- (sizeof ((a) op (b)) < sizeof (t) \
- ? _GL_INT_OP_CALC1 ((t) (a), (t) (b), r, op, overflow, ut, t, tmin, tmax) \
- : _GL_INT_OP_CALC1 (a, b, r, op, overflow, ut, t, tmin, tmax))
-#define _GL_INT_OP_CALC1(a, b, r, op, overflow, ut, t, tmin, tmax) \
- ((overflow (a, b) \
- || (EXPR_SIGNED ((a) op (b)) && ((a) op (b)) < (tmin)) \
- || (tmax) < ((a) op (b))) \
+ (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))
@@ -452,4 +510,57 @@
#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)))
+
#endif /* _GL_INTPROPS_H */
diff --git a/gl/lib/localcharset.c b/gl/lib/localcharset.c
index 38e27e6f..dabef948 100644
--- a/gl/lib/localcharset.c
+++ b/gl/lib/localcharset.c
@@ -377,27 +377,166 @@ static const struct table_entry alias_table[] =
/* The list of encodings is taken from "List of OS/2 Codepages"
by Alex Taylor:
<http://altsan.org/os2/toolkits/uls/index.html#codepages>.
- See also "IBM Globalization - Code page identifiers":
- <https://www-01.ibm.com/software/globalization/cp/cp_cpgid.html>. */
- { "CP1089", "ISO-8859-6" },
- { "CP1208", "UTF-8" },
- { "CP1381", "GB2312" },
- { "CP1386", "GBK" },
- { "CP3372", "EUC-JP" },
- { "CP813", "ISO-8859-7" },
- { "CP819", "ISO-8859-1" },
- { "CP878", "KOI8-R" },
- { "CP912", "ISO-8859-2" },
- { "CP913", "ISO-8859-3" },
- { "CP914", "ISO-8859-4" },
- { "CP915", "ISO-8859-5" },
- { "CP916", "ISO-8859-8" },
- { "CP920", "ISO-8859-9" },
- { "CP921", "ISO-8859-13" },
- { "CP923", "ISO-8859-15" },
- { "CP954", "EUC-JP" },
- { "CP964", "EUC-TW" },
- { "CP970", "EUC-KR" }
+ See also "__convcp() of kLIBC":
+ <http://trac.netlabs.org/libc/browser/branches/libc-0.6/src/emx/src/lib/locale/__convcp.c>,
+ or:
+ <https://github.com/bitwiseworks/libc/blob/master/src/emx/src/lib/locale/__convcp.c>. */
+ { "CP1004", "CP1252" },
+ /*{ "CP1041", "CP943" },*/
+ /*{ "CP1088", "CP949" },*/
+ { "CP1089", "ISO-8859-6" },
+ /*{ "CP1114", "CP950" },*/
+ /*{ "CP1115", "GB2312" },*/
+ { "CP1208", "UTF-8" },
+ /*{ "CP1380", "GB2312" },*/
+ { "CP1381", "GB2312" },
+ { "CP1383", "GB2312" },
+ { "CP1386", "GBK" },
+ /*{ "CP301", "CP943" },*/
+ { "CP3372", "EUC-JP" },
+ { "CP4946", "CP850" },
+ /*{ "CP5048", "JIS_X0208-1990" },*/
+ /*{ "CP5049", "JIS_X0212-1990" },*/
+ /*{ "CP5067", "KS_C_5601-1987" },*/
+ { "CP813", "ISO-8859-7" },
+ { "CP819", "ISO-8859-1" },
+ { "CP878", "KOI8-R" },
+ /*{ "CP897", "CP943" },*/
+ { "CP912", "ISO-8859-2" },
+ { "CP913", "ISO-8859-3" },
+ { "CP914", "ISO-8859-4" },
+ { "CP915", "ISO-8859-5" },
+ { "CP916", "ISO-8859-8" },
+ { "CP920", "ISO-8859-9" },
+ { "CP921", "ISO-8859-13" },
+ { "CP923", "ISO-8859-15" },
+ /*{ "CP941", "CP943" },*/
+ /*{ "CP947", "CP950" },*/
+ /*{ "CP951", "CP949" },*/
+ /*{ "CP952", "JIS_X0208-1990" },*/
+ /*{ "CP953", "JIS_X0212-1990" },*/
+ { "CP954", "EUC-JP" },
+ { "CP964", "EUC-TW" },
+ { "CP970", "EUC-KR" },
+ /*{ "CP971", "KS_C_5601-1987" },*/
+ { "IBM-1004", "CP1252" },
+ /*{ "IBM-1006", "?" },*/
+ /*{ "IBM-1008", "?" },*/
+ /*{ "IBM-1041", "CP943" },*/
+ /*{ "IBM-1051", "?" },*/
+ /*{ "IBM-1088", "CP949" },*/
+ { "IBM-1089", "ISO-8859-6" },
+ /*{ "IBM-1098", "?" },*/
+ /*{ "IBM-1114", "CP950" },*/
+ /*{ "IBM-1115", "GB2312" },*/
+ /*{ "IBM-1116", "?" },*/
+ /*{ "IBM-1117", "?" },*/
+ /*{ "IBM-1118", "?" },*/
+ /*{ "IBM-1119", "?" },*/
+ { "IBM-1124", "CP1124" },
+ { "IBM-1125", "CP1125" },
+ { "IBM-1131", "CP1131" },
+ { "IBM-1208", "UTF-8" },
+ { "IBM-1250", "CP1250" },
+ { "IBM-1251", "CP1251" },
+ { "IBM-1252", "CP1252" },
+ { "IBM-1253", "CP1253" },
+ { "IBM-1254", "CP1254" },
+ { "IBM-1255", "CP1255" },
+ { "IBM-1256", "CP1256" },
+ { "IBM-1257", "CP1257" },
+ /*{ "IBM-1275", "?" },*/
+ /*{ "IBM-1276", "?" },*/
+ /*{ "IBM-1277", "?" },*/
+ /*{ "IBM-1280", "?" },*/
+ /*{ "IBM-1281", "?" },*/
+ /*{ "IBM-1282", "?" },*/
+ /*{ "IBM-1283", "?" },*/
+ /*{ "IBM-1380", "GB2312" },*/
+ { "IBM-1381", "GB2312" },
+ { "IBM-1383", "GB2312" },
+ { "IBM-1386", "GBK" },
+ /*{ "IBM-301", "CP943" },*/
+ { "IBM-3372", "EUC-JP" },
+ { "IBM-367", "ASCII" },
+ { "IBM-437", "CP437" },
+ { "IBM-4946", "CP850" },
+ /*{ "IBM-5048", "JIS_X0208-1990" },*/
+ /*{ "IBM-5049", "JIS_X0212-1990" },*/
+ /*{ "IBM-5067", "KS_C_5601-1987" },*/
+ { "IBM-813", "ISO-8859-7" },
+ { "IBM-819", "ISO-8859-1" },
+ { "IBM-850", "CP850" },
+ /*{ "IBM-851", "?" },*/
+ { "IBM-852", "CP852" },
+ { "IBM-855", "CP855" },
+ { "IBM-856", "CP856" },
+ { "IBM-857", "CP857" },
+ /*{ "IBM-859", "?" },*/
+ { "IBM-860", "CP860" },
+ { "IBM-861", "CP861" },
+ { "IBM-862", "CP862" },
+ { "IBM-863", "CP863" },
+ { "IBM-864", "CP864" },
+ { "IBM-865", "CP865" },
+ { "IBM-866", "CP866" },
+ /*{ "IBM-868", "?" },*/
+ { "IBM-869", "CP869" },
+ { "IBM-874", "CP874" },
+ { "IBM-878", "KOI8-R" },
+ /*{ "IBM-895", "?" },*/
+ /*{ "IBM-897", "CP943" },*/
+ /*{ "IBM-907", "?" },*/
+ /*{ "IBM-909", "?" },*/
+ { "IBM-912", "ISO-8859-2" },
+ { "IBM-913", "ISO-8859-3" },
+ { "IBM-914", "ISO-8859-4" },
+ { "IBM-915", "ISO-8859-5" },
+ { "IBM-916", "ISO-8859-8" },
+ { "IBM-920", "ISO-8859-9" },
+ { "IBM-921", "ISO-8859-13" },
+ { "IBM-922", "CP922" },
+ { "IBM-923", "ISO-8859-15" },
+ { "IBM-932", "CP932" },
+ /*{ "IBM-941", "CP943" },*/
+ /*{ "IBM-942", "?" },*/
+ { "IBM-943", "CP943" },
+ /*{ "IBM-947", "CP950" },*/
+ { "IBM-949", "CP949" },
+ { "IBM-950", "CP950" },
+ /*{ "IBM-951", "CP949" },*/
+ /*{ "IBM-952", "JIS_X0208-1990" },*/
+ /*{ "IBM-953", "JIS_X0212-1990" },*/
+ { "IBM-954", "EUC-JP" },
+ /*{ "IBM-955", "?" },*/
+ { "IBM-964", "EUC-TW" },
+ { "IBM-970", "EUC-KR" },
+ /*{ "IBM-971", "KS_C_5601-1987" },*/
+ { "IBM-eucCN", "GB2312" },
+ { "IBM-eucJP", "EUC-JP" },
+ { "IBM-eucKR", "EUC-KR" },
+ { "IBM-eucTW", "EUC-TW" },
+ { "IBM33722", "EUC-JP" },
+ { "ISO8859-1", "ISO-8859-1" },
+ { "ISO8859-2", "ISO-8859-2" },
+ { "ISO8859-3", "ISO-8859-3" },
+ { "ISO8859-4", "ISO-8859-4" },
+ { "ISO8859-5", "ISO-8859-5" },
+ { "ISO8859-6", "ISO-8859-6" },
+ { "ISO8859-7", "ISO-8859-7" },
+ { "ISO8859-8", "ISO-8859-8" },
+ { "ISO8859-9", "ISO-8859-9" },
+ /*{ "JISX0201-1976", "JISX0201-1976" },*/
+ /*{ "JISX0208-1978", "?" },*/
+ /*{ "JISX0208-1983", "JIS_X0208-1983" },*/
+ /*{ "JISX0208-1990", "JIS_X0208-1990" },*/
+ /*{ "JISX0212-1990", "JIS_X0212-1990" },*/
+ /*{ "KSC5601-1987", "KS_C_5601-1987" },*/
+ { "SJIS-1", "CP943" },
+ { "SJIS-2", "CP943" },
+ { "eucJP", "EUC-JP" },
+ { "eucKR", "EUC-KR" },
+ { "eucTW-1993", "EUC-TW" }
# define alias_table_defined
# endif
# if defined VMS /* OpenVMS */
@@ -787,7 +926,12 @@ locale_charset (void)
encoding is the best bet. */
sprintf (buf, "CP%u", GetACP ());
}
- codeset = buf;
+ /* For a locale name such as "French_France.65001", in Windows 10,
+ setlocale now returns "French_France.utf8" instead. */
+ if (strcmp (buf + 2, "65001") == 0 || strcmp (buf + 2, "utf8") == 0)
+ codeset = "UTF-8";
+ else
+ codeset = buf;
# elif defined OS2
diff --git a/gl/lib/lstat.c b/gl/lib/lstat.c
index d57ca105..a3e40d82 100644
--- a/gl/lib/lstat.c
+++ b/gl/lib/lstat.c
@@ -42,10 +42,14 @@ orig_lstat (const char *filename, struct stat *buf)
}
/* Specification. */
+# ifdef __osf__
/* Write "sys/stat.h" here, not <sys/stat.h>, otherwise OSF/1 5.1 DTK cc
eliminates this include because of the preliminary #include <sys/stat.h>
above. */
-# include "sys/stat.h"
+# include "sys/stat.h"
+# else
+# include <sys/stat.h>
+# endif
# include "stat-time.h"
diff --git a/gl/lib/mbrtowc.c b/gl/lib/mbrtowc.c
index bbe3f7a3..1aad22cd 100644
--- a/gl/lib/mbrtowc.c
+++ b/gl/lib/mbrtowc.c
@@ -34,6 +34,7 @@
# include "localcharset.h"
# include "streq.h"
# include "verify.h"
+# include "glthread/lock.h"
# ifndef FALLTHROUGH
# if __GNUC__ < 7
@@ -75,7 +76,7 @@ locale_enc (void)
return enc_other;
}
-#if GNULIB_WCHAR_SINGLE
+# if GNULIB_WCHAR_SINGLE
/* When we know that the locale does not change, provide a speedup by
caching the value of locale_enc. */
static int cached_locale_enc = -1;
@@ -86,10 +87,14 @@ locale_enc_cached (void)
cached_locale_enc = locale_enc ();
return cached_locale_enc;
}
-#else
+# else
/* By default, don't make assumptions, hence no caching. */
-# define locale_enc_cached locale_enc
-#endif
+# define locale_enc_cached locale_enc
+# endif
+
+/* This lock protects the internal state of mbtowc against multiple simultaneous
+ calls of mbrtowc. */
+gl_lock_define_initialized(static, mbtowc_lock)
verify (sizeof (mbstate_t) >= 4);
@@ -120,6 +125,8 @@ mbrtowc (wchar_t *pwc, const char *s, size_t n, mbstate_t *ps)
char buf[4];
const char *p;
size_t m;
+ enc_t enc;
+ int res;
switch (nstate)
{
@@ -152,227 +159,296 @@ mbrtowc (wchar_t *pwc, const char *s, size_t n, mbstate_t *ps)
/* Here m > 0. */
-# if __GLIBC__ || defined __UCLIBC__
- /* Work around bug <https://sourceware.org/bugzilla/show_bug.cgi?id=9674> */
- mbtowc (NULL, NULL, 0);
-# endif
- {
- int res = mbtowc (pwc, p, m);
+ enc = locale_enc_cached ();
- if (res >= 0)
- {
- if (pwc != NULL && ((*pwc == 0) != (res == 0)))
- abort ();
- if (nstate >= (res > 0 ? res : 1))
- abort ();
- res -= nstate;
- pstate[0] = 0;
- return res;
- }
+ if (enc == enc_utf8) /* UTF-8 */
+ {
+ /* Achieve multi-thread safety by not calling mbtowc() at all. */
+ /* Cf. unistr/u8-mbtouc.c. */
+ unsigned char c = (unsigned char) p[0];
- /* mbtowc does not distinguish between invalid and incomplete multibyte
- sequences. But mbrtowc needs to make this distinction.
- There are two possible approaches:
- - Use iconv() and its return value.
- - Use built-in knowledge about the possible encodings.
- Given the low quality of implementation of iconv() on the systems that
- lack mbrtowc(), we use the second approach.
- The possible encodings are:
- - 8-bit encodings,
- - EUC-JP, EUC-KR, GB2312, EUC-TW, BIG5, GB18030, SJIS,
- - UTF-8.
- Use specialized code for each. */
- if (m >= 4 || m >= MB_CUR_MAX)
- goto invalid;
- /* Here MB_CUR_MAX > 1 and 0 < m < 4. */
- switch (locale_enc_cached ())
- {
- case enc_utf8: /* UTF-8 */
+ if (c < 0x80)
{
- /* Cf. unistr/u8-mblen.c. */
- unsigned char c = (unsigned char) p[0];
-
- if (c >= 0xc2)
- {
- if (c < 0xe0)
- {
- if (m == 1)
- goto incomplete;
- }
- else if (c < 0xf0)
- {
- if (m == 1)
- goto incomplete;
- if (m == 2)
- {
- unsigned char c2 = (unsigned char) p[1];
-
- if ((c2 ^ 0x80) < 0x40
- && (c >= 0xe1 || c2 >= 0xa0)
- && (c != 0xed || c2 < 0xa0))
- goto incomplete;
- }
- }
- else if (c <= 0xf4)
- {
- if (m == 1)
- goto incomplete;
- else /* m == 2 || m == 3 */
- {
- unsigned char c2 = (unsigned char) p[1];
-
- if ((c2 ^ 0x80) < 0x40
- && (c >= 0xf1 || c2 >= 0x90)
- && (c < 0xf4 || (c == 0xf4 && c2 < 0x90)))
- {
- if (m == 2)
- goto incomplete;
- else /* m == 3 */
- {
- unsigned char c3 = (unsigned char) p[2];
-
- if ((c3 ^ 0x80) < 0x40)
- goto incomplete;
- }
- }
- }
- }
- }
- goto invalid;
+ if (pwc != NULL)
+ *pwc = c;
+ res = (c == 0 ? 0 : 1);
+ goto success;
}
-
- /* As a reference for this code, you can use the GNU libiconv
- implementation. Look for uses of the RET_TOOFEW macro. */
-
- case enc_eucjp: /* EUC-JP */
+ if (c >= 0xc2)
{
- if (m == 1)
+ if (c < 0xe0)
{
- unsigned char c = (unsigned char) p[0];
-
- if ((c >= 0xa1 && c < 0xff) || c == 0x8e || c == 0x8f)
+ if (m == 1)
goto incomplete;
- }
- if (m == 2)
- {
- unsigned char c = (unsigned char) p[0];
-
- if (c == 0x8f)
+ else /* m >= 2 */
{
unsigned char c2 = (unsigned char) p[1];
- if (c2 >= 0xa1 && c2 < 0xff)
- goto incomplete;
+ if ((c2 ^ 0x80) < 0x40)
+ {
+ if (pwc != NULL)
+ *pwc = ((unsigned int) (c & 0x1f) << 6)
+ | (unsigned int) (c2 ^ 0x80);
+ res = 2;
+ goto success;
+ }
}
}
- goto invalid;
- }
-
- case enc_94: /* EUC-KR, GB2312, BIG5 */
- {
- if (m == 1)
+ else if (c < 0xf0)
{
- unsigned char c = (unsigned char) p[0];
-
- if (c >= 0xa1 && c < 0xff)
+ if (m == 1)
goto incomplete;
- }
- goto invalid;
- }
-
- case enc_euctw: /* EUC-TW */
- {
- if (m == 1)
- {
- unsigned char c = (unsigned char) p[0];
+ else
+ {
+ unsigned char c2 = (unsigned char) p[1];
- if ((c >= 0xa1 && c < 0xff) || c == 0x8e)
- goto incomplete;
- }
- else /* m == 2 || m == 3 */
- {
- unsigned char c = (unsigned char) p[0];
+ if ((c2 ^ 0x80) < 0x40
+ && (c >= 0xe1 || c2 >= 0xa0)
+ && (c != 0xed || c2 < 0xa0))
+ {
+ if (m == 2)
+ goto incomplete;
+ else /* m >= 3 */
+ {
+ unsigned char c3 = (unsigned char) p[2];
- if (c == 0x8e)
- goto incomplete;
+ if ((c3 ^ 0x80) < 0x40)
+ {
+ if (pwc != NULL)
+ *pwc = ((unsigned int) (c & 0x0f) << 12)
+ | ((unsigned int) (c2 ^ 0x80) << 6)
+ | (unsigned int) (c3 ^ 0x80);
+ res = 3;
+ goto success;
+ }
+ }
+ }
+ }
}
- goto invalid;
- }
-
- case enc_gb18030: /* GB18030 */
- {
- if (m == 1)
+ else if (c <= 0xf4)
{
- unsigned char c = (unsigned char) p[0];
-
- if ((c >= 0x90 && c <= 0xe3) || (c >= 0xf8 && c <= 0xfe))
+ if (m == 1)
goto incomplete;
- }
- else /* m == 2 || m == 3 */
- {
- unsigned char c = (unsigned char) p[0];
-
- if (c >= 0x90 && c <= 0xe3)
+ else
{
unsigned char c2 = (unsigned char) p[1];
- if (c2 >= 0x30 && c2 <= 0x39)
+ if ((c2 ^ 0x80) < 0x40
+ && (c >= 0xf1 || c2 >= 0x90)
+ && (c < 0xf4 || (c == 0xf4 && c2 < 0x90)))
{
if (m == 2)
goto incomplete;
- else /* m == 3 */
+ else
{
unsigned char c3 = (unsigned char) p[2];
- if (c3 >= 0x81 && c3 <= 0xfe)
- goto incomplete;
+ if ((c3 ^ 0x80) < 0x40)
+ {
+ if (m == 3)
+ goto incomplete;
+ else /* m >= 4 */
+ {
+ unsigned char c4 = (unsigned char) p[3];
+
+ if ((c4 ^ 0x80) < 0x40)
+ {
+ if (pwc != NULL)
+ *pwc = ((unsigned int) (c & 0x07) << 18)
+ | ((unsigned int) (c2 ^ 0x80) << 12)
+ | ((unsigned int) (c3 ^ 0x80) << 6)
+ | (unsigned int) (c4 ^ 0x80);
+ res = 4;
+ goto success;
+ }
+ }
+ }
}
}
}
}
- goto invalid;
}
+ goto invalid;
+ }
+ else
+ {
+ /* The hidden internal state of mbtowc would make this function not
+ multi-thread safe. Achieve multi-thread safety through a lock. */
+ gl_lock_lock (mbtowc_lock);
- case enc_sjis: /* SJIS */
- {
- if (m == 1)
- {
- unsigned char c = (unsigned char) p[0];
+ /* Put the hidden internal state of mbtowc into its initial state.
+ This is needed at least with glibc, uClibc, and MSVC CRT.
+ See <https://sourceware.org/bugzilla/show_bug.cgi?id=9674>. */
+ mbtowc (NULL, NULL, 0);
- if ((c >= 0x81 && c <= 0x9f) || (c >= 0xe0 && c <= 0xea)
- || (c >= 0xf0 && c <= 0xf9))
- goto incomplete;
- }
- goto invalid;
- }
+ res = mbtowc (pwc, p, m);
- default:
- /* An unknown multibyte encoding. */
- goto incomplete;
- }
+ gl_lock_unlock (mbtowc_lock);
- incomplete:
- {
- size_t k = nstate;
- /* Here 0 <= k < m < 4. */
- pstate[++k] = s[0];
- if (k < m)
+ if (res >= 0)
+ {
+ if (pwc != NULL && ((*pwc == 0) != (res == 0)))
+ abort ();
+ goto success;
+ }
+
+ /* mbtowc does not distinguish between invalid and incomplete multibyte
+ sequences. But mbrtowc needs to make this distinction.
+ There are two possible approaches:
+ - Use iconv() and its return value.
+ - Use built-in knowledge about the possible encodings.
+ Given the low quality of implementation of iconv() on the systems
+ that lack mbrtowc(), we use the second approach.
+ The possible encodings are:
+ - 8-bit encodings,
+ - EUC-JP, EUC-KR, GB2312, EUC-TW, BIG5, GB18030, SJIS,
+ - UTF-8 (already handled above).
+ Use specialized code for each. */
+ if (m >= 4 || m >= MB_CUR_MAX)
+ goto invalid;
+ /* Here MB_CUR_MAX > 1 and 0 < m < 4. */
+ switch (enc)
{
- pstate[++k] = s[1];
- if (k < m)
- pstate[++k] = s[2];
+ /* As a reference for this code, you can use the GNU libiconv
+ implementation. Look for uses of the RET_TOOFEW macro. */
+
+ case enc_eucjp: /* EUC-JP */
+ {
+ if (m == 1)
+ {
+ unsigned char c = (unsigned char) p[0];
+
+ if ((c >= 0xa1 && c < 0xff) || c == 0x8e || c == 0x8f)
+ goto incomplete;
+ }
+ if (m == 2)
+ {
+ unsigned char c = (unsigned char) p[0];
+
+ if (c == 0x8f)
+ {
+ unsigned char c2 = (unsigned char) p[1];
+
+ if (c2 >= 0xa1 && c2 < 0xff)
+ goto incomplete;
+ }
+ }
+ goto invalid;
+ }
+
+ case enc_94: /* EUC-KR, GB2312, BIG5 */
+ {
+ if (m == 1)
+ {
+ unsigned char c = (unsigned char) p[0];
+
+ if (c >= 0xa1 && c < 0xff)
+ goto incomplete;
+ }
+ goto invalid;
+ }
+
+ case enc_euctw: /* EUC-TW */
+ {
+ if (m == 1)
+ {
+ unsigned char c = (unsigned char) p[0];
+
+ if ((c >= 0xa1 && c < 0xff) || c == 0x8e)
+ goto incomplete;
+ }
+ else /* m == 2 || m == 3 */
+ {
+ unsigned char c = (unsigned char) p[0];
+
+ if (c == 0x8e)
+ goto incomplete;
+ }
+ goto invalid;
+ }
+
+ case enc_gb18030: /* GB18030 */
+ {
+ if (m == 1)
+ {
+ unsigned char c = (unsigned char) p[0];
+
+ if ((c >= 0x90 && c <= 0xe3) || (c >= 0xf8 && c <= 0xfe))
+ goto incomplete;
+ }
+ else /* m == 2 || m == 3 */
+ {
+ unsigned char c = (unsigned char) p[0];
+
+ if (c >= 0x90 && c <= 0xe3)
+ {
+ unsigned char c2 = (unsigned char) p[1];
+
+ if (c2 >= 0x30 && c2 <= 0x39)
+ {
+ if (m == 2)
+ goto incomplete;
+ else /* m == 3 */
+ {
+ unsigned char c3 = (unsigned char) p[2];
+
+ if (c3 >= 0x81 && c3 <= 0xfe)
+ goto incomplete;
+ }
+ }
+ }
+ }
+ goto invalid;
+ }
+
+ case enc_sjis: /* SJIS */
+ {
+ if (m == 1)
+ {
+ unsigned char c = (unsigned char) p[0];
+
+ if ((c >= 0x81 && c <= 0x9f) || (c >= 0xe0 && c <= 0xea)
+ || (c >= 0xf0 && c <= 0xf9))
+ goto incomplete;
+ }
+ goto invalid;
+ }
+
+ default:
+ /* An unknown multibyte encoding. */
+ goto incomplete;
}
- if (k != m)
- abort ();
}
- pstate[0] = m;
- return (size_t)(-2);
- invalid:
- errno = EILSEQ;
- /* The conversion state is undefined, says POSIX. */
- return (size_t)(-1);
+ success:
+ /* res >= 0 is the corrected return value of mbtowc (pwc, p, m). */
+ if (nstate >= (res > 0 ? res : 1))
+ abort ();
+ res -= nstate;
+ pstate[0] = 0;
+ return res;
+
+ incomplete:
+ {
+ size_t k = nstate;
+ /* Here 0 <= k < m < 4. */
+ pstate[++k] = s[0];
+ if (k < m)
+ {
+ pstate[++k] = s[1];
+ if (k < m)
+ pstate[++k] = s[2];
+ }
+ if (k != m)
+ abort ();
}
+ pstate[0] = m;
+ return (size_t)(-2);
+
+ invalid:
+ errno = EILSEQ;
+ /* The conversion state is undefined, says POSIX. */
+ return (size_t)(-1);
}
}
diff --git a/gl/lib/memchr.valgrind b/gl/lib/memchr.valgrind
index 60f247e1..1d60e29b 100644
--- a/gl/lib/memchr.valgrind
+++ b/gl/lib/memchr.valgrind
@@ -1,4 +1,20 @@
# Suppress a valgrind message about use of uninitialized memory in memchr().
+
+# Copyright (C) 2009-2019 Free Software Foundation, Inc.
+#
+# This program is free software: you can redistribute it and/or modify
+# 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 <https://www.gnu.org/licenses/>.
+
# POSIX states that when the character is found, memchr must not read extra
# bytes in an overestimated length (for example, where memchr is used to
# implement strnlen). However, we use a safe word read to provide a speedup.
diff --git a/gl/lib/msvc-inval.h b/gl/lib/msvc-inval.h
index e31cf650..9d3aa1f7 100644
--- a/gl/lib/msvc-inval.h
+++ b/gl/lib/msvc-inval.h
@@ -95,7 +95,7 @@ extern void gl_msvc_inval_ensure_handler (void);
/* Gnulib can define its own status codes, as described in the page
"Raising Software Exceptions" on microsoft.com
- <https://msdn.microsoft.com/en-us/library/het71c37.aspx>.
+ <https://docs.microsoft.com/en-us/cpp/cpp/raising-software-exceptions>.
Our status codes are composed of
- 0xE0000000, mandatory for all user-defined status codes,
- 0x474E550, a API identifier ("GNU"),
@@ -106,7 +106,7 @@ extern void gl_msvc_inval_ensure_handler (void);
# if defined _MSC_VER
/* A compiler that supports __try/__except, as described in the page
"try-except statement" on microsoft.com
- <https://msdn.microsoft.com/en-us/library/s58ftw19.aspx>.
+ <https://docs.microsoft.com/en-us/cpp/cpp/try-except-statement>.
With __try/__except, we can use the multithread-safe exception handling. */
# ifdef __cplusplus
diff --git a/gl/lib/nanosleep.c b/gl/lib/nanosleep.c
index 6f6cc89e..3150ff9b 100644
--- a/gl/lib/nanosleep.c
+++ b/gl/lib/nanosleep.c
@@ -194,7 +194,7 @@ static sig_atomic_t volatile suspended;
/* Handle SIGCONT. */
-static void
+static _GL_ASYNC_SAFE void
sighandler (int sig)
{
suspended = 1;
diff --git a/gl/lib/nl_langinfo.c b/gl/lib/nl_langinfo.c
index e8a5595a..76579a8a 100644
--- a/gl/lib/nl_langinfo.c
+++ b/gl/lib/nl_langinfo.c
@@ -76,9 +76,15 @@ ctype_codeset (void)
memmove (buf + 2, codeset, codesetlen + 1);
else
sprintf (buf + 2, "%u", GetACP ());
- codeset = memcpy (buf, "CP", 2);
-# endif
+ /* For a locale name such as "French_France.65001", in Windows 10,
+ setlocale now returns "French_France.utf8" instead. */
+ if (strcmp (buf + 2, "65001") == 0 || strcmp (buf + 2, "utf8") == 0)
+ return "UTF-8";
+ else
+ return memcpy (buf, "CP", 2);
+# else
return codeset;
+#endif
}
#endif
diff --git a/gl/lib/openat.c b/gl/lib/openat.c
index 4ab4a318..3431147b 100644
--- a/gl/lib/openat.c
+++ b/gl/lib/openat.c
@@ -46,6 +46,7 @@ orig_openat (int fd, char const *filename, int flags, mode_t mode)
#include <stdarg.h>
#include <stdbool.h>
#include <stddef.h>
+#include <stdlib.h>
#include <string.h>
#include <sys/stat.h>
#include <errno.h>
diff --git a/gl/lib/pathmax.h b/gl/lib/pathmax.h
index 83b9491f..9463a1fb 100644
--- a/gl/lib/pathmax.h
+++ b/gl/lib/pathmax.h
@@ -68,7 +68,7 @@
# if defined _WIN32 && ! defined __CYGWIN__
/* The page "Naming Files, Paths, and Namespaces" on msdn.microsoft.com,
section "Maximum Path Length Limitation",
- <https://msdn.microsoft.com/en-us/library/aa365247.aspx#maxpath>
+ <https://docs.microsoft.com/en-us/windows/desktop/FileIO/naming-a-file#maximum-path-length-limitation>
explains that the maximum size of a filename, including the terminating
NUL byte, is 260 = 3 + 256 + 1.
This is the same value as
diff --git a/gl/lib/rawmemchr.valgrind b/gl/lib/rawmemchr.valgrind
index 63639236..3d91a727 100644
--- a/gl/lib/rawmemchr.valgrind
+++ b/gl/lib/rawmemchr.valgrind
@@ -1,4 +1,20 @@
# Suppress a valgrind message about use of uninitialized memory in rawmemchr().
+
+# Copyright (C) 2008-2019 Free Software Foundation, Inc.
+#
+# This program is free software: you can redistribute it and/or modify
+# 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 <https://www.gnu.org/licenses/>.
+
# This use is OK because it provides only a speedup.
{
rawmemchr-value4
diff --git a/gl/lib/regcomp.c b/gl/lib/regcomp.c
index 10a0a49d..892139a0 100644
--- a/gl/lib/regcomp.c
+++ b/gl/lib/regcomp.c
@@ -1800,8 +1800,8 @@ peek_token (re_token_t *token, re_string_t *input, reg_syntax_t syntax)
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)))
+ if (input->mb_cur_max > 1
+ && !re_string_first_byte (input, re_string_cur_idx (input)))
{
token->type = CHARACTER;
token->mb_partial = 1;
@@ -1988,8 +1988,8 @@ peek_token (re_token_t *token, re_string_t *input, reg_syntax_t syntax)
token->type = OP_PERIOD;
break;
case '^':
- if (!(syntax & (RE_CONTEXT_INDEP_ANCHORS | RE_CARET_ANCHORS_HERE)) &&
- re_string_cur_idx (input) != 0)
+ if (!(syntax & (RE_CONTEXT_INDEP_ANCHORS | RE_CARET_ANCHORS_HERE))
+ && re_string_cur_idx (input) != 0)
{
char prev = re_string_peek_byte (input, -1);
if (!(syntax & RE_NEWLINE_ALT) || prev != '\n')
@@ -1999,8 +1999,8 @@ peek_token (re_token_t *token, re_string_t *input, reg_syntax_t syntax)
token->opr.ctx_type = LINE_FIRST;
break;
case '$':
- if (!(syntax & RE_CONTEXT_INDEP_ANCHORS) &&
- re_string_cur_idx (input) + 1 != re_string_length (input))
+ if (!(syntax & RE_CONTEXT_INDEP_ANCHORS)
+ && re_string_cur_idx (input) + 1 != re_string_length (input))
{
re_token_t next;
re_string_skip_bytes (input, 1);
@@ -2034,8 +2034,8 @@ peek_token_bracket (re_token_t *token, re_string_t *input, reg_syntax_t syntax)
token->opr.c = c;
#ifdef RE_ENABLE_I18N
- if (input->mb_cur_max > 1 &&
- !re_string_first_byte (input, re_string_cur_idx (input)))
+ if (input->mb_cur_max > 1
+ && !re_string_first_byte (input, re_string_cur_idx (input)))
{
token->type = CHARACTER;
return 1;
@@ -2333,8 +2333,8 @@ parse_expression (re_string_t *regexp, regex_t *preg, re_token_t *token,
}
FALLTHROUGH;
case OP_CLOSE_SUBEXP:
- if ((token->type == OP_CLOSE_SUBEXP) &&
- !(syntax & RE_UNMATCHED_RIGHT_PAREN_ORD))
+ if ((token->type == OP_CLOSE_SUBEXP)
+ && !(syntax & RE_UNMATCHED_RIGHT_PAREN_ORD))
{
*err = REG_ERPAREN;
return NULL;
diff --git a/gl/lib/regex_internal.c b/gl/lib/regex_internal.c
index b592f067..0092cc2a 100644
--- a/gl/lib/regex_internal.c
+++ b/gl/lib/regex_internal.c
@@ -1311,7 +1311,6 @@ re_node_set_insert (re_node_set *set, Idx elem)
first element separately to skip a check in the inner loop. */
if (elem < set->elems[0])
{
- idx = 0;
for (idx = set->nelem; idx > 0; idx--)
set->elems[idx] = set->elems[idx - 1];
}
@@ -1716,15 +1715,19 @@ create_cd_newstate (const re_dfa_t *dfa, const re_node_set *nodes,
{
if (newstate->entrance_nodes == &newstate->nodes)
{
- newstate->entrance_nodes = re_malloc (re_node_set, 1);
- if (__glibc_unlikely (newstate->entrance_nodes == NULL))
+ re_node_set *entrance_nodes = re_malloc (re_node_set, 1);
+ if (__glibc_unlikely (entrance_nodes == NULL))
{
free_state (newstate);
return NULL;
}
+ newstate->entrance_nodes = entrance_nodes;
if (re_node_set_init_copy (newstate->entrance_nodes, nodes)
!= REG_NOERROR)
- return NULL;
+ {
+ free_state (newstate);
+ return NULL;
+ }
nctx_nodes = 0;
newstate->has_constraint = 1;
}
diff --git a/gl/lib/regexec.c b/gl/lib/regexec.c
index 2f7cb5dc..f464869f 100644
--- a/gl/lib/regexec.c
+++ b/gl/lib/regexec.c
@@ -1293,8 +1293,10 @@ proceed_next_node (const re_match_context_t *mctx, Idx nregs, regmatch_t *regs,
else if (naccepted)
{
char *buf = (char *) re_string_get_buffer (&mctx->input);
- if (memcmp (buf + regs[subexp_idx].rm_so, buf + *pidx,
- naccepted) != 0)
+ if (mctx->input.valid_len - *pidx < naccepted
+ || (memcmp (buf + regs[subexp_idx].rm_so, buf + *pidx,
+ naccepted)
+ != 0))
return -1;
}
}
@@ -2202,9 +2204,9 @@ sift_states_iter_mb (const re_match_context_t *mctx, re_sift_context_t *sctx,
int naccepted;
/* Check the node can accept "multi byte". */
naccepted = check_node_accept_bytes (dfa, node_idx, &mctx->input, str_idx);
- if (naccepted > 0 && str_idx + naccepted <= max_str_idx &&
- !STATE_NODE_CONTAINS (sctx->sifted_states[str_idx + naccepted],
- dfa->nexts[node_idx]))
+ if (naccepted > 0 && str_idx + naccepted <= max_str_idx
+ && !STATE_NODE_CONTAINS (sctx->sifted_states[str_idx + naccepted],
+ dfa->nexts[node_idx]))
/* The node can't accept the "multi byte", or the
destination was already thrown away, then the node
couldn't accept the current input "multi byte". */
@@ -3780,10 +3782,10 @@ check_node_accept_bytes (const re_dfa_t *dfa, Idx node_idx,
/* FIXME: I don't think this if is needed, as both '\n'
and '\0' are char_len == 1. */
/* '.' accepts any one character except the following two cases. */
- if ((!(dfa->syntax & RE_DOT_NEWLINE) &&
- re_string_byte_at (input, str_idx) == '\n') ||
- ((dfa->syntax & RE_DOT_NOT_NULL) &&
- re_string_byte_at (input, str_idx) == '\0'))
+ if ((!(dfa->syntax & RE_DOT_NEWLINE)
+ && re_string_byte_at (input, str_idx) == '\n')
+ || ((dfa->syntax & RE_DOT_NOT_NULL)
+ && re_string_byte_at (input, str_idx) == '\0'))
return 0;
return char_len;
}
diff --git a/gl/lib/stat-time.h b/gl/lib/stat-time.h
index d4f1f961..38a1f55a 100644
--- a/gl/lib/stat-time.h
+++ b/gl/lib/stat-time.h
@@ -171,7 +171,7 @@ get_stat_birthtime (struct stat const *st _GL_UNUSED)
#elif defined _WIN32 && ! defined __CYGWIN__
/* Native Windows platforms (but not Cygwin) put the "file creation
time" in st_ctime (!). See
- <https://msdn.microsoft.com/en-us/library/14h5k7ff(VS.80).aspx>. */
+ <https://docs.microsoft.com/en-us/cpp/c-runtime-library/reference/stat-functions>. */
# if _GL_WINDOWS_STAT_TIMESPEC
t = st->st_ctim;
# else
diff --git a/gl/lib/stat-w32.c b/gl/lib/stat-w32.c
index ffa99429..60fe5f6e 100644
--- a/gl/lib/stat-w32.c
+++ b/gl/lib/stat-w32.c
@@ -80,7 +80,7 @@ struct timespec
_gl_convert_FILETIME_to_timespec (const FILETIME *ft)
{
struct timespec result;
- /* FILETIME: <https://msdn.microsoft.com/en-us/library/ms724284.aspx> */
+ /* FILETIME: <https://docs.microsoft.com/en-us/windows/desktop/api/minwinbase/ns-minwinbase-filetime> */
unsigned long long since_1601 =
((unsigned long long) ft->dwHighDateTime << 32)
| (unsigned long long) ft->dwLowDateTime;
@@ -104,7 +104,7 @@ _gl_convert_FILETIME_to_timespec (const FILETIME *ft)
time_t
_gl_convert_FILETIME_to_POSIX (const FILETIME *ft)
{
- /* FILETIME: <https://msdn.microsoft.com/en-us/library/ms724284.aspx> */
+ /* FILETIME: <https://docs.microsoft.com/en-us/windows/desktop/api/minwinbase/ns-minwinbase-filetime> */
unsigned long long since_1601 =
((unsigned long long) ft->dwHighDateTime << 32)
| (unsigned long long) ft->dwLowDateTime;
@@ -128,7 +128,7 @@ int
_gl_fstat_by_handle (HANDLE h, const char *path, struct stat *buf)
{
/* GetFileType
- <https://msdn.microsoft.com/en-us/library/aa364960.aspx> */
+ <https://docs.microsoft.com/en-us/windows/desktop/api/fileapi/nf-fileapi-getfiletype> */
DWORD type = GetFileType (h);
if (type == FILE_TYPE_DISK)
{
@@ -137,16 +137,16 @@ _gl_fstat_by_handle (HANDLE h, const char *path, struct stat *buf)
/* st_mode can be determined through
GetFileAttributesEx
- <https://msdn.microsoft.com/en-us/library/aa364946.aspx>
- <https://msdn.microsoft.com/en-us/library/aa365739.aspx>
+ <https://docs.microsoft.com/en-us/windows/desktop/api/fileapi/nf-fileapi-getfileattributesexa>
+ <https://docs.microsoft.com/en-us/windows/desktop/api/fileapi/ns-fileapi-_win32_file_attribute_data>
or through
GetFileInformationByHandle
- <https://msdn.microsoft.com/en-us/library/aa364952.aspx>
- <https://msdn.microsoft.com/en-us/library/aa363788.aspx>
+ <https://docs.microsoft.com/en-us/windows/desktop/api/fileapi/nf-fileapi-getfileinformationbyhandle>
+ <https://docs.microsoft.com/en-us/windows/desktop/api/fileapi/ns-fileapi-_by_handle_file_information>
or through
GetFileInformationByHandleEx with argument FileBasicInfo
- <https://msdn.microsoft.com/en-us/library/aa364953.aspx>
- <https://msdn.microsoft.com/en-us/library/aa364217.aspx>
+ <https://docs.microsoft.com/en-us/windows/desktop/api/winbase/nf-winbase-getfileinformationbyhandleex>
+ <https://docs.microsoft.com/en-us/windows/desktop/api/winbase/ns-winbase-_file_basic_info>
The latter requires -D_WIN32_WINNT=_WIN32_WINNT_VISTA or higher. */
BY_HANDLE_FILE_INFORMATION info;
if (! GetFileInformationByHandle (h, &info))
@@ -162,12 +162,12 @@ _gl_fstat_by_handle (HANDLE h, const char *path, struct stat *buf)
#if _GL_WINDOWS_STAT_INODES
/* st_ino can be determined through
GetFileInformationByHandle
- <https://msdn.microsoft.com/en-us/library/aa364952.aspx>
- <https://msdn.microsoft.com/en-us/library/aa363788.aspx>
+ <https://docs.microsoft.com/en-us/windows/desktop/api/fileapi/nf-fileapi-getfileinformationbyhandle>
+ <https://docs.microsoft.com/en-us/windows/desktop/api/fileapi/ns-fileapi-_by_handle_file_information>
as 64 bits, or through
GetFileInformationByHandleEx with argument FileIdInfo
- <https://msdn.microsoft.com/en-us/library/aa364953.aspx>
- <https://msdn.microsoft.com/en-us/library/hh802691.aspx>
+ <https://docs.microsoft.com/en-us/windows/desktop/api/winbase/nf-winbase-getfileinformationbyhandleex>
+ <https://docs.microsoft.com/en-us/windows/desktop/api/winbase/ns-winbase-_file_id_info>
as 128 bits.
The latter requires -D_WIN32_WINNT=_WIN32_WINNT_WIN8 or higher. */
/* Experiments show that GetFileInformationByHandleEx does not provide
@@ -238,11 +238,11 @@ _gl_fstat_by_handle (HANDLE h, const char *path, struct stat *buf)
If the file name is already known, use it. Otherwise, for
non-empty files, it can be determined through
GetFinalPathNameByHandle
- <https://msdn.microsoft.com/en-us/library/aa364962.aspx>
+ <https://docs.microsoft.com/en-us/windows/desktop/api/fileapi/nf-fileapi-getfinalpathnamebyhandlea>
or through
GetFileInformationByHandleEx with argument FileNameInfo
- <https://msdn.microsoft.com/en-us/library/aa364953.aspx>
- <https://msdn.microsoft.com/en-us/library/aa364388.aspx>
+ <https://docs.microsoft.com/en-us/windows/desktop/api/winbase/nf-winbase-getfileinformationbyhandleex>
+ <https://docs.microsoft.com/en-us/windows/desktop/api/winbase/ns-winbase-_file_name_info>
Both require -D_WIN32_WINNT=_WIN32_WINNT_VISTA or higher. */
if (info.nFileSizeHigh > 0 || info.nFileSizeLow > 0)
{
@@ -277,12 +277,12 @@ _gl_fstat_by_handle (HANDLE h, const char *path, struct stat *buf)
/* st_nlink can be determined through
GetFileInformationByHandle
- <https://msdn.microsoft.com/en-us/library/aa364952.aspx>
- <https://msdn.microsoft.com/en-us/library/aa363788.aspx>
+ <https://docs.microsoft.com/en-us/windows/desktop/api/fileapi/nf-fileapi-getfileinformationbyhandle>
+ <https://docs.microsoft.com/en-us/windows/desktop/api/fileapi/ns-fileapi-_by_handle_file_information>
or through
GetFileInformationByHandleEx with argument FileStandardInfo
- <https://msdn.microsoft.com/en-us/library/aa364953.aspx>
- <https://msdn.microsoft.com/en-us/library/aa364401.aspx>
+ <https://docs.microsoft.com/en-us/windows/desktop/api/winbase/nf-winbase-getfileinformationbyhandleex>
+ <https://docs.microsoft.com/en-us/windows/desktop/api/winbase/ns-winbase-_file_standard_info>
The latter requires -D_WIN32_WINNT=_WIN32_WINNT_VISTA or higher. */
buf->st_nlink = (info.nNumberOfLinks > SHRT_MAX ? SHRT_MAX : info.nNumberOfLinks);
@@ -295,19 +295,19 @@ _gl_fstat_by_handle (HANDLE h, const char *path, struct stat *buf)
/* st_size can be determined through
GetFileSizeEx
- <https://msdn.microsoft.com/en-us/library/aa364957.aspx>
+ <https://docs.microsoft.com/en-us/windows/desktop/api/fileapi/nf-fileapi-getfilesizeex>
or through
GetFileAttributesEx
- <https://msdn.microsoft.com/en-us/library/aa364946.aspx>
- <https://msdn.microsoft.com/en-us/library/aa365739.aspx>
+ <https://docs.microsoft.com/en-us/windows/desktop/api/fileapi/nf-fileapi-getfileattributesexa>
+ <https://docs.microsoft.com/en-us/windows/desktop/api/fileapi/ns-fileapi-_win32_file_attribute_data>
or through
GetFileInformationByHandle
- <https://msdn.microsoft.com/en-us/library/aa364952.aspx>
- <https://msdn.microsoft.com/en-us/library/aa363788.aspx>
+ <https://docs.microsoft.com/en-us/windows/desktop/api/fileapi/nf-fileapi-getfileinformationbyhandle>
+ <https://docs.microsoft.com/en-us/windows/desktop/api/fileapi/ns-fileapi-_by_handle_file_information>
or through
GetFileInformationByHandleEx with argument FileStandardInfo
- <https://msdn.microsoft.com/en-us/library/aa364953.aspx>
- <https://msdn.microsoft.com/en-us/library/aa364401.aspx>
+ <https://docs.microsoft.com/en-us/windows/desktop/api/winbase/nf-winbase-getfileinformationbyhandleex>
+ <https://docs.microsoft.com/en-us/windows/desktop/api/winbase/ns-winbase-_file_standard_info>
The latter requires -D_WIN32_WINNT=_WIN32_WINNT_VISTA or higher. */
if (sizeof (buf->st_size) <= 4)
/* Range check already done above. */
@@ -317,19 +317,19 @@ _gl_fstat_by_handle (HANDLE h, const char *path, struct stat *buf)
/* st_atime, st_mtime, st_ctime can be determined through
GetFileTime
- <https://msdn.microsoft.com/en-us/library/ms724320.aspx>
+ <https://docs.microsoft.com/en-us/windows/desktop/api/fileapi/nf-fileapi-getfiletime>
or through
GetFileAttributesEx
- <https://msdn.microsoft.com/en-us/library/aa364946.aspx>
- <https://msdn.microsoft.com/en-us/library/aa365739.aspx>
+ <https://docs.microsoft.com/en-us/windows/desktop/api/fileapi/nf-fileapi-getfileattributesexa>
+ <https://docs.microsoft.com/en-us/windows/desktop/api/fileapi/ns-fileapi-_win32_file_attribute_data>
or through
GetFileInformationByHandle
- <https://msdn.microsoft.com/en-us/library/aa364952.aspx>
- <https://msdn.microsoft.com/en-us/library/aa363788.aspx>
+ <https://docs.microsoft.com/en-us/windows/desktop/api/fileapi/nf-fileapi-getfileinformationbyhandle>
+ <https://docs.microsoft.com/en-us/windows/desktop/api/fileapi/ns-fileapi-_by_handle_file_information>
or through
GetFileInformationByHandleEx with argument FileBasicInfo
- <https://msdn.microsoft.com/en-us/library/aa364953.aspx>
- <https://msdn.microsoft.com/en-us/library/aa364217.aspx>
+ <https://docs.microsoft.com/en-us/windows/desktop/api/winbase/nf-winbase-getfileinformationbyhandleex>
+ <https://docs.microsoft.com/en-us/windows/desktop/api/winbase/ns-winbase-_file_basic_info>
The latter requires -D_WIN32_WINNT=_WIN32_WINNT_VISTA or higher. */
#if _GL_WINDOWS_STAT_TIMESPEC
buf->st_atim = _gl_convert_FILETIME_to_timespec (&info.ftLastAccessTime);
diff --git a/gl/lib/stat.c b/gl/lib/stat.c
index 74f47954..1c28aa45 100644
--- a/gl/lib/stat.c
+++ b/gl/lib/stat.c
@@ -42,10 +42,14 @@ orig_stat (const char *filename, struct stat *buf)
#endif
/* Specification. */
+#ifdef __osf__
/* Write "sys/stat.h" here, not <sys/stat.h>, otherwise OSF/1 5.1 DTK cc
eliminates this include because of the preliminary #include <sys/stat.h>
above. */
-#include "sys/stat.h"
+# include "sys/stat.h"
+#else
+# include <sys/stat.h>
+#endif
#include "stat-time.h"
@@ -107,7 +111,7 @@ rpl_stat (char const *name, struct stat *buf)
<https://lists.gnu.org/r/bug-gnulib/2017-04/msg00134.html> */
/* XXX Should we convert to wchar_t* and prepend '\\?\', in order to work
around length limitations
- <https://msdn.microsoft.com/en-us/library/aa365247.aspx> ? */
+ <https://docs.microsoft.com/en-us/windows/desktop/FileIO/naming-a-file> ? */
/* POSIX <http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap04.html#tag_04_13>
specifies: "More than two leading <slash> characters shall be treated as
@@ -190,8 +194,8 @@ rpl_stat (char const *name, struct stat *buf)
/* Open a handle to the file.
CreateFile
- <https://msdn.microsoft.com/en-us/library/aa363858.aspx>
- <https://msdn.microsoft.com/en-us/library/aa363874.aspx> */
+ <https://docs.microsoft.com/en-us/windows/desktop/api/fileapi/nf-fileapi-createfilea>
+ <https://docs.microsoft.com/en-us/windows/desktop/FileIO/creating-and-opening-files> */
HANDLE h =
CreateFile (rname,
FILE_READ_ATTRIBUTES,
@@ -232,13 +236,13 @@ rpl_stat (char const *name, struct stat *buf)
/* Get the details about the directory entry. This can be done through
FindFirstFile
- <https://msdn.microsoft.com/en-us/library/aa364418.aspx>
- <https://msdn.microsoft.com/en-us/library/aa365740.aspx>
+ <https://docs.microsoft.com/en-us/windows/desktop/api/fileapi/nf-fileapi-findfirstfilea>
+ <https://docs.microsoft.com/en-us/windows/desktop/api/minwinbase/ns-minwinbase-_win32_find_dataa>
or through
FindFirstFileEx with argument FindExInfoBasic
- <https://msdn.microsoft.com/en-us/library/aa364419.aspx>
- <https://msdn.microsoft.com/en-us/library/aa364415.aspx>
- <https://msdn.microsoft.com/en-us/library/aa365740.aspx> */
+ <https://docs.microsoft.com/en-us/windows/desktop/api/fileapi/nf-fileapi-findfirstfileexa>
+ <https://docs.microsoft.com/en-us/windows/desktop/api/minwinbase/ne-minwinbase-findex_info_levels>
+ <https://docs.microsoft.com/en-us/windows/desktop/api/minwinbase/ns-minwinbase-_win32_find_dataa> */
WIN32_FIND_DATA info;
HANDLE h = FindFirstFile (rname, &info);
if (h == INVALID_HANDLE_VALUE)
diff --git a/gl/lib/stdio.in.h b/gl/lib/stdio.in.h
index acf29c4b..4a8aa555 100644
--- a/gl/lib/stdio.in.h
+++ b/gl/lib/stdio.in.h
@@ -118,6 +118,13 @@
# include <unistd.h>
#endif
+/* Android 4.3 declares renameat in <sys/stat.h>, not in <stdio.h>. */
+/* But in any case avoid namespace pollution on glibc systems. */
+#if (@GNULIB_RENAMEAT@ || defined GNULIB_POSIXCHECK) && defined __ANDROID__ \
+ && ! defined __GLIBC__
+# include <sys/stat.h>
+#endif
+
/* MSVC declares 'perror' in <stdlib.h>, not in <stdio.h>. We must include
it before we #define perror rpl_perror. */
/* But in any case avoid namespace pollution on glibc systems. */
diff --git a/gl/lib/stdlib.in.h b/gl/lib/stdlib.in.h
index d80d7ec6..f829525c 100644
--- a/gl/lib/stdlib.in.h
+++ b/gl/lib/stdlib.in.h
@@ -306,9 +306,18 @@ _GL_WARN_ON_USE (malloc, "malloc is not POSIX compliant everywhere - "
_GL_FUNCDECL_RPL (mbtowc, int, (wchar_t *pwc, const char *s, size_t n));
_GL_CXXALIAS_RPL (mbtowc, int, (wchar_t *pwc, const char *s, size_t n));
# else
+# if !@HAVE_MBTOWC@
+_GL_FUNCDECL_SYS (mbtowc, int, (wchar_t *pwc, const char *s, size_t n));
+# endif
_GL_CXXALIAS_SYS (mbtowc, int, (wchar_t *pwc, const char *s, size_t n));
# endif
_GL_CXXALIASWARN (mbtowc);
+#elif defined GNULIB_POSIXCHECK
+# undef mbtowc
+# if HAVE_RAW_DECL_MBTOWC
+_GL_WARN_ON_USE (mbtowc, "mbtowc is not portable - "
+ "use gnulib module mbtowc for portability");
+# endif
#endif
#if @GNULIB_MKDTEMP@
@@ -573,10 +582,19 @@ _GL_WARN_ON_USE (qsort_r, "qsort_r is not portable - "
#if @GNULIB_RANDOM@
-# if !@HAVE_RANDOM@
+# if @REPLACE_RANDOM@
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef random
+# define random rpl_random
+# endif
+_GL_FUNCDECL_RPL (random, long, (void));
+_GL_CXXALIAS_RPL (random, long, (void));
+# else
+# if !@HAVE_RANDOM@
_GL_FUNCDECL_SYS (random, long, (void));
-# endif
+# endif
_GL_CXXALIAS_SYS (random, long, (void));
+# endif
_GL_CXXALIASWARN (random);
#elif defined GNULIB_POSIXCHECK
# undef random
@@ -587,10 +605,19 @@ _GL_WARN_ON_USE (random, "random is unportable - "
#endif
#if @GNULIB_RANDOM@
-# if !@HAVE_RANDOM@
+# if @REPLACE_RANDOM@
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef srandom
+# define srandom rpl_srandom
+# endif
+_GL_FUNCDECL_RPL (srandom, void, (unsigned int seed));
+_GL_CXXALIAS_RPL (srandom, void, (unsigned int seed));
+# else
+# if !@HAVE_RANDOM@
_GL_FUNCDECL_SYS (srandom, void, (unsigned int seed));
-# endif
+# endif
_GL_CXXALIAS_SYS (srandom, void, (unsigned int seed));
+# endif
_GL_CXXALIASWARN (srandom);
#elif defined GNULIB_POSIXCHECK
# undef srandom
@@ -601,31 +628,52 @@ _GL_WARN_ON_USE (srandom, "srandom is unportable - "
#endif
#if @GNULIB_RANDOM@
-# if !@HAVE_RANDOM@ || !@HAVE_DECL_INITSTATE@
+# if @REPLACE_INITSTATE@
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef initstate
+# define initstate rpl_initstate
+# endif
+_GL_FUNCDECL_RPL (initstate, char *,
+ (unsigned int seed, char *buf, size_t buf_size)
+ _GL_ARG_NONNULL ((2)));
+_GL_CXXALIAS_RPL (initstate, char *,
+ (unsigned int seed, char *buf, size_t buf_size));
+# else
+# if !@HAVE_INITSTATE@ || !@HAVE_DECL_INITSTATE@
_GL_FUNCDECL_SYS (initstate, char *,
(unsigned int seed, char *buf, size_t buf_size)
_GL_ARG_NONNULL ((2)));
-# endif
+# endif
_GL_CXXALIAS_SYS (initstate, char *,
(unsigned int seed, char *buf, size_t buf_size));
+# endif
_GL_CXXALIASWARN (initstate);
#elif defined GNULIB_POSIXCHECK
# undef initstate
-# if HAVE_RAW_DECL_INITSTATE_R
+# if HAVE_RAW_DECL_INITSTATE
_GL_WARN_ON_USE (initstate, "initstate is unportable - "
"use gnulib module random for portability");
# endif
#endif
#if @GNULIB_RANDOM@
-# if !@HAVE_RANDOM@ || !@HAVE_DECL_SETSTATE@
+# if @REPLACE_SETSTATE@
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef setstate
+# define setstate rpl_setstate
+# endif
+_GL_FUNCDECL_RPL (setstate, char *, (char *arg_state) _GL_ARG_NONNULL ((1)));
+_GL_CXXALIAS_RPL (setstate, char *, (char *arg_state));
+# else
+# if !@HAVE_SETSTATE@ || !@HAVE_DECL_SETSTATE@
_GL_FUNCDECL_SYS (setstate, char *, (char *arg_state) _GL_ARG_NONNULL ((1)));
-# endif
+# endif
_GL_CXXALIAS_SYS (setstate, char *, (char *arg_state));
+# endif
_GL_CXXALIASWARN (setstate);
#elif defined GNULIB_POSIXCHECK
# undef setstate
-# if HAVE_RAW_DECL_SETSTATE_R
+# if HAVE_RAW_DECL_SETSTATE
_GL_WARN_ON_USE (setstate, "setstate is unportable - "
"use gnulib module random for portability");
# endif
@@ -881,6 +929,7 @@ _GL_WARN_ON_USE (setenv, "setenv is unportable - "
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
# define strtod rpl_strtod
# endif
+# define GNULIB_defined_strtod_function 1
_GL_FUNCDECL_RPL (strtod, double, (const char *str, char **endp)
_GL_ARG_NONNULL ((1)));
_GL_CXXALIAS_RPL (strtod, double, (const char *str, char **endp));
@@ -900,6 +949,32 @@ _GL_WARN_ON_USE (strtod, "strtod is unportable - "
# endif
#endif
+#if @GNULIB_STRTOLD@
+ /* Parse a 'long double' from STRING, updating ENDP if appropriate. */
+# if @REPLACE_STRTOLD@
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# define strtold rpl_strtold
+# endif
+# define GNULIB_defined_strtold_function 1
+_GL_FUNCDECL_RPL (strtold, long double, (const char *str, char **endp)
+ _GL_ARG_NONNULL ((1)));
+_GL_CXXALIAS_RPL (strtold, long double, (const char *str, char **endp));
+# else
+# if !@HAVE_STRTOLD@
+_GL_FUNCDECL_SYS (strtold, long double, (const char *str, char **endp)
+ _GL_ARG_NONNULL ((1)));
+# endif
+_GL_CXXALIAS_SYS (strtold, long double, (const char *str, char **endp));
+# endif
+_GL_CXXALIASWARN (strtold);
+#elif defined GNULIB_POSIXCHECK
+# undef strtold
+# if HAVE_RAW_DECL_STRTOLD
+_GL_WARN_ON_USE (strtold, "strtold is unportable - "
+ "use gnulib module strtold for portability");
+# endif
+#endif
+
#if @GNULIB_STRTOLL@
/* Parse a signed integer whose textual representation starts at STRING.
The integer is expected to be in base BASE (2 <= BASE <= 36); if BASE == 0,
diff --git a/gl/lib/str-two-way.h b/gl/lib/str-two-way.h
index 9155e6b5..7078c34b 100644
--- a/gl/lib/str-two-way.h
+++ b/gl/lib/str-two-way.h
@@ -18,7 +18,7 @@
/* Before including this file, you need to include <config.h> and
<string.h>, and define:
- RESULT_TYPE A macro that expands to the return type.
+ 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].
diff --git a/gl/lib/strchrnul.valgrind b/gl/lib/strchrnul.valgrind
index b14fa130..781d037b 100644
--- a/gl/lib/strchrnul.valgrind
+++ b/gl/lib/strchrnul.valgrind
@@ -1,4 +1,20 @@
# Suppress a valgrind message about use of uninitialized memory in strchrnul().
+
+# Copyright (C) 2008-2019 Free Software Foundation, Inc.
+#
+# This program is free software: you can redistribute it and/or modify
+# 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 <https://www.gnu.org/licenses/>.
+
# This use is OK because it provides only a speedup.
{
strchrnul-value4
diff --git a/gl/lib/sys_socket.in.h b/gl/lib/sys_socket.in.h
index a0228418..654932c4 100644
--- a/gl/lib/sys_socket.in.h
+++ b/gl/lib/sys_socket.in.h
@@ -169,7 +169,7 @@ struct sockaddr_storage
code may not run on older Windows releases then. My Windows 2000
box was not able to run the code, for example. The situation is
slightly confusing because
- <https://msdn.microsoft.com/en-us/library/ms738520>
+ <https://docs.microsoft.com/en-us/windows/desktop/api/ws2tcpip/nf-ws2tcpip-getaddrinfo>
suggests that getaddrinfo should be available on all Windows
releases. */
diff --git a/gl/lib/unistd.in.h b/gl/lib/unistd.in.h
index a10ca28a..59ee39ec 100644
--- a/gl/lib/unistd.in.h
+++ b/gl/lib/unistd.in.h
@@ -52,7 +52,10 @@
#define _@GUARD_PREFIX@_UNISTD_H
/* NetBSD 5.0 mis-defines NULL. Also get size_t. */
-#include <stddef.h>
+/* But avoid namespace pollution on glibc systems. */
+#ifndef __GLIBC__
+# include <stddef.h>
+#endif
/* mingw doesn't define the SEEK_* or *_FILENO macros in <unistd.h>. */
/* MSVC declares 'unlink' in <stdio.h>, not in <unistd.h>. We must include
@@ -68,9 +71,11 @@
# include <stdio.h>
#endif
-/* Cygwin 1.7.1 declares unlinkat in <fcntl.h>, not in <unistd.h>. */
+/* Cygwin 1.7.1 and Android 4.3 declare unlinkat in <fcntl.h>, not in
+ <unistd.h>. */
/* But avoid namespace pollution on glibc systems. */
-#if (@GNULIB_UNLINKAT@ || defined GNULIB_POSIXCHECK) && defined __CYGWIN__ \
+#if (@GNULIB_UNLINKAT@ || defined GNULIB_POSIXCHECK) \
+ && (defined __CYGWIN__ || defined __ANDROID__) \
&& ! defined __GLIBC__
# include <fcntl.h>
#endif
@@ -113,17 +118,18 @@
# include <netdb.h>
#endif
-/* MSVC defines off_t in <sys/types.h>.
- May also define off_t to a 64-bit type on native Windows. */
-#if !@HAVE_UNISTD_H@ || @WINDOWS_64_BIT_OFF_T@
-/* Get off_t. */
-# include <sys/types.h>
+/* Android 4.3 declares fchownat in <sys/stat.h>, not in <unistd.h>. */
+/* But avoid namespace pollution on glibc systems. */
+#if (@GNULIB_FCHOWNAT@ || defined GNULIB_POSIXCHECK) && defined __ANDROID__ \
+ && !defined __GLIBC__
+# include <sys/stat.h>
#endif
-#if (@GNULIB_READ@ || @GNULIB_WRITE@ \
- || @GNULIB_READLINK@ || @GNULIB_READLINKAT@ \
- || @GNULIB_PREAD@ || @GNULIB_PWRITE@ || defined GNULIB_POSIXCHECK)
-/* Get ssize_t. */
+/* MSVC defines off_t in <sys/types.h>.
+ May also define off_t to a 64-bit type on native Windows. */
+/* But avoid namespace pollution on glibc systems. */
+#ifndef __GLIBC__
+/* Get off_t, ssize_t. */
# include <sys/types.h>
#endif
@@ -322,6 +328,24 @@ _GL_WARN_ON_USE (close, "close does not portably work on sockets - "
#endif
+#if @GNULIB_COPY_FILE_RANGE@
+# 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));
+_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
+/* Assume copy_file_range is always declared. */
+_GL_WARN_ON_USE (copy_file_range,
+ "copy_file_range is unportable - "
+ "use gnulib module copy_file_range for portability");
+#endif
+
+
#if @GNULIB_DUP@
# if @REPLACE_DUP@
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
diff --git a/gl/lib/utime.c b/gl/lib/utime.c
index 88973e13..6d29045e 100644
--- a/gl/lib/utime.c
+++ b/gl/lib/utime.c
@@ -83,8 +83,8 @@ _gl_utimens_windows (const char *name, struct timespec ts[2])
/* Open a handle to the file.
CreateFile
- <https://msdn.microsoft.com/en-us/library/aa363858.aspx>
- <https://msdn.microsoft.com/en-us/library/aa363874.aspx> */
+ <https://docs.microsoft.com/en-us/windows/desktop/api/fileapi/nf-fileapi-createfilea>
+ <https://docs.microsoft.com/en-us/windows/desktop/FileIO/creating-and-opening-files> */
HANDLE handle =
CreateFile (rname,
FILE_READ_ATTRIBUTES | FILE_WRITE_ATTRIBUTES,
@@ -105,7 +105,7 @@ _gl_utimens_windows (const char *name, struct timespec ts[2])
if (check_dir)
{
/* GetFileAttributes
- <https://msdn.microsoft.com/en-us/library/aa364944.aspx> */
+ <https://docs.microsoft.com/en-us/windows/desktop/api/fileapi/nf-fileapi-getfileattributesa> */
DWORD attributes = GetFileAttributes (rname);
if (attributes == INVALID_FILE_ATTRIBUTES)
{
@@ -125,18 +125,18 @@ _gl_utimens_windows (const char *name, struct timespec ts[2])
{
/* Use SetFileTime(). See
- <https://msdn.microsoft.com/en-us/library/ms724933.aspx>
- <https://msdn.microsoft.com/en-us/library/ms724284.aspx> */
+ <https://docs.microsoft.com/en-us/windows/desktop/api/fileapi/nf-fileapi-setfiletime>
+ <https://docs.microsoft.com/en-us/windows/desktop/api/minwinbase/ns-minwinbase-filetime> */
FILETIME last_access_time;
FILETIME last_write_time;
if (ts == NULL)
{
/* GetSystemTimeAsFileTime is the same as
GetSystemTime followed by SystemTimeToFileTime.
- <https://msdn.microsoft.com/en-us/library/ms724397.aspx>.
+ <https://docs.microsoft.com/en-us/windows/desktop/api/sysinfoapi/nf-sysinfoapi-getsystemtimeasfiletime>.
It would be overkill to use
GetSystemTimePreciseAsFileTime
- <https://msdn.microsoft.com/en-us/library/hh706895.aspx>. */
+ <https://docs.microsoft.com/en-us/windows/desktop/api/sysinfoapi/nf-sysinfoapi-getsystemtimepreciseasfiletime>. */
FILETIME current_time;
GetSystemTimeAsFileTime (&current_time);
last_access_time = current_time;
diff --git a/gl/lib/utimens.c b/gl/lib/utimens.c
index e8240b49..419ee356 100644
--- a/gl/lib/utimens.c
+++ b/gl/lib/utimens.c
@@ -300,8 +300,8 @@ fdutimens (int fd, char const *file, struct timespec const timespec[2])
#ifdef USE_SETFILETIME
/* On native Windows, use SetFileTime(). See
- <https://msdn.microsoft.com/en-us/library/ms724933.aspx>
- <https://msdn.microsoft.com/en-us/library/ms724284.aspx> */
+ <https://docs.microsoft.com/en-us/windows/desktop/api/fileapi/nf-fileapi-setfiletime>
+ <https://docs.microsoft.com/en-us/windows/desktop/api/minwinbase/ns-minwinbase-filetime> */
if (0 <= fd)
{
HANDLE handle;
@@ -319,10 +319,10 @@ fdutimens (int fd, char const *file, struct timespec const timespec[2])
if (ts == NULL || ts[0].tv_nsec == UTIME_NOW || ts[1].tv_nsec == UTIME_NOW)
{
/* GetSystemTimeAsFileTime
- <https://msdn.microsoft.com/en-us/library/ms724397.aspx>.
+ <https://docs.microsoft.com/en-us/windows/desktop/api/sysinfoapi/nf-sysinfoapi-getsystemtimeasfiletime>.
It would be overkill to use
GetSystemTimePreciseAsFileTime
- <https://msdn.microsoft.com/en-us/library/hh706895.aspx>. */
+ <https://docs.microsoft.com/en-us/windows/desktop/api/sysinfoapi/nf-sysinfoapi-getsystemtimepreciseasfiletime>. */
GetSystemTimeAsFileTime (&current_time);
}
diff --git a/gl/lib/vasnprintf.c b/gl/lib/vasnprintf.c
index f1f47f0d..b3854e3e 100644
--- a/gl/lib/vasnprintf.c
+++ b/gl/lib/vasnprintf.c
@@ -4917,7 +4917,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *lengthp,
Windows Vista, the use of %n in format strings by default
crashes the program. See
<https://gcc.gnu.org/ml/gcc/2007-06/msg00122.html> and
- <https://msdn.microsoft.com/en-us/library/ms175782.aspx>
+ <https://docs.microsoft.com/en-us/cpp/c-runtime-library/reference/set-printf-count-output>
So we should avoid %n in this situation. */
fbp[1] = '\0';
# endif
diff --git a/gl/lib/verify.h b/gl/lib/verify.h
index 6930645a..afdc1ad8 100644
--- a/gl/lib/verify.h
+++ b/gl/lib/verify.h
@@ -21,29 +21,37 @@
#define _GL_VERIFY_H
-/* Define _GL_HAVE__STATIC_ASSERT to 1 if _Static_assert works as per C11.
- This is supported by GCC 4.6.0 and later, in C mode, and its use
- here generates easier-to-read diagnostics when verify (R) fails.
-
- Define _GL_HAVE_STATIC_ASSERT to 1 if static_assert works as per C++11.
- This is supported by GCC 6.1.0 and later, in C++ mode.
-
- Use this only with GCC. 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? */
-#if (4 < __GNUC__ + (6 <= __GNUC_MINOR__) \
- && (201112L <= __STDC_VERSION__ || !defined __STRICT_ANSI__) \
- && !defined __cplusplus)
-# define _GL_HAVE__STATIC_ASSERT 1
-#endif
-#if (6 <= __GNUC__) && defined __cplusplus
-# define _GL_HAVE_STATIC_ASSERT 1
+/* Define _GL_HAVE__STATIC_ASSERT to 1 if _Static_assert (R, DIAGNOSTIC)
+ works as per C11. This is supported by GCC 4.6.0 and later, in C
+ mode.
+
+ Define _GL_HAVE__STATIC_ASSERT1 to 1 if _Static_assert (R) works as
+ per C2X, and define _GL_HAVE_STATIC_ASSERT1 if static_assert (R)
+ works as per C++17. This is supported by GCC 9.1 and later.
+
+ 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__ \
+ || (!defined __STRICT_ANSI__ && 4 < __GNUC__ + (6 <= __GNUC_MINOR__)))
+# define _GL_HAVE__STATIC_ASSERT 1
+# endif
+# if (202000L <= __STDC_VERSION__ \
+ || (!defined __STRICT_ANSI__ && 9 <= __GNUC__))
+# define _GL_HAVE__STATIC_ASSERT1 1
+# endif
+#else
+# if 201703L <= __cplusplus || 9 <= __GNUC__
+# define _GL_HAVE_STATIC_ASSERT1 1
+# endif
#endif
/* FreeBSD 9.1 <sys/cdefs.h>, included by <stddef.h> and lots of other
system headers, defines a conflicting _Static_assert that is no
better than ours; override it. */
-#ifndef _GL_HAVE_STATIC_ASSERT
+#ifndef _GL_HAVE__STATIC_ASSERT
# include <stddef.h>
# undef _Static_assert
#endif
@@ -141,9 +149,9 @@
which do not support _Static_assert, also do not warn about the
last declaration mentioned above.
- * GCC warns if -Wnested-externs is enabled and verify() is used
+ * GCC warns if -Wnested-externs is enabled and 'verify' is used
within a function body; but inside a function, you can always
- arrange to use verify_expr() instead.
+ arrange to use verify_expr instead.
* In C++, any struct definition inside sizeof is invalid.
Use a template type to work around the problem. */
@@ -195,26 +203,30 @@ template <int w>
#endif
/* Verify requirement R at compile-time, as a declaration without a
- trailing ';'. If R is false, fail at compile-time, preferably
- with a diagnostic that includes the string-literal DIAGNOSTIC.
+ trailing ';'. If R is false, fail at compile-time.
+
+ 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.
Unfortunately, unlike C11, this implementation must appear as an
ordinary declaration, and cannot appear inside struct { ... }. */
-#ifdef _GL_HAVE__STATIC_ASSERT
-# define _GL_VERIFY _Static_assert
+#if defined _GL_HAVE__STATIC_ASSERT
+# define _GL_VERIFY(R, DIAGNOSTIC, ...) _Static_assert (R, DIAGNOSTIC)
#else
-# define _GL_VERIFY(R, DIAGNOSTIC) \
+# define _GL_VERIFY(R, DIAGNOSTIC, ...) \
extern int (*_GL_GENSYM (_gl_verify_function) (void)) \
[_GL_VERIFY_TRUE (R, DIAGNOSTIC)]
#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_ASSERT && !defined _Static_assert
-# define _Static_assert(R, DIAGNOSTIC) _GL_VERIFY (R, DIAGNOSTIC)
+# if !defined _GL_HAVE__STATIC_ASSERT1 && !defined _Static_assert
+# define _Static_assert(...) \
+ _GL_VERIFY (__VA_ARGS__, "static assertion failed", -)
# endif
-# if !defined _GL_HAVE_STATIC_ASSERT && !defined static_assert
+# if !defined _GL_HAVE_STATIC_ASSERT1 && !defined static_assert
# define static_assert _Static_assert /* C11 requires this #define. */
# endif
#endif
@@ -226,17 +238,10 @@ template <int w>
assert (R), there is no run-time overhead.
There are two macros, since no single macro can be used in all
- contexts in C. verify_true (R) is for scalar contexts, including
+ contexts in C. verify_expr (R, E) is for scalar contexts, including
integer constant expression contexts. verify (R) is for declaration
contexts, e.g., the top level. */
-/* Verify requirement R at compile-time, as an integer constant expression.
- Return 1. This is equivalent to verify_expr (R, 1).
-
- verify_true is obsolescent; please use verify_expr instead. */
-
-#define verify_true(R) _GL_VERIFY_TRUE (R, "verify_true (" #R ")")
-
/* Verify requirement R at compile-time. Return the value of the
expression E. */
@@ -244,22 +249,26 @@ template <int w>
(_GL_VERIFY_TRUE (R, "verify_expr (" #R ", " #E ")") ? (E) : (E))
/* Verify requirement R at compile-time, as a declaration without a
- trailing ';'. */
+ trailing ';'. verify (R) acts like static_assert (R) except that
+ it is portable to C11/C++14 and earlier, it can issue better
+ diagnostics, and its name is shorter and may be more convenient. */
-#ifdef __GNUC__
-# define verify(R) _GL_VERIFY (R, "verify (" #R ")")
+#ifdef __PGI
+/* PGI barfs if R is long. */
+# define verify(R) _GL_VERIFY (R, "verify (...)", -)
#else
-/* PGI barfs if R is long. Play it safe. */
-# define verify(R) _GL_VERIFY (R, "verify (...)")
+# define verify(R) _GL_VERIFY (R, "verify (" #R ")", -)
#endif
#ifndef __has_builtin
# define __has_builtin(x) 0
#endif
-/* Assume that R always holds. This lets the compiler optimize
- accordingly. R should not have side-effects; it may or may not be
- evaluated. Behavior is undefined if R is false. */
+/* Assume that R always holds. Behavior is undefined if R is false,
+ fails to evaluate, or has side effects. Although assuming R can
+ help a compiler generate better code or diagnostics, performance
+ can suffer if R uses hard-to-optimize features such as function
+ calls not inlined by the compiler. */
#if (__has_builtin (__builtin_unreachable) \
|| 4 < __GNUC__ + (5 <= __GNUC_MINOR__))
diff --git a/gl/lib/wcrtomb.c b/gl/lib/wcrtomb.c
index 9fc40cfc..8e56732b 100644
--- a/gl/lib/wcrtomb.c
+++ b/gl/lib/wcrtomb.c
@@ -27,8 +27,8 @@
size_t
wcrtomb (char *s, wchar_t wc, mbstate_t *ps)
{
- /* This implementation of wcrtomb on top of wctomb() supports only
- stateless encodings. ps must be in the initial state. */
+ /* This implementation of wcrtomb supports only stateless encodings.
+ ps must be in the initial state. */
if (ps != NULL && !mbsinit (ps))
{
errno = EINVAL;
@@ -40,10 +40,21 @@ wcrtomb (char *s, wchar_t wc, mbstate_t *ps)
return 1;
else
{
+#if defined __ANDROID__
+ /* Implement consistently with mbrtowc(): through a 1:1 correspondence,
+ as in ISO-8859-1. */
+ if (wc >= 0 && wc <= 0xff)
+ {
+ *s = (unsigned char) wc;
+ return 1;
+ }
+#else
+ /* Implement on top of wctomb(). */
int ret = wctomb (s, wc);
if (ret >= 0)
return ret;
+#endif
else
{
errno = EILSEQ;
diff --git a/gl/lib/windows-initguard.h b/gl/lib/windows-initguard.h
new file mode 100644
index 00000000..8aefd0b0
--- /dev/null
+++ b/gl/lib/windows-initguard.h
@@ -0,0 +1,35 @@
+/* Init guards, somewhat like spinlocks (native Windows implementation).
+ Copyright (C) 2005-2019 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute 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)
+ 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 <https://www.gnu.org/licenses/>. */
+
+/* Written by Bruno Haible <bruno@clisp.org>, 2005.
+ Based on GCC's gthr-win32.h. */
+
+#ifndef _WINDOWS_INITGUARD_H
+#define _WINDOWS_INITGUARD_H
+
+#define WIN32_LEAN_AND_MEAN /* avoid including junk */
+#include <windows.h>
+
+typedef struct
+ {
+ volatile int done;
+ volatile LONG started;
+ }
+ glwthread_initguard_t;
+
+#define GLWTHREAD_INITGUARD_INIT { 0, -1 }
+
+#endif /* _WINDOWS_INITGUARD_H */
diff --git a/gl/lib/windows-mutex.c b/gl/lib/windows-mutex.c
new file mode 100644
index 00000000..94338816
--- /dev/null
+++ b/gl/lib/windows-mutex.c
@@ -0,0 +1,95 @@
+/* Plain mutexes (native Windows implementation).
+ Copyright (C) 2005-2019 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute 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)
+ 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 <https://www.gnu.org/licenses/>. */
+
+/* Written by Bruno Haible <bruno@clisp.org>, 2005.
+ Based on GCC's gthr-win32.h. */
+
+#include <config.h>
+
+/* Specification. */
+#include "windows-mutex.h"
+
+#include <errno.h>
+
+void
+glwthread_mutex_init (glwthread_mutex_t *mutex)
+{
+ InitializeCriticalSection (&mutex->lock);
+ mutex->guard.done = 1;
+}
+
+int
+glwthread_mutex_lock (glwthread_mutex_t *mutex)
+{
+ if (!mutex->guard.done)
+ {
+ if (InterlockedIncrement (&mutex->guard.started) == 0)
+ /* This thread is the first one to need this mutex. Initialize it. */
+ glwthread_mutex_init (mutex);
+ else
+ {
+ /* Don't let mutex->guard.started grow and wrap around. */
+ InterlockedDecrement (&mutex->guard.started);
+ /* Yield the CPU while waiting for another thread to finish
+ initializing this mutex. */
+ while (!mutex->guard.done)
+ Sleep (0);
+ }
+ }
+ EnterCriticalSection (&mutex->lock);
+ return 0;
+}
+
+int
+glwthread_mutex_trylock (glwthread_mutex_t *mutex)
+{
+ if (!mutex->guard.done)
+ {
+ if (InterlockedIncrement (&mutex->guard.started) == 0)
+ /* This thread is the first one to need this mutex. Initialize it. */
+ glwthread_mutex_init (mutex);
+ else
+ {
+ /* Don't let mutex->guard.started grow and wrap around. */
+ InterlockedDecrement (&mutex->guard.started);
+ /* Let another thread finish initializing this mutex, and let it also
+ lock this mutex. */
+ return EBUSY;
+ }
+ }
+ if (!TryEnterCriticalSection (&mutex->lock))
+ return EBUSY;
+ return 0;
+}
+
+int
+glwthread_mutex_unlock (glwthread_mutex_t *mutex)
+{
+ if (!mutex->guard.done)
+ return EINVAL;
+ LeaveCriticalSection (&mutex->lock);
+ return 0;
+}
+
+int
+glwthread_mutex_destroy (glwthread_mutex_t *mutex)
+{
+ if (!mutex->guard.done)
+ return EINVAL;
+ DeleteCriticalSection (&mutex->lock);
+ mutex->guard.done = 0;
+ return 0;
+}
diff --git a/gl/lib/windows-mutex.h b/gl/lib/windows-mutex.h
new file mode 100644
index 00000000..5364f92d
--- /dev/null
+++ b/gl/lib/windows-mutex.h
@@ -0,0 +1,51 @@
+/* Plain mutexes (native Windows implementation).
+ Copyright (C) 2005-2019 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute 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)
+ 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 <https://www.gnu.org/licenses/>. */
+
+/* Written by Bruno Haible <bruno@clisp.org>, 2005.
+ Based on GCC's gthr-win32.h. */
+
+#ifndef _WINDOWS_MUTEX_H
+#define _WINDOWS_MUTEX_H
+
+#define WIN32_LEAN_AND_MEAN /* avoid including junk */
+#include <windows.h>
+
+#include "windows-initguard.h"
+
+typedef struct
+ {
+ glwthread_initguard_t guard; /* protects the initialization */
+ CRITICAL_SECTION lock;
+ }
+ glwthread_mutex_t;
+
+#define GLWTHREAD_MUTEX_INIT { GLWTHREAD_INITGUARD_INIT }
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+extern void glwthread_mutex_init (glwthread_mutex_t *mutex);
+extern int glwthread_mutex_lock (glwthread_mutex_t *mutex);
+extern int glwthread_mutex_trylock (glwthread_mutex_t *mutex);
+extern int glwthread_mutex_unlock (glwthread_mutex_t *mutex);
+extern int glwthread_mutex_destroy (glwthread_mutex_t *mutex);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* _WINDOWS_MUTEX_H */
diff --git a/gl/lib/windows-once.c b/gl/lib/windows-once.c
new file mode 100644
index 00000000..455c50ef
--- /dev/null
+++ b/gl/lib/windows-once.c
@@ -0,0 +1,62 @@
+/* Once-only control (native Windows implementation).
+ Copyright (C) 2005-2019 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute 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)
+ 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 <https://www.gnu.org/licenses/>. */
+
+/* Written by Bruno Haible <bruno@clisp.org>, 2005.
+ Based on GCC's gthr-win32.h. */
+
+#include <config.h>
+
+/* Specification. */
+#include "windows-once.h"
+
+#include <stdlib.h>
+
+void
+glwthread_once (glwthread_once_t *once_control, void (*initfunction) (void))
+{
+ if (once_control->inited <= 0)
+ {
+ if (InterlockedIncrement (&once_control->started) == 0)
+ {
+ /* This thread is the first one to come to this once_control. */
+ InitializeCriticalSection (&once_control->lock);
+ EnterCriticalSection (&once_control->lock);
+ once_control->inited = 0;
+ initfunction ();
+ once_control->inited = 1;
+ LeaveCriticalSection (&once_control->lock);
+ }
+ else
+ {
+ /* Don't let once_control->started grow and wrap around. */
+ InterlockedDecrement (&once_control->started);
+ /* Some other thread has already started the initialization.
+ Yield the CPU while waiting for the other thread to finish
+ initializing and taking the lock. */
+ while (once_control->inited < 0)
+ Sleep (0);
+ if (once_control->inited <= 0)
+ {
+ /* Take the lock. This blocks until the other thread has
+ finished calling the initfunction. */
+ EnterCriticalSection (&once_control->lock);
+ LeaveCriticalSection (&once_control->lock);
+ if (!(once_control->inited > 0))
+ abort ();
+ }
+ }
+ }
+}
diff --git a/gl/lib/windows-once.h b/gl/lib/windows-once.h
new file mode 100644
index 00000000..15999839
--- /dev/null
+++ b/gl/lib/windows-once.h
@@ -0,0 +1,47 @@
+/* Once-only control (native Windows implementation).
+ Copyright (C) 2005-2019 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute 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)
+ 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 <https://www.gnu.org/licenses/>. */
+
+/* Written by Bruno Haible <bruno@clisp.org>, 2005.
+ Based on GCC's gthr-win32.h. */
+
+#ifndef _WINDOWS_ONCE_H
+#define _WINDOWS_ONCE_H
+
+#define WIN32_LEAN_AND_MEAN /* avoid including junk */
+#include <windows.h>
+
+typedef struct
+ {
+ volatile int inited;
+ volatile LONG started;
+ CRITICAL_SECTION lock;
+ }
+ glwthread_once_t;
+
+#define GLWTHREAD_ONCE_INIT { -1, -1 }
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+extern void glwthread_once (glwthread_once_t *once_control,
+ void (*initfunction) (void));
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* _WINDOWS_ONCE_H */
diff --git a/gl/lib/windows-recmutex.c b/gl/lib/windows-recmutex.c
new file mode 100644
index 00000000..7e6e4465
--- /dev/null
+++ b/gl/lib/windows-recmutex.c
@@ -0,0 +1,127 @@
+/* Plain recursive mutexes (native Windows implementation).
+ Copyright (C) 2005-2019 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute 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)
+ 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 <https://www.gnu.org/licenses/>. */
+
+/* Written by Bruno Haible <bruno@clisp.org>, 2005.
+ Based on GCC's gthr-win32.h. */
+
+#include <config.h>
+
+/* Specification. */
+#include "windows-recmutex.h"
+
+#include <errno.h>
+
+void
+glwthread_recmutex_init (glwthread_recmutex_t *mutex)
+{
+ mutex->owner = 0;
+ mutex->depth = 0;
+ InitializeCriticalSection (&mutex->lock);
+ mutex->guard.done = 1;
+}
+
+int
+glwthread_recmutex_lock (glwthread_recmutex_t *mutex)
+{
+ if (!mutex->guard.done)
+ {
+ if (InterlockedIncrement (&mutex->guard.started) == 0)
+ /* This thread is the first one to need this mutex. Initialize it. */
+ glwthread_recmutex_init (mutex);
+ else
+ {
+ /* Don't let mutex->guard.started grow and wrap around. */
+ InterlockedDecrement (&mutex->guard.started);
+ /* Yield the CPU while waiting for another thread to finish
+ initializing this mutex. */
+ while (!mutex->guard.done)
+ Sleep (0);
+ }
+ }
+ {
+ DWORD self = GetCurrentThreadId ();
+ if (mutex->owner != self)
+ {
+ EnterCriticalSection (&mutex->lock);
+ mutex->owner = self;
+ }
+ if (++(mutex->depth) == 0) /* wraparound? */
+ {
+ mutex->depth--;
+ return EAGAIN;
+ }
+ }
+ return 0;
+}
+
+int
+glwthread_recmutex_trylock (glwthread_recmutex_t *mutex)
+{
+ if (!mutex->guard.done)
+ {
+ if (InterlockedIncrement (&mutex->guard.started) == 0)
+ /* This thread is the first one to need this mutex. Initialize it. */
+ glwthread_recmutex_init (mutex);
+ else
+ {
+ /* Don't let mutex->guard.started grow and wrap around. */
+ InterlockedDecrement (&mutex->guard.started);
+ /* Let another thread finish initializing this mutex, and let it also
+ lock this mutex. */
+ return EBUSY;
+ }
+ }
+ {
+ DWORD self = GetCurrentThreadId ();
+ if (mutex->owner != self)
+ {
+ if (!TryEnterCriticalSection (&mutex->lock))
+ return EBUSY;
+ mutex->owner = self;
+ }
+ if (++(mutex->depth) == 0) /* wraparound? */
+ {
+ mutex->depth--;
+ return EAGAIN;
+ }
+ }
+ return 0;
+}
+
+int
+glwthread_recmutex_unlock (glwthread_recmutex_t *mutex)
+{
+ if (mutex->owner != GetCurrentThreadId ())
+ return EPERM;
+ if (mutex->depth == 0)
+ return EINVAL;
+ if (--(mutex->depth) == 0)
+ {
+ mutex->owner = 0;
+ LeaveCriticalSection (&mutex->lock);
+ }
+ return 0;
+}
+
+int
+glwthread_recmutex_destroy (glwthread_recmutex_t *mutex)
+{
+ if (mutex->owner != 0)
+ return EBUSY;
+ DeleteCriticalSection (&mutex->lock);
+ mutex->guard.done = 0;
+ return 0;
+}
diff --git a/gl/lib/windows-recmutex.h b/gl/lib/windows-recmutex.h
new file mode 100644
index 00000000..d1431086
--- /dev/null
+++ b/gl/lib/windows-recmutex.h
@@ -0,0 +1,57 @@
+/* Plain recursive mutexes (native Windows implementation).
+ Copyright (C) 2005-2019 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute 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)
+ 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 <https://www.gnu.org/licenses/>. */
+
+/* Written by Bruno Haible <bruno@clisp.org>, 2005.
+ Based on GCC's gthr-win32.h. */
+
+#ifndef _WINDOWS_RECMUTEX_H
+#define _WINDOWS_RECMUTEX_H
+
+#define WIN32_LEAN_AND_MEAN /* avoid including junk */
+#include <windows.h>
+
+#include "windows-initguard.h"
+
+/* The native Windows documentation says that CRITICAL_SECTION already
+ implements a recursive lock. But we need not rely on it: It's easy to
+ implement a recursive lock without this assumption. */
+
+typedef struct
+ {
+ glwthread_initguard_t guard; /* protects the initialization */
+ DWORD owner;
+ unsigned long depth;
+ CRITICAL_SECTION lock;
+ }
+ glwthread_recmutex_t;
+
+#define GLWTHREAD_RECMUTEX_INIT { GLWTHREAD_INITGUARD_INIT, 0, 0 }
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+extern void glwthread_recmutex_init (glwthread_recmutex_t *mutex);
+extern int glwthread_recmutex_lock (glwthread_recmutex_t *mutex);
+extern int glwthread_recmutex_trylock (glwthread_recmutex_t *mutex);
+extern int glwthread_recmutex_unlock (glwthread_recmutex_t *mutex);
+extern int glwthread_recmutex_destroy (glwthread_recmutex_t *mutex);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* _WINDOWS_RECMUTEX_H */
diff --git a/gl/lib/windows-rwlock.c b/gl/lib/windows-rwlock.c
new file mode 100644
index 00000000..9207d1b9
--- /dev/null
+++ b/gl/lib/windows-rwlock.c
@@ -0,0 +1,373 @@
+/* Read-write locks (native Windows implementation).
+ Copyright (C) 2005-2019 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute 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)
+ 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 <https://www.gnu.org/licenses/>. */
+
+/* Written by Bruno Haible <bruno@clisp.org>, 2005.
+ Based on GCC's gthr-win32.h. */
+
+#include <config.h>
+
+/* Specification. */
+#include "windows-rwlock.h"
+
+#include <errno.h>
+#include <stdlib.h>
+
+/* In this file, the waitqueues are implemented as circular arrays. */
+#define glwthread_waitqueue_t glwthread_carray_waitqueue_t
+
+static void
+glwthread_waitqueue_init (glwthread_waitqueue_t *wq)
+{
+ wq->array = NULL;
+ wq->count = 0;
+ wq->alloc = 0;
+ wq->offset = 0;
+}
+
+/* Enqueues the current thread, represented by an event, in a wait queue.
+ Returns INVALID_HANDLE_VALUE if an allocation failure occurs. */
+static HANDLE
+glwthread_waitqueue_add (glwthread_waitqueue_t *wq)
+{
+ HANDLE event;
+ unsigned int index;
+
+ if (wq->count == wq->alloc)
+ {
+ unsigned int new_alloc = 2 * wq->alloc + 1;
+ HANDLE *new_array =
+ (HANDLE *) realloc (wq->array, new_alloc * sizeof (HANDLE));
+ if (new_array == NULL)
+ /* No more memory. */
+ return INVALID_HANDLE_VALUE;
+ /* Now is a good opportunity to rotate the array so that its contents
+ starts at offset 0. */
+ if (wq->offset > 0)
+ {
+ unsigned int old_count = wq->count;
+ unsigned int old_alloc = wq->alloc;
+ unsigned int old_offset = wq->offset;
+ unsigned int i;
+ if (old_offset + old_count > old_alloc)
+ {
+ unsigned int limit = old_offset + old_count - old_alloc;
+ for (i = 0; i < limit; i++)
+ new_array[old_alloc + i] = new_array[i];
+ }
+ for (i = 0; i < old_count; i++)
+ new_array[i] = new_array[old_offset + i];
+ wq->offset = 0;
+ }
+ wq->array = new_array;
+ wq->alloc = new_alloc;
+ }
+ /* Whether the created event is a manual-reset one or an auto-reset one,
+ does not matter, since we will wait on it only once. */
+ event = CreateEvent (NULL, TRUE, FALSE, NULL);
+ if (event == INVALID_HANDLE_VALUE)
+ /* No way to allocate an event. */
+ return INVALID_HANDLE_VALUE;
+ index = wq->offset + wq->count;
+ if (index >= wq->alloc)
+ index -= wq->alloc;
+ wq->array[index] = event;
+ wq->count++;
+ return event;
+}
+
+/* Notifies the first thread from a wait queue and dequeues it. */
+static void
+glwthread_waitqueue_notify_first (glwthread_waitqueue_t *wq)
+{
+ SetEvent (wq->array[wq->offset + 0]);
+ wq->offset++;
+ wq->count--;
+ if (wq->count == 0 || wq->offset == wq->alloc)
+ wq->offset = 0;
+}
+
+/* Notifies all threads from a wait queue and dequeues them all. */
+static void
+glwthread_waitqueue_notify_all (glwthread_waitqueue_t *wq)
+{
+ unsigned int i;
+
+ for (i = 0; i < wq->count; i++)
+ {
+ unsigned int index = wq->offset + i;
+ if (index >= wq->alloc)
+ index -= wq->alloc;
+ SetEvent (wq->array[index]);
+ }
+ wq->count = 0;
+ wq->offset = 0;
+}
+
+void
+glwthread_rwlock_init (glwthread_rwlock_t *lock)
+{
+ InitializeCriticalSection (&lock->lock);
+ glwthread_waitqueue_init (&lock->waiting_readers);
+ glwthread_waitqueue_init (&lock->waiting_writers);
+ lock->runcount = 0;
+ lock->guard.done = 1;
+}
+
+int
+glwthread_rwlock_rdlock (glwthread_rwlock_t *lock)
+{
+ if (!lock->guard.done)
+ {
+ if (InterlockedIncrement (&lock->guard.started) == 0)
+ /* This thread is the first one to need this lock. Initialize it. */
+ glwthread_rwlock_init (lock);
+ else
+ {
+ /* Don't let lock->guard.started grow and wrap around. */
+ InterlockedDecrement (&lock->guard.started);
+ /* Yield the CPU while waiting for another thread to finish
+ initializing this lock. */
+ while (!lock->guard.done)
+ Sleep (0);
+ }
+ }
+ EnterCriticalSection (&lock->lock);
+ /* Test whether only readers are currently running, and whether the runcount
+ field will not overflow, and whether no writer is waiting. The latter
+ condition is because POSIX recommends that "write locks shall take
+ precedence over read locks", to avoid "writer starvation". */
+ if (!(lock->runcount + 1 > 0 && lock->waiting_writers.count == 0))
+ {
+ /* This thread has to wait for a while. Enqueue it among the
+ waiting_readers. */
+ HANDLE event = glwthread_waitqueue_add (&lock->waiting_readers);
+ if (event != INVALID_HANDLE_VALUE)
+ {
+ DWORD result;
+ LeaveCriticalSection (&lock->lock);
+ /* Wait until another thread signals this event. */
+ result = WaitForSingleObject (event, INFINITE);
+ if (result == WAIT_FAILED || result == WAIT_TIMEOUT)
+ abort ();
+ CloseHandle (event);
+ /* The thread which signalled the event already did the bookkeeping:
+ removed us from the waiting_readers, incremented lock->runcount. */
+ if (!(lock->runcount > 0))
+ abort ();
+ return 0;
+ }
+ else
+ {
+ /* Allocation failure. Weird. */
+ do
+ {
+ LeaveCriticalSection (&lock->lock);
+ Sleep (1);
+ EnterCriticalSection (&lock->lock);
+ }
+ while (!(lock->runcount + 1 > 0));
+ }
+ }
+ lock->runcount++;
+ LeaveCriticalSection (&lock->lock);
+ return 0;
+}
+
+int
+glwthread_rwlock_wrlock (glwthread_rwlock_t *lock)
+{
+ if (!lock->guard.done)
+ {
+ if (InterlockedIncrement (&lock->guard.started) == 0)
+ /* This thread is the first one to need this lock. Initialize it. */
+ glwthread_rwlock_init (lock);
+ else
+ {
+ /* Don't let lock->guard.started grow and wrap around. */
+ InterlockedDecrement (&lock->guard.started);
+ /* Yield the CPU while waiting for another thread to finish
+ initializing this lock. */
+ while (!lock->guard.done)
+ Sleep (0);
+ }
+ }
+ EnterCriticalSection (&lock->lock);
+ /* Test whether no readers or writers are currently running. */
+ if (!(lock->runcount == 0))
+ {
+ /* This thread has to wait for a while. Enqueue it among the
+ waiting_writers. */
+ HANDLE event = glwthread_waitqueue_add (&lock->waiting_writers);
+ if (event != INVALID_HANDLE_VALUE)
+ {
+ DWORD result;
+ LeaveCriticalSection (&lock->lock);
+ /* Wait until another thread signals this event. */
+ result = WaitForSingleObject (event, INFINITE);
+ if (result == WAIT_FAILED || result == WAIT_TIMEOUT)
+ abort ();
+ CloseHandle (event);
+ /* The thread which signalled the event already did the bookkeeping:
+ removed us from the waiting_writers, set lock->runcount = -1. */
+ if (!(lock->runcount == -1))
+ abort ();
+ return 0;
+ }
+ else
+ {
+ /* Allocation failure. Weird. */
+ do
+ {
+ LeaveCriticalSection (&lock->lock);
+ Sleep (1);
+ EnterCriticalSection (&lock->lock);
+ }
+ while (!(lock->runcount == 0));
+ }
+ }
+ lock->runcount--; /* runcount becomes -1 */
+ LeaveCriticalSection (&lock->lock);
+ return 0;
+}
+
+int
+glwthread_rwlock_tryrdlock (glwthread_rwlock_t *lock)
+{
+ if (!lock->guard.done)
+ {
+ if (InterlockedIncrement (&lock->guard.started) == 0)
+ /* This thread is the first one to need this lock. Initialize it. */
+ glwthread_rwlock_init (lock);
+ else
+ {
+ /* Don't let lock->guard.started grow and wrap around. */
+ InterlockedDecrement (&lock->guard.started);
+ /* Yield the CPU while waiting for another thread to finish
+ initializing this lock. */
+ while (!lock->guard.done)
+ Sleep (0);
+ }
+ }
+ /* It's OK to wait for this critical section, because it is never taken for a
+ long time. */
+ EnterCriticalSection (&lock->lock);
+ /* Test whether only readers are currently running, and whether the runcount
+ field will not overflow, and whether no writer is waiting. The latter
+ condition is because POSIX recommends that "write locks shall take
+ precedence over read locks", to avoid "writer starvation". */
+ if (!(lock->runcount + 1 > 0 && lock->waiting_writers.count == 0))
+ {
+ /* This thread would have to wait for a while. Return instead. */
+ LeaveCriticalSection (&lock->lock);
+ return EBUSY;
+ }
+ lock->runcount++;
+ LeaveCriticalSection (&lock->lock);
+ return 0;
+}
+
+int
+glwthread_rwlock_trywrlock (glwthread_rwlock_t *lock)
+{
+ if (!lock->guard.done)
+ {
+ if (InterlockedIncrement (&lock->guard.started) == 0)
+ /* This thread is the first one to need this lock. Initialize it. */
+ glwthread_rwlock_init (lock);
+ else
+ {
+ /* Don't let lock->guard.started grow and wrap around. */
+ InterlockedDecrement (&lock->guard.started);
+ /* Yield the CPU while waiting for another thread to finish
+ initializing this lock. */
+ while (!lock->guard.done)
+ Sleep (0);
+ }
+ }
+ /* It's OK to wait for this critical section, because it is never taken for a
+ long time. */
+ EnterCriticalSection (&lock->lock);
+ /* Test whether no readers or writers are currently running. */
+ if (!(lock->runcount == 0))
+ {
+ /* This thread would have to wait for a while. Return instead. */
+ LeaveCriticalSection (&lock->lock);
+ return EBUSY;
+ }
+ lock->runcount--; /* runcount becomes -1 */
+ LeaveCriticalSection (&lock->lock);
+ return 0;
+}
+
+int
+glwthread_rwlock_unlock (glwthread_rwlock_t *lock)
+{
+ if (!lock->guard.done)
+ return EINVAL;
+ EnterCriticalSection (&lock->lock);
+ if (lock->runcount < 0)
+ {
+ /* Drop a writer lock. */
+ if (!(lock->runcount == -1))
+ abort ();
+ lock->runcount = 0;
+ }
+ else
+ {
+ /* Drop a reader lock. */
+ if (!(lock->runcount > 0))
+ {
+ LeaveCriticalSection (&lock->lock);
+ return EPERM;
+ }
+ lock->runcount--;
+ }
+ if (lock->runcount == 0)
+ {
+ /* POSIX recommends that "write locks shall take precedence over read
+ locks", to avoid "writer starvation". */
+ if (lock->waiting_writers.count > 0)
+ {
+ /* Wake up one of the waiting writers. */
+ lock->runcount--;
+ glwthread_waitqueue_notify_first (&lock->waiting_writers);
+ }
+ else
+ {
+ /* Wake up all waiting readers. */
+ lock->runcount += lock->waiting_readers.count;
+ glwthread_waitqueue_notify_all (&lock->waiting_readers);
+ }
+ }
+ LeaveCriticalSection (&lock->lock);
+ return 0;
+}
+
+int
+glwthread_rwlock_destroy (glwthread_rwlock_t *lock)
+{
+ if (!lock->guard.done)
+ return EINVAL;
+ if (lock->runcount != 0)
+ return EBUSY;
+ DeleteCriticalSection (&lock->lock);
+ if (lock->waiting_readers.array != NULL)
+ free (lock->waiting_readers.array);
+ if (lock->waiting_writers.array != NULL)
+ free (lock->waiting_writers.array);
+ lock->guard.done = 0;
+ return 0;
+}
diff --git a/gl/lib/windows-rwlock.h b/gl/lib/windows-rwlock.h
new file mode 100644
index 00000000..90020406
--- /dev/null
+++ b/gl/lib/windows-rwlock.h
@@ -0,0 +1,68 @@
+/* Read-write locks (native Windows implementation).
+ Copyright (C) 2005-2019 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute 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)
+ 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 <https://www.gnu.org/licenses/>. */
+
+/* Written by Bruno Haible <bruno@clisp.org>, 2005.
+ Based on GCC's gthr-win32.h. */
+
+#ifndef _WINDOWS_RWLOCK_H
+#define _WINDOWS_RWLOCK_H
+
+#define WIN32_LEAN_AND_MEAN /* avoid including junk */
+#include <windows.h>
+
+#include "windows-initguard.h"
+
+/* It is impossible to implement read-write locks using plain locks, without
+ introducing an extra thread dedicated to managing read-write locks.
+ Therefore here we need to use the low-level Event type. */
+
+typedef struct
+ {
+ HANDLE *array; /* array of waiting threads, each represented by an event */
+ unsigned int count; /* number of waiting threads */
+ unsigned int alloc; /* length of allocated array */
+ unsigned int offset; /* index of first waiting thread in array */
+ }
+ glwthread_carray_waitqueue_t;
+typedef struct
+ {
+ glwthread_initguard_t guard; /* protects the initialization */
+ CRITICAL_SECTION lock; /* protects the remaining fields */
+ glwthread_carray_waitqueue_t waiting_readers; /* waiting readers */
+ glwthread_carray_waitqueue_t waiting_writers; /* waiting writers */
+ int runcount; /* number of readers running, or -1 when a writer runs */
+ }
+ glwthread_rwlock_t;
+
+#define GLWTHREAD_RWLOCK_INIT { GLWTHREAD_INITGUARD_INIT }
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+extern void glwthread_rwlock_init (glwthread_rwlock_t *lock);
+extern int glwthread_rwlock_rdlock (glwthread_rwlock_t *lock);
+extern int glwthread_rwlock_wrlock (glwthread_rwlock_t *lock);
+extern int glwthread_rwlock_tryrdlock (glwthread_rwlock_t *lock);
+extern int glwthread_rwlock_trywrlock (glwthread_rwlock_t *lock);
+extern int glwthread_rwlock_unlock (glwthread_rwlock_t *lock);
+extern int glwthread_rwlock_destroy (glwthread_rwlock_t *lock);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* _WINDOWS_RWLOCK_H */
diff --git a/gl/m4/alloca.m4 b/gl/m4/alloca.m4
index 46d60f9c..29bd289b 100644
--- a/gl/m4/alloca.m4
+++ b/gl/m4/alloca.m4
@@ -1,4 +1,4 @@
-# alloca.m4 serial 14
+# alloca.m4 serial 15
dnl Copyright (C) 2002-2004, 2006-2007, 2009-2019 Free Software Foundation,
dnl Inc.
dnl This file is free software; the Free Software Foundation
@@ -37,6 +37,13 @@ AC_DEFUN([gl_FUNC_ALLOCA],
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
+ else
+ HAVE_ALLOCA_H=0
+ fi
+ AC_SUBST([HAVE_ALLOCA_H])
])
# Prerequisites of lib/alloca.c.
diff --git a/gl/m4/canonicalize.m4 b/gl/m4/canonicalize.m4
index 5b6e25df..b61747bd 100644
--- a/gl/m4/canonicalize.m4
+++ b/gl/m4/canonicalize.m4
@@ -1,4 +1,4 @@
-# canonicalize.m4 serial 29
+# canonicalize.m4 serial 30
dnl Copyright (C) 2003-2007, 2009-2019 Free Software Foundation, Inc.
@@ -113,6 +113,8 @@ AC_DEFUN([gl_FUNC_REALPATH_WORKS],
[case "$host_os" in
# Guess yes on glibc systems.
*-gnu* | gnu*) gl_cv_func_realpath_works="guessing yes" ;;
+ # Guess yes on musl systems.
+ *-musl*) gl_cv_func_realpath_works="guessing yes" ;;
# Guess no on native Windows.
mingw*) gl_cv_func_realpath_works="guessing no" ;;
# If we don't know, assume the worst.
diff --git a/gl/m4/chown.m4 b/gl/m4/chown.m4
index d92fd1c1..b7983250 100644
--- a/gl/m4/chown.m4
+++ b/gl/m4/chown.m4
@@ -1,4 +1,4 @@
-# serial 30
+# serial 32
# Determine whether we need the chown wrapper.
dnl Copyright (C) 1997-2001, 2003-2005, 2007, 2009-2019 Free Software
@@ -109,10 +109,12 @@ AC_DEFUN_ONCE([gl_FUNC_CHOWN],
[gl_cv_func_chown_slash_works=yes],
[gl_cv_func_chown_slash_works=no],
[case "$host_os" in
- # Guess yes on glibc systems.
- *-gnu*) gl_cv_func_chown_slash_works="guessing yes" ;;
- # If we don't know, assume the worst.
- *) gl_cv_func_chown_slash_works="guessing no" ;;
+ # Guess yes on glibc systems.
+ *-gnu*) gl_cv_func_chown_slash_works="guessing yes" ;;
+ # Guess yes on musl systems.
+ *-musl*) gl_cv_func_chown_slash_works="guessing yes" ;;
+ # If we don't know, assume the worst.
+ *) gl_cv_func_chown_slash_works="guessing no" ;;
esac
])
rm -f conftest.link conftest.file])
@@ -145,10 +147,12 @@ AC_DEFUN_ONCE([gl_FUNC_CHOWN],
[gl_cv_func_chown_ctime_works=yes],
[gl_cv_func_chown_ctime_works=no],
[case "$host_os" in
- # Guess yes on glibc systems.
- *-gnu*) gl_cv_func_chown_ctime_works="guessing yes" ;;
- # If we don't know, assume the worst.
- *) gl_cv_func_chown_ctime_works="guessing no" ;;
+ # Guess yes on glibc systems.
+ *-gnu*) gl_cv_func_chown_ctime_works="guessing yes" ;;
+ # Guess yes on musl systems.
+ *-musl*) gl_cv_func_chown_ctime_works="guessing yes" ;;
+ # If we don't know, assume the worst.
+ *) gl_cv_func_chown_ctime_works="guessing no" ;;
esac
])
rm -f conftest.file])
@@ -196,13 +200,16 @@ AC_DEFUN_ONCE([gl_FUNC_CHOWN_FOLLOWS_SYMLINK],
]])],
[gl_cv_func_chown_follows_symlink=yes],
[gl_cv_func_chown_follows_symlink=no],
- [gl_cv_func_chown_follows_symlink=yes]
+ [gl_cv_func_chown_follows_symlink="guessing yes"]
)
]
)
- if test $gl_cv_func_chown_follows_symlink = no; then
- AC_DEFINE([CHOWN_MODIFIES_SYMLINK], [1],
- [Define if chown modifies symlinks.])
- fi
+ case "$gl_cv_func_chown_follows_symlink" in
+ *yes) ;;
+ *)
+ AC_DEFINE([CHOWN_MODIFIES_SYMLINK], [1],
+ [Define if chown modifies symlinks.])
+ ;;
+ esac
])
diff --git a/gl/m4/d-ino.m4 b/gl/m4/d-ino.m4
index f1420ccf..87dcacc8 100644
--- a/gl/m4/d-ino.m4
+++ b/gl/m4/d-ino.m4
@@ -1,4 +1,4 @@
-# serial 18
+# serial 19
dnl From Jim Meyering.
dnl
@@ -40,12 +40,14 @@ AC_DEFUN([gl_CHECK_TYPE_STRUCT_DIRENT_D_INO],
[gl_cv_struct_dirent_d_ino=yes],
[gl_cv_struct_dirent_d_ino=no],
[case "$host_os" in
- # Guess yes on glibc systems with Linux kernel.
- linux*-gnu*) gl_cv_struct_dirent_d_ino="guessing yes" ;;
- # Guess no on native Windows.
- mingw*) gl_cv_struct_dirent_d_ino="guessing no" ;;
- # If we don't know, assume the worst.
- *) gl_cv_struct_dirent_d_ino="guessing no" ;;
+ # Guess yes on glibc systems with Linux kernel.
+ linux*-gnu*) gl_cv_struct_dirent_d_ino="guessing yes" ;;
+ # Guess yes on musl systems with Linux kernel.
+ linux*-musl*) gl_cv_struct_dirent_d_ino="guessing yes" ;;
+ # Guess no on native Windows.
+ mingw*) gl_cv_struct_dirent_d_ino="guessing no" ;;
+ # If we don't know, assume the worst.
+ *) gl_cv_struct_dirent_d_ino="guessing no" ;;
esac
])])
case "$gl_cv_struct_dirent_d_ino" in
diff --git a/gl/m4/fdopendir.m4 b/gl/m4/fdopendir.m4
index 04905519..b2b3b037 100644
--- a/gl/m4/fdopendir.m4
+++ b/gl/m4/fdopendir.m4
@@ -1,4 +1,4 @@
-# serial 10
+# serial 11
# See if we need to provide fdopendir.
dnl Copyright (C) 2009-2019 Free Software Foundation, Inc.
@@ -45,10 +45,12 @@ DIR *fdopendir (int);
[gl_cv_func_fdopendir_works=yes],
[gl_cv_func_fdopendir_works=no],
[case "$host_os" in
- # Guess yes on glibc systems.
- *-gnu*) gl_cv_func_fdopendir_works="guessing yes" ;;
- # If we don't know, assume the worst.
- *) gl_cv_func_fdopendir_works="guessing no" ;;
+ # Guess yes on glibc systems.
+ *-gnu*) gl_cv_func_fdopendir_works="guessing yes" ;;
+ # Guess yes on musl systems.
+ *-musl*) gl_cv_func_fdopendir_works="guessing yes" ;;
+ # If we don't know, assume the worst.
+ *) gl_cv_func_fdopendir_works="guessing no" ;;
esac
])])
case "$gl_cv_func_fdopendir_works" in
diff --git a/gl/m4/flexmember.m4 b/gl/m4/flexmember.m4
index 1347068f..c245ab02 100644
--- a/gl/m4/flexmember.m4
+++ b/gl/m4/flexmember.m4
@@ -34,12 +34,10 @@ AC_DEFUN([AC_C_FLEXIBLE_ARRAY_MEMBER],
AC_DEFINE([FLEXIBLE_ARRAY_MEMBER], [],
[Define to nothing if C supports flexible array members, and to
1 if it does not. That way, with a declaration like 'struct s
- { int n; double d@<:@FLEXIBLE_ARRAY_MEMBER@:>@; };', the struct hack
+ { int n; short d@<:@FLEXIBLE_ARRAY_MEMBER@:>@; };', the struct hack
can be used with pre-C99 compilers.
- When computing the size of such an object, don't use 'sizeof (struct s)'
- as it overestimates the size. Use 'offsetof (struct s, d)' instead.
- Don't use 'offsetof (struct s, d@<:@0@:>@)', as this doesn't work with
- MSVC and with C++ compilers.])
+ Use 'FLEXSIZEOF (struct s, d, N * sizeof (short))' to calculate
+ the size in bytes of such a struct containing an N-element array.])
else
AC_DEFINE([FLEXIBLE_ARRAY_MEMBER], [1])
fi
diff --git a/gl/m4/fnmatch.m4 b/gl/m4/fnmatch.m4
index c264ca71..75ba55b4 100644
--- a/gl/m4/fnmatch.m4
+++ b/gl/m4/fnmatch.m4
@@ -1,4 +1,4 @@
-# Check for fnmatch - serial 13. -*- coding: utf-8 -*-
+# Check for fnmatch - serial 14. -*- coding: utf-8 -*-
# Copyright (C) 2000-2007, 2009-2019 Free Software Foundation, Inc.
# This file is free software; the Free Software Foundation
@@ -14,6 +14,7 @@ AC_DEFUN([gl_FUNC_FNMATCH_POSIX],
m4_divert_text([DEFAULTS], [gl_fnmatch_required=POSIX])
AC_REQUIRE([gl_FNMATCH_H])
+ AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
gl_fnmatch_required_lowercase=`
echo $gl_fnmatch_required | LC_ALL=C tr '[[A-Z]]' '[[a-z]]'
`
@@ -117,12 +118,19 @@ AC_DEFUN([gl_FUNC_FNMATCH_POSIX],
]])],
[eval "$gl_fnmatch_cache_var=yes"],
[eval "$gl_fnmatch_cache_var=no"],
- [eval "$gl_fnmatch_cache_var=\"guessing 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\"" ;;
+ esac
+ ])
])
eval "gl_fnmatch_result=\"\$$gl_fnmatch_cache_var\""
- if test "$gl_fnmatch_result" != yes; then
- REPLACE_FNMATCH=1
- fi
+ case "$gl_fnmatch_result" in
+ *yes) ;;
+ *) REPLACE_FNMATCH=1 ;;
+ esac
fi
if test $HAVE_FNMATCH = 0 || test $REPLACE_FNMATCH = 1; then
gl_REPLACE_FNMATCH_H
diff --git a/gl/m4/futimens.m4 b/gl/m4/futimens.m4
index 3cfa4a19..b5f4be93 100644
--- a/gl/m4/futimens.m4
+++ b/gl/m4/futimens.m4
@@ -1,4 +1,4 @@
-# serial 7
+# serial 8
# See if we need to provide futimens replacement.
dnl Copyright (C) 2009-2019 Free Software Foundation, Inc.
@@ -11,6 +11,7 @@ dnl with or without modifications, as long as this notice is preserved.
AC_DEFUN([gl_FUNC_FUTIMENS],
[
AC_REQUIRE([gl_SYS_STAT_H_DEFAULTS])
+ AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS])
AC_CHECK_FUNCS_ONCE([futimens])
if test $ac_cv_func_futimens = no; then
@@ -44,10 +45,21 @@ AC_DEFUN([gl_FUNC_FUTIMENS],
]])],
[gl_cv_func_futimens_works=yes],
[gl_cv_func_futimens_works=no],
- [gl_cv_func_futimens_works="guessing yes"])
+ [case "$host_os" in
+ # Guess no on glibc systems.
+ *-gnu* | gnu*) gl_cv_func_futimens_works="guessing no" ;;
+ # Guess no on musl systems.
+ *-musl*) gl_cv_func_futimens_works="guessing no" ;;
+ # Guess yes otherwise.
+ *) gl_cv_func_futimens_works="guessing yes" ;;
+ esac
+ ])
rm -f conftest.file])
- if test "$gl_cv_func_futimens_works" = no; then
- REPLACE_FUTIMENS=1
- fi
+ case "$gl_cv_func_futimens_works" in
+ *yes) ;;
+ *)
+ REPLACE_FUTIMENS=1
+ ;;
+ esac
fi
])
diff --git a/gl/m4/getcwd-abort-bug.m4 b/gl/m4/getcwd-abort-bug.m4
index 7929b674..7227f08c 100644
--- a/gl/m4/getcwd-abort-bug.m4
+++ b/gl/m4/getcwd-abort-bug.m4
@@ -1,4 +1,4 @@
-# serial 9
+# serial 11
# Determine whether getcwd aborts when the length of the working directory
# name is unusually large. Any length between 4k and 16k trigger the bug
# when using glibc-2.4.90-9 or older.
@@ -13,6 +13,7 @@
# gl_FUNC_GETCWD_ABORT_BUG([ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
AC_DEFUN([gl_FUNC_GETCWD_ABORT_BUG],
[
+ AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
AC_CHECK_DECLS_ONCE([getcwd])
AC_CHECK_HEADERS_ONCE([unistd.h])
AC_REQUIRE([gl_PATHMAX_SNIPPET_PREREQ])
@@ -139,8 +140,22 @@ main ()
gl_cv_func_getcwd_abort_bug=yes
else
gl_cv_func_getcwd_abort_bug=no
- fi],
- [gl_cv_func_getcwd_abort_bug=yes])
+ fi
+ ],
+ [case "$host_os" in
+ # Guess no on musl systems.
+ *-musl*) gl_cv_func_getcwd_abort_bug="guessing no" ;;
+ # Guess yes otherwise, even on glibc systems.
+ *) gl_cv_func_getcwd_abort_bug="guessing yes"
+ esac
+ ])
])
- AS_IF([test $gl_cv_func_getcwd_abort_bug = yes], [$1], [$2])
+ case "$gl_cv_func_getcwd_abort_bug" in
+ *yes)
+ $1
+ ;;
+ *)
+ $2
+ ;;
+ esac
])
diff --git a/gl/m4/getcwd.m4 b/gl/m4/getcwd.m4
index 4929b511..625171a2 100644
--- a/gl/m4/getcwd.m4
+++ b/gl/m4/getcwd.m4
@@ -6,7 +6,7 @@
# with or without modifications, as long as this notice is preserved.
# Written by Paul Eggert.
-# serial 16
+# serial 17
AC_DEFUN([gl_FUNC_GETCWD_NULL],
[
@@ -50,6 +50,8 @@ AC_DEFUN([gl_FUNC_GETCWD_NULL],
[[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 Cygwin.
cygwin*) gl_cv_func_getcwd_null="guessing yes";;
# If we don't know, assume the worst.
diff --git a/gl/m4/getdelim.m4 b/gl/m4/getdelim.m4
index bf17c572..e77c3796 100644
--- a/gl/m4/getdelim.m4
+++ b/gl/m4/getdelim.m4
@@ -1,4 +1,4 @@
-# getdelim.m4 serial 12
+# getdelim.m4 serial 13
dnl Copyright (C) 2005-2007, 2009-2019 Free Software Foundation, Inc.
dnl
@@ -11,6 +11,7 @@ AC_PREREQ([2.59])
AC_DEFUN([gl_FUNC_GETDELIM],
[
AC_REQUIRE([gl_STDIO_H_DEFAULTS])
+ AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
dnl Persuade glibc <stdio.h> to declare getdelim().
AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS])
@@ -21,9 +22,10 @@ AC_DEFUN([gl_FUNC_GETDELIM],
if test $ac_cv_func_getdelim = yes; then
HAVE_GETDELIM=1
dnl Found it in some library. Verify that it works.
- AC_CACHE_CHECK([for working getdelim function], [gl_cv_func_working_getdelim],
- [echo fooNbarN | tr -d '\012' | tr N '\012' > conftest.data
- AC_RUN_IFELSE([AC_LANG_SOURCE([[
+ AC_CACHE_CHECK([for working getdelim function],
+ [gl_cv_func_working_getdelim],
+ [echo fooNbarN | tr -d '\012' | tr N '\012' > conftest.data
+ AC_RUN_IFELSE([AC_LANG_SOURCE([[
# include <stdio.h>
# include <stdlib.h>
# include <string.h>
@@ -53,25 +55,31 @@ AC_DEFUN([gl_FUNC_GETDELIM],
fclose (in);
return 0;
}
- ]])], [gl_cv_func_working_getdelim=yes] dnl The library version works.
- , [gl_cv_func_working_getdelim=no] dnl The library version does NOT work.
- , dnl We're cross compiling. Assume it works on glibc2 systems.
- [AC_EGREP_CPP([Lucky GNU user],
- [
+ ]])],
+ [gl_cv_func_working_getdelim=yes],
+ [gl_cv_func_working_getdelim=no],
+ [dnl We're cross compiling.
+ dnl Guess it works on glibc2 systems and musl systems.
+ AC_EGREP_CPP([Lucky GNU user],
+ [
#include <features.h>
#ifdef __GNU_LIBRARY__
#if (__GLIBC__ >= 2) && !defined __UCLIBC__
Lucky GNU user
#endif
#endif
- ],
- [gl_cv_func_working_getdelim="guessing yes"],
- [gl_cv_func_working_getdelim="guessing no"])]
- )])
+ ],
+ [gl_cv_func_working_getdelim="guessing yes"],
+ [case "$host_os" in
+ *-musl*) gl_cv_func_working_getdelim="guessing yes" ;;
+ *) gl_cv_func_working_getdelim="guessing no" ;;
+ esac
+ ])
+ ])
+ ])
case "$gl_cv_func_working_getdelim" in
- *no)
- REPLACE_GETDELIM=1
- ;;
+ *yes) ;;
+ *) REPLACE_GETDELIM=1 ;;
esac
else
HAVE_GETDELIM=0
diff --git a/gl/m4/getline.m4 b/gl/m4/getline.m4
index 5b2ead28..32f771c1 100644
--- a/gl/m4/getline.m4
+++ b/gl/m4/getline.m4
@@ -1,4 +1,4 @@
-# getline.m4 serial 28
+# getline.m4 serial 29
dnl Copyright (C) 1998-2003, 2005-2007, 2009-2019 Free Software Foundation,
dnl Inc.
@@ -16,6 +16,7 @@ dnl to do with the function we need.
AC_DEFUN([gl_FUNC_GETLINE],
[
AC_REQUIRE([gl_STDIO_H_DEFAULTS])
+ AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
dnl Persuade glibc <stdio.h> to declare getline().
AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS])
@@ -28,9 +29,10 @@ AC_DEFUN([gl_FUNC_GETLINE],
gl_getline_needs_run_time_check=yes],
[am_cv_func_working_getline=no])
if test $gl_getline_needs_run_time_check = yes; then
- AC_CACHE_CHECK([for working getline function], [am_cv_func_working_getline],
- [echo fooNbarN | tr -d '\012' | tr N '\012' > conftest.data
- AC_RUN_IFELSE([AC_LANG_SOURCE([[
+ AC_CACHE_CHECK([for working getline function],
+ [am_cv_func_working_getline],
+ [echo fooNbarN | tr -d '\012' | tr N '\012' > conftest.data
+ AC_RUN_IFELSE([AC_LANG_SOURCE([[
# include <stdio.h>
# include <stdlib.h>
# include <string.h>
@@ -61,21 +63,28 @@ AC_DEFUN([gl_FUNC_GETLINE],
fclose (in);
return 0;
}
- ]])], [am_cv_func_working_getline=yes] dnl The library version works.
- , [am_cv_func_working_getline=no] dnl The library version does NOT work.
- , dnl We're cross compiling. Assume it works on glibc2 systems.
- [AC_EGREP_CPP([Lucky GNU user],
- [
+ ]])],
+ [am_cv_func_working_getline=yes],
+ [am_cv_func_working_getline=no],
+ [dnl We're cross compiling.
+ dnl Guess it works on glibc2 systems and musl systems.
+ AC_EGREP_CPP([Lucky GNU user],
+ [
#include <features.h>
#ifdef __GNU_LIBRARY__
#if (__GLIBC__ >= 2) && !defined __UCLIBC__
Lucky GNU user
#endif
#endif
- ],
- [am_cv_func_working_getline="guessing yes"],
- [am_cv_func_working_getline="guessing no"])]
- )])
+ ],
+ [am_cv_func_working_getline="guessing yes"],
+ [case "$host_os" in
+ *-musl*) am_cv_func_working_getline="guessing yes" ;;
+ *) am_cv_func_working_getline="guessing no" ;;
+ esac
+ ])
+ ])
+ ])
fi
if test $ac_cv_have_decl_getline = no; then
@@ -83,7 +92,8 @@ AC_DEFUN([gl_FUNC_GETLINE],
fi
case "$am_cv_func_working_getline" in
- *no)
+ *yes) ;;
+ *)
dnl Set REPLACE_GETLINE always: Even if we have not found the broken
dnl getline function among $LIBS, it may exist in libinet and the
dnl executable may be linked with -linet.
diff --git a/gl/m4/gettimeofday.m4 b/gl/m4/gettimeofday.m4
index d29b4bff..5e2ef6f4 100644
--- a/gl/m4/gettimeofday.m4
+++ b/gl/m4/gettimeofday.m4
@@ -1,4 +1,4 @@
-# serial 25
+# serial 26
# Copyright (C) 2001-2003, 2005, 2007, 2009-2019 Free Software Foundation, Inc.
# This file is free software; the Free Software Foundation
@@ -105,6 +105,8 @@ AC_DEFUN([gl_FUNC_GETTIMEOFDAY_CLOBBER],
case "$host_os" in
# Guess all is fine on glibc systems.
*-gnu* | gnu*) gl_cv_func_gettimeofday_clobber="guessing no" ;;
+ # Guess all is fine on musl systems.
+ *-musl*) gl_cv_func_gettimeofday_clobber="guessing no" ;;
# Guess no on native Windows.
mingw*) gl_cv_func_gettimeofday_clobber="guessing no" ;;
# If we don't know, assume the worst.
diff --git a/gl/m4/glob.m4 b/gl/m4/glob.m4
index 93567af0..00b42972 100644
--- a/gl/m4/glob.m4
+++ b/gl/m4/glob.m4
@@ -1,4 +1,4 @@
-# glob.m4 serial 21
+# glob.m4 serial 22
dnl Copyright (C) 2005-2007, 2009-2019 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
@@ -49,13 +49,14 @@ char a[_GNU_GLOB_INTERFACE_VERSION == 1 || _GNU_GLOB_INTERFACE_VERSION == 2 ? 1
]])],
[gl_cv_glob_lists_symlinks=yes],
[gl_cv_glob_lists_symlinks=no],
- [gl_cv_glob_lists_symlinks=no])
+ [gl_cv_glob_lists_symlinks="guessing no"])
fi
rm -f conf$$-globtest
])
- if test $gl_cv_glob_lists_symlinks = no; then
- REPLACE_GLOB=1
- fi
+ case "$gl_cv_glob_lists_symlinks" in
+ *yes) ;;
+ *) REPLACE_GLOB=1 ;;
+ esac
fi
fi
diff --git a/gl/m4/gnulib-common.m4 b/gl/m4/gnulib-common.m4
index 7c0e3e8f..57b94ed5 100644
--- a/gl/m4/gnulib-common.m4
+++ b/gl/m4/gnulib-common.m4
@@ -1,4 +1,4 @@
-# gnulib-common.m4 serial 41
+# gnulib-common.m4 serial 44
dnl Copyright (C) 2007-2019 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
@@ -17,10 +17,13 @@ AC_DEFUN([gl_COMMON_BODY], [
AH_VERBATIM([_Noreturn],
[/* The _Noreturn keyword of C11. */
#ifndef _Noreturn
-# if 201103 <= (defined __cplusplus ? __cplusplus : 0)
+# if (defined __cplusplus \
+ && ((201103 <= __cplusplus && !(__GNUC__ == 4 && __GNUC_MINOR__ == 7)) \
+ || (defined _MSC_VER && 1900 <= _MSC_VER)))
# define _Noreturn [[noreturn]]
-# elif (201112 <= (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) \
- || 4 < __GNUC__ + (7 <= __GNUC_MINOR__))
+# elif ((!defined __cplusplus || defined __clang__) \
+ && (201112 <= (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) \
+ || 4 < __GNUC__ + (7 <= __GNUC_MINOR__)))
/* _Noreturn works as-is. */
# elif 2 < __GNUC__ + (8 <= __GNUC_MINOR__) || 0x5110 <= __SUNPRO_C
# define _Noreturn __attribute__ ((__noreturn__))
@@ -85,6 +88,33 @@ AC_DEFUN([gl_COMMON_BODY], [
# define _GL_ATTRIBUTE_MALLOC /* empty */
#endif
])
+ AH_VERBATIM([async_safe],
+[/* 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:
+ * All functions that it calls should be marked _GL_ASYNC_SAFE as well,
+ or should be listed as async-signal-safe in POSIX
+ <http://pubs.opengroup.org/onlinepubs/9699919799/functions/V2_chap02.html#tag_15_04>
+ section 2.4.3. Note that malloc(), sprintf(), and fwrite(), in
+ particular, are NOT async-signal-safe.
+ * All memory locations (variables and struct fields) that these functions
+ access must be marked 'volatile'. This holds for both read and write
+ accesses. Otherwise the compiler might optimize away stores to and
+ reads from such locations that occur in the program, depending on its
+ data flow analysis. For example, when the program contains a loop
+ that is intended to inspect a variable set from within a signal handler
+ while (!signal_occurred)
+ ;
+ the compiler is allowed to transform this into an endless loop if the
+ variable 'signal_occurred' is not declared 'volatile'.
+ Additionally, recall that:
+ * A signal handler should not modify errno (except if it is a handler
+ for a fatal signal and ends by raising the same signal again, thus
+ provoking the termination of the process). If it invokes a function
+ that may clobber errno, it needs to save and restore the value of
+ errno. */
+#define _GL_ASYNC_SAFE
+])
dnl Preparation for running test programs:
dnl Tell glibc to write diagnostics from -D_FORTIFY_SOURCE=2 to stderr, not
dnl to /dev/tty, so they can be redirected to log files. Such diagnostics
diff --git a/gl/m4/gnulib-comp.m4 b/gl/m4/gnulib-comp.m4
index 1e73baac..b4b49822 100644
--- a/gl/m4/gnulib-comp.m4
+++ b/gl/m4/gnulib-comp.m4
@@ -145,6 +145,7 @@ AC_DEFUN([gl_EARLY],
# Code from module malloc-gnu:
# Code from module malloc-posix:
# Code from module malloca:
+ # Code from module manywarnings:
# Code from module map:
# Code from module mbrtowc:
# Code from module mbsinit:
@@ -260,6 +261,10 @@ AC_DEFUN([gl_EARLY],
# Code from module wchar:
# Code from module wcrtomb:
# Code from module wctype-h:
+ # Code from module windows-mutex:
+ # Code from module windows-once:
+ # Code from module windows-recmutex:
+ # Code from module windows-rwlock:
# Code from module xalloc:
# Code from module xalloc-die:
# Code from module xalloc-oversized:
@@ -582,7 +587,7 @@ AC_SUBST([LTALLOCA])
fi
gl_WCHAR_MODULE_INDICATOR([mbsrtowcs])
gl_FUNC_MBTOWC
- if test $REPLACE_MBTOWC = 1; then
+ if test $HAVE_MBTOWC = 0 || test $REPLACE_MBTOWC = 1; then
AC_LIBOBJ([mbtowc])
gl_PREREQ_MBTOWC
fi
@@ -868,7 +873,7 @@ AC_SUBST([LTALLOCA])
AC_PROG_MKDIR_P
gl_SYSEXITS
gl_FUNC_GEN_TEMPNAME
- gl_THREADLIB
+ AC_REQUIRE([gl_THREADLIB])
gl_HEADER_TIME_H
gl_TIMESPEC
gl_UNISTD_H
@@ -903,6 +908,30 @@ AC_SUBST([LTALLOCA])
fi
gl_WCHAR_MODULE_INDICATOR([wcrtomb])
gl_WCTYPE_H
+ AC_REQUIRE([AC_CANONICAL_HOST])
+ case "$host_os" in
+ mingw*)
+ AC_LIBOBJ([windows-mutex])
+ ;;
+ esac
+ AC_REQUIRE([AC_CANONICAL_HOST])
+ case "$host_os" in
+ mingw*)
+ AC_LIBOBJ([windows-once])
+ ;;
+ esac
+ AC_REQUIRE([AC_CANONICAL_HOST])
+ case "$host_os" in
+ mingw*)
+ AC_LIBOBJ([windows-recmutex])
+ ;;
+ esac
+ AC_REQUIRE([AC_CANONICAL_HOST])
+ case "$host_os" in
+ mingw*)
+ AC_LIBOBJ([windows-rwlock])
+ ;;
+ esac
gl_XALLOC
gl_XGETCWD
gl_XSIZE
@@ -1365,6 +1394,15 @@ AC_DEFUN([gl_FILE_LIST], [
lib/wcrtomb.c
lib/wctype-h.c
lib/wctype.in.h
+ lib/windows-initguard.h
+ lib/windows-mutex.c
+ lib/windows-mutex.h
+ lib/windows-once.c
+ lib/windows-once.h
+ lib/windows-recmutex.c
+ lib/windows-recmutex.h
+ lib/windows-rwlock.c
+ lib/windows-rwlock.h
lib/xalloc-die.c
lib/xalloc-oversized.h
lib/xalloc.h
@@ -1467,6 +1505,8 @@ AC_DEFUN([gl_FILE_LIST], [
m4/lstat.m4
m4/malloc.m4
m4/malloca.m4
+ m4/manywarnings-c++.m4
+ m4/manywarnings.m4
m4/math_h.m4
m4/mbrtowc.m4
m4/mbsinit.m4
diff --git a/gl/m4/libtool.m4 b/gl/m4/libtool.m4
index c81e6692..9d6dd9fc 100644
--- a/gl/m4/libtool.m4
+++ b/gl/m4/libtool.m4
@@ -4704,6 +4704,12 @@ m4_if([$1], [CXX], [
_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
;;
+ # flang / f18. f95 an alias for gfortran or flang on Debian
+ flang* | f18* | f95*)
+ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+ _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
+ ;;
# icc used to be incompatible with GCC.
# ICC 10 doesn't accept -KPIC any more.
icc* | ifort*)
diff --git a/gl/m4/malloc.m4 b/gl/m4/malloc.m4
index f78a484f..c469c450 100644
--- a/gl/m4/malloc.m4
+++ b/gl/m4/malloc.m4
@@ -1,4 +1,4 @@
-# malloc.m4 serial 17
+# malloc.m4 serial 19
dnl Copyright (C) 2007, 2009-2019 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
@@ -32,15 +32,22 @@ AC_DEFUN([_AC_FUNC_MALLOC_IF],
[ac_cv_func_malloc_0_nonnull=no],
[case "$host_os" in
# Guess yes on platforms where we know the result.
- *-gnu* | gnu* | freebsd* | netbsd* | openbsd* \
+ *-gnu* | gnu* | *-musl* | freebsd* | netbsd* | openbsd* \
| hpux* | solaris* | cygwin* | mingw*)
- ac_cv_func_malloc_0_nonnull=yes ;;
+ ac_cv_func_malloc_0_nonnull="guessing yes" ;;
# If we don't know, assume the worst.
- *) ac_cv_func_malloc_0_nonnull=no ;;
+ *) ac_cv_func_malloc_0_nonnull="guessing no" ;;
esac
])
])
- AS_IF([test $ac_cv_func_malloc_0_nonnull = yes], [$1], [$2])
+ case "$ac_cv_func_malloc_0_nonnull" in
+ *yes)
+ $1
+ ;;
+ *)
+ $2
+ ;;
+ esac
])# _AC_FUNC_MALLOC_IF
])
diff --git a/gl/m4/manywarnings.m4 b/gl/m4/manywarnings.m4
new file mode 100644
index 00000000..6bb9f8f8
--- /dev/null
+++ b/gl/m4/manywarnings.m4
@@ -0,0 +1,339 @@
+# manywarnings.m4 serial 18
+dnl Copyright (C) 2008-2019 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 Simon Josefsson
+
+# gl_MANYWARN_COMPLEMENT(OUTVAR, LISTVAR, REMOVEVAR)
+# --------------------------------------------------
+# Copy LISTVAR to OUTVAR except for the entries in REMOVEVAR.
+# Elements separated by whitespace. In set logic terms, the function
+# does OUTVAR = LISTVAR \ REMOVEVAR.
+AC_DEFUN([gl_MANYWARN_COMPLEMENT],
+[
+ gl_warn_set=
+ set x $2; shift
+ for gl_warn_item
+ do
+ case " $3 " in
+ *" $gl_warn_item "*)
+ ;;
+ *)
+ gl_warn_set="$gl_warn_set $gl_warn_item"
+ ;;
+ esac
+ done
+ $1=$gl_warn_set
+])
+
+# gl_MANYWARN_ALL_GCC(VARIABLE)
+# -----------------------------
+# Add all documented GCC warning parameters to variable VARIABLE.
+# Note that you need to test them using gl_WARN_ADD if you want to
+# make sure your gcc understands it.
+#
+# The effects of this macro depend on the current language (_AC_LANG).
+AC_DEFUN([gl_MANYWARN_ALL_GCC],
+[_AC_LANG_DISPATCH([$0], _AC_LANG, $@)])
+
+# Specialization for _AC_LANG = C.
+# Use of m4_defun rather than AC_DEFUN works around a bug in autoconf < 2.63b.
+m4_defun([gl_MANYWARN_ALL_GCC(C)],
+[
+ AC_LANG_PUSH([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
+
+ dnl Check if -W -Werror -Wno-missing-field-initializers is supported
+ dnl with the current $CC $CFLAGS $CPPFLAGS.
+ AC_CACHE_CHECK([whether -Wno-missing-field-initializers is supported],
+ [gl_cv_cc_nomfi_supported],
+ [gl_save_CFLAGS="$CFLAGS"
+ CFLAGS="$CFLAGS -W -Werror -Wno-missing-field-initializers"
+ AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM([[]], [[]])],
+ [gl_cv_cc_nomfi_supported=yes],
+ [gl_cv_cc_nomfi_supported=no])
+ CFLAGS="$gl_save_CFLAGS"
+ ])
+
+ if test "$gl_cv_cc_nomfi_supported" = yes; then
+ 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],
+ [gl_cv_cc_nomfi_needed],
+ [gl_save_CFLAGS="$CFLAGS"
+ CFLAGS="$CFLAGS -W -Werror"
+ AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[int f (void)
+ {
+ typedef struct { int a; int b; } s_t;
+ s_t s1 = { 0, };
+ return s1.b;
+ }
+ ]],
+ [[]])],
+ [gl_cv_cc_nomfi_needed=no],
+ [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
+ dnl has no effect if -O is not also used
+ AC_CACHE_CHECK([whether -Wuninitialized is supported],
+ [gl_cv_cc_uninitialized_supported],
+ [gl_save_CFLAGS="$CFLAGS"
+ CFLAGS="$CFLAGS -Werror -Wuninitialized"
+ AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM([[]], [[]])],
+ [gl_cv_cc_uninitialized_supported=yes],
+ [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:
+ #
+ # comm -3 \
+ # <((sed -n 's/^ *\(-[^ 0-9][^ ]*\) .*/\1/p' manywarnings.m4; \
+ # awk '/^[^#]/ {print $1}' ../build-aux/gcc-warning.spec) | sort) \
+ # <(LC_ALL=C gcc --help=warnings | sed -n 's/^ \(-[^ ]*\) .*/\1/p' | sort)
+
+ gl_manywarn_set=
+ for gl_manywarn_item in -fno-common \
+ -W \
+ -Wabsolute-value \
+ -Waddress \
+ -Waddress-of-packed-member \
+ -Waggressive-loop-optimizations \
+ -Wall \
+ -Wattribute-warning \
+ -Wattributes \
+ -Wbad-function-cast \
+ -Wbool-compare \
+ -Wbool-operation \
+ -Wbuiltin-declaration-mismatch \
+ -Wbuiltin-macro-redefined \
+ -Wcannot-profile \
+ -Wcast-align \
+ -Wcast-align=strict \
+ -Wcast-function-type \
+ -Wchar-subscripts \
+ -Wclobbered \
+ -Wcomment \
+ -Wcomments \
+ -Wcoverage-mismatch \
+ -Wcpp \
+ -Wdangling-else \
+ -Wdate-time \
+ -Wdeprecated \
+ -Wdeprecated-declarations \
+ -Wdesignated-init \
+ -Wdisabled-optimization \
+ -Wdiscarded-array-qualifiers \
+ -Wdiscarded-qualifiers \
+ -Wdiv-by-zero \
+ -Wdouble-promotion \
+ -Wduplicated-branches \
+ -Wduplicated-cond \
+ -Wduplicate-decl-specifier \
+ -Wempty-body \
+ -Wendif-labels \
+ -Wenum-compare \
+ -Wexpansion-to-defined \
+ -Wextra \
+ -Wformat-contains-nul \
+ -Wformat-extra-args \
+ -Wformat-nonliteral \
+ -Wformat-security \
+ -Wformat-signedness \
+ -Wformat-y2k \
+ -Wformat-zero-length \
+ -Wframe-address \
+ -Wfree-nonheap-object \
+ -Whsa \
+ -Wif-not-aligned \
+ -Wignored-attributes \
+ -Wignored-qualifiers \
+ -Wimplicit \
+ -Wimplicit-function-declaration \
+ -Wimplicit-int \
+ -Wincompatible-pointer-types \
+ -Winit-self \
+ -Winline \
+ -Wint-conversion \
+ -Wint-in-bool-context \
+ -Wint-to-pointer-cast \
+ -Winvalid-memory-model \
+ -Winvalid-pch \
+ -Wlogical-not-parentheses \
+ -Wlogical-op \
+ -Wmain \
+ -Wmaybe-uninitialized \
+ -Wmemset-elt-size \
+ -Wmemset-transposed-args \
+ -Wmisleading-indentation \
+ -Wmissing-attributes \
+ -Wmissing-braces \
+ -Wmissing-declarations \
+ -Wmissing-field-initializers \
+ -Wmissing-include-dirs \
+ -Wmissing-parameter-type \
+ -Wmissing-profile \
+ -Wmissing-prototypes \
+ -Wmultichar \
+ -Wmultistatement-macros \
+ -Wnarrowing \
+ -Wnested-externs \
+ -Wnonnull \
+ -Wnonnull-compare \
+ -Wnull-dereference \
+ -Wodr \
+ -Wold-style-declaration \
+ -Wold-style-definition \
+ -Wopenmp-simd \
+ -Woverflow \
+ -Woverlength-strings \
+ -Woverride-init \
+ -Wpacked \
+ -Wpacked-bitfield-compat \
+ -Wpacked-not-aligned \
+ -Wparentheses \
+ -Wpointer-arith \
+ -Wpointer-compare \
+ -Wpointer-sign \
+ -Wpointer-to-int-cast \
+ -Wpragmas \
+ -Wpsabi \
+ -Wrestrict \
+ -Wreturn-local-addr \
+ -Wreturn-type \
+ -Wscalar-storage-order \
+ -Wsequence-point \
+ -Wshadow \
+ -Wshift-count-negative \
+ -Wshift-count-overflow \
+ -Wshift-negative-value \
+ -Wsizeof-array-argument \
+ -Wsizeof-pointer-div \
+ -Wsizeof-pointer-memaccess \
+ -Wstack-protector \
+ -Wstrict-aliasing \
+ -Wstrict-overflow \
+ -Wstrict-prototypes \
+ -Wstringop-truncation \
+ -Wsuggest-attribute=cold \
+ -Wsuggest-attribute=const \
+ -Wsuggest-attribute=format \
+ -Wsuggest-attribute=malloc \
+ -Wsuggest-attribute=noreturn \
+ -Wsuggest-attribute=pure \
+ -Wsuggest-final-methods \
+ -Wsuggest-final-types \
+ -Wswitch \
+ -Wswitch-bool \
+ -Wswitch-unreachable \
+ -Wsync-nand \
+ -Wsystem-headers \
+ -Wtautological-compare \
+ -Wtrampolines \
+ -Wtrigraphs \
+ -Wtype-limits \
+ -Wuninitialized \
+ -Wunknown-pragmas \
+ -Wunsafe-loop-optimizations \
+ -Wunused \
+ -Wunused-but-set-parameter \
+ -Wunused-but-set-variable \
+ -Wunused-function \
+ -Wunused-label \
+ -Wunused-local-typedefs \
+ -Wunused-macros \
+ -Wunused-parameter \
+ -Wunused-result \
+ -Wunused-value \
+ -Wunused-variable \
+ -Wvarargs \
+ -Wvariadic-macros \
+ -Wvector-operation-performance \
+ -Wvla \
+ -Wvolatile-register-var \
+ -Wwrite-strings \
+ \
+ ; do
+ gl_manywarn_set="$gl_manywarn_set $gl_manywarn_item"
+ done
+
+ # gcc --help=warnings outputs an unusual form for these options; list
+ # them here so that the above 'comm' command doesn't report a false match.
+ # Would prefer "min (PTRDIFF_MAX, SIZE_MAX)", but it must be a literal.
+ # Also, AC_COMPUTE_INT requires it to fit in a long; it is 2**63 on
+ # the only platforms where it does not fit in a long, so make that
+ # a special case.
+ AC_MSG_CHECKING([max safe object size])
+ AC_COMPUTE_INT([gl_alloc_max],
+ [LONG_MAX < (PTRDIFF_MAX < (size_t) -1 ? PTRDIFF_MAX : (size_t) -1)
+ ? -1
+ : PTRDIFF_MAX < (size_t) -1 ? (long) PTRDIFF_MAX : (long) (size_t) -1],
+ [[#include <limits.h>
+ #include <stddef.h>
+ #include <stdint.h>
+ ]],
+ [gl_alloc_max=2147483647])
+ case $gl_alloc_max in
+ -1) gl_alloc_max=9223372036854775807;;
+ esac
+ AC_MSG_RESULT([$gl_alloc_max])
+ gl_manywarn_set="$gl_manywarn_set -Walloc-size-larger-than=$gl_alloc_max"
+ gl_manywarn_set="$gl_manywarn_set -Warray-bounds=2"
+ gl_manywarn_set="$gl_manywarn_set -Wattribute-alias=2"
+ gl_manywarn_set="$gl_manywarn_set -Wformat-overflow=2"
+ gl_manywarn_set="$gl_manywarn_set -Wformat-truncation=2"
+ gl_manywarn_set="$gl_manywarn_set -Wimplicit-fallthrough=5"
+ gl_manywarn_set="$gl_manywarn_set -Wnormalized=nfc"
+ gl_manywarn_set="$gl_manywarn_set -Wshift-overflow=2"
+ gl_manywarn_set="$gl_manywarn_set -Wstringop-overflow=2"
+ gl_manywarn_set="$gl_manywarn_set -Wunused-const-variable=2"
+ gl_manywarn_set="$gl_manywarn_set -Wvla-larger-than=4031"
+
+ # These are needed for older GCC versions.
+ if test -n "$GCC"; then
+ case `($CC --version) 2>/dev/null` in
+ 'gcc (GCC) '[[0-3]].* | \
+ 'gcc (GCC) '4.[[0-7]].*)
+ gl_manywarn_set="$gl_manywarn_set -fdiagnostics-show-option"
+ gl_manywarn_set="$gl_manywarn_set -funit-at-a-time"
+ ;;
+ esac
+ fi
+
+ # Disable specific options as needed.
+ if test "$gl_cv_cc_nomfi_needed" = yes; then
+ gl_manywarn_set="$gl_manywarn_set -Wno-missing-field-initializers"
+ fi
+
+ if test "$gl_cv_cc_uninitialized_supported" = no; then
+ gl_manywarn_set="$gl_manywarn_set -Wno-uninitialized"
+ fi
+
+ $1=$gl_manywarn_set
+
+ AC_LANG_POP([C])
+])
+
+# Specialization for _AC_LANG = C++.
+# Use of m4_defun rather than AC_DEFUN works around a bug in autoconf < 2.63b.
+m4_defun([gl_MANYWARN_ALL_GCC(C++)],
+[
+ gl_MANYWARN_ALL_GCC_CXX_IMPL([$1])
+])
diff --git a/gl/m4/mbtowc.m4 b/gl/m4/mbtowc.m4
index 202c3fbd..5a4b92ee 100644
--- a/gl/m4/mbtowc.m4
+++ b/gl/m4/mbtowc.m4
@@ -1,4 +1,4 @@
-# mbtowc.m4 serial 2
+# mbtowc.m4 serial 3
dnl Copyright (C) 2011-2019 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
@@ -8,8 +8,13 @@ AC_DEFUN([gl_FUNC_MBTOWC],
[
AC_REQUIRE([gl_STDLIB_H_DEFAULTS])
- if false; then
- REPLACE_MBTOWC=1
+ AC_CHECK_FUNCS([mbtowc])
+ if test $ac_cv_func_mbtowc = no; then
+ HAVE_MBTOWC=0
+ else
+ if false; then
+ REPLACE_MBTOWC=1
+ fi
fi
])
diff --git a/gl/m4/memchr.m4 b/gl/m4/memchr.m4
index db227e7d..0be394db 100644
--- a/gl/m4/memchr.m4
+++ b/gl/m4/memchr.m4
@@ -1,4 +1,4 @@
-# memchr.m4 serial 13
+# memchr.m4 serial 14
dnl Copyright (C) 2002-2004, 2009-2019 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
@@ -29,6 +29,8 @@ AC_DEFUN_ONCE([gl_FUNC_MEMCHR],
# memchr should not dereference overestimated length after a match
# https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=521737
# https://sourceware.org/bugzilla/show_bug.cgi?id=10162
+ # memchr should cast the second argument to 'unsigned char'.
+ # This bug exists in Android 4.3.
# Assume that memchr works on platforms that lack mprotect.
AC_CACHE_CHECK([whether memchr works], [gl_cv_func_memchr_works],
[AC_RUN_IFELSE([AC_LANG_PROGRAM([[
@@ -74,15 +76,26 @@ AC_DEFUN_ONCE([gl_FUNC_MEMCHR],
if (memchr (fence - 1, 0, 3) != fence - 1)
result |= 4;
}
+ /* Test against bug on Android 4.3. */
+ {
+ char input[3];
+ input[0] = 'a';
+ input[1] = 'b';
+ input[2] = 'c';
+ if (memchr (input, 0x789abc00 | 'b', 3) != input + 1)
+ result |= 8;
+ }
return result;
]])],
[gl_cv_func_memchr_works=yes],
[gl_cv_func_memchr_works=no],
[case "$host_os" in
- # Guess yes on native Windows.
- mingw*) gl_cv_func_memchr_works="guessing yes" ;;
- # Be pessimistic for now.
- *) gl_cv_func_memchr_works="guessing no" ;;
+ # Guess no on Android.
+ linux*-android*) gl_cv_func_memchr_works="guessing no" ;;
+ # Guess yes on native Windows.
+ mingw*) gl_cv_func_memchr_works="guessing yes" ;;
+ # Be pessimistic for now.
+ *) gl_cv_func_memchr_works="guessing no" ;;
esac
])
])
diff --git a/gl/m4/mkdir.m4 b/gl/m4/mkdir.m4
index 4cd95903..366a3cd7 100644
--- a/gl/m4/mkdir.m4
+++ b/gl/m4/mkdir.m4
@@ -1,4 +1,4 @@
-# serial 14
+# serial 15
# Copyright (C) 2001, 2003-2004, 2006, 2008-2019 Free Software Foundation, Inc.
# This file is free software; the Free Software Foundation
@@ -62,6 +62,8 @@ AC_DEFUN([gl_FUNC_MKDIR],
[case "$host_os" in
# Guess yes on glibc systems.
*-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 no on native Windows.
mingw*) gl_cv_func_mkdir_trailing_dot_works="guessing no" ;;
# If we don't know, assume the worst.
diff --git a/gl/m4/mkstemp.m4 b/gl/m4/mkstemp.m4
index ae24c3bd..1b15c2eb 100644
--- a/gl/m4/mkstemp.m4
+++ b/gl/m4/mkstemp.m4
@@ -1,4 +1,4 @@
-#serial 25
+#serial 26
# Copyright (C) 2001, 2003-2007, 2009-2019 Free Software Foundation, Inc.
# This file is free software; the Free Software Foundation
@@ -59,6 +59,8 @@ AC_DEFUN([gl_FUNC_MKSTEMP],
[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, assume the worst.
diff --git a/gl/m4/printf.m4 b/gl/m4/printf.m4
index cbf6ae48..6d2280ef 100644
--- a/gl/m4/printf.m4
+++ b/gl/m4/printf.m4
@@ -1,4 +1,4 @@
-# printf.m4 serial 60
+# printf.m4 serial 61
dnl Copyright (C) 2003, 2007-2019 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
@@ -62,6 +62,8 @@ int main ()
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";;
# 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";;
@@ -240,6 +242,8 @@ int main ()
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";;
# Guess yes on FreeBSD >= 6.
freebsd[1-5].*) gl_cv_func_printf_infinite="guessing no";;
freebsd* | kfreebsd*) gl_cv_func_printf_infinite="guessing yes";;
@@ -457,6 +461,8 @@ int main ()
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";;
# 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";;
@@ -575,6 +581,8 @@ int main ()
[gl_cv_func_printf_directive_a="guessing yes"],
[gl_cv_func_printf_directive_a="guessing no"])
;;
+ # Guess yes on musl systems.
+ *-musl*) 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.
@@ -625,6 +633,8 @@ int main ()
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";;
# 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";;
@@ -960,6 +970,8 @@ 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.
@@ -1206,6 +1218,8 @@ changequote(,)dnl
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";;
@@ -1308,6 +1322,8 @@ int main ()
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";;
# 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";;
@@ -1400,6 +1416,8 @@ changequote(,)dnl
case "$host_os" in
# Guess yes on glibc systems.
*-gnu* | gnu*) gl_cv_func_snprintf_directive_n="guessing yes";;
+ # Guess yes on musl systems.
+ *-musl*) 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";;
@@ -1554,6 +1572,8 @@ changequote(,)dnl
case "$host_os" in
# 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";;
# 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";;
diff --git a/gl/m4/realloc.m4 b/gl/m4/realloc.m4
index 1281a353..93066e80 100644
--- a/gl/m4/realloc.m4
+++ b/gl/m4/realloc.m4
@@ -1,4 +1,4 @@
-# realloc.m4 serial 15
+# realloc.m4 serial 17
dnl Copyright (C) 2007, 2009-2019 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
@@ -32,15 +32,22 @@ AC_DEFUN([_AC_FUNC_REALLOC_IF],
[ac_cv_func_realloc_0_nonnull=no],
[case "$host_os" in
# Guess yes on platforms where we know the result.
- *-gnu* | gnu* | freebsd* | netbsd* | openbsd* \
+ *-gnu* | gnu* | *-musl* | freebsd* | netbsd* | openbsd* \
| hpux* | solaris* | cygwin* | mingw*)
- ac_cv_func_realloc_0_nonnull=yes ;;
+ ac_cv_func_realloc_0_nonnull="guessing yes" ;;
# If we don't know, assume the worst.
- *) ac_cv_func_realloc_0_nonnull=no ;;
+ *) ac_cv_func_realloc_0_nonnull="guessing no" ;;
esac
])
])
- AS_IF([test $ac_cv_func_realloc_0_nonnull = yes], [$1], [$2])
+ case "$ac_cv_func_realloc_0_nonnull" in
+ *yes)
+ $1
+ ;;
+ *)
+ $2
+ ;;
+ esac
])# AC_FUNC_REALLOC
])
diff --git a/gl/m4/setenv.m4 b/gl/m4/setenv.m4
index 6101274e..a8f83d60 100644
--- a/gl/m4/setenv.m4
+++ b/gl/m4/setenv.m4
@@ -1,4 +1,4 @@
-# setenv.m4 serial 27
+# setenv.m4 serial 28
dnl Copyright (C) 2001-2004, 2006-2019 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
@@ -37,6 +37,8 @@ AC_DEFUN([gl_FUNC_SETENV],
[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, assume the worst.
*) gl_cv_func_setenv_works="guessing no" ;;
esac
diff --git a/gl/m4/sleep.m4 b/gl/m4/sleep.m4
index 5f71cc78..7bab4670 100644
--- a/gl/m4/sleep.m4
+++ b/gl/m4/sleep.m4
@@ -1,4 +1,4 @@
-# sleep.m4 serial 9
+# sleep.m4 serial 10
dnl Copyright (C) 2007-2019 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
@@ -48,6 +48,8 @@ handle_alarm (int sig)
[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 no on native Windows.
mingw*) gl_cv_func_sleep_works="guessing no" ;;
# If we don't know, assume the worst.
diff --git a/gl/m4/stdlib_h.m4 b/gl/m4/stdlib_h.m4
index cf064284..6121602a 100644
--- a/gl/m4/stdlib_h.m4
+++ b/gl/m4/stdlib_h.m4
@@ -1,4 +1,4 @@
-# stdlib_h.m4 serial 45
+# stdlib_h.m4 serial 48
dnl Copyright (C) 2007-2019 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
@@ -23,10 +23,10 @@ AC_DEFUN([gl_STDLIB_H],
# include <random.h>
#endif
]], [_Exit atoll canonicalize_file_name getloadavg getsubopt grantpt
- initstate initstate_r mkdtemp mkostemp mkostemps mkstemp mkstemps
+ initstate initstate_r mbtowc mkdtemp mkostemp mkostemps mkstemp mkstemps
posix_openpt ptsname ptsname_r qsort_r random random_r reallocarray
realpath rpmatch secure_getenv setenv setstate setstate_r srandom
- srandom_r strtod strtoll strtoull unlockpt unsetenv])
+ srandom_r strtod strtold strtoll strtoull unlockpt unsetenv])
])
AC_DEFUN([gl_STDLIB_MODULE_INDICATOR],
@@ -68,6 +68,7 @@ AC_DEFUN([gl_STDLIB_H_DEFAULTS],
GNULIB_SECURE_GETENV=0; AC_SUBST([GNULIB_SECURE_GETENV])
GNULIB_SETENV=0; AC_SUBST([GNULIB_SETENV])
GNULIB_STRTOD=0; AC_SUBST([GNULIB_STRTOD])
+ GNULIB_STRTOLD=0; AC_SUBST([GNULIB_STRTOLD])
GNULIB_STRTOLL=0; AC_SUBST([GNULIB_STRTOLL])
GNULIB_STRTOULL=0; AC_SUBST([GNULIB_STRTOULL])
GNULIB_SYSTEM_POSIX=0; AC_SUBST([GNULIB_SYSTEM_POSIX])
@@ -81,7 +82,9 @@ AC_DEFUN([gl_STDLIB_H_DEFAULTS],
HAVE_DECL_GETLOADAVG=1; AC_SUBST([HAVE_DECL_GETLOADAVG])
HAVE_GETSUBOPT=1; AC_SUBST([HAVE_GETSUBOPT])
HAVE_GRANTPT=1; AC_SUBST([HAVE_GRANTPT])
+ HAVE_INITSTATE=1; AC_SUBST([HAVE_INITSTATE])
HAVE_DECL_INITSTATE=1; AC_SUBST([HAVE_DECL_INITSTATE])
+ HAVE_MBTOWC=1; AC_SUBST([HAVE_MBTOWC])
HAVE_MKDTEMP=1; AC_SUBST([HAVE_MKDTEMP])
HAVE_MKOSTEMP=1; AC_SUBST([HAVE_MKOSTEMP])
HAVE_MKOSTEMPS=1; AC_SUBST([HAVE_MKOSTEMPS])
@@ -100,8 +103,10 @@ AC_DEFUN([gl_STDLIB_H_DEFAULTS],
HAVE_SECURE_GETENV=1; AC_SUBST([HAVE_SECURE_GETENV])
HAVE_SETENV=1; AC_SUBST([HAVE_SETENV])
HAVE_DECL_SETENV=1; AC_SUBST([HAVE_DECL_SETENV])
+ HAVE_SETSTATE=1; AC_SUBST([HAVE_SETSTATE])
HAVE_DECL_SETSTATE=1; AC_SUBST([HAVE_DECL_SETSTATE])
HAVE_STRTOD=1; AC_SUBST([HAVE_STRTOD])
+ HAVE_STRTOLD=1; AC_SUBST([HAVE_STRTOLD])
HAVE_STRTOLL=1; AC_SUBST([HAVE_STRTOLL])
HAVE_STRTOULL=1; AC_SUBST([HAVE_STRTOULL])
HAVE_STRUCT_RANDOM_DATA=1; AC_SUBST([HAVE_STRUCT_RANDOM_DATA])
@@ -110,6 +115,7 @@ AC_DEFUN([gl_STDLIB_H_DEFAULTS],
HAVE_DECL_UNSETENV=1; AC_SUBST([HAVE_DECL_UNSETENV])
REPLACE_CALLOC=0; AC_SUBST([REPLACE_CALLOC])
REPLACE_CANONICALIZE_FILE_NAME=0; AC_SUBST([REPLACE_CANONICALIZE_FILE_NAME])
+ REPLACE_INITSTATE=0; AC_SUBST([REPLACE_INITSTATE])
REPLACE_MALLOC=0; AC_SUBST([REPLACE_MALLOC])
REPLACE_MBTOWC=0; AC_SUBST([REPLACE_MBTOWC])
REPLACE_MKSTEMP=0; AC_SUBST([REPLACE_MKSTEMP])
@@ -117,11 +123,14 @@ AC_DEFUN([gl_STDLIB_H_DEFAULTS],
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_REALPATH=0; AC_SUBST([REPLACE_REALPATH])
REPLACE_SETENV=0; AC_SUBST([REPLACE_SETENV])
+ REPLACE_SETSTATE=0; AC_SUBST([REPLACE_SETSTATE])
REPLACE_STRTOD=0; AC_SUBST([REPLACE_STRTOD])
+ REPLACE_STRTOLD=0; AC_SUBST([REPLACE_STRTOLD])
REPLACE_UNSETENV=0; AC_SUBST([REPLACE_UNSETENV])
REPLACE_WCTOMB=0; AC_SUBST([REPLACE_WCTOMB])
])
diff --git a/gl/m4/strerror.m4 b/gl/m4/strerror.m4
index b452f7f8..2c90f316 100644
--- a/gl/m4/strerror.m4
+++ b/gl/m4/strerror.m4
@@ -1,4 +1,4 @@
-# strerror.m4 serial 19
+# strerror.m4 serial 20
dnl Copyright (C) 2002, 2007-2019 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
@@ -26,6 +26,8 @@ AC_DEFUN([gl_FUNC_STRERROR],
[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, assume the worst.
*) gl_cv_func_working_strerror="guessing no" ;;
esac
@@ -80,6 +82,8 @@ AC_DEFUN([gl_FUNC_STRERROR_0],
[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, assume the worst.
diff --git a/gl/m4/sys_socket_h.m4 b/gl/m4/sys_socket_h.m4
index 1ea7b0b3..d0a90206 100644
--- a/gl/m4/sys_socket_h.m4
+++ b/gl/m4/sys_socket_h.m4
@@ -1,4 +1,4 @@
-# sys_socket_h.m4 serial 23
+# sys_socket_h.m4 serial 24
dnl Copyright (C) 2005-2019 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
@@ -104,17 +104,11 @@ AC_DEFUN([gl_PREREQ_SYS_H_SOCKET],
gl_CHECK_NEXT_HEADERS([sys/socket.h])
if test $ac_cv_header_sys_socket_h = yes; then
HAVE_SYS_SOCKET_H=1
- HAVE_WS2TCPIP_H=0
else
HAVE_SYS_SOCKET_H=0
- if test $ac_cv_header_ws2tcpip_h = yes; then
- HAVE_WS2TCPIP_H=1
- else
- HAVE_WS2TCPIP_H=0
- fi
fi
AC_SUBST([HAVE_SYS_SOCKET_H])
- AC_SUBST([HAVE_WS2TCPIP_H])
+ gl_PREREQ_SYS_H_WS2TCPIP
])
# Common prerequisites of the <sys/socket.h> replacement and of the
@@ -142,6 +136,24 @@ AC_DEFUN([gl_PREREQ_SYS_H_WINSOCK2],
AC_SUBST([HAVE_WINSOCK2_H])
])
+# Common prerequisites of the <sys/socket.h> replacement and of the
+# <arpa/inet.h> replacement.
+# Sets and substitutes HAVE_WS2TCPIP_H.
+AC_DEFUN([gl_PREREQ_SYS_H_WS2TCPIP],
+[
+ AC_REQUIRE([gl_CHECK_SOCKET_HEADERS])
+ 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_SUBST([HAVE_WS2TCPIP_H])
+])
+
AC_DEFUN([gl_SYS_SOCKET_MODULE_INDICATOR],
[
dnl Use AC_REQUIRE here, so that the default settings are expanded once only.
diff --git a/gl/m4/threadlib.m4 b/gl/m4/threadlib.m4
index bfc3bac8..045d9dad 100644
--- a/gl/m4/threadlib.m4
+++ b/gl/m4/threadlib.m4
@@ -1,4 +1,4 @@
-# threadlib.m4 serial 16
+# threadlib.m4 serial 20
dnl Copyright (C) 2005-2019 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
@@ -16,8 +16,7 @@ dnl (it must be placed before the invocation of gl_THREADLIB_EARLY!), then the
dnl default is 'no', otherwise it is system dependent. In both cases, the user
dnl can change the choice through the options --enable-threads=choice or
dnl --disable-threads.
-dnl Defines at most one of the macros USE_POSIX_THREADS, USE_SOLARIS_THREADS,
-dnl USE_PTH_THREADS, USE_WINDOWS_THREADS
+dnl Defines at most one of the macros USE_POSIX_THREADS, USE_WINDOWS_THREADS.
dnl Sets the variables LIBTHREAD and LTLIBTHREAD to the linker options for use
dnl in a Makefile (LIBTHREAD for use without libtool, LTLIBTHREAD for use with
dnl libtool).
@@ -27,6 +26,9 @@ dnl between LIBTHREAD and LIBMULTITHREAD is that on platforms supporting weak
dnl symbols, typically LIBTHREAD is empty whereas LIBMULTITHREAD is not.
dnl Adds to CPPFLAGS the flag -D_REENTRANT or -D_THREAD_SAFE if needed for
dnl multithread-safe programs.
+dnl Since support for GNU pth was removed, $LTLIBTHREAD and $LIBTHREAD have the
+dnl same value, and similarly $LTLIBMULTITHREAD and $LIBMULTITHREAD have the
+dnl same value. Only system libraries are needed.
AC_DEFUN([gl_THREADLIB_EARLY],
[
@@ -50,8 +52,9 @@ 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=])
AC_ARG_ENABLE([threads],
-AC_HELP_STRING([--enable-threads={posix|solaris|pth|windows}], [specify multithreading API])m4_ifdef([gl_THREADLIB_DEFAULT_NO], [], [
+AC_HELP_STRING([--enable-threads={posix|windows}], [specify multithreading API])m4_ifdef([gl_THREADLIB_DEFAULT_NO], [], [
AC_HELP_STRING([--disable-threads], [build without multithread safety])]),
[gl_use_threads=$enableval],
[if test -n "$gl_use_threads_default"; then
@@ -62,16 +65,24 @@ changequote(,)dnl
dnl Disable multithreading by default on OSF/1, because it interferes
dnl with fork()/exec(): When msgexec is linked with -lpthread, its
dnl child process gets an endless segmentation fault inside execvp().
+ osf*) gl_use_threads=no ;;
dnl Disable multithreading by default on Cygwin 1.5.x, because it has
dnl bugs that lead to endless loops or crashes. See
dnl <https://cygwin.com/ml/cygwin/2009-08/msg00283.html>.
- osf*) gl_use_threads=no ;;
cygwin*)
case `uname -r` in
1.[0-5].*) gl_use_threads=no ;;
*) gl_use_threads=yes ;;
esac
;;
+ dnl Obey gl_AVOID_WINPTHREAD on mingw.
+ mingw*)
+ case "$gl_use_winpthreads_default" in
+ yes) gl_use_threads=posix ;;
+ no) gl_use_threads=windows ;;
+ *) gl_use_threads=yes ;;
+ esac
+ ;;
*) gl_use_threads=yes ;;
esac
changequote([,])dnl
@@ -151,6 +162,13 @@ int main ()
*" -static "*) gl_cv_have_weak=no ;;
esac
])
+ if case "$gl_cv_have_weak" in *yes) true;; *) false;; esac; then
+ dnl If we use weak symbols to implement pthread_in_use / pth_in_use /
+ dnl thread_in_use, we also need to test whether the ISO C 11 thrd_create
+ dnl facility is in use.
+ AC_CHECK_HEADERS_ONCE([threads.h])
+ :
+ fi
if test "$gl_use_threads" = yes || test "$gl_use_threads" = posix; then
# On OSF/1, the compiler needs the flag -pthread or -D_REENTRANT so that
# it groks <pthread.h>. It's added above, in gl_THREADLIB_EARLY_BODY.
@@ -235,67 +253,6 @@ int main ()
fi
fi
if test -z "$gl_have_pthread"; then
- if test "$gl_use_threads" = yes || test "$gl_use_threads" = solaris; then
- gl_have_solaristhread=
- gl_save_LIBS="$LIBS"
- LIBS="$LIBS -lthread"
- AC_LINK_IFELSE(
- [AC_LANG_PROGRAM(
- [[
-#include <thread.h>
-#include <synch.h>
- ]],
- [[thr_self();]])],
- [gl_have_solaristhread=yes])
- LIBS="$gl_save_LIBS"
- if test -n "$gl_have_solaristhread"; then
- gl_threads_api=solaris
- LIBTHREAD=-lthread
- LTLIBTHREAD=-lthread
- LIBMULTITHREAD="$LIBTHREAD"
- LTLIBMULTITHREAD="$LTLIBTHREAD"
- AC_DEFINE([USE_SOLARIS_THREADS], [1],
- [Define if the old Solaris multithreading library can be used.])
- if case "$gl_cv_have_weak" in *yes) true;; *) false;; esac; then
- AC_DEFINE([USE_SOLARIS_THREADS_WEAK], [1],
- [Define if references to the old Solaris multithreading library should be made weak.])
- LIBTHREAD=
- LTLIBTHREAD=
- fi
- fi
- fi
- fi
- if test "$gl_use_threads" = pth; then
- gl_save_CPPFLAGS="$CPPFLAGS"
- AC_LIB_LINKFLAGS([pth])
- gl_have_pth=
- gl_save_LIBS="$LIBS"
- LIBS="$LIBS $LIBPTH"
- AC_LINK_IFELSE(
- [AC_LANG_PROGRAM([[#include <pth.h>]], [[pth_self();]])],
- [gl_have_pth=yes])
- LIBS="$gl_save_LIBS"
- if test -n "$gl_have_pth"; then
- gl_threads_api=pth
- LIBTHREAD="$LIBPTH"
- LTLIBTHREAD="$LTLIBPTH"
- LIBMULTITHREAD="$LIBTHREAD"
- LTLIBMULTITHREAD="$LTLIBTHREAD"
- AC_DEFINE([USE_PTH_THREADS], [1],
- [Define if the GNU Pth multithreading library can be used.])
- if test -n "$LIBMULTITHREAD" || test -n "$LTLIBMULTITHREAD"; then
- if case "$gl_cv_have_weak" in *yes) true;; *) false;; esac; then
- AC_DEFINE([USE_PTH_THREADS_WEAK], [1],
- [Define if references to the GNU Pth multithreading library should be made weak.])
- LIBTHREAD=
- LTLIBTHREAD=
- fi
- fi
- else
- CPPFLAGS="$gl_save_CPPFLAGS"
- fi
- fi
- if test -z "$gl_have_pthread"; then
case "$gl_use_threads" in
yes | windows | win32) # The 'win32' is for backward compatibility.
if { case "$host_os" in
@@ -337,6 +294,18 @@ AC_DEFUN([gl_DISABLE_THREADS], [
])
+dnl gl_AVOID_WINPTHREAD
+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'.
+
+AC_DEFUN([gl_AVOID_WINPTHREAD], [
+ m4_divert_text([INIT_PREPARE], [gl_use_winpthreads_default=no])
+])
+
+
dnl Survey of platforms:
dnl
dnl Platform Available Compiler Supports test-lock
@@ -366,7 +335,6 @@ dnl
dnl Mac OS X 10.[123] posix -lpthread Y OK
dnl
dnl Solaris 7,8,9 posix -lpthread Y Sol 7,8: 0.0; Sol 9: OK
-dnl solaris -lthread Y Sol 7,8: 0.0; Sol 9: OK
dnl
dnl HP-UX 11 posix -lpthread N (cc) OK
dnl Y (gcc)
@@ -380,8 +348,6 @@ dnl -lpthread (gcc) Y
dnl
dnl Cygwin posix -lpthread Y OK
dnl
-dnl Any of the above pth -lpth 0.0
-dnl
dnl Mingw windows N OK
dnl
dnl BeOS 5 --
diff --git a/gl/m4/unistd_h.m4 b/gl/m4/unistd_h.m4
index a04055d2..a3b3905f 100644
--- a/gl/m4/unistd_h.m4
+++ b/gl/m4/unistd_h.m4
@@ -1,4 +1,4 @@
-# unistd_h.m4 serial 74
+# unistd_h.m4 serial 75
dnl Copyright (C) 2006-2019 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
@@ -64,6 +64,7 @@ AC_DEFUN([gl_UNISTD_H_DEFAULTS],
GNULIB_CHDIR=0; AC_SUBST([GNULIB_CHDIR])
GNULIB_CHOWN=0; AC_SUBST([GNULIB_CHOWN])
GNULIB_CLOSE=0; AC_SUBST([GNULIB_CLOSE])
+ GNULIB_COPY_FILE_RANGE=0; AC_SUBST([GNULIB_COPY_FILE_RANGE])
GNULIB_DUP=0; AC_SUBST([GNULIB_DUP])
GNULIB_DUP2=0; AC_SUBST([GNULIB_DUP2])
GNULIB_DUP3=0; AC_SUBST([GNULIB_DUP3])
@@ -113,6 +114,7 @@ AC_DEFUN([gl_UNISTD_H_DEFAULTS],
GNULIB_WRITE=0; AC_SUBST([GNULIB_WRITE])
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_DUP2=1; AC_SUBST([HAVE_DUP2])
HAVE_DUP3=1; AC_SUBST([HAVE_DUP3])
HAVE_EUIDACCESS=1; AC_SUBST([HAVE_EUIDACCESS])
diff --git a/gl/m4/utimes.m4 b/gl/m4/utimes.m4
index 7209b6dd..5806d8fb 100644
--- a/gl/m4/utimes.m4
+++ b/gl/m4/utimes.m4
@@ -1,5 +1,5 @@
# Detect some bugs in glibc's implementation of utimes.
-# serial 5
+# serial 6
dnl Copyright (C) 2003-2005, 2009-2019 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
@@ -143,9 +143,11 @@ main ()
[gl_cv_func_working_utimes=yes],
[gl_cv_func_working_utimes=no],
[case "$host_os" in
- # Guess no on native Windows.
- mingw*) gl_cv_func_working_utimes="guessing no" ;;
- *) gl_cv_func_working_utimes="guessing no" ;;
+ # Guess yes on musl systems.
+ *-musl*) gl_cv_func_working_utimes="guessing yes" ;;
+ # Guess no on native Windows.
+ mingw*) gl_cv_func_working_utimes="guessing no" ;;
+ *) gl_cv_func_working_utimes="guessing no" ;;
esac
])
])
diff --git a/gl/m4/wcrtomb.m4 b/gl/m4/wcrtomb.m4
index f4f37f56..fec22f34 100644
--- a/gl/m4/wcrtomb.m4
+++ b/gl/m4/wcrtomb.m4
@@ -1,4 +1,4 @@
-# wcrtomb.m4 serial 13
+# wcrtomb.m4 serial 14
dnl Copyright (C) 2008-2019 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
@@ -33,7 +33,9 @@ AC_DEFUN([gl_FUNC_WCRTOMB],
else
if test $REPLACE_MBSTATE_T = 1; then
REPLACE_WCRTOMB=1
- else
+ fi
+ if test $REPLACE_WCRTOMB = 0; then
+ dnl On Android 4.3, wcrtomb produces wrong characters in the C locale.
dnl On AIX 4.3, OSF/1 5.1 and Solaris <= 11.3, wcrtomb (NULL, 0, NULL)
dnl sometimes returns 0 instead of 1.
AC_REQUIRE([AC_PROG_CC])
@@ -42,6 +44,45 @@ AC_DEFUN([gl_FUNC_WCRTOMB],
AC_REQUIRE([gt_LOCALE_JA])
AC_REQUIRE([gt_LOCALE_ZH_CN])
AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
+ AC_CACHE_CHECK([whether wcrtomb works in the C locale],
+ [gl_cv_func_wcrtomb_works],
+ [AC_RUN_IFELSE(
+ [AC_LANG_SOURCE([[
+#include <string.h>
+#include <stdlib.h>
+/* Tru64 with Desktop Toolkit C has a bug: <stdio.h> must be included before
+ <wchar.h>.
+ BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be
+ included before <wchar.h>. */
+#include <stddef.h>
+#include <stdio.h>
+#include <wchar.h>
+int main ()
+{
+ mbstate_t state;
+ char out[64];
+ int count;
+ memset (&state, 0, sizeof (state));
+ out[0] = 'x';
+ count = wcrtomb (out, L'a', &state);
+ return !(count == 1 && out[0] == 'a');
+}]])],
+ [gl_cv_func_wcrtomb_works=yes],
+ [gl_cv_func_wcrtomb_works=no],
+ [case "$host_os" in
+ # Guess no on Android.
+ linux*-android*) gl_cv_func_wcrtomb_works="guessing no";;
+ # Guess yes otherwise.
+ *) gl_cv_func_wcrtomb_works="guessing yes";;
+ esac
+ ])
+ ])
+ case "$gl_cv_func_wcrtomb_works" in
+ *yes) ;;
+ *) REPLACE_WCRTOMB=1 ;;
+ esac
+ fi
+ if test $REPLACE_WCRTOMB = 0; then
AC_CACHE_CHECK([whether wcrtomb return value is correct],
[gl_cv_func_wcrtomb_retval],
[
diff --git a/gl/po/POTFILES.in b/gl/po/POTFILES.in
index 91ff8514..85249186 100644
--- a/gl/po/POTFILES.in
+++ b/gl/po/POTFILES.in
@@ -338,6 +338,15 @@ gl/lib/wchar.in.h
gl/lib/wcrtomb.c
gl/lib/wctype-h.c
gl/lib/wctype.in.h
+gl/lib/windows-initguard.h
+gl/lib/windows-mutex.c
+gl/lib/windows-mutex.h
+gl/lib/windows-once.c
+gl/lib/windows-once.h
+gl/lib/windows-recmutex.c
+gl/lib/windows-recmutex.h
+gl/lib/windows-rwlock.c
+gl/lib/windows-rwlock.h
gl/lib/xalloc-die.c
gl/lib/xalloc-oversized.h
gl/lib/xalloc.h
diff --git a/gl/po/af.po b/gl/po/af.po
index 2adfb896..655c4e0e 100644
--- a/gl/po/af.po
+++ b/gl/po/af.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: coreutils 5.2.1\n"
"Report-Msgid-Bugs-To: bug-gnulib@gnu.org\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2004-03-17 11:58+0200\n"
"Last-Translator: Petri Jooste <rkwjpj@puk.ac.za>\n"
"Language-Team: Afrikaans <i18n@af.org.za>\n"
diff --git a/gl/po/be.po b/gl/po/be.po
index f87b2cc7..077cf022 100644
--- a/gl/po/be.po
+++ b/gl/po/be.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: coreutils 5.0.91\n"
"Report-Msgid-Bugs-To: bug-gnulib@gnu.org\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2003-10-30 01:10+0200\n"
"Last-Translator: Ales Nyakhaychyk <nab@mail.by>\n"
"Language-Team: Belarusian <i18n@mova.org>\n"
diff --git a/gl/po/bg.po b/gl/po/bg.po
index 5c1c3aeb..0d6fbb85 100644
--- a/gl/po/bg.po
+++ b/gl/po/bg.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gnulib 4.0.0.2567\n"
"Report-Msgid-Bugs-To: bug-gnulib@gnu.org\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2019-05-19 18:14+0200\n"
"Last-Translator: Alexander Shopov <ash@kambanaria.org>\n"
"Language-Team: Bulgarian <dict@ludost.net>\n"
diff --git a/gl/po/ca.po b/gl/po/ca.po
index f9c54554..ca5991c8 100644
--- a/gl/po/ca.po
+++ b/gl/po/ca.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: mailutils 0.6.90\n"
"Report-Msgid-Bugs-To: bug-gnulib@gnu.org\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2005-05-21 04:10+0200\n"
"Last-Translator: Jordi Mallach <jordi@gnu.org>\n"
"Language-Team: Catalan <ca@dodds.net>\n"
diff --git a/gl/po/cs.po b/gl/po/cs.po
index a4f78eef..e0e974ca 100644
--- a/gl/po/cs.po
+++ b/gl/po/cs.po
@@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gnulib 3.0.0.6062.a6b16\n"
"Report-Msgid-Bugs-To: bug-gnulib@gnu.org\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2011-12-04 08:50+0100\n"
"Last-Translator: Marek Černocký <marek@manet.cz>\n"
"Language-Team: Czech <translation-team-cs@lists.sourceforge.net>\n"
diff --git a/gl/po/da.po b/gl/po/da.po
index 6f84c560..441107e5 100644
--- a/gl/po/da.po
+++ b/gl/po/da.po
@@ -13,7 +13,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gnulib 2.0.0.3462.e9796\n"
"Report-Msgid-Bugs-To: bug-gnulib@gnu.org\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2011-01-20 22:11+0100\n"
"Last-Translator: Keld Simonsen <keld@keldix.com>\n"
"Language-Team: Danish <dansk@dansk-gruppen.dk>\n"
diff --git a/gl/po/de.po b/gl/po/de.po
index c118da48..8c476cf7 100644
--- a/gl/po/de.po
+++ b/gl/po/de.po
@@ -35,7 +35,7 @@ msgid ""
msgstr ""
"Project-Id-Version: GNU gnulib-4.0.0.2567\n"
"Report-Msgid-Bugs-To: bug-gnulib@gnu.org\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2019-05-22 20:00+0200\n"
"Last-Translator: Roland Illig <roland.illig@gmx.de>\n"
"Language-Team: German <translation-team-de@lists.sourceforge.net>\n"
diff --git a/gl/po/el.po b/gl/po/el.po
index ae6ec956..8785cf9e 100644
--- a/gl/po/el.po
+++ b/gl/po/el.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gnulib 3.0.0.6062.a6b16\n"
"Report-Msgid-Bugs-To: bug-gnulib@gnu.org\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2012-03-11 11:25+0100\n"
"Last-Translator: Simos Xenitellis <simos.lists@googlemail.com>\n"
"Language-Team: Greek <team@lists.gnome.gr>\n"
diff --git a/gl/po/eo.po b/gl/po/eo.po
index 955a12ad..a65e2872 100644
--- a/gl/po/eo.po
+++ b/gl/po/eo.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gnulib 4.0.0.2567\n"
"Report-Msgid-Bugs-To: bug-gnulib@gnu.org\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2019-05-19 18:26-0300\n"
"Last-Translator: Felipe Castro <fefcas@gmail.com>\n"
"Language-Team: Esperanto <translation-team-eo@lists.sourceforge.net>\n"
diff --git a/gl/po/es.po b/gl/po/es.po
index fb489d68..6d6598b6 100644
--- a/gl/po/es.po
+++ b/gl/po/es.po
@@ -13,7 +13,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gnulib 3.0.0.6062.a6b16\n"
"Report-Msgid-Bugs-To: bug-gnulib@gnu.org\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2011-08-24 11:23-0500\n"
"Last-Translator: Cristian Othón Martínez Vera <cfuga@cfuga.mx>\n"
"Language-Team: Spanish <es@li.org>\n"
diff --git a/gl/po/et.po b/gl/po/et.po
index a21a4e22..7b83c44a 100644
--- a/gl/po/et.po
+++ b/gl/po/et.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gnulib 2.0.0.3462.e9796\n"
"Report-Msgid-Bugs-To: bug-gnulib@gnu.org\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2011-05-19 15:10+0300\n"
"Last-Translator: Toomas Soome <Toomas.Soome@microlink.ee>\n"
"Language-Team: Estonian <linux-ee@lists.eenet.ee>\n"
diff --git a/gl/po/eu.po b/gl/po/eu.po
index 1edd6f8a..bb4862c9 100644
--- a/gl/po/eu.po
+++ b/gl/po/eu.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: coreutils-5.2.1\n"
"Report-Msgid-Bugs-To: bug-gnulib@gnu.org\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2005-01-04 20:27+0100\n"
"Last-Translator: Mikel Olasagasti <hey_neken@mundurat.net>\n"
"Language-Team: Basque <translation-team-eu@lists.sourceforge.net>\n"
diff --git a/gl/po/fi.po b/gl/po/fi.po
index 293a6cf5..96d6664d 100644
--- a/gl/po/fi.po
+++ b/gl/po/fi.po
@@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gnulib 3.0.0.6062.a6b16\n"
"Report-Msgid-Bugs-To: bug-gnulib@gnu.org\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2011-12-10 19:05+0200\n"
"Last-Translator: Jorma Karvonen <karvonen.jorma@gmail.com>\n"
"Language-Team: Finnish <translation-team-fi@lists.sourceforge.net>\n"
diff --git a/gl/po/fr.po b/gl/po/fr.po
index dc4cfcc8..381a4585 100644
--- a/gl/po/fr.po
+++ b/gl/po/fr.po
@@ -11,7 +11,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gnulib-4.0.0.2567\n"
"Report-Msgid-Bugs-To: bug-gnulib@gnu.org\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2019-05-21 20:15+0200\n"
"Last-Translator: Stéphane Aulery <lkppo@free.fr>\n"
"Language-Team: French <traduc@traduc.org>\n"
diff --git a/gl/po/ga.po b/gl/po/ga.po
index fe0ef3f9..6fcad2ae 100644
--- a/gl/po/ga.po
+++ b/gl/po/ga.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gnulib 1.1\n"
"Report-Msgid-Bugs-To: bug-gnulib@gnu.org\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2007-07-20 12:24-0600\n"
"Last-Translator: Kevin Scannell <kscanne@gmail.com>\n"
"Language-Team: Irish <gaeilge-gnulinux@lists.sourceforge.net>\n"
diff --git a/gl/po/gl.po b/gl/po/gl.po
index d1ebdd5e..ae097872 100644
--- a/gl/po/gl.po
+++ b/gl/po/gl.po
@@ -13,7 +13,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gnulib 3.0.0.6062.a6b16\n"
"Report-Msgid-Bugs-To: bug-gnulib@gnu.org\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2012-11-11 13:26+0200\n"
"Last-Translator: Leandro Regueiro <leandro.regueiro@gmail.com>\n"
"Language-Team: Galician <proxecto@trasno.net>\n"
diff --git a/gl/po/hu.po b/gl/po/hu.po
index 5671a892..22993c48 100644
--- a/gl/po/hu.po
+++ b/gl/po/hu.po
@@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gnulib 3.0.0.6062.a6b16\n"
"Report-Msgid-Bugs-To: bug-gnulib@gnu.org\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2014-06-25 19:51+0200\n"
"Last-Translator: Balázs Úr <urbalazs@gmail.com>\n"
"Language-Team: Hungarian <translation-team-hu@lists.sourceforge.net>\n"
diff --git a/gl/po/it.po b/gl/po/it.po
index 2c87d477..e562ee4c 100644
--- a/gl/po/it.po
+++ b/gl/po/it.po
@@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gnulib-4.0.0.2567\n"
"Report-Msgid-Bugs-To: bug-gnulib@gnu.org\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2019-05-21 14:07+0200\n"
"Last-Translator: Milo Casagrande <milo@milo.name>\n"
"Language-Team: Italian <tp@lists.linux.it>\n"
diff --git a/gl/po/ja.po b/gl/po/ja.po
index 1a31c474..9db5e4dd 100644
--- a/gl/po/ja.po
+++ b/gl/po/ja.po
@@ -11,7 +11,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gnulib 3.0.0.6062.a6b16\n"
"Report-Msgid-Bugs-To: bug-gnulib@gnu.org\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2011-09-02 18:39+0900\n"
"Last-Translator: Yasuaki Taniguchi <yasuakit@gmail.com>\n"
"Language-Team: Japanese <translation-team-ja@lists.sourceforge.net>\n"
diff --git a/gl/po/ko.po b/gl/po/ko.po
index 456daacf..42208b9d 100644
--- a/gl/po/ko.po
+++ b/gl/po/ko.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: GNU textutils 2.0.22\n"
"Report-Msgid-Bugs-To: bug-gnulib@gnu.org\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2002-07-22 20:02+0900\n"
"Last-Translator: Changwoo Ryu <cwryu@debian.org>\n"
"Language-Team: Korean <translation-team-ko@lists.sourceforge.net>\n"
diff --git a/gl/po/man-db-gnulib.pot b/gl/po/man-db-gnulib.pot
index 26e12098..43cfa3ef 100644
--- a/gl/po/man-db-gnulib.pot
+++ b/gl/po/man-db-gnulib.pot
@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: man-db 2.8.6.1\n"
+"Project-Id-Version: man-db 2.8.7\n"
"Report-Msgid-Bugs-To: bug-gnulib@gnu.org\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
diff --git a/gl/po/ms.po b/gl/po/ms.po
index 75374e28..1a034f8d 100644
--- a/gl/po/ms.po
+++ b/gl/po/ms.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: coreutils 5.0.90\n"
"Report-Msgid-Bugs-To: bug-gnulib@gnu.org\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2003-08-10 16:00+0800\n"
"Last-Translator: Hasbullah Bin Pit <sebol@ikhlas.com>\n"
"Language-Team: Malay <translation-team-ms@lists.sourceforge.net>\n"
diff --git a/gl/po/nb.po b/gl/po/nb.po
index 47bf815e..ce62f804 100644
--- a/gl/po/nb.po
+++ b/gl/po/nb.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: GNU textutils 2.0.20\n"
"Report-Msgid-Bugs-To: bug-gnulib@gnu.org\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2002-01-27 21:35+0100\n"
"Last-Translator: Eivind Tagseth <eivindt@multinet.no>\n"
"Language-Team: Norwegian <i18n-nb@lister.ping.uio.no>\n"
diff --git a/gl/po/nl.po b/gl/po/nl.po
index 506c337a..35f92bea 100644
--- a/gl/po/nl.po
+++ b/gl/po/nl.po
@@ -11,7 +11,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gnulib-4.0.0.2567\n"
"Report-Msgid-Bugs-To: bug-gnulib@gnu.org\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2019-05-29 13:31+0200\n"
"Last-Translator: Benno Schulenberg <vertaling@coevern.nl>\n"
"Language-Team: Dutch <vertaling@vrijschrift.org>\n"
diff --git a/gl/po/pl.po b/gl/po/pl.po
index b93c447e..fccfd479 100644
--- a/gl/po/pl.po
+++ b/gl/po/pl.po
@@ -11,7 +11,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gnulib 4.0.0.2567\n"
"Report-Msgid-Bugs-To: bug-gnulib@gnu.org\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2019-05-19 20:02+0200\n"
"Last-Translator: Jakub Bogusz <qboosh@pld-linux.org>\n"
"Language-Team: Polish <translation-team-pl@lists.sourceforge.net>\n"
diff --git a/gl/po/pt.po b/gl/po/pt.po
index 50fb8b02..3afe83e9 100644
--- a/gl/po/pt.po
+++ b/gl/po/pt.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gnulib 4.0.0.2567\n"
"Report-Msgid-Bugs-To: bug-gnulib@gnu.org\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2019-05-26 10:40+0100\n"
"Last-Translator: Pedro Albuquerque <palbuquerque73@gmail.com>\n"
"Language-Team: Portuguese <translation-team-pt@lists.sourceforge.net>\n"
diff --git a/gl/po/pt_BR.po b/gl/po/pt_BR.po
index 2d1c4cc9..03a333ea 100644
--- a/gl/po/pt_BR.po
+++ b/gl/po/pt_BR.po
@@ -10,7 +10,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gnulib 4.0.0.2567\n"
"Report-Msgid-Bugs-To: bug-gnulib@gnu.org\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2019-05-19 09:10-0200\n"
"Last-Translator: Rafael Fontenelle <rafaelff@gnome.org>\n"
"Language-Team: Brazilian Portuguese <ldpbr-translation@lists.sourceforge."
diff --git a/gl/po/ro.po b/gl/po/ro.po
index ce5db477..d63583d9 100644
--- a/gl/po/ro.po
+++ b/gl/po/ro.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: mailutils 0.4\n"
"Report-Msgid-Bugs-To: bug-gnulib@gnu.org\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2003-12-10 08:55+0200\n"
"Last-Translator: Eugen Hoanca <eugenh@urban-grafx.ro>\n"
"Language-Team: Romanian <translation-team-ro@lists.sourceforge.net>\n"
diff --git a/gl/po/ru.po b/gl/po/ru.po
index 1284e2b2..7725be0e 100644
--- a/gl/po/ru.po
+++ b/gl/po/ru.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gnulib 4.0.0.2567\n"
"Report-Msgid-Bugs-To: bug-gnulib@gnu.org\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2019-05-21 18:46+0300\n"
"Last-Translator: Yuri Kozlov <yuray@komyakino.ru>\n"
"Language-Team: Russian <gnu@d07.ru>\n"
diff --git a/gl/po/rw.po b/gl/po/rw.po
index e74c6cfd..3c08e59f 100644
--- a/gl/po/rw.po
+++ b/gl/po/rw.po
@@ -16,7 +16,7 @@ msgid ""
msgstr ""
"Project-Id-Version: mailutils 0.6\n"
"Report-Msgid-Bugs-To: bug-gnulib@gnu.org\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2005-04-04 10:55-0700\n"
"Last-Translator: Steven Michael Murphy <murf@e-tools.com>\n"
"Language-Team: Kinyarwanda <translation-team-rw@lists.sourceforge.net>\n"
diff --git a/gl/po/sk.po b/gl/po/sk.po
index 6cdbbf5a..670ec3e5 100644
--- a/gl/po/sk.po
+++ b/gl/po/sk.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: textutils 2.0.14\n"
"Report-Msgid-Bugs-To: bug-gnulib@gnu.org\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2001-06-08 22:10 +02:00\n"
"Last-Translator: Stanislav Meduna <stano@trillian.eunet.sk>\n"
"Language-Team: Slovak <sk-i18n@rak.isternet.sk>\n"
diff --git a/gl/po/sl.po b/gl/po/sl.po
index 3d12be70..902c9c77 100644
--- a/gl/po/sl.po
+++ b/gl/po/sl.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gnulib 3.0.0.6062.a6b16\n"
"Report-Msgid-Bugs-To: bug-gnulib@gnu.org\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2012-05-20 13:08+0200\n"
"Last-Translator: Primož Peterlin <primozz.peterlin@gmail.com>\n"
"Language-Team: Slovenian <translation-team-sl@lists.sourceforge.net>\n"
diff --git a/gl/po/sr.po b/gl/po/sr.po
index 2d351923..42741e5c 100644
--- a/gl/po/sr.po
+++ b/gl/po/sr.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gnulib-3.0.0.6062.a6b16\n"
"Report-Msgid-Bugs-To: bug-gnulib@gnu.org\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2013-11-17 16:47+0200\n"
"Last-Translator: Мирослав Николић <miroslavnikolic@rocketmail.com>\n"
"Language-Team: Serbian <(nothing)>\n"
diff --git a/gl/po/sv.po b/gl/po/sv.po
index 27d3acd7..52242b2a 100644
--- a/gl/po/sv.po
+++ b/gl/po/sv.po
@@ -12,7 +12,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gnulib 4.0.0.2567\n"
"Report-Msgid-Bugs-To: bug-gnulib@gnu.org\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2019-05-21 10:41+0200\n"
"Last-Translator: Göran Uddeborg <goeran@uddeborg.se>\n"
"Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n"
diff --git a/gl/po/tr.po b/gl/po/tr.po
index 4a37d6cc..90a4c5d2 100644
--- a/gl/po/tr.po
+++ b/gl/po/tr.po
@@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: coreutils 5.3.0\n"
"Report-Msgid-Bugs-To: bug-gnulib@gnu.org\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2005-03-14 04:17+0200\n"
"Last-Translator: Deniz Akkus Kanca <deniz@arayan.com>\n"
"Language-Team: Turkish <gnu-tr-u12a@lists.sourceforge.net>\n"
diff --git a/gl/po/uk.po b/gl/po/uk.po
index 5eb8b854..0ade0b0c 100644
--- a/gl/po/uk.po
+++ b/gl/po/uk.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gnulib 4.0.0.2567\n"
"Report-Msgid-Bugs-To: bug-gnulib@gnu.org\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2019-05-19 14:26+0300\n"
"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
"Language-Team: Ukrainian <trans-uk@lists.fedoraproject.org>\n"
diff --git a/gl/po/vi.po b/gl/po/vi.po
index 41e5af1f..2365a86f 100644
--- a/gl/po/vi.po
+++ b/gl/po/vi.po
@@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gnulib-3.0.0.6062.a6b16\n"
"Report-Msgid-Bugs-To: bug-gnulib@gnu.org\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2014-01-13 08:31+0700\n"
"Last-Translator: Trần Ngọc Quân <vnwildman@gmail.com>\n"
"Language-Team: Vietnamese <translation-team-vi@lists.sourceforge.net>\n"
diff --git a/gl/po/zh_CN.po b/gl/po/zh_CN.po
index 91f6028c..e2e2e7e7 100644
--- a/gl/po/zh_CN.po
+++ b/gl/po/zh_CN.po
@@ -10,7 +10,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gnulib 2.0.0.3462.e9796\n"
"Report-Msgid-Bugs-To: bug-gnulib@gnu.org\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2010-02-26 09:54+0800\n"
"Last-Translator: Ji ZhengYu <zhengyuji@gmail.com>\n"
"Language-Team: Chinese (simplified) <i18n-zh@googlegroups.com>\n"
diff --git a/gl/po/zh_TW.po b/gl/po/zh_TW.po
index 58bb1cda..58301da3 100644
--- a/gl/po/zh_TW.po
+++ b/gl/po/zh_TW.po
@@ -14,7 +14,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gnulib 4.0.0.2567\n"
"Report-Msgid-Bugs-To: bug-gnulib@gnu.org\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2019-05-19 19:34+0800\n"
"Last-Translator: pan93412 <pan93412@gmail.com>\n"
"Language-Team: Chinese (traditional) <zh-l10n@linux.org.tw>\n"
diff --git a/include/manconfig.h.in b/include/manconfig.h.in
index d9605c9b..6166d9cb 100644
--- a/include/manconfig.h.in
+++ b/include/manconfig.h.in
@@ -254,27 +254,6 @@
# define ATTRIBUTE_FORMAT_PRINTF(a,b)
#endif
-/* Does this compiler support marking variables as unused? */
-#if GNUC_PREREQ(2,4)
-# define ATTRIBUTE_UNUSED __attribute__ ((__unused__))
-#else
-# define ATTRIBUTE_UNUSED
-#endif
-
-/* Does this compiler support marking functions as non-returning? */
-#if GNUC_PREREQ(2,5)
-# define ATTRIBUTE_NORETURN __attribute__ ((__noreturn__))
-#else
-# define ATTRIBUTE_NORETURN
-#endif
-
-/* Does this compiler support malloc return checking? */
-#if GNUC_PREREQ(2,96)
-# define ATTRIBUTE_MALLOC __attribute__ ((__malloc__))
-#else
-# define ATTRIBUTE_MALLOC
-#endif
-
/* Does this compiler support unused result checking? */
#if GNUC_PREREQ(3,4)
# define ATTRIBUTE_WARN_UNUSED_RESULT __attribute__ ((__warn_unused_result__))
@@ -299,9 +278,9 @@ extern void __chkr_garbage_detector (void);
/* GNU gettext needs to know when the locale changes. This macro tells it. */
#ifdef ENABLE_NLS
+extern int _nl_msg_cat_cntr;
# define locale_changed() \
do { \
- extern int _nl_msg_cat_cntr; \
++_nl_msg_cat_cntr; \
} while (0)
#else /* !ENABLE_NLS */
@@ -351,7 +330,7 @@ extern struct compression *comp_info (const char *filename, int want_stem);
extern struct compression *comp_file (const char *filename);
/* straycats.c */
-extern int straycats (const char *manpath);
+extern int straycats (const char *database, const char *manpath);
/* lexgrog.l */
struct lexgrog;
diff --git a/init/Makefile.in b/init/Makefile.in
index c37ff83c..ec804ba2 100644
--- a/init/Makefile.in
+++ b/init/Makefile.in
@@ -182,6 +182,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/man-arg-automatic-create.m4 \
$(top_srcdir)/gl/m4/ltversion.m4 \
$(top_srcdir)/gl/m4/lt~obsolete.m4 \
$(top_srcdir)/gl/m4/malloc.m4 $(top_srcdir)/gl/m4/malloca.m4 \
+ $(top_srcdir)/gl/m4/manywarnings.m4 \
$(top_srcdir)/gl/m4/mbrtowc.m4 $(top_srcdir)/gl/m4/mbsinit.m4 \
$(top_srcdir)/gl/m4/mbsrtowcs.m4 \
$(top_srcdir)/gl/m4/mbstate_t.m4 $(top_srcdir)/gl/m4/mbtowc.m4 \
@@ -412,6 +413,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
GNULIB_CLOSE = @GNULIB_CLOSE@
GNULIB_CLOSEDIR = @GNULIB_CLOSEDIR@
GNULIB_CONNECT = @GNULIB_CONNECT@
+GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
GNULIB_CTIME = @GNULIB_CTIME@
GNULIB_DIRFD = @GNULIB_DIRFD@
GNULIB_DPRINTF = @GNULIB_DPRINTF@
@@ -619,6 +621,7 @@ GNULIB_STRSIGNAL = @GNULIB_STRSIGNAL@
GNULIB_STRSTR = @GNULIB_STRSTR@
GNULIB_STRTOD = @GNULIB_STRTOD@
GNULIB_STRTOK_R = @GNULIB_STRTOK_R@
+GNULIB_STRTOLD = @GNULIB_STRTOLD@
GNULIB_STRTOLL = @GNULIB_STRTOLL@
GNULIB_STRTOULL = @GNULIB_STRTOULL@
GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@
@@ -693,6 +696,7 @@ GNULIB_WRITE = @GNULIB_WRITE@
GNULIB__EXIT = @GNULIB__EXIT@
GREP = @GREP@
HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
HAVE_ALPHASORT = @HAVE_ALPHASORT@
HAVE_ATOLL = @HAVE_ATOLL@
HAVE_BTOWC = @HAVE_BTOWC@
@@ -700,6 +704,7 @@ HAVE_C99_STDINT_H = @HAVE_C99_STDINT_H@
HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
HAVE_CHOWN = @HAVE_CHOWN@
HAVE_CLOSEDIR = @HAVE_CLOSEDIR@
+HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@
HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
@@ -781,6 +786,7 @@ HAVE_GLOB_H = @HAVE_GLOB_H@
HAVE_GLOB_PATTERN_P = @HAVE_GLOB_PATTERN_P@
HAVE_GRANTPT = @HAVE_GRANTPT@
HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
+HAVE_INITSTATE = @HAVE_INITSTATE@
HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
HAVE_ISWBLANK = @HAVE_ISWBLANK@
HAVE_ISWCNTRL = @HAVE_ISWCNTRL@
@@ -803,6 +809,7 @@ HAVE_MBSINIT = @HAVE_MBSINIT@
HAVE_MBSLEN = @HAVE_MBSLEN@
HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
+HAVE_MBTOWC = @HAVE_MBTOWC@
HAVE_MEMCHR = @HAVE_MEMCHR@
HAVE_MEMPCPY = @HAVE_MEMPCPY@
HAVE_MKDIRAT = @HAVE_MKDIRAT@
@@ -853,6 +860,7 @@ HAVE_SCANDIR = @HAVE_SCANDIR@
HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
HAVE_SETENV = @HAVE_SETENV@
HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
+HAVE_SETSTATE = @HAVE_SETSTATE@
HAVE_SIGACTION = @HAVE_SIGACTION@
HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
@@ -872,6 +880,7 @@ HAVE_STRPBRK = @HAVE_STRPBRK@
HAVE_STRPTIME = @HAVE_STRPTIME@
HAVE_STRSEP = @HAVE_STRSEP@
HAVE_STRTOD = @HAVE_STRTOD@
+HAVE_STRTOLD = @HAVE_STRTOLD@
HAVE_STRTOLL = @HAVE_STRTOLL@
HAVE_STRTOULL = @HAVE_STRTOULL@
HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@
@@ -972,8 +981,6 @@ LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBMULTITHREAD = @LIBMULTITHREAD@
LIBOBJS = @LIBOBJS@
-LIBPTH = @LIBPTH@
-LIBPTH_PREFIX = @LIBPTH_PREFIX@
LIBS = @LIBS@
LIBSOCKET = @LIBSOCKET@
LIBTHREAD = @LIBTHREAD@
@@ -996,7 +1003,6 @@ LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBMULTITHREAD = @LTLIBMULTITHREAD@
LTLIBOBJS = @LTLIBOBJS@
-LTLIBPTH = @LTLIBPTH@
LTLIBTHREAD = @LTLIBTHREAD@
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
MAINT = @MAINT@
@@ -1142,6 +1148,7 @@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
REPLACE_GLOB = @REPLACE_GLOB@
REPLACE_GLOB_PATTERN_P = @REPLACE_GLOB_PATTERN_P@
REPLACE_GMTIME = @REPLACE_GMTIME@
+REPLACE_INITSTATE = @REPLACE_INITSTATE@
REPLACE_IOCTL = @REPLACE_IOCTL@
REPLACE_ISATTY = @REPLACE_ISATTY@
REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
@@ -1190,6 +1197,7 @@ REPLACE_PUTENV = @REPLACE_PUTENV@
REPLACE_PWRITE = @REPLACE_PWRITE@
REPLACE_QSORT_R = @REPLACE_QSORT_R@
REPLACE_RAISE = @REPLACE_RAISE@
+REPLACE_RANDOM = @REPLACE_RANDOM@
REPLACE_RANDOM_R = @REPLACE_RANDOM_R@
REPLACE_READ = @REPLACE_READ@
REPLACE_READLINK = @REPLACE_READLINK@
@@ -1203,6 +1211,7 @@ REPLACE_RMDIR = @REPLACE_RMDIR@
REPLACE_SELECT = @REPLACE_SELECT@
REPLACE_SETENV = @REPLACE_SETENV@
REPLACE_SETLOCALE = @REPLACE_SETLOCALE@
+REPLACE_SETSTATE = @REPLACE_SETSTATE@
REPLACE_SLEEP = @REPLACE_SLEEP@
REPLACE_SNPRINTF = @REPLACE_SNPRINTF@
REPLACE_SPRINTF = @REPLACE_SPRINTF@
@@ -1223,6 +1232,7 @@ REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@
REPLACE_STRSTR = @REPLACE_STRSTR@
REPLACE_STRTOD = @REPLACE_STRTOD@
REPLACE_STRTOK_R = @REPLACE_STRTOK_R@
+REPLACE_STRTOLD = @REPLACE_STRTOLD@
REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@
REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@
REPLACE_SYMLINK = @REPLACE_SYMLINK@
diff --git a/init/systemd/Makefile.in b/init/systemd/Makefile.in
index 4142e77b..a94e4c00 100644
--- a/init/systemd/Makefile.in
+++ b/init/systemd/Makefile.in
@@ -184,6 +184,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/man-arg-automatic-create.m4 \
$(top_srcdir)/gl/m4/ltversion.m4 \
$(top_srcdir)/gl/m4/lt~obsolete.m4 \
$(top_srcdir)/gl/m4/malloc.m4 $(top_srcdir)/gl/m4/malloca.m4 \
+ $(top_srcdir)/gl/m4/manywarnings.m4 \
$(top_srcdir)/gl/m4/mbrtowc.m4 $(top_srcdir)/gl/m4/mbsinit.m4 \
$(top_srcdir)/gl/m4/mbsrtowcs.m4 \
$(top_srcdir)/gl/m4/mbstate_t.m4 $(top_srcdir)/gl/m4/mbtowc.m4 \
@@ -388,6 +389,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
GNULIB_CLOSE = @GNULIB_CLOSE@
GNULIB_CLOSEDIR = @GNULIB_CLOSEDIR@
GNULIB_CONNECT = @GNULIB_CONNECT@
+GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
GNULIB_CTIME = @GNULIB_CTIME@
GNULIB_DIRFD = @GNULIB_DIRFD@
GNULIB_DPRINTF = @GNULIB_DPRINTF@
@@ -595,6 +597,7 @@ GNULIB_STRSIGNAL = @GNULIB_STRSIGNAL@
GNULIB_STRSTR = @GNULIB_STRSTR@
GNULIB_STRTOD = @GNULIB_STRTOD@
GNULIB_STRTOK_R = @GNULIB_STRTOK_R@
+GNULIB_STRTOLD = @GNULIB_STRTOLD@
GNULIB_STRTOLL = @GNULIB_STRTOLL@
GNULIB_STRTOULL = @GNULIB_STRTOULL@
GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@
@@ -669,6 +672,7 @@ GNULIB_WRITE = @GNULIB_WRITE@
GNULIB__EXIT = @GNULIB__EXIT@
GREP = @GREP@
HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
HAVE_ALPHASORT = @HAVE_ALPHASORT@
HAVE_ATOLL = @HAVE_ATOLL@
HAVE_BTOWC = @HAVE_BTOWC@
@@ -676,6 +680,7 @@ HAVE_C99_STDINT_H = @HAVE_C99_STDINT_H@
HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
HAVE_CHOWN = @HAVE_CHOWN@
HAVE_CLOSEDIR = @HAVE_CLOSEDIR@
+HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@
HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
@@ -757,6 +762,7 @@ HAVE_GLOB_H = @HAVE_GLOB_H@
HAVE_GLOB_PATTERN_P = @HAVE_GLOB_PATTERN_P@
HAVE_GRANTPT = @HAVE_GRANTPT@
HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
+HAVE_INITSTATE = @HAVE_INITSTATE@
HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
HAVE_ISWBLANK = @HAVE_ISWBLANK@
HAVE_ISWCNTRL = @HAVE_ISWCNTRL@
@@ -779,6 +785,7 @@ HAVE_MBSINIT = @HAVE_MBSINIT@
HAVE_MBSLEN = @HAVE_MBSLEN@
HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
+HAVE_MBTOWC = @HAVE_MBTOWC@
HAVE_MEMCHR = @HAVE_MEMCHR@
HAVE_MEMPCPY = @HAVE_MEMPCPY@
HAVE_MKDIRAT = @HAVE_MKDIRAT@
@@ -829,6 +836,7 @@ HAVE_SCANDIR = @HAVE_SCANDIR@
HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
HAVE_SETENV = @HAVE_SETENV@
HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
+HAVE_SETSTATE = @HAVE_SETSTATE@
HAVE_SIGACTION = @HAVE_SIGACTION@
HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
@@ -848,6 +856,7 @@ HAVE_STRPBRK = @HAVE_STRPBRK@
HAVE_STRPTIME = @HAVE_STRPTIME@
HAVE_STRSEP = @HAVE_STRSEP@
HAVE_STRTOD = @HAVE_STRTOD@
+HAVE_STRTOLD = @HAVE_STRTOLD@
HAVE_STRTOLL = @HAVE_STRTOLL@
HAVE_STRTOULL = @HAVE_STRTOULL@
HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@
@@ -948,8 +957,6 @@ LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBMULTITHREAD = @LIBMULTITHREAD@
LIBOBJS = @LIBOBJS@
-LIBPTH = @LIBPTH@
-LIBPTH_PREFIX = @LIBPTH_PREFIX@
LIBS = @LIBS@
LIBSOCKET = @LIBSOCKET@
LIBTHREAD = @LIBTHREAD@
@@ -972,7 +979,6 @@ LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBMULTITHREAD = @LTLIBMULTITHREAD@
LTLIBOBJS = @LTLIBOBJS@
-LTLIBPTH = @LTLIBPTH@
LTLIBTHREAD = @LTLIBTHREAD@
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
MAINT = @MAINT@
@@ -1118,6 +1124,7 @@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
REPLACE_GLOB = @REPLACE_GLOB@
REPLACE_GLOB_PATTERN_P = @REPLACE_GLOB_PATTERN_P@
REPLACE_GMTIME = @REPLACE_GMTIME@
+REPLACE_INITSTATE = @REPLACE_INITSTATE@
REPLACE_IOCTL = @REPLACE_IOCTL@
REPLACE_ISATTY = @REPLACE_ISATTY@
REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
@@ -1166,6 +1173,7 @@ REPLACE_PUTENV = @REPLACE_PUTENV@
REPLACE_PWRITE = @REPLACE_PWRITE@
REPLACE_QSORT_R = @REPLACE_QSORT_R@
REPLACE_RAISE = @REPLACE_RAISE@
+REPLACE_RANDOM = @REPLACE_RANDOM@
REPLACE_RANDOM_R = @REPLACE_RANDOM_R@
REPLACE_READ = @REPLACE_READ@
REPLACE_READLINK = @REPLACE_READLINK@
@@ -1179,6 +1187,7 @@ REPLACE_RMDIR = @REPLACE_RMDIR@
REPLACE_SELECT = @REPLACE_SELECT@
REPLACE_SETENV = @REPLACE_SETENV@
REPLACE_SETLOCALE = @REPLACE_SETLOCALE@
+REPLACE_SETSTATE = @REPLACE_SETSTATE@
REPLACE_SLEEP = @REPLACE_SLEEP@
REPLACE_SNPRINTF = @REPLACE_SNPRINTF@
REPLACE_SPRINTF = @REPLACE_SPRINTF@
@@ -1199,6 +1208,7 @@ REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@
REPLACE_STRSTR = @REPLACE_STRSTR@
REPLACE_STRTOD = @REPLACE_STRTOD@
REPLACE_STRTOK_R = @REPLACE_STRTOK_R@
+REPLACE_STRTOLD = @REPLACE_STRTOLD@
REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@
REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@
REPLACE_SYMLINK = @REPLACE_SYMLINK@
diff --git a/lib/Makefile.am b/lib/Makefile.am
index 30f48f5d..e5bd626c 100644
--- a/lib/Makefile.am
+++ b/lib/Makefile.am
@@ -37,8 +37,6 @@ libman_la_SOURCES = \
cleanup.c \
cleanup.h \
debug.c \
- decompress.c \
- decompress.h \
encodings.c \
encodings.h \
glcontainers.c \
@@ -61,7 +59,7 @@ libman_la_SOURCES = \
xregcomp.h
libman_la_LIBADD = ../gl/lib/libgnu.la $(LTLIBOBJS) \
- $(LIBCOMPRESS) @LTLIBINTL@
+ @LTLIBINTL@
libman_la_LDFLAGS = \
-avoid-version -release $(VERSION) -rpath $(pkglibdir) \
diff --git a/lib/Makefile.in b/lib/Makefile.in
index 4d344d6c..9f06cad9 100644
--- a/lib/Makefile.in
+++ b/lib/Makefile.in
@@ -184,6 +184,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/man-arg-automatic-create.m4 \
$(top_srcdir)/gl/m4/ltversion.m4 \
$(top_srcdir)/gl/m4/lt~obsolete.m4 \
$(top_srcdir)/gl/m4/malloc.m4 $(top_srcdir)/gl/m4/malloca.m4 \
+ $(top_srcdir)/gl/m4/manywarnings.m4 \
$(top_srcdir)/gl/m4/mbrtowc.m4 $(top_srcdir)/gl/m4/mbsinit.m4 \
$(top_srcdir)/gl/m4/mbsrtowcs.m4 \
$(top_srcdir)/gl/m4/mbstate_t.m4 $(top_srcdir)/gl/m4/mbtowc.m4 \
@@ -296,15 +297,13 @@ am__uninstall_files_from_dir = { \
}
am__installdirs = "$(DESTDIR)$(pkglibdir)"
LTLIBRARIES = $(pkglib_LTLIBRARIES)
-am__DEPENDENCIES_1 =
-libman_la_DEPENDENCIES = ../gl/lib/libgnu.la $(LTLIBOBJS) \
- $(am__DEPENDENCIES_1)
+libman_la_DEPENDENCIES = ../gl/lib/libgnu.la $(LTLIBOBJS)
am_libman_la_OBJECTS = libman_la-appendstr.lo libman_la-cleanup.lo \
- libman_la-debug.lo libman_la-decompress.lo \
- libman_la-encodings.lo libman_la-glcontainers.lo \
- libman_la-linelength.lo libman_la-orderfiles.lo \
- libman_la-pathsearch.lo libman_la-sandbox.lo \
- libman_la-security.lo libman_la-tempfile.lo libman_la-util.lo \
+ libman_la-debug.lo libman_la-encodings.lo \
+ libman_la-glcontainers.lo libman_la-linelength.lo \
+ libman_la-orderfiles.lo libman_la-pathsearch.lo \
+ libman_la-sandbox.lo libman_la-security.lo \
+ libman_la-tempfile.lo libman_la-util.lo \
libman_la-wordfnmatch.lo libman_la-xregcomp.lo
libman_la_OBJECTS = $(am_libman_la_OBJECTS)
AM_V_lt = $(am__v_lt_@AM_V@)
@@ -332,7 +331,6 @@ am__maybe_remake_depfiles = depfiles
am__depfiles_remade = ./$(DEPDIR)/libman_la-appendstr.Plo \
./$(DEPDIR)/libman_la-cleanup.Plo \
./$(DEPDIR)/libman_la-debug.Plo \
- ./$(DEPDIR)/libman_la-decompress.Plo \
./$(DEPDIR)/libman_la-encodings.Plo \
./$(DEPDIR)/libman_la-glcontainers.Plo \
./$(DEPDIR)/libman_la-linelength.Plo \
@@ -459,6 +457,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
GNULIB_CLOSE = @GNULIB_CLOSE@
GNULIB_CLOSEDIR = @GNULIB_CLOSEDIR@
GNULIB_CONNECT = @GNULIB_CONNECT@
+GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
GNULIB_CTIME = @GNULIB_CTIME@
GNULIB_DIRFD = @GNULIB_DIRFD@
GNULIB_DPRINTF = @GNULIB_DPRINTF@
@@ -666,6 +665,7 @@ GNULIB_STRSIGNAL = @GNULIB_STRSIGNAL@
GNULIB_STRSTR = @GNULIB_STRSTR@
GNULIB_STRTOD = @GNULIB_STRTOD@
GNULIB_STRTOK_R = @GNULIB_STRTOK_R@
+GNULIB_STRTOLD = @GNULIB_STRTOLD@
GNULIB_STRTOLL = @GNULIB_STRTOLL@
GNULIB_STRTOULL = @GNULIB_STRTOULL@
GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@
@@ -740,6 +740,7 @@ GNULIB_WRITE = @GNULIB_WRITE@
GNULIB__EXIT = @GNULIB__EXIT@
GREP = @GREP@
HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
HAVE_ALPHASORT = @HAVE_ALPHASORT@
HAVE_ATOLL = @HAVE_ATOLL@
HAVE_BTOWC = @HAVE_BTOWC@
@@ -747,6 +748,7 @@ HAVE_C99_STDINT_H = @HAVE_C99_STDINT_H@
HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
HAVE_CHOWN = @HAVE_CHOWN@
HAVE_CLOSEDIR = @HAVE_CLOSEDIR@
+HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@
HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
@@ -828,6 +830,7 @@ HAVE_GLOB_H = @HAVE_GLOB_H@
HAVE_GLOB_PATTERN_P = @HAVE_GLOB_PATTERN_P@
HAVE_GRANTPT = @HAVE_GRANTPT@
HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
+HAVE_INITSTATE = @HAVE_INITSTATE@
HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
HAVE_ISWBLANK = @HAVE_ISWBLANK@
HAVE_ISWCNTRL = @HAVE_ISWCNTRL@
@@ -850,6 +853,7 @@ HAVE_MBSINIT = @HAVE_MBSINIT@
HAVE_MBSLEN = @HAVE_MBSLEN@
HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
+HAVE_MBTOWC = @HAVE_MBTOWC@
HAVE_MEMCHR = @HAVE_MEMCHR@
HAVE_MEMPCPY = @HAVE_MEMPCPY@
HAVE_MKDIRAT = @HAVE_MKDIRAT@
@@ -900,6 +904,7 @@ HAVE_SCANDIR = @HAVE_SCANDIR@
HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
HAVE_SETENV = @HAVE_SETENV@
HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
+HAVE_SETSTATE = @HAVE_SETSTATE@
HAVE_SIGACTION = @HAVE_SIGACTION@
HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
@@ -919,6 +924,7 @@ HAVE_STRPBRK = @HAVE_STRPBRK@
HAVE_STRPTIME = @HAVE_STRPTIME@
HAVE_STRSEP = @HAVE_STRSEP@
HAVE_STRTOD = @HAVE_STRTOD@
+HAVE_STRTOLD = @HAVE_STRTOLD@
HAVE_STRTOLL = @HAVE_STRTOLL@
HAVE_STRTOULL = @HAVE_STRTOULL@
HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@
@@ -1019,8 +1025,6 @@ LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBMULTITHREAD = @LIBMULTITHREAD@
LIBOBJS = @LIBOBJS@
-LIBPTH = @LIBPTH@
-LIBPTH_PREFIX = @LIBPTH_PREFIX@
LIBS = @LIBS@
LIBSOCKET = @LIBSOCKET@
LIBTHREAD = @LIBTHREAD@
@@ -1043,7 +1047,6 @@ LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBMULTITHREAD = @LTLIBMULTITHREAD@
LTLIBOBJS = @LTLIBOBJS@
-LTLIBPTH = @LTLIBPTH@
LTLIBTHREAD = @LTLIBTHREAD@
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
MAINT = @MAINT@
@@ -1189,6 +1192,7 @@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
REPLACE_GLOB = @REPLACE_GLOB@
REPLACE_GLOB_PATTERN_P = @REPLACE_GLOB_PATTERN_P@
REPLACE_GMTIME = @REPLACE_GMTIME@
+REPLACE_INITSTATE = @REPLACE_INITSTATE@
REPLACE_IOCTL = @REPLACE_IOCTL@
REPLACE_ISATTY = @REPLACE_ISATTY@
REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
@@ -1237,6 +1241,7 @@ REPLACE_PUTENV = @REPLACE_PUTENV@
REPLACE_PWRITE = @REPLACE_PWRITE@
REPLACE_QSORT_R = @REPLACE_QSORT_R@
REPLACE_RAISE = @REPLACE_RAISE@
+REPLACE_RANDOM = @REPLACE_RANDOM@
REPLACE_RANDOM_R = @REPLACE_RANDOM_R@
REPLACE_READ = @REPLACE_READ@
REPLACE_READLINK = @REPLACE_READLINK@
@@ -1250,6 +1255,7 @@ REPLACE_RMDIR = @REPLACE_RMDIR@
REPLACE_SELECT = @REPLACE_SELECT@
REPLACE_SETENV = @REPLACE_SETENV@
REPLACE_SETLOCALE = @REPLACE_SETLOCALE@
+REPLACE_SETSTATE = @REPLACE_SETSTATE@
REPLACE_SLEEP = @REPLACE_SLEEP@
REPLACE_SNPRINTF = @REPLACE_SNPRINTF@
REPLACE_SPRINTF = @REPLACE_SPRINTF@
@@ -1270,6 +1276,7 @@ REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@
REPLACE_STRSTR = @REPLACE_STRSTR@
REPLACE_STRTOD = @REPLACE_STRTOD@
REPLACE_STRTOK_R = @REPLACE_STRTOK_R@
+REPLACE_STRTOLD = @REPLACE_STRTOLD@
REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@
REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@
REPLACE_SYMLINK = @REPLACE_SYMLINK@
@@ -1474,8 +1481,6 @@ libman_la_SOURCES = \
cleanup.c \
cleanup.h \
debug.c \
- decompress.c \
- decompress.h \
encodings.c \
encodings.h \
glcontainers.c \
@@ -1498,7 +1503,7 @@ libman_la_SOURCES = \
xregcomp.h
libman_la_LIBADD = ../gl/lib/libgnu.la $(LTLIBOBJS) \
- $(LIBCOMPRESS) @LTLIBINTL@
+ @LTLIBINTL@
libman_la_LDFLAGS = \
-avoid-version -release $(VERSION) -rpath $(pkglibdir) \
@@ -1587,7 +1592,6 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libman_la-appendstr.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libman_la-cleanup.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libman_la-debug.Plo@am__quote@ # am--include-marker
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libman_la-decompress.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libman_la-encodings.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libman_la-glcontainers.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libman_la-linelength.Plo@am__quote@ # am--include-marker
@@ -1648,13 +1652,6 @@ libman_la-debug.lo: debug.c
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libman_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libman_la-debug.lo `test -f 'debug.c' || echo '$(srcdir)/'`debug.c
-libman_la-decompress.lo: decompress.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libman_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libman_la-decompress.lo -MD -MP -MF $(DEPDIR)/libman_la-decompress.Tpo -c -o libman_la-decompress.lo `test -f 'decompress.c' || echo '$(srcdir)/'`decompress.c
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libman_la-decompress.Tpo $(DEPDIR)/libman_la-decompress.Plo
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='decompress.c' object='libman_la-decompress.lo' libtool=yes @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libman_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libman_la-decompress.lo `test -f 'decompress.c' || echo '$(srcdir)/'`decompress.c
-
libman_la-encodings.lo: encodings.c
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libman_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libman_la-encodings.lo -MD -MP -MF $(DEPDIR)/libman_la-encodings.Tpo -c -o libman_la-encodings.lo `test -f 'encodings.c' || echo '$(srcdir)/'`encodings.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libman_la-encodings.Tpo $(DEPDIR)/libman_la-encodings.Plo
@@ -1869,7 +1866,6 @@ distclean: distclean-am
-rm -f ./$(DEPDIR)/libman_la-appendstr.Plo
-rm -f ./$(DEPDIR)/libman_la-cleanup.Plo
-rm -f ./$(DEPDIR)/libman_la-debug.Plo
- -rm -f ./$(DEPDIR)/libman_la-decompress.Plo
-rm -f ./$(DEPDIR)/libman_la-encodings.Plo
-rm -f ./$(DEPDIR)/libman_la-glcontainers.Plo
-rm -f ./$(DEPDIR)/libman_la-linelength.Plo
@@ -1929,7 +1925,6 @@ maintainer-clean: maintainer-clean-am
-rm -f ./$(DEPDIR)/libman_la-appendstr.Plo
-rm -f ./$(DEPDIR)/libman_la-cleanup.Plo
-rm -f ./$(DEPDIR)/libman_la-debug.Plo
- -rm -f ./$(DEPDIR)/libman_la-decompress.Plo
-rm -f ./$(DEPDIR)/libman_la-encodings.Plo
-rm -f ./$(DEPDIR)/libman_la-glcontainers.Plo
-rm -f ./$(DEPDIR)/libman_la-linelength.Plo
diff --git a/lib/README b/lib/README
index 115bb74e..884b4338 100644
--- a/lib/README
+++ b/lib/README
@@ -8,7 +8,6 @@ information.
appendstr.c author - Markus Armbruster
cleanup.* author - Markus Armbruster, Colin Watson
debug.c author - Colin Watson
-decompress.* author - Colin Watson
encodings.* author - Colin Watson
glcontainers.* author - Colin Watson
linelength.* author - Martin Schulze, Jon Tombs, Colin Watson
diff --git a/lib/cleanup.c b/lib/cleanup.c
index 5aa2e501..cf8aec1c 100644
--- a/lib/cleanup.c
+++ b/lib/cleanup.c
@@ -45,7 +45,7 @@ static struct sigaction saved_term_action;
/* Run cleanups, then reraise signal with default handler. */
-static void
+static _Noreturn void
sighandler (int signo)
{
struct sigaction act;
diff --git a/lib/debug.c b/lib/debug.c
index dd5ade86..53cefe9d 100644
--- a/lib/debug.c
+++ b/lib/debug.c
@@ -41,7 +41,8 @@ void init_debug (void)
debug_level = true;
}
-static void vdebug (const char *message, va_list args)
+static void ATTRIBUTE_FORMAT_PRINTF (1, 0) vdebug (const char *message,
+ va_list args)
{
if (debug_level)
vfprintf (stderr, message, args);
diff --git a/lib/encodings.c b/lib/encodings.c
index ccccdbb1..b4660a92 100644
--- a/lib/encodings.c
+++ b/lib/encodings.c
@@ -39,7 +39,6 @@
#include "pathsearch.h"
#include "pipeline.h"
-#include "decompress.h"
#include "encodings.h"
@@ -409,7 +408,7 @@ const char *get_groff_preconv (void)
*
* The caller should free the returned string when it is finished with it.
*/
-char *get_page_encoding (const char *lang)
+char * _GL_ATTRIBUTE_MALLOC get_page_encoding (const char *lang)
{
const struct directory_entry *entry;
const char *dot;
@@ -724,7 +723,7 @@ const char *get_default_device (const char *charset_from_locale,
}
/* Is this a known *roff device name? */
-bool is_roff_device (const char *device)
+bool _GL_ATTRIBUTE_PURE is_roff_device (const char *device)
{
const struct device_entry *entry;
@@ -784,7 +783,7 @@ const char *get_roff_encoding (const char *device, const char *source_encoding)
/* Find the output encoding that this device will produce, or NULL if it
* will simply pass through the input encoding.
*/
-const char *get_output_encoding (const char *device)
+const char * _GL_ATTRIBUTE_PURE get_output_encoding (const char *device)
{
const struct device_entry *entry;
@@ -796,7 +795,8 @@ const char *get_output_encoding (const char *device)
}
/* Return the value of LESSCHARSET appropriate for this locale. */
-const char *get_less_charset (const char *charset_from_locale)
+const char * _GL_ATTRIBUTE_PURE get_less_charset (
+ const char *charset_from_locale)
{
const struct less_charset_entry *entry;
@@ -814,7 +814,8 @@ const char *get_less_charset (const char *charset_from_locale)
/* Return the value of JLESSCHARSET appropriate for this locale. May return
* NULL.
*/
-const char *get_jless_charset (const char *charset_from_locale)
+const char * _GL_ATTRIBUTE_PURE get_jless_charset (
+ const char *charset_from_locale)
{
const struct less_charset_entry *entry;
diff --git a/lib/glcontainers.c b/lib/glcontainers.c
index 732cbe42..cbd635cf 100644
--- a/lib/glcontainers.c
+++ b/lib/glcontainers.c
@@ -37,12 +37,12 @@
#include "glcontainers.h"
-bool string_equals (const void *s1, const void *s2)
+bool _GL_ATTRIBUTE_PURE string_equals (const void *s1, const void *s2)
{
return STREQ ((const char *) s1, (const char *) s2);
}
-size_t string_hash (const void *s)
+size_t _GL_ATTRIBUTE_PURE string_hash (const void *s)
{
return hash_pjw_bare (s, strlen ((const char *) s));
}
diff --git a/lib/linelength.c b/lib/linelength.c
index 69a702ff..875000df 100644
--- a/lib/linelength.c
+++ b/lib/linelength.c
@@ -38,6 +38,8 @@
#include <sys/stat.h>
#include <fcntl.h>
+#include "linelength.h"
+
#ifndef _PATH_TTY
# define _PATH_TTY "/dev/tty"
#endif /* _PATH_TTY */
diff --git a/lib/orderfiles.c b/lib/orderfiles.c
index b1a17908..b235e192 100644
--- a/lib/orderfiles.c
+++ b/lib/orderfiles.c
@@ -52,11 +52,12 @@
#include "manconfig.h"
#include "glcontainers.h"
+#include "orderfiles.h"
#if defined(HAVE_LINUX_FIEMAP_H)
gl_map_t physical_offsets = NULL;
-int compare_physical_offsets (const void *a, const void *b)
+static int compare_physical_offsets (const void *a, const void *b)
{
const char *left = (const char *) a;
const char *right = (const char *) b;
@@ -170,7 +171,7 @@ void order_files (const char *dir, gl_list_t *basenamesp)
close (dir_fd);
}
#else
-void order_files (const char *dir, gl_list_t *basenamesp)
+void order_files (const char *dir _GL_UNUSED, gl_list_t *basenamesp _GL_UNUSED)
{
}
#endif
diff --git a/lib/sandbox.c b/lib/sandbox.c
index 22924435..21ec28aa 100644
--- a/lib/sandbox.c
+++ b/lib/sandbox.c
@@ -232,7 +232,7 @@ static scmp_filter_ctx make_seccomp_filter (int permissive)
;
debug ("initialising seccomp filter (permissive: %d)\n", permissive);
- ctx = seccomp_init (SCMP_ACT_TRAP);
+ ctx = seccomp_init (SCMP_ACT_ERRNO (EPERM));
if (!ctx)
error (FATAL, errno, "can't initialise seccomp filter");
@@ -484,12 +484,11 @@ static scmp_filter_ctx make_seccomp_filter (int permissive)
SC_ALLOW ("sync_file_range");
SC_ALLOW ("syncfs");
- /* Extra syscalls not in any of systemd's sets. */
- SC_ALLOW ("arm_fadvise64_64");
- SC_ALLOW ("arm_sync_file_range");
+ /* systemd: SystemCallFilter=@system-service (subset) */
SC_ALLOW ("brk");
SC_ALLOW ("fadvise64");
SC_ALLOW ("fadvise64_64");
+ SC_ALLOW ("getrandom");
if (permissive)
SC_ALLOW ("ioctl");
else {
@@ -500,10 +499,14 @@ static scmp_filter_ctx make_seccomp_filter (int permissive)
SC_ALLOW ("mprotect");
SC_ALLOW ("mremap");
SC_ALLOW ("sched_getaffinity");
- SC_ALLOW ("sync_file_range2");
SC_ALLOW ("sysinfo");
SC_ALLOW ("uname");
+ /* Extra syscalls not in any of systemd's sets. */
+ SC_ALLOW ("arm_fadvise64_64");
+ SC_ALLOW ("arm_sync_file_range");
+ SC_ALLOW ("sync_file_range2");
+
/* Allow killing processes and threads. This is unfortunate but
* unavoidable: groff uses kill to explicitly pass on SIGPIPE to its
* child processes, and we can't do any more sophisticated filtering
@@ -535,6 +538,7 @@ static scmp_filter_ctx make_seccomp_filter (int permissive)
search_ld_preload ("libsnoopy.so")) {
SC_ALLOW ("connect");
SC_ALLOW ("recvmsg");
+ SC_ALLOW ("sendmsg");
SC_ALLOW ("sendto");
SC_ALLOW ("setsockopt");
SC_ALLOW_ARG_1 ("socket", SCMP_A0 (SCMP_CMP_EQ, AF_UNIX));
@@ -607,8 +611,8 @@ static void _sandbox_load (man_sandbox *sandbox, int permissive) {
}
}
#else /* !HAVE_LIBSECCOMP */
-static void _sandbox_load (man_sandbox *sandbox ATTRIBUTE_UNUSED,
- int permissive ATTRIBUTE_UNUSED)
+static void _sandbox_load (man_sandbox *sandbox _GL_UNUSED,
+ int permissive _GL_UNUSED)
{
}
#endif /* HAVE_LIBSECCOMP */
diff --git a/lib/security.c b/lib/security.c
index 7d66eaf4..55f2d85d 100644
--- a/lib/security.c
+++ b/lib/security.c
@@ -95,7 +95,7 @@ void init_security (void)
#endif /* MAN_OWNER */
}
-bool running_setuid (void)
+bool _GL_ATTRIBUTE_PURE running_setuid (void)
{
#ifdef MAN_OWNER
return ruid != euid;
@@ -169,7 +169,7 @@ void regain_effective_privs (void)
}
/* Pipeline command pre-exec hook to permanently drop privileges. */
-void drop_privs (void *data ATTRIBUTE_UNUSED)
+void drop_privs (void *data _GL_UNUSED)
{
#ifdef MAN_OWNER
if (idpriv_drop ())
diff --git a/lib/util.c b/lib/util.c
index 3f4b10f9..580cafd0 100644
--- a/lib/util.c
+++ b/lib/util.c
@@ -193,7 +193,7 @@ int remove_directory (const char *directory, int recurse)
/* Returns an allocated copy of s, with leading and trailing spaces
* removed.
*/
-char *trim_spaces (const char *s)
+char * _GL_ATTRIBUTE_MALLOC trim_spaces (const char *s)
{
int length;
while (*s == ' ')
diff --git a/libdb/Makefile.am b/libdb/Makefile.am
index 0015b84b..2851dfa3 100644
--- a/libdb/Makefile.am
+++ b/libdb/Makefile.am
@@ -39,6 +39,8 @@ libmandb_la_SOURCES = \
db_storage.h \
db_store.c \
db_ver.c \
+ db_xdbm.c \
+ db_xdbm.h \
mydbm.h
libmandb_la_LIBADD = ../lib/libman.la $(DBLIBS)
diff --git a/libdb/Makefile.in b/libdb/Makefile.in
index afc0b5ea..04607282 100644
--- a/libdb/Makefile.in
+++ b/libdb/Makefile.in
@@ -184,6 +184,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/man-arg-automatic-create.m4 \
$(top_srcdir)/gl/m4/ltversion.m4 \
$(top_srcdir)/gl/m4/lt~obsolete.m4 \
$(top_srcdir)/gl/m4/malloc.m4 $(top_srcdir)/gl/m4/malloca.m4 \
+ $(top_srcdir)/gl/m4/manywarnings.m4 \
$(top_srcdir)/gl/m4/mbrtowc.m4 $(top_srcdir)/gl/m4/mbsinit.m4 \
$(top_srcdir)/gl/m4/mbsrtowcs.m4 \
$(top_srcdir)/gl/m4/mbstate_t.m4 $(top_srcdir)/gl/m4/mbtowc.m4 \
@@ -301,7 +302,8 @@ libmandb_la_DEPENDENCIES = ../lib/libman.la $(am__DEPENDENCIES_1)
am_libmandb_la_OBJECTS = libmandb_la-db_btree.lo \
libmandb_la-db_delete.lo libmandb_la-db_gdbm.lo \
libmandb_la-db_lookup.lo libmandb_la-db_ndbm.lo \
- libmandb_la-db_store.lo libmandb_la-db_ver.lo
+ libmandb_la-db_store.lo libmandb_la-db_ver.lo \
+ libmandb_la-db_xdbm.lo
libmandb_la_OBJECTS = $(am_libmandb_la_OBJECTS)
AM_V_lt = $(am__v_lt_@AM_V@)
am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
@@ -331,7 +333,8 @@ am__depfiles_remade = ./$(DEPDIR)/libmandb_la-db_btree.Plo \
./$(DEPDIR)/libmandb_la-db_lookup.Plo \
./$(DEPDIR)/libmandb_la-db_ndbm.Plo \
./$(DEPDIR)/libmandb_la-db_store.Plo \
- ./$(DEPDIR)/libmandb_la-db_ver.Plo
+ ./$(DEPDIR)/libmandb_la-db_ver.Plo \
+ ./$(DEPDIR)/libmandb_la-db_xdbm.Plo
am__mv = mv -f
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
@@ -447,6 +450,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
GNULIB_CLOSE = @GNULIB_CLOSE@
GNULIB_CLOSEDIR = @GNULIB_CLOSEDIR@
GNULIB_CONNECT = @GNULIB_CONNECT@
+GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
GNULIB_CTIME = @GNULIB_CTIME@
GNULIB_DIRFD = @GNULIB_DIRFD@
GNULIB_DPRINTF = @GNULIB_DPRINTF@
@@ -654,6 +658,7 @@ GNULIB_STRSIGNAL = @GNULIB_STRSIGNAL@
GNULIB_STRSTR = @GNULIB_STRSTR@
GNULIB_STRTOD = @GNULIB_STRTOD@
GNULIB_STRTOK_R = @GNULIB_STRTOK_R@
+GNULIB_STRTOLD = @GNULIB_STRTOLD@
GNULIB_STRTOLL = @GNULIB_STRTOLL@
GNULIB_STRTOULL = @GNULIB_STRTOULL@
GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@
@@ -728,6 +733,7 @@ GNULIB_WRITE = @GNULIB_WRITE@
GNULIB__EXIT = @GNULIB__EXIT@
GREP = @GREP@
HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
HAVE_ALPHASORT = @HAVE_ALPHASORT@
HAVE_ATOLL = @HAVE_ATOLL@
HAVE_BTOWC = @HAVE_BTOWC@
@@ -735,6 +741,7 @@ HAVE_C99_STDINT_H = @HAVE_C99_STDINT_H@
HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
HAVE_CHOWN = @HAVE_CHOWN@
HAVE_CLOSEDIR = @HAVE_CLOSEDIR@
+HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@
HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
@@ -816,6 +823,7 @@ HAVE_GLOB_H = @HAVE_GLOB_H@
HAVE_GLOB_PATTERN_P = @HAVE_GLOB_PATTERN_P@
HAVE_GRANTPT = @HAVE_GRANTPT@
HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
+HAVE_INITSTATE = @HAVE_INITSTATE@
HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
HAVE_ISWBLANK = @HAVE_ISWBLANK@
HAVE_ISWCNTRL = @HAVE_ISWCNTRL@
@@ -838,6 +846,7 @@ HAVE_MBSINIT = @HAVE_MBSINIT@
HAVE_MBSLEN = @HAVE_MBSLEN@
HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
+HAVE_MBTOWC = @HAVE_MBTOWC@
HAVE_MEMCHR = @HAVE_MEMCHR@
HAVE_MEMPCPY = @HAVE_MEMPCPY@
HAVE_MKDIRAT = @HAVE_MKDIRAT@
@@ -888,6 +897,7 @@ HAVE_SCANDIR = @HAVE_SCANDIR@
HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
HAVE_SETENV = @HAVE_SETENV@
HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
+HAVE_SETSTATE = @HAVE_SETSTATE@
HAVE_SIGACTION = @HAVE_SIGACTION@
HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
@@ -907,6 +917,7 @@ HAVE_STRPBRK = @HAVE_STRPBRK@
HAVE_STRPTIME = @HAVE_STRPTIME@
HAVE_STRSEP = @HAVE_STRSEP@
HAVE_STRTOD = @HAVE_STRTOD@
+HAVE_STRTOLD = @HAVE_STRTOLD@
HAVE_STRTOLL = @HAVE_STRTOLL@
HAVE_STRTOULL = @HAVE_STRTOULL@
HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@
@@ -1007,8 +1018,6 @@ LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBMULTITHREAD = @LIBMULTITHREAD@
LIBOBJS = @LIBOBJS@
-LIBPTH = @LIBPTH@
-LIBPTH_PREFIX = @LIBPTH_PREFIX@
LIBS = @LIBS@
LIBSOCKET = @LIBSOCKET@
LIBTHREAD = @LIBTHREAD@
@@ -1031,7 +1040,6 @@ LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBMULTITHREAD = @LTLIBMULTITHREAD@
LTLIBOBJS = @LTLIBOBJS@
-LTLIBPTH = @LTLIBPTH@
LTLIBTHREAD = @LTLIBTHREAD@
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
MAINT = @MAINT@
@@ -1177,6 +1185,7 @@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
REPLACE_GLOB = @REPLACE_GLOB@
REPLACE_GLOB_PATTERN_P = @REPLACE_GLOB_PATTERN_P@
REPLACE_GMTIME = @REPLACE_GMTIME@
+REPLACE_INITSTATE = @REPLACE_INITSTATE@
REPLACE_IOCTL = @REPLACE_IOCTL@
REPLACE_ISATTY = @REPLACE_ISATTY@
REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
@@ -1225,6 +1234,7 @@ REPLACE_PUTENV = @REPLACE_PUTENV@
REPLACE_PWRITE = @REPLACE_PWRITE@
REPLACE_QSORT_R = @REPLACE_QSORT_R@
REPLACE_RAISE = @REPLACE_RAISE@
+REPLACE_RANDOM = @REPLACE_RANDOM@
REPLACE_RANDOM_R = @REPLACE_RANDOM_R@
REPLACE_READ = @REPLACE_READ@
REPLACE_READLINK = @REPLACE_READLINK@
@@ -1238,6 +1248,7 @@ REPLACE_RMDIR = @REPLACE_RMDIR@
REPLACE_SELECT = @REPLACE_SELECT@
REPLACE_SETENV = @REPLACE_SETENV@
REPLACE_SETLOCALE = @REPLACE_SETLOCALE@
+REPLACE_SETSTATE = @REPLACE_SETSTATE@
REPLACE_SLEEP = @REPLACE_SLEEP@
REPLACE_SNPRINTF = @REPLACE_SNPRINTF@
REPLACE_SPRINTF = @REPLACE_SPRINTF@
@@ -1258,6 +1269,7 @@ REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@
REPLACE_STRSTR = @REPLACE_STRSTR@
REPLACE_STRTOD = @REPLACE_STRTOD@
REPLACE_STRTOK_R = @REPLACE_STRTOK_R@
+REPLACE_STRTOLD = @REPLACE_STRTOLD@
REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@
REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@
REPLACE_SYMLINK = @REPLACE_SYMLINK@
@@ -1464,6 +1476,8 @@ libmandb_la_SOURCES = \
db_storage.h \
db_store.c \
db_ver.c \
+ db_xdbm.c \
+ db_xdbm.h \
mydbm.h
libmandb_la_LIBADD = ../lib/libman.la $(DBLIBS)
@@ -1555,6 +1569,7 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmandb_la-db_ndbm.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmandb_la-db_store.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmandb_la-db_ver.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmandb_la-db_xdbm.Plo@am__quote@ # am--include-marker
$(am__depfiles_remade):
@$(MKDIR_P) $(@D)
@@ -1632,6 +1647,13 @@ libmandb_la-db_ver.lo: db_ver.c
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmandb_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmandb_la-db_ver.lo `test -f 'db_ver.c' || echo '$(srcdir)/'`db_ver.c
+libmandb_la-db_xdbm.lo: db_xdbm.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmandb_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libmandb_la-db_xdbm.lo -MD -MP -MF $(DEPDIR)/libmandb_la-db_xdbm.Tpo -c -o libmandb_la-db_xdbm.lo `test -f 'db_xdbm.c' || echo '$(srcdir)/'`db_xdbm.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmandb_la-db_xdbm.Tpo $(DEPDIR)/libmandb_la-db_xdbm.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='db_xdbm.c' object='libmandb_la-db_xdbm.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libmandb_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libmandb_la-db_xdbm.lo `test -f 'db_xdbm.c' || echo '$(srcdir)/'`db_xdbm.c
+
mostlyclean-libtool:
-rm -f *.lo
@@ -1773,6 +1795,7 @@ distclean: distclean-am
-rm -f ./$(DEPDIR)/libmandb_la-db_ndbm.Plo
-rm -f ./$(DEPDIR)/libmandb_la-db_store.Plo
-rm -f ./$(DEPDIR)/libmandb_la-db_ver.Plo
+ -rm -f ./$(DEPDIR)/libmandb_la-db_xdbm.Plo
-rm -f Makefile
distclean-am: clean-am distclean-compile distclean-generic \
distclean-tags
@@ -1825,6 +1848,7 @@ maintainer-clean: maintainer-clean-am
-rm -f ./$(DEPDIR)/libmandb_la-db_ndbm.Plo
-rm -f ./$(DEPDIR)/libmandb_la-db_store.Plo
-rm -f ./$(DEPDIR)/libmandb_la-db_ver.Plo
+ -rm -f ./$(DEPDIR)/libmandb_la-db_xdbm.Plo
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
diff --git a/libdb/db_btree.c b/libdb/db_btree.c
index b4e426cc..917e286c 100644
--- a/libdb/db_btree.c
+++ b/libdb/db_btree.c
@@ -61,16 +61,22 @@ gl_set_t loop_check;
blocking method is used ": Try again". This adopts GNU dbm's approach. */
/* release the lock and close the database */
-int btree_close (DB *db)
+void man_btree_close (man_btree_wrapper wrap)
{
- (void) flock ((db->fd) (db), LOCK_UN);
- return (db->close) (db);
+ if (!wrap)
+ return;
+
+ free (wrap->name);
+ (void) flock ((wrap->file->fd) (wrap->file), LOCK_UN);
+ (wrap->file->close) (wrap->file);
+ free (wrap);
}
/* open a btree type database, with file locking. */
-DB *btree_flopen (char *filename, int flags, int mode)
+man_btree_wrapper man_btree_open (const char *name, int flags, int mode)
{
- DB *db;
+ man_btree_wrapper wrap;
+ DB *file;
BTREEINFO b;
int lock_op;
int lock_failed;
@@ -102,7 +108,7 @@ DB *btree_flopen (char *filename, int flags, int mode)
* and ignore the database if it's zero-length.
*/
struct stat iszero;
- if (stat (filename, &iszero) < 0)
+ if (stat (name, &iszero) < 0)
return NULL;
if (iszero.st_size == 0) {
errno = EINVAL;
@@ -114,54 +120,59 @@ DB *btree_flopen (char *filename, int flags, int mode)
/* opening the db is destructive, need to lock first */
int fd;
- db = NULL;
+ file = NULL;
lock_failed = 1;
- fd = open (filename, flags & ~O_TRUNC, mode);
+ fd = open (name, flags & ~O_TRUNC, mode);
if (fd != -1) {
if (!(lock_failed = flock (fd, lock_op)))
- db = dbopen (filename, flags, mode,
- DB_BTREE, &b);
+ file = dbopen (name, flags, mode,
+ DB_BTREE, &b);
close (fd);
}
} else {
- db = dbopen (filename, flags, mode, DB_BTREE, &b);
- if (db)
- lock_failed = flock ((db->fd) (db), lock_op);
+ file = dbopen (name, flags, mode, DB_BTREE, &b);
+ if (file)
+ lock_failed = flock ((file->fd) (file), lock_op);
}
- if (!db)
+ if (!file)
return NULL;
if (lock_failed) {
- gripe_lock (filename);
- btree_close (db);
+ gripe_lock (name);
+ (file->close) (file);
return NULL;
}
- return db;
+ wrap = xmalloc (sizeof *wrap);
+ wrap->name = xstrdup (name);
+ wrap->file = file;
+
+ return wrap;
}
/* do a replace when we have the duplicate flag set on the database -
we must do a del and insert, as a direct insert will not wipe out the
old entry */
-int btree_replace (DB *db, datum key, datum cont)
+int man_btree_replace (man_btree_wrapper wrap, datum key, datum cont)
{
- return (db->put) (db, (DBT *) &key, (DBT *) &cont, 0);
+ return (wrap->file->put) (wrap->file, (DBT *) &key, (DBT *) &cont, 0);
}
-int btree_insert (DB *db, datum key, datum cont)
+int man_btree_insert (man_btree_wrapper wrap, datum key, datum cont)
{
- return (db->put) (db, (DBT *) &key, (DBT *) &cont, R_NOOVERWRITE);
+ return (wrap->file->put) (wrap->file, (DBT *) &key, (DBT *) &cont,
+ R_NOOVERWRITE);
}
/* generic fetch routine for the btree database */
-datum btree_fetch (DB *db, datum key)
+datum man_btree_fetch (man_btree_wrapper wrap, datum key)
{
datum data;
memset (&data, 0, sizeof data);
- if ((db->get) (db, (DBT *) &key, (DBT *) &data, 0)) {
+ if ((wrap->file->get) (wrap->file, (DBT *) &key, (DBT *) &data, 0)) {
memset (&data, 0, sizeof data);
return data;
}
@@ -170,14 +181,15 @@ datum btree_fetch (DB *db, datum key)
}
/* return 1 if the key exists, 0 otherwise */
-int btree_exists (DB *db, datum key)
+int man_btree_exists (man_btree_wrapper wrap, datum key)
{
datum data;
- return ((db->get) (db, (DBT *) &key, (DBT *) &data, 0) ? 0 : 1);
+ return ((wrap->file->get) (wrap->file, (DBT *) &key, (DBT *) &data,
+ 0) ? 0 : 1);
}
/* initiate a sequential access */
-static datum btree_findkey (DB *db, u_int flags)
+static datum man_btree_findkey (man_btree_wrapper wrap, u_int flags)
{
datum key, data;
char *loop_check_key;
@@ -194,7 +206,8 @@ static datum btree_findkey (DB *db, u_int flags)
if (!loop_check)
loop_check = new_string_set (GL_HASH_SET);
- if (((db->seq) (db, (DBT *) &key, (DBT *) &data, flags))) {
+ if (((wrap->file->seq) (wrap->file, (DBT *) &key, (DBT *) &data,
+ flags))) {
memset (&key, 0, sizeof key);
return key;
}
@@ -218,26 +231,27 @@ static datum btree_findkey (DB *db, u_int flags)
}
/* return the first key in the db */
-datum btree_firstkey (DB *db)
+datum man_btree_firstkey (man_btree_wrapper wrap)
{
- return btree_findkey (db, R_FIRST);
+ return man_btree_findkey (wrap, R_FIRST);
}
/* return the next key in the db. NB. This routine only works if the cursor
- has been previously set by btree_firstkey() since it was last opened. So
+ has been previously set by man_btree_firstkey() since it was last opened. So
if we close/reopen a db mid search, we have to manually set up the
cursor again. */
-datum btree_nextkey (DB *db)
+datum man_btree_nextkey (man_btree_wrapper wrap)
{
- return btree_findkey (db, R_NEXT);
+ return man_btree_findkey (wrap, R_NEXT);
}
/* compound nextkey routine, initialising key and content */
-int btree_nextkeydata (DB *db, datum *key, datum *cont)
+int man_btree_nextkeydata (man_btree_wrapper wrap, datum *key, datum *cont)
{
int status;
- if ((status = (db->seq) (db, (DBT *) key, (DBT *) cont, R_NEXT)) != 0)
+ if ((status = (wrap->file->seq) (wrap->file, (DBT *) key, (DBT *) cont,
+ R_NEXT)) != 0)
return status;
*key = copy_datum (*key);
@@ -246,11 +260,11 @@ int btree_nextkeydata (DB *db, datum *key, datum *cont)
return 0;
}
-struct timespec btree_get_time (DB *db)
+struct timespec man_btree_get_time (man_btree_wrapper wrap)
{
struct stat st;
- if (fstat ((db->fd) (db), &st) < 0) {
+ if (fstat ((wrap->file->fd) (wrap->file), &st) < 0) {
struct timespec t;
t.tv_sec = -1;
t.tv_nsec = -1;
@@ -259,13 +273,13 @@ struct timespec btree_get_time (DB *db)
return get_stat_mtime (&st);
}
-void btree_set_time (DB *db, const struct timespec time)
+void man_btree_set_time (man_btree_wrapper wrap, const struct timespec time)
{
struct timespec times[2];
times[0] = time;
times[1] = time;
- futimens ((db->fd) (db), times);
+ futimens ((wrap->file->fd) (wrap->file), times);
}
#endif /* BTREE */
diff --git a/libdb/db_delete.c b/libdb/db_delete.c
index d1e99385..24ce1d83 100644
--- a/libdb/db_delete.c
+++ b/libdb/db_delete.c
@@ -104,7 +104,7 @@ int dbdelete (MYDBM_FILE dbf, const char *name, struct mandata *info)
error (0, 0,
_( "multi key %s does not exist"),
MYDBM_DPTR (multi_key));
- gripe_corrupt_data ();
+ gripe_corrupt_data (dbf);
}
MYDBM_DELETE (dbf, multi_key);
MYDBM_FREE_DPTR (multi_key);
@@ -132,7 +132,7 @@ int dbdelete (MYDBM_FILE dbf, const char *name, struct mandata *info)
MYDBM_FREE_DPTR (cont);
MYDBM_SET (cont, multi_content);
if (MYDBM_REPLACE (dbf, key, cont))
- gripe_replace_key (MYDBM_DPTR (key));
+ gripe_replace_key (dbf, MYDBM_DPTR (key));
gl_list_free (refs);
}
diff --git a/libdb/db_gdbm.c b/libdb/db_gdbm.c
index d8fb988d..1062f357 100644
--- a/libdb/db_gdbm.c
+++ b/libdb/db_gdbm.c
@@ -34,23 +34,16 @@
#include <sys/stat.h>
#include <unistd.h>
-#include "gl_hash_map.h"
-#include "gl_rbtree_list.h"
-#include "gl_xlist.h"
-#include "gl_xmap.h"
-#include "hash-pjw-bare.h"
#include "stat-time.h"
#include "timespec.h"
#include "manconfig.h"
#include "cleanup.h"
-#include "glcontainers.h"
+#include "db_xdbm.h"
#include "mydbm.h"
-static gl_map_t parent_keys;
-
/* setjmp/longjmp handling to defend against _gdbm_fatal exiting under our
* feet. Not thread-safe, but there is no plan for man-db to ever use
* threads.
@@ -103,111 +96,24 @@ man_gdbm_wrapper man_gdbm_open_wrapper (const char *name, int flags)
return wrap;
}
-static int datum_compare (const void *a, const void *b)
-{
- const datum *left = (const datum *) a;
- const datum *right = (const datum *) b;
- int cmp;
- size_t minsize;
-
- /* Sentinel NULL elements sort to the end. */
- if (!MYDBM_DPTR (*left))
- return 1;
- else if (!MYDBM_DPTR (*right))
- return -1;
-
- if (MYDBM_DSIZE (*left) < MYDBM_DSIZE (*right))
- minsize = MYDBM_DSIZE (*left);
- else
- minsize = MYDBM_DSIZE (*right);
- cmp = strncmp (MYDBM_DPTR (*left), MYDBM_DPTR (*right), minsize);
- if (cmp)
- return cmp;
- else if (MYDBM_DSIZE (*left) < MYDBM_DSIZE (*right))
- return 1;
- else if (MYDBM_DSIZE (*left) > MYDBM_DSIZE (*right))
- return -1;
- else
- return 0;
-}
-
-static bool datum_equals (const void *a, const void *b)
+static datum unsorted_firstkey (man_gdbm_wrapper wrap)
{
- return datum_compare (a, b) == 0;
+ return gdbm_firstkey (wrap->file);
}
-static size_t datum_hash (const void *value)
+static datum unsorted_nextkey (man_gdbm_wrapper wrap, datum key)
{
- const datum *d = value;
- return hash_pjw_bare (MYDBM_DPTR (*d), MYDBM_DSIZE (*d));
+ return gdbm_nextkey (wrap->file, key);
}
-static void datum_free (const void *value)
-{
- MYDBM_FREE_DPTR (*(datum *) value);
-}
-
-static datum empty_datum = { NULL, 0 };
-
-/* We keep a map of filenames to sorted lists of keys. Each list is stored
- * using a hash-based implementation that allows lookup by name and
- * traversal to the next item in O(log n) time, which is necessary for a
- * reasonable ordered implementation of nextkey.
- */
datum man_gdbm_firstkey (man_gdbm_wrapper wrap)
{
- gl_list_t keys;
- datum *key;
-
- /* Build the raw sorted list of keys. */
- keys = gl_list_create_empty (GL_RBTREE_LIST, datum_equals, datum_hash,
- datum_free, false);
- key = XMALLOC (datum);
- *key = gdbm_firstkey (wrap->file);
- while (MYDBM_DPTR (*key)) {
- datum *next;
-
- gl_sortedlist_add (keys, datum_compare, key);
- next = XMALLOC (datum);
- *next = gdbm_nextkey (wrap->file, *key);
- key = next;
- }
-
- if (!parent_keys) {
- parent_keys = new_string_map (GL_HASH_MAP,
- (gl_listelement_dispose_fn)
- gl_list_free);
- push_cleanup ((cleanup_fun) gl_map_free, parent_keys, 0);
- }
-
- /* Remember this structure for use by nextkey. */
- gl_map_put (parent_keys, xstrdup (wrap->name), keys);
-
- if (gl_list_size (keys))
- return copy_datum (*(datum *) gl_list_get_at (keys, 0));
- else
- return empty_datum;
+ return man_xdbm_firstkey (wrap, unsorted_firstkey, unsorted_nextkey);
}
datum man_gdbm_nextkey (man_gdbm_wrapper wrap, datum key)
{
- gl_list_t keys;
- gl_list_node_t node, next_node;
-
- if (!parent_keys)
- return empty_datum;
- keys = (gl_list_t) gl_map_get (parent_keys, wrap->name);
- if (!keys)
- return empty_datum;
-
- node = gl_sortedlist_search (keys, datum_compare, &key);
- if (!node)
- return empty_datum;
- next_node = gl_list_next_node (keys, node);
- if (!next_node)
- return empty_datum;
-
- return copy_datum (*(datum *) gl_list_node_value (keys, next_node));
+ return man_xdbm_nextkey (wrap, key);
}
struct timespec man_gdbm_get_time (man_gdbm_wrapper wrap)
@@ -232,17 +138,14 @@ void man_gdbm_set_time (man_gdbm_wrapper wrap, const struct timespec time)
futimens (gdbm_fdesc (wrap->file), times);
}
-void man_gdbm_close (man_gdbm_wrapper wrap)
+static void raw_close (man_gdbm_wrapper wrap)
{
- if (!wrap)
- return;
-
- if (parent_keys)
- gl_map_remove (parent_keys, wrap->name);
-
- free (wrap->name);
gdbm_close (wrap->file);
- free (wrap);
+}
+
+void man_gdbm_close (man_gdbm_wrapper wrap)
+{
+ man_xdbm_close (wrap, raw_close);
}
#ifndef HAVE_GDBM_EXISTS
diff --git a/libdb/db_lookup.c b/libdb/db_lookup.c
index 28cd90e2..9ff72d6c 100644
--- a/libdb/db_lookup.c
+++ b/libdb/db_lookup.c
@@ -70,23 +70,23 @@ datum copy_datum (datum dat)
/* gdbm does locking itself. */
#if defined(NDBM) || defined(BTREE)
-void gripe_lock (char *filename)
+void gripe_lock (const char *filename)
{
error (0, errno, _("can't lock index cache %s"), filename);
}
#endif /* NDBM || BTREE */
/* issue fatal message, then exit */
-void gripe_corrupt_data (void)
+void gripe_corrupt_data (MYDBM_FILE dbf)
{
- error (FATAL, 0, _("index cache %s corrupt"), database);
+ error (FATAL, 0, _("index cache %s corrupt"), dbf->name);
}
/* deal with situation where we cannot replace a key */
-void gripe_replace_key (const char *data)
+void gripe_replace_key (MYDBM_FILE dbf, const char *data)
{
error (0, 0, _("cannot replace key %s"), data);
- gripe_corrupt_data ();
+ gripe_corrupt_data (dbf);
}
static char *copy_if_set (const char *str)
@@ -97,7 +97,7 @@ static char *copy_if_set (const char *str)
return xstrdup (str);
}
-const char *dash_if_unset (const char *str)
+const char * _GL_ATTRIBUTE_CONST dash_if_unset (const char *str)
{
if (str)
return str;
@@ -171,7 +171,7 @@ char *name_to_key (const char *name)
}
/* return char ptr array to the data's fields */
-static char **split_data (char *content, char *start[])
+static char **split_data (MYDBM_FILE dbf, char *content, char *start[])
{
int count;
@@ -183,7 +183,7 @@ static char **split_data (char *content, char *start[])
ngettext ("only %d field in content",
"only %d fields in content", count),
count);
- gripe_corrupt_data ();
+ gripe_corrupt_data (dbf);
}
}
@@ -194,19 +194,19 @@ static char **split_data (char *content, char *start[])
ngettext ("only %d field in content",
"only %d fields in content", FIELDS - 1),
FIELDS - 1);
- gripe_corrupt_data ();
+ gripe_corrupt_data (dbf);
}
return start;
}
/* Parse the db-returned data and put it into a mandata format */
-void split_content (char *cont_ptr, struct mandata *pinfo)
+void split_content (MYDBM_FILE dbf, char *cont_ptr, struct mandata *pinfo)
{
char *start[FIELDS];
char **data;
- data = split_data (cont_ptr, start);
+ data = split_data (dbf, cont_ptr, start);
pinfo->name = copy_if_set (*(data++));
pinfo->ext = *(data++);
@@ -255,7 +255,7 @@ gl_list_t list_extensions (char *data)
gl_list_add_last (list, name_ext);
}
- debug ("found %zd names/extensions\n", gl_list_size (list));
+ debug ("found %zu names/extensions\n", gl_list_size (list));
return list;
}
@@ -296,7 +296,7 @@ static gl_list_t dblookup (MYDBM_FILE dbf, const char *page,
bool matches = false;
info = infoalloc ();
- split_content (MYDBM_DPTR (cont), info);
+ split_content (dbf, MYDBM_DPTR (cont), info);
if (!info->name)
info->name = xstrdup (page);
if (!(flags & MATCH_CASE) || STREQ (info->name, page)) {
@@ -357,13 +357,13 @@ static gl_list_t dblookup (MYDBM_FILE dbf, const char *page,
if (MYDBM_DPTR (multi_cont) == NULL) {
error (0, 0, _("bad fetch on multi key %s"),
MYDBM_DPTR (key));
- gripe_corrupt_data ();
+ gripe_corrupt_data (dbf);
}
MYDBM_FREE_DPTR (key);
/* Allocate info struct and add it to the list. */
info = infoalloc ();
- split_content (MYDBM_DPTR (multi_cont), info);
+ split_content (dbf, MYDBM_DPTR (multi_cont), info);
if (!info->name)
info->name = xstrdup (ref->name);
gl_list_add_last (infos, info);
@@ -427,7 +427,7 @@ gl_list_t dblookup_pattern (MYDBM_FILE dbf, const char *pattern,
#else /* BTREE */
int end;
- end = btree_nextkeydata (dbf, &key, &cont);
+ end = man_btree_nextkeydata (dbf, &key, &cont);
while (!end) {
#endif /* !BTREE */
struct mandata info;
@@ -442,7 +442,7 @@ gl_list_t dblookup_pattern (MYDBM_FILE dbf, const char *pattern,
error (FATAL, 0,
_("Database %s corrupted; rebuild with "
"mandb --create"),
- database);
+ dbf->name);
}
if (*MYDBM_DPTR (key) == '$')
@@ -453,7 +453,7 @@ gl_list_t dblookup_pattern (MYDBM_FILE dbf, const char *pattern,
/* a real page */
- split_content (MYDBM_DPTR (cont), &info);
+ split_content (dbf, MYDBM_DPTR (cont), &info);
/* If there's a section given, does it match either the
* section or extension of this page?
@@ -505,7 +505,7 @@ nextpage:
#else /* BTREE */
MYDBM_FREE_DPTR (cont);
MYDBM_FREE_DPTR (key);
- end = btree_nextkeydata (dbf, &key, &cont);
+ end = man_btree_nextkeydata (dbf, &key, &cont);
#endif /* !BTREE */
info.addr = NULL;
free_mandata_elements (&info);
diff --git a/libdb/db_ndbm.c b/libdb/db_ndbm.c
index 992173ae..64000c1c 100644
--- a/libdb/db_ndbm.c
+++ b/libdb/db_ndbm.c
@@ -41,21 +41,28 @@
#include "manconfig.h"
-#include "mydbm.h"
#include "db_storage.h"
+#include "db_xdbm.h"
+#include "mydbm.h"
/* release the lock and close the database */
-int ndbm_flclose (DBM *db)
+static void raw_close (man_ndbm_wrapper wrap)
+{
+ flock (dbm_dirfno (wrap->file), LOCK_UN);
+ dbm_close (wrap->file);
+}
+
+void man_ndbm_close (man_ndbm_wrapper wrap)
{
- flock (dbm_dirfno (db), LOCK_UN);
- dbm_close (db);
- return 0;
+ man_xdbm_close (wrap, raw_close);
}
/* open a ndbm type database, with file locking. */
-DBM* ndbm_flopen (char *filename, int flags, int mode)
+man_ndbm_wrapper man_ndbm_open (const char *name, int flags, int mode)
{
- DBM *db;
+ man_ndbm_wrapper wrap;
+ char *name_copy;
+ DBM *file;
int lock_op;
int lock_failed;
@@ -66,44 +73,76 @@ DBM* ndbm_flopen (char *filename, int flags, int mode)
lock_op = LOCK_SH | LOCK_NB;
}
+ /* At least GDBM's version of dbm_open declares the file name
+ * parameter as non-const. This is probably incorrect, but take a
+ * copy just in case.
+ */
+ name_copy = xstrdup (name);
+
if (flags & O_TRUNC) {
/* opening the db is destructive, need to lock first */
char *dir_fname;
int dir_fd;
- db = NULL;
+ file = NULL;
lock_failed = 1;
- dir_fname = xasprintf ("%s.dir", filename);
+ dir_fname = xasprintf ("%s.dir", name);
dir_fd = open (dir_fname, flags & ~O_TRUNC, mode);
free (dir_fname);
if (dir_fd != -1) {
if (!(lock_failed = flock (dir_fd, lock_op)))
- db = dbm_open (filename, flags, mode);
+ file = dbm_open (name_copy, flags, mode);
close (dir_fd);
}
} else {
- db = dbm_open (filename, flags, mode);
- if (db)
- lock_failed = flock (dbm_dirfno (db), lock_op);
+ file = dbm_open (name_copy, flags, mode);
+ if (file)
+ lock_failed = flock (dbm_dirfno (file), lock_op);
}
- if (!db)
+ free (name_copy);
+
+ if (!file)
return NULL;
if (lock_failed) {
- gripe_lock (filename);
- dbm_close (db);
+ gripe_lock (name);
+ dbm_close (file);
return NULL;
}
- return db;
+ wrap = xmalloc (sizeof *wrap);
+ wrap->name = xstrdup (name);
+ wrap->file = file;
+
+ return wrap;
+}
+
+static datum unsorted_firstkey (man_ndbm_wrapper wrap)
+{
+ return copy_datum (dbm_firstkey (wrap->file));
+}
+
+static datum unsorted_nextkey (man_ndbm_wrapper wrap, datum key _GL_UNUSED)
+{
+ return copy_datum (dbm_nextkey (wrap->file));
+}
+
+datum man_ndbm_firstkey (man_ndbm_wrapper wrap)
+{
+ return man_xdbm_firstkey (wrap, unsorted_firstkey, unsorted_nextkey);
+}
+
+datum man_ndbm_nextkey (man_ndbm_wrapper wrap, datum key)
+{
+ return man_xdbm_nextkey (wrap, key);
}
-struct timespec ndbm_get_time (DBM *db)
+struct timespec man_ndbm_get_time (man_ndbm_wrapper wrap)
{
struct stat st;
- if (fstat (dbm_dirfno (db), &st) < 0) {
+ if (fstat (dbm_dirfno (wrap->file), &st) < 0) {
struct timespec t;
t.tv_sec = -1;
t.tv_nsec = -1;
@@ -112,13 +151,13 @@ struct timespec ndbm_get_time (DBM *db)
return get_stat_mtime (&st);
}
-void ndbm_set_time (DBM *db, const struct timespec time)
+void man_ndbm_set_time (man_ndbm_wrapper wrap, const struct timespec time)
{
struct timespec times[2];
times[0] = time;
times[1] = time;
- futimens (dbm_dirfno (db), times);
+ futimens (dbm_dirfno (wrap->file), times);
}
#endif /* NDBM */
diff --git a/libdb/db_storage.h b/libdb/db_storage.h
index a04196bc..c6d412f9 100644
--- a/libdb/db_storage.h
+++ b/libdb/db_storage.h
@@ -90,12 +90,13 @@ extern int dbdelete (MYDBM_FILE dbf, const char *name, struct mandata *in);
extern void dbprintf (const struct mandata *info);
extern void free_mandata_elements (struct mandata *pinfo);
extern void free_mandata_struct (struct mandata *pinfo);
-extern void split_content (char *cont_ptr, struct mandata *pinfo);
+extern void split_content (MYDBM_FILE dbf, char *cont_ptr,
+ struct mandata *pinfo);
extern int compare_ids (char a, char b, int promote_links);
/* local to db routines */
-extern void gripe_lock (char *filename);
-extern void gripe_corrupt_data (void);
+extern void gripe_lock (const char *filename);
+extern void gripe_corrupt_data (MYDBM_FILE dbf);
extern datum make_multi_key (const char *page, const char *ext);
/* allocate a mandata structure */
@@ -104,7 +105,7 @@ extern datum make_multi_key (const char *page, const char *ext);
extern char *name_to_key (const char *name);
/* Returns a list of struct name_ext. */
extern gl_list_t list_extensions (char *data);
-extern void gripe_replace_key (const char *data);
+extern void gripe_replace_key (MYDBM_FILE dbf, const char *data);
extern const char *dash_if_unset (const char *str);
#endif
diff --git a/libdb/db_store.c b/libdb/db_store.c
index 062db71f..508a41aa 100644
--- a/libdb/db_store.c
+++ b/libdb/db_store.c
@@ -33,9 +33,6 @@
#include "timespec.h"
#include "xvasprintf.h"
-#include "gettext.h"
-#define _(String) gettext (String)
-
#include "manconfig.h"
#include "error.h"
@@ -52,7 +49,7 @@
* If promote_links is true, consider SO_MAN equivalent to ULT_MAN. This is
* appropriate when sorting candidate pages for display.
*/
-int compare_ids (char a, char b, int promote_links)
+int _GL_ATTRIBUTE_CONST compare_ids (char a, char b, int promote_links)
{
#ifdef FAVOUR_STRAYCATS
if (a == WHATIS_MAN && b == STRAY_CAT)
@@ -94,13 +91,13 @@ static int replace_if_necessary (MYDBM_FILE dbf,
timespec_cmp (newdata->mtime, olddata->mtime) > 0) {
debug ("replace_if_necessary(): newer mtime; replacing\n");
if (MYDBM_REPLACE (dbf, newkey, newcont))
- gripe_replace_key (MYDBM_DPTR (newkey));
+ gripe_replace_key (dbf, MYDBM_DPTR (newkey));
return 0;
}
if (compare_ids (newdata->id, olddata->id, 0) < 0) {
if (MYDBM_REPLACE (dbf, newkey, newcont))
- gripe_replace_key (MYDBM_DPTR (newkey));
+ gripe_replace_key (dbf, MYDBM_DPTR (newkey));
return 0;
}
@@ -221,7 +218,7 @@ int dbstore (MYDBM_FILE dbf, struct mandata *in, const char *base)
in->name = xstrdup (base);
oldcont = make_content (in);
if (MYDBM_REPLACE (dbf, oldkey, oldcont))
- gripe_replace_key (MYDBM_DPTR (oldkey));
+ gripe_replace_key (dbf, MYDBM_DPTR (oldkey));
MYDBM_FREE_DPTR (oldcont);
free (in->name);
in->name = NULL;
@@ -243,7 +240,7 @@ int dbstore (MYDBM_FILE dbf, struct mandata *in, const char *base)
MYDBM_FREE_DPTR (oldcont);
cont = MYDBM_FETCH (dbf, newkey);
- split_content (MYDBM_DPTR (cont), &info);
+ split_content (dbf, MYDBM_DPTR (cont), &info);
ret = replace_if_necessary (dbf, in, &info,
newkey, newcont);
/* MYDBM_FREE_DPTR (cont); */
@@ -270,7 +267,7 @@ int dbstore (MYDBM_FILE dbf, struct mandata *in, const char *base)
/* Try to replace the old simple data with the new stuff */
if (MYDBM_REPLACE (dbf, oldkey, newcont))
- gripe_replace_key (MYDBM_DPTR (oldkey));
+ gripe_replace_key (dbf, MYDBM_DPTR (oldkey));
MYDBM_FREE_DPTR (newcont);
} else { /* situation (3) */
@@ -285,7 +282,7 @@ int dbstore (MYDBM_FILE dbf, struct mandata *in, const char *base)
/* Extract the old singular reference */
- split_content (MYDBM_DPTR (oldcont), &old);
+ split_content (dbf, MYDBM_DPTR (oldcont), &old);
/* Create multi keys for both old
and new items, create new content */
@@ -336,7 +333,7 @@ int dbstore (MYDBM_FILE dbf, struct mandata *in, const char *base)
* certainly better.
*/
if (MYDBM_REPLACE (dbf, lastkey, lastcont))
- gripe_replace_key (MYDBM_DPTR (lastkey));
+ gripe_replace_key (dbf, MYDBM_DPTR (lastkey));
MYDBM_FREE_DPTR (lastkey);
MYDBM_FREE_DPTR (lastcont);
@@ -345,7 +342,7 @@ int dbstore (MYDBM_FILE dbf, struct mandata *in, const char *base)
newcont = make_content (in);
if (MYDBM_REPLACE (dbf, newkey, newcont))
- gripe_replace_key (MYDBM_DPTR (newkey));
+ gripe_replace_key (dbf, MYDBM_DPTR (newkey));
MYDBM_FREE_DPTR (newkey);
MYDBM_FREE_DPTR (newcont);
@@ -356,7 +353,7 @@ int dbstore (MYDBM_FILE dbf, struct mandata *in, const char *base)
"\t%s\t%s\t%s\t%s", old_name, old.ext, base, in->ext));
if (MYDBM_REPLACE (dbf, oldkey, newcont))
- gripe_replace_key (MYDBM_DPTR (oldkey));
+ gripe_replace_key (dbf, MYDBM_DPTR (oldkey));
/* MYDBM_FREE_DPTR (oldcont); */
free_mandata_elements (&old);
diff --git a/libdb/db_ver.c b/libdb/db_ver.c
index 5ac306d2..56b73392 100644
--- a/libdb/db_ver.c
+++ b/libdb/db_ver.c
@@ -50,11 +50,12 @@ int dbver_rd (MYDBM_FILE dbfile)
MYDBM_FREE_DPTR (key);
if (MYDBM_DPTR (content) == NULL) {
- debug (_("warning: %s has no version identifier\n"), database);
+ debug (_("warning: %s has no version identifier\n"),
+ dbfile->name);
return 1;
} else if (!STREQ (MYDBM_DPTR (content), VER_ID)) {
debug (_("warning: %s is version %s, expecting %s\n"),
- database, MYDBM_DPTR (content), VER_ID);
+ dbfile->name, MYDBM_DPTR (content), VER_ID);
MYDBM_FREE_DPTR (content);
return 1;
} else {
@@ -76,7 +77,7 @@ void dbver_wr (MYDBM_FILE dbfile)
if (MYDBM_INSERT (dbfile, key, content) != 0)
error (FATAL, 0,
_("fatal: unable to insert version identifier into %s"),
- database);
+ dbfile->name);
MYDBM_FREE_DPTR (key);
MYDBM_FREE_DPTR (content);
diff --git a/libdb/db_xdbm.c b/libdb/db_xdbm.c
new file mode 100644
index 00000000..f0a9932e
--- /dev/null
+++ b/libdb/db_xdbm.c
@@ -0,0 +1,169 @@
+/*
+ * db_xdbm.c: common code for gdbm and ndbm backends
+ *
+ * Copyright (C) 2003-2019 Colin Watson.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library 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
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+#ifdef HAVE_CONFIG_H
+# include "config.h"
+#endif /* HAVE_CONFIG_H */
+
+#if defined(GDBM) || defined(NDBM)
+
+#include <stdbool.h>
+#include <string.h>
+#include <stdlib.h>
+
+#include "gl_hash_map.h"
+#include "gl_rbtree_list.h"
+#include "gl_xlist.h"
+#include "gl_xmap.h"
+#include "hash-pjw-bare.h"
+
+#include "manconfig.h"
+
+#include "cleanup.h"
+#include "glcontainers.h"
+
+#include "db_xdbm.h"
+#include "mydbm.h"
+
+static gl_map_t parent_keys;
+
+static int datum_compare (const void *a, const void *b)
+{
+ const datum *left = (const datum *) a;
+ const datum *right = (const datum *) b;
+ int cmp;
+ size_t minsize;
+
+ /* Sentinel NULL elements sort to the end. */
+ if (!MYDBM_DPTR (*left))
+ return 1;
+ else if (!MYDBM_DPTR (*right))
+ return -1;
+
+ if (MYDBM_DSIZE (*left) < MYDBM_DSIZE (*right))
+ minsize = MYDBM_DSIZE (*left);
+ else
+ minsize = MYDBM_DSIZE (*right);
+ cmp = strncmp (MYDBM_DPTR (*left), MYDBM_DPTR (*right), minsize);
+ if (cmp)
+ return cmp;
+ else if (MYDBM_DSIZE (*left) < MYDBM_DSIZE (*right))
+ return 1;
+ else if (MYDBM_DSIZE (*left) > MYDBM_DSIZE (*right))
+ return -1;
+ else
+ return 0;
+}
+
+static bool datum_equals (const void *a, const void *b)
+{
+ return datum_compare (a, b) == 0;
+}
+
+static size_t datum_hash (const void *value)
+{
+ const datum *d = value;
+ return hash_pjw_bare (MYDBM_DPTR (*d), MYDBM_DSIZE (*d));
+}
+
+static void datum_free (const void *value)
+{
+ MYDBM_FREE_DPTR (*(datum *) value);
+}
+
+static datum empty_datum = { NULL, 0 };
+
+/* We keep a map of filenames to sorted lists of keys. Each list is stored
+ * using a hash-based implementation that allows lookup by name and
+ * traversal to the next item in O(log n) time, which is necessary for a
+ * reasonable ordered implementation of nextkey.
+ */
+datum man_xdbm_firstkey (MYDBM_FILE dbf,
+ man_xdbm_unsorted_firstkey unsorted_firstkey,
+ man_xdbm_unsorted_nextkey unsorted_nextkey)
+{
+ gl_list_t keys;
+ datum *key;
+
+ /* Build the raw sorted list of keys. */
+ keys = gl_list_create_empty (GL_RBTREE_LIST, datum_equals, datum_hash,
+ datum_free, false);
+ key = XMALLOC (datum);
+ *key = unsorted_firstkey (dbf);
+ while (MYDBM_DPTR (*key)) {
+ datum *next;
+
+ gl_sortedlist_add (keys, datum_compare, key);
+ next = XMALLOC (datum);
+ *next = unsorted_nextkey (dbf, *key);
+ key = next;
+ }
+
+ if (!parent_keys) {
+ parent_keys = new_string_map (GL_HASH_MAP,
+ (gl_listelement_dispose_fn)
+ gl_list_free);
+ push_cleanup ((cleanup_fun) gl_map_free, parent_keys, 0);
+ }
+
+ /* Remember this structure for use by nextkey. */
+ gl_map_put (parent_keys, xstrdup (dbf->name), keys);
+
+ if (gl_list_size (keys))
+ return copy_datum (*(datum *) gl_list_get_at (keys, 0));
+ else
+ return empty_datum;
+}
+
+datum man_xdbm_nextkey (MYDBM_FILE dbf, datum key)
+{
+ gl_list_t keys;
+ gl_list_node_t node, next_node;
+
+ if (!parent_keys)
+ return empty_datum;
+ keys = (gl_list_t) gl_map_get (parent_keys, dbf->name);
+ if (!keys)
+ return empty_datum;
+
+ node = gl_sortedlist_search (keys, datum_compare, &key);
+ if (!node)
+ return empty_datum;
+ next_node = gl_list_next_node (keys, node);
+ if (!next_node)
+ return empty_datum;
+
+ return copy_datum (*(datum *) gl_list_node_value (keys, next_node));
+}
+
+void man_xdbm_close (MYDBM_FILE dbf, man_xdbm_raw_close raw_close)
+{
+ if (!dbf)
+ return;
+
+ if (parent_keys)
+ gl_map_remove (parent_keys, dbf->name);
+
+ free (dbf->name);
+ raw_close (dbf);
+ free (dbf);
+}
+
+#endif /* GDBM || NDBM */
diff --git a/libdb/db_xdbm.h b/libdb/db_xdbm.h
new file mode 100644
index 00000000..9d7f4bf7
--- /dev/null
+++ b/libdb/db_xdbm.h
@@ -0,0 +1,40 @@
+/*
+ * db_xdbm.c: interface to common code for gdbm and ndbm backends
+ *
+ * Copyright (C) 2019 Colin Watson.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library 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
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+#ifndef MAN_XDBM_H
+#define MAN_XDBM_H
+
+#if defined(GDBM) || defined(NDBM)
+
+#include "mydbm.h"
+
+typedef datum (*man_xdbm_unsorted_firstkey) (MYDBM_FILE dbf);
+typedef datum (*man_xdbm_unsorted_nextkey) (MYDBM_FILE dbf, datum key);
+typedef void (*man_xdbm_raw_close) (MYDBM_FILE dbf);
+
+datum man_xdbm_firstkey (MYDBM_FILE dbf,
+ man_xdbm_unsorted_firstkey firstkey,
+ man_xdbm_unsorted_nextkey nextkey);
+datum man_xdbm_nextkey (MYDBM_FILE dbf, datum key);
+void man_xdbm_close (MYDBM_FILE dbf, man_xdbm_raw_close raw_close);
+
+#endif /* GDBM || NDBM */
+
+#endif /* MAN_XDBM_H */
diff --git a/libdb/mydbm.h b/libdb/mydbm.h
index 32053e3e..31f1d756 100644
--- a/libdb/mydbm.h
+++ b/libdb/mydbm.h
@@ -98,30 +98,37 @@ void man_gdbm_close (man_gdbm_wrapper wrap);
# define BERKELEY_DB
# endif /* _DB_H_ */
-extern DBM *ndbm_flopen(char *file, int flags, int mode);
-extern struct timespec ndbm_get_time(DBM *db);
-extern void ndbm_set_time(DBM *db, const struct timespec time);
-extern int ndbm_flclose(DBM *db);
+typedef struct {
+ char *name;
+ DBM *file;
+} *man_ndbm_wrapper;
+
+extern man_ndbm_wrapper man_ndbm_open (const char *name, int flags, int mode);
+extern datum man_ndbm_firstkey (man_ndbm_wrapper wrap);
+extern datum man_ndbm_nextkey (man_ndbm_wrapper wrap, datum key);
+extern struct timespec man_ndbm_get_time (man_ndbm_wrapper wrap);
+extern void man_ndbm_set_time (man_ndbm_wrapper wrap, const struct timespec time);
+extern void man_ndbm_close (man_ndbm_wrapper wrap);
# define DB_EXT ""
-# define MYDBM_FILE DBM*
+# define MYDBM_FILE man_ndbm_wrapper
# define MYDBM_DPTR(d) ((d).dptr)
# define MYDBM_SET_DPTR(d, value) ((d).dptr = (value))
# define MYDBM_DSIZE(d) ((d).dsize)
-# define MYDBM_CTRWOPEN(file) ndbm_flopen(file, O_TRUNC|O_CREAT|O_RDWR, DBMODE)
-# define MYDBM_CRWOPEN(file) ndbm_flopen(file, O_CREAT|O_RDWR, DBMODE)
-# define MYDBM_RWOPEN(file) ndbm_flopen(file, O_RDWR, DBMODE)
-# define MYDBM_RDOPEN(file) ndbm_flopen(file, O_RDONLY, DBMODE)
-# define MYDBM_INSERT(db, key, cont) dbm_store(db, key, cont, DBM_INSERT)
-# define MYDBM_REPLACE(db, key, cont) dbm_store(db, key, cont, DBM_REPLACE)
-# define MYDBM_EXISTS(db, key) (dbm_fetch(db, key).dptr != NULL)
-# define MYDBM_DELETE(db, key) dbm_delete(db, key)
-# define MYDBM_FETCH(db, key) copy_datum(dbm_fetch(db, key))
-# define MYDBM_CLOSE(db) ndbm_flclose(db)
-# define MYDBM_FIRSTKEY(db) copy_datum(dbm_firstkey(db))
-# define MYDBM_NEXTKEY(db, key) copy_datum(dbm_nextkey(db))
-# define MYDBM_GET_TIME(db) ndbm_get_time(db)
-# define MYDBM_SET_TIME(db, time) ndbm_set_time(db, time)
+# define MYDBM_CTRWOPEN(file) man_ndbm_open(file, O_TRUNC|O_CREAT|O_RDWR, DBMODE)
+# define MYDBM_CRWOPEN(file) man_ndbm_open(file, O_CREAT|O_RDWR, DBMODE)
+# define MYDBM_RWOPEN(file) man_ndbm_open(file, O_RDWR, DBMODE)
+# define MYDBM_RDOPEN(file) man_ndbm_open(file, O_RDONLY, DBMODE)
+# define MYDBM_INSERT(db, key, cont) dbm_store((db)->file, key, cont, DBM_INSERT)
+# define MYDBM_REPLACE(db, key, cont) dbm_store((db)->file, key, cont, DBM_REPLACE)
+# define MYDBM_EXISTS(db, key) (dbm_fetch((db)->file, key).dptr != NULL)
+# define MYDBM_DELETE(db, key) dbm_delete((db)->file, key)
+# define MYDBM_FETCH(db, key) copy_datum(dbm_fetch((db)->file, key))
+# define MYDBM_CLOSE(db) man_ndbm_close(db)
+# define MYDBM_FIRSTKEY(db) man_ndbm_firstkey(db)
+# define MYDBM_NEXTKEY(db, key) man_ndbm_nextkey(db, key)
+# define MYDBM_GET_TIME(db) man_ndbm_get_time(db)
+# define MYDBM_SET_TIME(db, time) man_ndbm_set_time(db, time)
# define MYDBM_REORG(db) /* nothing - not implemented */
# elif defined(BTREE) && !defined(NDBM) && !defined(GDBM)
@@ -131,39 +138,48 @@ extern int ndbm_flclose(DBM *db);
# include <limits.h>
# include BDB_H
+typedef struct {
+ char *name;
+ DB *file;
+} *man_btree_wrapper;
+
typedef DBT datum;
-extern DB *btree_flopen(char *filename, int flags, int mode);
-extern int btree_close(DB *db);
-extern int btree_exists(DB *db, datum key);
-extern datum btree_fetch(DB *db, datum key);
-extern int btree_insert(DB *db, datum key, datum cont);
-extern datum btree_firstkey(DB *db);
-extern datum btree_nextkey(DB *db);
-extern int btree_replace(DB *db, datum key, datum content);
-extern int btree_nextkeydata(DB *db, datum *key, datum *cont);
-extern struct timespec btree_get_time(DB *db);
-extern void btree_set_time(DB *db, const struct timespec time);
+extern man_btree_wrapper man_btree_open (const char *filename, int flags,
+ int mode);
+extern void man_btree_close (man_btree_wrapper wrap);
+extern int man_btree_exists (man_btree_wrapper wrap, datum key);
+extern datum man_btree_fetch (man_btree_wrapper wrap, datum key);
+extern int man_btree_insert (man_btree_wrapper wrap, datum key, datum cont);
+extern datum man_btree_firstkey (man_btree_wrapper wrap);
+extern datum man_btree_nextkey (man_btree_wrapper wrap);
+extern int man_btree_replace (man_btree_wrapper wrap,
+ datum key, datum content);
+extern int man_btree_nextkeydata (man_btree_wrapper wrap,
+ datum *key, datum *cont);
+extern struct timespec man_btree_get_time (man_btree_wrapper wrap);
+extern void man_btree_set_time (man_btree_wrapper wrap,
+ const struct timespec time);
# define DB_EXT ".bt"
-# define MYDBM_FILE DB*
+# define MYDBM_FILE man_btree_wrapper
# define MYDBM_DPTR(d) ((char *) (d).data)
# define MYDBM_SET_DPTR(d, value) ((d).data = (char *) (value))
# define MYDBM_DSIZE(d) ((d).size)
-# define MYDBM_CTRWOPEN(file) btree_flopen(file, O_TRUNC|O_CREAT|O_RDWR, DBMODE)
-# define MYDBM_CRWOPEN(file) btree_flopen(file, O_CREAT|O_RDWR, DBMODE)
-# define MYDBM_RWOPEN(file) btree_flopen(file, O_RDWR, DBMODE)
-# define MYDBM_RDOPEN(file) btree_flopen(file, O_RDONLY, DBMODE)
-# define MYDBM_INSERT(db, key, cont) btree_insert(db, key, cont)
-# define MYDBM_REPLACE(db, key, cont) btree_replace(db, key, cont)
-# define MYDBM_EXISTS(db, key) btree_exists(db, key)
-# define MYDBM_DELETE(db, key) ((db->del)(db, &key, 0) ? -1 : 0)
-# define MYDBM_FETCH(db, key) btree_fetch(db, key)
-# define MYDBM_CLOSE(db) btree_close(db)
-# define MYDBM_FIRSTKEY(db) btree_firstkey(db)
-# define MYDBM_NEXTKEY(db, key) btree_nextkey(db)
-# define MYDBM_GET_TIME(db) btree_get_time(db)
-# define MYDBM_SET_TIME(db, time) btree_set_time(db, time)
+# define MYDBM_CTRWOPEN(file) man_btree_open(file, O_TRUNC|O_CREAT|O_RDWR, DBMODE)
+# define MYDBM_CRWOPEN(file) man_btree_open(file, O_CREAT|O_RDWR, DBMODE)
+# define MYDBM_RWOPEN(file) man_btree_open(file, O_RDWR, DBMODE)
+# define MYDBM_RDOPEN(file) man_btree_open(file, O_RDONLY, DBMODE)
+# define MYDBM_INSERT(db, key, cont) man_btree_insert(db, key, cont)
+# define MYDBM_REPLACE(db, key, cont) man_btree_replace(db, key, cont)
+# define MYDBM_EXISTS(db, key) man_btree_exists(db, key)
+# define MYDBM_DELETE(db, key) (((db)->file->del)((db)->file, &key, 0) ? -1 : 0)
+# define MYDBM_FETCH(db, key) man_btree_fetch(db, key)
+# define MYDBM_CLOSE(db) man_btree_close(db)
+# define MYDBM_FIRSTKEY(db) man_btree_firstkey(db)
+# define MYDBM_NEXTKEY(db, key) man_btree_nextkey(db)
+# define MYDBM_GET_TIME(db) man_btree_get_time(db)
+# define MYDBM_SET_TIME(db, time) man_btree_set_time(db, time)
# define MYDBM_REORG(db) /* nothing - not implemented */
# else /* not GDBM or NDBM or BTREE */
@@ -174,8 +190,6 @@ extern void btree_set_time(DB *db, const struct timespec time);
#define MYDBM_SET(d, value) do { MYDBM_SET_DPTR(d, value); MYDBM_RESET_DSIZE(d); } while (0)
#define MYDBM_FREE_DPTR(d) do { free (MYDBM_DPTR (d)); MYDBM_SET_DPTR (d, NULL); } while (0)
-extern char *database;
-
/* db_lookup.c */
extern datum copy_datum (datum dat);
diff --git a/man/Makefile.in b/man/Makefile.in
index f90abd0d..61fca7cf 100644
--- a/man/Makefile.in
+++ b/man/Makefile.in
@@ -182,6 +182,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/man-arg-automatic-create.m4 \
$(top_srcdir)/gl/m4/ltversion.m4 \
$(top_srcdir)/gl/m4/lt~obsolete.m4 \
$(top_srcdir)/gl/m4/malloc.m4 $(top_srcdir)/gl/m4/malloca.m4 \
+ $(top_srcdir)/gl/m4/manywarnings.m4 \
$(top_srcdir)/gl/m4/mbrtowc.m4 $(top_srcdir)/gl/m4/mbsinit.m4 \
$(top_srcdir)/gl/m4/mbsrtowcs.m4 \
$(top_srcdir)/gl/m4/mbstate_t.m4 $(top_srcdir)/gl/m4/mbtowc.m4 \
@@ -623,6 +624,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
GNULIB_CLOSE = @GNULIB_CLOSE@
GNULIB_CLOSEDIR = @GNULIB_CLOSEDIR@
GNULIB_CONNECT = @GNULIB_CONNECT@
+GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
GNULIB_CTIME = @GNULIB_CTIME@
GNULIB_DIRFD = @GNULIB_DIRFD@
GNULIB_DPRINTF = @GNULIB_DPRINTF@
@@ -830,6 +832,7 @@ GNULIB_STRSIGNAL = @GNULIB_STRSIGNAL@
GNULIB_STRSTR = @GNULIB_STRSTR@
GNULIB_STRTOD = @GNULIB_STRTOD@
GNULIB_STRTOK_R = @GNULIB_STRTOK_R@
+GNULIB_STRTOLD = @GNULIB_STRTOLD@
GNULIB_STRTOLL = @GNULIB_STRTOLL@
GNULIB_STRTOULL = @GNULIB_STRTOULL@
GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@
@@ -904,6 +907,7 @@ GNULIB_WRITE = @GNULIB_WRITE@
GNULIB__EXIT = @GNULIB__EXIT@
GREP = @GREP@
HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
HAVE_ALPHASORT = @HAVE_ALPHASORT@
HAVE_ATOLL = @HAVE_ATOLL@
HAVE_BTOWC = @HAVE_BTOWC@
@@ -911,6 +915,7 @@ HAVE_C99_STDINT_H = @HAVE_C99_STDINT_H@
HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
HAVE_CHOWN = @HAVE_CHOWN@
HAVE_CLOSEDIR = @HAVE_CLOSEDIR@
+HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@
HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
@@ -992,6 +997,7 @@ HAVE_GLOB_H = @HAVE_GLOB_H@
HAVE_GLOB_PATTERN_P = @HAVE_GLOB_PATTERN_P@
HAVE_GRANTPT = @HAVE_GRANTPT@
HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
+HAVE_INITSTATE = @HAVE_INITSTATE@
HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
HAVE_ISWBLANK = @HAVE_ISWBLANK@
HAVE_ISWCNTRL = @HAVE_ISWCNTRL@
@@ -1014,6 +1020,7 @@ HAVE_MBSINIT = @HAVE_MBSINIT@
HAVE_MBSLEN = @HAVE_MBSLEN@
HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
+HAVE_MBTOWC = @HAVE_MBTOWC@
HAVE_MEMCHR = @HAVE_MEMCHR@
HAVE_MEMPCPY = @HAVE_MEMPCPY@
HAVE_MKDIRAT = @HAVE_MKDIRAT@
@@ -1064,6 +1071,7 @@ HAVE_SCANDIR = @HAVE_SCANDIR@
HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
HAVE_SETENV = @HAVE_SETENV@
HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
+HAVE_SETSTATE = @HAVE_SETSTATE@
HAVE_SIGACTION = @HAVE_SIGACTION@
HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
@@ -1083,6 +1091,7 @@ HAVE_STRPBRK = @HAVE_STRPBRK@
HAVE_STRPTIME = @HAVE_STRPTIME@
HAVE_STRSEP = @HAVE_STRSEP@
HAVE_STRTOD = @HAVE_STRTOD@
+HAVE_STRTOLD = @HAVE_STRTOLD@
HAVE_STRTOLL = @HAVE_STRTOLL@
HAVE_STRTOULL = @HAVE_STRTOULL@
HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@
@@ -1183,8 +1192,6 @@ LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBMULTITHREAD = @LIBMULTITHREAD@
LIBOBJS = @LIBOBJS@
-LIBPTH = @LIBPTH@
-LIBPTH_PREFIX = @LIBPTH_PREFIX@
LIBS = @LIBS@
LIBSOCKET = @LIBSOCKET@
LIBTHREAD = @LIBTHREAD@
@@ -1207,7 +1214,6 @@ LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBMULTITHREAD = @LTLIBMULTITHREAD@
LTLIBOBJS = @LTLIBOBJS@
-LTLIBPTH = @LTLIBPTH@
LTLIBTHREAD = @LTLIBTHREAD@
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
MAINT = @MAINT@
@@ -1353,6 +1359,7 @@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
REPLACE_GLOB = @REPLACE_GLOB@
REPLACE_GLOB_PATTERN_P = @REPLACE_GLOB_PATTERN_P@
REPLACE_GMTIME = @REPLACE_GMTIME@
+REPLACE_INITSTATE = @REPLACE_INITSTATE@
REPLACE_IOCTL = @REPLACE_IOCTL@
REPLACE_ISATTY = @REPLACE_ISATTY@
REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
@@ -1401,6 +1408,7 @@ REPLACE_PUTENV = @REPLACE_PUTENV@
REPLACE_PWRITE = @REPLACE_PWRITE@
REPLACE_QSORT_R = @REPLACE_QSORT_R@
REPLACE_RAISE = @REPLACE_RAISE@
+REPLACE_RANDOM = @REPLACE_RANDOM@
REPLACE_RANDOM_R = @REPLACE_RANDOM_R@
REPLACE_READ = @REPLACE_READ@
REPLACE_READLINK = @REPLACE_READLINK@
@@ -1414,6 +1422,7 @@ REPLACE_RMDIR = @REPLACE_RMDIR@
REPLACE_SELECT = @REPLACE_SELECT@
REPLACE_SETENV = @REPLACE_SETENV@
REPLACE_SETLOCALE = @REPLACE_SETLOCALE@
+REPLACE_SETSTATE = @REPLACE_SETSTATE@
REPLACE_SLEEP = @REPLACE_SLEEP@
REPLACE_SNPRINTF = @REPLACE_SNPRINTF@
REPLACE_SPRINTF = @REPLACE_SPRINTF@
@@ -1434,6 +1443,7 @@ REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@
REPLACE_STRSTR = @REPLACE_STRSTR@
REPLACE_STRTOD = @REPLACE_STRTOD@
REPLACE_STRTOK_R = @REPLACE_STRTOK_R@
+REPLACE_STRTOLD = @REPLACE_STRTOLD@
REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@
REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@
REPLACE_SYMLINK = @REPLACE_SYMLINK@
diff --git a/man/THANKS b/man/THANKS
index b988e9e2..b8b56856 100644
--- a/man/THANKS
+++ b/man/THANKS
@@ -47,6 +47,7 @@ Lauri Nurmi <lanurmi@iki.fi> fi.po
Laurent Pelecq <laurent.pelecq@soleil.org> fr.po
Nicolas Velin <nsv@fr.st> fr.po
UCHIDA Norihiro <KY4N-UCD@asahi-net.or.jp> ja.po
+Takeshi Hamasaki <hmatrjp@users.sourceforge.jp> ja.po
Benno Schulenberg <benno@vertaalt.nl> nl.po
Alexandre Folle de Menezes <afmenez@terra.com.br> pt_BR.po
Eugen Hoanca <eugenh@urban-grafx.ro> ro.po
diff --git a/man/da/Makefile.in b/man/da/Makefile.in
index b83cb4a6..d5df6000 100644
--- a/man/da/Makefile.in
+++ b/man/da/Makefile.in
@@ -182,6 +182,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/man-arg-automatic-create.m4 \
$(top_srcdir)/gl/m4/ltversion.m4 \
$(top_srcdir)/gl/m4/lt~obsolete.m4 \
$(top_srcdir)/gl/m4/malloc.m4 $(top_srcdir)/gl/m4/malloca.m4 \
+ $(top_srcdir)/gl/m4/manywarnings.m4 \
$(top_srcdir)/gl/m4/mbrtowc.m4 $(top_srcdir)/gl/m4/mbsinit.m4 \
$(top_srcdir)/gl/m4/mbsrtowcs.m4 \
$(top_srcdir)/gl/m4/mbstate_t.m4 $(top_srcdir)/gl/m4/mbtowc.m4 \
@@ -565,6 +566,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
GNULIB_CLOSE = @GNULIB_CLOSE@
GNULIB_CLOSEDIR = @GNULIB_CLOSEDIR@
GNULIB_CONNECT = @GNULIB_CONNECT@
+GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
GNULIB_CTIME = @GNULIB_CTIME@
GNULIB_DIRFD = @GNULIB_DIRFD@
GNULIB_DPRINTF = @GNULIB_DPRINTF@
@@ -772,6 +774,7 @@ GNULIB_STRSIGNAL = @GNULIB_STRSIGNAL@
GNULIB_STRSTR = @GNULIB_STRSTR@
GNULIB_STRTOD = @GNULIB_STRTOD@
GNULIB_STRTOK_R = @GNULIB_STRTOK_R@
+GNULIB_STRTOLD = @GNULIB_STRTOLD@
GNULIB_STRTOLL = @GNULIB_STRTOLL@
GNULIB_STRTOULL = @GNULIB_STRTOULL@
GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@
@@ -846,6 +849,7 @@ GNULIB_WRITE = @GNULIB_WRITE@
GNULIB__EXIT = @GNULIB__EXIT@
GREP = @GREP@
HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
HAVE_ALPHASORT = @HAVE_ALPHASORT@
HAVE_ATOLL = @HAVE_ATOLL@
HAVE_BTOWC = @HAVE_BTOWC@
@@ -853,6 +857,7 @@ HAVE_C99_STDINT_H = @HAVE_C99_STDINT_H@
HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
HAVE_CHOWN = @HAVE_CHOWN@
HAVE_CLOSEDIR = @HAVE_CLOSEDIR@
+HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@
HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
@@ -934,6 +939,7 @@ HAVE_GLOB_H = @HAVE_GLOB_H@
HAVE_GLOB_PATTERN_P = @HAVE_GLOB_PATTERN_P@
HAVE_GRANTPT = @HAVE_GRANTPT@
HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
+HAVE_INITSTATE = @HAVE_INITSTATE@
HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
HAVE_ISWBLANK = @HAVE_ISWBLANK@
HAVE_ISWCNTRL = @HAVE_ISWCNTRL@
@@ -956,6 +962,7 @@ HAVE_MBSINIT = @HAVE_MBSINIT@
HAVE_MBSLEN = @HAVE_MBSLEN@
HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
+HAVE_MBTOWC = @HAVE_MBTOWC@
HAVE_MEMCHR = @HAVE_MEMCHR@
HAVE_MEMPCPY = @HAVE_MEMPCPY@
HAVE_MKDIRAT = @HAVE_MKDIRAT@
@@ -1006,6 +1013,7 @@ HAVE_SCANDIR = @HAVE_SCANDIR@
HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
HAVE_SETENV = @HAVE_SETENV@
HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
+HAVE_SETSTATE = @HAVE_SETSTATE@
HAVE_SIGACTION = @HAVE_SIGACTION@
HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
@@ -1025,6 +1033,7 @@ HAVE_STRPBRK = @HAVE_STRPBRK@
HAVE_STRPTIME = @HAVE_STRPTIME@
HAVE_STRSEP = @HAVE_STRSEP@
HAVE_STRTOD = @HAVE_STRTOD@
+HAVE_STRTOLD = @HAVE_STRTOLD@
HAVE_STRTOLL = @HAVE_STRTOLL@
HAVE_STRTOULL = @HAVE_STRTOULL@
HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@
@@ -1125,8 +1134,6 @@ LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBMULTITHREAD = @LIBMULTITHREAD@
LIBOBJS = @LIBOBJS@
-LIBPTH = @LIBPTH@
-LIBPTH_PREFIX = @LIBPTH_PREFIX@
LIBS = @LIBS@
LIBSOCKET = @LIBSOCKET@
LIBTHREAD = @LIBTHREAD@
@@ -1149,7 +1156,6 @@ LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBMULTITHREAD = @LTLIBMULTITHREAD@
LTLIBOBJS = @LTLIBOBJS@
-LTLIBPTH = @LTLIBPTH@
LTLIBTHREAD = @LTLIBTHREAD@
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
MAINT = @MAINT@
@@ -1295,6 +1301,7 @@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
REPLACE_GLOB = @REPLACE_GLOB@
REPLACE_GLOB_PATTERN_P = @REPLACE_GLOB_PATTERN_P@
REPLACE_GMTIME = @REPLACE_GMTIME@
+REPLACE_INITSTATE = @REPLACE_INITSTATE@
REPLACE_IOCTL = @REPLACE_IOCTL@
REPLACE_ISATTY = @REPLACE_ISATTY@
REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
@@ -1343,6 +1350,7 @@ REPLACE_PUTENV = @REPLACE_PUTENV@
REPLACE_PWRITE = @REPLACE_PWRITE@
REPLACE_QSORT_R = @REPLACE_QSORT_R@
REPLACE_RAISE = @REPLACE_RAISE@
+REPLACE_RANDOM = @REPLACE_RANDOM@
REPLACE_RANDOM_R = @REPLACE_RANDOM_R@
REPLACE_READ = @REPLACE_READ@
REPLACE_READLINK = @REPLACE_READLINK@
@@ -1356,6 +1364,7 @@ REPLACE_RMDIR = @REPLACE_RMDIR@
REPLACE_SELECT = @REPLACE_SELECT@
REPLACE_SETENV = @REPLACE_SETENV@
REPLACE_SETLOCALE = @REPLACE_SETLOCALE@
+REPLACE_SETSTATE = @REPLACE_SETSTATE@
REPLACE_SLEEP = @REPLACE_SLEEP@
REPLACE_SNPRINTF = @REPLACE_SNPRINTF@
REPLACE_SPRINTF = @REPLACE_SPRINTF@
@@ -1376,6 +1385,7 @@ REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@
REPLACE_STRSTR = @REPLACE_STRSTR@
REPLACE_STRTOD = @REPLACE_STRTOD@
REPLACE_STRTOK_R = @REPLACE_STRTOK_R@
+REPLACE_STRTOLD = @REPLACE_STRTOLD@
REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@
REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@
REPLACE_SYMLINK = @REPLACE_SYMLINK@
diff --git a/man/de/Makefile.in b/man/de/Makefile.in
index c566a366..1dcd43cd 100644
--- a/man/de/Makefile.in
+++ b/man/de/Makefile.in
@@ -182,6 +182,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/man-arg-automatic-create.m4 \
$(top_srcdir)/gl/m4/ltversion.m4 \
$(top_srcdir)/gl/m4/lt~obsolete.m4 \
$(top_srcdir)/gl/m4/malloc.m4 $(top_srcdir)/gl/m4/malloca.m4 \
+ $(top_srcdir)/gl/m4/manywarnings.m4 \
$(top_srcdir)/gl/m4/mbrtowc.m4 $(top_srcdir)/gl/m4/mbsinit.m4 \
$(top_srcdir)/gl/m4/mbsrtowcs.m4 \
$(top_srcdir)/gl/m4/mbstate_t.m4 $(top_srcdir)/gl/m4/mbtowc.m4 \
@@ -565,6 +566,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
GNULIB_CLOSE = @GNULIB_CLOSE@
GNULIB_CLOSEDIR = @GNULIB_CLOSEDIR@
GNULIB_CONNECT = @GNULIB_CONNECT@
+GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
GNULIB_CTIME = @GNULIB_CTIME@
GNULIB_DIRFD = @GNULIB_DIRFD@
GNULIB_DPRINTF = @GNULIB_DPRINTF@
@@ -772,6 +774,7 @@ GNULIB_STRSIGNAL = @GNULIB_STRSIGNAL@
GNULIB_STRSTR = @GNULIB_STRSTR@
GNULIB_STRTOD = @GNULIB_STRTOD@
GNULIB_STRTOK_R = @GNULIB_STRTOK_R@
+GNULIB_STRTOLD = @GNULIB_STRTOLD@
GNULIB_STRTOLL = @GNULIB_STRTOLL@
GNULIB_STRTOULL = @GNULIB_STRTOULL@
GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@
@@ -846,6 +849,7 @@ GNULIB_WRITE = @GNULIB_WRITE@
GNULIB__EXIT = @GNULIB__EXIT@
GREP = @GREP@
HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
HAVE_ALPHASORT = @HAVE_ALPHASORT@
HAVE_ATOLL = @HAVE_ATOLL@
HAVE_BTOWC = @HAVE_BTOWC@
@@ -853,6 +857,7 @@ HAVE_C99_STDINT_H = @HAVE_C99_STDINT_H@
HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
HAVE_CHOWN = @HAVE_CHOWN@
HAVE_CLOSEDIR = @HAVE_CLOSEDIR@
+HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@
HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
@@ -934,6 +939,7 @@ HAVE_GLOB_H = @HAVE_GLOB_H@
HAVE_GLOB_PATTERN_P = @HAVE_GLOB_PATTERN_P@
HAVE_GRANTPT = @HAVE_GRANTPT@
HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
+HAVE_INITSTATE = @HAVE_INITSTATE@
HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
HAVE_ISWBLANK = @HAVE_ISWBLANK@
HAVE_ISWCNTRL = @HAVE_ISWCNTRL@
@@ -956,6 +962,7 @@ HAVE_MBSINIT = @HAVE_MBSINIT@
HAVE_MBSLEN = @HAVE_MBSLEN@
HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
+HAVE_MBTOWC = @HAVE_MBTOWC@
HAVE_MEMCHR = @HAVE_MEMCHR@
HAVE_MEMPCPY = @HAVE_MEMPCPY@
HAVE_MKDIRAT = @HAVE_MKDIRAT@
@@ -1006,6 +1013,7 @@ HAVE_SCANDIR = @HAVE_SCANDIR@
HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
HAVE_SETENV = @HAVE_SETENV@
HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
+HAVE_SETSTATE = @HAVE_SETSTATE@
HAVE_SIGACTION = @HAVE_SIGACTION@
HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
@@ -1025,6 +1033,7 @@ HAVE_STRPBRK = @HAVE_STRPBRK@
HAVE_STRPTIME = @HAVE_STRPTIME@
HAVE_STRSEP = @HAVE_STRSEP@
HAVE_STRTOD = @HAVE_STRTOD@
+HAVE_STRTOLD = @HAVE_STRTOLD@
HAVE_STRTOLL = @HAVE_STRTOLL@
HAVE_STRTOULL = @HAVE_STRTOULL@
HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@
@@ -1125,8 +1134,6 @@ LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBMULTITHREAD = @LIBMULTITHREAD@
LIBOBJS = @LIBOBJS@
-LIBPTH = @LIBPTH@
-LIBPTH_PREFIX = @LIBPTH_PREFIX@
LIBS = @LIBS@
LIBSOCKET = @LIBSOCKET@
LIBTHREAD = @LIBTHREAD@
@@ -1149,7 +1156,6 @@ LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBMULTITHREAD = @LTLIBMULTITHREAD@
LTLIBOBJS = @LTLIBOBJS@
-LTLIBPTH = @LTLIBPTH@
LTLIBTHREAD = @LTLIBTHREAD@
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
MAINT = @MAINT@
@@ -1295,6 +1301,7 @@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
REPLACE_GLOB = @REPLACE_GLOB@
REPLACE_GLOB_PATTERN_P = @REPLACE_GLOB_PATTERN_P@
REPLACE_GMTIME = @REPLACE_GMTIME@
+REPLACE_INITSTATE = @REPLACE_INITSTATE@
REPLACE_IOCTL = @REPLACE_IOCTL@
REPLACE_ISATTY = @REPLACE_ISATTY@
REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
@@ -1343,6 +1350,7 @@ REPLACE_PUTENV = @REPLACE_PUTENV@
REPLACE_PWRITE = @REPLACE_PWRITE@
REPLACE_QSORT_R = @REPLACE_QSORT_R@
REPLACE_RAISE = @REPLACE_RAISE@
+REPLACE_RANDOM = @REPLACE_RANDOM@
REPLACE_RANDOM_R = @REPLACE_RANDOM_R@
REPLACE_READ = @REPLACE_READ@
REPLACE_READLINK = @REPLACE_READLINK@
@@ -1356,6 +1364,7 @@ REPLACE_RMDIR = @REPLACE_RMDIR@
REPLACE_SELECT = @REPLACE_SELECT@
REPLACE_SETENV = @REPLACE_SETENV@
REPLACE_SETLOCALE = @REPLACE_SETLOCALE@
+REPLACE_SETSTATE = @REPLACE_SETSTATE@
REPLACE_SLEEP = @REPLACE_SLEEP@
REPLACE_SNPRINTF = @REPLACE_SNPRINTF@
REPLACE_SPRINTF = @REPLACE_SPRINTF@
@@ -1376,6 +1385,7 @@ REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@
REPLACE_STRSTR = @REPLACE_STRSTR@
REPLACE_STRTOD = @REPLACE_STRTOD@
REPLACE_STRTOK_R = @REPLACE_STRTOK_R@
+REPLACE_STRTOLD = @REPLACE_STRTOLD@
REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@
REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@
REPLACE_SYMLINK = @REPLACE_SYMLINK@
diff --git a/man/es/Makefile.in b/man/es/Makefile.in
index 15e29c4f..2249eadf 100644
--- a/man/es/Makefile.in
+++ b/man/es/Makefile.in
@@ -182,6 +182,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/man-arg-automatic-create.m4 \
$(top_srcdir)/gl/m4/ltversion.m4 \
$(top_srcdir)/gl/m4/lt~obsolete.m4 \
$(top_srcdir)/gl/m4/malloc.m4 $(top_srcdir)/gl/m4/malloca.m4 \
+ $(top_srcdir)/gl/m4/manywarnings.m4 \
$(top_srcdir)/gl/m4/mbrtowc.m4 $(top_srcdir)/gl/m4/mbsinit.m4 \
$(top_srcdir)/gl/m4/mbsrtowcs.m4 \
$(top_srcdir)/gl/m4/mbstate_t.m4 $(top_srcdir)/gl/m4/mbtowc.m4 \
@@ -565,6 +566,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
GNULIB_CLOSE = @GNULIB_CLOSE@
GNULIB_CLOSEDIR = @GNULIB_CLOSEDIR@
GNULIB_CONNECT = @GNULIB_CONNECT@
+GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
GNULIB_CTIME = @GNULIB_CTIME@
GNULIB_DIRFD = @GNULIB_DIRFD@
GNULIB_DPRINTF = @GNULIB_DPRINTF@
@@ -772,6 +774,7 @@ GNULIB_STRSIGNAL = @GNULIB_STRSIGNAL@
GNULIB_STRSTR = @GNULIB_STRSTR@
GNULIB_STRTOD = @GNULIB_STRTOD@
GNULIB_STRTOK_R = @GNULIB_STRTOK_R@
+GNULIB_STRTOLD = @GNULIB_STRTOLD@
GNULIB_STRTOLL = @GNULIB_STRTOLL@
GNULIB_STRTOULL = @GNULIB_STRTOULL@
GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@
@@ -846,6 +849,7 @@ GNULIB_WRITE = @GNULIB_WRITE@
GNULIB__EXIT = @GNULIB__EXIT@
GREP = @GREP@
HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
HAVE_ALPHASORT = @HAVE_ALPHASORT@
HAVE_ATOLL = @HAVE_ATOLL@
HAVE_BTOWC = @HAVE_BTOWC@
@@ -853,6 +857,7 @@ HAVE_C99_STDINT_H = @HAVE_C99_STDINT_H@
HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
HAVE_CHOWN = @HAVE_CHOWN@
HAVE_CLOSEDIR = @HAVE_CLOSEDIR@
+HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@
HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
@@ -934,6 +939,7 @@ HAVE_GLOB_H = @HAVE_GLOB_H@
HAVE_GLOB_PATTERN_P = @HAVE_GLOB_PATTERN_P@
HAVE_GRANTPT = @HAVE_GRANTPT@
HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
+HAVE_INITSTATE = @HAVE_INITSTATE@
HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
HAVE_ISWBLANK = @HAVE_ISWBLANK@
HAVE_ISWCNTRL = @HAVE_ISWCNTRL@
@@ -956,6 +962,7 @@ HAVE_MBSINIT = @HAVE_MBSINIT@
HAVE_MBSLEN = @HAVE_MBSLEN@
HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
+HAVE_MBTOWC = @HAVE_MBTOWC@
HAVE_MEMCHR = @HAVE_MEMCHR@
HAVE_MEMPCPY = @HAVE_MEMPCPY@
HAVE_MKDIRAT = @HAVE_MKDIRAT@
@@ -1006,6 +1013,7 @@ HAVE_SCANDIR = @HAVE_SCANDIR@
HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
HAVE_SETENV = @HAVE_SETENV@
HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
+HAVE_SETSTATE = @HAVE_SETSTATE@
HAVE_SIGACTION = @HAVE_SIGACTION@
HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
@@ -1025,6 +1033,7 @@ HAVE_STRPBRK = @HAVE_STRPBRK@
HAVE_STRPTIME = @HAVE_STRPTIME@
HAVE_STRSEP = @HAVE_STRSEP@
HAVE_STRTOD = @HAVE_STRTOD@
+HAVE_STRTOLD = @HAVE_STRTOLD@
HAVE_STRTOLL = @HAVE_STRTOLL@
HAVE_STRTOULL = @HAVE_STRTOULL@
HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@
@@ -1125,8 +1134,6 @@ LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBMULTITHREAD = @LIBMULTITHREAD@
LIBOBJS = @LIBOBJS@
-LIBPTH = @LIBPTH@
-LIBPTH_PREFIX = @LIBPTH_PREFIX@
LIBS = @LIBS@
LIBSOCKET = @LIBSOCKET@
LIBTHREAD = @LIBTHREAD@
@@ -1149,7 +1156,6 @@ LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBMULTITHREAD = @LTLIBMULTITHREAD@
LTLIBOBJS = @LTLIBOBJS@
-LTLIBPTH = @LTLIBPTH@
LTLIBTHREAD = @LTLIBTHREAD@
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
MAINT = @MAINT@
@@ -1295,6 +1301,7 @@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
REPLACE_GLOB = @REPLACE_GLOB@
REPLACE_GLOB_PATTERN_P = @REPLACE_GLOB_PATTERN_P@
REPLACE_GMTIME = @REPLACE_GMTIME@
+REPLACE_INITSTATE = @REPLACE_INITSTATE@
REPLACE_IOCTL = @REPLACE_IOCTL@
REPLACE_ISATTY = @REPLACE_ISATTY@
REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
@@ -1343,6 +1350,7 @@ REPLACE_PUTENV = @REPLACE_PUTENV@
REPLACE_PWRITE = @REPLACE_PWRITE@
REPLACE_QSORT_R = @REPLACE_QSORT_R@
REPLACE_RAISE = @REPLACE_RAISE@
+REPLACE_RANDOM = @REPLACE_RANDOM@
REPLACE_RANDOM_R = @REPLACE_RANDOM_R@
REPLACE_READ = @REPLACE_READ@
REPLACE_READLINK = @REPLACE_READLINK@
@@ -1356,6 +1364,7 @@ REPLACE_RMDIR = @REPLACE_RMDIR@
REPLACE_SELECT = @REPLACE_SELECT@
REPLACE_SETENV = @REPLACE_SETENV@
REPLACE_SETLOCALE = @REPLACE_SETLOCALE@
+REPLACE_SETSTATE = @REPLACE_SETSTATE@
REPLACE_SLEEP = @REPLACE_SLEEP@
REPLACE_SNPRINTF = @REPLACE_SNPRINTF@
REPLACE_SPRINTF = @REPLACE_SPRINTF@
@@ -1376,6 +1385,7 @@ REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@
REPLACE_STRSTR = @REPLACE_STRSTR@
REPLACE_STRTOD = @REPLACE_STRTOD@
REPLACE_STRTOK_R = @REPLACE_STRTOK_R@
+REPLACE_STRTOLD = @REPLACE_STRTOLD@
REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@
REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@
REPLACE_SYMLINK = @REPLACE_SYMLINK@
diff --git a/man/fr/Makefile.in b/man/fr/Makefile.in
index 2d8301c4..1a794a7f 100644
--- a/man/fr/Makefile.in
+++ b/man/fr/Makefile.in
@@ -182,6 +182,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/man-arg-automatic-create.m4 \
$(top_srcdir)/gl/m4/ltversion.m4 \
$(top_srcdir)/gl/m4/lt~obsolete.m4 \
$(top_srcdir)/gl/m4/malloc.m4 $(top_srcdir)/gl/m4/malloca.m4 \
+ $(top_srcdir)/gl/m4/manywarnings.m4 \
$(top_srcdir)/gl/m4/mbrtowc.m4 $(top_srcdir)/gl/m4/mbsinit.m4 \
$(top_srcdir)/gl/m4/mbsrtowcs.m4 \
$(top_srcdir)/gl/m4/mbstate_t.m4 $(top_srcdir)/gl/m4/mbtowc.m4 \
@@ -565,6 +566,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
GNULIB_CLOSE = @GNULIB_CLOSE@
GNULIB_CLOSEDIR = @GNULIB_CLOSEDIR@
GNULIB_CONNECT = @GNULIB_CONNECT@
+GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
GNULIB_CTIME = @GNULIB_CTIME@
GNULIB_DIRFD = @GNULIB_DIRFD@
GNULIB_DPRINTF = @GNULIB_DPRINTF@
@@ -772,6 +774,7 @@ GNULIB_STRSIGNAL = @GNULIB_STRSIGNAL@
GNULIB_STRSTR = @GNULIB_STRSTR@
GNULIB_STRTOD = @GNULIB_STRTOD@
GNULIB_STRTOK_R = @GNULIB_STRTOK_R@
+GNULIB_STRTOLD = @GNULIB_STRTOLD@
GNULIB_STRTOLL = @GNULIB_STRTOLL@
GNULIB_STRTOULL = @GNULIB_STRTOULL@
GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@
@@ -846,6 +849,7 @@ GNULIB_WRITE = @GNULIB_WRITE@
GNULIB__EXIT = @GNULIB__EXIT@
GREP = @GREP@
HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
HAVE_ALPHASORT = @HAVE_ALPHASORT@
HAVE_ATOLL = @HAVE_ATOLL@
HAVE_BTOWC = @HAVE_BTOWC@
@@ -853,6 +857,7 @@ HAVE_C99_STDINT_H = @HAVE_C99_STDINT_H@
HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
HAVE_CHOWN = @HAVE_CHOWN@
HAVE_CLOSEDIR = @HAVE_CLOSEDIR@
+HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@
HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
@@ -934,6 +939,7 @@ HAVE_GLOB_H = @HAVE_GLOB_H@
HAVE_GLOB_PATTERN_P = @HAVE_GLOB_PATTERN_P@
HAVE_GRANTPT = @HAVE_GRANTPT@
HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
+HAVE_INITSTATE = @HAVE_INITSTATE@
HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
HAVE_ISWBLANK = @HAVE_ISWBLANK@
HAVE_ISWCNTRL = @HAVE_ISWCNTRL@
@@ -956,6 +962,7 @@ HAVE_MBSINIT = @HAVE_MBSINIT@
HAVE_MBSLEN = @HAVE_MBSLEN@
HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
+HAVE_MBTOWC = @HAVE_MBTOWC@
HAVE_MEMCHR = @HAVE_MEMCHR@
HAVE_MEMPCPY = @HAVE_MEMPCPY@
HAVE_MKDIRAT = @HAVE_MKDIRAT@
@@ -1006,6 +1013,7 @@ HAVE_SCANDIR = @HAVE_SCANDIR@
HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
HAVE_SETENV = @HAVE_SETENV@
HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
+HAVE_SETSTATE = @HAVE_SETSTATE@
HAVE_SIGACTION = @HAVE_SIGACTION@
HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
@@ -1025,6 +1033,7 @@ HAVE_STRPBRK = @HAVE_STRPBRK@
HAVE_STRPTIME = @HAVE_STRPTIME@
HAVE_STRSEP = @HAVE_STRSEP@
HAVE_STRTOD = @HAVE_STRTOD@
+HAVE_STRTOLD = @HAVE_STRTOLD@
HAVE_STRTOLL = @HAVE_STRTOLL@
HAVE_STRTOULL = @HAVE_STRTOULL@
HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@
@@ -1125,8 +1134,6 @@ LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBMULTITHREAD = @LIBMULTITHREAD@
LIBOBJS = @LIBOBJS@
-LIBPTH = @LIBPTH@
-LIBPTH_PREFIX = @LIBPTH_PREFIX@
LIBS = @LIBS@
LIBSOCKET = @LIBSOCKET@
LIBTHREAD = @LIBTHREAD@
@@ -1149,7 +1156,6 @@ LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBMULTITHREAD = @LTLIBMULTITHREAD@
LTLIBOBJS = @LTLIBOBJS@
-LTLIBPTH = @LTLIBPTH@
LTLIBTHREAD = @LTLIBTHREAD@
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
MAINT = @MAINT@
@@ -1295,6 +1301,7 @@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
REPLACE_GLOB = @REPLACE_GLOB@
REPLACE_GLOB_PATTERN_P = @REPLACE_GLOB_PATTERN_P@
REPLACE_GMTIME = @REPLACE_GMTIME@
+REPLACE_INITSTATE = @REPLACE_INITSTATE@
REPLACE_IOCTL = @REPLACE_IOCTL@
REPLACE_ISATTY = @REPLACE_ISATTY@
REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
@@ -1343,6 +1350,7 @@ REPLACE_PUTENV = @REPLACE_PUTENV@
REPLACE_PWRITE = @REPLACE_PWRITE@
REPLACE_QSORT_R = @REPLACE_QSORT_R@
REPLACE_RAISE = @REPLACE_RAISE@
+REPLACE_RANDOM = @REPLACE_RANDOM@
REPLACE_RANDOM_R = @REPLACE_RANDOM_R@
REPLACE_READ = @REPLACE_READ@
REPLACE_READLINK = @REPLACE_READLINK@
@@ -1356,6 +1364,7 @@ REPLACE_RMDIR = @REPLACE_RMDIR@
REPLACE_SELECT = @REPLACE_SELECT@
REPLACE_SETENV = @REPLACE_SETENV@
REPLACE_SETLOCALE = @REPLACE_SETLOCALE@
+REPLACE_SETSTATE = @REPLACE_SETSTATE@
REPLACE_SLEEP = @REPLACE_SLEEP@
REPLACE_SNPRINTF = @REPLACE_SNPRINTF@
REPLACE_SPRINTF = @REPLACE_SPRINTF@
@@ -1376,6 +1385,7 @@ REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@
REPLACE_STRSTR = @REPLACE_STRSTR@
REPLACE_STRTOD = @REPLACE_STRTOD@
REPLACE_STRTOK_R = @REPLACE_STRTOK_R@
+REPLACE_STRTOLD = @REPLACE_STRTOLD@
REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@
REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@
REPLACE_SYMLINK = @REPLACE_SYMLINK@
diff --git a/man/id/Makefile.in b/man/id/Makefile.in
index 51546db9..99be31fc 100644
--- a/man/id/Makefile.in
+++ b/man/id/Makefile.in
@@ -182,6 +182,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/man-arg-automatic-create.m4 \
$(top_srcdir)/gl/m4/ltversion.m4 \
$(top_srcdir)/gl/m4/lt~obsolete.m4 \
$(top_srcdir)/gl/m4/malloc.m4 $(top_srcdir)/gl/m4/malloca.m4 \
+ $(top_srcdir)/gl/m4/manywarnings.m4 \
$(top_srcdir)/gl/m4/mbrtowc.m4 $(top_srcdir)/gl/m4/mbsinit.m4 \
$(top_srcdir)/gl/m4/mbsrtowcs.m4 \
$(top_srcdir)/gl/m4/mbstate_t.m4 $(top_srcdir)/gl/m4/mbtowc.m4 \
@@ -565,6 +566,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
GNULIB_CLOSE = @GNULIB_CLOSE@
GNULIB_CLOSEDIR = @GNULIB_CLOSEDIR@
GNULIB_CONNECT = @GNULIB_CONNECT@
+GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
GNULIB_CTIME = @GNULIB_CTIME@
GNULIB_DIRFD = @GNULIB_DIRFD@
GNULIB_DPRINTF = @GNULIB_DPRINTF@
@@ -772,6 +774,7 @@ GNULIB_STRSIGNAL = @GNULIB_STRSIGNAL@
GNULIB_STRSTR = @GNULIB_STRSTR@
GNULIB_STRTOD = @GNULIB_STRTOD@
GNULIB_STRTOK_R = @GNULIB_STRTOK_R@
+GNULIB_STRTOLD = @GNULIB_STRTOLD@
GNULIB_STRTOLL = @GNULIB_STRTOLL@
GNULIB_STRTOULL = @GNULIB_STRTOULL@
GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@
@@ -846,6 +849,7 @@ GNULIB_WRITE = @GNULIB_WRITE@
GNULIB__EXIT = @GNULIB__EXIT@
GREP = @GREP@
HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
HAVE_ALPHASORT = @HAVE_ALPHASORT@
HAVE_ATOLL = @HAVE_ATOLL@
HAVE_BTOWC = @HAVE_BTOWC@
@@ -853,6 +857,7 @@ HAVE_C99_STDINT_H = @HAVE_C99_STDINT_H@
HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
HAVE_CHOWN = @HAVE_CHOWN@
HAVE_CLOSEDIR = @HAVE_CLOSEDIR@
+HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@
HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
@@ -934,6 +939,7 @@ HAVE_GLOB_H = @HAVE_GLOB_H@
HAVE_GLOB_PATTERN_P = @HAVE_GLOB_PATTERN_P@
HAVE_GRANTPT = @HAVE_GRANTPT@
HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
+HAVE_INITSTATE = @HAVE_INITSTATE@
HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
HAVE_ISWBLANK = @HAVE_ISWBLANK@
HAVE_ISWCNTRL = @HAVE_ISWCNTRL@
@@ -956,6 +962,7 @@ HAVE_MBSINIT = @HAVE_MBSINIT@
HAVE_MBSLEN = @HAVE_MBSLEN@
HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
+HAVE_MBTOWC = @HAVE_MBTOWC@
HAVE_MEMCHR = @HAVE_MEMCHR@
HAVE_MEMPCPY = @HAVE_MEMPCPY@
HAVE_MKDIRAT = @HAVE_MKDIRAT@
@@ -1006,6 +1013,7 @@ HAVE_SCANDIR = @HAVE_SCANDIR@
HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
HAVE_SETENV = @HAVE_SETENV@
HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
+HAVE_SETSTATE = @HAVE_SETSTATE@
HAVE_SIGACTION = @HAVE_SIGACTION@
HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
@@ -1025,6 +1033,7 @@ HAVE_STRPBRK = @HAVE_STRPBRK@
HAVE_STRPTIME = @HAVE_STRPTIME@
HAVE_STRSEP = @HAVE_STRSEP@
HAVE_STRTOD = @HAVE_STRTOD@
+HAVE_STRTOLD = @HAVE_STRTOLD@
HAVE_STRTOLL = @HAVE_STRTOLL@
HAVE_STRTOULL = @HAVE_STRTOULL@
HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@
@@ -1125,8 +1134,6 @@ LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBMULTITHREAD = @LIBMULTITHREAD@
LIBOBJS = @LIBOBJS@
-LIBPTH = @LIBPTH@
-LIBPTH_PREFIX = @LIBPTH_PREFIX@
LIBS = @LIBS@
LIBSOCKET = @LIBSOCKET@
LIBTHREAD = @LIBTHREAD@
@@ -1149,7 +1156,6 @@ LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBMULTITHREAD = @LTLIBMULTITHREAD@
LTLIBOBJS = @LTLIBOBJS@
-LTLIBPTH = @LTLIBPTH@
LTLIBTHREAD = @LTLIBTHREAD@
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
MAINT = @MAINT@
@@ -1295,6 +1301,7 @@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
REPLACE_GLOB = @REPLACE_GLOB@
REPLACE_GLOB_PATTERN_P = @REPLACE_GLOB_PATTERN_P@
REPLACE_GMTIME = @REPLACE_GMTIME@
+REPLACE_INITSTATE = @REPLACE_INITSTATE@
REPLACE_IOCTL = @REPLACE_IOCTL@
REPLACE_ISATTY = @REPLACE_ISATTY@
REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
@@ -1343,6 +1350,7 @@ REPLACE_PUTENV = @REPLACE_PUTENV@
REPLACE_PWRITE = @REPLACE_PWRITE@
REPLACE_QSORT_R = @REPLACE_QSORT_R@
REPLACE_RAISE = @REPLACE_RAISE@
+REPLACE_RANDOM = @REPLACE_RANDOM@
REPLACE_RANDOM_R = @REPLACE_RANDOM_R@
REPLACE_READ = @REPLACE_READ@
REPLACE_READLINK = @REPLACE_READLINK@
@@ -1356,6 +1364,7 @@ REPLACE_RMDIR = @REPLACE_RMDIR@
REPLACE_SELECT = @REPLACE_SELECT@
REPLACE_SETENV = @REPLACE_SETENV@
REPLACE_SETLOCALE = @REPLACE_SETLOCALE@
+REPLACE_SETSTATE = @REPLACE_SETSTATE@
REPLACE_SLEEP = @REPLACE_SLEEP@
REPLACE_SNPRINTF = @REPLACE_SNPRINTF@
REPLACE_SPRINTF = @REPLACE_SPRINTF@
@@ -1376,6 +1385,7 @@ REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@
REPLACE_STRSTR = @REPLACE_STRSTR@
REPLACE_STRTOD = @REPLACE_STRTOD@
REPLACE_STRTOK_R = @REPLACE_STRTOK_R@
+REPLACE_STRTOLD = @REPLACE_STRTOLD@
REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@
REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@
REPLACE_SYMLINK = @REPLACE_SYMLINK@
diff --git a/man/it/Makefile.in b/man/it/Makefile.in
index b00c7b9c..7ecad288 100644
--- a/man/it/Makefile.in
+++ b/man/it/Makefile.in
@@ -182,6 +182,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/man-arg-automatic-create.m4 \
$(top_srcdir)/gl/m4/ltversion.m4 \
$(top_srcdir)/gl/m4/lt~obsolete.m4 \
$(top_srcdir)/gl/m4/malloc.m4 $(top_srcdir)/gl/m4/malloca.m4 \
+ $(top_srcdir)/gl/m4/manywarnings.m4 \
$(top_srcdir)/gl/m4/mbrtowc.m4 $(top_srcdir)/gl/m4/mbsinit.m4 \
$(top_srcdir)/gl/m4/mbsrtowcs.m4 \
$(top_srcdir)/gl/m4/mbstate_t.m4 $(top_srcdir)/gl/m4/mbtowc.m4 \
@@ -565,6 +566,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
GNULIB_CLOSE = @GNULIB_CLOSE@
GNULIB_CLOSEDIR = @GNULIB_CLOSEDIR@
GNULIB_CONNECT = @GNULIB_CONNECT@
+GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
GNULIB_CTIME = @GNULIB_CTIME@
GNULIB_DIRFD = @GNULIB_DIRFD@
GNULIB_DPRINTF = @GNULIB_DPRINTF@
@@ -772,6 +774,7 @@ GNULIB_STRSIGNAL = @GNULIB_STRSIGNAL@
GNULIB_STRSTR = @GNULIB_STRSTR@
GNULIB_STRTOD = @GNULIB_STRTOD@
GNULIB_STRTOK_R = @GNULIB_STRTOK_R@
+GNULIB_STRTOLD = @GNULIB_STRTOLD@
GNULIB_STRTOLL = @GNULIB_STRTOLL@
GNULIB_STRTOULL = @GNULIB_STRTOULL@
GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@
@@ -846,6 +849,7 @@ GNULIB_WRITE = @GNULIB_WRITE@
GNULIB__EXIT = @GNULIB__EXIT@
GREP = @GREP@
HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
HAVE_ALPHASORT = @HAVE_ALPHASORT@
HAVE_ATOLL = @HAVE_ATOLL@
HAVE_BTOWC = @HAVE_BTOWC@
@@ -853,6 +857,7 @@ HAVE_C99_STDINT_H = @HAVE_C99_STDINT_H@
HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
HAVE_CHOWN = @HAVE_CHOWN@
HAVE_CLOSEDIR = @HAVE_CLOSEDIR@
+HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@
HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
@@ -934,6 +939,7 @@ HAVE_GLOB_H = @HAVE_GLOB_H@
HAVE_GLOB_PATTERN_P = @HAVE_GLOB_PATTERN_P@
HAVE_GRANTPT = @HAVE_GRANTPT@
HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
+HAVE_INITSTATE = @HAVE_INITSTATE@
HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
HAVE_ISWBLANK = @HAVE_ISWBLANK@
HAVE_ISWCNTRL = @HAVE_ISWCNTRL@
@@ -956,6 +962,7 @@ HAVE_MBSINIT = @HAVE_MBSINIT@
HAVE_MBSLEN = @HAVE_MBSLEN@
HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
+HAVE_MBTOWC = @HAVE_MBTOWC@
HAVE_MEMCHR = @HAVE_MEMCHR@
HAVE_MEMPCPY = @HAVE_MEMPCPY@
HAVE_MKDIRAT = @HAVE_MKDIRAT@
@@ -1006,6 +1013,7 @@ HAVE_SCANDIR = @HAVE_SCANDIR@
HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
HAVE_SETENV = @HAVE_SETENV@
HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
+HAVE_SETSTATE = @HAVE_SETSTATE@
HAVE_SIGACTION = @HAVE_SIGACTION@
HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
@@ -1025,6 +1033,7 @@ HAVE_STRPBRK = @HAVE_STRPBRK@
HAVE_STRPTIME = @HAVE_STRPTIME@
HAVE_STRSEP = @HAVE_STRSEP@
HAVE_STRTOD = @HAVE_STRTOD@
+HAVE_STRTOLD = @HAVE_STRTOLD@
HAVE_STRTOLL = @HAVE_STRTOLL@
HAVE_STRTOULL = @HAVE_STRTOULL@
HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@
@@ -1125,8 +1134,6 @@ LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBMULTITHREAD = @LIBMULTITHREAD@
LIBOBJS = @LIBOBJS@
-LIBPTH = @LIBPTH@
-LIBPTH_PREFIX = @LIBPTH_PREFIX@
LIBS = @LIBS@
LIBSOCKET = @LIBSOCKET@
LIBTHREAD = @LIBTHREAD@
@@ -1149,7 +1156,6 @@ LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBMULTITHREAD = @LTLIBMULTITHREAD@
LTLIBOBJS = @LTLIBOBJS@
-LTLIBPTH = @LTLIBPTH@
LTLIBTHREAD = @LTLIBTHREAD@
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
MAINT = @MAINT@
@@ -1295,6 +1301,7 @@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
REPLACE_GLOB = @REPLACE_GLOB@
REPLACE_GLOB_PATTERN_P = @REPLACE_GLOB_PATTERN_P@
REPLACE_GMTIME = @REPLACE_GMTIME@
+REPLACE_INITSTATE = @REPLACE_INITSTATE@
REPLACE_IOCTL = @REPLACE_IOCTL@
REPLACE_ISATTY = @REPLACE_ISATTY@
REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
@@ -1343,6 +1350,7 @@ REPLACE_PUTENV = @REPLACE_PUTENV@
REPLACE_PWRITE = @REPLACE_PWRITE@
REPLACE_QSORT_R = @REPLACE_QSORT_R@
REPLACE_RAISE = @REPLACE_RAISE@
+REPLACE_RANDOM = @REPLACE_RANDOM@
REPLACE_RANDOM_R = @REPLACE_RANDOM_R@
REPLACE_READ = @REPLACE_READ@
REPLACE_READLINK = @REPLACE_READLINK@
@@ -1356,6 +1364,7 @@ REPLACE_RMDIR = @REPLACE_RMDIR@
REPLACE_SELECT = @REPLACE_SELECT@
REPLACE_SETENV = @REPLACE_SETENV@
REPLACE_SETLOCALE = @REPLACE_SETLOCALE@
+REPLACE_SETSTATE = @REPLACE_SETSTATE@
REPLACE_SLEEP = @REPLACE_SLEEP@
REPLACE_SNPRINTF = @REPLACE_SNPRINTF@
REPLACE_SPRINTF = @REPLACE_SPRINTF@
@@ -1376,6 +1385,7 @@ REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@
REPLACE_STRSTR = @REPLACE_STRSTR@
REPLACE_STRTOD = @REPLACE_STRTOD@
REPLACE_STRTOK_R = @REPLACE_STRTOK_R@
+REPLACE_STRTOLD = @REPLACE_STRTOLD@
REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@
REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@
REPLACE_SYMLINK = @REPLACE_SYMLINK@
diff --git a/man/ja/Makefile.in b/man/ja/Makefile.in
index 74a05e0b..b61ee339 100644
--- a/man/ja/Makefile.in
+++ b/man/ja/Makefile.in
@@ -182,6 +182,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/man-arg-automatic-create.m4 \
$(top_srcdir)/gl/m4/ltversion.m4 \
$(top_srcdir)/gl/m4/lt~obsolete.m4 \
$(top_srcdir)/gl/m4/malloc.m4 $(top_srcdir)/gl/m4/malloca.m4 \
+ $(top_srcdir)/gl/m4/manywarnings.m4 \
$(top_srcdir)/gl/m4/mbrtowc.m4 $(top_srcdir)/gl/m4/mbsinit.m4 \
$(top_srcdir)/gl/m4/mbsrtowcs.m4 \
$(top_srcdir)/gl/m4/mbstate_t.m4 $(top_srcdir)/gl/m4/mbtowc.m4 \
@@ -565,6 +566,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
GNULIB_CLOSE = @GNULIB_CLOSE@
GNULIB_CLOSEDIR = @GNULIB_CLOSEDIR@
GNULIB_CONNECT = @GNULIB_CONNECT@
+GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
GNULIB_CTIME = @GNULIB_CTIME@
GNULIB_DIRFD = @GNULIB_DIRFD@
GNULIB_DPRINTF = @GNULIB_DPRINTF@
@@ -772,6 +774,7 @@ GNULIB_STRSIGNAL = @GNULIB_STRSIGNAL@
GNULIB_STRSTR = @GNULIB_STRSTR@
GNULIB_STRTOD = @GNULIB_STRTOD@
GNULIB_STRTOK_R = @GNULIB_STRTOK_R@
+GNULIB_STRTOLD = @GNULIB_STRTOLD@
GNULIB_STRTOLL = @GNULIB_STRTOLL@
GNULIB_STRTOULL = @GNULIB_STRTOULL@
GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@
@@ -846,6 +849,7 @@ GNULIB_WRITE = @GNULIB_WRITE@
GNULIB__EXIT = @GNULIB__EXIT@
GREP = @GREP@
HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
HAVE_ALPHASORT = @HAVE_ALPHASORT@
HAVE_ATOLL = @HAVE_ATOLL@
HAVE_BTOWC = @HAVE_BTOWC@
@@ -853,6 +857,7 @@ HAVE_C99_STDINT_H = @HAVE_C99_STDINT_H@
HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
HAVE_CHOWN = @HAVE_CHOWN@
HAVE_CLOSEDIR = @HAVE_CLOSEDIR@
+HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@
HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
@@ -934,6 +939,7 @@ HAVE_GLOB_H = @HAVE_GLOB_H@
HAVE_GLOB_PATTERN_P = @HAVE_GLOB_PATTERN_P@
HAVE_GRANTPT = @HAVE_GRANTPT@
HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
+HAVE_INITSTATE = @HAVE_INITSTATE@
HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
HAVE_ISWBLANK = @HAVE_ISWBLANK@
HAVE_ISWCNTRL = @HAVE_ISWCNTRL@
@@ -956,6 +962,7 @@ HAVE_MBSINIT = @HAVE_MBSINIT@
HAVE_MBSLEN = @HAVE_MBSLEN@
HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
+HAVE_MBTOWC = @HAVE_MBTOWC@
HAVE_MEMCHR = @HAVE_MEMCHR@
HAVE_MEMPCPY = @HAVE_MEMPCPY@
HAVE_MKDIRAT = @HAVE_MKDIRAT@
@@ -1006,6 +1013,7 @@ HAVE_SCANDIR = @HAVE_SCANDIR@
HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
HAVE_SETENV = @HAVE_SETENV@
HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
+HAVE_SETSTATE = @HAVE_SETSTATE@
HAVE_SIGACTION = @HAVE_SIGACTION@
HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
@@ -1025,6 +1033,7 @@ HAVE_STRPBRK = @HAVE_STRPBRK@
HAVE_STRPTIME = @HAVE_STRPTIME@
HAVE_STRSEP = @HAVE_STRSEP@
HAVE_STRTOD = @HAVE_STRTOD@
+HAVE_STRTOLD = @HAVE_STRTOLD@
HAVE_STRTOLL = @HAVE_STRTOLL@
HAVE_STRTOULL = @HAVE_STRTOULL@
HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@
@@ -1125,8 +1134,6 @@ LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBMULTITHREAD = @LIBMULTITHREAD@
LIBOBJS = @LIBOBJS@
-LIBPTH = @LIBPTH@
-LIBPTH_PREFIX = @LIBPTH_PREFIX@
LIBS = @LIBS@
LIBSOCKET = @LIBSOCKET@
LIBTHREAD = @LIBTHREAD@
@@ -1149,7 +1156,6 @@ LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBMULTITHREAD = @LTLIBMULTITHREAD@
LTLIBOBJS = @LTLIBOBJS@
-LTLIBPTH = @LTLIBPTH@
LTLIBTHREAD = @LTLIBTHREAD@
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
MAINT = @MAINT@
@@ -1295,6 +1301,7 @@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
REPLACE_GLOB = @REPLACE_GLOB@
REPLACE_GLOB_PATTERN_P = @REPLACE_GLOB_PATTERN_P@
REPLACE_GMTIME = @REPLACE_GMTIME@
+REPLACE_INITSTATE = @REPLACE_INITSTATE@
REPLACE_IOCTL = @REPLACE_IOCTL@
REPLACE_ISATTY = @REPLACE_ISATTY@
REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
@@ -1343,6 +1350,7 @@ REPLACE_PUTENV = @REPLACE_PUTENV@
REPLACE_PWRITE = @REPLACE_PWRITE@
REPLACE_QSORT_R = @REPLACE_QSORT_R@
REPLACE_RAISE = @REPLACE_RAISE@
+REPLACE_RANDOM = @REPLACE_RANDOM@
REPLACE_RANDOM_R = @REPLACE_RANDOM_R@
REPLACE_READ = @REPLACE_READ@
REPLACE_READLINK = @REPLACE_READLINK@
@@ -1356,6 +1364,7 @@ REPLACE_RMDIR = @REPLACE_RMDIR@
REPLACE_SELECT = @REPLACE_SELECT@
REPLACE_SETENV = @REPLACE_SETENV@
REPLACE_SETLOCALE = @REPLACE_SETLOCALE@
+REPLACE_SETSTATE = @REPLACE_SETSTATE@
REPLACE_SLEEP = @REPLACE_SLEEP@
REPLACE_SNPRINTF = @REPLACE_SNPRINTF@
REPLACE_SPRINTF = @REPLACE_SPRINTF@
@@ -1376,6 +1385,7 @@ REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@
REPLACE_STRSTR = @REPLACE_STRSTR@
REPLACE_STRTOD = @REPLACE_STRTOD@
REPLACE_STRTOK_R = @REPLACE_STRTOK_R@
+REPLACE_STRTOLD = @REPLACE_STRTOLD@
REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@
REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@
REPLACE_SYMLINK = @REPLACE_SYMLINK@
diff --git a/man/nl/Makefile.in b/man/nl/Makefile.in
index 4bfca634..33f9edba 100644
--- a/man/nl/Makefile.in
+++ b/man/nl/Makefile.in
@@ -182,6 +182,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/man-arg-automatic-create.m4 \
$(top_srcdir)/gl/m4/ltversion.m4 \
$(top_srcdir)/gl/m4/lt~obsolete.m4 \
$(top_srcdir)/gl/m4/malloc.m4 $(top_srcdir)/gl/m4/malloca.m4 \
+ $(top_srcdir)/gl/m4/manywarnings.m4 \
$(top_srcdir)/gl/m4/mbrtowc.m4 $(top_srcdir)/gl/m4/mbsinit.m4 \
$(top_srcdir)/gl/m4/mbsrtowcs.m4 \
$(top_srcdir)/gl/m4/mbstate_t.m4 $(top_srcdir)/gl/m4/mbtowc.m4 \
@@ -565,6 +566,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
GNULIB_CLOSE = @GNULIB_CLOSE@
GNULIB_CLOSEDIR = @GNULIB_CLOSEDIR@
GNULIB_CONNECT = @GNULIB_CONNECT@
+GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
GNULIB_CTIME = @GNULIB_CTIME@
GNULIB_DIRFD = @GNULIB_DIRFD@
GNULIB_DPRINTF = @GNULIB_DPRINTF@
@@ -772,6 +774,7 @@ GNULIB_STRSIGNAL = @GNULIB_STRSIGNAL@
GNULIB_STRSTR = @GNULIB_STRSTR@
GNULIB_STRTOD = @GNULIB_STRTOD@
GNULIB_STRTOK_R = @GNULIB_STRTOK_R@
+GNULIB_STRTOLD = @GNULIB_STRTOLD@
GNULIB_STRTOLL = @GNULIB_STRTOLL@
GNULIB_STRTOULL = @GNULIB_STRTOULL@
GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@
@@ -846,6 +849,7 @@ GNULIB_WRITE = @GNULIB_WRITE@
GNULIB__EXIT = @GNULIB__EXIT@
GREP = @GREP@
HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
HAVE_ALPHASORT = @HAVE_ALPHASORT@
HAVE_ATOLL = @HAVE_ATOLL@
HAVE_BTOWC = @HAVE_BTOWC@
@@ -853,6 +857,7 @@ HAVE_C99_STDINT_H = @HAVE_C99_STDINT_H@
HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
HAVE_CHOWN = @HAVE_CHOWN@
HAVE_CLOSEDIR = @HAVE_CLOSEDIR@
+HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@
HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
@@ -934,6 +939,7 @@ HAVE_GLOB_H = @HAVE_GLOB_H@
HAVE_GLOB_PATTERN_P = @HAVE_GLOB_PATTERN_P@
HAVE_GRANTPT = @HAVE_GRANTPT@
HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
+HAVE_INITSTATE = @HAVE_INITSTATE@
HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
HAVE_ISWBLANK = @HAVE_ISWBLANK@
HAVE_ISWCNTRL = @HAVE_ISWCNTRL@
@@ -956,6 +962,7 @@ HAVE_MBSINIT = @HAVE_MBSINIT@
HAVE_MBSLEN = @HAVE_MBSLEN@
HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
+HAVE_MBTOWC = @HAVE_MBTOWC@
HAVE_MEMCHR = @HAVE_MEMCHR@
HAVE_MEMPCPY = @HAVE_MEMPCPY@
HAVE_MKDIRAT = @HAVE_MKDIRAT@
@@ -1006,6 +1013,7 @@ HAVE_SCANDIR = @HAVE_SCANDIR@
HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
HAVE_SETENV = @HAVE_SETENV@
HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
+HAVE_SETSTATE = @HAVE_SETSTATE@
HAVE_SIGACTION = @HAVE_SIGACTION@
HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
@@ -1025,6 +1033,7 @@ HAVE_STRPBRK = @HAVE_STRPBRK@
HAVE_STRPTIME = @HAVE_STRPTIME@
HAVE_STRSEP = @HAVE_STRSEP@
HAVE_STRTOD = @HAVE_STRTOD@
+HAVE_STRTOLD = @HAVE_STRTOLD@
HAVE_STRTOLL = @HAVE_STRTOLL@
HAVE_STRTOULL = @HAVE_STRTOULL@
HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@
@@ -1125,8 +1134,6 @@ LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBMULTITHREAD = @LIBMULTITHREAD@
LIBOBJS = @LIBOBJS@
-LIBPTH = @LIBPTH@
-LIBPTH_PREFIX = @LIBPTH_PREFIX@
LIBS = @LIBS@
LIBSOCKET = @LIBSOCKET@
LIBTHREAD = @LIBTHREAD@
@@ -1149,7 +1156,6 @@ LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBMULTITHREAD = @LTLIBMULTITHREAD@
LTLIBOBJS = @LTLIBOBJS@
-LTLIBPTH = @LTLIBPTH@
LTLIBTHREAD = @LTLIBTHREAD@
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
MAINT = @MAINT@
@@ -1295,6 +1301,7 @@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
REPLACE_GLOB = @REPLACE_GLOB@
REPLACE_GLOB_PATTERN_P = @REPLACE_GLOB_PATTERN_P@
REPLACE_GMTIME = @REPLACE_GMTIME@
+REPLACE_INITSTATE = @REPLACE_INITSTATE@
REPLACE_IOCTL = @REPLACE_IOCTL@
REPLACE_ISATTY = @REPLACE_ISATTY@
REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
@@ -1343,6 +1350,7 @@ REPLACE_PUTENV = @REPLACE_PUTENV@
REPLACE_PWRITE = @REPLACE_PWRITE@
REPLACE_QSORT_R = @REPLACE_QSORT_R@
REPLACE_RAISE = @REPLACE_RAISE@
+REPLACE_RANDOM = @REPLACE_RANDOM@
REPLACE_RANDOM_R = @REPLACE_RANDOM_R@
REPLACE_READ = @REPLACE_READ@
REPLACE_READLINK = @REPLACE_READLINK@
@@ -1356,6 +1364,7 @@ REPLACE_RMDIR = @REPLACE_RMDIR@
REPLACE_SELECT = @REPLACE_SELECT@
REPLACE_SETENV = @REPLACE_SETENV@
REPLACE_SETLOCALE = @REPLACE_SETLOCALE@
+REPLACE_SETSTATE = @REPLACE_SETSTATE@
REPLACE_SLEEP = @REPLACE_SLEEP@
REPLACE_SNPRINTF = @REPLACE_SNPRINTF@
REPLACE_SPRINTF = @REPLACE_SPRINTF@
@@ -1376,6 +1385,7 @@ REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@
REPLACE_STRSTR = @REPLACE_STRSTR@
REPLACE_STRTOD = @REPLACE_STRTOD@
REPLACE_STRTOK_R = @REPLACE_STRTOK_R@
+REPLACE_STRTOLD = @REPLACE_STRTOLD@
REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@
REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@
REPLACE_SYMLINK = @REPLACE_SYMLINK@
diff --git a/man/pl/Makefile.in b/man/pl/Makefile.in
index 34425142..aa99daea 100644
--- a/man/pl/Makefile.in
+++ b/man/pl/Makefile.in
@@ -182,6 +182,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/man-arg-automatic-create.m4 \
$(top_srcdir)/gl/m4/ltversion.m4 \
$(top_srcdir)/gl/m4/lt~obsolete.m4 \
$(top_srcdir)/gl/m4/malloc.m4 $(top_srcdir)/gl/m4/malloca.m4 \
+ $(top_srcdir)/gl/m4/manywarnings.m4 \
$(top_srcdir)/gl/m4/mbrtowc.m4 $(top_srcdir)/gl/m4/mbsinit.m4 \
$(top_srcdir)/gl/m4/mbsrtowcs.m4 \
$(top_srcdir)/gl/m4/mbstate_t.m4 $(top_srcdir)/gl/m4/mbtowc.m4 \
@@ -565,6 +566,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
GNULIB_CLOSE = @GNULIB_CLOSE@
GNULIB_CLOSEDIR = @GNULIB_CLOSEDIR@
GNULIB_CONNECT = @GNULIB_CONNECT@
+GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
GNULIB_CTIME = @GNULIB_CTIME@
GNULIB_DIRFD = @GNULIB_DIRFD@
GNULIB_DPRINTF = @GNULIB_DPRINTF@
@@ -772,6 +774,7 @@ GNULIB_STRSIGNAL = @GNULIB_STRSIGNAL@
GNULIB_STRSTR = @GNULIB_STRSTR@
GNULIB_STRTOD = @GNULIB_STRTOD@
GNULIB_STRTOK_R = @GNULIB_STRTOK_R@
+GNULIB_STRTOLD = @GNULIB_STRTOLD@
GNULIB_STRTOLL = @GNULIB_STRTOLL@
GNULIB_STRTOULL = @GNULIB_STRTOULL@
GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@
@@ -846,6 +849,7 @@ GNULIB_WRITE = @GNULIB_WRITE@
GNULIB__EXIT = @GNULIB__EXIT@
GREP = @GREP@
HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
HAVE_ALPHASORT = @HAVE_ALPHASORT@
HAVE_ATOLL = @HAVE_ATOLL@
HAVE_BTOWC = @HAVE_BTOWC@
@@ -853,6 +857,7 @@ HAVE_C99_STDINT_H = @HAVE_C99_STDINT_H@
HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
HAVE_CHOWN = @HAVE_CHOWN@
HAVE_CLOSEDIR = @HAVE_CLOSEDIR@
+HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@
HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
@@ -934,6 +939,7 @@ HAVE_GLOB_H = @HAVE_GLOB_H@
HAVE_GLOB_PATTERN_P = @HAVE_GLOB_PATTERN_P@
HAVE_GRANTPT = @HAVE_GRANTPT@
HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
+HAVE_INITSTATE = @HAVE_INITSTATE@
HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
HAVE_ISWBLANK = @HAVE_ISWBLANK@
HAVE_ISWCNTRL = @HAVE_ISWCNTRL@
@@ -956,6 +962,7 @@ HAVE_MBSINIT = @HAVE_MBSINIT@
HAVE_MBSLEN = @HAVE_MBSLEN@
HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
+HAVE_MBTOWC = @HAVE_MBTOWC@
HAVE_MEMCHR = @HAVE_MEMCHR@
HAVE_MEMPCPY = @HAVE_MEMPCPY@
HAVE_MKDIRAT = @HAVE_MKDIRAT@
@@ -1006,6 +1013,7 @@ HAVE_SCANDIR = @HAVE_SCANDIR@
HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
HAVE_SETENV = @HAVE_SETENV@
HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
+HAVE_SETSTATE = @HAVE_SETSTATE@
HAVE_SIGACTION = @HAVE_SIGACTION@
HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
@@ -1025,6 +1033,7 @@ HAVE_STRPBRK = @HAVE_STRPBRK@
HAVE_STRPTIME = @HAVE_STRPTIME@
HAVE_STRSEP = @HAVE_STRSEP@
HAVE_STRTOD = @HAVE_STRTOD@
+HAVE_STRTOLD = @HAVE_STRTOLD@
HAVE_STRTOLL = @HAVE_STRTOLL@
HAVE_STRTOULL = @HAVE_STRTOULL@
HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@
@@ -1125,8 +1134,6 @@ LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBMULTITHREAD = @LIBMULTITHREAD@
LIBOBJS = @LIBOBJS@
-LIBPTH = @LIBPTH@
-LIBPTH_PREFIX = @LIBPTH_PREFIX@
LIBS = @LIBS@
LIBSOCKET = @LIBSOCKET@
LIBTHREAD = @LIBTHREAD@
@@ -1149,7 +1156,6 @@ LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBMULTITHREAD = @LTLIBMULTITHREAD@
LTLIBOBJS = @LTLIBOBJS@
-LTLIBPTH = @LTLIBPTH@
LTLIBTHREAD = @LTLIBTHREAD@
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
MAINT = @MAINT@
@@ -1295,6 +1301,7 @@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
REPLACE_GLOB = @REPLACE_GLOB@
REPLACE_GLOB_PATTERN_P = @REPLACE_GLOB_PATTERN_P@
REPLACE_GMTIME = @REPLACE_GMTIME@
+REPLACE_INITSTATE = @REPLACE_INITSTATE@
REPLACE_IOCTL = @REPLACE_IOCTL@
REPLACE_ISATTY = @REPLACE_ISATTY@
REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
@@ -1343,6 +1350,7 @@ REPLACE_PUTENV = @REPLACE_PUTENV@
REPLACE_PWRITE = @REPLACE_PWRITE@
REPLACE_QSORT_R = @REPLACE_QSORT_R@
REPLACE_RAISE = @REPLACE_RAISE@
+REPLACE_RANDOM = @REPLACE_RANDOM@
REPLACE_RANDOM_R = @REPLACE_RANDOM_R@
REPLACE_READ = @REPLACE_READ@
REPLACE_READLINK = @REPLACE_READLINK@
@@ -1356,6 +1364,7 @@ REPLACE_RMDIR = @REPLACE_RMDIR@
REPLACE_SELECT = @REPLACE_SELECT@
REPLACE_SETENV = @REPLACE_SETENV@
REPLACE_SETLOCALE = @REPLACE_SETLOCALE@
+REPLACE_SETSTATE = @REPLACE_SETSTATE@
REPLACE_SLEEP = @REPLACE_SLEEP@
REPLACE_SNPRINTF = @REPLACE_SNPRINTF@
REPLACE_SPRINTF = @REPLACE_SPRINTF@
@@ -1376,6 +1385,7 @@ REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@
REPLACE_STRSTR = @REPLACE_STRSTR@
REPLACE_STRTOD = @REPLACE_STRTOD@
REPLACE_STRTOK_R = @REPLACE_STRTOK_R@
+REPLACE_STRTOLD = @REPLACE_STRTOLD@
REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@
REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@
REPLACE_SYMLINK = @REPLACE_SYMLINK@
diff --git a/man/po4a/Makefile.in b/man/po4a/Makefile.in
index 193bee6c..ed8cec78 100644
--- a/man/po4a/Makefile.in
+++ b/man/po4a/Makefile.in
@@ -182,6 +182,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/man-arg-automatic-create.m4 \
$(top_srcdir)/gl/m4/ltversion.m4 \
$(top_srcdir)/gl/m4/lt~obsolete.m4 \
$(top_srcdir)/gl/m4/malloc.m4 $(top_srcdir)/gl/m4/malloca.m4 \
+ $(top_srcdir)/gl/m4/manywarnings.m4 \
$(top_srcdir)/gl/m4/mbrtowc.m4 $(top_srcdir)/gl/m4/mbsinit.m4 \
$(top_srcdir)/gl/m4/mbsrtowcs.m4 \
$(top_srcdir)/gl/m4/mbstate_t.m4 $(top_srcdir)/gl/m4/mbtowc.m4 \
@@ -352,6 +353,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
GNULIB_CLOSE = @GNULIB_CLOSE@
GNULIB_CLOSEDIR = @GNULIB_CLOSEDIR@
GNULIB_CONNECT = @GNULIB_CONNECT@
+GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
GNULIB_CTIME = @GNULIB_CTIME@
GNULIB_DIRFD = @GNULIB_DIRFD@
GNULIB_DPRINTF = @GNULIB_DPRINTF@
@@ -559,6 +561,7 @@ GNULIB_STRSIGNAL = @GNULIB_STRSIGNAL@
GNULIB_STRSTR = @GNULIB_STRSTR@
GNULIB_STRTOD = @GNULIB_STRTOD@
GNULIB_STRTOK_R = @GNULIB_STRTOK_R@
+GNULIB_STRTOLD = @GNULIB_STRTOLD@
GNULIB_STRTOLL = @GNULIB_STRTOLL@
GNULIB_STRTOULL = @GNULIB_STRTOULL@
GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@
@@ -633,6 +636,7 @@ GNULIB_WRITE = @GNULIB_WRITE@
GNULIB__EXIT = @GNULIB__EXIT@
GREP = @GREP@
HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
HAVE_ALPHASORT = @HAVE_ALPHASORT@
HAVE_ATOLL = @HAVE_ATOLL@
HAVE_BTOWC = @HAVE_BTOWC@
@@ -640,6 +644,7 @@ HAVE_C99_STDINT_H = @HAVE_C99_STDINT_H@
HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
HAVE_CHOWN = @HAVE_CHOWN@
HAVE_CLOSEDIR = @HAVE_CLOSEDIR@
+HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@
HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
@@ -721,6 +726,7 @@ HAVE_GLOB_H = @HAVE_GLOB_H@
HAVE_GLOB_PATTERN_P = @HAVE_GLOB_PATTERN_P@
HAVE_GRANTPT = @HAVE_GRANTPT@
HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
+HAVE_INITSTATE = @HAVE_INITSTATE@
HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
HAVE_ISWBLANK = @HAVE_ISWBLANK@
HAVE_ISWCNTRL = @HAVE_ISWCNTRL@
@@ -743,6 +749,7 @@ HAVE_MBSINIT = @HAVE_MBSINIT@
HAVE_MBSLEN = @HAVE_MBSLEN@
HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
+HAVE_MBTOWC = @HAVE_MBTOWC@
HAVE_MEMCHR = @HAVE_MEMCHR@
HAVE_MEMPCPY = @HAVE_MEMPCPY@
HAVE_MKDIRAT = @HAVE_MKDIRAT@
@@ -793,6 +800,7 @@ HAVE_SCANDIR = @HAVE_SCANDIR@
HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
HAVE_SETENV = @HAVE_SETENV@
HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
+HAVE_SETSTATE = @HAVE_SETSTATE@
HAVE_SIGACTION = @HAVE_SIGACTION@
HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
@@ -812,6 +820,7 @@ HAVE_STRPBRK = @HAVE_STRPBRK@
HAVE_STRPTIME = @HAVE_STRPTIME@
HAVE_STRSEP = @HAVE_STRSEP@
HAVE_STRTOD = @HAVE_STRTOD@
+HAVE_STRTOLD = @HAVE_STRTOLD@
HAVE_STRTOLL = @HAVE_STRTOLL@
HAVE_STRTOULL = @HAVE_STRTOULL@
HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@
@@ -912,8 +921,6 @@ LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBMULTITHREAD = @LIBMULTITHREAD@
LIBOBJS = @LIBOBJS@
-LIBPTH = @LIBPTH@
-LIBPTH_PREFIX = @LIBPTH_PREFIX@
LIBS = @LIBS@
LIBSOCKET = @LIBSOCKET@
LIBTHREAD = @LIBTHREAD@
@@ -936,7 +943,6 @@ LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBMULTITHREAD = @LTLIBMULTITHREAD@
LTLIBOBJS = @LTLIBOBJS@
-LTLIBPTH = @LTLIBPTH@
LTLIBTHREAD = @LTLIBTHREAD@
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
MAINT = @MAINT@
@@ -1082,6 +1088,7 @@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
REPLACE_GLOB = @REPLACE_GLOB@
REPLACE_GLOB_PATTERN_P = @REPLACE_GLOB_PATTERN_P@
REPLACE_GMTIME = @REPLACE_GMTIME@
+REPLACE_INITSTATE = @REPLACE_INITSTATE@
REPLACE_IOCTL = @REPLACE_IOCTL@
REPLACE_ISATTY = @REPLACE_ISATTY@
REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
@@ -1130,6 +1137,7 @@ REPLACE_PUTENV = @REPLACE_PUTENV@
REPLACE_PWRITE = @REPLACE_PWRITE@
REPLACE_QSORT_R = @REPLACE_QSORT_R@
REPLACE_RAISE = @REPLACE_RAISE@
+REPLACE_RANDOM = @REPLACE_RANDOM@
REPLACE_RANDOM_R = @REPLACE_RANDOM_R@
REPLACE_READ = @REPLACE_READ@
REPLACE_READLINK = @REPLACE_READLINK@
@@ -1143,6 +1151,7 @@ REPLACE_RMDIR = @REPLACE_RMDIR@
REPLACE_SELECT = @REPLACE_SELECT@
REPLACE_SETENV = @REPLACE_SETENV@
REPLACE_SETLOCALE = @REPLACE_SETLOCALE@
+REPLACE_SETSTATE = @REPLACE_SETSTATE@
REPLACE_SLEEP = @REPLACE_SLEEP@
REPLACE_SNPRINTF = @REPLACE_SNPRINTF@
REPLACE_SPRINTF = @REPLACE_SPRINTF@
@@ -1163,6 +1172,7 @@ REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@
REPLACE_STRSTR = @REPLACE_STRSTR@
REPLACE_STRTOD = @REPLACE_STRTOD@
REPLACE_STRTOK_R = @REPLACE_STRTOK_R@
+REPLACE_STRTOLD = @REPLACE_STRTOLD@
REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@
REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@
REPLACE_SYMLINK = @REPLACE_SYMLINK@
diff --git a/man/pt/Makefile.in b/man/pt/Makefile.in
index 2af73274..102625e3 100644
--- a/man/pt/Makefile.in
+++ b/man/pt/Makefile.in
@@ -182,6 +182,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/man-arg-automatic-create.m4 \
$(top_srcdir)/gl/m4/ltversion.m4 \
$(top_srcdir)/gl/m4/lt~obsolete.m4 \
$(top_srcdir)/gl/m4/malloc.m4 $(top_srcdir)/gl/m4/malloca.m4 \
+ $(top_srcdir)/gl/m4/manywarnings.m4 \
$(top_srcdir)/gl/m4/mbrtowc.m4 $(top_srcdir)/gl/m4/mbsinit.m4 \
$(top_srcdir)/gl/m4/mbsrtowcs.m4 \
$(top_srcdir)/gl/m4/mbstate_t.m4 $(top_srcdir)/gl/m4/mbtowc.m4 \
@@ -565,6 +566,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
GNULIB_CLOSE = @GNULIB_CLOSE@
GNULIB_CLOSEDIR = @GNULIB_CLOSEDIR@
GNULIB_CONNECT = @GNULIB_CONNECT@
+GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
GNULIB_CTIME = @GNULIB_CTIME@
GNULIB_DIRFD = @GNULIB_DIRFD@
GNULIB_DPRINTF = @GNULIB_DPRINTF@
@@ -772,6 +774,7 @@ GNULIB_STRSIGNAL = @GNULIB_STRSIGNAL@
GNULIB_STRSTR = @GNULIB_STRSTR@
GNULIB_STRTOD = @GNULIB_STRTOD@
GNULIB_STRTOK_R = @GNULIB_STRTOK_R@
+GNULIB_STRTOLD = @GNULIB_STRTOLD@
GNULIB_STRTOLL = @GNULIB_STRTOLL@
GNULIB_STRTOULL = @GNULIB_STRTOULL@
GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@
@@ -846,6 +849,7 @@ GNULIB_WRITE = @GNULIB_WRITE@
GNULIB__EXIT = @GNULIB__EXIT@
GREP = @GREP@
HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
HAVE_ALPHASORT = @HAVE_ALPHASORT@
HAVE_ATOLL = @HAVE_ATOLL@
HAVE_BTOWC = @HAVE_BTOWC@
@@ -853,6 +857,7 @@ HAVE_C99_STDINT_H = @HAVE_C99_STDINT_H@
HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
HAVE_CHOWN = @HAVE_CHOWN@
HAVE_CLOSEDIR = @HAVE_CLOSEDIR@
+HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@
HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
@@ -934,6 +939,7 @@ HAVE_GLOB_H = @HAVE_GLOB_H@
HAVE_GLOB_PATTERN_P = @HAVE_GLOB_PATTERN_P@
HAVE_GRANTPT = @HAVE_GRANTPT@
HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
+HAVE_INITSTATE = @HAVE_INITSTATE@
HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
HAVE_ISWBLANK = @HAVE_ISWBLANK@
HAVE_ISWCNTRL = @HAVE_ISWCNTRL@
@@ -956,6 +962,7 @@ HAVE_MBSINIT = @HAVE_MBSINIT@
HAVE_MBSLEN = @HAVE_MBSLEN@
HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
+HAVE_MBTOWC = @HAVE_MBTOWC@
HAVE_MEMCHR = @HAVE_MEMCHR@
HAVE_MEMPCPY = @HAVE_MEMPCPY@
HAVE_MKDIRAT = @HAVE_MKDIRAT@
@@ -1006,6 +1013,7 @@ HAVE_SCANDIR = @HAVE_SCANDIR@
HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
HAVE_SETENV = @HAVE_SETENV@
HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
+HAVE_SETSTATE = @HAVE_SETSTATE@
HAVE_SIGACTION = @HAVE_SIGACTION@
HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
@@ -1025,6 +1033,7 @@ HAVE_STRPBRK = @HAVE_STRPBRK@
HAVE_STRPTIME = @HAVE_STRPTIME@
HAVE_STRSEP = @HAVE_STRSEP@
HAVE_STRTOD = @HAVE_STRTOD@
+HAVE_STRTOLD = @HAVE_STRTOLD@
HAVE_STRTOLL = @HAVE_STRTOLL@
HAVE_STRTOULL = @HAVE_STRTOULL@
HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@
@@ -1125,8 +1134,6 @@ LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBMULTITHREAD = @LIBMULTITHREAD@
LIBOBJS = @LIBOBJS@
-LIBPTH = @LIBPTH@
-LIBPTH_PREFIX = @LIBPTH_PREFIX@
LIBS = @LIBS@
LIBSOCKET = @LIBSOCKET@
LIBTHREAD = @LIBTHREAD@
@@ -1149,7 +1156,6 @@ LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBMULTITHREAD = @LTLIBMULTITHREAD@
LTLIBOBJS = @LTLIBOBJS@
-LTLIBPTH = @LTLIBPTH@
LTLIBTHREAD = @LTLIBTHREAD@
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
MAINT = @MAINT@
@@ -1295,6 +1301,7 @@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
REPLACE_GLOB = @REPLACE_GLOB@
REPLACE_GLOB_PATTERN_P = @REPLACE_GLOB_PATTERN_P@
REPLACE_GMTIME = @REPLACE_GMTIME@
+REPLACE_INITSTATE = @REPLACE_INITSTATE@
REPLACE_IOCTL = @REPLACE_IOCTL@
REPLACE_ISATTY = @REPLACE_ISATTY@
REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
@@ -1343,6 +1350,7 @@ REPLACE_PUTENV = @REPLACE_PUTENV@
REPLACE_PWRITE = @REPLACE_PWRITE@
REPLACE_QSORT_R = @REPLACE_QSORT_R@
REPLACE_RAISE = @REPLACE_RAISE@
+REPLACE_RANDOM = @REPLACE_RANDOM@
REPLACE_RANDOM_R = @REPLACE_RANDOM_R@
REPLACE_READ = @REPLACE_READ@
REPLACE_READLINK = @REPLACE_READLINK@
@@ -1356,6 +1364,7 @@ REPLACE_RMDIR = @REPLACE_RMDIR@
REPLACE_SELECT = @REPLACE_SELECT@
REPLACE_SETENV = @REPLACE_SETENV@
REPLACE_SETLOCALE = @REPLACE_SETLOCALE@
+REPLACE_SETSTATE = @REPLACE_SETSTATE@
REPLACE_SLEEP = @REPLACE_SLEEP@
REPLACE_SNPRINTF = @REPLACE_SNPRINTF@
REPLACE_SPRINTF = @REPLACE_SPRINTF@
@@ -1376,6 +1385,7 @@ REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@
REPLACE_STRSTR = @REPLACE_STRSTR@
REPLACE_STRTOD = @REPLACE_STRTOD@
REPLACE_STRTOK_R = @REPLACE_STRTOK_R@
+REPLACE_STRTOLD = @REPLACE_STRTOLD@
REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@
REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@
REPLACE_SYMLINK = @REPLACE_SYMLINK@
diff --git a/man/pt_BR/Makefile.in b/man/pt_BR/Makefile.in
index 44d8c65a..70e72ddb 100644
--- a/man/pt_BR/Makefile.in
+++ b/man/pt_BR/Makefile.in
@@ -182,6 +182,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/man-arg-automatic-create.m4 \
$(top_srcdir)/gl/m4/ltversion.m4 \
$(top_srcdir)/gl/m4/lt~obsolete.m4 \
$(top_srcdir)/gl/m4/malloc.m4 $(top_srcdir)/gl/m4/malloca.m4 \
+ $(top_srcdir)/gl/m4/manywarnings.m4 \
$(top_srcdir)/gl/m4/mbrtowc.m4 $(top_srcdir)/gl/m4/mbsinit.m4 \
$(top_srcdir)/gl/m4/mbsrtowcs.m4 \
$(top_srcdir)/gl/m4/mbstate_t.m4 $(top_srcdir)/gl/m4/mbtowc.m4 \
@@ -565,6 +566,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
GNULIB_CLOSE = @GNULIB_CLOSE@
GNULIB_CLOSEDIR = @GNULIB_CLOSEDIR@
GNULIB_CONNECT = @GNULIB_CONNECT@
+GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
GNULIB_CTIME = @GNULIB_CTIME@
GNULIB_DIRFD = @GNULIB_DIRFD@
GNULIB_DPRINTF = @GNULIB_DPRINTF@
@@ -772,6 +774,7 @@ GNULIB_STRSIGNAL = @GNULIB_STRSIGNAL@
GNULIB_STRSTR = @GNULIB_STRSTR@
GNULIB_STRTOD = @GNULIB_STRTOD@
GNULIB_STRTOK_R = @GNULIB_STRTOK_R@
+GNULIB_STRTOLD = @GNULIB_STRTOLD@
GNULIB_STRTOLL = @GNULIB_STRTOLL@
GNULIB_STRTOULL = @GNULIB_STRTOULL@
GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@
@@ -846,6 +849,7 @@ GNULIB_WRITE = @GNULIB_WRITE@
GNULIB__EXIT = @GNULIB__EXIT@
GREP = @GREP@
HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
HAVE_ALPHASORT = @HAVE_ALPHASORT@
HAVE_ATOLL = @HAVE_ATOLL@
HAVE_BTOWC = @HAVE_BTOWC@
@@ -853,6 +857,7 @@ HAVE_C99_STDINT_H = @HAVE_C99_STDINT_H@
HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
HAVE_CHOWN = @HAVE_CHOWN@
HAVE_CLOSEDIR = @HAVE_CLOSEDIR@
+HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@
HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
@@ -934,6 +939,7 @@ HAVE_GLOB_H = @HAVE_GLOB_H@
HAVE_GLOB_PATTERN_P = @HAVE_GLOB_PATTERN_P@
HAVE_GRANTPT = @HAVE_GRANTPT@
HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
+HAVE_INITSTATE = @HAVE_INITSTATE@
HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
HAVE_ISWBLANK = @HAVE_ISWBLANK@
HAVE_ISWCNTRL = @HAVE_ISWCNTRL@
@@ -956,6 +962,7 @@ HAVE_MBSINIT = @HAVE_MBSINIT@
HAVE_MBSLEN = @HAVE_MBSLEN@
HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
+HAVE_MBTOWC = @HAVE_MBTOWC@
HAVE_MEMCHR = @HAVE_MEMCHR@
HAVE_MEMPCPY = @HAVE_MEMPCPY@
HAVE_MKDIRAT = @HAVE_MKDIRAT@
@@ -1006,6 +1013,7 @@ HAVE_SCANDIR = @HAVE_SCANDIR@
HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
HAVE_SETENV = @HAVE_SETENV@
HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
+HAVE_SETSTATE = @HAVE_SETSTATE@
HAVE_SIGACTION = @HAVE_SIGACTION@
HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
@@ -1025,6 +1033,7 @@ HAVE_STRPBRK = @HAVE_STRPBRK@
HAVE_STRPTIME = @HAVE_STRPTIME@
HAVE_STRSEP = @HAVE_STRSEP@
HAVE_STRTOD = @HAVE_STRTOD@
+HAVE_STRTOLD = @HAVE_STRTOLD@
HAVE_STRTOLL = @HAVE_STRTOLL@
HAVE_STRTOULL = @HAVE_STRTOULL@
HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@
@@ -1125,8 +1134,6 @@ LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBMULTITHREAD = @LIBMULTITHREAD@
LIBOBJS = @LIBOBJS@
-LIBPTH = @LIBPTH@
-LIBPTH_PREFIX = @LIBPTH_PREFIX@
LIBS = @LIBS@
LIBSOCKET = @LIBSOCKET@
LIBTHREAD = @LIBTHREAD@
@@ -1149,7 +1156,6 @@ LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBMULTITHREAD = @LTLIBMULTITHREAD@
LTLIBOBJS = @LTLIBOBJS@
-LTLIBPTH = @LTLIBPTH@
LTLIBTHREAD = @LTLIBTHREAD@
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
MAINT = @MAINT@
@@ -1295,6 +1301,7 @@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
REPLACE_GLOB = @REPLACE_GLOB@
REPLACE_GLOB_PATTERN_P = @REPLACE_GLOB_PATTERN_P@
REPLACE_GMTIME = @REPLACE_GMTIME@
+REPLACE_INITSTATE = @REPLACE_INITSTATE@
REPLACE_IOCTL = @REPLACE_IOCTL@
REPLACE_ISATTY = @REPLACE_ISATTY@
REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
@@ -1343,6 +1350,7 @@ REPLACE_PUTENV = @REPLACE_PUTENV@
REPLACE_PWRITE = @REPLACE_PWRITE@
REPLACE_QSORT_R = @REPLACE_QSORT_R@
REPLACE_RAISE = @REPLACE_RAISE@
+REPLACE_RANDOM = @REPLACE_RANDOM@
REPLACE_RANDOM_R = @REPLACE_RANDOM_R@
REPLACE_READ = @REPLACE_READ@
REPLACE_READLINK = @REPLACE_READLINK@
@@ -1356,6 +1364,7 @@ REPLACE_RMDIR = @REPLACE_RMDIR@
REPLACE_SELECT = @REPLACE_SELECT@
REPLACE_SETENV = @REPLACE_SETENV@
REPLACE_SETLOCALE = @REPLACE_SETLOCALE@
+REPLACE_SETSTATE = @REPLACE_SETSTATE@
REPLACE_SLEEP = @REPLACE_SLEEP@
REPLACE_SNPRINTF = @REPLACE_SNPRINTF@
REPLACE_SPRINTF = @REPLACE_SPRINTF@
@@ -1376,6 +1385,7 @@ REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@
REPLACE_STRSTR = @REPLACE_STRSTR@
REPLACE_STRTOD = @REPLACE_STRTOD@
REPLACE_STRTOK_R = @REPLACE_STRTOK_R@
+REPLACE_STRTOLD = @REPLACE_STRTOLD@
REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@
REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@
REPLACE_SYMLINK = @REPLACE_SYMLINK@
diff --git a/man/ru/Makefile.in b/man/ru/Makefile.in
index 63f4cbc2..b210478b 100644
--- a/man/ru/Makefile.in
+++ b/man/ru/Makefile.in
@@ -182,6 +182,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/man-arg-automatic-create.m4 \
$(top_srcdir)/gl/m4/ltversion.m4 \
$(top_srcdir)/gl/m4/lt~obsolete.m4 \
$(top_srcdir)/gl/m4/malloc.m4 $(top_srcdir)/gl/m4/malloca.m4 \
+ $(top_srcdir)/gl/m4/manywarnings.m4 \
$(top_srcdir)/gl/m4/mbrtowc.m4 $(top_srcdir)/gl/m4/mbsinit.m4 \
$(top_srcdir)/gl/m4/mbsrtowcs.m4 \
$(top_srcdir)/gl/m4/mbstate_t.m4 $(top_srcdir)/gl/m4/mbtowc.m4 \
@@ -565,6 +566,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
GNULIB_CLOSE = @GNULIB_CLOSE@
GNULIB_CLOSEDIR = @GNULIB_CLOSEDIR@
GNULIB_CONNECT = @GNULIB_CONNECT@
+GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
GNULIB_CTIME = @GNULIB_CTIME@
GNULIB_DIRFD = @GNULIB_DIRFD@
GNULIB_DPRINTF = @GNULIB_DPRINTF@
@@ -772,6 +774,7 @@ GNULIB_STRSIGNAL = @GNULIB_STRSIGNAL@
GNULIB_STRSTR = @GNULIB_STRSTR@
GNULIB_STRTOD = @GNULIB_STRTOD@
GNULIB_STRTOK_R = @GNULIB_STRTOK_R@
+GNULIB_STRTOLD = @GNULIB_STRTOLD@
GNULIB_STRTOLL = @GNULIB_STRTOLL@
GNULIB_STRTOULL = @GNULIB_STRTOULL@
GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@
@@ -846,6 +849,7 @@ GNULIB_WRITE = @GNULIB_WRITE@
GNULIB__EXIT = @GNULIB__EXIT@
GREP = @GREP@
HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
HAVE_ALPHASORT = @HAVE_ALPHASORT@
HAVE_ATOLL = @HAVE_ATOLL@
HAVE_BTOWC = @HAVE_BTOWC@
@@ -853,6 +857,7 @@ HAVE_C99_STDINT_H = @HAVE_C99_STDINT_H@
HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
HAVE_CHOWN = @HAVE_CHOWN@
HAVE_CLOSEDIR = @HAVE_CLOSEDIR@
+HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@
HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
@@ -934,6 +939,7 @@ HAVE_GLOB_H = @HAVE_GLOB_H@
HAVE_GLOB_PATTERN_P = @HAVE_GLOB_PATTERN_P@
HAVE_GRANTPT = @HAVE_GRANTPT@
HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
+HAVE_INITSTATE = @HAVE_INITSTATE@
HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
HAVE_ISWBLANK = @HAVE_ISWBLANK@
HAVE_ISWCNTRL = @HAVE_ISWCNTRL@
@@ -956,6 +962,7 @@ HAVE_MBSINIT = @HAVE_MBSINIT@
HAVE_MBSLEN = @HAVE_MBSLEN@
HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
+HAVE_MBTOWC = @HAVE_MBTOWC@
HAVE_MEMCHR = @HAVE_MEMCHR@
HAVE_MEMPCPY = @HAVE_MEMPCPY@
HAVE_MKDIRAT = @HAVE_MKDIRAT@
@@ -1006,6 +1013,7 @@ HAVE_SCANDIR = @HAVE_SCANDIR@
HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
HAVE_SETENV = @HAVE_SETENV@
HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
+HAVE_SETSTATE = @HAVE_SETSTATE@
HAVE_SIGACTION = @HAVE_SIGACTION@
HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
@@ -1025,6 +1033,7 @@ HAVE_STRPBRK = @HAVE_STRPBRK@
HAVE_STRPTIME = @HAVE_STRPTIME@
HAVE_STRSEP = @HAVE_STRSEP@
HAVE_STRTOD = @HAVE_STRTOD@
+HAVE_STRTOLD = @HAVE_STRTOLD@
HAVE_STRTOLL = @HAVE_STRTOLL@
HAVE_STRTOULL = @HAVE_STRTOULL@
HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@
@@ -1125,8 +1134,6 @@ LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBMULTITHREAD = @LIBMULTITHREAD@
LIBOBJS = @LIBOBJS@
-LIBPTH = @LIBPTH@
-LIBPTH_PREFIX = @LIBPTH_PREFIX@
LIBS = @LIBS@
LIBSOCKET = @LIBSOCKET@
LIBTHREAD = @LIBTHREAD@
@@ -1149,7 +1156,6 @@ LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBMULTITHREAD = @LTLIBMULTITHREAD@
LTLIBOBJS = @LTLIBOBJS@
-LTLIBPTH = @LTLIBPTH@
LTLIBTHREAD = @LTLIBTHREAD@
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
MAINT = @MAINT@
@@ -1295,6 +1301,7 @@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
REPLACE_GLOB = @REPLACE_GLOB@
REPLACE_GLOB_PATTERN_P = @REPLACE_GLOB_PATTERN_P@
REPLACE_GMTIME = @REPLACE_GMTIME@
+REPLACE_INITSTATE = @REPLACE_INITSTATE@
REPLACE_IOCTL = @REPLACE_IOCTL@
REPLACE_ISATTY = @REPLACE_ISATTY@
REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
@@ -1343,6 +1350,7 @@ REPLACE_PUTENV = @REPLACE_PUTENV@
REPLACE_PWRITE = @REPLACE_PWRITE@
REPLACE_QSORT_R = @REPLACE_QSORT_R@
REPLACE_RAISE = @REPLACE_RAISE@
+REPLACE_RANDOM = @REPLACE_RANDOM@
REPLACE_RANDOM_R = @REPLACE_RANDOM_R@
REPLACE_READ = @REPLACE_READ@
REPLACE_READLINK = @REPLACE_READLINK@
@@ -1356,6 +1364,7 @@ REPLACE_RMDIR = @REPLACE_RMDIR@
REPLACE_SELECT = @REPLACE_SELECT@
REPLACE_SETENV = @REPLACE_SETENV@
REPLACE_SETLOCALE = @REPLACE_SETLOCALE@
+REPLACE_SETSTATE = @REPLACE_SETSTATE@
REPLACE_SLEEP = @REPLACE_SLEEP@
REPLACE_SNPRINTF = @REPLACE_SNPRINTF@
REPLACE_SPRINTF = @REPLACE_SPRINTF@
@@ -1376,6 +1385,7 @@ REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@
REPLACE_STRSTR = @REPLACE_STRSTR@
REPLACE_STRTOD = @REPLACE_STRTOD@
REPLACE_STRTOK_R = @REPLACE_STRTOK_R@
+REPLACE_STRTOLD = @REPLACE_STRTOLD@
REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@
REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@
REPLACE_SYMLINK = @REPLACE_SYMLINK@
diff --git a/man/sr/Makefile.in b/man/sr/Makefile.in
index 54c0c51f..0fb70054 100644
--- a/man/sr/Makefile.in
+++ b/man/sr/Makefile.in
@@ -182,6 +182,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/man-arg-automatic-create.m4 \
$(top_srcdir)/gl/m4/ltversion.m4 \
$(top_srcdir)/gl/m4/lt~obsolete.m4 \
$(top_srcdir)/gl/m4/malloc.m4 $(top_srcdir)/gl/m4/malloca.m4 \
+ $(top_srcdir)/gl/m4/manywarnings.m4 \
$(top_srcdir)/gl/m4/mbrtowc.m4 $(top_srcdir)/gl/m4/mbsinit.m4 \
$(top_srcdir)/gl/m4/mbsrtowcs.m4 \
$(top_srcdir)/gl/m4/mbstate_t.m4 $(top_srcdir)/gl/m4/mbtowc.m4 \
@@ -565,6 +566,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
GNULIB_CLOSE = @GNULIB_CLOSE@
GNULIB_CLOSEDIR = @GNULIB_CLOSEDIR@
GNULIB_CONNECT = @GNULIB_CONNECT@
+GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
GNULIB_CTIME = @GNULIB_CTIME@
GNULIB_DIRFD = @GNULIB_DIRFD@
GNULIB_DPRINTF = @GNULIB_DPRINTF@
@@ -772,6 +774,7 @@ GNULIB_STRSIGNAL = @GNULIB_STRSIGNAL@
GNULIB_STRSTR = @GNULIB_STRSTR@
GNULIB_STRTOD = @GNULIB_STRTOD@
GNULIB_STRTOK_R = @GNULIB_STRTOK_R@
+GNULIB_STRTOLD = @GNULIB_STRTOLD@
GNULIB_STRTOLL = @GNULIB_STRTOLL@
GNULIB_STRTOULL = @GNULIB_STRTOULL@
GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@
@@ -846,6 +849,7 @@ GNULIB_WRITE = @GNULIB_WRITE@
GNULIB__EXIT = @GNULIB__EXIT@
GREP = @GREP@
HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
HAVE_ALPHASORT = @HAVE_ALPHASORT@
HAVE_ATOLL = @HAVE_ATOLL@
HAVE_BTOWC = @HAVE_BTOWC@
@@ -853,6 +857,7 @@ HAVE_C99_STDINT_H = @HAVE_C99_STDINT_H@
HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
HAVE_CHOWN = @HAVE_CHOWN@
HAVE_CLOSEDIR = @HAVE_CLOSEDIR@
+HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@
HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
@@ -934,6 +939,7 @@ HAVE_GLOB_H = @HAVE_GLOB_H@
HAVE_GLOB_PATTERN_P = @HAVE_GLOB_PATTERN_P@
HAVE_GRANTPT = @HAVE_GRANTPT@
HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
+HAVE_INITSTATE = @HAVE_INITSTATE@
HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
HAVE_ISWBLANK = @HAVE_ISWBLANK@
HAVE_ISWCNTRL = @HAVE_ISWCNTRL@
@@ -956,6 +962,7 @@ HAVE_MBSINIT = @HAVE_MBSINIT@
HAVE_MBSLEN = @HAVE_MBSLEN@
HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
+HAVE_MBTOWC = @HAVE_MBTOWC@
HAVE_MEMCHR = @HAVE_MEMCHR@
HAVE_MEMPCPY = @HAVE_MEMPCPY@
HAVE_MKDIRAT = @HAVE_MKDIRAT@
@@ -1006,6 +1013,7 @@ HAVE_SCANDIR = @HAVE_SCANDIR@
HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
HAVE_SETENV = @HAVE_SETENV@
HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
+HAVE_SETSTATE = @HAVE_SETSTATE@
HAVE_SIGACTION = @HAVE_SIGACTION@
HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
@@ -1025,6 +1033,7 @@ HAVE_STRPBRK = @HAVE_STRPBRK@
HAVE_STRPTIME = @HAVE_STRPTIME@
HAVE_STRSEP = @HAVE_STRSEP@
HAVE_STRTOD = @HAVE_STRTOD@
+HAVE_STRTOLD = @HAVE_STRTOLD@
HAVE_STRTOLL = @HAVE_STRTOLL@
HAVE_STRTOULL = @HAVE_STRTOULL@
HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@
@@ -1125,8 +1134,6 @@ LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBMULTITHREAD = @LIBMULTITHREAD@
LIBOBJS = @LIBOBJS@
-LIBPTH = @LIBPTH@
-LIBPTH_PREFIX = @LIBPTH_PREFIX@
LIBS = @LIBS@
LIBSOCKET = @LIBSOCKET@
LIBTHREAD = @LIBTHREAD@
@@ -1149,7 +1156,6 @@ LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBMULTITHREAD = @LTLIBMULTITHREAD@
LTLIBOBJS = @LTLIBOBJS@
-LTLIBPTH = @LTLIBPTH@
LTLIBTHREAD = @LTLIBTHREAD@
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
MAINT = @MAINT@
@@ -1295,6 +1301,7 @@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
REPLACE_GLOB = @REPLACE_GLOB@
REPLACE_GLOB_PATTERN_P = @REPLACE_GLOB_PATTERN_P@
REPLACE_GMTIME = @REPLACE_GMTIME@
+REPLACE_INITSTATE = @REPLACE_INITSTATE@
REPLACE_IOCTL = @REPLACE_IOCTL@
REPLACE_ISATTY = @REPLACE_ISATTY@
REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
@@ -1343,6 +1350,7 @@ REPLACE_PUTENV = @REPLACE_PUTENV@
REPLACE_PWRITE = @REPLACE_PWRITE@
REPLACE_QSORT_R = @REPLACE_QSORT_R@
REPLACE_RAISE = @REPLACE_RAISE@
+REPLACE_RANDOM = @REPLACE_RANDOM@
REPLACE_RANDOM_R = @REPLACE_RANDOM_R@
REPLACE_READ = @REPLACE_READ@
REPLACE_READLINK = @REPLACE_READLINK@
@@ -1356,6 +1364,7 @@ REPLACE_RMDIR = @REPLACE_RMDIR@
REPLACE_SELECT = @REPLACE_SELECT@
REPLACE_SETENV = @REPLACE_SETENV@
REPLACE_SETLOCALE = @REPLACE_SETLOCALE@
+REPLACE_SETSTATE = @REPLACE_SETSTATE@
REPLACE_SLEEP = @REPLACE_SLEEP@
REPLACE_SNPRINTF = @REPLACE_SNPRINTF@
REPLACE_SPRINTF = @REPLACE_SPRINTF@
@@ -1376,6 +1385,7 @@ REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@
REPLACE_STRSTR = @REPLACE_STRSTR@
REPLACE_STRTOD = @REPLACE_STRTOD@
REPLACE_STRTOK_R = @REPLACE_STRTOK_R@
+REPLACE_STRTOLD = @REPLACE_STRTOLD@
REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@
REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@
REPLACE_SYMLINK = @REPLACE_SYMLINK@
diff --git a/man/sv/Makefile.in b/man/sv/Makefile.in
index 734616b5..e132201b 100644
--- a/man/sv/Makefile.in
+++ b/man/sv/Makefile.in
@@ -182,6 +182,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/man-arg-automatic-create.m4 \
$(top_srcdir)/gl/m4/ltversion.m4 \
$(top_srcdir)/gl/m4/lt~obsolete.m4 \
$(top_srcdir)/gl/m4/malloc.m4 $(top_srcdir)/gl/m4/malloca.m4 \
+ $(top_srcdir)/gl/m4/manywarnings.m4 \
$(top_srcdir)/gl/m4/mbrtowc.m4 $(top_srcdir)/gl/m4/mbsinit.m4 \
$(top_srcdir)/gl/m4/mbsrtowcs.m4 \
$(top_srcdir)/gl/m4/mbstate_t.m4 $(top_srcdir)/gl/m4/mbtowc.m4 \
@@ -565,6 +566,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
GNULIB_CLOSE = @GNULIB_CLOSE@
GNULIB_CLOSEDIR = @GNULIB_CLOSEDIR@
GNULIB_CONNECT = @GNULIB_CONNECT@
+GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
GNULIB_CTIME = @GNULIB_CTIME@
GNULIB_DIRFD = @GNULIB_DIRFD@
GNULIB_DPRINTF = @GNULIB_DPRINTF@
@@ -772,6 +774,7 @@ GNULIB_STRSIGNAL = @GNULIB_STRSIGNAL@
GNULIB_STRSTR = @GNULIB_STRSTR@
GNULIB_STRTOD = @GNULIB_STRTOD@
GNULIB_STRTOK_R = @GNULIB_STRTOK_R@
+GNULIB_STRTOLD = @GNULIB_STRTOLD@
GNULIB_STRTOLL = @GNULIB_STRTOLL@
GNULIB_STRTOULL = @GNULIB_STRTOULL@
GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@
@@ -846,6 +849,7 @@ GNULIB_WRITE = @GNULIB_WRITE@
GNULIB__EXIT = @GNULIB__EXIT@
GREP = @GREP@
HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
HAVE_ALPHASORT = @HAVE_ALPHASORT@
HAVE_ATOLL = @HAVE_ATOLL@
HAVE_BTOWC = @HAVE_BTOWC@
@@ -853,6 +857,7 @@ HAVE_C99_STDINT_H = @HAVE_C99_STDINT_H@
HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
HAVE_CHOWN = @HAVE_CHOWN@
HAVE_CLOSEDIR = @HAVE_CLOSEDIR@
+HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@
HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
@@ -934,6 +939,7 @@ HAVE_GLOB_H = @HAVE_GLOB_H@
HAVE_GLOB_PATTERN_P = @HAVE_GLOB_PATTERN_P@
HAVE_GRANTPT = @HAVE_GRANTPT@
HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
+HAVE_INITSTATE = @HAVE_INITSTATE@
HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
HAVE_ISWBLANK = @HAVE_ISWBLANK@
HAVE_ISWCNTRL = @HAVE_ISWCNTRL@
@@ -956,6 +962,7 @@ HAVE_MBSINIT = @HAVE_MBSINIT@
HAVE_MBSLEN = @HAVE_MBSLEN@
HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
+HAVE_MBTOWC = @HAVE_MBTOWC@
HAVE_MEMCHR = @HAVE_MEMCHR@
HAVE_MEMPCPY = @HAVE_MEMPCPY@
HAVE_MKDIRAT = @HAVE_MKDIRAT@
@@ -1006,6 +1013,7 @@ HAVE_SCANDIR = @HAVE_SCANDIR@
HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
HAVE_SETENV = @HAVE_SETENV@
HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
+HAVE_SETSTATE = @HAVE_SETSTATE@
HAVE_SIGACTION = @HAVE_SIGACTION@
HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
@@ -1025,6 +1033,7 @@ HAVE_STRPBRK = @HAVE_STRPBRK@
HAVE_STRPTIME = @HAVE_STRPTIME@
HAVE_STRSEP = @HAVE_STRSEP@
HAVE_STRTOD = @HAVE_STRTOD@
+HAVE_STRTOLD = @HAVE_STRTOLD@
HAVE_STRTOLL = @HAVE_STRTOLL@
HAVE_STRTOULL = @HAVE_STRTOULL@
HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@
@@ -1125,8 +1134,6 @@ LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBMULTITHREAD = @LIBMULTITHREAD@
LIBOBJS = @LIBOBJS@
-LIBPTH = @LIBPTH@
-LIBPTH_PREFIX = @LIBPTH_PREFIX@
LIBS = @LIBS@
LIBSOCKET = @LIBSOCKET@
LIBTHREAD = @LIBTHREAD@
@@ -1149,7 +1156,6 @@ LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBMULTITHREAD = @LTLIBMULTITHREAD@
LTLIBOBJS = @LTLIBOBJS@
-LTLIBPTH = @LTLIBPTH@
LTLIBTHREAD = @LTLIBTHREAD@
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
MAINT = @MAINT@
@@ -1295,6 +1301,7 @@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
REPLACE_GLOB = @REPLACE_GLOB@
REPLACE_GLOB_PATTERN_P = @REPLACE_GLOB_PATTERN_P@
REPLACE_GMTIME = @REPLACE_GMTIME@
+REPLACE_INITSTATE = @REPLACE_INITSTATE@
REPLACE_IOCTL = @REPLACE_IOCTL@
REPLACE_ISATTY = @REPLACE_ISATTY@
REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
@@ -1343,6 +1350,7 @@ REPLACE_PUTENV = @REPLACE_PUTENV@
REPLACE_PWRITE = @REPLACE_PWRITE@
REPLACE_QSORT_R = @REPLACE_QSORT_R@
REPLACE_RAISE = @REPLACE_RAISE@
+REPLACE_RANDOM = @REPLACE_RANDOM@
REPLACE_RANDOM_R = @REPLACE_RANDOM_R@
REPLACE_READ = @REPLACE_READ@
REPLACE_READLINK = @REPLACE_READLINK@
@@ -1356,6 +1364,7 @@ REPLACE_RMDIR = @REPLACE_RMDIR@
REPLACE_SELECT = @REPLACE_SELECT@
REPLACE_SETENV = @REPLACE_SETENV@
REPLACE_SETLOCALE = @REPLACE_SETLOCALE@
+REPLACE_SETSTATE = @REPLACE_SETSTATE@
REPLACE_SLEEP = @REPLACE_SLEEP@
REPLACE_SNPRINTF = @REPLACE_SNPRINTF@
REPLACE_SPRINTF = @REPLACE_SPRINTF@
@@ -1376,6 +1385,7 @@ REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@
REPLACE_STRSTR = @REPLACE_STRSTR@
REPLACE_STRTOD = @REPLACE_STRTOD@
REPLACE_STRTOK_R = @REPLACE_STRTOK_R@
+REPLACE_STRTOLD = @REPLACE_STRTOLD@
REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@
REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@
REPLACE_SYMLINK = @REPLACE_SYMLINK@
diff --git a/man/tr/Makefile.in b/man/tr/Makefile.in
index 45f64152..6d085b08 100644
--- a/man/tr/Makefile.in
+++ b/man/tr/Makefile.in
@@ -182,6 +182,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/man-arg-automatic-create.m4 \
$(top_srcdir)/gl/m4/ltversion.m4 \
$(top_srcdir)/gl/m4/lt~obsolete.m4 \
$(top_srcdir)/gl/m4/malloc.m4 $(top_srcdir)/gl/m4/malloca.m4 \
+ $(top_srcdir)/gl/m4/manywarnings.m4 \
$(top_srcdir)/gl/m4/mbrtowc.m4 $(top_srcdir)/gl/m4/mbsinit.m4 \
$(top_srcdir)/gl/m4/mbsrtowcs.m4 \
$(top_srcdir)/gl/m4/mbstate_t.m4 $(top_srcdir)/gl/m4/mbtowc.m4 \
@@ -565,6 +566,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
GNULIB_CLOSE = @GNULIB_CLOSE@
GNULIB_CLOSEDIR = @GNULIB_CLOSEDIR@
GNULIB_CONNECT = @GNULIB_CONNECT@
+GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
GNULIB_CTIME = @GNULIB_CTIME@
GNULIB_DIRFD = @GNULIB_DIRFD@
GNULIB_DPRINTF = @GNULIB_DPRINTF@
@@ -772,6 +774,7 @@ GNULIB_STRSIGNAL = @GNULIB_STRSIGNAL@
GNULIB_STRSTR = @GNULIB_STRSTR@
GNULIB_STRTOD = @GNULIB_STRTOD@
GNULIB_STRTOK_R = @GNULIB_STRTOK_R@
+GNULIB_STRTOLD = @GNULIB_STRTOLD@
GNULIB_STRTOLL = @GNULIB_STRTOLL@
GNULIB_STRTOULL = @GNULIB_STRTOULL@
GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@
@@ -846,6 +849,7 @@ GNULIB_WRITE = @GNULIB_WRITE@
GNULIB__EXIT = @GNULIB__EXIT@
GREP = @GREP@
HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
HAVE_ALPHASORT = @HAVE_ALPHASORT@
HAVE_ATOLL = @HAVE_ATOLL@
HAVE_BTOWC = @HAVE_BTOWC@
@@ -853,6 +857,7 @@ HAVE_C99_STDINT_H = @HAVE_C99_STDINT_H@
HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
HAVE_CHOWN = @HAVE_CHOWN@
HAVE_CLOSEDIR = @HAVE_CLOSEDIR@
+HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@
HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
@@ -934,6 +939,7 @@ HAVE_GLOB_H = @HAVE_GLOB_H@
HAVE_GLOB_PATTERN_P = @HAVE_GLOB_PATTERN_P@
HAVE_GRANTPT = @HAVE_GRANTPT@
HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
+HAVE_INITSTATE = @HAVE_INITSTATE@
HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
HAVE_ISWBLANK = @HAVE_ISWBLANK@
HAVE_ISWCNTRL = @HAVE_ISWCNTRL@
@@ -956,6 +962,7 @@ HAVE_MBSINIT = @HAVE_MBSINIT@
HAVE_MBSLEN = @HAVE_MBSLEN@
HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
+HAVE_MBTOWC = @HAVE_MBTOWC@
HAVE_MEMCHR = @HAVE_MEMCHR@
HAVE_MEMPCPY = @HAVE_MEMPCPY@
HAVE_MKDIRAT = @HAVE_MKDIRAT@
@@ -1006,6 +1013,7 @@ HAVE_SCANDIR = @HAVE_SCANDIR@
HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
HAVE_SETENV = @HAVE_SETENV@
HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
+HAVE_SETSTATE = @HAVE_SETSTATE@
HAVE_SIGACTION = @HAVE_SIGACTION@
HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
@@ -1025,6 +1033,7 @@ HAVE_STRPBRK = @HAVE_STRPBRK@
HAVE_STRPTIME = @HAVE_STRPTIME@
HAVE_STRSEP = @HAVE_STRSEP@
HAVE_STRTOD = @HAVE_STRTOD@
+HAVE_STRTOLD = @HAVE_STRTOLD@
HAVE_STRTOLL = @HAVE_STRTOLL@
HAVE_STRTOULL = @HAVE_STRTOULL@
HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@
@@ -1125,8 +1134,6 @@ LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBMULTITHREAD = @LIBMULTITHREAD@
LIBOBJS = @LIBOBJS@
-LIBPTH = @LIBPTH@
-LIBPTH_PREFIX = @LIBPTH_PREFIX@
LIBS = @LIBS@
LIBSOCKET = @LIBSOCKET@
LIBTHREAD = @LIBTHREAD@
@@ -1149,7 +1156,6 @@ LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBMULTITHREAD = @LTLIBMULTITHREAD@
LTLIBOBJS = @LTLIBOBJS@
-LTLIBPTH = @LTLIBPTH@
LTLIBTHREAD = @LTLIBTHREAD@
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
MAINT = @MAINT@
@@ -1295,6 +1301,7 @@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
REPLACE_GLOB = @REPLACE_GLOB@
REPLACE_GLOB_PATTERN_P = @REPLACE_GLOB_PATTERN_P@
REPLACE_GMTIME = @REPLACE_GMTIME@
+REPLACE_INITSTATE = @REPLACE_INITSTATE@
REPLACE_IOCTL = @REPLACE_IOCTL@
REPLACE_ISATTY = @REPLACE_ISATTY@
REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
@@ -1343,6 +1350,7 @@ REPLACE_PUTENV = @REPLACE_PUTENV@
REPLACE_PWRITE = @REPLACE_PWRITE@
REPLACE_QSORT_R = @REPLACE_QSORT_R@
REPLACE_RAISE = @REPLACE_RAISE@
+REPLACE_RANDOM = @REPLACE_RANDOM@
REPLACE_RANDOM_R = @REPLACE_RANDOM_R@
REPLACE_READ = @REPLACE_READ@
REPLACE_READLINK = @REPLACE_READLINK@
@@ -1356,6 +1364,7 @@ REPLACE_RMDIR = @REPLACE_RMDIR@
REPLACE_SELECT = @REPLACE_SELECT@
REPLACE_SETENV = @REPLACE_SETENV@
REPLACE_SETLOCALE = @REPLACE_SETLOCALE@
+REPLACE_SETSTATE = @REPLACE_SETSTATE@
REPLACE_SLEEP = @REPLACE_SLEEP@
REPLACE_SNPRINTF = @REPLACE_SNPRINTF@
REPLACE_SPRINTF = @REPLACE_SPRINTF@
@@ -1376,6 +1385,7 @@ REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@
REPLACE_STRSTR = @REPLACE_STRSTR@
REPLACE_STRTOD = @REPLACE_STRTOD@
REPLACE_STRTOK_R = @REPLACE_STRTOK_R@
+REPLACE_STRTOLD = @REPLACE_STRTOLD@
REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@
REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@
REPLACE_SYMLINK = @REPLACE_SYMLINK@
diff --git a/man/zh_CN/Makefile.in b/man/zh_CN/Makefile.in
index eb66297c..c39a3cbf 100644
--- a/man/zh_CN/Makefile.in
+++ b/man/zh_CN/Makefile.in
@@ -182,6 +182,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/man-arg-automatic-create.m4 \
$(top_srcdir)/gl/m4/ltversion.m4 \
$(top_srcdir)/gl/m4/lt~obsolete.m4 \
$(top_srcdir)/gl/m4/malloc.m4 $(top_srcdir)/gl/m4/malloca.m4 \
+ $(top_srcdir)/gl/m4/manywarnings.m4 \
$(top_srcdir)/gl/m4/mbrtowc.m4 $(top_srcdir)/gl/m4/mbsinit.m4 \
$(top_srcdir)/gl/m4/mbsrtowcs.m4 \
$(top_srcdir)/gl/m4/mbstate_t.m4 $(top_srcdir)/gl/m4/mbtowc.m4 \
@@ -565,6 +566,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
GNULIB_CLOSE = @GNULIB_CLOSE@
GNULIB_CLOSEDIR = @GNULIB_CLOSEDIR@
GNULIB_CONNECT = @GNULIB_CONNECT@
+GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
GNULIB_CTIME = @GNULIB_CTIME@
GNULIB_DIRFD = @GNULIB_DIRFD@
GNULIB_DPRINTF = @GNULIB_DPRINTF@
@@ -772,6 +774,7 @@ GNULIB_STRSIGNAL = @GNULIB_STRSIGNAL@
GNULIB_STRSTR = @GNULIB_STRSTR@
GNULIB_STRTOD = @GNULIB_STRTOD@
GNULIB_STRTOK_R = @GNULIB_STRTOK_R@
+GNULIB_STRTOLD = @GNULIB_STRTOLD@
GNULIB_STRTOLL = @GNULIB_STRTOLL@
GNULIB_STRTOULL = @GNULIB_STRTOULL@
GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@
@@ -846,6 +849,7 @@ GNULIB_WRITE = @GNULIB_WRITE@
GNULIB__EXIT = @GNULIB__EXIT@
GREP = @GREP@
HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
HAVE_ALPHASORT = @HAVE_ALPHASORT@
HAVE_ATOLL = @HAVE_ATOLL@
HAVE_BTOWC = @HAVE_BTOWC@
@@ -853,6 +857,7 @@ HAVE_C99_STDINT_H = @HAVE_C99_STDINT_H@
HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
HAVE_CHOWN = @HAVE_CHOWN@
HAVE_CLOSEDIR = @HAVE_CLOSEDIR@
+HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@
HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
@@ -934,6 +939,7 @@ HAVE_GLOB_H = @HAVE_GLOB_H@
HAVE_GLOB_PATTERN_P = @HAVE_GLOB_PATTERN_P@
HAVE_GRANTPT = @HAVE_GRANTPT@
HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
+HAVE_INITSTATE = @HAVE_INITSTATE@
HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
HAVE_ISWBLANK = @HAVE_ISWBLANK@
HAVE_ISWCNTRL = @HAVE_ISWCNTRL@
@@ -956,6 +962,7 @@ HAVE_MBSINIT = @HAVE_MBSINIT@
HAVE_MBSLEN = @HAVE_MBSLEN@
HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
+HAVE_MBTOWC = @HAVE_MBTOWC@
HAVE_MEMCHR = @HAVE_MEMCHR@
HAVE_MEMPCPY = @HAVE_MEMPCPY@
HAVE_MKDIRAT = @HAVE_MKDIRAT@
@@ -1006,6 +1013,7 @@ HAVE_SCANDIR = @HAVE_SCANDIR@
HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
HAVE_SETENV = @HAVE_SETENV@
HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
+HAVE_SETSTATE = @HAVE_SETSTATE@
HAVE_SIGACTION = @HAVE_SIGACTION@
HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
@@ -1025,6 +1033,7 @@ HAVE_STRPBRK = @HAVE_STRPBRK@
HAVE_STRPTIME = @HAVE_STRPTIME@
HAVE_STRSEP = @HAVE_STRSEP@
HAVE_STRTOD = @HAVE_STRTOD@
+HAVE_STRTOLD = @HAVE_STRTOLD@
HAVE_STRTOLL = @HAVE_STRTOLL@
HAVE_STRTOULL = @HAVE_STRTOULL@
HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@
@@ -1125,8 +1134,6 @@ LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBMULTITHREAD = @LIBMULTITHREAD@
LIBOBJS = @LIBOBJS@
-LIBPTH = @LIBPTH@
-LIBPTH_PREFIX = @LIBPTH_PREFIX@
LIBS = @LIBS@
LIBSOCKET = @LIBSOCKET@
LIBTHREAD = @LIBTHREAD@
@@ -1149,7 +1156,6 @@ LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBMULTITHREAD = @LTLIBMULTITHREAD@
LTLIBOBJS = @LTLIBOBJS@
-LTLIBPTH = @LTLIBPTH@
LTLIBTHREAD = @LTLIBTHREAD@
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
MAINT = @MAINT@
@@ -1295,6 +1301,7 @@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
REPLACE_GLOB = @REPLACE_GLOB@
REPLACE_GLOB_PATTERN_P = @REPLACE_GLOB_PATTERN_P@
REPLACE_GMTIME = @REPLACE_GMTIME@
+REPLACE_INITSTATE = @REPLACE_INITSTATE@
REPLACE_IOCTL = @REPLACE_IOCTL@
REPLACE_ISATTY = @REPLACE_ISATTY@
REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
@@ -1343,6 +1350,7 @@ REPLACE_PUTENV = @REPLACE_PUTENV@
REPLACE_PWRITE = @REPLACE_PWRITE@
REPLACE_QSORT_R = @REPLACE_QSORT_R@
REPLACE_RAISE = @REPLACE_RAISE@
+REPLACE_RANDOM = @REPLACE_RANDOM@
REPLACE_RANDOM_R = @REPLACE_RANDOM_R@
REPLACE_READ = @REPLACE_READ@
REPLACE_READLINK = @REPLACE_READLINK@
@@ -1356,6 +1364,7 @@ REPLACE_RMDIR = @REPLACE_RMDIR@
REPLACE_SELECT = @REPLACE_SELECT@
REPLACE_SETENV = @REPLACE_SETENV@
REPLACE_SETLOCALE = @REPLACE_SETLOCALE@
+REPLACE_SETSTATE = @REPLACE_SETSTATE@
REPLACE_SLEEP = @REPLACE_SLEEP@
REPLACE_SNPRINTF = @REPLACE_SNPRINTF@
REPLACE_SPRINTF = @REPLACE_SPRINTF@
@@ -1376,6 +1385,7 @@ REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@
REPLACE_STRSTR = @REPLACE_STRSTR@
REPLACE_STRTOD = @REPLACE_STRTOD@
REPLACE_STRTOK_R = @REPLACE_STRTOK_R@
+REPLACE_STRTOLD = @REPLACE_STRTOLD@
REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@
REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@
REPLACE_SYMLINK = @REPLACE_SYMLINK@
diff --git a/manual/Makefile.in b/manual/Makefile.in
index 499f1881..d1790151 100644
--- a/manual/Makefile.in
+++ b/manual/Makefile.in
@@ -183,6 +183,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/man-arg-automatic-create.m4 \
$(top_srcdir)/gl/m4/ltversion.m4 \
$(top_srcdir)/gl/m4/lt~obsolete.m4 \
$(top_srcdir)/gl/m4/malloc.m4 $(top_srcdir)/gl/m4/malloca.m4 \
+ $(top_srcdir)/gl/m4/manywarnings.m4 \
$(top_srcdir)/gl/m4/mbrtowc.m4 $(top_srcdir)/gl/m4/mbsinit.m4 \
$(top_srcdir)/gl/m4/mbsrtowcs.m4 \
$(top_srcdir)/gl/m4/mbstate_t.m4 $(top_srcdir)/gl/m4/mbtowc.m4 \
@@ -355,6 +356,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
GNULIB_CLOSE = @GNULIB_CLOSE@
GNULIB_CLOSEDIR = @GNULIB_CLOSEDIR@
GNULIB_CONNECT = @GNULIB_CONNECT@
+GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
GNULIB_CTIME = @GNULIB_CTIME@
GNULIB_DIRFD = @GNULIB_DIRFD@
GNULIB_DPRINTF = @GNULIB_DPRINTF@
@@ -562,6 +564,7 @@ GNULIB_STRSIGNAL = @GNULIB_STRSIGNAL@
GNULIB_STRSTR = @GNULIB_STRSTR@
GNULIB_STRTOD = @GNULIB_STRTOD@
GNULIB_STRTOK_R = @GNULIB_STRTOK_R@
+GNULIB_STRTOLD = @GNULIB_STRTOLD@
GNULIB_STRTOLL = @GNULIB_STRTOLL@
GNULIB_STRTOULL = @GNULIB_STRTOULL@
GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@
@@ -636,6 +639,7 @@ GNULIB_WRITE = @GNULIB_WRITE@
GNULIB__EXIT = @GNULIB__EXIT@
GREP = @GREP@
HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
HAVE_ALPHASORT = @HAVE_ALPHASORT@
HAVE_ATOLL = @HAVE_ATOLL@
HAVE_BTOWC = @HAVE_BTOWC@
@@ -643,6 +647,7 @@ HAVE_C99_STDINT_H = @HAVE_C99_STDINT_H@
HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
HAVE_CHOWN = @HAVE_CHOWN@
HAVE_CLOSEDIR = @HAVE_CLOSEDIR@
+HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@
HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
@@ -724,6 +729,7 @@ HAVE_GLOB_H = @HAVE_GLOB_H@
HAVE_GLOB_PATTERN_P = @HAVE_GLOB_PATTERN_P@
HAVE_GRANTPT = @HAVE_GRANTPT@
HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
+HAVE_INITSTATE = @HAVE_INITSTATE@
HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
HAVE_ISWBLANK = @HAVE_ISWBLANK@
HAVE_ISWCNTRL = @HAVE_ISWCNTRL@
@@ -746,6 +752,7 @@ HAVE_MBSINIT = @HAVE_MBSINIT@
HAVE_MBSLEN = @HAVE_MBSLEN@
HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
+HAVE_MBTOWC = @HAVE_MBTOWC@
HAVE_MEMCHR = @HAVE_MEMCHR@
HAVE_MEMPCPY = @HAVE_MEMPCPY@
HAVE_MKDIRAT = @HAVE_MKDIRAT@
@@ -796,6 +803,7 @@ HAVE_SCANDIR = @HAVE_SCANDIR@
HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
HAVE_SETENV = @HAVE_SETENV@
HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
+HAVE_SETSTATE = @HAVE_SETSTATE@
HAVE_SIGACTION = @HAVE_SIGACTION@
HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
@@ -815,6 +823,7 @@ HAVE_STRPBRK = @HAVE_STRPBRK@
HAVE_STRPTIME = @HAVE_STRPTIME@
HAVE_STRSEP = @HAVE_STRSEP@
HAVE_STRTOD = @HAVE_STRTOD@
+HAVE_STRTOLD = @HAVE_STRTOLD@
HAVE_STRTOLL = @HAVE_STRTOLL@
HAVE_STRTOULL = @HAVE_STRTOULL@
HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@
@@ -915,8 +924,6 @@ LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBMULTITHREAD = @LIBMULTITHREAD@
LIBOBJS = @LIBOBJS@
-LIBPTH = @LIBPTH@
-LIBPTH_PREFIX = @LIBPTH_PREFIX@
LIBS = @LIBS@
LIBSOCKET = @LIBSOCKET@
LIBTHREAD = @LIBTHREAD@
@@ -939,7 +946,6 @@ LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBMULTITHREAD = @LTLIBMULTITHREAD@
LTLIBOBJS = @LTLIBOBJS@
-LTLIBPTH = @LTLIBPTH@
LTLIBTHREAD = @LTLIBTHREAD@
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
MAINT = @MAINT@
@@ -1085,6 +1091,7 @@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
REPLACE_GLOB = @REPLACE_GLOB@
REPLACE_GLOB_PATTERN_P = @REPLACE_GLOB_PATTERN_P@
REPLACE_GMTIME = @REPLACE_GMTIME@
+REPLACE_INITSTATE = @REPLACE_INITSTATE@
REPLACE_IOCTL = @REPLACE_IOCTL@
REPLACE_ISATTY = @REPLACE_ISATTY@
REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
@@ -1133,6 +1140,7 @@ REPLACE_PUTENV = @REPLACE_PUTENV@
REPLACE_PWRITE = @REPLACE_PWRITE@
REPLACE_QSORT_R = @REPLACE_QSORT_R@
REPLACE_RAISE = @REPLACE_RAISE@
+REPLACE_RANDOM = @REPLACE_RANDOM@
REPLACE_RANDOM_R = @REPLACE_RANDOM_R@
REPLACE_READ = @REPLACE_READ@
REPLACE_READLINK = @REPLACE_READLINK@
@@ -1146,6 +1154,7 @@ REPLACE_RMDIR = @REPLACE_RMDIR@
REPLACE_SELECT = @REPLACE_SELECT@
REPLACE_SETENV = @REPLACE_SETENV@
REPLACE_SETLOCALE = @REPLACE_SETLOCALE@
+REPLACE_SETSTATE = @REPLACE_SETSTATE@
REPLACE_SLEEP = @REPLACE_SLEEP@
REPLACE_SNPRINTF = @REPLACE_SNPRINTF@
REPLACE_SPRINTF = @REPLACE_SPRINTF@
@@ -1166,6 +1175,7 @@ REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@
REPLACE_STRSTR = @REPLACE_STRSTR@
REPLACE_STRTOD = @REPLACE_STRTOD@
REPLACE_STRTOK_R = @REPLACE_STRTOK_R@
+REPLACE_STRTOLD = @REPLACE_STRTOLD@
REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@
REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@
REPLACE_SYMLINK = @REPLACE_SYMLINK@
@@ -1502,10 +1512,10 @@ distclean-generic:
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
-@BUILD_MANUAL_FALSE@clean-local:
-@BUILD_MANUAL_FALSE@html-local:
@BUILD_MANUAL_FALSE@dvi-local:
@BUILD_MANUAL_FALSE@ps-local:
+@BUILD_MANUAL_FALSE@clean-local:
+@BUILD_MANUAL_FALSE@html-local:
@BUILD_MANUAL_FALSE@install-data-hook:
@BUILD_MANUAL_FALSE@uninstall-hook:
clean: clean-am
diff --git a/po/ast.po b/po/ast.po
index bc9f5620..54f14b47 100644
--- a/po/ast.po
+++ b/po/ast.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: man-db 2.8.0-pre2\n"
"Report-Msgid-Bugs-To: Colin Watson <cjwatson@debian.org>\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2018-07-11 17:43+0100\n"
"Last-Translator: enolp <enolp@softastur.org>\n"
"Language-Team: Asturian <ubuntu-l10n-ast@lists.ubuntu.com>\n"
@@ -66,7 +66,7 @@ msgstr[1] "namái %d campos nel conteníu"
msgid "bad fetch on multi key %s"
msgstr "receición fallida na clave múltiple %s"
-#: libdb/db_lookup.c:443 src/whatis.c:739
+#: libdb/db_lookup.c:443 src/whatis.c:737
#, c-format
msgid "Database %s corrupted; rebuild with mandb --create"
msgstr "Toyóse la base de datos de %s. Volvi construyila con mandb --create"
@@ -76,28 +76,28 @@ msgstr "Toyóse la base de datos de %s. Volvi construyila con mandb --create"
msgid "warning: %s has no version identifier\n"
msgstr "alvertencia: %s nun tien l'identificador de versión\n"
-#: libdb/db_ver.c:56
+#: libdb/db_ver.c:57
#, c-format
msgid "warning: %s is version %s, expecting %s\n"
msgstr "alvertencia: %s ye de la versión %s, esperábase la %s\n"
-#: libdb/db_ver.c:78
+#: libdb/db_ver.c:79
#, c-format
msgid "fatal: unable to insert version identifier into %s"
msgstr "fatal: nun pue inxertase l'identificador de versión en %s"
-#: src/accessdb.c:61
+#: src/accessdb.c:59
msgid "[MAN DATABASE]"
msgstr "[BASE DE DATOS DE MAN]"
-#: src/accessdb.c:62
+#: src/accessdb.c:60
#, c-format
msgid "The man database defaults to %s%s."
msgstr "La base de datos de man por defeutu ye %s%s,"
-#: src/accessdb.c:65 src/catman.c:103 src/globbing_test.c:62
-#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:115
-#: src/manpath.c:67 src/whatis.c:127 src/zsoelim_main.c:69
+#: src/accessdb.c:63 src/catman.c:100 src/globbing_test.c:58
+#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:114
+#: src/manpath.c:65 src/whatis.c:126 src/zsoelim_main.c:68
msgid "emit debugging messages"
msgstr "emite mensaxes de depuración"
@@ -106,44 +106,44 @@ msgstr "emite mensaxes de depuración"
msgid "can't open %s for reading"
msgstr "nun pue abrise %s pa la llectura"
-#: src/catman.c:100
+#: src/catman.c:97
msgid "[SECTION...]"
msgstr "[SEICIÓN...]"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "PATH"
msgstr "CAMÍN"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "set search path for manual pages to PATH"
msgstr "afita'l camín de gueta de páxines de manual a CAMIN"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "FILE"
msgstr "FICHERU"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "use this user configuration file"
msgstr "usa esti ficheru de configuración del usuariu"
-#: src/catman.c:198
+#: src/catman.c:195
#, c-format
msgid "man command failed with exit status %d"
msgstr "el comandu man falló col estáu de salida %d"
-#: src/catman.c:237
+#: src/catman.c:235
#, c-format
msgid "cannot read database %s"
msgstr "nun pue lleese la base de datos %s"
-#: src/catman.c:280
+#: src/catman.c:278
#, c-format
msgid "NULL content for key: %s"
msgstr "conteníu NULL pa la clave: %s"
-#: src/catman.c:295
+#: src/catman.c:294
#, c-format
msgid ""
"\n"
@@ -152,12 +152,12 @@ msgstr ""
"\n"
"Anovando los ficheros cat pa la seición %s de la xerarquía man %s\n"
-#: src/catman.c:349
+#: src/catman.c:348
#, c-format
msgid "cannot write within %s"
msgstr "nun pue escribise en %s"
-#: src/catman.c:426
+#: src/catman.c:425
#, c-format
msgid "unable to update %s"
msgstr "nun pue anovase %s"
@@ -167,67 +167,67 @@ msgstr "nun pue anovase %s"
msgid "warning: %s/man%s/%s.%s*: competing extensions"
msgstr "alvertencia: %s/man%s/%s.%s*: estensiones en conflictu"
-#: src/check_mandirs.c:114 src/check_mandirs.c:613
+#: src/check_mandirs.c:126 src/check_mandirs.c:626
#, c-format
msgid "can't update index cache %s"
msgstr "nun pue anovase la caché del índiz %s"
-#: src/check_mandirs.c:242
+#: src/check_mandirs.c:254
#, c-format
msgid "warning: %s: bad symlink or ROFF `.so' request"
msgstr "alvertencia: %s: enllaz simbólicu o solicitú ROFF «.so» incorreutos"
-#: src/check_mandirs.c:298
+#: src/check_mandirs.c:310
#, c-format
msgid "warning: %s: ignoring empty file"
msgstr "alvertencia: %s: inorando'l ficheru baleru"
-#: src/check_mandirs.c:302 src/straycats.c:276
+#: src/check_mandirs.c:314 src/straycats.c:276
#, c-format
msgid "warning: %s: whatis parse for %s(%s) failed"
msgstr "alvertecia: %s: falló l'analís de whatis pa %s(%s)"
-#: src/check_mandirs.c:329 src/check_mandirs.c:498 src/mandb.c:883
+#: src/check_mandirs.c:341 src/check_mandirs.c:511 src/mandb.c:877
#: src/straycats.c:84 src/straycats.c:303 src/ult_src.c:81
#, c-format
msgid "can't search directory %s"
msgstr "nun pue guetase'l direutoriu %s"
-#: src/check_mandirs.c:378 src/man.c:1687
+#: src/check_mandirs.c:390 src/man.c:1689
#, c-format
msgid "can't chown %s"
msgstr "nun pue facese chown a %s"
-#: src/check_mandirs.c:400 src/check_mandirs.c:423
+#: src/check_mandirs.c:412 src/check_mandirs.c:435
#, c-format
msgid "warning: cannot create catdir %s"
msgstr "alvertencia: nun pue crease'l direutoriu cat %s"
-#: src/check_mandirs.c:455 src/man.c:1699 src/mandb.c:233
+#: src/check_mandirs.c:467 src/man.c:1701 src/mandb.c:232
#, c-format
msgid "can't chmod %s"
msgstr "nun pue facese chmod a %s"
-#: src/check_mandirs.c:503
+#: src/check_mandirs.c:516
#, c-format
msgid "can't change to directory %s"
msgstr "nun pue camudase al direutoriu %s"
-#: src/check_mandirs.c:553
+#: src/check_mandirs.c:566
#, c-format
msgid "can't create index cache %s"
msgstr "nun pue crease la caché del índiz %s"
-#: src/check_mandirs.c:578
+#: src/check_mandirs.c:591
#, c-format
msgid "Updating index cache for path `%s/%s'. Wait..."
msgstr "Anovando la caché del índiz pal camín «%s/%s». Espera..."
-#: src/check_mandirs.c:640 src/check_mandirs.c:701
+#: src/check_mandirs.c:653 src/check_mandirs.c:714
msgid "done.\n"
msgstr "fecho.\n"
-#: src/check_mandirs.c:963
+#: src/check_mandirs.c:977
#, c-format
msgid "Purging old database entries in %s...\n"
msgstr "Purgando les entraes vieyes de la base de datos de %s...\n"
@@ -242,49 +242,49 @@ msgstr "alvertencia: fallu al atroxar la entrada de %s(%s)"
msgid "warning: %s: ignoring bogus filename"
msgstr "alvertencia: %s: inorando'l nome falsu de ficheru"
-#: src/globbing_test.c:59
+#: src/globbing_test.c:55
msgid "PATH SECTION NAME"
msgstr "CAMÍN SEICIÓN NOME"
-#: src/globbing_test.c:63 src/man.c:292
+#: src/globbing_test.c:59 src/man.c:292
msgid "EXTENSION"
msgstr "ESTENSIÓN"
-#: src/globbing_test.c:63 src/man.c:293
+#: src/globbing_test.c:59 src/man.c:293
msgid "limit search to extension type EXTENSION"
msgstr "llenda la gueta a la triba de la estensión ESTENSIÓN"
-#: src/globbing_test.c:64 src/man.c:294
+#: src/globbing_test.c:60 src/man.c:294
msgid "look for pages case-insensitively (default)"
msgstr "gueta páxines distinguiendo les mayúscules (por defeutu)"
-#: src/globbing_test.c:65 src/man.c:295
+#: src/globbing_test.c:61 src/man.c:295
msgid "look for pages case-sensitively"
msgstr "gueta páxines ensin distinguir les mayúscules (por defeutu)"
-#: src/globbing_test.c:66
+#: src/globbing_test.c:62
msgid "interpret page name as a regex"
msgstr "interpreta'l nome de la páxina como una espresión regular"
-#: src/globbing_test.c:67
+#: src/globbing_test.c:63
msgid "the page name contains wildcards"
msgstr "el nome de la páxina contién comodinos"
-#: src/lexgrog.l:691
+#: src/lexgrog.l:701
#, c-format
msgid "warning: whatis for %s exceeds %d byte, truncating."
msgid_plural "warning: whatis for %s exceeds %d bytes, truncating."
msgstr[0] "alvertencia: el whatis de %s perpase %d byte, truncando."
msgstr[1] "alvertencia: el whatis de %s perpase %d bytes, truncando."
-#: src/lexgrog.l:844 src/man.c:2268 src/man.c:2350 src/man.c:2448
+#: src/lexgrog.l:854 src/man.c:2270 src/man.c:2354 src/man.c:2452
#: src/manconv_main.c:168 src/straycats.c:218 src/ult_src.c:321
-#: src/ult_src.c:335 src/zsoelim.l:512
+#: src/ult_src.c:335 src/zsoelim.l:519
#, c-format
msgid "can't open %s"
msgstr "nun pue abrise %s"
-#: src/lexgrog_test.c:69 src/zsoelim_main.c:66
+#: src/lexgrog_test.c:69 src/zsoelim_main.c:65
msgid "FILE..."
msgstr "FICHERU..."
@@ -382,7 +382,7 @@ msgstr "amuesa la salida de la páxina fonte cola codificación CODIFICACIÓN"
msgid "Finding manual pages:"
msgstr "Gueta de páxines de manual:"
-#: src/man.c:287 src/whatis.c:138
+#: src/man.c:287 src/whatis.c:137
msgid "LOCALE"
msgstr "LOCALE"
@@ -390,15 +390,15 @@ msgstr "LOCALE"
msgid "define the locale for this particular man search"
msgstr "define la locale d'esta gueta específica de man"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "SYSTEM"
msgstr "SISTEMA"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "use manual pages from other systems"
msgstr "usa les páxines de manual d'otros sistemes"
-#: src/man.c:290 src/whatis.c:134
+#: src/man.c:290 src/whatis.c:133
msgid "LIST"
msgstr "LLISTA"
@@ -513,79 +513,79 @@ msgstr ""
msgid "use groff and force it to produce ditroff"
msgstr "usa groff y forcia la producción de ditroff"
-#: src/man.c:597 src/man.c:733
+#: src/man.c:599 src/man.c:735
#, c-format
msgid "No manual entry for %s\n"
msgstr "Nun hai entrada de manual pa %s\n"
-#: src/man.c:599
+#: src/man.c:601
#, c-format
msgid "(Alternatively, what manual page do you want from section %s?)\n"
msgstr "(Alternativamente, ¿qué páxina de manual quies de la seición %s?)\n"
-#: src/man.c:603
+#: src/man.c:605
msgid "What manual page do you want?\n"
msgstr "¿Qué páxina de manual quies?\n"
-#: src/man.c:730
+#: src/man.c:732
#, c-format
msgid "No manual entry for %s in section %s\n"
msgstr "Nun hai entrada de manual pa %s na seición %s\n"
-#: src/man.c:739
+#: src/man.c:741
#, c-format
msgid "See '%s' for help when manual pages are not available.\n"
msgstr ""
"Mira «%s» pa más ayuda cuando nun heba páxines de manual disponibles.\n"
-#: src/man.c:1347
+#: src/man.c:1349
#, c-format
msgid "ignoring unknown preprocessor `%c'"
msgstr "inorando'l preprocesador desconocíu «%c»"
-#: src/man.c:1710 src/mandb.c:224
+#: src/man.c:1712 src/mandb.c:223
#, c-format
msgid "can't rename %s to %s"
msgstr "nun pue renomase %s a %s"
-#: src/man.c:1727
+#: src/man.c:1729
#, c-format
msgid "can't set times on %s"
msgstr "nun pue afitase la data en %s"
-#: src/man.c:1736 src/man.c:1773
+#: src/man.c:1738 src/man.c:1775
#, c-format
msgid "can't unlink %s"
msgstr "nun pue desenllazase %s"
-#: src/man.c:1803
+#: src/man.c:1805
#, c-format
msgid "can't create temporary cat for %s"
msgstr "nun pue crease'l cat temporal pa %s"
-#: src/man.c:1913
+#: src/man.c:1915
#, c-format
msgid "can't create temporary directory"
msgstr "nun pue crease'l direutoriu temporal"
-#: src/man.c:1924
+#: src/man.c:1926
#, c-format
msgid "can't open temporary file %s"
msgstr "nun pue crease'l ficheru temporal %s"
-#: src/man.c:1954 src/man.c:1983
+#: src/man.c:1956 src/man.c:1985
#, c-format
msgid "can't remove directory %s"
msgstr "nun pue desaniciase'l direutoriu %s"
-#: src/man.c:2112
+#: src/man.c:2114
#, c-format
msgid "--Man-- next: %s [ view (return) | skip (Ctrl-D) | quit (Ctrl-C) ]\n"
msgstr ""
"--Man-- siguiente: %s [ volver (retrocesu) | saltar (Ctrl-D) | colar (Ctrl-"
"C) ]\n"
-#: src/man.c:2393
+#: src/man.c:2397
#, c-format
msgid ""
"\n"
@@ -594,27 +594,27 @@ msgstr ""
"\n"
"nun pue escribise en %s nel mou catman"
-#: src/man.c:2474
+#: src/man.c:2477
#, c-format
msgid "Can't convert %s to cat name"
msgstr "Nun pue convertise %s a un nome de cat"
-#: src/man.c:3203
+#: src/man.c:3206
#, c-format
msgid "%s: relying on whatis refs is deprecated\n"
msgstr "%s: basase en referencies whatis ta anticuao\n"
-#: src/man.c:3346 src/man.c:4196
+#: src/man.c:3349 src/man.c:4200
#, c-format
msgid "mandb command failed with exit status %d"
msgstr "falló'l comandu mandb col estáu de salida %d"
-#: src/man.c:3548
+#: src/man.c:3551
#, c-format
msgid "internal error: candidate type %d out of range"
msgstr "fallu internu: la triba de candidatu %d ta fuera de rangu"
-#: src/man.c:4137
+#: src/man.c:4141
msgid " Manual page "
msgstr "Páxina de manual"
@@ -647,7 +647,7 @@ msgstr "CÓDIGU"
msgid "encoding for output"
msgstr "codificación pa la salida"
-#: src/manconv_main.c:97 src/manpath.c:68
+#: src/manconv_main.c:97 src/manpath.c:66
msgid "produce fewer warnings"
msgstr "produz delles alvertencies"
@@ -661,102 +661,102 @@ msgstr "has especificar una codificación d'entrada"
msgid "must specify an output encoding"
msgstr "has especificar una codificación de salida"
-#: src/mandb.c:112
+#: src/mandb.c:111
msgid "[MANPATH]"
msgstr "[CAMÍN_DE_MAN]"
-#: src/mandb.c:116
+#: src/mandb.c:115
msgid "work quietly, except for 'bogus' warning"
msgstr "trabaya de mou silenciosu quitante cuando heba alvertencies «falses»"
-#: src/mandb.c:117
+#: src/mandb.c:116
msgid "don't look for or add stray cats to the dbs"
msgstr "nun gueta o amiesta cats güerfanos a les bases de datos"
-#: src/mandb.c:118
+#: src/mandb.c:117
msgid "don't purge obsolete entries from the dbs"
msgstr "nun purga les entraes obsoletes de les bases de datos"
-#: src/mandb.c:119
+#: src/mandb.c:118
msgid "produce user databases only"
msgstr "produz namái bases de datos d'usuariu"
-#: src/mandb.c:120
+#: src/mandb.c:119
msgid "create dbs from scratch, rather than updating"
msgstr "crea bases de datos nueves en cuentes d'anovales"
-#: src/mandb.c:121
+#: src/mandb.c:120
msgid "check manual pages for correctness"
msgstr "comprueba que les páxines de manual seyan correutes"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "FILENAME"
msgstr "NOME_DE_FICHERU"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "update just the entry for this filename"
msgstr "namái anueva la entrada pa esti nome de ficheru"
-#: src/mandb.c:217
+#: src/mandb.c:216
#, c-format
msgid "can't remove %s"
msgstr "nun pue desaniciase %s"
-#: src/mandb.c:281
+#: src/mandb.c:280
#, c-format
msgid "can't write to %s"
msgstr "nun pue escribise en %s"
-#: src/mandb.c:286
+#: src/mandb.c:285
#, c-format
msgid "can't read from %s"
msgstr "nun pue lleese dende %s"
-#: src/mandb.c:455
+#: src/mandb.c:457
#, c-format
msgid "Processing manual pages under %s...\n"
msgstr "Procesando les páxines de manual so %s...\n"
-#: src/mandb.c:672 src/mandb.c:698
+#: src/mandb.c:666 src/mandb.c:692
#, c-format
msgid "Removing obsolete cat directory %s...\n"
msgstr "Desaniciando'l direutoriu cat obsoletu %s...\n"
-#: src/mandb.c:848
+#: src/mandb.c:842
#, c-format
msgid "warning: no MANDB_MAP directives in %s, using your manpath"
msgstr ""
"alvertencia: nun hai denguna direutiva MANDB_MAP en %s, usando'l to manpath"
-#: src/mandb.c:920
+#: src/mandb.c:914
#, c-format
msgid "%d man subdirectory contained newer manual pages.\n"
msgid_plural "%d man subdirectories contained newer manual pages.\n"
msgstr[0] "%d sodireutoriu man contenía páxines de manual más nueves.\n"
msgstr[1] "%d sodireutorios man conteníen páxines de manual más nueves.\n"
-#: src/mandb.c:925
+#: src/mandb.c:919
#, c-format
msgid "%d manual page was added.\n"
msgid_plural "%d manual pages were added.\n"
msgstr[0] "Amestóse %d páxina de manual.\n"
msgstr[1] "Amestáronse %d páxines de manual.\n"
-#: src/mandb.c:929
+#: src/mandb.c:923
#, c-format
msgid "%d stray cat was added.\n"
msgid_plural "%d stray cats were added.\n"
msgstr[0] "Amestóse %d cat güérfanu.\n"
msgstr[1] "Amestáronse %d cats güérfanos.\n"
-#: src/mandb.c:934
+#: src/mandb.c:928
#, c-format
msgid "%d old database entry was purged.\n"
msgid_plural "%d old database entries were purged.\n"
msgstr[0] "Purgóse %d entrada vieya de la base de datos.\n"
msgstr[1] "Purgáronse %d entraes vieyes de la base de datos.\n"
-#: src/mandb.c:952
+#: src/mandb.c:946
#, c-format
msgid "No databases created."
msgstr "Nun hai bases de datos creaes."
@@ -832,15 +832,15 @@ msgstr "nun pue determinase'l direutoriu actual"
msgid "warning: %s does not begin with %s"
msgstr "alvertencia: %s nun apenza per %s"
-#: src/manpath.c:65
+#: src/manpath.c:63
msgid "show relative catpaths"
msgstr "amuesa caminos rellativos de cat"
-#: src/manpath.c:66
+#: src/manpath.c:64
msgid "show the entire global manpath"
msgstr "amuesa'l camín de man global enteru"
-#: src/manpath.c:128
+#: src/manpath.c:126
#, c-format
msgid "warning: no global manpaths set in config file %s"
msgstr ""
@@ -872,96 +872,96 @@ msgstr "alvertencia: nun pue anovase la caché del índiz %s"
msgid "%s is self referencing"
msgstr "%s fai referencia a sigo mesmu"
-#: src/whatis.c:123
+#: src/whatis.c:122
msgid "KEYWORD..."
msgstr "PALLABRA_CLAVE..."
-#: src/whatis.c:124
+#: src/whatis.c:123
msgid "The --regex option is enabled by default."
msgstr "La opción --regex ta activada por defeutu"
-#: src/whatis.c:128
+#: src/whatis.c:127
msgid "print verbose warning messages"
msgstr "amuesa mensaxes d'alvertencia detallaos"
-#: src/whatis.c:129
+#: src/whatis.c:128
msgid "interpret each keyword as a regex"
msgstr "interpreta cada pallabra clave como una espresión regular"
-#: src/whatis.c:130
+#: src/whatis.c:129
msgid "search each keyword for exact match"
msgstr "gueta coincidencies exautes en cada pallabra clave"
-#: src/whatis.c:131
+#: src/whatis.c:130
msgid "the keyword(s) contain wildcards"
msgstr "Les pallabres clave contienen comodinos"
-#: src/whatis.c:132
+#: src/whatis.c:131
msgid "require all keywords to match"
msgstr "rique que toles pallabres clave concasen"
-#: src/whatis.c:133
+#: src/whatis.c:132
msgid "do not trim output to terminal width"
msgstr "nun axusta la salida al anchor de la terminal"
-#: src/whatis.c:134
+#: src/whatis.c:133
msgid "search only these sections (colon-separated)"
msgstr "gueta namái estes seiciones (separtaes per comes)"
-#: src/whatis.c:138
+#: src/whatis.c:137
msgid "define the locale for this search"
msgstr "define la locale d'esta gueta"
-#: src/whatis.c:235
+#: src/whatis.c:234
#, c-format
msgid "%s what?\n"
msgstr "¿%s qué?\n"
-#: src/whatis.c:412 src/whatis.c:430
+#: src/whatis.c:410 src/whatis.c:428
#, c-format
msgid "warning: %s contains a pointer loop"
msgstr "alvertencia: %s contién un bucle de punteros"
-#: src/whatis.c:424 src/whatis.c:432
+#: src/whatis.c:422 src/whatis.c:430
msgid "(unknown subject)"
msgstr "(asuntu desconocíu)"
-#: src/whatis.c:863
+#: src/whatis.c:861
#, c-format
msgid "%s: nothing appropriate.\n"
msgstr "%s: nun hai nada afayadizo.\n"
-#: src/zsoelim.l:171
+#: src/zsoelim.l:178
#, c-format
msgid "%s:%d: .so requests nested too deeply or are recursive"
msgstr "%s:%d: les solicitúes .so tán perañeraes o son recursives"
-#: src/zsoelim.l:186
+#: src/zsoelim.l:193
#, c-format
msgid "%s:%d: warning: failed .so request"
msgstr "%s:%d: alvertancia: fallu na solicitú .so"
-#: src/zsoelim.l:208
+#: src/zsoelim.l:215
#, c-format
msgid "%s:%d: warning: newline in .so request, ignoring"
msgstr "%s:%d: alvertencia: llinia nueva na solicitú .so, inorando"
-#: src/zsoelim.l:268
+#: src/zsoelim.l:275
#, c-format
msgid "%s:%d: warning: malformed .lf request, ignoring"
msgstr "%s:%d: alvertencia: solicitú .lf malformada, inorando"
-#: src/zsoelim.l:278
+#: src/zsoelim.l:285
#, c-format
msgid "%s:%d: warning: newline in .lf request, ignoring"
msgstr "%s:%d: alvertencia: llinia nueva na solicitú .lf, inorando"
-#: src/zsoelim.l:318
+#: src/zsoelim.l:325
#, c-format
msgid "%s:%d: unterminated quote in roff request"
msgstr "%s:%d: comilles ensin zarrar na solicitú roff"
-#: src/zsoelim_main.c:70
+#: src/zsoelim_main.c:69
msgid "compatibility switch (ignored)"
msgstr "cambéu de compatibilidá (inórase)"
diff --git a/po/ca.po b/po/ca.po
index 331d6a69..8c414918 100644
--- a/po/ca.po
+++ b/po/ca.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: man-db 2.7.0-pre1\n"
"Report-Msgid-Bugs-To: Colin Watson <cjwatson@debian.org>\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2015-08-04 08:34+0200\n"
"Last-Translator: Jordi Mallach <jordi@gnu.org>\n"
"Language-Team: Catalan <ca@dodds.net>\n"
@@ -69,7 +69,7 @@ msgstr[1] "només hi ha %d camps en el contingut"
msgid "bad fetch on multi key %s"
msgstr "recepció errònia en clau múltiple %s"
-#: libdb/db_lookup.c:443 src/whatis.c:739
+#: libdb/db_lookup.c:443 src/whatis.c:737
#, c-format
msgid "Database %s corrupted; rebuild with mandb --create"
msgstr "La base de dades %s està corrompuda; reconstruïu-la amb mandb --create"
@@ -79,28 +79,28 @@ msgstr "La base de dades %s està corrompuda; reconstruïu-la amb mandb --create
msgid "warning: %s has no version identifier\n"
msgstr "avís: %s no té un identificador de versió\n"
-#: libdb/db_ver.c:56
+#: libdb/db_ver.c:57
#, c-format
msgid "warning: %s is version %s, expecting %s\n"
msgstr "avís: %s té versió %s, s'espera %s\n"
-#: libdb/db_ver.c:78
+#: libdb/db_ver.c:79
#, c-format
msgid "fatal: unable to insert version identifier into %s"
msgstr "fatal: no s'ha pogut inserir un identificador de versió en %s"
-#: src/accessdb.c:61
+#: src/accessdb.c:59
msgid "[MAN DATABASE]"
msgstr "[BASE DE DADES DE MAN]"
-#: src/accessdb.c:62
+#: src/accessdb.c:60
#, c-format
msgid "The man database defaults to %s%s."
msgstr "La base de dades de man per defecte és %s%s."
-#: src/accessdb.c:65 src/catman.c:103 src/globbing_test.c:62
-#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:115
-#: src/manpath.c:67 src/whatis.c:127 src/zsoelim_main.c:69
+#: src/accessdb.c:63 src/catman.c:100 src/globbing_test.c:58
+#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:114
+#: src/manpath.c:65 src/whatis.c:126 src/zsoelim_main.c:68
msgid "emit debugging messages"
msgstr "produeix informació de depuració"
@@ -109,46 +109,46 @@ msgstr "produeix informació de depuració"
msgid "can't open %s for reading"
msgstr "no es pot obrir %s per a lectura"
-#: src/catman.c:100
+#: src/catman.c:97
msgid "[SECTION...]"
msgstr "[SECCIÓ…]"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "PATH"
msgstr "CAMÍ"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "set search path for manual pages to PATH"
msgstr "estableix el camí de cerca de pàgines de manual a CAMÍ"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "FILE"
msgstr "FITXER"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "use this user configuration file"
msgstr "empra aquest fitxer de configuració de l'usuari"
-#: src/catman.c:198
+#: src/catman.c:195
#, c-format
msgid "man command failed with exit status %d"
msgstr "l'ordre de man ha fallat amb l'estat d'eixida %d"
-#: src/catman.c:237
+#: src/catman.c:235
#, c-format
msgid "cannot read database %s"
msgstr "no es pot llegir la base de dades %s"
# Potser siga només «per», en tot cas crec que «de» és més adequat. ivb
-#: src/catman.c:280
+#: src/catman.c:278
#, c-format
msgid "NULL content for key: %s"
msgstr "contingut NUL de la clau: %s"
# Alguna guia d'estil proposava «S'estan actualitzant...». ivb
-#: src/catman.c:295
+#: src/catman.c:294
#, c-format
msgid ""
"\n"
@@ -158,12 +158,12 @@ msgstr ""
"S'estan actualitzant els fitxers cat per a la secció %s de la jerarquia de "
"man %s\n"
-#: src/catman.c:349
+#: src/catman.c:348
#, c-format
msgid "cannot write within %s"
msgstr "no es pot escriure en %s"
-#: src/catman.c:426
+#: src/catman.c:425
#, c-format
msgid "unable to update %s"
msgstr "no es pot actualitzar %s"
@@ -173,70 +173,70 @@ msgstr "no es pot actualitzar %s"
msgid "warning: %s/man%s/%s.%s*: competing extensions"
msgstr "avís: %s/man%s/%s.%s*: extensions en competència"
-#: src/check_mandirs.c:114 src/check_mandirs.c:613
+#: src/check_mandirs.c:126 src/check_mandirs.c:626
#, c-format
msgid "can't update index cache %s"
msgstr "no es pot actualitzar la memòria cau d'índex %s"
-#: src/check_mandirs.c:242
+#: src/check_mandirs.c:254
#, c-format
msgid "warning: %s: bad symlink or ROFF `.so' request"
msgstr "avís: %s: enllaç simbòlic o petició ROFF «.so» incorrecte"
# «es descarta...» ivb
-#: src/check_mandirs.c:298
+#: src/check_mandirs.c:310
#, c-format
msgid "warning: %s: ignoring empty file"
msgstr "avís: %s: es descarta un fitxer buit"
-#: src/check_mandirs.c:302 src/straycats.c:276
+#: src/check_mandirs.c:314 src/straycats.c:276
#, c-format
msgid "warning: %s: whatis parse for %s(%s) failed"
msgstr "avís: %s: l'anàlisi de whatis per a %s(%s) ha fallat"
-#: src/check_mandirs.c:329 src/check_mandirs.c:498 src/mandb.c:883
+#: src/check_mandirs.c:341 src/check_mandirs.c:511 src/mandb.c:877
#: src/straycats.c:84 src/straycats.c:303 src/ult_src.c:81
#, c-format
msgid "can't search directory %s"
msgstr "no es pot cercar el directori %s"
-#: src/check_mandirs.c:378 src/man.c:1687
+#: src/check_mandirs.c:390 src/man.c:1689
#, c-format
msgid "can't chown %s"
msgstr "no es pot fer «chown» a %s"
-#: src/check_mandirs.c:400 src/check_mandirs.c:423
+#: src/check_mandirs.c:412 src/check_mandirs.c:435
#, c-format
msgid "warning: cannot create catdir %s"
msgstr "avís: no es pot crear el directori de cat %s"
-#: src/check_mandirs.c:455 src/man.c:1699 src/mandb.c:233
+#: src/check_mandirs.c:467 src/man.c:1701 src/mandb.c:232
#, c-format
msgid "can't chmod %s"
msgstr "no es pot fer «chmod» a %s"
-#: src/check_mandirs.c:503
+#: src/check_mandirs.c:516
#, c-format
msgid "can't change to directory %s"
msgstr "no es pot canviar al directori %s"
-#: src/check_mandirs.c:553
+#: src/check_mandirs.c:566
#, c-format
msgid "can't create index cache %s"
msgstr "no es pot crear la memòria cau d'índex %s"
# S'està... Per/per a/de? ivb
-#: src/check_mandirs.c:578
+#: src/check_mandirs.c:591
#, c-format
msgid "Updating index cache for path `%s/%s'. Wait..."
msgstr "S'està actualitzant la memòria cau d'índex del camí «%s/%s». Espereu…"
-#: src/check_mandirs.c:640 src/check_mandirs.c:701
+#: src/check_mandirs.c:653 src/check_mandirs.c:714
msgid "done.\n"
msgstr "fet.\n"
# S'estan... ivb
-#: src/check_mandirs.c:963
+#: src/check_mandirs.c:977
#, c-format
msgid "Purging old database entries in %s...\n"
msgstr "S'estan purgant entrades antigues de la base de dades en %s…\n"
@@ -253,51 +253,51 @@ msgstr "avís: no s'ha pogut desar l'entrada per a %s(%s)"
msgid "warning: %s: ignoring bogus filename"
msgstr "avís: %s: s'ha descartat un nom de fitxer estrany"
-#: src/globbing_test.c:59
+#: src/globbing_test.c:55
msgid "PATH SECTION NAME"
msgstr "CAMÍ SECCIÓ NOM"
-#: src/globbing_test.c:63 src/man.c:292
+#: src/globbing_test.c:59 src/man.c:292
msgid "EXTENSION"
msgstr "EXTENSIÓ"
-#: src/globbing_test.c:63 src/man.c:293
+#: src/globbing_test.c:59 src/man.c:293
msgid "limit search to extension type EXTENSION"
msgstr "limita la cerca al tipus d'extensió EXTENSIÓ"
-#: src/globbing_test.c:64 src/man.c:294
+#: src/globbing_test.c:60 src/man.c:294
msgid "look for pages case-insensitively (default)"
msgstr ""
"cerca les pàgines sense diferenciar majúscules i minúscules (per defecte)"
-#: src/globbing_test.c:65 src/man.c:295
+#: src/globbing_test.c:61 src/man.c:295
msgid "look for pages case-sensitively"
msgstr "cerca les pàgines diferenciant majúscules i minúscules"
-#: src/globbing_test.c:66
+#: src/globbing_test.c:62
msgid "interpret page name as a regex"
msgstr "interpreta el nom de la pàgina com si fora una expressió regular"
-#: src/globbing_test.c:67
+#: src/globbing_test.c:63
msgid "the page name contains wildcards"
msgstr "el nom de la pàgina conté comodins"
# Es trunca, es truncarà? ivb
-#: src/lexgrog.l:691
+#: src/lexgrog.l:701
#, c-format
msgid "warning: whatis for %s exceeds %d byte, truncating."
msgid_plural "warning: whatis for %s exceeds %d bytes, truncating."
msgstr[0] "avís: el whatis per a %s s'excedeix en %d octet, es truncarà."
msgstr[1] "avís: el whatis per a %s s'excedeix en %d octets, es truncarà."
-#: src/lexgrog.l:844 src/man.c:2268 src/man.c:2350 src/man.c:2448
+#: src/lexgrog.l:854 src/man.c:2270 src/man.c:2354 src/man.c:2452
#: src/manconv_main.c:168 src/straycats.c:218 src/ult_src.c:321
-#: src/ult_src.c:335 src/zsoelim.l:512
+#: src/ult_src.c:335 src/zsoelim.l:519
#, c-format
msgid "can't open %s"
msgstr "no es pot obrir %s"
-#: src/lexgrog_test.c:69 src/zsoelim_main.c:66
+#: src/lexgrog_test.c:69 src/zsoelim_main.c:65
msgid "FILE..."
msgstr "FITXER…"
@@ -396,7 +396,7 @@ msgstr "mostra el font de la pàgina codificat amb CODIFICACIÓ"
msgid "Finding manual pages:"
msgstr "Cerca de pàgines de manual:"
-#: src/man.c:287 src/whatis.c:138
+#: src/man.c:287 src/whatis.c:137
msgid "LOCALE"
msgstr "LOCALE"
@@ -404,15 +404,15 @@ msgstr "LOCALE"
msgid "define the locale for this particular man search"
msgstr "defineix el locale per a aquesta cerca de manuals concreta"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "SYSTEM"
msgstr "SISTEMA"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "use manual pages from other systems"
msgstr "empra pàgines de manual d'altres sistemes"
-#: src/man.c:290 src/whatis.c:134
+#: src/man.c:290 src/whatis.c:133
msgid "LIST"
msgstr "LLISTA"
@@ -529,26 +529,26 @@ msgstr "utilitza groff i força la producció de ditroff"
# per/per a/de? ivb
# crec que és millor per a. jm
-#: src/man.c:597 src/man.c:733
+#: src/man.c:599 src/man.c:735
#, c-format
msgid "No manual entry for %s\n"
msgstr "No hi ha una entrada de manual per a %s\n"
-#: src/man.c:599
+#: src/man.c:601
#, c-format
msgid "(Alternatively, what manual page do you want from section %s?)\n"
msgstr "(Alternativament, quina pàgina de manual voleu de la secció %s?)\n"
-#: src/man.c:603
+#: src/man.c:605
msgid "What manual page do you want?\n"
msgstr "Quina pàgina de manual voleu?\n"
-#: src/man.c:730
+#: src/man.c:732
#, c-format
msgid "No manual entry for %s in section %s\n"
msgstr "No hi ha una entrada de manual per a %s a la secció %s\n"
-#: src/man.c:739
+#: src/man.c:741
#, c-format
msgid "See '%s' for help when manual pages are not available.\n"
msgstr ""
@@ -556,12 +556,12 @@ msgstr ""
"disponibles.\n"
# «es descarta el...» ivb
-#: src/man.c:1347
+#: src/man.c:1349
#, c-format
msgid "ignoring unknown preprocessor `%c'"
msgstr "es descarta el preprocessador desconegut «%c»"
-#: src/man.c:1710 src/mandb.c:224
+#: src/man.c:1712 src/mandb.c:223
#, c-format
msgid "can't rename %s to %s"
msgstr "no es pot reanomenar %s a %s"
@@ -569,43 +569,43 @@ msgstr "no es pot reanomenar %s a %s"
# Segurament es referirà a l'{a,m,c}time; hores/dates? ivb
# I en eixe cas, què sugereixes? jm
# Allò que s'use majoritàriament pel cas, només era per assegurar-me. ivb
-#: src/man.c:1727
+#: src/man.c:1729
#, c-format
msgid "can't set times on %s"
msgstr "no es poden establir les hores en %s"
-#: src/man.c:1736 src/man.c:1773
+#: src/man.c:1738 src/man.c:1775
#, c-format
msgid "can't unlink %s"
msgstr "no es pot desenllaçar %s"
-#: src/man.c:1803
+#: src/man.c:1805
#, c-format
msgid "can't create temporary cat for %s"
msgstr "no es pot crear un fitxer cat temporal per a %s"
-#: src/man.c:1913
+#: src/man.c:1915
#, c-format
msgid "can't create temporary directory"
msgstr "no es pot crear un directori temporal"
-#: src/man.c:1924
+#: src/man.c:1926
#, c-format
msgid "can't open temporary file %s"
msgstr "no es pot obrir el fitxer temporal %s"
-#: src/man.c:1954 src/man.c:1983
+#: src/man.c:1956 src/man.c:1985
#, c-format
msgid "can't remove directory %s"
msgstr "no es pot eliminar el directori %s"
-#: src/man.c:2112
+#: src/man.c:2114
#, c-format
msgid "--Man-- next: %s [ view (return) | skip (Ctrl-D) | quit (Ctrl-C) ]\n"
msgstr ""
"--Man-- següent: %s [ visualitza (retorn) | omet (Ctrl-D) | surt (Ctrl-C ]\n"
-#: src/man.c:2393
+#: src/man.c:2397
#, c-format
msgid ""
"\n"
@@ -614,29 +614,29 @@ msgstr ""
"\n"
"no es pot escriure a %s en el mode catman"
-#: src/man.c:2474
+#: src/man.c:2477
#, c-format
msgid "Can't convert %s to cat name"
msgstr "No es pot convertir %s a nom cat"
# Lo de sempre, deprecated? jm
-#: src/man.c:3203
+#: src/man.c:3206
#, c-format
msgid "%s: relying on whatis refs is deprecated\n"
msgstr "%s: basar-se en referències whatis està desaconsellat\n"
-#: src/man.c:3346 src/man.c:4196
+#: src/man.c:3349 src/man.c:4200
#, c-format
msgid "mandb command failed with exit status %d"
msgstr "l'ordre de mandb ha fallat amb l'estat d'eixida %d"
-#: src/man.c:3548
+#: src/man.c:3551
#, c-format
msgid "internal error: candidate type %d out of range"
msgstr ""
"s'ha produït un error intern: el candidat de tipus %d està fora de rang"
-#: src/man.c:4137
+#: src/man.c:4141
msgid " Manual page "
msgstr " Pàgina de manual "
@@ -669,7 +669,7 @@ msgstr "CODI"
msgid "encoding for output"
msgstr "codificació per a l'eixida"
-#: src/manconv_main.c:97 src/manpath.c:68
+#: src/manconv_main.c:97 src/manpath.c:66
msgid "produce fewer warnings"
msgstr "produeix menys avisos"
@@ -683,105 +683,105 @@ msgstr "s'ha d'especificar una codificació d'entrada"
msgid "must specify an output encoding"
msgstr "s'ha d'especificar una codificació d'eixida"
-#: src/mandb.c:112
+#: src/mandb.c:111
msgid "[MANPATH]"
msgstr "[CAMÍ DE MAN]"
-#: src/mandb.c:116
+#: src/mandb.c:115
msgid "work quietly, except for 'bogus' warning"
msgstr "treballa silenciosament, excepte per a avisos estranys"
-#: src/mandb.c:117
+#: src/mandb.c:116
msgid "don't look for or add stray cats to the dbs"
msgstr "no cerques o afegisques cats orfes a les bd"
-#: src/mandb.c:118
+#: src/mandb.c:117
msgid "don't purge obsolete entries from the dbs"
msgstr "no purgues entrades obsoletes de les bd"
-#: src/mandb.c:119
+#: src/mandb.c:118
msgid "produce user databases only"
msgstr "produeix només bases de dades d'usuari"
-#: src/mandb.c:120
+#: src/mandb.c:119
msgid "create dbs from scratch, rather than updating"
msgstr "crea db noves, en comptes d'actualitzar-les"
-#: src/mandb.c:121
+#: src/mandb.c:120
msgid "check manual pages for correctness"
msgstr "comprova que les pàgines de manual són correctes"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "FILENAME"
msgstr "NOMFITXER"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "update just the entry for this filename"
msgstr "actualitza només l'entrada per a aquest nom de fitxer"
-#: src/mandb.c:217
+#: src/mandb.c:216
#, c-format
msgid "can't remove %s"
msgstr "no es pot eliminar %s"
-#: src/mandb.c:281
+#: src/mandb.c:280
#, c-format
msgid "can't write to %s"
msgstr "no es pot escriure en %s"
-#: src/mandb.c:286
+#: src/mandb.c:285
#, c-format
msgid "can't read from %s"
msgstr "no es pot llegir de %s"
# Si es refereix a un directori, «sota». ivb
-#: src/mandb.c:455
+#: src/mandb.c:457
#, c-format
msgid "Processing manual pages under %s...\n"
msgstr "Processant pàgines de manual sota %s…\n"
# S'estan... ivb
-#: src/mandb.c:672 src/mandb.c:698
+#: src/mandb.c:666 src/mandb.c:692
#, c-format
msgid "Removing obsolete cat directory %s...\n"
msgstr "S'està suprimint el directori de cats obsolet %s…\n"
# s'està utilitzant/s'utilitza/s'utilitzarà ivb
-#: src/mandb.c:848
+#: src/mandb.c:842
#, c-format
msgid "warning: no MANDB_MAP directives in %s, using your manpath"
msgstr ""
"avís: no hi ha directives MANDB_MAP en %s, s'utilitzarà el vostre camí de man"
-#: src/mandb.c:920
+#: src/mandb.c:914
#, c-format
msgid "%d man subdirectory contained newer manual pages.\n"
msgid_plural "%d man subdirectories contained newer manual pages.\n"
msgstr[0] "%d subdirectori de man contenia pàgines de manual més noves.\n"
msgstr[1] "%d subdirectoris de man contenien pàgines de manual més noves.\n"
-#: src/mandb.c:925
+#: src/mandb.c:919
#, c-format
msgid "%d manual page was added.\n"
msgid_plural "%d manual pages were added.\n"
msgstr[0] "S'ha afegit %d pàgina de manual.\n"
msgstr[1] "S'han afegit %d pàgines de manual.\n"
-#: src/mandb.c:929
+#: src/mandb.c:923
#, c-format
msgid "%d stray cat was added.\n"
msgid_plural "%d stray cats were added.\n"
msgstr[0] "S'ha afegit %d cat orfe.\n"
msgstr[1] "S'han afegit %d cats orfes.\n"
-#: src/mandb.c:934
+#: src/mandb.c:928
#, c-format
msgid "%d old database entry was purged.\n"
msgid_plural "%d old database entries were purged.\n"
msgstr[0] "S'ha purgat %d entrada vella de la base de dades.\n"
msgstr[1] "S'han purgat %d entrades velles de la base de dades.\n"
-#: src/mandb.c:952
+#: src/mandb.c:946
#, c-format
msgid "No databases created."
msgstr "No s'ha creat cap base de dades."
@@ -861,15 +861,15 @@ msgstr "no es pot determinar el directori actual"
msgid "warning: %s does not begin with %s"
msgstr "avís: %s no comença amb %s"
-#: src/manpath.c:65
+#: src/manpath.c:63
msgid "show relative catpaths"
msgstr "mostra els camins de cat relatius"
-#: src/manpath.c:66
+#: src/manpath.c:64
msgid "show the entire global manpath"
msgstr "mostra el camí de man global sencer"
-#: src/manpath.c:128
+#: src/manpath.c:126
#, c-format
msgid "warning: no global manpaths set in config file %s"
msgstr ""
@@ -901,54 +901,54 @@ msgstr "no es pot actualitzar la memòria cau d'índex %s"
msgid "%s is self referencing"
msgstr "%s es referència a ell mateix"
-#: src/whatis.c:123
+#: src/whatis.c:122
msgid "KEYWORD..."
msgstr "PARAULACLAU…"
-#: src/whatis.c:124
+#: src/whatis.c:123
msgid "The --regex option is enabled by default."
msgstr "L'opció --regex està habilitada per defecte."
-#: src/whatis.c:128
+#: src/whatis.c:127
msgid "print verbose warning messages"
msgstr "mostra missatges d'avís detallats"
-#: src/whatis.c:129
+#: src/whatis.c:128
msgid "interpret each keyword as a regex"
msgstr "interpreta cada paraula clau com si fora una expressió regular"
-#: src/whatis.c:130
+#: src/whatis.c:129
msgid "search each keyword for exact match"
msgstr "cerca coincidències exactes en cada paraula clau"
-#: src/whatis.c:131
+#: src/whatis.c:130
msgid "the keyword(s) contain wildcards"
msgstr "les paraules clau contenen comodins"
-#: src/whatis.c:132
+#: src/whatis.c:131
msgid "require all keywords to match"
msgstr "requereix que concorden totes les paraules clau"
-#: src/whatis.c:133
+#: src/whatis.c:132
msgid "do not trim output to terminal width"
msgstr "no ajustes l'eixida a l'amplada del terminal"
-#: src/whatis.c:134
+#: src/whatis.c:133
msgid "search only these sections (colon-separated)"
msgstr "cerca només en aquestes seccions (separades per punts i coma)"
-#: src/whatis.c:138
+#: src/whatis.c:137
msgid "define the locale for this search"
msgstr "defineix el locale per a aquesta cerca"
# «comor?» ivb
# «el que tu has dit entendre no he pogut» yoda
-#: src/whatis.c:235
+#: src/whatis.c:234
#, c-format
msgid "%s what?\n"
msgstr "%s què?\n"
-#: src/whatis.c:412 src/whatis.c:430
+#: src/whatis.c:410 src/whatis.c:428
#, c-format
msgid "warning: %s contains a pointer loop"
msgstr "avís: %s conté un bucle de punters"
@@ -957,49 +957,49 @@ msgstr "avís: %s conté un bucle de punters"
# Gènere? Nombre? És bo posar-ne un comentari. ivb
# Pareix que es refereix al resultat d'un whois. «whois desconegut?» jm
# Arreglat en 2.4.0pre. jm
-#: src/whatis.c:424 src/whatis.c:432
+#: src/whatis.c:422 src/whatis.c:430
msgid "(unknown subject)"
msgstr "(assumpte desconegut)"
# «res d'apropiat»? ivb
-#: src/whatis.c:863
+#: src/whatis.c:861
#, c-format
msgid "%s: nothing appropriate.\n"
msgstr "%s: res d'apropiat.\n"
-#: src/zsoelim.l:171
+#: src/zsoelim.l:178
#, c-format
msgid "%s:%d: .so requests nested too deeply or are recursive"
msgstr ""
"%s:%d: les peticions de .so estan niuades amb massa profunditat o són "
"recursives"
-#: src/zsoelim.l:186
+#: src/zsoelim.l:193
#, c-format
msgid "%s:%d: warning: failed .so request"
msgstr "%s:%d: avís: ha fallat la petició de .so"
-#: src/zsoelim.l:208
+#: src/zsoelim.l:215
#, c-format
msgid "%s:%d: warning: newline in .so request, ignoring"
msgstr "%s:%d: avís: nova línia a la petició de .so, es descarta"
-#: src/zsoelim.l:268
+#: src/zsoelim.l:275
#, c-format
msgid "%s:%d: warning: malformed .lf request, ignoring"
msgstr "%s:%d: avís: la petició de .lf és malformada, es descarta"
-#: src/zsoelim.l:278
+#: src/zsoelim.l:285
#, c-format
msgid "%s:%d: warning: newline in .lf request, ignoring"
msgstr "%s:%d: avís: nova línia a la petició .lf, es descarta"
-#: src/zsoelim.l:318
+#: src/zsoelim.l:325
#, c-format
msgid "%s:%d: unterminated quote in roff request"
msgstr "%s:%d: cometa no terminada a la petició roff"
-#: src/zsoelim_main.c:70
+#: src/zsoelim_main.c:69
msgid "compatibility switch (ignored)"
msgstr "commutador de compatibilitat (descartat)"
diff --git a/po/cs.po b/po/cs.po
index 966d6e89..ea79444c 100644
--- a/po/cs.po
+++ b/po/cs.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: man-db 2.6.1-pre1\n"
"Report-Msgid-Bugs-To: Colin Watson <cjwatson@debian.org>\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2012-04-07 19:04+0100\n"
"Last-Translator: Marek Černocký <marek@manet.cz>\n"
"Language-Team: Czech <translation-team-cs@lists.sourceforge.net>\n"
@@ -66,7 +66,7 @@ msgstr[2] "pouze %d položek v obsahu"
msgid "bad fetch on multi key %s"
msgstr "nelze získat vícenásobný klíč %s"
-#: libdb/db_lookup.c:443 src/whatis.c:739
+#: libdb/db_lookup.c:443 src/whatis.c:737
#, c-format
msgid "Database %s corrupted; rebuild with mandb --create"
msgstr "Databáze %s je poškozena; znovu ji sestavte pomocí „mandb --create“"
@@ -76,28 +76,28 @@ msgstr "Databáze %s je poškozena; znovu ji sestavte pomocí „mandb --create
msgid "warning: %s has no version identifier\n"
msgstr "varování: soubor %s nemá identifikátor verze\n"
-#: libdb/db_ver.c:56
+#: libdb/db_ver.c:57
#, c-format
msgid "warning: %s is version %s, expecting %s\n"
msgstr "varování: soubor %s je verze %s, ale očekávána je verze %s\n"
-#: libdb/db_ver.c:78
+#: libdb/db_ver.c:79
#, c-format
msgid "fatal: unable to insert version identifier into %s"
msgstr "fatální chyba: nelze vložit identifikátor verze do souboru %s"
-#: src/accessdb.c:61
+#: src/accessdb.c:59
msgid "[MAN DATABASE]"
msgstr "[MANUÁLOVÁ DATABÁZE]"
-#: src/accessdb.c:62
+#: src/accessdb.c:60
#, c-format
msgid "The man database defaults to %s%s."
msgstr "Výchozí manuálová databáze je %s%s."
-#: src/accessdb.c:65 src/catman.c:103 src/globbing_test.c:62
-#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:115
-#: src/manpath.c:67 src/whatis.c:127 src/zsoelim_main.c:69
+#: src/accessdb.c:63 src/catman.c:100 src/globbing_test.c:58
+#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:114
+#: src/manpath.c:65 src/whatis.c:126 src/zsoelim_main.c:68
msgid "emit debugging messages"
msgstr "vysílat ladicí zprávy"
@@ -106,44 +106,44 @@ msgstr "vysílat ladicí zprávy"
msgid "can't open %s for reading"
msgstr "soubor %s nelze otevřít pro čtení"
-#: src/catman.c:100
+#: src/catman.c:97
msgid "[SECTION...]"
msgstr "[ODDÍL…]"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "PATH"
msgstr "CESTA"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "set search path for manual pages to PATH"
msgstr "nastavit cestu pro vyhledávání v manuálových stránkách na CESTA"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "FILE"
msgstr "SOUBOR"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "use this user configuration file"
msgstr "použít tento soubor s uživatelským nastavením"
-#: src/catman.c:198
+#: src/catman.c:195
#, c-format
msgid "man command failed with exit status %d"
msgstr "příkaz man skončil s návratovým kódem %d"
-#: src/catman.c:237
+#: src/catman.c:235
#, c-format
msgid "cannot read database %s"
msgstr "databázi %s nelze číst"
-#: src/catman.c:280
+#: src/catman.c:278
#, c-format
msgid "NULL content for key: %s"
msgstr "položka pod klíčem %s je prázdná"
-#: src/catman.c:295
+#: src/catman.c:294
#, c-format
msgid ""
"\n"
@@ -152,12 +152,12 @@ msgstr ""
"\n"
"Aktualizují se katalogové soubory pro oddíl %s v manuálové hierarchii %s\n"
-#: src/catman.c:349
+#: src/catman.c:348
#, c-format
msgid "cannot write within %s"
msgstr "nelze zapisovat do %s"
-#: src/catman.c:426
+#: src/catman.c:425
#, c-format
msgid "unable to update %s"
msgstr "nelze aktualizovat %s"
@@ -167,67 +167,67 @@ msgstr "nelze aktualizovat %s"
msgid "warning: %s/man%s/%s.%s*: competing extensions"
msgstr "varování: %s/man%s/%s.%s*: neslučitelné přípony"
-#: src/check_mandirs.c:114 src/check_mandirs.c:613
+#: src/check_mandirs.c:126 src/check_mandirs.c:626
#, c-format
msgid "can't update index cache %s"
msgstr "nelze aktualizovat rejstřík %s"
-#: src/check_mandirs.c:242
+#: src/check_mandirs.c:254
#, c-format
msgid "warning: %s: bad symlink or ROFF `.so' request"
msgstr "varování: %s: chybný symbolický odkaz nebo požadavek „.so“ od ROFF"
-#: src/check_mandirs.c:298
+#: src/check_mandirs.c:310
#, c-format
msgid "warning: %s: ignoring empty file"
msgstr "varování: %s: ignoruje se prázdný soubor"
-#: src/check_mandirs.c:302 src/straycats.c:276
+#: src/check_mandirs.c:314 src/straycats.c:276
#, c-format
msgid "warning: %s: whatis parse for %s(%s) failed"
msgstr "varování: %s: selhalo zpracování programem whatis pro %s(%s)"
-#: src/check_mandirs.c:329 src/check_mandirs.c:498 src/mandb.c:883
+#: src/check_mandirs.c:341 src/check_mandirs.c:511 src/mandb.c:877
#: src/straycats.c:84 src/straycats.c:303 src/ult_src.c:81
#, c-format
msgid "can't search directory %s"
msgstr "nelze prohledat složku %s"
-#: src/check_mandirs.c:378 src/man.c:1687
+#: src/check_mandirs.c:390 src/man.c:1689
#, c-format
msgid "can't chown %s"
msgstr "nelze změnit vlastnictví %s"
-#: src/check_mandirs.c:400 src/check_mandirs.c:423
+#: src/check_mandirs.c:412 src/check_mandirs.c:435
#, c-format
msgid "warning: cannot create catdir %s"
msgstr "varování: nelze vytvořit složku %s pro katalogy"
-#: src/check_mandirs.c:455 src/man.c:1699 src/mandb.c:233
+#: src/check_mandirs.c:467 src/man.c:1701 src/mandb.c:232
#, c-format
msgid "can't chmod %s"
msgstr "nelze změnit oprávnění k %s"
-#: src/check_mandirs.c:503
+#: src/check_mandirs.c:516
#, c-format
msgid "can't change to directory %s"
msgstr "nelze se přepnout do složky %s"
-#: src/check_mandirs.c:553
+#: src/check_mandirs.c:566
#, c-format
msgid "can't create index cache %s"
msgstr "nelze vytvořit rejstřík %s"
-#: src/check_mandirs.c:578
+#: src/check_mandirs.c:591
#, c-format
msgid "Updating index cache for path `%s/%s'. Wait..."
msgstr "Aktualizuje se rejstřík pro cestu „%s/%s“. Čekejte…"
-#: src/check_mandirs.c:640 src/check_mandirs.c:701
+#: src/check_mandirs.c:653 src/check_mandirs.c:714
msgid "done.\n"
msgstr "dokončeno.\n"
-#: src/check_mandirs.c:963
+#: src/check_mandirs.c:977
#, c-format
msgid "Purging old database entries in %s...\n"
msgstr "Mažou se staré databázové záznamy v %s…\n"
@@ -242,35 +242,35 @@ msgstr "varování: selhalo uchování záznamu pro %s(%s)"
msgid "warning: %s: ignoring bogus filename"
msgstr "varování: %s: ignoruje se falešný název souboru"
-#: src/globbing_test.c:59
+#: src/globbing_test.c:55
msgid "PATH SECTION NAME"
msgstr "CESTA ODDÍL NÁZEV"
-#: src/globbing_test.c:63 src/man.c:292
+#: src/globbing_test.c:59 src/man.c:292
msgid "EXTENSION"
msgstr "PŘÍPONA"
-#: src/globbing_test.c:63 src/man.c:293
+#: src/globbing_test.c:59 src/man.c:293
msgid "limit search to extension type EXTENSION"
msgstr "omezit hledání na přípony typu PŘÍPONA"
-#: src/globbing_test.c:64 src/man.c:294
+#: src/globbing_test.c:60 src/man.c:294
msgid "look for pages case-insensitively (default)"
msgstr "při hledání stránek nerozlišovat velikost písmen (výchozí)"
-#: src/globbing_test.c:65 src/man.c:295
+#: src/globbing_test.c:61 src/man.c:295
msgid "look for pages case-sensitively"
msgstr "při hledání stránek rozlišovat velikost písmen"
-#: src/globbing_test.c:66
+#: src/globbing_test.c:62
msgid "interpret page name as a regex"
msgstr "považovat název stránky za regulární výraz"
-#: src/globbing_test.c:67
+#: src/globbing_test.c:63
msgid "the page name contains wildcards"
msgstr "název stránky obsahuje divoké znaky"
-#: src/lexgrog.l:691
+#: src/lexgrog.l:701
#, c-format
msgid "warning: whatis for %s exceeds %d byte, truncating."
msgid_plural "warning: whatis for %s exceeds %d bytes, truncating."
@@ -278,14 +278,14 @@ msgstr[0] "varování: program whatis pro %s překročil %d bajt, bude zkrácen"
msgstr[1] "varování: program whatis pro %s překročil %d bajty, bude zkrácen"
msgstr[2] "varování: program whatis pro %s překročil %d bajtů, bude zkrácen"
-#: src/lexgrog.l:844 src/man.c:2268 src/man.c:2350 src/man.c:2448
+#: src/lexgrog.l:854 src/man.c:2270 src/man.c:2354 src/man.c:2452
#: src/manconv_main.c:168 src/straycats.c:218 src/ult_src.c:321
-#: src/ult_src.c:335 src/zsoelim.l:512
+#: src/ult_src.c:335 src/zsoelim.l:519
#, c-format
msgid "can't open %s"
msgstr "nelze otevřít soubor %s"
-#: src/lexgrog_test.c:69 src/zsoelim_main.c:66
+#: src/lexgrog_test.c:69 src/zsoelim_main.c:65
msgid "FILE..."
msgstr "SOUBOR…"
@@ -384,7 +384,7 @@ msgstr "vypsat zdrojovou stránku kódovanou v KÓDOVÁNÍ"
msgid "Finding manual pages:"
msgstr "Hledání manuálových stránek:"
-#: src/man.c:287 src/whatis.c:138
+#: src/man.c:287 src/whatis.c:137
msgid "LOCALE"
msgstr "LOCALE"
@@ -394,15 +394,15 @@ msgstr ""
"definovat národní prostředí LOCALE pro toto konkrétní hledání v manuálových "
"stránkách"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "SYSTEM"
msgstr "SYSTÉM"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "use manual pages from other systems"
msgstr "použít manuálové stránky z jiných systémů"
-#: src/man.c:290 src/whatis.c:134
+#: src/man.c:290 src/whatis.c:133
msgid "LIST"
msgstr "SEZNAM"
@@ -516,78 +516,78 @@ msgstr ""
msgid "use groff and force it to produce ditroff"
msgstr "použít program groff a přimět ho vytvořit ditroff"
-#: src/man.c:597 src/man.c:733
+#: src/man.c:599 src/man.c:735
#, c-format
msgid "No manual entry for %s\n"
msgstr "Manuálová stránka pro %s nebyla nalezena\n"
-#: src/man.c:599
+#: src/man.c:601
#, c-format
msgid "(Alternatively, what manual page do you want from section %s?)\n"
msgstr "(Respektive, kterou manuálovou stránku z oddílu %s si přejete?)\n"
-#: src/man.c:603
+#: src/man.c:605
msgid "What manual page do you want?\n"
msgstr "Kterou manuálovou stránku si přejete?\n"
-#: src/man.c:730
+#: src/man.c:732
#, c-format
msgid "No manual entry for %s in section %s\n"
msgstr "Manuálová stránka pro %s nebyla v oddíle %s nalezena\n"
-#: src/man.c:739
+#: src/man.c:741
#, c-format
msgid "See '%s' for help when manual pages are not available.\n"
msgstr "Pokud nejsou manuálové stránky dostupné, použijte pro nápovědu „%s“.\n"
-#: src/man.c:1347
+#: src/man.c:1349
#, c-format
msgid "ignoring unknown preprocessor `%c'"
msgstr "ignoruje se neznámé předzpracování „%c“"
-#: src/man.c:1710 src/mandb.c:224
+#: src/man.c:1712 src/mandb.c:223
#, c-format
msgid "can't rename %s to %s"
msgstr "%s nelze přejmenovat na %s"
-#: src/man.c:1727
+#: src/man.c:1729
#, c-format
msgid "can't set times on %s"
msgstr "nelze nastavit čas na %s"
-#: src/man.c:1736 src/man.c:1773
+#: src/man.c:1738 src/man.c:1775
#, c-format
msgid "can't unlink %s"
msgstr "nelze smazat %s"
-#: src/man.c:1803
+#: src/man.c:1805
#, c-format
msgid "can't create temporary cat for %s"
msgstr "nelze vytvořit dočasný katalog pro %s"
-#: src/man.c:1913
+#: src/man.c:1915
#, c-format
msgid "can't create temporary directory"
msgstr "nelze vytvořit dočasnou složku"
-#: src/man.c:1924
+#: src/man.c:1926
#, c-format
msgid "can't open temporary file %s"
msgstr "nelze otevřít dočasný soubor %s"
-#: src/man.c:1954 src/man.c:1983
+#: src/man.c:1956 src/man.c:1985
#, c-format
msgid "can't remove directory %s"
msgstr "nelze odstranit složku %s"
-#: src/man.c:2112
+#: src/man.c:2114
#, c-format
msgid "--Man-- next: %s [ view (return) | skip (Ctrl-D) | quit (Ctrl-C) ]\n"
msgstr ""
"--Man-- následující: %s [zobrazit (enter) | přeskočit (Ctrl-D) | ukončit "
"(Ctrl-C)]\n"
-#: src/man.c:2393
+#: src/man.c:2397
#, c-format
msgid ""
"\n"
@@ -596,27 +596,27 @@ msgstr ""
"\n"
"do %s nelze v režimu catman zapisovat"
-#: src/man.c:2474
+#: src/man.c:2477
#, c-format
msgid "Can't convert %s to cat name"
msgstr "%s nelze převést na název katalogu"
-#: src/man.c:3203
+#: src/man.c:3206
#, c-format
msgid "%s: relying on whatis refs is deprecated\n"
msgstr "%s: spoléhat se na to, co program whatis považuje za neschválené\n"
-#: src/man.c:3346 src/man.c:4196
+#: src/man.c:3349 src/man.c:4200
#, c-format
msgid "mandb command failed with exit status %d"
msgstr "program mandb skončil s návratovým kódem %d"
-#: src/man.c:3548
+#: src/man.c:3551
#, c-format
msgid "internal error: candidate type %d out of range"
msgstr "interní chyba: kandidující typ %d je mimo rozsah"
-#: src/man.c:4137
+#: src/man.c:4141
msgid " Manual page "
msgstr " Manuálová stránka "
@@ -649,7 +649,7 @@ msgstr "KÓD"
msgid "encoding for output"
msgstr "kódování pro výstup"
-#: src/manconv_main.c:97 src/manpath.c:68
+#: src/manconv_main.c:97 src/manpath.c:66
msgid "produce fewer warnings"
msgstr "produkovat méně varování"
@@ -663,74 +663,74 @@ msgstr "je nutné zadat vstupní kódování"
msgid "must specify an output encoding"
msgstr "je nutné zadat výstupní kódování"
-#: src/mandb.c:112
+#: src/mandb.c:111
msgid "[MANPATH]"
msgstr "[CESTA_K_MANUÁLOVÝM_STRÁNKÁM]"
-#: src/mandb.c:116
+#: src/mandb.c:115
msgid "work quietly, except for 'bogus' warning"
msgstr "pracovat tiše, s výjimkou „falešných“ varování"
-#: src/mandb.c:117
+#: src/mandb.c:116
msgid "don't look for or add stray cats to the dbs"
msgstr "nehledat a nepřidávat do databáze bezprizorní katalogy"
-#: src/mandb.c:118
+#: src/mandb.c:117
msgid "don't purge obsolete entries from the dbs"
msgstr "nemazat z databáze zastaralé záznamy"
-#: src/mandb.c:119
+#: src/mandb.c:118
msgid "produce user databases only"
msgstr "vytvořit pouze uživatelskou databázi"
-#: src/mandb.c:120
+#: src/mandb.c:119
msgid "create dbs from scratch, rather than updating"
msgstr "vytvořit databázi raději od píky, než ji aktualizovat"
-#: src/mandb.c:121
+#: src/mandb.c:120
msgid "check manual pages for correctness"
msgstr "zkontrolovat, zda jsou manuálové stránky v pořádku"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "FILENAME"
msgstr "SOUBOR"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "update just the entry for this filename"
msgstr "aktualizovat jen záznam pro tento soubor"
-#: src/mandb.c:217
+#: src/mandb.c:216
#, c-format
msgid "can't remove %s"
msgstr "nelze odstranit soubor %s"
-#: src/mandb.c:281
+#: src/mandb.c:280
#, c-format
msgid "can't write to %s"
msgstr "nelze zapisovat do souboru %s"
-#: src/mandb.c:286
+#: src/mandb.c:285
#, c-format
msgid "can't read from %s"
msgstr "nelze číst ze souboru %s"
-#: src/mandb.c:455
+#: src/mandb.c:457
#, c-format
msgid "Processing manual pages under %s...\n"
msgstr "Zpracovávají se manuálové stránky ve složce %s…\n"
-#: src/mandb.c:672 src/mandb.c:698
+#: src/mandb.c:666 src/mandb.c:692
#, c-format
msgid "Removing obsolete cat directory %s...\n"
msgstr "Odstraňuje se zastaralá složka katalogů %s…\n"
-#: src/mandb.c:848
+#: src/mandb.c:842
#, c-format
msgid "warning: no MANDB_MAP directives in %s, using your manpath"
msgstr ""
"varování: v souboru %s není direktiva MANDB_MAP, použije se program manpath"
-#: src/mandb.c:920
+#: src/mandb.c:914
#, c-format
msgid "%d man subdirectory contained newer manual pages.\n"
msgid_plural "%d man subdirectories contained newer manual pages.\n"
@@ -738,7 +738,7 @@ msgstr[0] "%d manuálová podsložka obsahovala nové manuálové stránky.\n"
msgstr[1] "%d manuálové podsložky obsahovaly nové manuálové stránky.\n"
msgstr[2] "%d manuálových podsložek obsahovalo nové manuálové stránky.\n"
-#: src/mandb.c:925
+#: src/mandb.c:919
#, c-format
msgid "%d manual page was added.\n"
msgid_plural "%d manual pages were added.\n"
@@ -746,7 +746,7 @@ msgstr[0] "%d manuálová stránka byla přidána.\n"
msgstr[1] "%d manuálové stránky byly přidány.\n"
msgstr[2] "%d manuálových stránek bylo přidáno.\n"
-#: src/mandb.c:929
+#: src/mandb.c:923
#, c-format
msgid "%d stray cat was added.\n"
msgid_plural "%d stray cats were added.\n"
@@ -754,7 +754,7 @@ msgstr[0] "Byl přidán %d bezprizorní katalog.\n"
msgstr[1] "Byly přidány %d bezprizorní katalogy.\n"
msgstr[2] "Bylo přidáno %d bezprizorních katalogů.\n"
-#: src/mandb.c:934
+#: src/mandb.c:928
#, c-format
msgid "%d old database entry was purged.\n"
msgid_plural "%d old database entries were purged.\n"
@@ -762,7 +762,7 @@ msgstr[0] "Byl vymazán %d starý databázový záznam.\n"
msgstr[1] "Byly vymazány %d staré databázové záznamy.\n"
msgstr[2] "Bylo vymazáno %d starých databázových záznamů.\n"
-#: src/mandb.c:952
+#: src/mandb.c:946
#, c-format
msgid "No databases created."
msgstr "Nebyla vytvořena žádná databáze."
@@ -837,15 +837,15 @@ msgstr "nelze zjistit aktuální složku"
msgid "warning: %s does not begin with %s"
msgstr "varování: cesta %s nezačíná na %s"
-#: src/manpath.c:65
+#: src/manpath.c:63
msgid "show relative catpaths"
msgstr "zobrazovat relativní cesty ke katalogům"
-#: src/manpath.c:66
+#: src/manpath.c:64
msgid "show the entire global manpath"
msgstr "zobrazovat celé globální cesty k manuálovým stránkám"
-#: src/manpath.c:128
+#: src/manpath.c:126
#, c-format
msgid "warning: no global manpaths set in config file %s"
msgstr ""
@@ -877,96 +877,96 @@ msgstr "varování: rejstřík %s nelze aktualizovat"
msgid "%s is self referencing"
msgstr "stránka %s se odkazuje sama na sebe"
-#: src/whatis.c:123
+#: src/whatis.c:122
msgid "KEYWORD..."
msgstr "KLÍČOVÉ_SLOVO…"
-#: src/whatis.c:124
+#: src/whatis.c:123
msgid "The --regex option is enabled by default."
msgstr "Přepínač --regex je standardně zapnutý."
-#: src/whatis.c:128
+#: src/whatis.c:127
msgid "print verbose warning messages"
msgstr "vypisovat podrobné varovné zprávy"
-#: src/whatis.c:129
+#: src/whatis.c:128
msgid "interpret each keyword as a regex"
msgstr "každé klíčové slovo považovat za regulární výraz"
-#: src/whatis.c:130
+#: src/whatis.c:129
msgid "search each keyword for exact match"
msgstr "každé klíčové slovo hledat na přesnou shodu"
-#: src/whatis.c:131
+#: src/whatis.c:130
msgid "the keyword(s) contain wildcards"
msgstr "klíčové slovo (či slova) obsahují divoké znaky"
-#: src/whatis.c:132
+#: src/whatis.c:131
msgid "require all keywords to match"
msgstr "požadovat shodu všech klíčových slov"
-#: src/whatis.c:133
+#: src/whatis.c:132
msgid "do not trim output to terminal width"
msgstr "neořezávat výstup na šířku terminálu"
-#: src/whatis.c:134
+#: src/whatis.c:133
msgid "search only these sections (colon-separated)"
msgstr "prohledávat jen tyto oddíly (oddělené dvojtečkou)"
-#: src/whatis.c:138
+#: src/whatis.c:137
msgid "define the locale for this search"
msgstr "definovat národní prostředí pro toto hledání"
-#: src/whatis.c:235
+#: src/whatis.c:234
#, c-format
msgid "%s what?\n"
msgstr "Co má příkaz %s provést?\n"
-#: src/whatis.c:412 src/whatis.c:430
+#: src/whatis.c:410 src/whatis.c:428
#, c-format
msgid "warning: %s contains a pointer loop"
msgstr "varování: %s obsahuje zacyklený ukazatel"
-#: src/whatis.c:424 src/whatis.c:432
+#: src/whatis.c:422 src/whatis.c:430
msgid "(unknown subject)"
msgstr "(neznámý předmět)"
-#: src/whatis.c:863
+#: src/whatis.c:861
#, c-format
msgid "%s: nothing appropriate.\n"
msgstr "%s: nic neodpovídá.\n"
-#: src/zsoelim.l:171
+#: src/zsoelim.l:178
#, c-format
msgid "%s:%d: .so requests nested too deeply or are recursive"
msgstr "%s:%d: požadavky .so se zanořily příliš hluboko nebo jsou rekurzivní"
-#: src/zsoelim.l:186
+#: src/zsoelim.l:193
#, c-format
msgid "%s:%d: warning: failed .so request"
msgstr "%s:%d: varování: selhal požadavek .so"
-#: src/zsoelim.l:208
+#: src/zsoelim.l:215
#, c-format
msgid "%s:%d: warning: newline in .so request, ignoring"
msgstr "%s:%d: varování: nový řádek v požadavku .so, ignorován"
-#: src/zsoelim.l:268
+#: src/zsoelim.l:275
#, c-format
msgid "%s:%d: warning: malformed .lf request, ignoring"
msgstr "%s:%d: varování: vadný požadavek .lf, ignorován"
-#: src/zsoelim.l:278
+#: src/zsoelim.l:285
#, c-format
msgid "%s:%d: warning: newline in .lf request, ignoring"
msgstr "%s:%d: varování: nový řádek v požadavku .lf, ignorován"
-#: src/zsoelim.l:318
+#: src/zsoelim.l:325
#, c-format
msgid "%s:%d: unterminated quote in roff request"
msgstr "%s:%d: nezakončené uvozovky v požadavku roff"
-#: src/zsoelim_main.c:70
+#: src/zsoelim_main.c:69
msgid "compatibility switch (ignored)"
msgstr "přepínač pro účely kompatibility (ignorován)"
diff --git a/po/da.po b/po/da.po
index b5b9058a..24a2308c 100644
--- a/po/da.po
+++ b/po/da.po
@@ -20,7 +20,7 @@ msgid ""
msgstr ""
"Project-Id-Version: man-db 2.7.6.1\n"
"Report-Msgid-Bugs-To: Colin Watson <cjwatson@debian.org>\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2016-12-12 23:42+0100\n"
"Last-Translator: Joe Hansen <joedalton2@yahoo.dk>\n"
"Language-Team: Danish <dansk@dansk-gruppen.dk>\n"
@@ -78,7 +78,7 @@ msgstr[1] "kun %d felter i indhold"
msgid "bad fetch on multi key %s"
msgstr "fejlagtig hentning på multinøgle %s"
-#: libdb/db_lookup.c:443 src/whatis.c:739
+#: libdb/db_lookup.c:443 src/whatis.c:737
#, c-format
msgid "Database %s corrupted; rebuild with mandb --create"
msgstr "Databasen %s er beskadiget; genopbyg med mandb --create"
@@ -88,28 +88,28 @@ msgstr "Databasen %s er beskadiget; genopbyg med mandb --create"
msgid "warning: %s has no version identifier\n"
msgstr "advarsel: %s har ingen versionsidentifikator\n"
-#: libdb/db_ver.c:56
+#: libdb/db_ver.c:57
#, c-format
msgid "warning: %s is version %s, expecting %s\n"
msgstr "advarsel: %s er version %s, %s forventes\n"
-#: libdb/db_ver.c:78
+#: libdb/db_ver.c:79
#, c-format
msgid "fatal: unable to insert version identifier into %s"
msgstr "fatalt: kan ikke indsætte versionsidentifikator i %s"
-#: src/accessdb.c:61
+#: src/accessdb.c:59
msgid "[MAN DATABASE]"
msgstr "[MANUALDATABASE]"
-#: src/accessdb.c:62
+#: src/accessdb.c:60
#, c-format
msgid "The man database defaults to %s%s."
msgstr "Manualdatabasen er som standard %s%s."
-#: src/accessdb.c:65 src/catman.c:103 src/globbing_test.c:62
-#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:115
-#: src/manpath.c:67 src/whatis.c:127 src/zsoelim_main.c:69
+#: src/accessdb.c:63 src/catman.c:100 src/globbing_test.c:58
+#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:114
+#: src/manpath.c:65 src/whatis.c:126 src/zsoelim_main.c:68
msgid "emit debugging messages"
msgstr "vis fejlsøgningsbeskeder"
@@ -118,44 +118,44 @@ msgstr "vis fejlsøgningsbeskeder"
msgid "can't open %s for reading"
msgstr "kan ikke åbne %s for læsning"
-#: src/catman.c:100
+#: src/catman.c:97
msgid "[SECTION...]"
msgstr "[AFSNIT...]"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "PATH"
msgstr "STI"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "set search path for manual pages to PATH"
msgstr "angiv søgesti for manualsider med STI"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "FILE"
msgstr "FIL"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "use this user configuration file"
msgstr "brug denne brugers konfigurationsfil"
-#: src/catman.c:198
+#: src/catman.c:195
#, c-format
msgid "man command failed with exit status %d"
msgstr "man-kommandoen mislykkedes med slutstatus %d"
-#: src/catman.c:237
+#: src/catman.c:235
#, c-format
msgid "cannot read database %s"
msgstr "kan ikke læse databasen %s"
-#: src/catman.c:280
+#: src/catman.c:278
#, c-format
msgid "NULL content for key: %s"
msgstr "NULL-indhold for nøgle: %s"
-#: src/catman.c:295
+#: src/catman.c:294
#, c-format
msgid ""
"\n"
@@ -164,12 +164,12 @@ msgstr ""
"\n"
"Opdaterer katalogfiler for afsnit %s i man-hierarkiet %s\n"
-#: src/catman.c:349
+#: src/catman.c:348
#, c-format
msgid "cannot write within %s"
msgstr "kan ikke skrive indenfor %s"
-#: src/catman.c:426
+#: src/catman.c:425
#, c-format
msgid "unable to update %s"
msgstr "kan ikke opdatere %s"
@@ -179,67 +179,67 @@ msgstr "kan ikke opdatere %s"
msgid "warning: %s/man%s/%s.%s*: competing extensions"
msgstr "advarsel: %s/man%s/%s.%s*: filendelser i konflikt"
-#: src/check_mandirs.c:114 src/check_mandirs.c:613
+#: src/check_mandirs.c:126 src/check_mandirs.c:626
#, c-format
msgid "can't update index cache %s"
msgstr "kan ikke opdatere indekscachen %s"
-#: src/check_mandirs.c:242
+#: src/check_mandirs.c:254
#, c-format
msgid "warning: %s: bad symlink or ROFF `.so' request"
msgstr "advarsel: %s: fejlagtig symbolsk lænke eller ROFF ».so-anmodning«"
-#: src/check_mandirs.c:298
+#: src/check_mandirs.c:310
#, c-format
msgid "warning: %s: ignoring empty file"
msgstr "advarsel: %s: ignorerer tom fil"
-#: src/check_mandirs.c:302 src/straycats.c:276
+#: src/check_mandirs.c:314 src/straycats.c:276
#, c-format
msgid "warning: %s: whatis parse for %s(%s) failed"
msgstr "advarsel: %s: whatis-tolkning for %s(%s) mislykkedes"
-#: src/check_mandirs.c:329 src/check_mandirs.c:498 src/mandb.c:883
+#: src/check_mandirs.c:341 src/check_mandirs.c:511 src/mandb.c:877
#: src/straycats.c:84 src/straycats.c:303 src/ult_src.c:81
#, c-format
msgid "can't search directory %s"
msgstr "kan ikke søge i kataloget %s"
-#: src/check_mandirs.c:378 src/man.c:1687
+#: src/check_mandirs.c:390 src/man.c:1689
#, c-format
msgid "can't chown %s"
msgstr "kan ikke skifte ejer på %s"
-#: src/check_mandirs.c:400 src/check_mandirs.c:423
+#: src/check_mandirs.c:412 src/check_mandirs.c:435
#, c-format
msgid "warning: cannot create catdir %s"
msgstr "advarsel: kan ikke oprette katalogmappe %s"
-#: src/check_mandirs.c:455 src/man.c:1699 src/mandb.c:233
+#: src/check_mandirs.c:467 src/man.c:1701 src/mandb.c:232
#, c-format
msgid "can't chmod %s"
msgstr "kan ikke ændre rettigheder på %s"
-#: src/check_mandirs.c:503
+#: src/check_mandirs.c:516
#, c-format
msgid "can't change to directory %s"
msgstr "kan ikke skifte til kataloget %s"
-#: src/check_mandirs.c:553
+#: src/check_mandirs.c:566
#, c-format
msgid "can't create index cache %s"
msgstr "kan ikke oprette indekscachen %s"
-#: src/check_mandirs.c:578
+#: src/check_mandirs.c:591
#, c-format
msgid "Updating index cache for path `%s/%s'. Wait..."
msgstr "Opdaterer indekscache for søgestien »%s/%s«. Vent..."
-#: src/check_mandirs.c:640 src/check_mandirs.c:701
+#: src/check_mandirs.c:653 src/check_mandirs.c:714
msgid "done.\n"
msgstr "færdig.\n"
-#: src/check_mandirs.c:963
+#: src/check_mandirs.c:977
#, c-format
msgid "Purging old database entries in %s...\n"
msgstr "Tømmer gamle databaseindgange i %s...\n"
@@ -256,51 +256,51 @@ msgstr "advarsel: %s: ignorerer fejlagtigt filnavn"
# Koden tyder på, det er betegnelsen på tre separate argumenter, derfor:
# "STI AFSNIT NAVN"
-#: src/globbing_test.c:59
+#: src/globbing_test.c:55
msgid "PATH SECTION NAME"
msgstr "STI AFSNIT NAVN"
-#: src/globbing_test.c:63 src/man.c:292
+#: src/globbing_test.c:59 src/man.c:292
msgid "EXTENSION"
msgstr "FILENDELSE"
-#: src/globbing_test.c:63 src/man.c:293
+#: src/globbing_test.c:59 src/man.c:293
msgid "limit search to extension type EXTENSION"
msgstr "begræns søgning til filendelser med typen FILENDELSE"
# evt. "med versalfølsomhed slået fra"
-#: src/globbing_test.c:64 src/man.c:294
+#: src/globbing_test.c:60 src/man.c:294
msgid "look for pages case-insensitively (default)"
msgstr "se efter sider uden at være versalfølsom (standard)"
# "med versalfølsomhed slået til"
-#: src/globbing_test.c:65 src/man.c:295
+#: src/globbing_test.c:61 src/man.c:295
msgid "look for pages case-sensitively"
msgstr "se efter sider versalfølsomt"
-#: src/globbing_test.c:66
+#: src/globbing_test.c:62
msgid "interpret page name as a regex"
msgstr "fortolk sidenavn som et regulært udtryk"
-#: src/globbing_test.c:67
+#: src/globbing_test.c:63
msgid "the page name contains wildcards"
msgstr "sidenavnet indeholder jokertegn"
-#: src/lexgrog.l:691
+#: src/lexgrog.l:701
#, c-format
msgid "warning: whatis for %s exceeds %d byte, truncating."
msgid_plural "warning: whatis for %s exceeds %d bytes, truncating."
msgstr[0] "advarsel: whatis for %s overskrider %d byte, forkorter."
msgstr[1] "advarsel: whatis for %s overskrider %d byte, forkorter."
-#: src/lexgrog.l:844 src/man.c:2268 src/man.c:2350 src/man.c:2448
+#: src/lexgrog.l:854 src/man.c:2270 src/man.c:2354 src/man.c:2452
#: src/manconv_main.c:168 src/straycats.c:218 src/ult_src.c:321
-#: src/ult_src.c:335 src/zsoelim.l:512
+#: src/ult_src.c:335 src/zsoelim.l:519
#, c-format
msgid "can't open %s"
msgstr "kan ikke åbne %s"
-#: src/lexgrog_test.c:69 src/zsoelim_main.c:66
+#: src/lexgrog_test.c:69 src/zsoelim_main.c:65
msgid "FILE..."
msgstr "FIL..."
@@ -399,7 +399,7 @@ msgstr "uddatakildeside kodet i KODNING"
msgid "Finding manual pages:"
msgstr "Finder manualsider:"
-#: src/man.c:287 src/whatis.c:138
+#: src/man.c:287 src/whatis.c:137
msgid "LOCALE"
msgstr "SPROG"
@@ -408,15 +408,15 @@ msgstr "SPROG"
msgid "define the locale for this particular man search"
msgstr "definere sproget for netop denne manualsøgning"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "SYSTEM"
msgstr "SYSTEM"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "use manual pages from other systems"
msgstr "brug manualsider fra andre systemer"
-#: src/man.c:290 src/whatis.c:134
+#: src/man.c:290 src/whatis.c:133
msgid "LIST"
msgstr "LISTE"
@@ -534,77 +534,77 @@ msgstr ""
msgid "use groff and force it to produce ditroff"
msgstr "brug groff og tving den til at producere ditroff"
-#: src/man.c:597 src/man.c:733
+#: src/man.c:599 src/man.c:735
#, c-format
msgid "No manual entry for %s\n"
msgstr "Ingen manualindgang for %s\n"
-#: src/man.c:599
+#: src/man.c:601
#, c-format
msgid "(Alternatively, what manual page do you want from section %s?)\n"
msgstr "(Eller hvilken manualside vil du have fra afsnit %s?)\n"
-#: src/man.c:603
+#: src/man.c:605
msgid "What manual page do you want?\n"
msgstr "Hvilken manualside vil du have?\n"
-#: src/man.c:730
+#: src/man.c:732
#, c-format
msgid "No manual entry for %s in section %s\n"
msgstr "Ingen manualindgang for %s i afsnit %s\n"
-#: src/man.c:739
+#: src/man.c:741
#, c-format
msgid "See '%s' for help when manual pages are not available.\n"
msgstr "Se »%s« for hjælp når manualsider ikke er tilgængelige.\n"
-#: src/man.c:1347
+#: src/man.c:1349
#, c-format
msgid "ignoring unknown preprocessor `%c'"
msgstr "ignorerer ukendt forbehandler »%c«"
-#: src/man.c:1710 src/mandb.c:224
+#: src/man.c:1712 src/mandb.c:223
#, c-format
msgid "can't rename %s to %s"
msgstr "kan ikke omdøbe %s til %s"
-#: src/man.c:1727
+#: src/man.c:1729
#, c-format
msgid "can't set times on %s"
msgstr "kan ikke sætte tider på %s"
-#: src/man.c:1736 src/man.c:1773
+#: src/man.c:1738 src/man.c:1775
#, c-format
msgid "can't unlink %s"
msgstr "kan ikke aflænke %s"
-#: src/man.c:1803
+#: src/man.c:1805
#, c-format
msgid "can't create temporary cat for %s"
msgstr "kan ikke oprette midlertidigt katalog for %s"
-#: src/man.c:1913
+#: src/man.c:1915
#, c-format
msgid "can't create temporary directory"
msgstr "kan ikke oprette midlertidig mappe"
-#: src/man.c:1924
+#: src/man.c:1926
#, c-format
msgid "can't open temporary file %s"
msgstr "kan ikke åbne midlertidig fil %s"
-#: src/man.c:1954 src/man.c:1983
+#: src/man.c:1956 src/man.c:1985
#, c-format
msgid "can't remove directory %s"
msgstr "kan ikke fjerne kataloget %s"
-#: src/man.c:2112
+#: src/man.c:2114
#, c-format
msgid "--Man-- next: %s [ view (return) | skip (Ctrl-D) | quit (Ctrl-C) ]\n"
msgstr ""
"--Man-- næste: %s [ vis (retur) | overspring (Ctrl-D) | afslut (Ctrl-C) ]\n"
-#: src/man.c:2393
+#: src/man.c:2397
#, c-format
msgid ""
"\n"
@@ -613,27 +613,27 @@ msgstr ""
"\n"
"kan ikke skrive til %s i tilstanden katalogmanual"
-#: src/man.c:2474
+#: src/man.c:2477
#, c-format
msgid "Can't convert %s to cat name"
msgstr "Kan ikke konvertere %s til katalognavn"
-#: src/man.c:3203
+#: src/man.c:3206
#, c-format
msgid "%s: relying on whatis refs is deprecated\n"
msgstr "%s: at stole på whatis-referencer er forældet\n"
-#: src/man.c:3346 src/man.c:4196
+#: src/man.c:3349 src/man.c:4200
#, c-format
msgid "mandb command failed with exit status %d"
msgstr "mandb-kommandoen mislykkedes med slutstatus %d"
-#: src/man.c:3548
+#: src/man.c:3551
#, c-format
msgid "internal error: candidate type %d out of range"
msgstr "intern fejl: kandidattype %d uden for gyldigt interval"
-#: src/man.c:4137
+#: src/man.c:4141
msgid " Manual page "
msgstr " Manualside "
@@ -666,7 +666,7 @@ msgstr "KODNING"
msgid "encoding for output"
msgstr "kodning for uddata"
-#: src/manconv_main.c:97 src/manpath.c:68
+#: src/manconv_main.c:97 src/manpath.c:66
msgid "produce fewer warnings"
msgstr "giv færre advarsler"
@@ -680,101 +680,101 @@ msgstr "inddatakodning skal angives"
msgid "must specify an output encoding"
msgstr "uddatakodning skal angives"
-#: src/mandb.c:112
+#: src/mandb.c:111
msgid "[MANPATH]"
msgstr "[MANSTI]"
-#: src/mandb.c:116
+#: src/mandb.c:115
msgid "work quietly, except for 'bogus' warning"
msgstr "arbejd stille, undtagen for »bogus-advarsler«"
-#: src/mandb.c:117
+#: src/mandb.c:116
msgid "don't look for or add stray cats to the dbs"
msgstr "kig ikke efter og tilføj ikke vildfarne katalogsider til databaserne"
-#: src/mandb.c:118
+#: src/mandb.c:117
msgid "don't purge obsolete entries from the dbs"
msgstr "afinstaller ikke forældede punkter fra databaserne"
-#: src/mandb.c:119
+#: src/mandb.c:118
msgid "produce user databases only"
msgstr "producer kun brugerdatabaser"
-#: src/mandb.c:120
+#: src/mandb.c:119
msgid "create dbs from scratch, rather than updating"
msgstr "opret databaser fra bunden af i stedet for at opdatere"
-#: src/mandb.c:121
+#: src/mandb.c:120
msgid "check manual pages for correctness"
msgstr "kontroller manualsider for korrekthed"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "FILENAME"
msgstr "FILNAVN"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "update just the entry for this filename"
msgstr "opdater kun punktet for dette filnavn"
-#: src/mandb.c:217
+#: src/mandb.c:216
#, c-format
msgid "can't remove %s"
msgstr "kan ikke fjerne %s"
-#: src/mandb.c:281
+#: src/mandb.c:280
#, c-format
msgid "can't write to %s"
msgstr "kan ikke skrive til %s"
-#: src/mandb.c:286
+#: src/mandb.c:285
#, c-format
msgid "can't read from %s"
msgstr "kan ikke læse fra %s"
-#: src/mandb.c:455
+#: src/mandb.c:457
#, c-format
msgid "Processing manual pages under %s...\n"
msgstr "Bearbejder manualsider under %s...\n"
-#: src/mandb.c:672 src/mandb.c:698
+#: src/mandb.c:666 src/mandb.c:692
#, c-format
msgid "Removing obsolete cat directory %s...\n"
msgstr "Fjerner forældet katalogside %s...\n"
-#: src/mandb.c:848
+#: src/mandb.c:842
#, c-format
msgid "warning: no MANDB_MAP directives in %s, using your manpath"
msgstr "advarsel: intet MANDB_MAP-direktiv i %s, bruger din manualsøgesti"
-#: src/mandb.c:920
+#: src/mandb.c:914
#, c-format
msgid "%d man subdirectory contained newer manual pages.\n"
msgid_plural "%d man subdirectories contained newer manual pages.\n"
msgstr[0] "%d manualunderkatalog indeholdt nyere manualsider.\n"
msgstr[1] "%d manualunderkataloger indeholdt nyere manualsider.\n"
-#: src/mandb.c:925
+#: src/mandb.c:919
#, c-format
msgid "%d manual page was added.\n"
msgid_plural "%d manual pages were added.\n"
msgstr[0] "%d manualside blev tilføjet.\n"
msgstr[1] "%d manualsider blev tilføjet.\n"
-#: src/mandb.c:929
+#: src/mandb.c:923
#, c-format
msgid "%d stray cat was added.\n"
msgid_plural "%d stray cats were added.\n"
msgstr[0] "%d vildfaren katalogside blev tilføjet.\n"
msgstr[1] "%d vildfarne katalogsider blev tilføjet.\n"
-#: src/mandb.c:934
+#: src/mandb.c:928
#, c-format
msgid "%d old database entry was purged.\n"
msgid_plural "%d old database entries were purged.\n"
msgstr[0] "%d gammel databaseindgang blev tømt.\n"
msgstr[1] "%d gamle databaseindgange blev tømt.\n"
-#: src/mandb.c:952
+#: src/mandb.c:946
#, c-format
msgid "No databases created."
msgstr "Ingen databaser er oprettet."
@@ -849,15 +849,15 @@ msgstr "kan ikke bestemme aktuelt katalog"
msgid "warning: %s does not begin with %s"
msgstr "advarsel: %s begynder ikke med %s"
-#: src/manpath.c:65
+#: src/manpath.c:63
msgid "show relative catpaths"
msgstr "vis relative katalogstier"
-#: src/manpath.c:66
+#: src/manpath.c:64
msgid "show the entire global manpath"
msgstr "vis den samlede globale manualsti"
-#: src/manpath.c:128
+#: src/manpath.c:126
#, c-format
msgid "warning: no global manpaths set in config file %s"
msgstr ""
@@ -888,96 +888,96 @@ msgstr "advarsel: kan ikke opdatere indekscachen %s"
msgid "%s is self referencing"
msgstr "%s refererer til sig selv"
-#: src/whatis.c:123
+#: src/whatis.c:122
msgid "KEYWORD..."
msgstr "NØGLEORD..."
-#: src/whatis.c:124
+#: src/whatis.c:123
msgid "The --regex option is enabled by default."
msgstr "Tilvalget --regex er aktiveret som standard."
-#: src/whatis.c:128
+#: src/whatis.c:127
msgid "print verbose warning messages"
msgstr "vis uddybende advarselsbeskeder"
-#: src/whatis.c:129
+#: src/whatis.c:128
msgid "interpret each keyword as a regex"
msgstr "fortolk hvert nøgleord som et regulært udtryk"
-#: src/whatis.c:130
+#: src/whatis.c:129
msgid "search each keyword for exact match"
msgstr "søg i hvert nøgleord for nøjagtigt match"
-#: src/whatis.c:131
+#: src/whatis.c:130
msgid "the keyword(s) contain wildcards"
msgstr "nøgleordene indeholder jokertegn"
-#: src/whatis.c:132
+#: src/whatis.c:131
msgid "require all keywords to match"
msgstr "alle nøgleord skal matche"
-#: src/whatis.c:133
+#: src/whatis.c:132
msgid "do not trim output to terminal width"
msgstr "tilpas ikke uddata til terminalbredde"
-#: src/whatis.c:134
+#: src/whatis.c:133
msgid "search only these sections (colon-separated)"
msgstr "søg kun i disse afsnit (kolonadskilt)"
-#: src/whatis.c:138
+#: src/whatis.c:137
msgid "define the locale for this search"
msgstr "definer sproget for denne søgning"
-#: src/whatis.c:235
+#: src/whatis.c:234
#, c-format
msgid "%s what?\n"
msgstr "%s hvad?\n"
-#: src/whatis.c:412 src/whatis.c:430
+#: src/whatis.c:410 src/whatis.c:428
#, c-format
msgid "warning: %s contains a pointer loop"
msgstr "advarsel: %s indeholder en pegerløkke"
-#: src/whatis.c:424 src/whatis.c:432
+#: src/whatis.c:422 src/whatis.c:430
msgid "(unknown subject)"
msgstr "(ukendt emne)"
-#: src/whatis.c:863
+#: src/whatis.c:861
#, c-format
msgid "%s: nothing appropriate.\n"
msgstr "%s: ingenting egnet.\n"
-#: src/zsoelim.l:171
+#: src/zsoelim.l:178
#, c-format
msgid "%s:%d: .so requests nested too deeply or are recursive"
msgstr "%s:%d: .so-forespørgsler er indlejret for dybt eller rekursivt"
-#: src/zsoelim.l:186
+#: src/zsoelim.l:193
#, c-format
msgid "%s:%d: warning: failed .so request"
msgstr "%s:%d: advarsel: .so-forespørgsel mislykkedes"
-#: src/zsoelim.l:208
+#: src/zsoelim.l:215
#, c-format
msgid "%s:%d: warning: newline in .so request, ignoring"
msgstr "%s:%d: advarsel: linjeskift i .so-forespørgsel; ignorerer"
-#: src/zsoelim.l:268
+#: src/zsoelim.l:275
#, c-format
msgid "%s:%d: warning: malformed .lf request, ignoring"
msgstr "%s:%d: advarsel: forkert udformet .lf-forespørgsel; ignorerer"
-#: src/zsoelim.l:278
+#: src/zsoelim.l:285
#, c-format
msgid "%s:%d: warning: newline in .lf request, ignoring"
msgstr "%s:%d: advarsel: linjeskift i .lf-forespørgsel; ignorerer"
-#: src/zsoelim.l:318
+#: src/zsoelim.l:325
#, c-format
msgid "%s:%d: unterminated quote in roff request"
msgstr "%s:%d: ikke afsluttet anførelsestegn i roff-forespørgsel"
-#: src/zsoelim_main.c:70
+#: src/zsoelim_main.c:69
msgid "compatibility switch (ignored)"
msgstr "skift af kompatibilitet (ignoreret)"
diff --git a/po/de.po b/po/de.po
index 574396f5..53cb3e62 100644
--- a/po/de.po
+++ b/po/de.po
@@ -13,7 +13,7 @@ msgid ""
msgstr ""
"Project-Id-Version: man-db 2.7.6.1\n"
"Report-Msgid-Bugs-To: Colin Watson <cjwatson@debian.org>\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2016-12-12 16:39+0100\n"
"Last-Translator: Mario Blättermann <mario.blaettermann@gmail.com>\n"
"Language-Team: German <translation-team-de@lists.sourceforge.net>\n"
@@ -72,7 +72,7 @@ msgstr[1] "nur %d Felder im Inhalt enthalten"
msgid "bad fetch on multi key %s"
msgstr "Suchschlüssel %s kann nicht eingelesen werden"
-#: libdb/db_lookup.c:443 src/whatis.c:739
+#: libdb/db_lookup.c:443 src/whatis.c:737
#, c-format
msgid "Database %s corrupted; rebuild with mandb --create"
msgstr "Datenbank %s beschädigt; mit »mandb --create« neu erstellen"
@@ -82,28 +82,28 @@ msgstr "Datenbank %s beschädigt; mit »mandb --create« neu erstellen"
msgid "warning: %s has no version identifier\n"
msgstr "Warnung: %s hat keine Versionsnummer\n"
-#: libdb/db_ver.c:56
+#: libdb/db_ver.c:57
#, c-format
msgid "warning: %s is version %s, expecting %s\n"
msgstr "Warnung: %s hat Versionsnummer %s, erwartet wurde %s\n"
-#: libdb/db_ver.c:78
+#: libdb/db_ver.c:79
#, c-format
msgid "fatal: unable to insert version identifier into %s"
msgstr "Fatal: Versionsnummer konnte nicht in %s eingefügt werden"
-#: src/accessdb.c:61
+#: src/accessdb.c:59
msgid "[MAN DATABASE]"
msgstr "[HANDBUCHDATENBANK]"
-#: src/accessdb.c:62
+#: src/accessdb.c:60
#, c-format
msgid "The man database defaults to %s%s."
msgstr "Die Handbuchdatenbank benutzt standardmäßig %s%s."
-#: src/accessdb.c:65 src/catman.c:103 src/globbing_test.c:62
-#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:115
-#: src/manpath.c:67 src/whatis.c:127 src/zsoelim_main.c:69
+#: src/accessdb.c:63 src/catman.c:100 src/globbing_test.c:58
+#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:114
+#: src/manpath.c:65 src/whatis.c:126 src/zsoelim_main.c:68
msgid "emit debugging messages"
msgstr "Hinweise zur Fehlersuche werden ausgegeben"
@@ -112,44 +112,44 @@ msgstr "Hinweise zur Fehlersuche werden ausgegeben"
msgid "can't open %s for reading"
msgstr "%s kann nicht zum Lesen geöffnet werden"
-#: src/catman.c:100
+#: src/catman.c:97
msgid "[SECTION...]"
msgstr "[ABSCHNITT ...]"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "PATH"
msgstr "PFAD"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "set search path for manual pages to PATH"
msgstr "Suchpfad für Handbuchseiten auf PFAD setzen"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "FILE"
msgstr "DATEI"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "use this user configuration file"
msgstr "diese Benutzerkonfigurationsdatei verwenden"
-#: src/catman.c:198
+#: src/catman.c:195
#, c-format
msgid "man command failed with exit status %d"
msgstr "Man-Befehl schlug mit Exit-Status %d fehl"
-#: src/catman.c:237
+#: src/catman.c:235
#, c-format
msgid "cannot read database %s"
msgstr "Datenbank %s kann nicht gelesen werden"
-#: src/catman.c:280
+#: src/catman.c:278
#, c-format
msgid "NULL content for key: %s"
msgstr "Inhalt für Suchschlüssel ist NULL: %s"
-#: src/catman.c:295
+#: src/catman.c:294
#, c-format
msgid ""
"\n"
@@ -159,12 +159,12 @@ msgstr ""
"»cat«-Dateien des Abschnitts %s der Handbuchhierarchie %s werden "
"aktualisiert.\n"
-#: src/catman.c:349
+#: src/catman.c:348
#, c-format
msgid "cannot write within %s"
msgstr "innerhalb von %s kann nicht geschrieben werden"
-#: src/catman.c:426
+#: src/catman.c:425
#, c-format
msgid "unable to update %s"
msgstr "%s kann nicht aktualisiert werden"
@@ -174,68 +174,68 @@ msgstr "%s kann nicht aktualisiert werden"
msgid "warning: %s/man%s/%s.%s*: competing extensions"
msgstr "Warnung: %s/man%s/%s.%s*: konkurrierende Dateierweiterungen"
-#: src/check_mandirs.c:114 src/check_mandirs.c:613
+#: src/check_mandirs.c:126 src/check_mandirs.c:626
#, c-format
msgid "can't update index cache %s"
msgstr "Indexcache %s kann nicht aktualisiert werden"
-#: src/check_mandirs.c:242
+#: src/check_mandirs.c:254
#, c-format
msgid "warning: %s: bad symlink or ROFF `.so' request"
msgstr ""
"Warnung: %s: ungültige symbolische Verknüpfung oder »roff«-».so«-Anfrage"
-#: src/check_mandirs.c:298
+#: src/check_mandirs.c:310
#, c-format
msgid "warning: %s: ignoring empty file"
msgstr "Warnung: %s: leere Datei wird ignoriert"
-#: src/check_mandirs.c:302 src/straycats.c:276
+#: src/check_mandirs.c:314 src/straycats.c:276
#, c-format
msgid "warning: %s: whatis parse for %s(%s) failed"
msgstr "Warnung: %s: whatis-Verarbeitung für %s(%s) fehlgeschlagen"
-#: src/check_mandirs.c:329 src/check_mandirs.c:498 src/mandb.c:883
+#: src/check_mandirs.c:341 src/check_mandirs.c:511 src/mandb.c:877
#: src/straycats.c:84 src/straycats.c:303 src/ult_src.c:81
#, c-format
msgid "can't search directory %s"
msgstr "Verzeichnis %s kann nicht durchsucht werden"
-#: src/check_mandirs.c:378 src/man.c:1687
+#: src/check_mandirs.c:390 src/man.c:1689
#, c-format
msgid "can't chown %s"
msgstr "Besitzer und/oder Gruppe von %s können nicht geändert werden"
-#: src/check_mandirs.c:400 src/check_mandirs.c:423
+#: src/check_mandirs.c:412 src/check_mandirs.c:435
#, c-format
msgid "warning: cannot create catdir %s"
msgstr "Warnung: »cat«-Verzeichnis %s kann nicht angelegt werden"
-#: src/check_mandirs.c:455 src/man.c:1699 src/mandb.c:233
+#: src/check_mandirs.c:467 src/man.c:1701 src/mandb.c:232
#, c-format
msgid "can't chmod %s"
msgstr "Zugriffsrechte von %s können nicht geändert werden"
-#: src/check_mandirs.c:503
+#: src/check_mandirs.c:516
#, c-format
msgid "can't change to directory %s"
msgstr "Es konnte nicht ins Verzeichnis %s gewechselt werden"
-#: src/check_mandirs.c:553
+#: src/check_mandirs.c:566
#, c-format
msgid "can't create index cache %s"
msgstr "Indexcache %s kann nicht erzeugt werden"
-#: src/check_mandirs.c:578
+#: src/check_mandirs.c:591
#, c-format
msgid "Updating index cache for path `%s/%s'. Wait..."
msgstr "Indexcache des Pfades »%s/%s« wird aktualisiert. Bitte warten ..."
-#: src/check_mandirs.c:640 src/check_mandirs.c:701
+#: src/check_mandirs.c:653 src/check_mandirs.c:714
msgid "done.\n"
msgstr "fertig.\n"
-#: src/check_mandirs.c:963
+#: src/check_mandirs.c:977
#, c-format
msgid "Purging old database entries in %s...\n"
msgstr "Alte Datenbankeinträge in %s werden gelöscht ...\n"
@@ -250,36 +250,36 @@ msgstr "Warnung: Eintrag für (%s)%s konnte nicht abgelegt werden"
msgid "warning: %s: ignoring bogus filename"
msgstr "Warnung: %s: fehlerhafter Dateiname wird ignoriert"
-#: src/globbing_test.c:59
+#: src/globbing_test.c:55
msgid "PATH SECTION NAME"
msgstr "PFAD ABSCHNITT NAME"
-#: src/globbing_test.c:63 src/man.c:292
+#: src/globbing_test.c:59 src/man.c:292
msgid "EXTENSION"
msgstr "ERWEITERUNG"
-#: src/globbing_test.c:63 src/man.c:293
+#: src/globbing_test.c:59 src/man.c:293
msgid "limit search to extension type EXTENSION"
msgstr "Suche auf Erweiterungstyp ERWEITERUNG beschränken"
-#: src/globbing_test.c:64 src/man.c:294
+#: src/globbing_test.c:60 src/man.c:294
msgid "look for pages case-insensitively (default)"
msgstr ""
"Nach Seiten suchen ohne Groß- und Kleinschreibung zu beachten (Standard)"
-#: src/globbing_test.c:65 src/man.c:295
+#: src/globbing_test.c:61 src/man.c:295
msgid "look for pages case-sensitively"
msgstr "Nach Seiten unter Beachtung von Groß- und Kleinschreibung suchen"
-#: src/globbing_test.c:66
+#: src/globbing_test.c:62
msgid "interpret page name as a regex"
msgstr "jeden Seitennamen als RegEx interpretieren"
-#: src/globbing_test.c:67
+#: src/globbing_test.c:63
msgid "the page name contains wildcards"
msgstr "der Seitenname enthält Platzhalter"
-#: src/lexgrog.l:691
+#: src/lexgrog.l:701
#, c-format
msgid "warning: whatis for %s exceeds %d byte, truncating."
msgid_plural "warning: whatis for %s exceeds %d bytes, truncating."
@@ -288,14 +288,14 @@ msgstr[0] ""
msgstr[1] ""
"Warnung: whatis-Eintrag für %s ist größer als %d Bytes, verkürze ihn."
-#: src/lexgrog.l:844 src/man.c:2268 src/man.c:2350 src/man.c:2448
+#: src/lexgrog.l:854 src/man.c:2270 src/man.c:2354 src/man.c:2452
#: src/manconv_main.c:168 src/straycats.c:218 src/ult_src.c:321
-#: src/ult_src.c:335 src/zsoelim.l:512
+#: src/ult_src.c:335 src/zsoelim.l:519
#, c-format
msgid "can't open %s"
msgstr "%s kann nicht geöffnet werden"
-#: src/lexgrog_test.c:69 src/zsoelim_main.c:66
+#: src/lexgrog_test.c:69 src/zsoelim_main.c:65
msgid "FILE..."
msgstr "DATEI ..."
@@ -394,7 +394,7 @@ msgstr "Quellseiten mit KODIERUNG kodiert ausgeben"
msgid "Finding manual pages:"
msgstr "Handbuchseiten finden: "
-#: src/man.c:287 src/whatis.c:138
+#: src/man.c:287 src/whatis.c:137
msgid "LOCALE"
msgstr "LOCALE"
@@ -402,15 +402,15 @@ msgstr "LOCALE"
msgid "define the locale for this particular man search"
msgstr "Locale für diese spezielle Handbuchsuche definieren"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "SYSTEM"
msgstr "SYSTEM"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "use manual pages from other systems"
msgstr "Handbuchseiten von anderen Systemen verwenden"
-#: src/man.c:290 src/whatis.c:134
+#: src/man.c:290 src/whatis.c:133
msgid "LIST"
msgstr "LISTE"
@@ -529,80 +529,80 @@ msgstr ""
msgid "use groff and force it to produce ditroff"
msgstr "»groff« verwenden und ditroff-Ausgabe erzwingen"
-#: src/man.c:597 src/man.c:733
+#: src/man.c:599 src/man.c:735
#, c-format
msgid "No manual entry for %s\n"
msgstr "Kein Handbucheintrag für %s vorhanden\n"
-#: src/man.c:599
+#: src/man.c:601
#, c-format
msgid "(Alternatively, what manual page do you want from section %s?)\n"
msgstr ""
"(Welche Handbuchseiten wollen Sie aus Abschnitt %s alternativ haben?)\n"
-#: src/man.c:603
+#: src/man.c:605
msgid "What manual page do you want?\n"
msgstr "Welche Handbuchseiten möchten Sie haben?\n"
-#: src/man.c:730
+#: src/man.c:732
#, c-format
msgid "No manual entry for %s in section %s\n"
msgstr "Kein Handbucheintrag für %s im Abschnitt %s vorhanden\n"
-#: src/man.c:739
+#: src/man.c:741
#, c-format
msgid "See '%s' for help when manual pages are not available.\n"
msgstr "Siehe auch »%s« für Hilfe, wenn Handbuchseiten nicht verfügbar sind.\n"
-#: src/man.c:1347
+#: src/man.c:1349
#, c-format
msgid "ignoring unknown preprocessor `%c'"
msgstr "Ignoriere unbekannten Präprozessor »%c«"
-#: src/man.c:1710 src/mandb.c:224
+#: src/man.c:1712 src/mandb.c:223
#, c-format
msgid "can't rename %s to %s"
msgstr "%s kann nicht in %s umbenannt werden"
-#: src/man.c:1727
+#: src/man.c:1729
#, c-format
msgid "can't set times on %s"
msgstr "Es können keine Zeiten für %s gesetzt werden"
-#: src/man.c:1736 src/man.c:1773
+#: src/man.c:1738 src/man.c:1775
#, c-format
msgid "can't unlink %s"
msgstr "%s kann nicht gelöscht werden"
-#: src/man.c:1803
+#: src/man.c:1805
#, c-format
msgid "can't create temporary cat for %s"
msgstr "Es kann keine temporäre »cat«-Datei für %s erzeugt werden"
# (mes) NEU
-#: src/man.c:1913
+#: src/man.c:1915
#, c-format
msgid "can't create temporary directory"
msgstr "Temporäres Verzeichnis kann nicht erzeugt werden."
-#: src/man.c:1924
+#: src/man.c:1926
#, c-format
msgid "can't open temporary file %s"
msgstr "Temporäre Datei %s kann nicht geöffnet werden"
-#: src/man.c:1954 src/man.c:1983
+#: src/man.c:1956 src/man.c:1985
#, c-format
msgid "can't remove directory %s"
msgstr "Verzeichnis %s kann nicht entfernt werden"
-#: src/man.c:2112
+#: src/man.c:2114
#, c-format
msgid "--Man-- next: %s [ view (return) | skip (Ctrl-D) | quit (Ctrl-C) ]\n"
msgstr ""
"--Man-- nächste: %s [ Anzeigen (Return) | Überspringen (Strg+D) | Beenden "
"(Strg+C) ]\n"
-#: src/man.c:2393
+#: src/man.c:2397
#, c-format
msgid ""
"\n"
@@ -611,27 +611,27 @@ msgstr ""
"\n"
"im »catman«-Modus kann nicht nach %s geschrieben werden"
-#: src/man.c:2474
+#: src/man.c:2477
#, c-format
msgid "Can't convert %s to cat name"
msgstr "%s kann nicht in »cat«-Namen umgewandelt werden"
-#: src/man.c:3203
+#: src/man.c:3206
#, c-format
msgid "%s: relying on whatis refs is deprecated\n"
msgstr "%s: es wird davon abgeraten, auf »whatis«-Referenzen zu vertrauen\n"
-#: src/man.c:3346 src/man.c:4196
+#: src/man.c:3349 src/man.c:4200
#, c-format
msgid "mandb command failed with exit status %d"
msgstr "»mandb«-Befehl schlug fehl mit Beendigungs-Status %d"
-#: src/man.c:3548
+#: src/man.c:3551
#, c-format
msgid "internal error: candidate type %d out of range"
msgstr "interner Fehler: Kandidatentyp %d außerhalb des Bereichs"
-#: src/man.c:4137
+#: src/man.c:4141
msgid " Manual page "
msgstr " Handbuchseite "
@@ -664,7 +664,7 @@ msgstr "KODIERUNG"
msgid "encoding for output"
msgstr "Kodierung der Ausgabe"
-#: src/manconv_main.c:97 src/manpath.c:68
+#: src/manconv_main.c:97 src/manpath.c:66
msgid "produce fewer warnings"
msgstr "weniger Warnungen erzeugen"
@@ -678,103 +678,103 @@ msgstr "es muss eine Eingabekodierung angegeben werden"
msgid "must specify an output encoding"
msgstr "es muss eine Ausgabekodierung angegeben werden"
-#: src/mandb.c:112
+#: src/mandb.c:111
msgid "[MANPATH]"
msgstr "[HANDBUCHPFAD]"
-#: src/mandb.c:116
+#: src/mandb.c:115
msgid "work quietly, except for 'bogus' warning"
msgstr "still arbeiten, mit Ausnahme von »fehlerhaften« Warnungen"
-#: src/mandb.c:117
+#: src/mandb.c:116
msgid "don't look for or add stray cats to the dbs"
msgstr ""
"nicht nach herrenlosen »cat«-Datein suchen oder zu den Datenbanken hinzufügen"
-#: src/mandb.c:118
+#: src/mandb.c:117
msgid "don't purge obsolete entries from the dbs"
msgstr "keine veralteten Einträge aus den Datenbanken löschen"
-#: src/mandb.c:119
+#: src/mandb.c:118
msgid "produce user databases only"
msgstr "nur Benutzerdatenbanken erzeugen"
-#: src/mandb.c:120
+#: src/mandb.c:119
msgid "create dbs from scratch, rather than updating"
msgstr "Datenbanken von Grund auf neu generieren, statt sie zu aktualisieren"
-#: src/mandb.c:121
+#: src/mandb.c:120
msgid "check manual pages for correctness"
msgstr "Handbuchseiten auf Korrektheit überprüfen"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "FILENAME"
msgstr "DATEINAME"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "update just the entry for this filename"
msgstr "nur den Eintrag für diesen Dateinamen aktualisieren"
-#: src/mandb.c:217
+#: src/mandb.c:216
#, c-format
msgid "can't remove %s"
msgstr "%s kann nicht entfernt werden"
-#: src/mandb.c:281
+#: src/mandb.c:280
#, c-format
msgid "can't write to %s"
msgstr "es kann nicht nach %s geschrieben werden"
-#: src/mandb.c:286
+#: src/mandb.c:285
#, c-format
msgid "can't read from %s"
msgstr "%s kann nicht ausgelesen werden"
-#: src/mandb.c:455
+#: src/mandb.c:457
#, c-format
msgid "Processing manual pages under %s...\n"
msgstr "Handbuchseiten unter %s werden verarbeitet ...\n"
-#: src/mandb.c:672 src/mandb.c:698
+#: src/mandb.c:666 src/mandb.c:692
#, c-format
msgid "Removing obsolete cat directory %s...\n"
msgstr "veraltetes »cat«-Verzeichnis %s wird entfernt ...\n"
-#: src/mandb.c:848
+#: src/mandb.c:842
#, c-format
msgid "warning: no MANDB_MAP directives in %s, using your manpath"
msgstr ""
"Warnung: keine MANDB_MAP-Anweisungen in %s, ihr Handbuchpfad wird verwendet"
-#: src/mandb.c:920
+#: src/mandb.c:914
#, c-format
msgid "%d man subdirectory contained newer manual pages.\n"
msgid_plural "%d man subdirectories contained newer manual pages.\n"
msgstr[0] "%d Handbuchverzeichnis enthielt neuere Handbuchseiten.\n"
msgstr[1] "%d Handbuchverzeichnisse enthielten neuere Handbuchseiten.\n"
-#: src/mandb.c:925
+#: src/mandb.c:919
#, c-format
msgid "%d manual page was added.\n"
msgid_plural "%d manual pages were added.\n"
msgstr[0] "%d Handbuchseite wurde hinzugefügt.\n"
msgstr[1] "%d Handbuchseiten wurden hinzugefügt.\n"
-#: src/mandb.c:929
+#: src/mandb.c:923
#, c-format
msgid "%d stray cat was added.\n"
msgid_plural "%d stray cats were added.\n"
msgstr[0] "%d herrenlose »cat«-Datei wurde hinzugefügt.\n"
msgstr[1] "%d herrenlose »cat«-Dateien wurden hinzugefügt.\n"
-#: src/mandb.c:934
+#: src/mandb.c:928
#, c-format
msgid "%d old database entry was purged.\n"
msgid_plural "%d old database entries were purged.\n"
msgstr[0] "%d alter Datenbankeintrag wurde entfernt.\n"
msgstr[1] "%d alte Datenbankeinträge wurden entfernt.\n"
-#: src/mandb.c:952
+#: src/mandb.c:946
#, c-format
msgid "No databases created."
msgstr "Keine Datenbanken erstellt."
@@ -849,15 +849,15 @@ msgstr "momentanes Verzeichnis kann nicht festgestellt werden"
msgid "warning: %s does not begin with %s"
msgstr "Warnung: %s fängt nicht mit %s an"
-#: src/manpath.c:65
+#: src/manpath.c:63
msgid "show relative catpaths"
msgstr "relative »cat«-Pfade anzeigen"
-#: src/manpath.c:66
+#: src/manpath.c:64
msgid "show the entire global manpath"
msgstr "den gesamten globalen Handbuchpfad (MANPATH) anzeigen"
-#: src/manpath.c:128
+#: src/manpath.c:126
#, c-format
msgid "warning: no global manpaths set in config file %s"
msgstr ""
@@ -889,96 +889,96 @@ msgstr "Warnung: Indexcache %s kann nicht aktualisiert werden"
msgid "%s is self referencing"
msgstr "%s bezieht sich auf sich selbst"
-#: src/whatis.c:123
+#: src/whatis.c:122
msgid "KEYWORD..."
msgstr "SCHLÜSSELWORT ..."
-#: src/whatis.c:124
+#: src/whatis.c:123
msgid "The --regex option is enabled by default."
msgstr "Die »--regex«-Option ist standardmäßig aktiviert."
-#: src/whatis.c:128
+#: src/whatis.c:127
msgid "print verbose warning messages"
msgstr "ausführliche Warnmeldungen anzeigen"
-#: src/whatis.c:129
+#: src/whatis.c:128
msgid "interpret each keyword as a regex"
msgstr "jedes Schlüsselwort als RegEx interpretieren"
-#: src/whatis.c:130
+#: src/whatis.c:129
msgid "search each keyword for exact match"
msgstr "mit jedem Schlüsselwort nach exakten Treffern suchen"
-#: src/whatis.c:131
+#: src/whatis.c:130
msgid "the keyword(s) contain wildcards"
msgstr "das bzw. die Schlüsselwort(e) enthalten Platzhalter"
-#: src/whatis.c:132
+#: src/whatis.c:131
msgid "require all keywords to match"
msgstr "alle Schlüsselwörter müssen übereinstimmen"
-#: src/whatis.c:133
+#: src/whatis.c:132
msgid "do not trim output to terminal width"
msgstr "Ausgabe nicht an Terminalbreite anpassen"
-#: src/whatis.c:134
+#: src/whatis.c:133
msgid "search only these sections (colon-separated)"
msgstr "nur diese Abschnitte durchsuchen (durch Doppelpunkte getrennt)"
-#: src/whatis.c:138
+#: src/whatis.c:137
msgid "define the locale for this search"
msgstr "Locale für diese Suche definieren"
-#: src/whatis.c:235
+#: src/whatis.c:234
#, c-format
msgid "%s what?\n"
msgstr "%s was bitte?\n"
-#: src/whatis.c:412 src/whatis.c:430
+#: src/whatis.c:410 src/whatis.c:428
#, c-format
msgid "warning: %s contains a pointer loop"
msgstr "Warnung: %s enthält zyklische Verweise"
-#: src/whatis.c:424 src/whatis.c:432
+#: src/whatis.c:422 src/whatis.c:430
msgid "(unknown subject)"
msgstr "(unbekanntes Thema)"
-#: src/whatis.c:863
+#: src/whatis.c:861
#, c-format
msgid "%s: nothing appropriate.\n"
msgstr "%s: nichts passendes.\n"
-#: src/zsoelim.l:171
+#: src/zsoelim.l:178
#, c-format
msgid "%s:%d: .so requests nested too deeply or are recursive"
msgstr "%s:%d: ».so«-Anfragen sind zu tief verschachtelt oder rekursiv"
-#: src/zsoelim.l:186
+#: src/zsoelim.l:193
#, c-format
msgid "%s:%d: warning: failed .so request"
msgstr "%s:%d: Warnung: ».so«-Anfrage fehlgeschlagen"
-#: src/zsoelim.l:208
+#: src/zsoelim.l:215
#, c-format
msgid "%s:%d: warning: newline in .so request, ignoring"
msgstr "%s:%d: Warnung: Zeilenumbruch in ».so«-Anfrage; ignoriert"
-#: src/zsoelim.l:268
+#: src/zsoelim.l:275
#, c-format
msgid "%s:%d: warning: malformed .lf request, ignoring"
msgstr "%s:%d: Warnung: falsch formatierte ».lf«-Anfrage; ignoriert"
-#: src/zsoelim.l:278
+#: src/zsoelim.l:285
#, c-format
msgid "%s:%d: warning: newline in .lf request, ignoring"
msgstr "%s:%d: Warnung: Zeilenumbruch in ».lf«-Anfrage; ignoriert"
-#: src/zsoelim.l:318
+#: src/zsoelim.l:325
#, c-format
msgid "%s:%d: unterminated quote in roff request"
msgstr "%s:%d: nicht geschlossene Anführungszeichen in »roff«-Anfrage"
-#: src/zsoelim_main.c:70
+#: src/zsoelim_main.c:69
msgid "compatibility switch (ignored)"
msgstr "Kompatibilitätsparameter (ignoriert)"
diff --git a/po/eo.po b/po/eo.po
index b0f864c4..6f7440bf 100644
--- a/po/eo.po
+++ b/po/eo.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: man-db 2.8.0-pre2\n"
"Report-Msgid-Bugs-To: Colin Watson <cjwatson@debian.org>\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2018-06-05 23:10-0300\n"
"Last-Translator: Felipe Castro <fefcas@gmail.com>\n"
"Language-Team: Esperanto <translation-team-eo@lists.sourceforge.net>\n"
@@ -66,7 +66,7 @@ msgstr[1] "nur %d kampoj en enhavo"
msgid "bad fetch on multi key %s"
msgstr "malĝusta havigo per plur-ŝlosilo %s"
-#: libdb/db_lookup.c:443 src/whatis.c:739
+#: libdb/db_lookup.c:443 src/whatis.c:737
#, c-format
msgid "Database %s corrupted; rebuild with mandb --create"
msgstr "La datumbazon %s fuŝas; rekonstruu per mandb --create"
@@ -76,28 +76,28 @@ msgstr "La datumbazon %s fuŝas; rekonstruu per mandb --create"
msgid "warning: %s has no version identifier\n"
msgstr "averto: %s havas neniun versi-identiganton\n"
-#: libdb/db_ver.c:56
+#: libdb/db_ver.c:57
#, c-format
msgid "warning: %s is version %s, expecting %s\n"
msgstr "averto: %s estas versio %s, ni atendas %s\n"
-#: libdb/db_ver.c:78
+#: libdb/db_ver.c:79
#, c-format
msgid "fatal: unable to insert version identifier into %s"
msgstr "neripareble: ne eblas enmeti versi-identiganton en %s"
-#: src/accessdb.c:61
+#: src/accessdb.c:59
msgid "[MAN DATABASE]"
msgstr "[MAN-DATUMBAZO]"
-#: src/accessdb.c:62
+#: src/accessdb.c:60
#, c-format
msgid "The man database defaults to %s%s."
msgstr "La man-datumbazo apriore estas %s%s."
-#: src/accessdb.c:65 src/catman.c:103 src/globbing_test.c:62
-#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:115
-#: src/manpath.c:67 src/whatis.c:127 src/zsoelim_main.c:69
+#: src/accessdb.c:63 src/catman.c:100 src/globbing_test.c:58
+#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:114
+#: src/manpath.c:65 src/whatis.c:126 src/zsoelim_main.c:68
msgid "emit debugging messages"
msgstr "sendi rafinigajn mesaĝojn"
@@ -106,44 +106,44 @@ msgstr "sendi rafinigajn mesaĝojn"
msgid "can't open %s for reading"
msgstr "ne eblas malfermi %s por legi"
-#: src/catman.c:100
+#: src/catman.c:97
msgid "[SECTION...]"
msgstr "[SEKCIO...]"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "PATH"
msgstr "VOJO"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "set search path for manual pages to PATH"
msgstr "difini serĉvojo por manlibraj paĝoj al VOJO"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "FILE"
msgstr "DOSIERO"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "use this user configuration file"
msgstr "uzi tiun ĉi uzant-agorda dosiero"
-#: src/catman.c:198
+#: src/catman.c:195
#, c-format
msgid "man command failed with exit status %d"
msgstr "komando man fiaskis kun elir-stato %d"
-#: src/catman.c:237
+#: src/catman.c:235
#, c-format
msgid "cannot read database %s"
msgstr "ne eblas legi la datumbazon %s"
-#: src/catman.c:280
+#: src/catman.c:278
#, c-format
msgid "NULL content for key: %s"
msgstr "Enhavo NULL por ŝlosilo: %s"
-#: src/catman.c:295
+#: src/catman.c:294
#, c-format
msgid ""
"\n"
@@ -152,12 +152,12 @@ msgstr ""
"\n"
"Ĝisdatigo de cat-dosieroj por sekcio %s de man-hierarkio %s\n"
-#: src/catman.c:349
+#: src/catman.c:348
#, c-format
msgid "cannot write within %s"
msgstr "ne eblas skribi ene de %s"
-#: src/catman.c:426
+#: src/catman.c:425
#, c-format
msgid "unable to update %s"
msgstr "Ne eblas ĝisdatigi %s"
@@ -167,67 +167,67 @@ msgstr "Ne eblas ĝisdatigi %s"
msgid "warning: %s/man%s/%s.%s*: competing extensions"
msgstr "averto: %s/man%s/%s.%s*: konkurantaj sufiksoj"
-#: src/check_mandirs.c:114 src/check_mandirs.c:613
+#: src/check_mandirs.c:126 src/check_mandirs.c:626
#, c-format
msgid "can't update index cache %s"
msgstr "ne eblas ĝisdatigi la indeksan kaŝmemoron %s"
-#: src/check_mandirs.c:242
+#: src/check_mandirs.c:254
#, c-format
msgid "warning: %s: bad symlink or ROFF `.so' request"
msgstr "averto: %s: malĝusta symlink aŭ peto de ROFF '.so'"
-#: src/check_mandirs.c:298
+#: src/check_mandirs.c:310
#, c-format
msgid "warning: %s: ignoring empty file"
msgstr "averto: %s: ni preteratentas malplenan dosieron"
-#: src/check_mandirs.c:302 src/straycats.c:276
+#: src/check_mandirs.c:314 src/straycats.c:276
#, c-format
msgid "warning: %s: whatis parse for %s(%s) failed"
msgstr "averto: %s: analizo de whatis por %s(%s) fiaskis"
-#: src/check_mandirs.c:329 src/check_mandirs.c:498 src/mandb.c:883
+#: src/check_mandirs.c:341 src/check_mandirs.c:511 src/mandb.c:877
#: src/straycats.c:84 src/straycats.c:303 src/ult_src.c:81
#, c-format
msgid "can't search directory %s"
msgstr "ne eblas serĉi la dosierujon %s"
-#: src/check_mandirs.c:378 src/man.c:1687
+#: src/check_mandirs.c:390 src/man.c:1689
#, c-format
msgid "can't chown %s"
msgstr "ne eblas apliki chown %s"
-#: src/check_mandirs.c:400 src/check_mandirs.c:423
+#: src/check_mandirs.c:412 src/check_mandirs.c:435
#, c-format
msgid "warning: cannot create catdir %s"
msgstr "averto: ne eblas krei la catdir %s"
-#: src/check_mandirs.c:455 src/man.c:1699 src/mandb.c:233
+#: src/check_mandirs.c:467 src/man.c:1701 src/mandb.c:232
#, c-format
msgid "can't chmod %s"
msgstr "ne eblas apliki chmod %s"
-#: src/check_mandirs.c:503
+#: src/check_mandirs.c:516
#, c-format
msgid "can't change to directory %s"
msgstr "ne eblas ŝanĝi al la dosierujo %s"
-#: src/check_mandirs.c:553
+#: src/check_mandirs.c:566
#, c-format
msgid "can't create index cache %s"
msgstr "ne eblas krei la indeksan kaŝmemoron %s"
-#: src/check_mandirs.c:578
+#: src/check_mandirs.c:591
#, c-format
msgid "Updating index cache for path `%s/%s'. Wait..."
msgstr "Ĝisdatigo de indeksa kaŝmemoro por la vojo '%s/%s'. Atendu..."
-#: src/check_mandirs.c:640 src/check_mandirs.c:701
+#: src/check_mandirs.c:653 src/check_mandirs.c:714
msgid "done.\n"
msgstr "farite.\n"
-#: src/check_mandirs.c:963
+#: src/check_mandirs.c:977
#, c-format
msgid "Purging old database entries in %s...\n"
msgstr "Viŝo de malnovaj datumbazaj enigoj en %s...\n"
@@ -242,49 +242,49 @@ msgstr "averto: fiasko dum konservo de elemento por %s(%s)"
msgid "warning: %s: ignoring bogus filename"
msgstr "averto: %s: ni preteratentas aĉan dosiernomon"
-#: src/globbing_test.c:59
+#: src/globbing_test.c:55
msgid "PATH SECTION NAME"
msgstr "VOJO SEKCIO NOMO"
-#: src/globbing_test.c:63 src/man.c:292
+#: src/globbing_test.c:59 src/man.c:292
msgid "EXTENSION"
msgstr "SUFIKSO"
-#: src/globbing_test.c:63 src/man.c:293
+#: src/globbing_test.c:59 src/man.c:293
msgid "limit search to extension type EXTENSION"
msgstr "limigi serĉon al la sufiksa tipo SUFIKSO"
-#: src/globbing_test.c:64 src/man.c:294
+#: src/globbing_test.c:60 src/man.c:294
msgid "look for pages case-insensitively (default)"
msgstr "serĉi paĝojn sen-usklece (aprioras)"
-#: src/globbing_test.c:65 src/man.c:295
+#: src/globbing_test.c:61 src/man.c:295
msgid "look for pages case-sensitively"
msgstr "serĉi paĝojn usklece"
-#: src/globbing_test.c:66
+#: src/globbing_test.c:62
msgid "interpret page name as a regex"
msgstr "interpreti paĝ-nomon kiel regulesprimon"
-#: src/globbing_test.c:67
+#: src/globbing_test.c:63
msgid "the page name contains wildcards"
msgstr "la paĝ-nomo enhavas ĵokerojn"
-#: src/lexgrog.l:691
+#: src/lexgrog.l:701
#, c-format
msgid "warning: whatis for %s exceeds %d byte, truncating."
msgid_plural "warning: whatis for %s exceeds %d bytes, truncating."
msgstr[0] "averto: whatis por %s troigas %d bajton, ni tranĉas."
msgstr[1] "averto: whatis por %s troigas %d bajtojn, ni tranĉas."
-#: src/lexgrog.l:844 src/man.c:2268 src/man.c:2350 src/man.c:2448
+#: src/lexgrog.l:854 src/man.c:2270 src/man.c:2354 src/man.c:2452
#: src/manconv_main.c:168 src/straycats.c:218 src/ult_src.c:321
-#: src/ult_src.c:335 src/zsoelim.l:512
+#: src/ult_src.c:335 src/zsoelim.l:519
#, c-format
msgid "can't open %s"
msgstr "ne eblas malfermi %s"
-#: src/lexgrog_test.c:69 src/zsoelim_main.c:66
+#: src/lexgrog_test.c:69 src/zsoelim_main.c:65
msgid "FILE..."
msgstr "DOSIERO..."
@@ -382,7 +382,7 @@ msgstr "eligi font-paĝon enkoditan laŭ ENKODIGO"
msgid "Finding manual pages:"
msgstr "Trovo de manlibraj paĝoj:"
-#: src/man.c:287 src/whatis.c:138
+#: src/man.c:287 src/whatis.c:137
msgid "LOCALE"
msgstr "LOKAĴARO"
@@ -390,15 +390,15 @@ msgstr "LOKAĴARO"
msgid "define the locale for this particular man search"
msgstr "difini la lokaĵaron por tiu ĉi specifa serĉo de man"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "SYSTEM"
msgstr "SISTEMO"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "use manual pages from other systems"
msgstr "uzi manlibrajn paĝojn el aliaj sistemoj"
-#: src/man.c:290 src/whatis.c:134
+#: src/man.c:290 src/whatis.c:133
msgid "LIST"
msgstr "LISTO"
@@ -512,77 +512,77 @@ msgstr ""
msgid "use groff and force it to produce ditroff"
msgstr "uzi groff kaj devigi ĝin produkti ditroff"
-#: src/man.c:597 src/man.c:733
+#: src/man.c:599 src/man.c:735
#, c-format
msgid "No manual entry for %s\n"
msgstr "Neniu manlibra elemento por %s\n"
-#: src/man.c:599
+#: src/man.c:601
#, c-format
msgid "(Alternatively, what manual page do you want from section %s?)\n"
msgstr "(Alternative, kiun manlibran paĝon vi volas el sekcio %s?)\n"
-#: src/man.c:603
+#: src/man.c:605
msgid "What manual page do you want?\n"
msgstr "Kiun manlibran paĝon vi volas?\n"
-#: src/man.c:730
+#: src/man.c:732
#, c-format
msgid "No manual entry for %s in section %s\n"
msgstr "Neniu manlibra elemento por %s en sekcio %s\n"
-#: src/man.c:739
+#: src/man.c:741
#, c-format
msgid "See '%s' for help when manual pages are not available.\n"
msgstr "Konsultu '%s' por helpo kiam manlibraj paĝoj ne disponeblas.\n"
-#: src/man.c:1347
+#: src/man.c:1349
#, c-format
msgid "ignoring unknown preprocessor `%c'"
msgstr "ni preteratentas nekonatan antaŭprocezilon '%c'"
-#: src/man.c:1710 src/mandb.c:224
+#: src/man.c:1712 src/mandb.c:223
#, c-format
msgid "can't rename %s to %s"
msgstr "ne eblas renomigi %s al %s"
-#: src/man.c:1727
+#: src/man.c:1729
#, c-format
msgid "can't set times on %s"
msgstr "ne eblas difini horon en %s"
-#: src/man.c:1736 src/man.c:1773
+#: src/man.c:1738 src/man.c:1775
#, c-format
msgid "can't unlink %s"
msgstr "ne eblas forigi %s"
-#: src/man.c:1803
+#: src/man.c:1805
#, c-format
msgid "can't create temporary cat for %s"
msgstr "ne eblas krei provizoran cat por %s"
-#: src/man.c:1913
+#: src/man.c:1915
#, c-format
msgid "can't create temporary directory"
msgstr "ne eblas krei provizoran dosierujon"
-#: src/man.c:1924
+#: src/man.c:1926
#, c-format
msgid "can't open temporary file %s"
msgstr "ne eblas malfermi la provizoran dosieron %s"
-#: src/man.c:1954 src/man.c:1983
+#: src/man.c:1956 src/man.c:1985
#, c-format
msgid "can't remove directory %s"
msgstr "ne eblas forigi la dosierujon %s"
-#: src/man.c:2112
+#: src/man.c:2114
#, c-format
msgid "--Man-- next: %s [ view (return) | skip (Ctrl-D) | quit (Ctrl-C) ]\n"
msgstr ""
"--Man-- sekva: %s [ vidi (enigklavo) | salti (Ctrl-D) | eliri (Ctrl-C) ]\n"
-#: src/man.c:2393
+#: src/man.c:2397
#, c-format
msgid ""
"\n"
@@ -591,27 +591,27 @@ msgstr ""
"\n"
"ne eblas skribi al %s sub reĝimo catman"
-#: src/man.c:2474
+#: src/man.c:2477
#, c-format
msgid "Can't convert %s to cat name"
msgstr "Ne eblas konverti %s al cat-nomo"
-#: src/man.c:3203
+#: src/man.c:3206
#, c-format
msgid "%s: relying on whatis refs is deprecated\n"
msgstr "%s: fini je whatis refs estas malrekomendinde\n"
-#: src/man.c:3346 src/man.c:4196
+#: src/man.c:3349 src/man.c:4200
#, c-format
msgid "mandb command failed with exit status %d"
msgstr "komando mandb fiaskis kun elir-stato %d"
-#: src/man.c:3548
+#: src/man.c:3551
#, c-format
msgid "internal error: candidate type %d out of range"
msgstr "interna eraro: kanditata tipo %d estas for de intervalo"
-#: src/man.c:4137
+#: src/man.c:4141
msgid " Manual page "
msgstr " Manlibra paĝo "
@@ -644,7 +644,7 @@ msgstr "KODO"
msgid "encoding for output"
msgstr "enkodigo por eligo"
-#: src/manconv_main.c:97 src/manpath.c:68
+#: src/manconv_main.c:97 src/manpath.c:66
msgid "produce fewer warnings"
msgstr "produkti malpli da avertoj"
@@ -658,101 +658,101 @@ msgstr "devas indiki enigan enkodigon"
msgid "must specify an output encoding"
msgstr "devas indiki eligan enkodigon"
-#: src/mandb.c:112
+#: src/mandb.c:111
msgid "[MANPATH]"
msgstr "[MAN-VOJO]"
-#: src/mandb.c:116
+#: src/mandb.c:115
msgid "work quietly, except for 'bogus' warning"
msgstr "labori kviete, krom por averto pri 'aĉeco'"
-#: src/mandb.c:117
+#: src/mandb.c:116
msgid "don't look for or add stray cats to the dbs"
msgstr "ne serĉi aŭ aldoni perditajn dosierojn cat al la dbs"
-#: src/mandb.c:118
+#: src/mandb.c:117
msgid "don't purge obsolete entries from the dbs"
msgstr "ne forpurigi malaktualajn elementojn el la dbs"
-#: src/mandb.c:119
+#: src/mandb.c:118
msgid "produce user databases only"
msgstr "produkti nur datumbazojn de uzantoj"
-#: src/mandb.c:120
+#: src/mandb.c:119
msgid "create dbs from scratch, rather than updating"
msgstr "krei datumbazon elkomence, prefere ol ĝisdatigante"
-#: src/mandb.c:121
+#: src/mandb.c:120
msgid "check manual pages for correctness"
msgstr "kontroli korektecon de manlibraj paĝoj"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "FILENAME"
msgstr "DOSIERNOMO"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "update just the entry for this filename"
msgstr "ĝisdatigi nur la elementon por tiu ĉi dosiernomo"
-#: src/mandb.c:217
+#: src/mandb.c:216
#, c-format
msgid "can't remove %s"
msgstr "ne eblas forigi %s"
-#: src/mandb.c:281
+#: src/mandb.c:280
#, c-format
msgid "can't write to %s"
msgstr "ne eblas skribi al %s"
-#: src/mandb.c:286
+#: src/mandb.c:285
#, c-format
msgid "can't read from %s"
msgstr "ne eblas legi el %s"
-#: src/mandb.c:455
+#: src/mandb.c:457
#, c-format
msgid "Processing manual pages under %s...\n"
msgstr "Procezado de manlibraj paĝoj sub %s...\n"
-#: src/mandb.c:672 src/mandb.c:698
+#: src/mandb.c:666 src/mandb.c:692
#, c-format
msgid "Removing obsolete cat directory %s...\n"
msgstr "Forigado de malaktuala cat-dosierujo %s...\n"
-#: src/mandb.c:848
+#: src/mandb.c:842
#, c-format
msgid "warning: no MANDB_MAP directives in %s, using your manpath"
msgstr "averto: neniu instrukcio MANDB_MAP en %s, ni uzas vian man-vojon"
-#: src/mandb.c:920
+#: src/mandb.c:914
#, c-format
msgid "%d man subdirectory contained newer manual pages.\n"
msgid_plural "%d man subdirectories contained newer manual pages.\n"
msgstr[0] "%d man-subdosierujo enhavis pli novajn manlibrajn paĝojn.\n"
msgstr[1] "%d man-subdosierujoj enhavis pli novajn manlibrajn paĝojn.\n"
-#: src/mandb.c:925
+#: src/mandb.c:919
#, c-format
msgid "%d manual page was added.\n"
msgid_plural "%d manual pages were added.\n"
msgstr[0] "%d manlibra paĝo estis aldonata.\n"
msgstr[1] "%d manlibraj paĝoj estis aldonataj.\n"
-#: src/mandb.c:929
+#: src/mandb.c:923
#, c-format
msgid "%d stray cat was added.\n"
msgid_plural "%d stray cats were added.\n"
msgstr[0] "%d perdita cat estis aldonata.\n"
msgstr[1] "%d perditaj cat estis aldonataj.\n"
-#: src/mandb.c:934
+#: src/mandb.c:928
#, c-format
msgid "%d old database entry was purged.\n"
msgid_plural "%d old database entries were purged.\n"
msgstr[0] "%d malnova datumbaza elemento estis forpurigata.\n"
msgstr[1] "%d malnovaj datumbazaj elementoj estis forpurigataj.\n"
-#: src/mandb.c:952
+#: src/mandb.c:946
#, c-format
msgid "No databases created."
msgstr "Neniu datumbazo estis kreata."
@@ -827,15 +827,15 @@ msgstr "ne eblas determini la nunan dosierujon"
msgid "warning: %s does not begin with %s"
msgstr "averto: %s ne komenciĝas per %s"
-#: src/manpath.c:65
+#: src/manpath.c:63
msgid "show relative catpaths"
msgstr "montri relativajn cat-vojojn"
-#: src/manpath.c:66
+#: src/manpath.c:64
msgid "show the entire global manpath"
msgstr "montri la tutan mallokan man-vojon"
-#: src/manpath.c:128
+#: src/manpath.c:126
#, c-format
msgid "warning: no global manpaths set in config file %s"
msgstr "averto: neniu malloka man-vojo estas difinita en la agorda dosiero %s"
@@ -865,96 +865,96 @@ msgstr "averto: ne eblas ĝisdatigi la indeksan kaŝmemoron %s"
msgid "%s is self referencing"
msgstr "%s estas mem-referenca"
-#: src/whatis.c:123
+#: src/whatis.c:122
msgid "KEYWORD..."
msgstr "ŜLOSILVORTO..."
-#: src/whatis.c:124
+#: src/whatis.c:123
msgid "The --regex option is enabled by default."
msgstr "La modifilo --regex estas ebligita apriore."
-#: src/whatis.c:128
+#: src/whatis.c:127
msgid "print verbose warning messages"
msgstr "montri detaligajn avertajn mesaĝojn"
-#: src/whatis.c:129
+#: src/whatis.c:128
msgid "interpret each keyword as a regex"
msgstr "interpreti ĉiun ŝlosilvorton kiel regulesprimon"
-#: src/whatis.c:130
+#: src/whatis.c:129
msgid "search each keyword for exact match"
msgstr "serĉi ĉiun ŝlosilvorton por entuta kongruo"
-#: src/whatis.c:131
+#: src/whatis.c:130
msgid "the keyword(s) contain wildcards"
msgstr "la ŝlosilvorto(j) enhavas ĵokerojn"
-#: src/whatis.c:132
+#: src/whatis.c:131
msgid "require all keywords to match"
msgstr "postuli ke ĉiuj ŝlosilvortoj kongruu"
-#: src/whatis.c:133
+#: src/whatis.c:132
msgid "do not trim output to terminal width"
msgstr "ne adapti eligon al la terminala larĝo"
-#: src/whatis.c:134
+#: src/whatis.c:133
msgid "search only these sections (colon-separated)"
msgstr "serĉi nur tiujn ĉi sekciojn (dupunkt-apartite)"
-#: src/whatis.c:138
+#: src/whatis.c:137
msgid "define the locale for this search"
msgstr "difini la lokaĵaron por tiu ĉi serĉo"
-#: src/whatis.c:235
+#: src/whatis.c:234
#, c-format
msgid "%s what?\n"
msgstr "%s kio?\n"
-#: src/whatis.c:412 src/whatis.c:430
+#: src/whatis.c:410 src/whatis.c:428
#, c-format
msgid "warning: %s contains a pointer loop"
msgstr "averto: %s enhavas adresmontrilan ciklon"
-#: src/whatis.c:424 src/whatis.c:432
+#: src/whatis.c:422 src/whatis.c:430
msgid "(unknown subject)"
msgstr "(nekonata temo)"
-#: src/whatis.c:863
+#: src/whatis.c:861
#, c-format
msgid "%s: nothing appropriate.\n"
msgstr "%s: nenio taŭga.\n"
-#: src/zsoelim.l:171
+#: src/zsoelim.l:178
#, c-format
msgid "%s:%d: .so requests nested too deeply or are recursive"
msgstr "%s:%d: petoj .so estas nestitaj tro profunde aŭ estas rekursigaj"
-#: src/zsoelim.l:186
+#: src/zsoelim.l:193
#, c-format
msgid "%s:%d: warning: failed .so request"
msgstr "%s:%d: averto: peto .so fiaskis"
-#: src/zsoelim.l:208
+#: src/zsoelim.l:215
#, c-format
msgid "%s:%d: warning: newline in .so request, ignoring"
msgstr "%s:%d: averto: novlinio en peto .so, ni preteratentas"
-#: src/zsoelim.l:268
+#: src/zsoelim.l:275
#, c-format
msgid "%s:%d: warning: malformed .lf request, ignoring"
msgstr "%s:%d: averto: misformita peto .lf, ni preteratentas"
-#: src/zsoelim.l:278
+#: src/zsoelim.l:285
#, c-format
msgid "%s:%d: warning: newline in .lf request, ignoring"
msgstr "%s:%d: averto: novlinio en peto .lf, ni preteratentas"
-#: src/zsoelim.l:318
+#: src/zsoelim.l:325
#, c-format
msgid "%s:%d: unterminated quote in roff request"
msgstr "%s:%d: nefinigita citilo en peto roff"
-#: src/zsoelim_main.c:70
+#: src/zsoelim_main.c:69
msgid "compatibility switch (ignored)"
msgstr "kongrueca aktivigilo (preteratentita)"
diff --git a/po/es.po b/po/es.po
index 84667315..364aafd8 100644
--- a/po/es.po
+++ b/po/es.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: man-db 2.8.0-pre2\n"
"Report-Msgid-Bugs-To: Colin Watson <cjwatson@debian.org>\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2018-02-27 15:52+0100\n"
"Last-Translator: Francisco Javier Serrador <fserrador@gmail.com>\n"
"Language-Team: Spanish <es@tp.org.es>\n"
@@ -66,7 +66,7 @@ msgstr[1] "únicamente en %d campos en el contenido"
msgid "bad fetch on multi key %s"
msgstr "no se ha obtener en clave múltiple %s"
-#: libdb/db_lookup.c:443 src/whatis.c:739
+#: libdb/db_lookup.c:443 src/whatis.c:737
#, c-format
msgid "Database %s corrupted; rebuild with mandb --create"
msgstr "Base de datos %s corrompida; reconstrúyala con mandb --create"
@@ -76,28 +76,28 @@ msgstr "Base de datos %s corrompida; reconstrúyala con mandb --create"
msgid "warning: %s has no version identifier\n"
msgstr "aviso: %s no tiene identificador de versión.\n"
-#: libdb/db_ver.c:56
+#: libdb/db_ver.c:57
#, c-format
msgid "warning: %s is version %s, expecting %s\n"
msgstr "aviso: %s tiene la versión %s, aunque se esperaba %s.\n"
-#: libdb/db_ver.c:78
+#: libdb/db_ver.c:79
#, c-format
msgid "fatal: unable to insert version identifier into %s"
msgstr "fatal: no se puede insertar identificador de versión dentro de %s"
-#: src/accessdb.c:61
+#: src/accessdb.c:59
msgid "[MAN DATABASE]"
msgstr "[MAN BASEDATOS]"
-#: src/accessdb.c:62
+#: src/accessdb.c:60
#, c-format
msgid "The man database defaults to %s%s."
msgstr "La base de datos predeterminadoa a %s%s."
-#: src/accessdb.c:65 src/catman.c:103 src/globbing_test.c:62
-#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:115
-#: src/manpath.c:67 src/whatis.c:127 src/zsoelim_main.c:69
+#: src/accessdb.c:63 src/catman.c:100 src/globbing_test.c:58
+#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:114
+#: src/manpath.c:65 src/whatis.c:126 src/zsoelim_main.c:68
msgid "emit debugging messages"
msgstr "emite mensajes de depuración"
@@ -106,44 +106,44 @@ msgstr "emite mensajes de depuración"
msgid "can't open %s for reading"
msgstr "no se puede abrir %s para leer"
-#: src/catman.c:100
+#: src/catman.c:97
msgid "[SECTION...]"
msgstr "[SECCIÓN...]"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "PATH"
msgstr "RUTA"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "set search path for manual pages to PATH"
msgstr "establece ruta de búsqueda para páginas del manual a ruta PATH"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "FILE"
msgstr "FICHERO"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "use this user configuration file"
msgstr "emplee este fichero de configuración de usuario"
-#: src/catman.c:198
+#: src/catman.c:195
#, c-format
msgid "man command failed with exit status %d"
msgstr "orden man fallada con estado de salida %d"
-#: src/catman.c:237
+#: src/catman.c:235
#, c-format
msgid "cannot read database %s"
msgstr "no se puede leer la base de datos %s"
-#: src/catman.c:280
+#: src/catman.c:278
#, c-format
msgid "NULL content for key: %s"
msgstr "Contenido NULO para clave: %s"
-#: src/catman.c:295
+#: src/catman.c:294
#, c-format
msgid ""
"\n"
@@ -152,12 +152,12 @@ msgstr ""
"\n"
"Actualizando los ficheros cat para la sección %s de la jerarquía de man %s.\n"
-#: src/catman.c:349
+#: src/catman.c:348
#, c-format
msgid "cannot write within %s"
msgstr "no se puede escribir en %s"
-#: src/catman.c:426
+#: src/catman.c:425
#, c-format
msgid "unable to update %s"
msgstr "incapaz de actualizar %s"
@@ -167,67 +167,67 @@ msgstr "incapaz de actualizar %s"
msgid "warning: %s/man%s/%s.%s*: competing extensions"
msgstr "aviso: %s/man%s/%s.%s*: extensiones en conflicto"
-#: src/check_mandirs.c:114 src/check_mandirs.c:613
+#: src/check_mandirs.c:126 src/check_mandirs.c:626
#, c-format
msgid "can't update index cache %s"
msgstr "no se puede actualizar el caché de índices %s"
-#: src/check_mandirs.c:242
+#: src/check_mandirs.c:254
#, c-format
msgid "warning: %s: bad symlink or ROFF `.so' request"
msgstr "aviso: %s: enlace simbólico o solicitud `.so' de ROFF defectuoso"
-#: src/check_mandirs.c:298
+#: src/check_mandirs.c:310
#, c-format
msgid "warning: %s: ignoring empty file"
msgstr "aviso: %s: ignorando fichero vacío"
-#: src/check_mandirs.c:302 src/straycats.c:276
+#: src/check_mandirs.c:314 src/straycats.c:276
#, c-format
msgid "warning: %s: whatis parse for %s(%s) failed"
msgstr "aviso: %s: ha fallado la exploración de whatis para %s(%s)"
-#: src/check_mandirs.c:329 src/check_mandirs.c:498 src/mandb.c:883
+#: src/check_mandirs.c:341 src/check_mandirs.c:511 src/mandb.c:877
#: src/straycats.c:84 src/straycats.c:303 src/ult_src.c:81
#, c-format
msgid "can't search directory %s"
msgstr "no se puede buscar en el directorio %s"
-#: src/check_mandirs.c:378 src/man.c:1687
+#: src/check_mandirs.c:390 src/man.c:1689
#, c-format
msgid "can't chown %s"
msgstr "no se puede cambiar propietario con chown %s"
-#: src/check_mandirs.c:400 src/check_mandirs.c:423
+#: src/check_mandirs.c:412 src/check_mandirs.c:435
#, c-format
msgid "warning: cannot create catdir %s"
msgstr "aviso: no se pudo crear directorio para «cat» %s"
-#: src/check_mandirs.c:455 src/man.c:1699 src/mandb.c:233
+#: src/check_mandirs.c:467 src/man.c:1701 src/mandb.c:232
#, c-format
msgid "can't chmod %s"
msgstr "no se puede ejecutar el chmod %s"
-#: src/check_mandirs.c:503
+#: src/check_mandirs.c:516
#, c-format
msgid "can't change to directory %s"
msgstr "no se puede cambiar al directorio %s"
-#: src/check_mandirs.c:553
+#: src/check_mandirs.c:566
#, c-format
msgid "can't create index cache %s"
msgstr "no se puede crear el caché de índices %s"
-#: src/check_mandirs.c:578
+#: src/check_mandirs.c:591
#, c-format
msgid "Updating index cache for path `%s/%s'. Wait..."
msgstr "Actualizando el caché de índices para la ruta `%s/%s'. Aguarde..."
-#: src/check_mandirs.c:640 src/check_mandirs.c:701
+#: src/check_mandirs.c:653 src/check_mandirs.c:714
msgid "done.\n"
msgstr "terminado.\n"
-#: src/check_mandirs.c:963
+#: src/check_mandirs.c:977
#, c-format
msgid "Purging old database entries in %s...\n"
msgstr "Purgando entradas antiguas en la base de datos en %s...\n"
@@ -242,49 +242,49 @@ msgstr "aviso: ha fallado al almacenar entrada para %s(%s)"
msgid "warning: %s: ignoring bogus filename"
msgstr "aviso: %s: ignorando nombre espurio de fichero"
-#: src/globbing_test.c:59
+#: src/globbing_test.c:55
msgid "PATH SECTION NAME"
msgstr "NOMBRE SECCIONAL ENRUTADO"
-#: src/globbing_test.c:63 src/man.c:292
+#: src/globbing_test.c:59 src/man.c:292
msgid "EXTENSION"
msgstr "EXTENSIÓN"
-#: src/globbing_test.c:63 src/man.c:293
+#: src/globbing_test.c:59 src/man.c:293
msgid "limit search to extension type EXTENSION"
msgstr "búsqueda limitada para tipo de extensión EXTENSION"
-#: src/globbing_test.c:64 src/man.c:294
+#: src/globbing_test.c:60 src/man.c:294
msgid "look for pages case-insensitively (default)"
msgstr "busca páginas no distinguible de mayúsculas (predeterminado)"
-#: src/globbing_test.c:65 src/man.c:295
+#: src/globbing_test.c:61 src/man.c:295
msgid "look for pages case-sensitively"
msgstr "busca páginas distinguiendo mayúsculas"
-#: src/globbing_test.c:66
+#: src/globbing_test.c:62
msgid "interpret page name as a regex"
msgstr "interpreta nombre de página como un expreg"
-#: src/globbing_test.c:67
+#: src/globbing_test.c:63
msgid "the page name contains wildcards"
msgstr "el nombre de la página contiene comodines"
-#: src/lexgrog.l:691
+#: src/lexgrog.l:701
#, c-format
msgid "warning: whatis for %s exceeds %d byte, truncating."
msgid_plural "warning: whatis for %s exceeds %d bytes, truncating."
msgstr[0] "aviso: whatis para %s excede de %d byte, truncando."
msgstr[1] "aviso: whatis para %s excede de %d bytes, truncando."
-#: src/lexgrog.l:844 src/man.c:2268 src/man.c:2350 src/man.c:2448
+#: src/lexgrog.l:854 src/man.c:2270 src/man.c:2354 src/man.c:2452
#: src/manconv_main.c:168 src/straycats.c:218 src/ult_src.c:321
-#: src/ult_src.c:335 src/zsoelim.l:512
+#: src/ult_src.c:335 src/zsoelim.l:519
#, c-format
msgid "can't open %s"
msgstr "no se puede abrir %s"
-#: src/lexgrog_test.c:69 src/zsoelim_main.c:66
+#: src/lexgrog_test.c:69 src/zsoelim_main.c:65
msgid "FILE..."
msgstr "FICHERO..."
@@ -382,7 +382,7 @@ msgstr "página origen codificada por salida en codificación ENCODING"
msgid "Finding manual pages:"
msgstr "Encontrando páginas del manual:"
-#: src/man.c:287 src/whatis.c:138
+#: src/man.c:287 src/whatis.c:137
msgid "LOCALE"
msgstr "LOCALE"
@@ -390,15 +390,15 @@ msgstr "LOCALE"
msgid "define the locale for this particular man search"
msgstr "define la localización para esta búsqueda de man particular"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "SYSTEM"
msgstr "SYSTEM"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "use manual pages from other systems"
msgstr "emplea páginas del manual desde otros sistemas"
-#: src/man.c:290 src/whatis.c:134
+#: src/man.c:290 src/whatis.c:133
msgid "LIST"
msgstr "LISTADO"
@@ -513,78 +513,78 @@ msgstr ""
msgid "use groff and force it to produce ditroff"
msgstr "utiliza groff y lo fuerza para producir ditroff"
-#: src/man.c:597 src/man.c:733
+#: src/man.c:599 src/man.c:735
#, c-format
msgid "No manual entry for %s\n"
msgstr "Ninguna entrada del manual para %s\n"
-#: src/man.c:599
+#: src/man.c:601
#, c-format
msgid "(Alternatively, what manual page do you want from section %s?)\n"
msgstr ""
"(Alternativamente, ¿cual página de manual quiere desde la sección %s?\n"
-#: src/man.c:603
+#: src/man.c:605
msgid "What manual page do you want?\n"
msgstr "¿Qué página del manual desea?\n"
-#: src/man.c:730
+#: src/man.c:732
#, c-format
msgid "No manual entry for %s in section %s\n"
msgstr "Ningún registro del manual para %s en sección %s\n"
-#: src/man.c:739
+#: src/man.c:741
#, c-format
msgid "See '%s' for help when manual pages are not available.\n"
msgstr "Vea «%s» para ayudar cuando las páginas man no estén disponibles.\n"
-#: src/man.c:1347
+#: src/man.c:1349
#, c-format
msgid "ignoring unknown preprocessor `%c'"
msgstr "se ignora el preprocesador desconocido «%c»"
-#: src/man.c:1710 src/mandb.c:224
+#: src/man.c:1712 src/mandb.c:223
#, c-format
msgid "can't rename %s to %s"
msgstr "no se puede renombrar %s a %s"
-#: src/man.c:1727
+#: src/man.c:1729
#, c-format
msgid "can't set times on %s"
msgstr "no se puede establecer hora en %s"
-#: src/man.c:1736 src/man.c:1773
+#: src/man.c:1738 src/man.c:1775
#, c-format
msgid "can't unlink %s"
msgstr "no se puede desenlazar %s"
-#: src/man.c:1803
+#: src/man.c:1805
#, c-format
msgid "can't create temporary cat for %s"
msgstr "no puede crear flujo cat temporal para %s"
-#: src/man.c:1913
+#: src/man.c:1915
#, c-format
msgid "can't create temporary directory"
msgstr "no puede crear un directorio temporal"
-#: src/man.c:1924
+#: src/man.c:1926
#, c-format
msgid "can't open temporary file %s"
msgstr "no puede abrir temporalmente el fichero %s"
-#: src/man.c:1954 src/man.c:1983
+#: src/man.c:1956 src/man.c:1985
#, c-format
msgid "can't remove directory %s"
msgstr "no se puede quitar el directorio %s"
-#: src/man.c:2112
+#: src/man.c:2114
#, c-format
msgid "--Man-- next: %s [ view (return) | skip (Ctrl-D) | quit (Ctrl-C) ]\n"
msgstr ""
"--Man-- próxima: %s [ ver (return) | siguiente (Ctrl-D) | salir (Ctrl-C) ]\n"
-#: src/man.c:2393
+#: src/man.c:2397
#, c-format
msgid ""
"\n"
@@ -593,27 +593,27 @@ msgstr ""
"\n"
"no se puede escribir en %s en modo catman"
-#: src/man.c:2474
+#: src/man.c:2477
#, c-format
msgid "Can't convert %s to cat name"
msgstr "No se puede convertir %s a un nombre de tipo cat"
-#: src/man.c:3203
+#: src/man.c:3206
#, c-format
msgid "%s: relying on whatis refs is deprecated\n"
msgstr "%s: depender de las referencias de whatis está en desuso.\n"
-#: src/man.c:3346 src/man.c:4196
+#: src/man.c:3349 src/man.c:4200
#, c-format
msgid "mandb command failed with exit status %d"
msgstr "orden mandb fallada con estado de salida %d"
-#: src/man.c:3548
+#: src/man.c:3551
#, c-format
msgid "internal error: candidate type %d out of range"
msgstr "error interno: tipo candidato %d fuera del rango"
-#: src/man.c:4137
+#: src/man.c:4141
msgid " Manual page "
msgstr " Página de manual "
@@ -646,7 +646,7 @@ msgstr "CÓDIGO"
msgid "encoding for output"
msgstr "codificando para salida"
-#: src/manconv_main.c:97 src/manpath.c:68
+#: src/manconv_main.c:97 src/manpath.c:66
msgid "produce fewer warnings"
msgstr "produce menos advertencias"
@@ -660,75 +660,75 @@ msgstr "debe especificar una codificación de entrada"
msgid "must specify an output encoding"
msgstr "debe específicamente una codificación de salida"
-#: src/mandb.c:112
+#: src/mandb.c:111
msgid "[MANPATH]"
msgstr "[RUTAMAN]"
-#: src/mandb.c:116
+#: src/mandb.c:115
msgid "work quietly, except for 'bogus' warning"
msgstr "funciona silenciosamente, excepto para avisos 'espúreos'"
-#: src/mandb.c:117
+#: src/mandb.c:116
msgid "don't look for or add stray cats to the dbs"
msgstr "no buscar o añadir bandeja de car para la bbdd"
-#: src/mandb.c:118
+#: src/mandb.c:117
msgid "don't purge obsolete entries from the dbs"
msgstr "no purgar entradas obsoletas desde las bbdd"
-#: src/mandb.c:119
+#: src/mandb.c:118
msgid "produce user databases only"
msgstr "produce solo bases de datos del usuario"
-#: src/mandb.c:120
+#: src/mandb.c:119
msgid "create dbs from scratch, rather than updating"
msgstr "crea bbdd desde restos mejor que actualizando"
-#: src/mandb.c:121
+#: src/mandb.c:120
msgid "check manual pages for correctness"
msgstr "comprueba páginas de manual para corrección"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "FILENAME"
msgstr "NOMBREFICHERO"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "update just the entry for this filename"
msgstr "actualiza tan solo la entrada para este nombre de fichero"
-#: src/mandb.c:217
+#: src/mandb.c:216
#, c-format
msgid "can't remove %s"
msgstr "no se puede quitar %s"
-#: src/mandb.c:281
+#: src/mandb.c:280
#, c-format
msgid "can't write to %s"
msgstr "no puede escribir a %s"
-#: src/mandb.c:286
+#: src/mandb.c:285
#, c-format
msgid "can't read from %s"
msgstr "no puede leer desde %s"
-#: src/mandb.c:455
+#: src/mandb.c:457
#, c-format
msgid "Processing manual pages under %s...\n"
msgstr "Procesando las páginas de manual bajo %s...\n"
-#: src/mandb.c:672 src/mandb.c:698
+#: src/mandb.c:666 src/mandb.c:692
#, c-format
msgid "Removing obsolete cat directory %s...\n"
msgstr "Quitando el directorio cat obsoleto %s...\n"
# manpath es algo específico, debe estar presente. nl
-#: src/mandb.c:848
+#: src/mandb.c:842
#, c-format
msgid "warning: no MANDB_MAP directives in %s, using your manpath"
msgstr ""
"aviso: no hay directivas MANDB_MAP en %s, se utilizará su ruta man (manpath)"
-#: src/mandb.c:920
+#: src/mandb.c:914
#, c-format
msgid "%d man subdirectory contained newer manual pages.\n"
msgid_plural "%d man subdirectories contained newer manual pages.\n"
@@ -737,14 +737,14 @@ msgstr[0] ""
"\n"
msgstr[1] "%d subdirectorios man contenían páginas de manual más recientes.\n"
-#: src/mandb.c:925
+#: src/mandb.c:919
#, c-format
msgid "%d manual page was added.\n"
msgid_plural "%d manual pages were added.\n"
msgstr[0] "%d página del manual fue añadida.\n"
msgstr[1] "%d páginas del manual fueron añadidas.\n"
-#: src/mandb.c:929
+#: src/mandb.c:923
#, c-format
msgid "%d stray cat was added.\n"
msgid_plural "%d stray cats were added.\n"
@@ -753,14 +753,14 @@ msgstr[1] ""
"%d bandejas cat fueron añadidas.\n"
"\n"
-#: src/mandb.c:934
+#: src/mandb.c:928
#, c-format
msgid "%d old database entry was purged.\n"
msgid_plural "%d old database entries were purged.\n"
msgstr[0] "Se han eliminado %d entrada antigua en la base de datos.\n"
msgstr[1] "Se han eliminado %d entradas antiguas en la base de datos.\n"
-#: src/mandb.c:952
+#: src/mandb.c:946
#, c-format
msgid "No databases created."
msgstr "Ninguna base de datos creada."
@@ -835,15 +835,15 @@ msgstr "no se puede determinar el directorio actual"
msgid "warning: %s does not begin with %s"
msgstr "aviso: %s no comienza con %s"
-#: src/manpath.c:65
+#: src/manpath.c:63
msgid "show relative catpaths"
msgstr "muestra rutas catpath relativas"
-#: src/manpath.c:66
+#: src/manpath.c:64
msgid "show the entire global manpath"
msgstr "muestra la ruta manpath global completa"
-#: src/manpath.c:128
+#: src/manpath.c:126
#, c-format
msgid "warning: no global manpaths set in config file %s"
msgstr ""
@@ -875,96 +875,96 @@ msgstr "aviso: no se pudo actualizar el caché de índices %s"
msgid "%s is self referencing"
msgstr "%s está referenciado a sí mismo"
-#: src/whatis.c:123
+#: src/whatis.c:122
msgid "KEYWORD..."
msgstr "PALABRACLAVE..."
-#: src/whatis.c:124
+#: src/whatis.c:123
msgid "The --regex option is enabled by default."
msgstr "La opción --regex está activada por defecto."
-#: src/whatis.c:128
+#: src/whatis.c:127
msgid "print verbose warning messages"
msgstr "escribe mensajes de advertencia detallados"
-#: src/whatis.c:129
+#: src/whatis.c:128
msgid "interpret each keyword as a regex"
msgstr "interpreta cada palabra clave como una expreg"
-#: src/whatis.c:130
+#: src/whatis.c:129
msgid "search each keyword for exact match"
msgstr "busca cada palabra clave por coincidente exacto"
-#: src/whatis.c:131
+#: src/whatis.c:130
msgid "the keyword(s) contain wildcards"
msgstr "la(s) palabra(s) clave(s) contienen comodines"
-#: src/whatis.c:132
+#: src/whatis.c:131
msgid "require all keywords to match"
msgstr "requiere todas las palabras claves a coincidir"
-#: src/whatis.c:133
+#: src/whatis.c:132
msgid "do not trim output to terminal width"
msgstr "no cortar salida para ancho del terminal"
-#: src/whatis.c:134
+#: src/whatis.c:133
msgid "search only these sections (colon-separated)"
msgstr "busca solo estas secciones (separados por dos puntos)"
-#: src/whatis.c:138
+#: src/whatis.c:137
msgid "define the locale for this search"
msgstr "define la localización para esta búsqueda"
-#: src/whatis.c:235
+#: src/whatis.c:234
#, c-format
msgid "%s what?\n"
msgstr "%s ¿qué?\n"
-#: src/whatis.c:412 src/whatis.c:430
+#: src/whatis.c:410 src/whatis.c:428
#, c-format
msgid "warning: %s contains a pointer loop"
msgstr "aviso: %s contiene un bucle de puntero"
-#: src/whatis.c:424 src/whatis.c:432
+#: src/whatis.c:422 src/whatis.c:430
msgid "(unknown subject)"
msgstr "(asunto desconocido)"
-#: src/whatis.c:863
+#: src/whatis.c:861
#, c-format
msgid "%s: nothing appropriate.\n"
msgstr "%s: nada apropiado.\n"
-#: src/zsoelim.l:171
+#: src/zsoelim.l:178
#, c-format
msgid "%s:%d: .so requests nested too deeply or are recursive"
msgstr "%s:%d: .so solicita anidado demasiado profunda o son recursivas"
-#: src/zsoelim.l:186
+#: src/zsoelim.l:193
#, c-format
msgid "%s:%d: warning: failed .so request"
msgstr "%s:%d: aviso: petición .so fallada"
-#: src/zsoelim.l:208
+#: src/zsoelim.l:215
#, c-format
msgid "%s:%d: warning: newline in .so request, ignoring"
msgstr "%s:%d: advertencia: línea nueva dentro de petición .so, ignorando"
-#: src/zsoelim.l:268
+#: src/zsoelim.l:275
#, c-format
msgid "%s:%d: warning: malformed .lf request, ignoring"
msgstr "%s:%d: aviso: petición .lf mal formada, ignorandando"
-#: src/zsoelim.l:278
+#: src/zsoelim.l:285
#, c-format
msgid "%s:%d: warning: newline in .lf request, ignoring"
msgstr "%s:%d: aviso: nuevo línea en petición -lf, ignorando"
-#: src/zsoelim.l:318
+#: src/zsoelim.l:325
#, c-format
msgid "%s:%d: unterminated quote in roff request"
msgstr "%s:%d: comilla indeterminada en petición roff"
-#: src/zsoelim_main.c:70
+#: src/zsoelim_main.c:69
msgid "compatibility switch (ignored)"
msgstr "interruptor de compatibilidad (ignorado)"
diff --git a/po/fi.po b/po/fi.po
index 8b458797..40c3b53a 100644
--- a/po/fi.po
+++ b/po/fi.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: man-db 2.7.0-pre1\n"
"Report-Msgid-Bugs-To: Colin Watson <cjwatson@debian.org>\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2015-07-28 21:52+0300\n"
"Last-Translator: Lauri Nurmi <lanurmi@iki.fi>\n"
"Language-Team: Finnish <translation-team-fi@lists.sourceforge.net>\n"
@@ -65,7 +65,7 @@ msgstr[1] ""
msgid "bad fetch on multi key %s"
msgstr ""
-#: libdb/db_lookup.c:443 src/whatis.c:739
+#: libdb/db_lookup.c:443 src/whatis.c:737
#, c-format
msgid "Database %s corrupted; rebuild with mandb --create"
msgstr ""
@@ -76,28 +76,28 @@ msgstr ""
msgid "warning: %s has no version identifier\n"
msgstr ""
-#: libdb/db_ver.c:56
+#: libdb/db_ver.c:57
#, c-format
msgid "warning: %s is version %s, expecting %s\n"
msgstr ""
-#: libdb/db_ver.c:78
+#: libdb/db_ver.c:79
#, c-format
msgid "fatal: unable to insert version identifier into %s"
msgstr ""
-#: src/accessdb.c:61
+#: src/accessdb.c:59
msgid "[MAN DATABASE]"
msgstr ""
-#: src/accessdb.c:62
+#: src/accessdb.c:60
#, c-format
msgid "The man database defaults to %s%s."
msgstr ""
-#: src/accessdb.c:65 src/catman.c:103 src/globbing_test.c:62
-#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:115
-#: src/manpath.c:67 src/whatis.c:127 src/zsoelim_main.c:69
+#: src/accessdb.c:63 src/catman.c:100 src/globbing_test.c:58
+#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:114
+#: src/manpath.c:65 src/whatis.c:126 src/zsoelim_main.c:68
msgid "emit debugging messages"
msgstr ""
@@ -106,57 +106,57 @@ msgstr ""
msgid "can't open %s for reading"
msgstr ""
-#: src/catman.c:100
+#: src/catman.c:97
msgid "[SECTION...]"
msgstr "[OSIO...]"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "PATH"
msgstr "POLKU"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "set search path for manual pages to PATH"
msgstr "aseta opastesivujen hakupoluksi POLKU"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "FILE"
msgstr "TIEDOSTO"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
#, fuzzy
msgid "use this user configuration file"
msgstr "opastepolkujen asetustiedostoa %s ei voi avata"
-#: src/catman.c:198
+#: src/catman.c:195
#, c-format
msgid "man command failed with exit status %d"
msgstr ""
-#: src/catman.c:237
+#: src/catman.c:235
#, c-format
msgid "cannot read database %s"
msgstr "tietokantaa %s ei voi lukea"
-#: src/catman.c:280
+#: src/catman.c:278
#, c-format
msgid "NULL content for key: %s"
msgstr ""
-#: src/catman.c:295
+#: src/catman.c:294
#, c-format
msgid ""
"\n"
"Updating cat files for section %s of man hierarchy %s\n"
msgstr ""
-#: src/catman.c:349
+#: src/catman.c:348
#, c-format
msgid "cannot write within %s"
msgstr ""
-#: src/catman.c:426
+#: src/catman.c:425
#, c-format
msgid "unable to update %s"
msgstr ""
@@ -166,67 +166,67 @@ msgstr ""
msgid "warning: %s/man%s/%s.%s*: competing extensions"
msgstr ""
-#: src/check_mandirs.c:114 src/check_mandirs.c:613
+#: src/check_mandirs.c:126 src/check_mandirs.c:626
#, c-format
msgid "can't update index cache %s"
msgstr ""
-#: src/check_mandirs.c:242
+#: src/check_mandirs.c:254
#, c-format
msgid "warning: %s: bad symlink or ROFF `.so' request"
msgstr ""
-#: src/check_mandirs.c:298
+#: src/check_mandirs.c:310
#, c-format
msgid "warning: %s: ignoring empty file"
msgstr "varoitus: %s: ei huomioida tyhjää tiedostoa"
-#: src/check_mandirs.c:302 src/straycats.c:276
+#: src/check_mandirs.c:314 src/straycats.c:276
#, c-format
msgid "warning: %s: whatis parse for %s(%s) failed"
msgstr ""
-#: src/check_mandirs.c:329 src/check_mandirs.c:498 src/mandb.c:883
+#: src/check_mandirs.c:341 src/check_mandirs.c:511 src/mandb.c:877
#: src/straycats.c:84 src/straycats.c:303 src/ult_src.c:81
#, c-format
msgid "can't search directory %s"
msgstr ""
-#: src/check_mandirs.c:378 src/man.c:1687
+#: src/check_mandirs.c:390 src/man.c:1689
#, c-format
msgid "can't chown %s"
msgstr ""
-#: src/check_mandirs.c:400 src/check_mandirs.c:423
+#: src/check_mandirs.c:412 src/check_mandirs.c:435
#, c-format
msgid "warning: cannot create catdir %s"
msgstr ""
-#: src/check_mandirs.c:455 src/man.c:1699 src/mandb.c:233
+#: src/check_mandirs.c:467 src/man.c:1701 src/mandb.c:232
#, c-format
msgid "can't chmod %s"
msgstr ""
-#: src/check_mandirs.c:503
+#: src/check_mandirs.c:516
#, c-format
msgid "can't change to directory %s"
msgstr ""
-#: src/check_mandirs.c:553
+#: src/check_mandirs.c:566
#, c-format
msgid "can't create index cache %s"
msgstr ""
-#: src/check_mandirs.c:578
+#: src/check_mandirs.c:591
#, c-format
msgid "Updating index cache for path `%s/%s'. Wait..."
msgstr ""
-#: src/check_mandirs.c:640 src/check_mandirs.c:701
+#: src/check_mandirs.c:653 src/check_mandirs.c:714
msgid "done.\n"
msgstr "valmis.\n"
-#: src/check_mandirs.c:963
+#: src/check_mandirs.c:977
#, c-format
msgid "Purging old database entries in %s...\n"
msgstr ""
@@ -241,49 +241,49 @@ msgstr ""
msgid "warning: %s: ignoring bogus filename"
msgstr ""
-#: src/globbing_test.c:59
+#: src/globbing_test.c:55
msgid "PATH SECTION NAME"
msgstr ""
-#: src/globbing_test.c:63 src/man.c:292
+#: src/globbing_test.c:59 src/man.c:292
msgid "EXTENSION"
msgstr ""
-#: src/globbing_test.c:63 src/man.c:293
+#: src/globbing_test.c:59 src/man.c:293
msgid "limit search to extension type EXTENSION"
msgstr ""
-#: src/globbing_test.c:64 src/man.c:294
+#: src/globbing_test.c:60 src/man.c:294
msgid "look for pages case-insensitively (default)"
msgstr ""
-#: src/globbing_test.c:65 src/man.c:295
+#: src/globbing_test.c:61 src/man.c:295
msgid "look for pages case-sensitively"
msgstr ""
-#: src/globbing_test.c:66
+#: src/globbing_test.c:62
msgid "interpret page name as a regex"
msgstr ""
-#: src/globbing_test.c:67
+#: src/globbing_test.c:63
msgid "the page name contains wildcards"
msgstr "sivun nimi sisältää jokerimerkkejä"
-#: src/lexgrog.l:691
+#: src/lexgrog.l:701
#, c-format
msgid "warning: whatis for %s exceeds %d byte, truncating."
msgid_plural "warning: whatis for %s exceeds %d bytes, truncating."
msgstr[0] ""
msgstr[1] ""
-#: src/lexgrog.l:844 src/man.c:2268 src/man.c:2350 src/man.c:2448
+#: src/lexgrog.l:854 src/man.c:2270 src/man.c:2354 src/man.c:2452
#: src/manconv_main.c:168 src/straycats.c:218 src/ult_src.c:321
-#: src/ult_src.c:335 src/zsoelim.l:512
+#: src/ult_src.c:335 src/zsoelim.l:519
#, c-format
msgid "can't open %s"
msgstr ""
-#: src/lexgrog_test.c:69 src/zsoelim_main.c:66
+#: src/lexgrog_test.c:69 src/zsoelim_main.c:65
msgid "FILE..."
msgstr "TIEDOSTO..."
@@ -382,7 +382,7 @@ msgstr ""
msgid "Finding manual pages:"
msgstr " Opastesivu "
-#: src/man.c:287 src/whatis.c:138
+#: src/man.c:287 src/whatis.c:137
msgid "LOCALE"
msgstr ""
@@ -390,15 +390,15 @@ msgstr ""
msgid "define the locale for this particular man search"
msgstr ""
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "SYSTEM"
msgstr "JÄRJESTELMÄ"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "use manual pages from other systems"
msgstr ""
-#: src/man.c:290 src/whatis.c:134
+#: src/man.c:290 src/whatis.c:133
msgid "LIST"
msgstr ""
@@ -506,103 +506,103 @@ msgstr ""
msgid "use groff and force it to produce ditroff"
msgstr ""
-#: src/man.c:597 src/man.c:733
+#: src/man.c:599 src/man.c:735
#, fuzzy, c-format
msgid "No manual entry for %s\n"
msgstr "Sovellukselle %s ei ole opastesivua"
-#: src/man.c:599
+#: src/man.c:601
#, fuzzy, c-format
msgid "(Alternatively, what manual page do you want from section %s?)\n"
msgstr "Minkä opastesivun haluat osiosta %s?\n"
-#: src/man.c:603
+#: src/man.c:605
msgid "What manual page do you want?\n"
msgstr "Minkä opastesivun haluat?\n"
-#: src/man.c:730
+#: src/man.c:732
#, fuzzy, c-format
msgid "No manual entry for %s in section %s\n"
msgstr "Sovellukselle %s ei ole opastesivua"
-#: src/man.c:739
+#: src/man.c:741
#, c-format
msgid "See '%s' for help when manual pages are not available.\n"
msgstr ""
-#: src/man.c:1347
+#: src/man.c:1349
#, c-format
msgid "ignoring unknown preprocessor `%c'"
msgstr "ei huomioida tuntematonta esikäsittelintä \"%c\""
-#: src/man.c:1710 src/mandb.c:224
+#: src/man.c:1712 src/mandb.c:223
#, c-format
msgid "can't rename %s to %s"
msgstr ""
-#: src/man.c:1727
+#: src/man.c:1729
#, c-format
msgid "can't set times on %s"
msgstr ""
-#: src/man.c:1736 src/man.c:1773
+#: src/man.c:1738 src/man.c:1775
#, c-format
msgid "can't unlink %s"
msgstr ""
-#: src/man.c:1803
+#: src/man.c:1805
#, fuzzy, c-format
msgid "can't create temporary cat for %s"
msgstr "varoitus: väliaikaistiedostoa %s ei voi luoda"
-#: src/man.c:1913
+#: src/man.c:1915
#, fuzzy, c-format
msgid "can't create temporary directory"
msgstr "nykyistä hakemistoa ei voi määrittää"
-#: src/man.c:1924
+#: src/man.c:1926
#, fuzzy, c-format
msgid "can't open temporary file %s"
msgstr "opastepolkujen asetustiedostoa %s ei voi avata"
-#: src/man.c:1954 src/man.c:1983
+#: src/man.c:1956 src/man.c:1985
#, c-format
msgid "can't remove directory %s"
msgstr ""
-#: src/man.c:2112
+#: src/man.c:2114
#, c-format
msgid "--Man-- next: %s [ view (return) | skip (Ctrl-D) | quit (Ctrl-C) ]\n"
msgstr ""
-#: src/man.c:2393
+#: src/man.c:2397
#, c-format
msgid ""
"\n"
"cannot write to %s in catman mode"
msgstr ""
-#: src/man.c:2474
+#: src/man.c:2477
#, c-format
msgid "Can't convert %s to cat name"
msgstr ""
-#: src/man.c:3203
+#: src/man.c:3206
#, c-format
msgid "%s: relying on whatis refs is deprecated\n"
msgstr ""
-#: src/man.c:3346 src/man.c:4196
+#: src/man.c:3349 src/man.c:4200
#, c-format
msgid "mandb command failed with exit status %d"
msgstr "mandb-komento epäonnistui paluuarvolla %d"
-#: src/man.c:3548
+#: src/man.c:3551
#, c-format
msgid "internal error: candidate type %d out of range"
msgstr ""
-#: src/man.c:4137
+#: src/man.c:4141
msgid " Manual page "
msgstr " Opastesivu "
@@ -635,7 +635,7 @@ msgstr ""
msgid "encoding for output"
msgstr "tulosteen merkistö"
-#: src/manconv_main.c:97 src/manpath.c:68
+#: src/manconv_main.c:97 src/manpath.c:66
msgid "produce fewer warnings"
msgstr "tuota vähemmän varoituksia"
@@ -649,101 +649,101 @@ msgstr "syötteen merkistö on annettava"
msgid "must specify an output encoding"
msgstr "tulosteen merkistö on annettava"
-#: src/mandb.c:112
+#: src/mandb.c:111
msgid "[MANPATH]"
msgstr ""
-#: src/mandb.c:116
+#: src/mandb.c:115
msgid "work quietly, except for 'bogus' warning"
msgstr ""
-#: src/mandb.c:117
+#: src/mandb.c:116
msgid "don't look for or add stray cats to the dbs"
msgstr ""
-#: src/mandb.c:118
+#: src/mandb.c:117
msgid "don't purge obsolete entries from the dbs"
msgstr ""
-#: src/mandb.c:119
+#: src/mandb.c:118
msgid "produce user databases only"
msgstr ""
-#: src/mandb.c:120
+#: src/mandb.c:119
msgid "create dbs from scratch, rather than updating"
msgstr ""
-#: src/mandb.c:121
+#: src/mandb.c:120
msgid "check manual pages for correctness"
msgstr ""
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "FILENAME"
msgstr "TIEDOSTONIMI"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "update just the entry for this filename"
msgstr ""
-#: src/mandb.c:217
+#: src/mandb.c:216
#, c-format
msgid "can't remove %s"
msgstr "tiedostoa %s ei voi poistaa"
-#: src/mandb.c:281
+#: src/mandb.c:280
#, c-format
msgid "can't write to %s"
msgstr "tiedostoon %s ei voi kirjoittaa"
-#: src/mandb.c:286
+#: src/mandb.c:285
#, c-format
msgid "can't read from %s"
msgstr "tiedostosta %s ei voi lukea"
-#: src/mandb.c:455
+#: src/mandb.c:457
#, c-format
msgid "Processing manual pages under %s...\n"
msgstr "Käsitellään opastesivuja hakemistossa %s...\n"
-#: src/mandb.c:672 src/mandb.c:698
+#: src/mandb.c:666 src/mandb.c:692
#, c-format
msgid "Removing obsolete cat directory %s...\n"
msgstr "Poistetaan vanhentunut cat-hakemisto %s...\n"
-#: src/mandb.c:848
+#: src/mandb.c:842
#, c-format
msgid "warning: no MANDB_MAP directives in %s, using your manpath"
msgstr ""
-#: src/mandb.c:920
+#: src/mandb.c:914
#, c-format
msgid "%d man subdirectory contained newer manual pages.\n"
msgid_plural "%d man subdirectories contained newer manual pages.\n"
msgstr[0] "%d man-alihakemisto sisälsi uudempia opastesivuja.\n"
msgstr[1] "%d man-alihakemistoa sisälsi uudempia opastesivuja.\n"
-#: src/mandb.c:925
+#: src/mandb.c:919
#, fuzzy, c-format
msgid "%d manual page was added.\n"
msgid_plural "%d manual pages were added.\n"
msgstr[0] " Opastesivu "
msgstr[1] " Opastesivu "
-#: src/mandb.c:929
+#: src/mandb.c:923
#, fuzzy, c-format
msgid "%d stray cat was added.\n"
msgid_plural "%d stray cats were added.\n"
msgstr[0] "%d jotain .. ööö.. kulkukissaa lisättiin.\n"
msgstr[1] "%d jotain .. ööö.. kulkukissaa lisättiin.\n"
-#: src/mandb.c:934
+#: src/mandb.c:928
#, fuzzy, c-format
msgid "%d old database entry was purged.\n"
msgid_plural "%d old database entries were purged.\n"
msgstr[0] "%d vanhaa tietokantamerkintää poistettiin.\n"
msgstr[1] "%d vanhaa tietokantamerkintää poistettiin.\n"
-#: src/mandb.c:952
+#: src/mandb.c:946
#, c-format
msgid "No databases created."
msgstr "Tietokantoja ei luotu."
@@ -818,15 +818,15 @@ msgstr "nykyistä hakemistoa ei voi määrittää"
msgid "warning: %s does not begin with %s"
msgstr "varoitus: %s ei ala merkkijonolla %s"
-#: src/manpath.c:65
+#: src/manpath.c:63
msgid "show relative catpaths"
msgstr ""
-#: src/manpath.c:66
+#: src/manpath.c:64
msgid "show the entire global manpath"
msgstr ""
-#: src/manpath.c:128
+#: src/manpath.c:126
#, c-format
msgid "warning: no global manpaths set in config file %s"
msgstr ""
@@ -858,96 +858,96 @@ msgstr ""
msgid "%s is self referencing"
msgstr "%s viittaa itseensä"
-#: src/whatis.c:123
+#: src/whatis.c:122
msgid "KEYWORD..."
msgstr "AVAINSANA..."
-#: src/whatis.c:124
+#: src/whatis.c:123
msgid "The --regex option is enabled by default."
msgstr ""
-#: src/whatis.c:128
+#: src/whatis.c:127
msgid "print verbose warning messages"
msgstr ""
-#: src/whatis.c:129
+#: src/whatis.c:128
msgid "interpret each keyword as a regex"
msgstr ""
-#: src/whatis.c:130
+#: src/whatis.c:129
msgid "search each keyword for exact match"
msgstr ""
-#: src/whatis.c:131
+#: src/whatis.c:130
msgid "the keyword(s) contain wildcards"
msgstr "avainsana(t) sisältävät jokerimerkkejä"
-#: src/whatis.c:132
+#: src/whatis.c:131
msgid "require all keywords to match"
msgstr ""
-#: src/whatis.c:133
+#: src/whatis.c:132
msgid "do not trim output to terminal width"
msgstr "älä katkaise tulostetta päätteen leveyteen"
-#: src/whatis.c:134
+#: src/whatis.c:133
msgid "search only these sections (colon-separated)"
msgstr ""
-#: src/whatis.c:138
+#: src/whatis.c:137
msgid "define the locale for this search"
msgstr ""
-#: src/whatis.c:235
+#: src/whatis.c:234
#, c-format
msgid "%s what?\n"
msgstr "%s mikä?\n"
-#: src/whatis.c:412 src/whatis.c:430
+#: src/whatis.c:410 src/whatis.c:428
#, c-format
msgid "warning: %s contains a pointer loop"
msgstr "varoitus: %s sisältää osoitinsilmukan"
-#: src/whatis.c:424 src/whatis.c:432
+#: src/whatis.c:422 src/whatis.c:430
msgid "(unknown subject)"
msgstr "(tuntematon aihe)"
-#: src/whatis.c:863
+#: src/whatis.c:861
#, c-format
msgid "%s: nothing appropriate.\n"
msgstr "%s: ei mitään sopivaa.\n"
-#: src/zsoelim.l:171
+#: src/zsoelim.l:178
#, c-format
msgid "%s:%d: .so requests nested too deeply or are recursive"
msgstr ""
-#: src/zsoelim.l:186
+#: src/zsoelim.l:193
#, c-format
msgid "%s:%d: warning: failed .so request"
msgstr ""
-#: src/zsoelim.l:208
+#: src/zsoelim.l:215
#, c-format
msgid "%s:%d: warning: newline in .so request, ignoring"
msgstr ""
-#: src/zsoelim.l:268
+#: src/zsoelim.l:275
#, c-format
msgid "%s:%d: warning: malformed .lf request, ignoring"
msgstr ""
-#: src/zsoelim.l:278
+#: src/zsoelim.l:285
#, c-format
msgid "%s:%d: warning: newline in .lf request, ignoring"
msgstr ""
-#: src/zsoelim.l:318
+#: src/zsoelim.l:325
#, c-format
msgid "%s:%d: unterminated quote in roff request"
msgstr ""
-#: src/zsoelim_main.c:70
+#: src/zsoelim_main.c:69
msgid "compatibility switch (ignored)"
msgstr "yhteensopivuusvalitsin (jätetään huomiotta)"
diff --git a/po/fr.po b/po/fr.po
index bad20600..d560ed14 100644
--- a/po/fr.po
+++ b/po/fr.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: man-db 2.7.6.1\n"
"Report-Msgid-Bugs-To: Colin Watson <cjwatson@debian.org>\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2016-12-23 19:34+0100\n"
"Last-Translator: David Prévot <david@tilapin.org>\n"
"Language-Team: French <traduc@traduc.org>\n"
@@ -67,7 +67,7 @@ msgstr[1] "il n'y a que %d champs dans le contenu"
msgid "bad fetch on multi key %s"
msgstr "mauvais accès sur la clef multiple %s"
-#: libdb/db_lookup.c:443 src/whatis.c:739
+#: libdb/db_lookup.c:443 src/whatis.c:737
#, c-format
msgid "Database %s corrupted; rebuild with mandb --create"
msgstr "La base %s est corrompue, reconstruisez-la avec mandb --create"
@@ -77,28 +77,28 @@ msgstr "La base %s est corrompue, reconstruisez-la avec mandb --create"
msgid "warning: %s has no version identifier\n"
msgstr "attention : %s n'a pas d'identifiant de version\n"
-#: libdb/db_ver.c:56
+#: libdb/db_ver.c:57
#, c-format
msgid "warning: %s is version %s, expecting %s\n"
msgstr "attention : %s a pour version %s au lieu de %s\n"
-#: libdb/db_ver.c:78
+#: libdb/db_ver.c:79
#, c-format
msgid "fatal: unable to insert version identifier into %s"
msgstr "erreur fatale : impossible d'insérer l'identifiant de version dans %s"
-#: src/accessdb.c:61
+#: src/accessdb.c:59
msgid "[MAN DATABASE]"
msgstr "[BASE DE DONNÉES DE MAN]"
-#: src/accessdb.c:62
+#: src/accessdb.c:60
#, c-format
msgid "The man database defaults to %s%s."
msgstr "La base de données par défaut est %s%s."
-#: src/accessdb.c:65 src/catman.c:103 src/globbing_test.c:62
-#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:115
-#: src/manpath.c:67 src/whatis.c:127 src/zsoelim_main.c:69
+#: src/accessdb.c:63 src/catman.c:100 src/globbing_test.c:58
+#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:114
+#: src/manpath.c:65 src/whatis.c:126 src/zsoelim_main.c:68
msgid "emit debugging messages"
msgstr "affichage des messages de débogage"
@@ -107,44 +107,44 @@ msgstr "affichage des messages de débogage"
msgid "can't open %s for reading"
msgstr "impossible d'ouvrir %s en lecture"
-#: src/catman.c:100
+#: src/catman.c:97
msgid "[SECTION...]"
msgstr "[SECTION...]"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "PATH"
msgstr "CHEMIN"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "set search path for manual pages to PATH"
msgstr "configure le chemin de recherche des pages de manuel à CHEMIN"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "FILE"
msgstr "FICHIER"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "use this user configuration file"
msgstr "utilise ce fichier de configuration utilisateur"
-#: src/catman.c:198
+#: src/catman.c:195
#, c-format
msgid "man command failed with exit status %d"
msgstr "la commande man a échoué avec %d comme code de retour"
-#: src/catman.c:237
+#: src/catman.c:235
#, c-format
msgid "cannot read database %s"
msgstr "impossible de lire la base de données %s"
-#: src/catman.c:280
+#: src/catman.c:278
#, c-format
msgid "NULL content for key: %s"
msgstr "contenu vide (NULL) pour la clef : %s"
-#: src/catman.c:295
+#: src/catman.c:294
#, c-format
msgid ""
"\n"
@@ -153,12 +153,12 @@ msgstr ""
"\n"
"Mise à jour des fichiers préformatés pour la section %s de %s\n"
-#: src/catman.c:349
+#: src/catman.c:348
#, c-format
msgid "cannot write within %s"
msgstr "impossible d'écrire dans %s"
-#: src/catman.c:426
+#: src/catman.c:425
#, c-format
msgid "unable to update %s"
msgstr "impossible de mettre %s à jour"
@@ -168,67 +168,67 @@ msgstr "impossible de mettre %s à jour"
msgid "warning: %s/man%s/%s.%s*: competing extensions"
msgstr "attention : %s/man%s/%s.%s* : extensions en conflit"
-#: src/check_mandirs.c:114 src/check_mandirs.c:613
+#: src/check_mandirs.c:126 src/check_mandirs.c:626
#, c-format
msgid "can't update index cache %s"
msgstr "impossible de mettre à jour le cache d'index %s"
-#: src/check_mandirs.c:242
+#: src/check_mandirs.c:254
#, c-format
msgid "warning: %s: bad symlink or ROFF `.so' request"
msgstr "attention : %s : lien symbolique ou directive ROFF « .so » incorrect"
-#: src/check_mandirs.c:298
+#: src/check_mandirs.c:310
#, c-format
msgid "warning: %s: ignoring empty file"
msgstr "attention : %s : fichier vide ignoré"
-#: src/check_mandirs.c:302 src/straycats.c:276
+#: src/check_mandirs.c:314 src/straycats.c:276
#, c-format
msgid "warning: %s: whatis parse for %s(%s) failed"
msgstr "attention : %s : la recherche de whatis sur %s(%s) a échoué"
-#: src/check_mandirs.c:329 src/check_mandirs.c:498 src/mandb.c:883
+#: src/check_mandirs.c:341 src/check_mandirs.c:511 src/mandb.c:877
#: src/straycats.c:84 src/straycats.c:303 src/ult_src.c:81
#, c-format
msgid "can't search directory %s"
msgstr "impossible de chercher dans le répertoire %s"
-#: src/check_mandirs.c:378 src/man.c:1687
+#: src/check_mandirs.c:390 src/man.c:1689
#, c-format
msgid "can't chown %s"
msgstr "impossible de changer le propriétaire de %s"
-#: src/check_mandirs.c:400 src/check_mandirs.c:423
+#: src/check_mandirs.c:412 src/check_mandirs.c:435
#, c-format
msgid "warning: cannot create catdir %s"
msgstr "attention : impossible de créer le répertoire de pages préformatées %s"
-#: src/check_mandirs.c:455 src/man.c:1699 src/mandb.c:233
+#: src/check_mandirs.c:467 src/man.c:1701 src/mandb.c:232
#, c-format
msgid "can't chmod %s"
msgstr "impossible de changer les droits de %s"
-#: src/check_mandirs.c:503
+#: src/check_mandirs.c:516
#, c-format
msgid "can't change to directory %s"
msgstr "impossible d'aller dans le répertoire %s"
-#: src/check_mandirs.c:553
+#: src/check_mandirs.c:566
#, c-format
msgid "can't create index cache %s"
msgstr "impossible de créer le cache d'index %s"
-#: src/check_mandirs.c:578
+#: src/check_mandirs.c:591
#, c-format
msgid "Updating index cache for path `%s/%s'. Wait..."
msgstr "Mise à jour du cache d'index pour le chemin « %s/%s ». Attendez…"
-#: src/check_mandirs.c:640 src/check_mandirs.c:701
+#: src/check_mandirs.c:653 src/check_mandirs.c:714
msgid "done.\n"
msgstr "terminé.\n"
-#: src/check_mandirs.c:963
+#: src/check_mandirs.c:977
#, c-format
msgid "Purging old database entries in %s...\n"
msgstr "Effacement des entrées inutiles de %s en cours…\n"
@@ -243,49 +243,49 @@ msgstr "attention : impossible de stocker l'entrée pour %s(%s)"
msgid "warning: %s: ignoring bogus filename"
msgstr "attention : %s : nom de fichier erroné, ignoré"
-#: src/globbing_test.c:59
+#: src/globbing_test.c:55
msgid "PATH SECTION NAME"
msgstr "CHEMIN SECTION NOM"
-#: src/globbing_test.c:63 src/man.c:292
+#: src/globbing_test.c:59 src/man.c:292
msgid "EXTENSION"
msgstr "EXTENSION"
-#: src/globbing_test.c:63 src/man.c:293
+#: src/globbing_test.c:59 src/man.c:293
msgid "limit search to extension type EXTENSION"
msgstr "limite la recherche aux extensions EXTENSION"
-#: src/globbing_test.c:64 src/man.c:294
+#: src/globbing_test.c:60 src/man.c:294
msgid "look for pages case-insensitively (default)"
msgstr "recherche les pages sans distinguer la casse (par défaut)"
-#: src/globbing_test.c:65 src/man.c:295
+#: src/globbing_test.c:61 src/man.c:295
msgid "look for pages case-sensitively"
msgstr "recherche les pages en distinguant la casse"
-#: src/globbing_test.c:66
+#: src/globbing_test.c:62
msgid "interpret page name as a regex"
msgstr "considère le nom de page comme une expression rationnelle"
-#: src/globbing_test.c:67
+#: src/globbing_test.c:63
msgid "the page name contains wildcards"
msgstr "le nom de page contient des caractères joker"
-#: src/lexgrog.l:691
+#: src/lexgrog.l:701
#, c-format
msgid "warning: whatis for %s exceeds %d byte, truncating."
msgid_plural "warning: whatis for %s exceeds %d bytes, truncating."
msgstr[0] "attention : whatis pour %s dépasse d'un octet, excédent tronqué."
msgstr[1] "attention : whatis pour %s dépasse de %d octets, excédent tronqué."
-#: src/lexgrog.l:844 src/man.c:2268 src/man.c:2350 src/man.c:2448
+#: src/lexgrog.l:854 src/man.c:2270 src/man.c:2354 src/man.c:2452
#: src/manconv_main.c:168 src/straycats.c:218 src/ult_src.c:321
-#: src/ult_src.c:335 src/zsoelim.l:512
+#: src/ult_src.c:335 src/zsoelim.l:519
#, c-format
msgid "can't open %s"
msgstr "impossible d'ouvrir %s"
-#: src/lexgrog_test.c:69 src/zsoelim_main.c:66
+#: src/lexgrog_test.c:69 src/zsoelim_main.c:65
msgid "FILE..."
msgstr "FICHIER..."
@@ -383,7 +383,7 @@ msgstr "affiche le code source converti en ENCODAGE"
msgid "Finding manual pages:"
msgstr "Recherche des pages de manuel :"
-#: src/man.c:287 src/whatis.c:138
+#: src/man.c:287 src/whatis.c:137
msgid "LOCALE"
msgstr "LOCALE"
@@ -391,15 +391,15 @@ msgstr "LOCALE"
msgid "define the locale for this particular man search"
msgstr "définit la locale pour cette recherche de manuel"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "SYSTEM"
msgstr "SYSTÈME"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "use manual pages from other systems"
msgstr "utilise les pages de manuel d'autres systèmes"
-#: src/man.c:290 src/whatis.c:134
+#: src/man.c:290 src/whatis.c:133
msgid "LIST"
msgstr "LISTE"
@@ -516,80 +516,80 @@ msgstr ""
msgid "use groff and force it to produce ditroff"
msgstr "utilise groff en le forçant à produire ditroff"
-#: src/man.c:597 src/man.c:733
+#: src/man.c:599 src/man.c:735
#, c-format
msgid "No manual entry for %s\n"
msgstr "Aucune entrée de manuel pour %s\n"
-#: src/man.c:599
+#: src/man.c:601
#, c-format
msgid "(Alternatively, what manual page do you want from section %s?)\n"
msgstr "(Sinon, quelle page de manuel de la section %s voulez-vous ?)\n"
-#: src/man.c:603
+#: src/man.c:605
msgid "What manual page do you want?\n"
msgstr "Quelle page de manuel voulez-vous ?\n"
-#: src/man.c:730
+#: src/man.c:732
#, c-format
msgid "No manual entry for %s in section %s\n"
msgstr "Aucune entrée de manuel pour %s en section %s\n"
-#: src/man.c:739
+#: src/man.c:741
#, c-format
msgid "See '%s' for help when manual pages are not available.\n"
msgstr ""
"voir « %s » pour obtenir de l'aide quand les pages de manuel ne sont pas "
"disponibles.\n"
-#: src/man.c:1347
+#: src/man.c:1349
#, c-format
msgid "ignoring unknown preprocessor `%c'"
msgstr "le préprocesseur « %c » est inconnu et ignoré"
-#: src/man.c:1710 src/mandb.c:224
+#: src/man.c:1712 src/mandb.c:223
#, c-format
msgid "can't rename %s to %s"
msgstr "impossible de renommer %s en %s"
-#: src/man.c:1727
+#: src/man.c:1729
#, c-format
msgid "can't set times on %s"
msgstr "impossible de changer la date de %s"
-#: src/man.c:1736 src/man.c:1773
+#: src/man.c:1738 src/man.c:1775
#, c-format
msgid "can't unlink %s"
msgstr "impossible de supprimer %s"
-#: src/man.c:1803
+#: src/man.c:1805
#, c-format
msgid "can't create temporary cat for %s"
msgstr "impossible de créer une page « cat » temporaire pour %s"
-#: src/man.c:1913
+#: src/man.c:1915
#, c-format
msgid "can't create temporary directory"
msgstr "impossible de créer le répertoire temporaire"
-#: src/man.c:1924
+#: src/man.c:1926
#, c-format
msgid "can't open temporary file %s"
msgstr "impossible d'ouvrir le fichier temporaire %s"
-#: src/man.c:1954 src/man.c:1983
+#: src/man.c:1956 src/man.c:1985
#, c-format
msgid "can't remove directory %s"
msgstr "impossible de supprimer le répertoire %s"
-#: src/man.c:2112
+#: src/man.c:2114
#, c-format
msgid "--Man-- next: %s [ view (return) | skip (Ctrl-D) | quit (Ctrl-C) ]\n"
msgstr ""
"--Man-- prochain : %s [ voir (entrée) | passer (Ctrl-D) | quitter (Ctrl-"
"C) ]\n"
-#: src/man.c:2393
+#: src/man.c:2397
#, c-format
msgid ""
"\n"
@@ -598,28 +598,28 @@ msgstr ""
"\n"
"impossible d'écrire vers %s en mode catman"
-#: src/man.c:2474
+#: src/man.c:2477
#, c-format
msgid "Can't convert %s to cat name"
msgstr "Impossible de convertir %s en nom de page préformatée"
-#: src/man.c:3203
+#: src/man.c:3206
#, c-format
msgid "%s: relying on whatis refs is deprecated\n"
msgstr ""
"%s : il est conseillé de ne plus se baser sur les références de whatis\n"
-#: src/man.c:3346 src/man.c:4196
+#: src/man.c:3349 src/man.c:4200
#, c-format
msgid "mandb command failed with exit status %d"
msgstr "la commande mandb a échoué avec le code de retour %d"
-#: src/man.c:3548
+#: src/man.c:3551
#, c-format
msgid "internal error: candidate type %d out of range"
msgstr "erreur interne : le type candidat %d est hors de portée"
-#: src/man.c:4137
+#: src/man.c:4141
msgid " Manual page "
msgstr " Page de manuel "
@@ -652,7 +652,7 @@ msgstr "CODE"
msgid "encoding for output"
msgstr "encodage de l'affichage"
-#: src/manconv_main.c:97 src/manpath.c:68
+#: src/manconv_main.c:97 src/manpath.c:66
msgid "produce fewer warnings"
msgstr "crée moins d'avertissements"
@@ -666,103 +666,103 @@ msgstr "l'encodage d'entrée doit être précisé"
msgid "must specify an output encoding"
msgstr "l'encodage de sortie doit être précisé"
-#: src/mandb.c:112
+#: src/mandb.c:111
msgid "[MANPATH]"
msgstr "[MANPATH]"
-#: src/mandb.c:116
+#: src/mandb.c:115
msgid "work quietly, except for 'bogus' warning"
msgstr "n'affiche rien à part les avertissement de dysfonctionnement"
-#: src/mandb.c:117
+#: src/mandb.c:116
msgid "don't look for or add stray cats to the dbs"
msgstr "ne cherche ni n'ajoute de fichiers « cat » parasites dans la base"
-#: src/mandb.c:118
+#: src/mandb.c:117
msgid "don't purge obsolete entries from the dbs"
msgstr "ne supprime pas les entrées obsolètes de la base"
-#: src/mandb.c:119
+#: src/mandb.c:118
msgid "produce user databases only"
msgstr "produit seulement les bases utilisateur"
-#: src/mandb.c:120
+#: src/mandb.c:119
msgid "create dbs from scratch, rather than updating"
msgstr "crée les bases du début plutôt qu'une mise à jour"
-#: src/mandb.c:121
+#: src/mandb.c:120
msgid "check manual pages for correctness"
msgstr "vérifie la validité des pages de manuel"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "FILENAME"
msgstr "NOM_DE_FICHIER"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "update just the entry for this filename"
msgstr "met seulement à jour l'entrée correspondant à ce nom de fichier"
-#: src/mandb.c:217
+#: src/mandb.c:216
#, c-format
msgid "can't remove %s"
msgstr "impossible de supprimer %s"
-#: src/mandb.c:281
+#: src/mandb.c:280
#, c-format
msgid "can't write to %s"
msgstr "impossible d'écrire dans %s"
-#: src/mandb.c:286
+#: src/mandb.c:285
#, c-format
msgid "can't read from %s"
msgstr "impossible de lire à partir de %s"
-#: src/mandb.c:455
+#: src/mandb.c:457
#, c-format
msgid "Processing manual pages under %s...\n"
msgstr "Traitement des pages du manuel sous %s…\n"
-#: src/mandb.c:672 src/mandb.c:698
+#: src/mandb.c:666 src/mandb.c:692
#, c-format
msgid "Removing obsolete cat directory %s...\n"
msgstr "Suppression du répertoire « cat » obsolète %s…\n"
-#: src/mandb.c:848
+#: src/mandb.c:842
#, c-format
msgid "warning: no MANDB_MAP directives in %s, using your manpath"
msgstr ""
"attention : aucune directive MANDB_MAP dans %s, votre fichier manpath est "
"utilisé"
-#: src/mandb.c:920
+#: src/mandb.c:914
#, c-format
msgid "%d man subdirectory contained newer manual pages.\n"
msgid_plural "%d man subdirectories contained newer manual pages.\n"
msgstr[0] "Un sous-répertoire de manuel contient de nouvelles pages.\n"
msgstr[1] "%d sous-répertoires de manuel contiennent de nouvelles pages.\n"
-#: src/mandb.c:925
+#: src/mandb.c:919
#, c-format
msgid "%d manual page was added.\n"
msgid_plural "%d manual pages were added.\n"
msgstr[0] "Une page de manuel a été ajoutée.\n"
msgstr[1] "%d pages de manuel ont été ajoutées.\n"
-#: src/mandb.c:929
+#: src/mandb.c:923
#, c-format
msgid "%d stray cat was added.\n"
msgid_plural "%d stray cats were added.\n"
msgstr[0] "Une page sans source a été ajoutée.\n"
msgstr[1] "%d pages sans source ont été ajoutées.\n"
-#: src/mandb.c:934
+#: src/mandb.c:928
#, c-format
msgid "%d old database entry was purged.\n"
msgid_plural "%d old database entries were purged.\n"
msgstr[0] "Une entrée inutile de la base a été supprimée.\n"
msgstr[1] "%d entrées inutiles de la base ont été supprimées.\n"
-#: src/mandb.c:952
+#: src/mandb.c:946
#, c-format
msgid "No databases created."
msgstr "Aucune base de données créée."
@@ -839,15 +839,15 @@ msgstr "impossible de déterminer quel est le répertoire courant"
msgid "warning: %s does not begin with %s"
msgstr "attention : %s ne commence pas par %s"
-#: src/manpath.c:65
+#: src/manpath.c:63
msgid "show relative catpaths"
msgstr "affiche les chemins d'accès relatifs aux pages «\\ cat\\ »"
-#: src/manpath.c:66
+#: src/manpath.c:64
msgid "show the entire global manpath"
msgstr "affiche les chemins complets de pages de manuel"
-#: src/manpath.c:128
+#: src/manpath.c:126
#, c-format
msgid "warning: no global manpaths set in config file %s"
msgstr ""
@@ -879,96 +879,96 @@ msgstr "attention : impossible de mettre à jour le cache d'index %s"
msgid "%s is self referencing"
msgstr "%s s'auto-référence"
-#: src/whatis.c:123
+#: src/whatis.c:122
msgid "KEYWORD..."
msgstr "MOT-CLEF..."
-#: src/whatis.c:124
+#: src/whatis.c:123
msgid "The --regex option is enabled by default."
msgstr "L'option --regex est activée par défaut. "
-#: src/whatis.c:128
+#: src/whatis.c:127
msgid "print verbose warning messages"
msgstr "affiche des messages d'avertissement étendus"
-#: src/whatis.c:129
+#: src/whatis.c:128
msgid "interpret each keyword as a regex"
msgstr "interprète chaque mot-clef comme une expression régulière"
-#: src/whatis.c:130
+#: src/whatis.c:129
msgid "search each keyword for exact match"
msgstr "recherche une correspondance exacte de chaque mot-clef"
-#: src/whatis.c:131
+#: src/whatis.c:130
msgid "the keyword(s) contain wildcards"
msgstr "les mots-clefs contiennent des jokers"
-#: src/whatis.c:132
+#: src/whatis.c:131
msgid "require all keywords to match"
msgstr "tous les mots-clefs doivent correspondre"
-#: src/whatis.c:133
+#: src/whatis.c:132
msgid "do not trim output to terminal width"
msgstr "ne réduit pas l'affichage à la largeur du terminal"
-#: src/whatis.c:134
+#: src/whatis.c:133
msgid "search only these sections (colon-separated)"
msgstr "recherche limitée à ces sections (séparées par des deux-points)"
-#: src/whatis.c:138
+#: src/whatis.c:137
msgid "define the locale for this search"
msgstr "définit la locale pour cette recherche"
-#: src/whatis.c:235
+#: src/whatis.c:234
#, c-format
msgid "%s what?\n"
msgstr "%s comment ?\n"
-#: src/whatis.c:412 src/whatis.c:430
+#: src/whatis.c:410 src/whatis.c:428
#, c-format
msgid "warning: %s contains a pointer loop"
msgstr "attention : %s contient une référence circulaire"
-#: src/whatis.c:424 src/whatis.c:432
+#: src/whatis.c:422 src/whatis.c:430
msgid "(unknown subject)"
msgstr "(sujet inconnu)"
-#: src/whatis.c:863
+#: src/whatis.c:861
#, c-format
msgid "%s: nothing appropriate.\n"
msgstr "%s : rien d'adéquat\n"
-#: src/zsoelim.l:171
+#: src/zsoelim.l:178
#, c-format
msgid "%s:%d: .so requests nested too deeply or are recursive"
msgstr "%s:%d : requêtes .so imbriquées trop profondément ou récursivement"
-#: src/zsoelim.l:186
+#: src/zsoelim.l:193
#, c-format
msgid "%s:%d: warning: failed .so request"
msgstr "%s:%d: attention : requête .so échouée"
-#: src/zsoelim.l:208
+#: src/zsoelim.l:215
#, c-format
msgid "%s:%d: warning: newline in .so request, ignoring"
msgstr "%s:%d: attention : retour à la ligne dans une requête .so, ignorée"
-#: src/zsoelim.l:268
+#: src/zsoelim.l:275
#, c-format
msgid "%s:%d: warning: malformed .lf request, ignoring"
msgstr "%s:%d: attention : anomalie dans la requête .lf , ignorée"
-#: src/zsoelim.l:278
+#: src/zsoelim.l:285
#, c-format
msgid "%s:%d: warning: newline in .lf request, ignoring"
msgstr "%s:%d: attention : retour à la ligne dans une requête .lf, ignorée"
-#: src/zsoelim.l:318
+#: src/zsoelim.l:325
#, c-format
msgid "%s:%d: unterminated quote in roff request"
msgstr "%s:%d: guillemet non fermé dans une requête roff"
-#: src/zsoelim_main.c:70
+#: src/zsoelim_main.c:69
msgid "compatibility switch (ignored)"
msgstr "changement de compatibilité (ignoré)"
diff --git a/po/id.po b/po/id.po
index f8009f25..9570bf34 100644
--- a/po/id.po
+++ b/po/id.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: man-db 2.6.6-pre2\n"
"Report-Msgid-Bugs-To: Colin Watson <cjwatson@debian.org>\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2014-08-10 19:00+0700\n"
"Last-Translator: Arif E. Nugroho <arif_endro@yahoo.com>\n"
"Language-Team: Indonesian <translation-team-id@lists.sourceforge.net>\n"
@@ -64,7 +64,7 @@ msgstr[1] "hanya bagian %d ada dalam isi"
msgid "bad fetch on multi key %s"
msgstr "pengambilan buruk di multi kunci %s"
-#: libdb/db_lookup.c:443 src/whatis.c:739
+#: libdb/db_lookup.c:443 src/whatis.c:737
#, c-format
msgid "Database %s corrupted; rebuild with mandb --create"
msgstr "Basis data %s terkorupsi; membuat kembali dengan mandb --create"
@@ -74,28 +74,28 @@ msgstr "Basis data %s terkorupsi; membuat kembali dengan mandb --create"
msgid "warning: %s has no version identifier\n"
msgstr "peringatan: %s tidak memiliki pengidentifikasi versi\n"
-#: libdb/db_ver.c:56
+#: libdb/db_ver.c:57
#, c-format
msgid "warning: %s is version %s, expecting %s\n"
msgstr "peringatan: %s memiliki versi %s, diduga %s\n"
-#: libdb/db_ver.c:78
+#: libdb/db_ver.c:79
#, c-format
msgid "fatal: unable to insert version identifier into %s"
msgstr "fatal: tidak dapat memasukan pengidentifikasi versi kedalam %s"
-#: src/accessdb.c:61
+#: src/accessdb.c:59
msgid "[MAN DATABASE]"
msgstr "[BASIS DATA MAN]"
-#: src/accessdb.c:62
+#: src/accessdb.c:60
#, c-format
msgid "The man database defaults to %s%s."
msgstr "Basis data man baku ke %s%s."
-#: src/accessdb.c:65 src/catman.c:103 src/globbing_test.c:62
-#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:115
-#: src/manpath.c:67 src/whatis.c:127 src/zsoelim_main.c:69
+#: src/accessdb.c:63 src/catman.c:100 src/globbing_test.c:58
+#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:114
+#: src/manpath.c:65 src/whatis.c:126 src/zsoelim_main.c:68
msgid "emit debugging messages"
msgstr "keluarkan pesan penelusuran"
@@ -104,44 +104,44 @@ msgstr "keluarkan pesan penelusuran"
msgid "can't open %s for reading"
msgstr "tidak dapat membuka %s untuk pembacaan"
-#: src/catman.c:100
+#: src/catman.c:97
msgid "[SECTION...]"
msgstr "[BAGIAN...]"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "PATH"
msgstr "JALUR"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "set search path for manual pages to PATH"
msgstr "tentukan jalur pencarian untuk halaman buku panduan ke JALUR"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "FILE"
msgstr "BERKAS"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "use this user configuration file"
msgstr "gunakan berkas konfigurasi pengguna ini"
-#: src/catman.c:198
+#: src/catman.c:195
#, c-format
msgid "man command failed with exit status %d"
msgstr "perintah man gagal dengan status keluar %d"
-#: src/catman.c:237
+#: src/catman.c:235
#, c-format
msgid "cannot read database %s"
msgstr "tidak dapat membaca basis data %s"
-#: src/catman.c:280
+#: src/catman.c:278
#, c-format
msgid "NULL content for key: %s"
msgstr "isi KOSONG untuk kunci: %s"
-#: src/catman.c:295
+#: src/catman.c:294
#, c-format
msgid ""
"\n"
@@ -150,12 +150,12 @@ msgstr ""
"\n"
"Memperbarui berkas cat untuk bagian %s dari struktur man %s\n"
-#: src/catman.c:349
+#: src/catman.c:348
#, c-format
msgid "cannot write within %s"
msgstr "tidak dapat menulis didalam %s"
-#: src/catman.c:426
+#: src/catman.c:425
#, c-format
msgid "unable to update %s"
msgstr "tidak dapat memperbarui %s"
@@ -165,67 +165,67 @@ msgstr "tidak dapat memperbarui %s"
msgid "warning: %s/man%s/%s.%s*: competing extensions"
msgstr "peringatan: %s/man%s/%s.%s*: ekstensi berkompetisi"
-#: src/check_mandirs.c:114 src/check_mandirs.c:613
+#: src/check_mandirs.c:126 src/check_mandirs.c:626
#, c-format
msgid "can't update index cache %s"
msgstr "tidak dapat mengupdate persediaan indeks %s"
-#: src/check_mandirs.c:242
+#: src/check_mandirs.c:254
#, c-format
msgid "warning: %s: bad symlink or ROFF `.so' request"
msgstr "peringatan: %s: symlink buruk atau ROFF `.so' diminta"
-#: src/check_mandirs.c:298
+#: src/check_mandirs.c:310
#, c-format
msgid "warning: %s: ignoring empty file"
msgstr "peringatan: %s: mengabaikan berkas kosong"
-#: src/check_mandirs.c:302 src/straycats.c:276
+#: src/check_mandirs.c:314 src/straycats.c:276
#, c-format
msgid "warning: %s: whatis parse for %s(%s) failed"
msgstr "peringatan: %s: whatis parse untuk %s(%s) gagal"
-#: src/check_mandirs.c:329 src/check_mandirs.c:498 src/mandb.c:883
+#: src/check_mandirs.c:341 src/check_mandirs.c:511 src/mandb.c:877
#: src/straycats.c:84 src/straycats.c:303 src/ult_src.c:81
#, c-format
msgid "can't search directory %s"
msgstr "tidak dapat mencari direktori %s"
-#: src/check_mandirs.c:378 src/man.c:1687
+#: src/check_mandirs.c:390 src/man.c:1689
#, c-format
msgid "can't chown %s"
msgstr "tidak dapat chown %s"
-#: src/check_mandirs.c:400 src/check_mandirs.c:423
+#: src/check_mandirs.c:412 src/check_mandirs.c:435
#, c-format
msgid "warning: cannot create catdir %s"
msgstr "peringatan: tidak dapat membuat catdir %s"
-#: src/check_mandirs.c:455 src/man.c:1699 src/mandb.c:233
+#: src/check_mandirs.c:467 src/man.c:1701 src/mandb.c:232
#, c-format
msgid "can't chmod %s"
msgstr "tidak dapat chmod %s"
-#: src/check_mandirs.c:503
+#: src/check_mandirs.c:516
#, c-format
msgid "can't change to directory %s"
msgstr "tidak dapat mengubah direktori %s"
-#: src/check_mandirs.c:553
+#: src/check_mandirs.c:566
#, c-format
msgid "can't create index cache %s"
msgstr "tidak dapat membuat persediaan indeks %s"
-#: src/check_mandirs.c:578
+#: src/check_mandirs.c:591
#, c-format
msgid "Updating index cache for path `%s/%s'. Wait..."
msgstr "Memperbarui persediaan indeks untuk jalur `%s/%s'. Mohon tunggu..."
-#: src/check_mandirs.c:640 src/check_mandirs.c:701
+#: src/check_mandirs.c:653 src/check_mandirs.c:714
msgid "done.\n"
msgstr "selesai.\n"
-#: src/check_mandirs.c:963
+#: src/check_mandirs.c:977
#, c-format
msgid "Purging old database entries in %s...\n"
msgstr "Menghapus masukan basis data lama dalam %s...\n"
@@ -240,49 +240,49 @@ msgstr "peringatan: gagal untuk menyimpan masukan untuk %s(%s)"
msgid "warning: %s: ignoring bogus filename"
msgstr "peringatan: %s: mengabaikan nama berkas palsu"
-#: src/globbing_test.c:59
+#: src/globbing_test.c:55
msgid "PATH SECTION NAME"
msgstr "NAMA JALUR BAGIAN"
-#: src/globbing_test.c:63 src/man.c:292
+#: src/globbing_test.c:59 src/man.c:292
msgid "EXTENSION"
msgstr "EKSTENSI"
-#: src/globbing_test.c:63 src/man.c:293
+#: src/globbing_test.c:59 src/man.c:293
msgid "limit search to extension type EXTENSION"
msgstr "batasi pencarian ke tipe ekstensi EKSTENSI"
-#: src/globbing_test.c:64 src/man.c:294
+#: src/globbing_test.c:60 src/man.c:294
msgid "look for pages case-insensitively (default)"
msgstr "cari untuk halaman dengan tidak membedakan besar huruf (baku)"
-#: src/globbing_test.c:65 src/man.c:295
+#: src/globbing_test.c:61 src/man.c:295
msgid "look for pages case-sensitively"
msgstr "cari untuk halaman dengan membedakan besar huruf"
-#: src/globbing_test.c:66
+#: src/globbing_test.c:62
msgid "interpret page name as a regex"
msgstr "intepretasikan nama halaman sebagai sebuah regex"
-#: src/globbing_test.c:67
+#: src/globbing_test.c:63
msgid "the page name contains wildcards"
msgstr "nama halaman berisi huruf bebas"
-#: src/lexgrog.l:691
+#: src/lexgrog.l:701
#, c-format
msgid "warning: whatis for %s exceeds %d byte, truncating."
msgid_plural "warning: whatis for %s exceeds %d bytes, truncating."
msgstr[0] "peringatan: whatis untuk %s melebihi %d bytes, dipotong."
msgstr[1] "peringatan: whatis untuk %s melebihi %d bytes, dipotong."
-#: src/lexgrog.l:844 src/man.c:2268 src/man.c:2350 src/man.c:2448
+#: src/lexgrog.l:854 src/man.c:2270 src/man.c:2354 src/man.c:2452
#: src/manconv_main.c:168 src/straycats.c:218 src/ult_src.c:321
-#: src/ult_src.c:335 src/zsoelim.l:512
+#: src/ult_src.c:335 src/zsoelim.l:519
#, c-format
msgid "can't open %s"
msgstr "tidak dapat membuka %s"
-#: src/lexgrog_test.c:69 src/zsoelim_main.c:66
+#: src/lexgrog_test.c:69 src/zsoelim_main.c:65
msgid "FILE..."
msgstr "BERKAS..."
@@ -381,7 +381,7 @@ msgstr "keluaran sumber halaman dikodekan dalam PENGKODEAN"
msgid "Finding manual pages:"
msgstr "Mencari halaman manual:"
-#: src/man.c:287 src/whatis.c:138
+#: src/man.c:287 src/whatis.c:137
msgid "LOCALE"
msgstr "LOKAL"
@@ -389,15 +389,15 @@ msgstr "LOKAL"
msgid "define the locale for this particular man search"
msgstr "definisikan lokal untuk pencarian man ini"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "SYSTEM"
msgstr "SISTEM"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "use manual pages from other systems"
msgstr "gunakan halaman manual dari sistem lain"
-#: src/man.c:290 src/whatis.c:134
+#: src/man.c:290 src/whatis.c:133
msgid "LIST"
msgstr "DAFTAR"
@@ -511,80 +511,80 @@ msgstr ""
msgid "use groff and force it to produce ditroff"
msgstr "gunakan groff dan paksa itu untuk menghasilkan ditroff"
-#: src/man.c:597 src/man.c:733
+#: src/man.c:599 src/man.c:735
#, c-format
msgid "No manual entry for %s\n"
msgstr "Tidak ada masukan buku panduan untuk %s\n"
-#: src/man.c:599
+#: src/man.c:601
#, c-format
msgid "(Alternatively, what manual page do you want from section %s?)\n"
msgstr ""
"(Secara alternatif, halaman buku panduan mana yang anda inginkan dari bagian "
"%s?)\n"
-#: src/man.c:603
+#: src/man.c:605
msgid "What manual page do you want?\n"
msgstr "Halaman buku panduan mana yang anda inginkan?\n"
-#: src/man.c:730
+#: src/man.c:732
#, c-format
msgid "No manual entry for %s in section %s\n"
msgstr "Tidak ada masukan buku panduan untuk %s dalam bagian%s\n"
-#: src/man.c:739
+#: src/man.c:741
#, c-format
msgid "See '%s' for help when manual pages are not available.\n"
msgstr "Lihat '%s' untuk bantuan ketika halaman manual tidak tersedia.\n"
-#: src/man.c:1347
+#: src/man.c:1349
#, c-format
msgid "ignoring unknown preprocessor `%c'"
msgstr "mengabaikan preprosesor tidak dikenal `%c'"
-#: src/man.c:1710 src/mandb.c:224
+#: src/man.c:1712 src/mandb.c:223
#, c-format
msgid "can't rename %s to %s"
msgstr "tidak dapat mengubah nama %s ke %s"
-#: src/man.c:1727
+#: src/man.c:1729
#, c-format
msgid "can't set times on %s"
msgstr "tidak dapat menset waktu di %s"
-#: src/man.c:1736 src/man.c:1773
+#: src/man.c:1738 src/man.c:1775
#, c-format
msgid "can't unlink %s"
msgstr "tidak dapat unlink %s"
-#: src/man.c:1803
+#: src/man.c:1805
#, c-format
msgid "can't create temporary cat for %s"
msgstr "tidak dapat membuat cat sementara untuk %s"
-#: src/man.c:1913
+#: src/man.c:1915
#, c-format
msgid "can't create temporary directory"
msgstr "tidak dapat membuat direktori sementara"
-#: src/man.c:1924
+#: src/man.c:1926
#, c-format
msgid "can't open temporary file %s"
msgstr "tidak dapat membuka berkas sementara %s"
-#: src/man.c:1954 src/man.c:1983
+#: src/man.c:1956 src/man.c:1985
#, c-format
msgid "can't remove directory %s"
msgstr "tidak dapat menghapus direktori %s"
-#: src/man.c:2112
+#: src/man.c:2114
#, c-format
msgid "--Man-- next: %s [ view (return) | skip (Ctrl-D) | quit (Ctrl-C) ]\n"
msgstr ""
"--Man-- selanjutnya: %s [ lihat (return) | lewat (Ctrl-D) | berhenti (Ctrl-"
"C) ]\n"
-#: src/man.c:2393
+#: src/man.c:2397
#, c-format
msgid ""
"\n"
@@ -593,27 +593,27 @@ msgstr ""
"\n"
"tidak dapat menulis ke %s dalam mode catman"
-#: src/man.c:2474
+#: src/man.c:2477
#, c-format
msgid "Can't convert %s to cat name"
msgstr "Tidak dapat mengubah %s ke nama cat"
-#: src/man.c:3203
+#: src/man.c:3206
#, c-format
msgid "%s: relying on whatis refs is deprecated\n"
msgstr "%s: bergantung ke referensi whatis sudah ditinggalkan\n"
-#: src/man.c:3346 src/man.c:4196
+#: src/man.c:3349 src/man.c:4200
#, c-format
msgid "mandb command failed with exit status %d"
msgstr "perintah mandb gagal dengan status keluar %d"
-#: src/man.c:3548
+#: src/man.c:3551
#, c-format
msgid "internal error: candidate type %d out of range"
msgstr "internal error: tipe kandidat %d diluar dari jangkauan"
-#: src/man.c:4137
+#: src/man.c:4141
msgid " Manual page "
msgstr " Halaman buku panduan "
@@ -646,7 +646,7 @@ msgstr "KODE"
msgid "encoding for output"
msgstr "pengkodean untuk keluaran"
-#: src/manconv_main.c:97 src/manpath.c:68
+#: src/manconv_main.c:97 src/manpath.c:66
msgid "produce fewer warnings"
msgstr "menghasilkan peringatan lebih sedikit"
@@ -660,74 +660,74 @@ msgstr "harus menspesifikasikan sebuah pengkodean masukan"
msgid "must specify an output encoding"
msgstr "harus menspesifikasikan sebuah pengkodean keluaran"
-#: src/mandb.c:112
+#: src/mandb.c:111
msgid "[MANPATH]"
msgstr "[JALUR MAN]"
-#: src/mandb.c:116
+#: src/mandb.c:115
msgid "work quietly, except for 'bogus' warning"
msgstr "bekerja secara halus, kecuali untuk peringatan 'palsu'"
-#: src/mandb.c:117
+#: src/mandb.c:116
msgid "don't look for or add stray cats to the dbs"
msgstr "jangan mencari atau menambahkan cats menyimpang ke basis data"
-#: src/mandb.c:118
+#: src/mandb.c:117
msgid "don't purge obsolete entries from the dbs"
msgstr "jangan menghapus masukan yang sudah ditinggalkan dari basis data"
-#: src/mandb.c:119
+#: src/mandb.c:118
msgid "produce user databases only"
msgstr "hanya menghasilkan basis data pengguna"
-#: src/mandb.c:120
+#: src/mandb.c:119
msgid "create dbs from scratch, rather than updating"
msgstr "membuat basis data dari serpihan, daripada memperbaruinya"
-#: src/mandb.c:121
+#: src/mandb.c:120
msgid "check manual pages for correctness"
msgstr "memeriksa halaman buku panduan untuk kebenarannya"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "FILENAME"
msgstr "NAMA BERKAS"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "update just the entry for this filename"
msgstr "perbarui hanya masukan untuk nama berkas ini"
-#: src/mandb.c:217
+#: src/mandb.c:216
#, c-format
msgid "can't remove %s"
msgstr "tidak dapat menghapus %s"
-#: src/mandb.c:281
+#: src/mandb.c:280
#, c-format
msgid "can't write to %s"
msgstr "tidak dapat menulis ke %s"
-#: src/mandb.c:286
+#: src/mandb.c:285
#, c-format
msgid "can't read from %s"
msgstr "tidak dapat membaca dari %s"
-#: src/mandb.c:455
+#: src/mandb.c:457
#, c-format
msgid "Processing manual pages under %s...\n"
msgstr "Memproses halaman buku panduan dibawah %s...\n"
-#: src/mandb.c:672 src/mandb.c:698
+#: src/mandb.c:666 src/mandb.c:692
#, c-format
msgid "Removing obsolete cat directory %s...\n"
msgstr "Memeriksa untuk cats menyimpang dibawah %s...\n"
-#: src/mandb.c:848
+#: src/mandb.c:842
#, c-format
msgid "warning: no MANDB_MAP directives in %s, using your manpath"
msgstr ""
"peringatan: tidak ada direktif MANDB_MAP dalam %s, menggunakan jalur man anda"
-#: src/mandb.c:920
+#: src/mandb.c:914
#, c-format
msgid "%d man subdirectory contained newer manual pages.\n"
msgid_plural "%d man subdirectories contained newer manual pages.\n"
@@ -738,28 +738,28 @@ msgstr[1] ""
"%d man subdirektori berisi halaman buku panduan lebih baru. halaman buku "
"panduan telah ditambahkan.\n"
-#: src/mandb.c:925
+#: src/mandb.c:919
#, c-format
msgid "%d manual page was added.\n"
msgid_plural "%d manual pages were added.\n"
msgstr[0] "%d Halaman buku panduan \n"
msgstr[1] "%d Halaman buku panduan \n"
-#: src/mandb.c:929
+#: src/mandb.c:923
#, c-format
msgid "%d stray cat was added.\n"
msgid_plural "%d stray cats were added.\n"
msgstr[0] "%d cats menyimpang telah ditambahkan.\n"
msgstr[1] "%d cats menyimpang telah ditambahkan.\n"
-#: src/mandb.c:934
+#: src/mandb.c:928
#, c-format
msgid "%d old database entry was purged.\n"
msgid_plural "%d old database entries were purged.\n"
msgstr[0] "%d masukan basis data lama telah dihapus.\n"
msgstr[1] "%d masukan basis data lama telah dihapus.\n"
-#: src/mandb.c:952
+#: src/mandb.c:946
#, c-format
msgid "No databases created."
msgstr "Tidak ada basis data yang dibuat."
@@ -834,15 +834,15 @@ msgstr "tidak dapat menentukan direktori sekarang"
msgid "warning: %s does not begin with %s"
msgstr "peringatan: %s tidak dimulai dengan %s"
-#: src/manpath.c:65
+#: src/manpath.c:63
msgid "show relative catpaths"
msgstr "tampilkan relative catpaths"
-#: src/manpath.c:66
+#: src/manpath.c:64
msgid "show the entire global manpath"
msgstr "tampilkan seluruh global manpath"
-#: src/manpath.c:128
+#: src/manpath.c:126
#, c-format
msgid "warning: no global manpaths set in config file %s"
msgstr "peringatan: tidak ada global manpath diset dalam berkas konfigurasi %s"
@@ -872,96 +872,96 @@ msgstr "peringatan: tidak dapat memperbarui persediaan indeks %s"
msgid "%s is self referencing"
msgstr "%s adalah mereferensikan dirinya sendiri"
-#: src/whatis.c:123
+#: src/whatis.c:122
msgid "KEYWORD..."
msgstr "KATA KUNCI..."
-#: src/whatis.c:124
+#: src/whatis.c:123
msgid "The --regex option is enabled by default."
msgstr "Pilihan --regex aktif secara baku."
-#: src/whatis.c:128
+#: src/whatis.c:127
msgid "print verbose warning messages"
msgstr "tampikan pesan peringatan bertele-tele"
-#: src/whatis.c:129
+#: src/whatis.c:128
msgid "interpret each keyword as a regex"
msgstr "intepretasikan setiap kata kunci sebagai sebuah regex"
-#: src/whatis.c:130
+#: src/whatis.c:129
msgid "search each keyword for exact match"
msgstr "cari setiap kata kunci untuk pencocokan yang tepat"
-#: src/whatis.c:131
+#: src/whatis.c:130
msgid "the keyword(s) contain wildcards"
msgstr "kata kunci berisi huruf bebas"
-#: src/whatis.c:132
+#: src/whatis.c:131
msgid "require all keywords to match"
msgstr "membutuhkan semua kata kunci untuk mencocokan"
-#: src/whatis.c:133
+#: src/whatis.c:132
msgid "do not trim output to terminal width"
msgstr "jangan trim keluaran ke lebar terminal"
-#: src/whatis.c:134
+#: src/whatis.c:133
msgid "search only these sections (colon-separated)"
msgstr "hanya cari di bagian ini"
-#: src/whatis.c:138
+#: src/whatis.c:137
msgid "define the locale for this search"
msgstr "definisikan lokal untuk pencarian ini"
-#: src/whatis.c:235
+#: src/whatis.c:234
#, c-format
msgid "%s what?\n"
msgstr "%s apa?\n"
-#: src/whatis.c:412 src/whatis.c:430
+#: src/whatis.c:410 src/whatis.c:428
#, c-format
msgid "warning: %s contains a pointer loop"
msgstr "peringatan: %s berisi sebuah penunjuk loop"
-#: src/whatis.c:424 src/whatis.c:432
+#: src/whatis.c:422 src/whatis.c:430
msgid "(unknown subject)"
msgstr "(subjek tidak diketahui)"
-#: src/whatis.c:863
+#: src/whatis.c:861
#, c-format
msgid "%s: nothing appropriate.\n"
msgstr "%s: tidak ada yang sesuai.\n"
-#: src/zsoelim.l:171
+#: src/zsoelim.l:178
#, c-format
msgid "%s:%d: .so requests nested too deeply or are recursive"
msgstr "%s:%d: permintaan .so nested terlalu dalam atau rekursif"
-#: src/zsoelim.l:186
+#: src/zsoelim.l:193
#, c-format
msgid "%s:%d: warning: failed .so request"
msgstr "%s:%d: peringatan: permintaan .so gagal"
-#: src/zsoelim.l:208
+#: src/zsoelim.l:215
#, c-format
msgid "%s:%d: warning: newline in .so request, ignoring"
msgstr "%s:%d: peringatan: baris baru dalam permintaan .so, diabaikan"
-#: src/zsoelim.l:268
+#: src/zsoelim.l:275
#, c-format
msgid "%s:%d: warning: malformed .lf request, ignoring"
msgstr "%s:%d: peringatan: salah bentuk permintaan .lf, diabaikan"
-#: src/zsoelim.l:278
+#: src/zsoelim.l:285
#, c-format
msgid "%s:%d: warning: newline in .lf request, ignoring"
msgstr "%s:%d: peringatan: baris baru dalam permintaan .lf, diabaikan"
-#: src/zsoelim.l:318
+#: src/zsoelim.l:325
#, c-format
msgid "%s:%d: unterminated quote in roff request"
msgstr "%s:%d: quote tidak terselesaikan dalam permintaan roff"
-#: src/zsoelim_main.c:70
+#: src/zsoelim_main.c:69
msgid "compatibility switch (ignored)"
msgstr "pilihan untuk kompabilitas saja (diabaikan)"
diff --git a/po/it.po b/po/it.po
index 0ff9b689..9ade8d54 100644
--- a/po/it.po
+++ b/po/it.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: man-db 2.4.3\n"
"Report-Msgid-Bugs-To: Colin Watson <cjwatson@debian.org>\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2005-12-10 17:30+0100\n"
"Last-Translator: Giuseppe Sacco <eppesuig@debian.org>\n"
"Language-Team: Italian <tp@linux.it>\n"
@@ -63,7 +63,7 @@ msgstr[1] "trovati solo %d campi"
msgid "bad fetch on multi key %s"
msgstr "fetch errato sulla chiave multipla %s"
-#: libdb/db_lookup.c:443 src/whatis.c:739
+#: libdb/db_lookup.c:443 src/whatis.c:737
#, c-format
msgid "Database %s corrupted; rebuild with mandb --create"
msgstr "Il database %s corrotto; lo si ricrei con mandb --create"
@@ -73,28 +73,28 @@ msgstr "Il database %s corrotto; lo si ricrei con mandb --create"
msgid "warning: %s has no version identifier\n"
msgstr "attenzione: %s non ha l'identificatore di versione\n"
-#: libdb/db_ver.c:56
+#: libdb/db_ver.c:57
#, c-format
msgid "warning: %s is version %s, expecting %s\n"
msgstr "attenzione: %s ha versione %s, invece dell'attesa %s\n"
-#: libdb/db_ver.c:78
+#: libdb/db_ver.c:79
#, c-format
msgid "fatal: unable to insert version identifier into %s"
msgstr "errore grave: impossibile inserire l'identificatore di versione in %s"
-#: src/accessdb.c:61
+#: src/accessdb.c:59
msgid "[MAN DATABASE]"
msgstr ""
-#: src/accessdb.c:62
+#: src/accessdb.c:60
#, c-format
msgid "The man database defaults to %s%s."
msgstr ""
-#: src/accessdb.c:65 src/catman.c:103 src/globbing_test.c:62
-#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:115
-#: src/manpath.c:67 src/whatis.c:127 src/zsoelim_main.c:69
+#: src/accessdb.c:63 src/catman.c:100 src/globbing_test.c:58
+#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:114
+#: src/manpath.c:65 src/whatis.c:126 src/zsoelim_main.c:68
msgid "emit debugging messages"
msgstr ""
@@ -103,45 +103,45 @@ msgstr ""
msgid "can't open %s for reading"
msgstr "impossibile aprire %s in lettura"
-#: src/catman.c:100
+#: src/catman.c:97
msgid "[SECTION...]"
msgstr ""
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "PATH"
msgstr ""
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "set search path for manual pages to PATH"
msgstr ""
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "FILE"
msgstr ""
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
#, fuzzy
msgid "use this user configuration file"
msgstr "impossibile aprire il file di configurazione dei percorsi man %s"
-#: src/catman.c:198
+#: src/catman.c:195
#, c-format
msgid "man command failed with exit status %d"
msgstr "comando man fallito con stato d'uscita %d"
-#: src/catman.c:237
+#: src/catman.c:235
#, c-format
msgid "cannot read database %s"
msgstr "impossibile leggere il database %s"
-#: src/catman.c:280
+#: src/catman.c:278
#, c-format
msgid "NULL content for key: %s"
msgstr "contenuto NULL per la chiave: %s"
-#: src/catman.c:295
+#: src/catman.c:294
#, c-format
msgid ""
"\n"
@@ -150,12 +150,12 @@ msgstr ""
"\n"
"Aggiornamento dei file cat della sezione %s della gerarchia di manuali %s\n"
-#: src/catman.c:349
+#: src/catman.c:348
#, c-format
msgid "cannot write within %s"
msgstr "impossibile scrivere all'interno di %s"
-#: src/catman.c:426
+#: src/catman.c:425
#, c-format
msgid "unable to update %s"
msgstr "impossibile aggiornare %s"
@@ -165,68 +165,68 @@ msgstr "impossibile aggiornare %s"
msgid "warning: %s/man%s/%s.%s*: competing extensions"
msgstr "attenzione: %s/man%s/%s.%s*: estensioni in conflitto"
-#: src/check_mandirs.c:114 src/check_mandirs.c:613
+#: src/check_mandirs.c:126 src/check_mandirs.c:626
#, c-format
msgid "can't update index cache %s"
msgstr "impossibile aggiornare l'indice %s della cache"
-#: src/check_mandirs.c:242
+#: src/check_mandirs.c:254
#, c-format
msgid "warning: %s: bad symlink or ROFF `.so' request"
msgstr "attenzione: %s: link simbolico o richiesta ROFF \".so\" errato(a)"
-#: src/check_mandirs.c:298
+#: src/check_mandirs.c:310
#, c-format
msgid "warning: %s: ignoring empty file"
msgstr "attenzione: %s: viene ignorato un file vuoto"
-#: src/check_mandirs.c:302 src/straycats.c:276
+#: src/check_mandirs.c:314 src/straycats.c:276
#, c-format
msgid "warning: %s: whatis parse for %s(%s) failed"
msgstr "attenzione: %s: analisi whatis per %s(%s) fallita"
-#: src/check_mandirs.c:329 src/check_mandirs.c:498 src/mandb.c:883
+#: src/check_mandirs.c:341 src/check_mandirs.c:511 src/mandb.c:877
#: src/straycats.c:84 src/straycats.c:303 src/ult_src.c:81
#, c-format
msgid "can't search directory %s"
msgstr "impossibile ricercare nella directory %s"
-#: src/check_mandirs.c:378 src/man.c:1687
+#: src/check_mandirs.c:390 src/man.c:1689
#, c-format
msgid "can't chown %s"
msgstr "impossibile fare chown su %s"
-#: src/check_mandirs.c:400 src/check_mandirs.c:423
+#: src/check_mandirs.c:412 src/check_mandirs.c:435
#, c-format
msgid "warning: cannot create catdir %s"
msgstr "attenzione: impossibile creare la directory %s"
-#: src/check_mandirs.c:455 src/man.c:1699 src/mandb.c:233
+#: src/check_mandirs.c:467 src/man.c:1701 src/mandb.c:232
#, c-format
msgid "can't chmod %s"
msgstr "impossibile fare chmod su %s"
-#: src/check_mandirs.c:503
+#: src/check_mandirs.c:516
#, c-format
msgid "can't change to directory %s"
msgstr "impossibile posizionarsi nella directory %s"
-#: src/check_mandirs.c:553
+#: src/check_mandirs.c:566
#, c-format
msgid "can't create index cache %s"
msgstr "impossibile creare l'indice %s della cache"
-#: src/check_mandirs.c:578
+#: src/check_mandirs.c:591
#, c-format
msgid "Updating index cache for path `%s/%s'. Wait..."
msgstr ""
"Aggiornamento dell'indice della cache per il percorso \"%s/%s\". Attendere..."
-#: src/check_mandirs.c:640 src/check_mandirs.c:701
+#: src/check_mandirs.c:653 src/check_mandirs.c:714
msgid "done.\n"
msgstr "fatto.\n"
-#: src/check_mandirs.c:963
+#: src/check_mandirs.c:977
#, c-format
msgid "Purging old database entries in %s...\n"
msgstr "Rimozione delle vecchie voci di basi dati in %s...\n"
@@ -241,49 +241,49 @@ msgstr "attenzione: c' stato un errore memorizzando il dato %s(%s)"
msgid "warning: %s: ignoring bogus filename"
msgstr "attenzione: %s: vengono ignorati i nomi di file fasulli"
-#: src/globbing_test.c:59
+#: src/globbing_test.c:55
msgid "PATH SECTION NAME"
msgstr ""
-#: src/globbing_test.c:63 src/man.c:292
+#: src/globbing_test.c:59 src/man.c:292
msgid "EXTENSION"
msgstr ""
-#: src/globbing_test.c:63 src/man.c:293
+#: src/globbing_test.c:59 src/man.c:293
msgid "limit search to extension type EXTENSION"
msgstr ""
-#: src/globbing_test.c:64 src/man.c:294
+#: src/globbing_test.c:60 src/man.c:294
msgid "look for pages case-insensitively (default)"
msgstr ""
-#: src/globbing_test.c:65 src/man.c:295
+#: src/globbing_test.c:61 src/man.c:295
msgid "look for pages case-sensitively"
msgstr ""
-#: src/globbing_test.c:66
+#: src/globbing_test.c:62
msgid "interpret page name as a regex"
msgstr ""
-#: src/globbing_test.c:67
+#: src/globbing_test.c:63
msgid "the page name contains wildcards"
msgstr ""
-#: src/lexgrog.l:691
+#: src/lexgrog.l:701
#, fuzzy, c-format
msgid "warning: whatis for %s exceeds %d byte, truncating."
msgid_plural "warning: whatis for %s exceeds %d bytes, truncating."
msgstr[0] "attenzione: whatis per %s eccede di %d byte, troncato."
msgstr[1] "attenzione: whatis per %s eccede di %d byte, troncato."
-#: src/lexgrog.l:844 src/man.c:2268 src/man.c:2350 src/man.c:2448
+#: src/lexgrog.l:854 src/man.c:2270 src/man.c:2354 src/man.c:2452
#: src/manconv_main.c:168 src/straycats.c:218 src/ult_src.c:321
-#: src/ult_src.c:335 src/zsoelim.l:512
+#: src/ult_src.c:335 src/zsoelim.l:519
#, c-format
msgid "can't open %s"
msgstr "impossibile aprire %s"
-#: src/lexgrog_test.c:69 src/zsoelim_main.c:66
+#: src/lexgrog_test.c:69 src/zsoelim_main.c:65
msgid "FILE..."
msgstr ""
@@ -382,7 +382,7 @@ msgstr ""
msgid "Finding manual pages:"
msgstr " Pagina di manuale "
-#: src/man.c:287 src/whatis.c:138
+#: src/man.c:287 src/whatis.c:137
msgid "LOCALE"
msgstr ""
@@ -390,15 +390,15 @@ msgstr ""
msgid "define the locale for this particular man search"
msgstr ""
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "SYSTEM"
msgstr ""
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "use manual pages from other systems"
msgstr ""
-#: src/man.c:290 src/whatis.c:134
+#: src/man.c:290 src/whatis.c:133
msgid "LIST"
msgstr ""
@@ -506,78 +506,78 @@ msgstr ""
msgid "use groff and force it to produce ditroff"
msgstr ""
-#: src/man.c:597 src/man.c:733
+#: src/man.c:599 src/man.c:735
#, c-format
msgid "No manual entry for %s\n"
msgstr "Non c' il manuale per %s\n"
-#: src/man.c:599
+#: src/man.c:601
#, fuzzy, c-format
msgid "(Alternatively, what manual page do you want from section %s?)\n"
msgstr "Quale pagina di manuale si desidera della sezione %s?\n"
-#: src/man.c:603
+#: src/man.c:605
msgid "What manual page do you want?\n"
msgstr "Quale pagina di manuale si desidera?\n"
-#: src/man.c:730
+#: src/man.c:732
#, c-format
msgid "No manual entry for %s in section %s\n"
msgstr "Non c' il manuale per %s nella sezione %s\n"
-#: src/man.c:739
+#: src/man.c:741
#, c-format
msgid "See '%s' for help when manual pages are not available.\n"
msgstr ""
"Si veda \"%s\" per l'aiuto quando le pagine di manuali non sono presenti.\n"
-#: src/man.c:1347
+#: src/man.c:1349
#, c-format
msgid "ignoring unknown preprocessor `%c'"
msgstr "preprocessore \"%c\" sconosciuto, lo ignoro"
-#: src/man.c:1710 src/mandb.c:224
+#: src/man.c:1712 src/mandb.c:223
#, c-format
msgid "can't rename %s to %s"
msgstr "impossibile rinominare %s in %s"
-#: src/man.c:1727
+#: src/man.c:1729
#, c-format
msgid "can't set times on %s"
msgstr "impossibile impostare la data per %s"
-#: src/man.c:1736 src/man.c:1773
+#: src/man.c:1738 src/man.c:1775
#, c-format
msgid "can't unlink %s"
msgstr "impossibile fare unlink di %s"
-#: src/man.c:1803
+#: src/man.c:1805
#, c-format
msgid "can't create temporary cat for %s"
msgstr "impossibile creare un file 'cat' temporaneo per %s"
-#: src/man.c:1913
+#: src/man.c:1915
#, fuzzy, c-format
msgid "can't create temporary directory"
msgstr "impossibile creare un file 'cat' temporaneo per %s"
-#: src/man.c:1924
+#: src/man.c:1926
#, c-format
msgid "can't open temporary file %s"
msgstr "impossibile aprire il file temporaneo %s"
-#: src/man.c:1954 src/man.c:1983
+#: src/man.c:1956 src/man.c:1985
#, c-format
msgid "can't remove directory %s"
msgstr "impossibile rimuovere la directory %s"
-#: src/man.c:2112
+#: src/man.c:2114
#, c-format
msgid "--Man-- next: %s [ view (return) | skip (Ctrl-D) | quit (Ctrl-C) ]\n"
msgstr ""
"--Man-- successivo: %s [ mostra (return) | salta (Ctrl-D) | esci (Ctrl-C) ]\n"
-#: src/man.c:2393
+#: src/man.c:2397
#, c-format
msgid ""
"\n"
@@ -586,27 +586,27 @@ msgstr ""
"\n"
"impossibile scrivere in %s in modo catman"
-#: src/man.c:2474
+#: src/man.c:2477
#, c-format
msgid "Can't convert %s to cat name"
msgstr "Impossibile convertire %s nel nome cat"
-#: src/man.c:3203
+#: src/man.c:3206
#, c-format
msgid "%s: relying on whatis refs is deprecated\n"
msgstr "%s: confidare nei whatis refs obsoleto\n"
-#: src/man.c:3346 src/man.c:4196
+#: src/man.c:3349 src/man.c:4200
#, c-format
msgid "mandb command failed with exit status %d"
msgstr "comando mandb fallito con stato d'uscita %d"
-#: src/man.c:3548
+#: src/man.c:3551
#, c-format
msgid "internal error: candidate type %d out of range"
msgstr "errore interno: il tipo %d candidato oltre il limite"
-#: src/man.c:4137
+#: src/man.c:4141
msgid " Manual page "
msgstr " Pagina di manuale "
@@ -639,7 +639,7 @@ msgstr ""
msgid "encoding for output"
msgstr ""
-#: src/manconv_main.c:97 src/manpath.c:68
+#: src/manconv_main.c:97 src/manpath.c:66
msgid "produce fewer warnings"
msgstr ""
@@ -653,73 +653,73 @@ msgstr ""
msgid "must specify an output encoding"
msgstr ""
-#: src/mandb.c:112
+#: src/mandb.c:111
msgid "[MANPATH]"
msgstr ""
-#: src/mandb.c:116
+#: src/mandb.c:115
msgid "work quietly, except for 'bogus' warning"
msgstr ""
-#: src/mandb.c:117
+#: src/mandb.c:116
msgid "don't look for or add stray cats to the dbs"
msgstr ""
-#: src/mandb.c:118
+#: src/mandb.c:117
msgid "don't purge obsolete entries from the dbs"
msgstr ""
-#: src/mandb.c:119
+#: src/mandb.c:118
msgid "produce user databases only"
msgstr ""
-#: src/mandb.c:120
+#: src/mandb.c:119
msgid "create dbs from scratch, rather than updating"
msgstr ""
-#: src/mandb.c:121
+#: src/mandb.c:120
msgid "check manual pages for correctness"
msgstr ""
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "FILENAME"
msgstr ""
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "update just the entry for this filename"
msgstr ""
-#: src/mandb.c:217
+#: src/mandb.c:216
#, c-format
msgid "can't remove %s"
msgstr "impossibile rimuovere %s"
-#: src/mandb.c:281
+#: src/mandb.c:280
#, c-format
msgid "can't write to %s"
msgstr "impossibile scrivere in %s"
-#: src/mandb.c:286
+#: src/mandb.c:285
#, c-format
msgid "can't read from %s"
msgstr "impossibile leggere da %s"
-#: src/mandb.c:455
+#: src/mandb.c:457
#, c-format
msgid "Processing manual pages under %s...\n"
msgstr "Lavorazione delle pagine di manuale sotto a %s...\n"
-#: src/mandb.c:672 src/mandb.c:698
+#: src/mandb.c:666 src/mandb.c:692
#, fuzzy, c-format
msgid "Removing obsolete cat directory %s...\n"
msgstr "Ricerca degli stray cat sotto a %s...\n"
-#: src/mandb.c:848
+#: src/mandb.c:842
#, c-format
msgid "warning: no MANDB_MAP directives in %s, using your manpath"
msgstr "attenzione: nessuna direttiva MANDB_MAP in %s, uso del tuo manpath"
-#: src/mandb.c:920
+#: src/mandb.c:914
#, fuzzy, c-format
msgid "%d man subdirectory contained newer manual pages.\n"
msgid_plural "%d man subdirectories contained newer manual pages.\n"
@@ -730,28 +730,28 @@ msgstr[1] ""
"%d sottodirectory man contenevano nuove pagine di manuale.\n"
"Sono state aggiunte %d pagine di manuale\n"
-#: src/mandb.c:925
+#: src/mandb.c:919
#, fuzzy, c-format
msgid "%d manual page was added.\n"
msgid_plural "%d manual pages were added.\n"
msgstr[0] " Pagina di manuale "
msgstr[1] " Pagina di manuale "
-#: src/mandb.c:929
+#: src/mandb.c:923
#, fuzzy, c-format
msgid "%d stray cat was added.\n"
msgid_plural "%d stray cats were added.\n"
msgstr[0] "%d stray cat sono stati aggiunti.\n"
msgstr[1] "%d stray cat sono stati aggiunti.\n"
-#: src/mandb.c:934
+#: src/mandb.c:928
#, fuzzy, c-format
msgid "%d old database entry was purged.\n"
msgid_plural "%d old database entries were purged.\n"
msgstr[0] "%d vecchie voci di database sono state rimosse.\n"
msgstr[1] "%d vecchie voci di database sono state rimosse.\n"
-#: src/mandb.c:952
+#: src/mandb.c:946
#, fuzzy, c-format
msgid "No databases created."
msgstr "Il database non stato aggiornato."
@@ -826,15 +826,15 @@ msgstr "impossibile determinare la directory corrente"
msgid "warning: %s does not begin with %s"
msgstr "attenzione: %s non inizia con %s"
-#: src/manpath.c:65
+#: src/manpath.c:63
msgid "show relative catpaths"
msgstr ""
-#: src/manpath.c:66
+#: src/manpath.c:64
msgid "show the entire global manpath"
msgstr ""
-#: src/manpath.c:128
+#: src/manpath.c:126
#, c-format
msgid "warning: no global manpaths set in config file %s"
msgstr ""
@@ -866,96 +866,96 @@ msgstr "attenzione: impossibile aggiornare l'index %s della cache"
msgid "%s is self referencing"
msgstr "%s auto referenziante"
-#: src/whatis.c:123
+#: src/whatis.c:122
msgid "KEYWORD..."
msgstr ""
-#: src/whatis.c:124
+#: src/whatis.c:123
msgid "The --regex option is enabled by default."
msgstr ""
-#: src/whatis.c:128
+#: src/whatis.c:127
msgid "print verbose warning messages"
msgstr ""
-#: src/whatis.c:129
+#: src/whatis.c:128
msgid "interpret each keyword as a regex"
msgstr ""
-#: src/whatis.c:130
+#: src/whatis.c:129
msgid "search each keyword for exact match"
msgstr ""
-#: src/whatis.c:131
+#: src/whatis.c:130
msgid "the keyword(s) contain wildcards"
msgstr ""
-#: src/whatis.c:132
+#: src/whatis.c:131
msgid "require all keywords to match"
msgstr ""
-#: src/whatis.c:133
+#: src/whatis.c:132
msgid "do not trim output to terminal width"
msgstr ""
-#: src/whatis.c:134
+#: src/whatis.c:133
msgid "search only these sections (colon-separated)"
msgstr ""
-#: src/whatis.c:138
+#: src/whatis.c:137
msgid "define the locale for this search"
msgstr ""
-#: src/whatis.c:235
+#: src/whatis.c:234
#, c-format
msgid "%s what?\n"
msgstr "%s cosa?\n"
-#: src/whatis.c:412 src/whatis.c:430
+#: src/whatis.c:410 src/whatis.c:428
#, c-format
msgid "warning: %s contains a pointer loop"
msgstr "attenzione: %s contiene un riferimeno a se stesso"
-#: src/whatis.c:424 src/whatis.c:432
+#: src/whatis.c:422 src/whatis.c:430
msgid "(unknown subject)"
msgstr "(oggetto sconosciuto)"
-#: src/whatis.c:863
+#: src/whatis.c:861
#, c-format
msgid "%s: nothing appropriate.\n"
msgstr "%s: niente di appropriato.\n"
-#: src/zsoelim.l:171
+#: src/zsoelim.l:178
#, c-format
msgid "%s:%d: .so requests nested too deeply or are recursive"
msgstr ""
-#: src/zsoelim.l:186
+#: src/zsoelim.l:193
#, c-format
msgid "%s:%d: warning: failed .so request"
msgstr ""
-#: src/zsoelim.l:208
+#: src/zsoelim.l:215
#, c-format
msgid "%s:%d: warning: newline in .so request, ignoring"
msgstr ""
-#: src/zsoelim.l:268
+#: src/zsoelim.l:275
#, c-format
msgid "%s:%d: warning: malformed .lf request, ignoring"
msgstr ""
-#: src/zsoelim.l:278
+#: src/zsoelim.l:285
#, c-format
msgid "%s:%d: warning: newline in .lf request, ignoring"
msgstr ""
-#: src/zsoelim.l:318
+#: src/zsoelim.l:325
#, c-format
msgid "%s:%d: unterminated quote in roff request"
msgstr ""
-#: src/zsoelim_main.c:70
+#: src/zsoelim_main.c:69
msgid "compatibility switch (ignored)"
msgstr ""
diff --git a/po/ja.gmo b/po/ja.gmo
index 40c4dc3b..00504db8 100644
--- a/po/ja.gmo
+++ b/po/ja.gmo
Binary files differ
diff --git a/po/ja.po b/po/ja.po
index 878d6d7b..38395586 100644
--- a/po/ja.po
+++ b/po/ja.po
@@ -1,22 +1,27 @@
# Japanese messages for man-db
-# Copyright (C) 2011 Colin Watson (msgids)
+# Copyright (C) 2019 Colin Watson (msgids)
# This file is distributed under the same license as the man-db package.
# UCHIDA Norihiro <KY4N-UCD@asahi-net.or.jp>, 2000.
# Yasuaki Taniguchi <yasuakit@gmail.com>, 2011.
+# Takeshi Hamasaki <hmatrjp@users.sourceforge.jp>, 2019.
#
msgid ""
msgstr ""
-"Project-Id-Version: man-db-2.6.5\n"
+"Project-Id-Version: man-db-2.8.0-pre2\n"
"Report-Msgid-Bugs-To: Colin Watson <cjwatson@debian.org>\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
-"PO-Revision-Date: 2013-06-27 19:41+0900\n"
-"Last-Translator: Yasuaki Taniguchi <yasuakit@gmail.com>\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
+"PO-Revision-Date: 2019-08-24 23:30+0900\n"
+"Last-Translator: Takeshi Hamasaki <hmatrjp@users.sourceforge.jp>\n"
"Language-Team: Japanese <translation-team-ja@lists.sourceforge.net>\n"
"Language: ja\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.2.1\n"
+"X-Poedit-Basepath: man-db-2.8.0-pre2\n"
+"X-Poedit-SearchPath-0: .\n"
#: lib/security.c:79
#, c-format
@@ -64,7 +69,7 @@ msgstr[0] "中身が %d フィールドしかありません"
msgid "bad fetch on multi key %s"
msgstr "複合キー %s は不正な呼び出しです"
-#: libdb/db_lookup.c:443 src/whatis.c:739
+#: libdb/db_lookup.c:443 src/whatis.c:737
#, c-format
msgid "Database %s corrupted; rebuild with mandb --create"
msgstr ""
@@ -76,28 +81,28 @@ msgstr ""
msgid "warning: %s has no version identifier\n"
msgstr "警告: %s にはバージョン識別子がありません\n"
-#: libdb/db_ver.c:56
+#: libdb/db_ver.c:57
#, c-format
msgid "warning: %s is version %s, expecting %s\n"
msgstr "警告: %1$s のバージョンは %3$s が予期されますが、実際は %2$s です\n"
-#: libdb/db_ver.c:78
+#: libdb/db_ver.c:79
#, c-format
msgid "fatal: unable to insert version identifier into %s"
msgstr "致命的: %s にバージョン識別子を挿入できません"
-#: src/accessdb.c:61
+#: src/accessdb.c:59
msgid "[MAN DATABASE]"
msgstr "[MAN DATABASE]"
-#: src/accessdb.c:62
+#: src/accessdb.c:60
#, c-format
msgid "The man database defaults to %s%s."
msgstr "man データベースのデフォルトを %s%s にします。"
-#: src/accessdb.c:65 src/catman.c:103 src/globbing_test.c:62
-#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:115
-#: src/manpath.c:67 src/whatis.c:127 src/zsoelim_main.c:69
+#: src/accessdb.c:63 src/catman.c:100 src/globbing_test.c:58
+#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:114
+#: src/manpath.c:65 src/whatis.c:126 src/zsoelim_main.c:68
msgid "emit debugging messages"
msgstr "デバッグメッセージを表示する"
@@ -106,44 +111,44 @@ msgstr "デバッグメッセージを表示する"
msgid "can't open %s for reading"
msgstr "%s を読み込み用に開けません"
-#: src/catman.c:100
+#: src/catman.c:97
msgid "[SECTION...]"
msgstr "[SECTION...]"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "PATH"
msgstr "PATH"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "set search path for manual pages to PATH"
msgstr "man ページ用の検索パスを PATH に設定する"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "FILE"
msgstr "FILE"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "use this user configuration file"
msgstr "このユーザ設定ファイルを使用する"
-#: src/catman.c:198
+#: src/catman.c:195
#, c-format
msgid "man command failed with exit status %d"
msgstr "man コマンドが終了ステータス %d で失敗しました"
-#: src/catman.c:237
+#: src/catman.c:235
#, c-format
msgid "cannot read database %s"
msgstr "データベース %s を読み込めません"
-#: src/catman.c:280
+#: src/catman.c:278
#, c-format
msgid "NULL content for key: %s"
msgstr "キー %s の内容は NULL です"
-#: src/catman.c:295
+#: src/catman.c:294
#, c-format
msgid ""
"\n"
@@ -152,12 +157,12 @@ msgstr ""
"\n"
"man 階層 %2$s のセクション %1$s の cat ファイルを更新しています\n"
-#: src/catman.c:349
+#: src/catman.c:348
#, c-format
msgid "cannot write within %s"
msgstr "%s に書き込めません"
-#: src/catman.c:426
+#: src/catman.c:425
#, c-format
msgid "unable to update %s"
msgstr "%s を更新できません"
@@ -167,68 +172,68 @@ msgstr "%s を更新できません"
msgid "warning: %s/man%s/%s.%s*: competing extensions"
msgstr "警告: %s/man%s/%s.%s*: 拡張子が競合しています"
-#: src/check_mandirs.c:114 src/check_mandirs.c:613
+#: src/check_mandirs.c:126 src/check_mandirs.c:626
#, c-format
msgid "can't update index cache %s"
msgstr "index キャッシュ %s を更新できません"
-#: src/check_mandirs.c:242
+#: src/check_mandirs.c:254
#, c-format
msgid "warning: %s: bad symlink or ROFF `.so' request"
msgstr ""
"警告: %s: シンボリックリンクまたは ROFF の `.so' 要求に誤りがあります"
-#: src/check_mandirs.c:298
+#: src/check_mandirs.c:310
#, c-format
msgid "warning: %s: ignoring empty file"
msgstr "警告: %s: 空ファイルを無視しています"
-#: src/check_mandirs.c:302 src/straycats.c:276
+#: src/check_mandirs.c:314 src/straycats.c:276
#, c-format
msgid "warning: %s: whatis parse for %s(%s) failed"
msgstr "警告: %s: whatis が %s(%s) の解釈に失敗しました"
-#: src/check_mandirs.c:329 src/check_mandirs.c:498 src/mandb.c:883
+#: src/check_mandirs.c:341 src/check_mandirs.c:511 src/mandb.c:877
#: src/straycats.c:84 src/straycats.c:303 src/ult_src.c:81
#, c-format
msgid "can't search directory %s"
msgstr "ディレクトリー %s を検索できません"
-#: src/check_mandirs.c:378 src/man.c:1687
+#: src/check_mandirs.c:390 src/man.c:1689
#, c-format
msgid "can't chown %s"
msgstr "%s の所有者を変更 (chown) できません"
-#: src/check_mandirs.c:400 src/check_mandirs.c:423
+#: src/check_mandirs.c:412 src/check_mandirs.c:435
#, c-format
msgid "warning: cannot create catdir %s"
msgstr "警告: cat ディレクトリー %s を作成できません"
-#: src/check_mandirs.c:455 src/man.c:1699 src/mandb.c:233
+#: src/check_mandirs.c:467 src/man.c:1701 src/mandb.c:232
#, c-format
msgid "can't chmod %s"
msgstr "%s の許可属性を変更 (chmod) できません"
-#: src/check_mandirs.c:503
+#: src/check_mandirs.c:516
#, c-format
msgid "can't change to directory %s"
msgstr "ディレクトリ %s に移動できません"
-#: src/check_mandirs.c:553
+#: src/check_mandirs.c:566
#, c-format
msgid "can't create index cache %s"
msgstr "index キャッシュ %s を作成できません"
-#: src/check_mandirs.c:578
+#: src/check_mandirs.c:591
#, c-format
msgid "Updating index cache for path `%s/%s'. Wait..."
msgstr "パス `%s/%s' の index キャッシュを更新しています。お待ちください..."
-#: src/check_mandirs.c:640 src/check_mandirs.c:701
+#: src/check_mandirs.c:653 src/check_mandirs.c:714
msgid "done.\n"
msgstr "完了しました。\n"
-#: src/check_mandirs.c:963
+#: src/check_mandirs.c:977
#, c-format
msgid "Purging old database entries in %s...\n"
msgstr "%s 内の古いデータベース要素を取り除いています...\n"
@@ -243,48 +248,48 @@ msgstr "警告: %s(%s) 用の要素の保存に失敗しました"
msgid "warning: %s: ignoring bogus filename"
msgstr "警告: %s: おかしなファイル名を無視しています"
-#: src/globbing_test.c:59
+#: src/globbing_test.c:55
msgid "PATH SECTION NAME"
msgstr "PATH SECTION NAME"
-#: src/globbing_test.c:63 src/man.c:292
+#: src/globbing_test.c:59 src/man.c:292
msgid "EXTENSION"
msgstr "EXTENSION"
-#: src/globbing_test.c:63 src/man.c:293
+#: src/globbing_test.c:59 src/man.c:293
msgid "limit search to extension type EXTENSION"
-msgstr "検索対象を拡張子が EXTENSION のものに限定する"
+msgstr "検索対象を拡張子 EXTENSION に絞る"
-#: src/globbing_test.c:64 src/man.c:294
+#: src/globbing_test.c:60 src/man.c:294
msgid "look for pages case-insensitively (default)"
msgstr "大文字小文字を区別しないでページを検索する (デフォルト)"
-#: src/globbing_test.c:65 src/man.c:295
+#: src/globbing_test.c:61 src/man.c:295
msgid "look for pages case-sensitively"
msgstr "大文字小文字を区別してページを検索する"
-#: src/globbing_test.c:66
+#: src/globbing_test.c:62
msgid "interpret page name as a regex"
msgstr "ページ名を正規表現として解釈する"
-#: src/globbing_test.c:67
+#: src/globbing_test.c:63
msgid "the page name contains wildcards"
msgstr "ページ名をワイルドカードとして解釈する"
-#: src/lexgrog.l:691
+#: src/lexgrog.l:701
#, c-format
msgid "warning: whatis for %s exceeds %d byte, truncating."
msgid_plural "warning: whatis for %s exceeds %d bytes, truncating."
msgstr[0] "警告: %s 用の whatis が %d バイトを超えています。切り詰めます。"
-#: src/lexgrog.l:844 src/man.c:2268 src/man.c:2350 src/man.c:2448
+#: src/lexgrog.l:854 src/man.c:2270 src/man.c:2354 src/man.c:2452
#: src/manconv_main.c:168 src/straycats.c:218 src/ult_src.c:321
-#: src/ult_src.c:335 src/zsoelim.l:512
+#: src/ult_src.c:335 src/zsoelim.l:519
#, c-format
msgid "can't open %s"
msgstr "%s をオープンできません"
-#: src/lexgrog_test.c:69 src/zsoelim_main.c:66
+#: src/lexgrog_test.c:69 src/zsoelim_main.c:65
msgid "FILE..."
msgstr "FILE..."
@@ -306,7 +311,7 @@ msgstr "whatis 情報を表示する"
#: src/lexgrog_test.c:77
msgid "show guessed series of preprocessing filters"
-msgstr "推測した一連の事前処理フィルターを表示"
+msgstr "推定した一連の前処理フィルターを表示する"
#: src/lexgrog_test.c:78 src/man.c:284 src/man.c:309
msgid "ENCODING"
@@ -382,7 +387,7 @@ msgstr "ソースページのエンコーディングが ENCODING であると
msgid "Finding manual pages:"
msgstr "マニュアルページの探し方:"
-#: src/man.c:287 src/whatis.c:138
+#: src/man.c:287 src/whatis.c:137
msgid "LOCALE"
msgstr "LOCALE"
@@ -390,15 +395,15 @@ msgstr "LOCALE"
msgid "define the locale for this particular man search"
msgstr "この man の検索用のロケールを定義する"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "SYSTEM"
msgstr "SYSTEM"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "use manual pages from other systems"
msgstr "ほかのシステムからのマニュアルページを使用する"
-#: src/man.c:290 src/whatis.c:134
+#: src/man.c:290 src/whatis.c:133
msgid "LIST"
msgstr "LIST"
@@ -430,7 +435,7 @@ msgstr "キャッシュ一貫性の確認を強制する"
#: src/man.c:303
msgid "don't try subpages, e.g. 'man foo bar' => 'man foo-bar'"
-msgstr "サブページの試行、例えば 'man foo bar' => 'man foo-bar' を行わない"
+msgstr "サブページを検索しない (例 'man foo bar' => 'man foo-bar' のような)"
#: src/man.c:305
msgid "Controlling formatted output:"
@@ -506,85 +511,84 @@ msgid ""
"use groff and display through gxditview (X11):\n"
"-X = -TX75, -X100 = -TX100, -X100-12 = -TX100-12"
msgstr ""
-"groff を使用し、 gxditview (X11) を通して表示する:\n"
+"groff を使用し、 gxditview (X11) を等して表示する:\n"
"-X = -TX75, -X100 = -TX100, -X100-12 = -TX100-12"
#: src/man.c:329
msgid "use groff and force it to produce ditroff"
msgstr "groff を使用し、強制的に ditroff を生成する"
-#: src/man.c:597 src/man.c:733
+#: src/man.c:599 src/man.c:735
#, c-format
msgid "No manual entry for %s\n"
msgstr "%s というマニュアルはありません\n"
-#: src/man.c:599
+#: src/man.c:601
#, c-format
msgid "(Alternatively, what manual page do you want from section %s?)\n"
-msgstr "(セクション %s からどのマニュアルページを代わりに表示しますか?)\n"
+msgstr "(代わりに セクション %s のどのマニュアルページを表示しますか?)\n"
-#: src/man.c:603
+#: src/man.c:605
msgid "What manual page do you want?\n"
msgstr "マニュアルページを指定してください\n"
-#: src/man.c:730
+#: src/man.c:732
#, c-format
msgid "No manual entry for %s in section %s\n"
msgstr "%s というマニュアルはセクション %s にはありません\n"
-#: src/man.c:739
+#: src/man.c:741
#, c-format
msgid "See '%s' for help when manual pages are not available.\n"
-msgstr ""
-"マニュアルページが利用できない場合のヘルプについては '%s'を見てください。\n"
+msgstr "マニュアルページがない場合には '%s' をご覧ください。\n"
-#: src/man.c:1347
+#: src/man.c:1349
#, c-format
msgid "ignoring unknown preprocessor `%c'"
msgstr "不明な前処理系 `%c' を無視しています"
-#: src/man.c:1710 src/mandb.c:224
+#: src/man.c:1712 src/mandb.c:223
#, c-format
msgid "can't rename %s to %s"
msgstr "%s の名前を %s に変更できません"
-#: src/man.c:1727
+#: src/man.c:1729
#, c-format
msgid "can't set times on %s"
msgstr "%s の時刻を設定できません"
-#: src/man.c:1736 src/man.c:1773
+#: src/man.c:1738 src/man.c:1775
#, c-format
msgid "can't unlink %s"
msgstr "%s を削除(unlink)できません"
-#: src/man.c:1803
+#: src/man.c:1805
#, c-format
msgid "can't create temporary cat for %s"
msgstr "%s 用の一時的な整形済みファイルを作成できません"
-#: src/man.c:1913
+#: src/man.c:1915
#, c-format
msgid "can't create temporary directory"
msgstr "一時ディレクトリを作成できません"
-#: src/man.c:1924
+#: src/man.c:1926
#, c-format
msgid "can't open temporary file %s"
msgstr "一時ファイル %s を開けません"
-#: src/man.c:1954 src/man.c:1983
+#: src/man.c:1956 src/man.c:1985
#, c-format
msgid "can't remove directory %s"
msgstr "ディレクトリ %s を削除できません"
-#: src/man.c:2112
+#: src/man.c:2114
#, c-format
msgid "--Man-- next: %s [ view (return) | skip (Ctrl-D) | quit (Ctrl-C) ]\n"
msgstr ""
"--Man-- 次は: %s [ 閲覧 (return) | スキップ (Ctrl-D) | 終了 (Ctrl-C) ]\n"
-#: src/man.c:2393
+#: src/man.c:2397
#, c-format
msgid ""
"\n"
@@ -593,27 +597,27 @@ msgstr ""
"\n"
"catman モードで %s に書き込みできません"
-#: src/man.c:2474
+#: src/man.c:2477
#, c-format
msgid "Can't convert %s to cat name"
msgstr "%s を整形済みファイル名に変換できません"
-#: src/man.c:3203
+#: src/man.c:3206
#, c-format
msgid "%s: relying on whatis refs is deprecated\n"
-msgstr "%s: whatis の参照に頼ることは勧められなくなっています\n"
+msgstr "%s: 参照が非推奨のwhatis に依存しています\n"
-#: src/man.c:3346 src/man.c:4196
+#: src/man.c:3349 src/man.c:4200
#, c-format
msgid "mandb command failed with exit status %d"
msgstr "mandb コマンドが終了ステータス %d で失敗しました"
-#: src/man.c:3548
+#: src/man.c:3551
#, c-format
msgid "internal error: candidate type %d out of range"
-msgstr "内部エラー: 候補の種類 %d は範囲内にありません"
+msgstr "内部エラー: 候補タイプ %d が範囲外です"
-#: src/man.c:4137
+#: src/man.c:4141
msgid " Manual page "
msgstr " マニュアルページ "
@@ -636,7 +640,7 @@ msgstr "CODE[:...]"
#: src/manconv_main.c:94
msgid "possible encodings of original text"
-msgstr "原文の推定エンコーディング"
+msgstr "原文テキストのあり得るエンコーディング"
#: src/manconv_main.c:95
msgid "CODE"
@@ -644,11 +648,11 @@ msgstr "CODE"
#: src/manconv_main.c:95
msgid "encoding for output"
-msgstr "出力用エンコーディング"
+msgstr "出力のエンコーディング"
-#: src/manconv_main.c:97 src/manpath.c:68
+#: src/manconv_main.c:97 src/manpath.c:66
msgid "produce fewer warnings"
-msgstr "警告を少なくする"
+msgstr "警告表示を減らします"
#: src/manconv_main.c:132 src/manconv_main.c:141
#, c-format
@@ -660,76 +664,74 @@ msgstr "入力エンコーディングを指定しなければいけません"
msgid "must specify an output encoding"
msgstr "出力エンコーディングを指定しなければいけません"
-#: src/mandb.c:112
+#: src/mandb.c:111
msgid "[MANPATH]"
msgstr "[MANPATH]"
-# Translator's NOTE: work..., don't look..., produce..., create are from:
-# Translator's NOTE: http://lists.debian.or.jp/debian-doc/199812/msg00016.html
-#: src/mandb.c:116
+#: src/mandb.c:115
msgid "work quietly, except for 'bogus' warning"
-msgstr "'ファイル名の不一致'による警告以外何も出力しない"
+msgstr "静かに動作します、ただし 'bogus' 警告は出力します"
-#: src/mandb.c:117
+#: src/mandb.c:116
msgid "don't look for or add stray cats to the dbs"
-msgstr "roff のない cat ファイルを検索、DB へ追加しない"
+msgstr "迷子の cat をデータベースから探したり追加したりしません"
-#: src/mandb.c:118
+#: src/mandb.c:117
msgid "don't purge obsolete entries from the dbs"
-msgstr "古くなったエントリーを DB から削除しない"
+msgstr "データベースにある廃止されたエントリーを削除しません"
-#: src/mandb.c:119
+#: src/mandb.c:118
msgid "produce user databases only"
-msgstr "ユーザ用データベースのみを生成"
+msgstr "ユーザーのデータベースのみを出力します"
-#: src/mandb.c:120
+#: src/mandb.c:119
msgid "create dbs from scratch, rather than updating"
-msgstr "データベースを更新せず、一から作成し直す"
+msgstr "データベースを更新でなく、最初から作成します"
-#: src/mandb.c:121
+#: src/mandb.c:120
msgid "check manual pages for correctness"
-msgstr "マニュアルページの正確さをチェック"
+msgstr "マニュアルページの正確さをチェックします"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "FILENAME"
msgstr "FILENAME"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "update just the entry for this filename"
-msgstr "このファイル名の要素だけを更新"
+msgstr "このファイル名に対応するエントリーのみを更新します"
-#: src/mandb.c:217
+#: src/mandb.c:216
#, c-format
msgid "can't remove %s"
msgstr "%s を削除できません"
-#: src/mandb.c:281
+#: src/mandb.c:280
#, c-format
msgid "can't write to %s"
msgstr "%s に書き込めません"
-#: src/mandb.c:286
+#: src/mandb.c:285
#, c-format
msgid "can't read from %s"
msgstr "%s から読み込めません"
-#: src/mandb.c:455
+#: src/mandb.c:457
#, c-format
msgid "Processing manual pages under %s...\n"
msgstr "%s 配下のマニュアルページを処理しています...\n"
-#: src/mandb.c:672 src/mandb.c:698
+#: src/mandb.c:666 src/mandb.c:692
#, c-format
msgid "Removing obsolete cat directory %s...\n"
msgstr "古い cat ディレクトリ %s を削除しています...\n"
-#: src/mandb.c:848
+#: src/mandb.c:842
#, c-format
msgid "warning: no MANDB_MAP directives in %s, using your manpath"
msgstr ""
"警告: %s に MANDB_MAP の指定はありません。あなたの manpath を使用します"
-#: src/mandb.c:920
+#: src/mandb.c:914
#, c-format
msgid "%d man subdirectory contained newer manual pages.\n"
msgid_plural "%d man subdirectories contained newer manual pages.\n"
@@ -737,25 +739,25 @@ msgstr[0] ""
"%d 個のマニュアルページ子ディレクトリに新しいマニュアルページが含まれていまし"
"た。\n"
-#: src/mandb.c:925
+#: src/mandb.c:919
#, c-format
msgid "%d manual page was added.\n"
msgid_plural "%d manual pages were added.\n"
msgstr[0] "%d 個のマニュアルページが追加されました。\n"
-#: src/mandb.c:929
+#: src/mandb.c:923
#, c-format
msgid "%d stray cat was added.\n"
msgid_plural "%d stray cats were added.\n"
-msgstr[0] "roff のない cat ファイルが %d 個追加されました。\n"
+msgstr[0] "%d の迷子の cat が追加されました。\n"
-#: src/mandb.c:934
+#: src/mandb.c:928
#, c-format
msgid "%d old database entry was purged.\n"
msgid_plural "%d old database entries were purged.\n"
msgstr[0] "%d 個の古いデータベース要素が除去されました。\n"
-#: src/mandb.c:952
+#: src/mandb.c:946
#, c-format
msgid "No databases created."
msgstr "データベースは作成されませんでした。"
@@ -830,15 +832,15 @@ msgstr "カレントディレクトリを決定できません"
msgid "warning: %s does not begin with %s"
msgstr "警告: %s は %s で始まっていません"
-#: src/manpath.c:65
+#: src/manpath.c:63
msgid "show relative catpaths"
-msgstr "相対 catpath を表示"
+msgstr "相対 catpath を表示します"
-#: src/manpath.c:66
+#: src/manpath.c:64
msgid "show the entire global manpath"
-msgstr "グローバルな manpath 全体を表示"
+msgstr "グローバル manpath 全体を表示します"
-#: src/manpath.c:128
+#: src/manpath.c:126
#, c-format
msgid "warning: no global manpaths set in config file %s"
msgstr "警告: 設定ファイル %s にグローバルな manpath の設定がありません"
@@ -868,105 +870,104 @@ msgstr "警告: index キャッシュ %s を更新できません"
msgid "%s is self referencing"
msgstr "%s は自分自身を参照しています"
-#: src/whatis.c:123
+#: src/whatis.c:122
msgid "KEYWORD..."
msgstr "KEYWORD..."
-#: src/whatis.c:124
+#: src/whatis.c:123
msgid "The --regex option is enabled by default."
msgstr "--regex オプションはデフォルトで有効です。"
-#: src/whatis.c:128
+#: src/whatis.c:127
msgid "print verbose warning messages"
msgstr "冗長な警告メッセージを表示する"
-#: src/whatis.c:129
+#: src/whatis.c:128
msgid "interpret each keyword as a regex"
msgstr "各キーワードを正規表現として解釈する"
-#: src/whatis.c:130
+#: src/whatis.c:129
msgid "search each keyword for exact match"
-msgstr "各検索語に完全に一致するものを検索"
+msgstr "それぞれのキーワードについて完全一致を検索する"
-#: src/whatis.c:131
+#: src/whatis.c:130
msgid "the keyword(s) contain wildcards"
msgstr "キーワードでワイルドカードを使用する"
-#: src/whatis.c:132
+#: src/whatis.c:131
msgid "require all keywords to match"
-msgstr "全検索語に一致するものを検索"
+msgstr "すべてのキーワードが一致する必要あり"
-#: src/whatis.c:133
+#: src/whatis.c:132
msgid "do not trim output to terminal width"
msgstr "出力を端末幅に切り詰めない"
-#: src/whatis.c:134
+#: src/whatis.c:133
msgid "search only these sections (colon-separated)"
msgstr "これらのセクションのみ検索する (コロン区切り)"
-#: src/whatis.c:138
+#: src/whatis.c:137
msgid "define the locale for this search"
msgstr "検索するロケールを定義する"
-#: src/whatis.c:235
+#: src/whatis.c:234
#, c-format
msgid "%s what?\n"
msgstr "%s キーワードは何ですか?\n"
-#: src/whatis.c:412 src/whatis.c:430
+#: src/whatis.c:410 src/whatis.c:428
#, c-format
msgid "warning: %s contains a pointer loop"
msgstr "警告: %s にはループしているポインタが含まれています"
-#: src/whatis.c:424 src/whatis.c:432
+#: src/whatis.c:422 src/whatis.c:430
msgid "(unknown subject)"
msgstr "(不明な題名です)"
-#: src/whatis.c:863
+#: src/whatis.c:861
#, c-format
msgid "%s: nothing appropriate.\n"
msgstr "%s: 適切なものはありませんでした。\n"
-#: src/zsoelim.l:171
+#: src/zsoelim.l:178
#, c-format
msgid "%s:%d: .so requests nested too deeply or are recursive"
msgstr "%s:%d: .so 要求の入れ子が深すぎる、または再帰しています"
-#: src/zsoelim.l:186
+#: src/zsoelim.l:193
#, c-format
msgid "%s:%d: warning: failed .so request"
msgstr "%s:%d: 警告: .so 要求の処理に失敗しました"
-#: src/zsoelim.l:208
+#: src/zsoelim.l:215
#, c-format
msgid "%s:%d: warning: newline in .so request, ignoring"
msgstr "%s:%d: 警告: .so 要求の中に改行があります。無視しています"
-#: src/zsoelim.l:268
+#: src/zsoelim.l:275
#, c-format
msgid "%s:%d: warning: malformed .lf request, ignoring"
msgstr "%s:%d: 警告: 誤った形式の .lf 要求です。無視しています"
-#: src/zsoelim.l:278
+#: src/zsoelim.l:285
#, c-format
msgid "%s:%d: warning: newline in .lf request, ignoring"
msgstr "%s:%d: 警告: .lf 要求の中に改行があります。無視しています"
-#: src/zsoelim.l:318
+#: src/zsoelim.l:325
#, c-format
msgid "%s:%d: unterminated quote in roff request"
msgstr "%s:%d: roff 要求の中に終端されていないクォートがあります"
-#: src/zsoelim_main.c:70
+#: src/zsoelim_main.c:69
msgid "compatibility switch (ignored)"
msgstr "互換性のためのスイッチです (無視されます)"
-#~ msgid "manpath list too long"
-#~ msgstr "manpath リストが長すぎます"
-
-#, fuzzy
#~ msgid "can't restore previous working directory"
-#~ msgstr "一時ディレクトリを作成できません"
+#~ msgstr "直前の作業ディレクトリを復元できません"
#~ msgid "can't chdir to %s"
#~ msgstr "%s にディレクトリを変更できません"
+
+#~ msgid "manpath list too long"
+#~ msgstr "manpath リストが長すぎます"
diff --git a/po/man-db.pot b/po/man-db.pot
index 841a9f03..f111ec28 100644
--- a/po/man-db.pot
+++ b/po/man-db.pot
@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: man-db 2.8.6.1\n"
+"Project-Id-Version: man-db 2.8.7\n"
"Report-Msgid-Bugs-To: Colin Watson <cjwatson@debian.org>\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -65,7 +65,7 @@ msgstr[1] ""
msgid "bad fetch on multi key %s"
msgstr ""
-#: libdb/db_lookup.c:443 src/whatis.c:739
+#: libdb/db_lookup.c:443 src/whatis.c:737
#, c-format
msgid "Database %s corrupted; rebuild with mandb --create"
msgstr ""
@@ -75,28 +75,28 @@ msgstr ""
msgid "warning: %s has no version identifier\n"
msgstr ""
-#: libdb/db_ver.c:56
+#: libdb/db_ver.c:57
#, c-format
msgid "warning: %s is version %s, expecting %s\n"
msgstr ""
-#: libdb/db_ver.c:78
+#: libdb/db_ver.c:79
#, c-format
msgid "fatal: unable to insert version identifier into %s"
msgstr ""
-#: src/accessdb.c:61
+#: src/accessdb.c:59
msgid "[MAN DATABASE]"
msgstr ""
-#: src/accessdb.c:62
+#: src/accessdb.c:60
#, c-format
msgid "The man database defaults to %s%s."
msgstr ""
-#: src/accessdb.c:65 src/catman.c:103 src/globbing_test.c:62
-#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:115
-#: src/manpath.c:67 src/whatis.c:127 src/zsoelim_main.c:69
+#: src/accessdb.c:63 src/catman.c:100 src/globbing_test.c:58
+#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:114
+#: src/manpath.c:65 src/whatis.c:126 src/zsoelim_main.c:68
msgid "emit debugging messages"
msgstr ""
@@ -105,56 +105,56 @@ msgstr ""
msgid "can't open %s for reading"
msgstr ""
-#: src/catman.c:100
+#: src/catman.c:97
msgid "[SECTION...]"
msgstr ""
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "PATH"
msgstr ""
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "set search path for manual pages to PATH"
msgstr ""
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "FILE"
msgstr ""
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "use this user configuration file"
msgstr ""
-#: src/catman.c:198
+#: src/catman.c:195
#, c-format
msgid "man command failed with exit status %d"
msgstr ""
-#: src/catman.c:237
+#: src/catman.c:235
#, c-format
msgid "cannot read database %s"
msgstr ""
-#: src/catman.c:280
+#: src/catman.c:278
#, c-format
msgid "NULL content for key: %s"
msgstr ""
-#: src/catman.c:295
+#: src/catman.c:294
#, c-format
msgid ""
"\n"
"Updating cat files for section %s of man hierarchy %s\n"
msgstr ""
-#: src/catman.c:349
+#: src/catman.c:348
#, c-format
msgid "cannot write within %s"
msgstr ""
-#: src/catman.c:426
+#: src/catman.c:425
#, c-format
msgid "unable to update %s"
msgstr ""
@@ -164,67 +164,67 @@ msgstr ""
msgid "warning: %s/man%s/%s.%s*: competing extensions"
msgstr ""
-#: src/check_mandirs.c:114 src/check_mandirs.c:613
+#: src/check_mandirs.c:126 src/check_mandirs.c:626
#, c-format
msgid "can't update index cache %s"
msgstr ""
-#: src/check_mandirs.c:242
+#: src/check_mandirs.c:254
#, c-format
msgid "warning: %s: bad symlink or ROFF `.so' request"
msgstr ""
-#: src/check_mandirs.c:298
+#: src/check_mandirs.c:310
#, c-format
msgid "warning: %s: ignoring empty file"
msgstr ""
-#: src/check_mandirs.c:302 src/straycats.c:276
+#: src/check_mandirs.c:314 src/straycats.c:276
#, c-format
msgid "warning: %s: whatis parse for %s(%s) failed"
msgstr ""
-#: src/check_mandirs.c:329 src/check_mandirs.c:498 src/mandb.c:883
+#: src/check_mandirs.c:341 src/check_mandirs.c:511 src/mandb.c:877
#: src/straycats.c:84 src/straycats.c:303 src/ult_src.c:81
#, c-format
msgid "can't search directory %s"
msgstr ""
-#: src/check_mandirs.c:378 src/man.c:1687
+#: src/check_mandirs.c:390 src/man.c:1689
#, c-format
msgid "can't chown %s"
msgstr ""
-#: src/check_mandirs.c:400 src/check_mandirs.c:423
+#: src/check_mandirs.c:412 src/check_mandirs.c:435
#, c-format
msgid "warning: cannot create catdir %s"
msgstr ""
-#: src/check_mandirs.c:455 src/man.c:1699 src/mandb.c:233
+#: src/check_mandirs.c:467 src/man.c:1701 src/mandb.c:232
#, c-format
msgid "can't chmod %s"
msgstr ""
-#: src/check_mandirs.c:503
+#: src/check_mandirs.c:516
#, c-format
msgid "can't change to directory %s"
msgstr ""
-#: src/check_mandirs.c:553
+#: src/check_mandirs.c:566
#, c-format
msgid "can't create index cache %s"
msgstr ""
-#: src/check_mandirs.c:578
+#: src/check_mandirs.c:591
#, c-format
msgid "Updating index cache for path `%s/%s'. Wait..."
msgstr ""
-#: src/check_mandirs.c:640 src/check_mandirs.c:701
+#: src/check_mandirs.c:653 src/check_mandirs.c:714
msgid "done.\n"
msgstr ""
-#: src/check_mandirs.c:963
+#: src/check_mandirs.c:977
#, c-format
msgid "Purging old database entries in %s...\n"
msgstr ""
@@ -239,49 +239,49 @@ msgstr ""
msgid "warning: %s: ignoring bogus filename"
msgstr ""
-#: src/globbing_test.c:59
+#: src/globbing_test.c:55
msgid "PATH SECTION NAME"
msgstr ""
-#: src/globbing_test.c:63 src/man.c:292
+#: src/globbing_test.c:59 src/man.c:292
msgid "EXTENSION"
msgstr ""
-#: src/globbing_test.c:63 src/man.c:293
+#: src/globbing_test.c:59 src/man.c:293
msgid "limit search to extension type EXTENSION"
msgstr ""
-#: src/globbing_test.c:64 src/man.c:294
+#: src/globbing_test.c:60 src/man.c:294
msgid "look for pages case-insensitively (default)"
msgstr ""
-#: src/globbing_test.c:65 src/man.c:295
+#: src/globbing_test.c:61 src/man.c:295
msgid "look for pages case-sensitively"
msgstr ""
-#: src/globbing_test.c:66
+#: src/globbing_test.c:62
msgid "interpret page name as a regex"
msgstr ""
-#: src/globbing_test.c:67
+#: src/globbing_test.c:63
msgid "the page name contains wildcards"
msgstr ""
-#: src/lexgrog.l:691
+#: src/lexgrog.l:701
#, c-format
msgid "warning: whatis for %s exceeds %d byte, truncating."
msgid_plural "warning: whatis for %s exceeds %d bytes, truncating."
msgstr[0] ""
msgstr[1] ""
-#: src/lexgrog.l:844 src/man.c:2268 src/man.c:2350 src/man.c:2448
+#: src/lexgrog.l:854 src/man.c:2270 src/man.c:2354 src/man.c:2452
#: src/manconv_main.c:168 src/straycats.c:218 src/ult_src.c:321
-#: src/ult_src.c:335 src/zsoelim.l:512
+#: src/ult_src.c:335 src/zsoelim.l:519
#, c-format
msgid "can't open %s"
msgstr ""
-#: src/lexgrog_test.c:69 src/zsoelim_main.c:66
+#: src/lexgrog_test.c:69 src/zsoelim_main.c:65
msgid "FILE..."
msgstr ""
@@ -379,7 +379,7 @@ msgstr ""
msgid "Finding manual pages:"
msgstr ""
-#: src/man.c:287 src/whatis.c:138
+#: src/man.c:287 src/whatis.c:137
msgid "LOCALE"
msgstr ""
@@ -387,15 +387,15 @@ msgstr ""
msgid "define the locale for this particular man search"
msgstr ""
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "SYSTEM"
msgstr ""
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "use manual pages from other systems"
msgstr ""
-#: src/man.c:290 src/whatis.c:134
+#: src/man.c:290 src/whatis.c:133
msgid "LIST"
msgstr ""
@@ -503,103 +503,103 @@ msgstr ""
msgid "use groff and force it to produce ditroff"
msgstr ""
-#: src/man.c:597 src/man.c:733
+#: src/man.c:599 src/man.c:735
#, c-format
msgid "No manual entry for %s\n"
msgstr ""
-#: src/man.c:599
+#: src/man.c:601
#, c-format
msgid "(Alternatively, what manual page do you want from section %s?)\n"
msgstr ""
-#: src/man.c:603
+#: src/man.c:605
msgid "What manual page do you want?\n"
msgstr ""
-#: src/man.c:730
+#: src/man.c:732
#, c-format
msgid "No manual entry for %s in section %s\n"
msgstr ""
-#: src/man.c:739
+#: src/man.c:741
#, c-format
msgid "See '%s' for help when manual pages are not available.\n"
msgstr ""
-#: src/man.c:1347
+#: src/man.c:1349
#, c-format
msgid "ignoring unknown preprocessor `%c'"
msgstr ""
-#: src/man.c:1710 src/mandb.c:224
+#: src/man.c:1712 src/mandb.c:223
#, c-format
msgid "can't rename %s to %s"
msgstr ""
-#: src/man.c:1727
+#: src/man.c:1729
#, c-format
msgid "can't set times on %s"
msgstr ""
-#: src/man.c:1736 src/man.c:1773
+#: src/man.c:1738 src/man.c:1775
#, c-format
msgid "can't unlink %s"
msgstr ""
-#: src/man.c:1803
+#: src/man.c:1805
#, c-format
msgid "can't create temporary cat for %s"
msgstr ""
-#: src/man.c:1913
+#: src/man.c:1915
#, c-format
msgid "can't create temporary directory"
msgstr ""
-#: src/man.c:1924
+#: src/man.c:1926
#, c-format
msgid "can't open temporary file %s"
msgstr ""
-#: src/man.c:1954 src/man.c:1983
+#: src/man.c:1956 src/man.c:1985
#, c-format
msgid "can't remove directory %s"
msgstr ""
-#: src/man.c:2112
+#: src/man.c:2114
#, c-format
msgid "--Man-- next: %s [ view (return) | skip (Ctrl-D) | quit (Ctrl-C) ]\n"
msgstr ""
-#: src/man.c:2393
+#: src/man.c:2397
#, c-format
msgid ""
"\n"
"cannot write to %s in catman mode"
msgstr ""
-#: src/man.c:2474
+#: src/man.c:2477
#, c-format
msgid "Can't convert %s to cat name"
msgstr ""
-#: src/man.c:3203
+#: src/man.c:3206
#, c-format
msgid "%s: relying on whatis refs is deprecated\n"
msgstr ""
-#: src/man.c:3346 src/man.c:4196
+#: src/man.c:3349 src/man.c:4200
#, c-format
msgid "mandb command failed with exit status %d"
msgstr ""
-#: src/man.c:3548
+#: src/man.c:3551
#, c-format
msgid "internal error: candidate type %d out of range"
msgstr ""
-#: src/man.c:4137
+#: src/man.c:4141
msgid " Manual page "
msgstr ""
@@ -632,7 +632,7 @@ msgstr ""
msgid "encoding for output"
msgstr ""
-#: src/manconv_main.c:97 src/manpath.c:68
+#: src/manconv_main.c:97 src/manpath.c:66
msgid "produce fewer warnings"
msgstr ""
@@ -646,101 +646,101 @@ msgstr ""
msgid "must specify an output encoding"
msgstr ""
-#: src/mandb.c:112
+#: src/mandb.c:111
msgid "[MANPATH]"
msgstr ""
-#: src/mandb.c:116
+#: src/mandb.c:115
msgid "work quietly, except for 'bogus' warning"
msgstr ""
-#: src/mandb.c:117
+#: src/mandb.c:116
msgid "don't look for or add stray cats to the dbs"
msgstr ""
-#: src/mandb.c:118
+#: src/mandb.c:117
msgid "don't purge obsolete entries from the dbs"
msgstr ""
-#: src/mandb.c:119
+#: src/mandb.c:118
msgid "produce user databases only"
msgstr ""
-#: src/mandb.c:120
+#: src/mandb.c:119
msgid "create dbs from scratch, rather than updating"
msgstr ""
-#: src/mandb.c:121
+#: src/mandb.c:120
msgid "check manual pages for correctness"
msgstr ""
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "FILENAME"
msgstr ""
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "update just the entry for this filename"
msgstr ""
-#: src/mandb.c:217
+#: src/mandb.c:216
#, c-format
msgid "can't remove %s"
msgstr ""
-#: src/mandb.c:281
+#: src/mandb.c:280
#, c-format
msgid "can't write to %s"
msgstr ""
-#: src/mandb.c:286
+#: src/mandb.c:285
#, c-format
msgid "can't read from %s"
msgstr ""
-#: src/mandb.c:455
+#: src/mandb.c:457
#, c-format
msgid "Processing manual pages under %s...\n"
msgstr ""
-#: src/mandb.c:672 src/mandb.c:698
+#: src/mandb.c:666 src/mandb.c:692
#, c-format
msgid "Removing obsolete cat directory %s...\n"
msgstr ""
-#: src/mandb.c:848
+#: src/mandb.c:842
#, c-format
msgid "warning: no MANDB_MAP directives in %s, using your manpath"
msgstr ""
-#: src/mandb.c:920
+#: src/mandb.c:914
#, c-format
msgid "%d man subdirectory contained newer manual pages.\n"
msgid_plural "%d man subdirectories contained newer manual pages.\n"
msgstr[0] ""
msgstr[1] ""
-#: src/mandb.c:925
+#: src/mandb.c:919
#, c-format
msgid "%d manual page was added.\n"
msgid_plural "%d manual pages were added.\n"
msgstr[0] ""
msgstr[1] ""
-#: src/mandb.c:929
+#: src/mandb.c:923
#, c-format
msgid "%d stray cat was added.\n"
msgid_plural "%d stray cats were added.\n"
msgstr[0] ""
msgstr[1] ""
-#: src/mandb.c:934
+#: src/mandb.c:928
#, c-format
msgid "%d old database entry was purged.\n"
msgid_plural "%d old database entries were purged.\n"
msgstr[0] ""
msgstr[1] ""
-#: src/mandb.c:952
+#: src/mandb.c:946
#, c-format
msgid "No databases created."
msgstr ""
@@ -815,15 +815,15 @@ msgstr ""
msgid "warning: %s does not begin with %s"
msgstr ""
-#: src/manpath.c:65
+#: src/manpath.c:63
msgid "show relative catpaths"
msgstr ""
-#: src/manpath.c:66
+#: src/manpath.c:64
msgid "show the entire global manpath"
msgstr ""
-#: src/manpath.c:128
+#: src/manpath.c:126
#, c-format
msgid "warning: no global manpaths set in config file %s"
msgstr ""
@@ -853,95 +853,95 @@ msgstr ""
msgid "%s is self referencing"
msgstr ""
-#: src/whatis.c:123
+#: src/whatis.c:122
msgid "KEYWORD..."
msgstr ""
-#: src/whatis.c:124
+#: src/whatis.c:123
msgid "The --regex option is enabled by default."
msgstr ""
-#: src/whatis.c:128
+#: src/whatis.c:127
msgid "print verbose warning messages"
msgstr ""
-#: src/whatis.c:129
+#: src/whatis.c:128
msgid "interpret each keyword as a regex"
msgstr ""
-#: src/whatis.c:130
+#: src/whatis.c:129
msgid "search each keyword for exact match"
msgstr ""
-#: src/whatis.c:131
+#: src/whatis.c:130
msgid "the keyword(s) contain wildcards"
msgstr ""
-#: src/whatis.c:132
+#: src/whatis.c:131
msgid "require all keywords to match"
msgstr ""
-#: src/whatis.c:133
+#: src/whatis.c:132
msgid "do not trim output to terminal width"
msgstr ""
-#: src/whatis.c:134
+#: src/whatis.c:133
msgid "search only these sections (colon-separated)"
msgstr ""
-#: src/whatis.c:138
+#: src/whatis.c:137
msgid "define the locale for this search"
msgstr ""
-#: src/whatis.c:235
+#: src/whatis.c:234
#, c-format
msgid "%s what?\n"
msgstr ""
-#: src/whatis.c:412 src/whatis.c:430
+#: src/whatis.c:410 src/whatis.c:428
#, c-format
msgid "warning: %s contains a pointer loop"
msgstr ""
-#: src/whatis.c:424 src/whatis.c:432
+#: src/whatis.c:422 src/whatis.c:430
msgid "(unknown subject)"
msgstr ""
-#: src/whatis.c:863
+#: src/whatis.c:861
#, c-format
msgid "%s: nothing appropriate.\n"
msgstr ""
-#: src/zsoelim.l:171
+#: src/zsoelim.l:178
#, c-format
msgid "%s:%d: .so requests nested too deeply or are recursive"
msgstr ""
-#: src/zsoelim.l:186
+#: src/zsoelim.l:193
#, c-format
msgid "%s:%d: warning: failed .so request"
msgstr ""
-#: src/zsoelim.l:208
+#: src/zsoelim.l:215
#, c-format
msgid "%s:%d: warning: newline in .so request, ignoring"
msgstr ""
-#: src/zsoelim.l:268
+#: src/zsoelim.l:275
#, c-format
msgid "%s:%d: warning: malformed .lf request, ignoring"
msgstr ""
-#: src/zsoelim.l:278
+#: src/zsoelim.l:285
#, c-format
msgid "%s:%d: warning: newline in .lf request, ignoring"
msgstr ""
-#: src/zsoelim.l:318
+#: src/zsoelim.l:325
#, c-format
msgid "%s:%d: unterminated quote in roff request"
msgstr ""
-#: src/zsoelim_main.c:70
+#: src/zsoelim_main.c:69
msgid "compatibility switch (ignored)"
msgstr ""
diff --git a/po/nl.po b/po/nl.po
index 3d65ec47..31d038eb 100644
--- a/po/nl.po
+++ b/po/nl.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: man-db-2.5.7-pre1\n"
"Report-Msgid-Bugs-To: Colin Watson <cjwatson@debian.org>\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2009-11-16 08:36+0100\n"
"Last-Translator: Erwin Poeze <erwin.poeze@gmail.com>\n"
"Language-Team: Dutch <vertaling@vrijschrift.org>\n"
@@ -66,7 +66,7 @@ msgstr[1] "slechts %d velden in de inhoud"
msgid "bad fetch on multi key %s"
msgstr "onjuiste treffer voor multisleutel %s"
-#: libdb/db_lookup.c:443 src/whatis.c:739
+#: libdb/db_lookup.c:443 src/whatis.c:737
#, c-format
msgid "Database %s corrupted; rebuild with mandb --create"
msgstr "Database %s is beschadigd; maak deze opnieuw aan met 'mandb --create'"
@@ -76,28 +76,28 @@ msgstr "Database %s is beschadigd; maak deze opnieuw aan met 'mandb --create'"
msgid "warning: %s has no version identifier\n"
msgstr "waarschuwing: %s heeft geen versie-indicatie\n"
-#: libdb/db_ver.c:56
+#: libdb/db_ver.c:57
#, c-format
msgid "warning: %s is version %s, expecting %s\n"
msgstr "waarschuwing: %s heeft versie %s, terwijl %s verwacht wordt\n"
-#: libdb/db_ver.c:78
+#: libdb/db_ver.c:79
#, c-format
msgid "fatal: unable to insert version identifier into %s"
msgstr "fatale fout: kan geen versie-indicatie invoegen in %s"
-#: src/accessdb.c:61
+#: src/accessdb.c:59
msgid "[MAN DATABASE]"
msgstr "[MAN-GEGEVENSBANK]"
-#: src/accessdb.c:62
+#: src/accessdb.c:60
#, c-format
msgid "The man database defaults to %s%s."
msgstr "De standaard man-database is %s%s."
-#: src/accessdb.c:65 src/catman.c:103 src/globbing_test.c:62
-#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:115
-#: src/manpath.c:67 src/whatis.c:127 src/zsoelim_main.c:69
+#: src/accessdb.c:63 src/catman.c:100 src/globbing_test.c:58
+#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:114
+#: src/manpath.c:65 src/whatis.c:126 src/zsoelim_main.c:68
msgid "emit debugging messages"
msgstr "debug-uitvoer produceren"
@@ -106,44 +106,44 @@ msgstr "debug-uitvoer produceren"
msgid "can't open %s for reading"
msgstr "kan %s niet openen om te lezen"
-#: src/catman.c:100
+#: src/catman.c:97
msgid "[SECTION...]"
msgstr "[SECTIE...]"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "PATH"
msgstr "PAD"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "set search path for manual pages to PATH"
msgstr "pad waarin naar man-pagina's gezocht moet worden"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "FILE"
msgstr "BESTAND"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "use this user configuration file"
msgstr "te gebruiken configuratiebestand"
-#: src/catman.c:198
+#: src/catman.c:195
#, c-format
msgid "man command failed with exit status %d"
msgstr "'man' is mislukt met afsluitwaarde %d"
-#: src/catman.c:237
+#: src/catman.c:235
#, c-format
msgid "cannot read database %s"
msgstr "kan database %s niet lezen"
-#: src/catman.c:280
+#: src/catman.c:278
#, c-format
msgid "NULL content for key: %s"
msgstr "NULL-inhoud voor sleutel %s"
-#: src/catman.c:295
+#: src/catman.c:294
#, c-format
msgid ""
"\n"
@@ -152,12 +152,12 @@ msgstr ""
"\n"
"Bijwerken van cat-bestanden voor sectie %s van man-hiërachie %s\n"
-#: src/catman.c:349
+#: src/catman.c:348
#, c-format
msgid "cannot write within %s"
msgstr "kan in %s niet schrijven"
-#: src/catman.c:426
+#: src/catman.c:425
#, c-format
msgid "unable to update %s"
msgstr "kan %s niet bijwerken"
@@ -167,69 +167,69 @@ msgstr "kan %s niet bijwerken"
msgid "warning: %s/man%s/%s.%s*: competing extensions"
msgstr "waarschuwing: botsende subsecties in %s/man%s/%s.%s*"
-#: src/check_mandirs.c:114 src/check_mandirs.c:613
+#: src/check_mandirs.c:126 src/check_mandirs.c:626
#, c-format
msgid "can't update index cache %s"
msgstr "kan index-cache %s niet bijwerken"
-#: src/check_mandirs.c:242
+#: src/check_mandirs.c:254
#, c-format
msgid "warning: %s: bad symlink or ROFF `.so' request"
msgstr ""
"waarschuwing: %s: onjuiste symbolische koppeling of onjuist roff-'.so'-"
"verzoek"
-#: src/check_mandirs.c:298
+#: src/check_mandirs.c:310
#, c-format
msgid "warning: %s: ignoring empty file"
msgstr "waarschuwing: %s: leeg bestand wordt genegeerd"
-#: src/check_mandirs.c:302 src/straycats.c:276
+#: src/check_mandirs.c:314 src/straycats.c:276
#, c-format
msgid "warning: %s: whatis parse for %s(%s) failed"
msgstr "waarschuwing: %s: ontleden van %s(%s) voor 'whatis' is mislukt"
-#: src/check_mandirs.c:329 src/check_mandirs.c:498 src/mandb.c:883
+#: src/check_mandirs.c:341 src/check_mandirs.c:511 src/mandb.c:877
#: src/straycats.c:84 src/straycats.c:303 src/ult_src.c:81
#, c-format
msgid "can't search directory %s"
msgstr "kan map %s niet doorzoeken"
-#: src/check_mandirs.c:378 src/man.c:1687
+#: src/check_mandirs.c:390 src/man.c:1689
#, c-format
msgid "can't chown %s"
msgstr "kan eigenaar van %s niet wijzigen"
-#: src/check_mandirs.c:400 src/check_mandirs.c:423
+#: src/check_mandirs.c:412 src/check_mandirs.c:435
#, c-format
msgid "warning: cannot create catdir %s"
msgstr "waarschuwing: kan cat-map %s niet aanmaken"
-#: src/check_mandirs.c:455 src/man.c:1699 src/mandb.c:233
+#: src/check_mandirs.c:467 src/man.c:1701 src/mandb.c:232
#, c-format
msgid "can't chmod %s"
msgstr "kan de toegangsrechten van %s niet wijzigen"
-#: src/check_mandirs.c:503
+#: src/check_mandirs.c:516
#, c-format
msgid "can't change to directory %s"
msgstr "kan niet naar map %s gaan"
-#: src/check_mandirs.c:553
+#: src/check_mandirs.c:566
#, c-format
msgid "can't create index cache %s"
msgstr "kan index-cache %s niet aanmaken"
-#: src/check_mandirs.c:578
+#: src/check_mandirs.c:591
#, c-format
msgid "Updating index cache for path `%s/%s'. Wait..."
msgstr "Bijwerken van index-cache voor pad '%s/%s'. Even geduld..."
-#: src/check_mandirs.c:640 src/check_mandirs.c:701
+#: src/check_mandirs.c:653 src/check_mandirs.c:714
msgid "done.\n"
msgstr "voltooid.\n"
-#: src/check_mandirs.c:963
+#: src/check_mandirs.c:977
#, c-format
msgid "Purging old database entries in %s...\n"
msgstr "Verwijderen van oude databaseitems uit %s...\n"
@@ -244,49 +244,49 @@ msgstr "waarschuwing: opslaan van item voor %s(%s) is mislukt"
msgid "warning: %s: ignoring bogus filename"
msgstr "waarschuwing: %s: onjuiste bestandsnaam wordt genegeerd"
-#: src/globbing_test.c:59
+#: src/globbing_test.c:55
msgid "PATH SECTION NAME"
msgstr "PAD SECTIE NAAM"
-#: src/globbing_test.c:63 src/man.c:292
+#: src/globbing_test.c:59 src/man.c:292
msgid "EXTENSION"
msgstr "SUBSECTIE"
-#: src/globbing_test.c:63 src/man.c:293
+#: src/globbing_test.c:59 src/man.c:293
msgid "limit search to extension type EXTENSION"
msgstr "het zoeken beperken tot deze subsectie"
-#: src/globbing_test.c:64 src/man.c:294
+#: src/globbing_test.c:60 src/man.c:294
msgid "look for pages case-insensitively (default)"
msgstr "hoofdletterongevoelig naar pagina's zoeken"
-#: src/globbing_test.c:65 src/man.c:295
+#: src/globbing_test.c:61 src/man.c:295
msgid "look for pages case-sensitively"
msgstr "hoofdlettergevoelig naar pagina's zoeken"
-#: src/globbing_test.c:66
+#: src/globbing_test.c:62
msgid "interpret page name as a regex"
msgstr "paginanaam als reguliere expressies begrijpen"
-#: src/globbing_test.c:67
+#: src/globbing_test.c:63
msgid "the page name contains wildcards"
msgstr "de paginanaam bevat jokertekens"
-#: src/lexgrog.l:691
+#: src/lexgrog.l:701
#, fuzzy, c-format
msgid "warning: whatis for %s exceeds %d byte, truncating."
msgid_plural "warning: whatis for %s exceeds %d bytes, truncating."
msgstr[0] "waarschuwing: de 'whatis' voor %s is meer dan %d bytes -- afgekapt"
msgstr[1] "waarschuwing: de 'whatis' voor %s is meer dan %d bytes -- afgekapt"
-#: src/lexgrog.l:844 src/man.c:2268 src/man.c:2350 src/man.c:2448
+#: src/lexgrog.l:854 src/man.c:2270 src/man.c:2354 src/man.c:2452
#: src/manconv_main.c:168 src/straycats.c:218 src/ult_src.c:321
-#: src/ult_src.c:335 src/zsoelim.l:512
+#: src/ult_src.c:335 src/zsoelim.l:519
#, c-format
msgid "can't open %s"
msgstr "kan %s niet openen"
-#: src/lexgrog_test.c:69 src/zsoelim_main.c:66
+#: src/lexgrog_test.c:69 src/zsoelim_main.c:65
msgid "FILE..."
msgstr "BESTAND..."
@@ -384,7 +384,7 @@ msgstr "brontekst uitvoeren omgezet naar deze codering"
msgid "Finding manual pages:"
msgstr "Gevonden man-pagina's:"
-#: src/man.c:287 src/whatis.c:138
+#: src/man.c:287 src/whatis.c:137
msgid "LOCALE"
msgstr "TAALCODE"
@@ -392,15 +392,15 @@ msgstr "TAALCODE"
msgid "define the locale for this particular man search"
msgstr "te gebruiken taalregio voor deze zoekopdracht"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "SYSTEM"
msgstr "SYSTEEMNAAM"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "use manual pages from other systems"
msgstr "man-pagina's van deze andere Unix-systemen tonen"
-#: src/man.c:290 src/whatis.c:134
+#: src/man.c:290 src/whatis.c:133
msgid "LIST"
msgstr "SECTIES"
@@ -514,77 +514,77 @@ msgstr ""
msgid "use groff and force it to produce ditroff"
msgstr "'groff' gebruiken en \"ditroff\" laten produceren"
-#: src/man.c:597 src/man.c:733
+#: src/man.c:599 src/man.c:735
#, c-format
msgid "No manual entry for %s\n"
msgstr "Er is geen pagina over %s\n"
-#: src/man.c:599
+#: src/man.c:601
#, c-format
msgid "(Alternatively, what manual page do you want from section %s?)\n"
msgstr "(Of anders: welke man-pagina wilt u zien uit sectie %s?)\n"
-#: src/man.c:603
+#: src/man.c:605
msgid "What manual page do you want?\n"
msgstr "Welke man-pagina wilt u zien?\n"
-#: src/man.c:730
+#: src/man.c:732
#, c-format
msgid "No manual entry for %s in section %s\n"
msgstr "Er is geen pagina over %s in sectie %s\n"
-#: src/man.c:739
+#: src/man.c:741
#, c-format
msgid "See '%s' for help when manual pages are not available.\n"
msgstr "Zie '%s' voor hulp als man-pagina's niet beschikbaar zijn.\n"
-#: src/man.c:1347
+#: src/man.c:1349
#, c-format
msgid "ignoring unknown preprocessor `%c'"
msgstr "onbekende preprocessor '%c' wordt genegeerd"
-#: src/man.c:1710 src/mandb.c:224
+#: src/man.c:1712 src/mandb.c:223
#, c-format
msgid "can't rename %s to %s"
msgstr "kan %s niet hernoemen naar %s"
-#: src/man.c:1727
+#: src/man.c:1729
#, c-format
msgid "can't set times on %s"
msgstr "kan tijdsstempels van %s niet zetten"
-#: src/man.c:1736 src/man.c:1773
+#: src/man.c:1738 src/man.c:1775
#, c-format
msgid "can't unlink %s"
msgstr "kan %s niet verwijderen"
-#: src/man.c:1803
+#: src/man.c:1805
#, c-format
msgid "can't create temporary cat for %s"
msgstr "kan geen tijdelijk cat-bestand aanmaken voor %s"
-#: src/man.c:1913
+#: src/man.c:1915
#, c-format
msgid "can't create temporary directory"
msgstr "kan geen tijdelijk map aanmaken"
-#: src/man.c:1924
+#: src/man.c:1926
#, c-format
msgid "can't open temporary file %s"
msgstr "kan tijdelijk bestand %s niet openen"
-#: src/man.c:1954 src/man.c:1983
+#: src/man.c:1956 src/man.c:1985
#, c-format
msgid "can't remove directory %s"
msgstr "kan map %s niet verwijderen"
-#: src/man.c:2112
+#: src/man.c:2114
#, c-format
msgid "--Man-- next: %s [ view (return) | skip (Ctrl-D) | quit (Ctrl-C) ]\n"
msgstr ""
"--Man-- volgende: %s [ Enter=zien | Ctrl-D=overslaan | Ctrl-C=afsluiten ]\n"
-#: src/man.c:2393
+#: src/man.c:2397
#, c-format
msgid ""
"\n"
@@ -593,27 +593,27 @@ msgstr ""
"\n"
"kan niet naar %s schrijven in 'catman'-modus"
-#: src/man.c:2474
+#: src/man.c:2477
#, c-format
msgid "Can't convert %s to cat name"
msgstr "Kan %s niet omzetten naar een cat-naam"
-#: src/man.c:3203
+#: src/man.c:3206
#, c-format
msgid "%s: relying on whatis refs is deprecated\n"
msgstr "%s: vertrouwen op 'whatis'-referenties wordt ontraden\n"
-#: src/man.c:3346 src/man.c:4196
+#: src/man.c:3349 src/man.c:4200
#, c-format
msgid "mandb command failed with exit status %d"
msgstr "'mandb' is mislukt met afsluitwaarde %d"
-#: src/man.c:3548
+#: src/man.c:3551
#, c-format
msgid "internal error: candidate type %d out of range"
msgstr "**interne fout**: kandidaattype %d valt buiten bereik"
-#: src/man.c:4137
+#: src/man.c:4141
msgid " Manual page "
msgstr " Handleidingspagina "
@@ -646,7 +646,7 @@ msgstr "CODERING"
msgid "encoding for output"
msgstr "codering van de uitvoer"
-#: src/manconv_main.c:97 src/manpath.c:68
+#: src/manconv_main.c:97 src/manpath.c:66
msgid "produce fewer warnings"
msgstr "minder waarschuwingen produceren"
@@ -660,74 +660,74 @@ msgstr "specificatie van een invoercodering ontbreekt"
msgid "must specify an output encoding"
msgstr "specificatie van een uitvoercodering ontbreekt"
-#: src/mandb.c:112
+#: src/mandb.c:111
msgid "[MANPATH]"
msgstr "[MANPAD]"
-#: src/mandb.c:116
+#: src/mandb.c:115
msgid "work quietly, except for 'bogus' warning"
msgstr "minder waarschuwingen produceren"
-#: src/mandb.c:117
+#: src/mandb.c:116
msgid "don't look for or add stray cats to the dbs"
msgstr "losse cat-bestanden niet aan database toevoegen"
-#: src/mandb.c:118
+#: src/mandb.c:117
msgid "don't purge obsolete entries from the dbs"
msgstr "verouderde items niet uit database verwijderen"
-#: src/mandb.c:119
+#: src/mandb.c:118
msgid "produce user databases only"
msgstr "alleen gebruikersdatabase produceren"
-#: src/mandb.c:120
+#: src/mandb.c:119
msgid "create dbs from scratch, rather than updating"
msgstr "database niet bijwerken maar opnieuw aanmaken"
-#: src/mandb.c:121
+#: src/mandb.c:120
msgid "check manual pages for correctness"
msgstr "de man-pagina's op correctheid controleren"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "FILENAME"
msgstr "BESTAND"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "update just the entry for this filename"
msgstr "alleen het item voor dit bestand bijwerken"
-#: src/mandb.c:217
+#: src/mandb.c:216
#, c-format
msgid "can't remove %s"
msgstr "kan %s niet verwijderen"
-#: src/mandb.c:281
+#: src/mandb.c:280
#, c-format
msgid "can't write to %s"
msgstr "kan niet naar %s schrijven"
-#: src/mandb.c:286
+#: src/mandb.c:285
#, c-format
msgid "can't read from %s"
msgstr "kan niet uit %s lezen"
-#: src/mandb.c:455
+#: src/mandb.c:457
#, c-format
msgid "Processing manual pages under %s...\n"
msgstr "Verwerken van pagina's onder %s...\n"
-#: src/mandb.c:672 src/mandb.c:698
+#: src/mandb.c:666 src/mandb.c:692
#, fuzzy, c-format
msgid "Removing obsolete cat directory %s...\n"
msgstr "Zoeken naar losse cat-bestanden onder %s...\n"
-#: src/mandb.c:848
+#: src/mandb.c:842
#, c-format
msgid "warning: no MANDB_MAP directives in %s, using your manpath"
msgstr ""
"waarschuwing: geen 'MANDB_MAP'-opdrachten in %s; uw man-pad wordt gebruikt"
-#: src/mandb.c:920
+#: src/mandb.c:914
#, fuzzy, c-format
msgid "%d man subdirectory contained newer manual pages.\n"
msgid_plural "%d man subdirectories contained newer manual pages.\n"
@@ -738,28 +738,28 @@ msgstr[1] ""
"%d man-mappen bevatten nieuwere pagina's,\n"
"%d man-pagina's werden toegevoegd.\n"
-#: src/mandb.c:925
+#: src/mandb.c:919
#, fuzzy, c-format
msgid "%d manual page was added.\n"
msgid_plural "%d manual pages were added.\n"
msgstr[0] " Handleidingspagina "
msgstr[1] " Handleidingspagina "
-#: src/mandb.c:929
+#: src/mandb.c:923
#, fuzzy, c-format
msgid "%d stray cat was added.\n"
msgid_plural "%d stray cats were added.\n"
msgstr[0] "%d losse cat-bestanden werden toegevoegd.\n"
msgstr[1] "%d losse cat-bestanden werden toegevoegd.\n"
-#: src/mandb.c:934
+#: src/mandb.c:928
#, fuzzy, c-format
msgid "%d old database entry was purged.\n"
msgid_plural "%d old database entries were purged.\n"
msgstr[0] "%d verouderde databaseitems werden verwijderd.\n"
msgstr[1] "%d verouderde databaseitems werden verwijderd.\n"
-#: src/mandb.c:952
+#: src/mandb.c:946
#, c-format
msgid "No databases created."
msgstr "Geen databases aangemaakt."
@@ -834,15 +834,15 @@ msgstr "kan huidige map niet bepalen"
msgid "warning: %s does not begin with %s"
msgstr "waarschuwing: %s begint niet met %s"
-#: src/manpath.c:65
+#: src/manpath.c:63
msgid "show relative catpaths"
msgstr "de relatieve cat-paden weergeven"
-#: src/manpath.c:66
+#: src/manpath.c:64
msgid "show the entire global manpath"
msgstr "het volledige globale man-pad weergeven"
-#: src/manpath.c:128
+#: src/manpath.c:126
#, c-format
msgid "warning: no global manpaths set in config file %s"
msgstr ""
@@ -873,97 +873,97 @@ msgstr "waarschuwing: kan index-cache %s niet bijwerken"
msgid "%s is self referencing"
msgstr "%s refereert aan zichzelf"
-#: src/whatis.c:123
+#: src/whatis.c:122
msgid "KEYWORD..."
msgstr "SLEUTELWOORD..."
-#: src/whatis.c:124
+#: src/whatis.c:123
msgid "The --regex option is enabled by default."
msgstr "De optie '--regex' is standaard."
-#: src/whatis.c:128
+#: src/whatis.c:127
msgid "print verbose warning messages"
msgstr "breedsprakige waarschuwingen produceren"
-#: src/whatis.c:129
+#: src/whatis.c:128
msgid "interpret each keyword as a regex"
msgstr "sleutelwoorden als reguliere expressies begrijpen"
-#: src/whatis.c:130
+#: src/whatis.c:129
msgid "search each keyword for exact match"
msgstr "sleutelwoorden moeten exact overeenkomen"
-#: src/whatis.c:131
+#: src/whatis.c:130
msgid "the keyword(s) contain wildcards"
msgstr "de sleutelwoorden bevatten jokertekens"
-#: src/whatis.c:132
+#: src/whatis.c:131
msgid "require all keywords to match"
msgstr "alle sleutelwoorden moeten gevonden worden"
-#: src/whatis.c:133
+#: src/whatis.c:132
msgid "do not trim output to terminal width"
msgstr "de uitvoer niet aan de terminalbreedte aanpassen"
-#: src/whatis.c:134
+#: src/whatis.c:133
#, fuzzy
msgid "search only these sections (colon-separated)"
msgstr "alleen in deze sectie zoeken"
-#: src/whatis.c:138
+#: src/whatis.c:137
msgid "define the locale for this search"
msgstr "te gebruiken taalregio voor deze zoekopdracht"
-#: src/whatis.c:235
+#: src/whatis.c:234
#, c-format
msgid "%s what?\n"
msgstr "%s wat?\n"
-#: src/whatis.c:412 src/whatis.c:430
+#: src/whatis.c:410 src/whatis.c:428
#, c-format
msgid "warning: %s contains a pointer loop"
msgstr "waarschuwing: %s bevat een pointer-lus"
-#: src/whatis.c:424 src/whatis.c:432
+#: src/whatis.c:422 src/whatis.c:430
msgid "(unknown subject)"
msgstr "(onderwerp onbekend)"
-#: src/whatis.c:863
+#: src/whatis.c:861
#, c-format
msgid "%s: nothing appropriate.\n"
msgstr "%s: niets gevonden.\n"
-#: src/zsoelim.l:171
+#: src/zsoelim.l:178
#, c-format
msgid "%s:%d: .so requests nested too deeply or are recursive"
msgstr "%s:%d: '.so'-verzoeken zijn te diep genest of recursief"
-#: src/zsoelim.l:186
+#: src/zsoelim.l:193
#, c-format
msgid "%s:%d: warning: failed .so request"
msgstr "%s:%d: waarschuwing: '.so'-verzoek is mislukt"
-#: src/zsoelim.l:208
+#: src/zsoelim.l:215
#, c-format
msgid "%s:%d: warning: newline in .so request, ignoring"
msgstr "%s:%d: waarschuwing: regeleindeteken in '.so'-verzoek -- genegeerd"
-#: src/zsoelim.l:268
+#: src/zsoelim.l:275
#, c-format
msgid "%s:%d: warning: malformed .lf request, ignoring"
msgstr "%s:%d: waarschuwing: onjuist '.lf'-verzoek -- genegeerd"
-#: src/zsoelim.l:278
+#: src/zsoelim.l:285
#, c-format
msgid "%s:%d: warning: newline in .lf request, ignoring"
msgstr "%s:%d: waarschuwing: regeleindeteken in '.lf'-verzoek -- genegeerd"
-#: src/zsoelim.l:318
+#: src/zsoelim.l:325
#, c-format
msgid "%s:%d: unterminated quote in roff request"
msgstr "%s:%d: onafgesloten aanhaling in 'roff'-verzoek"
-#: src/zsoelim_main.c:70
+#: src/zsoelim_main.c:69
msgid "compatibility switch (ignored)"
msgstr "compatibiliteitsoptie (genegeerd)"
diff --git a/po/pl.po b/po/pl.po
index 3a1ff1a7..4f409fb7 100644
--- a/po/pl.po
+++ b/po/pl.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: man-db 2.7.6.1\n"
"Report-Msgid-Bugs-To: Colin Watson <cjwatson@debian.org>\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2016-12-21 20:46+0100\n"
"Last-Translator: Robert Luberda <robert@debian.org>\n"
"Language-Team: Polish <translation-team-pl@lists.sourceforge.net>\n"
@@ -68,7 +68,7 @@ msgstr[2] "tylko %d pól w zmiennej content"
msgid "bad fetch on multi key %s"
msgstr "błąd pobierania klucza wielowymiarowego %s"
-#: libdb/db_lookup.c:443 src/whatis.c:739
+#: libdb/db_lookup.c:443 src/whatis.c:737
#, c-format
msgid "Database %s corrupted; rebuild with mandb --create"
msgstr ""
@@ -80,28 +80,28 @@ msgstr ""
msgid "warning: %s has no version identifier\n"
msgstr "ostrzeżenie: brak identyfikatora wersji w %s\n"
-#: libdb/db_ver.c:56
+#: libdb/db_ver.c:57
#, c-format
msgid "warning: %s is version %s, expecting %s\n"
msgstr "ostrzeżenie: %s jest w wersji %s, podczas gdy oczekiwano %s\n"
-#: libdb/db_ver.c:78
+#: libdb/db_ver.c:79
#, c-format
msgid "fatal: unable to insert version identifier into %s"
msgstr "błąd krytyczny: nie można dodać identyfikatora wersji do %s"
-#: src/accessdb.c:61
+#: src/accessdb.c:59
msgid "[MAN DATABASE]"
msgstr "[BAZA DANYCH MAN]"
-#: src/accessdb.c:62
+#: src/accessdb.c:60
#, c-format
msgid "The man database defaults to %s%s."
msgstr "Domyślną bazą danych jest %s%s."
-#: src/accessdb.c:65 src/catman.c:103 src/globbing_test.c:62
-#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:115
-#: src/manpath.c:67 src/whatis.c:127 src/zsoelim_main.c:69
+#: src/accessdb.c:63 src/catman.c:100 src/globbing_test.c:58
+#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:114
+#: src/manpath.c:65 src/whatis.c:126 src/zsoelim_main.c:68
msgid "emit debugging messages"
msgstr "wyświetla komunikaty diagnostyczne"
@@ -110,45 +110,45 @@ msgstr "wyświetla komunikaty diagnostyczne"
msgid "can't open %s for reading"
msgstr "nie można otworzyć %s do odczytu"
-#: src/catman.c:100
+#: src/catman.c:97
msgid "[SECTION...]"
msgstr "[SEKCJA...]"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "PATH"
msgstr "ŚCIEŻKA"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "set search path for manual pages to PATH"
msgstr "ustawia ścieżkę wyszukiwania stron podręcznika na ŚCIEŻKĘ"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "FILE"
msgstr "PLIK"
#
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "use this user configuration file"
msgstr "używa tego pliku konfiguracyjnego użytkownika"
-#: src/catman.c:198
+#: src/catman.c:195
#, c-format
msgid "man command failed with exit status %d"
msgstr "polecenie man zakończyło się błędem %d"
-#: src/catman.c:237
+#: src/catman.c:235
#, c-format
msgid "cannot read database %s"
msgstr "nie można odczytać bazy danych %s"
-#: src/catman.c:280
+#: src/catman.c:278
#, c-format
msgid "NULL content for key: %s"
msgstr "Pusta (NULL) zawartość klucza %s"
-#: src/catman.c:295
+#: src/catman.c:294
#, c-format
msgid ""
"\n"
@@ -157,12 +157,12 @@ msgstr ""
"\n"
"Aktualizowanie preformatowanych stron w sekcji %s hierarchii stron %s\n"
-#: src/catman.c:349
+#: src/catman.c:348
#, c-format
msgid "cannot write within %s"
msgstr "nie można zapisać w %s"
-#: src/catman.c:426
+#: src/catman.c:425
#, c-format
msgid "unable to update %s"
msgstr "nie można zaktualizować %s"
@@ -172,68 +172,68 @@ msgstr "nie można zaktualizować %s"
msgid "warning: %s/man%s/%s.%s*: competing extensions"
msgstr "ostrzeżenie: %s/man%s/%s.%s*: konkurujące rozszerzenia"
-#: src/check_mandirs.c:114 src/check_mandirs.c:613
+#: src/check_mandirs.c:126 src/check_mandirs.c:626
#, c-format
msgid "can't update index cache %s"
msgstr "nie można zaktualizować bufora indeksu %s"
-#: src/check_mandirs.c:242
+#: src/check_mandirs.c:254
#, c-format
msgid "warning: %s: bad symlink or ROFF `.so' request"
msgstr ""
"ostrzeżenie: %s złe dowiązanie symboliczne lub błędne żądanie \".so\" ROFF"
-#: src/check_mandirs.c:298
+#: src/check_mandirs.c:310
#, c-format
msgid "warning: %s: ignoring empty file"
msgstr "ostrzeżenie: %s: ignorowanie pustego pliku"
-#: src/check_mandirs.c:302 src/straycats.c:276
+#: src/check_mandirs.c:314 src/straycats.c:276
#, c-format
msgid "warning: %s: whatis parse for %s(%s) failed"
msgstr "ostrzeżenie: %s: przetwarzanie whatis %s(%s) się nie powiodło"
-#: src/check_mandirs.c:329 src/check_mandirs.c:498 src/mandb.c:883
+#: src/check_mandirs.c:341 src/check_mandirs.c:511 src/mandb.c:877
#: src/straycats.c:84 src/straycats.c:303 src/ult_src.c:81
#, c-format
msgid "can't search directory %s"
msgstr "nie można przeszukać katalogu %s"
-#: src/check_mandirs.c:378 src/man.c:1687
+#: src/check_mandirs.c:390 src/man.c:1689
#, c-format
msgid "can't chown %s"
msgstr "nie można zmienić właściciela %s"
-#: src/check_mandirs.c:400 src/check_mandirs.c:423
+#: src/check_mandirs.c:412 src/check_mandirs.c:435
#, c-format
msgid "warning: cannot create catdir %s"
msgstr "ostrzeżenie: błąd tworzenia katalogu preformatowanych stron %s"
-#: src/check_mandirs.c:455 src/man.c:1699 src/mandb.c:233
+#: src/check_mandirs.c:467 src/man.c:1701 src/mandb.c:232
#, c-format
msgid "can't chmod %s"
msgstr "nie można zmienić praw dostępu %s"
-#: src/check_mandirs.c:503
+#: src/check_mandirs.c:516
#, c-format
msgid "can't change to directory %s"
msgstr "nie można przejść do katalogu %s"
-#: src/check_mandirs.c:553
+#: src/check_mandirs.c:566
#, c-format
msgid "can't create index cache %s"
msgstr "nie można utworzyć bufora indeksu %s"
-#: src/check_mandirs.c:578
+#: src/check_mandirs.c:591
#, c-format
msgid "Updating index cache for path `%s/%s'. Wait..."
msgstr "Aktualizowanie bufora indeksu dla ścieżki \"%s/%s\". Proszę czekać..."
-#: src/check_mandirs.c:640 src/check_mandirs.c:701
+#: src/check_mandirs.c:653 src/check_mandirs.c:714
msgid "done.\n"
msgstr "zakończono.\n"
-#: src/check_mandirs.c:963
+#: src/check_mandirs.c:977
#, c-format
msgid "Purging old database entries in %s...\n"
msgstr "Usuwanie starych wpisów w bazie danych %s...\n"
@@ -248,35 +248,35 @@ msgstr "ostrzeżenie: błąd podczas zachowywania wpisu dla %s(%s)"
msgid "warning: %s: ignoring bogus filename"
msgstr "ostrzeżenie: %s: ignorowanie niepoprawnej nazwy pliku"
-#: src/globbing_test.c:59
+#: src/globbing_test.c:55
msgid "PATH SECTION NAME"
msgstr "ŚCIEŻKA SEKCJA NAZWA"
-#: src/globbing_test.c:63 src/man.c:292
+#: src/globbing_test.c:59 src/man.c:292
msgid "EXTENSION"
msgstr "ROZSZERZENIE"
-#: src/globbing_test.c:63 src/man.c:293
+#: src/globbing_test.c:59 src/man.c:293
msgid "limit search to extension type EXTENSION"
msgstr "ogranicza wyszukiwanie do podanego typu ROZSZERZENIA"
-#: src/globbing_test.c:64 src/man.c:294
+#: src/globbing_test.c:60 src/man.c:294
msgid "look for pages case-insensitively (default)"
msgstr "wyszukuje strony ignorując wielkość liter (domyślnie)"
-#: src/globbing_test.c:65 src/man.c:295
+#: src/globbing_test.c:61 src/man.c:295
msgid "look for pages case-sensitively"
msgstr "wyszukuje strony biorąc pod uwagę wielkość liter"
-#: src/globbing_test.c:66
+#: src/globbing_test.c:62
msgid "interpret page name as a regex"
msgstr "interpretuje każde nazwę strony jako wyr. regularne"
-#: src/globbing_test.c:67
+#: src/globbing_test.c:63
msgid "the page name contains wildcards"
msgstr "nazwa strony zawiera znaki dopasowywania"
-#: src/lexgrog.l:691
+#: src/lexgrog.l:701
#, c-format
msgid "warning: whatis for %s exceeds %d byte, truncating."
msgid_plural "warning: whatis for %s exceeds %d bytes, truncating."
@@ -286,14 +286,14 @@ msgstr[1] ""
msgstr[2] ""
"ostrzeżenie: whatis dla argumentu %s przekracza %d bajtów, obcinanie."
-#: src/lexgrog.l:844 src/man.c:2268 src/man.c:2350 src/man.c:2448
+#: src/lexgrog.l:854 src/man.c:2270 src/man.c:2354 src/man.c:2452
#: src/manconv_main.c:168 src/straycats.c:218 src/ult_src.c:321
-#: src/ult_src.c:335 src/zsoelim.l:512
+#: src/ult_src.c:335 src/zsoelim.l:519
#, c-format
msgid "can't open %s"
msgstr "nie można otworzyć %s"
-#: src/lexgrog_test.c:69 src/zsoelim_main.c:66
+#: src/lexgrog_test.c:69 src/zsoelim_main.c:65
msgid "FILE..."
msgstr "PLIK..."
@@ -392,7 +392,7 @@ msgstr "wypisuje stronę źródłową przekształconą do KODOWANIA"
msgid "Finding manual pages:"
msgstr "Wyszukiwanie stron podręcznika ekranowego:"
-#: src/man.c:287 src/whatis.c:138
+#: src/man.c:287 src/whatis.c:137
msgid "LOCALE"
msgstr "UST_JĘZYKOWE"
@@ -400,15 +400,15 @@ msgstr "UST_JĘZYKOWE"
msgid "define the locale for this particular man search"
msgstr "określa ustawienia językowe tego wyszukiwania stron"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "SYSTEM"
msgstr "SYSTEM"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "use manual pages from other systems"
msgstr "używa stron podręcznika z innych systemów"
-#: src/man.c:290 src/whatis.c:134
+#: src/man.c:290 src/whatis.c:133
msgid "LIST"
msgstr "LISTA"
@@ -523,80 +523,80 @@ msgstr ""
msgid "use groff and force it to produce ditroff"
msgstr "używa groffa i wymusza na nim wyprodukowanie ditroffa"
-#: src/man.c:597 src/man.c:733
+#: src/man.c:599 src/man.c:735
#, c-format
msgid "No manual entry for %s\n"
msgstr "Brak podręcznika dla %s\n"
-#: src/man.c:599
+#: src/man.c:601
#, c-format
msgid "(Alternatively, what manual page do you want from section %s?)\n"
msgstr "(Albo: jakiej strony z sekcji %s podręcznika potrzebujesz?)\n"
-#: src/man.c:603
+#: src/man.c:605
msgid "What manual page do you want?\n"
msgstr "Jakiej strony podręcznika potrzebujesz?\n"
-#: src/man.c:730
+#: src/man.c:732
#, c-format
msgid "No manual entry for %s in section %s\n"
msgstr "Brak podręcznika dla %s w sekcji %s\n"
-#: src/man.c:739
+#: src/man.c:741
#, c-format
msgid "See '%s' for help when manual pages are not available.\n"
msgstr ""
"Proszę przeczytać \"%s\", aby uzyskać pomoc,\n"
" gdy strony podręcznika nie są dostępne.\n"
-#: src/man.c:1347
+#: src/man.c:1349
#, c-format
msgid "ignoring unknown preprocessor `%c'"
msgstr "ignorowanie nieznanego preprocesora \"%c\""
-#: src/man.c:1710 src/mandb.c:224
+#: src/man.c:1712 src/mandb.c:223
#, c-format
msgid "can't rename %s to %s"
msgstr "nie można zmienić nazwy %s na %s"
-#: src/man.c:1727
+#: src/man.c:1729
#, c-format
msgid "can't set times on %s"
msgstr "nie można ustawić czasów na %s"
-#: src/man.c:1736 src/man.c:1773
+#: src/man.c:1738 src/man.c:1775
#, c-format
msgid "can't unlink %s"
msgstr "nie można usunąć %s"
-#: src/man.c:1803
+#: src/man.c:1805
#, c-format
msgid "can't create temporary cat for %s"
msgstr "nie można utworzyć tymczasowego pliku cat dla %s"
-#: src/man.c:1913
+#: src/man.c:1915
#, c-format
msgid "can't create temporary directory"
msgstr "nie można utworzyć katalogu tymczasowego"
-#: src/man.c:1924
+#: src/man.c:1926
#, c-format
msgid "can't open temporary file %s"
msgstr "nie można otworzyć pliku tymczasowego %s"
-#: src/man.c:1954 src/man.c:1983
+#: src/man.c:1956 src/man.c:1985
#, c-format
msgid "can't remove directory %s"
msgstr "nie można usunąć katalogu %s"
-#: src/man.c:2112
+#: src/man.c:2114
#, c-format
msgid "--Man-- next: %s [ view (return) | skip (Ctrl-D) | quit (Ctrl-C) ]\n"
msgstr ""
"--Man-- następna: %s [ przeglądaj (return) | pomiń (Ctrl-D) | zakończ (Ctrl-"
"C) ]\n"
-#: src/man.c:2393
+#: src/man.c:2397
#, c-format
msgid ""
"\n"
@@ -605,28 +605,28 @@ msgstr ""
"\n"
"nie można zapisać do %s w trybie catman"
-#: src/man.c:2474
+#: src/man.c:2477
#, c-format
msgid "Can't convert %s to cat name"
msgstr "Nie można skonwertować %s do nazwy preformatowanej strony podręcznika"
-#: src/man.c:3203
+#: src/man.c:3206
#, c-format
msgid "%s: relying on whatis refs is deprecated\n"
msgstr "%s: poleganie na odnośnikach whatis jest niezalecane\n"
-#: src/man.c:3346 src/man.c:4196
+#: src/man.c:3349 src/man.c:4200
#, c-format
msgid "mandb command failed with exit status %d"
msgstr "polecenie mandb zakończyło się błędem %d"
-#: src/man.c:3548
+#: src/man.c:3551
#, c-format
msgid "internal error: candidate type %d out of range"
msgstr ""
"błąd wewnętrzny: typ kandydata %d poza zakresem dopuszczalnych wartości"
-#: src/man.c:4137
+#: src/man.c:4141
msgid " Manual page "
msgstr " Strona podręcznika ekranowego "
@@ -659,7 +659,7 @@ msgstr "KOD"
msgid "encoding for output"
msgstr "kodowanie wyjścia"
-#: src/manconv_main.c:97 src/manpath.c:68
+#: src/manconv_main.c:97 src/manpath.c:66
msgid "produce fewer warnings"
msgstr "podaje mniej ostrzeżeń"
@@ -673,73 +673,73 @@ msgstr "należy podać kodowanie wejścia"
msgid "must specify an output encoding"
msgstr "należy podać kodowanie wyjścia"
-#: src/mandb.c:112
+#: src/mandb.c:111
msgid "[MANPATH]"
msgstr "[MANPATH]"
-#: src/mandb.c:116
+#: src/mandb.c:115
msgid "work quietly, except for 'bogus' warning"
msgstr "tryb cichy, poza ostrzeżeniami o nieprawidłowościach"
-#: src/mandb.c:117
+#: src/mandb.c:116
msgid "don't look for or add stray cats to the dbs"
msgstr "nie szuka i nie dodaje zabłąkanych plików cat do db"
-#: src/mandb.c:118
+#: src/mandb.c:117
msgid "don't purge obsolete entries from the dbs"
msgstr "nie czyści przestarzałych wpisów z bazy danych"
-#: src/mandb.c:119
+#: src/mandb.c:118
msgid "produce user databases only"
msgstr "tworzy tylko bazy danych użytkownika"
-#: src/mandb.c:120
+#: src/mandb.c:119
msgid "create dbs from scratch, rather than updating"
msgstr "tworzy nowe bazy danych, zamiast aktualizować istniejące"
-#: src/mandb.c:121
+#: src/mandb.c:120
msgid "check manual pages for correctness"
msgstr "sprawdza poprawność stron podręcznika"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "FILENAME"
msgstr "NAZWA_PLIKU"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "update just the entry for this filename"
msgstr "aktualizuje wpis dotyczący tej nazwy pliku"
-#: src/mandb.c:217
+#: src/mandb.c:216
#, c-format
msgid "can't remove %s"
msgstr "nie można usunąć %s"
-#: src/mandb.c:281
+#: src/mandb.c:280
#, c-format
msgid "can't write to %s"
msgstr "nie można pisać do %s"
-#: src/mandb.c:286
+#: src/mandb.c:285
#, c-format
msgid "can't read from %s"
msgstr "nie można czytać z %s"
-#: src/mandb.c:455
+#: src/mandb.c:457
#, c-format
msgid "Processing manual pages under %s...\n"
msgstr "Przetwarzanie stron podręcznika w %s...\n"
-#: src/mandb.c:672 src/mandb.c:698
+#: src/mandb.c:666 src/mandb.c:692
#, c-format
msgid "Removing obsolete cat directory %s...\n"
msgstr "Usuwanie przestarzałego katalogu stron preformatowanych %s...\n"
-#: src/mandb.c:848
+#: src/mandb.c:842
#, c-format
msgid "warning: no MANDB_MAP directives in %s, using your manpath"
msgstr "ostrzeżenie: w %s brak dyrektyw MANDB_MAP, używanie ścieżki manpath"
-#: src/mandb.c:920
+#: src/mandb.c:914
#, c-format
msgid "%d man subdirectory contained newer manual pages.\n"
msgid_plural "%d man subdirectories contained newer manual pages.\n"
@@ -747,7 +747,7 @@ msgstr[0] "%d podkatalog man zawierał nowsze strony podręcznika.\n"
msgstr[1] "%d podkatalogi man zawierały nowsze strony podręcznika.\n"
msgstr[2] "%d podkatalogów man zawierało nowsze strony podręcznika.\n"
-#: src/mandb.c:925
+#: src/mandb.c:919
#, c-format
msgid "%d manual page was added.\n"
msgid_plural "%d manual pages were added.\n"
@@ -755,7 +755,7 @@ msgstr[0] "Dodano %d stronę podręcznika.\n"
msgstr[1] "Dodano %d strony podręcznika.\n"
msgstr[2] "Dodano %d stron podręcznika.\n"
-#: src/mandb.c:929
+#: src/mandb.c:923
#, c-format
msgid "%d stray cat was added.\n"
msgid_plural "%d stray cats were added.\n"
@@ -763,7 +763,7 @@ msgstr[0] "Dodano %d zabłąkaną preformatowaną stronę podręcznika.\n"
msgstr[1] "Dodano %d zabłąkane preformatowane strony podręcznika.\n"
msgstr[2] "Dodano %d zabłąkanych preformatowanych stron podręcznika.\n"
-#: src/mandb.c:934
+#: src/mandb.c:928
#, c-format
msgid "%d old database entry was purged.\n"
msgid_plural "%d old database entries were purged.\n"
@@ -771,7 +771,7 @@ msgstr[0] "Usunięto %d stary wpis z bazy danych.\n"
msgstr[1] "Usunięto %d stare wpisy z bazy danych.\n"
msgstr[2] "Usunięto %d starych wpisów z bazy danych.\n"
-#: src/mandb.c:952
+#: src/mandb.c:946
#, c-format
msgid "No databases created."
msgstr "Nie utworzono żadnej bazy danych."
@@ -846,15 +846,15 @@ msgstr "nie można określić katalogu bieżącego"
msgid "warning: %s does not begin with %s"
msgstr "ostrzeżenie: %s nie zaczyna się od %s"
-#: src/manpath.c:65
+#: src/manpath.c:63
msgid "show relative catpaths"
msgstr "wyświetla względne ścieżki cat"
-#: src/manpath.c:66
+#: src/manpath.c:64
msgid "show the entire global manpath"
msgstr "pokazuje całą globalną ścieżkę manpath"
-#: src/manpath.c:128
+#: src/manpath.c:126
#, c-format
msgid "warning: no global manpaths set in config file %s"
msgstr ""
@@ -885,96 +885,96 @@ msgstr "ostrzeżenie: nie można zaktualizować bufora indeksu %s"
msgid "%s is self referencing"
msgstr "%s odwołuje się do samego siebie"
-#: src/whatis.c:123
+#: src/whatis.c:122
msgid "KEYWORD..."
msgstr "SŁOWO_KLUCZ..."
-#: src/whatis.c:124
+#: src/whatis.c:123
msgid "The --regex option is enabled by default."
msgstr "Opcja --regex jest domyślnie włączona."
-#: src/whatis.c:128
+#: src/whatis.c:127
msgid "print verbose warning messages"
msgstr "wyświetla szczegółowe ostrzeżenia"
-#: src/whatis.c:129
+#: src/whatis.c:128
msgid "interpret each keyword as a regex"
msgstr "interpretuje każde słowo kluczowe jako wyr. regularne"
-#: src/whatis.c:130
+#: src/whatis.c:129
msgid "search each keyword for exact match"
msgstr "szuka każdego słowa kluczowego dla pełnego dopasowania"
-#: src/whatis.c:131
+#: src/whatis.c:130
msgid "the keyword(s) contain wildcards"
msgstr "słowa kluczowe zawierają znaki dopasowywania"
-#: src/whatis.c:132
+#: src/whatis.c:131
msgid "require all keywords to match"
msgstr "żąda dopasowania wszystkich słów kluczowych"
-#: src/whatis.c:133
+#: src/whatis.c:132
msgid "do not trim output to terminal width"
msgstr "nie przycina wyjścia do szerokości terminalu"
-#: src/whatis.c:134
+#: src/whatis.c:133
msgid "search only these sections (colon-separated)"
msgstr "przeszukuje tylko te sekcje (rozdzielone średnikami)"
-#: src/whatis.c:138
+#: src/whatis.c:137
msgid "define the locale for this search"
msgstr "ustawienia językowe tego wyszukiwania"
-#: src/whatis.c:235
+#: src/whatis.c:234
#, c-format
msgid "%s what?\n"
msgstr "co %s?\n"
-#: src/whatis.c:412 src/whatis.c:430
+#: src/whatis.c:410 src/whatis.c:428
#, c-format
msgid "warning: %s contains a pointer loop"
msgstr "ostrzeżenie: %s zawiera pętlę wskaźników"
-#: src/whatis.c:424 src/whatis.c:432
+#: src/whatis.c:422 src/whatis.c:430
msgid "(unknown subject)"
msgstr "(temat nieznany)"
-#: src/whatis.c:863
+#: src/whatis.c:861
#, c-format
msgid "%s: nothing appropriate.\n"
msgstr "%s: nic odpowiedniego.\n"
-#: src/zsoelim.l:171
+#: src/zsoelim.l:178
#, c-format
msgid "%s:%d: .so requests nested too deeply or are recursive"
msgstr "%s:%d: żądania.so zbyt głębokie lub rekurencyjne"
-#: src/zsoelim.l:186
+#: src/zsoelim.l:193
#, c-format
msgid "%s:%d: warning: failed .so request"
msgstr "%s:%d: ostrzeżenie: błędne żądanie .so"
-#: src/zsoelim.l:208
+#: src/zsoelim.l:215
#, c-format
msgid "%s:%d: warning: newline in .so request, ignoring"
msgstr "%s:%d: ostrzeżenie: znak nowej linii w żądaniu .so, ignorowanie"
-#: src/zsoelim.l:268
+#: src/zsoelim.l:275
#, c-format
msgid "%s:%d: warning: malformed .lf request, ignoring"
msgstr "%s:%d: ostrzeżenie: zniekształcone żądanie .lf, ignorowanie"
-#: src/zsoelim.l:278
+#: src/zsoelim.l:285
#, c-format
msgid "%s:%d: warning: newline in .lf request, ignoring"
msgstr "%s:%d: ostrzeżenie: znak nowej linii w żądaniu .lf, ignorowanie"
-#: src/zsoelim.l:318
+#: src/zsoelim.l:325
#, c-format
msgid "%s:%d: unterminated quote in roff request"
msgstr "%s:%d: niedopasowany cudzysłów w żądaniu roff"
-#: src/zsoelim_main.c:70
+#: src/zsoelim_main.c:69
msgid "compatibility switch (ignored)"
msgstr "ignorowana, dla zachowania kompatybilności"
diff --git a/po/pt.po b/po/pt.po
index df4f23a7..88c4c380 100644
--- a/po/pt.po
+++ b/po/pt.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: man-db 2.8.0-pre2\n"
"Report-Msgid-Bugs-To: Colin Watson <cjwatson@debian.org>\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2018-10-11 19:40+0100\n"
"Last-Translator: Pedro Albuquerque <palbuquerque73@gmail.com>\n"
"Language-Team: Portuguese <translation-team-pt@lists.sourceforge.net>\n"
@@ -66,7 +66,7 @@ msgstr[1] "só %d campos no conteúdo"
msgid "bad fetch on multi key %s"
msgstr "má obtenção em chave múltipla %s"
-#: libdb/db_lookup.c:443 src/whatis.c:739
+#: libdb/db_lookup.c:443 src/whatis.c:737
#, c-format
msgid "Database %s corrupted; rebuild with mandb --create"
msgstr "Base de dados %s corrompida; refaça-a com mando --create"
@@ -76,28 +76,28 @@ msgstr "Base de dados %s corrompida; refaça-a com mando --create"
msgid "warning: %s has no version identifier\n"
msgstr "aviso: %s não tem identificador de versão\n"
-#: libdb/db_ver.c:56
+#: libdb/db_ver.c:57
#, c-format
msgid "warning: %s is version %s, expecting %s\n"
msgstr "aviso: %s 'versão %s, esperada %s\n"
-#: libdb/db_ver.c:78
+#: libdb/db_ver.c:79
#, c-format
msgid "fatal: unable to insert version identifier into %s"
msgstr "fatal: impossível inserir identificador de versão em %s"
-#: src/accessdb.c:61
+#: src/accessdb.c:59
msgid "[MAN DATABASE]"
msgstr "[BASE DE DADOS MAN]"
-#: src/accessdb.c:62
+#: src/accessdb.c:60
#, c-format
msgid "The man database defaults to %s%s."
msgstr "A base de dados man predefinida é %s%s."
-#: src/accessdb.c:65 src/catman.c:103 src/globbing_test.c:62
-#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:115
-#: src/manpath.c:67 src/whatis.c:127 src/zsoelim_main.c:69
+#: src/accessdb.c:63 src/catman.c:100 src/globbing_test.c:58
+#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:114
+#: src/manpath.c:65 src/whatis.c:126 src/zsoelim_main.c:68
msgid "emit debugging messages"
msgstr "emite mensagens de depuração"
@@ -106,44 +106,44 @@ msgstr "emite mensagens de depuração"
msgid "can't open %s for reading"
msgstr "Impossível abrir %s para leitura"
-#: src/catman.c:100
+#: src/catman.c:97
msgid "[SECTION...]"
msgstr "[SECÇÃO...]"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "PATH"
msgstr "CAMINHO"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "set search path for manual pages to PATH"
msgstr "define caminho para páginas do manual para CAMINHO"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "FILE"
msgstr "FICHEIRO"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "use this user configuration file"
msgstr "usa este ficheiro de configuração do utilizador"
-#: src/catman.c:198
+#: src/catman.c:195
#, c-format
msgid "man command failed with exit status %d"
msgstr "comando man falhou com estado de saída %d"
-#: src/catman.c:237
+#: src/catman.c:235
#, c-format
msgid "cannot read database %s"
msgstr "impossível ler base de dados %s"
-#: src/catman.c:280
+#: src/catman.c:278
#, c-format
msgid "NULL content for key: %s"
msgstr "Conteúdo NULL para chave: %s"
-#: src/catman.c:295
+#: src/catman.c:294
#, c-format
msgid ""
"\n"
@@ -152,12 +152,12 @@ msgstr ""
"\n"
"A actualizar ficheiros cat para a secção %s da hierarquia man %s\n"
-#: src/catman.c:349
+#: src/catman.c:348
#, c-format
msgid "cannot write within %s"
msgstr "impossível escrever dentro de %s"
-#: src/catman.c:426
+#: src/catman.c:425
#, c-format
msgid "unable to update %s"
msgstr "impossível actualizar %s"
@@ -167,67 +167,67 @@ msgstr "impossível actualizar %s"
msgid "warning: %s/man%s/%s.%s*: competing extensions"
msgstr "aviso: %s/man%s/%s.%s*: extensões concorrentes"
-#: src/check_mandirs.c:114 src/check_mandirs.c:613
+#: src/check_mandirs.c:126 src/check_mandirs.c:626
#, c-format
msgid "can't update index cache %s"
msgstr "impossível actualizar a cache de índice %s"
-#: src/check_mandirs.c:242
+#: src/check_mandirs.c:254
#, c-format
msgid "warning: %s: bad symlink or ROFF `.so' request"
msgstr "aviso: %s: má ligação simbólica ou pedido ROFF \".so\""
-#: src/check_mandirs.c:298
+#: src/check_mandirs.c:310
#, c-format
msgid "warning: %s: ignoring empty file"
msgstr "aviso: %s: a ignorar ficheiro vazio"
-#: src/check_mandirs.c:302 src/straycats.c:276
+#: src/check_mandirs.c:314 src/straycats.c:276
#, c-format
msgid "warning: %s: whatis parse for %s(%s) failed"
msgstr "aviso: %s: falha na análise whatis para %s(%s)"
-#: src/check_mandirs.c:329 src/check_mandirs.c:498 src/mandb.c:883
+#: src/check_mandirs.c:341 src/check_mandirs.c:511 src/mandb.c:877
#: src/straycats.c:84 src/straycats.c:303 src/ult_src.c:81
#, c-format
msgid "can't search directory %s"
msgstr "impossível procurar na pasta %s"
-#: src/check_mandirs.c:378 src/man.c:1687
+#: src/check_mandirs.c:390 src/man.c:1689
#, c-format
msgid "can't chown %s"
msgstr "impossível chown %s"
-#: src/check_mandirs.c:400 src/check_mandirs.c:423
+#: src/check_mandirs.c:412 src/check_mandirs.c:435
#, c-format
msgid "warning: cannot create catdir %s"
msgstr "aviso: impossível criar catdir %s"
-#: src/check_mandirs.c:455 src/man.c:1699 src/mandb.c:233
+#: src/check_mandirs.c:467 src/man.c:1701 src/mandb.c:232
#, c-format
msgid "can't chmod %s"
msgstr "impossível chmod %s"
-#: src/check_mandirs.c:503
+#: src/check_mandirs.c:516
#, c-format
msgid "can't change to directory %s"
msgstr "impossível mudar para a pasta %s"
-#: src/check_mandirs.c:553
+#: src/check_mandirs.c:566
#, c-format
msgid "can't create index cache %s"
msgstr "impossível criar cache de índice %s"
-#: src/check_mandirs.c:578
+#: src/check_mandirs.c:591
#, c-format
msgid "Updating index cache for path `%s/%s'. Wait..."
msgstr "A actualizar cache de índice para caminho \"%s/%s\". Aguarde..."
-#: src/check_mandirs.c:640 src/check_mandirs.c:701
+#: src/check_mandirs.c:653 src/check_mandirs.c:714
msgid "done.\n"
msgstr "feito.\n"
-#: src/check_mandirs.c:963
+#: src/check_mandirs.c:977
#, c-format
msgid "Purging old database entries in %s...\n"
msgstr "A purgar entradas da base de dados antigas em %s...\n"
@@ -242,49 +242,49 @@ msgstr "aviso: falha ao armazenar entrada para %s(%s)"
msgid "warning: %s: ignoring bogus filename"
msgstr "aviso: %s: a ignorar nome de ficheiro fictício"
-#: src/globbing_test.c:59
+#: src/globbing_test.c:55
msgid "PATH SECTION NAME"
msgstr "CAMINHO SECÇÃO NOME"
-#: src/globbing_test.c:63 src/man.c:292
+#: src/globbing_test.c:59 src/man.c:292
msgid "EXTENSION"
msgstr "EXTENSÃO"
-#: src/globbing_test.c:63 src/man.c:293
+#: src/globbing_test.c:59 src/man.c:293
msgid "limit search to extension type EXTENSION"
msgstr "limita procura a extensão de tipo EXTENSÃO"
-#: src/globbing_test.c:64 src/man.c:294
+#: src/globbing_test.c:60 src/man.c:294
msgid "look for pages case-insensitively (default)"
msgstr "procura páginas sem diferenciar maiúsculas (predefinição)"
-#: src/globbing_test.c:65 src/man.c:295
+#: src/globbing_test.c:61 src/man.c:295
msgid "look for pages case-sensitively"
msgstr "procura páginas diferenciando maiúsculas"
-#: src/globbing_test.c:66
+#: src/globbing_test.c:62
msgid "interpret page name as a regex"
msgstr "interpreta o nome da página como regex"
-#: src/globbing_test.c:67
+#: src/globbing_test.c:63
msgid "the page name contains wildcards"
msgstr "o nome da página contém caracteres universais"
-#: src/lexgrog.l:691
+#: src/lexgrog.l:701
#, c-format
msgid "warning: whatis for %s exceeds %d byte, truncating."
msgid_plural "warning: whatis for %s exceeds %d bytes, truncating."
msgstr[0] "aviso: whatis para %s excede %d byte, a truncar"
msgstr[1] "aviso: whatis para %s excede %d bytes, a truncar."
-#: src/lexgrog.l:844 src/man.c:2268 src/man.c:2350 src/man.c:2448
+#: src/lexgrog.l:854 src/man.c:2270 src/man.c:2354 src/man.c:2452
#: src/manconv_main.c:168 src/straycats.c:218 src/ult_src.c:321
-#: src/ult_src.c:335 src/zsoelim.l:512
+#: src/ult_src.c:335 src/zsoelim.l:519
#, c-format
msgid "can't open %s"
msgstr "impossível abrir %s"
-#: src/lexgrog_test.c:69 src/zsoelim_main.c:66
+#: src/lexgrog_test.c:69 src/zsoelim_main.c:65
msgid "FILE..."
msgstr "FICHEIRO..."
@@ -382,7 +382,7 @@ msgstr "imprime página fonte codificada em CODIFICAÇÃO"
msgid "Finding manual pages:"
msgstr "Procurar páginas do manual:"
-#: src/man.c:287 src/whatis.c:138
+#: src/man.c:287 src/whatis.c:137
msgid "LOCALE"
msgstr "IDIOMA"
@@ -390,15 +390,15 @@ msgstr "IDIOMA"
msgid "define the locale for this particular man search"
msgstr "define o idioma para esta procura man em particular"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "SYSTEM"
msgstr "SISTEMA"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "use manual pages from other systems"
msgstr "usa páginas do manual de outros sistemas"
-#: src/man.c:290 src/whatis.c:134
+#: src/man.c:290 src/whatis.c:133
msgid "LIST"
msgstr "LISTA"
@@ -513,78 +513,78 @@ msgstr ""
msgid "use groff and force it to produce ditroff"
msgstr "usa o groff e força-o a produzir ditroff"
-#: src/man.c:597 src/man.c:733
+#: src/man.c:599 src/man.c:735
#, c-format
msgid "No manual entry for %s\n"
msgstr "Sem entrada de manual para %s\n"
-#: src/man.c:599
+#: src/man.c:601
#, c-format
msgid "(Alternatively, what manual page do you want from section %s?)\n"
msgstr "(em alternativa, que página do manual deseja para a secção %s?)\n"
-#: src/man.c:603
+#: src/man.c:605
msgid "What manual page do you want?\n"
msgstr "Que página do manual deseja?\n"
-#: src/man.c:730
+#: src/man.c:732
#, c-format
msgid "No manual entry for %s in section %s\n"
msgstr "Sem entrada de manual para %s na secção %s\n"
-#: src/man.c:739
+#: src/man.c:741
#, c-format
msgid "See '%s' for help when manual pages are not available.\n"
msgstr ""
"Veja \"%s\" para ajuda quando as páginas do manual não estão disponíveis.\n"
-#: src/man.c:1347
+#: src/man.c:1349
#, c-format
msgid "ignoring unknown preprocessor `%c'"
msgstr "a ignorar pré-processador \"%c\" desconhecido"
-#: src/man.c:1710 src/mandb.c:224
+#: src/man.c:1712 src/mandb.c:223
#, c-format
msgid "can't rename %s to %s"
msgstr "impossível renomear %s para %s"
-#: src/man.c:1727
+#: src/man.c:1729
#, c-format
msgid "can't set times on %s"
msgstr "impossível definir horas em %s"
-#: src/man.c:1736 src/man.c:1773
+#: src/man.c:1738 src/man.c:1775
#, c-format
msgid "can't unlink %s"
msgstr "impossível desligar %s"
-#: src/man.c:1803
+#: src/man.c:1805
#, c-format
msgid "can't create temporary cat for %s"
msgstr "impossível criar cat temporário para %s"
-#: src/man.c:1913
+#: src/man.c:1915
#, c-format
msgid "can't create temporary directory"
msgstr "impossível criar pasta temporária"
-#: src/man.c:1924
+#: src/man.c:1926
#, c-format
msgid "can't open temporary file %s"
msgstr "impossível abrir ficheiro temporário %s"
-#: src/man.c:1954 src/man.c:1983
+#: src/man.c:1956 src/man.c:1985
#, c-format
msgid "can't remove directory %s"
msgstr "impossível remover pasta %s"
-#: src/man.c:2112
+#: src/man.c:2114
#, c-format
msgid "--Man-- next: %s [ view (return) | skip (Ctrl-D) | quit (Ctrl-C) ]\n"
msgstr ""
"--Man-- seguinte: %s [ ver (return) | saltar (Ctrl-D) | sair (Ctrl-C) ]\n"
-#: src/man.c:2393
+#: src/man.c:2397
#, c-format
msgid ""
"\n"
@@ -593,27 +593,27 @@ msgstr ""
"\n"
"impossível escrever em %s em modo catman"
-#: src/man.c:2474
+#: src/man.c:2477
#, c-format
msgid "Can't convert %s to cat name"
msgstr "Impossível converter %s para nome cat"
-#: src/man.c:3203
+#: src/man.c:3206
#, c-format
msgid "%s: relying on whatis refs is deprecated\n"
msgstr "%s: confiar em refs whatis está obsoleto\n"
-#: src/man.c:3346 src/man.c:4196
+#: src/man.c:3349 src/man.c:4200
#, c-format
msgid "mandb command failed with exit status %d"
msgstr "comando mandb falhou com estado de saída %d"
-#: src/man.c:3548
+#: src/man.c:3551
#, c-format
msgid "internal error: candidate type %d out of range"
msgstr "erro interno: tipo de candidato %d fora do intervalo"
-#: src/man.c:4137
+#: src/man.c:4141
msgid " Manual page "
msgstr " Página do manual "
@@ -646,7 +646,7 @@ msgstr "CÓDIGO"
msgid "encoding for output"
msgstr "codificação para saída"
-#: src/manconv_main.c:97 src/manpath.c:68
+#: src/manconv_main.c:97 src/manpath.c:66
msgid "produce fewer warnings"
msgstr "produz menos avisos"
@@ -660,101 +660,101 @@ msgstr "tem de especificar uma codificação de entrada"
msgid "must specify an output encoding"
msgstr "tem de especificar uma codificação de saída"
-#: src/mandb.c:112
+#: src/mandb.c:111
msgid "[MANPATH]"
msgstr "[CAMINHOMAN]"
-#: src/mandb.c:116
+#: src/mandb.c:115
msgid "work quietly, except for 'bogus' warning"
msgstr "trabalha em silêncio, excepto para aviso \"fictício\""
-#: src/mandb.c:117
+#: src/mandb.c:116
msgid "don't look for or add stray cats to the dbs"
msgstr "não procura ou adiciona cats perdidos às bases de dados"
-#: src/mandb.c:118
+#: src/mandb.c:117
msgid "don't purge obsolete entries from the dbs"
msgstr "não purga entradas obsoletas das bases de dados"
-#: src/mandb.c:119
+#: src/mandb.c:118
msgid "produce user databases only"
msgstr "produz só bases de dados do utilizador"
-#: src/mandb.c:120
+#: src/mandb.c:119
msgid "create dbs from scratch, rather than updating"
msgstr "cria bases de dados de raiz, em vez de actualizar"
-#: src/mandb.c:121
+#: src/mandb.c:120
msgid "check manual pages for correctness"
msgstr "verificar páginas do manual por correcção"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "FILENAME"
msgstr "NOMEFICHEIRO"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "update just the entry for this filename"
msgstr "actualiza só a entrada para este nome de ficheiro"
-#: src/mandb.c:217
+#: src/mandb.c:216
#, c-format
msgid "can't remove %s"
msgstr "impossível remover %s"
-#: src/mandb.c:281
+#: src/mandb.c:280
#, c-format
msgid "can't write to %s"
msgstr "impossível escrever em %s"
-#: src/mandb.c:286
+#: src/mandb.c:285
#, c-format
msgid "can't read from %s"
msgstr "impossível ler de %s"
-#: src/mandb.c:455
+#: src/mandb.c:457
#, c-format
msgid "Processing manual pages under %s...\n"
msgstr "A processar páginas do manual sob %s...\n"
-#: src/mandb.c:672 src/mandb.c:698
+#: src/mandb.c:666 src/mandb.c:692
#, c-format
msgid "Removing obsolete cat directory %s...\n"
msgstr "A remover pasta cat obsoleta %s...\n"
-#: src/mandb.c:848
+#: src/mandb.c:842
#, c-format
msgid "warning: no MANDB_MAP directives in %s, using your manpath"
msgstr "aviso: sem directivas MANDB_MAP em %s, a usar o seu manpath"
-#: src/mandb.c:920
+#: src/mandb.c:914
#, c-format
msgid "%d man subdirectory contained newer manual pages.\n"
msgid_plural "%d man subdirectories contained newer manual pages.\n"
msgstr[0] "%d sub-pasta man continha páginas do manual mais recentes.\n"
msgstr[1] "%d sub-pastas man continham páginas do manual mais recentes.\n"
-#: src/mandb.c:925
+#: src/mandb.c:919
#, c-format
msgid "%d manual page was added.\n"
msgid_plural "%d manual pages were added.\n"
msgstr[0] "%d página do manual adicionada.\n"
msgstr[1] "%d páginas do manual adicionadas.\n"
-#: src/mandb.c:929
+#: src/mandb.c:923
#, c-format
msgid "%d stray cat was added.\n"
msgid_plural "%d stray cats were added.\n"
msgstr[0] "%d cat perdido adicionado.\n"
msgstr[1] "%d cats perdidos adicionados.\n"
-#: src/mandb.c:934
+#: src/mandb.c:928
#, c-format
msgid "%d old database entry was purged.\n"
msgid_plural "%d old database entries were purged.\n"
msgstr[0] "%d entrada de base de dados antiga purgada.\n"
msgstr[1] "%d entradas de base de dados antigas purgadas.\n"
-#: src/mandb.c:952
+#: src/mandb.c:946
#, c-format
msgid "No databases created."
msgstr "Não se criaram bases de dados."
@@ -829,15 +829,15 @@ msgstr "impossível determinar a pasta actual"
msgid "warning: %s does not begin with %s"
msgstr "aviso: %s não começa com %s"
-#: src/manpath.c:65
+#: src/manpath.c:63
msgid "show relative catpaths"
msgstr "mostrar catpaths relativos"
-#: src/manpath.c:66
+#: src/manpath.c:64
msgid "show the entire global manpath"
msgstr "mostrar todo o manpath global"
-#: src/manpath.c:128
+#: src/manpath.c:126
#, c-format
msgid "warning: no global manpaths set in config file %s"
msgstr "aviso: sem manpath globais definidos no ficheiro de configuração %s"
@@ -867,96 +867,96 @@ msgstr "aviso: impossível actualizar a cache de índice %s"
msgid "%s is self referencing"
msgstr "%s referencia-se a si própria"
-#: src/whatis.c:123
+#: src/whatis.c:122
msgid "KEYWORD..."
msgstr "PALAVRA-CHAVE..."
-#: src/whatis.c:124
+#: src/whatis.c:123
msgid "The --regex option is enabled by default."
msgstr "A opção --regex está activa por predefinição."
-#: src/whatis.c:128
+#: src/whatis.c:127
msgid "print verbose warning messages"
msgstr "imprime mensagens de aviso verbosas"
-#: src/whatis.c:129
+#: src/whatis.c:128
msgid "interpret each keyword as a regex"
msgstr "interpreta cada palavra-chave como regex"
-#: src/whatis.c:130
+#: src/whatis.c:129
msgid "search each keyword for exact match"
msgstr "procura cada palavra-chave por correspondência exacta"
-#: src/whatis.c:131
+#: src/whatis.c:130
msgid "the keyword(s) contain wildcards"
msgstr "as palavras-chave contêm caracteres universais"
-#: src/whatis.c:132
+#: src/whatis.c:131
msgid "require all keywords to match"
msgstr "requer que todas as palavra-chave correspondam"
-#: src/whatis.c:133
+#: src/whatis.c:132
msgid "do not trim output to terminal width"
msgstr "não cortar saída para a largura do terminal"
-#: src/whatis.c:134
+#: src/whatis.c:133
msgid "search only these sections (colon-separated)"
msgstr "procurar só nestas secções (separado por dois-pontos)"
-#: src/whatis.c:138
+#: src/whatis.c:137
msgid "define the locale for this search"
msgstr "define o idioma para esta procura"
-#: src/whatis.c:235
+#: src/whatis.c:234
#, c-format
msgid "%s what?\n"
msgstr "%s o quê?\n"
-#: src/whatis.c:412 src/whatis.c:430
+#: src/whatis.c:410 src/whatis.c:428
#, c-format
msgid "warning: %s contains a pointer loop"
msgstr "aviso: %s contém um ciclo de ponteiro"
-#: src/whatis.c:424 src/whatis.c:432
+#: src/whatis.c:422 src/whatis.c:430
msgid "(unknown subject)"
msgstr "(assunto desconhecido)"
-#: src/whatis.c:863
+#: src/whatis.c:861
#, c-format
msgid "%s: nothing appropriate.\n"
msgstr "%s: nada apropriado.\n"
-#: src/zsoelim.l:171
+#: src/zsoelim.l:178
#, c-format
msgid "%s:%d: .so requests nested too deeply or are recursive"
msgstr "%s:%d: pedidos .so aninhados demais ou são recursivos"
-#: src/zsoelim.l:186
+#: src/zsoelim.l:193
#, c-format
msgid "%s:%d: warning: failed .so request"
msgstr "%s:%d: aviso: pedido .so falhou"
-#: src/zsoelim.l:208
+#: src/zsoelim.l:215
#, c-format
msgid "%s:%d: warning: newline in .so request, ignoring"
msgstr "%s:%d: aviso: newline em pedido .so, a ignorar"
-#: src/zsoelim.l:268
+#: src/zsoelim.l:275
#, c-format
msgid "%s:%d: warning: malformed .lf request, ignoring"
msgstr "%s:%d: aviso: pedido .lf mal formado, a ignorar"
-#: src/zsoelim.l:278
+#: src/zsoelim.l:285
#, c-format
msgid "%s:%d: warning: newline in .lf request, ignoring"
msgstr "%s:%d: avido: newline em pedido .lf, a ignorar"
-#: src/zsoelim.l:318
+#: src/zsoelim.l:325
#, c-format
msgid "%s:%d: unterminated quote in roff request"
msgstr "%s:%d: aspa não terminada em pedido roff"
-#: src/zsoelim_main.c:70
+#: src/zsoelim_main.c:69
msgid "compatibility switch (ignored)"
msgstr "troca de compatibilidade (ignorada)"
diff --git a/po/pt_BR.po b/po/pt_BR.po
index 309fd621..c6817aaa 100644
--- a/po/pt_BR.po
+++ b/po/pt_BR.po
@@ -12,7 +12,7 @@ msgid ""
msgstr ""
"Project-Id-Version: man-db 2.8.0-pre2\n"
"Report-Msgid-Bugs-To: Colin Watson <cjwatson@debian.org>\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2018-02-02 17:02-0200\n"
"Last-Translator: Rafael Fontenelle <rafaelff@gnome.org>\n"
"Language-Team: Brazilian Portuguese <ldpbr-translation@lists.sourceforge."
@@ -72,7 +72,7 @@ msgstr[1] "apenas %d campos no conteúdo"
msgid "bad fetch on multi key %s"
msgstr "busca ruim na multichave %s"
-#: libdb/db_lookup.c:443 src/whatis.c:739
+#: libdb/db_lookup.c:443 src/whatis.c:737
#, c-format
msgid "Database %s corrupted; rebuild with mandb --create"
msgstr "Banco de dados %s corrompido; reconstrua-o com mandb --create"
@@ -82,28 +82,28 @@ msgstr "Banco de dados %s corrompido; reconstrua-o com mandb --create"
msgid "warning: %s has no version identifier\n"
msgstr "aviso: %s não possui identificador de versão\n"
-#: libdb/db_ver.c:56
+#: libdb/db_ver.c:57
#, c-format
msgid "warning: %s is version %s, expecting %s\n"
msgstr "aviso: %s é versão %s, esperava-se %s\n"
-#: libdb/db_ver.c:78
+#: libdb/db_ver.c:79
#, c-format
msgid "fatal: unable to insert version identifier into %s"
msgstr "fatal: não foi possível de inserir o identificador de versão em %s"
-#: src/accessdb.c:61
+#: src/accessdb.c:59
msgid "[MAN DATABASE]"
msgstr "[BANDO-DE-DADOS MAN]"
-#: src/accessdb.c:62
+#: src/accessdb.c:60
#, c-format
msgid "The man database defaults to %s%s."
msgstr "O banco de dados man tem como padrão %s%s."
-#: src/accessdb.c:65 src/catman.c:103 src/globbing_test.c:62
-#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:115
-#: src/manpath.c:67 src/whatis.c:127 src/zsoelim_main.c:69
+#: src/accessdb.c:63 src/catman.c:100 src/globbing_test.c:58
+#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:114
+#: src/manpath.c:65 src/whatis.c:126 src/zsoelim_main.c:68
msgid "emit debugging messages"
msgstr "emite mensagens de depuração"
@@ -112,44 +112,44 @@ msgstr "emite mensagens de depuração"
msgid "can't open %s for reading"
msgstr "não foi possível abrir %s para leitura"
-#: src/catman.c:100
+#: src/catman.c:97
msgid "[SECTION...]"
msgstr "[SEÇÃO...]"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "PATH"
msgstr "CAMINHO"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "set search path for manual pages to PATH"
msgstr "define o caminho de pesquisa por páginas de manual com CAMINHO"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "FILE"
msgstr "ARQUIVO"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "use this user configuration file"
msgstr "usa esse arquivo de configuração de usuário"
-#: src/catman.c:198
+#: src/catman.c:195
#, c-format
msgid "man command failed with exit status %d"
msgstr "o comando man falhou com estado de saída %d"
-#: src/catman.c:237
+#: src/catman.c:235
#, c-format
msgid "cannot read database %s"
msgstr "não foi possível ler o banco de dados %s"
-#: src/catman.c:280
+#: src/catman.c:278
#, c-format
msgid "NULL content for key: %s"
msgstr "conteúdo NULL para a chave: %s"
-#: src/catman.c:295
+#: src/catman.c:294
#, c-format
msgid ""
"\n"
@@ -158,12 +158,12 @@ msgstr ""
"\n"
"Atualizando arquivos cat para seção %s da hierarquia man %s\n"
-#: src/catman.c:349
+#: src/catman.c:348
#, c-format
msgid "cannot write within %s"
msgstr "não foi possível escrever dentro de %s"
-#: src/catman.c:426
+#: src/catman.c:425
#, c-format
msgid "unable to update %s"
msgstr "não foi possível de atualizar %s"
@@ -173,67 +173,67 @@ msgstr "não foi possível de atualizar %s"
msgid "warning: %s/man%s/%s.%s*: competing extensions"
msgstr "aviso: %s/man%s/%s.%s*: extensões conflitantes"
-#: src/check_mandirs.c:114 src/check_mandirs.c:613
+#: src/check_mandirs.c:126 src/check_mandirs.c:626
#, c-format
msgid "can't update index cache %s"
msgstr "não foi possível atualizar cache de índice %s"
-#: src/check_mandirs.c:242
+#: src/check_mandirs.c:254
#, c-format
msgid "warning: %s: bad symlink or ROFF `.so' request"
msgstr "aviso: %s: link simbólico ruim ou requisição \".so\" ROFF"
-#: src/check_mandirs.c:298
+#: src/check_mandirs.c:310
#, c-format
msgid "warning: %s: ignoring empty file"
msgstr "aviso: %s: ignorando arquivo vazio"
-#: src/check_mandirs.c:302 src/straycats.c:276
+#: src/check_mandirs.c:314 src/straycats.c:276
#, c-format
msgid "warning: %s: whatis parse for %s(%s) failed"
msgstr "aviso: %s: análise por whatis para %s(%s) falhou"
-#: src/check_mandirs.c:329 src/check_mandirs.c:498 src/mandb.c:883
+#: src/check_mandirs.c:341 src/check_mandirs.c:511 src/mandb.c:877
#: src/straycats.c:84 src/straycats.c:303 src/ult_src.c:81
#, c-format
msgid "can't search directory %s"
msgstr "não foi possível pesquisar no diretório %s"
-#: src/check_mandirs.c:378 src/man.c:1687
+#: src/check_mandirs.c:390 src/man.c:1689
#, c-format
msgid "can't chown %s"
msgstr "não foi possível fazer chown em %s"
-#: src/check_mandirs.c:400 src/check_mandirs.c:423
+#: src/check_mandirs.c:412 src/check_mandirs.c:435
#, c-format
msgid "warning: cannot create catdir %s"
msgstr "aviso: não foi possível criar o catdir %s"
-#: src/check_mandirs.c:455 src/man.c:1699 src/mandb.c:233
+#: src/check_mandirs.c:467 src/man.c:1701 src/mandb.c:232
#, c-format
msgid "can't chmod %s"
msgstr "não foi possível fazer chmod em %s"
-#: src/check_mandirs.c:503
+#: src/check_mandirs.c:516
#, c-format
msgid "can't change to directory %s"
msgstr "não foi possível mudar para o diretório %s"
-#: src/check_mandirs.c:553
+#: src/check_mandirs.c:566
#, c-format
msgid "can't create index cache %s"
msgstr "não foi possível criar cache de índice %s"
-#: src/check_mandirs.c:578
+#: src/check_mandirs.c:591
#, c-format
msgid "Updating index cache for path `%s/%s'. Wait..."
msgstr "Atualizando o cache de índice para o caminho \"%s/%s\". Aguarde..."
-#: src/check_mandirs.c:640 src/check_mandirs.c:701
+#: src/check_mandirs.c:653 src/check_mandirs.c:714
msgid "done.\n"
msgstr "feito.\n"
-#: src/check_mandirs.c:963
+#: src/check_mandirs.c:977
#, c-format
msgid "Purging old database entries in %s...\n"
msgstr "Descartando entradas antigas de banco de dados em %s...\n"
@@ -248,49 +248,49 @@ msgstr "aviso: falha ao armazenar entradas para %s(%s)"
msgid "warning: %s: ignoring bogus filename"
msgstr "aviso: %s: ignorando nome de arquivo inválido"
-#: src/globbing_test.c:59
+#: src/globbing_test.c:55
msgid "PATH SECTION NAME"
msgstr "CAMINHO SEÇÃO NOME"
-#: src/globbing_test.c:63 src/man.c:292
+#: src/globbing_test.c:59 src/man.c:292
msgid "EXTENSION"
msgstr "EXTENSÃO"
-#: src/globbing_test.c:63 src/man.c:293
+#: src/globbing_test.c:59 src/man.c:293
msgid "limit search to extension type EXTENSION"
msgstr "limita a pesquisa ao tipo de extensão EXTENSÃO"
-#: src/globbing_test.c:64 src/man.c:294
+#: src/globbing_test.c:60 src/man.c:294
msgid "look for pages case-insensitively (default)"
msgstr "procura por páginas sem diferenciar maiúsculo de minúsculo (padrão)"
-#: src/globbing_test.c:65 src/man.c:295
+#: src/globbing_test.c:61 src/man.c:295
msgid "look for pages case-sensitively"
msgstr "procura por páginas diferenciando maiúsculo de minúsculo"
-#: src/globbing_test.c:66
+#: src/globbing_test.c:62
msgid "interpret page name as a regex"
msgstr "interpreta o nome da páginas como uma expressão regular"
-#: src/globbing_test.c:67
+#: src/globbing_test.c:63
msgid "the page name contains wildcards"
msgstr "o nome da página contém caracteres curingas"
-#: src/lexgrog.l:691
+#: src/lexgrog.l:701
#, c-format
msgid "warning: whatis for %s exceeds %d byte, truncating."
msgid_plural "warning: whatis for %s exceeds %d bytes, truncating."
msgstr[0] "aviso: whatis para %s excede %d byte, truncando."
msgstr[1] "aviso: whatis para %s excede %d bytes, truncando."
-#: src/lexgrog.l:844 src/man.c:2268 src/man.c:2350 src/man.c:2448
+#: src/lexgrog.l:854 src/man.c:2270 src/man.c:2354 src/man.c:2452
#: src/manconv_main.c:168 src/straycats.c:218 src/ult_src.c:321
-#: src/ult_src.c:335 src/zsoelim.l:512
+#: src/ult_src.c:335 src/zsoelim.l:519
#, c-format
msgid "can't open %s"
msgstr "não foi possível abrir %s"
-#: src/lexgrog_test.c:69 src/zsoelim_main.c:66
+#: src/lexgrog_test.c:69 src/zsoelim_main.c:65
msgid "FILE..."
msgstr "ARQUIVO..."
@@ -388,7 +388,7 @@ msgstr "emite a página fonte codificada em CODIFICAÇÃO"
msgid "Finding manual pages:"
msgstr "Localizando as páginas de manual:"
-#: src/man.c:287 src/whatis.c:138
+#: src/man.c:287 src/whatis.c:137
msgid "LOCALE"
msgstr "LOCALIDADE"
@@ -396,15 +396,15 @@ msgstr "LOCALIDADE"
msgid "define the locale for this particular man search"
msgstr "define a localidade para esta pesquisa de man em particular"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "SYSTEM"
msgstr "SISTEMA"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "use manual pages from other systems"
msgstr "usa páginas de manual para outros sistemas"
-#: src/man.c:290 src/whatis.c:134
+#: src/man.c:290 src/whatis.c:133
msgid "LIST"
msgstr "LISTA"
@@ -519,78 +519,78 @@ msgstr ""
msgid "use groff and force it to produce ditroff"
msgstr "usa groff e força-o a produzir ditroff"
-#: src/man.c:597 src/man.c:733
+#: src/man.c:599 src/man.c:735
#, c-format
msgid "No manual entry for %s\n"
msgstr "Nenhuma entrada de manual para %s\n"
-#: src/man.c:599
+#: src/man.c:601
#, c-format
msgid "(Alternatively, what manual page do you want from section %s?)\n"
msgstr "(Alternativamente, qual a página de manual desejada da seção %s?)\n"
-#: src/man.c:603
+#: src/man.c:605
msgid "What manual page do you want?\n"
msgstr "Qual a página de manual desejada?\n"
-#: src/man.c:730
+#: src/man.c:732
#, c-format
msgid "No manual entry for %s in section %s\n"
msgstr "Nenhuma entrada de manual para %s na seção %s\n"
-#: src/man.c:739
+#: src/man.c:741
#, c-format
msgid "See '%s' for help when manual pages are not available.\n"
msgstr ""
"Veja \"%s\" para ajuda quando as páginas de manual não estiverem "
"disponíveis.\n"
-#: src/man.c:1347
+#: src/man.c:1349
#, c-format
msgid "ignoring unknown preprocessor `%c'"
msgstr "ignorando pré-processador desconhecido \"%c\""
-#: src/man.c:1710 src/mandb.c:224
+#: src/man.c:1712 src/mandb.c:223
#, c-format
msgid "can't rename %s to %s"
msgstr "não foi possível renomear %s para %s"
-#: src/man.c:1727
+#: src/man.c:1729
#, c-format
msgid "can't set times on %s"
msgstr "não foi possível definir os horários de %s"
-#: src/man.c:1736 src/man.c:1773
+#: src/man.c:1738 src/man.c:1775
#, c-format
msgid "can't unlink %s"
msgstr "não foi possível remover o link %s"
-#: src/man.c:1803
+#: src/man.c:1805
#, c-format
msgid "can't create temporary cat for %s"
msgstr "não foi possível criar o cat temporário para %s"
-#: src/man.c:1913
+#: src/man.c:1915
#, c-format
msgid "can't create temporary directory"
msgstr "não foi possível criar o diretório temporário"
-#: src/man.c:1924
+#: src/man.c:1926
#, c-format
msgid "can't open temporary file %s"
msgstr "não foi possível abrir o arquivo temporário %s"
-#: src/man.c:1954 src/man.c:1983
+#: src/man.c:1956 src/man.c:1985
#, c-format
msgid "can't remove directory %s"
msgstr "não foi possível remover o diretório %s"
-#: src/man.c:2112
+#: src/man.c:2114
#, c-format
msgid "--Man-- next: %s [ view (return) | skip (Ctrl-D) | quit (Ctrl-C) ]\n"
msgstr "--Man-- próxima: %s [ ver (Enter) | pular (Ctrl-D) | sair (Ctrl-C) ]\n"
-#: src/man.c:2393
+#: src/man.c:2397
#, c-format
msgid ""
"\n"
@@ -599,27 +599,27 @@ msgstr ""
"\n"
"não foi possível escrever em %s no modo catman"
-#: src/man.c:2474
+#: src/man.c:2477
#, c-format
msgid "Can't convert %s to cat name"
msgstr "Não foi possível converter %s para um nome cat"
-#: src/man.c:3203
+#: src/man.c:3206
#, c-format
msgid "%s: relying on whatis refs is deprecated\n"
msgstr "%s: o uso de whatis refs está obsoleto\n"
-#: src/man.c:3346 src/man.c:4196
+#: src/man.c:3349 src/man.c:4200
#, c-format
msgid "mandb command failed with exit status %d"
msgstr "o comando mandb falhou com status de saída %d"
-#: src/man.c:3548
+#: src/man.c:3551
#, c-format
msgid "internal error: candidate type %d out of range"
msgstr "erro interno: tipo de candidato %d fora da faixa"
-#: src/man.c:4137
+#: src/man.c:4141
msgid " Manual page "
msgstr " Página de manual "
@@ -652,7 +652,7 @@ msgstr "CÓDIGO"
msgid "encoding for output"
msgstr "codificação para a saída"
-#: src/manconv_main.c:97 src/manpath.c:68
+#: src/manconv_main.c:97 src/manpath.c:66
msgid "produce fewer warnings"
msgstr "produz menos avisos"
@@ -666,101 +666,101 @@ msgstr "deve-se especificar uma codificação de entrada"
msgid "must specify an output encoding"
msgstr "deve-se especificar uma codificação de saída"
-#: src/mandb.c:112
+#: src/mandb.c:111
msgid "[MANPATH]"
msgstr "[CAMINHO-MAN]"
-#: src/mandb.c:116
+#: src/mandb.c:115
msgid "work quietly, except for 'bogus' warning"
msgstr "trabalha silenciosamente, exceto para aviso de erro"
-#: src/mandb.c:117
+#: src/mandb.c:116
msgid "don't look for or add stray cats to the dbs"
msgstr "não procura ou adiciona cats errantes aos bancos de dados"
-#: src/mandb.c:118
+#: src/mandb.c:117
msgid "don't purge obsolete entries from the dbs"
msgstr "não descarta entradas obsoletas dos bancos de dados"
-#: src/mandb.c:119
+#: src/mandb.c:118
msgid "produce user databases only"
msgstr "produz apenas bancos de dados de usuário"
-#: src/mandb.c:120
+#: src/mandb.c:119
msgid "create dbs from scratch, rather than updating"
msgstr "cria banco de dados do zero, ao invés de atualizá-los"
-#: src/mandb.c:121
+#: src/mandb.c:120
msgid "check manual pages for correctness"
msgstr "verifica a exatidão de páginas de manual"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "FILENAME"
msgstr "NOME-DE-ARQUIVO"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "update just the entry for this filename"
msgstr "atualiza apenas a entrada deste nome de arquivo"
-#: src/mandb.c:217
+#: src/mandb.c:216
#, c-format
msgid "can't remove %s"
msgstr "não foi possível remover %s"
-#: src/mandb.c:281
+#: src/mandb.c:280
#, c-format
msgid "can't write to %s"
msgstr "não posso escrever em %s"
-#: src/mandb.c:286
+#: src/mandb.c:285
#, c-format
msgid "can't read from %s"
msgstr "não foi possível ler de %s"
-#: src/mandb.c:455
+#: src/mandb.c:457
#, c-format
msgid "Processing manual pages under %s...\n"
msgstr "Processando as páginas de manual sob %s...\n"
-#: src/mandb.c:672 src/mandb.c:698
+#: src/mandb.c:666 src/mandb.c:692
#, c-format
msgid "Removing obsolete cat directory %s...\n"
msgstr "Removendo diretório cat obsoleto %s...\n"
-#: src/mandb.c:848
+#: src/mandb.c:842
#, c-format
msgid "warning: no MANDB_MAP directives in %s, using your manpath"
msgstr "aviso: nenhuma diretiva MANDB_MAP em %s, usando o seu caminho man"
-#: src/mandb.c:920
+#: src/mandb.c:914
#, c-format
msgid "%d man subdirectory contained newer manual pages.\n"
msgid_plural "%d man subdirectories contained newer manual pages.\n"
msgstr[0] "%d subdiretório man continha páginas de manual novas.\n"
msgstr[1] "%d subdiretórios man continham páginas de manual novas.\n"
-#: src/mandb.c:925
+#: src/mandb.c:919
#, c-format
msgid "%d manual page was added.\n"
msgid_plural "%d manual pages were added.\n"
msgstr[0] "%d página de manual foi adicionada.\n"
msgstr[1] "%d páginas de manual foram adicionadas.\n"
-#: src/mandb.c:929
+#: src/mandb.c:923
#, c-format
msgid "%d stray cat was added.\n"
msgid_plural "%d stray cats were added.\n"
msgstr[0] "%d cat errante foi adicionado.\n"
msgstr[1] "%d cats errantes foram adicionados.\n"
-#: src/mandb.c:934
+#: src/mandb.c:928
#, c-format
msgid "%d old database entry was purged.\n"
msgid_plural "%d old database entries were purged.\n"
msgstr[0] "%d entrada antiga no banco de dados foi descartada.\n"
msgstr[1] "%d entradas antigas no banco de dados foram descartadas.\n"
-#: src/mandb.c:952
+#: src/mandb.c:946
#, c-format
msgid "No databases created."
msgstr "Nenhum banco de dados criado."
@@ -835,15 +835,15 @@ msgstr "não foi possível determinar o diretório atual"
msgid "warning: %s does not begin with %s"
msgstr "aviso: %s não começa com %s"
-#: src/manpath.c:65
+#: src/manpath.c:63
msgid "show relative catpaths"
msgstr "mostra caminhos cat relativos"
-#: src/manpath.c:66
+#: src/manpath.c:64
msgid "show the entire global manpath"
msgstr "mostra o caminho man global inteiro"
-#: src/manpath.c:128
+#: src/manpath.c:126
#, c-format
msgid "warning: no global manpaths set in config file %s"
msgstr ""
@@ -874,97 +874,97 @@ msgstr "aviso: não foi possível atualizar o cache de índice %s"
msgid "%s is self referencing"
msgstr "%s referencia a si mesmo"
-#: src/whatis.c:123
+#: src/whatis.c:122
msgid "KEYWORD..."
msgstr "PALAVRA-CHAVE..."
-#: src/whatis.c:124
+#: src/whatis.c:123
msgid "The --regex option is enabled by default."
msgstr "A opção --regex está habilitada por padrão."
-#: src/whatis.c:128
+#: src/whatis.c:127
msgid "print verbose warning messages"
msgstr "emite mensagens de aviso detalhadas"
-#: src/whatis.c:129
+#: src/whatis.c:128
msgid "interpret each keyword as a regex"
msgstr "interpreta cada palavra-chave como uma expressão regular"
-#: src/whatis.c:130
+#: src/whatis.c:129
msgid "search each keyword for exact match"
msgstr "pesquisa cada palavra-chave por correspondência exata"
-#: src/whatis.c:131
+#: src/whatis.c:130
msgid "the keyword(s) contain wildcards"
msgstr "a(s) palavra-chave(s) não podem conter caracteres coringas"
-#: src/whatis.c:132
+#: src/whatis.c:131
msgid "require all keywords to match"
msgstr "exige correspondência de todas as palavra-chaves"
-#: src/whatis.c:133
+#: src/whatis.c:132
msgid "do not trim output to terminal width"
msgstr "não corta a saída para a largura do terminal"
-#: src/whatis.c:134
+#: src/whatis.c:133
msgid "search only these sections (colon-separated)"
msgstr "pesquisa apenas nestas seções (separadas por dois-pontos)"
-#: src/whatis.c:138
+#: src/whatis.c:137
msgid "define the locale for this search"
msgstr "define a localidade para esta pesquisa"
-#: src/whatis.c:235
+#: src/whatis.c:234
#, c-format
msgid "%s what?\n"
msgstr "%s o quê?\n"
-#: src/whatis.c:412 src/whatis.c:430
+#: src/whatis.c:410 src/whatis.c:428
#, c-format
msgid "warning: %s contains a pointer loop"
msgstr "aviso: %s contém um laço de ponteiros"
-#: src/whatis.c:424 src/whatis.c:432
+#: src/whatis.c:422 src/whatis.c:430
msgid "(unknown subject)"
msgstr "(assunto desconhecido)"
-#: src/whatis.c:863
+#: src/whatis.c:861
#, c-format
msgid "%s: nothing appropriate.\n"
msgstr "%s: nada apropriado.\n"
-#: src/zsoelim.l:171
+#: src/zsoelim.l:178
#, c-format
msgid "%s:%d: .so requests nested too deeply or are recursive"
msgstr ""
"%s:%d: requisições de .so aninhadas com muita profundidade ou são recursivas"
-#: src/zsoelim.l:186
+#: src/zsoelim.l:193
#, c-format
msgid "%s:%d: warning: failed .so request"
msgstr "%s:%d: aviso: requisição .so falhou"
-#: src/zsoelim.l:208
+#: src/zsoelim.l:215
#, c-format
msgid "%s:%d: warning: newline in .so request, ignoring"
msgstr "%s:%d: aviso: nova-linha na requisição de .so, ignorando"
-#: src/zsoelim.l:268
+#: src/zsoelim.l:275
#, c-format
msgid "%s:%d: warning: malformed .lf request, ignoring"
msgstr "%s:%d: aviso: requisição de .lf malformada, ignorando"
-#: src/zsoelim.l:278
+#: src/zsoelim.l:285
#, c-format
msgid "%s:%d: warning: newline in .lf request, ignoring"
msgstr "%s:%d: aviso: nova-linha na requisição de .lf, ignorando"
-#: src/zsoelim.l:318
+#: src/zsoelim.l:325
#, c-format
msgid "%s:%d: unterminated quote in roff request"
msgstr "%s:%d: aspas não terminadas na requisição de roff"
-#: src/zsoelim_main.c:70
+#: src/zsoelim_main.c:69
msgid "compatibility switch (ignored)"
msgstr "troca de compatibilidade (ignorado)"
diff --git a/po/ro.po b/po/ro.po
index 0e6567ea..74d16215 100644
--- a/po/ro.po
+++ b/po/ro.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: man-db 2.4.2-pre1\n"
"Report-Msgid-Bugs-To: Colin Watson <cjwatson@debian.org>\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2003-10-27 08:40+0200\n"
"Last-Translator: Eugen Hoanca <eugenh@urban-grafx.ro>\n"
"Language-Team: Romanian <translation-team-ro@lists.sourceforge.net>\n"
@@ -63,7 +63,7 @@ msgstr[1] "numai %d cmpuri n coninut"
msgid "bad fetch on multi key %s"
msgstr "aducere(fetch) incorect n multi chei %s"
-#: libdb/db_lookup.c:443 src/whatis.c:739
+#: libdb/db_lookup.c:443 src/whatis.c:737
#, c-format
msgid "Database %s corrupted; rebuild with mandb --create"
msgstr "Baza de date %s e corupt; reconstruii cu mandb --create"
@@ -73,28 +73,28 @@ msgstr "Baza de date %s e corupt; reconstruii cu mandb --create"
msgid "warning: %s has no version identifier\n"
msgstr "avertisment: %s nu are identificator de versiune\n"
-#: libdb/db_ver.c:56
+#: libdb/db_ver.c:57
#, c-format
msgid "warning: %s is version %s, expecting %s\n"
msgstr "avertisment: %s este versiunea %s, se atepta %s\n"
-#: libdb/db_ver.c:78
+#: libdb/db_ver.c:79
#, c-format
msgid "fatal: unable to insert version identifier into %s"
msgstr "fatal: nu se poate insera identificatorul de versiune n %s"
-#: src/accessdb.c:61
+#: src/accessdb.c:59
msgid "[MAN DATABASE]"
msgstr ""
-#: src/accessdb.c:62
+#: src/accessdb.c:60
#, c-format
msgid "The man database defaults to %s%s."
msgstr ""
-#: src/accessdb.c:65 src/catman.c:103 src/globbing_test.c:62
-#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:115
-#: src/manpath.c:67 src/whatis.c:127 src/zsoelim_main.c:69
+#: src/accessdb.c:63 src/catman.c:100 src/globbing_test.c:58
+#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:114
+#: src/manpath.c:65 src/whatis.c:126 src/zsoelim_main.c:68
msgid "emit debugging messages"
msgstr ""
@@ -103,45 +103,45 @@ msgstr ""
msgid "can't open %s for reading"
msgstr "nu se poate deschide %s pentru citire"
-#: src/catman.c:100
+#: src/catman.c:97
msgid "[SECTION...]"
msgstr ""
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "PATH"
msgstr ""
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "set search path for manual pages to PATH"
msgstr ""
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "FILE"
msgstr ""
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
#, fuzzy
msgid "use this user configuration file"
msgstr "nu se poate deschide fiierul de configurare al cii de man %s"
-#: src/catman.c:198
+#: src/catman.c:195
#, c-format
msgid "man command failed with exit status %d"
msgstr "comanda man a euat cu stare de ieire %d"
-#: src/catman.c:237
+#: src/catman.c:235
#, c-format
msgid "cannot read database %s"
msgstr "nu se poate citi baza de date %s."
-#: src/catman.c:280
+#: src/catman.c:278
#, c-format
msgid "NULL content for key: %s"
msgstr "coninut NULL pentru cheia: %s"
-#: src/catman.c:295
+#: src/catman.c:294
#, c-format
msgid ""
"\n"
@@ -150,12 +150,12 @@ msgstr ""
"\n"
"Se nnoiesc(update) fiierele cat pentru seciunea %s a ierarhiei man %s\n"
-#: src/catman.c:349
+#: src/catman.c:348
#, c-format
msgid "cannot write within %s"
msgstr "nu se poate scrie n %s"
-#: src/catman.c:426
+#: src/catman.c:425
#, c-format
msgid "unable to update %s"
msgstr "nu se poate nnoi(update) %s"
@@ -165,67 +165,67 @@ msgstr "nu se poate nnoi(update) %s"
msgid "warning: %s/man%s/%s.%s*: competing extensions"
msgstr "avertisment: %s/man%s/%s.%s*: extensii concurente"
-#: src/check_mandirs.c:114 src/check_mandirs.c:613
+#: src/check_mandirs.c:126 src/check_mandirs.c:626
#, c-format
msgid "can't update index cache %s"
msgstr "nu se poate nnoi(update) index cache %s"
-#: src/check_mandirs.c:242
+#: src/check_mandirs.c:254
#, c-format
msgid "warning: %s: bad symlink or ROFF `.so' request"
msgstr "avertisment: %s: symlink eronat sau cerere ROFF `.so'"
-#: src/check_mandirs.c:298
+#: src/check_mandirs.c:310
#, c-format
msgid "warning: %s: ignoring empty file"
msgstr "avertisment: %s: se ignor fiierul vid."
-#: src/check_mandirs.c:302 src/straycats.c:276
+#: src/check_mandirs.c:314 src/straycats.c:276
#, c-format
msgid "warning: %s: whatis parse for %s(%s) failed"
msgstr "avertisment: %s: analiza(parse) whatis pentru %s(%s) euat"
-#: src/check_mandirs.c:329 src/check_mandirs.c:498 src/mandb.c:883
+#: src/check_mandirs.c:341 src/check_mandirs.c:511 src/mandb.c:877
#: src/straycats.c:84 src/straycats.c:303 src/ult_src.c:81
#, c-format
msgid "can't search directory %s"
msgstr "nu se poate cuta directorul %s"
-#: src/check_mandirs.c:378 src/man.c:1687
+#: src/check_mandirs.c:390 src/man.c:1689
#, c-format
msgid "can't chown %s"
msgstr "nu se poate face chown pe %s"
-#: src/check_mandirs.c:400 src/check_mandirs.c:423
+#: src/check_mandirs.c:412 src/check_mandirs.c:435
#, c-format
msgid "warning: cannot create catdir %s"
msgstr "avertisment: nu se poate crea catdir %s"
-#: src/check_mandirs.c:455 src/man.c:1699 src/mandb.c:233
+#: src/check_mandirs.c:467 src/man.c:1701 src/mandb.c:232
#, c-format
msgid "can't chmod %s"
msgstr "nu se poate face chmod pe %s"
-#: src/check_mandirs.c:503
+#: src/check_mandirs.c:516
#, c-format
msgid "can't change to directory %s"
msgstr "nu se poate schimba n directorul %s"
-#: src/check_mandirs.c:553
+#: src/check_mandirs.c:566
#, c-format
msgid "can't create index cache %s"
msgstr "nu se poate crea index cache-ului %s"
-#: src/check_mandirs.c:578
+#: src/check_mandirs.c:591
#, c-format
msgid "Updating index cache for path `%s/%s'. Wait..."
msgstr "Se nnoiete(update) index cache-ul pentru calea `%s%s'. Ateptai..."
-#: src/check_mandirs.c:640 src/check_mandirs.c:701
+#: src/check_mandirs.c:653 src/check_mandirs.c:714
msgid "done.\n"
msgstr "efectuat.\n"
-#: src/check_mandirs.c:963
+#: src/check_mandirs.c:977
#, c-format
msgid "Purging old database entries in %s...\n"
msgstr "Se cur(purge) intrrile vechi ale bazei de date n %s...\n"
@@ -240,49 +240,49 @@ msgstr "avertisment: am euat n depozitarea intrrii pentru %s (%s)"
msgid "warning: %s: ignoring bogus filename"
msgstr "avertisment: %s: se ignor numele de fiier fals(bogus)"
-#: src/globbing_test.c:59
+#: src/globbing_test.c:55
msgid "PATH SECTION NAME"
msgstr ""
-#: src/globbing_test.c:63 src/man.c:292
+#: src/globbing_test.c:59 src/man.c:292
msgid "EXTENSION"
msgstr ""
-#: src/globbing_test.c:63 src/man.c:293
+#: src/globbing_test.c:59 src/man.c:293
msgid "limit search to extension type EXTENSION"
msgstr ""
-#: src/globbing_test.c:64 src/man.c:294
+#: src/globbing_test.c:60 src/man.c:294
msgid "look for pages case-insensitively (default)"
msgstr ""
-#: src/globbing_test.c:65 src/man.c:295
+#: src/globbing_test.c:61 src/man.c:295
msgid "look for pages case-sensitively"
msgstr ""
-#: src/globbing_test.c:66
+#: src/globbing_test.c:62
msgid "interpret page name as a regex"
msgstr ""
-#: src/globbing_test.c:67
+#: src/globbing_test.c:63
msgid "the page name contains wildcards"
msgstr ""
-#: src/lexgrog.l:691
+#: src/lexgrog.l:701
#, fuzzy, c-format
msgid "warning: whatis for %s exceeds %d byte, truncating."
msgid_plural "warning: whatis for %s exceeds %d bytes, truncating."
msgstr[0] "avertisment: whatis pentru %s depete %d octei, se trunchiaz."
msgstr[1] "avertisment: whatis pentru %s depete %d octei, se trunchiaz."
-#: src/lexgrog.l:844 src/man.c:2268 src/man.c:2350 src/man.c:2448
+#: src/lexgrog.l:854 src/man.c:2270 src/man.c:2354 src/man.c:2452
#: src/manconv_main.c:168 src/straycats.c:218 src/ult_src.c:321
-#: src/ult_src.c:335 src/zsoelim.l:512
+#: src/ult_src.c:335 src/zsoelim.l:519
#, c-format
msgid "can't open %s"
msgstr "nu se poate deschide %s"
-#: src/lexgrog_test.c:69 src/zsoelim_main.c:66
+#: src/lexgrog_test.c:69 src/zsoelim_main.c:65
msgid "FILE..."
msgstr ""
@@ -381,7 +381,7 @@ msgstr ""
msgid "Finding manual pages:"
msgstr " Pagin de manual "
-#: src/man.c:287 src/whatis.c:138
+#: src/man.c:287 src/whatis.c:137
msgid "LOCALE"
msgstr ""
@@ -389,15 +389,15 @@ msgstr ""
msgid "define the locale for this particular man search"
msgstr ""
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "SYSTEM"
msgstr ""
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "use manual pages from other systems"
msgstr ""
-#: src/man.c:290 src/whatis.c:134
+#: src/man.c:290 src/whatis.c:133
msgid "LIST"
msgstr ""
@@ -505,79 +505,79 @@ msgstr ""
msgid "use groff and force it to produce ditroff"
msgstr ""
-#: src/man.c:597 src/man.c:733
+#: src/man.c:599 src/man.c:735
#, fuzzy, c-format
msgid "No manual entry for %s\n"
msgstr "Nu exist intrare n manual pentru %s"
-#: src/man.c:599
+#: src/man.c:601
#, fuzzy, c-format
msgid "(Alternatively, what manual page do you want from section %s?)\n"
msgstr "Ce pagin de manual dorii din seciunea %s?\n"
-#: src/man.c:603
+#: src/man.c:605
msgid "What manual page do you want?\n"
msgstr "Ce pagin de manual dorii?\n"
-#: src/man.c:730
+#: src/man.c:732
#, fuzzy, c-format
msgid "No manual entry for %s in section %s\n"
msgstr "Nu exist intrare n manual pentru %s"
-#: src/man.c:739
+#: src/man.c:741
#, c-format
msgid "See '%s' for help when manual pages are not available.\n"
msgstr ""
"Citii `%s' pentru ajutor n caz c paginile de manual nu sunt disponibile.\n"
-#: src/man.c:1347
+#: src/man.c:1349
#, c-format
msgid "ignoring unknown preprocessor `%c'"
msgstr "se ignor preprocesorul necunoscut `%c'"
-#: src/man.c:1710 src/mandb.c:224
+#: src/man.c:1712 src/mandb.c:223
#, c-format
msgid "can't rename %s to %s"
msgstr "nu se poate redenumi %s n %s"
-#: src/man.c:1727
+#: src/man.c:1729
#, c-format
msgid "can't set times on %s"
msgstr "nu se poate seta timpul pe %s"
-#: src/man.c:1736 src/man.c:1773
+#: src/man.c:1738 src/man.c:1775
#, c-format
msgid "can't unlink %s"
msgstr "nu se poate scoate linkul(unlink) la %s"
-#: src/man.c:1803
+#: src/man.c:1805
#, fuzzy, c-format
msgid "can't create temporary cat for %s"
msgstr "nu se poate crea un nume de fiier temporar"
-#: src/man.c:1913
+#: src/man.c:1915
#, fuzzy, c-format
msgid "can't create temporary directory"
msgstr "nu se poate crea un nume de fiier temporar"
-#: src/man.c:1924
+#: src/man.c:1926
#, fuzzy, c-format
msgid "can't open temporary file %s"
msgstr "nu se poate deschide fiierul de configurare al cii de man %s"
-#: src/man.c:1954 src/man.c:1983
+#: src/man.c:1956 src/man.c:1985
#, c-format
msgid "can't remove directory %s"
msgstr "nu se poate terge directorul %s"
-#: src/man.c:2112
+#: src/man.c:2114
#, c-format
msgid "--Man-- next: %s [ view (return) | skip (Ctrl-D) | quit (Ctrl-C) ]\n"
msgstr ""
"--Man-- urmtor: %s [ vizualizare (return) | omitere (Ctrl-D) | ieire (Ctrl-"
"C) ]\n"
-#: src/man.c:2393
+#: src/man.c:2397
#, c-format
msgid ""
"\n"
@@ -586,27 +586,27 @@ msgstr ""
"\n"
"nu se poate scrie n %s n modul catman"
-#: src/man.c:2474
+#: src/man.c:2477
#, c-format
msgid "Can't convert %s to cat name"
msgstr "Nu pot converti %s n nume cat"
-#: src/man.c:3203
+#: src/man.c:3206
#, c-format
msgid "%s: relying on whatis refs is deprecated\n"
msgstr "%s: ncrederea n referinele whatis este nvechit\n"
-#: src/man.c:3346 src/man.c:4196
+#: src/man.c:3349 src/man.c:4200
#, c-format
msgid "mandb command failed with exit status %d"
msgstr "comanda mandb a euat cu stare de ieire %d"
-#: src/man.c:3548
+#: src/man.c:3551
#, c-format
msgid "internal error: candidate type %d out of range"
msgstr "eroare intern: candidatul tip %d depete domeniul"
-#: src/man.c:4137
+#: src/man.c:4141
msgid " Manual page "
msgstr " Pagin de manual "
@@ -639,7 +639,7 @@ msgstr ""
msgid "encoding for output"
msgstr ""
-#: src/manconv_main.c:97 src/manpath.c:68
+#: src/manconv_main.c:97 src/manpath.c:66
msgid "produce fewer warnings"
msgstr ""
@@ -653,75 +653,75 @@ msgstr ""
msgid "must specify an output encoding"
msgstr ""
-#: src/mandb.c:112
+#: src/mandb.c:111
msgid "[MANPATH]"
msgstr ""
-#: src/mandb.c:116
+#: src/mandb.c:115
msgid "work quietly, except for 'bogus' warning"
msgstr ""
-#: src/mandb.c:117
+#: src/mandb.c:116
msgid "don't look for or add stray cats to the dbs"
msgstr ""
-#: src/mandb.c:118
+#: src/mandb.c:117
msgid "don't purge obsolete entries from the dbs"
msgstr ""
-#: src/mandb.c:119
+#: src/mandb.c:118
msgid "produce user databases only"
msgstr ""
-#: src/mandb.c:120
+#: src/mandb.c:119
msgid "create dbs from scratch, rather than updating"
msgstr ""
-#: src/mandb.c:121
+#: src/mandb.c:120
msgid "check manual pages for correctness"
msgstr ""
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "FILENAME"
msgstr ""
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "update just the entry for this filename"
msgstr ""
-#: src/mandb.c:217
+#: src/mandb.c:216
#, c-format
msgid "can't remove %s"
msgstr "nu se poate terge %s"
-#: src/mandb.c:281
+#: src/mandb.c:280
#, c-format
msgid "can't write to %s"
msgstr "nu se poate scrie n %s"
-#: src/mandb.c:286
+#: src/mandb.c:285
#, c-format
msgid "can't read from %s"
msgstr "nu se poate citi din %s"
-#: src/mandb.c:455
+#: src/mandb.c:457
#, c-format
msgid "Processing manual pages under %s...\n"
msgstr "Se proceseaz paginile de manual sub %s...\n"
-#: src/mandb.c:672 src/mandb.c:698
+#: src/mandb.c:666 src/mandb.c:692
#, fuzzy, c-format
msgid "Removing obsolete cat directory %s...\n"
msgstr "Se verific cat-urile rtcite sub %s...\n"
-#: src/mandb.c:848
+#: src/mandb.c:842
#, c-format
msgid "warning: no MANDB_MAP directives in %s, using your manpath"
msgstr ""
"avertisment: nu exist directive MANDB_MAP n %s, se folosete calea voastr "
"de man"
-#: src/mandb.c:920
+#: src/mandb.c:914
#, fuzzy, c-format
msgid "%d man subdirectory contained newer manual pages.\n"
msgid_plural "%d man subdirectories contained newer manual pages.\n"
@@ -732,28 +732,28 @@ msgstr[1] ""
"%d subdirectoare man conin pagini de manual noi.\n"
"%d pagini de manual au fost adugate.\n"
-#: src/mandb.c:925
+#: src/mandb.c:919
#, fuzzy, c-format
msgid "%d manual page was added.\n"
msgid_plural "%d manual pages were added.\n"
msgstr[0] " Pagin de manual "
msgstr[1] " Pagin de manual "
-#: src/mandb.c:929
+#: src/mandb.c:923
#, fuzzy, c-format
msgid "%d stray cat was added.\n"
msgid_plural "%d stray cats were added.\n"
msgstr[0] "%d cat-uri rtcite au fost adugate.\n"
msgstr[1] "%d cat-uri rtcite au fost adugate.\n"
-#: src/mandb.c:934
+#: src/mandb.c:928
#, fuzzy, c-format
msgid "%d old database entry was purged.\n"
msgid_plural "%d old database entries were purged.\n"
msgstr[0] "%d intrri vechi n baza de date au fost eliminate.\n"
msgstr[1] "%d intrri vechi n baza de date au fost eliminate.\n"
-#: src/mandb.c:952
+#: src/mandb.c:946
#, fuzzy, c-format
msgid "No databases created."
msgstr "Nici o baz de date nnoit (updated)."
@@ -828,15 +828,15 @@ msgstr "nu se poate determina directorul curent"
msgid "warning: %s does not begin with %s"
msgstr "avertisment: %s nu ncepe cu %s"
-#: src/manpath.c:65
+#: src/manpath.c:63
msgid "show relative catpaths"
msgstr ""
-#: src/manpath.c:66
+#: src/manpath.c:64
msgid "show the entire global manpath"
msgstr ""
-#: src/manpath.c:128
+#: src/manpath.c:126
#, c-format
msgid "warning: no global manpaths set in config file %s"
msgstr ""
@@ -867,96 +867,96 @@ msgstr "avertisment: nu se poate nnoi(update) index cache-ul %s"
msgid "%s is self referencing"
msgstr "%s este auto-referin(self-referencing)"
-#: src/whatis.c:123
+#: src/whatis.c:122
msgid "KEYWORD..."
msgstr ""
-#: src/whatis.c:124
+#: src/whatis.c:123
msgid "The --regex option is enabled by default."
msgstr ""
-#: src/whatis.c:128
+#: src/whatis.c:127
msgid "print verbose warning messages"
msgstr ""
-#: src/whatis.c:129
+#: src/whatis.c:128
msgid "interpret each keyword as a regex"
msgstr ""
-#: src/whatis.c:130
+#: src/whatis.c:129
msgid "search each keyword for exact match"
msgstr ""
-#: src/whatis.c:131
+#: src/whatis.c:130
msgid "the keyword(s) contain wildcards"
msgstr ""
-#: src/whatis.c:132
+#: src/whatis.c:131
msgid "require all keywords to match"
msgstr ""
-#: src/whatis.c:133
+#: src/whatis.c:132
msgid "do not trim output to terminal width"
msgstr ""
-#: src/whatis.c:134
+#: src/whatis.c:133
msgid "search only these sections (colon-separated)"
msgstr ""
-#: src/whatis.c:138
+#: src/whatis.c:137
msgid "define the locale for this search"
msgstr ""
-#: src/whatis.c:235
+#: src/whatis.c:234
#, c-format
msgid "%s what?\n"
msgstr "%s ce?\n"
-#: src/whatis.c:412 src/whatis.c:430
+#: src/whatis.c:410 src/whatis.c:428
#, c-format
msgid "warning: %s contains a pointer loop"
msgstr "avertisment: %s conine o bucl pointer"
-#: src/whatis.c:424 src/whatis.c:432
+#: src/whatis.c:422 src/whatis.c:430
msgid "(unknown subject)"
msgstr "(subiect necunoscut)"
-#: src/whatis.c:863
+#: src/whatis.c:861
#, c-format
msgid "%s: nothing appropriate.\n"
msgstr "%s: nimic potrivit.\n"
-#: src/zsoelim.l:171
+#: src/zsoelim.l:178
#, c-format
msgid "%s:%d: .so requests nested too deeply or are recursive"
msgstr ""
-#: src/zsoelim.l:186
+#: src/zsoelim.l:193
#, c-format
msgid "%s:%d: warning: failed .so request"
msgstr ""
-#: src/zsoelim.l:208
+#: src/zsoelim.l:215
#, c-format
msgid "%s:%d: warning: newline in .so request, ignoring"
msgstr ""
-#: src/zsoelim.l:268
+#: src/zsoelim.l:275
#, c-format
msgid "%s:%d: warning: malformed .lf request, ignoring"
msgstr ""
-#: src/zsoelim.l:278
+#: src/zsoelim.l:285
#, c-format
msgid "%s:%d: warning: newline in .lf request, ignoring"
msgstr ""
-#: src/zsoelim.l:318
+#: src/zsoelim.l:325
#, c-format
msgid "%s:%d: unterminated quote in roff request"
msgstr ""
-#: src/zsoelim_main.c:70
+#: src/zsoelim_main.c:69
msgid "compatibility switch (ignored)"
msgstr ""
diff --git a/po/ru.po b/po/ru.po
index 3241a5ee..08adb900 100644
--- a/po/ru.po
+++ b/po/ru.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: man-db 2.8.0-pre2\n"
"Report-Msgid-Bugs-To: Colin Watson <cjwatson@debian.org>\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2018-01-23 05:37+0300\n"
"Last-Translator: Yuri Kozlov <yuray@komyakino.ru>\n"
"Language-Team: Russian <gnu@d07.ru>\n"
@@ -68,7 +68,7 @@ msgstr[2] "в содержимом только %d полей"
msgid "bad fetch on multi key %s"
msgstr "неверная выборка по многомерному ключу %s"
-#: libdb/db_lookup.c:443 src/whatis.c:739
+#: libdb/db_lookup.c:443 src/whatis.c:737
#, c-format
msgid "Database %s corrupted; rebuild with mandb --create"
msgstr "База данных %s повреждена; пересборка командой mandb --create"
@@ -78,28 +78,28 @@ msgstr "База данных %s повреждена; пересборка ко
msgid "warning: %s has no version identifier\n"
msgstr "предупреждение: %s не имеет идентификатора версии\n"
-#: libdb/db_ver.c:56
+#: libdb/db_ver.c:57
#, c-format
msgid "warning: %s is version %s, expecting %s\n"
msgstr "предупреждение: %s имеет версию %s, а ожидается %s\n"
-#: libdb/db_ver.c:78
+#: libdb/db_ver.c:79
#, c-format
msgid "fatal: unable to insert version identifier into %s"
msgstr "неустранимая ошибка: не удалось вставить идентификатор версии в %s"
-#: src/accessdb.c:61
+#: src/accessdb.c:59
msgid "[MAN DATABASE]"
msgstr "[БАЗА ДАННЫХ MAN]"
-#: src/accessdb.c:62
+#: src/accessdb.c:60
#, c-format
msgid "The man database defaults to %s%s."
msgstr "По умолчанию база данных man расположена в %s%s."
-#: src/accessdb.c:65 src/catman.c:103 src/globbing_test.c:62
-#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:115
-#: src/manpath.c:67 src/whatis.c:127 src/zsoelim_main.c:69
+#: src/accessdb.c:63 src/catman.c:100 src/globbing_test.c:58
+#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:114
+#: src/manpath.c:65 src/whatis.c:126 src/zsoelim_main.c:68
msgid "emit debugging messages"
msgstr "показывать сообщения отладки"
@@ -108,44 +108,44 @@ msgstr "показывать сообщения отладки"
msgid "can't open %s for reading"
msgstr "не удалось открыть %s на чтение"
-#: src/catman.c:100
+#: src/catman.c:97
msgid "[SECTION...]"
msgstr "[СЕКЦИЯ...]"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "PATH"
msgstr "ПУТЬ"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "set search path for manual pages to PATH"
msgstr "установить путь поиска справочных страниц в значение ПУТЬ"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "FILE"
msgstr "ФАЙЛ"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "use this user configuration file"
msgstr "использовать указанный пользовательских файл настроек"
-#: src/catman.c:198
+#: src/catman.c:195
#, c-format
msgid "man command failed with exit status %d"
msgstr "команда man завершилась неудачно (код выхода %d)"
-#: src/catman.c:237
+#: src/catman.c:235
#, c-format
msgid "cannot read database %s"
msgstr "не удалось прочитать базу данных %s"
-#: src/catman.c:280
+#: src/catman.c:278
#, c-format
msgid "NULL content for key: %s"
msgstr "содержимое ключа равно NULL: %s"
-#: src/catman.c:295
+#: src/catman.c:294
#, c-format
msgid ""
"\n"
@@ -154,12 +154,12 @@ msgstr ""
"\n"
"Обновление cat файлов в разделе %s man иерархии %s\n"
-#: src/catman.c:349
+#: src/catman.c:348
#, c-format
msgid "cannot write within %s"
msgstr "не удалось записать в %s"
-#: src/catman.c:426
+#: src/catman.c:425
#, c-format
msgid "unable to update %s"
msgstr "не удалось обновить %s"
@@ -169,68 +169,68 @@ msgstr "не удалось обновить %s"
msgid "warning: %s/man%s/%s.%s*: competing extensions"
msgstr "предупреждение: %s/man%s/%s.%s*: конкурирующие расширения"
-#: src/check_mandirs.c:114 src/check_mandirs.c:613
+#: src/check_mandirs.c:126 src/check_mandirs.c:626
#, c-format
msgid "can't update index cache %s"
msgstr "не удалось обновить индексный кэш %s"
-#: src/check_mandirs.c:242
+#: src/check_mandirs.c:254
#, c-format
msgid "warning: %s: bad symlink or ROFF `.so' request"
msgstr ""
"предупреждение: %s: неверная символическая ссылка или запрос ROFF `.so'"
-#: src/check_mandirs.c:298
+#: src/check_mandirs.c:310
#, c-format
msgid "warning: %s: ignoring empty file"
msgstr "предупреждение: %s: игнорируется пустой файл"
-#: src/check_mandirs.c:302 src/straycats.c:276
+#: src/check_mandirs.c:314 src/straycats.c:276
#, c-format
msgid "warning: %s: whatis parse for %s(%s) failed"
msgstr "предупреждение: %s: whatis анализ %s(%s) не удался"
-#: src/check_mandirs.c:329 src/check_mandirs.c:498 src/mandb.c:883
+#: src/check_mandirs.c:341 src/check_mandirs.c:511 src/mandb.c:877
#: src/straycats.c:84 src/straycats.c:303 src/ult_src.c:81
#, c-format
msgid "can't search directory %s"
msgstr "не удалось найти каталог %s"
-#: src/check_mandirs.c:378 src/man.c:1687
+#: src/check_mandirs.c:390 src/man.c:1689
#, c-format
msgid "can't chown %s"
msgstr "не удалось выполнить функцию chown %s"
-#: src/check_mandirs.c:400 src/check_mandirs.c:423
+#: src/check_mandirs.c:412 src/check_mandirs.c:435
#, c-format
msgid "warning: cannot create catdir %s"
msgstr "предупреждение: не удалось создать cat каталог %s"
-#: src/check_mandirs.c:455 src/man.c:1699 src/mandb.c:233
+#: src/check_mandirs.c:467 src/man.c:1701 src/mandb.c:232
#, c-format
msgid "can't chmod %s"
msgstr "не удалось выполнить функцию chmod %s"
-#: src/check_mandirs.c:503
+#: src/check_mandirs.c:516
#, c-format
msgid "can't change to directory %s"
msgstr "не удалось сменить каталог на %s"
-#: src/check_mandirs.c:553
+#: src/check_mandirs.c:566
#, c-format
msgid "can't create index cache %s"
msgstr "не удалось создать индексный кэш %s"
-#: src/check_mandirs.c:578
+#: src/check_mandirs.c:591
#, c-format
msgid "Updating index cache for path `%s/%s'. Wait..."
msgstr "Обновление индексного кэша для пути `%s/%s'. Ждите..."
-#: src/check_mandirs.c:640 src/check_mandirs.c:701
+#: src/check_mandirs.c:653 src/check_mandirs.c:714
msgid "done.\n"
msgstr "завершено.\n"
-#: src/check_mandirs.c:963
+#: src/check_mandirs.c:977
#, c-format
msgid "Purging old database entries in %s...\n"
msgstr "Удаление старых записей базы данных в %s...\n"
@@ -245,35 +245,35 @@ msgstr "предупреждение: не удалось сохранить з
msgid "warning: %s: ignoring bogus filename"
msgstr "предупреждение: %s: игнорируется фальшивое имя файла"
-#: src/globbing_test.c:59
+#: src/globbing_test.c:55
msgid "PATH SECTION NAME"
msgstr "ПУТЬ СЕКЦИЯ ИМЯ"
-#: src/globbing_test.c:63 src/man.c:292
+#: src/globbing_test.c:59 src/man.c:292
msgid "EXTENSION"
msgstr "РАСШИРЕНИЕ"
-#: src/globbing_test.c:63 src/man.c:293
+#: src/globbing_test.c:59 src/man.c:293
msgid "limit search to extension type EXTENSION"
msgstr "искать только с заданным РАСШИРЕНИЕМ"
-#: src/globbing_test.c:64 src/man.c:294
+#: src/globbing_test.c:60 src/man.c:294
msgid "look for pages case-insensitively (default)"
msgstr "не учитывать регистр при поиске (по умолчанию)"
-#: src/globbing_test.c:65 src/man.c:295
+#: src/globbing_test.c:61 src/man.c:295
msgid "look for pages case-sensitively"
msgstr "учитывать регистр при поиске"
-#: src/globbing_test.c:66
+#: src/globbing_test.c:62
msgid "interpret page name as a regex"
msgstr "считать имя страницы регулярным выражением"
-#: src/globbing_test.c:67
+#: src/globbing_test.c:63
msgid "the page name contains wildcards"
msgstr "имя страницы содержит групповые символы"
-#: src/lexgrog.l:691
+#: src/lexgrog.l:701
#, c-format
msgid "warning: whatis for %s exceeds %d byte, truncating."
msgid_plural "warning: whatis for %s exceeds %d bytes, truncating."
@@ -284,14 +284,14 @@ msgstr[1] ""
msgstr[2] ""
"предупреждение: результат whatis для %s превысил %d байт, обрезается."
-#: src/lexgrog.l:844 src/man.c:2268 src/man.c:2350 src/man.c:2448
+#: src/lexgrog.l:854 src/man.c:2270 src/man.c:2354 src/man.c:2452
#: src/manconv_main.c:168 src/straycats.c:218 src/ult_src.c:321
-#: src/ult_src.c:335 src/zsoelim.l:512
+#: src/ult_src.c:335 src/zsoelim.l:519
#, c-format
msgid "can't open %s"
msgstr "не удалось открыть %s"
-#: src/lexgrog_test.c:69 src/zsoelim_main.c:66
+#: src/lexgrog_test.c:69 src/zsoelim_main.c:65
msgid "FILE..."
msgstr "ФАЙЛ..."
@@ -389,7 +389,7 @@ msgstr "вывести исходную страницу в КОДИРОВКЕ"
msgid "Finding manual pages:"
msgstr "Поиск справочных страниц:"
-#: src/man.c:287 src/whatis.c:138
+#: src/man.c:287 src/whatis.c:137
msgid "LOCALE"
msgstr "ЛОКАЛЬ"
@@ -397,15 +397,15 @@ msgstr "ЛОКАЛЬ"
msgid "define the locale for this particular man search"
msgstr "задать локаль для поиска"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "SYSTEM"
msgstr "СИСТЕМА"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "use manual pages from other systems"
msgstr "использовать справочные страницы от других систем"
-#: src/man.c:290 src/whatis.c:134
+#: src/man.c:290 src/whatis.c:133
msgid "LIST"
msgstr "СПИСОК"
@@ -519,77 +519,77 @@ msgstr ""
msgid "use groff and force it to produce ditroff"
msgstr "использовать groff и заставить его генерировать ditroff"
-#: src/man.c:597 src/man.c:733
+#: src/man.c:599 src/man.c:735
#, c-format
msgid "No manual entry for %s\n"
msgstr "Нет справочной страницы для %s\n"
-#: src/man.c:599
+#: src/man.c:601
#, c-format
msgid "(Alternatively, what manual page do you want from section %s?)\n"
msgstr "(Или же, какая именно из справочных страниц раздела %s вам нужна?)\n"
-#: src/man.c:603
+#: src/man.c:605
msgid "What manual page do you want?\n"
msgstr "Какая справочная страница вам нужна?\n"
-#: src/man.c:730
+#: src/man.c:732
#, c-format
msgid "No manual entry for %s in section %s\n"
msgstr "Нет справочной страницы для %s в разделе %s\n"
-#: src/man.c:739
+#: src/man.c:741
#, c-format
msgid "See '%s' for help when manual pages are not available.\n"
msgstr "Смотрите '%s' в справке, если недоступны справочные страницы.\n"
-#: src/man.c:1347
+#: src/man.c:1349
#, c-format
msgid "ignoring unknown preprocessor `%c'"
msgstr "игнорирование неизвестного препроцессора `%c'"
-#: src/man.c:1710 src/mandb.c:224
+#: src/man.c:1712 src/mandb.c:223
#, c-format
msgid "can't rename %s to %s"
msgstr "не удалось переименовать %s в %s"
-#: src/man.c:1727
+#: src/man.c:1729
#, c-format
msgid "can't set times on %s"
msgstr "не удалось установить время доступа для %s"
-#: src/man.c:1736 src/man.c:1773
+#: src/man.c:1738 src/man.c:1775
#, c-format
msgid "can't unlink %s"
msgstr "не удалось выполнить функцию unlink %s"
-#: src/man.c:1803
+#: src/man.c:1805
#, c-format
msgid "can't create temporary cat for %s"
msgstr "не удалось создать временный cat файл %s"
-#: src/man.c:1913
+#: src/man.c:1915
#, c-format
msgid "can't create temporary directory"
msgstr "не удалось создать временный каталог"
-#: src/man.c:1924
+#: src/man.c:1926
#, c-format
msgid "can't open temporary file %s"
msgstr "не удалось открыть временный файл %s"
-#: src/man.c:1954 src/man.c:1983
+#: src/man.c:1956 src/man.c:1985
#, c-format
msgid "can't remove directory %s"
msgstr "не удалось удалить каталог %s"
-#: src/man.c:2112
+#: src/man.c:2114
#, c-format
msgid "--Man-- next: %s [ view (return) | skip (Ctrl-D) | quit (Ctrl-C) ]\n"
msgstr ""
"--Man-- след: %s [ просм (ввод) | пропуск (Ctrl-D) | выход (Ctrl-C) ]\n"
-#: src/man.c:2393
+#: src/man.c:2397
#, c-format
msgid ""
"\n"
@@ -598,27 +598,27 @@ msgstr ""
"\n"
"не удалось записать в %s в режиме catman"
-#: src/man.c:2474
+#: src/man.c:2477
#, c-format
msgid "Can't convert %s to cat name"
msgstr "Не удалось преобразовать %s в cat имя"
-#: src/man.c:3203
+#: src/man.c:3206
#, c-format
msgid "%s: relying on whatis refs is deprecated\n"
msgstr "%s: полагаться на ссылки whatis настоятельно не рекомендуется\n"
-#: src/man.c:3346 src/man.c:4196
+#: src/man.c:3349 src/man.c:4200
#, c-format
msgid "mandb command failed with exit status %d"
msgstr "команда mandb завершилась неудачно (код выхода %d)"
-#: src/man.c:3548
+#: src/man.c:3551
#, c-format
msgid "internal error: candidate type %d out of range"
msgstr "внутренняя ошибка: тип кандидата %d вне диапазона"
-#: src/man.c:4137
+#: src/man.c:4141
msgid " Manual page "
msgstr " Справочная страница "
@@ -651,7 +651,7 @@ msgstr "КОДИРОВКА"
msgid "encoding for output"
msgstr "кодировка вывода"
-#: src/manconv_main.c:97 src/manpath.c:68
+#: src/manconv_main.c:97 src/manpath.c:66
msgid "produce fewer warnings"
msgstr "выводить некоторые предупреждения"
@@ -665,73 +665,73 @@ msgstr "должна быть указана кодировка входных
msgid "must specify an output encoding"
msgstr "должна быть указана кодировка выходных данных"
-#: src/mandb.c:112
+#: src/mandb.c:111
msgid "[MANPATH]"
msgstr "[MANPATH]"
-#: src/mandb.c:116
+#: src/mandb.c:115
msgid "work quietly, except for 'bogus' warning"
msgstr "не выводить сообщения, за исключением 'фиктивных' предупреждений"
-#: src/mandb.c:117
+#: src/mandb.c:116
msgid "don't look for or add stray cats to the dbs"
msgstr "не искать или добавлять побочные cat в dbs"
-#: src/mandb.c:118
+#: src/mandb.c:117
msgid "don't purge obsolete entries from the dbs"
msgstr "не вычищать устаревшие записи из dbs"
-#: src/mandb.c:119
+#: src/mandb.c:118
msgid "produce user databases only"
msgstr "создать только пользовательские базы данных"
-#: src/mandb.c:120
+#: src/mandb.c:119
msgid "create dbs from scratch, rather than updating"
msgstr "создать dbs с нуля, а не обновлять"
-#: src/mandb.c:121
+#: src/mandb.c:120
msgid "check manual pages for correctness"
msgstr "проверить справочные страницы на правильность"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "FILENAME"
msgstr "ИМЯ-ФАЙЛА"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "update just the entry for this filename"
msgstr "обновить запись только для этого файла"
-#: src/mandb.c:217
+#: src/mandb.c:216
#, c-format
msgid "can't remove %s"
msgstr "не удалось удалить %s"
-#: src/mandb.c:281
+#: src/mandb.c:280
#, c-format
msgid "can't write to %s"
msgstr "не удалось записать в %s"
-#: src/mandb.c:286
+#: src/mandb.c:285
#, c-format
msgid "can't read from %s"
msgstr "не удалось прочитать из %s"
-#: src/mandb.c:455
+#: src/mandb.c:457
#, c-format
msgid "Processing manual pages under %s...\n"
msgstr "Обработка справочных страниц в %s...\n"
-#: src/mandb.c:672 src/mandb.c:698
+#: src/mandb.c:666 src/mandb.c:692
#, c-format
msgid "Removing obsolete cat directory %s...\n"
msgstr "Удаляется устаревший каталог cat %s...\n"
-#: src/mandb.c:848
+#: src/mandb.c:842
#, c-format
msgid "warning: no MANDB_MAP directives in %s, using your manpath"
msgstr "предупреждение: нет директивы MANDB_MAP в %s, используется ваш manpath"
-#: src/mandb.c:920
+#: src/mandb.c:914
#, c-format
msgid "%d man subdirectory contained newer manual pages.\n"
msgid_plural "%d man subdirectories contained newer manual pages.\n"
@@ -739,7 +739,7 @@ msgstr[0] "В %d man-подкаталоге содержатся более но
msgstr[1] "В %d man-подкаталогах содержатся более новые справочные страницы.\n"
msgstr[2] "В %d man-подкаталогах содержатся более новые справочные страницы.\n"
-#: src/mandb.c:925
+#: src/mandb.c:919
#, c-format
msgid "%d manual page was added.\n"
msgid_plural "%d manual pages were added.\n"
@@ -747,7 +747,7 @@ msgstr[0] "Добавлена %d справочная страница.\n"
msgstr[1] "Добавлено %d справочные страницы.\n"
msgstr[2] "Добавлено %d справочных страниц.\n"
-#: src/mandb.c:929
+#: src/mandb.c:923
#, c-format
msgid "%d stray cat was added.\n"
msgid_plural "%d stray cats were added.\n"
@@ -755,7 +755,7 @@ msgstr[0] "Добавлена %d побочная cat-страница.\n"
msgstr[1] "Добавлено %d побочные cat-страницы.\n"
msgstr[2] "Добавлено %d побочных cat-страниц.\n"
-#: src/mandb.c:934
+#: src/mandb.c:928
#, c-format
msgid "%d old database entry was purged.\n"
msgid_plural "%d old database entries were purged.\n"
@@ -763,7 +763,7 @@ msgstr[0] "Вычищена %d старая запись базы данных.\
msgstr[1] "Вычищено %d старые записи базы данных.\n"
msgstr[2] "Вычищено %d старых записей базы данных.\n"
-#: src/mandb.c:952
+#: src/mandb.c:946
#, c-format
msgid "No databases created."
msgstr "Базы данных не созданы."
@@ -840,15 +840,15 @@ msgstr "не удалось определить текущий каталог"
msgid "warning: %s does not begin with %s"
msgstr "предупреждение: %s не начинается с %s"
-#: src/manpath.c:65
+#: src/manpath.c:63
msgid "show relative catpaths"
msgstr "показать относительные catpath"
-#: src/manpath.c:66
+#: src/manpath.c:64
msgid "show the entire global manpath"
msgstr "показать весь глобальный manpath"
-#: src/manpath.c:128
+#: src/manpath.c:126
#, c-format
msgid "warning: no global manpaths set in config file %s"
msgstr "предупреждение: не установлены глобальные manpath в файле настроек %s"
@@ -878,97 +878,97 @@ msgstr "предупреждение: не удалось обновить ин
msgid "%s is self referencing"
msgstr "%s ссылается на себя"
-#: src/whatis.c:123
+#: src/whatis.c:122
msgid "KEYWORD..."
msgstr "КЛЮЧ..."
-#: src/whatis.c:124
+#: src/whatis.c:123
msgid "The --regex option is enabled by default."
msgstr "Параметр --regex включён по умолчанию."
-#: src/whatis.c:128
+#: src/whatis.c:127
msgid "print verbose warning messages"
msgstr "выводить подробные предупреждающие сообщения"
-#: src/whatis.c:129
+#: src/whatis.c:128
msgid "interpret each keyword as a regex"
msgstr "считать каждый ключ регулярным выражением"
-#: src/whatis.c:130
+#: src/whatis.c:129
msgid "search each keyword for exact match"
msgstr "искать точное совпадения каждого ключа"
-#: src/whatis.c:131
+#: src/whatis.c:130
msgid "the keyword(s) contain wildcards"
msgstr "ключ(и) содержит групповые символы"
-#: src/whatis.c:132
+#: src/whatis.c:131
msgid "require all keywords to match"
msgstr "требуется совпадение всех ключей"
-#: src/whatis.c:133
+#: src/whatis.c:132
msgid "do not trim output to terminal width"
msgstr "не обрезать вывод по ширине терминала"
-#: src/whatis.c:134
+#: src/whatis.c:133
msgid "search only these sections (colon-separated)"
msgstr "искать только в этих секциях (разделяются двоеточиями)"
-#: src/whatis.c:138
+#: src/whatis.c:137
msgid "define the locale for this search"
msgstr "задать локаль для этого поиска"
-#: src/whatis.c:235
+#: src/whatis.c:234
#, c-format
msgid "%s what?\n"
msgstr "%s что?\n"
-#: src/whatis.c:412 src/whatis.c:430
+#: src/whatis.c:410 src/whatis.c:428
#, c-format
msgid "warning: %s contains a pointer loop"
msgstr "warning: %s содержит циклический указатель"
-#: src/whatis.c:424 src/whatis.c:432
+#: src/whatis.c:422 src/whatis.c:430
msgid "(unknown subject)"
msgstr "(неизвестный объект)"
-#: src/whatis.c:863
+#: src/whatis.c:861
#, c-format
msgid "%s: nothing appropriate.\n"
msgstr "%s: ничего подходящего не найдено.\n"
-#: src/zsoelim.l:171
+#: src/zsoelim.l:178
#, c-format
msgid "%s:%d: .so requests nested too deeply or are recursive"
msgstr "%s:%d: .so запрашивает слишком глубокую вложенность или это рекурсия"
-#: src/zsoelim.l:186
+#: src/zsoelim.l:193
#, c-format
msgid "%s:%d: warning: failed .so request"
msgstr "%s:%d: предупреждение: .so запрос завершился неудачно"
-#: src/zsoelim.l:208
+#: src/zsoelim.l:215
#, c-format
msgid "%s:%d: warning: newline in .so request, ignoring"
msgstr "%s:%d: предупреждение: новая строка в .so запросе, игнорируется"
-#: src/zsoelim.l:268
+#: src/zsoelim.l:275
#, c-format
msgid "%s:%d: warning: malformed .lf request, ignoring"
msgstr ""
"%s:%d: предупреждение: неправильно сформированный .lf запрос, игнорируется"
-#: src/zsoelim.l:278
+#: src/zsoelim.l:285
#, c-format
msgid "%s:%d: warning: newline in .lf request, ignoring"
msgstr "%s:%d: предупреждение: новая строка в .lf запросе, игнорируется"
-#: src/zsoelim.l:318
+#: src/zsoelim.l:325
#, c-format
msgid "%s:%d: unterminated quote in roff request"
msgstr "%s:%d: незакрытая кавычка в roff запросе"
-#: src/zsoelim_main.c:70
+#: src/zsoelim_main.c:69
msgid "compatibility switch (ignored)"
msgstr "для совместимости (игнорируется)"
diff --git a/po/sr.po b/po/sr.po
index 1939f691..329974d9 100644
--- a/po/sr.po
+++ b/po/sr.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: man-db 2.7.6.1\n"
"Report-Msgid-Bugs-To: Colin Watson <cjwatson@debian.org>\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2016-12-18 06:38+0200\n"
"Last-Translator: Мирослав Николић <miroslavnikolic@rocketmail.com>\n"
"Language-Team: Serbian <(nothing)>\n"
@@ -66,7 +66,7 @@ msgstr[2] "само %d поља у садржају"
msgid "bad fetch on multi key %s"
msgstr "лоша набавка на вишеструком кључу „%s“"
-#: libdb/db_lookup.c:443 src/whatis.c:739
+#: libdb/db_lookup.c:443 src/whatis.c:737
#, c-format
msgid "Database %s corrupted; rebuild with mandb --create"
msgstr "База података „%s“ је оштећена; изградите поново са „mandb --create“"
@@ -76,28 +76,28 @@ msgstr "База података „%s“ је оштећена; изгради
msgid "warning: %s has no version identifier\n"
msgstr "упозорење: „%s“ нема одредника издања\n"
-#: libdb/db_ver.c:56
+#: libdb/db_ver.c:57
#, c-format
msgid "warning: %s is version %s, expecting %s\n"
msgstr "упозорење: „%s“ је у издању %s, очекивах %s\n"
-#: libdb/db_ver.c:78
+#: libdb/db_ver.c:79
#, c-format
msgid "fatal: unable to insert version identifier into %s"
msgstr "кобно: не могу да уметнем одредника издања у „%s“"
-#: src/accessdb.c:61
+#: src/accessdb.c:59
msgid "[MAN DATABASE]"
msgstr "[БАЗА ПОДАТАКА МАН-а]"
-#: src/accessdb.c:62
+#: src/accessdb.c:60
#, c-format
msgid "The man database defaults to %s%s."
msgstr "База података мана се пребацује на %s%s."
-#: src/accessdb.c:65 src/catman.c:103 src/globbing_test.c:62
-#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:115
-#: src/manpath.c:67 src/whatis.c:127 src/zsoelim_main.c:69
+#: src/accessdb.c:63 src/catman.c:100 src/globbing_test.c:58
+#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:114
+#: src/manpath.c:65 src/whatis.c:126 src/zsoelim_main.c:68
msgid "emit debugging messages"
msgstr "исписује поруке за исправљање грешака"
@@ -106,44 +106,44 @@ msgstr "исписује поруке за исправљање грешака"
msgid "can't open %s for reading"
msgstr "не могу да отворим „%s“ за читање"
-#: src/catman.c:100
+#: src/catman.c:97
msgid "[SECTION...]"
msgstr "[ОДЕЉАК...]"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "PATH"
msgstr "ПУТАЊА"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "set search path for manual pages to PATH"
msgstr "поставља путању претраге за странице упутства на ПУТАЊУ"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "FILE"
msgstr "ДАТОТЕКА"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "use this user configuration file"
msgstr "користи ову корисничку датотеку подешавања"
-#: src/catman.c:198
+#: src/catman.c:195
#, c-format
msgid "man command failed with exit status %d"
msgstr "наредба мана није успела са излазним стањем „%d“"
-#: src/catman.c:237
+#: src/catman.c:235
#, c-format
msgid "cannot read database %s"
msgstr "не могу да прочитам базу података „%s“"
-#: src/catman.c:280
+#: src/catman.c:278
#, c-format
msgid "NULL content for key: %s"
msgstr "НИШТАВАН садржај за кључ: %s"
-#: src/catman.c:295
+#: src/catman.c:294
#, c-format
msgid ""
"\n"
@@ -152,12 +152,12 @@ msgstr ""
"\n"
"Ажурирам кат датотеке за одељак %s манове хијерархије %s\n"
-#: src/catman.c:349
+#: src/catman.c:348
#, c-format
msgid "cannot write within %s"
msgstr "не могу да пишем у „%s“"
-#: src/catman.c:426
+#: src/catman.c:425
#, c-format
msgid "unable to update %s"
msgstr "не могу да ажурирам „%s“"
@@ -167,67 +167,67 @@ msgstr "не могу да ажурирам „%s“"
msgid "warning: %s/man%s/%s.%s*: competing extensions"
msgstr "упозорење: %s/man%s/%s.%s*: конкурентна проширења"
-#: src/check_mandirs.c:114 src/check_mandirs.c:613
+#: src/check_mandirs.c:126 src/check_mandirs.c:626
#, c-format
msgid "can't update index cache %s"
msgstr "не могу да ажурирам оставу индекса „%s“"
-#: src/check_mandirs.c:242
+#: src/check_mandirs.c:254
#, c-format
msgid "warning: %s: bad symlink or ROFF `.so' request"
msgstr "упозорење: %s: лоша симболичка веза или РОФФ „.so“ захтев"
-#: src/check_mandirs.c:298
+#: src/check_mandirs.c:310
#, c-format
msgid "warning: %s: ignoring empty file"
msgstr "упозорење: %s: занемарујем празну датотеку"
-#: src/check_mandirs.c:302 src/straycats.c:276
+#: src/check_mandirs.c:314 src/straycats.c:276
#, c-format
msgid "warning: %s: whatis parse for %s(%s) failed"
msgstr "упозорење: %s: није успела обрада шта-је за %s(%s)"
-#: src/check_mandirs.c:329 src/check_mandirs.c:498 src/mandb.c:883
+#: src/check_mandirs.c:341 src/check_mandirs.c:511 src/mandb.c:877
#: src/straycats.c:84 src/straycats.c:303 src/ult_src.c:81
#, c-format
msgid "can't search directory %s"
msgstr "не могу да претражим директоријум „%s“"
-#: src/check_mandirs.c:378 src/man.c:1687
+#: src/check_mandirs.c:390 src/man.c:1689
#, c-format
msgid "can't chown %s"
msgstr "не могу да променим власника „%s“"
-#: src/check_mandirs.c:400 src/check_mandirs.c:423
+#: src/check_mandirs.c:412 src/check_mandirs.c:435
#, c-format
msgid "warning: cannot create catdir %s"
msgstr "упозорење: не могу да направим катдир „%s“"
-#: src/check_mandirs.c:455 src/man.c:1699 src/mandb.c:233
+#: src/check_mandirs.c:467 src/man.c:1701 src/mandb.c:232
#, c-format
msgid "can't chmod %s"
msgstr "не могу да променим режим „%s“"
-#: src/check_mandirs.c:503
+#: src/check_mandirs.c:516
#, c-format
msgid "can't change to directory %s"
msgstr "не могу да пређем у директоријум „%s“"
-#: src/check_mandirs.c:553
+#: src/check_mandirs.c:566
#, c-format
msgid "can't create index cache %s"
msgstr "не могу да направим оставу индекса „%s“"
-#: src/check_mandirs.c:578
+#: src/check_mandirs.c:591
#, c-format
msgid "Updating index cache for path `%s/%s'. Wait..."
msgstr "Ажурирам оставу индекса за путању „%s/%s“. Сачекајте..."
-#: src/check_mandirs.c:640 src/check_mandirs.c:701
+#: src/check_mandirs.c:653 src/check_mandirs.c:714
msgid "done.\n"
msgstr "готово.\n"
-#: src/check_mandirs.c:963
+#: src/check_mandirs.c:977
#, c-format
msgid "Purging old database entries in %s...\n"
msgstr "Избацујем старе уносе базе података у „%s“...\n"
@@ -242,35 +242,35 @@ msgstr "упозорење: нисам успео да ускладиштим у
msgid "warning: %s: ignoring bogus filename"
msgstr "упозорење: %s: занемарујем нетачан назив датотеке"
-#: src/globbing_test.c:59
+#: src/globbing_test.c:55
msgid "PATH SECTION NAME"
msgstr "ПУТАЊА ОДЕЉАК НАЗИВ"
-#: src/globbing_test.c:63 src/man.c:292
+#: src/globbing_test.c:59 src/man.c:292
msgid "EXTENSION"
msgstr "ПРОШИРЕЊЕ"
-#: src/globbing_test.c:63 src/man.c:293
+#: src/globbing_test.c:59 src/man.c:293
msgid "limit search to extension type EXTENSION"
msgstr "ограничава претрагу на врсту проширења ПРОШИРЕЊЕ"
-#: src/globbing_test.c:64 src/man.c:294
+#: src/globbing_test.c:60 src/man.c:294
msgid "look for pages case-insensitively (default)"
msgstr "тражи странице без обзира на величину слова (основно)"
-#: src/globbing_test.c:65 src/man.c:295
+#: src/globbing_test.c:61 src/man.c:295
msgid "look for pages case-sensitively"
msgstr "тражи странице с обзиром на величину слова"
-#: src/globbing_test.c:66
+#: src/globbing_test.c:62
msgid "interpret page name as a regex"
msgstr "тумачи назив странице као регуларни израз"
-#: src/globbing_test.c:67
+#: src/globbing_test.c:63
msgid "the page name contains wildcards"
msgstr "назив странице садржи џокере"
-#: src/lexgrog.l:691
+#: src/lexgrog.l:701
#, c-format
msgid "warning: whatis for %s exceeds %d byte, truncating."
msgid_plural "warning: whatis for %s exceeds %d bytes, truncating."
@@ -278,14 +278,14 @@ msgstr[0] "упозорење: шта-је за „%s“ премашује %d
msgstr[1] "упозорење: шта-је за „%s“ премашује %d бајта, скраћујем."
msgstr[2] "упозорење: шта-је за „%s“ премашује %d бајтова, скраћујем."
-#: src/lexgrog.l:844 src/man.c:2268 src/man.c:2350 src/man.c:2448
+#: src/lexgrog.l:854 src/man.c:2270 src/man.c:2354 src/man.c:2452
#: src/manconv_main.c:168 src/straycats.c:218 src/ult_src.c:321
-#: src/ult_src.c:335 src/zsoelim.l:512
+#: src/ult_src.c:335 src/zsoelim.l:519
#, c-format
msgid "can't open %s"
msgstr "не могу да отворим „%s“"
-#: src/lexgrog_test.c:69 src/zsoelim_main.c:66
+#: src/lexgrog_test.c:69 src/zsoelim_main.c:65
msgid "FILE..."
msgstr "ДАТОТЕКА..."
@@ -383,7 +383,7 @@ msgstr "излазна страница извора је кодирана у К
msgid "Finding manual pages:"
msgstr "Проналажење страница упутства:"
-#: src/man.c:287 src/whatis.c:138
+#: src/man.c:287 src/whatis.c:137
msgid "LOCALE"
msgstr "ЈЕЗИК"
@@ -391,15 +391,15 @@ msgstr "ЈЕЗИК"
msgid "define the locale for this particular man search"
msgstr "одређује језик за ову нарочиту претрагу мана"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "SYSTEM"
msgstr "СИСТЕМ"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "use manual pages from other systems"
msgstr "користи странице упутства са других система"
-#: src/man.c:290 src/whatis.c:134
+#: src/man.c:290 src/whatis.c:133
msgid "LIST"
msgstr "СПИСАК"
@@ -513,78 +513,78 @@ msgstr ""
msgid "use groff and force it to produce ditroff"
msgstr "користи гроф и приморава га да произведе дитроф"
-#: src/man.c:597 src/man.c:733
+#: src/man.c:599 src/man.c:735
#, c-format
msgid "No manual entry for %s\n"
msgstr "Нема уноса упутства за „%s“\n"
-#: src/man.c:599
+#: src/man.c:601
#, c-format
msgid "(Alternatively, what manual page do you want from section %s?)\n"
msgstr "(Илити, коју страницу упутства желите из одељка %s?)\n"
-#: src/man.c:603
+#: src/man.c:605
msgid "What manual page do you want?\n"
msgstr "Коју страницу упутства желите?\n"
-#: src/man.c:730
+#: src/man.c:732
#, c-format
msgid "No manual entry for %s in section %s\n"
msgstr "Нема уноса упутства за „%s“ у одељку %s\n"
-#: src/man.c:739
+#: src/man.c:741
#, c-format
msgid "See '%s' for help when manual pages are not available.\n"
msgstr "Погледајте „%s“ за помоћ када странице упутства нису доступне.\n"
-#: src/man.c:1347
+#: src/man.c:1349
#, c-format
msgid "ignoring unknown preprocessor `%c'"
msgstr "занемарујем неознати препроцесор „%c“"
-#: src/man.c:1710 src/mandb.c:224
+#: src/man.c:1712 src/mandb.c:223
#, c-format
msgid "can't rename %s to %s"
msgstr "не могу да преименујем „%s“ у „%s“"
-#: src/man.c:1727
+#: src/man.c:1729
#, c-format
msgid "can't set times on %s"
msgstr "не могу да подесим времена на „%s“"
-#: src/man.c:1736 src/man.c:1773
+#: src/man.c:1738 src/man.c:1775
#, c-format
msgid "can't unlink %s"
msgstr "не могу да развежем „%s“"
-#: src/man.c:1803
+#: src/man.c:1805
#, c-format
msgid "can't create temporary cat for %s"
msgstr "не могу да направим привремени кат за „%s“"
-#: src/man.c:1913
+#: src/man.c:1915
#, c-format
msgid "can't create temporary directory"
msgstr "не могу да направим привремени директоријум"
-#: src/man.c:1924
+#: src/man.c:1926
#, c-format
msgid "can't open temporary file %s"
msgstr "не могу да отворим привремену датотеку „%s“"
-#: src/man.c:1954 src/man.c:1983
+#: src/man.c:1956 src/man.c:1985
#, c-format
msgid "can't remove directory %s"
msgstr "не могу да уклоним директоријум „%s“"
-#: src/man.c:2112
+#: src/man.c:2114
#, c-format
msgid "--Man-- next: %s [ view (return) | skip (Ctrl-D) | quit (Ctrl-C) ]\n"
msgstr ""
"--Ман-- следеће: %s [ преглед (повратница) | прескочи (Ктрл-Д) | изађи (Ктрл-"
"Ц) ]\n"
-#: src/man.c:2393
+#: src/man.c:2397
#, c-format
msgid ""
"\n"
@@ -593,27 +593,27 @@ msgstr ""
"\n"
"не могу да пишем у „%s“ у катман режиму"
-#: src/man.c:2474
+#: src/man.c:2477
#, c-format
msgid "Can't convert %s to cat name"
msgstr "Не могу да претворим „%s“ у кат назив"
-#: src/man.c:3203
+#: src/man.c:3206
#, c-format
msgid "%s: relying on whatis refs is deprecated\n"
msgstr "%s: ослањање на упуте шта-је је застарело\n"
-#: src/man.c:3346 src/man.c:4196
+#: src/man.c:3349 src/man.c:4200
#, c-format
msgid "mandb command failed with exit status %d"
msgstr "наредба мандб није успела са излазним стањем „%d“"
-#: src/man.c:3548
+#: src/man.c:3551
#, c-format
msgid "internal error: candidate type %d out of range"
msgstr "унутрашња грешка: врста кандидата „%d“ је ван опсега"
-#: src/man.c:4137
+#: src/man.c:4141
msgid " Manual page "
msgstr " Страница упутства "
@@ -646,7 +646,7 @@ msgstr "КОД"
msgid "encoding for output"
msgstr "кодирање за излаз"
-#: src/manconv_main.c:97 src/manpath.c:68
+#: src/manconv_main.c:97 src/manpath.c:66
msgid "produce fewer warnings"
msgstr "производи мања упозорења"
@@ -660,73 +660,73 @@ msgstr "морате навести кодирање улаза"
msgid "must specify an output encoding"
msgstr "морате навести кодирање излаза"
-#: src/mandb.c:112
+#: src/mandb.c:111
msgid "[MANPATH]"
msgstr "[МАНПУТАЊА]"
-#: src/mandb.c:116
+#: src/mandb.c:115
msgid "work quietly, except for 'bogus' warning"
msgstr "ради тихо, осим за „bogus“ упозорење"
-#: src/mandb.c:117
+#: src/mandb.c:116
msgid "don't look for or add stray cats to the dbs"
msgstr "не тражи или не додаје залутале катсе у базе података"
-#: src/mandb.c:118
+#: src/mandb.c:117
msgid "don't purge obsolete entries from the dbs"
msgstr "не избацује застареле уносе из база података"
-#: src/mandb.c:119
+#: src/mandb.c:118
msgid "produce user databases only"
msgstr "производи само корисничке базе података"
-#: src/mandb.c:120
+#: src/mandb.c:119
msgid "create dbs from scratch, rather than updating"
msgstr "прави базе података од почетка, уместо да их освежава"
-#: src/mandb.c:121
+#: src/mandb.c:120
msgid "check manual pages for correctness"
msgstr "проверава странице упутства за исправношћу"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "FILENAME"
msgstr "ДАТОТЕКА"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "update just the entry for this filename"
msgstr "ажурира само унос за ову датотеку"
-#: src/mandb.c:217
+#: src/mandb.c:216
#, c-format
msgid "can't remove %s"
msgstr "не могу да уклоним „%s“"
-#: src/mandb.c:281
+#: src/mandb.c:280
#, c-format
msgid "can't write to %s"
msgstr "не могу да пишем у „%s“"
-#: src/mandb.c:286
+#: src/mandb.c:285
#, c-format
msgid "can't read from %s"
msgstr "не могу да читам из „%s“"
-#: src/mandb.c:455
+#: src/mandb.c:457
#, c-format
msgid "Processing manual pages under %s...\n"
msgstr "Обрађујем странице упутства под „%s“...\n"
-#: src/mandb.c:672 src/mandb.c:698
+#: src/mandb.c:666 src/mandb.c:692
#, c-format
msgid "Removing obsolete cat directory %s...\n"
msgstr "Уклањам застареле кат директоријуме „%s“...\n"
-#: src/mandb.c:848
+#: src/mandb.c:842
#, c-format
msgid "warning: no MANDB_MAP directives in %s, using your manpath"
msgstr "упозорење: нема МАНБП_МАП смерница у „%s“, користим вашу ман-путању"
-#: src/mandb.c:920
+#: src/mandb.c:914
#, c-format
msgid "%d man subdirectory contained newer manual pages.\n"
msgid_plural "%d man subdirectories contained newer manual pages.\n"
@@ -734,7 +734,7 @@ msgstr[0] "%d ман подиректоријум је садржао новиј
msgstr[1] "%d ман подиректоријума су садржала новије странице упутства.\n"
msgstr[2] "%d ман подиректоријума је садржало новије странице упутства.\n"
-#: src/mandb.c:925
+#: src/mandb.c:919
#, c-format
msgid "%d manual page was added.\n"
msgid_plural "%d manual pages were added.\n"
@@ -742,7 +742,7 @@ msgstr[0] "%d страница упутства је додата.\n"
msgstr[1] "%d странице упутства су додате.\n"
msgstr[2] "%d страница упутства је додато.\n"
-#: src/mandb.c:929
+#: src/mandb.c:923
#, c-format
msgid "%d stray cat was added.\n"
msgid_plural "%d stray cats were added.\n"
@@ -750,7 +750,7 @@ msgstr[0] "%d залутали кат је додат.\n"
msgstr[1] "%d залутала ката су додата.\n"
msgstr[2] "%d залуталих катова је додато.\n"
-#: src/mandb.c:934
+#: src/mandb.c:928
#, c-format
msgid "%d old database entry was purged.\n"
msgid_plural "%d old database entries were purged.\n"
@@ -758,7 +758,7 @@ msgstr[0] "%d стари унос базе података је избачен.
msgstr[1] "%d стара уноса базе података су избачена.\n"
msgstr[2] "%d старих уноса базе података је избачено.\n"
-#: src/mandb.c:952
+#: src/mandb.c:946
#, c-format
msgid "No databases created."
msgstr "Нису направљене базе података."
@@ -833,15 +833,15 @@ msgstr "не могу да одредим текући директоријум"
msgid "warning: %s does not begin with %s"
msgstr "упозорење: „%s“ не почиње са „%s“"
-#: src/manpath.c:65
+#: src/manpath.c:63
msgid "show relative catpaths"
msgstr "показује односне катпутање"
-#: src/manpath.c:66
+#: src/manpath.c:64
msgid "show the entire global manpath"
msgstr "показује читаву општу манпутању"
-#: src/manpath.c:128
+#: src/manpath.c:126
#, c-format
msgid "warning: no global manpaths set in config file %s"
msgstr "упозорење: нису подешене опште манпутање у датотеци подешавања „%s“"
@@ -871,96 +871,96 @@ msgstr "упозорење: не могу да ажурирам оставу и
msgid "%s is self referencing"
msgstr "„%s“ је само упутна"
-#: src/whatis.c:123
+#: src/whatis.c:122
msgid "KEYWORD..."
msgstr "КЉУЧНА РЕЧ..."
-#: src/whatis.c:124
+#: src/whatis.c:123
msgid "The --regex option is enabled by default."
msgstr "Опција „--regex“ је унапред изабрана."
-#: src/whatis.c:128
+#: src/whatis.c:127
msgid "print verbose warning messages"
msgstr "исписује опширне поруке упозорења"
-#: src/whatis.c:129
+#: src/whatis.c:128
msgid "interpret each keyword as a regex"
msgstr "тумачи сваку кључну реч као регуларни израз"
-#: src/whatis.c:130
+#: src/whatis.c:129
msgid "search each keyword for exact match"
msgstr "тражи сваку кључну реч за тачним поклапањем"
-#: src/whatis.c:131
+#: src/whatis.c:130
msgid "the keyword(s) contain wildcards"
msgstr "кључна реч садржи џокера"
-#: src/whatis.c:132
+#: src/whatis.c:131
msgid "require all keywords to match"
msgstr "захтева све кључне речи за подударање"
-#: src/whatis.c:133
+#: src/whatis.c:132
msgid "do not trim output to terminal width"
msgstr "не крати излаз на ширину терминала"
-#: src/whatis.c:134
+#: src/whatis.c:133
msgid "search only these sections (colon-separated)"
msgstr "претаржује само ове одељке (раздвојене двотачком)"
-#: src/whatis.c:138
+#: src/whatis.c:137
msgid "define the locale for this search"
msgstr "одређује језик за ову претрагу"
-#: src/whatis.c:235
+#: src/whatis.c:234
#, c-format
msgid "%s what?\n"
msgstr "%s шта?\n"
-#: src/whatis.c:412 src/whatis.c:430
+#: src/whatis.c:410 src/whatis.c:428
#, c-format
msgid "warning: %s contains a pointer loop"
msgstr "упозорење: „%s“ садржи петљу показивача"
-#: src/whatis.c:424 src/whatis.c:432
+#: src/whatis.c:422 src/whatis.c:430
msgid "(unknown subject)"
msgstr "(непознат субјекат)"
-#: src/whatis.c:863
+#: src/whatis.c:861
#, c-format
msgid "%s: nothing appropriate.\n"
msgstr "%s: ништа одговарајуће.\n"
-#: src/zsoelim.l:171
+#: src/zsoelim.l:178
#, c-format
msgid "%s:%d: .so requests nested too deeply or are recursive"
msgstr "%s:%d: „.so“ захтеви су угнежђени превише дубоко или су дубински"
-#: src/zsoelim.l:186
+#: src/zsoelim.l:193
#, c-format
msgid "%s:%d: warning: failed .so request"
msgstr "%s:%d: упозорење: није успео „.so“ захтев"
-#: src/zsoelim.l:208
+#: src/zsoelim.l:215
#, c-format
msgid "%s:%d: warning: newline in .so request, ignoring"
msgstr "%s:%d: упозорење: нови ред у „.so“ захтеву, занемарујем"
-#: src/zsoelim.l:268
+#: src/zsoelim.l:275
#, c-format
msgid "%s:%d: warning: malformed .lf request, ignoring"
msgstr "%s:%d: упозорење: лош „.lf“ захтев, занемарујем"
-#: src/zsoelim.l:278
+#: src/zsoelim.l:285
#, c-format
msgid "%s:%d: warning: newline in .lf request, ignoring"
msgstr "%s:%d: упозорење: нови ред у „.lf“ захтеву, занемарујем"
-#: src/zsoelim.l:318
+#: src/zsoelim.l:325
#, c-format
msgid "%s:%d: unterminated quote in roff request"
msgstr "%s:%d: неокончани цитат у роф захтеву"
-#: src/zsoelim_main.c:70
+#: src/zsoelim_main.c:69
msgid "compatibility switch (ignored)"
msgstr "пребацивање сагласности (занемарено)"
diff --git a/po/sv.po b/po/sv.po
index 75d6bdbd..c06b9f60 100644
--- a/po/sv.po
+++ b/po/sv.po
@@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: man-db 2.7.6.1\n"
"Report-Msgid-Bugs-To: Colin Watson <cjwatson@debian.org>\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2017-01-05 01:35+0100\n"
"Last-Translator: Sebastian Rasmussen <sebras@gmail.com>\n"
"Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n"
@@ -68,7 +68,7 @@ msgstr[1] "endast %d fält i innehåll"
msgid "bad fetch on multi key %s"
msgstr "felaktig hämtning på multinyckel %s"
-#: libdb/db_lookup.c:443 src/whatis.c:739
+#: libdb/db_lookup.c:443 src/whatis.c:737
#, c-format
msgid "Database %s corrupted; rebuild with mandb --create"
msgstr "Databasen %s är skadad; bygg om med mandb --create"
@@ -78,29 +78,29 @@ msgstr "Databasen %s är skadad; bygg om med mandb --create"
msgid "warning: %s has no version identifier\n"
msgstr "varning: %s har ingen versionsidentifierare\n"
-#: libdb/db_ver.c:56
+#: libdb/db_ver.c:57
#, c-format
msgid "warning: %s is version %s, expecting %s\n"
msgstr "varning: %s är version %s, %s förväntas\n"
-#: libdb/db_ver.c:78
+#: libdb/db_ver.c:79
#, c-format
msgid "fatal: unable to insert version identifier into %s"
msgstr "ödesdiger: kan inte infoga versionsidentifierare i %s"
-#: src/accessdb.c:61
+#: src/accessdb.c:59
msgid "[MAN DATABASE]"
msgstr "[MANUALDATABAS]"
# %s%s är en sökväg.
-#: src/accessdb.c:62
+#: src/accessdb.c:60
#, c-format
msgid "The man database defaults to %s%s."
msgstr "Manualdatabasen är som standard %s%s."
-#: src/accessdb.c:65 src/catman.c:103 src/globbing_test.c:62
-#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:115
-#: src/manpath.c:67 src/whatis.c:127 src/zsoelim_main.c:69
+#: src/accessdb.c:63 src/catman.c:100 src/globbing_test.c:58
+#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:114
+#: src/manpath.c:65 src/whatis.c:126 src/zsoelim_main.c:68
msgid "emit debugging messages"
msgstr "avge felsökningsmeddelanden"
@@ -109,44 +109,44 @@ msgstr "avge felsökningsmeddelanden"
msgid "can't open %s for reading"
msgstr "kan inte öppna %s för läsning"
-#: src/catman.c:100
+#: src/catman.c:97
msgid "[SECTION...]"
msgstr "[AVSNITT…]"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "PATH"
msgstr "SÖKVÄG"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "set search path for manual pages to PATH"
msgstr "ställ in sökväg för manualsidor till SÖKVÄG"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "FILE"
msgstr "FIL"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "use this user configuration file"
msgstr "använd denna användarkonfigurationsfil"
-#: src/catman.c:198
+#: src/catman.c:195
#, c-format
msgid "man command failed with exit status %d"
msgstr "manualkommandot misslyckades med slutstatus %d"
-#: src/catman.c:237
+#: src/catman.c:235
#, c-format
msgid "cannot read database %s"
msgstr "kan inte läsa databasen %s"
-#: src/catman.c:280
+#: src/catman.c:278
#, c-format
msgid "NULL content for key: %s"
msgstr "NULL-innehåll för nyckel: %s"
-#: src/catman.c:295
+#: src/catman.c:294
#, c-format
msgid ""
"\n"
@@ -155,12 +155,12 @@ msgstr ""
"\n"
"Uppdaterar cat-filer för avsnitt %s i man-hierarkin %s\n"
-#: src/catman.c:349
+#: src/catman.c:348
#, c-format
msgid "cannot write within %s"
msgstr "kan inte skriva inom %s"
-#: src/catman.c:426
+#: src/catman.c:425
#, c-format
msgid "unable to update %s"
msgstr "kan inte uppdatera %s"
@@ -170,67 +170,67 @@ msgstr "kan inte uppdatera %s"
msgid "warning: %s/man%s/%s.%s*: competing extensions"
msgstr "varning: %s/man%s/%s.%s*: filändelser i konflikt"
-#: src/check_mandirs.c:114 src/check_mandirs.c:613
+#: src/check_mandirs.c:126 src/check_mandirs.c:626
#, c-format
msgid "can't update index cache %s"
msgstr "kan inte uppdatera indexcachen %s"
-#: src/check_mandirs.c:242
+#: src/check_mandirs.c:254
#, c-format
msgid "warning: %s: bad symlink or ROFF `.so' request"
msgstr "varning: %s: felaktig symbolisk länk eller ROFF \".so\"-begäran"
-#: src/check_mandirs.c:298
+#: src/check_mandirs.c:310
#, c-format
msgid "warning: %s: ignoring empty file"
msgstr "varning: %s: ignorerar tom fil"
-#: src/check_mandirs.c:302 src/straycats.c:276
+#: src/check_mandirs.c:314 src/straycats.c:276
#, c-format
msgid "warning: %s: whatis parse for %s(%s) failed"
msgstr "varning: %s: whatis-tolkning för %s(%s) misslyckades"
-#: src/check_mandirs.c:329 src/check_mandirs.c:498 src/mandb.c:883
+#: src/check_mandirs.c:341 src/check_mandirs.c:511 src/mandb.c:877
#: src/straycats.c:84 src/straycats.c:303 src/ult_src.c:81
#, c-format
msgid "can't search directory %s"
msgstr "kan inte söka i katalogen %s"
-#: src/check_mandirs.c:378 src/man.c:1687
+#: src/check_mandirs.c:390 src/man.c:1689
#, c-format
msgid "can't chown %s"
msgstr "kan inte byta ägare på %s"
-#: src/check_mandirs.c:400 src/check_mandirs.c:423
+#: src/check_mandirs.c:412 src/check_mandirs.c:435
#, c-format
msgid "warning: cannot create catdir %s"
msgstr "varning: kan inte skapa cat-katalog %s"
-#: src/check_mandirs.c:455 src/man.c:1699 src/mandb.c:233
+#: src/check_mandirs.c:467 src/man.c:1701 src/mandb.c:232
#, c-format
msgid "can't chmod %s"
msgstr "kan inte ändra rättigheter på %s"
-#: src/check_mandirs.c:503
+#: src/check_mandirs.c:516
#, c-format
msgid "can't change to directory %s"
msgstr "kan inte byta till katalogen %s"
-#: src/check_mandirs.c:553
+#: src/check_mandirs.c:566
#, c-format
msgid "can't create index cache %s"
msgstr "kan inte skapa indexcachen %s"
-#: src/check_mandirs.c:578
+#: src/check_mandirs.c:591
#, c-format
msgid "Updating index cache for path `%s/%s'. Wait..."
msgstr "Uppdaterar indexcache för sökvägen \"%s/%s\". Vänta..."
-#: src/check_mandirs.c:640 src/check_mandirs.c:701
+#: src/check_mandirs.c:653 src/check_mandirs.c:714
msgid "done.\n"
msgstr "klar.\n"
-#: src/check_mandirs.c:963
+#: src/check_mandirs.c:977
#, c-format
msgid "Purging old database entries in %s...\n"
msgstr "Tömmer gamla databasposter i %s...\n"
@@ -245,49 +245,49 @@ msgstr "varning: misslyckades med att lagra post för %s(%s)"
msgid "warning: %s: ignoring bogus filename"
msgstr "varning: %s: ignorerar felaktigt filnamn"
-#: src/globbing_test.c:59
+#: src/globbing_test.c:55
msgid "PATH SECTION NAME"
msgstr "SÖKVÄG AVSNITT NAMN"
-#: src/globbing_test.c:63 src/man.c:292
+#: src/globbing_test.c:59 src/man.c:292
msgid "EXTENSION"
msgstr "ÄNDELSE"
-#: src/globbing_test.c:63 src/man.c:293
+#: src/globbing_test.c:59 src/man.c:293
msgid "limit search to extension type EXTENSION"
msgstr "begränsa sökning till ändelsetyp ÄNDELSE"
-#: src/globbing_test.c:64 src/man.c:294
+#: src/globbing_test.c:60 src/man.c:294
msgid "look for pages case-insensitively (default)"
msgstr "leta efter sidor skiftlägesoberoende (standard)"
-#: src/globbing_test.c:65 src/man.c:295
+#: src/globbing_test.c:61 src/man.c:295
msgid "look for pages case-sensitively"
msgstr "leta efter sidor skiftlägesberoende"
-#: src/globbing_test.c:66
+#: src/globbing_test.c:62
msgid "interpret page name as a regex"
msgstr "tolka sidnamn som ett reguljärt uttryck"
-#: src/globbing_test.c:67
+#: src/globbing_test.c:63
msgid "the page name contains wildcards"
msgstr "sidnamnet innehåller jokertecken"
-#: src/lexgrog.l:691
+#: src/lexgrog.l:701
#, c-format
msgid "warning: whatis for %s exceeds %d byte, truncating."
msgid_plural "warning: whatis for %s exceeds %d bytes, truncating."
msgstr[0] "varning: whatis för %s överskrider %d byte, förkortar."
msgstr[1] "varning: whatis för %s överskrider %d byte, förkortar."
-#: src/lexgrog.l:844 src/man.c:2268 src/man.c:2350 src/man.c:2448
+#: src/lexgrog.l:854 src/man.c:2270 src/man.c:2354 src/man.c:2452
#: src/manconv_main.c:168 src/straycats.c:218 src/ult_src.c:321
-#: src/ult_src.c:335 src/zsoelim.l:512
+#: src/ult_src.c:335 src/zsoelim.l:519
#, c-format
msgid "can't open %s"
msgstr "kan inte öppna %s"
-#: src/lexgrog_test.c:69 src/zsoelim_main.c:66
+#: src/lexgrog_test.c:69 src/zsoelim_main.c:65
msgid "FILE..."
msgstr "FIL…"
@@ -385,7 +385,7 @@ msgstr "mata ut källsida kodad i KODNING"
msgid "Finding manual pages:"
msgstr "Hittar manualsidor:"
-#: src/man.c:287 src/whatis.c:138
+#: src/man.c:287 src/whatis.c:137
msgid "LOCALE"
msgstr "LOKAL"
@@ -393,15 +393,15 @@ msgstr "LOKAL"
msgid "define the locale for this particular man search"
msgstr "definiera lokalen för denna specifika manualsökning"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "SYSTEM"
msgstr "SYSTEM"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "use manual pages from other systems"
msgstr "använd manualsidor från andra system"
-#: src/man.c:290 src/whatis.c:134
+#: src/man.c:290 src/whatis.c:133
msgid "LIST"
msgstr "LISTA"
@@ -515,79 +515,79 @@ msgstr ""
msgid "use groff and force it to produce ditroff"
msgstr "använd groff och tvinga det att skapa ditroff"
-#: src/man.c:597 src/man.c:733
+#: src/man.c:599 src/man.c:735
#, c-format
msgid "No manual entry for %s\n"
msgstr "Ingen manualpost för %s\n"
-#: src/man.c:599
+#: src/man.c:601
#, c-format
msgid "(Alternatively, what manual page do you want from section %s?)\n"
msgstr "(Alternativt, vilken manualsida vill du ha från avsnittet %s?)\n"
-#: src/man.c:603
+#: src/man.c:605
msgid "What manual page do you want?\n"
msgstr "Vilken manualsida vill du ha?\n"
-#: src/man.c:730
+#: src/man.c:732
#, c-format
msgid "No manual entry for %s in section %s\n"
msgstr "Ingen manualpost för %s i avsnittet %s\n"
-#: src/man.c:739
+#: src/man.c:741
#, c-format
msgid "See '%s' for help when manual pages are not available.\n"
msgstr "Se \"%s\" för hjälp när manualsidor inte är tillgängliga.\n"
-#: src/man.c:1347
+#: src/man.c:1349
#, c-format
msgid "ignoring unknown preprocessor `%c'"
msgstr "ignorerar okänd preprocessor \"%c\""
-#: src/man.c:1710 src/mandb.c:224
+#: src/man.c:1712 src/mandb.c:223
#, c-format
msgid "can't rename %s to %s"
msgstr "kan inte byta namn på %s till %s"
-#: src/man.c:1727
+#: src/man.c:1729
#, c-format
msgid "can't set times on %s"
msgstr "kan inte ställa in tider på %s"
-#: src/man.c:1736 src/man.c:1773
+#: src/man.c:1738 src/man.c:1775
#, c-format
msgid "can't unlink %s"
msgstr "kan inte avlänka %s"
# cat är vad? catalogue? kommandot "cat"?
-#: src/man.c:1803
+#: src/man.c:1805
#, c-format
msgid "can't create temporary cat for %s"
msgstr "kan inte skapa temporär cat för %s"
# cat är vad? catalogue? kommandot "cat"?
-#: src/man.c:1913
+#: src/man.c:1915
#, c-format
msgid "can't create temporary directory"
msgstr "kan inte skapa temporärkatalog"
-#: src/man.c:1924
+#: src/man.c:1926
#, c-format
msgid "can't open temporary file %s"
msgstr "kan inte öppna temporärfil %s"
-#: src/man.c:1954 src/man.c:1983
+#: src/man.c:1956 src/man.c:1985
#, c-format
msgid "can't remove directory %s"
msgstr "kan inte ta bort katalogen %s"
-#: src/man.c:2112
+#: src/man.c:2114
#, c-format
msgid "--Man-- next: %s [ view (return) | skip (Ctrl-D) | quit (Ctrl-C) ]\n"
msgstr ""
"--Man-- nästa: %s [ visa (retur) | hoppa över (Ctrl-D) | avsluta (Ctrl-C) ]\n"
-#: src/man.c:2393
+#: src/man.c:2397
#, c-format
msgid ""
"\n"
@@ -596,27 +596,27 @@ msgstr ""
"\n"
"kan inte skriva till %s i catman-läge"
-#: src/man.c:2474
+#: src/man.c:2477
#, c-format
msgid "Can't convert %s to cat name"
msgstr "Kan inte konvertera %s till cat-namn"
-#: src/man.c:3203
+#: src/man.c:3206
#, c-format
msgid "%s: relying on whatis refs is deprecated\n"
msgstr "%s: förlitande på whatis-referenser är föråldrat\n"
-#: src/man.c:3346 src/man.c:4196
+#: src/man.c:3349 src/man.c:4200
#, c-format
msgid "mandb command failed with exit status %d"
msgstr "mandb-kommandot misslyckades med slutstatus %d"
-#: src/man.c:3548
+#: src/man.c:3551
#, c-format
msgid "internal error: candidate type %d out of range"
msgstr "internt fel: kandidattypen %d utanför intervallet"
-#: src/man.c:4137
+#: src/man.c:4141
msgid " Manual page "
msgstr " Manualsida "
@@ -649,7 +649,7 @@ msgstr "KOD"
msgid "encoding for output"
msgstr "kodning för utmatning"
-#: src/manconv_main.c:97 src/manpath.c:68
+#: src/manconv_main.c:97 src/manpath.c:66
msgid "produce fewer warnings"
msgstr "producera färre varningar"
@@ -663,101 +663,101 @@ msgstr "måste ange en inmatningskodning"
msgid "must specify an output encoding"
msgstr "måste ange en utmatningskodning"
-#: src/mandb.c:112
+#: src/mandb.c:111
msgid "[MANPATH]"
msgstr "[MANUALSÖKVÄG]"
-#: src/mandb.c:116
+#: src/mandb.c:115
msgid "work quietly, except for 'bogus' warning"
msgstr "arbeta tyst, förutom vid felaktig varning"
-#: src/mandb.c:117
+#: src/mandb.c:116
msgid "don't look for or add stray cats to the dbs"
msgstr "leta inte efter eller lägg till lösa cat-sidor i databasen"
-#: src/mandb.c:118
+#: src/mandb.c:117
msgid "don't purge obsolete entries from the dbs"
msgstr "rensa inte bort föråldrade poster från databasen"
-#: src/mandb.c:119
+#: src/mandb.c:118
msgid "produce user databases only"
msgstr "producera endast användardatabaser"
-#: src/mandb.c:120
+#: src/mandb.c:119
msgid "create dbs from scratch, rather than updating"
msgstr "skapa databaser från grunden, istället för att uppdatera dem"
-#: src/mandb.c:121
+#: src/mandb.c:120
msgid "check manual pages for correctness"
msgstr "kontrollera att manualsidor är korrekta"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "FILENAME"
msgstr "FILNAMN"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "update just the entry for this filename"
msgstr "uppdatera bara posten för detta filnamn"
-#: src/mandb.c:217
+#: src/mandb.c:216
#, c-format
msgid "can't remove %s"
msgstr "kan inte ta bort %s"
-#: src/mandb.c:281
+#: src/mandb.c:280
#, c-format
msgid "can't write to %s"
msgstr "kan inte skriva till %s"
-#: src/mandb.c:286
+#: src/mandb.c:285
#, c-format
msgid "can't read from %s"
msgstr "kan inte läsa från %s"
-#: src/mandb.c:455
+#: src/mandb.c:457
#, c-format
msgid "Processing manual pages under %s...\n"
msgstr "Bearbetar manualsidor under %s...\n"
-#: src/mandb.c:672 src/mandb.c:698
+#: src/mandb.c:666 src/mandb.c:692
#, c-format
msgid "Removing obsolete cat directory %s...\n"
msgstr "Tar bort föråldrad cat-katalog %s…\n"
-#: src/mandb.c:848
+#: src/mandb.c:842
#, c-format
msgid "warning: no MANDB_MAP directives in %s, using your manpath"
msgstr "varning: inga MANDB_MAP-direktiv i %s, använder din manualsökväg"
-#: src/mandb.c:920
+#: src/mandb.c:914
#, c-format
msgid "%d man subdirectory contained newer manual pages.\n"
msgid_plural "%d man subdirectories contained newer manual pages.\n"
msgstr[0] "%d manualunderkatalog innehöll nyare manualsidor.\n"
msgstr[1] "%d manualunderkataloger innehöll nyare manualsidor.\n"
-#: src/mandb.c:925
+#: src/mandb.c:919
#, c-format
msgid "%d manual page was added.\n"
msgid_plural "%d manual pages were added.\n"
msgstr[0] "%d manualsida lades till.\n"
msgstr[1] "%d manualsidor lades till.\n"
-#: src/mandb.c:929
+#: src/mandb.c:923
#, c-format
msgid "%d stray cat was added.\n"
msgid_plural "%d stray cats were added.\n"
msgstr[0] "%d lös cat-sida lades till.\n"
msgstr[1] "%d lösa cat-sidor lades till.\n"
-#: src/mandb.c:934
+#: src/mandb.c:928
#, c-format
msgid "%d old database entry was purged.\n"
msgid_plural "%d old database entries were purged.\n"
msgstr[0] "%d gammal databaspost rensades.\n"
msgstr[1] "%d gamla databasposter rensades.\n"
-#: src/mandb.c:952
+#: src/mandb.c:946
#, c-format
msgid "No databases created."
msgstr "Inga databaser skapade."
@@ -832,15 +832,15 @@ msgstr "kan inte avgöra aktuell katalog"
msgid "warning: %s does not begin with %s"
msgstr "varning: %s börjar inte med %s"
-#: src/manpath.c:65
+#: src/manpath.c:63
msgid "show relative catpaths"
msgstr "visa relativa cat-sökvägar"
-#: src/manpath.c:66
+#: src/manpath.c:64
msgid "show the entire global manpath"
msgstr "visa hela den globala manualsökvägen"
-#: src/manpath.c:128
+#: src/manpath.c:126
#, c-format
msgid "warning: no global manpaths set in config file %s"
msgstr "varning: inga globala manualsökvägar angivna i konfigurationsfilen %s"
@@ -870,96 +870,96 @@ msgstr "varning: kan inte uppdatera indexcachen %s"
msgid "%s is self referencing"
msgstr "%s refererar till sig själv"
-#: src/whatis.c:123
+#: src/whatis.c:122
msgid "KEYWORD..."
msgstr "NYCKELORD…"
-#: src/whatis.c:124
+#: src/whatis.c:123
msgid "The --regex option is enabled by default."
msgstr "--regex-flaggan är aktiverad som standard."
-#: src/whatis.c:128
+#: src/whatis.c:127
msgid "print verbose warning messages"
msgstr "skriv ut utförliga varningsmeddelanden"
-#: src/whatis.c:129
+#: src/whatis.c:128
msgid "interpret each keyword as a regex"
msgstr "tolka varje nyckelord som ett reguljärt uttryck"
-#: src/whatis.c:130
+#: src/whatis.c:129
msgid "search each keyword for exact match"
msgstr "sök efter exakt matchning för varje nyckelord"
-#: src/whatis.c:131
+#: src/whatis.c:130
msgid "the keyword(s) contain wildcards"
msgstr "nyckelord(en) innehåller jokertecken"
-#: src/whatis.c:132
+#: src/whatis.c:131
msgid "require all keywords to match"
msgstr "kräv att alla nyckelord matchar"
-#: src/whatis.c:133
+#: src/whatis.c:132
msgid "do not trim output to terminal width"
msgstr "justera inte utmatning till terminalbredd"
-#: src/whatis.c:134
+#: src/whatis.c:133
msgid "search only these sections (colon-separated)"
msgstr "sök endast i dessa avsnitt (kolonseparerade)"
-#: src/whatis.c:138
+#: src/whatis.c:137
msgid "define the locale for this search"
msgstr "definiera lokalen för denna sökning"
-#: src/whatis.c:235
+#: src/whatis.c:234
#, c-format
msgid "%s what?\n"
msgstr "%s vad?\n"
-#: src/whatis.c:412 src/whatis.c:430
+#: src/whatis.c:410 src/whatis.c:428
#, c-format
msgid "warning: %s contains a pointer loop"
msgstr "varning: %s innehåller en pekarslinga"
-#: src/whatis.c:424 src/whatis.c:432
+#: src/whatis.c:422 src/whatis.c:430
msgid "(unknown subject)"
msgstr "(okänt ämne)"
-#: src/whatis.c:863
+#: src/whatis.c:861
#, c-format
msgid "%s: nothing appropriate.\n"
msgstr "%s: ingenting lämpligt.\n"
-#: src/zsoelim.l:171
+#: src/zsoelim.l:178
#, c-format
msgid "%s:%d: .so requests nested too deeply or are recursive"
msgstr "%s:%d: .so-begäran nästlade för djupt eller är rekursiva"
-#: src/zsoelim.l:186
+#: src/zsoelim.l:193
#, c-format
msgid "%s:%d: warning: failed .so request"
msgstr "%s:%d: varning: misslyckades med .so-begäran"
-#: src/zsoelim.l:208
+#: src/zsoelim.l:215
#, c-format
msgid "%s:%d: warning: newline in .so request, ignoring"
msgstr "%s:%d: varning: nyrad i .so-begäran, ignorerar"
-#: src/zsoelim.l:268
+#: src/zsoelim.l:275
#, c-format
msgid "%s:%d: warning: malformed .lf request, ignoring"
msgstr "%s:%d: varning: felformaterad .lf-begäran, ignorerar"
-#: src/zsoelim.l:278
+#: src/zsoelim.l:285
#, c-format
msgid "%s:%d: warning: newline in .lf request, ignoring"
msgstr "%s:%d: varning: nyrad i .lf-begäran, ignorerar"
-#: src/zsoelim.l:318
+#: src/zsoelim.l:325
#, c-format
msgid "%s:%d: unterminated quote in roff request"
msgstr "%s:%d: oavslutat citat i roff-begäran"
-#: src/zsoelim_main.c:70
+#: src/zsoelim_main.c:69
msgid "compatibility switch (ignored)"
msgstr "kompatibilitetsflagga (ignorerad)"
diff --git a/po/tr.po b/po/tr.po
index 21fa25cf..65fb482f 100644
--- a/po/tr.po
+++ b/po/tr.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: man-db 2.7.6.1\n"
"Report-Msgid-Bugs-To: Colin Watson <cjwatson@debian.org>\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2017-04-05 11:33+0100\n"
"Last-Translator: Volkan Gezer <volkangezer@gmail.com>\n"
"Language-Team: Turkish <gnu-tr-u12a@lists.sourceforge.net>\n"
@@ -66,7 +66,7 @@ msgstr[1] "içerikteki sadece %d alanı"
msgid "bad fetch on multi key %s"
msgstr "çoklu anahtar %s bozuk getirildi"
-#: libdb/db_lookup.c:443 src/whatis.c:739
+#: libdb/db_lookup.c:443 src/whatis.c:737
#, c-format
msgid "Database %s corrupted; rebuild with mandb --create"
msgstr "%s veritabanı bozuk; mandb --create ile tekrar oluşturun"
@@ -76,28 +76,28 @@ msgstr "%s veritabanı bozuk; mandb --create ile tekrar oluşturun"
msgid "warning: %s has no version identifier\n"
msgstr "uyarı: %s sürüm tanıtıcısı yok\n"
-#: libdb/db_ver.c:56
+#: libdb/db_ver.c:57
#, c-format
msgid "warning: %s is version %s, expecting %s\n"
msgstr "uyarı: %s sürümü %s, beklenen %s\n"
-#: libdb/db_ver.c:78
+#: libdb/db_ver.c:79
#, c-format
msgid "fatal: unable to insert version identifier into %s"
msgstr "ciddi: %s içine sürüm tanıtıcısı eklenemiyor"
-#: src/accessdb.c:61
+#: src/accessdb.c:59
msgid "[MAN DATABASE]"
msgstr "[MAN VERİTABANI]"
-#: src/accessdb.c:62
+#: src/accessdb.c:60
#, c-format
msgid "The man database defaults to %s%s."
msgstr "Man veritabanı şuna sıfırlanıyor: %s%s."
-#: src/accessdb.c:65 src/catman.c:103 src/globbing_test.c:62
-#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:115
-#: src/manpath.c:67 src/whatis.c:127 src/zsoelim_main.c:69
+#: src/accessdb.c:63 src/catman.c:100 src/globbing_test.c:58
+#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:114
+#: src/manpath.c:65 src/whatis.c:126 src/zsoelim_main.c:68
msgid "emit debugging messages"
msgstr "hata ayıklama iletilerini yay"
@@ -106,44 +106,44 @@ msgstr "hata ayıklama iletilerini yay"
msgid "can't open %s for reading"
msgstr "%s okumak için açılamıyor"
-#: src/catman.c:100
+#: src/catman.c:97
msgid "[SECTION...]"
msgstr "[BÖLÜM...]"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "PATH"
msgstr "YOL"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "set search path for manual pages to PATH"
msgstr "kılavuz sayfaları için arama yolunu YOL olarak ayarla"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "FILE"
msgstr "DOSYA"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "use this user configuration file"
msgstr "bu kullanıcı yapılandırma dosyasını kullan"
-#: src/catman.c:198
+#: src/catman.c:195
#, c-format
msgid "man command failed with exit status %d"
msgstr "çıkış durumu %d ile man komutu başarısız oldu"
-#: src/catman.c:237
+#: src/catman.c:235
#, c-format
msgid "cannot read database %s"
msgstr "%s veritabanı okunamıyor"
-#: src/catman.c:280
+#: src/catman.c:278
#, c-format
msgid "NULL content for key: %s"
msgstr "Anahtar için boş içerik: %s"
-#: src/catman.c:295
+#: src/catman.c:294
#, c-format
msgid ""
"\n"
@@ -152,12 +152,12 @@ msgstr ""
"\n"
"man hiyerarşi %s, %s bölümü için cat dosyaları güncelleniyor\n"
-#: src/catman.c:349
+#: src/catman.c:348
#, c-format
msgid "cannot write within %s"
msgstr "%s içine yazılamıyor"
-#: src/catman.c:426
+#: src/catman.c:425
#, c-format
msgid "unable to update %s"
msgstr "%s güncellenemiyor"
@@ -167,67 +167,67 @@ msgstr "%s güncellenemiyor"
msgid "warning: %s/man%s/%s.%s*: competing extensions"
msgstr "uyarı: %s/man%s/%s.%s*: uzantıları çakışıyor"
-#: src/check_mandirs.c:114 src/check_mandirs.c:613
+#: src/check_mandirs.c:126 src/check_mandirs.c:626
#, c-format
msgid "can't update index cache %s"
msgstr "%s içerik önbelleği güncellenemedi"
-#: src/check_mandirs.c:242
+#: src/check_mandirs.c:254
#, c-format
msgid "warning: %s: bad symlink or ROFF `.so' request"
msgstr "uyarı: %s: bozuk sembolik bağlantı veya ROFF `.so' talebi"
-#: src/check_mandirs.c:298
+#: src/check_mandirs.c:310
#, c-format
msgid "warning: %s: ignoring empty file"
msgstr "uyarı: %s: boş dosya yoksayılıyor"
-#: src/check_mandirs.c:302 src/straycats.c:276
+#: src/check_mandirs.c:314 src/straycats.c:276
#, c-format
msgid "warning: %s: whatis parse for %s(%s) failed"
msgstr "uyarı: %s: %s(%s) için whatis ayıklaması başarısız"
-#: src/check_mandirs.c:329 src/check_mandirs.c:498 src/mandb.c:883
+#: src/check_mandirs.c:341 src/check_mandirs.c:511 src/mandb.c:877
#: src/straycats.c:84 src/straycats.c:303 src/ult_src.c:81
#, c-format
msgid "can't search directory %s"
msgstr "%s dizini aranamıyor"
-#: src/check_mandirs.c:378 src/man.c:1687
+#: src/check_mandirs.c:390 src/man.c:1689
#, c-format
msgid "can't chown %s"
msgstr "%s üzerinde chown komutu kullanılamadı"
-#: src/check_mandirs.c:400 src/check_mandirs.c:423
+#: src/check_mandirs.c:412 src/check_mandirs.c:435
#, c-format
msgid "warning: cannot create catdir %s"
msgstr "uyarı: catdir %s oluşturulamıyor"
-#: src/check_mandirs.c:455 src/man.c:1699 src/mandb.c:233
+#: src/check_mandirs.c:467 src/man.c:1701 src/mandb.c:232
#, c-format
msgid "can't chmod %s"
msgstr "%s için chmod yapılamıyor"
-#: src/check_mandirs.c:503
+#: src/check_mandirs.c:516
#, c-format
msgid "can't change to directory %s"
msgstr "%s dizinine değiştirilemiyor"
-#: src/check_mandirs.c:553
+#: src/check_mandirs.c:566
#, c-format
msgid "can't create index cache %s"
msgstr "%s dizin önbelleği oluşturulamıyor"
-#: src/check_mandirs.c:578
+#: src/check_mandirs.c:591
#, c-format
msgid "Updating index cache for path `%s/%s'. Wait..."
msgstr "`%s/%s' yolunun dizin önbelleği güncelleniyor. Bekleyin..."
-#: src/check_mandirs.c:640 src/check_mandirs.c:701
+#: src/check_mandirs.c:653 src/check_mandirs.c:714
msgid "done.\n"
msgstr "tamamlandı.\n"
-#: src/check_mandirs.c:963
+#: src/check_mandirs.c:977
#, c-format
msgid "Purging old database entries in %s...\n"
msgstr "%s içindeki eski veritabanı girdileri temizleniyor...\n"
@@ -242,49 +242,49 @@ msgstr "uyarı: %s(%s) girdisini saklama başarısız oldu"
msgid "warning: %s: ignoring bogus filename"
msgstr "uyarı: %s: sahte dosya adı yoksayılıyor"
-#: src/globbing_test.c:59
+#: src/globbing_test.c:55
msgid "PATH SECTION NAME"
msgstr "YOL BÖLÜM ADI"
-#: src/globbing_test.c:63 src/man.c:292
+#: src/globbing_test.c:59 src/man.c:292
msgid "EXTENSION"
msgstr "UZANTI"
-#: src/globbing_test.c:63 src/man.c:293
+#: src/globbing_test.c:59 src/man.c:293
msgid "limit search to extension type EXTENSION"
msgstr "aramayı UZANTI uzantı türüne sınırla"
-#: src/globbing_test.c:64 src/man.c:294
+#: src/globbing_test.c:60 src/man.c:294
msgid "look for pages case-insensitively (default)"
msgstr "sayfaları harf duyarlılığı olmadan ara (öntanımlı)"
-#: src/globbing_test.c:65 src/man.c:295
+#: src/globbing_test.c:61 src/man.c:295
msgid "look for pages case-sensitively"
msgstr "sayfaları harf duyarlılığı ile ara"
-#: src/globbing_test.c:66
+#: src/globbing_test.c:62
msgid "interpret page name as a regex"
msgstr "sayfa adını düzenli ifade olarak yorumla"
-#: src/globbing_test.c:67
+#: src/globbing_test.c:63
msgid "the page name contains wildcards"
msgstr "sayfa adı özel semboller içeriyor"
-#: src/lexgrog.l:691
+#: src/lexgrog.l:701
#, c-format
msgid "warning: whatis for %s exceeds %d byte, truncating."
msgid_plural "warning: whatis for %s exceeds %d bytes, truncating."
msgstr[0] "uyarı: %s için whatis %d baytı aştı, kırpılıyor."
msgstr[1] "uyarı: %s için whatis %d baytı aştı, kırpılıyor."
-#: src/lexgrog.l:844 src/man.c:2268 src/man.c:2350 src/man.c:2448
+#: src/lexgrog.l:854 src/man.c:2270 src/man.c:2354 src/man.c:2452
#: src/manconv_main.c:168 src/straycats.c:218 src/ult_src.c:321
-#: src/ult_src.c:335 src/zsoelim.l:512
+#: src/ult_src.c:335 src/zsoelim.l:519
#, c-format
msgid "can't open %s"
msgstr "%s açılamıyor"
-#: src/lexgrog_test.c:69 src/zsoelim_main.c:66
+#: src/lexgrog_test.c:69 src/zsoelim_main.c:65
msgid "FILE..."
msgstr "DOSYA..."
@@ -384,7 +384,7 @@ msgstr "KODLAMA olarak kodlanmış çıktı kaynak dosyası"
msgid "Finding manual pages:"
msgstr "Kılavuz sayfalarında arama:"
-#: src/man.c:287 src/whatis.c:138
+#: src/man.c:287 src/whatis.c:137
msgid "LOCALE"
msgstr "YEREL"
@@ -392,15 +392,15 @@ msgstr "YEREL"
msgid "define the locale for this particular man search"
msgstr "bu özel man araması için yereli tanımla"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "SYSTEM"
msgstr "SİSTEM"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "use manual pages from other systems"
msgstr "diğer sistemlerden kılavuz sayfalarını kullan"
-#: src/man.c:290 src/whatis.c:134
+#: src/man.c:290 src/whatis.c:133
msgid "LIST"
msgstr "LİSTE"
@@ -514,76 +514,76 @@ msgstr ""
msgid "use groff and force it to produce ditroff"
msgstr "groff kullan ve ditroff üretmesi için zorla"
-#: src/man.c:597 src/man.c:733
+#: src/man.c:599 src/man.c:735
#, c-format
msgid "No manual entry for %s\n"
msgstr "Şunun için kılavuz girdisi yok: %s\n"
-#: src/man.c:599
+#: src/man.c:601
#, c-format
msgid "(Alternatively, what manual page do you want from section %s?)\n"
msgstr "(Ek olarak, %s bölümünden hangi kılavuz sayfasını istersiniz?)\n"
-#: src/man.c:603
+#: src/man.c:605
msgid "What manual page do you want?\n"
msgstr "Hangi kılavuz sayfasını istersiniz?\n"
-#: src/man.c:730
+#: src/man.c:732
#, c-format
msgid "No manual entry for %s in section %s\n"
msgstr "%s için %s bölümünde kılavuz girdisi yok\n"
-#: src/man.c:739
+#: src/man.c:741
#, c-format
msgid "See '%s' for help when manual pages are not available.\n"
msgstr "Kılavuz sayfaları mevcut olmadığında yardım için bkz. '%s'.\n"
-#: src/man.c:1347
+#: src/man.c:1349
#, c-format
msgid "ignoring unknown preprocessor `%c'"
msgstr "bilinmeyen ön işleyici yoksayılıyor `%c'"
-#: src/man.c:1710 src/mandb.c:224
+#: src/man.c:1712 src/mandb.c:223
#, c-format
msgid "can't rename %s to %s"
msgstr "%s, %s olarak adlandırılamıyor"
-#: src/man.c:1727
+#: src/man.c:1729
#, c-format
msgid "can't set times on %s"
msgstr "%s üzerinde zamanlar ayarlanamıyor"
-#: src/man.c:1736 src/man.c:1773
+#: src/man.c:1738 src/man.c:1775
#, c-format
msgid "can't unlink %s"
msgstr "%s bağlantısı kaldırılamıyor"
-#: src/man.c:1803
+#: src/man.c:1805
#, c-format
msgid "can't create temporary cat for %s"
msgstr "%s için geçici kategori oluşturulamıyor"
-#: src/man.c:1913
+#: src/man.c:1915
#, c-format
msgid "can't create temporary directory"
msgstr "geçici dizin oluşturulamıyor"
-#: src/man.c:1924
+#: src/man.c:1926
#, c-format
msgid "can't open temporary file %s"
msgstr "%s geçici dosyası açılamıyor"
-#: src/man.c:1954 src/man.c:1983
+#: src/man.c:1956 src/man.c:1985
#, c-format
msgid "can't remove directory %s"
msgstr "%s dizini kaldırılamıyor"
-#: src/man.c:2112
+#: src/man.c:2114
#, c-format
msgid "--Man-- next: %s [ view (return) | skip (Ctrl-D) | quit (Ctrl-C) ]\n"
msgstr "--Man-- sonraki: %s [ bak (enter) | atla (Ctrl-D) | çık (Ctrl-C) ]\n"
-#: src/man.c:2393
+#: src/man.c:2397
#, c-format
msgid ""
"\n"
@@ -592,27 +592,27 @@ msgstr ""
"\n"
"catman kipinde %s içine yazılamıyor"
-#: src/man.c:2474
+#: src/man.c:2477
#, c-format
msgid "Can't convert %s to cat name"
msgstr "%s cat adına dönüştürülemiyor"
-#: src/man.c:3203
+#: src/man.c:3206
#, c-format
msgid "%s: relying on whatis refs is deprecated\n"
msgstr "%s: whatis refs'e dayanmak artık kullanılmıyor\n"
-#: src/man.c:3346 src/man.c:4196
+#: src/man.c:3349 src/man.c:4200
#, c-format
msgid "mandb command failed with exit status %d"
msgstr "mandb komutu %d çıktı durumu ile başarısız oldu"
-#: src/man.c:3548
+#: src/man.c:3551
#, c-format
msgid "internal error: candidate type %d out of range"
msgstr "dahili hata: aday türü %d aralık dışında"
-#: src/man.c:4137
+#: src/man.c:4141
msgid " Manual page "
msgstr "Kılavuz sayfası"
@@ -645,7 +645,7 @@ msgstr "KOD"
msgid "encoding for output"
msgstr "çıktı için kodlama"
-#: src/manconv_main.c:97 src/manpath.c:68
+#: src/manconv_main.c:97 src/manpath.c:66
msgid "produce fewer warnings"
msgstr "daha az uyarı üret"
@@ -659,102 +659,102 @@ msgstr "bir girdi kodlaması belirtilmeli"
msgid "must specify an output encoding"
msgstr "bir çıktı kodlaması belirtilmeli"
-#: src/mandb.c:112
+#: src/mandb.c:111
msgid "[MANPATH]"
msgstr "[MANYOLU]"
-#: src/mandb.c:116
+#: src/mandb.c:115
msgid "work quietly, except for 'bogus' warning"
msgstr "'sahte' uyarılar hariç sessiz çalış"
-#: src/mandb.c:117
+#: src/mandb.c:116
msgid "don't look for or add stray cats to the dbs"
msgstr "veritabanlarında stray cat arama veya ekleme"
-#: src/mandb.c:118
+#: src/mandb.c:117
msgid "don't purge obsolete entries from the dbs"
msgstr "veritabanlarından gereksiz girdileri budama"
-#: src/mandb.c:119
+#: src/mandb.c:118
msgid "produce user databases only"
msgstr "sadece kullanıcı veritabanlarını üret"
-#: src/mandb.c:120
+#: src/mandb.c:119
msgid "create dbs from scratch, rather than updating"
msgstr "veritabanlarını güncellemek yerine sıfırdan üret"
-#: src/mandb.c:121
+#: src/mandb.c:120
msgid "check manual pages for correctness"
msgstr "doğrulukları için kılavuz sayfalarını denetle"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "FILENAME"
msgstr "DOSYAADI"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "update just the entry for this filename"
msgstr "bu dosya adı için sadece girdiyi güncelle"
-#: src/mandb.c:217
+#: src/mandb.c:216
#, c-format
msgid "can't remove %s"
msgstr "%s kaldırılamıyor"
-#: src/mandb.c:281
+#: src/mandb.c:280
#, c-format
msgid "can't write to %s"
msgstr "%s ögesine yazılamıyor"
-#: src/mandb.c:286
+#: src/mandb.c:285
#, c-format
msgid "can't read from %s"
msgstr "%s ögesinden okunamıyor"
-#: src/mandb.c:455
+#: src/mandb.c:457
#, c-format
msgid "Processing manual pages under %s...\n"
msgstr "%s altındaki kılavuz sayfaları işleniyor...\n"
-#: src/mandb.c:672 src/mandb.c:698
+#: src/mandb.c:666 src/mandb.c:692
#, c-format
msgid "Removing obsolete cat directory %s...\n"
msgstr "%s gereksiz cat dizini kaldırılıyor...\n"
-#: src/mandb.c:848
+#: src/mandb.c:842
#, c-format
msgid "warning: no MANDB_MAP directives in %s, using your manpath"
msgstr ""
"uyarı: %s içinde MANDB_MAP yönergesi yok, yazdığınız manpath kullanılıyor"
-#: src/mandb.c:920
+#: src/mandb.c:914
#, c-format
msgid "%d man subdirectory contained newer manual pages.\n"
msgid_plural "%d man subdirectories contained newer manual pages.\n"
msgstr[0] "%d man alt dizini daha yeni kılavuz sayfaları içeriyor.\n"
msgstr[1] "%d man alt dizini daha yeni kılavuz sayfaları içeriyor.\n"
-#: src/mandb.c:925
+#: src/mandb.c:919
#, c-format
msgid "%d manual page was added.\n"
msgid_plural "%d manual pages were added.\n"
msgstr[0] "%d kılavuz sayfası eklendi.\n"
msgstr[1] "%d kılavuz sayfası eklendi.\n"
-#: src/mandb.c:929
+#: src/mandb.c:923
#, c-format
msgid "%d stray cat was added.\n"
msgid_plural "%d stray cats were added.\n"
msgstr[0] "%d stray cat eklendi.\n"
msgstr[1] "%d stray cat eklendi.\n"
-#: src/mandb.c:934
+#: src/mandb.c:928
#, c-format
msgid "%d old database entry was purged.\n"
msgid_plural "%d old database entries were purged.\n"
msgstr[0] "%d eski veritabanı girdisi budandı.\n"
msgstr[1] "%d eski veritabanı girdisi budandı.\n"
-#: src/mandb.c:952
+#: src/mandb.c:946
#, c-format
msgid "No databases created."
msgstr "Hiç veritabanı oluşturulmadı."
@@ -829,15 +829,15 @@ msgstr "geçerli dizine karar verilemiyor"
msgid "warning: %s does not begin with %s"
msgstr "uyarı: %s, %s ile başlamıyor"
-#: src/manpath.c:65
+#: src/manpath.c:63
msgid "show relative catpaths"
msgstr "ilişkili catpath'leri göster"
-#: src/manpath.c:66
+#: src/manpath.c:64
msgid "show the entire global manpath"
msgstr "tüm evrensel manpath'i göster"
-#: src/manpath.c:128
+#: src/manpath.c:126
#, c-format
msgid "warning: no global manpaths set in config file %s"
msgstr "uyarı: %s yapılandırma dosyasında ayarlanmış evrensel hiç manpath yok."
@@ -867,96 +867,96 @@ msgstr "uyarı: %s dizin önbelleği güncellenemiyor"
msgid "%s is self referencing"
msgstr "%s kendini işaret ediyor"
-#: src/whatis.c:123
+#: src/whatis.c:122
msgid "KEYWORD..."
msgstr "ANAHTARKELİME..."
-#: src/whatis.c:124
+#: src/whatis.c:123
msgid "The --regex option is enabled by default."
msgstr "--regex seçeneği öntanımlı olarak etkindir."
-#: src/whatis.c:128
+#: src/whatis.c:127
msgid "print verbose warning messages"
msgstr "ayrıntılı uyarı iletilerini göster"
-#: src/whatis.c:129
+#: src/whatis.c:128
msgid "interpret each keyword as a regex"
msgstr "her anahtar kelimeyi düzenli ifade olarak yorumla"
-#: src/whatis.c:130
+#: src/whatis.c:129
msgid "search each keyword for exact match"
msgstr "her anahtar kelimeyi tam eşleşme ile ara"
-#: src/whatis.c:131
+#: src/whatis.c:130
msgid "the keyword(s) contain wildcards"
msgstr "anahtar kelime(ler) özel sembol içeriyor"
-#: src/whatis.c:132
+#: src/whatis.c:131
msgid "require all keywords to match"
msgstr "tüm anahtar kelimelerin eşleşmesini gerektir"
-#: src/whatis.c:133
+#: src/whatis.c:132
msgid "do not trim output to terminal width"
msgstr "çıktıyı uçbirim genişliğine kısıtlama"
-#: src/whatis.c:134
+#: src/whatis.c:133
msgid "search only these sections (colon-separated)"
msgstr "sadece şu alanlarda ara (iki nokta ile ayrılmış)"
-#: src/whatis.c:138
+#: src/whatis.c:137
msgid "define the locale for this search"
msgstr "bu arama için dili tanımla"
-#: src/whatis.c:235
+#: src/whatis.c:234
#, c-format
msgid "%s what?\n"
msgstr "%s ne?\n"
-#: src/whatis.c:412 src/whatis.c:430
+#: src/whatis.c:410 src/whatis.c:428
#, c-format
msgid "warning: %s contains a pointer loop"
msgstr "uyarı: %s bir işaretçi döngüsü içeriyor"
-#: src/whatis.c:424 src/whatis.c:432
+#: src/whatis.c:422 src/whatis.c:430
msgid "(unknown subject)"
msgstr "(bilinmeyen konu)"
-#: src/whatis.c:863
+#: src/whatis.c:861
#, c-format
msgid "%s: nothing appropriate.\n"
msgstr "%s: uygun bir şey yok.\n"
-#: src/zsoelim.l:171
+#: src/zsoelim.l:178
#, c-format
msgid "%s:%d: .so requests nested too deeply or are recursive"
msgstr "%s:%d: .so istekleri çok derin yuvalanmış veya içiçe çağrışım yapıyor"
-#: src/zsoelim.l:186
+#: src/zsoelim.l:193
#, c-format
msgid "%s:%d: warning: failed .so request"
msgstr "%s:%d: uyarı: başarısız .so isteği"
-#: src/zsoelim.l:208
+#: src/zsoelim.l:215
#, c-format
msgid "%s:%d: warning: newline in .so request, ignoring"
msgstr "%s:%d: uyarı: .so isteğinde yeni satır, yoksayılıyor"
-#: src/zsoelim.l:268
+#: src/zsoelim.l:275
#, c-format
msgid "%s:%d: warning: malformed .lf request, ignoring"
msgstr "%s:%d: uyarı: bozuk .lf isteği, yoksayılıyor"
-#: src/zsoelim.l:278
+#: src/zsoelim.l:285
#, c-format
msgid "%s:%d: warning: newline in .lf request, ignoring"
msgstr "%s:%d: uyarı: .lf isteği içinde yeni satır, yoksayılıyor"
-#: src/zsoelim.l:318
+#: src/zsoelim.l:325
#, c-format
msgid "%s:%d: unterminated quote in roff request"
msgstr "%s:%d: roff isteğinde kapatılmamış kesme işareti"
-#: src/zsoelim_main.c:70
+#: src/zsoelim_main.c:69
msgid "compatibility switch (ignored)"
msgstr "uyumluluk anahtarı (yoksayıldı)"
diff --git a/po/vi.po b/po/vi.po
index 741e6e31..459f1b9a 100644
--- a/po/vi.po
+++ b/po/vi.po
@@ -10,7 +10,7 @@ msgid ""
msgstr ""
"Project-Id-Version: man-db 2.7.6.1\n"
"Report-Msgid-Bugs-To: Colin Watson <cjwatson@debian.org>\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2016-12-13 08:08+0700\n"
"Last-Translator: Trần Ngọc Quân <vnwildman@gmail.com>\n"
"Language-Team: Vietnamese <translation-team-vi@lists.sourceforge.net>\n"
@@ -69,7 +69,7 @@ msgstr[0] "chỉ có %d trường trong nội dung"
msgid "bad fetch on multi key %s"
msgstr "tiến trình gọi (fetch) sai với đa khóa %s"
-#: libdb/db_lookup.c:443 src/whatis.c:739
+#: libdb/db_lookup.c:443 src/whatis.c:737
#, c-format
msgid "Database %s corrupted; rebuild with mandb --create"
msgstr ""
@@ -80,28 +80,28 @@ msgstr ""
msgid "warning: %s has no version identifier\n"
msgstr "cảnh báo: %s không có định danh phiên bản\n"
-#: libdb/db_ver.c:56
+#: libdb/db_ver.c:57
#, c-format
msgid "warning: %s is version %s, expecting %s\n"
msgstr "cảnh báo: %s là phiên bản %s, cần %s\n"
-#: libdb/db_ver.c:78
+#: libdb/db_ver.c:79
#, c-format
msgid "fatal: unable to insert version identifier into %s"
msgstr "lỗi nghiêm trọng: không thể chèn định danh phiên bản vào %s"
-#: src/accessdb.c:61
+#: src/accessdb.c:59
msgid "[MAN DATABASE]"
msgstr "[CƠ SỞ DỮ LIỆU MAN]"
-#: src/accessdb.c:62
+#: src/accessdb.c:60
#, c-format
msgid "The man database defaults to %s%s."
msgstr "Cơ sở dữ liệu chính có giá trị mặc định là %s%s."
-#: src/accessdb.c:65 src/catman.c:103 src/globbing_test.c:62
-#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:115
-#: src/manpath.c:67 src/whatis.c:127 src/zsoelim_main.c:69
+#: src/accessdb.c:63 src/catman.c:100 src/globbing_test.c:58
+#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:114
+#: src/manpath.c:65 src/whatis.c:126 src/zsoelim_main.c:68
msgid "emit debugging messages"
msgstr "phát ra các thông điệp để gỡ lỗi"
@@ -110,44 +110,44 @@ msgstr "phát ra các thông điệp để gỡ lỗi"
msgid "can't open %s for reading"
msgstr "không thể mở %s để đọc"
-#: src/catman.c:100
+#: src/catman.c:97
msgid "[SECTION...]"
msgstr "[PHẦN…]"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "PATH"
msgstr "ĐƯỜNG_DẪN"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "set search path for manual pages to PATH"
msgstr "đặt ĐƯỜNG_DẪN đường dẫn để tìm kiếm các trang hướng dẫn"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "FILE"
msgstr "TẬP_TIN"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "use this user configuration file"
msgstr "dùng tập tin cấu hình này"
-#: src/catman.c:198
+#: src/catman.c:195
#, c-format
msgid "man command failed with exit status %d"
msgstr "lệnh \"man\" đã thất bại với trạng thái thoát là %d"
-#: src/catman.c:237
+#: src/catman.c:235
#, c-format
msgid "cannot read database %s"
msgstr "không thể đọc cơ sở dữ liệu %s"
-#: src/catman.c:280
+#: src/catman.c:278
#, c-format
msgid "NULL content for key: %s"
msgstr "nội dung VÔ GIÁ TRỊ cho khóa: %s"
-#: src/catman.c:295
+#: src/catman.c:294
#, c-format
msgid ""
"\n"
@@ -156,12 +156,12 @@ msgstr ""
"\n"
"Đang cập nhật các tập tin \"cat\" cho phần %s của cây phân cấp \"man\" %s\n"
-#: src/catman.c:349
+#: src/catman.c:348
#, c-format
msgid "cannot write within %s"
msgstr "không thể ghi ở trong %s"
-#: src/catman.c:426
+#: src/catman.c:425
#, c-format
msgid "unable to update %s"
msgstr "không thể cập nhật %s"
@@ -171,69 +171,69 @@ msgstr "không thể cập nhật %s"
msgid "warning: %s/man%s/%s.%s*: competing extensions"
msgstr "cảnh báo: \"%s/man%s/%s.%s*\": phần mở rộng cạnh tranh với nhau"
-#: src/check_mandirs.c:114 src/check_mandirs.c:613
+#: src/check_mandirs.c:126 src/check_mandirs.c:626
#, c-format
msgid "can't update index cache %s"
msgstr "không thể cập nhật bộ nhớ tạm mục lục %s"
-#: src/check_mandirs.c:242
+#: src/check_mandirs.c:254
#, c-format
msgid "warning: %s: bad symlink or ROFF `.so' request"
msgstr "cảnh báo: %s: liên kết mềm sai, hoặc yêu cầu \".so\" ROFF sai"
-#: src/check_mandirs.c:298
+#: src/check_mandirs.c:310
#, c-format
msgid "warning: %s: ignoring empty file"
msgstr "cảnh báo: %s: đang bỏ qua tập tin rỗng"
-#: src/check_mandirs.c:302 src/straycats.c:276
+#: src/check_mandirs.c:314 src/straycats.c:276
#, c-format
msgid "warning: %s: whatis parse for %s(%s) failed"
msgstr ""
"cảnh báo: %s: việc phân tách kiểu \"whatis\" (là gì?) cho \"%s(%s)\" bị lỗi"
-#: src/check_mandirs.c:329 src/check_mandirs.c:498 src/mandb.c:883
+#: src/check_mandirs.c:341 src/check_mandirs.c:511 src/mandb.c:877
#: src/straycats.c:84 src/straycats.c:303 src/ult_src.c:81
#, c-format
msgid "can't search directory %s"
msgstr "không thể tìm kiếm trong danh mục %s"
-#: src/check_mandirs.c:378 src/man.c:1687
+#: src/check_mandirs.c:390 src/man.c:1689
#, c-format
msgid "can't chown %s"
msgstr "không thể \"chown\" (thay đổi quyền sở hữu) %s"
-#: src/check_mandirs.c:400 src/check_mandirs.c:423
+#: src/check_mandirs.c:412 src/check_mandirs.c:435
#, c-format
msgid "warning: cannot create catdir %s"
msgstr "cảnh báo: không thể tạo catdir (thư mục \"cat\") %s"
-#: src/check_mandirs.c:455 src/man.c:1699 src/mandb.c:233
+#: src/check_mandirs.c:467 src/man.c:1701 src/mandb.c:232
#, c-format
msgid "can't chmod %s"
msgstr "không thể \"chmod\" (thay đổi chế độ đọc ghi) %s"
-#: src/check_mandirs.c:503
+#: src/check_mandirs.c:516
#, c-format
msgid "can't change to directory %s"
msgstr "không thể chuyển sang thư mục %s"
-#: src/check_mandirs.c:553
+#: src/check_mandirs.c:566
#, c-format
msgid "can't create index cache %s"
msgstr "không thể tạo bộ nhớ tạm mục lục %s"
-#: src/check_mandirs.c:578
+#: src/check_mandirs.c:591
#, c-format
msgid "Updating index cache for path `%s/%s'. Wait..."
msgstr ""
"Đang cập nhật bộ nhớ tạm mục lục cho đường dẫn \"%s/%s\". Vui lòng chờ…"
-#: src/check_mandirs.c:640 src/check_mandirs.c:701
+#: src/check_mandirs.c:653 src/check_mandirs.c:714
msgid "done.\n"
msgstr "hoàn tất.\n"
-#: src/check_mandirs.c:963
+#: src/check_mandirs.c:977
#, c-format
msgid "Purging old database entries in %s...\n"
msgstr "Đang tẩy các mục tin cơ sở dữ liệu cũ trong %s…\n"
@@ -248,35 +248,35 @@ msgstr "cảnh báo: gặp lỗi khi lưu trữ mục tin cho \"%s(%s)\""
msgid "warning: %s: ignoring bogus filename"
msgstr "cảnh báo: %s: đang bỏ qua tên tập tin giả"
-#: src/globbing_test.c:59
+#: src/globbing_test.c:55
msgid "PATH SECTION NAME"
msgstr "ĐƯỜNG DẪN PHẦN TÊN"
-#: src/globbing_test.c:63 src/man.c:292
+#: src/globbing_test.c:59 src/man.c:292
msgid "EXTENSION"
msgstr "PHẦN_MỞ_RỘNG"
-#: src/globbing_test.c:63 src/man.c:293
+#: src/globbing_test.c:59 src/man.c:293
msgid "limit search to extension type EXTENSION"
msgstr "chỉ tìm kiếm phần mở rộng kiểu PHẦN MỞ RỘNG"
-#: src/globbing_test.c:64 src/man.c:294
+#: src/globbing_test.c:60 src/man.c:294
msgid "look for pages case-insensitively (default)"
msgstr "không phân biệt chữ HOA/thường khi tìm (mặc định)"
-#: src/globbing_test.c:65 src/man.c:295
+#: src/globbing_test.c:61 src/man.c:295
msgid "look for pages case-sensitively"
msgstr "phân biệt chữ HOA/thường khi tìm"
-#: src/globbing_test.c:66
+#: src/globbing_test.c:62
msgid "interpret page name as a regex"
msgstr "phiên dịch tên trang như là một biểu thức chính quy"
-#: src/globbing_test.c:67
+#: src/globbing_test.c:63
msgid "the page name contains wildcards"
msgstr "tên trang chứa ký tự đại diện (? * v.v.)"
-#: src/lexgrog.l:691
+#: src/lexgrog.l:701
#, c-format
msgid "warning: whatis for %s exceeds %d byte, truncating."
msgid_plural "warning: whatis for %s exceeds %d bytes, truncating."
@@ -284,14 +284,14 @@ msgstr[0] ""
"cảnh báo: thông tin \"whatis\" (là gì?) cho %s vượt quá %d byte nên đang cắt "
"bớt nó."
-#: src/lexgrog.l:844 src/man.c:2268 src/man.c:2350 src/man.c:2448
+#: src/lexgrog.l:854 src/man.c:2270 src/man.c:2354 src/man.c:2452
#: src/manconv_main.c:168 src/straycats.c:218 src/ult_src.c:321
-#: src/ult_src.c:335 src/zsoelim.l:512
+#: src/ult_src.c:335 src/zsoelim.l:519
#, c-format
msgid "can't open %s"
msgstr "không thể mở %s"
-#: src/lexgrog_test.c:69 src/zsoelim_main.c:66
+#: src/lexgrog_test.c:69 src/zsoelim_main.c:65
msgid "FILE..."
msgstr "TẬP_TIN…"
@@ -389,7 +389,7 @@ msgstr "xuất trang mã nguồn đã mã hóa bằng BẢNG_MÃ"
msgid "Finding manual pages:"
msgstr "Đang tìm trang hướng dẫn:"
-#: src/man.c:287 src/whatis.c:138
+#: src/man.c:287 src/whatis.c:137
msgid "LOCALE"
msgstr "MIỀN_ĐỊA_PHƯƠNG"
@@ -397,15 +397,15 @@ msgstr "MIỀN_ĐỊA_PHƯƠNG"
msgid "define the locale for this particular man search"
msgstr "xác định miền địa phương cho việc tìm kiếm man đặc biệt"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "SYSTEM"
msgstr "HỆ_THỐNG"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "use manual pages from other systems"
msgstr "dùng trang man từ hệ thống khác"
-#: src/man.c:290 src/whatis.c:134
+#: src/man.c:290 src/whatis.c:133
msgid "LIST"
msgstr "DANH_SÁCH"
@@ -520,76 +520,76 @@ msgstr ""
msgid "use groff and force it to produce ditroff"
msgstr "dùng groff và ép buộc nó sản sinh ditroff"
-#: src/man.c:597 src/man.c:733
+#: src/man.c:599 src/man.c:735
#, c-format
msgid "No manual entry for %s\n"
msgstr "Không có trang hướng dẫn cho \"%s\"\n"
-#: src/man.c:599
+#: src/man.c:601
#, c-format
msgid "(Alternatively, what manual page do you want from section %s?)\n"
msgstr "(Thay vì vậy, bạn muốn trang hướng dẫn nào từ phần %s?)\n"
-#: src/man.c:603
+#: src/man.c:605
msgid "What manual page do you want?\n"
msgstr "Bạn muốn trang hướng dẫn nào?\n"
-#: src/man.c:730
+#: src/man.c:732
#, c-format
msgid "No manual entry for %s in section %s\n"
msgstr "Không có trang hướng dẫn cho %s trong phần %s\n"
-#: src/man.c:739
+#: src/man.c:741
#, c-format
msgid "See '%s' for help when manual pages are not available.\n"
msgstr "Hãy xem \"%s\" để tìm trợ giúp khi trang hướng dẫn không sẵn sàng.\n"
-#: src/man.c:1347
+#: src/man.c:1349
#, c-format
msgid "ignoring unknown preprocessor `%c'"
msgstr "đang bỏ qua bộ tiền xử lý trước không hiểu \"%c\""
-#: src/man.c:1710 src/mandb.c:224
+#: src/man.c:1712 src/mandb.c:223
#, c-format
msgid "can't rename %s to %s"
msgstr "không thể thay đổi tên %s thành %s"
-#: src/man.c:1727
+#: src/man.c:1729
#, c-format
msgid "can't set times on %s"
msgstr "không thể đặt thời gian trên %s"
-#: src/man.c:1736 src/man.c:1773
+#: src/man.c:1738 src/man.c:1775
#, c-format
msgid "can't unlink %s"
msgstr "không thể bỏ liên kết %s"
-#: src/man.c:1803
+#: src/man.c:1805
#, c-format
msgid "can't create temporary cat for %s"
msgstr "không thể tạo \"cat\" tạm cho %s"
-#: src/man.c:1913
+#: src/man.c:1915
#, c-format
msgid "can't create temporary directory"
msgstr "không thể tạo thư mục tạm thời"
-#: src/man.c:1924
+#: src/man.c:1926
#, c-format
msgid "can't open temporary file %s"
msgstr "không thể mở tập tin tạm %s"
-#: src/man.c:1954 src/man.c:1983
+#: src/man.c:1956 src/man.c:1985
#, c-format
msgid "can't remove directory %s"
msgstr "không thể gỡ bỏ thư mục %s"
-#: src/man.c:2112
+#: src/man.c:2114
#, c-format
msgid "--Man-- next: %s [ view (return) | skip (Ctrl-D) | quit (Ctrl-C) ]\n"
msgstr "--Man-- kế: %s [ xem (enter) | nhảy qua (Ctrl-D) | thoát (Ctrl-C) ]\n"
-#: src/man.c:2393
+#: src/man.c:2397
#, c-format
msgid ""
"\n"
@@ -598,28 +598,28 @@ msgstr ""
"\n"
"không thể ghi vào %s trong chế độ \"catman\""
-#: src/man.c:2474
+#: src/man.c:2477
#, c-format
msgid "Can't convert %s to cat name"
msgstr "Không thể chuyển đổi %s sang tên \"cat\""
-#: src/man.c:3203
+#: src/man.c:3206
#, c-format
msgid "%s: relying on whatis refs is deprecated\n"
msgstr "%s: nhờ các \"ref\" (tham chiếu) của lệnh \"whatis\" bị phản đối\n"
-#: src/man.c:3346 src/man.c:4196
+#: src/man.c:3349 src/man.c:4200
#, c-format
msgid "mandb command failed with exit status %d"
msgstr ""
"lệnh \"mandb\" (cơ sở dữ liệu hướng dẫn) gặp lỗi với trạng thái thoát là %d"
-#: src/man.c:3548
+#: src/man.c:3551
#, c-format
msgid "internal error: candidate type %d out of range"
msgstr "lỗi nội bộ: kiểu ứng cử %d nằm ngoài phạm vi"
-#: src/man.c:4137
+#: src/man.c:4141
msgid " Manual page "
msgstr " Trang hướng dẫn "
@@ -652,7 +652,7 @@ msgstr "MÃ"
msgid "encoding for output"
msgstr "bảng mã cho kết xuất"
-#: src/manconv_main.c:97 src/manpath.c:68
+#: src/manconv_main.c:97 src/manpath.c:66
msgid "produce fewer warnings"
msgstr "tạo ra ít cảnh báo hơn"
@@ -666,99 +666,99 @@ msgstr "phải ghi rõ bảng mã đầu vào"
msgid "must specify an output encoding"
msgstr "phải ghi rõ bảng mã xuất ra"
-#: src/mandb.c:112
+#: src/mandb.c:111
msgid "[MANPATH]"
msgstr "[ĐƯỜNG_DẪN_MAN]"
-#: src/mandb.c:116
+#: src/mandb.c:115
msgid "work quietly, except for 'bogus' warning"
msgstr "chạy im, trừ xuất cảnh báo \"giả\""
-#: src/mandb.c:117
+#: src/mandb.c:116
msgid "don't look for or add stray cats to the dbs"
msgstr "đừng tìm hay thêm vào cơ sở dữ liệu các cat rải rác"
-#: src/mandb.c:118
+#: src/mandb.c:117
msgid "don't purge obsolete entries from the dbs"
msgstr "đừng tẩy khỏi cơ sở dữ liệu các mục tin cũ"
-#: src/mandb.c:119
+#: src/mandb.c:118
msgid "produce user databases only"
msgstr "chỉ tạo các cơ sở dữ liệu người dùng"
-#: src/mandb.c:120
+#: src/mandb.c:119
msgid "create dbs from scratch, rather than updating"
msgstr "tạo lại cơ sở dữ liệu từ đầu thay cho cập nhật"
-#: src/mandb.c:121
+#: src/mandb.c:120
msgid "check manual pages for correctness"
msgstr "kiểm tra các trang hướng dẫn xem có đúng không"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "FILENAME"
msgstr "TÊN_TẬP_TIN"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "update just the entry for this filename"
msgstr "chỉ cập nhật mục tin cho tên tập tin này"
-#: src/mandb.c:217
+#: src/mandb.c:216
#, c-format
msgid "can't remove %s"
msgstr "không thể gỡ bỏ %s"
-#: src/mandb.c:281
+#: src/mandb.c:280
#, c-format
msgid "can't write to %s"
msgstr "không thể ghi vào %s"
-#: src/mandb.c:286
+#: src/mandb.c:285
#, c-format
msgid "can't read from %s"
msgstr "không thể đọc từ %s"
-#: src/mandb.c:455
+#: src/mandb.c:457
#, c-format
msgid "Processing manual pages under %s...\n"
msgstr "Đang xử lý các trang hướng dẫn dưới %s…\n"
-#: src/mandb.c:672 src/mandb.c:698
+#: src/mandb.c:666 src/mandb.c:692
#, c-format
msgid "Removing obsolete cat directory %s...\n"
msgstr "Đang gỡ bỏ các thư mục “cat” không dùng nữa %s…\n"
-#: src/mandb.c:848
+#: src/mandb.c:842
#, c-format
msgid "warning: no MANDB_MAP directives in %s, using your manpath"
msgstr ""
"cảnh báo: không có chỉ thị \"MANDB_MAP\" trong “%s” nên sẽ dùng đường dẫn "
"hướng dẫn của bạn."
-#: src/mandb.c:920
+#: src/mandb.c:914
#, c-format
msgid "%d man subdirectory contained newer manual pages.\n"
msgid_plural "%d man subdirectories contained newer manual pages.\n"
msgstr[0] "%d thư mục con hướng dẫn chứa trang hướng dẫn mới hơn.\n"
-#: src/mandb.c:925
+#: src/mandb.c:919
#, c-format
msgid "%d manual page was added.\n"
msgid_plural "%d manual pages were added.\n"
msgstr[0] "%d trang hướng dẫn được thêm vào.\n"
-#: src/mandb.c:929
+#: src/mandb.c:923
#, c-format
msgid "%d stray cat was added.\n"
msgid_plural "%d stray cats were added.\n"
msgstr[0] "%d trang \"cat\" thất lạc đã được thêm vào.\n"
-#: src/mandb.c:934
+#: src/mandb.c:928
#, c-format
msgid "%d old database entry was purged.\n"
msgid_plural "%d old database entries were purged.\n"
msgstr[0] "%d mục tin cơ sở dữ liệu cũ bị tẩy.\n"
-#: src/mandb.c:952
+#: src/mandb.c:946
#, c-format
msgid "No databases created."
msgstr "Chưa tạo cơ sở dữ liệu."
@@ -836,15 +836,15 @@ msgstr "không thể tháo gỡ thư mục hiện có"
msgid "warning: %s does not begin with %s"
msgstr "cảnh báo: %s không bắt đầu bằng %s"
-#: src/manpath.c:65
+#: src/manpath.c:63
msgid "show relative catpaths"
msgstr "hiển thị đường dẫn tương đối cat"
-#: src/manpath.c:66
+#: src/manpath.c:64
msgid "show the entire global manpath"
msgstr "hiển thị toàn đường dẫn toàn cục"
-#: src/manpath.c:128
+#: src/manpath.c:126
#, c-format
msgid "warning: no global manpaths set in config file %s"
msgstr ""
@@ -875,96 +875,96 @@ msgstr "cảnh báo: không thể cập nhật bộ nhớ tạm mục lục %s"
msgid "%s is self referencing"
msgstr "%s tham chiếu đến chính nó"
-#: src/whatis.c:123
+#: src/whatis.c:122
msgid "KEYWORD..."
msgstr "TỪ KHÓA…"
-#: src/whatis.c:124
+#: src/whatis.c:123
msgid "The --regex option is enabled by default."
msgstr "Tùy chọn \"--regex\" (biểu thức chính quy) được bật theo mặc định."
-#: src/whatis.c:128
+#: src/whatis.c:127
msgid "print verbose warning messages"
msgstr "in ra cảnh báo dạng chi tiết"
-#: src/whatis.c:129
+#: src/whatis.c:128
msgid "interpret each keyword as a regex"
msgstr "biên dịch mỗi từ khóa như là một biểu thức chính quy"
-#: src/whatis.c:130
+#: src/whatis.c:129
msgid "search each keyword for exact match"
msgstr "tìm kiếm khớp hoàn toàn từng từ khóa một"
-#: src/whatis.c:131
+#: src/whatis.c:130
msgid "the keyword(s) contain wildcards"
msgstr "(các) từ khóa chứa ký tự đại diện (? * v.v.)"
-#: src/whatis.c:132
+#: src/whatis.c:131
msgid "require all keywords to match"
msgstr "yêu cầu mọi từ khóa khớp"
-#: src/whatis.c:133
+#: src/whatis.c:132
msgid "do not trim output to terminal width"
msgstr "đừng xén kết xuất cho bằng bề rộng của thiết bị cuối"
-#: src/whatis.c:134
+#: src/whatis.c:133
msgid "search only these sections (colon-separated)"
msgstr "chỉ tìm kiếm trong những phần này (ngăn cách bởi dấu hai chấm)"
-#: src/whatis.c:138
+#: src/whatis.c:137
msgid "define the locale for this search"
msgstr "xác định miền địa phương cho việc tìm kiếm này"
-#: src/whatis.c:235
+#: src/whatis.c:234
#, c-format
msgid "%s what?\n"
msgstr "%s gì vậy?\n"
-#: src/whatis.c:412 src/whatis.c:430
+#: src/whatis.c:410 src/whatis.c:428
#, c-format
msgid "warning: %s contains a pointer loop"
msgstr "cảnh báo: %s chứa một vòng lặp con trỏ (pointer loop)"
-#: src/whatis.c:424 src/whatis.c:432
+#: src/whatis.c:422 src/whatis.c:430
msgid "(unknown subject)"
msgstr "(không hiểu chủ đề)"
-#: src/whatis.c:863
+#: src/whatis.c:861
#, c-format
msgid "%s: nothing appropriate.\n"
msgstr "%s: không có gì thích hợp cả.\n"
-#: src/zsoelim.l:171
+#: src/zsoelim.l:178
#, c-format
msgid "%s:%d: .so requests nested too deeply or are recursive"
msgstr "%s:%d: các yêu cầu \".so\" lồng nhau quá sâu hoặc bị đệ quy"
-#: src/zsoelim.l:186
+#: src/zsoelim.l:193
#, c-format
msgid "%s:%d: warning: failed .so request"
msgstr "%s:%d: cảnh báo: yêu cầu \".so\" bị lỗi"
-#: src/zsoelim.l:208
+#: src/zsoelim.l:215
#, c-format
msgid "%s:%d: warning: newline in .so request, ignoring"
msgstr "%s:%d: cảnh báo: yêu cầu \".so\" có chứa ký tự dòng mới nên bỏ qua"
-#: src/zsoelim.l:268
+#: src/zsoelim.l:275
#, c-format
msgid "%s:%d: warning: malformed .lf request, ignoring"
msgstr "%s:%d: cảnh báo: yêu cầu \".lf\" sai định dạng nên bỏ qua"
-#: src/zsoelim.l:278
+#: src/zsoelim.l:285
#, c-format
msgid "%s:%d: warning: newline in .lf request, ignoring"
msgstr "%s:%d: cảnh báo: yêu cầu \".lf\" có chứa ký tự dòng mới nên bỏ qua"
-#: src/zsoelim.l:318
+#: src/zsoelim.l:325
#, c-format
msgid "%s:%d: unterminated quote in roff request"
msgstr "%s:%d: yêu cầu roff chứa đoạn trích dẫn chưa được chấm dứt"
-#: src/zsoelim_main.c:70
+#: src/zsoelim_main.c:69
msgid "compatibility switch (ignored)"
msgstr "các tùy chọn dùng cho mục đích tương thích (bị bỏ qua)"
diff --git a/po/zh_CN.po b/po/zh_CN.po
index 079af964..22b61852 100644
--- a/po/zh_CN.po
+++ b/po/zh_CN.po
@@ -19,7 +19,7 @@ msgid ""
msgstr ""
"Project-Id-Version: man-db 2.7.6.1\n"
"Report-Msgid-Bugs-To: Colin Watson <cjwatson@debian.org>\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2017-11-15 17:53+0800\n"
"Last-Translator: Boyuan Yang <073plan@gmail.com>\n"
"Language-Team: Chinese (simplified) <i18n-zh@googlegroups.com>\n"
@@ -80,7 +80,7 @@ msgid "bad fetch on multi key %s"
msgstr "获取了无效的多重词条 %s"
# need-proofread
-#: libdb/db_lookup.c:443 src/whatis.c:739
+#: libdb/db_lookup.c:443 src/whatis.c:737
#, c-format
msgid "Database %s corrupted; rebuild with mandb --create"
msgstr "数据库 %s 已损坏;请用 mandb --create 命令重建"
@@ -90,28 +90,28 @@ msgstr "数据库 %s 已损坏;请用 mandb --create 命令重建"
msgid "warning: %s has no version identifier\n"
msgstr "警告:%s 没有版本识别符\n"
-#: libdb/db_ver.c:56
+#: libdb/db_ver.c:57
#, c-format
msgid "warning: %s is version %s, expecting %s\n"
msgstr "警告:%s 的版本是 %s,期望为 %s\n"
-#: libdb/db_ver.c:78
+#: libdb/db_ver.c:79
#, c-format
msgid "fatal: unable to insert version identifier into %s"
msgstr "致命错误:无法将版本识别符插入 %s"
-#: src/accessdb.c:61
+#: src/accessdb.c:59
msgid "[MAN DATABASE]"
msgstr "[MAN 数据库]"
-#: src/accessdb.c:62
+#: src/accessdb.c:60
#, c-format
msgid "The man database defaults to %s%s."
msgstr "默认的 man 数据库是 %s%s。"
-#: src/accessdb.c:65 src/catman.c:103 src/globbing_test.c:62
-#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:115
-#: src/manpath.c:67 src/whatis.c:127 src/zsoelim_main.c:69
+#: src/accessdb.c:63 src/catman.c:100 src/globbing_test.c:58
+#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:114
+#: src/manpath.c:65 src/whatis.c:126 src/zsoelim_main.c:68
msgid "emit debugging messages"
msgstr "输出调试信息"
@@ -121,46 +121,46 @@ msgstr "输出调试信息"
msgid "can't open %s for reading"
msgstr "无法打开 %s 读取数据"
-#: src/catman.c:100
+#: src/catman.c:97
msgid "[SECTION...]"
msgstr "[章节...]"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "PATH"
msgstr "路径"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "set search path for manual pages to PATH"
msgstr "设置搜索手册页的路径为 PATH"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "FILE"
msgstr "文件"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "use this user configuration file"
msgstr "使用该用户设置文件"
-#: src/catman.c:198
+#: src/catman.c:195
#, c-format
msgid "man command failed with exit status %d"
msgstr "man 命令失败,退出状态代码为 %d"
-#: src/catman.c:237
+#: src/catman.c:235
#, c-format
msgid "cannot read database %s"
msgstr "无法读取数据库 %s"
# need-proofread
-#: src/catman.c:280
+#: src/catman.c:278
#, c-format
msgid "NULL content for key: %s"
msgstr "关于 %s 词条的内容为空"
# need-proofread
-#: src/catman.c:295
+#: src/catman.c:294
#, c-format
msgid ""
"\n"
@@ -169,12 +169,12 @@ msgstr ""
"\n"
"正在更新 man 目录树 %2$s 中第 %1$s 节的 cat 文件\n"
-#: src/catman.c:349
+#: src/catman.c:348
#, c-format
msgid "cannot write within %s"
msgstr "无法在 %s 里写入"
-#: src/catman.c:426
+#: src/catman.c:425
#, c-format
msgid "unable to update %s"
msgstr "无法更新 %s"
@@ -185,68 +185,68 @@ msgstr "无法更新 %s"
msgid "warning: %s/man%s/%s.%s*: competing extensions"
msgstr "警告:%s/man%s/%s.%s*:互相竞争的扩展"
-#: src/check_mandirs.c:114 src/check_mandirs.c:613
+#: src/check_mandirs.c:126 src/check_mandirs.c:626
#, c-format
msgid "can't update index cache %s"
msgstr "无法更新索引缓存 %s"
-#: src/check_mandirs.c:242
+#: src/check_mandirs.c:254
#, c-format
msgid "warning: %s: bad symlink or ROFF `.so' request"
msgstr "警告:%s:坏的符号链接或坏的 ROFF“.so”请求"
-#: src/check_mandirs.c:298
+#: src/check_mandirs.c:310
#, c-format
msgid "warning: %s: ignoring empty file"
msgstr "警告:%s:忽略空文件"
-#: src/check_mandirs.c:302 src/straycats.c:276
+#: src/check_mandirs.c:314 src/straycats.c:276
#, c-format
msgid "warning: %s: whatis parse for %s(%s) failed"
msgstr "警告:%s:用 whatis 解读 %s(%s) 失败"
-#: src/check_mandirs.c:329 src/check_mandirs.c:498 src/mandb.c:883
+#: src/check_mandirs.c:341 src/check_mandirs.c:511 src/mandb.c:877
#: src/straycats.c:84 src/straycats.c:303 src/ult_src.c:81
#, c-format
msgid "can't search directory %s"
msgstr "无法搜索目录 %s"
-#: src/check_mandirs.c:378 src/man.c:1687
+#: src/check_mandirs.c:390 src/man.c:1689
#, c-format
msgid "can't chown %s"
msgstr "无法 chown %s"
-#: src/check_mandirs.c:400 src/check_mandirs.c:423
+#: src/check_mandirs.c:412 src/check_mandirs.c:435
#, c-format
msgid "warning: cannot create catdir %s"
msgstr "警告:无法创建 catdir %s"
-#: src/check_mandirs.c:455 src/man.c:1699 src/mandb.c:233
+#: src/check_mandirs.c:467 src/man.c:1701 src/mandb.c:232
#, c-format
msgid "can't chmod %s"
msgstr "无法 chmod %s"
-#: src/check_mandirs.c:503
+#: src/check_mandirs.c:516
#, c-format
msgid "can't change to directory %s"
msgstr "无法切换到目录 %s 中"
-#: src/check_mandirs.c:553
+#: src/check_mandirs.c:566
#, c-format
msgid "can't create index cache %s"
msgstr "无法创建索引缓存 %s"
-#: src/check_mandirs.c:578
+#: src/check_mandirs.c:591
#, c-format
msgid "Updating index cache for path `%s/%s'. Wait..."
msgstr "正在为路径 %s/%s 更新索引缓存。请等待..."
-#: src/check_mandirs.c:640 src/check_mandirs.c:701
+#: src/check_mandirs.c:653 src/check_mandirs.c:714
msgid "done.\n"
msgstr "完成。\n"
# need-proofread
-#: src/check_mandirs.c:963
+#: src/check_mandirs.c:977
#, c-format
msgid "Purging old database entries in %s...\n"
msgstr "正在删除 %s 里的旧数据库条目...\n"
@@ -263,48 +263,48 @@ msgstr "警告:为 %s(%s) 存储条目失败"
msgid "warning: %s: ignoring bogus filename"
msgstr "警告:%s:忽略错误的文件名"
-#: src/globbing_test.c:59
+#: src/globbing_test.c:55
msgid "PATH SECTION NAME"
msgstr "路径 章节 名称"
-#: src/globbing_test.c:63 src/man.c:292
+#: src/globbing_test.c:59 src/man.c:292
msgid "EXTENSION"
msgstr "扩展"
-#: src/globbing_test.c:63 src/man.c:293
+#: src/globbing_test.c:59 src/man.c:293
msgid "limit search to extension type EXTENSION"
msgstr "将搜索限制在扩展类型为“扩展”的手册页之内"
-#: src/globbing_test.c:64 src/man.c:294
+#: src/globbing_test.c:60 src/man.c:294
msgid "look for pages case-insensitively (default)"
msgstr "查找手册页时不区分大小写字母 (默认)"
-#: src/globbing_test.c:65 src/man.c:295
+#: src/globbing_test.c:61 src/man.c:295
msgid "look for pages case-sensitively"
msgstr "查找手册页时区分大小写字母"
-#: src/globbing_test.c:66
+#: src/globbing_test.c:62
msgid "interpret page name as a regex"
msgstr "把页面名称当作正则表达式解读"
-#: src/globbing_test.c:67
+#: src/globbing_test.c:63
msgid "the page name contains wildcards"
msgstr "页面名称里包含通配符"
-#: src/lexgrog.l:691
+#: src/lexgrog.l:701
#, c-format
msgid "warning: whatis for %s exceeds %d byte, truncating."
msgid_plural "warning: whatis for %s exceeds %d bytes, truncating."
msgstr[0] "警告:对 %s 的 whatis 操作结果超过 %d 字节,正在截断。"
-#: src/lexgrog.l:844 src/man.c:2268 src/man.c:2350 src/man.c:2448
+#: src/lexgrog.l:854 src/man.c:2270 src/man.c:2354 src/man.c:2452
#: src/manconv_main.c:168 src/straycats.c:218 src/ult_src.c:321
-#: src/ult_src.c:335 src/zsoelim.l:512
+#: src/ult_src.c:335 src/zsoelim.l:519
#, c-format
msgid "can't open %s"
msgstr "无法打开 %s"
-#: src/lexgrog_test.c:69 src/zsoelim_main.c:66
+#: src/lexgrog_test.c:69 src/zsoelim_main.c:65
msgid "FILE..."
msgstr "文件..."
@@ -402,7 +402,7 @@ msgstr "以指定编码输出手册页源码"
msgid "Finding manual pages:"
msgstr "寻找手册页:"
-#: src/man.c:287 src/whatis.c:138
+#: src/man.c:287 src/whatis.c:137
msgid "LOCALE"
msgstr "区域"
@@ -410,15 +410,15 @@ msgstr "区域"
msgid "define the locale for this particular man search"
msgstr "定义本次手册页搜索所采用的区域设置"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "SYSTEM"
msgstr "系统"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "use manual pages from other systems"
msgstr "使用来自其它系统的手册页"
-#: src/man.c:290 src/whatis.c:134
+#: src/man.c:290 src/whatis.c:133
msgid "LIST"
msgstr "列表"
@@ -532,77 +532,77 @@ msgstr ""
msgid "use groff and force it to produce ditroff"
msgstr "使用 groff 并强制它生成 ditroff"
-#: src/man.c:597 src/man.c:733
+#: src/man.c:599 src/man.c:735
#, c-format
msgid "No manual entry for %s\n"
msgstr "没有 %s 的手册页条目\n"
-#: src/man.c:599
+#: src/man.c:601
#, c-format
msgid "(Alternatively, what manual page do you want from section %s?)\n"
msgstr "(换句话问,您需要第 %s 节中的什么手册页?)\n"
-#: src/man.c:603
+#: src/man.c:605
msgid "What manual page do you want?\n"
msgstr "您需要什么手册页?\n"
-#: src/man.c:730
+#: src/man.c:732
#, c-format
msgid "No manual entry for %s in section %s\n"
msgstr "在第 %2$s 节中没有关于 %1$s 的手册页条目。\n"
-#: src/man.c:739
+#: src/man.c:741
#, c-format
msgid "See '%s' for help when manual pages are not available.\n"
msgstr "当没有手册页时,可以用 %s 命令来寻求帮助。\n"
-#: src/man.c:1347
+#: src/man.c:1349
#, c-format
msgid "ignoring unknown preprocessor `%c'"
msgstr "忽略未知的预处理器 `%c'"
-#: src/man.c:1710 src/mandb.c:224
+#: src/man.c:1712 src/mandb.c:223
#, c-format
msgid "can't rename %s to %s"
msgstr "无法将 %s 改名为 %s"
# need-proofread
-#: src/man.c:1727
+#: src/man.c:1729
#, c-format
msgid "can't set times on %s"
msgstr "无法设定 %s 文件的时间"
-#: src/man.c:1736 src/man.c:1773
+#: src/man.c:1738 src/man.c:1775
#, c-format
msgid "can't unlink %s"
msgstr "无法删除 (unlink) %s"
-#: src/man.c:1803
+#: src/man.c:1805
#, c-format
msgid "can't create temporary cat for %s"
msgstr "无法为 %s 创建临时 cat 文件"
-#: src/man.c:1913
+#: src/man.c:1915
#, c-format
msgid "can't create temporary directory"
msgstr "无法创建临时目录"
-#: src/man.c:1924
+#: src/man.c:1926
#, c-format
msgid "can't open temporary file %s"
msgstr "无法打开临时文件 %s"
-#: src/man.c:1954 src/man.c:1983
+#: src/man.c:1956 src/man.c:1985
#, c-format
msgid "can't remove directory %s"
msgstr "无法移除目录 %s"
-#: src/man.c:2112
+#: src/man.c:2114
#, c-format
msgid "--Man-- next: %s [ view (return) | skip (Ctrl-D) | quit (Ctrl-C) ]\n"
msgstr "--Man-- 下一页: %s [ 查看 (return) | 跳过 (Ctrl-D) | 退出 (Ctrl-C) ]\n"
-#: src/man.c:2393
+#: src/man.c:2397
#, c-format
msgid ""
"\n"
@@ -611,23 +611,23 @@ msgstr ""
"\n"
"无法在 catman 模式下对 %s 写入"
-#: src/man.c:2474
+#: src/man.c:2477
#, c-format
msgid "Can't convert %s to cat name"
msgstr "无法把 %s 转换为 cat 名称"
# need-proofread
-#: src/man.c:3203
+#: src/man.c:3206
#, c-format
msgid "%s: relying on whatis refs is deprecated\n"
msgstr "%s:依赖于 whatis 引用是已被废弃的做法\n"
-#: src/man.c:3346 src/man.c:4196
+#: src/man.c:3349 src/man.c:4200
#, c-format
msgid "mandb command failed with exit status %d"
msgstr "mandb 命令失败,退出状态代码为 %d"
-#: src/man.c:3548
+#: src/man.c:3551
#, c-format
msgid "internal error: candidate type %d out of range"
msgstr "内部错误:候选类型 %d 超出正常范围"
@@ -635,7 +635,7 @@ msgstr "内部错误:候选类型 %d 超出正常范围"
# I'm not sure this should be translated. It comes from a less prompt string
# but seems to be only part of it. (Ming)
# need-proofread
-#: src/man.c:4137
+#: src/man.c:4141
msgid " Manual page "
msgstr " Manual page "
@@ -669,7 +669,7 @@ msgstr "编码"
msgid "encoding for output"
msgstr "输出文本所用的编码"
-#: src/manconv_main.c:97 src/manpath.c:68
+#: src/manconv_main.c:97 src/manpath.c:66
msgid "produce fewer warnings"
msgstr "少显示一些警告"
@@ -683,73 +683,73 @@ msgstr "必须指定输入所用的编码"
msgid "must specify an output encoding"
msgstr "必须指定输出所用的编码"
-#: src/mandb.c:112
+#: src/mandb.c:111
msgid "[MANPATH]"
msgstr "[手册路径]"
-#: src/mandb.c:116
+#: src/mandb.c:115
msgid "work quietly, except for 'bogus' warning"
msgstr "安静运行,除 bogus 警告外不输出信息"
-#: src/mandb.c:117
+#: src/mandb.c:116
msgid "don't look for or add stray cats to the dbs"
msgstr "不要寻找或在数据库中添加孤立 cat 页面"
-#: src/mandb.c:118
+#: src/mandb.c:117
msgid "don't purge obsolete entries from the dbs"
msgstr "不要删除数据库中过时的旧条目"
-#: src/mandb.c:119
+#: src/mandb.c:118
msgid "produce user databases only"
msgstr "仅生成用户数据库"
-#: src/mandb.c:120
+#: src/mandb.c:119
msgid "create dbs from scratch, rather than updating"
msgstr "不更新数据库,而是重新创建数据库"
-#: src/mandb.c:121
+#: src/mandb.c:120
msgid "check manual pages for correctness"
msgstr "检查手册页的正确性"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "FILENAME"
msgstr "文件名"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "update just the entry for this filename"
msgstr "仅更新该文件名对应的条目"
-#: src/mandb.c:217
+#: src/mandb.c:216
#, c-format
msgid "can't remove %s"
msgstr "无法移除 %s"
-#: src/mandb.c:281
+#: src/mandb.c:280
#, c-format
msgid "can't write to %s"
msgstr "无法对 %s 写入"
-#: src/mandb.c:286
+#: src/mandb.c:285
#, c-format
msgid "can't read from %s"
msgstr "无法从 %s 读取"
-#: src/mandb.c:455
+#: src/mandb.c:457
#, c-format
msgid "Processing manual pages under %s...\n"
msgstr "正在处理 %s 下的手册页...\n"
-#: src/mandb.c:672 src/mandb.c:698
+#: src/mandb.c:666 src/mandb.c:692
#, c-format
msgid "Removing obsolete cat directory %s...\n"
msgstr "正在删除过时的 cat 目录 %s...\n"
-#: src/mandb.c:848
+#: src/mandb.c:842
#, c-format
msgid "warning: no MANDB_MAP directives in %s, using your manpath"
msgstr "警告:在 %s 中没有 MANDB_MAP 指令,使用您的手册路径设置"
-#: src/mandb.c:920
+#: src/mandb.c:914
#, c-format
msgid "%d man subdirectory contained newer manual pages.\n"
msgid_plural "%d man subdirectories contained newer manual pages.\n"
@@ -758,26 +758,26 @@ msgstr[0] "%d 个 man 子目录包含更新的手册页。\n"
# I'm not sure this should be translated. It comes from a less prompt string
# but seems to be only part of it. (Ming)
# need-proofread
-#: src/mandb.c:925
+#: src/mandb.c:919
#, c-format
msgid "%d manual page was added.\n"
msgid_plural "%d manual pages were added.\n"
msgstr[0] "添加了 %d 个手册页。\n"
-#: src/mandb.c:929
+#: src/mandb.c:923
#, c-format
msgid "%d stray cat was added.\n"
msgid_plural "%d stray cats were added.\n"
msgstr[0] "添加了 %d 个孤立 cat 页面。\n"
# need-proofread
-#: src/mandb.c:934
+#: src/mandb.c:928
#, c-format
msgid "%d old database entry was purged.\n"
msgid_plural "%d old database entries were purged.\n"
msgstr[0] "删除了 %d 条旧数据库条目。\n"
-#: src/mandb.c:952
+#: src/mandb.c:946
#, c-format
msgid "No databases created."
msgstr "未创建任何数据库。"
@@ -852,15 +852,15 @@ msgstr "无法确定当前目录"
msgid "warning: %s does not begin with %s"
msgstr "警告:%s 并非以 %s 开始"
-#: src/manpath.c:65
+#: src/manpath.c:63
msgid "show relative catpaths"
msgstr "显示相对 cat 路径"
-#: src/manpath.c:66
+#: src/manpath.c:64
msgid "show the entire global manpath"
msgstr "显示整个全局手册路径"
-#: src/manpath.c:128
+#: src/manpath.c:126
#, c-format
msgid "warning: no global manpaths set in config file %s"
msgstr "警告:在设置文件 %s 中没有设定全局手册路径"
@@ -891,98 +891,98 @@ msgstr "警告:无法更新索引缓存 %s"
msgid "%s is self referencing"
msgstr "%s 是指向自己的链接"
-#: src/whatis.c:123
+#: src/whatis.c:122
msgid "KEYWORD..."
msgstr "关键词..."
-#: src/whatis.c:124
+#: src/whatis.c:123
msgid "The --regex option is enabled by default."
msgstr "默认开启 --regex 选项。"
-#: src/whatis.c:128
+#: src/whatis.c:127
msgid "print verbose warning messages"
msgstr "输出详细的警告信息"
-#: src/whatis.c:129
+#: src/whatis.c:128
msgid "interpret each keyword as a regex"
msgstr "把每个关键词都当作正则表达式解读"
-#: src/whatis.c:130
+#: src/whatis.c:129
msgid "search each keyword for exact match"
msgstr "对每个关键词都进行严格匹配的搜索"
-#: src/whatis.c:131
+#: src/whatis.c:130
msgid "the keyword(s) contain wildcards"
msgstr "关键词里包含通配符"
-#: src/whatis.c:132
+#: src/whatis.c:131
msgid "require all keywords to match"
msgstr "要求所有的关键词都同时匹配"
-#: src/whatis.c:133
+#: src/whatis.c:132
msgid "do not trim output to terminal width"
msgstr "不要把输出按终端宽度截断"
-#: src/whatis.c:134
+#: src/whatis.c:133
msgid "search only these sections (colon-separated)"
msgstr "仅在这些分区中搜索(冒号分隔)"
-#: src/whatis.c:138
+#: src/whatis.c:137
msgid "define the locale for this search"
msgstr "定义本次搜索所使用的区域设置"
-#: src/whatis.c:235
+#: src/whatis.c:234
#, c-format
msgid "%s what?\n"
msgstr "%s 什么?\n"
# need-proofread
-#: src/whatis.c:412 src/whatis.c:430
+#: src/whatis.c:410 src/whatis.c:428
#, c-format
msgid "warning: %s contains a pointer loop"
msgstr "警告:%s 包含一个指针回环"
-#: src/whatis.c:424 src/whatis.c:432
+#: src/whatis.c:422 src/whatis.c:430
msgid "(unknown subject)"
msgstr "(未知的主题)"
# partially-translated
-#: src/whatis.c:863
+#: src/whatis.c:861
#, c-format
msgid "%s: nothing appropriate.\n"
msgstr "%s:没有合适结果。\n"
-#: src/zsoelim.l:171
+#: src/zsoelim.l:178
#, c-format
msgid "%s:%d: .so requests nested too deeply or are recursive"
msgstr "%s:%d:.so 请求嵌套太深或形成循环"
-#: src/zsoelim.l:186
+#: src/zsoelim.l:193
#, c-format
msgid "%s:%d: warning: failed .so request"
msgstr "%s:%d:警告:.so 请求失败"
-#: src/zsoelim.l:208
+#: src/zsoelim.l:215
#, c-format
msgid "%s:%d: warning: newline in .so request, ignoring"
msgstr "%s:%d:警告:.so 请求中含有换行符,将忽略"
-#: src/zsoelim.l:268
+#: src/zsoelim.l:275
#, c-format
msgid "%s:%d: warning: malformed .lf request, ignoring"
msgstr "%s:%d:警告:不合规格的 .lf 请求,将忽略"
-#: src/zsoelim.l:278
+#: src/zsoelim.l:285
#, c-format
msgid "%s:%d: warning: newline in .lf request, ignoring"
msgstr "%s:%d:警告:.lf 请求中含有换行符,将忽略"
-#: src/zsoelim.l:318
+#: src/zsoelim.l:325
#, c-format
msgid "%s:%d: unterminated quote in roff request"
msgstr "%s:%d:roff 请求中含有未结束的引用"
-#: src/zsoelim_main.c:70
+#: src/zsoelim_main.c:69
msgid "compatibility switch (ignored)"
msgstr "兼容性选项 (将被忽略)"
diff --git a/po/zh_TW.po b/po/zh_TW.po
index 092be780..e9a69174 100644
--- a/po/zh_TW.po
+++ b/po/zh_TW.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: man-db 2.8.0-pre2\n"
"Report-Msgid-Bugs-To: Colin Watson <cjwatson@debian.org>\n"
-"POT-Creation-Date: 2019-08-05 10:12+0100\n"
+"POT-Creation-Date: 2019-08-26 15:48+0100\n"
"PO-Revision-Date: 2018-05-09 19:02+0800\n"
"Last-Translator: pan93412 <pan93412@gmail.com>\n"
"Language-Team: Chinese (traditional) <zh-l10n@linux.org.tw>\n"
@@ -65,7 +65,7 @@ msgstr[0] "內容中只有 %d 個欄位"
msgid "bad fetch on multi key %s"
msgstr "多重按鍵 %s 上失敗的提取"
-#: libdb/db_lookup.c:443 src/whatis.c:739
+#: libdb/db_lookup.c:443 src/whatis.c:737
#, c-format
msgid "Database %s corrupted; rebuild with mandb --create"
msgstr "資料庫 %s 損壞;透過 mandb --create 重建"
@@ -75,28 +75,28 @@ msgstr "資料庫 %s 損壞;透過 mandb --create 重建"
msgid "warning: %s has no version identifier\n"
msgstr "警告:%s 沒有版本識別碼\n"
-#: libdb/db_ver.c:56
+#: libdb/db_ver.c:57
#, c-format
msgid "warning: %s is version %s, expecting %s\n"
msgstr "警告:%s 為版本 %s,預期為 %s\n"
-#: libdb/db_ver.c:78
+#: libdb/db_ver.c:79
#, c-format
msgid "fatal: unable to insert version identifier into %s"
msgstr "嚴重錯誤:無法插入版本識別碼至 %s"
-#: src/accessdb.c:61
+#: src/accessdb.c:59
msgid "[MAN DATABASE]"
msgstr "[MAN 資料庫]"
-#: src/accessdb.c:62
+#: src/accessdb.c:60
#, c-format
msgid "The man database defaults to %s%s."
msgstr "man 資料庫預設值至 %s%s。"
-#: src/accessdb.c:65 src/catman.c:103 src/globbing_test.c:62
-#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:115
-#: src/manpath.c:67 src/whatis.c:127 src/zsoelim_main.c:69
+#: src/accessdb.c:63 src/catman.c:100 src/globbing_test.c:58
+#: src/lexgrog_test.c:73 src/man.c:268 src/manconv_main.c:96 src/mandb.c:114
+#: src/manpath.c:65 src/whatis.c:126 src/zsoelim_main.c:68
msgid "emit debugging messages"
msgstr "發出偵錯訊息"
@@ -105,44 +105,44 @@ msgstr "發出偵錯訊息"
msgid "can't open %s for reading"
msgstr "無法讀取 %s"
-#: src/catman.c:100
+#: src/catman.c:97
msgid "[SECTION...]"
msgstr "[章節…]"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "PATH"
msgstr "位置"
-#: src/catman.c:104 src/man.c:289 src/whatis.c:137
+#: src/catman.c:101 src/man.c:289 src/whatis.c:136
msgid "set search path for manual pages to PATH"
msgstr "設定手冊頁面的搜尋路徑至 PATH"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "FILE"
msgstr "檔案"
-#: src/catman.c:105 src/man.c:267 src/mandb.c:123 src/manpath.c:69
-#: src/whatis.c:139
+#: src/catman.c:102 src/man.c:267 src/mandb.c:122 src/manpath.c:67
+#: src/whatis.c:138
msgid "use this user configuration file"
msgstr "使用這個使用者設定檔"
-#: src/catman.c:198
+#: src/catman.c:195
#, c-format
msgid "man command failed with exit status %d"
msgstr "man 指令錯誤,離開代碼 %d"
-#: src/catman.c:237
+#: src/catman.c:235
#, c-format
msgid "cannot read database %s"
msgstr "無法讀取資料庫 %s"
-#: src/catman.c:280
+#: src/catman.c:278
#, c-format
msgid "NULL content for key: %s"
msgstr "金鑰的空內容:%s"
-#: src/catman.c:295
+#: src/catman.c:294
#, c-format
msgid ""
"\n"
@@ -151,12 +151,12 @@ msgstr ""
"\n"
"更新 man 層次結構 %2$s 的第 %1$s 部份的 cat 檔案\n"
-#: src/catman.c:349
+#: src/catman.c:348
#, c-format
msgid "cannot write within %s"
msgstr "無法在 %s 中寫入"
-#: src/catman.c:426
+#: src/catman.c:425
#, c-format
msgid "unable to update %s"
msgstr "無法更新 %s"
@@ -166,67 +166,67 @@ msgstr "無法更新 %s"
msgid "warning: %s/man%s/%s.%s*: competing extensions"
msgstr "警告:%s/man%s/%s.%s*:競爭擴展 (competing extensions)"
-#: src/check_mandirs.c:114 src/check_mandirs.c:613
+#: src/check_mandirs.c:126 src/check_mandirs.c:626
#, c-format
msgid "can't update index cache %s"
msgstr "無法更新索引快取 %s"
-#: src/check_mandirs.c:242
+#: src/check_mandirs.c:254
#, c-format
msgid "warning: %s: bad symlink or ROFF `.so' request"
msgstr "警告:%s:損壞的符號連結或 ROFF `.so' 請求"
-#: src/check_mandirs.c:298
+#: src/check_mandirs.c:310
#, c-format
msgid "warning: %s: ignoring empty file"
msgstr "警告:%s:忽略空檔案"
-#: src/check_mandirs.c:302 src/straycats.c:276
+#: src/check_mandirs.c:314 src/straycats.c:276
#, c-format
msgid "warning: %s: whatis parse for %s(%s) failed"
msgstr "警告:%s:為 %s(%s) 的 whatis 解析失敗"
-#: src/check_mandirs.c:329 src/check_mandirs.c:498 src/mandb.c:883
+#: src/check_mandirs.c:341 src/check_mandirs.c:511 src/mandb.c:877
#: src/straycats.c:84 src/straycats.c:303 src/ult_src.c:81
#, c-format
msgid "can't search directory %s"
msgstr "無法搜尋路徑 %s"
-#: src/check_mandirs.c:378 src/man.c:1687
+#: src/check_mandirs.c:390 src/man.c:1689
#, c-format
msgid "can't chown %s"
msgstr "無法 chown %s"
-#: src/check_mandirs.c:400 src/check_mandirs.c:423
+#: src/check_mandirs.c:412 src/check_mandirs.c:435
#, c-format
msgid "warning: cannot create catdir %s"
msgstr "警告:無法建立 catdir %s"
-#: src/check_mandirs.c:455 src/man.c:1699 src/mandb.c:233
+#: src/check_mandirs.c:467 src/man.c:1701 src/mandb.c:232
#, c-format
msgid "can't chmod %s"
msgstr "無法 chmod %s"
-#: src/check_mandirs.c:503
+#: src/check_mandirs.c:516
#, c-format
msgid "can't change to directory %s"
msgstr "無法切換至目錄 %s"
-#: src/check_mandirs.c:553
+#: src/check_mandirs.c:566
#, c-format
msgid "can't create index cache %s"
msgstr "無法建立索引快取 %s"
-#: src/check_mandirs.c:578
+#: src/check_mandirs.c:591
#, c-format
msgid "Updating index cache for path `%s/%s'. Wait..."
msgstr "正在為路徑「%s/%s」更新索引快取。請等待…"
-#: src/check_mandirs.c:640 src/check_mandirs.c:701
+#: src/check_mandirs.c:653 src/check_mandirs.c:714
msgid "done.\n"
msgstr "完成。\n"
-#: src/check_mandirs.c:963
+#: src/check_mandirs.c:977
#, c-format
msgid "Purging old database entries in %s...\n"
msgstr "正在清除 %s 中的舊資料庫項目…\n"
@@ -241,48 +241,48 @@ msgstr "警告:無法為 %s(%s) 儲存項目"
msgid "warning: %s: ignoring bogus filename"
msgstr "警告:%s:忽略假檔案名稱"
-#: src/globbing_test.c:59
+#: src/globbing_test.c:55
msgid "PATH SECTION NAME"
msgstr "路徑部份名稱"
-#: src/globbing_test.c:63 src/man.c:292
+#: src/globbing_test.c:59 src/man.c:292
msgid "EXTENSION"
msgstr "EXTENSION"
-#: src/globbing_test.c:63 src/man.c:293
+#: src/globbing_test.c:59 src/man.c:293
msgid "limit search to extension type EXTENSION"
msgstr "限制搜尋擴充元件類型 EXTENSION"
-#: src/globbing_test.c:64 src/man.c:294
+#: src/globbing_test.c:60 src/man.c:294
msgid "look for pages case-insensitively (default)"
msgstr "不區分大小寫搜尋頁面(預設)"
-#: src/globbing_test.c:65 src/man.c:295
+#: src/globbing_test.c:61 src/man.c:295
msgid "look for pages case-sensitively"
msgstr "區分大小寫搜尋頁面"
-#: src/globbing_test.c:66
+#: src/globbing_test.c:62
msgid "interpret page name as a regex"
msgstr "將頁面名稱解釋為正規表達式"
-#: src/globbing_test.c:67
+#: src/globbing_test.c:63
msgid "the page name contains wildcards"
msgstr "頁面名稱包含 Wildcard"
-#: src/lexgrog.l:691
+#: src/lexgrog.l:701
#, c-format
msgid "warning: whatis for %s exceeds %d byte, truncating."
msgid_plural "warning: whatis for %s exceeds %d bytes, truncating."
msgstr[0] "警告:為 %s 的 whatis 超出 %d 位元組,正在截斷。"
-#: src/lexgrog.l:844 src/man.c:2268 src/man.c:2350 src/man.c:2448
+#: src/lexgrog.l:854 src/man.c:2270 src/man.c:2354 src/man.c:2452
#: src/manconv_main.c:168 src/straycats.c:218 src/ult_src.c:321
-#: src/ult_src.c:335 src/zsoelim.l:512
+#: src/ult_src.c:335 src/zsoelim.l:519
#, c-format
msgid "can't open %s"
msgstr "無法開啟 %s"
-#: src/lexgrog_test.c:69 src/zsoelim_main.c:66
+#: src/lexgrog_test.c:69 src/zsoelim_main.c:65
msgid "FILE..."
msgstr "檔案…"
@@ -380,7 +380,7 @@ msgstr "在 ENCODING 中編碼輸出原始頁面"
msgid "Finding manual pages:"
msgstr "正在搜尋手冊頁面:"
-#: src/man.c:287 src/whatis.c:138
+#: src/man.c:287 src/whatis.c:137
msgid "LOCALE"
msgstr "語系"
@@ -388,15 +388,15 @@ msgstr "語系"
msgid "define the locale for this particular man search"
msgstr "為此特定的 man 搜尋定義語言"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "SYSTEM"
msgstr "系統"
-#: src/man.c:288 src/manpath.c:70 src/whatis.c:136
+#: src/man.c:288 src/manpath.c:68 src/whatis.c:135
msgid "use manual pages from other systems"
msgstr "從系統系統使用手冊頁面"
-#: src/man.c:290 src/whatis.c:134
+#: src/man.c:290 src/whatis.c:133
msgid "LIST"
msgstr "列表"
@@ -509,76 +509,76 @@ msgstr ""
msgid "use groff and force it to produce ditroff"
msgstr "使用 groff 並強制其產生 ditroff"
-#: src/man.c:597 src/man.c:733
+#: src/man.c:599 src/man.c:735
#, c-format
msgid "No manual entry for %s\n"
msgstr "沒有 %s 的手冊項目\n"
-#: src/man.c:599
+#: src/man.c:601
#, c-format
msgid "(Alternatively, what manual page do you want from section %s?)\n"
msgstr "(或者,您想從第 %s 章節中選擇哪個手冊頁面?)\n"
-#: src/man.c:603
+#: src/man.c:605
msgid "What manual page do you want?\n"
msgstr "你想要什麼手冊?\n"
-#: src/man.c:730
+#: src/man.c:732
#, c-format
msgid "No manual entry for %s in section %s\n"
msgstr "%2$s 部份中沒有 %1$s 的手冊項目\n"
-#: src/man.c:739
+#: src/man.c:741
#, c-format
msgid "See '%s' for help when manual pages are not available.\n"
msgstr "當說明書不可用時,查看「%s」取得說明。\n"
-#: src/man.c:1347
+#: src/man.c:1349
#, c-format
msgid "ignoring unknown preprocessor `%c'"
msgstr "忽略未知的預處理機「%c」"
-#: src/man.c:1710 src/mandb.c:224
+#: src/man.c:1712 src/mandb.c:223
#, c-format
msgid "can't rename %s to %s"
msgstr "無法重新命名 %s 至 %s"
-#: src/man.c:1727
+#: src/man.c:1729
#, c-format
msgid "can't set times on %s"
msgstr "無法在 %s 上設定時間"
-#: src/man.c:1736 src/man.c:1773
+#: src/man.c:1738 src/man.c:1775
#, c-format
msgid "can't unlink %s"
msgstr "無法解除連結 %s"
-#: src/man.c:1803
+#: src/man.c:1805
#, c-format
msgid "can't create temporary cat for %s"
msgstr "無法為 %s 建立暫存 cat"
-#: src/man.c:1913
+#: src/man.c:1915
#, c-format
msgid "can't create temporary directory"
msgstr "無法建立暫存目錄"
-#: src/man.c:1924
+#: src/man.c:1926
#, c-format
msgid "can't open temporary file %s"
msgstr "無法開啟暫存檔案 %s"
-#: src/man.c:1954 src/man.c:1983
+#: src/man.c:1956 src/man.c:1985
#, c-format
msgid "can't remove directory %s"
msgstr "無法移除目錄 %s"
-#: src/man.c:2112
+#: src/man.c:2114
#, c-format
msgid "--Man-- next: %s [ view (return) | skip (Ctrl-D) | quit (Ctrl-C) ]\n"
msgstr "--Man-- 下一個:%s [ 顯示 (return) | 跳過 (Ctrl-D) | 離開 (Ctrl-C) ]\n"
-#: src/man.c:2393
+#: src/man.c:2397
#, c-format
msgid ""
"\n"
@@ -587,27 +587,27 @@ msgstr ""
"\n"
"無法在 catman 模式寫至 %s"
-#: src/man.c:2474
+#: src/man.c:2477
#, c-format
msgid "Can't convert %s to cat name"
msgstr "無法轉換 %s 至 cat 名稱"
-#: src/man.c:3203
+#: src/man.c:3206
#, c-format
msgid "%s: relying on whatis refs is deprecated\n"
msgstr "%s:依靠 whatis 的參考已經放棄\n"
-#: src/man.c:3346 src/man.c:4196
+#: src/man.c:3349 src/man.c:4200
#, c-format
msgid "mandb command failed with exit status %d"
msgstr "mandb 指令執行失敗,回傳代碼 %d"
-#: src/man.c:3548
+#: src/man.c:3551
#, c-format
msgid "internal error: candidate type %d out of range"
msgstr "內部錯誤:候選類型 %d 超出範圍"
-#: src/man.c:4137
+#: src/man.c:4141
msgid " Manual page "
msgstr " 手冊頁面 "
@@ -640,7 +640,7 @@ msgstr "CODE"
msgid "encoding for output"
msgstr "輸出編碼"
-#: src/manconv_main.c:97 src/manpath.c:68
+#: src/manconv_main.c:97 src/manpath.c:66
msgid "produce fewer warnings"
msgstr "產生較少的警告"
@@ -654,97 +654,97 @@ msgstr "需要指定輸入編碼"
msgid "must specify an output encoding"
msgstr "需要指定輸出編碼"
-#: src/mandb.c:112
+#: src/mandb.c:111
msgid "[MANPATH]"
msgstr "[MANPATH]"
-#: src/mandb.c:116
+#: src/mandb.c:115
msgid "work quietly, except for 'bogus' warning"
msgstr "安靜的執行,除了「bogus」警告"
-#: src/mandb.c:117
+#: src/mandb.c:116
msgid "don't look for or add stray cats to the dbs"
msgstr "不要尋找或增加 stray cats 至資料庫"
-#: src/mandb.c:118
+#: src/mandb.c:117
msgid "don't purge obsolete entries from the dbs"
msgstr "不要從資料庫清除過期的項目"
-#: src/mandb.c:119
+#: src/mandb.c:118
msgid "produce user databases only"
msgstr "只產生使用者資料庫"
-#: src/mandb.c:120
+#: src/mandb.c:119
msgid "create dbs from scratch, rather than updating"
msgstr "從頭建立資料庫,而不是升級。"
-#: src/mandb.c:121
+#: src/mandb.c:120
msgid "check manual pages for correctness"
msgstr "檢查手冊頁面的正確性"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "FILENAME"
msgstr "檔案名稱"
-#: src/mandb.c:122
+#: src/mandb.c:121
msgid "update just the entry for this filename"
msgstr "只更新此檔案名稱的項目"
-#: src/mandb.c:217
+#: src/mandb.c:216
#, c-format
msgid "can't remove %s"
msgstr "無法移除 %s"
-#: src/mandb.c:281
+#: src/mandb.c:280
#, c-format
msgid "can't write to %s"
msgstr "無法寫至 %s"
-#: src/mandb.c:286
+#: src/mandb.c:285
#, c-format
msgid "can't read from %s"
msgstr "無法從 %s 讀取"
-#: src/mandb.c:455
+#: src/mandb.c:457
#, c-format
msgid "Processing manual pages under %s...\n"
msgstr "正在 %s 底下處理手冊頁面…\n"
-#: src/mandb.c:672 src/mandb.c:698
+#: src/mandb.c:666 src/mandb.c:692
#, c-format
msgid "Removing obsolete cat directory %s...\n"
msgstr "移除過時的 cat 路徑 %s…\n"
-#: src/mandb.c:848
+#: src/mandb.c:842
#, c-format
msgid "warning: no MANDB_MAP directives in %s, using your manpath"
msgstr "警告:%s 中沒有 MANDB_MAP 指令,使用您的 manpath"
-#: src/mandb.c:920
+#: src/mandb.c:914
#, c-format
msgid "%d man subdirectory contained newer manual pages.\n"
msgid_plural "%d man subdirectories contained newer manual pages.\n"
msgstr[0] "%d 個 man 子目錄包含了較新的手冊頁面\n"
-#: src/mandb.c:925
+#: src/mandb.c:919
#, c-format
msgid "%d manual page was added.\n"
msgid_plural "%d manual pages were added.\n"
msgstr[0] "加入了 %d 個手冊頁面\n"
-#: src/mandb.c:929
+#: src/mandb.c:923
#, c-format
msgid "%d stray cat was added.\n"
msgid_plural "%d stray cats were added.\n"
msgstr[0] "加入了 %d 個 stray cat\n"
-#: src/mandb.c:934
+#: src/mandb.c:928
#, c-format
msgid "%d old database entry was purged.\n"
msgid_plural "%d old database entries were purged.\n"
msgstr[0] "清除了 %d 個舊資料庫項目。\n"
-#: src/mandb.c:952
+#: src/mandb.c:946
#, c-format
msgid "No databases created."
msgstr "沒有建立的資料庫"
@@ -819,15 +819,15 @@ msgstr "無法確定目前的目錄"
msgid "warning: %s does not begin with %s"
msgstr "警告:%s 未以 %s 開頭"
-#: src/manpath.c:65
+#: src/manpath.c:63
msgid "show relative catpaths"
msgstr "顯示相對的 catpath"
-#: src/manpath.c:66
+#: src/manpath.c:64
msgid "show the entire global manpath"
msgstr "顯示整個全域 manpath"
-#: src/manpath.c:128
+#: src/manpath.c:126
#, c-format
msgid "warning: no global manpaths set in config file %s"
msgstr "警告:沒有在設定檔 %s 設定全域 manpath"
@@ -857,96 +857,96 @@ msgstr "警告:無法更新索引快取 %s"
msgid "%s is self referencing"
msgstr "%s 為自我參考"
-#: src/whatis.c:123
+#: src/whatis.c:122
msgid "KEYWORD..."
msgstr "關鍵字…"
-#: src/whatis.c:124
+#: src/whatis.c:123
msgid "The --regex option is enabled by default."
msgstr "預設值啟用了 --regex 選項"
-#: src/whatis.c:128
+#: src/whatis.c:127
msgid "print verbose warning messages"
msgstr "顯示詳細的警告訊息"
-#: src/whatis.c:129
+#: src/whatis.c:128
msgid "interpret each keyword as a regex"
msgstr "將每個關鍵字解釋為正規表達式"
-#: src/whatis.c:130
+#: src/whatis.c:129
msgid "search each keyword for exact match"
msgstr "精確搜尋每個關鍵字"
-#: src/whatis.c:131
+#: src/whatis.c:130
msgid "the keyword(s) contain wildcards"
msgstr "此關鍵字包含 Wildcard"
-#: src/whatis.c:132
+#: src/whatis.c:131
msgid "require all keywords to match"
msgstr "需要符合所有關鍵字"
-#: src/whatis.c:133
+#: src/whatis.c:132
msgid "do not trim output to terminal width"
msgstr "不依終端器寬度裁切輸出"
-#: src/whatis.c:134
+#: src/whatis.c:133
msgid "search only these sections (colon-separated)"
msgstr "只搜尋這些部份(以冒號分隔)"
-#: src/whatis.c:138
+#: src/whatis.c:137
msgid "define the locale for this search"
msgstr "為這個搜尋定義語言"
-#: src/whatis.c:235
+#: src/whatis.c:234
#, c-format
msgid "%s what?\n"
msgstr "%s 什麼?\n"
-#: src/whatis.c:412 src/whatis.c:430
+#: src/whatis.c:410 src/whatis.c:428
#, c-format
msgid "warning: %s contains a pointer loop"
msgstr "警告:%s 包含了遞迴指標"
-#: src/whatis.c:424 src/whatis.c:432
+#: src/whatis.c:422 src/whatis.c:430
msgid "(unknown subject)"
msgstr "(未知主旨)"
-#: src/whatis.c:863
+#: src/whatis.c:861
#, c-format
msgid "%s: nothing appropriate.\n"
msgstr "%s:什麼都不適合。\n"
-#: src/zsoelim.l:171
+#: src/zsoelim.l:178
#, c-format
msgid "%s:%d: .so requests nested too deeply or are recursive"
msgstr "%s:%d:.so 請求巢狀過深或遞迴"
-#: src/zsoelim.l:186
+#: src/zsoelim.l:193
#, c-format
msgid "%s:%d: warning: failed .so request"
msgstr "%s:%d:警告:失敗的 .so 請求"
-#: src/zsoelim.l:208
+#: src/zsoelim.l:215
#, c-format
msgid "%s:%d: warning: newline in .so request, ignoring"
msgstr "%s:%d:警告:換行符號在 .so 請求中,正在忽略"
-#: src/zsoelim.l:268
+#: src/zsoelim.l:275
#, c-format
msgid "%s:%d: warning: malformed .lf request, ignoring"
msgstr "%s:%d:警告:.If 請求格式錯誤,正在忽略"
-#: src/zsoelim.l:278
+#: src/zsoelim.l:285
#, c-format
msgid "%s:%d: warning: newline in .lf request, ignoring"
msgstr "%s:%d:警告:換行符號在 .If 請求中,正在忽略"
-#: src/zsoelim.l:318
+#: src/zsoelim.l:325
#, c-format
msgid "%s:%d: unterminated quote in roff request"
msgstr "%s:%d:roff 請求中未終止的引用"
-#: src/zsoelim_main.c:70
+#: src/zsoelim_main.c:69
msgid "compatibility switch (ignored)"
msgstr "相容性開關(已忽略)"
diff --git a/src/Makefile.am b/src/Makefile.am
index ecc397f1..4431e902 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -62,13 +62,13 @@ LIBMANDB = $(top_builddir)/libdb/libmandb.la $(LIBMAN) $(DBLIBS)
accessdb_LDADD = $(LIBMANDB)
catman_LDADD = $(LIBMANDB) $(libpipeline_LIBS)
globbing_LDADD = $(LIBMAN)
-lexgrog_LDADD = $(LIBMAN) $(libpipeline_LIBS) $(LTLIBICONV)
-man_LDADD = $(LIBMANDB) $(libpipeline_LIBS) $(LTLIBICONV)
-manconv_LDADD = $(LIBMAN) $(libpipeline_LIBS) $(LTLIBICONV)
-mandb_LDADD = $(LIBMANDB) $(libpipeline_LIBS) $(LTLIBICONV)
+lexgrog_LDADD = $(LIBMAN) $(LIBCOMPRESS) $(libpipeline_LIBS) $(LTLIBICONV)
+man_LDADD = $(LIBMANDB) $(LIBCOMPRESS) $(libpipeline_LIBS) $(LTLIBICONV)
+manconv_LDADD = $(LIBMAN) $(LIBCOMPRESS) $(libpipeline_LIBS) $(LTLIBICONV)
+mandb_LDADD = $(LIBMANDB) $(LIBCOMPRESS) $(libpipeline_LIBS) $(LTLIBICONV)
manpath_LDADD = $(LIBMAN)
whatis_LDADD = $(LIBMANDB) $(libpipeline_LIBS) $(LTLIBICONV)
-zsoelim_LDADD = $(LIBMAN) $(libpipeline_LIBS)
+zsoelim_LDADD = $(LIBMAN) $(LIBCOMPRESS) $(libpipeline_LIBS)
accessdb_SOURCES = \
accessdb.c
@@ -84,6 +84,8 @@ globbing_SOURCES = \
globbing_test.c
lexgrog_SOURCES = \
compression.c \
+ decompress.c \
+ decompress.h \
descriptions.c \
descriptions.h \
filenames.c \
@@ -100,6 +102,8 @@ lexgrog_SOURCES = \
ult_src.h
man_SOURCES = \
compression.c \
+ decompress.c \
+ decompress.h \
filenames.c \
filenames.h \
globbing.c \
@@ -116,6 +120,8 @@ man_SOURCES = \
zsoelim.h \
zsoelim.l
manconv_SOURCES = \
+ decompress.c \
+ decompress.h \
manconv.c \
manconv.h \
manconv_main.c
@@ -123,6 +129,8 @@ mandb_SOURCES = \
check_mandirs.c \
check_mandirs.h \
compression.c \
+ decompress.c \
+ decompress.h \
descriptions.c \
descriptions.h \
descriptions_store.c \
@@ -150,12 +158,12 @@ manpath_SOURCES = \
whatis_SOURCES = \
globbing.c \
globbing.h \
- manconv.c \
- manconv.h \
manp.c \
manp.h \
whatis.c
zsoelim_SOURCES = \
+ decompress.c \
+ decompress.h \
globbing.c \
globbing.h \
manp.c \
diff --git a/src/Makefile.in b/src/Makefile.in
index 413cae19..4511eb8e 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -188,6 +188,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/man-arg-automatic-create.m4 \
$(top_srcdir)/gl/m4/ltversion.m4 \
$(top_srcdir)/gl/m4/lt~obsolete.m4 \
$(top_srcdir)/gl/m4/malloc.m4 $(top_srcdir)/gl/m4/malloca.m4 \
+ $(top_srcdir)/gl/m4/manywarnings.m4 \
$(top_srcdir)/gl/m4/mbrtowc.m4 $(top_srcdir)/gl/m4/mbsinit.m4 \
$(top_srcdir)/gl/m4/mbsrtowcs.m4 \
$(top_srcdir)/gl/m4/mbstate_t.m4 $(top_srcdir)/gl/m4/mbtowc.m4 \
@@ -291,45 +292,47 @@ catman_DEPENDENCIES = $(am__DEPENDENCIES_3) $(am__DEPENDENCIES_2)
am_globbing_OBJECTS = globbing.$(OBJEXT) globbing_test.$(OBJEXT)
globbing_OBJECTS = $(am_globbing_OBJECTS)
globbing_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am_lexgrog_OBJECTS = compression.$(OBJEXT) descriptions.$(OBJEXT) \
- filenames.$(OBJEXT) globbing.$(OBJEXT) lexgrog.$(OBJEXT) \
- lexgrog_test.$(OBJEXT) manconv.$(OBJEXT) \
+am_lexgrog_OBJECTS = compression.$(OBJEXT) decompress.$(OBJEXT) \
+ descriptions.$(OBJEXT) filenames.$(OBJEXT) globbing.$(OBJEXT) \
+ lexgrog.$(OBJEXT) lexgrog_test.$(OBJEXT) manconv.$(OBJEXT) \
manconv_client.$(OBJEXT) ult_src.$(OBJEXT)
lexgrog_OBJECTS = $(am_lexgrog_OBJECTS)
lexgrog_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_2) \
- $(am__DEPENDENCIES_2)
-am_man_OBJECTS = compression.$(OBJEXT) filenames.$(OBJEXT) \
- globbing.$(OBJEXT) man.$(OBJEXT) manconv.$(OBJEXT) \
- manconv_client.$(OBJEXT) manp.$(OBJEXT) ult_src.$(OBJEXT) \
- zsoelim.$(OBJEXT)
+ $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_2)
+am_man_OBJECTS = compression.$(OBJEXT) decompress.$(OBJEXT) \
+ filenames.$(OBJEXT) globbing.$(OBJEXT) man.$(OBJEXT) \
+ manconv.$(OBJEXT) manconv_client.$(OBJEXT) manp.$(OBJEXT) \
+ ult_src.$(OBJEXT) zsoelim.$(OBJEXT)
man_OBJECTS = $(am_man_OBJECTS)
man_DEPENDENCIES = $(am__DEPENDENCIES_3) $(am__DEPENDENCIES_2) \
- $(am__DEPENDENCIES_2)
-am_manconv_OBJECTS = manconv.$(OBJEXT) manconv_main.$(OBJEXT)
+ $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_2)
+am_manconv_OBJECTS = decompress.$(OBJEXT) manconv.$(OBJEXT) \
+ manconv_main.$(OBJEXT)
manconv_OBJECTS = $(am_manconv_OBJECTS)
manconv_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_2) \
- $(am__DEPENDENCIES_2)
+ $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_2)
am_mandb_OBJECTS = check_mandirs.$(OBJEXT) compression.$(OBJEXT) \
- descriptions.$(OBJEXT) descriptions_store.$(OBJEXT) \
- filenames.$(OBJEXT) globbing.$(OBJEXT) lexgrog.$(OBJEXT) \
- manconv.$(OBJEXT) manconv_client.$(OBJEXT) mandb.$(OBJEXT) \
- manp.$(OBJEXT) straycats.$(OBJEXT) ult_src.$(OBJEXT)
+ decompress.$(OBJEXT) descriptions.$(OBJEXT) \
+ descriptions_store.$(OBJEXT) filenames.$(OBJEXT) \
+ globbing.$(OBJEXT) lexgrog.$(OBJEXT) manconv.$(OBJEXT) \
+ manconv_client.$(OBJEXT) mandb.$(OBJEXT) manp.$(OBJEXT) \
+ straycats.$(OBJEXT) ult_src.$(OBJEXT)
mandb_OBJECTS = $(am_mandb_OBJECTS)
mandb_DEPENDENCIES = $(am__DEPENDENCIES_3) $(am__DEPENDENCIES_2) \
- $(am__DEPENDENCIES_2)
+ $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_2)
am_manpath_OBJECTS = globbing.$(OBJEXT) manp.$(OBJEXT) \
manpath.$(OBJEXT)
manpath_OBJECTS = $(am_manpath_OBJECTS)
manpath_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am_whatis_OBJECTS = globbing.$(OBJEXT) manconv.$(OBJEXT) \
- manp.$(OBJEXT) whatis.$(OBJEXT)
+am_whatis_OBJECTS = globbing.$(OBJEXT) manp.$(OBJEXT) whatis.$(OBJEXT)
whatis_OBJECTS = $(am_whatis_OBJECTS)
whatis_DEPENDENCIES = $(am__DEPENDENCIES_3) $(am__DEPENDENCIES_2) \
$(am__DEPENDENCIES_2)
-am_zsoelim_OBJECTS = globbing.$(OBJEXT) manp.$(OBJEXT) \
- zsoelim.$(OBJEXT) zsoelim_main.$(OBJEXT)
+am_zsoelim_OBJECTS = decompress.$(OBJEXT) globbing.$(OBJEXT) \
+ manp.$(OBJEXT) zsoelim.$(OBJEXT) zsoelim_main.$(OBJEXT)
zsoelim_OBJECTS = $(am_zsoelim_OBJECTS)
-zsoelim_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_2)
+zsoelim_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_2) \
+ $(am__DEPENDENCIES_2)
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
am__v_P_0 = false
@@ -347,16 +350,16 @@ depcomp = $(SHELL) $(top_srcdir)/build-aux/depcomp
am__maybe_remake_depfiles = depfiles
am__depfiles_remade = ./$(DEPDIR)/accessdb.Po ./$(DEPDIR)/catman.Po \
./$(DEPDIR)/check_mandirs.Po ./$(DEPDIR)/compression.Po \
- ./$(DEPDIR)/descriptions.Po ./$(DEPDIR)/descriptions_store.Po \
- ./$(DEPDIR)/filenames.Po ./$(DEPDIR)/globbing.Po \
- ./$(DEPDIR)/globbing_test.Po ./$(DEPDIR)/lexgrog.Po \
- ./$(DEPDIR)/lexgrog_test.Po ./$(DEPDIR)/man.Po \
- ./$(DEPDIR)/manconv.Po ./$(DEPDIR)/manconv_client.Po \
- ./$(DEPDIR)/manconv_main.Po ./$(DEPDIR)/mandb.Po \
- ./$(DEPDIR)/manp.Po ./$(DEPDIR)/manpath.Po \
- ./$(DEPDIR)/straycats.Po ./$(DEPDIR)/ult_src.Po \
- ./$(DEPDIR)/whatis.Po ./$(DEPDIR)/zsoelim.Po \
- ./$(DEPDIR)/zsoelim_main.Po
+ ./$(DEPDIR)/decompress.Po ./$(DEPDIR)/descriptions.Po \
+ ./$(DEPDIR)/descriptions_store.Po ./$(DEPDIR)/filenames.Po \
+ ./$(DEPDIR)/globbing.Po ./$(DEPDIR)/globbing_test.Po \
+ ./$(DEPDIR)/lexgrog.Po ./$(DEPDIR)/lexgrog_test.Po \
+ ./$(DEPDIR)/man.Po ./$(DEPDIR)/manconv.Po \
+ ./$(DEPDIR)/manconv_client.Po ./$(DEPDIR)/manconv_main.Po \
+ ./$(DEPDIR)/mandb.Po ./$(DEPDIR)/manp.Po \
+ ./$(DEPDIR)/manpath.Po ./$(DEPDIR)/straycats.Po \
+ ./$(DEPDIR)/ult_src.Po ./$(DEPDIR)/whatis.Po \
+ ./$(DEPDIR)/zsoelim.Po ./$(DEPDIR)/zsoelim_main.Po
am__mv = mv -f
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
@@ -531,6 +534,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
GNULIB_CLOSE = @GNULIB_CLOSE@
GNULIB_CLOSEDIR = @GNULIB_CLOSEDIR@
GNULIB_CONNECT = @GNULIB_CONNECT@
+GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
GNULIB_CTIME = @GNULIB_CTIME@
GNULIB_DIRFD = @GNULIB_DIRFD@
GNULIB_DPRINTF = @GNULIB_DPRINTF@
@@ -738,6 +742,7 @@ GNULIB_STRSIGNAL = @GNULIB_STRSIGNAL@
GNULIB_STRSTR = @GNULIB_STRSTR@
GNULIB_STRTOD = @GNULIB_STRTOD@
GNULIB_STRTOK_R = @GNULIB_STRTOK_R@
+GNULIB_STRTOLD = @GNULIB_STRTOLD@
GNULIB_STRTOLL = @GNULIB_STRTOLL@
GNULIB_STRTOULL = @GNULIB_STRTOULL@
GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@
@@ -812,6 +817,7 @@ GNULIB_WRITE = @GNULIB_WRITE@
GNULIB__EXIT = @GNULIB__EXIT@
GREP = @GREP@
HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
HAVE_ALPHASORT = @HAVE_ALPHASORT@
HAVE_ATOLL = @HAVE_ATOLL@
HAVE_BTOWC = @HAVE_BTOWC@
@@ -819,6 +825,7 @@ HAVE_C99_STDINT_H = @HAVE_C99_STDINT_H@
HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
HAVE_CHOWN = @HAVE_CHOWN@
HAVE_CLOSEDIR = @HAVE_CLOSEDIR@
+HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@
HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
@@ -900,6 +907,7 @@ HAVE_GLOB_H = @HAVE_GLOB_H@
HAVE_GLOB_PATTERN_P = @HAVE_GLOB_PATTERN_P@
HAVE_GRANTPT = @HAVE_GRANTPT@
HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
+HAVE_INITSTATE = @HAVE_INITSTATE@
HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
HAVE_ISWBLANK = @HAVE_ISWBLANK@
HAVE_ISWCNTRL = @HAVE_ISWCNTRL@
@@ -922,6 +930,7 @@ HAVE_MBSINIT = @HAVE_MBSINIT@
HAVE_MBSLEN = @HAVE_MBSLEN@
HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
+HAVE_MBTOWC = @HAVE_MBTOWC@
HAVE_MEMCHR = @HAVE_MEMCHR@
HAVE_MEMPCPY = @HAVE_MEMPCPY@
HAVE_MKDIRAT = @HAVE_MKDIRAT@
@@ -972,6 +981,7 @@ HAVE_SCANDIR = @HAVE_SCANDIR@
HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
HAVE_SETENV = @HAVE_SETENV@
HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
+HAVE_SETSTATE = @HAVE_SETSTATE@
HAVE_SIGACTION = @HAVE_SIGACTION@
HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
@@ -991,6 +1001,7 @@ HAVE_STRPBRK = @HAVE_STRPBRK@
HAVE_STRPTIME = @HAVE_STRPTIME@
HAVE_STRSEP = @HAVE_STRSEP@
HAVE_STRTOD = @HAVE_STRTOD@
+HAVE_STRTOLD = @HAVE_STRTOLD@
HAVE_STRTOLL = @HAVE_STRTOLL@
HAVE_STRTOULL = @HAVE_STRTOULL@
HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@
@@ -1091,8 +1102,6 @@ LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBMULTITHREAD = @LIBMULTITHREAD@
LIBOBJS = @LIBOBJS@
-LIBPTH = @LIBPTH@
-LIBPTH_PREFIX = @LIBPTH_PREFIX@
LIBS = @LIBS@
LIBSOCKET = @LIBSOCKET@
LIBTHREAD = @LIBTHREAD@
@@ -1115,7 +1124,6 @@ LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBMULTITHREAD = @LTLIBMULTITHREAD@
LTLIBOBJS = @LTLIBOBJS@
-LTLIBPTH = @LTLIBPTH@
LTLIBTHREAD = @LTLIBTHREAD@
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
MAINT = @MAINT@
@@ -1261,6 +1269,7 @@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
REPLACE_GLOB = @REPLACE_GLOB@
REPLACE_GLOB_PATTERN_P = @REPLACE_GLOB_PATTERN_P@
REPLACE_GMTIME = @REPLACE_GMTIME@
+REPLACE_INITSTATE = @REPLACE_INITSTATE@
REPLACE_IOCTL = @REPLACE_IOCTL@
REPLACE_ISATTY = @REPLACE_ISATTY@
REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
@@ -1309,6 +1318,7 @@ REPLACE_PUTENV = @REPLACE_PUTENV@
REPLACE_PWRITE = @REPLACE_PWRITE@
REPLACE_QSORT_R = @REPLACE_QSORT_R@
REPLACE_RAISE = @REPLACE_RAISE@
+REPLACE_RANDOM = @REPLACE_RANDOM@
REPLACE_RANDOM_R = @REPLACE_RANDOM_R@
REPLACE_READ = @REPLACE_READ@
REPLACE_READLINK = @REPLACE_READLINK@
@@ -1322,6 +1332,7 @@ REPLACE_RMDIR = @REPLACE_RMDIR@
REPLACE_SELECT = @REPLACE_SELECT@
REPLACE_SETENV = @REPLACE_SETENV@
REPLACE_SETLOCALE = @REPLACE_SETLOCALE@
+REPLACE_SETSTATE = @REPLACE_SETSTATE@
REPLACE_SLEEP = @REPLACE_SLEEP@
REPLACE_SNPRINTF = @REPLACE_SNPRINTF@
REPLACE_SPRINTF = @REPLACE_SPRINTF@
@@ -1342,6 +1353,7 @@ REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@
REPLACE_STRSTR = @REPLACE_STRSTR@
REPLACE_STRTOD = @REPLACE_STRTOD@
REPLACE_STRTOK_R = @REPLACE_STRTOK_R@
+REPLACE_STRTOLD = @REPLACE_STRTOLD@
REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@
REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@
REPLACE_SYMLINK = @REPLACE_SYMLINK@
@@ -1559,13 +1571,13 @@ LIBMANDB = $(top_builddir)/libdb/libmandb.la $(LIBMAN) $(DBLIBS)
accessdb_LDADD = $(LIBMANDB)
catman_LDADD = $(LIBMANDB) $(libpipeline_LIBS)
globbing_LDADD = $(LIBMAN)
-lexgrog_LDADD = $(LIBMAN) $(libpipeline_LIBS) $(LTLIBICONV)
-man_LDADD = $(LIBMANDB) $(libpipeline_LIBS) $(LTLIBICONV)
-manconv_LDADD = $(LIBMAN) $(libpipeline_LIBS) $(LTLIBICONV)
-mandb_LDADD = $(LIBMANDB) $(libpipeline_LIBS) $(LTLIBICONV)
+lexgrog_LDADD = $(LIBMAN) $(LIBCOMPRESS) $(libpipeline_LIBS) $(LTLIBICONV)
+man_LDADD = $(LIBMANDB) $(LIBCOMPRESS) $(libpipeline_LIBS) $(LTLIBICONV)
+manconv_LDADD = $(LIBMAN) $(LIBCOMPRESS) $(libpipeline_LIBS) $(LTLIBICONV)
+mandb_LDADD = $(LIBMANDB) $(LIBCOMPRESS) $(libpipeline_LIBS) $(LTLIBICONV)
manpath_LDADD = $(LIBMAN)
whatis_LDADD = $(LIBMANDB) $(libpipeline_LIBS) $(LTLIBICONV)
-zsoelim_LDADD = $(LIBMAN) $(libpipeline_LIBS)
+zsoelim_LDADD = $(LIBMAN) $(LIBCOMPRESS) $(libpipeline_LIBS)
accessdb_SOURCES = \
accessdb.c
@@ -1583,6 +1595,8 @@ globbing_SOURCES = \
lexgrog_SOURCES = \
compression.c \
+ decompress.c \
+ decompress.h \
descriptions.c \
descriptions.h \
filenames.c \
@@ -1600,6 +1614,8 @@ lexgrog_SOURCES = \
man_SOURCES = \
compression.c \
+ decompress.c \
+ decompress.h \
filenames.c \
filenames.h \
globbing.c \
@@ -1617,6 +1633,8 @@ man_SOURCES = \
zsoelim.l
manconv_SOURCES = \
+ decompress.c \
+ decompress.h \
manconv.c \
manconv.h \
manconv_main.c
@@ -1625,6 +1643,8 @@ mandb_SOURCES = \
check_mandirs.c \
check_mandirs.h \
compression.c \
+ decompress.c \
+ decompress.h \
descriptions.c \
descriptions.h \
descriptions_store.c \
@@ -1654,13 +1674,13 @@ manpath_SOURCES = \
whatis_SOURCES = \
globbing.c \
globbing.h \
- manconv.c \
- manconv.h \
manp.c \
manp.h \
whatis.c
zsoelim_SOURCES = \
+ decompress.c \
+ decompress.h \
globbing.c \
globbing.h \
manp.c \
@@ -1903,6 +1923,7 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/catman.Po@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/check_mandirs.Po@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/compression.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/decompress.Po@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/descriptions.Po@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/descriptions_store.Po@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/filenames.Po@am__quote@ # am--include-marker
@@ -2167,6 +2188,7 @@ distclean: distclean-recursive
-rm -f ./$(DEPDIR)/catman.Po
-rm -f ./$(DEPDIR)/check_mandirs.Po
-rm -f ./$(DEPDIR)/compression.Po
+ -rm -f ./$(DEPDIR)/decompress.Po
-rm -f ./$(DEPDIR)/descriptions.Po
-rm -f ./$(DEPDIR)/descriptions_store.Po
-rm -f ./$(DEPDIR)/filenames.Po
@@ -2238,6 +2260,7 @@ maintainer-clean: maintainer-clean-recursive
-rm -f ./$(DEPDIR)/catman.Po
-rm -f ./$(DEPDIR)/check_mandirs.Po
-rm -f ./$(DEPDIR)/compression.Po
+ -rm -f ./$(DEPDIR)/decompress.Po
-rm -f ./$(DEPDIR)/descriptions.Po
-rm -f ./$(DEPDIR)/descriptions_store.Po
-rm -f ./$(DEPDIR)/filenames.Po
diff --git a/src/accessdb.c b/src/accessdb.c
index ff3fef5e..5de7d7ff 100644
--- a/src/accessdb.c
+++ b/src/accessdb.c
@@ -32,6 +32,7 @@
#include <errno.h>
#include <string.h>
#include <stdlib.h>
+#include <assert.h>
#include "argp.h"
#include "progname.h"
@@ -44,14 +45,11 @@
#include "manconfig.h"
#include "error.h"
-#include "sandbox.h"
#include "mydbm.h"
const char *cat_root;
-man_sandbox *sandbox; /* unused, but needed by libman */
-/* for db_storage.c */
char *database;
const char *argp_program_version = "accessdb " PACKAGE_VERSION;
@@ -90,8 +88,9 @@ static error_t parse_opt (int key, char *arg, struct argp_state *state)
return ARGP_ERR_UNKNOWN;
}
-static char *help_filter (int key, const char *text,
- void *input ATTRIBUTE_UNUSED)
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wformat-nonliteral"
+static char *help_filter (int key, const char *text, void *input _GL_UNUSED)
{
switch (key) {
case ARGP_KEY_HELP_PRE_DOC:
@@ -105,6 +104,7 @@ static char *help_filter (int key, const char *text,
return (char *) text;
}
}
+#pragma GCC diagnostic pop
static struct argp argp = { options, parse_opt, args_doc, doc, 0,
help_filter };
@@ -135,6 +135,7 @@ int main (int argc, char *argv[])
}
if (!dbf)
error (FATAL, errno, _("can't open %s for reading"), database);
+ assert (dbf); /* help the compiler prove that later accesses are OK */
key = MYDBM_FIRSTKEY (dbf);
diff --git a/src/catman.c b/src/catman.c
index c58ef6c0..00d0771c 100644
--- a/src/catman.c
+++ b/src/catman.c
@@ -76,7 +76,6 @@
#include "error.h"
#include "glcontainers.h"
#include "pipeline.h"
-#include "sandbox.h"
#include "mydbm.h"
#include "db_storage.h"
@@ -88,8 +87,6 @@ int quiet = 1;
MYDBM_FILE dbf_close_post_fork;
char *manp;
extern char *user_config_file;
-char *database;
-man_sandbox *sandbox; /* unused, but needed by libman */
static const char **sections;
@@ -214,7 +211,7 @@ static size_t add_arg (pipecmd *cmd, datum key)
*tab = '\0';
pipecmd_arg (cmd, MYDBM_DPTR (key));
len = strlen (MYDBM_DPTR (key));
- debug ("key: '%s' (%zu), len: %zd\n",
+ debug ("key: '%s' (%zu), len: %zu\n",
MYDBM_DPTR (key), (size_t) MYDBM_DSIZE (key), len);
if (tab)
*tab = '\t';
@@ -224,7 +221,8 @@ static size_t add_arg (pipecmd *cmd, datum key)
/* find all pages that are in the supplied manpath and section and that are
ultimate source files. */
-static int parse_for_sec (const char *manpath, const char *section)
+static int parse_for_sec (const char *database,
+ const char *manpath, const char *section)
{
MYDBM_FILE dbf;
pipecmd *basecmd, *cmd;
@@ -284,7 +282,8 @@ static int parse_for_sec (const char *manpath, const char *section)
if (*MYDBM_DPTR (content) != '\t') {
struct mandata entry;
- split_content (MYDBM_DPTR (content), &entry);
+ split_content (dbf, MYDBM_DPTR (content),
+ &entry);
/* Accept if the entry is an ultimate manual
page and the section matches the one we're
@@ -299,7 +298,7 @@ static int parse_for_sec (const char *manpath, const char *section)
arg_size += add_arg (cmd, key) + 1;
- debug ("arg space free: %zd bytes\n",
+ debug ("arg space free: %zu bytes\n",
ARG_MAX - arg_size);
/* Check to see if we have enough room
@@ -395,7 +394,7 @@ int main (int argc, char *argv[])
manpathlist = create_pathlist (manp);
GL_LIST_FOREACH_START (manpathlist, mp) {
- char *catpath;
+ char *catpath, *database;
size_t len;
catpath = get_catpath (mp, SYSTEM_CAT | USER_CAT);
@@ -422,12 +421,13 @@ int main (int argc, char *argv[])
continue;
if (check_access (catpath))
continue;
- if (parse_for_sec (mp, *sp)) {
+ if (parse_for_sec (database, mp, *sp)) {
error (0, 0, _("unable to update %s"), mp);
break;
}
}
-
+
+ free (database);
free (catpath);
} GL_LIST_FOREACH_END (manpathlist);
diff --git a/src/check_mandirs.c b/src/check_mandirs.c
index 5aba37cb..d28a6be7 100644
--- a/src/check_mandirs.c
+++ b/src/check_mandirs.c
@@ -101,11 +101,23 @@ static void gripe_multi_extensions (const char *path, const char *sec,
path, sec, name, ext);
}
-static void gripe_rwopen_failed (void)
+/* Test whether an errno value is EAGAIN or (on systems where it differs)
+ * EWOULDBLOCK. This is a separate function mainly in order to be able to
+ * control GCC diagnostics in one place.
+ */
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wlogical-op"
+static inline bool is_eagain (int err)
+{
+ return err == EAGAIN || err == EWOULDBLOCK;
+}
+#pragma GCC diagnostic pop
+
+static void gripe_rwopen_failed (const char *database)
{
if (errno == EACCES || errno == EROFS)
debug ("database %s is read-only\n", database);
- else if (errno == EAGAIN || errno == EWOULDBLOCK)
+ else if (is_eagain (errno))
debug ("database %s is locked by another process\n", database);
else {
#ifdef MAN_DB_UPDATES
@@ -379,7 +391,7 @@ void chown_if_possible (const char *path)
}
}
#else /* !MAN_OWNER */
-void chown_if_possible (const char *path ATTRIBUTE_UNUSED)
+void chown_if_possible (const char *path _GL_UNUSED)
{
}
#endif /* MAN_OWNER */
@@ -480,7 +492,8 @@ static void fix_permissions_tree (const char *catdir)
* any dirs of the tree that have been modified (ie added to) will then be
* scanned for new files, which are then added to the db.
*/
-static int testmandirs (const char *path, const char *catpath,
+static int testmandirs (const char *database,
+ const char *path, const char *catpath,
struct timespec last, int create)
{
DIR *dir;
@@ -564,7 +577,7 @@ static int testmandirs (const char *path, const char *catpath,
dbf = MYDBM_RWOPEN(database);
if (!dbf) {
- gripe_rwopen_failed ();
+ gripe_rwopen_failed (database);
closedir (dir);
return 0;
}
@@ -590,7 +603,7 @@ static int testmandirs (const char *path, const char *catpath,
}
/* update the modification timestamp of `database' */
-static void update_db_time (void)
+static void update_db_time (const char *database)
{
MYDBM_FILE dbf;
struct timespec now;
@@ -599,7 +612,7 @@ static void update_db_time (void)
/* we know that this should succeed because we just updated the db! */
dbf = MYDBM_RWOPEN (database);
if (dbf == NULL) {
- if (errno == EAGAIN || errno == EWOULDBLOCK)
+ if (is_eagain (errno))
/* Another mandb process is probably running. With
* any luck it will update the mtime ...
*/
@@ -623,7 +636,7 @@ static void update_db_time (void)
}
/* routine to prepare/create the db prior to calling testmandirs() */
-int create_db (const char *manpath, const char *catpath)
+int create_db (const char *database, const char *manpath, const char *catpath)
{
struct timespec time_zero;
int amount;
@@ -632,10 +645,10 @@ int create_db (const char *manpath, const char *catpath)
time_zero.tv_sec = 0;
time_zero.tv_nsec = 0;
- amount = testmandirs (manpath, catpath, time_zero, 1);
+ amount = testmandirs (database, manpath, catpath, time_zero, 1);
if (amount) {
- update_db_time ();
+ update_db_time (database);
if (!quiet)
fputs (_("done.\n"), stderr);
}
@@ -658,7 +671,7 @@ static bool sanity_check_db (MYDBM_FILE dbf)
content = MYDBM_FETCH (dbf, key);
if (!MYDBM_DPTR (content)) {
debug ("warning: %s has a key with no content (%s); "
- "rebuilding\n", database, MYDBM_DPTR (key));
+ "rebuilding\n", dbf->name, MYDBM_DPTR (key));
MYDBM_FREE_DPTR (key);
return false;
}
@@ -673,7 +686,7 @@ static bool sanity_check_db (MYDBM_FILE dbf)
/* routine to update the db, ensure that it is consistent with the
filesystem */
-int update_db (const char *manpath, const char *catpath)
+int update_db (const char *database, const char *manpath, const char *catpath)
{
MYDBM_FILE dbf;
struct timespec mtime;
@@ -693,10 +706,10 @@ int update_db (const char *manpath, const char *catpath)
debug ("update_db(): %ld.%09ld\n",
(long) mtime.tv_sec, (long) mtime.tv_nsec);
- new = testmandirs (manpath, catpath, mtime, 0);
+ new = testmandirs (database, manpath, catpath, mtime, 0);
if (new) {
- update_db_time ();
+ update_db_time (database);
if (!quiet)
fputs (_("done.\n"), stderr);
}
@@ -736,7 +749,7 @@ void purge_pointers (MYDBM_FILE dbf, const char *name)
if (*MYDBM_DPTR (content) == '\t')
goto pointers_contentnext;
- split_content (MYDBM_DPTR (content), &entry);
+ split_content (dbf, MYDBM_DPTR (content), &entry);
if (entry.id != SO_MAN && entry.id != WHATIS_MAN)
goto pointers_contentnext;
@@ -935,7 +948,8 @@ static int check_multi_key (const char *name, const char *content)
/* Go through the database and purge references to man pages that no longer
* exist.
*/
-int purge_missing (const char *manpath, const char *catpath,
+int purge_missing (const char *database,
+ const char *manpath, const char *catpath,
int will_run_mandb)
{
#ifdef NDBM
@@ -964,7 +978,7 @@ int purge_missing (const char *manpath, const char *catpath,
dbf = MYDBM_RWOPEN (database);
if (!dbf) {
- gripe_rwopen_failed ();
+ gripe_rwopen_failed (database);
return 0;
}
if (!sanity_check_db (dbf)) {
@@ -1017,7 +1031,7 @@ int purge_missing (const char *manpath, const char *catpath,
continue;
}
- split_content (MYDBM_DPTR (content), &entry);
+ split_content (dbf, MYDBM_DPTR (content), &entry);
save_debug = debug_level;
debug_level = false; /* look_for_file() is quite noisy */
diff --git a/src/check_mandirs.h b/src/check_mandirs.h
index c6565ac4..4ed12b1e 100644
--- a/src/check_mandirs.h
+++ b/src/check_mandirs.h
@@ -25,8 +25,11 @@
/* check_mandirs.c */
extern void test_manfile (MYDBM_FILE dbf, const char *file, const char *path);
extern void chown_if_possible (const char *path);
-extern int create_db (const char *manpath, const char *catpath);
-extern int update_db (const char *manpath, const char *catpath);
+extern int create_db (const char *database,
+ const char *manpath, const char *catpath);
+extern int update_db (const char *database,
+ const char *manpath, const char *catpath);
extern void purge_pointers (MYDBM_FILE dbf, const char *name);
-extern int purge_missing (const char *manpath, const char *catpath,
+extern int purge_missing (const char *database,
+ const char *manpath, const char *catpath,
int will_run_mandb);
diff --git a/src/compression.c b/src/compression.c
index 70635670..73bce776 100644
--- a/src/compression.c
+++ b/src/compression.c
@@ -39,9 +39,6 @@
#include "xvasprintf.h"
-#include "gettext.h"
-#define _(String) gettext (String)
-
#include "manconfig.h"
#ifdef COMP_SRC /* must come after manconfig.h */
diff --git a/lib/decompress.c b/src/decompress.c
index 15dda5b4..5cee5ff7 100644
--- a/lib/decompress.c
+++ b/src/decompress.c
@@ -46,7 +46,7 @@
#ifdef HAVE_LIBZ
-static void decompress_zlib (void *data ATTRIBUTE_UNUSED)
+static void decompress_zlib (void *data _GL_UNUSED)
{
gzFile zlibfile;
int fd;
diff --git a/lib/decompress.h b/src/decompress.h
index 35f7c516..35f7c516 100644
--- a/lib/decompress.h
+++ b/src/decompress.h
diff --git a/src/descriptions.c b/src/descriptions.c
index 09295b8e..5184611d 100644
--- a/src/descriptions.c
+++ b/src/descriptions.c
@@ -34,7 +34,7 @@
#include "descriptions.h"
/* Free a page description. */
-void page_description_free (const void *value)
+static void page_description_free (const void *value)
{
struct page_description *desc = (struct page_description *) value;
diff --git a/src/globbing_test.c b/src/globbing_test.c
index 5f0878fa..7133c05d 100644
--- a/src/globbing_test.c
+++ b/src/globbing_test.c
@@ -34,7 +34,6 @@
#include "progname.h"
#include "gettext.h"
-#define _(String) gettext (String)
#define N_(String) gettext_noop (String)
#include "manconfig.h"
@@ -42,9 +41,6 @@
#include "error.h"
#include "glcontainers.h"
#include "globbing.h"
-#include "sandbox.h"
-
-man_sandbox *sandbox; /* unused, but needed by libman */
extern const char *extension;
static bool match_case = false;
diff --git a/src/lexgrog.c b/src/lexgrog.c
index 7915d7d4..ca6033a7 100644
--- a/src/lexgrog.c
+++ b/src/lexgrog.c
@@ -2,7 +2,14 @@
# include "config.h"
#endif /* HAVE_CONFIG_H */
-#line 6 "lexgrog.c"
+/* Flex emits several functions which might reasonably have various
+ * attributes applied and many unused macros; none of these are our problem.
+ */
+#pragma GCC diagnostic ignored "-Wsuggest-attribute=malloc"
+#pragma GCC diagnostic ignored "-Wsuggest-attribute=pure"
+#pragma GCC diagnostic ignored "-Wunused-macros"
+
+#line 13 "../../../src/lexgrog.c"
#define YY_INT_ALIGNED short int
@@ -366,7 +373,7 @@ struct yy_trans_info
flex_int32_t yy_verify;
flex_int32_t yy_nxt;
};
-static const flex_int16_t yy_accept[1410] =
+static const flex_int16_t yy_accept[1436] =
{ 0,
0, 0, 0, 0, 65, 65, 65, 65, 0, 0,
0, 0, 0, 0, 0, 0, 117, 117, 0, 0,
@@ -408,121 +415,124 @@ static const flex_int16_t yy_accept[1410] =
0, 124, 38, 38, 124, 38, 38, 38, 38, 37,
54, 7, 0, 0, 0, 9, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 7, 5, 3, 3, 4, 4, 4, 3, 0,
- 0, 0, 0, 0, 16, 0, 21, 27, 27, 27,
- 27, 20, 27, 27, 27, 56, 0, 0, 0, 36,
+ 0, 0, 7, 5, 3, 3, 4, 4, 4, 3,
+ 0, 0, 0, 0, 0, 16, 0, 21, 27, 27,
+ 27, 27, 20, 27, 27, 27, 56, 0, 0, 0,
36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
- 36, 36, 36, 36, 36, 36, 36, 51, 41, 0,
- 0, 0, 0, 0, 126, 58, 0, 128, 47, 127,
- 0, 0, 30, 0, 0, 0, 125, 34, 53, 0,
- 35, 33, 52, 32, 49, 82, 71, 61, 55, 62,
- 66, 0, 0, 0, 0, 0, 0, 0, 0, 36,
+ 36, 36, 36, 36, 36, 36, 36, 36, 51, 41,
+ 0, 0, 0, 0, 0, 126, 58, 0, 128, 47,
+ 127, 0, 0, 30, 0, 0, 0, 125, 34, 53,
+ 0, 35, 33, 52, 32, 49, 82, 71, 61, 55,
+ 62, 66, 0, 0, 0, 0, 0, 0, 0, 0,
36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
- 83, 0, 85, 90, 86, 87, 88, 89, 63, 91,
- 100, 101, 102, 103, 0, 0, 0, 114, 112, 0,
- 38, 38, 38, 38, 37, 38, 38, 7, 0, 0,
+ 36, 83, 0, 85, 90, 86, 87, 88, 89, 63,
+ 91, 100, 101, 102, 103, 0, 0, 0, 114, 112,
+ 0, 38, 38, 38, 38, 37, 38, 38, 7, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 7, 5, 3, 3, 4, 4, 4, 0, 3,
- 3, 12, 14, 13, 15, 11, 17, 21, 25, 26,
- 20, 22, 24, 23, 55, 36, 36, 36, 36, 36,
+ 0, 0, 0, 7, 5, 3, 3, 4, 4, 4,
+ 0, 3, 3, 12, 14, 13, 15, 11, 17, 21,
+ 25, 26, 20, 22, 24, 23, 55, 36, 36, 36,
36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
- 36, 36, 36, 30, 36, 36, 36, 36, 34, 36,
+ 36, 36, 36, 36, 36, 30, 36, 36, 36, 36,
- 36, 35, 33, 36, 32, 36, 36, 36, 36, 36,
+ 34, 36, 36, 35, 33, 36, 32, 36, 36, 36,
36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
- 40, 130, 129, 45, 126, 58, 46, 47, 127, 132,
- 131, 30, 42, 44, 31, 125, 34, 34, 53, 43,
- 35, 33, 52, 32, 82, 55, 72, 0, 69, 78,
- 80, 36, 36, 36, 36, 36, 36, 36, 36, 36,
- 36, 36, 83, 84, 85, 90, 86, 87, 88, 89,
- 0, 108, 0, 114, 115, 112, 113, 38, 38, 7,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 36, 36, 40, 130, 129, 45, 126, 58, 46, 47,
+ 127, 132, 131, 30, 42, 44, 31, 125, 34, 34,
+ 53, 43, 35, 33, 52, 32, 82, 55, 72, 0,
+ 69, 78, 80, 36, 36, 36, 36, 36, 36, 36,
+ 36, 36, 36, 36, 83, 84, 85, 90, 86, 87,
+ 88, 89, 0, 108, 0, 114, 115, 112, 113, 38,
+ 38, 7, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 7, 3, 3,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 7, 3, 3, 4, 4, 4, 4, 4, 4, 4,
4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
- 4, 4, 4, 4, 4, 4, 4, 4, 4, 0,
+ 4, 4, 4, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 3, 3, 25, 26, 22,
- 24, 23, 36, 36, 36, 36, 36, 36, 36, 36,
- 36, 36, 36, 36, 36, 36, 36, 36, 30, 36,
- 36, 31, 36, 34, 34, 36, 36, 35, 33, 36,
- 32, 36, 36, 36, 36, 36, 36, 36, 36, 36,
-
- 36, 36, 130, 129, 45, 132, 131, 44, 43, 80,
- 36, 36, 36, 36, 36, 36, 36, 36, 36, 84,
- 107, 108, 109, 115, 113, 7, 0, 0, 0, 0,
+ 3, 3, 25, 26, 22, 24, 23, 36, 36, 36,
+ 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
+ 36, 36, 36, 30, 36, 36, 31, 36, 34, 34,
+ 36, 36, 35, 33, 36, 32, 36, 36, 36, 36,
+
+ 36, 36, 36, 36, 36, 36, 36, 130, 129, 45,
+ 132, 131, 44, 43, 80, 36, 36, 36, 36, 36,
+ 36, 36, 36, 36, 84, 107, 108, 109, 115, 113,
+ 7, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 7, 3,
+ 0, 0, 0, 0, 7, 3, 4, 4, 4, 4,
4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
- 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 4, 4, 4, 4, 4, 4, 4, 4, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 3, 36, 36, 36, 36, 36, 36, 36,
- 36, 36, 36, 36, 36, 36, 36, 36, 107, 109,
- 7, 0, 2, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 3, 36, 36, 36, 36, 36, 36, 36, 36,
+ 36, 36, 36, 36, 36, 36, 36, 107, 109, 7,
+ 0, 2, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 7, 3,
4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
- 4, 1, 4, 4, 4, 4, 4, 4, 4, 4,
- 4, 1, 4, 1, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 1, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 1, 4, 1, 4, 4, 4, 4,
4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
- 4, 0, 1, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 1, 0, 1, 0, 0, 0, 0, 0,
+ 4, 4, 4, 4, 0, 1, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1, 0, 1, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 3, 36, 7, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 7, 3, 4,
- 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
- 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
+ 0, 0, 0, 0, 0, 0, 3, 36, 7, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 7, 3, 4, 4, 4, 4, 4, 4,
4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4,
- 1, 4, 1, 4, 4, 4, 4, 4, 4, 4,
4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
- 4, 1, 1, 4, 4, 4, 4, 4, 4, 1,
+ 4, 4, 4, 4, 4, 4, 4, 1, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 1, 4, 1,
4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
- 4, 4, 4, 4, 4, 0, 1, 1, 0, 0,
- 0, 0, 0, 0, 1, 0, 0, 0, 0, 0,
+ 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
+ 1, 4, 4, 4, 4, 4, 4, 1, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 0, 1, 1, 0, 0, 0,
+ 0, 0, 0, 1, 0, 0, 0, 0, 0, 0,
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3, 7, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 7, 3,
+ 3, 4, 4, 1, 0, 1, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 3, 3, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 8, 0,
+ 0, 1, 0, 1, 0, 0, 0, 0, 0, 1,
+ 1, 0, 0, 0, 0, 1, 1, 1, 0, 1,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 7, 3, 3,
- 4, 4, 1, 0, 1, 0, 0, 0, 0, 0,
- 0, 0, 0, 1, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 3, 3, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 8, 0, 0, 1, 0,
- 1, 0, 0, 0, 0, 0, 1, 1, 0, 0,
- 0, 1, 1, 1, 0, 1, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 1,
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 0, 0, 0, 0, 0, 0, 0, 0,
-
- 0, 0, 0, 0, 0, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 0, 0, 0, 0, 0, 1,
- 0, 1, 0, 0, 0, 0, 1, 1, 1, 1,
- 1, 1, 1, 1, 1, 1, 1, 1, 0, 0,
- 0, 0, 0, 0, 1, 0, 1, 1, 1, 1,
- 1, 1, 1, 1, 1, 0, 0, 0, 0, 1,
- 1, 1, 1, 1, 1, 0, 0, 0, 0, 1,
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 0, 0, 0, 0, 1, 1, 1, 0, 0,
+ 0, 0, 0, 0, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 0, 0, 0, 0, 0, 1, 0, 1, 0, 0,
+ 0, 0, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 0, 0, 0, 0, 0, 1,
+ 1, 0, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 0, 0, 0, 0, 1, 1, 1, 1, 1,
+ 1, 0, 0, 0, 0, 1, 1, 1, 1, 1,
- 0, 0, 0, 0, 0, 0, 0, 0, 0
+ 1, 1, 1, 1, 1, 1, 1, 0, 0, 0,
+ 0, 1, 1, 1, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0
} ;
static const YY_CHAR yy_ec[256] =
@@ -541,23 +551,23 @@ static const YY_CHAR yy_ec[256] =
63, 64, 65, 66, 67, 68, 69, 70, 71, 72,
73, 74, 75, 76, 77, 78, 79, 80, 81, 82,
83, 84, 6, 85, 6, 86, 1, 1, 87, 1,
- 1, 88, 89, 1, 1, 1, 90, 91, 1, 1,
- 92, 1, 1, 93, 94, 95, 1, 1, 96, 1,
- 97, 98, 1, 1, 1, 99, 100, 101, 1, 1,
- 102, 1, 1, 103, 1, 104, 105, 106, 107, 108,
- 1, 1, 109, 1, 110, 111, 112, 1, 1, 113,
- 1, 1, 1, 1, 114, 1, 115, 1, 116, 117,
- 1, 1, 1, 1, 118, 119, 1, 1, 1, 1,
-
- 1, 1, 1, 120, 1, 1, 1, 121, 1, 1,
+ 1, 88, 89, 90, 1, 1, 91, 92, 1, 1,
+ 93, 1, 1, 94, 95, 96, 1, 1, 97, 1,
+ 98, 99, 1, 1, 1, 100, 101, 102, 1, 1,
+ 103, 1, 1, 104, 1, 105, 106, 107, 108, 109,
+ 1, 1, 110, 111, 112, 113, 114, 1, 1, 115,
+ 1, 1, 1, 1, 116, 1, 117, 1, 118, 119,
+ 1, 1, 1, 1, 120, 121, 1, 1, 1, 1,
+
+ 1, 1, 1, 122, 1, 1, 1, 123, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 1, 1, 1, 122, 123, 1,
- 124, 1, 1, 1, 125, 126, 1, 1, 1, 1,
+ 1, 1, 1, 124, 1, 1, 1, 125, 126, 1,
+ 127, 1, 1, 1, 128, 129, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1
} ;
-static const YY_CHAR yy_meta[127] =
+static const YY_CHAR yy_meta[130] =
{ 0,
1, 2, 3, 4, 2, 1, 5, 1, 1, 1,
6, 7, 1, 1, 1, 1, 1, 1, 8, 9,
@@ -572,372 +582,376 @@ static const YY_CHAR yy_meta[127] =
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
} ;
-static const flex_int16_t yy_base[1593] =
+static const flex_int16_t yy_base[1619] =
{ 0,
- 0, 0, 0, 2, 6, 0, 131, 135, 138, 139,
- 219, 0, 345, 0, 137, 468, 5110, 5109, 546, 0,
- 672, 0, 798, 0, 142, 151, 146, 159, 161, 162,
- 0, 0, 166, 171, 5107, 5106, 5109, 7208, 7208, 191,
- 5105, 7208, 471, 478, 923, 5052, 5051, 176, 5088, 0,
- 976, 934, 941, 5101, 186, 7208, 5100, 5081, 187, 477,
- 7208, 5089, 0, 7208, 5087, 152, 199, 7208, 5085, 5020,
- 5023, 5026, 0, 7208, 5081, 0, 7208, 5080, 0, 7208,
- 5079, 0, 946, 952, 5077, 489, 213, 5073, 5020, 0,
- 506, 5046, 5043, 7208, 5044, 4991, 964, 0, 501, 5038,
-
- 7208, 5037, 518, 513, 5036, 0, 1030, 525, 1009, 1065,
- 530, 5021, 930, 7208, 1081, 1085, 1106, 4982, 4981, 5018,
- 1160, 920, 1113, 5025, 4946, 532, 537, 0, 7208, 936,
- 0, 1121, 7208, 1093, 919, 927, 7208, 956, 0, 4952,
- 7208, 7208, 5017, 0, 5016, 5020, 1160, 964, 1133, 987,
- 1019, 1231, 5023, 1197, 1143, 1248, 1198, 7208, 7208, 4945,
- 982, 1171, 995, 1015, 1027, 1042, 1076, 1090, 1099, 7208,
- 0, 7208, 4954, 4960, 4959, 1117, 1124, 7208, 4943, 4948,
- 4953, 0, 7208, 0, 7208, 0, 7208, 0, 1239, 1214,
- 1268, 5013, 1149, 1276, 5014, 1230, 5011, 4958, 1286, 1293,
-
- 1297, 5011, 1263, 7208, 0, 1302, 1321, 5010, 1306, 5007,
- 7208, 5004, 5003, 5002, 5001, 1307, 5000, 0, 1096, 5003,
- 1302, 1109, 7208, 7208, 4993, 1317, 4991, 0, 1310, 1325,
- 4921, 448, 1331, 4919, 1074, 4912, 1328, 1165, 1221, 1396,
- 1413, 1417, 4986, 1421, 1450, 973, 996, 154, 1504, 1579,
- 1314, 7208, 4985, 1367, 4944, 1430, 4943, 129, 1169, 1349,
- 1431, 4912, 1150, 0, 4906, 4918, 447, 1183, 4889, 1444,
- 7208, 4940, 1335, 0, 4938, 1346, 0, 7208, 0, 4891,
- 407, 4886, 4861, 4876, 4863, 4871, 7208, 0, 0, 1391,
- 0, 0, 7208, 0, 7208, 7208, 0, 7208, 0, 1580,
-
- 7208, 1426, 0, 1460, 482, 4937, 1384, 4936, 1664, 1739,
- 4858, 1480, 4860, 4852, 1009, 4851, 4850, 469, 4848, 4863,
- 1402, 1404, 1431, 1443, 1456, 1482, 1484, 1486, 1490, 1496,
- 1497, 1498, 1515, 4855, 4850, 4847, 4863, 4852, 4851, 1526,
- 1532, 1539, 0, 1556, 1575, 4920, 1563, 4917, 4864, 7208,
- 1620, 0, 1824, 4917, 1833, 1846, 4916, 901, 4878, 1150,
- 1166, 1662, 4889, 4798, 4869, 4803, 4796, 85, 1012, 4804,
- 4811, 4905, 0, 4893, 4889, 4888, 4886, 1668, 4885, 4847,
- 4868, 4840, 4863, 4836, 7208, 4833, 0, 1521, 1558, 1565,
- 1567, 1607, 1608, 1612, 1614, 1626, 1061, 4795, 4808, 4871,
-
- 1684, 1759, 1237, 1767, 1828, 1372, 1280, 1674, 1678, 4868,
- 1852, 1349, 1876, 1407, 1205, 1841, 1863, 1922, 1272, 1705,
- 2003, 957, 1364, 1426, 1724, 1510, 1935, 4867, 1735, 0,
- 1908, 4864, 4863, 1914, 4853, 1715, 4861, 1772, 1015, 4860,
- 4859, 2045, 2071, 2144, 1467, 2000, 1899, 7208, 1910, 1631,
- 1642, 1728, 1750, 1777, 1790, 1791, 1802, 1837, 1854, 1918,
- 1934, 1935, 1958, 1959, 1973, 1981, 1987, 1993, 0, 1989,
- 1995, 2002, 0, 2006, 0, 2056, 7208, 7208, 2057, 7208,
- 7208, 0, 0, 4850, 4803, 0, 0, 4851, 4846, 4852,
- 2226, 1136, 2196, 1477, 1466, 1770, 1572, 1632, 2171, 4851,
-
- 2067, 4771, 2123, 2124, 2155, 2156, 2157, 2161, 7208, 2162,
- 2163, 2233, 2238, 2244, 4786, 4791, 4786, 2246, 2250, 4785,
- 0, 2251, 2255, 4841, 0, 2259, 0, 0, 2279, 4842,
- 2288, 1458, 4812, 2222, 1644, 2283, 1642, 1683, 1720, 2290,
- 2251, 4794, 4751, 1083, 1215, 4719, 4718, 4746, 4721, 4747,
- 4722, 4829, 0, 4826, 4824, 4822, 4818, 2413, 2538, 4814,
- 4809, 7208, 7208, 7208, 7208, 7208, 7208, 0, 0, 0,
- 2260, 0, 0, 0, 2261, 2236, 0, 1665, 2284, 2293,
- 2342, 2354, 2363, 2370, 2374, 2378, 2382, 2386, 2390, 2419,
- 2423, 2427, 2431, 2435, 2441, 2456, 2460, 2464, 2468, 0,
-
- 2472, 2476, 2480, 0, 2484, 0, 4811, 0, 4743, 1385,
- 4741, 4713, 4725, 4711, 4691, 4757, 0, 2488, 1220, 4756,
- 2662, 4755, 4754, 2688, 4753, 1778, 2481, 4752, 2507, 1521,
- 7208, 0, 0, 0, 2269, 2274, 2292, 2308, 2332, 0,
- 0, 2346, 2392, 0, 2401, 2443, 2450, 2490, 0, 0,
- 2492, 2509, 0, 2511, 2515, 2517, 7208, 4698, 7208, 7208,
- 0, 2521, 1803, 2525, 2544, 2548, 2552, 2556, 2560, 1695,
- 4670, 4684, 2564, 2566, 2568, 2575, 2581, 2582, 2586, 2587,
- 4691, 2592, 4679, 2593, 2594, 2598, 2599, 2604, 2608, 0,
- 1800, 2612, 1836, 4734, 1800, 1882, 2129, 2590, 2130, 2346,
-
- 2194, 2621, 2234, 2771, 2268, 4715, 4699, 4698, 4626, 4644,
- 4602, 4607, 4612, 2664, 4581, 4575, 4572, 4688, 0, 0,
- 0, 0, 2833, 2772, 2301, 4652, 2370, 2466, 2757, 4661,
- 4570, 1839, 4640, 4573, 4566, 872, 1848, 4572, 4579, 2812,
- 2489, 4630, 2485, 2558, 2854, 4641, 4550, 1952, 4620, 4554,
- 4547, 1529, 1970, 4536, 4543, 0, 0, 0, 0, 0,
- 0, 0, 1999, 1509, 1617, 0, 2625, 4636, 0, 0,
- 0, 2630, 2634, 2638, 2642, 2649, 0, 0, 2665, 2669,
- 0, 2673, 2677, 2681, 2740, 0, 0, 2775, 2779, 0,
- 2789, 4635, 4633, 2793, 4632, 4631, 0, 1535, 2970, 2996,
-
- 1827, 1915, 0, 0, 0, 0, 0, 0, 0, 0,
- 2802, 2820, 2840, 2855, 2861, 2882, 2899, 2903, 4629, 2683,
- 2781, 2809, 2816, 2824, 2842, 0, 2583, 2907, 2849, 4627,
- 2587, 4590, 4551, 2614, 2601, 2920, 2624, 4568, 4502, 4481,
- 4469, 4468, 2709, 2179, 2766, 4465, 4464, 4473, 4568, 0,
- 0, 3079, 3056, 2747, 4524, 2757, 2814, 3062, 4535, 4444,
- 2387, 4514, 4448, 4441, 1634, 2821, 4426, 4431, 2797, 4498,
- 2871, 2827, 2911, 2840, 2876, 2878, 3078, 2855, 4480, 4437,
- 3194, 3144, 1324, 2805, 4405, 4374, 4402, 4377, 4403, 4374,
- 2866, 4454, 2933, 2895, 3220, 2891, 2903, 2904, 3221, 2876,
-
- 4436, 4392, 4469, 3168, 1583, 2845, 4356, 4351, 4376, 4324,
- 4350, 4325, 0, 2974, 2982, 0, 0, 0, 0, 0,
- 0, 0, 3086, 4430, 4429, 4428, 3107, 3136, 2988, 2992,
- 0, 2925, 3048, 3069, 3070, 3056, 4393, 3140, 1886, 2883,
- 4318, 3008, 4326, 4311, 4308, 4315, 4308, 4326, 4399, 0,
- 0, 3304, 3235, 3085, 4362, 3084, 3115, 3257, 4368, 4277,
- 2467, 4348, 4281, 4273, 1796, 3057, 4270, 4273, 3100, 4340,
- 3231, 3131, 3324, 3170, 3180, 3181, 3325, 3208, 4321, 4277,
- 3419, 3395, 1909, 3033, 4245, 4243, 4243, 4218, 4243, 4214,
- 3221, 3312, 3215, 4314, 2279, 3215, 3225, 3307, 3225, 3231,
-
- 3253, 3321, 3295, 3471, 3279, 4297, 4281, 3507, 3446, 3366,
- 3455, 4278, 4206, 4222, 4206, 4209, 4214, 3257, 4170, 4165,
- 4165, 3305, 3430, 3297, 4277, 2548, 3330, 3342, 3449, 3356,
- 3438, 3352, 3509, 3371, 3577, 3441, 4260, 4243, 0, 3556,
- 3593, 3598, 4242, 4166, 4179, 4162, 4166, 4170, 3320, 4140,
- 4134, 4132, 0, 3205, 0, 3462, 4207, 3396, 3502, 4119,
- 4114, 4116, 3584, 3626, 3644, 4098, 3652, 4209, 4206, 4201,
- 3723, 3700, 3563, 170, 3492, 3570, 3636, 2343, 2530, 3594,
- 499, 2320, 2163, 3336, 3080, 1020, 2783, 3520, 1487, 3635,
- 3629, 3728, 3603, 3554, 3644, 3744, 3598, 2553, 1939, 2849,
-
- 3838, 3093, 3322, 1689, 2298, 1667, 2296, 1779, 2120, 3659,
- 3513, 3667, 2934, 3517, 3689, 3662, 3741, 3673, 3725, 3699,
- 3687, 3555, 3845, 3704, 3100, 2394, 4193, 3844, 3810, 3881,
- 2383, 2465, 2858, 958, 1915, 1891, 3769, 2450, 2508, 2371,
- 3637, 3784, 3800, 3737, 3743, 2795, 3147, 3706, 3751, 3865,
- 3834, 3311, 3918, 3206, 2682, 2355, 3202, 3133, 3576, 3686,
- 3785, 3847, 1547, 3419, 3583, 3802, 3896, 3253, 2830, 3798,
- 4182, 4137, 3848, 3833, 3927, 3850, 4154, 4173, 4097, 4108,
- 4079, 4048, 4037, 4035, 3356, 3237, 3424, 4031, 4028, 4018,
- 4113, 7208, 3842, 4068, 3564, 4004, 3940, 3952, 3956, 3969,
-
- 3973, 3981, 3985, 3989, 3993, 4006, 4001, 4078, 0, 0,
- 7208, 3976, 3658, 3865, 3793, 4069, 4013, 3864, 3870, 3855,
- 4044, 4027, 4053, 4013, 3101, 3792, 3932, 3810, 3932, 3911,
- 3909, 3900, 3872, 3891, 0, 0, 3871, 3926, 3830, 3826,
- 3825, 4022, 4053, 4057, 3831, 3907, 3896, 0, 4062, 4051,
- 4077, 3845, 4066, 4069, 0, 4078, 4106, 4121, 3758, 3747,
- 3745, 4122, 4128, 4132, 3716, 4136, 3908, 3794, 3725, 3716,
- 3698, 3973, 4128, 3706, 3715, 3710, 4132, 3968, 3639, 4155,
- 4161, 4162, 4168, 4177, 4200, 4204, 4213, 4217, 4223, 4224,
- 4231, 4232, 3627, 4066, 3670, 3591, 4240, 3589, 4099, 4278,
-
- 3674, 3621, 3529, 3500, 3487, 4251, 4308, 4360, 4259, 4414,
- 4386, 4268, 4468, 4520, 3508, 3498, 3423, 4124, 4529, 4244,
- 0, 4245, 3489, 3416, 3316, 3310, 4574, 4269, 4626, 4278,
- 4680, 4314, 4635, 4369, 4734, 4423, 4786, 4469, 3273, 3236,
- 4147, 4377, 3304, 3215, 4477, 3200, 4545, 4740, 4792, 4549,
- 4796, 4813, 4562, 4817, 4821, 3179, 3167, 3118, 3101, 4882,
- 4926, 4978, 5022, 5074, 5118, 3065, 3031, 3009, 2974, 5170,
- 4531, 5198, 4586, 5197, 4689, 5225, 4693, 5277, 4697, 5305,
- 4825, 2958, 2957, 2832, 2777, 4575, 4651, 4655, 2696, 2623,
- 2560, 2527, 2486, 2469, 2427, 2355, 2339, 2267, 2188, 1889,
-
- 1850, 1758, 1487, 1444, 1382, 1351, 1208, 1162, 7208, 5358,
- 5369, 5380, 5391, 5402, 5413, 5424, 5435, 5446, 5457, 5468,
- 5472, 5483, 5494, 5505, 5516, 5527, 5538, 5549, 5560, 5571,
- 5582, 5593, 5604, 5608, 5619, 5630, 5641, 5652, 5657, 5658,
- 5663, 5674, 5685, 5696, 5707, 5718, 5729, 5740, 5751, 5762,
- 5773, 5784, 5795, 5806, 1111, 5817, 5828, 5839, 5850, 5861,
- 5872, 5883, 5894, 1062, 5896, 5907, 5918, 5929, 5940, 5951,
- 5962, 5973, 5984, 5995, 6006, 6017, 6028, 6039, 6050, 6061,
- 6072, 6083, 6094, 6105, 6116, 1033, 6118, 6129, 6140, 6151,
- 6162, 6173, 6184, 6195, 6206, 6217, 6228, 6239, 6250, 6261,
-
- 6272, 6283, 6294, 6305, 6316, 6327, 6338, 6349, 6360, 6371,
- 6382, 6393, 6404, 6415, 6426, 6437, 6448, 6459, 6470, 6481,
- 6492, 6503, 6514, 6525, 6536, 6547, 6558, 6569, 6580, 6591,
- 6602, 6613, 6624, 6635, 6646, 6657, 6668, 6679, 6690, 6701,
- 6712, 6723, 6734, 6745, 6756, 6767, 6778, 6789, 6800, 6811,
- 6822, 6833, 6844, 6855, 6866, 6877, 6888, 6899, 6910, 6921,
- 6932, 6937, 6947, 6958, 6969, 6980, 6991, 7002, 7013, 7024,
- 7035, 7046, 7057, 7068, 967, 7079, 7090, 7101, 7112, 7123,
- 7134, 7141, 7151, 7156, 7160, 508, 502, 7170, 7181, 7192,
- 7197, 195
-
+ 0, 0, 0, 2, 6, 0, 134, 138, 141, 142,
+ 222, 0, 351, 0, 140, 477, 5190, 5188, 555, 0,
+ 684, 0, 813, 0, 145, 154, 149, 162, 164, 165,
+ 0, 0, 169, 174, 5186, 5185, 5188, 7311, 7311, 194,
+ 5184, 7311, 480, 487, 941, 5131, 5130, 179, 5166, 0,
+ 994, 952, 959, 5178, 189, 7311, 5177, 5131, 190, 486,
+ 7311, 5148, 0, 7311, 5147, 155, 202, 7311, 5146, 5077,
+ 5080, 5083, 0, 7311, 5138, 0, 7311, 5137, 0, 7311,
+ 5136, 0, 964, 970, 5135, 498, 216, 5130, 5077, 0,
+ 515, 5130, 5127, 7311, 5128, 5075, 982, 0, 510, 5126,
+
+ 7311, 5125, 527, 522, 5124, 0, 1048, 534, 1027, 1083,
+ 539, 5109, 948, 7311, 1099, 1103, 1124, 5070, 5069, 5106,
+ 1178, 938, 1131, 5115, 5036, 541, 546, 0, 7311, 954,
+ 0, 1139, 7311, 1111, 937, 945, 7311, 974, 0, 5042,
+ 7311, 7311, 5107, 0, 5106, 5110, 1178, 982, 1151, 1005,
+ 1037, 1249, 5113, 1215, 1161, 1266, 1216, 7311, 7311, 5035,
+ 1000, 1189, 1013, 1033, 1045, 1060, 1094, 1108, 1117, 7311,
+ 0, 7311, 5044, 5050, 5049, 1135, 1142, 7311, 5033, 5038,
+ 5043, 0, 7311, 0, 7311, 0, 7311, 0, 1257, 1232,
+ 1286, 5094, 1167, 1294, 5094, 1248, 5090, 5037, 1304, 1311,
+
+ 1315, 5090, 1281, 7311, 0, 1320, 1339, 5089, 1324, 5086,
+ 7311, 5083, 5082, 5080, 5078, 1325, 5077, 0, 1114, 5053,
+ 1320, 1127, 7311, 7311, 5052, 1335, 5051, 0, 1328, 1343,
+ 4982, 457, 1349, 4976, 1092, 4969, 1346, 1183, 1239, 1414,
+ 1431, 1435, 5043, 1439, 1468, 991, 1014, 157, 1522, 1597,
+ 1332, 7311, 5042, 1385, 5001, 1448, 5000, 132, 1187, 1367,
+ 1449, 4970, 1168, 0, 4963, 4975, 456, 1201, 4973, 1462,
+ 7311, 5024, 1353, 0, 5022, 1364, 0, 7311, 0, 4975,
+ 416, 4974, 4949, 4964, 4951, 4959, 7311, 0, 0, 1409,
+ 0, 0, 7311, 0, 7311, 7311, 0, 7311, 0, 1598,
+
+ 7311, 1444, 0, 1478, 491, 5025, 1402, 5024, 1682, 1757,
+ 4948, 1498, 4950, 4942, 1027, 4941, 4940, 478, 4938, 4953,
+ 1420, 1422, 1449, 1474, 1500, 1502, 1504, 1508, 1514, 1515,
+ 1516, 1533, 1539, 4945, 4940, 4937, 4953, 4942, 4941, 1544,
+ 1550, 1557, 0, 1574, 1593, 5010, 1581, 4998, 4942, 7311,
+ 1638, 0, 1842, 4995, 1851, 1864, 4993, 919, 4955, 1168,
+ 1184, 1680, 4966, 4871, 4943, 4873, 4866, 87, 4871, 1029,
+ 4872, 4877, 4972, 0, 4967, 4966, 4963, 4962, 1686, 4961,
+ 4923, 4946, 4919, 4944, 4916, 7311, 4915, 0, 1576, 1583,
+ 1585, 1625, 1626, 1630, 1632, 1644, 1649, 1079, 4877, 4891,
+
+ 4954, 1702, 1777, 1255, 1785, 1846, 1390, 1298, 1692, 1696,
+ 4953, 1870, 1367, 1894, 1444, 1223, 1859, 1881, 1949, 1290,
+ 1723, 2030, 975, 1382, 1642, 1742, 1508, 1948, 4952, 1753,
+ 0, 1933, 4950, 4949, 1940, 4939, 1733, 4946, 1790, 1033,
+ 4945, 4944, 2072, 2098, 2171, 1485, 2020, 1917, 7311, 1928,
+ 1660, 1746, 1768, 1808, 1809, 1820, 1855, 1872, 1924, 1936,
+ 1938, 1942, 1944, 2002, 2007, 2008, 2015, 2016, 2254, 0,
+ 2022, 2046, 2047, 0, 2048, 0, 2052, 7311, 7311, 2083,
+ 7311, 7311, 0, 0, 4935, 4889, 0, 0, 4936, 4931,
+ 4938, 2257, 1154, 2262, 1353, 1455, 1788, 1528, 1590, 2207,
+
+ 4937, 2084, 4857, 2085, 2094, 2150, 2151, 2182, 2183, 7311,
+ 2184, 2188, 2189, 2190, 2223, 4872, 4878, 4873, 2256, 2224,
+ 4871, 0, 2277, 2285, 4927, 0, 2279, 0, 0, 2309,
+ 4925, 2322, 1445, 4892, 2237, 1662, 2257, 1692, 1738, 1757,
+ 2326, 2212, 4870, 4825, 1429, 1348, 4782, 4780, 4790, 4802,
+ 4775, 4775, 4748, 4857, 0, 4854, 4853, 4852, 4851, 2450,
+ 2578, 4850, 4849, 7311, 7311, 7311, 7311, 7311, 7311, 0,
+ 0, 0, 2266, 0, 0, 0, 2291, 2301, 0, 1344,
+ 2328, 2375, 2368, 2381, 2385, 2389, 2393, 2397, 2402, 2406,
+ 2410, 2414, 2418, 2422, 2437, 2456, 2460, 2464, 2468, 2472,
+
+ 2478, 0, 2497, 2501, 2505, 0, 2509, 0, 4851, 0,
+ 4794, 1713, 4793, 4766, 4779, 4764, 4771, 4837, 0, 2513,
+ 1238, 4834, 2705, 4807, 4806, 2731, 4805, 1553, 2506, 4803,
+ 2532, 1519, 7311, 0, 0, 0, 2303, 2317, 2424, 2480,
+ 2487, 0, 0, 2517, 2518, 0, 2534, 2536, 2542, 2544,
+ 0, 0, 2546, 2548, 0, 2550, 2552, 2554, 7311, 4748,
+ 7311, 7311, 0, 2558, 1650, 2562, 2584, 2588, 2592, 2596,
+ 2600, 1727, 4717, 4729, 2564, 2604, 2606, 2608, 2615, 2621,
+ 2622, 2626, 4736, 2627, 4722, 2632, 2633, 2634, 2638, 2644,
+ 2648, 0, 1818, 2652, 1862, 4779, 1475, 1908, 1927, 2631,
+
+ 1956, 2259, 2146, 2662, 2281, 2814, 2276, 4761, 4746, 4746,
+ 4670, 4691, 4667, 4672, 4677, 4645, 2707, 4643, 4638, 4619,
+ 4741, 0, 0, 0, 0, 2886, 2828, 2371, 4702, 2378,
+ 2409, 2799, 4713, 4619, 1831, 4692, 4624, 4616, 889, 4622,
+ 1709, 4595, 4602, 2863, 2415, 4662, 2424, 2598, 2800, 4669,
+ 4573, 1848, 4646, 4570, 4562, 1365, 4569, 1867, 4567, 4566,
+ 0, 0, 0, 0, 0, 0, 0, 2026, 1509, 1635,
+ 0, 2639, 4663, 0, 0, 0, 2666, 2671, 2675, 2679,
+ 2683, 0, 0, 2690, 2708, 0, 2712, 2716, 2720, 2724,
+ 0, 0, 2783, 2818, 0, 2835, 4662, 4660, 2842, 4659,
+
+ 4658, 0, 2027, 3013, 3039, 1689, 2344, 0, 0, 0,
+ 0, 0, 0, 0, 0, 2846, 2850, 2876, 2906, 2911,
+ 2929, 2933, 2937, 4634, 2726, 2820, 2824, 2880, 2892, 2896,
+ 0, 2622, 2941, 2900, 4631, 2618, 4622, 4583, 2802, 2794,
+ 2956, 2844, 4600, 4536, 4485, 4474, 4473, 4483, 1929, 2232,
+ 2091, 4473, 4473, 4483, 4581, 0, 0, 3122, 3099, 2854,
+ 4544, 2884, 2905, 3113, 4552, 4455, 1905, 4525, 4431, 4424,
+ 1651, 4431, 2602, 4432, 4435, 2894, 4503, 2916, 2921, 3155,
+ 2914, 2924, 2925, 3209, 2914, 4485, 4440, 3282, 3250, 1559,
+ 2840, 4407, 4402, 4414, 4428, 4402, 4428, 4375, 2916, 4456,
+
+ 2974, 2931, 3308, 2924, 2940, 2942, 3309, 2932, 4438, 4390,
+ 4469, 3379, 1619, 2848, 4357, 4348, 4360, 4374, 4348, 4373,
+ 4337, 0, 3022, 3028, 0, 0, 0, 0, 0, 0,
+ 0, 3128, 4447, 4445, 4444, 3145, 3165, 2923, 2997, 0,
+ 2960, 3091, 3111, 3112, 3104, 4410, 3188, 1879, 2878, 4354,
+ 4333, 2932, 4344, 4327, 4324, 4322, 4310, 4330, 4411, 0,
+ 0, 3405, 3382, 3124, 4374, 3117, 3139, 3224, 4383, 4274,
+ 2297, 4347, 4278, 4267, 1815, 4274, 3043, 4274, 4276, 3125,
+ 4342, 3175, 3138, 3311, 3132, 3142, 3145, 3398, 3128, 4314,
+ 4270, 3523, 3464, 1875, 3034, 4237, 4235, 4248, 4262, 4236,
+
+ 4259, 4232, 3166, 3192, 3160, 4329, 2172, 3161, 3171, 3313,
+ 3183, 3204, 3203, 3376, 3221, 3575, 3206, 4311, 4297, 3621,
+ 3554, 3473, 3579, 4293, 4217, 4234, 4203, 4200, 4204, 4169,
+ 3294, 4167, 4161, 4161, 3229, 3425, 3237, 4276, 2210, 3265,
+ 3300, 3314, 3302, 3316, 3303, 3454, 3320, 3682, 3306, 4258,
+ 4235, 0, 3680, 3493, 3689, 4235, 4156, 4172, 4156, 4144,
+ 4145, 4111, 3411, 4108, 4097, 4093, 0, 3412, 0, 3389,
+ 4166, 3460, 3471, 4082, 4081, 4066, 4075, 3519, 3537, 3545,
+ 4057, 3582, 4177, 4174, 4172, 3817, 3721, 3574, 173, 3461,
+ 3581, 3827, 1640, 1914, 3617, 508, 2268, 2394, 2469, 2429,
+
+ 3591, 2284, 1038, 3626, 2489, 3708, 3571, 3828, 3685, 3699,
+ 3706, 3864, 3688, 2407, 1054, 2663, 3907, 2421, 3340, 1879,
+ 2361, 2453, 988, 1452, 2609, 1161, 3582, 3686, 3697, 2976,
+ 3362, 3429, 3712, 3766, 3744, 3724, 3529, 3782, 3759, 3947,
+ 3746, 2568, 2551, 4170, 3930, 3992, 3993, 2461, 2487, 2698,
+ 1770, 2780, 3256, 3157, 3834, 2029, 2725, 2853, 3816, 3598,
+ 3634, 3635, 3820, 1841, 3257, 3860, 3825, 3951, 3833, 2581,
+ 4043, 3356, 2615, 2329, 2570, 2597, 3011, 2914, 3622, 3690,
+ 3773, 1707, 3090, 3027, 3556, 3871, 3277, 3141, 3554, 4162,
+ 4123, 3731, 3806, 4030, 3834, 4110, 4121, 4043, 4048, 4016,
+
+ 3994, 3982, 3978, 3986, 3174, 3344, 3333, 3980, 3968, 3956,
+ 4050, 7311, 3833, 4013, 3503, 3947, 3935, 3960, 3978, 3991,
+ 4022, 4039, 4065, 4070, 4074, 4078, 4084, 3951, 4033, 0,
+ 0, 7311, 4063, 3623, 3845, 3893, 4016, 4112, 3853, 3857,
+ 3862, 3968, 4125, 3989, 4088, 3331, 3533, 3908, 3881, 3686,
+ 3889, 3871, 3861, 3865, 3858, 3863, 0, 0, 3907, 3910,
+ 3813, 3802, 3798, 3806, 4121, 4151, 4155, 3822, 3904, 3922,
+ 0, 4106, 4143, 4169, 3862, 4174, 4173, 0, 4182, 4173,
+ 4201, 3779, 3768, 3737, 3735, 4210, 4225, 4229, 3707, 4236,
+ 3931, 3803, 3720, 3701, 3689, 3933, 4225, 3705, 3714, 3736,
+
+ 4230, 3811, 3667, 3643, 4252, 4259, 4265, 4266, 4272, 4276,
+ 4280, 4310, 4311, 4317, 4321, 4327, 4335, 3649, 3944, 3687,
+ 4341, 4348, 3599, 3942, 4381, 3686, 3656, 3567, 3524, 3517,
+ 3506, 4354, 4463, 4408, 4362, 4517, 4434, 4366, 4571, 4623,
+ 3518, 3492, 3429, 3967, 4632, 4089, 0, 4253, 3497, 3413,
+ 3381, 3361, 4677, 4382, 4729, 4390, 4783, 4417, 4738, 4471,
+ 4837, 4472, 4889, 4526, 3327, 3321, 3997, 4358, 3329, 4572,
+ 4580, 3242, 4648, 4843, 4895, 4652, 4899, 4916, 4665, 4920,
+ 4924, 3209, 3196, 3185, 3140, 4985, 5029, 5081, 5125, 5177,
+ 5221, 3094, 3077, 3073, 3050, 5273, 4634, 5301, 4689, 5300,
+
+ 4792, 5328, 4796, 5380, 4800, 5408, 4928, 3055, 2999, 2933,
+ 2918, 4678, 4754, 4758, 2875, 2847, 2789, 2802, 2787, 2754,
+ 2701, 2607, 2623, 2622, 2564, 2539, 2485, 2252, 2134, 1968,
+ 1911, 1849, 1441, 1445, 7311, 5461, 5472, 5483, 5494, 5505,
+ 5516, 5527, 5538, 5549, 5560, 5571, 5575, 5586, 5597, 5608,
+ 5619, 5630, 5641, 5652, 5663, 5674, 5685, 5696, 5707, 5711,
+ 5722, 5733, 5744, 5755, 5760, 5761, 5766, 5777, 5788, 5799,
+ 5810, 5821, 5832, 5843, 5854, 5865, 5876, 5887, 5898, 5909,
+ 1399, 5920, 5931, 5942, 5953, 5964, 5975, 5986, 5997, 1210,
+ 5999, 6010, 6021, 6032, 6043, 6054, 6065, 6076, 6087, 6098,
+
+ 6109, 6120, 6131, 6142, 6153, 6164, 6175, 6186, 6197, 6208,
+ 6219, 1080, 6221, 6232, 6243, 6254, 6265, 6276, 6287, 6298,
+ 6309, 6320, 6331, 6342, 6353, 6364, 6375, 6386, 6397, 6408,
+ 6419, 6430, 6441, 6452, 6463, 6474, 6485, 6496, 6507, 6518,
+ 6529, 6540, 6551, 6562, 6573, 6584, 6595, 6606, 6617, 6628,
+ 6639, 6650, 6661, 6672, 6683, 6694, 6705, 6716, 6727, 6738,
+ 6749, 6760, 6771, 6782, 6793, 6804, 6815, 6826, 6837, 6848,
+ 6859, 6870, 6881, 6892, 6903, 6914, 6925, 6936, 6947, 6958,
+ 6969, 6980, 6991, 7002, 7013, 7024, 7035, 7040, 7050, 7061,
+ 7072, 7083, 7094, 7105, 7116, 7127, 7138, 7149, 7160, 7171,
+
+ 973, 7182, 7193, 7204, 7215, 7226, 7237, 7244, 7254, 7259,
+ 7263, 517, 511, 7273, 7284, 7295, 7300, 198
} ;
-static const flex_int16_t yy_def[1593] =
+static const flex_int16_t yy_def[1619] =
{ 0,
- 1410, 1410, 1411, 1411, 1409, 5, 5, 5, 1412, 1412,
- 1409, 11, 1409, 13, 1413, 1413, 1414, 1414, 1409, 19,
- 1409, 21, 1409, 23, 1415, 1415, 1416, 1416, 1417, 1417,
- 1410, 1410, 1418, 1418, 1419, 1419, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1420, 1409, 1409, 1409, 1409, 1409, 1421,
- 1409, 1409, 1420, 1409, 51, 1409, 1409, 1409, 1422, 1409,
- 1409, 1409, 1423, 1409, 1409, 1409, 1424, 1409, 1409, 1409,
- 1409, 1409, 1425, 1409, 1409, 1426, 1409, 1409, 1427, 1409,
- 1409, 1428, 1409, 1420, 1409, 1409, 1409, 1409, 1409, 1429,
- 1409, 1429, 1429, 1409, 1409, 1409, 1430, 1431, 1409, 1431,
-
- 1409, 1409, 1409, 1409, 1409, 1432, 1432, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1433, 1409, 1409, 1409, 1409,
- 1409, 51, 1420, 1409, 1409, 1409, 1409, 1434, 1409, 1409,
- 1435, 1409, 1409, 1436, 1437, 1409, 1409, 1409, 1438, 1409,
- 1409, 1409, 1439, 1440, 1441, 1409, 1409, 1409, 1409, 1409,
- 1409, 1433, 1409, 121, 51, 1420, 1436, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1442, 1409, 1409, 1409, 1409, 1443, 1409, 1409, 1409, 1409,
- 1409, 1444, 1409, 1445, 1409, 1446, 1409, 1447, 1409, 1409,
- 1409, 1409, 1409, 1448, 1409, 1409, 1409, 1409, 1420, 1409,
-
- 1409, 1409, 1409, 1409, 1449, 1409, 1409, 1409, 1409, 1449,
- 1409, 1409, 1450, 1451, 1450, 1451, 1450, 1452, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1453, 1453, 1453,
- 1453, 1453, 1453, 1453, 1453, 1453, 1453, 1409, 1409, 1409,
- 1454, 1409, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1455, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1456, 1409, 1457, 1409, 1409, 1458, 1409, 1459, 1459,
- 1459, 1459, 1459, 1459, 1459, 1459, 1409, 1460, 1461, 1409,
- 1462, 1463, 1409, 1464, 1409, 1409, 1465, 1409, 1466, 1409,
-
- 1409, 1409, 1467, 1409, 1454, 1409, 1454, 1454, 1454, 1454,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1459, 1459, 1459,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1468, 1468, 1469, 1468, 1468, 1468, 1468, 1409,
- 1409, 1470, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1470, 1471, 1472, 1472, 1473, 1473, 1473, 1474, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1475, 1476, 1476, 1476,
- 1476, 1476, 1476, 1476, 1476, 1409, 1409, 1409, 1409, 1454,
-
- 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454,
- 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454,
- 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1477,
- 1454, 1454, 1454, 1478, 1479, 1454, 1454, 1454, 1454, 1454,
- 1454, 421, 421, 421, 1454, 1454, 1454, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1480, 1409,
- 1409, 1409, 1481, 1409, 1482, 1409, 1409, 1409, 1409, 1409,
- 1409, 1483, 1484, 1485, 1409, 1486, 1487, 1488, 1489, 1454,
- 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1490, 1454,
-
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1491, 1491, 1491, 1491, 1491, 1491, 1491, 1492, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1492, 1493, 1494, 1494, 1495, 1495, 1495, 1409, 1496,
- 1496, 1409, 1409, 1409, 1409, 1409, 1409, 1497, 1498, 1499,
- 1500, 1501, 1502, 1503, 1409, 1454, 1504, 1454, 1454, 1454,
- 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454,
- 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1505,
-
- 1454, 1454, 1454, 1506, 1454, 1507, 1454, 1508, 1508, 1508,
- 1508, 1508, 1508, 1508, 1508, 1454, 1509, 1454, 1510, 1454,
- 1454, 1454, 1454, 621, 1454, 1511, 1454, 1454, 1454, 1512,
- 1409, 1513, 1514, 1515, 1409, 1409, 1409, 1409, 1409, 1516,
- 1517, 1409, 1409, 1518, 1409, 1409, 1409, 1409, 1519, 1520,
- 1409, 1409, 1521, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1522, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1523,
- 1523, 1523, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1524, 1524, 1525,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
-
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1525, 1526, 1527,
- 1528, 1529, 1528, 1529, 1528, 1528, 1528, 1528, 1528, 1528,
- 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1530, 1531, 1532, 1533, 1534,
- 1535, 1536, 1454, 1454, 1454, 1537, 1454, 1454, 1538, 1539,
- 1540, 1454, 1454, 1454, 1454, 1454, 1541, 1542, 1454, 1454,
- 1543, 1454, 1454, 1454, 1454, 1544, 1545, 1454, 1454, 1546,
- 1454, 1454, 1454, 1454, 1454, 1454, 1547, 1548, 1454, 799,
-
- 1549, 1550, 1551, 1552, 1553, 1554, 1555, 1556, 1557, 1558,
- 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1409,
- 1409, 1409, 1409, 1409, 1409, 1559, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1559, 1560,
- 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561,
- 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561,
- 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561,
- 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
-
- 1409, 1409, 1562, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1563, 1454, 1454, 1564, 1565, 1566, 1567, 1568,
- 1569, 1570, 1454, 1454, 1454, 1454, 1571, 1454, 1409, 1409,
- 1572, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1572, 1573,
- 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574,
- 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574,
- 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574,
- 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574,
- 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574,
-
- 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574,
- 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574,
- 1574, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1575, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1576, 1571, 1577, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1578, 1579, 1580, 1409, 1409, 1577, 1581, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1582,
-
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1575, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1582, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1153, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1583, 1409, 1409, 1409, 1409, 1409, 1579, 1578, 1578, 1578,
-
- 1579, 1579, 1579, 1580, 1580, 1580, 1409, 1409, 1581, 1581,
- 1409, 1409, 1409, 1409, 1409, 1584, 1409, 1409, 1409, 1409,
- 1409, 1409, 1585, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1583, 1583, 1409, 1409, 1409, 1409,
- 1409, 1578, 1579, 1580, 1409, 1409, 1409, 1586, 1409, 1409,
- 1409, 1409, 1409, 1409, 1587, 1409, 1409, 1409, 1409, 1409,
- 1409, 1588, 1589, 1590, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1584, 1409, 1409, 1409, 1585, 1409, 1409, 1589,
- 1588, 1588, 1588, 1588, 1589, 1589, 1589, 1589, 1590, 1590,
- 1590, 1590, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
-
- 1591, 1409, 1409, 1409, 1409, 1588, 1588, 1588, 1589, 1589,
- 1589, 1590, 1590, 1590, 1409, 1409, 1409, 1409, 1409, 1409,
- 1592, 1409, 1409, 1409, 1409, 1409, 1588, 1588, 1588, 1588,
- 1589, 1589, 1589, 1589, 1590, 1590, 1590, 1590, 1409, 1409,
- 1409, 1591, 1409, 1409, 1409, 1409, 1307, 1588, 1588, 1310,
- 1589, 1589, 1313, 1590, 1590, 1409, 1409, 1409, 1409, 1588,
- 1307, 1589, 1310, 1590, 1313, 1409, 1409, 1409, 1409, 1588,
- 1588, 1327, 1588, 1589, 1589, 1331, 1589, 1590, 1590, 1335,
- 1590, 1409, 1409, 1409, 1409, 1361, 1363, 1365, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
-
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 0, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
-
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409
-
+ 1436, 1436, 1437, 1437, 1435, 5, 5, 5, 1438, 1438,
+ 1435, 11, 1435, 13, 1439, 1439, 1440, 1440, 1435, 19,
+ 1435, 21, 1435, 23, 1441, 1441, 1442, 1442, 1443, 1443,
+ 1436, 1436, 1444, 1444, 1445, 1445, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1446, 1435, 1435, 1435, 1435, 1435, 1447,
+ 1435, 1435, 1446, 1435, 51, 1435, 1435, 1435, 1448, 1435,
+ 1435, 1435, 1449, 1435, 1435, 1435, 1450, 1435, 1435, 1435,
+ 1435, 1435, 1451, 1435, 1435, 1452, 1435, 1435, 1453, 1435,
+ 1435, 1454, 1435, 1446, 1435, 1435, 1435, 1435, 1435, 1455,
+ 1435, 1455, 1455, 1435, 1435, 1435, 1456, 1457, 1435, 1457,
+
+ 1435, 1435, 1435, 1435, 1435, 1458, 1458, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1459, 1435, 1435, 1435, 1435,
+ 1435, 51, 1446, 1435, 1435, 1435, 1435, 1460, 1435, 1435,
+ 1461, 1435, 1435, 1462, 1463, 1435, 1435, 1435, 1464, 1435,
+ 1435, 1435, 1465, 1466, 1467, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1459, 1435, 121, 51, 1446, 1462, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1468, 1435, 1435, 1435, 1435, 1469, 1435, 1435, 1435, 1435,
+ 1435, 1470, 1435, 1471, 1435, 1472, 1435, 1473, 1435, 1435,
+ 1435, 1435, 1435, 1474, 1435, 1435, 1435, 1435, 1446, 1435,
+
+ 1435, 1435, 1435, 1435, 1475, 1435, 1435, 1435, 1435, 1475,
+ 1435, 1435, 1476, 1477, 1476, 1477, 1476, 1478, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1479, 1479, 1479,
+ 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1435, 1435, 1435,
+ 1480, 1435, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1481, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1482, 1435, 1483, 1435, 1435, 1484, 1435, 1485, 1485,
+ 1485, 1485, 1485, 1485, 1485, 1485, 1435, 1486, 1487, 1435,
+ 1488, 1489, 1435, 1490, 1435, 1435, 1491, 1435, 1492, 1435,
+
+ 1435, 1435, 1493, 1435, 1480, 1435, 1480, 1480, 1480, 1480,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1485, 1485, 1485,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1494, 1494, 1495, 1494, 1494, 1494, 1494, 1435,
+ 1435, 1496, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1496, 1497, 1498, 1498, 1499, 1499, 1499, 1500,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1501, 1502, 1502,
+ 1502, 1502, 1502, 1502, 1502, 1502, 1435, 1435, 1435, 1435,
+
+ 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480,
+ 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480,
+ 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480,
+ 1503, 1480, 1480, 1480, 1504, 1505, 1480, 1480, 1480, 1480,
+ 1480, 1480, 422, 422, 422, 1480, 1480, 1480, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1506,
+ 1435, 1435, 1435, 1507, 1435, 1508, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1509, 1510, 1511, 1435, 1512, 1513, 1514, 1515,
+ 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1516,
+
+ 1480, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1518, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1518, 1519, 1520, 1520, 1521, 1521, 1521,
+ 1435, 1522, 1522, 1435, 1435, 1435, 1435, 1435, 1435, 1523,
+ 1524, 1525, 1526, 1527, 1528, 1529, 1435, 1480, 1530, 1480,
+ 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480,
+ 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480,
+
+ 1480, 1531, 1480, 1480, 1480, 1532, 1480, 1533, 1480, 1534,
+ 1534, 1534, 1534, 1534, 1534, 1534, 1534, 1480, 1535, 1480,
+ 1536, 1480, 1480, 1480, 1480, 623, 1480, 1537, 1480, 1480,
+ 1480, 1538, 1435, 1539, 1540, 1541, 1435, 1435, 1435, 1435,
+ 1435, 1542, 1543, 1435, 1435, 1544, 1435, 1435, 1435, 1435,
+ 1545, 1546, 1435, 1435, 1547, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1548, 1480, 1480, 1480, 1480, 1480, 1480, 1480,
+ 1480, 1549, 1549, 1549, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1550,
+ 1550, 1551, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1551, 1552, 1553, 1554, 1555, 1554, 1555, 1554, 1554, 1554,
+ 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554,
+ 1554, 1554, 1554, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1556, 1557, 1558, 1559, 1560, 1561, 1562, 1480, 1480, 1480,
+ 1563, 1480, 1480, 1564, 1565, 1566, 1480, 1480, 1480, 1480,
+ 1480, 1567, 1568, 1480, 1480, 1569, 1480, 1480, 1480, 1480,
+ 1570, 1571, 1480, 1480, 1572, 1480, 1480, 1480, 1480, 1480,
+
+ 1480, 1573, 1574, 1480, 804, 1575, 1576, 1577, 1578, 1579,
+ 1580, 1581, 1582, 1583, 1584, 1480, 1480, 1480, 1480, 1480,
+ 1480, 1480, 1480, 1480, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1585, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1585, 1586, 1587, 1587, 1587, 1587,
+ 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587,
+ 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587,
+ 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587,
+ 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1587, 1435, 1435,
+
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1588, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1589, 1480, 1480, 1590, 1591, 1592, 1593, 1594, 1595,
+ 1596, 1480, 1480, 1480, 1480, 1597, 1480, 1435, 1435, 1598,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1598, 1599,
+ 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600,
+ 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600,
+ 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600,
+ 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600,
+
+ 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600,
+ 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600,
+ 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600, 1600,
+ 1600, 1600, 1600, 1600, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1601, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1602, 1597, 1603, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1604, 1605, 1606,
+ 1435, 1435, 1603, 1607, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1608, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1601, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1608, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1171, 1435, 1435, 1435,
+
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1609, 1435, 1435, 1435, 1435, 1435, 1435, 1605, 1604, 1604,
+ 1604, 1605, 1605, 1605, 1606, 1606, 1606, 1435, 1435, 1607,
+ 1607, 1435, 1435, 1435, 1435, 1435, 1610, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1611, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1609, 1609, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1604, 1605, 1606, 1435, 1435, 1435,
+ 1612, 1435, 1435, 1435, 1435, 1435, 1435, 1613, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1614, 1615, 1616, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1610, 1435, 1435, 1435,
+
+ 1611, 1435, 1435, 1435, 1615, 1614, 1614, 1614, 1614, 1615,
+ 1615, 1615, 1615, 1616, 1616, 1616, 1616, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1617, 1435, 1435, 1435, 1435,
+ 1435, 1614, 1614, 1614, 1615, 1615, 1615, 1616, 1616, 1616,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1618, 1435, 1435, 1435,
+ 1435, 1435, 1614, 1614, 1614, 1614, 1615, 1615, 1615, 1615,
+ 1616, 1616, 1616, 1616, 1435, 1435, 1435, 1617, 1435, 1435,
+ 1435, 1435, 1333, 1614, 1614, 1336, 1615, 1615, 1339, 1616,
+ 1616, 1435, 1435, 1435, 1435, 1614, 1333, 1615, 1336, 1616,
+ 1339, 1435, 1435, 1435, 1435, 1614, 1614, 1353, 1614, 1615,
+
+ 1615, 1357, 1615, 1616, 1616, 1361, 1616, 1435, 1435, 1435,
+ 1435, 1387, 1389, 1391, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 0, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435
} ;
-static const flex_int16_t yy_nxt[7335] =
+static const flex_int16_t yy_nxt[7441] =
{ 0,
- 1409, 1409, 40, 41, 40, 41, 42, 43, 44, 45,
+ 1435, 1435, 40, 41, 40, 41, 42, 43, 44, 45,
43, 42, 42, 42, 42, 42, 46, 47, 42, 42,
42, 48, 49, 46, 50, 50, 50, 50, 50, 50,
50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
@@ -951,802 +965,813 @@ static const flex_int16_t yy_nxt[7335] =
42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
- 42, 42, 52, 53, 54, 52, 52, 53, 54, 52,
- 69, 57, 57, 83, 84, 85, 83, 42, 91, 92,
- 93, 42, 83, 84, 85, 83, 1409, 86, 87, 58,
- 58, 91, 92, 93, 95, 95, 86, 87, 99, 100,
- 408, 96, 96, 99, 100, 70, 1211, 126, 97, 97,
- 126, 71, 546, 72, 547, 55, 59, 59, 162, 55,
- 456, 162, 103, 104, 105, 103, 88, 157, 89, 457,
-
- 177, 106, 158, 177, 1342, 88, 70, 89, 107, 892,
- 173, 174, 71, 175, 72, 201, 202, 60, 60, 61,
- 61, 61, 62, 61, 61, 61, 61, 61, 61, 61,
- 61, 61, 61, 61, 61, 61, 61, 63, 63, 63,
+ 42, 42, 42, 42, 42, 52, 53, 54, 52, 52,
+ 53, 54, 52, 69, 57, 57, 83, 84, 85, 83,
+ 42, 91, 92, 93, 42, 83, 84, 85, 83, 1435,
+ 86, 87, 58, 58, 91, 92, 93, 95, 95, 86,
+ 87, 99, 100, 409, 96, 96, 99, 100, 70, 1232,
+ 126, 97, 97, 126, 71, 547, 72, 548, 55, 59,
+ 59, 162, 55, 457, 162, 103, 104, 105, 103, 88,
+
+ 157, 89, 458, 177, 106, 158, 177, 1368, 88, 70,
+ 89, 107, 900, 173, 174, 71, 175, 72, 201, 202,
+ 60, 60, 61, 61, 61, 62, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
- 63, 63, 61, 61, 61, 61, 61, 63, 63, 63,
+ 63, 63, 63, 63, 63, 61, 61, 61, 61, 61,
63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
- 63, 63, 63, 61, 61, 61, 61, 61, 61, 61,
+ 63, 63, 63, 63, 63, 63, 61, 61, 61, 61,
61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
- 61, 61, 61, 61, 61, 64, 64, 64, 65, 64,
- 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
- 64, 66, 64, 67, 67, 67, 67, 67, 67, 67,
+ 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 64, 64, 64, 65, 64, 64, 64, 64, 64,
+ 64, 64, 64, 64, 64, 64, 64, 66, 64, 67,
+ 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
- 67, 67, 67, 67, 67, 67, 67, 67, 64, 64,
- 64, 64, 64, 67, 67, 67, 67, 67, 67, 67,
+ 67, 67, 67, 67, 64, 64, 64, 64, 64, 67,
67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
- 67, 67, 67, 67, 67, 67, 67, 67, 67, 64,
+ 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
+ 67, 67, 67, 67, 67, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
- 64, 69, 109, 110, 110, 109, 388, 479, 479, 115,
- 116, 117, 115, 388, 305, 490, 111, 112, 118, 119,
- 200, 200, 200, 200, 120, 121, 163, 164, 165, 166,
-
- 167, 168, 169, 219, 220, 1211, 70, 206, 207, 208,
- 206, 1277, 71, 469, 72, 226, 227, 1273, 221, 103,
- 224, 225, 103, 106, 470, 113, 103, 104, 105, 103,
- 107, 126, 122, 126, 126, 106, 126, 70, 276, 509,
- 509, 276, 107, 71, 905, 72, 74, 74, 74, 75,
+ 69, 109, 110, 110, 109, 389, 480, 480, 115, 116,
+ 117, 115, 389, 305, 491, 111, 112, 118, 119, 200,
+
+ 200, 200, 200, 120, 121, 163, 164, 165, 166, 167,
+ 168, 169, 219, 220, 1232, 70, 206, 207, 208, 206,
+ 1301, 71, 470, 72, 226, 227, 1297, 221, 103, 224,
+ 225, 103, 106, 471, 113, 103, 104, 105, 103, 107,
+ 126, 122, 126, 126, 106, 126, 70, 276, 510, 510,
+ 276, 107, 71, 913, 72, 74, 74, 74, 75, 74,
74, 74, 74, 74, 74, 74, 74, 74, 74, 74,
- 74, 74, 74, 74, 76, 76, 76, 76, 76, 76,
+ 74, 74, 74, 76, 76, 76, 76, 76, 76, 76,
76, 76, 76, 76, 76, 76, 76, 76, 76, 76,
76, 76, 76, 76, 76, 76, 76, 76, 76, 76,
- 76, 76, 76, 76, 76, 76, 76, 76, 76, 74,
- 74, 74, 74, 74, 76, 76, 76, 76, 76, 76,
- 76, 76, 76, 76, 76, 76, 76, 76, 76, 76,
+ 76, 76, 76, 76, 76, 76, 76, 76, 74, 74,
+ 74, 74, 74, 76, 76, 76, 76, 76, 76, 76,
76, 76, 76, 76, 76, 76, 76, 76, 76, 76,
+ 76, 76, 76, 76, 76, 76, 76, 76, 76, 74,
74, 74, 74, 74, 74, 74, 74, 74, 74, 74,
74, 74, 74, 74, 74, 74, 74, 74, 74, 74,
74, 74, 74, 74, 74, 74, 74, 74, 74, 74,
74, 74, 74, 74, 74, 74, 74, 74, 74, 74,
- 74, 74, 77, 77, 77, 78, 77, 77, 77, 77,
+ 74, 74, 74, 74, 77, 77, 77, 78, 77, 77,
77, 77, 77, 77, 77, 77, 77, 77, 77, 77,
- 79, 79, 79, 79, 79, 79, 79, 79, 79, 79,
+ 77, 77, 79, 79, 79, 79, 79, 79, 79, 79,
79, 79, 79, 79, 79, 79, 79, 79, 79, 79,
79, 79, 79, 79, 79, 79, 79, 79, 79, 79,
- 79, 79, 79, 79, 79, 77, 77, 77, 77, 77,
- 79, 79, 79, 79, 79, 79, 79, 79, 79, 79,
+ 79, 79, 79, 79, 79, 79, 79, 77, 77, 77,
+ 77, 77, 79, 79, 79, 79, 79, 79, 79, 79,
79, 79, 79, 79, 79, 79, 79, 79, 79, 79,
- 79, 79, 79, 79, 79, 79, 77, 77, 77, 77,
+ 79, 79, 79, 79, 79, 79, 79, 79, 77, 77,
77, 77, 77, 77, 77, 77, 77, 77, 77, 77,
77, 77, 77, 77, 77, 77, 77, 77, 77, 77,
77, 77, 77, 77, 77, 77, 77, 77, 77, 77,
- 77, 77, 77, 77, 77, 77, 77, 77, 80, 80,
- 80, 81, 80, 80, 80, 80, 80, 80, 80, 80,
- 80, 80, 80, 80, 80, 80, 82, 82, 82, 82,
- 82, 82, 82, 82, 82, 82, 82, 82, 82, 82,
- 82, 82, 82, 82, 82, 82, 82, 82, 82, 82,
+ 77, 77, 77, 77, 77, 77, 77, 77, 77, 77,
+ 77, 77, 77, 80, 80, 80, 81, 80, 80, 80,
+ 80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
+ 80, 82, 82, 82, 82, 82, 82, 82, 82, 82,
82, 82, 82, 82, 82, 82, 82, 82, 82, 82,
- 82, 80, 80, 80, 80, 80, 82, 82, 82, 82,
82, 82, 82, 82, 82, 82, 82, 82, 82, 82,
+ 82, 82, 82, 82, 82, 82, 80, 80, 80, 80,
+ 80, 82, 82, 82, 82, 82, 82, 82, 82, 82,
82, 82, 82, 82, 82, 82, 82, 82, 82, 82,
- 82, 82, 80, 80, 80, 80, 80, 80, 80, 80,
- 80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
+ 82, 82, 82, 82, 82, 82, 82, 80, 80, 80,
80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
- 80, 80, 80, 80, 110, 123, 110, 110, 276, 271,
- 288, 276, 532, 272, 130, 149, 273, 130, 149, 112,
- 130, 239, 151, 152, 153, 151, 238, 189, 130, 111,
- 189, 118, 119, 193, 194, 195, 193, 290, 154, 1409,
- 290, 190, 191, 532, 1211, 302, 291, 214, 302, 885,
- 215, 886, 289, 1409, 303, 1409, 1178, 112, 129, 129,
- 130, 129, 131, 131, 132, 129, 133, 134, 150, 135,
- 150, 130, 136, 137, 130, 155, 327, 196, 1409, 327,
-
- 192, 322, 323, 324, 325, 130, 197, 130, 198, 216,
- 109, 110, 110, 109, 138, 130, 328, 1409, 217, 328,
- 304, 305, 306, 304, 111, 112, 1211, 406, 329, 139,
- 140, 329, 598, 141, 129, 138, 129, 129, 142, 143,
- 216, 138, 295, 330, 144, 138, 330, 145, 146, 129,
- 407, 129, 147, 130, 129, 138, 148, 138, 229, 129,
- 129, 130, 1182, 113, 130, 230, 110, 110, 110, 110,
- 231, 486, 130, 150, 232, 233, 234, 331, 235, 457,
- 331, 112, 240, 241, 242, 240, 244, 116, 245, 244,
- 506, 332, 620, 236, 332, 246, 247, 112, 219, 220,
-
- 333, 248, 249, 333, 548, 549, 237, 110, 116, 110,
- 110, 219, 220, 221, 115, 116, 117, 115, 177, 112,
- 466, 177, 112, 118, 119, 177, 221, 911, 177, 120,
- 121, 575, 575, 394, 149, 113, 394, 149, 1409, 250,
- 278, 278, 278, 278, 278, 278, 278, 278, 111, 708,
- 342, 280, 271, 342, 157, 281, 272, 282, 283, 158,
- 112, 251, 252, 284, 251, 191, 396, 122, 285, 396,
- 458, 286, 326, 458, 300, 326, 300, 253, 301, 301,
- 301, 301, 301, 301, 301, 301, 301, 150, 254, 534,
- 322, 323, 324, 325, 255, 256, 1409, 535, 257, 459,
-
- 258, 709, 259, 192, 260, 261, 262, 1409, 263, 465,
- 264, 460, 465, 662, 124, 200, 200, 200, 200, 265,
- 534, 266, 484, 267, 311, 312, 268, 313, 535, 314,
- 400, 269, 307, 152, 308, 307, 270, 315, 316, 1409,
- 189, 246, 247, 189, 317, 471, 471, 472, 309, 151,
- 152, 153, 151, 408, 190, 191, 280, 1258, 118, 119,
- 318, 350, 282, 319, 203, 154, 587, 203, 320, 340,
- 340, 340, 340, 285, 1409, 588, 286, 344, 345, 346,
- 344, 350, 1409, 397, 341, 310, 398, 193, 194, 195,
- 193, 399, 350, 192, 200, 200, 200, 200, 351, 351,
-
- 351, 351, 155, 206, 353, 354, 206, 206, 207, 208,
- 206, 387, 350, 377, 387, 251, 252, 192, 251, 226,
- 227, 347, 355, 356, 357, 355, 387, 106, 1408, 387,
- 348, 196, 349, 380, 107, 381, 396, 710, 711, 396,
- 197, 378, 198, 595, 382, 388, 383, 276, 384, 358,
- 276, 1409, 378, 389, 388, 385, 359, 360, 378, 388,
- 361, 362, 392, 363, 578, 392, 1409, 364, 449, 389,
- 388, 449, 378, 392, 1409, 390, 392, 450, 577, 392,
- 461, 386, 392, 378, 450, 429, 1409, 365, 429, 378,
- 1012, 582, 290, 392, 462, 290, 392, 240, 241, 242,
-
- 240, 291, 450, 510, 392, 511, 510, 392, 511, 1409,
- 392, 450, 112, 392, 401, 241, 402, 401, 110, 241,
- 110, 110, 404, 110, 401, 404, 599, 302, 1409, 403,
- 302, 449, 512, 112, 449, 512, 303, 403, 491, 366,
- 367, 368, 1013, 369, 513, 370, 371, 513, 1407, 586,
- 113, 401, 116, 401, 401, 794, 794, 514, 452, 450,
- 514, 304, 305, 306, 304, 463, 403, 403, 1409, 1409,
- 450, 112, 453, 626, 452, 405, 463, 1059, 463, 1409,
- 454, 449, 463, 326, 449, 327, 326, 328, 327, 463,
- 328, 329, 600, 1211, 329, 463, 463, 330, 331, 332,
-
- 330, 331, 332, 601, 403, 409, 252, 463, 409, 463,
- 691, 1409, 1409, 463, 150, 450, 333, 474, 1023, 333,
- 463, 410, 387, 489, 450, 387, 463, 340, 340, 340,
- 340, 400, 411, 340, 340, 340, 340, 484, 412, 413,
- 342, 691, 414, 342, 415, 925, 416, 666, 417, 418,
- 419, 665, 420, 1211, 421, 191, 502, 522, 406, 387,
- 522, 503, 387, 422, 1406, 423, 569, 424, 570, 569,
- 425, 570, 523, 604, 1409, 426, 344, 345, 346, 344,
- 427, 129, 428, 429, 428, 430, 430, 431, 432, 433,
- 434, 914, 435, 192, 525, 436, 437, 429, 301, 301,
-
- 301, 301, 301, 301, 301, 301, 301, 1405, 571, 572,
- 524, 571, 572, 573, 525, 574, 573, 438, 574, 1409,
- 347, 351, 351, 351, 351, 525, 907, 396, 908, 348,
- 396, 349, 449, 439, 1409, 449, 440, 428, 438, 428,
- 428, 441, 442, 632, 438, 525, 632, 443, 438, 1043,
- 444, 445, 428, 668, 428, 446, 429, 428, 438, 447,
- 438, 1232, 428, 428, 429, 409, 252, 1409, 409, 558,
- 559, 558, 558, 1211, 557, 579, 1409, 767, 579, 409,
- 252, 410, 409, 914, 696, 401, 110, 401, 401, 536,
- 702, 492, 493, 537, 494, 1211, 495, 538, 412, 413,
-
- 403, 1044, 414, 539, 496, 497, 416, 1409, 417, 418,
- 419, 498, 420, 669, 421, 696, 579, 1409, 406, 579,
- 540, 702, 703, 422, 537, 423, 1409, 424, 538, 449,
- 425, 985, 449, 986, 539, 426, 429, 1409, 403, 429,
- 427, 129, 428, 429, 428, 430, 430, 431, 432, 433,
- 499, 633, 435, 703, 633, 500, 437, 429, 1049, 704,
- 401, 241, 401, 401, 596, 819, 819, 596, 404, 110,
- 401, 404, 1409, 618, 1409, 403, 618, 438, 634, 541,
- 488, 634, 619, 403, 400, 1211, 602, 602, 603, 491,
- 704, 635, 636, 439, 635, 636, 440, 428, 438, 428,
-
- 428, 441, 442, 637, 438, 1409, 637, 443, 438, 1047,
- 444, 445, 428, 403, 428, 446, 429, 428, 438, 447,
- 438, 405, 428, 428, 429, 355, 529, 530, 355, 488,
- 1409, 827, 429, 926, 355, 529, 530, 355, 458, 576,
- 588, 458, 589, 1409, 408, 589, 429, 531, 356, 357,
- 531, 667, 358, 580, 1409, 638, 580, 1404, 638, 359,
- 360, 358, 827, 361, 362, 1409, 363, 1051, 359, 360,
- 364, 590, 361, 362, 358, 363, 831, 580, 1409, 364,
- 580, 359, 360, 591, 812, 361, 362, 581, 363, 693,
- 365, 581, 364, 1104, 592, 1105, 581, 1211, 581, 365,
-
- 629, 1409, 881, 629, 583, 429, 693, 831, 593, 630,
- 1409, 449, 365, 429, 449, 882, 631, 489, 584, 639,
- 583, 1211, 639, 702, 1409, 927, 585, 607, 607, 607,
- 607, 607, 607, 607, 607, 640, 641, 1409, 640, 641,
- 887, 888, 366, 367, 368, 1211, 369, 1403, 370, 371,
- 581, 366, 367, 368, 702, 369, 594, 370, 371, 642,
- 643, 581, 642, 643, 366, 367, 368, 594, 369, 594,
- 370, 371, 609, 594, 644, 1131, 610, 644, 611, 612,
- 594, 1058, 645, 1184, 613, 645, 594, 594, 646, 614,
- 650, 646, 615, 650, 647, 1059, 651, 647, 594, 651,
-
- 594, 1409, 1409, 652, 594, 1409, 652, 654, 605, 1402,
- 654, 594, 648, 1183, 627, 903, 627, 594, 628, 628,
- 628, 628, 628, 628, 628, 628, 628, 1132, 904, 1038,
- 597, 597, 597, 597, 597, 597, 597, 597, 597, 597,
- 597, 597, 597, 597, 597, 597, 597, 597, 597, 597,
- 597, 597, 597, 597, 597, 597, 621, 655, 656, 648,
- 655, 656, 909, 910, 622, 622, 622, 622, 673, 914,
- 914, 673, 622, 622, 622, 622, 622, 622, 622, 622,
- 622, 622, 622, 622, 622, 622, 622, 622, 622, 622,
- 622, 622, 622, 622, 622, 622, 622, 622, 623, 623,
-
- 623, 623, 623, 623, 623, 623, 623, 623, 623, 623,
- 623, 623, 623, 623, 623, 623, 623, 623, 623, 623,
- 623, 623, 623, 623, 675, 676, 1211, 675, 676, 623,
- 623, 623, 623, 623, 623, 623, 623, 623, 623, 623,
- 623, 623, 623, 623, 623, 623, 623, 623, 623, 623,
- 623, 623, 623, 623, 623, 624, 677, 678, 679, 677,
- 678, 679, 680, 510, 511, 680, 510, 511, 702, 1211,
- 702, 625, 625, 625, 625, 625, 625, 625, 625, 625,
- 625, 625, 625, 625, 625, 625, 625, 625, 625, 625,
- 625, 625, 625, 625, 625, 625, 625, 580, 1409, 702,
+ 80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
+ 80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
+ 80, 80, 110, 123, 110, 110, 276, 271, 288, 276,
+ 533, 272, 130, 149, 273, 130, 149, 112, 130, 239,
+ 151, 152, 153, 151, 238, 189, 130, 111, 189, 118,
+ 119, 193, 194, 195, 193, 290, 154, 1435, 290, 190,
+ 191, 533, 1197, 302, 291, 214, 302, 892, 215, 893,
+ 289, 1435, 303, 1435, 1232, 112, 129, 129, 130, 129,
+
+ 131, 131, 132, 129, 133, 134, 150, 135, 150, 130,
+ 136, 137, 130, 155, 327, 196, 1435, 327, 192, 322,
+ 323, 324, 325, 130, 197, 130, 198, 216, 109, 110,
+ 110, 109, 138, 130, 328, 1435, 217, 328, 304, 305,
+ 306, 304, 111, 112, 1232, 407, 329, 139, 140, 329,
+ 600, 141, 129, 138, 129, 129, 142, 143, 216, 138,
+ 1232, 330, 144, 138, 330, 145, 146, 129, 408, 129,
+ 147, 130, 129, 138, 148, 138, 229, 129, 129, 130,
+ 1063, 113, 130, 230, 110, 110, 110, 110, 231, 295,
+ 130, 150, 232, 233, 234, 331, 235, 458, 331, 112,
+
+ 240, 241, 242, 240, 244, 116, 245, 244, 507, 332,
+ 622, 236, 332, 246, 247, 112, 219, 220, 333, 248,
+ 249, 333, 550, 551, 237, 110, 116, 110, 110, 219,
+ 220, 221, 115, 116, 117, 115, 177, 112, 921, 177,
+ 112, 118, 119, 177, 221, 1051, 177, 120, 121, 577,
+ 577, 395, 149, 113, 395, 149, 1435, 250, 278, 278,
+ 278, 278, 278, 278, 278, 278, 111, 1232, 342, 280,
+ 271, 342, 157, 281, 272, 282, 283, 158, 112, 251,
+ 252, 284, 251, 191, 397, 122, 285, 397, 459, 286,
+ 326, 459, 300, 326, 300, 253, 301, 301, 301, 301,
+
+ 301, 301, 301, 301, 301, 150, 254, 535, 322, 323,
+ 324, 325, 255, 256, 1435, 536, 257, 460, 258, 487,
+ 259, 192, 260, 261, 262, 1435, 263, 466, 264, 461,
+ 466, 664, 124, 200, 200, 200, 200, 265, 535, 266,
+ 485, 267, 311, 312, 268, 313, 536, 314, 401, 269,
+ 307, 152, 308, 307, 270, 315, 316, 1435, 189, 246,
+ 247, 189, 317, 472, 472, 473, 309, 151, 152, 153,
+ 151, 409, 190, 191, 280, 1066, 118, 119, 318, 350,
+ 282, 319, 203, 154, 589, 203, 320, 340, 340, 340,
+ 340, 285, 1435, 590, 286, 344, 345, 346, 344, 350,
+
+ 1435, 398, 341, 310, 399, 193, 194, 195, 193, 400,
+ 350, 192, 200, 200, 200, 200, 351, 351, 351, 351,
+ 155, 206, 353, 354, 206, 206, 207, 208, 206, 388,
+ 350, 378, 388, 251, 252, 192, 251, 226, 227, 347,
+ 355, 356, 357, 355, 388, 106, 1435, 388, 348, 196,
+ 349, 381, 107, 382, 397, 1435, 772, 397, 197, 379,
+ 198, 597, 383, 389, 384, 276, 385, 358, 276, 1435,
+ 379, 390, 389, 386, 359, 360, 379, 389, 361, 362,
+ 393, 363, 580, 393, 1435, 364, 450, 390, 389, 450,
+ 379, 393, 1435, 391, 393, 451, 579, 393, 462, 387,
+
+ 393, 379, 451, 430, 1435, 365, 430, 379, 467, 584,
+ 290, 393, 463, 290, 393, 240, 241, 242, 240, 291,
+ 451, 511, 393, 512, 511, 393, 512, 667, 393, 451,
+ 112, 393, 402, 241, 403, 402, 110, 241, 110, 110,
+ 405, 110, 402, 405, 601, 302, 1435, 404, 302, 450,
+ 513, 112, 450, 513, 303, 404, 492, 1435, 1232, 366,
+ 367, 368, 369, 915, 370, 916, 371, 372, 113, 402,
+ 116, 402, 402, 712, 713, 514, 453, 451, 514, 304,
+ 305, 306, 304, 464, 404, 404, 588, 1435, 451, 112,
+ 454, 628, 453, 406, 464, 710, 464, 693, 455, 450,
+
+ 464, 515, 450, 326, 515, 327, 326, 464, 327, 328,
+ 1435, 1435, 328, 464, 464, 329, 330, 331, 329, 330,
+ 331, 490, 404, 410, 252, 464, 410, 464, 693, 401,
+ 1435, 464, 150, 451, 332, 475, 668, 332, 464, 411,
+ 333, 1281, 451, 333, 464, 340, 340, 340, 340, 711,
+ 412, 340, 340, 340, 340, 489, 413, 414, 342, 401,
+ 415, 342, 416, 1434, 417, 695, 418, 419, 420, 1064,
+ 421, 606, 422, 191, 503, 523, 407, 388, 523, 504,
+ 388, 423, 695, 424, 388, 425, 571, 388, 426, 571,
+ 524, 923, 1435, 427, 344, 345, 346, 344, 428, 129,
+
+ 429, 430, 429, 431, 431, 432, 433, 434, 435, 670,
+ 436, 192, 526, 437, 438, 430, 301, 301, 301, 301,
+ 301, 301, 301, 301, 301, 1024, 572, 573, 525, 572,
+ 573, 574, 526, 575, 574, 439, 575, 1435, 347, 351,
+ 351, 351, 351, 526, 1435, 576, 1232, 348, 576, 349,
+ 397, 440, 1435, 397, 441, 429, 439, 429, 429, 442,
+ 443, 450, 439, 526, 450, 444, 439, 909, 445, 446,
+ 429, 671, 429, 447, 430, 429, 439, 448, 439, 1025,
+ 429, 429, 430, 410, 252, 1056, 410, 560, 561, 560,
+ 560, 489, 559, 581, 1435, 935, 581, 410, 252, 411,
+
+ 410, 923, 698, 402, 110, 402, 402, 537, 602, 493,
+ 494, 538, 495, 1232, 496, 539, 413, 414, 404, 603,
+ 415, 540, 497, 498, 417, 1435, 418, 419, 420, 499,
+ 421, 817, 422, 698, 581, 1435, 407, 581, 541, 1057,
+ 704, 423, 538, 424, 1435, 425, 539, 634, 426, 996,
+ 634, 997, 540, 427, 430, 1435, 404, 430, 428, 129,
+ 429, 430, 429, 431, 431, 432, 433, 434, 500, 450,
+ 436, 704, 450, 501, 438, 430, 1232, 705, 402, 241,
+ 402, 402, 598, 799, 799, 598, 405, 110, 402, 405,
+ 1435, 620, 1435, 404, 620, 439, 706, 824, 824, 542,
+
+ 621, 404, 895, 896, 604, 604, 605, 492, 705, 635,
+ 636, 440, 635, 636, 441, 429, 439, 429, 429, 442,
+ 443, 637, 439, 1254, 637, 444, 439, 706, 445, 446,
+ 429, 404, 429, 447, 430, 429, 439, 448, 439, 406,
+ 429, 429, 430, 355, 530, 531, 355, 1232, 1435, 832,
+ 430, 1239, 355, 530, 531, 355, 638, 578, 590, 638,
+ 591, 1435, 409, 591, 430, 532, 356, 357, 532, 669,
+ 358, 582, 1435, 639, 582, 1201, 639, 359, 360, 358,
+ 832, 361, 362, 1435, 363, 1232, 359, 360, 364, 592,
+ 361, 362, 358, 363, 888, 582, 1435, 364, 582, 359,
+
+ 360, 593, 836, 361, 362, 583, 363, 889, 365, 583,
+ 364, 911, 594, 1120, 583, 1121, 583, 365, 631, 1435,
+ 1232, 631, 585, 430, 912, 459, 595, 632, 459, 450,
+ 365, 430, 450, 836, 633, 1435, 586, 640, 585, 641,
+ 640, 1148, 641, 642, 587, 643, 642, 1433, 643, 704,
+ 1435, 1435, 609, 609, 609, 609, 609, 609, 609, 609,
+ 918, 919, 366, 367, 368, 369, 704, 370, 992, 371,
+ 372, 366, 367, 368, 369, 1072, 370, 583, 371, 372,
+ 704, 993, 596, 596, 366, 367, 368, 369, 583, 370,
+ 1073, 371, 372, 596, 596, 1149, 704, 704, 611, 596,
+
+ 596, 1060, 612, 644, 613, 614, 644, 1073, 645, 646,
+ 615, 645, 646, 596, 596, 616, 647, 648, 617, 647,
+ 648, 607, 1435, 652, 596, 596, 652, 704, 1435, 485,
+ 596, 596, 1435, 910, 629, 1232, 629, 934, 630, 630,
+ 630, 630, 630, 630, 630, 630, 630, 653, 654, 656,
+ 653, 654, 656, 657, 951, 952, 657, 599, 599, 599,
+ 599, 599, 599, 599, 599, 599, 599, 599, 599, 599,
+ 599, 599, 599, 599, 599, 599, 599, 599, 599, 599,
+ 599, 599, 599, 623, 658, 675, 677, 658, 675, 677,
+ 1432, 624, 624, 624, 624, 678, 923, 923, 678, 624,
- 580, 702, 625, 625, 625, 625, 625, 625, 625, 625,
+ 624, 624, 624, 624, 624, 624, 624, 624, 624, 624,
+ 624, 624, 624, 624, 624, 624, 624, 624, 624, 624,
+ 624, 624, 624, 624, 624, 625, 625, 625, 625, 625,
625, 625, 625, 625, 625, 625, 625, 625, 625, 625,
- 625, 625, 625, 625, 625, 625, 625, 625, 1409, 609,
- 429, 581, 1052, 670, 512, 611, 671, 512, 1409, 513,
- 581, 672, 513, 834, 429, 514, 614, 684, 514, 615,
- 684, 686, 522, 693, 686, 522, 688, 340, 688, 688,
- 526, 571, 656, 526, 571, 656, 685, 523, 839, 702,
- 635, 689, 663, 635, 834, 636, 694, 664, 636, 906,
- 531, 529, 530, 531, 693, 579, 1409, 943, 579, 531,
- 529, 530, 531, 637, 580, 1409, 637, 580, 763, 768,
-
- 702, 764, 1211, 429, 1211, 524, 765, 358, 1401, 638,
- 697, 429, 638, 524, 359, 360, 358, 697, 361, 362,
- 837, 363, 698, 359, 360, 364, 1211, 361, 362, 698,
- 363, 699, 869, 639, 364, 700, 639, 705, 699, 695,
- 537, 697, 701, 580, 1409, 365, 580, 642, 697, 1211,
- 642, 837, 705, 698, 365, 769, 1409, 537, 769, 1400,
- 698, 1211, 699, 869, 580, 1409, 701, 580, 1112, 699,
- 901, 770, 1409, 701, 770, 771, 1409, 1211, 771, 772,
- 1409, 833, 772, 773, 1409, 1112, 773, 774, 1409, 1211,
- 774, 589, 1409, 643, 589, 834, 643, 366, 367, 368,
-
- 1211, 369, 645, 370, 371, 645, 366, 367, 368, 871,
- 369, 1050, 370, 371, 723, 559, 723, 723, 1048, 724,
- 775, 1409, 1033, 775, 776, 1409, 834, 776, 777, 1409,
- 749, 777, 778, 1409, 1033, 778, 779, 1409, 1399, 779,
- 871, 725, 780, 1409, 646, 780, 1224, 646, 726, 727,
- 981, 647, 728, 729, 647, 730, 1211, 781, 1409, 731,
- 781, 782, 1409, 982, 782, 783, 1409, 732, 783, 784,
- 1409, 1211, 784, 787, 1409, 1398, 787, 788, 1409, 733,
- 788, 789, 1409, 1409, 789, 791, 1409, 785, 791, 618,
- 1409, 647, 618, 651, 647, 1190, 651, 872, 619, 628,
-
- 628, 628, 628, 628, 628, 628, 628, 628, 629, 1409,
- 652, 629, 654, 652, 1211, 654, 655, 630, 656, 655,
- 891, 656, 811, 1409, 893, 811, 813, 1409, 872, 813,
- 1100, 734, 735, 736, 785, 737, 1211, 738, 739, 559,
- 559, 559, 559, 1101, 740, 814, 1409, 1397, 814, 815,
- 1409, 891, 815, 816, 1409, 893, 816, 817, 1409, 1211,
- 817, 818, 1409, 1396, 818, 673, 741, 820, 673, 675,
- 820, 1188, 675, 742, 743, 1043, 676, 744, 745, 676,
- 746, 1258, 677, 678, 747, 677, 678, 679, 680, 894,
- 679, 680, 748, 822, 684, 824, 822, 684, 824, 686,
-
- 825, 1037, 686, 825, 749, 688, 340, 688, 688, 688,
- 340, 688, 688, 828, 829, 830, 828, 702, 932, 1395,
- 894, 702, 828, 829, 830, 828, 915, 1409, 702, 915,
- 702, 772, 1409, 1189, 772, 773, 1409, 1024, 773, 774,
- 1409, 702, 774, 775, 1409, 935, 775, 902, 702, 932,
- 776, 1409, 702, 776, 1024, 936, 750, 751, 752, 702,
- 753, 702, 754, 755, 1409, 843, 779, 1409, 843, 779,
- 780, 1409, 702, 780, 782, 1409, 935, 782, 783, 1409,
- 1394, 783, 784, 1409, 820, 784, 936, 820, 1211, 799,
- 799, 799, 799, 799, 799, 799, 799, 799, 799, 799,
-
- 799, 799, 799, 799, 799, 799, 799, 799, 799, 799,
- 799, 799, 799, 799, 799, 800, 800, 800, 800, 800,
- 800, 800, 800, 800, 800, 800, 800, 800, 800, 800,
- 800, 800, 800, 800, 800, 800, 800, 800, 800, 800,
- 800, 784, 1409, 1393, 784, 1223, 800, 800, 800, 800,
- 800, 800, 800, 800, 800, 800, 800, 800, 800, 800,
- 800, 800, 800, 800, 800, 800, 800, 800, 800, 800,
- 800, 800, 828, 829, 830, 828, 788, 1409, 969, 788,
- 789, 1409, 929, 789, 873, 929, 844, 845, 874, 1211,
- 791, 1409, 875, 791, 923, 1409, 971, 923, 876, 835,
-
- 725, 1211, 836, 811, 1409, 1218, 811, 726, 727, 969,
- 822, 728, 729, 822, 730, 877, 1392, 930, 731, 874,
- 930, 928, 1409, 875, 928, 824, 732, 971, 824, 876,
- 835, 941, 942, 836, 852, 559, 852, 852, 733, 853,
- 741, 813, 1409, 825, 813, 972, 825, 742, 743, 991,
- 933, 744, 745, 933, 746, 1211, 814, 1409, 747, 814,
- 1039, 854, 815, 1409, 1211, 815, 748, 996, 855, 856,
- 944, 945, 857, 858, 878, 859, 972, 1391, 749, 860,
- 991, 895, 912, 816, 1409, 896, 816, 861, 1002, 897,
- 734, 735, 736, 1216, 737, 898, 738, 739, 996, 862,
-
- 817, 1409, 993, 817, 818, 1409, 1217, 818, 828, 829,
- 830, 828, 899, 987, 988, 1003, 896, 1004, 1022, 1002,
- 897, 828, 829, 830, 828, 994, 898, 1014, 1015, 1390,
- 750, 751, 752, 993, 753, 1027, 754, 755, 997, 1033,
- 1211, 1005, 1034, 1035, 974, 1171, 1003, 1181, 1004, 1022,
- 998, 863, 864, 865, 1056, 866, 1005, 867, 868, 999,
- 702, 974, 1036, 1000, 1024, 896, 1027, 1045, 1046, 997,
- 1033, 900, 1409, 1034, 1035, 923, 1409, 1036, 923, 1060,
- 1061, 998, 896, 915, 1409, 1056, 915, 1025, 995, 929,
- 999, 702, 929, 930, 1001, 1024, 930, 622, 622, 622,
-
- 622, 622, 622, 622, 622, 622, 622, 622, 622, 622,
- 622, 622, 622, 622, 622, 622, 622, 622, 622, 622,
- 622, 622, 622, 625, 625, 625, 625, 625, 625, 625,
625, 625, 625, 625, 625, 625, 625, 625, 625, 625,
- 625, 625, 625, 625, 625, 625, 625, 625, 625, 933,
- 1026, 1389, 933, 1059, 625, 625, 625, 625, 625, 625,
+ 625, 679, 680, 1208, 679, 680, 625, 625, 625, 625,
625, 625, 625, 625, 625, 625, 625, 625, 625, 625,
625, 625, 625, 625, 625, 625, 625, 625, 625, 625,
- 952, 559, 952, 952, 954, 953, 1211, 923, 1409, 973,
- 923, 955, 956, 974, 1385, 957, 958, 975, 959, 1211,
-
- 693, 702, 960, 976, 702, 997, 1211, 954, 400, 810,
- 961, 400, 1062, 945, 955, 956, 1088, 998, 957, 958,
- 977, 959, 962, 1090, 974, 960, 999, 1177, 975, 1384,
- 1001, 693, 702, 961, 976, 702, 997, 928, 1409, 1211,
- 928, 828, 829, 830, 828, 962, 1091, 1088, 998, 1106,
- 1107, 1383, 1110, 1211, 1090, 1133, 1134, 999, 1010, 1043,
- 1010, 1001, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011,
- 1011, 1115, 909, 910, 963, 964, 965, 1091, 966, 978,
- 967, 968, 1041, 1110, 1041, 1382, 1042, 1042, 1042, 1042,
- 1042, 1042, 1042, 1042, 1042, 1023, 1257, 963, 964, 965,
-
- 1369, 966, 1115, 967, 968, 1008, 400, 810, 1211, 400,
- 1258, 1044, 1211, 1009, 1009, 1009, 1009, 1368, 1121, 1122,
- 1123, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009,
- 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009,
- 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1028, 1028, 1121,
- 1122, 1123, 1141, 1225, 1215, 1145, 1121, 1215, 1160, 1029,
- 1029, 1160, 1112, 1073, 1121, 1121, 1147, 1367, 1030, 1030,
- 1074, 1075, 1031, 1032, 1076, 1077, 1366, 1078, 1028, 1028,
- 1148, 1079, 1222, 1141, 1092, 1113, 1145, 1121, 1093, 1080,
- 1029, 1029, 1094, 1112, 1124, 1121, 1121, 1093, 1095, 1030,
-
- 1030, 1081, 1148, 1032, 1032, 1071, 559, 1071, 1071, 1124,
- 1072, 1148, 1224, 1142, 1093, 1096, 1142, 1211, 1143, 1093,
- 1359, 1185, 1142, 1094, 1185, 1142, 1181, 1143, 1211, 1095,
- 1121, 1151, 1073, 1148, 1121, 1358, 1166, 1170, 1121, 1074,
- 1075, 1221, 1211, 1076, 1077, 1229, 1078, 1121, 1114, 1033,
- 1079, 1116, 1116, 1082, 1083, 1084, 1357, 1085, 1080, 1086,
- 1087, 1121, 1151, 1117, 1117, 1121, 1144, 1166, 1170, 1121,
- 1081, 1033, 1118, 1118, 1097, 1144, 1119, 1120, 1121, 1161,
- 1162, 1033, 1116, 1116, 1130, 1130, 1130, 1130, 1130, 1130,
- 1130, 1130, 1130, 1356, 1117, 1117, 1033, 828, 829, 830,
-
- 828, 1173, 1033, 1118, 1118, 1346, 1033, 1120, 1120, 1129,
- 1345, 1129, 1033, 1130, 1130, 1130, 1130, 1130, 1130, 1130,
- 1130, 1130, 1082, 1083, 1084, 1211, 1085, 1033, 1086, 1087,
- 1127, 1167, 1173, 907, 1167, 908, 1168, 1033, 1128, 1128,
- 1128, 1128, 1186, 1187, 1045, 1046, 1128, 1128, 1128, 1128,
- 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128,
- 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128,
- 1128, 1128, 1142, 1172, 1073, 1142, 1033, 1143, 1227, 1228,
- 1033, 1074, 1075, 1073, 1169, 1076, 1077, 1173, 1078, 1033,
- 1074, 1075, 1079, 1176, 1076, 1077, 1193, 1078, 1211, 1149,
-
- 1154, 1079, 1150, 828, 829, 830, 828, 1033, 1344, 1155,
- 1167, 1033, 1081, 1167, 1167, 1168, 1343, 1167, 1173, 1213,
- 1033, 1081, 1340, 1211, 1176, 1144, 1211, 1193, 1230, 1231,
- 1149, 893, 1233, 1150, 1153, 1153, 1153, 1153, 1153, 1153,
- 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153,
- 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153,
- 1211, 1211, 893, 1169, 1082, 1083, 1084, 1169, 1085, 1211,
- 1086, 1087, 1022, 1082, 1083, 1084, 1211, 1085, 1167, 1086,
- 1087, 1167, 1211, 1168, 741, 1199, 829, 1200, 1199, 1211,
- 1033, 742, 743, 1034, 891, 744, 745, 1339, 746, 1264,
-
- 1211, 894, 747, 1022, 1211, 1174, 1024, 1326, 1175, 1211,
- 1179, 1042, 1042, 1042, 1042, 1042, 1042, 1042, 1042, 1042,
- 1325, 1033, 749, 1024, 1034, 891, 741, 1202, 829, 1203,
- 1202, 1169, 894, 742, 743, 1211, 1174, 744, 745, 1175,
- 746, 1211, 1211, 1211, 747, 1205, 829, 1206, 1205, 1324,
- 1211, 1033, 1180, 828, 829, 830, 828, 903, 1239, 1215,
- 1323, 1240, 1215, 895, 749, 1211, 1024, 896, 1211, 1027,
- 904, 897, 1214, 1211, 750, 751, 752, 898, 753, 1211,
- 754, 755, 1033, 1035, 1036, 1321, 1234, 896, 1167, 1025,
- 1166, 1167, 1211, 1213, 899, 1211, 1226, 1024, 896, 1036,
-
- 1027, 1033, 897, 1214, 896, 1211, 1211, 1170, 898, 1317,
- 1211, 1316, 1211, 1033, 1035, 702, 750, 751, 752, 1315,
- 753, 1166, 754, 755, 559, 559, 559, 559, 741, 1212,
- 1033, 1211, 1033, 1033, 1211, 742, 743, 1305, 1170, 744,
- 745, 1169, 746, 1211, 1033, 1302, 747, 1211, 1173, 1211,
- 1211, 741, 1026, 900, 748, 1028, 1176, 1211, 742, 743,
- 1172, 1033, 744, 745, 1033, 746, 749, 1029, 1033, 747,
- 1185, 1028, 1033, 1185, 1173, 1211, 1030, 748, 1301, 1173,
- 1031, 1033, 1300, 1029, 1033, 1167, 1028, 1176, 1167, 749,
- 1213, 1211, 1030, 1298, 1215, 1219, 1032, 1215, 1029, 1033,
-
- 1216, 1215, 1028, 1033, 1215, 1173, 1211, 1030, 1227, 1228,
- 1297, 1032, 1033, 1217, 1029, 1033, 1211, 1296, 750, 751,
- 752, 1295, 753, 1030, 754, 755, 1219, 1032, 1042, 1042,
- 1042, 1042, 1042, 1042, 1042, 1042, 1042, 1214, 1293, 1033,
- 1211, 750, 751, 752, 1211, 753, 1167, 754, 755, 1167,
- 1211, 1213, 1041, 1211, 1041, 1280, 1042, 1042, 1042, 1042,
- 1042, 1042, 1042, 1042, 1042, 1220, 1167, 1279, 1214, 1167,
- 1033, 1213, 741, 1174, 1181, 1033, 1175, 1219, 1278, 742,
- 743, 1220, 1237, 744, 745, 1276, 746, 1211, 1259, 1260,
- 747, 1186, 1187, 1229, 1247, 1024, 1220, 1167, 1179, 1169,
-
- 1167, 1033, 1168, 1033, 1174, 1033, 1033, 1175, 1219, 741,
- 749, 1246, 1220, 1237, 1261, 1231, 742, 743, 1267, 1169,
- 744, 745, 1065, 746, 1211, 1247, 1024, 747, 1167, 1409,
- 1272, 1167, 1033, 1168, 1033, 1180, 1033, 1409, 1409, 1409,
- 1409, 1202, 829, 1203, 1202, 1271, 1270, 749, 1294, 1267,
- 1269, 1230, 1231, 1242, 829, 1200, 1242, 1242, 829, 1200,
- 1242, 1272, 750, 751, 752, 1268, 753, 1033, 754, 755,
- 1242, 829, 1200, 1242, 1243, 829, 1203, 1243, 1266, 1294,
- 1266, 1169, 1243, 829, 1203, 1243, 1243, 829, 1203, 1243,
- 1244, 829, 1206, 1244, 1244, 829, 1206, 1244, 1033, 750,
-
- 751, 752, 1265, 753, 741, 754, 755, 1244, 829, 1206,
- 1244, 742, 743, 1299, 1167, 744, 745, 1167, 746, 1168,
- 1264, 1263, 747, 1242, 829, 1200, 1242, 1250, 1262, 1250,
- 748, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251,
- 1229, 1253, 749, 1253, 1299, 1254, 1254, 1254, 1254, 1254,
- 1254, 1254, 1254, 1254, 1243, 829, 1203, 1243, 1244, 829,
- 1206, 1244, 1303, 1167, 1255, 1304, 1167, 1169, 1168, 1251,
- 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1251, 1167, 1252,
- 1248, 1167, 1246, 1168, 1254, 1254, 1254, 1254, 1254, 1254,
- 1254, 1254, 1254, 1245, 750, 751, 752, 741, 753, 702,
-
- 754, 755, 1241, 1238, 742, 743, 741, 1167, 744, 745,
- 1167, 746, 1168, 742, 743, 747, 1274, 744, 745, 1236,
- 746, 1234, 1167, 1282, 747, 1167, 1282, 1168, 1283, 1286,
- 702, 1275, 1286, 1290, 1287, 749, 1290, 1167, 1291, 1409,
- 1167, 1233, 1168, 1409, 749, 1232, 1318, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1226, 1286, 1225, 1224, 1286,
- 1169, 1287, 1306, 1306, 1341, 1306, 1306, 1283, 1283, 1306,
- 1224, 1223, 1306, 1222, 1283, 1169, 1284, 1318, 1306, 1409,
- 1033, 1306, 1288, 1283, 1221, 1023, 1292, 750, 751, 752,
- 1169, 753, 1218, 754, 755, 1341, 750, 751, 752, 1211,
-
- 753, 1309, 754, 755, 1309, 1309, 1287, 1211, 1309, 1288,
- 1287, 1033, 1210, 1208, 1309, 1284, 1284, 1309, 1309, 1287,
- 1207, 1309, 1284, 1287, 1312, 1312, 1197, 1312, 1312, 1291,
- 1291, 1284, 1312, 1312, 1196, 1312, 1312, 1291, 1291, 1195,
- 1307, 828, 829, 830, 828, 1167, 1167, 1194, 1167, 1167,
- 1168, 1168, 1306, 1308, 1288, 1306, 1190, 1283, 1288, 1189,
- 1309, 1188, 1184, 1309, 1183, 1287, 1182, 1288, 1181, 1312,
- 1306, 1288, 1312, 1306, 1291, 1283, 1043, 1292, 1292, 1306,
- 1310, 1033, 1306, 1033, 1283, 1292, 1292, 1177, 1171, 1165,
- 1164, 1163, 1319, 1311, 1319, 1313, 1320, 1320, 1320, 1320,
-
- 1320, 1320, 1320, 1320, 1320, 1284, 1159, 1158, 1314, 1306,
- 1157, 1156, 1306, 1288, 1283, 1309, 1131, 1121, 1309, 1327,
- 1287, 1121, 1292, 1348, 1152, 1146, 1140, 1328, 1328, 1328,
- 1328, 1139, 1349, 1138, 1137, 1328, 1328, 1328, 1328, 1328,
- 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328,
- 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328, 1328,
- 1328, 1306, 1284, 1136, 1306, 1135, 1283, 1126, 1351, 1125,
- 1309, 1111, 1109, 1309, 1329, 1287, 1329, 1108, 1330, 1330,
- 1330, 1330, 1330, 1330, 1330, 1330, 1330, 1309, 1409, 1103,
- 1309, 1081, 1287, 1102, 1099, 1098, 1409, 1409, 1409, 1409,
-
- 1333, 1089, 1333, 1068, 1334, 1334, 1334, 1334, 1334, 1334,
- 1334, 1334, 1334, 1067, 1284, 1309, 1067, 1066, 1309, 1065,
- 1287, 1064, 1063, 1352, 1312, 1331, 943, 1312, 1057, 1291,
- 1409, 1409, 1409, 1332, 1332, 1332, 1332, 1052, 1051, 1050,
- 1288, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332,
- 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1332,
- 1332, 1332, 1332, 1332, 1332, 1332, 1332, 1049, 1288, 1312,
- 1312, 1048, 1312, 1312, 1291, 1291, 1047, 1354, 1167, 1335,
- 1039, 1167, 1038, 1168, 1037, 1023, 1021, 1336, 1336, 1336,
- 1336, 1020, 1019, 1018, 1017, 1336, 1336, 1336, 1336, 1336,
-
- 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336,
- 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336,
- 1336, 1312, 1292, 1355, 1312, 1016, 1291, 1007, 1006, 992,
- 990, 1169, 1306, 989, 1337, 1306, 1337, 1283, 1338, 1338,
- 1338, 1338, 1338, 1338, 1338, 1338, 1338, 1320, 1320, 1320,
- 1320, 1320, 1320, 1320, 1320, 1320, 1281, 984, 962, 983,
- 1285, 980, 979, 970, 1281, 1281, 1281, 1281, 1285, 1285,
- 1285, 1285, 949, 1289, 1292, 1306, 948, 947, 1306, 946,
- 1283, 1289, 1289, 1289, 1289, 1349, 1281, 1306, 940, 939,
- 1306, 938, 1283, 938, 1281, 1281, 1281, 1281, 937, 692,
-
- 934, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347,
- 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1347,
- 1347, 1347, 1347, 1347, 1347, 1347, 1347, 1306, 1284, 829,
- 1306, 1409, 1283, 1409, 1409, 1409, 1309, 1409, 1409, 1309,
- 1348, 1287, 912, 911, 1330, 1330, 1330, 1330, 1330, 1330,
- 1330, 1330, 1330, 1334, 1334, 1334, 1334, 1334, 1334, 1334,
- 1334, 1334, 1285, 906, 749, 905, 1289, 902, 901, 892,
- 1285, 1285, 1285, 1285, 1289, 1289, 1289, 1289, 890, 889,
- 1284, 1309, 884, 862, 1309, 883, 1287, 880, 879, 1288,
- 1309, 870, 849, 1309, 1309, 1287, 848, 1309, 1312, 1287,
-
- 847, 1312, 846, 1291, 842, 841, 840, 1350, 1350, 1350,
- 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350,
- 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350, 1350,
- 1350, 1350, 1350, 839, 1288, 1312, 708, 702, 1312, 702,
- 1291, 1306, 838, 1352, 1306, 832, 1283, 1351, 823, 821,
- 819, 1355, 819, 657, 1409, 1409, 1409, 1409, 1409, 1409,
- 796, 1353, 1353, 1353, 1353, 1353, 1353, 1353, 1353, 1353,
- 1353, 1353, 1353, 1353, 1353, 1353, 1353, 1353, 1353, 1353,
- 1353, 1353, 1353, 1353, 1353, 1353, 1353, 1312, 1292, 796,
- 1312, 794, 1291, 1306, 1284, 794, 1306, 1309, 1283, 795,
-
- 1309, 793, 1287, 1307, 1338, 1338, 1338, 1338, 1338, 1338,
- 1338, 1338, 1338, 1409, 1309, 757, 1360, 1309, 1312, 1287,
- 757, 1312, 1312, 1291, 722, 1312, 1312, 1291, 722, 1312,
- 720, 1291, 720, 718, 717, 716, 715, 714, 713, 712,
- 1292, 707, 706, 692, 529, 526, 1284, 687, 683, 682,
- 1288, 681, 674, 1409, 305, 1361, 661, 660, 477, 1310,
- 659, 1409, 1409, 1409, 617, 1409, 1409, 1288, 1308, 1409,
- 448, 1292, 1362, 1409, 575, 1292, 1363, 575, 567, 1354,
- 1313, 566, 565, 1306, 1365, 564, 1306, 563, 1283, 1311,
- 562, 561, 557, 1364, 557, 555, 1370, 1314, 1370, 555,
-
- 1371, 1371, 1371, 1371, 1371, 1371, 1371, 1371, 1371, 552,
- 551, 550, 545, 365, 544, 543, 542, 533, 356, 353,
- 527, 526, 345, 520, 519, 518, 517, 516, 515, 509,
- 509, 508, 507, 505, 504, 501, 1284, 1372, 152, 305,
- 481, 481, 479, 479, 480, 1373, 1373, 1373, 1373, 478,
- 476, 288, 473, 1373, 1373, 1373, 1373, 1373, 1373, 1373,
+ 625, 625, 626, 681, 682, 511, 681, 682, 511, 512,
+ 513, 514, 512, 513, 514, 839, 954, 955, 627, 627,
+
+ 627, 627, 627, 627, 627, 627, 627, 627, 627, 627,
+ 627, 627, 627, 627, 627, 627, 627, 627, 627, 627,
+ 627, 627, 627, 627, 515, 688, 839, 515, 688, 627,
+ 627, 627, 627, 627, 627, 627, 627, 627, 627, 627,
+ 627, 627, 627, 627, 627, 627, 627, 627, 627, 627,
+ 627, 627, 627, 627, 627, 649, 1431, 686, 649, 1435,
+ 686, 430, 1129, 582, 1435, 611, 582, 573, 695, 672,
+ 573, 613, 673, 650, 1232, 430, 687, 674, 523, 1129,
+ 527, 523, 616, 527, 699, 617, 690, 340, 690, 690,
+ 1232, 696, 658, 524, 838, 658, 700, 583, 707, 695,
+
+ 1037, 691, 538, 1435, 637, 701, 583, 637, 839, 702,
+ 532, 530, 531, 532, 707, 699, 704, 1037, 638, 538,
+ 650, 638, 844, 532, 530, 531, 532, 700, 842, 581,
+ 1435, 525, 581, 525, 430, 1232, 701, 358, 665, 839,
+ 703, 953, 430, 666, 359, 360, 490, 704, 361, 362,
+ 358, 363, 1430, 699, 936, 364, 697, 359, 360, 842,
+ 1116, 361, 362, 768, 363, 700, 769, 1232, 364, 582,
+ 1435, 770, 582, 1117, 701, 365, 582, 1435, 703, 582,
+ 753, 773, 774, 1435, 699, 774, 582, 1435, 365, 582,
+ 775, 1435, 920, 775, 776, 1435, 700, 776, 777, 1435,
+
+ 1232, 777, 876, 778, 1435, 701, 778, 779, 1435, 703,
+ 779, 591, 1435, 1232, 591, 780, 1435, 878, 780, 781,
+ 1435, 1245, 781, 782, 1435, 639, 782, 1232, 639, 366,
+ 367, 368, 369, 876, 370, 1232, 371, 372, 783, 1435,
+ 879, 783, 366, 367, 368, 369, 899, 370, 878, 371,
+ 372, 726, 561, 726, 726, 1050, 727, 784, 1435, 1232,
+ 784, 785, 1435, 901, 785, 786, 1435, 1232, 786, 787,
+ 1435, 879, 787, 788, 1435, 1232, 788, 899, 728, 789,
+ 1435, 640, 789, 1061, 640, 729, 730, 1056, 641, 731,
+ 732, 641, 733, 1232, 901, 1232, 734, 790, 792, 1435,
+
+ 1046, 792, 793, 1435, 735, 793, 794, 1435, 1435, 794,
+ 796, 1435, 914, 796, 620, 1435, 736, 620, 644, 645,
+ 1036, 644, 645, 621, 630, 630, 630, 630, 630, 630,
+ 630, 630, 630, 631, 1435, 647, 631, 648, 647, 917,
+ 648, 1057, 632, 649, 790, 649, 649, 653, 649, 654,
+ 653, 656, 654, 657, 656, 658, 657, 1232, 658, 816,
+ 1435, 1062, 816, 818, 1435, 675, 818, 915, 675, 916,
+ 737, 738, 739, 740, 1232, 741, 1232, 742, 743, 561,
+ 561, 561, 561, 1429, 744, 819, 1435, 1232, 819, 820,
+ 1435, 1046, 820, 821, 1435, 1196, 821, 822, 1435, 1056,
+
+ 822, 823, 1435, 1232, 823, 825, 745, 677, 825, 678,
+ 677, 1242, 678, 746, 747, 1232, 679, 748, 749, 679,
+ 750, 1232, 680, 681, 751, 680, 681, 682, 827, 902,
+ 682, 827, 752, 686, 829, 688, 686, 829, 688, 830,
+ 924, 1435, 830, 924, 753, 690, 340, 690, 690, 690,
+ 340, 690, 690, 833, 834, 835, 833, 941, 704, 704,
+ 902, 1428, 704, 833, 834, 835, 833, 777, 1435, 1232,
+ 777, 704, 778, 1435, 1052, 778, 779, 1435, 1244, 779,
+ 780, 1435, 1245, 780, 781, 1435, 1427, 781, 941, 704,
+ 704, 784, 1435, 704, 784, 999, 1000, 1065, 754, 755,
+
+ 756, 757, 704, 758, 1232, 759, 760, 1435, 849, 785,
+ 1435, 849, 785, 787, 1435, 1426, 787, 788, 1435, 1246,
+ 788, 789, 1435, 1425, 789, 789, 1435, 825, 789, 1424,
+ 825, 1232, 804, 804, 804, 804, 804, 804, 804, 804,
+ 804, 804, 804, 804, 804, 804, 804, 804, 804, 804,
+ 804, 804, 804, 804, 804, 804, 804, 804, 805, 805,
+ 805, 805, 805, 805, 805, 805, 805, 805, 805, 805,
+ 805, 805, 805, 805, 805, 805, 805, 805, 805, 805,
+ 805, 805, 805, 805, 793, 1435, 1232, 793, 1200, 805,
+ 805, 805, 805, 805, 805, 805, 805, 805, 805, 805,
+
+ 805, 805, 805, 805, 805, 805, 805, 805, 805, 805,
+ 805, 805, 805, 805, 805, 833, 834, 835, 833, 794,
+ 1435, 938, 794, 1423, 938, 827, 880, 903, 827, 704,
+ 881, 904, 850, 851, 882, 905, 796, 1435, 944, 796,
+ 883, 906, 840, 932, 1435, 841, 932, 816, 1435, 1422,
+ 816, 937, 1435, 1209, 937, 704, 728, 884, 907, 1232,
+ 704, 881, 904, 729, 730, 882, 905, 731, 732, 944,
+ 733, 883, 906, 840, 734, 945, 841, 818, 1435, 1202,
+ 818, 939, 735, 1281, 939, 980, 704, 858, 561, 858,
+ 858, 745, 859, 829, 736, 1421, 829, 830, 746, 747,
+
+ 830, 942, 748, 749, 942, 750, 945, 819, 1435, 751,
+ 819, 1420, 820, 1435, 860, 820, 980, 752, 885, 908,
+ 1232, 861, 862, 982, 938, 863, 864, 938, 865, 753,
+ 821, 1435, 866, 821, 822, 1435, 983, 822, 823, 1435,
+ 867, 823, 833, 834, 835, 833, 1003, 1005, 737, 738,
+ 739, 740, 868, 741, 982, 742, 743, 833, 834, 835,
+ 833, 1008, 1014, 1015, 1016, 1026, 1027, 983, 1035, 1419,
+ 1006, 1040, 1046, 1058, 1059, 1074, 1075, 1003, 1005, 1047,
+ 1210, 1048, 1232, 754, 755, 756, 757, 1190, 758, 1070,
+ 759, 760, 1008, 1014, 1015, 1016, 704, 1418, 939, 1035,
+
+ 1017, 939, 1040, 1046, 985, 1037, 869, 870, 871, 872,
+ 1047, 873, 1048, 874, 875, 1435, 1017, 1232, 1049, 1417,
+ 1070, 985, 904, 932, 1435, 1248, 932, 704, 1038, 924,
+ 1435, 1416, 924, 1232, 1049, 1007, 1037, 1077, 955, 904,
+ 624, 624, 624, 624, 624, 624, 624, 624, 624, 624,
+ 624, 624, 624, 624, 624, 624, 624, 624, 624, 624,
+ 624, 624, 624, 624, 624, 624, 627, 627, 627, 627,
+ 627, 627, 627, 627, 627, 627, 627, 627, 627, 627,
+ 627, 627, 627, 627, 627, 627, 627, 627, 627, 627,
+ 627, 627, 942, 1039, 1415, 942, 1232, 627, 627, 627,
+
+ 627, 627, 627, 627, 627, 627, 627, 627, 627, 627,
+ 627, 627, 627, 627, 627, 627, 627, 627, 627, 627,
+ 627, 627, 627, 962, 561, 962, 962, 964, 963, 932,
+ 1435, 1256, 932, 1247, 965, 966, 1123, 1124, 967, 968,
+ 984, 969, 695, 704, 985, 970, 401, 815, 986, 401,
+ 964, 1073, 704, 971, 987, 1104, 1106, 965, 966, 1150,
+ 1151, 967, 968, 1232, 969, 972, 937, 1435, 970, 937,
+ 1107, 988, 1411, 695, 704, 985, 971, 1127, 1132, 986,
+ 1138, 1139, 1009, 704, 1140, 987, 1104, 1106, 972, 833,
+ 834, 835, 833, 1160, 1010, 1410, 1160, 1159, 1161, 1409,
+
+ 1163, 1107, 1138, 1011, 1237, 1255, 1129, 1012, 1127, 1132,
+ 1138, 1138, 1139, 1009, 1141, 1140, 1408, 1238, 1109, 973,
+ 974, 975, 976, 1138, 977, 1010, 978, 979, 1159, 1130,
+ 1141, 1163, 989, 1138, 1011, 1109, 1009, 1129, 1013, 1165,
+ 1395, 1138, 973, 974, 975, 976, 1162, 977, 1010, 978,
+ 979, 1108, 1166, 1166, 1138, 1109, 1138, 1011, 1169, 1110,
+ 1185, 1013, 1232, 1232, 1022, 1111, 1022, 1009, 1023, 1023,
+ 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1189, 1236, 1010,
+ 1204, 1236, 1112, 1166, 1166, 1394, 1109, 1138, 1011, 1169,
+ 1110, 1185, 1013, 1020, 1131, 1179, 1111, 1393, 1179, 1249,
+
+ 1250, 1021, 1021, 1021, 1021, 1036, 1046, 1392, 1189, 1021,
+ 1021, 1021, 1021, 1021, 1021, 1021, 1021, 1021, 1021, 1021,
+ 1021, 1021, 1021, 1021, 1021, 1021, 1021, 1021, 1021, 1021,
+ 1021, 1021, 1021, 1021, 1021, 1041, 1041, 1046, 1133, 1046,
+ 1138, 1046, 1046, 1113, 1138, 1046, 1232, 1042, 1042, 1203,
+ 1134, 1191, 1192, 1138, 1046, 1046, 1043, 1043, 1195, 1135,
+ 1044, 1045, 1232, 1136, 1385, 1192, 1041, 1041, 1232, 1133,
+ 1046, 1138, 1046, 1046, 1046, 1138, 1046, 1160, 1042, 1042,
+ 1160, 1134, 1161, 1192, 1138, 1046, 1046, 1043, 1043, 1195,
+ 1135, 1045, 1045, 1054, 1137, 1054, 1192, 1055, 1055, 1055,
+
+ 1055, 1055, 1055, 1055, 1055, 1055, 1086, 561, 1086, 1086,
+ 1088, 1087, 1205, 401, 815, 1205, 401, 1089, 1090, 1180,
+ 1181, 1091, 1092, 1213, 1093, 1133, 1186, 1280, 1094, 1186,
+ 1162, 1187, 1243, 1088, 1200, 1232, 1095, 1134, 1252, 1253,
+ 1089, 1090, 1281, 1383, 1091, 1092, 1135, 1093, 1096, 1382,
+ 1137, 1094, 1037, 1251, 1213, 1186, 1133, 1372, 1186, 1095,
+ 1187, 833, 834, 835, 833, 1058, 1059, 1232, 1134, 1037,
+ 1046, 1096, 833, 834, 835, 833, 1371, 1135, 1146, 1188,
+ 1146, 1137, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147,
+ 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147,
+
+ 901, 1046, 1097, 1098, 1099, 1100, 1370, 1101, 1188, 1102,
+ 1103, 1055, 1055, 1055, 1055, 1055, 1055, 1055, 1055, 1055,
+ 1220, 834, 1221, 1220, 1369, 1097, 1098, 1099, 1100, 1366,
+ 1101, 901, 1102, 1103, 1144, 1232, 1206, 1207, 1223, 834,
+ 1224, 1223, 1145, 1145, 1145, 1145, 1226, 834, 1227, 1226,
+ 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145,
+ 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145,
+ 1145, 1145, 1145, 1145, 1145, 1145, 1160, 1232, 1192, 1160,
+ 1232, 1161, 1088, 833, 834, 835, 833, 1232, 1232, 1089,
+ 1090, 1235, 1365, 1091, 1092, 1046, 1093, 1232, 1261, 1186,
+
+ 1094, 1262, 1186, 1167, 1234, 899, 1168, 1088, 1172, 1192,
+ 1288, 1040, 902, 1185, 1089, 1090, 1138, 1046, 1091, 1092,
+ 1096, 1093, 1235, 1232, 1236, 1094, 1046, 1236, 1232, 1162,
+ 1282, 1283, 1232, 1173, 1167, 1236, 899, 1168, 1236, 1352,
+ 1232, 1232, 1040, 902, 1185, 1096, 1351, 1138, 1171, 1171,
+ 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171,
+ 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171,
+ 1171, 1171, 1171, 1171, 1097, 1098, 1099, 1100, 1035, 1101,
+ 911, 1102, 1103, 1186, 918, 919, 1186, 1186, 1187, 1350,
+ 1186, 1232, 1234, 912, 1232, 1349, 1232, 1347, 1237, 1097,
+
+ 1098, 1099, 1100, 1232, 1101, 1232, 1102, 1103, 745, 1035,
+ 1193, 1238, 1232, 1194, 1232, 746, 747, 745, 1232, 748,
+ 749, 1343, 750, 1046, 746, 747, 751, 1232, 748, 749,
+ 1232, 750, 704, 1046, 1198, 751, 1188, 1189, 1047, 1037,
+ 1188, 1193, 1341, 1199, 1194, 1048, 753, 1249, 1250, 745,
+ 1232, 1046, 1232, 1331, 1046, 753, 746, 747, 1046, 1191,
+ 748, 749, 1038, 750, 1046, 1232, 1330, 751, 1189, 1047,
+ 1037, 1327, 1232, 1192, 1049, 752, 1048, 1326, 904, 1232,
+ 1200, 1325, 1046, 1186, 1046, 1323, 1186, 753, 1234, 1046,
+ 1049, 1285, 1253, 1046, 1046, 904, 1322, 1046, 1195, 1251,
+
+ 754, 755, 756, 757, 1192, 758, 1046, 759, 760, 754,
+ 755, 756, 757, 1321, 758, 1046, 759, 760, 561, 561,
+ 561, 561, 1232, 1233, 1046, 1046, 1232, 1039, 1046, 1195,
+ 1320, 1232, 1318, 1232, 1232, 1205, 1188, 1046, 1205, 1232,
+ 1232, 754, 755, 756, 757, 745, 758, 1305, 759, 760,
+ 1240, 1235, 746, 747, 903, 1041, 748, 749, 904, 750,
+ 1304, 1046, 905, 751, 1241, 1241, 1232, 1042, 906, 1240,
+ 1232, 752, 1186, 1259, 1270, 1186, 1043, 1187, 1252, 1253,
+ 1044, 1240, 1235, 753, 1037, 907, 1041, 1046, 1046, 904,
+ 1303, 1041, 1046, 905, 1236, 1241, 1241, 1236, 1042, 906,
+
+ 1240, 1302, 1300, 1042, 1259, 1270, 1328, 1043, 1269, 1329,
+ 1046, 1045, 1043, 1232, 1080, 1037, 1045, 704, 1046, 1046,
+ 1295, 1054, 1041, 1054, 1294, 1055, 1055, 1055, 1055, 1055,
+ 1055, 1055, 1055, 1055, 1042, 1293, 1232, 754, 755, 756,
+ 757, 1046, 758, 1043, 759, 760, 908, 1045, 1186, 1292,
+ 1290, 1186, 1186, 1234, 1291, 1186, 1296, 1234, 745, 1206,
+ 1207, 1223, 834, 1224, 1223, 746, 747, 1290, 1289, 748,
+ 749, 1319, 750, 1324, 1288, 1193, 751, 704, 1194, 1265,
+ 834, 1221, 1265, 1287, 1198, 1291, 1286, 1296, 1046, 1344,
+ 1251, 1046, 1265, 834, 1221, 1265, 753, 1284, 1232, 1232,
+
+ 1278, 1188, 1319, 1275, 1324, 1188, 1193, 1367, 704, 1194,
+ 1055, 1055, 1055, 1055, 1055, 1055, 1055, 1055, 1055, 1046,
+ 1344, 745, 1046, 1265, 834, 1221, 1265, 1271, 746, 747,
+ 1046, 1186, 748, 749, 1186, 750, 1187, 1269, 1367, 751,
+ 1266, 834, 1224, 1266, 1268, 1264, 1263, 1199, 1260, 1232,
+ 754, 755, 756, 757, 1435, 758, 1258, 759, 760, 753,
+ 1256, 1046, 1435, 1435, 1435, 1435, 1266, 834, 1224, 1266,
+ 1046, 1266, 834, 1224, 1266, 1267, 834, 1227, 1267, 1267,
+ 834, 1227, 1267, 1255, 1188, 1267, 834, 1227, 1267, 1186,
+ 1186, 745, 1186, 1186, 1187, 1187, 1254, 1248, 746, 747,
+
+ 1247, 1046, 748, 749, 1246, 750, 1245, 1186, 1245, 751,
+ 1186, 1244, 1187, 754, 755, 756, 757, 752, 758, 1243,
+ 759, 760, 1265, 834, 1221, 1265, 1273, 1435, 1273, 753,
+ 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1276,
+ 1242, 1276, 1188, 1277, 1277, 1277, 1277, 1277, 1277, 1277,
+ 1277, 1277, 1266, 834, 1224, 1266, 1267, 834, 1227, 1267,
+ 1298, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274, 1274,
+ 1186, 1036, 1239, 1186, 1186, 1187, 1232, 1186, 1232, 1187,
+ 1231, 1229, 1228, 754, 755, 756, 757, 1218, 758, 1217,
+ 759, 760, 1277, 1277, 1277, 1277, 1277, 1277, 1277, 1277,
+
+ 1277, 745, 1186, 1216, 1215, 1186, 1214, 1187, 746, 747,
+ 745, 1307, 748, 749, 1307, 750, 1308, 746, 747, 751,
+ 1210, 748, 749, 1299, 750, 1209, 1311, 1188, 751, 1311,
+ 1315, 1312, 1208, 1315, 1204, 1316, 1435, 1186, 1203, 753,
+ 1186, 1435, 1187, 1202, 1435, 1435, 1435, 1435, 753, 1435,
+ 1435, 1435, 1435, 1311, 1186, 1188, 1311, 1186, 1312, 1187,
+ 1332, 1201, 1200, 1332, 1309, 1308, 1332, 1332, 1056, 1332,
+ 1332, 1308, 1308, 1332, 1046, 1046, 1332, 1335, 1308, 1313,
+ 1335, 1335, 1312, 1317, 1335, 1196, 1312, 1190, 1184, 1183,
+ 1188, 1182, 1178, 754, 755, 756, 757, 1177, 758, 1176,
+
+ 759, 760, 754, 755, 756, 757, 1313, 758, 1175, 759,
+ 760, 1335, 1335, 1309, 1335, 1335, 1312, 1312, 1338, 1309,
+ 1309, 1338, 1338, 1316, 1174, 1338, 1309, 1316, 1338, 1148,
+ 1313, 1338, 1138, 1316, 1313, 1333, 1338, 1138, 1170, 1338,
+ 1164, 1316, 833, 834, 835, 833, 1158, 1157, 1334, 833,
+ 834, 835, 833, 1156, 1155, 1332, 1154, 1153, 1332, 1152,
+ 1308, 1143, 1142, 1335, 1313, 1313, 1335, 1338, 1312, 1435,
+ 1338, 1317, 1316, 1128, 1336, 1317, 1126, 1435, 1435, 1435,
+ 1435, 1317, 1125, 1332, 1122, 1119, 1332, 1337, 1308, 1317,
+ 1096, 1332, 1118, 1115, 1332, 1345, 1308, 1345, 1339, 1346,
+
+ 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1309, 1332,
+ 1114, 1340, 1332, 1105, 1308, 1083, 1313, 1082, 1335, 1082,
+ 1317, 1335, 1355, 1312, 1355, 1081, 1356, 1356, 1356, 1356,
+ 1356, 1356, 1356, 1356, 1356, 1335, 1374, 1080, 1335, 1079,
+ 1312, 1078, 953, 1076, 1375, 1071, 1435, 1435, 1359, 1435,
+ 1359, 1066, 1360, 1360, 1360, 1360, 1360, 1360, 1360, 1360,
+ 1360, 1065, 1309, 1342, 1332, 1064, 1063, 1332, 1062, 1308,
+ 1061, 1377, 1335, 1338, 1353, 1335, 1338, 1312, 1316, 1060,
+ 1052, 1051, 1354, 1354, 1354, 1354, 1050, 1036, 1313, 1034,
+ 1354, 1354, 1354, 1354, 1354, 1354, 1354, 1354, 1354, 1354,
+
+ 1354, 1354, 1354, 1354, 1354, 1354, 1354, 1354, 1354, 1354,
+ 1354, 1354, 1354, 1354, 1354, 1354, 1033, 1309, 1335, 1032,
+ 1031, 1335, 1030, 1312, 1029, 1378, 1380, 1338, 1357, 1028,
+ 1338, 1019, 1316, 1018, 1004, 1002, 1358, 1358, 1358, 1358,
+ 1001, 998, 995, 972, 1358, 1358, 1358, 1358, 1358, 1358,
+ 1358, 1358, 1358, 1358, 1358, 1358, 1358, 1358, 1358, 1358,
+ 1358, 1358, 1358, 1358, 1358, 1358, 1358, 1358, 1358, 1358,
+ 994, 1313, 1338, 1186, 991, 1338, 1186, 1316, 1187, 990,
+ 1381, 1186, 1361, 981, 1186, 959, 1187, 958, 957, 956,
+ 1362, 1362, 1362, 1362, 950, 949, 948, 947, 1362, 1362,
+
+ 1362, 1362, 1362, 1362, 1362, 1362, 1362, 1362, 1362, 1362,
+ 1362, 1362, 1362, 1362, 1362, 1362, 1362, 1362, 1362, 1362,
+ 1362, 1362, 1362, 1362, 1338, 1317, 1188, 1338, 947, 1316,
+ 946, 694, 943, 834, 1188, 1332, 1435, 1363, 1332, 1363,
+ 1308, 1364, 1364, 1364, 1364, 1364, 1364, 1364, 1364, 1364,
+ 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1306,
+ 1435, 1435, 1435, 1310, 1435, 1435, 921, 1306, 1306, 1306,
+ 1306, 1310, 1310, 1310, 1310, 920, 1314, 1317, 1332, 917,
+ 914, 1332, 753, 1308, 1314, 1314, 1314, 1314, 1375, 1306,
+ 1332, 913, 910, 1332, 1384, 1308, 909, 1306, 1306, 1306,
+
+ 1306, 900, 898, 897, 1373, 1373, 1373, 1373, 1373, 1373,
1373, 1373, 1373, 1373, 1373, 1373, 1373, 1373, 1373, 1373,
- 1373, 1373, 1373, 1373, 1373, 1373, 1373, 1373, 1373, 1309,
- 468, 467, 1309, 464, 1287, 455, 451, 448, 1409, 395,
- 393, 391, 1374, 226, 1374, 224, 1375, 1375, 1375, 1375,
-
- 1375, 1375, 1375, 1375, 1375, 219, 379, 375, 377, 375,
- 373, 372, 207, 201, 204, 203, 194, 203, 339, 338,
+ 1373, 1373, 1373, 1373, 1373, 1373, 1373, 1373, 1373, 1373,
+ 1332, 1309, 894, 1332, 891, 1308, 868, 890, 887, 1335,
+ 886, 877, 1335, 1374, 1312, 855, 854, 1356, 1356, 1356,
+ 1356, 1356, 1356, 1356, 1356, 1356, 1360, 1360, 1360, 1360,
+ 1360, 1360, 1360, 1360, 1360, 1310, 853, 852, 848, 1314,
+ 847, 846, 845, 1310, 1310, 1310, 1310, 1314, 1314, 1314,
+ 1314, 844, 710, 1309, 1335, 704, 704, 1335, 843, 1312,
+ 837, 828, 1313, 1335, 826, 824, 1335, 1335, 1312, 824,
+
+ 1335, 1338, 1312, 659, 1338, 1435, 1316, 1435, 1435, 1435,
+ 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376,
+ 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376,
+ 1376, 1376, 1376, 1376, 1376, 1376, 1435, 1313, 1338, 1435,
+ 801, 1338, 801, 1316, 1332, 799, 1378, 1332, 799, 1308,
+ 1377, 800, 798, 1435, 1381, 762, 762, 725, 725, 723,
+ 723, 721, 720, 719, 1379, 1379, 1379, 1379, 1379, 1379,
+ 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379,
+ 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379,
+ 1338, 1317, 718, 1338, 717, 1316, 1332, 1309, 716, 1332,
+
+ 1335, 1308, 715, 1335, 714, 1312, 1333, 1364, 1364, 1364,
+ 1364, 1364, 1364, 1364, 1364, 1364, 709, 1335, 708, 1386,
+ 1335, 1338, 1312, 694, 1338, 1338, 1316, 530, 1338, 1338,
+ 1316, 527, 1338, 689, 1316, 685, 684, 683, 676, 1435,
+ 305, 663, 662, 1317, 478, 661, 1435, 1435, 1435, 1309,
+ 619, 1435, 1435, 1313, 1435, 449, 1435, 577, 1387, 577,
+ 569, 568, 1336, 567, 566, 565, 564, 563, 559, 559,
+ 1313, 1334, 557, 557, 1317, 1388, 554, 553, 1317, 1389,
+ 552, 549, 1380, 1339, 546, 365, 1332, 1391, 545, 1332,
+ 544, 1308, 1337, 543, 534, 356, 1390, 353, 528, 1396,
+
+ 1340, 1396, 527, 1397, 1397, 1397, 1397, 1397, 1397, 1397,
+ 1397, 1397, 345, 521, 520, 519, 518, 517, 516, 510,
+ 510, 509, 508, 506, 505, 502, 152, 305, 482, 482,
+ 480, 480, 481, 479, 477, 288, 474, 469, 468, 1309,
+ 1398, 465, 456, 452, 449, 1435, 396, 394, 1399, 1399,
+ 1399, 1399, 392, 226, 224, 219, 1399, 1399, 1399, 1399,
+ 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399,
+ 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399, 1399,
+ 1399, 1399, 1335, 380, 376, 1335, 378, 1312, 376, 374,
+ 373, 207, 201, 204, 203, 1400, 194, 1400, 203, 1401,
+
+ 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1401, 339, 338,
337, 336, 335, 334, 321, 152, 299, 297, 294, 293,
- 275, 274, 1288, 1376, 238, 125, 124, 238, 104, 223,
- 222, 1377, 1377, 1377, 1377, 212, 211, 210, 209, 1377,
- 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377,
- 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377, 1377,
- 1377, 1377, 1377, 1377, 1377, 1312, 204, 203, 1312, 199,
- 1291, 187, 185, 183, 181, 180, 179, 178, 1378, 172,
- 1378, 170, 1379, 1379, 1379, 1379, 1379, 1379, 1379, 1379,
-
- 1379, 160, 159, 156, 127, 125, 124, 108, 1409, 102,
- 102, 38, 38, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1292, 1380,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1381, 1381, 1381,
- 1381, 1409, 1409, 1409, 1409, 1381, 1381, 1381, 1381, 1381,
- 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381,
- 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381, 1381,
- 1381, 1306, 1409, 1409, 1306, 1409, 1283, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1371, 1371,
- 1371, 1371, 1371, 1371, 1371, 1371, 1371, 1409, 1309, 1409,
-
- 1409, 1309, 1409, 1287, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1375, 1375, 1375, 1375, 1375,
- 1375, 1375, 1375, 1375, 1284, 1386, 1386, 1386, 1386, 1386,
- 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386,
- 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386, 1386,
- 1386, 1288, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387,
- 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387,
- 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1312, 1409,
- 1409, 1312, 1409, 1291, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1379, 1379, 1379, 1379, 1379,
-
- 1379, 1379, 1379, 1379, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1292, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388,
- 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388,
- 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 38, 38,
- 38, 38, 38, 38, 38, 38, 38, 38, 38, 39,
- 39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
- 56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
- 56, 68, 68, 68, 68, 68, 68, 68, 68, 68,
-
- 68, 68, 73, 73, 73, 73, 73, 73, 73, 73,
- 73, 73, 73, 42, 42, 42, 42, 42, 42, 42,
- 42, 42, 42, 42, 90, 90, 90, 90, 90, 90,
- 90, 90, 90, 90, 90, 94, 94, 94, 94, 94,
- 94, 94, 94, 94, 94, 94, 98, 98, 98, 98,
- 98, 98, 98, 98, 98, 98, 98, 101, 101, 101,
- 101, 101, 101, 101, 101, 101, 101, 101, 114, 114,
- 114, 114, 114, 114, 114, 114, 114, 114, 114, 128,
- 128, 128, 128, 161, 161, 1409, 161, 161, 161, 161,
- 161, 161, 161, 161, 171, 1409, 1409, 1409, 171, 171,
-
- 171, 171, 171, 171, 171, 176, 176, 1409, 1409, 176,
- 176, 176, 176, 176, 176, 176, 182, 182, 1409, 182,
- 182, 182, 182, 182, 182, 182, 182, 184, 1409, 1409,
- 1409, 184, 184, 184, 184, 184, 184, 184, 186, 1409,
- 1409, 1409, 186, 186, 186, 186, 186, 186, 186, 188,
- 1409, 1409, 1409, 188, 188, 188, 188, 188, 188, 188,
- 205, 205, 1409, 205, 205, 205, 205, 205, 205, 205,
- 205, 213, 213, 1409, 213, 213, 213, 213, 213, 213,
- 213, 213, 218, 218, 1409, 218, 218, 218, 218, 218,
- 218, 218, 218, 228, 228, 1409, 228, 228, 228, 228,
-
- 228, 228, 228, 228, 243, 243, 243, 243, 243, 243,
- 243, 243, 243, 243, 243, 128, 128, 128, 128, 277,
- 277, 1409, 277, 277, 277, 277, 277, 277, 277, 277,
- 279, 279, 1409, 279, 279, 279, 279, 279, 279, 279,
- 279, 287, 287, 1409, 287, 287, 287, 287, 287, 287,
- 287, 287, 292, 292, 1409, 292, 292, 292, 292, 292,
- 292, 292, 292, 295, 1409, 295, 295, 296, 296, 298,
- 1409, 1409, 298, 298, 171, 1409, 1409, 1409, 171, 171,
- 171, 171, 171, 171, 171, 176, 176, 1409, 1409, 176,
- 176, 176, 176, 176, 176, 176, 182, 182, 1409, 182,
-
- 182, 182, 182, 182, 182, 182, 182, 184, 1409, 1409,
- 1409, 184, 184, 184, 184, 184, 184, 184, 186, 1409,
- 1409, 1409, 186, 186, 186, 186, 186, 186, 186, 188,
- 1409, 1409, 1409, 188, 188, 188, 188, 188, 188, 188,
- 343, 343, 343, 343, 343, 343, 343, 343, 343, 343,
- 343, 352, 352, 1409, 352, 352, 352, 352, 352, 352,
- 352, 352, 374, 374, 1409, 374, 374, 374, 374, 374,
- 374, 374, 374, 376, 376, 1409, 376, 376, 376, 376,
- 376, 376, 376, 376, 218, 218, 1409, 218, 218, 218,
- 218, 218, 218, 218, 218, 228, 228, 1409, 228, 228,
-
- 228, 228, 228, 228, 228, 228, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 287, 287, 1409,
- 287, 287, 287, 287, 287, 287, 287, 287, 475, 475,
- 1409, 475, 475, 475, 475, 475, 475, 475, 475, 277,
- 277, 1409, 277, 277, 277, 277, 277, 277, 277, 277,
- 477, 477, 1409, 477, 477, 477, 477, 477, 477, 477,
- 477, 482, 482, 1409, 482, 482, 482, 482, 482, 482,
- 482, 482, 483, 483, 1409, 483, 483, 483, 483, 483,
- 483, 483, 483, 484, 484, 484, 484, 484, 1409, 484,
- 484, 484, 484, 484, 485, 485, 1409, 485, 485, 485,
-
- 485, 485, 485, 485, 485, 487, 487, 488, 488, 488,
- 488, 1409, 488, 488, 488, 488, 488, 488, 489, 489,
- 489, 489, 489, 1409, 489, 489, 489, 489, 489, 521,
- 521, 1409, 521, 521, 521, 521, 521, 521, 521, 521,
- 343, 343, 343, 343, 343, 343, 343, 343, 343, 343,
- 343, 528, 528, 1409, 528, 528, 528, 528, 528, 528,
- 528, 528, 553, 553, 1409, 553, 553, 553, 553, 553,
- 553, 553, 553, 554, 554, 1409, 554, 554, 554, 554,
- 554, 554, 554, 554, 556, 556, 1409, 556, 556, 556,
- 556, 556, 556, 556, 556, 560, 560, 1409, 560, 560,
-
- 560, 560, 560, 560, 560, 560, 568, 568, 1409, 568,
- 568, 568, 568, 568, 568, 568, 568, 228, 228, 1409,
- 228, 228, 228, 228, 228, 228, 228, 228, 606, 606,
- 1409, 606, 606, 606, 606, 606, 606, 606, 606, 608,
- 608, 1409, 608, 608, 608, 608, 608, 608, 608, 608,
- 616, 616, 1409, 616, 616, 616, 616, 616, 616, 616,
- 616, 649, 649, 1409, 649, 649, 649, 649, 649, 649,
- 649, 649, 653, 653, 1409, 653, 653, 653, 653, 653,
- 653, 653, 653, 475, 475, 1409, 475, 475, 475, 475,
- 475, 475, 475, 475, 657, 657, 1409, 657, 657, 657,
-
- 657, 657, 657, 657, 657, 658, 658, 1409, 658, 658,
- 658, 658, 658, 658, 658, 658, 484, 484, 484, 484,
- 484, 484, 484, 484, 484, 484, 484, 298, 298, 488,
- 488, 488, 488, 488, 488, 488, 488, 488, 488, 488,
- 489, 489, 489, 489, 489, 489, 489, 489, 489, 489,
- 489, 608, 608, 1409, 608, 608, 608, 608, 608, 608,
- 608, 608, 521, 521, 1409, 521, 521, 521, 521, 521,
- 521, 521, 521, 690, 690, 1409, 690, 690, 690, 690,
- 690, 690, 690, 690, 553, 553, 1409, 553, 553, 553,
- 553, 553, 553, 553, 553, 719, 719, 1409, 719, 719,
-
- 719, 719, 719, 719, 719, 719, 721, 721, 1409, 721,
- 721, 721, 721, 721, 721, 721, 721, 756, 756, 1409,
- 756, 756, 756, 756, 756, 756, 756, 756, 568, 568,
- 1409, 568, 568, 568, 568, 568, 568, 568, 568, 758,
- 758, 1409, 758, 758, 758, 758, 758, 758, 758, 758,
- 759, 759, 1409, 759, 759, 759, 759, 759, 759, 759,
- 759, 228, 228, 1409, 228, 228, 228, 228, 228, 228,
- 228, 228, 760, 760, 1409, 760, 760, 760, 760, 760,
- 760, 760, 760, 761, 761, 1409, 761, 761, 761, 761,
- 761, 761, 761, 761, 762, 762, 1409, 762, 762, 762,
-
- 762, 762, 762, 762, 762, 766, 766, 1409, 766, 766,
- 766, 766, 766, 766, 766, 766, 786, 786, 1409, 786,
- 786, 786, 786, 786, 786, 786, 786, 790, 790, 1409,
- 790, 790, 790, 790, 790, 790, 790, 790, 606, 606,
- 1409, 606, 606, 606, 606, 606, 606, 606, 606, 792,
- 792, 1409, 792, 792, 792, 792, 792, 792, 792, 792,
- 797, 797, 1409, 797, 797, 797, 797, 797, 797, 797,
- 797, 798, 798, 798, 798, 798, 798, 798, 798, 798,
- 798, 798, 801, 801, 801, 801, 801, 801, 801, 801,
- 801, 801, 801, 802, 802, 802, 802, 802, 802, 802,
-
- 802, 802, 802, 802, 803, 803, 1409, 803, 803, 803,
- 803, 803, 803, 803, 803, 804, 804, 1409, 804, 804,
- 804, 804, 804, 804, 804, 804, 805, 805, 1409, 805,
- 805, 805, 805, 805, 805, 805, 805, 806, 806, 1409,
- 806, 806, 806, 806, 806, 806, 806, 806, 807, 807,
- 1409, 807, 807, 807, 807, 807, 807, 807, 807, 808,
- 808, 1409, 808, 808, 808, 808, 808, 808, 808, 808,
- 649, 649, 1409, 649, 649, 649, 649, 649, 649, 649,
- 649, 809, 809, 1409, 809, 809, 809, 809, 809, 809,
- 809, 809, 653, 653, 1409, 653, 653, 653, 653, 653,
-
- 653, 653, 653, 810, 1409, 810, 810, 810, 810, 810,
- 810, 810, 810, 810, 792, 792, 1409, 792, 792, 792,
- 792, 792, 792, 792, 792, 521, 521, 521, 521, 521,
- 521, 521, 521, 521, 521, 521, 826, 826, 1409, 826,
- 826, 826, 826, 826, 826, 826, 826, 850, 850, 1409,
- 850, 850, 850, 850, 850, 850, 850, 850, 719, 719,
- 1409, 719, 719, 719, 719, 719, 719, 719, 719, 851,
- 851, 1409, 851, 851, 851, 851, 851, 851, 851, 851,
- 721, 721, 1409, 721, 721, 721, 721, 721, 721, 721,
- 721, 913, 913, 1409, 913, 913, 913, 913, 913, 913,
-
- 913, 913, 756, 756, 1409, 756, 756, 756, 756, 756,
- 756, 756, 756, 758, 758, 1409, 758, 758, 758, 758,
- 758, 758, 758, 758, 759, 759, 1409, 759, 759, 759,
- 759, 759, 759, 759, 759, 760, 760, 1409, 760, 760,
- 760, 760, 760, 760, 760, 760, 761, 761, 1409, 761,
- 761, 761, 761, 761, 761, 761, 761, 762, 762, 1409,
- 762, 762, 762, 762, 762, 762, 762, 762, 766, 766,
- 1409, 766, 766, 766, 766, 766, 766, 766, 766, 916,
- 916, 1409, 916, 916, 916, 916, 916, 916, 916, 916,
- 917, 917, 1409, 917, 917, 917, 917, 917, 917, 917,
-
- 917, 918, 918, 1409, 918, 918, 918, 918, 918, 918,
- 918, 918, 919, 919, 1409, 919, 919, 919, 919, 919,
- 919, 919, 919, 920, 920, 1409, 920, 920, 920, 920,
- 920, 920, 920, 920, 921, 921, 1409, 921, 921, 921,
- 921, 921, 921, 921, 921, 786, 786, 1409, 786, 786,
- 786, 786, 786, 786, 786, 786, 922, 922, 1409, 922,
- 922, 922, 922, 922, 922, 922, 922, 790, 790, 1409,
- 790, 790, 790, 790, 790, 790, 790, 790, 924, 924,
- 1409, 924, 924, 924, 924, 924, 924, 924, 924, 798,
- 798, 798, 798, 798, 798, 798, 798, 798, 798, 798,
-
- 801, 801, 801, 801, 801, 801, 801, 801, 801, 801,
- 801, 802, 802, 802, 802, 802, 802, 802, 802, 802,
- 802, 802, 803, 803, 1409, 803, 803, 803, 803, 803,
- 803, 803, 803, 804, 804, 1409, 804, 804, 804, 804,
- 804, 804, 804, 804, 805, 805, 1409, 805, 805, 805,
- 805, 805, 805, 805, 805, 806, 806, 1409, 806, 806,
- 806, 806, 806, 806, 806, 806, 807, 807, 1409, 807,
- 807, 807, 807, 807, 807, 807, 807, 808, 808, 1409,
+ 275, 274, 238, 125, 124, 238, 104, 223, 222, 212,
+ 211, 210, 209, 204, 203, 1313, 1402, 199, 187, 185,
+ 183, 181, 180, 179, 1403, 1403, 1403, 1403, 178, 172,
+ 170, 160, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403,
+ 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403,
+ 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1338, 159,
+ 156, 1338, 127, 1316, 125, 124, 108, 1435, 102, 102,
+ 38, 1404, 38, 1404, 1435, 1405, 1405, 1405, 1405, 1405,
+
+ 1405, 1405, 1405, 1405, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1317, 1406, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1407, 1407, 1407, 1407, 1435, 1435, 1435, 1435, 1407, 1407,
+ 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407,
+ 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407, 1407,
+ 1407, 1407, 1407, 1407, 1332, 1435, 1435, 1332, 1435, 1308,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397, 1397,
+
+ 1435, 1335, 1435, 1435, 1335, 1435, 1312, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1401, 1401,
+ 1401, 1401, 1401, 1401, 1401, 1401, 1401, 1309, 1412, 1412,
+ 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412,
+ 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412,
+ 1412, 1412, 1412, 1412, 1313, 1413, 1413, 1413, 1413, 1413,
+ 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413,
+ 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413,
+ 1413, 1338, 1435, 1435, 1338, 1435, 1316, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1405, 1405,
+
+ 1405, 1405, 1405, 1405, 1405, 1405, 1405, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1317, 1414, 1414, 1414, 1414, 1414,
+ 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414,
+ 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414,
+ 1414, 38, 38, 38, 38, 38, 38, 38, 38, 38,
+ 38, 38, 39, 39, 39, 39, 39, 39, 39, 39,
+ 39, 39, 39, 56, 56, 56, 56, 56, 56, 56,
+ 56, 56, 56, 56, 68, 68, 68, 68, 68, 68,
+
+ 68, 68, 68, 68, 68, 73, 73, 73, 73, 73,
+ 73, 73, 73, 73, 73, 73, 42, 42, 42, 42,
+ 42, 42, 42, 42, 42, 42, 42, 90, 90, 90,
+ 90, 90, 90, 90, 90, 90, 90, 90, 94, 94,
+ 94, 94, 94, 94, 94, 94, 94, 94, 94, 98,
+ 98, 98, 98, 98, 98, 98, 98, 98, 98, 98,
+ 101, 101, 101, 101, 101, 101, 101, 101, 101, 101,
+ 101, 114, 114, 114, 114, 114, 114, 114, 114, 114,
+ 114, 114, 128, 128, 128, 128, 161, 161, 1435, 161,
+ 161, 161, 161, 161, 161, 161, 161, 171, 1435, 1435,
+
+ 1435, 171, 171, 171, 171, 171, 171, 171, 176, 176,
+ 1435, 1435, 176, 176, 176, 176, 176, 176, 176, 182,
+ 182, 1435, 182, 182, 182, 182, 182, 182, 182, 182,
+ 184, 1435, 1435, 1435, 184, 184, 184, 184, 184, 184,
+ 184, 186, 1435, 1435, 1435, 186, 186, 186, 186, 186,
+ 186, 186, 188, 1435, 1435, 1435, 188, 188, 188, 188,
+ 188, 188, 188, 205, 205, 1435, 205, 205, 205, 205,
+ 205, 205, 205, 205, 213, 213, 1435, 213, 213, 213,
+ 213, 213, 213, 213, 213, 218, 218, 1435, 218, 218,
+ 218, 218, 218, 218, 218, 218, 228, 228, 1435, 228,
+
+ 228, 228, 228, 228, 228, 228, 228, 243, 243, 243,
+ 243, 243, 243, 243, 243, 243, 243, 243, 128, 128,
+ 128, 128, 277, 277, 1435, 277, 277, 277, 277, 277,
+ 277, 277, 277, 279, 279, 1435, 279, 279, 279, 279,
+ 279, 279, 279, 279, 287, 287, 1435, 287, 287, 287,
+ 287, 287, 287, 287, 287, 292, 292, 1435, 292, 292,
+ 292, 292, 292, 292, 292, 292, 295, 1435, 295, 295,
+ 296, 296, 298, 1435, 1435, 298, 298, 171, 1435, 1435,
+ 1435, 171, 171, 171, 171, 171, 171, 171, 176, 176,
+ 1435, 1435, 176, 176, 176, 176, 176, 176, 176, 182,
+
+ 182, 1435, 182, 182, 182, 182, 182, 182, 182, 182,
+ 184, 1435, 1435, 1435, 184, 184, 184, 184, 184, 184,
+ 184, 186, 1435, 1435, 1435, 186, 186, 186, 186, 186,
+ 186, 186, 188, 1435, 1435, 1435, 188, 188, 188, 188,
+ 188, 188, 188, 343, 343, 343, 343, 343, 343, 343,
+ 343, 343, 343, 343, 352, 352, 1435, 352, 352, 352,
+ 352, 352, 352, 352, 352, 375, 375, 1435, 375, 375,
+ 375, 375, 375, 375, 375, 375, 377, 377, 1435, 377,
+ 377, 377, 377, 377, 377, 377, 377, 218, 218, 1435,
+ 218, 218, 218, 218, 218, 218, 218, 218, 228, 228,
+
+ 1435, 228, 228, 228, 228, 228, 228, 228, 228, 401,
+ 401, 401, 401, 401, 401, 401, 401, 401, 401, 401,
+ 287, 287, 1435, 287, 287, 287, 287, 287, 287, 287,
+ 287, 476, 476, 1435, 476, 476, 476, 476, 476, 476,
+ 476, 476, 277, 277, 1435, 277, 277, 277, 277, 277,
+ 277, 277, 277, 478, 478, 1435, 478, 478, 478, 478,
+ 478, 478, 478, 478, 483, 483, 1435, 483, 483, 483,
+ 483, 483, 483, 483, 483, 484, 484, 1435, 484, 484,
+ 484, 484, 484, 484, 484, 484, 485, 485, 485, 485,
+ 485, 1435, 485, 485, 485, 485, 485, 486, 486, 1435,
+
+ 486, 486, 486, 486, 486, 486, 486, 486, 488, 488,
+ 489, 489, 489, 489, 1435, 489, 489, 489, 489, 489,
+ 489, 490, 490, 490, 490, 490, 1435, 490, 490, 490,
+ 490, 490, 522, 522, 1435, 522, 522, 522, 522, 522,
+ 522, 522, 522, 343, 343, 343, 343, 343, 343, 343,
+ 343, 343, 343, 343, 529, 529, 1435, 529, 529, 529,
+ 529, 529, 529, 529, 529, 555, 555, 1435, 555, 555,
+ 555, 555, 555, 555, 555, 555, 556, 556, 1435, 556,
+ 556, 556, 556, 556, 556, 556, 556, 558, 558, 1435,
+ 558, 558, 558, 558, 558, 558, 558, 558, 562, 562,
+
+ 1435, 562, 562, 562, 562, 562, 562, 562, 562, 570,
+ 570, 1435, 570, 570, 570, 570, 570, 570, 570, 570,
+ 228, 228, 1435, 228, 228, 228, 228, 228, 228, 228,
+ 228, 608, 608, 1435, 608, 608, 608, 608, 608, 608,
+ 608, 608, 610, 610, 1435, 610, 610, 610, 610, 610,
+ 610, 610, 610, 618, 618, 1435, 618, 618, 618, 618,
+ 618, 618, 618, 618, 651, 651, 1435, 651, 651, 651,
+ 651, 651, 651, 651, 651, 655, 655, 1435, 655, 655,
+ 655, 655, 655, 655, 655, 655, 476, 476, 1435, 476,
+ 476, 476, 476, 476, 476, 476, 476, 659, 659, 1435,
+
+ 659, 659, 659, 659, 659, 659, 659, 659, 660, 660,
+ 1435, 660, 660, 660, 660, 660, 660, 660, 660, 485,
+ 485, 485, 485, 485, 485, 485, 485, 485, 485, 485,
+ 298, 298, 489, 489, 489, 489, 489, 489, 489, 489,
+ 489, 489, 489, 490, 490, 490, 490, 490, 490, 490,
+ 490, 490, 490, 490, 610, 610, 1435, 610, 610, 610,
+ 610, 610, 610, 610, 610, 522, 522, 1435, 522, 522,
+ 522, 522, 522, 522, 522, 522, 692, 692, 1435, 692,
+ 692, 692, 692, 692, 692, 692, 692, 555, 555, 1435,
+ 555, 555, 555, 555, 555, 555, 555, 555, 722, 722,
+
+ 1435, 722, 722, 722, 722, 722, 722, 722, 722, 724,
+ 724, 1435, 724, 724, 724, 724, 724, 724, 724, 724,
+ 761, 761, 1435, 761, 761, 761, 761, 761, 761, 761,
+ 761, 570, 570, 1435, 570, 570, 570, 570, 570, 570,
+ 570, 570, 763, 763, 1435, 763, 763, 763, 763, 763,
+ 763, 763, 763, 764, 764, 1435, 764, 764, 764, 764,
+ 764, 764, 764, 764, 228, 228, 1435, 228, 228, 228,
+ 228, 228, 228, 228, 228, 765, 765, 1435, 765, 765,
+ 765, 765, 765, 765, 765, 765, 766, 766, 1435, 766,
+ 766, 766, 766, 766, 766, 766, 766, 767, 767, 1435,
+
+ 767, 767, 767, 767, 767, 767, 767, 767, 771, 771,
+ 1435, 771, 771, 771, 771, 771, 771, 771, 771, 791,
+ 791, 1435, 791, 791, 791, 791, 791, 791, 791, 791,
+ 795, 795, 1435, 795, 795, 795, 795, 795, 795, 795,
+ 795, 608, 608, 1435, 608, 608, 608, 608, 608, 608,
+ 608, 608, 797, 797, 1435, 797, 797, 797, 797, 797,
+ 797, 797, 797, 802, 802, 1435, 802, 802, 802, 802,
+ 802, 802, 802, 802, 803, 803, 803, 803, 803, 803,
+ 803, 803, 803, 803, 803, 806, 806, 806, 806, 806,
+ 806, 806, 806, 806, 806, 806, 807, 807, 807, 807,
+
+ 807, 807, 807, 807, 807, 807, 807, 808, 808, 1435,
808, 808, 808, 808, 808, 808, 808, 808, 809, 809,
- 1409, 809, 809, 809, 809, 809, 809, 809, 809, 810,
-
- 1409, 810, 810, 810, 810, 810, 810, 810, 810, 810,
- 931, 931, 1409, 931, 931, 931, 931, 931, 931, 931,
- 931, 950, 950, 1409, 950, 950, 950, 950, 950, 950,
- 950, 950, 951, 951, 1409, 951, 951, 951, 951, 951,
- 951, 951, 951, 1040, 1409, 1040, 1040, 1053, 1053, 1409,
- 1053, 1053, 1053, 1053, 1053, 1053, 1053, 1053, 916, 916,
- 1409, 916, 916, 916, 916, 916, 916, 916, 916, 917,
- 917, 1409, 917, 917, 917, 917, 917, 917, 917, 917,
- 918, 918, 1409, 918, 918, 918, 918, 918, 918, 918,
- 918, 919, 919, 1409, 919, 919, 919, 919, 919, 919,
-
- 919, 919, 920, 920, 1409, 920, 920, 920, 920, 920,
- 920, 920, 920, 921, 921, 1409, 921, 921, 921, 921,
- 921, 921, 921, 921, 922, 922, 1409, 922, 922, 922,
- 922, 922, 922, 922, 922, 1054, 1054, 1054, 1054, 1054,
- 1054, 1054, 1054, 1054, 1054, 1054, 1055, 1055, 1409, 1055,
- 1055, 1055, 1055, 1055, 1055, 1055, 1055, 1069, 1069, 1409,
- 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1070, 1070,
- 1409, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1191,
- 1191, 1409, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191,
- 1192, 1192, 1409, 1192, 1192, 1192, 1192, 1192, 1192, 1192,
-
- 1192, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198,
- 1198, 1198, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201,
- 1201, 1201, 1201, 1204, 1204, 1204, 1204, 1204, 1204, 1204,
- 1204, 1204, 1204, 1204, 1209, 1209, 1409, 1209, 1209, 1209,
- 1209, 1209, 1209, 1209, 1209, 1040, 1409, 1040, 1409, 1040,
- 1040, 1235, 1235, 1409, 1235, 1235, 1235, 1235, 1235, 1235,
- 1235, 1235, 1249, 1409, 1249, 1249, 1256, 1409, 1256, 1256,
- 1281, 1281, 1409, 1281, 1281, 1281, 1281, 1281, 1281, 1281,
- 1281, 1285, 1285, 1409, 1285, 1285, 1285, 1285, 1285, 1285,
- 1285, 1285, 1289, 1289, 1409, 1289, 1289, 1289, 1289, 1289,
-
- 1289, 1289, 1289, 1322, 1409, 1322, 1322, 37, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
-
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409
+ 1435, 809, 809, 809, 809, 809, 809, 809, 809, 810,
+ 810, 1435, 810, 810, 810, 810, 810, 810, 810, 810,
+ 811, 811, 1435, 811, 811, 811, 811, 811, 811, 811,
+ 811, 812, 812, 1435, 812, 812, 812, 812, 812, 812,
+ 812, 812, 813, 813, 1435, 813, 813, 813, 813, 813,
+ 813, 813, 813, 651, 651, 1435, 651, 651, 651, 651,
+ 651, 651, 651, 651, 814, 814, 1435, 814, 814, 814,
+ 814, 814, 814, 814, 814, 655, 655, 1435, 655, 655,
+
+ 655, 655, 655, 655, 655, 655, 815, 1435, 815, 815,
+ 815, 815, 815, 815, 815, 815, 815, 797, 797, 1435,
+ 797, 797, 797, 797, 797, 797, 797, 797, 522, 522,
+ 522, 522, 522, 522, 522, 522, 522, 522, 522, 831,
+ 831, 1435, 831, 831, 831, 831, 831, 831, 831, 831,
+ 856, 856, 1435, 856, 856, 856, 856, 856, 856, 856,
+ 856, 722, 722, 1435, 722, 722, 722, 722, 722, 722,
+ 722, 722, 857, 857, 1435, 857, 857, 857, 857, 857,
+ 857, 857, 857, 724, 724, 1435, 724, 724, 724, 724,
+ 724, 724, 724, 724, 922, 922, 1435, 922, 922, 922,
+
+ 922, 922, 922, 922, 922, 761, 761, 1435, 761, 761,
+ 761, 761, 761, 761, 761, 761, 763, 763, 1435, 763,
+ 763, 763, 763, 763, 763, 763, 763, 764, 764, 1435,
+ 764, 764, 764, 764, 764, 764, 764, 764, 765, 765,
+ 1435, 765, 765, 765, 765, 765, 765, 765, 765, 766,
+ 766, 1435, 766, 766, 766, 766, 766, 766, 766, 766,
+ 767, 767, 1435, 767, 767, 767, 767, 767, 767, 767,
+ 767, 771, 771, 1435, 771, 771, 771, 771, 771, 771,
+ 771, 771, 925, 925, 1435, 925, 925, 925, 925, 925,
+ 925, 925, 925, 926, 926, 1435, 926, 926, 926, 926,
+
+ 926, 926, 926, 926, 927, 927, 1435, 927, 927, 927,
+ 927, 927, 927, 927, 927, 928, 928, 1435, 928, 928,
+ 928, 928, 928, 928, 928, 928, 929, 929, 1435, 929,
+ 929, 929, 929, 929, 929, 929, 929, 930, 930, 1435,
+ 930, 930, 930, 930, 930, 930, 930, 930, 791, 791,
+ 1435, 791, 791, 791, 791, 791, 791, 791, 791, 931,
+ 931, 1435, 931, 931, 931, 931, 931, 931, 931, 931,
+ 795, 795, 1435, 795, 795, 795, 795, 795, 795, 795,
+ 795, 933, 933, 1435, 933, 933, 933, 933, 933, 933,
+ 933, 933, 803, 803, 803, 803, 803, 803, 803, 803,
+
+ 803, 803, 803, 806, 806, 806, 806, 806, 806, 806,
+ 806, 806, 806, 806, 807, 807, 807, 807, 807, 807,
+ 807, 807, 807, 807, 807, 808, 808, 1435, 808, 808,
+ 808, 808, 808, 808, 808, 808, 809, 809, 1435, 809,
+ 809, 809, 809, 809, 809, 809, 809, 810, 810, 1435,
+ 810, 810, 810, 810, 810, 810, 810, 810, 811, 811,
+ 1435, 811, 811, 811, 811, 811, 811, 811, 811, 812,
+ 812, 1435, 812, 812, 812, 812, 812, 812, 812, 812,
+ 813, 813, 1435, 813, 813, 813, 813, 813, 813, 813,
+ 813, 814, 814, 1435, 814, 814, 814, 814, 814, 814,
+
+ 814, 814, 815, 1435, 815, 815, 815, 815, 815, 815,
+ 815, 815, 815, 940, 940, 1435, 940, 940, 940, 940,
+ 940, 940, 940, 940, 960, 960, 1435, 960, 960, 960,
+ 960, 960, 960, 960, 960, 961, 961, 1435, 961, 961,
+ 961, 961, 961, 961, 961, 961, 1053, 1435, 1053, 1053,
+ 1067, 1067, 1435, 1067, 1067, 1067, 1067, 1067, 1067, 1067,
+ 1067, 925, 925, 1435, 925, 925, 925, 925, 925, 925,
+ 925, 925, 926, 926, 1435, 926, 926, 926, 926, 926,
+ 926, 926, 926, 927, 927, 1435, 927, 927, 927, 927,
+ 927, 927, 927, 927, 928, 928, 1435, 928, 928, 928,
+
+ 928, 928, 928, 928, 928, 929, 929, 1435, 929, 929,
+ 929, 929, 929, 929, 929, 929, 930, 930, 1435, 930,
+ 930, 930, 930, 930, 930, 930, 930, 931, 931, 1435,
+ 931, 931, 931, 931, 931, 931, 931, 931, 1068, 1068,
+ 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1068, 1069,
+ 1069, 1435, 1069, 1069, 1069, 1069, 1069, 1069, 1069, 1069,
+ 1084, 1084, 1435, 1084, 1084, 1084, 1084, 1084, 1084, 1084,
+ 1084, 1085, 1085, 1435, 1085, 1085, 1085, 1085, 1085, 1085,
+ 1085, 1085, 1211, 1211, 1435, 1211, 1211, 1211, 1211, 1211,
+ 1211, 1211, 1211, 1212, 1212, 1435, 1212, 1212, 1212, 1212,
+
+ 1212, 1212, 1212, 1212, 1219, 1219, 1219, 1219, 1219, 1219,
+ 1219, 1219, 1219, 1219, 1219, 1222, 1222, 1222, 1222, 1222,
+ 1222, 1222, 1222, 1222, 1222, 1222, 1225, 1225, 1225, 1225,
+ 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1230, 1230, 1435,
+ 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1230, 1053, 1435,
+ 1053, 1435, 1053, 1053, 1257, 1257, 1435, 1257, 1257, 1257,
+ 1257, 1257, 1257, 1257, 1257, 1272, 1435, 1272, 1272, 1279,
+ 1435, 1279, 1279, 1306, 1306, 1435, 1306, 1306, 1306, 1306,
+ 1306, 1306, 1306, 1306, 1310, 1310, 1435, 1310, 1310, 1310,
+ 1310, 1310, 1310, 1310, 1310, 1314, 1314, 1435, 1314, 1314,
+
+ 1314, 1314, 1314, 1314, 1314, 1314, 1348, 1435, 1348, 1348,
+ 37, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435
} ;
-static const flex_int16_t yy_chk[7335] =
+static const flex_int16_t yy_chk[7441] =
{ 0,
0, 0, 3, 3, 4, 4, 5, 5, 5, 5,
5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
@@ -1762,17 +1787,17 @@ static const flex_int16_t yy_chk[7335] =
5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
- 5, 5, 7, 7, 7, 7, 8, 8, 8, 8,
- 15, 9, 10, 25, 25, 25, 25, 7, 27, 27,
- 27, 8, 26, 26, 26, 26, 248, 25, 25, 9,
- 10, 28, 28, 28, 29, 30, 26, 26, 33, 33,
- 248, 29, 30, 34, 34, 15, 1074, 48, 29, 30,
- 48, 15, 368, 15, 368, 7, 9, 10, 59, 8,
- 258, 59, 40, 40, 40, 40, 25, 55, 25, 258,
-
- 67, 40, 55, 67, 1592, 26, 15, 26, 40, 1074,
- 66, 66, 15, 66, 15, 87, 87, 9, 10, 11,
- 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
+ 5, 5, 5, 5, 5, 7, 7, 7, 7, 8,
+ 8, 8, 8, 15, 9, 10, 25, 25, 25, 25,
+ 7, 27, 27, 27, 8, 26, 26, 26, 26, 248,
+ 25, 25, 9, 10, 28, 28, 28, 29, 30, 26,
+ 26, 33, 33, 248, 29, 30, 34, 34, 15, 1089,
+ 48, 29, 30, 48, 15, 368, 15, 368, 7, 9,
+ 10, 59, 8, 258, 59, 40, 40, 40, 40, 25,
+
+ 55, 25, 258, 67, 40, 55, 67, 1618, 26, 15,
+ 26, 40, 1089, 66, 66, 15, 66, 15, 87, 87,
+ 9, 10, 11, 11, 11, 11, 11, 11, 11, 11,
11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
@@ -1785,8 +1810,8 @@ static const flex_int16_t yy_chk[7335] =
11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
- 11, 11, 11, 11, 11, 13, 13, 13, 13, 13,
- 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
+ 11, 13, 13, 13, 13, 13, 13, 13, 13, 13,
13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
@@ -1799,16 +1824,16 @@ static const flex_int16_t yy_chk[7335] =
13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
- 13, 16, 43, 43, 43, 43, 232, 281, 281, 44,
- 44, 44, 44, 232, 305, 305, 43, 43, 44, 44,
- 86, 86, 86, 86, 44, 44, 60, 60, 60, 60,
-
- 60, 60, 60, 99, 99, 1081, 16, 91, 91, 91,
- 91, 1587, 16, 267, 16, 104, 104, 1586, 99, 103,
- 103, 103, 103, 104, 267, 43, 108, 108, 108, 108,
- 104, 111, 44, 126, 111, 108, 126, 16, 127, 318,
- 318, 127, 108, 16, 1081, 16, 19, 19, 19, 19,
- 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 16, 43, 43, 43, 43, 232, 281, 281, 44, 44,
+ 44, 44, 232, 305, 305, 43, 43, 44, 44, 86,
+
+ 86, 86, 86, 44, 44, 60, 60, 60, 60, 60,
+ 60, 60, 99, 99, 1096, 16, 91, 91, 91, 91,
+ 1613, 16, 267, 16, 104, 104, 1612, 99, 103, 103,
+ 103, 103, 104, 267, 43, 108, 108, 108, 108, 104,
+ 111, 44, 126, 111, 108, 126, 16, 127, 318, 318,
+ 127, 108, 16, 1096, 16, 19, 19, 19, 19, 19,
19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
@@ -1821,8 +1846,8 @@ static const flex_int16_t yy_chk[7335] =
19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
- 19, 19, 21, 21, 21, 21, 21, 21, 21, 21,
- 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 21, 21, 21, 21, 21, 21,
21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
@@ -1834,8 +1859,10 @@ static const flex_int16_t yy_chk[7335] =
21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
- 21, 21, 21, 21, 21, 21, 21, 21, 23, 23,
+ 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
+ 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
+ 21, 21, 21, 23, 23, 23, 23, 23, 23, 23,
23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
@@ -1844,717 +1871,726 @@ static const flex_int16_t yy_chk[7335] =
23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
+
23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
-
23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
- 23, 23, 23, 23, 45, 45, 45, 45, 136, 122,
- 135, 136, 358, 122, 113, 52, 122, 130, 52, 45,
- 130, 113, 53, 53, 53, 53, 113, 83, 113, 52,
- 83, 53, 53, 84, 84, 84, 84, 138, 53, 422,
- 138, 83, 83, 358, 1134, 148, 138, 97, 148, 736,
- 97, 736, 135, 122, 148, 246, 1575, 45, 51, 51,
- 51, 51, 51, 51, 51, 51, 51, 51, 52, 51,
- 130, 150, 51, 51, 51, 53, 163, 84, 247, 163,
-
- 83, 161, 161, 161, 161, 150, 84, 113, 84, 97,
- 109, 109, 109, 109, 51, 113, 164, 439, 97, 164,
- 151, 151, 151, 151, 109, 109, 1086, 246, 165, 51,
- 51, 165, 422, 51, 51, 51, 51, 51, 51, 51,
- 97, 51, 1486, 166, 51, 51, 166, 51, 51, 51,
- 247, 51, 51, 51, 51, 51, 51, 51, 107, 51,
- 51, 51, 1134, 109, 150, 107, 110, 110, 110, 110,
- 107, 1464, 150, 151, 107, 107, 107, 167, 107, 315,
- 167, 110, 115, 115, 115, 115, 116, 116, 116, 116,
- 315, 168, 439, 107, 168, 116, 116, 115, 219, 219,
-
- 169, 116, 116, 169, 369, 369, 107, 117, 117, 117,
- 117, 222, 222, 219, 123, 123, 123, 123, 176, 110,
- 1455, 176, 117, 123, 123, 177, 222, 1086, 177, 123,
- 123, 397, 397, 235, 149, 115, 235, 149, 492, 116,
- 132, 132, 132, 132, 132, 132, 132, 132, 149, 544,
- 193, 134, 155, 193, 155, 134, 155, 134, 134, 155,
- 117, 121, 121, 134, 121, 193, 238, 123, 134, 238,
- 259, 134, 162, 259, 147, 162, 147, 121, 147, 147,
- 147, 147, 147, 147, 147, 147, 147, 149, 121, 360,
- 162, 162, 162, 162, 121, 121, 155, 361, 121, 259,
-
- 121, 544, 121, 193, 121, 121, 121, 415, 121, 263,
- 121, 259, 263, 492, 121, 190, 190, 190, 190, 121,
- 360, 121, 619, 121, 154, 154, 121, 154, 361, 154,
- 619, 121, 152, 152, 152, 152, 121, 154, 154, 403,
- 189, 152, 152, 189, 154, 268, 268, 268, 152, 156,
- 156, 156, 156, 403, 189, 189, 157, 1408, 156, 156,
- 157, 196, 157, 157, 203, 156, 415, 203, 157, 191,
- 191, 191, 191, 157, 419, 415, 157, 194, 194, 194,
- 194, 196, 407, 239, 191, 152, 239, 199, 199, 199,
- 199, 239, 196, 189, 200, 200, 200, 200, 201, 201,
-
- 201, 201, 156, 206, 206, 206, 206, 209, 209, 209,
- 209, 229, 196, 216, 229, 251, 251, 203, 251, 226,
- 226, 194, 207, 207, 207, 207, 230, 226, 1407, 230,
- 194, 199, 194, 221, 226, 221, 273, 545, 545, 273,
- 199, 216, 199, 419, 221, 229, 221, 276, 221, 207,
- 276, 412, 216, 230, 229, 221, 207, 207, 216, 233,
- 207, 207, 237, 207, 407, 233, 423, 207, 254, 230,
- 233, 254, 216, 237, 406, 230, 233, 260, 406, 237,
- 260, 221, 233, 216, 260, 307, 307, 207, 307, 216,
- 883, 412, 290, 237, 260, 290, 233, 240, 240, 240,
-
- 240, 290, 254, 321, 237, 322, 321, 233, 322, 414,
- 237, 254, 240, 233, 241, 241, 241, 241, 242, 242,
- 242, 242, 244, 244, 244, 244, 423, 302, 424, 241,
- 302, 256, 323, 242, 256, 323, 302, 244, 307, 207,
- 207, 207, 883, 207, 324, 207, 207, 324, 1406, 414,
- 240, 245, 245, 245, 245, 610, 610, 325, 256, 261,
- 325, 304, 304, 304, 304, 261, 245, 241, 495, 445,
- 261, 242, 256, 445, 256, 244, 261, 1405, 270, 494,
- 256, 312, 261, 326, 312, 327, 326, 328, 327, 270,
- 328, 329, 424, 1089, 329, 270, 261, 330, 331, 332,
-
- 330, 331, 332, 424, 245, 249, 249, 261, 249, 270,
- 532, 764, 426, 261, 304, 312, 333, 270, 1089, 333,
- 270, 249, 388, 630, 312, 388, 270, 340, 340, 340,
- 340, 630, 249, 341, 341, 341, 341, 798, 249, 249,
- 342, 532, 249, 342, 249, 798, 249, 495, 249, 249,
- 249, 494, 249, 1163, 249, 342, 312, 344, 249, 389,
- 344, 312, 389, 249, 1404, 249, 390, 249, 391, 390,
- 249, 391, 344, 426, 497, 249, 345, 345, 345, 345,
- 249, 250, 250, 250, 250, 250, 250, 250, 250, 250,
- 250, 764, 250, 342, 347, 250, 250, 250, 300, 300,
-
- 300, 300, 300, 300, 300, 300, 300, 1403, 392, 393,
- 344, 392, 393, 394, 347, 395, 394, 250, 395, 765,
- 345, 351, 351, 351, 351, 347, 752, 396, 752, 345,
- 396, 345, 450, 250, 498, 450, 250, 250, 250, 250,
- 250, 250, 250, 451, 250, 347, 451, 250, 250, 905,
- 250, 250, 250, 497, 250, 250, 250, 250, 250, 250,
- 250, 1163, 250, 250, 250, 309, 309, 578, 309, 378,
- 378, 378, 378, 1106, 378, 408, 408, 578, 408, 409,
- 409, 309, 409, 765, 535, 401, 401, 401, 401, 362,
- 537, 309, 309, 362, 309, 1104, 309, 362, 309, 309,
-
- 401, 905, 309, 362, 309, 309, 309, 420, 309, 309,
- 309, 309, 309, 498, 309, 535, 436, 436, 309, 436,
- 362, 537, 538, 309, 362, 309, 425, 309, 362, 452,
- 309, 865, 452, 865, 362, 309, 429, 429, 401, 429,
- 309, 310, 310, 310, 310, 310, 310, 310, 310, 310,
- 310, 453, 310, 538, 453, 310, 310, 310, 1106, 539,
- 402, 402, 402, 402, 420, 670, 670, 420, 404, 404,
- 404, 404, 496, 438, 438, 402, 438, 310, 454, 362,
- 626, 454, 438, 404, 626, 1108, 425, 425, 425, 429,
- 539, 455, 456, 310, 455, 456, 310, 310, 310, 310,
-
- 310, 310, 310, 457, 310, 663, 457, 310, 310, 1104,
- 310, 310, 310, 402, 310, 310, 310, 310, 310, 310,
- 310, 404, 310, 310, 310, 353, 353, 353, 353, 801,
- 405, 691, 405, 801, 355, 355, 355, 355, 458, 405,
- 496, 458, 416, 416, 405, 416, 405, 356, 356, 356,
- 356, 496, 353, 411, 411, 459, 411, 1402, 459, 353,
- 353, 355, 691, 353, 353, 417, 353, 1108, 355, 355,
- 353, 416, 355, 355, 356, 355, 693, 413, 413, 355,
- 413, 356, 356, 416, 663, 356, 356, 411, 356, 695,
- 353, 417, 356, 965, 417, 965, 411, 1136, 417, 355,
-
- 447, 447, 732, 447, 413, 405, 695, 693, 417, 447,
- 431, 449, 356, 405, 449, 732, 449, 802, 413, 460,
- 413, 1135, 460, 696, 418, 802, 413, 431, 431, 431,
- 431, 431, 431, 431, 431, 461, 462, 427, 461, 462,
- 737, 737, 353, 353, 353, 1099, 353, 1401, 353, 353,
- 418, 355, 355, 355, 696, 355, 418, 355, 355, 463,
- 464, 418, 463, 464, 356, 356, 356, 418, 356, 427,
- 356, 356, 434, 418, 465, 983, 434, 465, 434, 434,
- 427, 939, 466, 1136, 434, 466, 427, 418, 467, 434,
- 470, 467, 434, 470, 468, 939, 471, 468, 418, 471,
-
- 427, 763, 446, 472, 418, 421, 472, 474, 427, 1400,
- 474, 427, 468, 1135, 446, 748, 446, 427, 446, 446,
- 446, 446, 446, 446, 446, 446, 446, 983, 748, 1099,
- 421, 421, 421, 421, 421, 421, 421, 421, 421, 421,
- 421, 421, 421, 421, 421, 421, 421, 421, 421, 421,
- 421, 421, 421, 421, 421, 421, 442, 476, 479, 468,
- 476, 479, 753, 753, 442, 442, 442, 442, 501, 763,
- 763, 501, 442, 442, 442, 442, 442, 442, 442, 442,
- 442, 442, 442, 442, 442, 442, 442, 442, 442, 442,
- 442, 442, 442, 442, 442, 442, 442, 442, 443, 443,
+ 23, 23, 45, 45, 45, 45, 136, 122, 135, 136,
+ 358, 122, 113, 52, 122, 130, 52, 45, 130, 113,
+ 53, 53, 53, 53, 113, 83, 113, 52, 83, 53,
+ 53, 84, 84, 84, 84, 138, 53, 423, 138, 83,
+ 83, 358, 1601, 148, 138, 97, 148, 739, 97, 739,
+ 135, 122, 148, 246, 1123, 45, 51, 51, 51, 51,
+
+ 51, 51, 51, 51, 51, 51, 52, 51, 130, 150,
+ 51, 51, 51, 53, 163, 84, 247, 163, 83, 161,
+ 161, 161, 161, 150, 84, 113, 84, 97, 109, 109,
+ 109, 109, 51, 113, 164, 440, 97, 164, 151, 151,
+ 151, 151, 109, 109, 1103, 246, 165, 51, 51, 165,
+ 423, 51, 51, 51, 51, 51, 51, 51, 97, 51,
+ 1115, 166, 51, 51, 166, 51, 51, 51, 247, 51,
+ 51, 51, 51, 51, 51, 51, 107, 51, 51, 51,
+ 1123, 109, 150, 107, 110, 110, 110, 110, 107, 1512,
+ 150, 151, 107, 107, 107, 167, 107, 315, 167, 110,
+
+ 115, 115, 115, 115, 116, 116, 116, 116, 315, 168,
+ 440, 107, 168, 116, 116, 115, 219, 219, 169, 116,
+ 116, 169, 370, 370, 107, 117, 117, 117, 117, 222,
+ 222, 219, 123, 123, 123, 123, 176, 110, 1103, 176,
+ 117, 123, 123, 177, 222, 1115, 177, 123, 123, 398,
+ 398, 235, 149, 115, 235, 149, 493, 116, 132, 132,
+ 132, 132, 132, 132, 132, 132, 149, 1126, 193, 134,
+ 155, 193, 155, 134, 155, 134, 134, 155, 117, 121,
+ 121, 134, 121, 193, 238, 123, 134, 238, 259, 134,
+ 162, 259, 147, 162, 147, 121, 147, 147, 147, 147,
+
+ 147, 147, 147, 147, 147, 149, 121, 360, 162, 162,
+ 162, 162, 121, 121, 155, 361, 121, 259, 121, 1490,
+ 121, 193, 121, 121, 121, 416, 121, 263, 121, 259,
+ 263, 493, 121, 190, 190, 190, 190, 121, 360, 121,
+ 621, 121, 154, 154, 121, 154, 361, 154, 621, 121,
+ 152, 152, 152, 152, 121, 154, 154, 404, 189, 152,
+ 152, 189, 154, 268, 268, 268, 152, 156, 156, 156,
+ 156, 404, 189, 189, 157, 1126, 156, 156, 157, 196,
+ 157, 157, 203, 156, 416, 203, 157, 191, 191, 191,
+ 191, 157, 420, 416, 157, 194, 194, 194, 194, 196,
+
+ 408, 239, 191, 152, 239, 199, 199, 199, 199, 239,
+ 196, 189, 200, 200, 200, 200, 201, 201, 201, 201,
+ 156, 206, 206, 206, 206, 209, 209, 209, 209, 229,
+ 196, 216, 229, 251, 251, 203, 251, 226, 226, 194,
+ 207, 207, 207, 207, 230, 226, 580, 230, 194, 199,
+ 194, 221, 226, 221, 273, 495, 580, 273, 199, 216,
+ 199, 420, 221, 229, 221, 276, 221, 207, 276, 413,
+ 216, 230, 229, 221, 207, 207, 216, 233, 207, 207,
+ 237, 207, 408, 233, 424, 207, 254, 230, 233, 254,
+ 216, 237, 407, 230, 233, 260, 407, 237, 260, 221,
+
+ 233, 216, 260, 307, 307, 207, 307, 216, 1481, 413,
+ 290, 237, 260, 290, 233, 240, 240, 240, 240, 290,
+ 254, 321, 237, 322, 321, 233, 322, 495, 237, 254,
+ 240, 233, 241, 241, 241, 241, 242, 242, 242, 242,
+ 244, 244, 244, 244, 424, 302, 415, 241, 302, 256,
+ 323, 242, 256, 323, 302, 244, 307, 496, 1124, 207,
+ 207, 207, 207, 756, 207, 756, 207, 207, 240, 245,
+ 245, 245, 245, 546, 546, 324, 256, 261, 324, 304,
+ 304, 304, 304, 261, 245, 241, 415, 446, 261, 242,
+ 256, 446, 256, 244, 261, 545, 270, 533, 256, 312,
+
+ 261, 325, 312, 326, 325, 327, 326, 270, 327, 328,
+ 427, 769, 328, 270, 261, 329, 330, 331, 329, 330,
+ 331, 632, 245, 249, 249, 261, 249, 270, 533, 632,
+ 498, 261, 304, 312, 332, 270, 496, 332, 270, 249,
+ 333, 1434, 312, 333, 270, 340, 340, 340, 340, 545,
+ 249, 341, 341, 341, 341, 628, 249, 249, 342, 628,
+ 249, 342, 249, 1433, 249, 697, 249, 249, 249, 1124,
+ 249, 427, 249, 342, 312, 344, 249, 389, 344, 312,
+ 389, 249, 697, 249, 390, 249, 391, 390, 249, 391,
+ 344, 769, 499, 249, 345, 345, 345, 345, 249, 250,
+
+ 250, 250, 250, 250, 250, 250, 250, 250, 250, 498,
+ 250, 342, 347, 250, 250, 250, 300, 300, 300, 300,
+ 300, 300, 300, 300, 300, 890, 392, 393, 344, 392,
+ 393, 394, 347, 395, 394, 250, 395, 770, 345, 351,
+ 351, 351, 351, 347, 425, 396, 1093, 345, 396, 345,
+ 397, 250, 665, 397, 250, 250, 250, 250, 250, 250,
+ 250, 451, 250, 347, 451, 250, 250, 1093, 250, 250,
+ 250, 499, 250, 250, 250, 250, 250, 250, 250, 890,
+ 250, 250, 250, 309, 309, 913, 309, 379, 379, 379,
+ 379, 806, 379, 409, 409, 806, 409, 410, 410, 309,
+
+ 410, 770, 536, 402, 402, 402, 402, 362, 425, 309,
+ 309, 362, 309, 1182, 309, 362, 309, 309, 402, 425,
+ 309, 362, 309, 309, 309, 421, 309, 309, 309, 309,
+ 309, 665, 309, 536, 437, 437, 309, 437, 362, 913,
+ 538, 309, 362, 309, 426, 309, 362, 452, 309, 871,
+ 452, 871, 362, 309, 430, 430, 402, 430, 309, 310,
+ 310, 310, 310, 310, 310, 310, 310, 310, 310, 453,
+ 310, 538, 453, 310, 310, 310, 1151, 539, 403, 403,
+ 403, 403, 421, 612, 612, 421, 405, 405, 405, 405,
+ 497, 439, 439, 403, 439, 310, 540, 672, 672, 362,
+
+ 439, 405, 741, 741, 426, 426, 426, 430, 539, 454,
+ 455, 310, 454, 455, 310, 310, 310, 310, 310, 310,
+ 310, 456, 310, 1182, 456, 310, 310, 540, 310, 310,
+ 310, 403, 310, 310, 310, 310, 310, 310, 310, 405,
+ 310, 310, 310, 353, 353, 353, 353, 1164, 406, 693,
+ 406, 1164, 355, 355, 355, 355, 457, 406, 497, 457,
+ 417, 417, 406, 417, 406, 356, 356, 356, 356, 497,
+ 353, 412, 412, 458, 412, 1151, 458, 353, 353, 355,
+ 693, 353, 353, 418, 353, 1120, 355, 355, 353, 417,
+ 355, 355, 356, 355, 735, 414, 414, 355, 414, 356,
+
+ 356, 417, 695, 356, 356, 412, 356, 735, 353, 418,
+ 356, 752, 418, 975, 412, 975, 418, 355, 448, 448,
+ 1094, 448, 414, 406, 752, 459, 418, 448, 459, 450,
+ 356, 406, 450, 695, 450, 432, 414, 460, 414, 461,
+ 460, 994, 461, 462, 414, 463, 462, 1432, 463, 698,
+ 428, 419, 432, 432, 432, 432, 432, 432, 432, 432,
+ 758, 758, 353, 353, 353, 353, 699, 353, 867, 353,
+ 353, 355, 355, 355, 355, 948, 355, 419, 355, 355,
+ 698, 867, 428, 419, 356, 356, 356, 356, 419, 356,
+ 948, 356, 356, 428, 419, 994, 701, 699, 435, 428,
+
+ 419, 1120, 435, 464, 435, 435, 464, 1431, 465, 466,
+ 435, 465, 466, 428, 419, 435, 467, 468, 435, 467,
+ 468, 428, 447, 471, 428, 419, 471, 701, 768, 803,
+ 428, 419, 422, 1094, 447, 1156, 447, 803, 447, 447,
+ 447, 447, 447, 447, 447, 447, 447, 472, 473, 475,
+ 472, 473, 475, 477, 849, 849, 477, 422, 422, 422,
+ 422, 422, 422, 422, 422, 422, 422, 422, 422, 422,
+ 422, 422, 422, 422, 422, 422, 422, 422, 422, 422,
+ 422, 422, 422, 443, 480, 502, 504, 480, 502, 504,
+ 1430, 443, 443, 443, 443, 505, 768, 768, 505, 443,
443, 443, 443, 443, 443, 443, 443, 443, 443, 443,
443, 443, 443, 443, 443, 443, 443, 443, 443, 443,
- 443, 443, 443, 443, 503, 504, 1109, 503, 504, 443,
- 443, 443, 443, 443, 443, 443, 443, 443, 443, 443,
- 443, 443, 443, 443, 443, 443, 443, 443, 443, 443,
- 443, 443, 443, 443, 443, 444, 505, 506, 507, 505,
- 506, 507, 508, 510, 511, 508, 510, 511, 697, 1083,
- 699, 444, 444, 444, 444, 444, 444, 444, 444, 444,
+ 443, 443, 443, 443, 443, 444, 444, 444, 444, 444,
444, 444, 444, 444, 444, 444, 444, 444, 444, 444,
- 444, 444, 444, 444, 444, 444, 444, 493, 493, 697,
-
- 493, 699, 444, 444, 444, 444, 444, 444, 444, 444,
444, 444, 444, 444, 444, 444, 444, 444, 444, 444,
- 444, 444, 444, 444, 444, 444, 444, 444, 491, 499,
- 491, 493, 1109, 499, 512, 499, 499, 512, 576, 513,
- 493, 499, 513, 701, 491, 514, 499, 518, 514, 499,
- 518, 519, 522, 534, 519, 522, 523, 523, 523, 523,
- 526, 571, 575, 526, 571, 575, 518, 522, 844, 703,
- 635, 523, 493, 635, 701, 636, 534, 493, 636, 1083,
- 529, 529, 529, 529, 534, 579, 579, 844, 579, 531,
- 531, 531, 531, 637, 580, 580, 637, 580, 576, 580,
-
- 703, 576, 1107, 491, 1105, 522, 576, 529, 1399, 638,
- 536, 491, 638, 526, 529, 529, 531, 540, 529, 529,
- 705, 529, 536, 531, 531, 529, 1082, 531, 531, 540,
- 531, 536, 725, 639, 531, 536, 639, 541, 540, 534,
- 541, 536, 540, 581, 581, 529, 581, 642, 540, 1078,
- 642, 705, 541, 536, 531, 582, 582, 541, 582, 1398,
- 540, 1156, 536, 725, 583, 583, 536, 583, 995, 540,
- 1078, 584, 584, 540, 584, 585, 585, 1140, 585, 586,
- 586, 700, 586, 587, 587, 995, 587, 588, 588, 1131,
- 588, 589, 589, 643, 589, 700, 643, 529, 529, 529,
-
- 1126, 529, 645, 529, 529, 645, 531, 531, 531, 727,
- 531, 1107, 531, 531, 558, 558, 558, 558, 1105, 558,
- 590, 590, 1131, 590, 591, 591, 700, 591, 592, 592,
- 1082, 592, 593, 593, 1126, 593, 594, 594, 1397, 594,
- 727, 558, 595, 595, 646, 595, 1156, 646, 558, 558,
- 861, 647, 558, 558, 647, 558, 1138, 596, 596, 558,
- 596, 597, 597, 861, 597, 598, 598, 558, 598, 599,
- 599, 1132, 599, 601, 601, 1396, 601, 602, 602, 558,
- 602, 603, 603, 627, 603, 605, 605, 599, 605, 618,
- 618, 648, 618, 651, 648, 1140, 651, 728, 618, 627,
-
- 627, 627, 627, 627, 627, 627, 627, 627, 629, 629,
- 652, 629, 654, 652, 1139, 654, 655, 629, 656, 655,
- 741, 656, 662, 662, 743, 662, 664, 664, 728, 664,
- 961, 558, 558, 558, 599, 558, 1079, 558, 558, 559,
- 559, 559, 559, 961, 559, 665, 665, 1395, 665, 666,
- 666, 741, 666, 667, 667, 743, 667, 668, 668, 1098,
- 668, 669, 669, 1394, 669, 673, 559, 674, 673, 675,
- 674, 1138, 675, 559, 559, 1132, 676, 559, 559, 676,
- 559, 1393, 677, 678, 559, 677, 678, 679, 680, 744,
- 679, 680, 559, 682, 684, 685, 682, 684, 685, 686,
-
- 687, 1098, 686, 687, 559, 688, 688, 688, 688, 689,
- 689, 689, 689, 692, 692, 692, 692, 698, 827, 1392,
- 744, 698, 702, 702, 702, 702, 767, 767, 831, 767,
- 698, 772, 772, 1139, 772, 773, 773, 1026, 773, 774,
- 774, 834, 774, 775, 775, 835, 775, 1079, 698, 827,
- 776, 776, 698, 776, 1026, 837, 559, 559, 559, 831,
- 559, 698, 559, 559, 621, 714, 779, 779, 714, 779,
- 780, 780, 834, 780, 782, 782, 835, 782, 783, 783,
- 1391, 783, 784, 784, 820, 784, 837, 820, 1155, 621,
- 621, 621, 621, 621, 621, 621, 621, 621, 621, 621,
-
- 621, 621, 621, 621, 621, 621, 621, 621, 621, 621,
- 621, 621, 621, 621, 621, 624, 624, 624, 624, 624,
- 624, 624, 624, 624, 624, 624, 624, 624, 624, 624,
- 624, 624, 624, 624, 624, 624, 624, 624, 624, 624,
- 624, 785, 785, 1390, 785, 1155, 624, 624, 624, 624,
- 624, 624, 624, 624, 624, 624, 624, 624, 624, 624,
- 624, 624, 624, 624, 624, 624, 624, 624, 624, 624,
- 624, 624, 704, 704, 704, 704, 788, 788, 854, 788,
- 789, 789, 821, 789, 729, 821, 714, 714, 729, 1087,
- 791, 791, 729, 791, 794, 794, 856, 794, 729, 704,
-
- 724, 1146, 704, 811, 811, 1146, 811, 724, 724, 854,
- 822, 724, 724, 822, 724, 729, 1389, 823, 724, 729,
- 823, 812, 812, 729, 812, 824, 724, 856, 824, 729,
- 704, 843, 843, 704, 723, 723, 723, 723, 724, 723,
- 740, 813, 813, 825, 813, 857, 825, 740, 740, 869,
- 829, 740, 740, 829, 740, 1100, 814, 814, 740, 814,
- 1100, 723, 815, 815, 1133, 815, 740, 872, 723, 723,
- 845, 845, 723, 723, 729, 723, 857, 1385, 740, 723,
- 869, 745, 1087, 816, 816, 745, 816, 723, 874, 745,
- 724, 724, 724, 1169, 724, 745, 724, 724, 872, 723,
-
- 817, 817, 871, 817, 818, 818, 1169, 818, 828, 828,
- 828, 828, 745, 866, 866, 875, 745, 876, 891, 874,
- 745, 836, 836, 836, 836, 871, 745, 884, 884, 1384,
- 740, 740, 740, 871, 740, 894, 740, 740, 873, 896,
- 1113, 878, 897, 898, 878, 1113, 875, 1133, 876, 891,
- 873, 723, 723, 723, 932, 723, 878, 723, 723, 873,
- 836, 878, 900, 873, 893, 900, 894, 906, 906, 873,
- 896, 745, 799, 897, 898, 914, 914, 900, 914, 940,
- 940, 873, 900, 915, 915, 932, 915, 893, 871, 929,
- 873, 836, 929, 930, 873, 893, 930, 799, 799, 799,
-
- 799, 799, 799, 799, 799, 799, 799, 799, 799, 799,
- 799, 799, 799, 799, 799, 799, 799, 799, 799, 799,
- 799, 799, 799, 800, 800, 800, 800, 800, 800, 800,
- 800, 800, 800, 800, 800, 800, 800, 800, 800, 800,
- 800, 800, 800, 800, 800, 800, 800, 800, 800, 933,
- 893, 1383, 933, 1382, 800, 800, 800, 800, 800, 800,
- 800, 800, 800, 800, 800, 800, 800, 800, 800, 800,
- 800, 800, 800, 800, 800, 800, 800, 800, 800, 800,
- 852, 852, 852, 852, 853, 852, 1085, 923, 923, 858,
- 923, 853, 853, 858, 1369, 853, 853, 858, 853, 1102,
-
- 934, 935, 853, 858, 936, 877, 1125, 852, 927, 927,
- 853, 927, 942, 942, 852, 852, 954, 877, 852, 852,
- 858, 852, 853, 956, 858, 852, 877, 1125, 858, 1368,
- 877, 934, 935, 852, 858, 936, 877, 928, 928, 1158,
- 928, 938, 938, 938, 938, 852, 957, 954, 877, 966,
- 966, 1367, 969, 1147, 956, 984, 984, 877, 882, 1102,
- 882, 877, 882, 882, 882, 882, 882, 882, 882, 882,
- 882, 972, 1085, 1085, 853, 853, 853, 957, 853, 858,
- 853, 853, 904, 969, 904, 1366, 904, 904, 904, 904,
- 904, 904, 904, 904, 904, 1147, 1225, 852, 852, 852,
-
- 1359, 852, 972, 852, 852, 881, 1054, 1054, 1157, 1054,
- 1225, 1102, 1154, 881, 881, 881, 881, 1358, 974, 975,
- 976, 881, 881, 881, 881, 881, 881, 881, 881, 881,
- 881, 881, 881, 881, 881, 881, 881, 881, 881, 881,
- 881, 881, 881, 881, 881, 881, 881, 895, 899, 974,
- 975, 976, 991, 1158, 1168, 993, 996, 1168, 1018, 895,
- 899, 1018, 971, 953, 997, 999, 1000, 1357, 895, 899,
- 953, 953, 895, 899, 953, 953, 1356, 953, 895, 899,
- 1000, 953, 1154, 991, 958, 971, 993, 996, 958, 953,
- 895, 899, 958, 971, 978, 997, 999, 978, 958, 895,
-
- 899, 953, 1001, 895, 899, 952, 952, 952, 952, 978,
- 952, 1000, 1157, 992, 978, 958, 992, 1152, 992, 958,
- 1346, 1049, 1002, 958, 1049, 1002, 1186, 1002, 1103, 958,
- 1003, 1005, 952, 1001, 998, 1344, 1022, 1024, 998, 952,
- 952, 1152, 1084, 952, 952, 1186, 952, 998, 971, 1343,
- 952, 973, 977, 953, 953, 953, 1340, 953, 952, 953,
- 953, 1003, 1005, 973, 977, 998, 992, 1022, 1024, 998,
- 952, 1027, 973, 977, 958, 1002, 973, 977, 998, 1018,
- 1018, 1028, 973, 977, 1010, 1010, 1010, 1010, 1010, 1010,
- 1010, 1010, 1010, 1339, 973, 977, 1030, 1058, 1058, 1058,
-
- 1058, 1032, 1027, 973, 977, 1326, 1034, 973, 977, 982,
- 1325, 982, 1028, 982, 982, 982, 982, 982, 982, 982,
- 982, 982, 952, 952, 952, 1164, 952, 1030, 952, 952,
- 981, 1023, 1032, 1084, 1023, 1084, 1023, 1034, 981, 981,
- 981, 981, 1049, 1049, 1103, 1103, 981, 981, 981, 981,
- 981, 981, 981, 981, 981, 981, 981, 981, 981, 981,
- 981, 981, 981, 981, 981, 981, 981, 981, 981, 981,
- 981, 981, 1004, 1031, 1009, 1004, 1029, 1004, 1185, 1185,
- 1029, 1009, 1009, 1011, 1023, 1009, 1009, 1031, 1009, 1029,
- 1011, 1011, 1009, 1036, 1011, 1011, 1056, 1011, 1075, 1004,
-
- 1009, 1011, 1004, 1059, 1059, 1059, 1059, 1029, 1324, 1011,
- 1033, 1029, 1009, 1033, 1111, 1033, 1323, 1111, 1031, 1111,
- 1029, 1011, 1317, 1114, 1036, 1004, 1088, 1056, 1187, 1187,
- 1004, 1075, 1164, 1004, 1008, 1008, 1008, 1008, 1008, 1008,
- 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008,
- 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008,
- 1094, 1122, 1075, 1033, 1009, 1009, 1009, 1111, 1009, 1073,
- 1009, 1009, 1088, 1011, 1011, 1011, 1076, 1011, 1035, 1011,
- 1011, 1035, 1159, 1035, 1040, 1063, 1063, 1063, 1063, 1165,
- 1122, 1040, 1040, 1094, 1073, 1040, 1040, 1316, 1040, 1315,
-
- 1080, 1076, 1040, 1088, 1097, 1035, 1114, 1305, 1035, 1093,
- 1040, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
- 1304, 1122, 1040, 1114, 1094, 1073, 1042, 1064, 1064, 1064,
- 1064, 1035, 1076, 1042, 1042, 1091, 1035, 1042, 1042, 1035,
- 1042, 1090, 1077, 1141, 1042, 1065, 1065, 1065, 1065, 1303,
- 1095, 1093, 1042, 1067, 1067, 1067, 1067, 1080, 1195, 1213,
- 1302, 1195, 1213, 1077, 1042, 1110, 1090, 1077, 1116, 1091,
- 1080, 1077, 1141, 1112, 1040, 1040, 1040, 1077, 1040, 1118,
- 1040, 1040, 1093, 1095, 1097, 1301, 1165, 1097, 1121, 1090,
- 1110, 1121, 1160, 1121, 1077, 1115, 1159, 1090, 1077, 1097,
-
- 1091, 1116, 1077, 1141, 1097, 1120, 1072, 1112, 1077, 1298,
- 1124, 1296, 1148, 1118, 1095, 1295, 1042, 1042, 1042, 1293,
- 1042, 1110, 1042, 1042, 1071, 1071, 1071, 1071, 1072, 1071,
- 1115, 1119, 1116, 1148, 1092, 1072, 1072, 1279, 1112, 1072,
- 1072, 1121, 1072, 1144, 1118, 1276, 1072, 1117, 1120, 1145,
- 1096, 1071, 1090, 1077, 1072, 1092, 1124, 1149, 1071, 1071,
- 1119, 1115, 1071, 1071, 1148, 1071, 1072, 1092, 1117, 1071,
- 1137, 1096, 1117, 1137, 1119, 1137, 1092, 1071, 1275, 1120,
- 1092, 1117, 1274, 1096, 1145, 1142, 1092, 1124, 1142, 1071,
- 1142, 1161, 1096, 1271, 1215, 1149, 1096, 1215, 1092, 1117,
-
- 1144, 1143, 1096, 1117, 1143, 1119, 1143, 1092, 1160, 1160,
- 1270, 1092, 1117, 1144, 1096, 1145, 1129, 1269, 1072, 1072,
- 1072, 1268, 1072, 1096, 1072, 1072, 1149, 1096, 1129, 1129,
- 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1166, 1265, 1170,
- 1151, 1071, 1071, 1071, 1101, 1071, 1123, 1071, 1071, 1123,
- 1128, 1123, 1101, 1162, 1101, 1261, 1101, 1101, 1101, 1101,
- 1101, 1101, 1101, 1101, 1101, 1151, 1150, 1260, 1166, 1150,
- 1170, 1150, 1128, 1123, 1161, 1173, 1123, 1174, 1259, 1128,
- 1128, 1176, 1193, 1128, 1128, 1252, 1128, 1130, 1226, 1226,
- 1128, 1137, 1137, 1161, 1214, 1218, 1151, 1167, 1128, 1123,
-
- 1167, 1219, 1167, 1220, 1123, 1150, 1173, 1123, 1174, 1130,
- 1128, 1246, 1176, 1193, 1228, 1228, 1130, 1130, 1237, 1150,
- 1130, 1130, 1245, 1130, 1153, 1214, 1218, 1130, 1175, 1153,
- 1247, 1175, 1219, 1175, 1220, 1130, 1150, 1153, 1153, 1153,
- 1153, 1197, 1197, 1197, 1197, 1241, 1240, 1130, 1267, 1237,
- 1239, 1162, 1162, 1198, 1198, 1198, 1198, 1199, 1199, 1199,
- 1199, 1247, 1128, 1128, 1128, 1238, 1128, 1175, 1128, 1128,
- 1200, 1200, 1200, 1200, 1201, 1201, 1201, 1201, 1234, 1267,
- 1233, 1175, 1202, 1202, 1202, 1202, 1203, 1203, 1203, 1203,
- 1204, 1204, 1204, 1204, 1205, 1205, 1205, 1205, 1175, 1130,
-
- 1130, 1130, 1232, 1130, 1212, 1130, 1130, 1206, 1206, 1206,
- 1206, 1212, 1212, 1272, 1224, 1212, 1212, 1224, 1212, 1224,
- 1231, 1230, 1212, 1242, 1242, 1242, 1242, 1217, 1229, 1217,
- 1212, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217,
- 1227, 1222, 1212, 1222, 1272, 1222, 1222, 1222, 1222, 1222,
- 1222, 1222, 1222, 1222, 1243, 1243, 1243, 1243, 1244, 1244,
- 1244, 1244, 1278, 1249, 1223, 1278, 1249, 1224, 1249, 1250,
- 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1250, 1251, 1221,
- 1216, 1251, 1208, 1251, 1253, 1253, 1253, 1253, 1253, 1253,
- 1253, 1253, 1253, 1207, 1212, 1212, 1212, 1254, 1212, 1294,
-
- 1212, 1212, 1196, 1194, 1254, 1254, 1256, 1257, 1254, 1254,
- 1257, 1254, 1257, 1256, 1256, 1254, 1249, 1256, 1256, 1191,
- 1256, 1190, 1258, 1262, 1256, 1258, 1262, 1258, 1262, 1263,
- 1294, 1251, 1263, 1264, 1263, 1254, 1264, 1266, 1264, 1273,
- 1266, 1189, 1266, 1277, 1256, 1188, 1299, 1273, 1273, 1273,
- 1273, 1277, 1277, 1277, 1277, 1184, 1280, 1183, 1182, 1280,
- 1257, 1280, 1281, 1282, 1318, 1281, 1282, 1281, 1282, 1283,
- 1181, 1180, 1283, 1179, 1283, 1258, 1262, 1299, 1284, 1178,
- 1341, 1284, 1263, 1284, 1177, 1172, 1264, 1254, 1254, 1254,
- 1266, 1254, 1171, 1254, 1254, 1318, 1256, 1256, 1256, 1127,
-
- 1256, 1285, 1256, 1256, 1285, 1286, 1285, 1070, 1286, 1280,
- 1286, 1341, 1069, 1068, 1287, 1281, 1282, 1287, 1288, 1287,
- 1066, 1288, 1283, 1288, 1289, 1290, 1062, 1289, 1290, 1289,
- 1290, 1284, 1291, 1292, 1061, 1291, 1292, 1291, 1292, 1060,
- 1284, 1297, 1297, 1297, 1297, 1320, 1322, 1057, 1320, 1322,
- 1320, 1322, 1306, 1284, 1285, 1306, 1052, 1306, 1286, 1051,
- 1309, 1050, 1048, 1309, 1047, 1309, 1046, 1287, 1045, 1312,
- 1328, 1288, 1312, 1328, 1312, 1328, 1044, 1289, 1290, 1330,
- 1288, 1043, 1330, 1038, 1330, 1291, 1292, 1037, 1025, 1021,
- 1020, 1019, 1300, 1288, 1300, 1292, 1300, 1300, 1300, 1300,
-
- 1300, 1300, 1300, 1300, 1300, 1306, 1017, 1016, 1292, 1307,
- 1015, 1014, 1307, 1309, 1307, 1332, 1013, 1012, 1332, 1307,
- 1332, 1007, 1312, 1328, 1006, 994, 990, 1307, 1307, 1307,
- 1307, 989, 1330, 988, 987, 1307, 1307, 1307, 1307, 1307,
- 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307,
- 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307,
- 1307, 1308, 1307, 986, 1308, 985, 1308, 980, 1332, 979,
- 1334, 970, 968, 1334, 1308, 1334, 1308, 967, 1308, 1308,
- 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1311, 1342, 964,
- 1311, 963, 1311, 962, 960, 959, 1342, 1342, 1342, 1342,
-
- 1311, 955, 1311, 949, 1311, 1311, 1311, 1311, 1311, 1311,
- 1311, 1311, 1311, 948, 1308, 1310, 947, 946, 1310, 945,
- 1310, 944, 943, 1334, 1336, 1310, 941, 1336, 937, 1336,
- 926, 925, 924, 1310, 1310, 1310, 1310, 912, 911, 910,
- 1311, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310,
- 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310,
- 1310, 1310, 1310, 1310, 1310, 1310, 1310, 909, 1310, 1313,
- 1338, 908, 1313, 1338, 1313, 1338, 907, 1336, 1345, 1313,
- 903, 1345, 902, 1345, 901, 892, 890, 1313, 1313, 1313,
- 1313, 889, 888, 887, 886, 1313, 1313, 1313, 1313, 1313,
-
- 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313,
- 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313,
- 1313, 1314, 1313, 1338, 1314, 885, 1314, 880, 879, 870,
- 868, 1345, 1371, 867, 1314, 1371, 1314, 1371, 1314, 1314,
- 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1319, 1319, 1319,
- 1319, 1319, 1319, 1319, 1319, 1319, 1347, 864, 863, 862,
- 1350, 860, 859, 855, 1347, 1347, 1347, 1347, 1350, 1350,
- 1350, 1350, 849, 1353, 1314, 1327, 848, 847, 1327, 846,
- 1327, 1353, 1353, 1353, 1353, 1371, 1386, 1373, 842, 841,
- 1373, 840, 1373, 839, 1386, 1386, 1386, 1386, 838, 833,
-
- 832, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327,
- 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1327,
- 1327, 1327, 1327, 1327, 1327, 1327, 1327, 1329, 1327, 830,
- 1329, 819, 1329, 796, 795, 793, 1333, 792, 768, 1333,
- 1373, 1333, 755, 754, 1329, 1329, 1329, 1329, 1329, 1329,
- 1329, 1329, 1329, 1333, 1333, 1333, 1333, 1333, 1333, 1333,
- 1333, 1333, 1387, 751, 750, 749, 1388, 747, 746, 742,
- 1387, 1387, 1387, 1387, 1388, 1388, 1388, 1388, 739, 738,
- 1329, 1331, 735, 734, 1331, 733, 1331, 731, 730, 1333,
- 1375, 726, 718, 1375, 1377, 1375, 717, 1377, 1379, 1377,
-
- 716, 1379, 715, 1379, 713, 712, 711, 1331, 1331, 1331,
- 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331,
- 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1331,
- 1331, 1331, 1331, 710, 1331, 1335, 709, 708, 1335, 707,
- 1335, 1348, 706, 1375, 1348, 694, 1348, 1377, 683, 681,
- 672, 1379, 671, 658, 628, 625, 623, 622, 620, 616,
- 615, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335,
- 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1335,
- 1335, 1335, 1335, 1335, 1335, 1335, 1335, 1337, 1335, 614,
- 1337, 613, 1337, 1349, 1348, 612, 1349, 1351, 1349, 611,
-
- 1351, 609, 1351, 1348, 1337, 1337, 1337, 1337, 1337, 1337,
- 1337, 1337, 1337, 607, 1352, 561, 1348, 1352, 1354, 1352,
- 560, 1354, 1355, 1354, 557, 1355, 1381, 1355, 556, 1381,
- 555, 1381, 554, 552, 551, 550, 549, 548, 547, 546,
- 1337, 543, 542, 533, 530, 524, 1349, 520, 517, 516,
- 1351, 515, 502, 500, 490, 1349, 489, 488, 485, 1351,
- 484, 441, 440, 437, 435, 433, 432, 1352, 1349, 428,
- 410, 1354, 1351, 400, 399, 1355, 1352, 398, 386, 1381,
- 1354, 384, 383, 1360, 1355, 382, 1360, 381, 1360, 1352,
- 380, 379, 377, 1354, 376, 375, 1360, 1355, 1360, 374,
-
- 1360, 1360, 1360, 1360, 1360, 1360, 1360, 1360, 1360, 372,
- 371, 370, 367, 366, 365, 364, 363, 359, 357, 354,
- 349, 348, 346, 339, 338, 337, 336, 335, 334, 320,
- 319, 317, 316, 314, 313, 311, 1360, 1361, 308, 306,
- 286, 285, 284, 283, 282, 1361, 1361, 1361, 1361, 280,
- 275, 272, 269, 1361, 1361, 1361, 1361, 1361, 1361, 1361,
+ 444, 506, 507, 1156, 506, 507, 444, 444, 444, 444,
+ 444, 444, 444, 444, 444, 444, 444, 444, 444, 444,
+ 444, 444, 444, 444, 444, 444, 444, 444, 444, 444,
+ 444, 444, 445, 508, 509, 511, 508, 509, 511, 512,
+ 513, 514, 512, 513, 514, 703, 851, 851, 445, 445,
+
+ 445, 445, 445, 445, 445, 445, 445, 445, 445, 445,
+ 445, 445, 445, 445, 445, 445, 445, 445, 445, 445,
+ 445, 445, 445, 445, 515, 520, 703, 515, 520, 445,
+ 445, 445, 445, 445, 445, 445, 445, 445, 445, 445,
+ 445, 445, 445, 445, 445, 445, 445, 445, 445, 445,
+ 445, 445, 445, 445, 445, 469, 1429, 519, 469, 492,
+ 519, 492, 1007, 494, 494, 500, 494, 573, 535, 500,
+ 573, 500, 500, 469, 1097, 492, 519, 500, 523, 1007,
+ 527, 523, 500, 527, 537, 500, 524, 524, 524, 524,
+ 1102, 535, 577, 523, 702, 577, 537, 494, 542, 535,
+
+ 1039, 524, 542, 578, 637, 537, 494, 637, 702, 537,
+ 530, 530, 530, 530, 542, 537, 705, 1039, 638, 542,
+ 469, 638, 850, 532, 532, 532, 532, 537, 707, 581,
+ 581, 523, 581, 527, 492, 1174, 537, 530, 494, 702,
+ 537, 850, 492, 494, 530, 530, 807, 705, 530, 530,
+ 532, 530, 1428, 541, 807, 530, 535, 532, 532, 707,
+ 971, 532, 532, 578, 532, 541, 578, 1121, 532, 583,
+ 583, 578, 583, 971, 541, 530, 582, 582, 541, 582,
+ 1097, 582, 584, 584, 541, 584, 585, 585, 532, 585,
+ 586, 586, 1102, 586, 587, 587, 541, 587, 588, 588,
+
+ 1098, 588, 728, 589, 589, 541, 589, 590, 590, 541,
+ 590, 591, 591, 1114, 591, 592, 592, 730, 592, 593,
+ 593, 1174, 593, 594, 594, 639, 594, 1118, 639, 530,
+ 530, 530, 530, 728, 530, 1100, 530, 530, 595, 595,
+ 731, 595, 532, 532, 532, 532, 745, 532, 730, 532,
+ 532, 560, 560, 560, 560, 1114, 560, 596, 596, 1122,
+ 596, 597, 597, 747, 597, 598, 598, 1148, 598, 599,
+ 599, 731, 599, 600, 600, 1099, 600, 745, 560, 601,
+ 601, 640, 601, 1121, 640, 560, 560, 1118, 641, 560,
+ 560, 641, 560, 1149, 747, 1105, 560, 601, 603, 603,
+
+ 1148, 603, 604, 604, 560, 604, 605, 605, 629, 605,
+ 607, 607, 1098, 607, 620, 620, 560, 620, 644, 645,
+ 1105, 644, 645, 620, 629, 629, 629, 629, 629, 629,
+ 629, 629, 629, 631, 631, 647, 631, 648, 647, 1100,
+ 648, 1118, 631, 649, 601, 650, 649, 653, 650, 654,
+ 653, 656, 654, 657, 656, 658, 657, 1143, 658, 664,
+ 664, 1122, 664, 666, 666, 675, 666, 1099, 675, 1099,
+ 560, 560, 560, 560, 1142, 560, 1175, 560, 560, 561,
+ 561, 561, 561, 1427, 561, 667, 667, 1170, 667, 668,
+ 668, 1143, 668, 669, 669, 1142, 669, 670, 670, 1149,
+
+ 670, 671, 671, 1176, 671, 676, 561, 677, 676, 678,
+ 677, 1170, 678, 561, 561, 1125, 679, 561, 561, 679,
+ 561, 1173, 680, 681, 561, 680, 681, 682, 684, 748,
+ 682, 684, 561, 686, 687, 688, 686, 687, 688, 689,
+ 772, 772, 689, 772, 561, 690, 690, 690, 690, 691,
+ 691, 691, 691, 694, 694, 694, 694, 832, 700, 836,
+ 748, 1426, 700, 704, 704, 704, 704, 777, 777, 1116,
+ 777, 700, 778, 778, 1116, 778, 779, 779, 1173, 779,
+ 780, 780, 1175, 780, 781, 781, 1425, 781, 832, 700,
+ 836, 784, 784, 700, 784, 873, 873, 1125, 561, 561,
+
+ 561, 561, 700, 561, 1150, 561, 561, 623, 717, 785,
+ 785, 717, 785, 787, 787, 1424, 787, 788, 788, 1176,
+ 788, 789, 789, 1423, 789, 790, 790, 825, 790, 1422,
+ 825, 1157, 623, 623, 623, 623, 623, 623, 623, 623,
+ 623, 623, 623, 623, 623, 623, 623, 623, 623, 623,
+ 623, 623, 623, 623, 623, 623, 623, 623, 626, 626,
+ 626, 626, 626, 626, 626, 626, 626, 626, 626, 626,
+ 626, 626, 626, 626, 626, 626, 626, 626, 626, 626,
+ 626, 626, 626, 626, 793, 793, 1152, 793, 1150, 626,
+ 626, 626, 626, 626, 626, 626, 626, 626, 626, 626,
+
+ 626, 626, 626, 626, 626, 626, 626, 626, 626, 626,
+ 626, 626, 626, 626, 626, 706, 706, 706, 706, 794,
+ 794, 826, 794, 1421, 826, 827, 732, 749, 827, 839,
+ 732, 749, 717, 717, 732, 749, 796, 796, 840, 796,
+ 732, 749, 706, 799, 799, 706, 799, 816, 816, 1420,
+ 816, 817, 817, 1157, 817, 706, 727, 732, 749, 1158,
+ 839, 732, 749, 727, 727, 732, 749, 727, 727, 840,
+ 727, 732, 749, 706, 727, 842, 706, 818, 818, 1152,
+ 818, 828, 727, 1419, 828, 860, 706, 726, 726, 726,
+ 726, 744, 726, 829, 727, 1418, 829, 830, 744, 744,
+
+ 830, 834, 744, 744, 834, 744, 842, 819, 819, 744,
+ 819, 1417, 820, 820, 726, 820, 860, 744, 732, 749,
+ 1178, 726, 726, 862, 938, 726, 726, 938, 726, 744,
+ 821, 821, 726, 821, 822, 822, 863, 822, 823, 823,
+ 726, 823, 833, 833, 833, 833, 876, 878, 727, 727,
+ 727, 727, 726, 727, 862, 727, 727, 841, 841, 841,
+ 841, 879, 881, 882, 883, 891, 891, 863, 899, 1416,
+ 878, 902, 904, 914, 914, 949, 949, 876, 878, 905,
+ 1158, 906, 1130, 744, 744, 744, 744, 1130, 744, 941,
+ 744, 744, 879, 881, 882, 883, 841, 1415, 939, 899,
+
+ 885, 939, 902, 904, 885, 901, 726, 726, 726, 726,
+ 905, 726, 906, 726, 726, 804, 885, 1177, 908, 1411,
+ 941, 885, 908, 923, 923, 1178, 923, 841, 901, 924,
+ 924, 1410, 924, 1184, 908, 878, 901, 952, 952, 908,
+ 804, 804, 804, 804, 804, 804, 804, 804, 804, 804,
+ 804, 804, 804, 804, 804, 804, 804, 804, 804, 804,
+ 804, 804, 804, 804, 804, 804, 805, 805, 805, 805,
+ 805, 805, 805, 805, 805, 805, 805, 805, 805, 805,
+ 805, 805, 805, 805, 805, 805, 805, 805, 805, 805,
+ 805, 805, 942, 901, 1409, 942, 1183, 805, 805, 805,
+
+ 805, 805, 805, 805, 805, 805, 805, 805, 805, 805,
+ 805, 805, 805, 805, 805, 805, 805, 805, 805, 805,
+ 805, 805, 805, 858, 858, 858, 858, 859, 858, 932,
+ 932, 1184, 932, 1177, 859, 859, 977, 977, 859, 859,
+ 864, 859, 943, 944, 864, 859, 936, 936, 864, 936,
+ 858, 1408, 945, 859, 864, 964, 966, 858, 858, 995,
+ 995, 858, 858, 1154, 858, 859, 937, 937, 858, 937,
+ 967, 864, 1395, 943, 944, 864, 858, 980, 983, 864,
+ 985, 986, 880, 945, 987, 864, 964, 966, 858, 947,
+ 947, 947, 947, 1004, 880, 1394, 1004, 1003, 1004, 1393,
+
+ 1005, 967, 1008, 880, 1188, 1183, 982, 880, 980, 983,
+ 1009, 985, 986, 880, 989, 987, 1392, 1188, 989, 859,
+ 859, 859, 859, 1011, 859, 880, 859, 859, 1003, 982,
+ 989, 1005, 864, 1008, 880, 989, 884, 982, 880, 1012,
+ 1385, 1009, 858, 858, 858, 858, 1004, 858, 884, 858,
+ 858, 968, 1013, 1012, 1011, 968, 1015, 884, 1017, 968,
+ 1035, 884, 1153, 1165, 889, 968, 889, 884, 889, 889,
+ 889, 889, 889, 889, 889, 889, 889, 1037, 1187, 884,
+ 1154, 1187, 968, 1013, 1012, 1384, 968, 1015, 884, 1017,
+ 968, 1035, 884, 888, 982, 1031, 968, 1383, 1031, 1205,
+
+ 1205, 888, 888, 888, 888, 1165, 1040, 1382, 1037, 888,
+ 888, 888, 888, 888, 888, 888, 888, 888, 888, 888,
+ 888, 888, 888, 888, 888, 888, 888, 888, 888, 888,
+ 888, 888, 888, 888, 888, 903, 907, 1040, 984, 1041,
+ 1010, 1042, 1043, 968, 1010, 1042, 1119, 903, 907, 1153,
+ 984, 1044, 1045, 1010, 1042, 1047, 903, 907, 1049, 984,
+ 903, 907, 1172, 984, 1372, 1044, 903, 907, 1131, 984,
+ 1041, 1010, 1042, 1043, 1369, 1010, 1042, 1014, 903, 907,
+ 1014, 984, 1014, 1045, 1010, 1042, 1047, 903, 907, 1049,
+ 984, 903, 907, 912, 984, 912, 1044, 912, 912, 912,
+
+ 912, 912, 912, 912, 912, 912, 962, 962, 962, 962,
+ 963, 962, 1063, 1068, 1068, 1063, 1068, 963, 963, 1031,
+ 1031, 963, 963, 1070, 963, 988, 1036, 1246, 963, 1036,
+ 1014, 1036, 1172, 962, 1206, 1132, 963, 988, 1207, 1207,
+ 962, 962, 1246, 1366, 962, 962, 988, 962, 963, 1365,
+ 988, 962, 1131, 1206, 1070, 1046, 988, 1352, 1046, 962,
+ 1046, 1072, 1072, 1072, 1072, 1119, 1119, 1090, 988, 1131,
+ 1132, 962, 1073, 1073, 1073, 1073, 1351, 988, 993, 1036,
+ 993, 988, 993, 993, 993, 993, 993, 993, 993, 993,
+ 993, 1022, 1022, 1022, 1022, 1022, 1022, 1022, 1022, 1022,
+
+ 1090, 1132, 963, 963, 963, 963, 1350, 963, 1046, 963,
+ 963, 1054, 1054, 1054, 1054, 1054, 1054, 1054, 1054, 1054,
+ 1078, 1078, 1078, 1078, 1349, 962, 962, 962, 962, 1343,
+ 962, 1090, 962, 962, 992, 1137, 1063, 1063, 1079, 1079,
+ 1079, 1079, 992, 992, 992, 992, 1080, 1080, 1080, 1080,
+ 992, 992, 992, 992, 992, 992, 992, 992, 992, 992,
+ 992, 992, 992, 992, 992, 992, 992, 992, 992, 992,
+ 992, 992, 992, 992, 992, 992, 1016, 1107, 1137, 1016,
+ 1088, 1016, 1021, 1082, 1082, 1082, 1082, 1091, 1127, 1021,
+ 1021, 1185, 1342, 1021, 1021, 1189, 1021, 1101, 1215, 1160,
+
+ 1021, 1215, 1160, 1016, 1160, 1088, 1016, 1023, 1021, 1137,
+ 1341, 1107, 1091, 1127, 1023, 1023, 1016, 1331, 1023, 1023,
+ 1021, 1023, 1185, 1095, 1234, 1023, 1189, 1234, 1179, 1016,
+ 1247, 1247, 1104, 1023, 1016, 1161, 1088, 1016, 1161, 1330,
+ 1161, 1162, 1107, 1091, 1127, 1023, 1329, 1016, 1020, 1020,
+ 1020, 1020, 1020, 1020, 1020, 1020, 1020, 1020, 1020, 1020,
+ 1020, 1020, 1020, 1020, 1020, 1020, 1020, 1020, 1020, 1020,
+ 1020, 1020, 1020, 1020, 1021, 1021, 1021, 1021, 1104, 1021,
+ 1095, 1021, 1021, 1048, 1101, 1101, 1048, 1128, 1048, 1328,
+ 1128, 1109, 1128, 1095, 1113, 1327, 1180, 1326, 1162, 1023,
+
+ 1023, 1023, 1023, 1129, 1023, 1110, 1023, 1023, 1053, 1104,
+ 1048, 1162, 1111, 1048, 1106, 1053, 1053, 1055, 1133, 1053,
+ 1053, 1323, 1053, 1048, 1055, 1055, 1053, 1087, 1055, 1055,
+ 1136, 1055, 1320, 1109, 1053, 1055, 1048, 1129, 1110, 1106,
+ 1128, 1048, 1318, 1055, 1048, 1111, 1053, 1179, 1179, 1087,
+ 1135, 1133, 1141, 1304, 1048, 1055, 1087, 1087, 1192, 1136,
+ 1087, 1087, 1106, 1087, 1109, 1139, 1303, 1087, 1129, 1110,
+ 1106, 1300, 1134, 1136, 1113, 1087, 1111, 1299, 1113, 1181,
+ 1180, 1298, 1133, 1138, 1135, 1295, 1138, 1087, 1138, 1192,
+ 1113, 1250, 1250, 1134, 1139, 1113, 1294, 1134, 1141, 1180,
+
+ 1053, 1053, 1053, 1053, 1136, 1053, 1134, 1053, 1053, 1055,
+ 1055, 1055, 1055, 1293, 1055, 1135, 1055, 1055, 1086, 1086,
+ 1086, 1086, 1159, 1086, 1134, 1139, 1163, 1106, 1134, 1141,
+ 1292, 1167, 1289, 1092, 1108, 1155, 1138, 1134, 1155, 1169,
+ 1155, 1087, 1087, 1087, 1087, 1086, 1087, 1285, 1087, 1087,
+ 1193, 1159, 1086, 1086, 1092, 1108, 1086, 1086, 1092, 1086,
+ 1284, 1163, 1092, 1086, 1169, 1195, 1166, 1108, 1092, 1167,
+ 1112, 1086, 1186, 1213, 1235, 1186, 1108, 1186, 1181, 1181,
+ 1108, 1193, 1159, 1086, 1239, 1092, 1108, 1166, 1240, 1092,
+ 1283, 1112, 1163, 1092, 1236, 1169, 1195, 1236, 1108, 1092,
+
+ 1167, 1282, 1275, 1112, 1213, 1235, 1302, 1108, 1269, 1302,
+ 1241, 1108, 1112, 1117, 1268, 1239, 1112, 1264, 1166, 1240,
+ 1263, 1117, 1112, 1117, 1262, 1117, 1117, 1117, 1117, 1117,
+ 1117, 1117, 1117, 1117, 1112, 1261, 1145, 1086, 1086, 1086,
+ 1086, 1241, 1086, 1112, 1086, 1086, 1092, 1112, 1140, 1260,
+ 1256, 1140, 1168, 1140, 1259, 1168, 1270, 1168, 1145, 1155,
+ 1155, 1218, 1218, 1218, 1218, 1145, 1145, 1255, 1254, 1145,
+ 1145, 1291, 1145, 1296, 1253, 1140, 1145, 1319, 1140, 1219,
+ 1219, 1219, 1219, 1252, 1145, 1259, 1251, 1270, 1140, 1324,
+ 1249, 1168, 1220, 1220, 1220, 1220, 1145, 1248, 1146, 1147,
+
+ 1244, 1140, 1291, 1242, 1296, 1168, 1140, 1344, 1319, 1140,
+ 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1140,
+ 1324, 1147, 1168, 1221, 1221, 1221, 1221, 1237, 1147, 1147,
+ 1367, 1194, 1147, 1147, 1194, 1147, 1194, 1229, 1344, 1147,
+ 1222, 1222, 1222, 1222, 1228, 1217, 1216, 1147, 1214, 1171,
+ 1145, 1145, 1145, 1145, 1171, 1145, 1211, 1145, 1145, 1147,
+ 1210, 1367, 1171, 1171, 1171, 1171, 1223, 1223, 1223, 1223,
+ 1194, 1224, 1224, 1224, 1224, 1225, 1225, 1225, 1225, 1226,
+ 1226, 1226, 1226, 1209, 1194, 1227, 1227, 1227, 1227, 1245,
+ 1346, 1233, 1245, 1346, 1245, 1346, 1208, 1204, 1233, 1233,
+
+ 1203, 1194, 1233, 1233, 1202, 1233, 1201, 1272, 1200, 1233,
+ 1272, 1199, 1272, 1147, 1147, 1147, 1147, 1233, 1147, 1198,
+ 1147, 1147, 1265, 1265, 1265, 1265, 1238, 1197, 1238, 1233,
+ 1238, 1238, 1238, 1238, 1238, 1238, 1238, 1238, 1238, 1243,
+ 1196, 1243, 1245, 1243, 1243, 1243, 1243, 1243, 1243, 1243,
+ 1243, 1243, 1266, 1266, 1266, 1266, 1267, 1267, 1267, 1267,
+ 1272, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273, 1273,
+ 1274, 1191, 1190, 1274, 1280, 1274, 1144, 1280, 1085, 1280,
+ 1084, 1083, 1081, 1233, 1233, 1233, 1233, 1077, 1233, 1076,
+ 1233, 1233, 1276, 1276, 1276, 1276, 1276, 1276, 1276, 1276,
+
+ 1276, 1277, 1281, 1075, 1074, 1281, 1071, 1281, 1277, 1277,
+ 1279, 1286, 1277, 1277, 1286, 1277, 1286, 1279, 1279, 1277,
+ 1066, 1279, 1279, 1274, 1279, 1065, 1287, 1280, 1279, 1287,
+ 1288, 1287, 1064, 1288, 1062, 1288, 1297, 1290, 1061, 1277,
+ 1290, 1301, 1290, 1060, 1297, 1297, 1297, 1297, 1279, 1301,
+ 1301, 1301, 1301, 1305, 1348, 1281, 1305, 1348, 1305, 1348,
+ 1306, 1059, 1058, 1306, 1286, 1306, 1307, 1308, 1057, 1307,
+ 1308, 1307, 1308, 1309, 1056, 1051, 1309, 1310, 1309, 1287,
+ 1310, 1311, 1310, 1288, 1311, 1050, 1311, 1038, 1034, 1033,
+ 1290, 1032, 1030, 1277, 1277, 1277, 1277, 1029, 1277, 1028,
+
+ 1277, 1277, 1279, 1279, 1279, 1279, 1305, 1279, 1027, 1279,
+ 1279, 1312, 1313, 1306, 1312, 1313, 1312, 1313, 1314, 1307,
+ 1308, 1314, 1315, 1314, 1026, 1315, 1309, 1315, 1316, 1025,
+ 1310, 1316, 1024, 1316, 1311, 1309, 1317, 1019, 1018, 1317,
+ 1006, 1317, 1321, 1321, 1321, 1321, 1002, 1001, 1309, 1322,
+ 1322, 1322, 1322, 1000, 999, 1332, 998, 997, 1332, 996,
+ 1332, 991, 990, 1335, 1312, 1313, 1335, 1338, 1335, 1368,
+ 1338, 1314, 1338, 981, 1313, 1315, 979, 1368, 1368, 1368,
+ 1368, 1316, 978, 1354, 976, 974, 1354, 1313, 1354, 1317,
+ 973, 1356, 972, 970, 1356, 1325, 1356, 1325, 1317, 1325,
+
+ 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1325, 1332, 1334,
+ 969, 1317, 1334, 965, 1334, 959, 1335, 958, 1358, 957,
+ 1338, 1358, 1334, 1358, 1334, 956, 1334, 1334, 1334, 1334,
+ 1334, 1334, 1334, 1334, 1334, 1337, 1354, 955, 1337, 954,
+ 1337, 953, 951, 950, 1356, 946, 935, 934, 1337, 933,
+ 1337, 921, 1337, 1337, 1337, 1337, 1337, 1337, 1337, 1337,
+ 1337, 920, 1334, 1321, 1333, 919, 918, 1333, 917, 1333,
+ 916, 1358, 1360, 1362, 1333, 1360, 1362, 1360, 1362, 915,
+ 911, 910, 1333, 1333, 1333, 1333, 909, 900, 1337, 898,
+ 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333,
+
+ 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1333,
+ 1333, 1333, 1333, 1333, 1333, 1333, 897, 1333, 1336, 896,
+ 895, 1336, 894, 1336, 893, 1360, 1362, 1364, 1336, 892,
+ 1364, 887, 1364, 886, 877, 875, 1336, 1336, 1336, 1336,
+ 874, 872, 870, 869, 1336, 1336, 1336, 1336, 1336, 1336,
+ 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336,
+ 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336, 1336,
+ 868, 1336, 1339, 1370, 866, 1339, 1370, 1339, 1370, 865,
+ 1364, 1371, 1339, 861, 1371, 855, 1371, 854, 853, 852,
+ 1339, 1339, 1339, 1339, 848, 847, 846, 845, 1339, 1339,
+
+ 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339,
+ 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339, 1339,
+ 1339, 1339, 1339, 1339, 1340, 1339, 1370, 1340, 844, 1340,
+ 843, 838, 837, 835, 1371, 1397, 824, 1340, 1397, 1340,
+ 1397, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340, 1340,
+ 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1345, 1373,
+ 801, 800, 798, 1376, 797, 773, 760, 1373, 1373, 1373,
+ 1373, 1376, 1376, 1376, 1376, 759, 1379, 1340, 1353, 757,
+ 755, 1353, 754, 1353, 1379, 1379, 1379, 1379, 1397, 1412,
+ 1399, 753, 751, 1399, 1370, 1399, 750, 1412, 1412, 1412,
+
+ 1412, 746, 743, 742, 1353, 1353, 1353, 1353, 1353, 1353,
+ 1353, 1353, 1353, 1353, 1353, 1353, 1353, 1353, 1353, 1353,
+ 1353, 1353, 1353, 1353, 1353, 1353, 1353, 1353, 1353, 1353,
+ 1355, 1353, 740, 1355, 738, 1355, 737, 736, 734, 1359,
+ 733, 729, 1359, 1399, 1359, 721, 720, 1355, 1355, 1355,
+ 1355, 1355, 1355, 1355, 1355, 1355, 1359, 1359, 1359, 1359,
+ 1359, 1359, 1359, 1359, 1359, 1413, 719, 718, 716, 1414,
+ 715, 714, 713, 1413, 1413, 1413, 1413, 1414, 1414, 1414,
+ 1414, 712, 711, 1355, 1357, 710, 709, 1357, 708, 1357,
+ 696, 685, 1359, 1401, 683, 674, 1401, 1403, 1401, 673,
+
+ 1403, 1405, 1403, 660, 1405, 630, 1405, 627, 625, 624,
+ 1357, 1357, 1357, 1357, 1357, 1357, 1357, 1357, 1357, 1357,
+ 1357, 1357, 1357, 1357, 1357, 1357, 1357, 1357, 1357, 1357,
+ 1357, 1357, 1357, 1357, 1357, 1357, 622, 1357, 1361, 618,
+ 617, 1361, 616, 1361, 1374, 615, 1401, 1374, 614, 1374,
+ 1403, 613, 611, 609, 1405, 563, 562, 559, 558, 557,
+ 556, 554, 553, 552, 1361, 1361, 1361, 1361, 1361, 1361,
+ 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361,
1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361,
- 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1362,
- 266, 265, 1362, 262, 1362, 257, 255, 253, 243, 236,
- 234, 231, 1362, 227, 1362, 225, 1362, 1362, 1362, 1362,
+ 1363, 1361, 551, 1363, 550, 1363, 1375, 1374, 549, 1375,
+
+ 1377, 1375, 548, 1377, 547, 1377, 1374, 1363, 1363, 1363,
+ 1363, 1363, 1363, 1363, 1363, 1363, 544, 1378, 543, 1374,
+ 1378, 1380, 1378, 534, 1380, 1381, 1380, 531, 1381, 1407,
+ 1381, 525, 1407, 521, 1407, 518, 517, 516, 503, 501,
+ 491, 490, 489, 1363, 486, 485, 442, 441, 438, 1375,
+ 436, 434, 433, 1377, 429, 411, 401, 400, 1375, 399,
+ 387, 385, 1377, 384, 383, 382, 381, 380, 378, 377,
+ 1378, 1375, 376, 375, 1380, 1377, 373, 372, 1381, 1378,
+ 371, 369, 1407, 1380, 367, 366, 1386, 1381, 365, 1386,
+ 364, 1386, 1378, 363, 359, 357, 1380, 354, 349, 1386,
+
+ 1381, 1386, 348, 1386, 1386, 1386, 1386, 1386, 1386, 1386,
+ 1386, 1386, 346, 339, 338, 337, 336, 335, 334, 320,
+ 319, 317, 316, 314, 313, 311, 308, 306, 286, 285,
+ 284, 283, 282, 280, 275, 272, 269, 266, 265, 1386,
+ 1387, 262, 257, 255, 253, 243, 236, 234, 1387, 1387,
+ 1387, 1387, 231, 227, 225, 220, 1387, 1387, 1387, 1387,
+ 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387,
+ 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387,
+ 1387, 1387, 1388, 217, 215, 1388, 214, 1388, 213, 212,
+ 210, 208, 202, 198, 197, 1388, 195, 1388, 192, 1388,
- 1362, 1362, 1362, 1362, 1362, 220, 217, 215, 214, 213,
- 212, 210, 208, 202, 198, 197, 195, 192, 181, 180,
+ 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 181, 180,
179, 175, 174, 173, 160, 153, 146, 145, 143, 140,
- 125, 124, 1362, 1363, 120, 119, 118, 112, 105, 102,
- 100, 1363, 1363, 1363, 1363, 96, 95, 93, 92, 1363,
- 1363, 1363, 1363, 1363, 1363, 1363, 1363, 1363, 1363, 1363,
- 1363, 1363, 1363, 1363, 1363, 1363, 1363, 1363, 1363, 1363,
- 1363, 1363, 1363, 1363, 1363, 1364, 89, 88, 1364, 85,
- 1364, 81, 78, 75, 72, 71, 70, 69, 1364, 65,
- 1364, 62, 1364, 1364, 1364, 1364, 1364, 1364, 1364, 1364,
-
- 1364, 58, 57, 54, 49, 47, 46, 41, 37, 36,
- 35, 18, 17, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 1364, 1365,
- 0, 0, 0, 0, 0, 0, 0, 1365, 1365, 1365,
- 1365, 0, 0, 0, 0, 1365, 1365, 1365, 1365, 1365,
- 1365, 1365, 1365, 1365, 1365, 1365, 1365, 1365, 1365, 1365,
- 1365, 1365, 1365, 1365, 1365, 1365, 1365, 1365, 1365, 1365,
- 1365, 1370, 0, 0, 1370, 0, 1370, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 1370, 1370,
- 1370, 1370, 1370, 1370, 1370, 1370, 1370, 0, 1374, 0,
-
- 0, 1374, 0, 1374, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 1374, 1374, 1374, 1374, 1374,
- 1374, 1374, 1374, 1374, 1370, 1372, 1372, 1372, 1372, 1372,
- 1372, 1372, 1372, 1372, 1372, 1372, 1372, 1372, 1372, 1372,
- 1372, 1372, 1372, 1372, 1372, 1372, 1372, 1372, 1372, 1372,
- 1372, 1374, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376,
- 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376,
- 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1378, 0,
- 0, 1378, 0, 1378, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 1378, 1378, 1378, 1378, 1378,
-
- 1378, 1378, 1378, 1378, 0, 0, 0, 0, 0, 0,
+ 125, 124, 120, 119, 118, 112, 105, 102, 100, 96,
+ 95, 93, 92, 89, 88, 1388, 1389, 85, 81, 78,
+ 75, 72, 71, 70, 1389, 1389, 1389, 1389, 69, 65,
+ 62, 58, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389,
+ 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389,
+ 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1390, 57,
+ 54, 1390, 49, 1390, 47, 46, 41, 37, 36, 35,
+ 18, 1390, 17, 1390, 0, 1390, 1390, 1390, 1390, 1390,
+
+ 1390, 1390, 1390, 1390, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 1378, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380,
- 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380,
- 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1380, 1410, 1410,
- 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1411,
- 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411, 1411,
- 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412, 1412,
- 1412, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413, 1413,
-
- 1413, 1413, 1414, 1414, 1414, 1414, 1414, 1414, 1414, 1414,
- 1414, 1414, 1414, 1415, 1415, 1415, 1415, 1415, 1415, 1415,
- 1415, 1415, 1415, 1415, 1416, 1416, 1416, 1416, 1416, 1416,
- 1416, 1416, 1416, 1416, 1416, 1417, 1417, 1417, 1417, 1417,
- 1417, 1417, 1417, 1417, 1417, 1417, 1418, 1418, 1418, 1418,
- 1418, 1418, 1418, 1418, 1418, 1418, 1418, 1419, 1419, 1419,
- 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1419, 1420, 1420,
- 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1420, 1421,
- 1421, 1421, 1421, 1422, 1422, 0, 1422, 1422, 1422, 1422,
- 1422, 1422, 1422, 1422, 1423, 0, 0, 0, 1423, 1423,
-
- 1423, 1423, 1423, 1423, 1423, 1424, 1424, 0, 0, 1424,
- 1424, 1424, 1424, 1424, 1424, 1424, 1425, 1425, 0, 1425,
- 1425, 1425, 1425, 1425, 1425, 1425, 1425, 1426, 0, 0,
- 0, 1426, 1426, 1426, 1426, 1426, 1426, 1426, 1427, 0,
- 0, 0, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1428,
- 0, 0, 0, 1428, 1428, 1428, 1428, 1428, 1428, 1428,
- 1429, 1429, 0, 1429, 1429, 1429, 1429, 1429, 1429, 1429,
- 1429, 1430, 1430, 0, 1430, 1430, 1430, 1430, 1430, 1430,
- 1430, 1430, 1431, 1431, 0, 1431, 1431, 1431, 1431, 1431,
- 1431, 1431, 1431, 1432, 1432, 0, 1432, 1432, 1432, 1432,
-
- 1432, 1432, 1432, 1432, 1433, 1433, 1433, 1433, 1433, 1433,
- 1433, 1433, 1433, 1433, 1433, 1434, 1434, 1434, 1434, 1435,
- 1435, 0, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
- 1436, 1436, 0, 1436, 1436, 1436, 1436, 1436, 1436, 1436,
- 1436, 1437, 1437, 0, 1437, 1437, 1437, 1437, 1437, 1437,
- 1437, 1437, 1438, 1438, 0, 1438, 1438, 1438, 1438, 1438,
- 1438, 1438, 1438, 1439, 0, 1439, 1439, 1440, 1440, 1441,
- 0, 0, 1441, 1441, 1442, 0, 0, 0, 1442, 1442,
- 1442, 1442, 1442, 1442, 1442, 1443, 1443, 0, 0, 1443,
- 1443, 1443, 1443, 1443, 1443, 1443, 1444, 1444, 0, 1444,
-
- 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1445, 0, 0,
- 0, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1446, 0,
- 0, 0, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1447,
- 0, 0, 0, 1447, 1447, 1447, 1447, 1447, 1447, 1447,
- 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1448,
- 1448, 1449, 1449, 0, 1449, 1449, 1449, 1449, 1449, 1449,
- 1449, 1449, 1450, 1450, 0, 1450, 1450, 1450, 1450, 1450,
- 1450, 1450, 1450, 1451, 1451, 0, 1451, 1451, 1451, 1451,
- 1451, 1451, 1451, 1451, 1452, 1452, 0, 1452, 1452, 1452,
- 1452, 1452, 1452, 1452, 1452, 1453, 1453, 0, 1453, 1453,
-
- 1453, 1453, 1453, 1453, 1453, 1453, 1454, 1454, 1454, 1454,
- 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1456, 1456, 0,
- 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1456, 1457, 1457,
- 0, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1458,
- 1458, 0, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458,
- 1459, 1459, 0, 1459, 1459, 1459, 1459, 1459, 1459, 1459,
- 1459, 1460, 1460, 0, 1460, 1460, 1460, 1460, 1460, 1460,
+ 0, 1390, 1391, 0, 0, 0, 0, 0, 0, 0,
+ 1391, 1391, 1391, 1391, 0, 0, 0, 0, 1391, 1391,
+ 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391,
+ 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391, 1391,
+ 1391, 1391, 1391, 1391, 1396, 0, 0, 1396, 0, 1396,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396, 1396,
+
+ 0, 1400, 0, 0, 1400, 0, 1400, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1400, 1400,
+ 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1396, 1398, 1398,
+ 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398,
+ 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398, 1398,
+ 1398, 1398, 1398, 1398, 1400, 1402, 1402, 1402, 1402, 1402,
+ 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402,
+ 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402,
+ 1402, 1404, 0, 0, 1404, 0, 1404, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1404, 1404,
+
+ 1404, 1404, 1404, 1404, 1404, 1404, 1404, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1404, 1406, 1406, 1406, 1406, 1406,
+ 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406,
+ 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406, 1406,
+ 1406, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436,
+ 1436, 1436, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
+ 1437, 1437, 1437, 1438, 1438, 1438, 1438, 1438, 1438, 1438,
+ 1438, 1438, 1438, 1438, 1439, 1439, 1439, 1439, 1439, 1439,
+
+ 1439, 1439, 1439, 1439, 1439, 1440, 1440, 1440, 1440, 1440,
+ 1440, 1440, 1440, 1440, 1440, 1440, 1441, 1441, 1441, 1441,
+ 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1442, 1442, 1442,
+ 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1442, 1443, 1443,
+ 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1443, 1444,
+ 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444, 1444,
+ 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445,
+ 1445, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446,
+ 1446, 1446, 1447, 1447, 1447, 1447, 1448, 1448, 0, 1448,
+ 1448, 1448, 1448, 1448, 1448, 1448, 1448, 1449, 0, 0,
+
+ 0, 1449, 1449, 1449, 1449, 1449, 1449, 1449, 1450, 1450,
+ 0, 0, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1451,
+ 1451, 0, 1451, 1451, 1451, 1451, 1451, 1451, 1451, 1451,
+ 1452, 0, 0, 0, 1452, 1452, 1452, 1452, 1452, 1452,
+ 1452, 1453, 0, 0, 0, 1453, 1453, 1453, 1453, 1453,
+ 1453, 1453, 1454, 0, 0, 0, 1454, 1454, 1454, 1454,
+ 1454, 1454, 1454, 1455, 1455, 0, 1455, 1455, 1455, 1455,
+ 1455, 1455, 1455, 1455, 1456, 1456, 0, 1456, 1456, 1456,
+ 1456, 1456, 1456, 1456, 1456, 1457, 1457, 0, 1457, 1457,
+ 1457, 1457, 1457, 1457, 1457, 1457, 1458, 1458, 0, 1458,
+
+ 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1459, 1459, 1459,
+ 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1459, 1460, 1460,
1460, 1460, 1461, 1461, 0, 1461, 1461, 1461, 1461, 1461,
- 1461, 1461, 1461, 1462, 1462, 1462, 1462, 1462, 0, 1462,
+ 1461, 1461, 1461, 1462, 1462, 0, 1462, 1462, 1462, 1462,
1462, 1462, 1462, 1462, 1463, 1463, 0, 1463, 1463, 1463,
-
- 1463, 1463, 1463, 1463, 1463, 1465, 1465, 1466, 1466, 1466,
- 1466, 0, 1466, 1466, 1466, 1466, 1466, 1466, 1467, 1467,
- 1467, 1467, 1467, 0, 1467, 1467, 1467, 1467, 1467, 1468,
- 1468, 0, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1468,
- 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1469,
- 1469, 1470, 1470, 0, 1470, 1470, 1470, 1470, 1470, 1470,
- 1470, 1470, 1471, 1471, 0, 1471, 1471, 1471, 1471, 1471,
- 1471, 1471, 1471, 1472, 1472, 0, 1472, 1472, 1472, 1472,
- 1472, 1472, 1472, 1472, 1473, 1473, 0, 1473, 1473, 1473,
- 1473, 1473, 1473, 1473, 1473, 1474, 1474, 0, 1474, 1474,
-
- 1474, 1474, 1474, 1474, 1474, 1474, 1475, 1475, 0, 1475,
- 1475, 1475, 1475, 1475, 1475, 1475, 1475, 1476, 1476, 0,
- 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1476, 1477, 1477,
- 0, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1478,
- 1478, 0, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478,
- 1479, 1479, 0, 1479, 1479, 1479, 1479, 1479, 1479, 1479,
- 1479, 1480, 1480, 0, 1480, 1480, 1480, 1480, 1480, 1480,
- 1480, 1480, 1481, 1481, 0, 1481, 1481, 1481, 1481, 1481,
- 1481, 1481, 1481, 1482, 1482, 0, 1482, 1482, 1482, 1482,
- 1482, 1482, 1482, 1482, 1483, 1483, 0, 1483, 1483, 1483,
-
- 1483, 1483, 1483, 1483, 1483, 1484, 1484, 0, 1484, 1484,
- 1484, 1484, 1484, 1484, 1484, 1484, 1485, 1485, 1485, 1485,
- 1485, 1485, 1485, 1485, 1485, 1485, 1485, 1487, 1487, 1488,
- 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488, 1488,
- 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489,
- 1489, 1490, 1490, 0, 1490, 1490, 1490, 1490, 1490, 1490,
- 1490, 1490, 1491, 1491, 0, 1491, 1491, 1491, 1491, 1491,
- 1491, 1491, 1491, 1492, 1492, 0, 1492, 1492, 1492, 1492,
- 1492, 1492, 1492, 1492, 1493, 1493, 0, 1493, 1493, 1493,
- 1493, 1493, 1493, 1493, 1493, 1494, 1494, 0, 1494, 1494,
-
- 1494, 1494, 1494, 1494, 1494, 1494, 1495, 1495, 0, 1495,
- 1495, 1495, 1495, 1495, 1495, 1495, 1495, 1496, 1496, 0,
- 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1496, 1497, 1497,
- 0, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1497, 1498,
- 1498, 0, 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1498,
- 1499, 1499, 0, 1499, 1499, 1499, 1499, 1499, 1499, 1499,
- 1499, 1500, 1500, 0, 1500, 1500, 1500, 1500, 1500, 1500,
- 1500, 1500, 1501, 1501, 0, 1501, 1501, 1501, 1501, 1501,
- 1501, 1501, 1501, 1502, 1502, 0, 1502, 1502, 1502, 1502,
- 1502, 1502, 1502, 1502, 1503, 1503, 0, 1503, 1503, 1503,
-
- 1503, 1503, 1503, 1503, 1503, 1504, 1504, 0, 1504, 1504,
- 1504, 1504, 1504, 1504, 1504, 1504, 1505, 1505, 0, 1505,
- 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1506, 1506, 0,
- 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1506, 1507, 1507,
- 0, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1507, 1508,
- 1508, 0, 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1508,
- 1509, 1509, 0, 1509, 1509, 1509, 1509, 1509, 1509, 1509,
- 1509, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510,
- 1510, 1510, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511,
- 1511, 1511, 1511, 1512, 1512, 1512, 1512, 1512, 1512, 1512,
-
- 1512, 1512, 1512, 1512, 1513, 1513, 0, 1513, 1513, 1513,
- 1513, 1513, 1513, 1513, 1513, 1514, 1514, 0, 1514, 1514,
- 1514, 1514, 1514, 1514, 1514, 1514, 1515, 1515, 0, 1515,
- 1515, 1515, 1515, 1515, 1515, 1515, 1515, 1516, 1516, 0,
- 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1516, 1517, 1517,
- 0, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1517, 1518,
- 1518, 0, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518,
- 1519, 1519, 0, 1519, 1519, 1519, 1519, 1519, 1519, 1519,
- 1519, 1520, 1520, 0, 1520, 1520, 1520, 1520, 1520, 1520,
- 1520, 1520, 1521, 1521, 0, 1521, 1521, 1521, 1521, 1521,
-
- 1521, 1521, 1521, 1522, 0, 1522, 1522, 1522, 1522, 1522,
- 1522, 1522, 1522, 1522, 1523, 1523, 0, 1523, 1523, 1523,
- 1523, 1523, 1523, 1523, 1523, 1524, 1524, 1524, 1524, 1524,
- 1524, 1524, 1524, 1524, 1524, 1524, 1525, 1525, 0, 1525,
- 1525, 1525, 1525, 1525, 1525, 1525, 1525, 1526, 1526, 0,
- 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1526, 1527, 1527,
- 0, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1527, 1528,
- 1528, 0, 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1528,
- 1529, 1529, 0, 1529, 1529, 1529, 1529, 1529, 1529, 1529,
- 1529, 1530, 1530, 0, 1530, 1530, 1530, 1530, 1530, 1530,
-
- 1530, 1530, 1531, 1531, 0, 1531, 1531, 1531, 1531, 1531,
- 1531, 1531, 1531, 1532, 1532, 0, 1532, 1532, 1532, 1532,
- 1532, 1532, 1532, 1532, 1533, 1533, 0, 1533, 1533, 1533,
- 1533, 1533, 1533, 1533, 1533, 1534, 1534, 0, 1534, 1534,
- 1534, 1534, 1534, 1534, 1534, 1534, 1535, 1535, 0, 1535,
- 1535, 1535, 1535, 1535, 1535, 1535, 1535, 1536, 1536, 0,
- 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1536, 1537, 1537,
- 0, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1537, 1538,
- 1538, 0, 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1538,
- 1539, 1539, 0, 1539, 1539, 1539, 1539, 1539, 1539, 1539,
-
- 1539, 1540, 1540, 0, 1540, 1540, 1540, 1540, 1540, 1540,
- 1540, 1540, 1541, 1541, 0, 1541, 1541, 1541, 1541, 1541,
- 1541, 1541, 1541, 1542, 1542, 0, 1542, 1542, 1542, 1542,
- 1542, 1542, 1542, 1542, 1543, 1543, 0, 1543, 1543, 1543,
- 1543, 1543, 1543, 1543, 1543, 1544, 1544, 0, 1544, 1544,
- 1544, 1544, 1544, 1544, 1544, 1544, 1545, 1545, 0, 1545,
- 1545, 1545, 1545, 1545, 1545, 1545, 1545, 1546, 1546, 0,
- 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1546, 1547, 1547,
- 0, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1547, 1548,
- 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548,
-
- 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549,
- 1549, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550,
- 1550, 1550, 1551, 1551, 0, 1551, 1551, 1551, 1551, 1551,
- 1551, 1551, 1551, 1552, 1552, 0, 1552, 1552, 1552, 1552,
- 1552, 1552, 1552, 1552, 1553, 1553, 0, 1553, 1553, 1553,
- 1553, 1553, 1553, 1553, 1553, 1554, 1554, 0, 1554, 1554,
- 1554, 1554, 1554, 1554, 1554, 1554, 1555, 1555, 0, 1555,
- 1555, 1555, 1555, 1555, 1555, 1555, 1555, 1556, 1556, 0,
- 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1556, 1557, 1557,
- 0, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1558,
-
- 0, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1558,
- 1559, 1559, 0, 1559, 1559, 1559, 1559, 1559, 1559, 1559,
- 1559, 1560, 1560, 0, 1560, 1560, 1560, 1560, 1560, 1560,
- 1560, 1560, 1561, 1561, 0, 1561, 1561, 1561, 1561, 1561,
- 1561, 1561, 1561, 1562, 0, 1562, 1562, 1563, 1563, 0,
- 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1563, 1564, 1564,
- 0, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1564, 1565,
- 1565, 0, 1565, 1565, 1565, 1565, 1565, 1565, 1565, 1565,
- 1566, 1566, 0, 1566, 1566, 1566, 1566, 1566, 1566, 1566,
- 1566, 1567, 1567, 0, 1567, 1567, 1567, 1567, 1567, 1567,
-
- 1567, 1567, 1568, 1568, 0, 1568, 1568, 1568, 1568, 1568,
- 1568, 1568, 1568, 1569, 1569, 0, 1569, 1569, 1569, 1569,
- 1569, 1569, 1569, 1569, 1570, 1570, 0, 1570, 1570, 1570,
- 1570, 1570, 1570, 1570, 1570, 1571, 1571, 1571, 1571, 1571,
- 1571, 1571, 1571, 1571, 1571, 1571, 1572, 1572, 0, 1572,
- 1572, 1572, 1572, 1572, 1572, 1572, 1572, 1573, 1573, 0,
- 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1573, 1574, 1574,
- 0, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1576,
- 1576, 0, 1576, 1576, 1576, 1576, 1576, 1576, 1576, 1576,
- 1577, 1577, 0, 1577, 1577, 1577, 1577, 1577, 1577, 1577,
-
- 1577, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1578,
- 1578, 1578, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579,
- 1579, 1579, 1579, 1580, 1580, 1580, 1580, 1580, 1580, 1580,
- 1580, 1580, 1580, 1580, 1581, 1581, 0, 1581, 1581, 1581,
- 1581, 1581, 1581, 1581, 1581, 1582, 0, 1582, 0, 1582,
+ 1463, 1463, 1463, 1463, 1463, 1464, 1464, 0, 1464, 1464,
+ 1464, 1464, 1464, 1464, 1464, 1464, 1465, 0, 1465, 1465,
+ 1466, 1466, 1467, 0, 0, 1467, 1467, 1468, 0, 0,
+ 0, 1468, 1468, 1468, 1468, 1468, 1468, 1468, 1469, 1469,
+ 0, 0, 1469, 1469, 1469, 1469, 1469, 1469, 1469, 1470,
+
+ 1470, 0, 1470, 1470, 1470, 1470, 1470, 1470, 1470, 1470,
+ 1471, 0, 0, 0, 1471, 1471, 1471, 1471, 1471, 1471,
+ 1471, 1472, 0, 0, 0, 1472, 1472, 1472, 1472, 1472,
+ 1472, 1472, 1473, 0, 0, 0, 1473, 1473, 1473, 1473,
+ 1473, 1473, 1473, 1474, 1474, 1474, 1474, 1474, 1474, 1474,
+ 1474, 1474, 1474, 1474, 1475, 1475, 0, 1475, 1475, 1475,
+ 1475, 1475, 1475, 1475, 1475, 1476, 1476, 0, 1476, 1476,
+ 1476, 1476, 1476, 1476, 1476, 1476, 1477, 1477, 0, 1477,
+ 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1478, 1478, 0,
+ 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1478, 1479, 1479,
+
+ 0, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1479, 1480,
+ 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480, 1480,
+ 1482, 1482, 0, 1482, 1482, 1482, 1482, 1482, 1482, 1482,
+ 1482, 1483, 1483, 0, 1483, 1483, 1483, 1483, 1483, 1483,
+ 1483, 1483, 1484, 1484, 0, 1484, 1484, 1484, 1484, 1484,
+ 1484, 1484, 1484, 1485, 1485, 0, 1485, 1485, 1485, 1485,
+ 1485, 1485, 1485, 1485, 1486, 1486, 0, 1486, 1486, 1486,
+ 1486, 1486, 1486, 1486, 1486, 1487, 1487, 0, 1487, 1487,
+ 1487, 1487, 1487, 1487, 1487, 1487, 1488, 1488, 1488, 1488,
+ 1488, 0, 1488, 1488, 1488, 1488, 1488, 1489, 1489, 0,
+
+ 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1489, 1491, 1491,
+ 1492, 1492, 1492, 1492, 0, 1492, 1492, 1492, 1492, 1492,
+ 1492, 1493, 1493, 1493, 1493, 1493, 0, 1493, 1493, 1493,
+ 1493, 1493, 1494, 1494, 0, 1494, 1494, 1494, 1494, 1494,
+ 1494, 1494, 1494, 1495, 1495, 1495, 1495, 1495, 1495, 1495,
+ 1495, 1495, 1495, 1495, 1496, 1496, 0, 1496, 1496, 1496,
+ 1496, 1496, 1496, 1496, 1496, 1497, 1497, 0, 1497, 1497,
+ 1497, 1497, 1497, 1497, 1497, 1497, 1498, 1498, 0, 1498,
+ 1498, 1498, 1498, 1498, 1498, 1498, 1498, 1499, 1499, 0,
+ 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1500, 1500,
+
+ 0, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1500, 1501,
+ 1501, 0, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501,
+ 1502, 1502, 0, 1502, 1502, 1502, 1502, 1502, 1502, 1502,
+ 1502, 1503, 1503, 0, 1503, 1503, 1503, 1503, 1503, 1503,
+ 1503, 1503, 1504, 1504, 0, 1504, 1504, 1504, 1504, 1504,
+ 1504, 1504, 1504, 1505, 1505, 0, 1505, 1505, 1505, 1505,
+ 1505, 1505, 1505, 1505, 1506, 1506, 0, 1506, 1506, 1506,
+ 1506, 1506, 1506, 1506, 1506, 1507, 1507, 0, 1507, 1507,
+ 1507, 1507, 1507, 1507, 1507, 1507, 1508, 1508, 0, 1508,
+ 1508, 1508, 1508, 1508, 1508, 1508, 1508, 1509, 1509, 0,
+
+ 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1509, 1510, 1510,
+ 0, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1510, 1511,
+ 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511, 1511,
+ 1513, 1513, 1514, 1514, 1514, 1514, 1514, 1514, 1514, 1514,
+ 1514, 1514, 1514, 1515, 1515, 1515, 1515, 1515, 1515, 1515,
+ 1515, 1515, 1515, 1515, 1516, 1516, 0, 1516, 1516, 1516,
+ 1516, 1516, 1516, 1516, 1516, 1517, 1517, 0, 1517, 1517,
+ 1517, 1517, 1517, 1517, 1517, 1517, 1518, 1518, 0, 1518,
+ 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1519, 1519, 0,
+ 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1519, 1520, 1520,
+
+ 0, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1520, 1521,
+ 1521, 0, 1521, 1521, 1521, 1521, 1521, 1521, 1521, 1521,
+ 1522, 1522, 0, 1522, 1522, 1522, 1522, 1522, 1522, 1522,
+ 1522, 1523, 1523, 0, 1523, 1523, 1523, 1523, 1523, 1523,
+ 1523, 1523, 1524, 1524, 0, 1524, 1524, 1524, 1524, 1524,
+ 1524, 1524, 1524, 1525, 1525, 0, 1525, 1525, 1525, 1525,
+ 1525, 1525, 1525, 1525, 1526, 1526, 0, 1526, 1526, 1526,
+ 1526, 1526, 1526, 1526, 1526, 1527, 1527, 0, 1527, 1527,
+ 1527, 1527, 1527, 1527, 1527, 1527, 1528, 1528, 0, 1528,
+ 1528, 1528, 1528, 1528, 1528, 1528, 1528, 1529, 1529, 0,
+
+ 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1529, 1530, 1530,
+ 0, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1530, 1531,
+ 1531, 0, 1531, 1531, 1531, 1531, 1531, 1531, 1531, 1531,
+ 1532, 1532, 0, 1532, 1532, 1532, 1532, 1532, 1532, 1532,
+ 1532, 1533, 1533, 0, 1533, 1533, 1533, 1533, 1533, 1533,
+ 1533, 1533, 1534, 1534, 0, 1534, 1534, 1534, 1534, 1534,
+ 1534, 1534, 1534, 1535, 1535, 0, 1535, 1535, 1535, 1535,
+ 1535, 1535, 1535, 1535, 1536, 1536, 1536, 1536, 1536, 1536,
+ 1536, 1536, 1536, 1536, 1536, 1537, 1537, 1537, 1537, 1537,
+ 1537, 1537, 1537, 1537, 1537, 1537, 1538, 1538, 1538, 1538,
+
+ 1538, 1538, 1538, 1538, 1538, 1538, 1538, 1539, 1539, 0,
+ 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1539, 1540, 1540,
+ 0, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1540, 1541,
+ 1541, 0, 1541, 1541, 1541, 1541, 1541, 1541, 1541, 1541,
+ 1542, 1542, 0, 1542, 1542, 1542, 1542, 1542, 1542, 1542,
+ 1542, 1543, 1543, 0, 1543, 1543, 1543, 1543, 1543, 1543,
+ 1543, 1543, 1544, 1544, 0, 1544, 1544, 1544, 1544, 1544,
+ 1544, 1544, 1544, 1545, 1545, 0, 1545, 1545, 1545, 1545,
+ 1545, 1545, 1545, 1545, 1546, 1546, 0, 1546, 1546, 1546,
+ 1546, 1546, 1546, 1546, 1546, 1547, 1547, 0, 1547, 1547,
+
+ 1547, 1547, 1547, 1547, 1547, 1547, 1548, 0, 1548, 1548,
+ 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1549, 1549, 0,
+ 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1549, 1550, 1550,
+ 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1550, 1551,
+ 1551, 0, 1551, 1551, 1551, 1551, 1551, 1551, 1551, 1551,
+ 1552, 1552, 0, 1552, 1552, 1552, 1552, 1552, 1552, 1552,
+ 1552, 1553, 1553, 0, 1553, 1553, 1553, 1553, 1553, 1553,
+ 1553, 1553, 1554, 1554, 0, 1554, 1554, 1554, 1554, 1554,
+ 1554, 1554, 1554, 1555, 1555, 0, 1555, 1555, 1555, 1555,
+ 1555, 1555, 1555, 1555, 1556, 1556, 0, 1556, 1556, 1556,
+
+ 1556, 1556, 1556, 1556, 1556, 1557, 1557, 0, 1557, 1557,
+ 1557, 1557, 1557, 1557, 1557, 1557, 1558, 1558, 0, 1558,
+ 1558, 1558, 1558, 1558, 1558, 1558, 1558, 1559, 1559, 0,
+ 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1559, 1560, 1560,
+ 0, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1560, 1561,
+ 1561, 0, 1561, 1561, 1561, 1561, 1561, 1561, 1561, 1561,
+ 1562, 1562, 0, 1562, 1562, 1562, 1562, 1562, 1562, 1562,
+ 1562, 1563, 1563, 0, 1563, 1563, 1563, 1563, 1563, 1563,
+ 1563, 1563, 1564, 1564, 0, 1564, 1564, 1564, 1564, 1564,
+ 1564, 1564, 1564, 1565, 1565, 0, 1565, 1565, 1565, 1565,
+
+ 1565, 1565, 1565, 1565, 1566, 1566, 0, 1566, 1566, 1566,
+ 1566, 1566, 1566, 1566, 1566, 1567, 1567, 0, 1567, 1567,
+ 1567, 1567, 1567, 1567, 1567, 1567, 1568, 1568, 0, 1568,
+ 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1569, 1569, 0,
+ 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1569, 1570, 1570,
+ 0, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1570, 1571,
+ 1571, 0, 1571, 1571, 1571, 1571, 1571, 1571, 1571, 1571,
+ 1572, 1572, 0, 1572, 1572, 1572, 1572, 1572, 1572, 1572,
+ 1572, 1573, 1573, 0, 1573, 1573, 1573, 1573, 1573, 1573,
+ 1573, 1573, 1574, 1574, 1574, 1574, 1574, 1574, 1574, 1574,
+
+ 1574, 1574, 1574, 1575, 1575, 1575, 1575, 1575, 1575, 1575,
+ 1575, 1575, 1575, 1575, 1576, 1576, 1576, 1576, 1576, 1576,
+ 1576, 1576, 1576, 1576, 1576, 1577, 1577, 0, 1577, 1577,
+ 1577, 1577, 1577, 1577, 1577, 1577, 1578, 1578, 0, 1578,
+ 1578, 1578, 1578, 1578, 1578, 1578, 1578, 1579, 1579, 0,
+ 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1579, 1580, 1580,
+ 0, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1580, 1581,
+ 1581, 0, 1581, 1581, 1581, 1581, 1581, 1581, 1581, 1581,
+ 1582, 1582, 0, 1582, 1582, 1582, 1582, 1582, 1582, 1582,
1582, 1583, 1583, 0, 1583, 1583, 1583, 1583, 1583, 1583,
- 1583, 1583, 1584, 0, 1584, 1584, 1585, 0, 1585, 1585,
- 1588, 1588, 0, 1588, 1588, 1588, 1588, 1588, 1588, 1588,
- 1588, 1589, 1589, 0, 1589, 1589, 1589, 1589, 1589, 1589,
- 1589, 1589, 1590, 1590, 0, 1590, 1590, 1590, 1590, 1590,
-
- 1590, 1590, 1590, 1591, 0, 1591, 1591, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
-
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409, 1409,
- 1409, 1409, 1409, 1409
+
+ 1583, 1583, 1584, 0, 1584, 1584, 1584, 1584, 1584, 1584,
+ 1584, 1584, 1584, 1585, 1585, 0, 1585, 1585, 1585, 1585,
+ 1585, 1585, 1585, 1585, 1586, 1586, 0, 1586, 1586, 1586,
+ 1586, 1586, 1586, 1586, 1586, 1587, 1587, 0, 1587, 1587,
+ 1587, 1587, 1587, 1587, 1587, 1587, 1588, 0, 1588, 1588,
+ 1589, 1589, 0, 1589, 1589, 1589, 1589, 1589, 1589, 1589,
+ 1589, 1590, 1590, 0, 1590, 1590, 1590, 1590, 1590, 1590,
+ 1590, 1590, 1591, 1591, 0, 1591, 1591, 1591, 1591, 1591,
+ 1591, 1591, 1591, 1592, 1592, 0, 1592, 1592, 1592, 1592,
+ 1592, 1592, 1592, 1592, 1593, 1593, 0, 1593, 1593, 1593,
+
+ 1593, 1593, 1593, 1593, 1593, 1594, 1594, 0, 1594, 1594,
+ 1594, 1594, 1594, 1594, 1594, 1594, 1595, 1595, 0, 1595,
+ 1595, 1595, 1595, 1595, 1595, 1595, 1595, 1596, 1596, 0,
+ 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1596, 1597, 1597,
+ 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1597, 1598,
+ 1598, 0, 1598, 1598, 1598, 1598, 1598, 1598, 1598, 1598,
+ 1599, 1599, 0, 1599, 1599, 1599, 1599, 1599, 1599, 1599,
+ 1599, 1600, 1600, 0, 1600, 1600, 1600, 1600, 1600, 1600,
+ 1600, 1600, 1602, 1602, 0, 1602, 1602, 1602, 1602, 1602,
+ 1602, 1602, 1602, 1603, 1603, 0, 1603, 1603, 1603, 1603,
+
+ 1603, 1603, 1603, 1603, 1604, 1604, 1604, 1604, 1604, 1604,
+ 1604, 1604, 1604, 1604, 1604, 1605, 1605, 1605, 1605, 1605,
+ 1605, 1605, 1605, 1605, 1605, 1605, 1606, 1606, 1606, 1606,
+ 1606, 1606, 1606, 1606, 1606, 1606, 1606, 1607, 1607, 0,
+ 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1607, 1608, 0,
+ 1608, 0, 1608, 1608, 1609, 1609, 0, 1609, 1609, 1609,
+ 1609, 1609, 1609, 1609, 1609, 1610, 0, 1610, 1610, 1611,
+ 0, 1611, 1611, 1614, 1614, 0, 1614, 1614, 1614, 1614,
+ 1614, 1614, 1614, 1614, 1615, 1615, 0, 1615, 1615, 1615,
+ 1615, 1615, 1615, 1615, 1615, 1616, 1616, 0, 1616, 1616,
+
+ 1616, 1616, 1616, 1616, 1616, 1616, 1617, 0, 1617, 1617,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435,
+ 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1435
} ;
static yy_state_type yy_last_accepting_state;
@@ -2571,9 +2607,9 @@ int yy_flex_debug = 0;
#define YY_MORE_ADJ 0
#define YY_RESTORE_YY_MORE_OFFSET
char *yytext;
-#line 1 "lexgrog.l"
+#line 1 "../../../src/lexgrog.l"
-#line 8 "lexgrog.l"
+#line 15 "../../../src/lexgrog.l"
/*
* lexgrog.l: extract 'whatis' info from nroff man / formatted cat pages.
@@ -2803,9 +2839,9 @@ static pipeline *decomp;
result = YY_NULL; \
}
#define YY_NO_INPUT
-#line 2807 "lexgrog.c"
+#line 2843 "../../../src/lexgrog.c"
-#line 283 "lexgrog.l"
+#line 290 "../../../src/lexgrog.l"
/* Please add to this list if you know how. */
/* Note that, since flex only supports UTF-8 by accident, character classes
* including non-ASCII characters must be written out as (a|b|c|d) rather
@@ -2813,7 +2849,7 @@ static pipeline *decomp;
*/
/* NOME also works for gl, pt */
/* eptgrv : eqn, pic, tbl, grap, refer, vgrind */
-#line 2817 "lexgrog.c"
+#line 2853 "../../../src/lexgrog.c"
#define INITIAL 0
#define MAN_PRENAME 1
@@ -3045,11 +3081,11 @@ YY_DECL
}
{
-#line 327 "lexgrog.l"
+#line 337 "../../../src/lexgrog.l"
/* begin NAME section processing */
-#line 3053 "lexgrog.c"
+#line 3089 "../../../src/lexgrog.c"
while ( /*CONSTCOND*/1 ) /* loops until end-of-file is reached */
{
@@ -3076,13 +3112,13 @@ yy_match:
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
{
yy_current_state = (int) yy_def[yy_current_state];
- if ( yy_current_state >= 1410 )
+ if ( yy_current_state >= 1436 )
yy_c = yy_meta[yy_c];
}
yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
++yy_cp;
}
- while ( yy_current_state != 1409 );
+ while ( yy_current_state != 1435 );
yy_cp = (yy_last_accepting_cpos);
yy_current_state = (yy_last_accepting_state);
@@ -3105,42 +3141,42 @@ do_action: /* This label is used only to access EOF actions. */
case 1:
/* rule 1 can match eol */
YY_RULE_SETUP
-#line 330 "lexgrog.l"
+#line 340 "../../../src/lexgrog.l"
BEGIN (MAN_PRENAME);
YY_BREAK
case 2:
/* rule 2 can match eol */
YY_RULE_SETUP
-#line 331 "lexgrog.l"
+#line 341 "../../../src/lexgrog.l"
BEGIN (CAT_NAME);
YY_BREAK
/* general text matching */
case 3:
-#line 336 "lexgrog.l"
+#line 346 "../../../src/lexgrog.l"
case 4:
-#line 337 "lexgrog.l"
+#line 347 "../../../src/lexgrog.l"
case 5:
-#line 338 "lexgrog.l"
+#line 348 "../../../src/lexgrog.l"
case 6:
/* rule 6 can match eol */
YY_RULE_SETUP
-#line 338 "lexgrog.l"
+#line 348 "../../../src/lexgrog.l"
YY_BREAK
case 7:
-#line 343 "lexgrog.l"
+#line 353 "../../../src/lexgrog.l"
case 8:
-#line 344 "lexgrog.l"
+#line 354 "../../../src/lexgrog.l"
case 9:
/* rule 9 can match eol */
-#line 345 "lexgrog.l"
+#line 355 "../../../src/lexgrog.l"
case 10:
/* rule 10 can match eol */
YY_RULE_SETUP
-#line 345 "lexgrog.l"
+#line 355 "../../../src/lexgrog.l"
YY_BREAK
@@ -3148,45 +3184,45 @@ YY_RULE_SETUP
case 11:
/* rule 11 can match eol */
YY_RULE_SETUP
-#line 349 "lexgrog.l"
+#line 359 "../../../src/lexgrog.l"
filters[TBL_FILTER] = 't';
YY_BREAK
case 12:
/* rule 12 can match eol */
YY_RULE_SETUP
-#line 350 "lexgrog.l"
+#line 360 "../../../src/lexgrog.l"
filters[EQN_FILTER] = 'e';
YY_BREAK
case 13:
/* rule 13 can match eol */
YY_RULE_SETUP
-#line 351 "lexgrog.l"
+#line 361 "../../../src/lexgrog.l"
filters[PIC_FILTER] = 'p';
YY_BREAK
case 14:
/* rule 14 can match eol */
YY_RULE_SETUP
-#line 352 "lexgrog.l"
+#line 362 "../../../src/lexgrog.l"
filters[GRAP_FILTER] = 'g';
YY_BREAK
case 15:
/* rule 15 can match eol */
-#line 354 "lexgrog.l"
+#line 364 "../../../src/lexgrog.l"
case 16:
/* rule 16 can match eol */
YY_RULE_SETUP
-#line 354 "lexgrog.l"
+#line 364 "../../../src/lexgrog.l"
filters[REF_FILTER] = 'r';
YY_BREAK
case 17:
/* rule 17 can match eol */
YY_RULE_SETUP
-#line 355 "lexgrog.l"
+#line 365 "../../../src/lexgrog.l"
filters[VGRIND_FILTER] = 'v';
YY_BREAK
case YY_STATE_EOF(MAN_REST):
-#line 357 "lexgrog.l"
+#line 367 "../../../src/lexgrog.l"
{ /* exit */
*p_name = '\0'; /* terminate the string */
yyterminate ();
@@ -3195,14 +3231,14 @@ case YY_STATE_EOF(MAN_REST):
case 18:
/* rule 18 can match eol */
YY_RULE_SETUP
-#line 361 "lexgrog.l"
+#line 371 "../../../src/lexgrog.l"
YY_BREAK
/* rules to end NAME section processing */
case 19:
/* rule 19 can match eol */
YY_RULE_SETUP
-#line 364 "lexgrog.l"
+#line 374 "../../../src/lexgrog.l"
{ /* forced exit */
*p_name = '\0'; /* terminate the string */
yyterminate ();
@@ -3210,10 +3246,10 @@ YY_RULE_SETUP
YY_BREAK
case 20:
/* rule 20 can match eol */
-#line 370 "lexgrog.l"
+#line 380 "../../../src/lexgrog.l"
YY_RULE_SETUP
case YY_STATE_EOF(MAN_PRENAME):
-#line 370 "lexgrog.l"
+#line 380 "../../../src/lexgrog.l"
{ /* no NAME at all */
*p_name = '\0';
BEGIN (MAN_REST);
@@ -3224,23 +3260,23 @@ case YY_STATE_EOF(MAN_PRENAME):
case 21:
/* rule 21 can match eol */
-#line 379 "lexgrog.l"
+#line 389 "../../../src/lexgrog.l"
case 22:
/* rule 22 can match eol */
-#line 380 "lexgrog.l"
+#line 390 "../../../src/lexgrog.l"
case 23:
/* rule 23 can match eol */
-#line 381 "lexgrog.l"
+#line 391 "../../../src/lexgrog.l"
case 24:
/* rule 24 can match eol */
-#line 382 "lexgrog.l"
+#line 392 "../../../src/lexgrog.l"
case 25:
/* rule 25 can match eol */
-#line 383 "lexgrog.l"
+#line 393 "../../../src/lexgrog.l"
case 26:
/* rule 26 can match eol */
YY_RULE_SETUP
-#line 383 "lexgrog.l"
+#line 393 "../../../src/lexgrog.l"
{
yyless (0);
BEGIN (MAN_NAME);
@@ -3252,19 +3288,19 @@ YY_RULE_SETUP
case 27:
/* rule 27 can match eol */
YY_RULE_SETUP
-#line 391 "lexgrog.l"
+#line 401 "../../../src/lexgrog.l"
YY_BREAK
case 28:
/* rule 28 can match eol */
YY_RULE_SETUP
-#line 393 "lexgrog.l"
+#line 403 "../../../src/lexgrog.l"
yyless (1);
YY_BREAK
case 29:
/* rule 29 can match eol */
YY_RULE_SETUP
-#line 395 "lexgrog.l"
+#line 405 "../../../src/lexgrog.l"
{
yyless (0);
BEGIN (MAN_NAME);
@@ -3273,30 +3309,30 @@ YY_RULE_SETUP
case 30:
/* rule 30 can match eol */
-#line 402 "lexgrog.l"
+#line 412 "../../../src/lexgrog.l"
case 31:
/* rule 31 can match eol */
-#line 403 "lexgrog.l"
+#line 413 "../../../src/lexgrog.l"
case 32:
/* rule 32 can match eol */
-#line 404 "lexgrog.l"
+#line 414 "../../../src/lexgrog.l"
case 33:
/* rule 33 can match eol */
-#line 405 "lexgrog.l"
+#line 415 "../../../src/lexgrog.l"
case 34:
/* rule 34 can match eol */
-#line 406 "lexgrog.l"
+#line 416 "../../../src/lexgrog.l"
case 35:
/* rule 35 can match eol */
-#line 407 "lexgrog.l"
+#line 417 "../../../src/lexgrog.l"
case 36:
/* rule 36 can match eol */
-#line 408 "lexgrog.l"
+#line 418 "../../../src/lexgrog.l"
YY_RULE_SETUP
case YY_STATE_EOF(MAN_NAME):
YY_RULE_SETUP
case YY_STATE_EOF(MAN_DESC):
-#line 408 "lexgrog.l"
+#line 418 "../../../src/lexgrog.l"
{ /* terminate the string */
*p_name = '\0';
BEGIN (MAN_REST);
@@ -3306,14 +3342,14 @@ case YY_STATE_EOF(MAN_DESC):
case 37:
/* rule 37 can match eol */
-#line 416 "lexgrog.l"
+#line 426 "../../../src/lexgrog.l"
case 38:
/* rule 38 can match eol */
-#line 417 "lexgrog.l"
+#line 427 "../../../src/lexgrog.l"
case 39:
/* rule 39 can match eol */
YY_RULE_SETUP
-#line 417 "lexgrog.l"
+#line 427 "../../../src/lexgrog.l"
{ /* terminate the string */
*p_name = '\0';
BEGIN (CAT_REST);
@@ -3327,7 +3363,7 @@ YY_RULE_SETUP
case 40:
/* rule 40 can match eol */
YY_RULE_SETUP
-#line 427 "lexgrog.l"
+#line 437 "../../../src/lexgrog.l"
{
newline_found ();
waiting_for_quote = 1;
@@ -3335,32 +3371,32 @@ YY_RULE_SETUP
YY_BREAK
case 41:
/* rule 41 can match eol */
-#line 433 "lexgrog.l"
+#line 443 "../../../src/lexgrog.l"
case 42:
/* rule 42 can match eol */
-#line 434 "lexgrog.l"
+#line 444 "../../../src/lexgrog.l"
case 43:
/* rule 43 can match eol */
-#line 435 "lexgrog.l"
+#line 445 "../../../src/lexgrog.l"
case 44:
/* rule 44 can match eol */
-#line 436 "lexgrog.l"
+#line 446 "../../../src/lexgrog.l"
case 45:
/* rule 45 can match eol */
-#line 437 "lexgrog.l"
+#line 447 "../../../src/lexgrog.l"
case 46:
/* rule 46 can match eol */
-#line 438 "lexgrog.l"
+#line 448 "../../../src/lexgrog.l"
case 47:
/* rule 47 can match eol */
-#line 439 "lexgrog.l"
+#line 449 "../../../src/lexgrog.l"
case 48:
/* rule 48 can match eol */
-#line 440 "lexgrog.l"
+#line 450 "../../../src/lexgrog.l"
case 49:
/* rule 49 can match eol */
YY_RULE_SETUP
-#line 440 "lexgrog.l"
+#line 450 "../../../src/lexgrog.l"
{ /* per line comments */
newline_found ();
}
@@ -3375,7 +3411,7 @@ YY_LINENO_REWIND_TO(yy_cp - 1);
(yy_c_buf_p) = yy_cp -= 1;
YY_DO_BEFORE_ACTION; /* set up yytext again */
YY_RULE_SETUP
-#line 447 "lexgrog.l"
+#line 457 "../../../src/lexgrog.l"
newline_found ();
YY_BREAK
case 51:
@@ -3385,7 +3421,7 @@ YY_LINENO_REWIND_TO(yy_cp - 1);
(yy_c_buf_p) = yy_cp -= 1;
YY_DO_BEFORE_ACTION; /* set up yytext again */
YY_RULE_SETUP
-#line 448 "lexgrog.l"
+#line 458 "../../../src/lexgrog.l"
newline_found ();
YY_BREAK
@@ -3394,37 +3430,37 @@ newline_found ();
case 52:
/* rule 52 can match eol */
YY_RULE_SETUP
-#line 453 "lexgrog.l"
+#line 463 "../../../src/lexgrog.l"
fill_mode = 0;
YY_BREAK
case 53:
/* rule 53 can match eol */
YY_RULE_SETUP
-#line 454 "lexgrog.l"
+#line 464 "../../../src/lexgrog.l"
fill_mode = 1;
YY_BREAK
case 54:
/* rule 54 can match eol */
YY_RULE_SETUP
-#line 457 "lexgrog.l"
+#line 467 "../../../src/lexgrog.l"
/* strip continuations */
YY_BREAK
/* convert to DASH */
case 55:
/* rule 55 can match eol */
-#line 462 "lexgrog.l"
+#line 472 "../../../src/lexgrog.l"
case 56:
/* rule 56 can match eol */
-#line 463 "lexgrog.l"
+#line 473 "../../../src/lexgrog.l"
case 57:
/* rule 57 can match eol */
-#line 464 "lexgrog.l"
+#line 474 "../../../src/lexgrog.l"
case 58:
/* rule 58 can match eol */
YY_RULE_SETUP
-#line 464 "lexgrog.l"
+#line 474 "../../../src/lexgrog.l"
{
add_separator_to_whatis ();
BEGIN (MAN_DESC);
@@ -3434,7 +3470,7 @@ YY_RULE_SETUP
case 59:
/* rule 59 can match eol */
YY_RULE_SETUP
-#line 469 "lexgrog.l"
+#line 479 "../../../src/lexgrog.l"
add_separator_to_whatis ();
YY_BREAK
/* escape sequences and special characters */
@@ -3442,141 +3478,141 @@ add_separator_to_whatis ();
case 60:
/* rule 60 can match eol */
YY_RULE_SETUP
-#line 473 "lexgrog.l"
+#line 483 "../../../src/lexgrog.l"
add_char_to_whatis ('\\');
YY_BREAK
case 61:
/* rule 61 can match eol */
YY_RULE_SETUP
-#line 474 "lexgrog.l"
+#line 484 "../../../src/lexgrog.l"
add_char_to_whatis ('\'');
YY_BREAK
case 62:
/* rule 62 can match eol */
YY_RULE_SETUP
-#line 475 "lexgrog.l"
+#line 485 "../../../src/lexgrog.l"
add_char_to_whatis ('`');
YY_BREAK
case 63:
/* rule 63 can match eol */
YY_RULE_SETUP
-#line 476 "lexgrog.l"
+#line 486 "../../../src/lexgrog.l"
add_char_to_whatis ('-');
YY_BREAK
case 64:
/* rule 64 can match eol */
YY_RULE_SETUP
-#line 477 "lexgrog.l"
+#line 487 "../../../src/lexgrog.l"
add_char_to_whatis ('.');
YY_BREAK
case 65:
/* rule 65 can match eol */
YY_RULE_SETUP
-#line 478 "lexgrog.l"
+#line 488 "../../../src/lexgrog.l"
add_char_to_whatis (' ');
YY_BREAK
case 66:
/* rule 66 can match eol */
YY_RULE_SETUP
-#line 479 "lexgrog.l"
+#line 489 "../../../src/lexgrog.l"
add_char_to_whatis ('_');
YY_BREAK
case 67:
/* rule 67 can match eol */
YY_RULE_SETUP
-#line 480 "lexgrog.l"
+#line 490 "../../../src/lexgrog.l"
add_char_to_whatis ('\t');
YY_BREAK
case 68:
/* rule 68 can match eol */
YY_RULE_SETUP
-#line 482 "lexgrog.l"
+#line 492 "../../../src/lexgrog.l"
/* various useless control chars */
YY_BREAK
case 69:
/* rule 69 can match eol */
YY_RULE_SETUP
-#line 483 "lexgrog.l"
+#line 493 "../../../src/lexgrog.l"
/* various inline functions */
YY_BREAK
case 70:
/* rule 70 can match eol */
YY_RULE_SETUP
-#line 485 "lexgrog.l"
+#line 495 "../../../src/lexgrog.l"
/* interpolate arg */
YY_BREAK
/* roff named glyphs */
case 71:
/* rule 71 can match eol */
YY_RULE_SETUP
-#line 488 "lexgrog.l"
+#line 498 "../../../src/lexgrog.l"
add_glyph_to_whatis (yytext + 2, 2);
YY_BREAK
/* perldoc strings */
case 72:
/* rule 72 can match eol */
YY_RULE_SETUP
-#line 490 "lexgrog.l"
+#line 500 "../../../src/lexgrog.l"
add_perldoc_to_whatis (yytext + 3, 2);
YY_BREAK
case 73:
/* rule 73 can match eol */
YY_RULE_SETUP
-#line 491 "lexgrog.l"
+#line 501 "../../../src/lexgrog.l"
add_perldoc_to_whatis (yytext + 2, 1);
YY_BREAK
case 74:
/* rule 74 can match eol */
YY_RULE_SETUP
-#line 493 "lexgrog.l"
+#line 503 "../../../src/lexgrog.l"
/* comment */
YY_BREAK
case 75:
/* rule 75 can match eol */
YY_RULE_SETUP
-#line 495 "lexgrog.l"
+#line 505 "../../../src/lexgrog.l"
/* font changes */
YY_BREAK
case 76:
/* rule 76 can match eol */
YY_RULE_SETUP
-#line 496 "lexgrog.l"
+#line 506 "../../../src/lexgrog.l"
/* mark input place in register */
YY_BREAK
case 77:
/* rule 77 can match eol */
YY_RULE_SETUP
-#line 498 "lexgrog.l"
+#line 508 "../../../src/lexgrog.l"
/* interpolate number register */
YY_BREAK
case 78:
/* rule 78 can match eol */
YY_RULE_SETUP
-#line 499 "lexgrog.l"
+#line 509 "../../../src/lexgrog.l"
/* overstrike chars */
YY_BREAK
case 79:
/* rule 79 can match eol */
YY_RULE_SETUP
-#line 501 "lexgrog.l"
+#line 511 "../../../src/lexgrog.l"
/* size changes */
YY_BREAK
case 80:
/* rule 80 can match eol */
YY_RULE_SETUP
-#line 502 "lexgrog.l"
+#line 512 "../../../src/lexgrog.l"
/* width of string */
YY_BREAK
case 81:
/* rule 81 can match eol */
YY_RULE_SETUP
-#line 504 "lexgrog.l"
+#line 514 "../../../src/lexgrog.l"
/* catch all */
YY_BREAK
case 82:
/* rule 82 can match eol */
YY_RULE_SETUP
-#line 506 "lexgrog.l"
+#line 516 "../../../src/lexgrog.l"
/* function() in hpux */
YY_BREAK
@@ -3587,49 +3623,49 @@ YY_RULE_SETUP
case 83:
/* rule 83 can match eol */
YY_RULE_SETUP
-#line 513 "lexgrog.l"
+#line 523 "../../../src/lexgrog.l"
BEGIN (MAN_DESC_AT);
YY_BREAK
case 84:
/* rule 84 can match eol */
YY_RULE_SETUP
-#line 514 "lexgrog.l"
+#line 524 "../../../src/lexgrog.l"
BEGIN (MAN_DESC_BSX);
YY_BREAK
case 85:
/* rule 85 can match eol */
YY_RULE_SETUP
-#line 515 "lexgrog.l"
+#line 525 "../../../src/lexgrog.l"
BEGIN (MAN_DESC_BX);
YY_BREAK
case 86:
/* rule 86 can match eol */
YY_RULE_SETUP
-#line 516 "lexgrog.l"
+#line 526 "../../../src/lexgrog.l"
BEGIN (MAN_DESC_FX);
YY_BREAK
case 87:
/* rule 87 can match eol */
YY_RULE_SETUP
-#line 517 "lexgrog.l"
+#line 527 "../../../src/lexgrog.l"
BEGIN (MAN_DESC_NX);
YY_BREAK
case 88:
/* rule 88 can match eol */
YY_RULE_SETUP
-#line 518 "lexgrog.l"
+#line 528 "../../../src/lexgrog.l"
BEGIN (MAN_DESC_OX);
YY_BREAK
case 89:
/* rule 89 can match eol */
YY_RULE_SETUP
-#line 519 "lexgrog.l"
+#line 529 "../../../src/lexgrog.l"
add_word_to_whatis ("UNIX");
YY_BREAK
case 90:
/* rule 90 can match eol */
YY_RULE_SETUP
-#line 521 "lexgrog.l"
+#line 531 "../../../src/lexgrog.l"
{
add_word_to_whatis ("\"");
BEGIN (MAN_DESC_DQ);
@@ -3639,73 +3675,73 @@ YY_RULE_SETUP
case 91:
YY_RULE_SETUP
-#line 528 "lexgrog.l"
+#line 538 "../../../src/lexgrog.l"
mdoc_text ("Version 32V AT&T UNIX");
YY_BREAK
case 92:
YY_RULE_SETUP
-#line 529 "lexgrog.l"
+#line 539 "../../../src/lexgrog.l"
mdoc_text ("Version 1 AT&T UNIX");
YY_BREAK
case 93:
YY_RULE_SETUP
-#line 530 "lexgrog.l"
+#line 540 "../../../src/lexgrog.l"
mdoc_text ("Version 2 AT&T UNIX");
YY_BREAK
case 94:
YY_RULE_SETUP
-#line 531 "lexgrog.l"
+#line 541 "../../../src/lexgrog.l"
mdoc_text ("Version 3 AT&T UNIX");
YY_BREAK
case 95:
YY_RULE_SETUP
-#line 532 "lexgrog.l"
+#line 542 "../../../src/lexgrog.l"
mdoc_text ("Version 4 AT&T UNIX");
YY_BREAK
case 96:
YY_RULE_SETUP
-#line 533 "lexgrog.l"
+#line 543 "../../../src/lexgrog.l"
mdoc_text ("Version 5 AT&T UNIX");
YY_BREAK
case 97:
YY_RULE_SETUP
-#line 534 "lexgrog.l"
+#line 544 "../../../src/lexgrog.l"
mdoc_text ("Version 6 AT&T UNIX");
YY_BREAK
case 98:
YY_RULE_SETUP
-#line 535 "lexgrog.l"
+#line 545 "../../../src/lexgrog.l"
mdoc_text ("Version 7 AT&T UNIX");
YY_BREAK
case 99:
YY_RULE_SETUP
-#line 536 "lexgrog.l"
+#line 546 "../../../src/lexgrog.l"
mdoc_text ("AT&T System V UNIX");
YY_BREAK
case 100:
YY_RULE_SETUP
-#line 537 "lexgrog.l"
+#line 547 "../../../src/lexgrog.l"
mdoc_text ("AT&T System V.1 UNIX");
YY_BREAK
case 101:
YY_RULE_SETUP
-#line 538 "lexgrog.l"
+#line 548 "../../../src/lexgrog.l"
mdoc_text ("AT&T System V.2 UNIX");
YY_BREAK
case 102:
YY_RULE_SETUP
-#line 539 "lexgrog.l"
+#line 549 "../../../src/lexgrog.l"
mdoc_text ("AT&T System V.3 UNIX");
YY_BREAK
case 103:
YY_RULE_SETUP
-#line 540 "lexgrog.l"
+#line 550 "../../../src/lexgrog.l"
mdoc_text ("AT&T System V.4 UNIX");
YY_BREAK
case 104:
/* rule 104 can match eol */
YY_RULE_SETUP
-#line 541 "lexgrog.l"
+#line 551 "../../../src/lexgrog.l"
{
yyless (0);
mdoc_text ("AT&T UNIX");
@@ -3715,7 +3751,7 @@ YY_RULE_SETUP
case 105:
YY_RULE_SETUP
-#line 548 "lexgrog.l"
+#line 558 "../../../src/lexgrog.l"
{
add_word_to_whatis ("BSD/OS");
add_wordn_to_whatis (yytext, yyleng);
@@ -3725,7 +3761,7 @@ YY_RULE_SETUP
case 106:
/* rule 106 can match eol */
YY_RULE_SETUP
-#line 553 "lexgrog.l"
+#line 563 "../../../src/lexgrog.l"
{
yyless (0);
mdoc_text ("BSD/OS");
@@ -3735,22 +3771,22 @@ YY_RULE_SETUP
case 107:
YY_RULE_SETUP
-#line 560 "lexgrog.l"
+#line 570 "../../../src/lexgrog.l"
mdoc_text ("BSD (currently in alpha test)");
YY_BREAK
case 108:
YY_RULE_SETUP
-#line 561 "lexgrog.l"
+#line 571 "../../../src/lexgrog.l"
mdoc_text ("BSD (currently in beta test)");
YY_BREAK
case 109:
YY_RULE_SETUP
-#line 562 "lexgrog.l"
+#line 572 "../../../src/lexgrog.l"
mdoc_text ("BSD (currently under development");
YY_BREAK
case 110:
YY_RULE_SETUP
-#line 563 "lexgrog.l"
+#line 573 "../../../src/lexgrog.l"
{
add_wordn_to_whatis (yytext, yyleng);
add_str_to_whatis ("BSD", 3);
@@ -3760,7 +3796,7 @@ YY_RULE_SETUP
case 111:
/* rule 111 can match eol */
YY_RULE_SETUP
-#line 568 "lexgrog.l"
+#line 578 "../../../src/lexgrog.l"
{
yyless (0);
mdoc_text ("BSD");
@@ -3770,7 +3806,7 @@ YY_RULE_SETUP
case 112:
YY_RULE_SETUP
-#line 575 "lexgrog.l"
+#line 585 "../../../src/lexgrog.l"
{
add_str_to_whatis ("-Reno", 5);
BEGIN (MAN_DESC);
@@ -3778,7 +3814,7 @@ YY_RULE_SETUP
YY_BREAK
case 113:
YY_RULE_SETUP
-#line 579 "lexgrog.l"
+#line 589 "../../../src/lexgrog.l"
{
add_str_to_whatis ("-Tahoe", 6);
BEGIN (MAN_DESC);
@@ -3786,7 +3822,7 @@ YY_RULE_SETUP
YY_BREAK
case 114:
YY_RULE_SETUP
-#line 583 "lexgrog.l"
+#line 593 "../../../src/lexgrog.l"
{
add_str_to_whatis ("-Lite", 5);
BEGIN (MAN_DESC);
@@ -3794,7 +3830,7 @@ YY_RULE_SETUP
YY_BREAK
case 115:
YY_RULE_SETUP
-#line 587 "lexgrog.l"
+#line 597 "../../../src/lexgrog.l"
{
add_str_to_whatis ("-Lite2", 6);
BEGIN (MAN_DESC);
@@ -3803,7 +3839,7 @@ YY_RULE_SETUP
case 116:
/* rule 116 can match eol */
YY_RULE_SETUP
-#line 591 "lexgrog.l"
+#line 601 "../../../src/lexgrog.l"
{
yyless (0);
BEGIN (MAN_DESC);
@@ -3812,7 +3848,7 @@ YY_RULE_SETUP
case 117:
YY_RULE_SETUP
-#line 597 "lexgrog.l"
+#line 607 "../../../src/lexgrog.l"
{
add_str_to_whatis (yytext, yyleng);
add_char_to_whatis ('"');
@@ -3822,7 +3858,7 @@ YY_RULE_SETUP
case 118:
YY_RULE_SETUP
-#line 604 "lexgrog.l"
+#line 614 "../../../src/lexgrog.l"
{
add_word_to_whatis ("FreeBSD");
add_wordn_to_whatis (yytext, yyleng);
@@ -3832,7 +3868,7 @@ YY_RULE_SETUP
case 119:
/* rule 119 can match eol */
YY_RULE_SETUP
-#line 609 "lexgrog.l"
+#line 619 "../../../src/lexgrog.l"
{
yyless (0);
mdoc_text ("FreeBSD");
@@ -3842,7 +3878,7 @@ YY_RULE_SETUP
case 120:
YY_RULE_SETUP
-#line 616 "lexgrog.l"
+#line 626 "../../../src/lexgrog.l"
{
add_word_to_whatis ("NetBSD");
add_wordn_to_whatis (yytext, yyleng);
@@ -3852,7 +3888,7 @@ YY_RULE_SETUP
case 121:
/* rule 121 can match eol */
YY_RULE_SETUP
-#line 621 "lexgrog.l"
+#line 631 "../../../src/lexgrog.l"
{
yyless (0);
mdoc_text ("NetBSD");
@@ -3862,7 +3898,7 @@ YY_RULE_SETUP
case 122:
YY_RULE_SETUP
-#line 628 "lexgrog.l"
+#line 638 "../../../src/lexgrog.l"
{
add_word_to_whatis ("OpenBSD");
add_wordn_to_whatis (yytext, yyleng);
@@ -3872,7 +3908,7 @@ YY_RULE_SETUP
case 123:
/* rule 123 can match eol */
YY_RULE_SETUP
-#line 633 "lexgrog.l"
+#line 643 "../../../src/lexgrog.l"
{
yyless (0);
mdoc_text ("OpenBSD");
@@ -3883,7 +3919,7 @@ YY_RULE_SETUP
case 124:
/* rule 124 can match eol */
YY_RULE_SETUP
-#line 640 "lexgrog.l"
+#line 650 "../../../src/lexgrog.l"
add_char_to_whatis (' ');
YY_BREAK
/* a ROFF break request, a paragraph request, or an indentation change
@@ -3892,29 +3928,29 @@ add_char_to_whatis (' ');
case 125:
/* rule 125 can match eol */
-#line 647 "lexgrog.l"
+#line 657 "../../../src/lexgrog.l"
case 126:
/* rule 126 can match eol */
-#line 648 "lexgrog.l"
+#line 658 "../../../src/lexgrog.l"
case 127:
/* rule 127 can match eol */
-#line 649 "lexgrog.l"
+#line 659 "../../../src/lexgrog.l"
case 128:
/* rule 128 can match eol */
-#line 650 "lexgrog.l"
+#line 660 "../../../src/lexgrog.l"
case 129:
/* rule 129 can match eol */
-#line 651 "lexgrog.l"
+#line 661 "../../../src/lexgrog.l"
case 130:
/* rule 130 can match eol */
-#line 652 "lexgrog.l"
+#line 662 "../../../src/lexgrog.l"
case 131:
/* rule 131 can match eol */
-#line 653 "lexgrog.l"
+#line 663 "../../../src/lexgrog.l"
case 132:
/* rule 132 can match eol */
YY_RULE_SETUP
-#line 653 "lexgrog.l"
+#line 663 "../../../src/lexgrog.l"
{
add_char_to_whatis ((char) 0x11);
BEGIN (MAN_NAME);
@@ -3925,7 +3961,7 @@ YY_RULE_SETUP
case 133:
/* rule 133 can match eol */
YY_RULE_SETUP
-#line 660 "lexgrog.l"
+#line 670 "../../../src/lexgrog.l"
{
*p_name = '\0';
BEGIN (MAN_REST);
@@ -3934,23 +3970,23 @@ YY_RULE_SETUP
/* pass words as a chunk. speed optimization */
case 134:
YY_RULE_SETUP
-#line 666 "lexgrog.l"
+#line 676 "../../../src/lexgrog.l"
add_str_to_whatis (yytext, yyleng);
YY_BREAK
/* normalise the comma (,) separators */
case 135:
/* rule 135 can match eol */
-#line 670 "lexgrog.l"
+#line 680 "../../../src/lexgrog.l"
case 136:
/* rule 136 can match eol */
YY_RULE_SETUP
-#line 670 "lexgrog.l"
+#line 680 "../../../src/lexgrog.l"
add_str_to_whatis (", ", 2);
YY_BREAK
case 137:
/* rule 137 can match eol */
YY_RULE_SETUP
-#line 672 "lexgrog.l"
+#line 682 "../../../src/lexgrog.l"
{
newline_found ();
add_char_to_whatis (yytext[yyleng - 1]);
@@ -3958,7 +3994,7 @@ YY_RULE_SETUP
YY_BREAK
case 138:
YY_RULE_SETUP
-#line 677 "lexgrog.l"
+#line 687 "../../../src/lexgrog.l"
add_char_to_whatis (*yytext);
YY_BREAK
/* default EOF rule */
@@ -3976,15 +4012,15 @@ case YY_STATE_EOF(CAT_FILE):
case YY_STATE_EOF(MAN_FILE):
case YY_STATE_EOF(CAT_REST):
case YY_STATE_EOF(FORCE_EXIT):
-#line 680 "lexgrog.l"
+#line 690 "../../../src/lexgrog.l"
return 1;
YY_BREAK
case 139:
YY_RULE_SETUP
-#line 682 "lexgrog.l"
+#line 692 "../../../src/lexgrog.l"
ECHO;
YY_BREAK
-#line 3988 "lexgrog.c"
+#line 4024 "../../../src/lexgrog.c"
case YY_END_OF_BUFFER:
{
@@ -4280,7 +4316,7 @@ static int yy_get_next_buffer (void)
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
{
yy_current_state = (int) yy_def[yy_current_state];
- if ( yy_current_state >= 1410 )
+ if ( yy_current_state >= 1436 )
yy_c = yy_meta[yy_c];
}
yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
@@ -4308,11 +4344,11 @@ static int yy_get_next_buffer (void)
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
{
yy_current_state = (int) yy_def[yy_current_state];
- if ( yy_current_state >= 1410 )
+ if ( yy_current_state >= 1436 )
yy_c = yy_meta[yy_c];
}
yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
- yy_is_jam = (yy_current_state == 1409);
+ yy_is_jam = (yy_current_state == 1435);
return yy_is_jam ? 0 : yy_current_state;
}
@@ -4951,7 +4987,7 @@ void yyfree (void * ptr )
#define YYTABLES_NAME "yytables"
-#line 682 "lexgrog.l"
+#line 692 "../../../src/lexgrog.l"
/* print warning and force scanner to terminate */
diff --git a/src/lexgrog.l b/src/lexgrog.l
index b3b4ef61..8b7650b7 100644
--- a/src/lexgrog.l
+++ b/src/lexgrog.l
@@ -2,6 +2,13 @@
#ifdef HAVE_CONFIG_H
# include "config.h"
#endif /* HAVE_CONFIG_H */
+
+/* Flex emits several functions which might reasonably have various
+ * attributes applied and many unused macros; none of these are our problem.
+ */
+#pragma GCC diagnostic ignored "-Wsuggest-attribute=malloc"
+#pragma GCC diagnostic ignored "-Wsuggest-attribute=pure"
+#pragma GCC diagnostic ignored "-Wunused-macros"
}
%{
@@ -289,6 +296,7 @@ cs_name (J[Mm](É|é|\\\('[Ee]|E|e)[Nn][Oo]|N(Á|á)[Zz][Ee][Vv])
da_name N[Aa][Vv][Nn]
de_name B[Ee][Zz][Ee][Ii][Cc][Hh][Nn][Uu][Nn][Gg]
en_name N[Aa][Mm][Ee]
+eo_name N[Oo][Mm][Oo]
es_name N[Oo][Mm][Bb][Rr][Ee]
fi_name N[Ii][Mm][Ii]
fr_name N[Oo][Mm]
@@ -307,11 +315,13 @@ sk_name M[Ee][Nn][Oo]
sr_name (ИМЕ|НАЗИВ)
srlatin_name (IME|NAZIV)
sv_name N[Aa][Mm][Nn]
+ta_name பெய
tr_name (İ|i)S(İ|i)M
+uk_name НАЗВА
vi_name TÊN
zh_CN_name 名{blank}?(称|字){blank}?.*
zh_TW_name (名{blank}?(稱|字)|命令名){blank}?.*
-name ({bg_name}|{cs_name}|{da_name}|{de_name}|{en_name}|{es_name}|{fi_name}|{fr_name}|{hu_name}|{id_name}|{it_name}|{ja_name}|{ko_name}|{latin_name}|{lt_name}|{nl_name}|{pl_name}|{ru_name}|{sk_name}|{sr_name}|{srlatin_name}|{sv_name}|{tr_name}|{vi_name}|{zh_CN_name}|{zh_TW_name})
+name ({bg_name}|{cs_name}|{da_name}|{de_name}|{en_name}|{eo_name}|{es_name}|{fi_name}|{fr_name}|{hu_name}|{id_name}|{it_name}|{ja_name}|{ko_name}|{latin_name}|{lt_name}|{nl_name}|{pl_name}|{ru_name}|{sk_name}|{sr_name}|{srlatin_name}|{sv_name}|{ta_name}|{tr_name}|{uk_name}|{vi_name}|{zh_CN_name}|{zh_TW_name})
name_sec {dbl_quote}?{style_change}?{name}{style_change}?({blank}*{dbl_quote})?
/* eptgrv : eqn, pic, tbl, grap, refer, vgrind */
diff --git a/src/lexgrog_test.c b/src/lexgrog_test.c
index 4fb39fd1..189da43c 100644
--- a/src/lexgrog_test.c
+++ b/src/lexgrog_test.c
@@ -131,8 +131,7 @@ static error_t parse_opt (int key, char *arg, struct argp_state *state)
return ARGP_ERR_UNKNOWN;
}
-static char *help_filter (int key, const char *text,
- void *input ATTRIBUTE_UNUSED)
+static char *help_filter (int key, const char *text, void *input _GL_UNUSED)
{
switch (key) {
case ARGP_KEY_HELP_PRE_DOC:
diff --git a/src/man.c b/src/man.c
index 78c8968c..207e6f68 100644
--- a/src/man.c
+++ b/src/man.c
@@ -554,8 +554,9 @@ static error_t parse_opt (int key, char *arg, struct argp_state *state)
return ARGP_ERR_UNKNOWN;
}
-static char *help_filter (int key, const char *text,
- void *input ATTRIBUTE_UNUSED)
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wformat-nonliteral"
+static char *help_filter (int key, const char *text, void *input _GL_UNUSED)
{
#ifdef HAS_TROFF
# ifdef TROFF_IS_GROFF
@@ -584,6 +585,7 @@ static char *help_filter (int key, const char *text,
return (char *) text;
}
}
+#pragma GCC diagnostic pop
static struct argp argp = { options, parse_opt, args_doc, 0, 0, help_filter };
@@ -1529,7 +1531,7 @@ static void add_output_iconv (pipeline *p,
/* Pipeline command to squeeze multiple blank lines into one.
*
*/
-static void squeeze_blank_lines (void *data ATTRIBUTE_UNUSED)
+static void squeeze_blank_lines (void *data _GL_UNUSED)
{
char *line = NULL;
size_t len = 0;
@@ -2040,7 +2042,7 @@ static void display_catman (const char *cat_file, pipeline *decomp,
free (tmpcat);
}
-static void disable_hyphenation (void *data ATTRIBUTE_UNUSED)
+static void disable_hyphenation (void *data _GL_UNUSED)
{
fputs (".nh\n"
".de hy\n"
@@ -2048,7 +2050,7 @@ static void disable_hyphenation (void *data ATTRIBUTE_UNUSED)
".lf 1\n", stdout);
}
-static void disable_justification (void *data ATTRIBUTE_UNUSED)
+static void disable_justification (void *data _GL_UNUSED)
{
fputs (".na\n"
".de ad\n"
@@ -2311,7 +2313,9 @@ static int display (const char *dir, const char *man_file,
#endif
|| local_man_file
|| recode
- || disable_cache)
+ || disable_cache
+ || no_hyphenation
+ || no_justification)
save_cat = false;
if (!man_file) {
@@ -2468,8 +2472,7 @@ static int display (const char *dir, const char *man_file,
return found;
}
-static void gripe_converting_name (const char *name) ATTRIBUTE_NORETURN;
-static void gripe_converting_name (const char *name)
+static _Noreturn void gripe_converting_name (const char *name)
{
error (FATAL, 0, _("Can't convert %s to cat name"), name);
abort (); /* error should have exited; help compilers prove noreturn */
@@ -4082,7 +4085,8 @@ int main (int argc, char *argv[])
get_term (); /* stores terminal settings */
#ifdef MAN_OWNER
- debug ("real user = %d; effective user = %d\n", ruid, euid);
+ debug ("real user = %lu; effective user = %lu\n",
+ (unsigned long) ruid, (unsigned long) euid);
#endif /* MAN_OWNER */
/* close this locale and reinitialise if a new locale was
diff --git a/src/manconv.c b/src/manconv.c
index 9759a28e..fbfa7619 100644
--- a/src/manconv.c
+++ b/src/manconv.c
@@ -336,8 +336,8 @@ void manconv (pipeline *p, char * const *from, const char *to)
/* If we don't have iconv, there isn't much we can do; just pass everything
* through unchanged.
*/
-void manconv (pipeline *p, char * const *from ATTRIBUTE_UNUSED,
- const char *to ATTRIBUTE_UNUSED)
+void manconv (pipeline *p, char * const *from _GL_UNUSED,
+ const char *to _GL_UNUSED)
{
for (;;) {
size_t len = 4096;
diff --git a/src/mandb.c b/src/mandb.c
index 0a06c714..0910b964 100644
--- a/src/mandb.c
+++ b/src/mandb.c
@@ -81,7 +81,6 @@
int quiet = 1;
extern bool opt_test; /* don't update db */
char *manp;
-char *database = NULL;
extern char *extension; /* for globbing.c */
extern bool force_rescan; /* for check_mandirs.c */
static char *single_filename = NULL;
@@ -346,7 +345,8 @@ static void do_chown (struct dbpaths *dbpaths)
#endif /* MAN_OWNER */
/* Update a single file in an existing database. */
-static int update_one_file (const char *manpath, const char *filename)
+static int update_one_file (const char *database,
+ const char *manpath, const char *filename)
{
MYDBM_FILE dbf;
@@ -372,18 +372,19 @@ static int update_one_file (const char *manpath, const char *filename)
}
/* dont actually create any dbs, just do an update */
-static int update_db_wrapper (const char *manpath, const char *catpath)
+static int update_db_wrapper (const char *database,
+ const char *manpath, const char *catpath)
{
int amount;
if (single_filename)
- return update_one_file (manpath, single_filename);
+ return update_one_file (database, manpath, single_filename);
- amount = update_db (manpath, catpath);
+ amount = update_db (database, manpath, catpath);
if (amount != EOF)
return amount;
- return create_db (manpath, catpath);
+ return create_db (database, manpath, catpath);
}
/* remove incomplete databases */
@@ -444,7 +445,8 @@ static int mandb (struct dbpaths *dbpaths,
const char *catpath, const char *manpath,
bool global_manpath)
{
- int ret, amount;
+ char *database;
+ int amount;
char *dbname;
int should_create;
@@ -497,15 +499,13 @@ static int mandb (struct dbpaths *dbpaths,
}
if (should_create) {
check_remove (dbpaths->tmpdbfile);
- ret = create_db (manpath, catpath);
- if (ret < 0)
- return ret;
- amount = ret;
+ amount = create_db (database, manpath, catpath);
+ if (amount < 0)
+ goto out;
} else {
- ret = update_db_wrapper (manpath, catpath);
- if (ret < 0)
- return ret;
- amount = ret;
+ amount = update_db_wrapper (database, manpath, catpath);
+ if (amount < 0)
+ goto out;
}
# else /* !BERKELEY_DB NDBM */
dbpaths->dirfile = xasprintf ("%s.dir", dbname);
@@ -521,15 +521,13 @@ static int mandb (struct dbpaths *dbpaths,
if (should_create) {
check_remove (dbpaths->tmpdirfile);
check_remove (dbpaths->tmppagfile);
- ret = create_db (manpath, catpath);
- if (ret < 0)
- return ret;
- amount = ret;
+ amount = create_db (database, manpath, catpath);
+ if (amount < 0)
+ goto out;
} else {
- ret = update_db_wrapper (manpath, catpath);
- if (ret < 0)
- return ret;
- amount = ret;
+ amount = update_db_wrapper (database, manpath, catpath);
+ if (amount < 0)
+ goto out;
}
# endif /* BERKELEY_DB NDBM */
#else /* !NDBM */
@@ -541,18 +539,18 @@ static int mandb (struct dbpaths *dbpaths,
}
if (should_create) {
check_remove (dbpaths->xtmpfile);
- ret = create_db (manpath, catpath);
- if (ret < 0)
- return ret;
- amount = ret;
+ amount = create_db (database, manpath, catpath);
+ if (amount < 0)
+ goto out;
} else {
- ret = update_db_wrapper (manpath, catpath);
- if (ret < 0)
- return ret;
- amount = ret;
+ amount = update_db_wrapper (database, manpath, catpath);
+ if (amount < 0)
+ goto out;
}
#endif /* NDBM */
+out:
+ free (database);
return amount;
}
@@ -597,10 +595,10 @@ static int process_manpath (const char *manpath, bool global_manpath,
force_rescan = false;
if (purge) {
- database = mkdbname (catpath);
- purged += purge_missing (manpath, catpath, run_mandb);
+ char *database = mkdbname (catpath);
+ purged += purge_missing (database,
+ manpath, catpath, run_mandb);
free (database);
- database = NULL;
}
dbpaths = XZALLOC (struct dbpaths);
@@ -630,14 +628,10 @@ out:
pop_cleanup (cleanup, dbpaths);
}
- free (database);
- database = NULL;
-
if (check_for_strays && amount > 0) {
- database = mkdbname (catpath);
- strays += straycats (manpath);
+ char *database = mkdbname (catpath);
+ strays += straycats (database, manpath);
free (database);
- database = NULL;
}
free (catpath);
diff --git a/src/manp.c b/src/manp.c
index 1dfecf38..588f47ca 100644
--- a/src/manp.c
+++ b/src/manp.c
@@ -190,7 +190,7 @@ static const char *describe_flag (enum config_flag flag)
case SECTION_USER:
return "SECTION_USER";
default:
- error (FATAL, 0, "impossible config_flag value %d",
+ error (FATAL, 0, "impossible config_flag value %u",
flag);
abort (); /* error should have exited */
}
@@ -835,7 +835,7 @@ next:
free (buf);
}
-static void free_config_file (void *unused ATTRIBUTE_UNUSED)
+static void free_config_file (void *unused _GL_UNUSED)
{
gl_list_free (config);
}
diff --git a/src/manpath.c b/src/manpath.c
index 97e27376..ca71101b 100644
--- a/src/manpath.c
+++ b/src/manpath.c
@@ -45,12 +45,10 @@
#include "manconfig.h"
#include "error.h"
-#include "sandbox.h"
#include "manp.h"
int quiet = 0;
-man_sandbox *sandbox; /* unused, but needed by libman */
static bool cat = false;
static bool global = false;
diff --git a/src/straycats.c b/src/straycats.c
index 0f4c50ee..577eab07 100644
--- a/src/straycats.c
+++ b/src/straycats.c
@@ -333,7 +333,7 @@ static int open_catdir (MYDBM_FILE dbf)
return strays;
}
-int straycats (const char *manpath)
+int straycats (const char *database, const char *manpath)
{
MYDBM_FILE dbf;
char *catpath;
diff --git a/src/tests/Makefile.in b/src/tests/Makefile.in
index 74cae23b..5fea9ed0 100644
--- a/src/tests/Makefile.in
+++ b/src/tests/Makefile.in
@@ -183,6 +183,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/man-arg-automatic-create.m4 \
$(top_srcdir)/gl/m4/ltversion.m4 \
$(top_srcdir)/gl/m4/lt~obsolete.m4 \
$(top_srcdir)/gl/m4/malloc.m4 $(top_srcdir)/gl/m4/malloca.m4 \
+ $(top_srcdir)/gl/m4/manywarnings.m4 \
$(top_srcdir)/gl/m4/mbrtowc.m4 $(top_srcdir)/gl/m4/mbsinit.m4 \
$(top_srcdir)/gl/m4/mbsrtowcs.m4 \
$(top_srcdir)/gl/m4/mbstate_t.m4 $(top_srcdir)/gl/m4/mbtowc.m4 \
@@ -610,6 +611,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
GNULIB_CLOSE = @GNULIB_CLOSE@
GNULIB_CLOSEDIR = @GNULIB_CLOSEDIR@
GNULIB_CONNECT = @GNULIB_CONNECT@
+GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
GNULIB_CTIME = @GNULIB_CTIME@
GNULIB_DIRFD = @GNULIB_DIRFD@
GNULIB_DPRINTF = @GNULIB_DPRINTF@
@@ -817,6 +819,7 @@ GNULIB_STRSIGNAL = @GNULIB_STRSIGNAL@
GNULIB_STRSTR = @GNULIB_STRSTR@
GNULIB_STRTOD = @GNULIB_STRTOD@
GNULIB_STRTOK_R = @GNULIB_STRTOK_R@
+GNULIB_STRTOLD = @GNULIB_STRTOLD@
GNULIB_STRTOLL = @GNULIB_STRTOLL@
GNULIB_STRTOULL = @GNULIB_STRTOULL@
GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@
@@ -891,6 +894,7 @@ GNULIB_WRITE = @GNULIB_WRITE@
GNULIB__EXIT = @GNULIB__EXIT@
GREP = @GREP@
HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
HAVE_ALPHASORT = @HAVE_ALPHASORT@
HAVE_ATOLL = @HAVE_ATOLL@
HAVE_BTOWC = @HAVE_BTOWC@
@@ -898,6 +902,7 @@ HAVE_C99_STDINT_H = @HAVE_C99_STDINT_H@
HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
HAVE_CHOWN = @HAVE_CHOWN@
HAVE_CLOSEDIR = @HAVE_CLOSEDIR@
+HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@
HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
@@ -979,6 +984,7 @@ HAVE_GLOB_H = @HAVE_GLOB_H@
HAVE_GLOB_PATTERN_P = @HAVE_GLOB_PATTERN_P@
HAVE_GRANTPT = @HAVE_GRANTPT@
HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
+HAVE_INITSTATE = @HAVE_INITSTATE@
HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
HAVE_ISWBLANK = @HAVE_ISWBLANK@
HAVE_ISWCNTRL = @HAVE_ISWCNTRL@
@@ -1001,6 +1007,7 @@ HAVE_MBSINIT = @HAVE_MBSINIT@
HAVE_MBSLEN = @HAVE_MBSLEN@
HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
+HAVE_MBTOWC = @HAVE_MBTOWC@
HAVE_MEMCHR = @HAVE_MEMCHR@
HAVE_MEMPCPY = @HAVE_MEMPCPY@
HAVE_MKDIRAT = @HAVE_MKDIRAT@
@@ -1051,6 +1058,7 @@ HAVE_SCANDIR = @HAVE_SCANDIR@
HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
HAVE_SETENV = @HAVE_SETENV@
HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
+HAVE_SETSTATE = @HAVE_SETSTATE@
HAVE_SIGACTION = @HAVE_SIGACTION@
HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
@@ -1070,6 +1078,7 @@ HAVE_STRPBRK = @HAVE_STRPBRK@
HAVE_STRPTIME = @HAVE_STRPTIME@
HAVE_STRSEP = @HAVE_STRSEP@
HAVE_STRTOD = @HAVE_STRTOD@
+HAVE_STRTOLD = @HAVE_STRTOLD@
HAVE_STRTOLL = @HAVE_STRTOLL@
HAVE_STRTOULL = @HAVE_STRTOULL@
HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@
@@ -1170,8 +1179,6 @@ LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBMULTITHREAD = @LIBMULTITHREAD@
LIBOBJS = @LIBOBJS@
-LIBPTH = @LIBPTH@
-LIBPTH_PREFIX = @LIBPTH_PREFIX@
LIBS = @LIBS@
LIBSOCKET = @LIBSOCKET@
LIBTHREAD = @LIBTHREAD@
@@ -1194,7 +1201,6 @@ LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBMULTITHREAD = @LTLIBMULTITHREAD@
LTLIBOBJS = @LTLIBOBJS@
-LTLIBPTH = @LTLIBPTH@
LTLIBTHREAD = @LTLIBTHREAD@
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
MAINT = @MAINT@
@@ -1340,6 +1346,7 @@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
REPLACE_GLOB = @REPLACE_GLOB@
REPLACE_GLOB_PATTERN_P = @REPLACE_GLOB_PATTERN_P@
REPLACE_GMTIME = @REPLACE_GMTIME@
+REPLACE_INITSTATE = @REPLACE_INITSTATE@
REPLACE_IOCTL = @REPLACE_IOCTL@
REPLACE_ISATTY = @REPLACE_ISATTY@
REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
@@ -1388,6 +1395,7 @@ REPLACE_PUTENV = @REPLACE_PUTENV@
REPLACE_PWRITE = @REPLACE_PWRITE@
REPLACE_QSORT_R = @REPLACE_QSORT_R@
REPLACE_RAISE = @REPLACE_RAISE@
+REPLACE_RANDOM = @REPLACE_RANDOM@
REPLACE_RANDOM_R = @REPLACE_RANDOM_R@
REPLACE_READ = @REPLACE_READ@
REPLACE_READLINK = @REPLACE_READLINK@
@@ -1401,6 +1409,7 @@ REPLACE_RMDIR = @REPLACE_RMDIR@
REPLACE_SELECT = @REPLACE_SELECT@
REPLACE_SETENV = @REPLACE_SETENV@
REPLACE_SETLOCALE = @REPLACE_SETLOCALE@
+REPLACE_SETSTATE = @REPLACE_SETSTATE@
REPLACE_SLEEP = @REPLACE_SLEEP@
REPLACE_SNPRINTF = @REPLACE_SNPRINTF@
REPLACE_SPRINTF = @REPLACE_SPRINTF@
@@ -1421,6 +1430,7 @@ REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@
REPLACE_STRSTR = @REPLACE_STRSTR@
REPLACE_STRTOD = @REPLACE_STRTOD@
REPLACE_STRTOK_R = @REPLACE_STRTOK_R@
+REPLACE_STRTOLD = @REPLACE_STRTOLD@
REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@
REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@
REPLACE_SYMLINK = @REPLACE_SYMLINK@
diff --git a/src/tests/fspause.c b/src/tests/fspause.c
index 64a6e894..092fbb4f 100644
--- a/src/tests/fspause.c
+++ b/src/tests/fspause.c
@@ -84,7 +84,7 @@ static int try_delay (struct stat *st, int delay_ns)
return timespec_cmp (start_ts, end_ts) != 0;
}
-int main (int argc ATTRIBUTE_UNUSED, char **argv)
+int main (int argc _GL_UNUSED, char **argv)
{
struct stat st;
int delay_ns;
diff --git a/src/whatis.c b/src/whatis.c
index 8b648121..d2559169 100644
--- a/src/whatis.c
+++ b/src/whatis.c
@@ -89,7 +89,6 @@ static char **keywords;
static int num_keywords;
bool am_apropos;
-char *database;
int quiet = 1;
man_sandbox *sandbox;
@@ -242,8 +241,7 @@ static error_t parse_opt (int key, char *arg, struct argp_state *state)
return ARGP_ERR_UNKNOWN;
}
-static char *help_filter (int key, const char *text,
- void *input ATTRIBUTE_UNUSED)
+static char *help_filter (int key, const char *text, void *input _GL_UNUSED)
{
switch (key) {
case ARGP_KEY_HELP_PRE_DOC:
@@ -638,7 +636,7 @@ static void parse_name (const char * const *pages, int num_pages,
}
/* return true on word match */
-static bool match (const char *page, const char *whatis)
+static bool _GL_ATTRIBUTE_PURE match (const char *page, const char *whatis)
{
size_t len = strlen (page);
const char *begin;
@@ -719,7 +717,7 @@ static void do_apropos (MYDBM_FILE dbf,
while (MYDBM_DPTR (key)) {
cont = MYDBM_FETCH (dbf, key);
#else /* BTREE */
- end = btree_nextkeydata (dbf, &key, &cont);
+ end = man_btree_nextkeydata (dbf, &key, &cont);
while (!end) {
#endif /* !BTREE */
char *tab;
@@ -738,7 +736,7 @@ static void do_apropos (MYDBM_FILE dbf,
error (FATAL, 0,
_("Database %s corrupted; rebuild with "
"mandb --create"),
- database);
+ dbf->name);
}
if (*MYDBM_DPTR (key) == '$')
@@ -749,7 +747,7 @@ static void do_apropos (MYDBM_FILE dbf,
/* a real page */
- split_content (MYDBM_DPTR (cont), &info);
+ split_content (dbf, MYDBM_DPTR (cont), &info);
/* If there are sections given, does any of them match
* either the section or extension of this page?
@@ -800,7 +798,7 @@ nextpage:
#else /* BTREE */
MYDBM_FREE_DPTR (cont);
MYDBM_FREE_DPTR (key);
- end = btree_nextkeydata (dbf, &key, &cont);
+ end = man_btree_nextkeydata (dbf, &key, &cont);
#endif /* !BTREE */
info.addr = NULL; /* == MYDBM_DPTR (cont), freed above */
free_mandata_elements (&info);
@@ -818,6 +816,7 @@ static bool search (const char * const *pages, int num_pages)
int i;
GL_LIST_FOREACH_START (manpathlist, mp) {
+ char *database;
MYDBM_FILE dbf;
catpath = get_catpath (mp, SYSTEM_CAT | USER_CAT);
@@ -848,9 +847,8 @@ static bool search (const char * const *pages, int num_pages)
else
do_whatis (dbf, pages, num_pages, mp, found);
}
- free (database);
- database = NULL;
MYDBM_CLOSE (dbf);
+ free (database);
} GL_LIST_FOREACH_END (manpathlist);
chkr_garbage_detector ();
diff --git a/src/zsoelim.c b/src/zsoelim.c
index b2e62052..67908daf 100644
--- a/src/zsoelim.c
+++ b/src/zsoelim.c
@@ -2,7 +2,14 @@
# include "config.h"
#endif /* HAVE_CONFIG_H */
-#line 6 "zsoelim.c"
+/* Flex emits several functions which might reasonably have various
+ * attributes applied and many unused macros; none of these are our problem.
+ */
+#pragma GCC diagnostic ignored "-Wsuggest-attribute=malloc"
+#pragma GCC diagnostic ignored "-Wsuggest-attribute=pure"
+#pragma GCC diagnostic ignored "-Wunused-macros"
+
+#line 13 "../../../src/zsoelim.c"
#define YY_INT_ALIGNED short int
@@ -759,9 +766,9 @@ int yy_flex_debug = 0;
#define YY_MORE_ADJ 0
#define YY_RESTORE_YY_MORE_OFFSET
char *yytext;
-#line 1 "zsoelim.l"
+#line 1 "../../../src/zsoelim.l"
-#line 8 "zsoelim.l"
+#line 15 "../../../src/zsoelim.l"
/*
* zsoelim.l: eliminate .so includes within *roff source
@@ -871,9 +878,9 @@ struct zsoelim_stdin_data {
result = YY_NULL; \
}
#define YY_NO_INPUT
-#line 875 "zsoelim.c"
+#line 882 "../../../src/zsoelim.c"
-#line 877 "zsoelim.c"
+#line 884 "../../../src/zsoelim.c"
#define INITIAL 0
#define so 1
@@ -1096,10 +1103,10 @@ YY_DECL
}
{
-#line 131 "zsoelim.l"
+#line 138 "../../../src/zsoelim.l"
-#line 1103 "zsoelim.c"
+#line 1110 "../../../src/zsoelim.c"
while ( /*CONSTCOND*/1 ) /* loops until end-of-file is reached */
{
@@ -1147,7 +1154,7 @@ do_action: /* This label is used only to access EOF actions. */
case 1:
YY_RULE_SETUP
-#line 133 "zsoelim.l"
+#line 140 "../../../src/zsoelim.l"
{
no_newline = 1;
ECHO;
@@ -1156,7 +1163,7 @@ YY_RULE_SETUP
YY_BREAK
case 2:
YY_RULE_SETUP
-#line 139 "zsoelim.l"
+#line 146 "../../../src/zsoelim.l"
{
no_newline = 1;
BEGIN (so); /* Now we're in the .so environment */
@@ -1164,7 +1171,7 @@ YY_RULE_SETUP
YY_BREAK
case 3:
YY_RULE_SETUP
-#line 144 "zsoelim.l"
+#line 151 "../../../src/zsoelim.l"
{
no_newline = 1;
ECHO; /* Now we're in the .lf environment */
@@ -1172,26 +1179,26 @@ YY_RULE_SETUP
}
YY_BREAK
case 4:
-#line 151 "zsoelim.l"
+#line 158 "../../../src/zsoelim.l"
case 5:
/* rule 5 can match eol */
-#line 152 "zsoelim.l"
+#line 159 "../../../src/zsoelim.l"
case 6:
/* rule 6 can match eol */
-#line 153 "zsoelim.l"
+#line 160 "../../../src/zsoelim.l"
case 7:
/* rule 7 can match eol */
-#line 154 "zsoelim.l"
+#line 161 "../../../src/zsoelim.l"
case 8:
/* rule 8 can match eol */
-#line 155 "zsoelim.l"
+#line 162 "../../../src/zsoelim.l"
case 9:
/* rule 9 can match eol */
-#line 156 "zsoelim.l"
+#line 163 "../../../src/zsoelim.l"
case 10:
/* rule 10 can match eol */
YY_RULE_SETUP
-#line 156 "zsoelim.l"
+#line 163 "../../../src/zsoelim.l"
{
no_newline = 1;
ECHO;
@@ -1200,7 +1207,7 @@ YY_RULE_SETUP
case 11:
/* rule 11 can match eol */
YY_RULE_SETUP
-#line 161 "zsoelim.l"
+#line 168 "../../../src/zsoelim.l"
{
no_newline = 0;
putchar ('\n');
@@ -1209,7 +1216,7 @@ YY_RULE_SETUP
YY_BREAK
case 12:
YY_RULE_SETUP
-#line 168 "zsoelim.l"
+#line 175 "../../../src/zsoelim.l"
{ /* file names including whitespace ? */
if (so_stack_ptr == MAX_SO_DEPTH - 1)
error (FATAL, 0,
@@ -1245,7 +1252,7 @@ YY_RULE_SETUP
case 13:
/* rule 13 can match eol */
YY_RULE_SETUP
-#line 200 "zsoelim.l"
+#line 207 "../../../src/zsoelim.l"
{
no_newline = 0;
BEGIN (INITIAL);
@@ -1254,7 +1261,7 @@ YY_RULE_SETUP
case 14:
/* rule 14 can match eol */
YY_RULE_SETUP
-#line 205 "zsoelim.l"
+#line 212 "../../../src/zsoelim.l"
{
no_newline = 0;
error (OK, 0,
@@ -1268,7 +1275,7 @@ YY_RULE_SETUP
YY_BREAK
case 15:
YY_RULE_SETUP
-#line 216 "zsoelim.l"
+#line 223 "../../../src/zsoelim.l"
{
no_newline = 1;
ECHO;
@@ -1277,7 +1284,7 @@ YY_RULE_SETUP
YY_BREAK
case 16:
YY_RULE_SETUP
-#line 222 "zsoelim.l"
+#line 229 "../../../src/zsoelim.l"
{
no_newline = 1;
ECHO;
@@ -1286,7 +1293,7 @@ YY_RULE_SETUP
case 17:
/* rule 17 can match eol */
YY_RULE_SETUP
-#line 227 "zsoelim.l"
+#line 234 "../../../src/zsoelim.l"
{
no_newline = 0;
putchar ('\n');
@@ -1295,7 +1302,7 @@ YY_RULE_SETUP
YY_BREAK
case 18:
YY_RULE_SETUP
-#line 234 "zsoelim.l"
+#line 241 "../../../src/zsoelim.l"
{
no_newline = 1;
ECHO;
@@ -1306,7 +1313,7 @@ YY_RULE_SETUP
YY_BREAK
case 19:
YY_RULE_SETUP
-#line 242 "zsoelim.l"
+#line 249 "../../../src/zsoelim.l"
{ /* file names including whitespace ?? */
no_newline = 1;
ECHO;
@@ -1320,7 +1327,7 @@ YY_RULE_SETUP
YY_BREAK
case 20:
YY_RULE_SETUP
-#line 253 "zsoelim.l"
+#line 260 "../../../src/zsoelim.l"
{
no_newline = 1;
ECHO;
@@ -1329,7 +1336,7 @@ YY_RULE_SETUP
case 21:
/* rule 21 can match eol */
YY_RULE_SETUP
-#line 258 "zsoelim.l"
+#line 265 "../../../src/zsoelim.l"
{
no_newline = 0;
putchar ('\n');
@@ -1339,7 +1346,7 @@ YY_RULE_SETUP
YY_BREAK
case 22:
YY_RULE_SETUP
-#line 265 "zsoelim.l"
+#line 272 "../../../src/zsoelim.l"
{
no_newline = 1;
error (OK, 0,
@@ -1353,7 +1360,7 @@ YY_RULE_SETUP
case 23:
/* rule 23 can match eol */
YY_RULE_SETUP
-#line 275 "zsoelim.l"
+#line 282 "../../../src/zsoelim.l"
{
no_newline = 0;
error (OK, 0,
@@ -1371,7 +1378,7 @@ case YY_STATE_EOF(de):
case YY_STATE_EOF(end_request):
case YY_STATE_EOF(lfnumber):
case YY_STATE_EOF(lfname):
-#line 286 "zsoelim.l"
+#line 293 "../../../src/zsoelim.l"
{
pipeline_wait (PIPE);
pipeline_free (PIPE);
@@ -1395,10 +1402,10 @@ case YY_STATE_EOF(lfname):
YY_BREAK
case 24:
YY_RULE_SETUP
-#line 306 "zsoelim.l"
+#line 313 "../../../src/zsoelim.l"
ECHO;
YY_BREAK
-#line 1402 "zsoelim.c"
+#line 1409 "../../../src/zsoelim.c"
case YY_END_OF_BUFFER:
{
@@ -2357,7 +2364,7 @@ void yyfree (void * ptr )
#define YYTABLES_NAME "yytables"
-#line 306 "zsoelim.l"
+#line 313 "../../../src/zsoelim.l"
#ifdef ACCEPT_QUOTES
diff --git a/src/zsoelim.l b/src/zsoelim.l
index 346dfbd3..1180786d 100644
--- a/src/zsoelim.l
+++ b/src/zsoelim.l
@@ -2,6 +2,13 @@
#ifdef HAVE_CONFIG_H
# include "config.h"
#endif /* HAVE_CONFIG_H */
+
+/* Flex emits several functions which might reasonably have various
+ * attributes applied and many unused macros; none of these are our problem.
+ */
+#pragma GCC diagnostic ignored "-Wsuggest-attribute=malloc"
+#pragma GCC diagnostic ignored "-Wsuggest-attribute=pure"
+#pragma GCC diagnostic ignored "-Wunused-macros"
}
%{
diff --git a/src/zsoelim_main.c b/src/zsoelim_main.c
index da0b0fa0..d74a28d5 100644
--- a/src/zsoelim_main.c
+++ b/src/zsoelim_main.c
@@ -37,7 +37,6 @@
#include "gettext.h"
#include <locale.h>
-#define _(String) gettext (String)
#define N_(String) gettext_noop (String)
#include "manconfig.h"
@@ -72,7 +71,7 @@ static struct argp_option options[] = {
{ 0 }
};
-static error_t parse_opt (int key, char *arg ATTRIBUTE_UNUSED,
+static error_t parse_opt (int key, char *arg _GL_UNUSED,
struct argp_state *state)
{
switch (key) {
diff --git a/tools/Makefile.in b/tools/Makefile.in
index ed90e1d6..a77574ab 100644
--- a/tools/Makefile.in
+++ b/tools/Makefile.in
@@ -184,6 +184,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/man-arg-automatic-create.m4 \
$(top_srcdir)/gl/m4/ltversion.m4 \
$(top_srcdir)/gl/m4/lt~obsolete.m4 \
$(top_srcdir)/gl/m4/malloc.m4 $(top_srcdir)/gl/m4/malloca.m4 \
+ $(top_srcdir)/gl/m4/manywarnings.m4 \
$(top_srcdir)/gl/m4/mbrtowc.m4 $(top_srcdir)/gl/m4/mbsinit.m4 \
$(top_srcdir)/gl/m4/mbsrtowcs.m4 \
$(top_srcdir)/gl/m4/mbstate_t.m4 $(top_srcdir)/gl/m4/mbtowc.m4 \
@@ -357,6 +358,7 @@ GNULIB_CHOWN = @GNULIB_CHOWN@
GNULIB_CLOSE = @GNULIB_CLOSE@
GNULIB_CLOSEDIR = @GNULIB_CLOSEDIR@
GNULIB_CONNECT = @GNULIB_CONNECT@
+GNULIB_COPY_FILE_RANGE = @GNULIB_COPY_FILE_RANGE@
GNULIB_CTIME = @GNULIB_CTIME@
GNULIB_DIRFD = @GNULIB_DIRFD@
GNULIB_DPRINTF = @GNULIB_DPRINTF@
@@ -564,6 +566,7 @@ GNULIB_STRSIGNAL = @GNULIB_STRSIGNAL@
GNULIB_STRSTR = @GNULIB_STRSTR@
GNULIB_STRTOD = @GNULIB_STRTOD@
GNULIB_STRTOK_R = @GNULIB_STRTOK_R@
+GNULIB_STRTOLD = @GNULIB_STRTOLD@
GNULIB_STRTOLL = @GNULIB_STRTOLL@
GNULIB_STRTOULL = @GNULIB_STRTOULL@
GNULIB_STRVERSCMP = @GNULIB_STRVERSCMP@
@@ -638,6 +641,7 @@ GNULIB_WRITE = @GNULIB_WRITE@
GNULIB__EXIT = @GNULIB__EXIT@
GREP = @GREP@
HAVE_ACCEPT4 = @HAVE_ACCEPT4@
+HAVE_ALLOCA_H = @HAVE_ALLOCA_H@
HAVE_ALPHASORT = @HAVE_ALPHASORT@
HAVE_ATOLL = @HAVE_ATOLL@
HAVE_BTOWC = @HAVE_BTOWC@
@@ -645,6 +649,7 @@ HAVE_C99_STDINT_H = @HAVE_C99_STDINT_H@
HAVE_CANONICALIZE_FILE_NAME = @HAVE_CANONICALIZE_FILE_NAME@
HAVE_CHOWN = @HAVE_CHOWN@
HAVE_CLOSEDIR = @HAVE_CLOSEDIR@
+HAVE_COPY_FILE_RANGE = @HAVE_COPY_FILE_RANGE@
HAVE_CRTDEFS_H = @HAVE_CRTDEFS_H@
HAVE_DECL_DIRFD = @HAVE_DECL_DIRFD@
HAVE_DECL_ENVIRON = @HAVE_DECL_ENVIRON@
@@ -726,6 +731,7 @@ HAVE_GLOB_H = @HAVE_GLOB_H@
HAVE_GLOB_PATTERN_P = @HAVE_GLOB_PATTERN_P@
HAVE_GRANTPT = @HAVE_GRANTPT@
HAVE_GROUP_MEMBER = @HAVE_GROUP_MEMBER@
+HAVE_INITSTATE = @HAVE_INITSTATE@
HAVE_INTTYPES_H = @HAVE_INTTYPES_H@
HAVE_ISWBLANK = @HAVE_ISWBLANK@
HAVE_ISWCNTRL = @HAVE_ISWCNTRL@
@@ -748,6 +754,7 @@ HAVE_MBSINIT = @HAVE_MBSINIT@
HAVE_MBSLEN = @HAVE_MBSLEN@
HAVE_MBSNRTOWCS = @HAVE_MBSNRTOWCS@
HAVE_MBSRTOWCS = @HAVE_MBSRTOWCS@
+HAVE_MBTOWC = @HAVE_MBTOWC@
HAVE_MEMCHR = @HAVE_MEMCHR@
HAVE_MEMPCPY = @HAVE_MEMPCPY@
HAVE_MKDIRAT = @HAVE_MKDIRAT@
@@ -798,6 +805,7 @@ HAVE_SCANDIR = @HAVE_SCANDIR@
HAVE_SECURE_GETENV = @HAVE_SECURE_GETENV@
HAVE_SETENV = @HAVE_SETENV@
HAVE_SETHOSTNAME = @HAVE_SETHOSTNAME@
+HAVE_SETSTATE = @HAVE_SETSTATE@
HAVE_SIGACTION = @HAVE_SIGACTION@
HAVE_SIGHANDLER_T = @HAVE_SIGHANDLER_T@
HAVE_SIGINFO_T = @HAVE_SIGINFO_T@
@@ -817,6 +825,7 @@ HAVE_STRPBRK = @HAVE_STRPBRK@
HAVE_STRPTIME = @HAVE_STRPTIME@
HAVE_STRSEP = @HAVE_STRSEP@
HAVE_STRTOD = @HAVE_STRTOD@
+HAVE_STRTOLD = @HAVE_STRTOLD@
HAVE_STRTOLL = @HAVE_STRTOLL@
HAVE_STRTOULL = @HAVE_STRTOULL@
HAVE_STRUCT_RANDOM_DATA = @HAVE_STRUCT_RANDOM_DATA@
@@ -917,8 +926,6 @@ LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBMULTITHREAD = @LIBMULTITHREAD@
LIBOBJS = @LIBOBJS@
-LIBPTH = @LIBPTH@
-LIBPTH_PREFIX = @LIBPTH_PREFIX@
LIBS = @LIBS@
LIBSOCKET = @LIBSOCKET@
LIBTHREAD = @LIBTHREAD@
@@ -941,7 +948,6 @@ LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBMULTITHREAD = @LTLIBMULTITHREAD@
LTLIBOBJS = @LTLIBOBJS@
-LTLIBPTH = @LTLIBPTH@
LTLIBTHREAD = @LTLIBTHREAD@
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
MAINT = @MAINT@
@@ -1087,6 +1093,7 @@ REPLACE_GETTIMEOFDAY = @REPLACE_GETTIMEOFDAY@
REPLACE_GLOB = @REPLACE_GLOB@
REPLACE_GLOB_PATTERN_P = @REPLACE_GLOB_PATTERN_P@
REPLACE_GMTIME = @REPLACE_GMTIME@
+REPLACE_INITSTATE = @REPLACE_INITSTATE@
REPLACE_IOCTL = @REPLACE_IOCTL@
REPLACE_ISATTY = @REPLACE_ISATTY@
REPLACE_ISWBLANK = @REPLACE_ISWBLANK@
@@ -1135,6 +1142,7 @@ REPLACE_PUTENV = @REPLACE_PUTENV@
REPLACE_PWRITE = @REPLACE_PWRITE@
REPLACE_QSORT_R = @REPLACE_QSORT_R@
REPLACE_RAISE = @REPLACE_RAISE@
+REPLACE_RANDOM = @REPLACE_RANDOM@
REPLACE_RANDOM_R = @REPLACE_RANDOM_R@
REPLACE_READ = @REPLACE_READ@
REPLACE_READLINK = @REPLACE_READLINK@
@@ -1148,6 +1156,7 @@ REPLACE_RMDIR = @REPLACE_RMDIR@
REPLACE_SELECT = @REPLACE_SELECT@
REPLACE_SETENV = @REPLACE_SETENV@
REPLACE_SETLOCALE = @REPLACE_SETLOCALE@
+REPLACE_SETSTATE = @REPLACE_SETSTATE@
REPLACE_SLEEP = @REPLACE_SLEEP@
REPLACE_SNPRINTF = @REPLACE_SNPRINTF@
REPLACE_SPRINTF = @REPLACE_SPRINTF@
@@ -1168,6 +1177,7 @@ REPLACE_STRSIGNAL = @REPLACE_STRSIGNAL@
REPLACE_STRSTR = @REPLACE_STRSTR@
REPLACE_STRTOD = @REPLACE_STRTOD@
REPLACE_STRTOK_R = @REPLACE_STRTOK_R@
+REPLACE_STRTOLD = @REPLACE_STRTOLD@
REPLACE_STRUCT_LCONV = @REPLACE_STRUCT_LCONV@
REPLACE_STRUCT_TIMEVAL = @REPLACE_STRUCT_TIMEVAL@
REPLACE_SYMLINK = @REPLACE_SYMLINK@